:root {
  --resource-ink: #101210;
  --resource-paper: #f4f1e9;
  --resource-card: #fffdf8;
  --resource-muted: #666961;
  --resource-line: #d9d7cf;
  --resource-accent: #f05a35;
  --resource-accent-dark: #cf3f20;
  --resource-green: #285f4d;
  --resource-width: 1440px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.resource-page { margin: 0; color: var(--resource-ink); background: var(--resource-paper); font-family: Inter, sans-serif; -webkit-font-smoothing: antialiased; }
body.resource-overlay-open { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
[hidden] { display: none !important; }

.resource-site-header { height: 78px; padding: 0 clamp(24px, 4vw, 72px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 32px; background: var(--resource-ink); color: #fff; border-bottom: 1px solid #292b29; position: relative; z-index: 50; }
.resource-brand { display: inline-flex; width: max-content; }
.resource-brand img { width: 145px; display: block; }
.resource-site-header nav { display: flex; gap: 34px; align-items: center; }
.resource-site-header nav a { text-decoration: none; color: #bfc1bc; font-size: 13px; font-weight: 600; transition: color .2s; }
.resource-site-header nav a:hover, .resource-site-header nav a.active { color: #fff; }
.resource-header-actions { display: flex; align-items: center; gap: 24px; justify-content: flex-end; }
.resource-header-actions > a { color: #c9cbc6; font-size: 12px; text-decoration: none; }
.resource-header-actions button { border: 0; background: transparent; color: #fff; display: flex; align-items: center; gap: 8px; padding: 10px 0; cursor: pointer; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.resource-header-actions svg { width: 18px; }
.resource-header-actions b { min-width: 21px; height: 21px; border-radius: 50%; display: grid; place-items: center; background: var(--resource-accent); font-size: 10px; }

.resource-primary-button, .resource-secondary-button { min-height: 52px; border: 1px solid transparent; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 0 23px; font-weight: 750; font-size: 13px; text-decoration: none; cursor: pointer; transition: transform .2s, background .2s, border .2s; }
.resource-primary-button { background: var(--resource-accent); color: #fff; }
.resource-primary-button:hover { background: var(--resource-accent-dark); transform: translateY(-1px); }
.resource-primary-button:disabled { opacity: .55; cursor: wait; }
.resource-primary-button svg, .resource-secondary-button svg { width: 18px; }
.resource-secondary-button { border-color: #bbbdb7; background: transparent; color: var(--resource-ink); }
.resource-secondary-button:hover { border-color: var(--resource-ink); background: #fff; }
.resource-kicker { margin: 0 0 20px; display: flex; align-items: center; gap: 11px; color: var(--resource-muted); font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.resource-kicker span { width: 28px; height: 2px; background: var(--resource-accent); }

.resource-hero { min-height: 650px; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(500px, .98fr); max-width: 1600px; margin: auto; overflow: hidden; }
.resource-hero-copy { padding: clamp(76px, 8vw, 120px) clamp(30px, 7vw, 115px); display: flex; flex-direction: column; justify-content: center; }
.resource-hero-copy h1 { margin: 0; max-width: 760px; font: 800 clamp(52px, 5.7vw, 92px)/.98 Manrope, sans-serif; letter-spacing: -.065em; }
.resource-hero-copy h1 em { font-style: normal; color: var(--resource-accent); }
.resource-hero-copy > p:not(.resource-kicker) { max-width: 650px; margin: 30px 0 38px; color: #545850; font-size: 17px; line-height: 1.75; }
.resource-hero-actions { display: flex; align-items: center; gap: 30px; }
.resource-hero-actions > span { display: flex; align-items: center; gap: 10px; color: #3e413c; font-size: 12px; line-height: 1.35; }
.resource-hero-actions > span svg { color: var(--resource-green); width: 25px; }
.resource-hero-actions small { color: #84877f; font-size: 11px; }
.resource-hero-art { background: #181b19; position: relative; min-height: 650px; overflow: hidden; display: grid; place-items: center; }
.resource-art-grid { position: absolute; inset: 0; opacity: .28; background-image: linear-gradient(#4b4f4b 1px, transparent 1px), linear-gradient(90deg, #4b4f4b 1px, transparent 1px); background-size: 62px 62px; mask-image: radial-gradient(circle at center, #000, transparent 72%); }
.resource-art-orbit { position: absolute; border: 1px solid #3f433f; border-radius: 50%; }
.resource-art-orbit.one { width: 490px; height: 490px; }
.resource-art-orbit.two { width: 680px; height: 680px; }
.resource-art-orbit::before { content: ""; width: 8px; height: 8px; background: var(--resource-accent); border-radius: 50%; position: absolute; top: 16%; left: 10%; box-shadow: 0 0 0 6px #f05a3524; }
.resource-art-object { width: 325px; aspect-ratio: 1; position: relative; border: 1px solid #656a65; background: linear-gradient(145deg, #303531, #151816 72%); transform: rotate(-8deg); box-shadow: 30px 45px 80px #0008, inset -18px -18px 55px #0007; display: grid; place-items: center; color: #fff; }
.resource-art-object::before, .resource-art-object::after { content: ""; position: absolute; inset: 12%; border: 1px solid #555b56; border-radius: 50%; }
.resource-art-object::after { inset: 32%; border-color: var(--resource-accent); box-shadow: 0 0 30px #f05a3530; }
.resource-art-object span, .resource-art-object b { position: absolute; font: 800 54px/1 Manrope; letter-spacing: -.07em; }
.resource-art-object span { top: 26px; left: 32px; color: #727872; }
.resource-art-object b { right: 28px; bottom: 48px; color: #e6e8e3; }
.resource-art-object i { position: absolute; bottom: 20px; font-style: normal; color: #8d928c; font-size: 9px; letter-spacing: .16em; }
.resource-art-float { position: absolute; z-index: 2; min-width: 235px; padding: 16px 18px; background: #f7f5ef; color: var(--resource-ink); box-shadow: 0 18px 50px #0005; display: flex; align-items: center; gap: 13px; }
.resource-art-float.top { top: 17%; left: 7%; }
.resource-art-float.bottom { bottom: 15%; right: 6%; }
.resource-art-float svg { width: 22px; color: var(--resource-accent); }
.resource-art-float span { display: flex; flex-direction: column; font-size: 10px; color: #777a74; }
.resource-art-float b { color: var(--resource-ink); font-size: 12px; margin-bottom: 3px; }

.resource-proof { max-width: 1600px; margin: auto; min-height: 106px; display: grid; grid-template-columns: repeat(4, 1fr); background: var(--resource-card); border-top: 1px solid var(--resource-line); border-bottom: 1px solid var(--resource-line); }
.resource-proof > div { min-height: 106px; padding: 24px clamp(22px, 3vw, 48px); border-right: 1px solid var(--resource-line); display: flex; align-items: center; gap: 16px; }
.resource-proof > div:last-child { border: 0; }
.resource-proof > div > strong { font: 800 34px/1 Manrope; color: var(--resource-accent); }
.resource-proof svg { width: 25px; color: var(--resource-green); }
.resource-proof span { color: #7b7e77; font-size: 11px; display: flex; flex-direction: column; line-height: 1.5; }
.resource-proof span strong { color: #272a26; font-size: 12px; }

.resource-catalog { max-width: var(--resource-width); margin: auto; padding: 100px clamp(22px, 4vw, 64px) 120px; }
.resource-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 48px; }
.resource-section-head h2 { margin: 0; font: 800 clamp(37px, 4vw, 58px)/1.05 Manrope; letter-spacing: -.05em; }
.resource-section-head > p { margin: 0 0 7px; max-width: 480px; color: var(--resource-muted); line-height: 1.7; font-size: 14px; }
.resource-toolbar { display: flex; gap: 15px; margin-bottom: 30px; }
.resource-search { height: 58px; flex: 1; background: var(--resource-card); border: 1px solid var(--resource-line); display: flex; align-items: center; padding: 0 18px; gap: 12px; }
.resource-search svg { width: 19px; color: #777b74; }
.resource-search input { border: 0; outline: 0; background: transparent; flex: 1; min-width: 100px; font-size: 13px; }
.resource-search kbd { border: 1px solid #d0d0ca; background: #eeece5; border-radius: 3px; padding: 4px 7px; color: #777a74; font: 10px Inter; }
.resource-sort { min-width: 235px; height: 58px; border: 1px solid var(--resource-line); background: var(--resource-card); padding: 0 16px; display: flex; align-items: center; gap: 12px; color: #777a74; font-size: 11px; }
.resource-sort select { flex: 1; border: 0; outline: 0; background: transparent; font-weight: 650; color: var(--resource-ink); }
.resource-mobile-filter { display: none; }
.resource-catalog-layout { display: grid; grid-template-columns: 245px minmax(0, 1fr); gap: 44px; }
.resource-filter-head { display: flex; align-items: center; justify-content: space-between; padding: 0 0 18px; border-bottom: 1px solid var(--resource-line); }
.resource-filter-head strong { font-size: 13px; }
.resource-filter-head button, .resource-empty button { border: 0; background: transparent; color: var(--resource-accent-dark); font-size: 10px; font-weight: 750; cursor: pointer; text-decoration: underline; }
.resource-filters fieldset { border: 0; padding: 25px 0; margin: 0; border-bottom: 1px solid var(--resource-line); display: grid; gap: 13px; }
.resource-filters legend { padding: 0 0 15px; font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.resource-filters fieldset > div { display: grid; gap: 13px; }
.resource-filters label { display: flex; gap: 10px; align-items: center; color: #5d605a; font-size: 12px; cursor: pointer; }
.resource-filters label input { width: 16px; height: 16px; margin: 0; accent-color: var(--resource-accent); }
.resource-filters label span { flex: 1; }
.resource-filters label b { color: #999b96; font-size: 10px; font-weight: 500; }
.resource-filter-note { margin-top: 25px; padding: 18px; background: #e8ebe4; display: flex; align-items: flex-start; gap: 11px; }
.resource-filter-note svg { width: 19px; color: var(--resource-green); }
.resource-filter-note span { display: flex; flex-direction: column; color: #747871; font-size: 10px; line-height: 1.5; }
.resource-filter-note strong { color: #333832; font-size: 11px; }
.resource-results-meta { height: 32px; display: flex; justify-content: space-between; color: #858880; font-size: 11px; }
.resource-results-meta p { margin: 0; }
.resource-results-meta strong { color: var(--resource-ink); }
.resource-results-meta > span { padding: 4px 9px; background: #e4e2da; color: #5b5f58; }
.resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 21px; }
.resource-card { min-width: 0; background: var(--resource-card); border: 1px solid var(--resource-line); display: flex; flex-direction: column; transition: transform .24s, box-shadow .24s; }
.resource-card:hover { transform: translateY(-4px); box-shadow: 0 18px 50px #272b2512; }
.resource-card-media { aspect-ratio: 1.34; background: #e8e6df; display: block; overflow: hidden; position: relative; }
.resource-card-image { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
.resource-card:hover .resource-card-image { transform: scale(1.025); }
.resource-visual-placeholder { width: 100%; height: 100%; min-height: 170px; position: relative; display: grid; place-items: center; overflow: hidden; background: linear-gradient(145deg, #dfe1db, #b9bdb7); color: #fff; }
.resource-visual-placeholder::before { content: ""; position: absolute; width: 62%; aspect-ratio: 1; border: 1px solid #fff8; border-radius: 50%; box-shadow: 0 0 0 34px #ffffff0f, 0 0 0 70px #ffffff0b; }
.resource-visual-placeholder span { position: absolute; left: 16px; top: 15px; color: #5a6059; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.resource-visual-placeholder b { position: relative; font: 800 55px Manrope; text-shadow: 10px 12px 25px #2224; }
.resource-card-badge, .resource-card-featured { position: absolute; top: 14px; z-index: 2; height: 25px; display: flex; align-items: center; padding: 0 9px; font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.resource-card-badge { left: 14px; background: var(--resource-accent); color: #fff; }
.resource-card-featured { right: 14px; background: #fff; color: #3a3e39; gap: 5px; }
.resource-card-featured svg { width: 12px; color: var(--resource-accent); }
.resource-card-body { padding: 20px 20px 18px; display: flex; flex-direction: column; flex: 1; }
.resource-card-meta { display: flex; justify-content: space-between; gap: 12px; color: #8b8e87; font-size: 8px; text-transform: uppercase; letter-spacing: .1em; font-weight: 750; }
.resource-card h3 { margin: 10px 0 9px; font: 750 18px/1.25 Manrope; letter-spacing: -.025em; }
.resource-card h3 a { text-decoration: none; }
.resource-card-body > p { margin: 0; color: #696d65; font-size: 11px; line-height: 1.62; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.resource-card-delivery { margin: 17px 0; padding: 10px 0; border-top: 1px solid #e5e3dc; border-bottom: 1px solid #e5e3dc; display: flex; align-items: center; gap: 8px; color: #747871; font-size: 9px; }
.resource-card-delivery svg { width: 14px; color: var(--resource-green); }
.resource-card-footer { margin-top: auto; display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.resource-price { display: grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 7px; }
.resource-price del { color: #999c96; font-size: 10px; }
.resource-price strong { grid-column: 1 / -1; font: 800 19px Manrope; }
.resource-price small { grid-column: 1 / -1; color: #9a9c97; font-size: 8px; }
.resource-card-action { width: 41px; height: 41px; border: 0; background: var(--resource-ink); color: #fff; display: grid; place-items: center; cursor: pointer; transition: background .2s; }
.resource-card-action:hover { background: var(--resource-accent); }
.resource-card-action svg { width: 17px; }
.resource-loading-card { height: 410px; border: 1px solid var(--resource-line); background: linear-gradient(100deg, #e9e7e0 20%, #f8f6ef 35%, #e9e7e0 50%); background-size: 250% 100%; animation: resource-shimmer 1.5s infinite; }
@keyframes resource-shimmer { to { background-position-x: -250%; } }
.resource-empty, .resource-load-error { grid-column: 1 / -1; min-height: 350px; border: 1px dashed #c9c8c1; display: grid; place-items: center; align-content: center; text-align: center; padding: 40px; }
.resource-empty svg, .resource-load-error svg { width: 42px; color: #92958e; }
.resource-empty h3, .resource-load-error h3 { margin: 16px 0 5px; font: 750 22px Manrope; }
.resource-empty p, .resource-load-error p { margin: 0 0 18px; color: var(--resource-muted); font-size: 12px; }
.resource-load-error button { border: 1px solid var(--resource-ink); background: transparent; padding: 10px 16px; cursor: pointer; }

.resource-how { max-width: 1600px; margin: auto; background: #171a18; color: #fff; padding: 95px clamp(28px, 6vw, 100px); display: grid; grid-template-columns: .8fr 1.2fr; gap: 85px; }
.resource-how .resource-kicker { color: #989d97; }
.resource-how h2 { margin: 0; font: 750 clamp(34px, 4vw, 55px)/1.08 Manrope; letter-spacing: -.05em; }
.resource-how ol { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); }
.resource-how li { min-width: 0; border-left: 1px solid #3a3e3a; padding: 0 28px; }
.resource-how li > b { color: var(--resource-accent); font: 800 10px Inter; letter-spacing: .15em; }
.resource-how li > span { display: flex; flex-direction: column; }
.resource-how li svg { margin: 28px 0 35px; width: 30px; color: #9ba09a; }
.resource-how li strong { font: 700 15px Manrope; margin-bottom: 10px; }
.resource-how li small { color: #898e88; font-size: 10px; line-height: 1.65; }
.resource-newsletter { max-width: 1600px; margin: auto; min-height: 390px; padding: 80px 25px; text-align: center; display: grid; place-items: center; align-content: center; background: var(--resource-accent); color: #fff; }
.resource-newsletter > span { font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.resource-newsletter h2 { margin: 17px 0 10px; font: 800 clamp(38px, 5vw, 62px)/1 Manrope; letter-spacing: -.055em; }
.resource-newsletter p { margin: 0 0 28px; font-size: 12px; color: #ffe2d9; }
.resource-newsletter a { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 20px; background: #fff; color: var(--resource-ink); text-decoration: none; font-size: 11px; font-weight: 750; }
.resource-newsletter a svg { width: 16px; }
.resource-footer { max-width: 1600px; margin: auto; min-height: 310px; background: #101210; color: #fff; padding: 68px clamp(28px, 6vw, 100px) 32px; display: grid; grid-template-columns: 1.8fr .7fr .8fr; gap: 60px; position: relative; }
.resource-footer > div { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.resource-footer img { width: 155px; margin-bottom: 12px; }
.resource-footer p { margin: 0; color: #777c76; font-size: 11px; }
.resource-footer strong { color: #8d928c; font-size: 9px; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 7px; }
.resource-footer a { color: #c4c8c2; font-size: 11px; text-decoration: none; }
.resource-footer a:hover { color: #fff; }
.resource-footer > small { position: absolute; bottom: 27px; left: clamp(28px, 6vw, 100px); color: #555954; font-size: 9px; }

/* Cart and checkout */
.resource-cart-drawer { position: fixed; z-index: 100; inset: 0; background: #0506059c; backdrop-filter: blur(5px); }
.resource-cart-drawer > aside { position: absolute; right: 0; top: 0; bottom: 0; width: min(470px, 100%); background: var(--resource-card); box-shadow: -20px 0 70px #0003; display: grid; grid-template-rows: auto 1fr auto; }
.resource-cart-drawer header { padding: 26px 28px; border-bottom: 1px solid var(--resource-line); display: flex; justify-content: space-between; align-items: center; }
.resource-cart-drawer header span, .resource-dialog-intro > span, .resource-download-dialog > span { color: var(--resource-accent); font-size: 8px; letter-spacing: .15em; font-weight: 800; }
.resource-cart-drawer h2 { margin: 4px 0 0; font: 750 28px Manrope; letter-spacing: -.04em; }
.resource-cart-drawer header button, .resource-dialog-close-form button { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--resource-line); background: transparent; cursor: pointer; }
.resource-cart-drawer header button svg, .resource-dialog-close-form svg { width: 17px; }
.resource-cart-items { overflow: auto; padding: 12px 28px; }
.resource-cart-item { display: grid; grid-template-columns: 82px 1fr auto; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--resource-line); }
.resource-cart-item > a { width: 82px; height: 76px; display: block; text-decoration: none; }
.resource-cart-item img, .resource-cart-item .resource-visual-placeholder { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.resource-cart-item .resource-visual-placeholder b { font-size: 22px; }
.resource-cart-item .resource-visual-placeholder span { display: none; }
.resource-cart-item > div { display: flex; flex-direction: column; }
.resource-cart-item span { color: #92958f; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.resource-cart-item strong { margin: 5px 0 auto; font: 650 13px Manrope; }
.resource-cart-item b { font-size: 11px; }
.resource-cart-item > button { border: 0; background: transparent; cursor: pointer; color: #8b8e88; align-self: start; }
.resource-cart-item > button svg { width: 15px; }
.resource-cart-empty { min-height: 300px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.resource-cart-empty > svg { width: 38px; color: #a4a69f; }
.resource-cart-empty h3 { margin: 16px 0 5px; font: 700 20px Manrope; }
.resource-cart-empty p { max-width: 250px; margin: 0 0 18px; color: #8a8d86; font-size: 11px; }
.resource-cart-empty button { border: 0; background: transparent; text-decoration: underline; cursor: pointer; font-size: 11px; }
.resource-cart-drawer footer { padding: 25px 28px 30px; border-top: 1px solid var(--resource-line); }
.resource-cart-drawer footer > div { display: flex; justify-content: space-between; align-items: center; font-size: 11px; }
.resource-cart-drawer footer > div strong { font: 800 21px Manrope; }
.resource-cart-drawer footer p { margin: 5px 0 20px; color: #92958f; font-size: 9px; }
.resource-cart-drawer footer button { width: 100%; }

.resource-dialog { width: min(960px, calc(100% - 30px)); max-height: calc(100vh - 30px); padding: 0; border: 0; background: var(--resource-card); color: var(--resource-ink); box-shadow: 0 30px 100px #0006; }
.resource-dialog::backdrop { background: #050605bf; backdrop-filter: blur(5px); }
.resource-dialog-close-form { position: absolute; right: 22px; top: 22px; z-index: 2; }
.resource-dialog-intro { padding: 35px 42px 26px; border-bottom: 1px solid var(--resource-line); }
.resource-dialog-intro h2 { margin: 6px 0; font: 750 32px Manrope; letter-spacing: -.04em; }
.resource-dialog-intro p { margin: 0; color: var(--resource-muted); font-size: 11px; }
.resource-checkout-form { padding: 30px 42px 38px; }
.resource-checkout-layout { display: grid; grid-template-columns: 1.25fr .75fr; gap: 40px; }
.resource-checkout-fields { display: grid; gap: 16px; }
.resource-checkout-fields label:not(.resource-consent) { display: grid; gap: 7px; color: #393d38; font-size: 10px; font-weight: 700; }
.resource-checkout-fields input { height: 44px; width: 100%; border: 1px solid #cacbc5; background: #fff; outline: 0; padding: 0 13px; }
.resource-checkout-fields input:focus { border-color: var(--resource-accent); box-shadow: 0 0 0 3px #f05a3514; }
.resource-checkout-fields label small { color: #969993; font-size: 8px; font-weight: 400; }
.resource-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin-bottom: 16px; }
.resource-consent { display: flex; gap: 10px; align-items: flex-start; color: #646860; font-size: 9px; line-height: 1.5; cursor: pointer; }
.resource-consent input { flex: 0 0 auto; width: 15px; height: 15px; accent-color: var(--resource-accent); }
.resource-checkout-summary { padding: 22px; background: #eceae3; align-self: start; }
.resource-checkout-summary > span { color: #7e817b; font-size: 8px; font-weight: 800; letter-spacing: .13em; }
.resource-checkout-summary [data-checkout-summary] { margin-top: 18px; }
.resource-checkout-summary [data-checkout-summary] > div { display: flex; justify-content: space-between; gap: 15px; padding: 11px 0; border-bottom: 1px solid #d5d4cd; color: #5e625b; font-size: 10px; }
.resource-checkout-summary [data-checkout-summary] strong { color: var(--resource-ink); white-space: nowrap; }
.resource-checkout-summary .resource-checkout-total { align-items: flex-end; border: 0; padding: 18px 0 4px; }
.resource-checkout-total span { display: flex; flex-direction: column; font-weight: 750; color: var(--resource-ink); }
.resource-checkout-total small { color: #92958e; font-size: 8px; font-weight: 400; }
.resource-checkout-total strong { font: 800 22px Manrope; }
.resource-secure-note { margin-top: 18px; padding-top: 16px; border-top: 1px solid #d5d4cd; display: flex; align-items: center; gap: 10px; }
.resource-secure-note svg { width: 22px; color: var(--resource-green); }
.resource-secure-note span { display: flex; flex-direction: column; color: #8a8e87; font-size: 8px; }
.resource-secure-note strong { color: #50544e; font-size: 9px; }
.resource-form-status { min-height: 17px; color: var(--resource-accent-dark); font-size: 10px; }
.resource-checkout-submit { margin-left: auto; min-width: 230px; }
.resource-download-dialog { width: min(620px, calc(100% - 30px)); padding: 52px 48px 42px; text-align: center; }
.resource-success-mark { width: 58px; height: 58px; margin: 0 auto 20px; display: grid; place-items: center; border-radius: 50%; background: var(--resource-green); color: #fff; }
.resource-success-mark svg { width: 25px; }
.resource-download-dialog h2 { margin: 7px 0; font: 750 32px Manrope; letter-spacing: -.04em; }
.resource-download-dialog > p { color: var(--resource-muted); font-size: 11px; }
.resource-download-list { margin: 28px 0; text-align: left; display: grid; gap: 18px; }
.resource-download-list section h3 { margin: 0 0 8px; font: 700 13px Manrope; }
.resource-download-list section > a { min-height: 58px; padding: 10px 13px; border: 1px solid var(--resource-line); display: flex; align-items: center; gap: 12px; text-decoration: none; }
.resource-download-list section > a > svg { width: 21px; color: var(--resource-accent); }
.resource-download-list section > a span { display: flex; flex: 1; min-width: 0; flex-direction: column; }
.resource-download-list section > a strong { overflow: hidden; text-overflow: ellipsis; font-size: 10px; }
.resource-download-list section > a small { color: #92958f; font-size: 8px; }
.resource-download-list section > a b { color: var(--resource-accent-dark); font-size: 9px; }

/* Product page */
.resource-product-page main { max-width: var(--resource-width); margin: auto; padding: 30px clamp(22px, 4vw, 64px) 110px; }
.resource-product-breadcrumb { height: 42px; display: flex; align-items: center; gap: 7px; color: #81847d; font-size: 9px; }
.resource-product-breadcrumb a { text-decoration: none; }
.resource-product-breadcrumb svg { width: 12px; }
.resource-product-hero { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(360px, .82fr); gap: clamp(40px, 6vw, 85px); padding: 25px 0 90px; }
.resource-product-gallery { min-width: 0; }
.resource-product-stage { aspect-ratio: 1.16; background: #e4e3dc; overflow: hidden; display: grid; place-items: center; }
.resource-product-stage > img, .resource-product-stage > .resource-visual-placeholder, .resource-product-stage model-viewer { width: 100%; height: 100%; object-fit: cover; --poster-color: #e4e3dc; }
.resource-product-stage > .resource-visual-placeholder b { font-size: 100px; }
.resource-product-thumbs { margin-top: 12px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.resource-product-thumbs button { aspect-ratio: 1.25; padding: 0; border: 1px solid transparent; background: #ddddd6; overflow: hidden; cursor: pointer; }
.resource-product-thumbs button.active { border-color: var(--resource-accent); }
.resource-product-thumbs img { width: 100%; height: 100%; object-fit: cover; }
.resource-product-thumbs span { height: 100%; display: grid; place-items: center; align-content: center; gap: 3px; font-size: 8px; font-weight: 750; }
.resource-product-thumbs svg { width: 18px; }
.resource-product-info { padding-top: 20px; }
.resource-product-label { display: flex; gap: 10px; align-items: center; color: #73776f; font-size: 9px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.resource-product-label b { background: var(--resource-accent); color: #fff; padding: 5px 7px; font-size: 7px; }
.resource-product-info h1 { margin: 18px 0 20px; font: 800 clamp(40px, 4.5vw, 65px)/1.02 Manrope; letter-spacing: -.06em; }
.resource-product-lead { margin: 0; color: #5d6159; font-size: 14px; line-height: 1.75; }
.resource-product-rating { display: flex; gap: 18px; padding: 20px 0 22px; color: #646860; font-size: 9px; border-bottom: 1px solid var(--resource-line); }
.resource-product-rating span { display: flex; align-items: center; gap: 6px; }
.resource-product-rating svg { width: 15px; color: var(--resource-green); }
.resource-product-purchase { padding: 25px 0; display: grid; grid-template-columns: 1fr auto; gap: 12px; }
.resource-product-price { display: grid; align-content: center; }
.resource-product-price del { color: #999c96; font-size: 11px; }
.resource-product-price strong { font: 800 30px Manrope; letter-spacing: -.03em; }
.resource-product-price small { color: #92958f; font-size: 8px; }
.resource-product-purchase .resource-primary-button { min-width: 190px; }
.resource-product-purchase .resource-secondary-button { grid-column: 2; min-height: 44px; }
.resource-product-delivery { display: grid; gap: 1px; background: var(--resource-line); border: 1px solid var(--resource-line); }
.resource-product-delivery > div { min-height: 64px; background: var(--resource-card); padding: 13px 15px; display: flex; align-items: center; gap: 12px; }
.resource-product-delivery svg { width: 20px; color: var(--resource-green); }
.resource-product-delivery span { display: flex; flex-direction: column; color: #7f837c; font-size: 9px; }
.resource-product-delivery strong { color: #333732; font-size: 10px; }
.resource-product-delivery a { color: var(--resource-accent-dark); }
.resource-share-button { margin-top: 18px; border: 0; background: transparent; padding: 0; display: flex; align-items: center; gap: 8px; color: #656961; font-size: 9px; font-weight: 700; cursor: pointer; }
.resource-share-button svg { width: 15px; }
.resource-product-details { display: grid; grid-template-columns: 1.2fr .8fr; gap: 100px; padding: 90px clamp(0px, 3vw, 40px); border-top: 1px solid var(--resource-line); }
.resource-product-description h2 { margin: 0 0 25px; font: 800 clamp(35px, 4vw, 52px)/1.08 Manrope; letter-spacing: -.05em; }
.resource-product-description > p:not(.resource-kicker) { color: #5f635b; line-height: 1.82; font-size: 13px; }
.resource-includes { margin-top: 36px; padding: 28px; background: #e8e8e1; }
.resource-includes h3 { margin: 0 0 17px; font: 700 15px Manrope; }
.resource-includes ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.resource-includes li { display: flex; gap: 8px; align-items: flex-start; color: #565a53; font-size: 10px; }
.resource-includes svg { flex: 0 0 auto; width: 14px; color: var(--resource-green); }
.resource-product-specs { align-self: start; border: 1px solid var(--resource-line); background: var(--resource-card); padding: 27px; }
.resource-product-specs h3 { margin: 0 0 20px; font: 700 17px Manrope; }
.resource-product-specs dl { margin: 0; }
.resource-product-specs dl > div { min-height: 44px; display: grid; grid-template-columns: 1fr 1.2fr; gap: 15px; align-items: center; border-top: 1px solid #e2e1da; font-size: 9px; }
.resource-product-specs dt { color: #8a8d87; }
.resource-product-specs dd { margin: 0; text-align: right; font-weight: 650; }
.resource-license { margin-top: 20px; padding: 15px; background: #edf0eb; display: flex; align-items: flex-start; gap: 11px; }
.resource-license svg { flex: 0 0 auto; width: 20px; color: var(--resource-green); }
.resource-license span { color: #747871; font-size: 9px; line-height: 1.5; display: flex; flex-direction: column; }
.resource-license strong { color: #353a34; font-size: 10px; }
.resource-product-files { background: #181b19; color: #fff; padding: 60px clamp(28px, 5vw, 70px); }
.resource-product-files > header { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid #393d39; padding-bottom: 25px; }
.resource-product-files h2 { margin: 0; font: 750 32px Manrope; }
.resource-product-files > header > span { color: #929791; font-size: 9px; }
.resource-product-files > div { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #393d39; margin-top: 1px; }
.resource-product-files article { min-height: 76px; background: #181b19; padding: 15px 18px; display: flex; align-items: center; gap: 13px; }
.resource-product-files article > svg { width: 23px; color: var(--resource-accent); }
.resource-product-files article span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.resource-product-files article strong { overflow: hidden; text-overflow: ellipsis; font-size: 10px; }
.resource-product-files article small { color: #7e837d; font-size: 8px; }
.resource-product-files article b { display: flex; align-items: center; gap: 5px; color: #8f948e; font-size: 8px; font-weight: 500; }
.resource-product-files article b svg { width: 12px; }
.resource-product-loading { min-height: 700px; display: grid; grid-template-columns: 1fr 1fr; gap: 50px; padding-top: 50px; }
.resource-product-loading span { height: 540px; background: linear-gradient(100deg, #e4e2da 20%, #f5f3ec 35%, #e4e2da 50%); background-size: 250% 100%; animation: resource-shimmer 1.5s infinite; }
.resource-product-error { min-height: 650px; text-align: center; display: grid; place-items: center; align-content: center; }
.resource-product-error > svg { width: 54px; color: #8c8f89; }
.resource-product-error h1 { margin: 20px 0 8px; font: 800 42px Manrope; }
.resource-product-error p { color: var(--resource-muted); margin: 0 0 25px; }

/* Order confirmation */
.resource-order-page { min-height: 100vh; background: #e9e6de; }
.resource-order-main { max-width: 900px; margin: auto; padding: 70px 25px 100px; }
.resource-order-card { min-height: 400px; background: var(--resource-card); display: grid; place-items: center; align-content: center; gap: 18px; color: #6d716a; font-size: 11px; }
.resource-order-loader { width: 40px; height: 40px; border: 3px solid #d6d5ce; border-top-color: var(--resource-accent); border-radius: 50%; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.resource-order-success, .resource-order-error { background: var(--resource-card); padding: clamp(35px, 7vw, 72px); text-align: center; }
.resource-order-success h1, .resource-order-error h1 { margin: 12px 0; font: 800 clamp(40px, 6vw, 60px)/1 Manrope; letter-spacing: -.055em; }
.resource-order-success > p:not(.resource-kicker), .resource-order-error > p { margin: 0 auto 30px; max-width: 650px; color: #666a63; font-size: 12px; line-height: 1.7; }
.resource-order-success .resource-kicker { justify-content: center; }
.resource-order-meta { margin: 35px 0 45px; border: 1px solid var(--resource-line); display: grid; grid-template-columns: repeat(3, 1fr); }
.resource-order-meta span { min-height: 80px; border-right: 1px solid var(--resource-line); display: flex; flex-direction: column; align-items: center; justify-content: center; color: #8a8d86; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.resource-order-meta span:last-child { border: 0; }
.resource-order-meta strong { color: var(--resource-ink); font-size: 11px; margin-top: 4px; text-transform: none; letter-spacing: 0; }
.resource-order-downloads { display: grid; gap: 22px; text-align: left; }
.resource-order-downloads section { border: 1px solid var(--resource-line); }
.resource-order-downloads header { min-height: 75px; padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; background: #ebe9e2; }
.resource-order-downloads header span { color: #92958f; font-size: 7px; font-weight: 800; letter-spacing: .12em; }
.resource-order-downloads h2 { margin: 3px 0 0; font: 700 16px Manrope; }
.resource-order-downloads header a { display: flex; align-items: center; gap: 5px; color: #656961; font-size: 8px; text-decoration: none; }
.resource-order-downloads header svg { width: 12px; }
.resource-order-file { min-height: 68px; padding: 12px 18px; display: flex; align-items: center; gap: 14px; text-decoration: none; border-top: 1px solid var(--resource-line); }
.resource-order-file > svg { width: 22px; color: var(--resource-accent); }
.resource-order-file span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.resource-order-file strong { overflow: hidden; text-overflow: ellipsis; font-size: 10px; }
.resource-order-file small { color: #90938d; font-size: 8px; }
.resource-order-file b { display: flex; gap: 6px; align-items: center; color: var(--resource-accent-dark); font-size: 9px; }
.resource-order-file b svg { width: 14px; }
.resource-order-help { margin: 30px 0; padding: 18px; background: #e9eee9; text-align: left; display: flex; gap: 13px; align-items: center; }
.resource-order-help svg { width: 24px; color: var(--resource-green); }
.resource-order-help span { color: #777b74; font-size: 9px; display: flex; flex-direction: column; }
.resource-order-help strong { color: #343934; font-size: 10px; }
.resource-order-error > svg { width: 55px; color: var(--resource-accent); }
.resource-order-error > div { display: flex; justify-content: center; gap: 12px; }

@media (max-width: 1100px) {
  .resource-site-header { grid-template-columns: 1fr 1fr; }
  .resource-site-header nav { display: none; }
  .resource-hero { grid-template-columns: 1fr 45%; min-height: 560px; }
  .resource-hero-copy { padding: 70px 50px; }
  .resource-art-object { width: 260px; }
  .resource-proof { grid-template-columns: 1fr 1fr; }
  .resource-proof > div:nth-child(2) { border-right: 0; }
  .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .resource-how { grid-template-columns: 1fr; gap: 55px; }
  .resource-product-hero { gap: 40px; }
  .resource-product-details { gap: 50px; }
}

@media (max-width: 760px) {
  .resource-site-header { height: 66px; padding: 0 18px; }
  .resource-brand img { width: 120px; }
  .resource-header-actions > a, .resource-header-actions button span { display: none; }
  .resource-header-actions { gap: 10px; }
  .resource-hero { display: flex; flex-direction: column; }
  .resource-hero-copy { padding: 58px 23px 62px; }
  .resource-hero-copy h1 { font-size: clamp(45px, 14vw, 66px); }
  .resource-hero-copy > p:not(.resource-kicker) { font-size: 14px; }
  .resource-hero-actions { align-items: flex-start; flex-direction: column; }
  .resource-hero-art { min-height: 430px; }
  .resource-art-object { width: 230px; }
  .resource-art-float { min-width: 190px; padding: 12px; }
  .resource-art-float.top { left: 4%; top: 9%; }
  .resource-art-float.bottom { right: 3%; bottom: 8%; }
  .resource-proof { grid-template-columns: 1fr 1fr; }
  .resource-proof > div { min-height: 85px; padding: 18px; }
  .resource-proof > div:nth-child(odd) { border-right: 1px solid var(--resource-line); }
  .resource-proof > div:nth-child(even) { border-right: 0; }
  .resource-proof > div > strong { font-size: 25px; }
  .resource-catalog { padding-top: 70px; padding-bottom: 75px; }
  .resource-section-head { align-items: flex-start; flex-direction: column; margin-bottom: 30px; }
  .resource-toolbar { flex-wrap: wrap; }
  .resource-search { flex-basis: 100%; }
  .resource-sort { flex: 1; min-width: 0; }
  .resource-mobile-filter { display: flex; align-items: center; gap: 7px; height: 58px; border: 1px solid var(--resource-line); background: var(--resource-card); padding: 0 16px; }
  .resource-mobile-filter svg { width: 17px; }
  .resource-catalog-layout { display: block; }
  .resource-filters { display: none; margin-bottom: 28px; padding: 20px; border: 1px solid var(--resource-line); background: var(--resource-card); }
  .resource-filters.is-open { display: block; }
  .resource-grid { grid-template-columns: 1fr; }
  .resource-card-media { aspect-ratio: 1.5; }
  .resource-how { padding: 68px 23px; }
  .resource-how ol { grid-template-columns: 1fr; gap: 30px; }
  .resource-how li { display: grid; grid-template-columns: 30px 1fr; padding: 20px; border: 1px solid #3a3e3a; }
  .resource-how li svg { margin: 15px 0; }
  .resource-footer { grid-template-columns: 1fr 1fr; padding-bottom: 75px; }
  .resource-footer > div:first-child { grid-column: 1 / -1; }
  .resource-checkout-layout { grid-template-columns: 1fr; }
  .resource-checkout-summary { grid-row: 1; }
  .resource-dialog-intro, .resource-checkout-form { padding-left: 22px; padding-right: 22px; }
  .resource-form-grid { grid-template-columns: 1fr; }
  .resource-checkout-submit { width: 100%; }
  .resource-download-dialog { padding: 48px 22px 30px; }
  .resource-product-page main { padding-top: 15px; padding-bottom: 70px; }
  .resource-product-breadcrumb { overflow: hidden; white-space: nowrap; }
  .resource-product-hero { grid-template-columns: 1fr; padding-bottom: 65px; }
  .resource-product-info { padding-top: 0; }
  .resource-product-info h1 { font-size: 44px; }
  .resource-product-purchase { grid-template-columns: 1fr; }
  .resource-product-purchase .resource-primary-button, .resource-product-purchase .resource-secondary-button { grid-column: 1; width: 100%; }
  .resource-product-details { grid-template-columns: 1fr; gap: 45px; padding: 65px 0; }
  .resource-includes ul { grid-template-columns: 1fr; }
  .resource-product-files { margin-left: -22px; margin-right: -22px; padding: 45px 22px; }
  .resource-product-files > div { grid-template-columns: 1fr; }
  .resource-product-loading { grid-template-columns: 1fr; }
  .resource-product-loading span:last-child { display: none; }
  .resource-order-main { padding: 30px 14px 70px; }
  .resource-order-success, .resource-order-error { padding: 35px 18px; }
  .resource-order-meta { grid-template-columns: 1fr; }
  .resource-order-meta span { border-right: 0; border-bottom: 1px solid var(--resource-line); }
  .resource-order-meta span:last-child { border-bottom: 0; }
  .resource-order-downloads header { align-items: flex-start; gap: 12px; }
  .resource-order-file b { font-size: 0; }
  .resource-order-file b svg { width: 18px; }
}

/* Lase.ro visual alignment */
:root {
  --resource-ink: #171717;
  --resource-paper: #f5f5f6;
  --resource-card: #ffffff;
  --resource-muted: #6f7278;
  --resource-line: #e4e5e8;
  --resource-accent: #cb1217;
  --resource-accent-dark: #a40d11;
  --resource-green: #24734f;
  --resource-width: 1480px;
}

body.resource-page { background: #fff; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; overflow-x: hidden; }
.resource-page h1, .resource-page h2, .resource-page h3, .resource-page strong, .resource-price strong, .resource-product-price strong { font-family: Inter, system-ui, sans-serif; }

.resource-site-header { min-height: 74px; height: auto; padding: 14px clamp(18px, 4vw, 64px); grid-template-columns: auto 1fr auto; gap: 28px; position: sticky; top: 0; background: rgba(18, 18, 18, .94); border: 0; border-bottom: 1px solid rgba(255,255,255,.12); box-shadow: 0 14px 38px rgba(0,0,0,.18); backdrop-filter: blur(22px) saturate(150%); -webkit-backdrop-filter: blur(22px) saturate(150%); }
.resource-brand img { width: clamp(138px, 15vw, 206px); }
.resource-site-header nav { justify-content: center; gap: clamp(17px, 2vw, 32px); }
.resource-site-header nav a { position: relative; color: #fff; opacity: .82; font-size: .92rem; font-weight: 800; }
.resource-site-header nav a:hover, .resource-site-header nav a.active { color: #fff; opacity: 1; }
.resource-site-header nav a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -8px; height: 2px; background: var(--resource-accent); transform: scaleX(0); transition: transform .16s ease; }
.resource-site-header nav a:hover::after, .resource-site-header nav a.active::after { transform: scaleX(1); }
.resource-header-actions { gap: 14px; }
.resource-header-actions > a { color: #fff; opacity: .82; font-size: .84rem; font-weight: 800; }
.resource-header-actions button { min-height: 42px; padding: 0 14px; border-radius: 4px; background: var(--resource-accent); font-size: .78rem; letter-spacing: 0; text-transform: none; font-weight: 900; }
.resource-header-actions button:hover { background: var(--resource-accent-dark); }
.resource-header-actions b { min-width: 19px; height: 19px; color: var(--resource-accent); background: #fff; }

.resource-primary-button, .resource-secondary-button { min-height: 50px; border-radius: 4px; font-size: .84rem; font-weight: 900; }
.resource-primary-button { box-shadow: 0 12px 28px rgba(203,18,23,.23); }
.resource-secondary-button { border-color: #cfd1d5; background: #fff; }
.resource-kicker { color: #7b7e84; font-size: .72rem; letter-spacing: .13em; }
.resource-kicker span { background: var(--resource-accent); }

.resource-hero { max-width: none; min-height: 625px; color: #fff; background: #111317; }
.resource-hero-copy { padding: clamp(74px, 8vw, 118px) clamp(28px, 7vw, 112px); background: radial-gradient(circle at 12% 15%, rgba(203,18,23,.2), transparent 33%), #111317; }
.resource-hero-copy h1 { max-width: 820px; font-weight: 900; font-size: clamp(50px, 5.4vw, 86px); line-height: .98; letter-spacing: -.06em; }
.resource-hero-copy h1 em { color: #fff; }
.resource-hero-copy > p:not(.resource-kicker) { color: rgba(255,255,255,.7); }
.resource-hero-actions > span { color: rgba(255,255,255,.8); }
.resource-hero-actions small { color: rgba(255,255,255,.48); }
.resource-hero-art { min-height: 625px; background: linear-gradient(145deg, #26282d, #0d0e11 72%); }
.resource-art-grid { opacity: .24; background-image: linear-gradient(#73757b 1px, transparent 1px), linear-gradient(90deg, #73757b 1px, transparent 1px); }
.resource-art-orbit { border-color: #45474d; }
.resource-art-object { border-radius: 12px; border-color: #5c5f66; background: linear-gradient(145deg, #35373d, #151619 72%); }
.resource-art-object::after { border-color: var(--resource-accent); box-shadow: 0 0 34px rgba(203,18,23,.3); }
.resource-art-float { border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: #fff; box-shadow: 0 20px 55px rgba(0,0,0,.36); }

.resource-proof { max-width: none; background: #fff; }
.resource-proof > div { min-height: 112px; }
.resource-proof > div > strong { color: var(--resource-accent); }
.resource-catalog { max-width: none; background: var(--resource-paper); padding-inline: clamp(22px, 5vw, 78px); }
.resource-section-head h2 { font-weight: 900; letter-spacing: -.045em; }
.resource-toolbar { gap: 12px; }
.resource-search, .resource-sort, .resource-mobile-filter { border-radius: 7px; background: #fff; }
.resource-search input { font-size: .84rem; }
.resource-search kbd { border-radius: 4px; background: #f3f3f4; }
.resource-filter-note { border-radius: 7px; background: #eef4f0; }
.resource-results-meta > span { border-radius: 999px; background: #e8e9eb; }
.resource-grid { gap: 20px; }
.resource-card { border-radius: 12px; overflow: hidden; box-shadow: 0 12px 32px rgba(20,24,30,.04); }
.resource-card:hover { transform: translateY(-5px); box-shadow: 0 22px 52px rgba(20,24,30,.11); }
.resource-card-media { background: #eceef0; }
.resource-card-badge, .resource-card-featured { border-radius: 4px; }
.resource-card h3 { font-size: 1.08rem; font-weight: 800; }
.resource-card-body > p { color: #6f7278; font-size: .74rem; }
.resource-card-delivery { color: #767980; }
.resource-card-action { border-radius: 4px; background: var(--resource-ink); }
.resource-card-action:hover { background: var(--resource-accent); }
.resource-loading-card, .resource-empty, .resource-load-error { border-radius: 12px; }

.resource-how { max-width: none; background: #17191d; }
.resource-how h2 { font-weight: 900; }
.resource-how li { border-color: #3b3e44; }
.resource-newsletter { max-width: none; color: var(--resource-ink); background: #fff; border-top: 1px solid var(--resource-line); }
.resource-newsletter > span { color: var(--resource-accent); }
.resource-newsletter h2 { font-weight: 900; }
.resource-newsletter p { color: var(--resource-muted); }
.resource-newsletter a { border-radius: 4px; color: #fff; background: var(--resource-accent); font-weight: 900; }
.resource-newsletter a:hover { background: var(--resource-accent-dark); }
.resource-footer { max-width: none; min-height: 300px; background: #101114; }

.resource-cart-drawer > aside, .resource-dialog, .resource-order-card, .resource-order-success, .resource-order-error { background: #fff; }
.resource-cart-drawer header button, .resource-dialog-close-form button, .resource-download-list section > a, .resource-checkout-fields input { border-radius: 4px; }
.resource-dialog { border-radius: 10px; }
.resource-checkout-summary, .resource-order-downloads header { border-radius: 7px; background: #f2f3f4; }

.resource-product-page main { max-width: var(--resource-width); background: #fff; }
.resource-product-stage { border-radius: 12px; background: #eceef0; }
.resource-product-thumbs button { border-radius: 5px; }
.resource-product-info h1, .resource-product-description h2 { font-weight: 900; }
.resource-product-delivery, .resource-product-specs { border-radius: 8px; overflow: hidden; }
.resource-includes, .resource-license { border-radius: 8px; background: #f2f3f4; }
.resource-product-files { border-radius: 12px; background: #17191d; }
.resource-product-files article { background: #17191d; }
.resource-order-page { background: var(--resource-paper); }

@media (max-width: 1180px) {
  .resource-site-header { grid-template-columns: 1fr auto; }
  .resource-site-header nav { display: none; }
}

@media (max-width: 760px) {
  .resource-site-header { min-height: 66px; height: 66px; padding: 10px 18px; }
  .resource-brand img { width: 132px; }
  .resource-header-actions button { min-width: 42px; padding: 0 11px; }
  .resource-hero-copy { padding: 64px 23px; }
  .resource-hero-copy h1 { font-size: clamp(43px, 13vw, 62px); }
  .resource-hero-art { min-height: 400px; }
  .resource-catalog { padding-inline: 20px; }
  .resource-card { border-radius: 10px; }
  .resource-product-files { border-radius: 0; }
}
