:root{--ink:#17191d;--paper:#f4f0e8;--white:#fff;--cream:#ebe4d9;--line:#d7d0c5;--muted:#686b70;--red:#a31531;--red-dark:#781022;--green:#1e6b4c;--gold:#aa7b2e;--shadow:0 18px 54px rgba(22,24,28,.09);--serif:Georgia,"Times New Roman",serif;--sans:Arial,"Helvetica Neue",sans-serif;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.05}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:clamp(3rem,8vw,7.5rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4.5vw,4.5rem);letter-spacing:-.035em}h3{font-size:1.35rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:9999;left:1rem;top:-5rem;background:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 .8rem;font-size:.72rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.announcement{min-height:32px;padding:.45rem 1rem;background:var(--ink);color:#fff;text-align:center;font-size:.73rem;font-weight:700;letter-spacing:.05em}.announcement span{margin:0 .7rem;color:#ae966f}.site-header{position:sticky;z-index:100;top:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:80px;padding:.7rem clamp(1rem,4vw,4rem);background:rgba(244,240,232,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand img{width:160px;max-height:48px;object-fit:contain}.primary-nav{display:flex;justify-content:center;align-items:center;gap:clamp(1rem,2.3vw,2.6rem)}.primary-nav a,.bag-link{text-decoration:none;font-size:.79rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.primary-nav a{display:grid;text-align:center}.primary-nav small{font-size:.52rem;color:var(--red);letter-spacing:.08em}.primary-nav a:hover,.primary-nav a:focus-visible,.bag-link:hover{color:var(--red)}.bag-link{white-space:nowrap}.bag-link span{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:.35rem;border-radius:50%;background:var(--ink);color:#fff;font-size:.7rem}.nav-toggle{display:none;border:0;background:none;width:38px;padding:7px}.nav-toggle>span:not(.sr-only){display:block;height:2px;background:var(--ink);margin:5px 0}.flash{max-width:1200px;margin:1rem auto;padding:1rem 1.2rem;border:1px solid}.flash-success{background:#e7f3ec;border-color:#85b69d;color:#185b3e}.flash-error{background:#fae8e8;border-color:#d9a0a0;color:#82202a}.section{padding:clamp(4rem,8vw,9rem) clamp(1rem,5vw,6rem)}.section.compact{padding-top:2rem}.section-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:4rem;align-items:end;max-width:1400px;margin:0 auto 3rem}.section-heading h2{margin:0}.section-heading>p{max-width:560px;color:var(--muted);font-size:1.05rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.25rem;border:1px solid var(--ink);background:transparent;text-decoration:none;font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;transition:.2s}.button:hover,.button:focus-visible{background:var(--ink);color:#fff}.button-primary{background:var(--red);border-color:var(--red);color:#fff}.button-primary:hover,.button-primary:focus-visible{background:var(--red-dark);border-color:var(--red-dark)}.button-small{min-height:42px;padding:.55rem .85rem}.button.disabled,[aria-disabled=true]{opacity:.45;pointer-events:none}.button-row{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.text-link,.inline-link,.center-link{font-weight:800;text-underline-offset:5px}.center-link{display:block;text-align:center;margin-top:1rem;font-size:.85rem}.notice{padding:1rem 1.2rem;border:1px solid var(--line);background:#fff}.notice-error{background:#fff0f0;border-color:#cf9999;color:#7a1722}.notice ul{margin-bottom:0}.fine-print,.form-assurance,.secure-note{font-size:.78rem;color:var(--muted)}

/* Home */
.home-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:calc(100vh - 112px);overflow:hidden}.home-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,8rem)}.home-hero-copy h1{margin:.2rem 0 1.6rem}.home-hero-copy h1 em{color:var(--red);font-weight:400}.hero-lede{max-width:600px;font-size:clamp(1.05rem,1.8vw,1.35rem);color:#44484d}.home-hero-copy .button-row{margin:1.4rem 0 3rem}.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0;padding-top:1.5rem;border-top:1px solid var(--line)}.hero-points dt{font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.hero-points dd{margin:.25rem 0 0;font-family:var(--serif);font-size:1rem}.home-hero-media{position:relative;min-height:680px;background:#c6bcb0}.hero-main,.hero-accent{margin:0;position:absolute;overflow:hidden}.hero-main{inset:0 0 0 14%;}.hero-main img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-accent{left:0;bottom:5%;width:30%;border:10px solid var(--paper);box-shadow:var(--shadow)}.hero-accent img{aspect-ratio:3/4;object-fit:cover}.vertical-word{position:absolute;right:-.22em;bottom:.1em;color:rgba(255,255,255,.4);font-family:var(--serif);font-size:clamp(5rem,12vw,12rem);line-height:.7;writing-mode:vertical-rl}.manifesto{padding:clamp(4rem,9vw,9rem) clamp(1rem,8vw,10rem);background:var(--ink);color:#fff}.manifesto p{max-width:1300px;margin:0 auto;font-family:var(--serif);font-size:clamp(2rem,5vw,5.8rem);line-height:1.1;letter-spacing:-.035em}.range-editorial{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;max-width:1400px;margin:auto}.range-feature{position:relative;min-height:720px;overflow:hidden;background:#d7d1c7;color:var(--ink);text-decoration:none}.range-feature img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.range-feature>div{position:absolute;inset:auto 0 0;padding:2rem;background:linear-gradient(transparent,rgba(245,241,233,.97) 28%);padding-top:8rem}.range-feature-dark>div{color:#fff;background:linear-gradient(transparent,rgba(15,17,20,.97) 28%)}.range-feature>div>span{float:right;font-family:var(--serif);font-size:4rem;opacity:.35}.range-feature h2,.range-feature h3{font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.8rem);margin:.3rem 0}.range-feature:hover img{transform:scale(1.025)}.future-section{background:#e9e3d9}.future-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:1400px;margin:auto}.future-grid a{position:relative;min-height:520px;overflow:hidden;background:#aaa}.future-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.future-grid span{position:absolute;inset:auto 1.5rem 1.5rem;color:#fff;font-family:var(--serif);font-size:3.2rem;text-shadow:0 2px 14px #000}.future-grid small{display:block;font-family:var(--sans);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em}.service-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--red);color:#fff}.service-strip div{padding:2rem;border-right:1px solid rgba(255,255,255,.25)}.service-strip b,.service-strip span{display:block}.service-strip b{font-family:var(--serif);font-size:1.35rem}.service-strip span{font-size:.77rem;opacity:.85}

/* Catalogue */
.catalog-hero{padding:clamp(5rem,10vw,10rem) clamp(1rem,8vw,9rem);background:#d8d0c3}.catalog-hero h1{margin:.2rem 0 1rem}.catalog-hero>p:not(.eyebrow){max-width:740px;font-size:1.18rem}.catalog-hero.dark{background:var(--ink);color:#fff}.catalog-hero.light{background:#e4ddd2}.catalog-facts{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:2rem}.catalog-facts span{padding:.55rem .8rem;border:1px solid currentColor;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-width:1500px;margin:auto}.product-card{background:#fff}.product-card>a{text-decoration:none}.product-image{overflow:hidden;background:#ded8ce;aspect-ratio:4/5}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.product-card:hover .product-image img{transform:scale(1.03)}.product-card-copy{padding:1.2rem}.product-card-copy h2{font-family:var(--serif);font-size:1.8rem;margin:.2rem 0 .45rem}.product-card-copy>p:not(.eyebrow){min-height:2.8em;color:var(--muted);font-size:.82rem}.product-card-copy>div{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:.9rem}.product-card-copy strong{font-size:1.08rem}.product-card-copy span{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.editorial-note{max-width:950px;margin:auto;padding:clamp(2rem,5vw,5rem);background:#fff}.editorial-note h2{margin:.3rem 0}.coming-soon{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 112px);background:var(--ink);color:#fff}.coming-soon.reverse>div{order:2}.coming-soon>div{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(3rem,8vw,8rem)}.coming-soon h1{margin:.2rem 0}.coming-soon>div>strong{display:inline-block;margin-bottom:1.5rem;padding:.5rem .75rem;border:1px solid #fff;text-transform:uppercase;letter-spacing:.16em;font-size:.73rem}.coming-soon>div>p:not(.eyebrow){max-width:520px;color:#c7c8ca}.coming-soon>img{width:100%;height:100%;object-fit:cover;min-height:650px}

/* Product configuration */
.breadcrumbs{display:flex;gap:.65rem;align-items:center;padding:1rem clamp(1rem,4vw,4rem);font-size:.75rem;color:var(--muted);overflow:auto;white-space:nowrap}.breadcrumbs a{text-underline-offset:4px}.product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(470px,.95fr);max-width:1600px;margin:auto;background:#fff}.product-gallery{position:sticky;top:112px;align-self:start;min-height:760px;background:#ded7cc}.product-gallery>img{width:100%;height:calc(100vh - 112px);min-height:760px;object-fit:cover;object-position:center top}.product-gallery>p{position:absolute;left:1rem;bottom:1rem;margin:0;padding:.4rem .6rem;background:rgba(255,255,255,.85);font-size:.68rem}.product-badge{position:absolute;z-index:2;top:1rem;left:1rem;padding:.45rem .7rem;background:var(--ink);color:#fff;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.product-config{padding:clamp(2rem,5vw,5.5rem)}.product-config>h1{font-size:clamp(3rem,6vw,6.5rem);margin:.2rem 0 1rem}.product-config>p{color:var(--muted)}.set-includes{color:var(--ink)!important}.config-section{border:0;border-top:1px solid var(--line);margin:2rem 0 0;padding:2rem 0 0}.config-section legend{display:flex;align-items:center;gap:.65rem;width:100%;padding:0;font-family:var(--serif);font-size:1.45rem}.config-section legend>span{font-family:var(--sans);font-size:.68rem;color:var(--red);font-weight:800}.config-section legend small{font-family:var(--sans);font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.selection-label{margin:.8rem 0;font-size:.83rem}.swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;max-height:330px;overflow-y:auto;padding-right:.25rem}.swatch-option{position:relative;display:grid;grid-template-columns:22px 1fr;gap:.5rem;align-items:center;min-height:48px;padding:.45rem;border:1px solid var(--line);font-size:.7rem;cursor:pointer}.swatch-option input{position:absolute;opacity:0}.swatch-option:has(input:checked){border:2px solid var(--ink);padding:calc(.45rem - 1px)}.swatch-option:focus-within{outline:3px solid rgba(163,21,49,.25)}.swatch-option.unavailable{opacity:.4;cursor:not-allowed;text-decoration:line-through}.swatch-option small{grid-column:2;font-size:.55rem}.swatch-chip{display:inline-block;width:24px;height:24px;border:1px solid rgba(0,0,0,.18);border-radius:50%;background:var(--swatch)}.option-grid{display:grid;gap:.55rem;margin-top:1rem}.size-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.choice-pill,.choice-card,.check-card{position:relative;cursor:pointer}.choice-pill input,.choice-card input,.check-card input{position:absolute;opacity:0}.choice-pill>span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;border:1px solid var(--line);font-weight:800;font-size:.78rem}.choice-pill small{font-size:.55rem;color:var(--red)}.choice-pill:has(input:checked)>span,.choice-card:has(input:checked)>span,.check-card:has(input:checked)>span{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#f4f0e8}.choice-pill:focus-within>span,.choice-card:focus-within>span,.check-card:focus-within>span{outline:3px solid rgba(163,21,49,.25)}.choice-pill.unavailable{opacity:.35}.two-options{grid-template-columns:repeat(2,1fr)}.three-options{grid-template-columns:repeat(3,1fr)}.choice-card>span,.check-card>span{display:flex;justify-content:space-between;gap:1rem;min-height:72px;padding:1rem;border:1px solid var(--line)}.choice-card b,.choice-card small,.check-card b,.check-card small{display:block}.choice-card small,.check-card small{color:var(--red);font-size:.72rem}.measurement-field{margin-top:1rem;padding:1rem;background:var(--paper)}.measurement-field>label{display:block;font-size:.78rem;font-weight:800}.measurement-field>div{display:flex;align-items:center;max-width:260px}.measurement-field input{width:100%;border:1px solid var(--line);padding:.75rem}.measurement-field>div span{padding:.75rem;background:var(--ink);color:#fff}.measurement-field>small{display:block;margin-top:.5rem;color:var(--muted)}.embroidery-fields{display:grid;gap:.8rem}.embroidery-fields label{font-size:.78rem;font-weight:800}.embroidery-fields label small{float:right;color:var(--red)}.embroidery-fields input,.checkout-section input,.checkout-section select,.checkout-section textarea,.lookup-card input,.lookup-card select,.lookup-card textarea,.case-card input,.case-card select,.case-card textarea,.admin-main input,.admin-main select,.admin-main textarea,.admin-login input{width:100%;min-height:46px;margin-top:.35rem;padding:.7rem .8rem;border:1px solid #beb7ad;background:#fff}.embroidery-fields input:focus,.checkout-section input:focus,.checkout-section select:focus,.checkout-section textarea:focus,.lookup-card input:focus,.admin-main input:focus,.admin-main select:focus,.admin-main textarea:focus{outline:3px solid rgba(163,21,49,.2);border-color:var(--red)}.check-card>span{align-items:center}.quantity-control{display:flex;width:max-content;border:1px solid var(--line)}.quantity-control button{width:48px;border:0;background:var(--paper);font-size:1.2rem}.quantity-control input{width:64px;border:0;text-align:center}.field-error{display:block;margin-top:.35rem;color:#a0162c;font-size:.75rem;font-weight:700}.live-price{margin-top:2rem;padding:1.25rem;background:var(--ink);color:#fff}.live-price>div{display:flex;justify-content:space-between;padding:.35rem 0}.live-price-total{margin-top:.5rem;padding-top:.8rem!important;border-top:1px solid #4a4d51;font-size:1.25rem}.add-to-bag{width:100%;margin-top:1rem;min-height:58px}

/* Cart and checkout */
.page-header{padding:clamp(3rem,6vw,6rem) clamp(1rem,6vw,7rem)}.page-header h1{font-size:clamp(3.4rem,7vw,7rem);margin:.2rem 0}.cart-layout,.checkout-layout,.review-layout,.order-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);gap:2rem;max-width:1450px;margin:0 auto;padding:0 clamp(1rem,4vw,4rem) 6rem}.cart-items{min-width:0}.cart-item{display:grid;grid-template-columns:170px minmax(0,1fr) 180px;gap:1.25rem;padding:1.25rem 0;border-top:1px solid var(--line)}.cart-item-image img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#ddd}.cart-item h2{font-family:var(--serif);font-size:1.8rem;margin:.15rem 0}.item-details{list-style:none;padding:0;margin:.5rem 0;font-size:.8rem;color:var(--muted)}.item-details li{margin:.16rem 0}.price-breakdown{display:flex;gap:1rem;flex-wrap:wrap;margin:.7rem 0}.price-breakdown div{display:flex;gap:.35rem;font-size:.72rem}.price-breakdown dt{color:var(--muted)}.price-breakdown dd{margin:0}.cart-item-actions{text-align:right}.line-price{display:block;font-size:1.15rem;margin-bottom:1rem}.quantity-form label{font-size:.7rem}.quantity-form input{width:64px;margin-left:.3rem;padding:.35rem}.quantity-form button,.cart-item-actions form button,.remove-discount button{border:0;background:none;text-decoration:underline;font-size:.72rem}.cart-item-actions>a{display:block;margin:.7rem 0;font-size:.72rem}.link-danger{color:#a0162c}.continue-shopping{display:inline-block;margin-top:1.5rem;font-weight:800}.order-summary,.checkout-summary{align-self:start;position:sticky;top:112px;padding:1.5rem;background:#fff;box-shadow:var(--shadow)}.order-summary h2,.checkout-summary h2{font-size:2rem}.discount-form label{font-size:.72rem;font-weight:800}.discount-form>div{display:flex}.discount-form input{min-width:0;flex:1;padding:.65rem;border:1px solid var(--line)}.totals{margin-top:1.2rem}.totals>div{display:flex;justify-content:space-between;gap:1rem;padding:.48rem 0;font-size:.85rem}.totals .discount{color:var(--green)}.totals .grand-total{margin-top:.65rem;padding-top:1rem;border-top:2px solid var(--ink);font-size:1.25rem}.shipping-progress{padding:.75rem;background:#f5eee1;font-size:.76rem}.shipping-progress.success{background:#e9f4ed;color:var(--green)}.checkout-button{width:100%;margin-top:.7rem}.empty-state,.order-message,.lookup-card{max-width:800px;margin:5rem auto;padding:clamp(2rem,6vw,5rem);background:#fff;text-align:center}.empty-state h2,.order-message h1,.lookup-card h1{font-size:clamp(2.4rem,5vw,5rem)}.checkout-steps{display:flex;gap:2rem;list-style:none;padding:0;margin:2rem 0 0;counter-reset:step}.checkout-steps li{position:relative;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.checkout-steps li.active,.checkout-steps li.complete{color:var(--ink)}.checkout-steps li.complete:before{content:"✓ ";color:var(--green)}.checkout-steps li.active{border-bottom:2px solid var(--red)}.checkout-notice{max-width:1370px;margin:0 auto 1.5rem}.checkout-fields{display:grid;gap:1rem}.checkout-section{padding:clamp(1.3rem,3vw,2.4rem);background:#fff}.checkout-section>header{display:flex;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.2rem}.checkout-section>header>span{color:var(--red);font-size:.7rem;font-weight:800}.checkout-section h2{font-size:2rem;margin:0}.checkout-section header p{margin:.3rem 0 0;color:var(--muted);font-size:.8rem}.checkout-section>label,.lookup-card label,.case-card>label,.admin-login label{display:block;margin-top:1rem;font-size:.78rem;font-weight:800}.checkout-section label small{color:var(--muted);font-weight:400}.form-grid{display:grid;gap:1rem}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label{font-size:.78rem;font-weight:800}.payment-options{display:grid;gap:.7rem}.payment-card{position:relative}.payment-card input{position:absolute;opacity:0}.payment-card span{display:block;padding:1rem;border:1px solid var(--line)}.payment-card b,.payment-card small{display:block}.payment-card small{color:var(--muted)}.payment-card:has(input:checked) span{border:2px solid var(--ink);padding:calc(1rem - 1px)}.eft-options{padding:1rem;background:var(--paper)}.eft-options label{display:block;margin:.35rem}.eft-options input{width:auto;min-height:0;margin:0 .4rem 0 0}.mini-item{display:grid;grid-template-columns:54px 1fr auto;gap:.7rem;padding:.7rem 0;border-bottom:1px solid var(--line);font-size:.72rem}.mini-item img{width:54px;height:66px;object-fit:cover}.mini-item b,.mini-item span{display:block}.review-sections{display:grid;gap:1rem}.review-card{padding:1.5rem;background:#fff}.review-card h2{font-size:2rem}.review-card-head{display:flex;justify-content:space-between}.review-item{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.review-item img{width:100%;aspect-ratio:4/5;object-fit:cover}.review-item h3{margin:0}.spelling-warning{padding:1rem;border:1px solid #d49b43;background:#fff8e8}.spelling-warning p{margin:0}.consent{display:grid;grid-template-columns:20px 1fr;gap:.7rem;margin:1rem 0;font-size:.78rem}.consent input{width:18px;height:18px}.final-review .button{width:100%}.dispatch-note{padding:1rem;background:var(--paper);font-size:.8rem}

/* Order, invoice, support */
.narrow{padding:1rem}.narrow-wide{max-width:1100px;margin:auto;padding:1rem 1rem 5rem}.order-hero{padding:clamp(3rem,7vw,7rem) clamp(1rem,6vw,7rem);background:var(--ink);color:#fff}.order-hero h1{font-family:var(--sans);font-size:clamp(2.3rem,6vw,5.5rem);letter-spacing:-.03em}.order-statuses{display:flex;gap:.6rem;flex-wrap:wrap}.status{display:inline-block;padding:.35rem .55rem;border:1px solid #bdb8af;background:#f3f0e8;color:#333;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status-payment-confirmed,.status-completed,.status-verified{background:#e0f2e7;color:#175d3c;border-color:#77a98b}.status-payment-submitted,.status-ready-for-dispatch,.status-under-review{background:#fff3d9;color:#79520c;border-color:#caa561}.status-cancelled,.status-rejected,.status-failed{background:#f8e2e2;color:#851f2d;border-color:#cd8c95}.order-hero .status{background:transparent;color:#fff;border-color:#666}.payment-instructions{display:flex;justify-content:space-between;align-items:center;gap:2rem;max-width:1400px;margin:2rem auto;padding:2rem;background:#f0e2c9}.payment-instructions h2{font-size:2.5rem}.payment-instructions dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.payment-instructions dt{font-size:.65rem;text-transform:uppercase;color:var(--muted)}.payment-instructions dd{margin:0;font-weight:800}.payment-instructions.compact{background:#efe8de}.order-card{padding:1.5rem;background:#fff;margin-bottom:1rem}.order-card h2{font-size:2.1rem}.order-item{display:grid;grid-template-columns:130px 1fr;gap:1.2rem;padding:1rem 0;border-top:1px solid var(--line)}.order-item img{width:100%;aspect-ratio:4/5;object-fit:cover}.order-total{align-self:start;position:sticky;top:112px}.order-total .button{width:100%;margin-top:1rem}.payment-handoff{min-height:70vh;display:grid;place-items:center;padding:2rem}.payment-handoff .panel{max-width:600px;padding:3rem;background:#fff;text-align:center}.payment-handoff img{width:190px;margin:0 auto 2rem}.payment-handoff .button{width:100%}.lookup-card{text-align:left}.lookup-card .button{width:100%;margin-top:1rem}.case-card{padding:clamp(1.5rem,4vw,3rem);background:#fff}.case-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.case-card dt{font-size:.65rem;text-transform:uppercase;color:var(--muted)}.case-card dd{margin:.3rem 0}.case-timeline,.admin-history{list-style:none;padding:0;border-left:1px solid var(--line)}.case-timeline li,.admin-history li{position:relative;padding:0 0 1.5rem 1.5rem}.case-timeline li:before,.admin-history li:before{content:"";position:absolute;left:-5px;top:.35rem;width:9px;height:9px;border-radius:50%;background:var(--red)}.case-timeline time,.admin-history time{display:block;color:var(--muted);font-size:.7rem}.invoice-wrap{max-width:1200px;margin:auto;padding:2rem}.invoice-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.invoice{padding:clamp(2rem,6vw,5rem);background:#fff;box-shadow:var(--shadow)}.invoice>header{display:flex;justify-content:space-between;gap:2rem;padding-bottom:2rem;border-bottom:3px solid var(--ink)}.invoice>header img{width:190px;object-fit:contain}.invoice>header>div{text-align:right}.invoice>header h1{font-family:var(--sans);font-size:1.7rem;margin:.2rem 0}.invoice>header span{font-size:.7rem;color:var(--muted)}.invoice-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:2rem 0}.invoice-meta h2,.invoice-bottom h2{font-family:var(--sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.invoice-meta p,.invoice-bottom p{font-size:.8rem}.invoice-table{width:100%;border-collapse:collapse}.invoice-table th,.invoice-table td{padding:1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.8rem}.invoice-table th{background:var(--ink);color:#fff}.invoice-table th:nth-child(n+2),.invoice-table td:nth-child(n+2){text-align:right}.invoice-bottom{display:grid;grid-template-columns:1fr 360px;gap:2rem;padding-top:2rem}.invoice-totals>div{display:flex;justify-content:space-between;padding:.4rem}.invoice-totals .grand{border-top:2px solid var(--ink);margin-top:.5rem;padding-top:1rem;font-size:1.2rem}.invoice>footer{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.7rem;color:var(--muted)}

/* Policies/contact */
.policy-hero{padding:clamp(4rem,9vw,9rem) clamp(1rem,8vw,9rem);background:var(--ink);color:#fff}.policy-hero h1{max-width:1100px;margin:.2rem 0}.policy-hero>p:not(.eyebrow){max-width:760px;color:#d0d1d3;font-size:1.1rem}.policy-content{max-width:1050px;margin:auto;padding:clamp(3rem,6vw,7rem) 1rem}.policy-content section{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,.65fr);gap:3rem;padding:2rem 0;border-top:1px solid var(--line)}.policy-content section h2{font-family:var(--serif);font-size:1.9rem}.policy-content section>p,.policy-content section>div{grid-column:2}.policy-content section h2+ p{margin-top:0}.legal-source{margin-top:2rem;padding:1.5rem;background:#e8e1d5;font-size:.8rem}.three-column-info{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1rem!important}.three-column-info>div{padding:1rem;background:#fff}.size-list{display:flex!important;flex-wrap:wrap;gap:.5rem!important}.size-list span{display:grid;place-items:center;width:58px;height:50px;border:1px solid var(--ink);font-weight:800}.contact-page>header{padding:clamp(4rem,9vw,9rem) clamp(1rem,8vw,9rem);background:#d9d0c4}.contact-page>header h1{margin:.2rem 0}.contact-page>header>p:not(.eyebrow){max-width:700px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1400px;margin:auto;padding:clamp(2rem,5vw,5rem);gap:1px;background:var(--line)}.contact-grid a{display:flex;flex-direction:column;min-height:210px;padding:2rem;background:#fff;text-decoration:none}.contact-grid a:hover{background:var(--ink);color:#fff}.contact-grid span{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--red)}.contact-grid b{margin:auto 0;font-family:var(--serif);font-size:1.5rem}.contact-grid small{color:var(--muted)}.contact-note{max-width:900px;margin:0 auto 5rem;padding:2rem;background:#fff}

/* Footer */
.site-footer{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:3rem;padding:clamp(3rem,6vw,6rem);background:var(--ink);color:#fff}.site-footer img{width:170px;filter:brightness(0) invert(1)}.site-footer h2{font-family:var(--sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}.site-footer a,.site-footer>div>span{display:block;margin:.45rem 0;color:#c4c5c8;text-decoration:none;font-size:.8rem}.site-footer a:hover{color:#fff}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:2rem;border-top:1px solid #414348}

/* Admin */
.admin-login-body{display:grid;min-height:100vh;place-items:center;padding:1rem;background:var(--ink)}.admin-login{width:min(460px,100%);padding:clamp(2rem,5vw,4rem);background:#fff}.admin-login>img{width:190px;margin-bottom:2rem}.admin-login h1{font-size:3rem}.password-field{display:flex}.password-field input{min-width:0}.password-field button{margin-top:.35rem;border:1px solid #beb7ad;background:var(--paper)}.admin-login .button{width:100%;margin-top:1.2rem}.admin-login>p{color:var(--muted);font-size:.8rem}.admin-body{background:#ece8e1}.admin-top{position:sticky;z-index:120;top:0;display:flex;justify-content:space-between;align-items:center;height:68px;padding:0 1.25rem;background:var(--ink);color:#fff}.admin-top>a{display:flex;align-items:center;gap:1rem;text-decoration:none}.admin-top img{width:120px;filter:brightness(0) invert(1)}.admin-top>a span{padding-left:1rem;border-left:1px solid #555;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.admin-top>div{display:flex;align-items:center;gap:1rem;font-size:.75rem}.admin-top form{margin:0}.admin-top button{border:0;background:none;color:#fff;text-decoration:underline}.admin-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 68px)}.admin-sidebar{position:sticky;top:68px;height:calc(100vh - 68px);overflow-y:auto;padding:1.2rem;background:#24262b}.admin-sidebar a{display:block;padding:.75rem;color:#bbb;text-decoration:none;font-size:.78rem;font-weight:700}.admin-sidebar a:hover,.admin-sidebar a.active{background:#34373d;color:#fff}.admin-main{min-width:0;padding:clamp(1rem,3vw,3rem)}.admin-page-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}.admin-page-head h1{font-family:var(--sans);font-size:clamp(2rem,4vw,4rem);margin:.1rem 0}.admin-page-head p{margin-bottom:0}.admin-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem;margin-bottom:1rem}.admin-stats>div{padding:1rem;background:#fff}.admin-stats span,.admin-stats b{display:block}.admin-stats span{min-height:2.4em;color:var(--muted);font-size:.67rem;text-transform:uppercase;font-weight:800}.admin-stats b{font-size:2rem}.admin-panel{padding:1.25rem;background:#fff;margin-bottom:1rem;border:1px solid #ded9d0}.admin-panel h2{font-family:var(--sans);font-size:1.25rem}.panel-head{display:flex;justify-content:space-between;align-items:center}.table-scroll,.table-panel{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.8rem;border-bottom:1px solid #e3ded6;text-align:left;vertical-align:top;font-size:.75rem}.admin-table th{background:#f3f0ea;font-size:.63rem;text-transform:uppercase;letter-spacing:.06em}.admin-table tbody tr:hover{background:#faf8f4}.admin-table .status{white-space:nowrap}.admin-filter{display:flex;gap:.7rem;align-items:end;flex-wrap:wrap;padding:1rem;background:#fff;margin-bottom:1rem}.admin-filter label{font-size:.68rem;font-weight:800}.admin-filter input,.admin-filter select{width:auto;min-width:140px;margin-top:.25rem}.admin-order-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,.6fr);gap:1rem}.admin-order-item{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.admin-order-item img{width:100%;aspect-ratio:4/5;object-fit:cover}.proof-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.admin-action-form{display:grid;gap:.75rem;padding-top:1rem;border-top:1px solid var(--line);margin-top:1rem}.admin-action-form label{font-size:.7rem;font-weight:800}.admin-history{font-size:.75rem}.admin-history p{margin:.3rem 0}.admin-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.admin-mini-card{padding:1rem;background:#f4f0ea}.admin-mini-card label{font-size:.7rem}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--line)}.toggle-row span>*{display:block}.toggle-row small{color:var(--muted)}.colour-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.colour-admin-row{display:grid;grid-template-columns:30px 1fr;align-items:center;padding:.75rem;border:1px solid var(--line);font-size:.72rem}.colour-admin-row label{grid-column:2}.compact-input{min-width:75px!important;width:90px!important}.inline-check{display:flex!important;align-items:center;gap:.5rem}.inline-check input{width:auto!important;min-height:0!important;margin:0!important}.sticky-save{position:sticky;bottom:1rem;float:right;margin-top:1rem}.config-health{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1rem}.config-health>div{padding:1rem;background:#fff;border-left:4px solid}.config-health b,.config-health span{display:block}.config-health span{font-size:.72rem;color:var(--muted)}.config-health .ok{border-color:var(--green)}.config-health .warn{border-color:#c88d24}.admin-settings-form>section{max-width:1000px}.export-buttons{display:flex;gap:.5rem}.pagination{display:flex;justify-content:center;gap:.35rem;padding:1rem}.pagination a{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);text-decoration:none}.pagination a.active{background:var(--ink);color:#fff}details pre{max-width:500px;white-space:pre-wrap;font-size:.65rem}

@media(max-width:1100px){.primary-nav{gap:1rem}.primary-nav a{font-size:.68rem}.product-grid{grid-template-columns:repeat(2,1fr)}.product-layout{grid-template-columns:1fr 1fr}.swatches{grid-template-columns:repeat(3,1fr)}.size-grid{grid-template-columns:repeat(5,1fr)}.admin-stats{grid-template-columns:repeat(3,1fr)}.admin-form-grid{grid-template-columns:repeat(2,1fr)}.colour-admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.announcement{font-size:.62rem}.site-header{grid-template-columns:44px 1fr auto;min-height:67px}.brand{justify-self:center}.brand img{width:130px}.nav-toggle{display:block;grid-column:1;grid-row:1}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;align-items:stretch;padding:1rem;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.primary-nav.open{display:grid}.primary-nav a{padding:.7rem;text-align:left;border-bottom:1px solid var(--line)}.bag-link{grid-column:3;grid-row:1}.home-hero{grid-template-columns:1fr;min-height:auto}.home-hero-copy{padding:4rem 1.2rem}.home-hero-media{min-height:650px}.hero-main{left:0}.hero-accent{width:38%}.section-heading{grid-template-columns:1fr;gap:1rem}.range-editorial,.future-grid,.coming-soon{grid-template-columns:1fr}.range-feature{min-height:600px}.coming-soon.reverse>div{order:0}.coming-soon>img{min-height:500px}.service-strip{grid-template-columns:repeat(2,1fr)}.product-layout{display:block}.product-gallery{position:relative;top:auto;min-height:auto}.product-gallery>img{height:auto;min-height:auto;aspect-ratio:4/5}.product-config{padding:2rem 1rem}.cart-layout,.checkout-layout,.review-layout,.order-layout{grid-template-columns:1fr}.order-summary,.checkout-summary,.order-total{position:static}.payment-instructions{margin:1rem;display:block}.payment-instructions .button{margin-top:1rem}.site-footer{grid-template-columns:repeat(2,1fr)}.footer-brand,.footer-bottom{grid-column:1/-1}.policy-content section{grid-template-columns:1fr;gap:.5rem}.policy-content section>p,.policy-content section>div{grid-column:1}.contact-grid{grid-template-columns:repeat(2,1fr)}.invoice-meta,.invoice-bottom{grid-template-columns:1fr}.invoice-table-wrap{overflow:auto}.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto;display:flex;overflow-x:auto;padding:.5rem}.admin-sidebar a{white-space:nowrap}.admin-order-grid{grid-template-columns:1fr}.admin-top>div>span{display:none}}
@media(max-width:560px){h1{font-size:3.4rem}.hero-points{grid-template-columns:1fr}.home-hero-media{min-height:520px}.range-feature{min-height:520px}.future-grid{grid-template-columns:1fr}.service-strip{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.swatches{grid-template-columns:repeat(2,1fr);max-height:400px}.size-grid{grid-template-columns:repeat(4,1fr)}.three-options{grid-template-columns:1fr}.cart-item{grid-template-columns:90px 1fr}.cart-item-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;text-align:left}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.checkout-steps{gap:.8rem}.review-item{grid-template-columns:80px 1fr}.payment-instructions dl{grid-template-columns:1fr 1fr}.order-item{grid-template-columns:90px 1fr}.case-card dl{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}.footer-brand,.footer-bottom{grid-column:1}.footer-bottom{display:block}.contact-grid{grid-template-columns:1fr}.three-column-info{grid-template-columns:1fr!important}.invoice{padding:1.2rem}.invoice>header{display:block}.invoice>header>div{text-align:left;margin-top:1rem}.invoice-table{min-width:700px}.admin-main{padding:.75rem}.admin-stats,.config-health{grid-template-columns:repeat(2,1fr)}.admin-form-grid,.colour-admin-grid{grid-template-columns:1fr}.proof-row{grid-template-columns:1fr}.admin-top>a span{display:none}.admin-page-head{display:block}.export-buttons{flex-direction:column}}
@media print{.announcement,.site-header,.site-footer,.invoice-actions{display:none!important}.invoice-body{background:#fff}.invoice-wrap{padding:0}.invoice{box-shadow:none;padding:0}.invoice-table{font-size:9pt}@page{size:A4;margin:14mm}}

/* Store credit */
.store-credit-checkout{margin:1.25rem 0;padding:1.1rem;border:1px solid var(--line);background:var(--paper)}.store-credit-checkout h3{margin:0 0 .35rem}.store-credit-checkout h3 small{font-family:var(--sans);font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.store-credit-checkout>p{font-size:.8rem;color:var(--muted)}.credit-login{max-width:620px;margin:auto}.credit-balance-card{display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:center;padding:2rem;background:var(--ink);color:#fff}.credit-balance-card h2{font-family:var(--sans);font-size:clamp(2.5rem,6vw,5rem);margin:0}.credit-balance-card dl{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.credit-balance-card dt{font-size:.65rem;text-transform:uppercase;color:#bbb}.credit-balance-card dd{margin:.25rem 0;font-weight:800}.credit-balance-card .button{border-color:#fff;color:#fff}.credit-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1rem;margin-top:1rem}.credit-ledger article{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.credit-ledger article span,.credit-ledger article small,.credit-ledger article time{display:block;color:var(--muted);font-size:.72rem}.credit-positive{color:var(--green)}.credit-negative{color:var(--red)}.conversion-queue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.money-sensitive-form{border-left:4px solid var(--red);padding-left:1rem}
@media(max-width:820px){.credit-balance-card,.credit-grid{grid-template-columns:1fr}.conversion-queue{grid-template-columns:1fr}.credit-balance-card dl{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.credit-balance-card dl{grid-template-columns:1fr}.credit-ledger article{display:block}.credit-ledger article>strong{display:block;margin-top:.5rem}}
