/*
Theme Name: MarginMints
Theme URI: https://shop.marginmints.com/
Author: MarginMints
Author URI: https://shop.marginmints.com/
Description: A professional, mobile-first WooCommerce theme for the MarginMints digital-download shop — printable planners, party games and crochet PDF patterns. Black-and-white minimal design with a gold accent, built for instant-download products: no shipping UI, clear sale pricing, trust badges and a clean mobile checkout. Based on the approved MarginMints static storefront design (November 2026).
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: marginmints
Tags: e-commerce, woocommerce, digital-downloads, minimal, black, white, gold, responsive, custom-menu, featured-images
WooCommerce: 11.3.0
*/

/* ==========================================================================
   MarginMints — base design system.
   Converted 1:1 from the approved static storefront (shop-website-final,
   November 2026): black + white minimal palette, gold #C9A227 accent only,
   system font stack, no external dependencies, no webfonts, no CDNs.
   WooCommerce-specific styling lives in css/woocommerce.css.
   ========================================================================== */
/* MarginMints storefront concept · Front-end only · No external dependencies */
:root {
  --sage: #555555; --sage-light: #EFEFEF; --sage-mid: #E2E2E2; --deep: #111111;
  --cream: #FFFFFF; --cream-dark: #EFEFEF; --gold: #C9A227; --gold-light: #DAC88E;
  --ink: #111111; --muted: #555555; --border: #E2E2E2; --white: #FFFFFF;
  --serif: 'Iowan Old Style','Baskerville','Palatino Linotype','Book Antiqua',Georgia,serif;
  --sans: -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  --radius-sm: 8px; --radius: 15px; --radius-lg: 24px;
  --shadow: 0 18px 48px rgba(55,55,55,.08); --shadow-hover: 0 22px 55px rgba(55,55,55,.14);
  --container: 1210px;
}
*, *::before, *::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--white); color:var(--ink); font:16px/1.62 var(--sans); -webkit-font-smoothing:antialiased; }
img, svg { max-width:100%; }
img { display:block; }
a { color:inherit; text-decoration:none; }
button, input, textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; }
:focus-visible { outline:3px solid #9D7410; outline-offset:4px; }
::selection { background:#D3D3D3; color:var(--ink); }
.skip-link { position:absolute; top:-100px; left:16px; background:var(--deep);color:white;padding:10px 16px;z-index:2000; }
.skip-link:focus { top:10px; }
.container { width:min(calc(100% - 40px),var(--container));margin-inline:auto; }
.eyebrow { margin:0 0 14px; color:#636363; text-transform:uppercase; letter-spacing:.18em; font-size:11px; font-weight:800; }
h1,h2,h3,h4,p { margin-top:0; }
h1,h2,h3,h4 { font-family:var(--serif); line-height:1.14; letter-spacing:-.035em; color:var(--deep); }
h1 { font-size:clamp(2.85rem,5.5vw,5.55rem);font-weight:600; }
h2 { font-size:clamp(2.1rem,3.7vw,3.5rem);font-weight:600; }
h3 { font-size:clamp(1.25rem,2vw,1.65rem);font-weight:600; }
p { color:var(--muted); }
.small { font-size:.88rem; }
.text-center { text-align:center; }
.centered { max-width:680px;margin-inline:auto; }
.header-note { background:var(--deep);color:#F2F2F2;text-align:center;padding:7px 16px;font-size:.73rem;letter-spacing:.065em; }
.site-header { position:sticky;top:0;z-index:90;background:rgba(255,254,250,.96);backdrop-filter:blur(18px);border-bottom:1px solid #E4E4E4; }
.nav-wrap { display:flex;align-items:center;gap:28px;min-height:83px; }
.brand { display:inline-flex;align-items:center;gap:11px;white-space:nowrap; }
.brand-mark { display:grid;place-items:center;width:43px;height:43px;color:#FFF9EC;background:var(--deep);border-radius:13px;font-family:var(--serif);font-size:1.8rem;line-height:1;position:relative; }
.brand-mark::after { content:'';position:absolute;width:6px;height:6px;right:7px;top:6px;background:var(--gold-light);border-radius:50%; }
.brand-name { font-family:var(--serif);font-size:1.7rem;letter-spacing:-.055em;font-weight:700;color:var(--deep); }
.brand-name span { color:#848484; }
.nav-links { display:flex;align-items:center;gap:29px;margin:auto; }
.nav-links a { font-size:.84rem;font-weight:700;color:#4E4E4E;padding:10px 0;transition:color .2s;white-space:nowrap; }
.nav-links a:hover,.nav-links a[aria-current="page"] { color:#8C6D1C; }
.nav-tools { display:flex;align-items:center;gap:10px; }
.nav-cart { display:inline-flex;align-items:center;gap:8px;border:1px solid #CECECE;border-radius:999px;padding:10px 15px;font-size:.84rem;font-weight:750;color:var(--deep); }
.cart-count { background:var(--sage-light);border-radius:999px;min-width:22px;height:22px;display:grid;place-items:center;font-size:.72rem; }
.menu-toggle { display:none;background:none;border:1px solid var(--border);color:var(--deep);border-radius:10px;padding:10px;line-height:0; }
.icon { width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle; }
.btn { appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:11px;border:1px solid transparent;border-radius:7px;min-height:49px;padding:13px 22px;font-weight:750;font-size:.88rem;letter-spacing:.015em;text-align:center;line-height:1.2;transition:background-color .2s,border-color .2s,transform .2s,box-shadow .2s; }
.btn:hover:not(:disabled) { transform:translateY(-2px); }
.btn-primary { background:var(--deep);color:#FFFEF8; }
.btn-primary:hover:not(:disabled) { background:#5A5A5A;box-shadow:0 8px 20px rgba(66,66,66,.17); }
.btn-outline { background:rgba(255,254,250,.85);color:var(--deep);border-color:var(--deep); }
.btn-outline:hover:not(:disabled) { background:var(--sage-light); }
.btn-cream { background:#FFFDF6;color:var(--deep); }
.btn-cream:hover:not(:disabled) { background:#E5E5E5; }
.btn-disabled,.btn:disabled { background:#D2D2D2;color:#6A6A6A;opacity:1;border-color:transparent; }
.btn-small { min-height:40px;padding:10px 13px;font-size:.8rem; }
.btn-block { display:flex;width:100%; }
.btn-group { display:flex;flex-wrap:wrap;gap:12px;align-items:center; }
.arrow { font-size:1.18em; }
.section { padding:90px 0; }
.section-soft { background:var(--cream); }
.section-title { max-width:660px;margin-bottom:34px; }
.section-title p { margin:0; }
.section-title h2 { margin-bottom:13px; }
.section-title.center { text-align:center;margin:0 auto 40px; }
.section-head-row { display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:34px; }
.section-head-row h2 { margin-bottom:6px; }
.inline-link { display:inline-flex;align-items:center;gap:8px;color:var(--deep);font-weight:800;font-size:.9rem;border-bottom:1px solid var(--gold);padding-bottom:3px;white-space:nowrap; }
.inline-link:hover { color:#8D7029; }
/* Homepage */
.hero { min-height:660px;position:relative;isolation:isolate;overflow:hidden;background:var(--cream);display:flex;align-items:center; }
.hero-bg { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2; }
.hero::before { content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,236,.96) 0%,rgba(251,246,236,.95) 28%,rgba(251,246,236,.7) 49%,transparent 74%);z-index:-1; }
.hero-copy { padding:80px 0 94px;max-width:660px; }
.hero h1 { margin-bottom:26px; }
.hero h1 em { font-weight:400;color:#767676;font-style:italic; }
.hero-copy>p:not(.eyebrow) { color:#5A5A5A;font-size:1.04rem;max-width:435px;line-height:1.8;margin-bottom:29px; }
.hero-bottom-note { display:flex;align-items:center;gap:10px;margin-top:33px;color:#6A6A6A;font-size:.8rem;font-weight:700;white-space:nowrap; }
@media(max-width:560px){.hero-bottom-note{white-space:normal}}
.dot { width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block; }
.benefits { border-bottom:1px solid var(--border);background:#FFFDF8; }
.benefits-inner { min-height:95px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:center; }
.benefit { display:flex;justify-content:center;align-items:center;gap:12px;color:var(--deep);font-weight:750;font-size:.84rem; }
.benefit .icon { color:#828282;width:21px;height:21px; }
.product-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px; }
.product-card { min-width:0;background:var(--white);border:1px solid #E6E6E6;border-radius:13px;overflow:hidden;transition:transform .2s,box-shadow .2s; }
.product-card:hover { transform:translateY(-4px);box-shadow:var(--shadow); }
.product-art-link { display:block; }
.product-art { aspect-ratio: 4 / 4.45;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;background:linear-gradient(147deg,#EAEAEA,#DCDCDC 54%,#D6D6D6);padding:24px; }
.product-art:has(img) { aspect-ratio:4/3;padding:0; }
.product-art img { display:block;width:100%;height:100%;object-fit:cover;position:relative;z-index:1; }
.gallery-main .product-art:has(img) { aspect-ratio:4/3;min-height:0;padding:0; }
.product-art.games-art { background:linear-gradient(145deg,#F6EDDB,#E2E2E2 60%,#DCDCDC); }
.product-art::after { content:'';position:absolute;left:-52px;bottom:-102px;width:230px;height:230px;border:1px solid rgba(132,132,132,.27);border-radius:50%; }
.product-art::before { content:'';position:absolute;right:-80px;top:-100px;width:235px;height:235px;border:1px solid rgba(183,144,43,.2);border-radius:50%; }
.art-leaf { position:absolute;width:140px;height:140px;right:-21px;top:-14px;opacity:.34;background-image:url('assets/leaf-decoration.svg');background-repeat:no-repeat;background-size:contain;transform:rotate(27deg);pointer-events:none; }
.art-leaf.bottom { left:-49px;right:auto;top:auto;bottom:-25px;transform:rotate(205deg); }
.print-cover { width:78%;height:85%;padding:10px;background:#FFFDF7;border:1px solid #AEAEAE;box-shadow:13px 17px 30px rgba(66,66,66,.18);position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;transform:rotate(-3deg);z-index:1; }
.games-art .print-cover { transform:rotate(3deg); }
.print-cover::before { content:'';position:absolute;inset:8px;border:1px solid #D8C48B;pointer-events:none; }
.cover-kicker { font-size:clamp(8px,.72vw,11px);text-transform:uppercase;letter-spacing:.18em;font-weight:750;color:#888888; }
.cover-title { font-family:var(--serif);color:var(--deep);font-size:clamp(1rem,1.7vw,1.56rem);line-height:1.17;letter-spacing:-.04em;max-width:160px; }
.cover-rule { width:47px;height:1px;background:#C9A84D; }
.cover-subtitle { font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:#898989; }
.art-placeholder { position:absolute;bottom:10px;right:10px;z-index:2;background:rgba(255,253,247,.93);color:#555555;border-radius:4px;padding:4px 6px;letter-spacing:.02em;font-size:9px; }
.product-info { padding:17px 16px 18px; }
.product-category { font-size:.68rem;text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:#868686;margin:0 0 7px; }
.product-info h3 { margin:0 0 8px;font-family:var(--sans);font-size:1rem;font-weight:750;letter-spacing:-.012em;line-height:1.38;min-height:2.76em; }
.product-info h3 a:hover { color:#8D6A24; }
.product-meta { color:#757575;font-size:.78rem;margin-bottom:11px;min-height:1.4em; }
.product-price { color:var(--deep);font-weight:850;font-size:1.2rem;letter-spacing:-.02em; }
.product-bottom { display:flex;justify-content:space-between;align-items:center;gap:10px; }
.add-cart { white-space:nowrap; }
.category-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px; }
.category-tile { min-height:330px;border-radius:var(--radius-lg);overflow:hidden;position:relative;isolation:isolate;background:#E7E7E7;display:flex;align-items:end;padding:37px; }
.category-tile img { position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .5s; }
.category-tile:hover img { transform:scale(1.045); }
.category-tile::before { content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,236,.99),rgba(251,246,236,.78) 49%,rgba(251,246,236,.05));z-index:-1; }
.category-tile .eyebrow { margin-bottom:8px; }
.category-tile h3 { font-size:2.55rem;margin-bottom:11px; }
.category-tile p { max-width:245px;color:#595959;font-size:.9rem; }
.process-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px; }
.step-card { padding:33px 30px;background:#FFFDF8;border:1px solid #DEDEDE;border-radius:var(--radius); }
.step-icon { width:63px;height:63px;display:grid;place-items:center;border:1px solid #CDCDCD;background:var(--sage-light);border-radius:50%;color:var(--deep);margin-bottom:25px; }
.step-icon .icon { width:28px;height:28px; }
.step-no { color:#A48233;font-weight:800;letter-spacing:.16em;font-size:.7rem;text-transform:uppercase;margin-bottom:11px; }
.step-card h3 { margin-bottom:12px; }
.step-card p { margin-bottom:0;font-size:.92rem; }
.why-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; }
.why-item { display:flex;gap:20px;padding:27px;border:1px solid #E2E2E2;border-radius:14px;background:white; }
.why-item .icon { flex-shrink:0;color:#7E7E7E;width:28px;height:28px; }
.why-item h3 { font-size:1.4rem;margin-bottom:10px; }
.why-item p { margin:0;font-size:.92rem; }
.newsletter { display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#E4E4E4;border-radius:25px;padding:55px 65px;border:1px solid #D1D1D1;position:relative;overflow:hidden; }
.newsletter::after { content:'';position:absolute;right:-80px;bottom:-140px;width:340px;height:340px;border:1px solid #BCBCBC;border-radius:50%;pointer-events:none; }
.newsletter h2 { font-size:2.5rem;margin-bottom:13px; }
.newsletter p { margin-bottom:0; }
.email-row { display:flex;gap:9px;position:relative;z-index:1; }
.input,textarea { width:100%;background:#FFFEFC;border:1px solid #CCCCCC;border-radius:7px;color:var(--ink);padding:13px 15px;min-height:49px; }
.input:focus,textarea:focus { border-color:#808080;outline:2px solid #BBBBBB;outline-offset:1px; }
.input:disabled { background:#EEEEEE;color:#737373; }
.form-note { color:#666666;font-size:.76rem;margin:11px 0 0; }
.form-status { display:block;min-height:1.2em;margin-top:10px;color:var(--deep);font-size:.82rem;font-weight:700; }
/* General pages */
.page-intro { background:var(--cream);border-bottom:1px solid #E0E0E0;padding:65px 0 70px;position:relative;overflow:hidden; }
.page-intro::after { content:'';position:absolute;right:-55px;top:-140px;width:420px;height:420px;background:url('assets/leaf-decoration.svg') center/contain no-repeat;opacity:.16;transform:rotate(35deg);pointer-events:none; }
.page-intro-inner { position:relative;z-index:1;max-width:780px; }
.page-intro h1 { font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:17px; }
.page-intro p:not(.eyebrow) { max-width:670px;font-size:1.01rem;margin-bottom:0; }
.breadcrumb { display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:.78rem;color:#7A7A7A;margin:0 0 30px; }
.breadcrumb a:hover { color:#8F712B;text-decoration:underline; }
.catalog-section { padding:62px 0 100px; }
.catalog-tools { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--border); }
.filters { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.filter-btn { border:1px solid #D6D6D6;color:#525252;background:#fff;border-radius:999px;padding:9px 18px;font-size:.82rem;font-weight:750; }
.filter-btn.active,.filter-btn:hover { background:var(--deep);color:#fff;border-color:var(--deep); }
.result-count { margin:0;font-size:.84rem;color:#6E6E6E; }
.empty { grid-column:1/-1;padding:70px 20px;text-align:center;border:1px dashed #CDCDCD;border-radius:12px; }
.detail-wrap { padding:55px 0 105px; }
.detail-grid { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:74px;align-items:start; }
.gallery-main { background:linear-gradient(145deg,#E6E6E6,#DADADA);border:1px solid #D8D8D8;border-radius:19px;overflow:hidden;padding:32px;min-height:560px;display:grid;place-items:center; }
.gallery-main .product-art { background:transparent;aspect-ratio:4/4.4;width:100%;max-width:450px;min-height:490px; }
.gallery-main .print-cover { box-shadow:19px 20px 48px rgba(58,58,58,.2); }
.gallery-main .cover-title { font-size:clamp(1.8rem,3vw,2.45rem);max-width:290px; }
.gallery-main .cover-kicker { font-size:.84rem; }
.gallery-main .cover-subtitle { font-size:.77rem; }
.gallery-main .art-placeholder { bottom:0; }
.gallery-thumbs { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:13px; }
.thumb { border:1px solid #DBDBDB;border-radius:10px;background:#F0F0F0;min-height:93px;display:grid;place-items:center;text-align:center;gap:4px;color:#585858;font-size:.77rem;font-weight:750;padding:14px 8px; }
.thumb.active { outline:2px solid var(--sage);border-color:transparent;background:var(--sage-light); }
.thumb .icon { width:22px;height:22px; }
.detail-summary .breadcrumb { margin-bottom:19px; }
.detail-summary h1 { font-size:clamp(2.4rem,4vw,3.9rem);margin-bottom:13px; }
.detail-summary .detail-price { font-family:var(--serif);font-size:2.15rem;color:var(--deep);font-weight:700;margin-bottom:20px; }
.detail-summary .lead { font-size:1.025rem;color:#5A5A5A;line-height:1.8; }
.notice { background:#EEEEEE;border-left:3px solid #787878;padding:16px 19px;border-radius:0 8px 8px 0;margin:25px 0;color:#444444;font-size:.86rem;font-weight:690; }
.detail-actions { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 29px; }
.detail-actions .btn { padding-inline:12px; }
.detail-bullets { list-style:none;padding:0;margin:20px 0 30px; }
.detail-bullets li { display:flex;gap:11px;align-items:start;margin:9px 0;color:#505050;font-size:.93rem; }
.tick { color:#6E6E6E;font-size:1.15rem;font-weight:800; }
.file-box { border:1px solid #E1E1E1;border-radius:13px;background:#FCFBF6;padding:22px 24px; }
.file-box h3 { font-size:1.45rem;margin-bottom:14px; }
.file-row { display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-top:1px solid #E5E5E5;font-size:.85rem; }
.file-row span:first-child { color:#6D6D6D; }
.file-row span:last-child { text-align:right;font-weight:700;color:#484848; }
.detail-bottom { margin-top:70px;display:grid;grid-template-columns:1fr 1fr;gap:30px; }
.detail-panel { border:1px solid #E3E3E3;border-radius:17px;padding:30px; }
.detail-panel h2 { font-size:2rem; }
.detail-panel ul { padding-left:20px;color:#5C5C5C; }
.detail-panel li { margin:10px 0; }
.text-page { padding:70px 0 104px; }
.text-narrow { max-width:850px;margin-inline:auto; }
.text-narrow h2 { font-size:2.2rem;margin-top:34px;margin-bottom:15px; }
.text-narrow p { color:#5B5B5B; }
.info-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:35px; }
.info-panel { border:1px solid var(--border);background:var(--cream);padding:28px;border-radius:14px; }
.info-panel h3 { margin-bottom:10px; }
.info-panel p { margin:0;font-size:.92rem; }
.faq-list { display:grid;gap:13px; }
.faq-list details { border:1px solid #DFDFDF;border-radius:12px;background:#FFFDF8;padding:0 24px; }
.faq-list summary { cursor:pointer;list-style:none;padding:22px 28px 22px 0;font-weight:790;color:var(--deep);position:relative; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+';position:absolute;right:0;top:14px;font-size:1.8rem;color:#8D8D8D;font-weight:400; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list details p { margin:0 0 23px;padding-right:20px;font-size:.94rem; }
.contact-layout { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.7fr);gap:75px; }
.contact-form { display:grid;gap:18px; }
.field label { display:block;margin-bottom:6px;color:#4C4C4C;font-size:.86rem;font-weight:750; }
textarea { min-height:160px;resize:vertical; }
.contact-sidebar { background:var(--sage-light);border-radius:16px;padding:34px;align-self:start; }
.contact-sidebar h2 { font-size:1.75rem; }
.policy-card { border-bottom:1px solid var(--border);padding:0 0 22px;margin-bottom:27px; }
.policy-card:last-child { border:none; }
.policy-card h2 { font-size:1.9rem; }
.policy-card p { margin-bottom:9px; }
/* Cart and visual checkout */
.cart-layout { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(295px,.68fr);gap:38px;align-items:start; }
.cart-list { border:1px solid #E0E0E0;border-radius:15px;overflow:hidden;background:#fff; }
.cart-item { display:grid;grid-template-columns:85px minmax(0,1fr) auto;gap:19px;align-items:center;padding:22px;border-bottom:1px solid #E5E5E5; }
.cart-item:last-child { border-bottom:none; }
.cart-mini { height:100px;width:85px;background:var(--sage-light);border:1px solid #D6D6D6;display:grid;place-items:center;border-radius:6px;font:1.8rem var(--serif);color:var(--deep); }
.cart-item-name { font-weight:750;color:var(--deep);line-height:1.35;display:block; }
.cart-item-name:hover { text-decoration:underline; }
.cart-item-detail { color:#6E6E6E;font-size:.78rem;margin:5px 0; }
.cart-item-price { font-weight:800;font-size:1.05rem;color:var(--deep);white-space:nowrap; }
.qty-row { display:flex;align-items:center;gap:10px;margin-top:10px; }
.qty-control { display:inline-flex;align-items:center;border:1px solid #CECECE;border-radius:6px;overflow:hidden; }
.qty-control button { width:33px;height:31px;border:0;background:#F3F3F3;color:var(--deep);font-size:1.18rem; }
.qty-control button:hover { background:#E3E3E3; }
.qty-control span { min-width:31px;text-align:center;font-size:.85rem;font-weight:750; }
.remove-btn { background:none;border:0;text-decoration:underline;color:#656565;font-size:.79rem;padding:4px; }
.order-box { background:var(--cream);border:1px solid #D9D9D9;border-radius:17px;padding:29px; }
.order-box h2 { font-size:2rem;margin-bottom:22px; }
.order-line { display:flex;justify-content:space-between;gap:15px;margin:14px 0;color:#5C5C5C;font-size:.92rem; }
.order-line strong { color:var(--deep); }
.order-total { border-top:1px solid #D3D3D3;padding-top:19px;margin-top:18px;font-size:1.13rem;font-weight:800; }
.order-box .btn { margin-top:25px; }
.cart-empty { text-align:center;background:var(--cream);border:1px solid var(--border);border-radius:18px;padding:80px 20px; }
.cart-empty h2 { margin:15px 0 8px; }
.cart-empty .btn { margin-top:10px; }
.demo-warning { background:#FAF1D9;border:1px solid #DFC781;border-radius:10px;color:#6B5527;padding:16px 19px;font-size:.85rem;margin-bottom:25px; }
.checkout-layout { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.8fr);gap:53px; }
.checkout-panel { border:1px solid var(--border);border-radius:15px;padding:32px; }
.checkout-panel h2 { font-size:2rem;margin-bottom:21px; }
.fake-payment { background:#F3F3F3;border:1px dashed #B6B6B6;border-radius:12px;padding:21px;margin-top:28px; }
.fake-payment h3 { font-size:1.4rem;margin-bottom:15px; }
.form-two { display:grid;grid-template-columns:1fr 1fr;gap:13px; }
.checkout-items { display:grid;gap:15px;border-bottom:1px solid #D5D5D5;padding-bottom:18px; }
.checkout-item { display:flex;justify-content:space-between;gap:15px;font-size:.86rem; }
/* Footer */
.site-footer { background:#3A3A3A;color:#E6E6E6;padding:72px 0 25px; }
.footer-grid { display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:50px;margin-bottom:63px; }
.site-footer .brand-name { color:#F8F8F8; }
.site-footer .brand-name span { color:#BFBFBF; }
.site-footer .brand-mark { border:1px solid #C2C2C2; }
.footer-about { max-width:310px;color:#CFCFCF;font-size:.87rem;line-height:1.85;margin-top:19px; }
.site-footer h3 { color:#F3F3F3;font-size:1.26rem;margin:6px 0 22px; }
.footer-links { display:grid;gap:11px; }
.footer-links a { color:#D3D3D3;font-size:.86rem; }
.footer-links a:hover { color:#FFF; text-decoration:underline; }
.footer-bottom { border-top:1px solid #606060;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;padding-top:24px;color:#CECECE;font-size:.76rem; }
.toast { position:fixed;bottom:24px;right:24px;z-index:200;max-width:min(calc(100vw - 36px),380px);background:#3E3E3E;color:#fff;border:1px solid #AEAEAE;box-shadow:var(--shadow-hover);padding:15px 18px;border-radius:11px;font-size:.89rem;line-height:1.5;transform:translateY(15px);opacity:0;pointer-events:none;transition:.2s; }
.toast.show { opacity:1;transform:translateY(0); }
/* Print friendly (website pages, separate from purchased digital files) */
@media print {
 .header-note,.site-header,.site-footer,.btn,.filters,.newsletter,.toast,.gallery-thumbs { display:none!important; }
 .container { width:100%; }
 body { color:#111;background:white; }
 .section,.text-page,.catalog-section { padding:20px 0; }
 .page-intro { padding:20px 0; }
 .product-grid { grid-template-columns:repeat(3,1fr); }
 .product-card,.step-card { break-inside:avoid; }
}
@media (max-width:1080px) {
 .nav-links { gap:17px; }
 .brand-name { font-size:1.5rem; }
 .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .detail-grid { gap:35px; }
 .footer-grid { gap:29px; }
 .newsletter { gap:25px;padding:44px; }
}
@media (max-width:760px) {
 .container { width:min(calc(100% - 32px),var(--container)); }
 .nav-wrap { min-height:69px;gap:10px; }
 .brand-mark { width:37px;height:37px;border-radius:11px;font-size:1.5rem; }
 .brand-name { font-size:1.43rem; }
 .menu-toggle { display:inline-flex;align-items:center;justify-content:center;order:3;margin-left:0; }
 .nav-tools { margin-left:auto; }
 .nav-cart { padding:9px 11px; }
 .nav-cart .cart-word { display:none; }
 .nav-links { display:none;position:absolute;left:0;right:0;top:100%;padding:14px 20px 20px;background:#FFFDF9;box-shadow:0 15px 20px rgba(40,40,40,.13);border-bottom:1px solid #E0E0E0;flex-direction:column;align-items:stretch;gap:1px; }
 .nav-links.open { display:flex; }
 .nav-links a { padding:11px 9px;font-size:.95rem; }
 .section { padding:67px 0; }
 .hero { min-height:760px;align-items:flex-start; }
 .hero-bg { object-fit:cover;object-position:94% center;opacity:.91; }
 .hero::before { background:linear-gradient(180deg,rgba(251,246,236,.99) 0%,rgba(251,246,236,.97) 52%,rgba(251,246,236,.22) 77%,rgba(251,246,236,.02) 100%); }
 .hero-copy { padding:65px 0 60px; }
 .hero h1 { font-size:clamp(2.85rem,9vw,4.8rem); }
 .hero-copy>p:not(.eyebrow) { font-size:.97rem; }
 .benefits-inner { grid-template-columns:1fr;gap:0;padding:18px 0; }
 .benefit { justify-content:start;padding:7px 0; }
 .product-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
 .category-grid { grid-template-columns:1fr;gap:17px; }
 .category-tile { min-height:300px; }
 .process-grid { grid-template-columns:1fr;gap:14px; }
 .step-card { padding:27px 25px; }
 .why-grid,.newsletter,.detail-grid,.detail-bottom,.info-grid,.contact-layout,.cart-layout,.checkout-layout { grid-template-columns:1fr; }
 .newsletter { padding:37px 27px; }
 .newsletter h2 { font-size:2.25rem; }
 .footer-grid { grid-template-columns:repeat(2,1fr);gap:29px; }
 .footer-grid>div:first-child { grid-column:1/-1; }
 .page-intro { padding:49px 0 53px; }
 .catalog-section { padding:40px 0 70px; }
 .detail-wrap { padding:35px 0 60px; }
 .gallery-main { min-height:440px; }
 .gallery-main .product-art { min-height:400px; }
 .contact-layout { gap:27px; }
 .cart-layout,.checkout-layout { gap:25px; }
}
@media (max-width:450px) {
 .header-note { font-size:.64rem; }
 .product-info { padding:13px 11px 14px; }
 .product-info h3 { font-size:.88rem; }
 .product-meta { font-size:.74rem; }
 .product-price { font-size:1.05rem; }
 .product-bottom { flex-direction:column;align-items:stretch;gap:9px; }
 .add-cart { width:100%; }
 .product-art { padding:13px; }
 .cover-title { font-size:.98rem; }
 .cover-subtitle { font-size:.55rem; }
 .print-cover { width:85%;height:83%; }
 .section-head-row { align-items:start;flex-direction:column; }
 .email-row { flex-direction:column; }
 .btn-group { align-items:stretch;flex-direction:column; }
 .btn-group>.btn { width:100%; }
 .hero h1 { font-size:2.9rem; }
 .category-tile { padding:23px;min-height:265px; }
 .category-tile h3 { font-size:2.2rem; }
 .gallery-main { padding:14px;min-height:350px; }
 .gallery-main .product-art { min-height:330px; }
 .gallery-main .cover-title { font-size:1.75rem; }
 .detail-actions { grid-template-columns:1fr; }
 .thumb { min-height:73px;font-size:.67rem; }
 .cart-item { grid-template-columns:57px minmax(0,1fr);gap:13px;padding:16px; }
 .cart-mini { width:57px;height:75px; }
 .cart-item-price { grid-column:2; }
 .footer-grid { gap:32px 18px; }
 .form-two { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*::before,*::after { animation-duration:.01ms!important;transition-duration:.01ms!important; }
}

[hidden]{display:none!important;}

/* ====== MarginMints v2 / Step 1 additions ====== */
:root { --gold-strong:#856618; --gold:#C9A227; --sale:#111111; --sale-soft:#F4EBCB; }
.promo-bar{background:#3B3B3B;color:#FFF9EC;text-align:center;padding:11px 18px;font-size:.78rem;letter-spacing:.015em;}
.promo-bar strong{color:#F9E9AB;}
.promo-bar a{font-weight:800;text-decoration:underline;text-underline-offset:4px;}
.hero{min-height:610px;}
.hero-copy{padding:73px 0 80px;}
.section-tight{padding:70px 0;}
.section-soft{background:#F6F6F6;}
.section-cream{background:#FFFFFF;}
.section-head-row{gap:24px;}
.section-head-row .section-desc{max-width:650px;margin-bottom:0;}
.home-highlight{background:#FFFDF7;border:1px solid #E2D5B2;display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border-radius:999px;font-weight:750;font-size:.77rem;color:#515151;margin-bottom:18px;}
.home-highlight .dot{flex:none;}
.section-title h2{max-width:850px;}
.product-info h3{min-height:0;}
.product-meta{min-height:0;line-height:1.48;}
.product-bottom{flex-wrap:wrap;}
.product-price{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;line-height:1.3;}
.list-price{font-size:.89rem;font-weight:500;text-decoration:line-through;color:#707070;}
.sale-price{font-weight:850;color:#404040;font-size:1.28rem;}
.licence-line{font-size:.70rem;line-height:1.35;color:#5C5C5C;margin:12px 0 13px;}
.product-art{background:linear-gradient(140deg,#E6E6E6,#DFDFDF);}
.product-art.games-art{background:linear-gradient(145deg,#F6EFD9,#E2E2E2 70%,#E2E2E2);}
.product-art .print-cover{min-height:170px;}
.product-art .cover-title{font-size:clamp(.92rem,1.48vw,1.2rem);letter-spacing:-.015em;max-width:160px;}
.product-art .cover-subtitle{font-size:.59rem;}
.product-art .art-placeholder{background:rgba(251,246,236,.95);font-size:10px;}
.finder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;}
.finder-panel{background:var(--white);border:1px solid #DEDEDE;border-radius:19px;padding:30px;box-shadow:0 9px 35px rgba(55,55,55,.035);}
.finder-panel .eyebrow{margin-bottom:6px;}
.finder-panel h3{font-size:2rem;margin:0 0 10px;}
.finder-panel .lead-in{font-size:.9rem;min-height:44px;margin-bottom:19px;}
.finder-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:10px;}
.finder-form label{display:block;font-size:.77rem;font-weight:800;color:var(--deep);margin-bottom:6px;}
.finder-form select{display:block;min-height:46px;width:100%;padding:10px 33px 10px 12px;background:#FFFDF9;border:1px solid #BABABA;color:var(--deep);border-radius:8px;}
.finder-form select:focus-visible{outline:3px solid #A7A7A7;outline-offset:2px;}
.finder-result-heading{font-weight:800;color:var(--deep);font-size:.88rem;margin:18px 0 10px;}
.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.mini-pick{display:flex;flex-direction:column;justify-content:space-between;gap:10px;background:#F4F4F4;border:1px solid #E2E2E2;border-radius:10px;padding:14px;min-width:0;}
.mini-pick a:not(.btn){color:var(--deep);font-weight:800;line-height:1.35;font-size:.87rem;}
.mini-pick a:hover{text-decoration:underline;text-underline-offset:3px;}
.mini-pick .product-price{font-size:.82rem;}
.mini-pick .sale-price{font-size:1.04rem;}
.mini-pick .list-price{font-size:.81rem;}
.finder-empty{border:1px dashed #AEAEAE;border-radius:8px;padding:15px;background:#F8F8F8;font-size:.88rem;color:#505050;grid-column:1/-1;}
.compare-teaser{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-top:23px;padding:18px 20px;background:#ECECEC;border-radius:10px;}
.compare-teaser p{margin:0;font-size:.86rem;}
.bundles-note{font-size:.88rem;color:#696969;}
.sale-deadline{display:inline-block;background:var(--sale-soft);color:#5F4814;font-weight:800;border-radius:6px;padding:6px 11px;font-size:.75rem;margin:10px 0 4px;}
.newsletter-free{background:#EBEBEB;}
.newsletter-free h2{max-width:520px;}
.newsletter-free .form-note{max-width:420px;}
.compare-page-head{background:linear-gradient(120deg,#F9F5EA,#EEEEEE);}
.compare-page-head .eyebrow{color:#5A5A5A;}
.compare-intro{max-width:840px;}
.compare-scroll{overflow-x:auto;border:1px solid #DDDDDD;border-radius:16px;background:#fff;box-shadow:0 15px 45px rgba(55,55,55,.05);}
.compare-table{border-collapse:separate;border-spacing:0;min-width:1080px;width:100%;font-size:.87rem;text-align:left;}
.compare-table th,.compare-table td{border-bottom:1px solid #E5E5E5;padding:17px 15px;vertical-align:top;}
.compare-table thead th{background:#EAEAEA;color:#3B3B3B;font-size:.75rem;letter-spacing:.025em;text-transform:uppercase;font-weight:850;}
.compare-table tbody th{color:#111111;font-size:.93rem;font-weight:850;min-width:165px;}
.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:none;}
.compare-table tbody tr:nth-child(even){background:#FAFAFA;}
.compare-table .compare-price{color:var(--deep);font-weight:850;white-space:nowrap;}
.compare-table .compare-was{color:#727272;text-decoration:line-through;white-space:nowrap;}
.compare-table .btn{min-height:39px;font-size:.78rem;padding:9px 12px;white-space:nowrap;}
.compare-note{font-size:.78rem;margin:15px 0 0;color:#636363;}
.compare-cta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between;background:#EBEBEB;border:1px solid #D6D6D6;border-radius:16px;padding:24px 28px;margin-top:32px;}
.compare-cta h2{font-size:1.55rem;margin:0 0 4px;}
.compare-cta p{margin:0;font-size:.88rem;}
@media(max-width:1100px){.finder-grid{gap:14px;}.finder-panel{padding:24px;}.finder-form{grid-template-columns:1fr;}}
@media(max-width:780px){.finder-grid{grid-template-columns:1fr;gap:18px;}.finder-form{grid-template-columns:repeat(2,minmax(0,1fr));}.section-tight{padding:55px 0;}.hero{min-height:730px;}.hero-copy{padding:58px 0 58px;}.compare-table{min-width:1020px;}}
@media(max-width:480px){.mini-grid{grid-template-columns:1fr;}.finder-panel{padding:20px 17px;}.finder-form{grid-template-columns:1fr;}.hero{min-height:775px;}.promo-bar{font-size:.72rem;}.sale-price{font-size:1.12rem;}.compare-cta{padding:23px 18px;}.home-highlight{font-size:.68rem;}}
@media print{.promo-bar,.header-note,.site-header,.btn,.newsletter,.site-footer,.finder-form,.menu-toggle{display:none!important;}.compare-scroll{overflow:visible;}.compare-table{font-size:9pt;min-width:0;}.compare-table th,.compare-table td{padding:6pt;}}

/* Step 2 — catalog, occasion filters, detailed specifications and flagship bundle */
.catalog-featured{padding:66px 0 54px;background:#F9F8F2;border-bottom:1px solid var(--border);}
.catalog-featured .section-head-row{margin-bottom:25px;}
.catalog-featured h2{font-size:clamp(2rem,3vw,2.8rem);}
.catalog-featured .product-grid{gap:18px;}
.catalog-featured .product-art{aspect-ratio:4/3.7;}
.catalog-featured .product-info{padding:16px;}
.catalog-banner{position:relative;overflow:hidden;min-height:390px;background:#E5E5E5;display:flex;align-items:center;isolation:isolate;border-bottom:1px solid #DCDCDC;}
.catalog-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center;}
.catalog-banner::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(251,246,236,.99) 0%,rgba(251,246,236,.9) 32%,rgba(251,246,236,.27) 67%,rgba(251,246,236,.02) 100%);}
.catalog-banner .banner-content{max-width:660px;padding:67px 0;}
.catalog-banner h1{font-size:clamp(2.9rem,5vw,4.85rem);max-width:660px;margin-bottom:15px;}
.catalog-banner p:not(.eyebrow){font-size:1.03rem;color:#4B4B4B;max-width:560px;}
.catalog-banner .btn-group{margin-top:24px;}
.catalog-filter-panel{border:1px solid #DFDFDF;border-radius:15px;padding:22px 25px;background:#F9F9F9;margin-bottom:26px;}
.catalog-filter-panel .filter-heading{font:700 .76rem/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#5D5D5D;margin-bottom:14px;}
.filter-btn:focus-visible,.thumb:focus-visible{outline:3px solid #A37F28;outline-offset:3px;}
.catalog-lead{font-size:.91rem;max-width:670px;}
.catalog-footer-note{border-top:1px solid var(--border);margin-top:38px;padding-top:18px;color:#6A6A6A;font-size:.82rem;}
.detail-subheading{font:600 1.8rem/1.25 var(--serif);margin:23px 0 8px;}
.spec-block{border:1px solid #DADADA;background:#F5F5F5;border-radius:13px;padding:22px 24px;}
.spec-block .detail-subheading{margin:0 0 15px;}
.spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0;}
.spec-grid>div{border-top:1px solid #DADADA;padding:11px 0 0;min-width:0;}
.spec-grid dt{font-size:.76rem;color:#686868;}
.spec-grid dd{font-size:.9rem;color:#383838;font-weight:800;margin:4px 0 0;overflow-wrap:anywhere;}
.value-line{margin:18px 0 8px;padding:12px 15px;background:#FBF5E5;border-left:3px solid #BA9743;border-radius:2px 9px 9px 2px;color:#434343;font-size:.85rem;font-weight:750;}
.gallery-disclaimer{font-size:.78rem;text-align:center;margin:12px auto 0;color:#6A6A6A;max-width:470px;}
.gallery-placeholder{max-width:410px;width:100%;min-height:430px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;background:#FFFEF9;border:1px solid #CDBE92;border-radius:9px;text-align:center;padding:32px;color:var(--deep);}
.gallery-placeholder .icon{width:50px;height:50px;color:#929292;}
.gallery-placeholder h2{font-size:2rem;margin:0;}
.gallery-placeholder p{margin:0;max-width:260px;}
.detail-summary .detail-price .sale-price{font-size:2.25rem;}
.detail-summary .detail-price .list-price{font:400 1.12rem var(--sans);}
.detail-summary .file-box h2{font-size:1.45rem;margin-bottom:14px;}
.detail-summary .sale-deadline{margin:-1px 0 20px;}
.checkout-caption{font-size:.79rem;color:#6D6D6D;margin:-12px 0 25px;}
.bundle-hero{background:linear-gradient(105deg,#F8F4E9,#E6E6E6);padding:80px 0;overflow:hidden;}
.bundle-hero-grid{display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);align-items:center;gap:60px;}
.bundle-hero h1{font-size:clamp(3rem,5.2vw,5rem);margin:0 0 19px;}
.bundle-hero p.lead{font-size:1.05rem;line-height:1.76;color:#575757;}
.bundle-hero .detail-price{font-size:1.5rem;margin:20px 0 15px;}
.bundle-hero .detail-price .sale-price{font-size:2.45rem;}
.bundle-hero .detail-price .list-price{font-size:1.1rem;}
.bundle-art{position:relative;min-height:535px;border-radius:23px;background:linear-gradient(140deg,#E3E3E3,#CACACA);border:1px solid #CCCCCC;padding:55px;display:grid;place-items:center;overflow:hidden;}
.bundle-art .product-art{width:100%;max-width:450px;min-height:425px;aspect-ratio:1/1.18;background:transparent;}
.bundle-art .cover-title{font-size:clamp(1.8rem,3vw,2.4rem);max-width:270px;}
.bundle-art img{display:block;width:100%;height:auto;border-radius:10px;position:relative;z-index:1;}.bundle-art::after{content:'';position:absolute;inset:21px;border:1px solid rgba(196,159,63,.66);border-radius:14px;pointer-events:none;}
.bundle-art-caption{color:#606060;font-size:.76rem;text-align:center;position:absolute;bottom:23px;left:20px;right:20px;}
.bundle-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.bundle-point{background:#FFFDF8;border:1px solid #E0E0E0;padding:29px 22px;border-radius:15px;}
.bundle-point .icon{width:24px;height:24px;color:#737373;margin-bottom:14px;}
.bundle-point h3{font-size:1.35rem;margin-bottom:9px;}
.bundle-point p{font-size:.87rem;margin:0;}
.bundle-audience{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px;align-items:center;}
.bundle-audience .message{background:#EBEBEB;border:1px solid #D3D3D3;border-radius:24px;padding:44px;}
.bundle-audience .message .value-line{margin:18px 0 0;}
.bundle-audience ul{color:#4E4E4E;line-height:1.9;padding-left:21px;}
.bundle-faq{max-width:850px;margin:0 auto;}
.bundle-faq h2{margin-bottom:28px;}
.bundle-faq details{border:1px solid #DDDDDD;border-radius:12px;background:#FFFDF7;margin-bottom:12px;padding:17px 23px;}
.bundle-faq summary{font-weight:800;color:var(--deep);cursor:pointer;}
.bundle-faq p{margin:13px 0 0;}
.bundle-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:38px;border-radius:23px;border:1px solid #CECECE;background:#E8E8E8;}
.bundle-cta h2{font-size:2.3rem;margin-bottom:8px;}
.bundle-cta p{margin-bottom:0;}
.bundle-cta .btn-group{flex-shrink:0;}
@media(max-width:1100px){.catalog-featured .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.bundle-points{grid-template-columns:repeat(2,minmax(0,1fr));}.bundle-hero-grid{gap:28px;}}
@media(max-width:780px){.catalog-banner{min-height:430px;}.catalog-banner::before{background:linear-gradient(90deg,rgba(251,246,236,.97) 0%,rgba(251,246,236,.92) 58%,rgba(251,246,236,.38) 100%);}.catalog-banner .banner-content{padding:55px 0;}.bundle-hero{padding:52px 0;}.bundle-hero-grid,.bundle-audience{grid-template-columns:1fr;}.bundle-art{min-height:380px;padding:30px;}.bundle-art .product-art{max-width:320px;min-height:300px;}.bundle-cta{flex-direction:column;align-items:flex-start;}.detail-grid{gap:35px;}}
@media(max-width:480px){.catalog-featured .product-grid{grid-template-columns:1fr;}.catalog-filter-panel{padding:20px 15px;}.catalog-banner h1{font-size:2.7rem;}.catalog-banner{min-height:385px;}.spec-grid{grid-template-columns:1fr;}.bundle-points{grid-template-columns:1fr;}.bundle-audience .message{padding:25px;}.bundle-cta{padding:23px;}.bundle-art{min-height:330px;padding:24px;}.bundle-hero .detail-price .sale-price{font-size:2rem;}}
@media print{.catalog-filter-panel,.gallery-thumbs,.checkout-caption,.gallery-disclaimer{display:none!important;}.catalog-banner{min-height:150px;}.bundle-art{min-height:150px;}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.product-card{break-inside:avoid;}}

/* Step 2b — crochet category additions; brand palette remains unchanged. */
.product-art.crochet-art{background:linear-gradient(145deg,#F1EBDD 0%,#E4E4E4 58%,#DADADA 100%);}


/* ====== Step 3: policies and non-functional checkout layout ====== */
.uk-waiver{background:var(--cream);border:1px solid var(--gold-light);border-left:4px solid var(--gold);border-radius:0 10px 10px 0;padding:18px 21px;margin:14px 0 18px;}
.uk-waiver p{margin:0;color:var(--deep);font-weight:700;}
.checkout-ack{display:flex;align-items:flex-start;gap:11px;margin:24px 0 10px;padding:17px 18px;background:var(--cream);border:1px solid var(--border);border-radius:10px;color:var(--deep);font-size:.9rem;}
.checkout-ack input{width:18px;height:18px;accent-color:var(--deep);flex:0 0 auto;margin:2px 0 0;}
.checkout-ack label{cursor:pointer;}
.checkout-action{margin-top:20px;}
.checkout-price{display:grid;justify-items:end;gap:2px;text-align:right;}
.checkout-price .list-price{font-size:.76rem;}
.checkout-price .sale-price{font-size:.98rem;}
@media(max-width:760px){.checkout-panel{padding:23px 18px;}.checkout-ack{padding:14px;}}
