:root{--ink:#181714;--paper:#f4f0e7;--accent:#ff6b3d;--line:rgba(24,23,20,.18);--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}
a{color:inherit}
.skip{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.75rem 1rem;z-index:30}
.skip:focus{top:1rem}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,4rem);border-bottom:1px solid var(--line);position:relative;z-index:10}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:var(--serif);font-size:1.55rem;font-weight:700}
.brand img{width:36px;height:36px;object-fit:contain}
.nav{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}
.nav a{padding:.55rem .8rem;text-decoration:none;border-radius:999px;font-size:.82rem}
.nav a:hover,.nav a:focus-visible,.nav a[aria-current=page]{background:var(--ink);color:var(--paper)}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700}
.hero{padding:clamp(3rem,8vw,8rem) clamp(1rem,6vw,6rem);display:grid;gap:1.2rem}
.hero h1{font:700 clamp(3rem,8vw,7.5rem)/.84 var(--serif);max-width:1000px;margin:0}
.hero p{font-size:clamp(1rem,2vw,1.3rem);max-width:580px;line-height:1.55}
.shop{padding:1rem clamp(1rem,4vw,4rem) 5rem}
.shop-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem}
.shop-head h2{font:700 clamp(2.2rem,5vw,4.5rem)/1 var(--serif);margin:.25rem 0}
.shop-head p{max-width:34rem;color:#5c584f}
.products{display:grid;gap:1.2rem}
.product{position:relative;min-width:0}
.product-media{position:relative;overflow:hidden;background:#ded7ca;border-radius:18px;aspect-ratio:4/5}
.product-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s ease}
.opt-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#5c584f;margin:.8rem 0 .3rem}
.swatch-dot{display:block;width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.2);margin:auto}
.color-pill{width:34px;height:34px;min-width:34px;border-radius:50%}
.product:hover .product-media img{transform:scale(1.025)}
.placeholder{height:100%;display:grid;place-items:center;padding:2rem;text-align:center;color:#716b61}
.badge{position:absolute;top:.8rem;left:.8rem;background:var(--paper);padding:.38rem .65rem;border-radius:999px;font-size:.7rem;font-weight:700}
.sold .product-media img{filter:grayscale(1);opacity:.6}
.product-copy{padding:.9rem .15rem}
.product-top{display:flex;justify-content:space-between;gap:1rem;align-items:start}
.product h3{font:700 1.55rem/1.1 var(--serif);margin:0}
.price{white-space:nowrap;font-weight:700}
.meta,.description{color:#625e56;font-size:.85rem;line-height:1.5}
.description{margin:.6rem 0}
.sizes{display:flex;gap:.35rem;flex-wrap:wrap;margin:.7rem 0}
.sizes span{border:1px solid var(--line);border-radius:999px;padding:.3rem .5rem;font-size:.7rem}
.cta{display:inline-flex;justify-content:center;background:var(--ink);color:#fff;text-decoration:none;padding:.7rem 1rem;border-radius:999px;font-size:.8rem;font-weight:700}
.cta[aria-disabled=true]{opacity:.45;pointer-events:none}
.empty{padding:5rem 1rem;text-align:center;border:1px dashed var(--line);border-radius:18px}
.empty h3{font:700 2rem var(--serif);margin:0 0 .5rem}
.footer{padding:2rem clamp(1rem,4vw,4rem);border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.8rem}
/* Editorial */body[data-look=editorial]{--paper:#fbf6ed;--accent:#a12f27}
.editorial .hero{min-height:70vh;align-content:center;background:radial-gradient(circle at 82% 20%,#d49475 0 9%,transparent 9.3%)}
.editorial .hero h1 em{color:var(--accent);font-weight:600}
.editorial .products{grid-template-columns:repeat(12,1fr)}
.editorial .product{grid-column:span 5}
.editorial .product:nth-child(3n+2){grid-column:7/span 6;margin-top:7rem}
.editorial .product:nth-child(3n){grid-column:2/span 5}
.editorial .product-media{border-radius:48% 48% 18px 18px}
/* Grid */body[data-look=grid]{--paper:#f7f7f2;--accent:#315c44}
.grid .hero{padding-bottom:3rem;border-bottom:1px solid var(--line)}
.grid .hero h1{font-family:var(--sans);font-weight:600;letter-spacing:-.07em}
.grid .products{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid .product{border:1px solid var(--line);padding:.7rem;border-radius:24px}
.grid .product-media{border-radius:16px}
.grid .cta{background:var(--accent)}
/* Bento */body[data-look=bento]{--paper:#ece9ff;--ink:#19172b;--accent:#6750d8}
.bento .hero{background:#ffd8c9;margin:1rem;border-radius:34px;min-height:55vh;align-content:end}
.bento .hero h1{max-width:820px}
.bento .products{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense}
.bento .product{grid-column:span 2;background:#fff;padding:.75rem;border-radius:26px}
.bento .product:nth-child(4n+1){grid-column:span 4;display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}
.bento .product:nth-child(4n+1) .product-media{aspect-ratio:16/10}
.bento .cta{background:var(--accent)}
/* chooser */.chooser{padding:clamp(3rem,7vw,7rem) clamp(1rem,4vw,4rem)}
.chooser h1{font:700 clamp(3rem,7vw,6rem)/.9 var(--serif);margin:.5rem 0 1.5rem}
.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}
.option{min-height:450px;padding:1.25rem;border-radius:26px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s ease}
.option:hover{transform:translateY(-5px)}
.option h2{font:700 2.5rem var(--serif);margin:0}
.option p{max-width:21rem;line-height:1.5}
.option:nth-child(1){background:#efe7da}
.option:nth-child(2){background:#dce9dd}
.option:nth-child(3){background:#ffd8c9}
.mini{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:.5rem}
.mini i{display:block;background:rgba(24,23,20,.16);border-radius:50% 50% 8px 8px;height:150px}
.mini i:nth-child(2){height:210px}
.choose{font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(max-width:800px){.topbar{align-items:flex-start}
.brand span{display:none}
.nav{gap:0}
.nav a{padding:.45rem .55rem}
.shop-head{display:block}
.editorial .products,.grid .products,.bento .products{grid-template-columns:repeat(2,minmax(0,1fr))}
.editorial .product,.editorial .product:nth-child(n),.bento .product,.bento .product:nth-child(4n+1){grid-column:span 1;margin-top:0;display:block}
.option-grid{grid-template-columns:1fr}
.option{min-height:330px}
}
@media(max-width:520px){.editorial .products,.grid .products,.bento .products{grid-template-columns:1fr}
.hero h1{font-size:3.4rem}
.topbar{gap:.5rem}
.nav a{font-size:.72rem;padding:.4rem .45rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{transition:none!important;animation:none!important}
}
.editorial .topbar{display:grid;grid-template-columns:1fr auto 1fr;min-height:88px;padding-top:.65rem;padding-bottom:.65rem}
.editorial .brand-monogram{justify-self:start;width:54px;height:66px;display:grid;place-items:center}
.editorial .brand-monogram img{width:100%;height:100%;object-fit:contain}
.editorial .header-wordmark{justify-self:center;width:clamp(190px,25vw,340px);display:block;color:inherit;text-decoration:none}
.editorial .header-wordmark .wordmark-text{display:block;white-space:nowrap;color:#211817;font:700 1em/1 "Cormorant Garamond",Georgia,serif;letter-spacing:-.045em;text-shadow:0 4px 7px rgba(55,24,22,.14)}
.editorial .header-wordmark .wordmark-accent{color:#741a23}
.editorial .topbar .nav{justify-self:end}
@media(max-width:700px){.editorial .topbar{grid-template-columns:auto 1fr;min-height:76px}
.editorial .brand-monogram{width:43px;height:54px}
.editorial .header-wordmark{width:clamp(150px,44vw,230px)}
.editorial .topbar .nav{grid-column:1/-1;justify-self:center;padding-top:.35rem}
}
.editorial .topbar{border-bottom:0;align-items:start}
.editorial .contact-nav{align-self:start;padding-top:.15rem;gap:.6rem}
.editorial .contact-icon{width:44px;height:44px;padding:0;border:1px solid rgba(116,26,35,.32);border-radius:50%;display:grid;place-items:center;color:#741a23;background:rgba(255,255,255,.2);transition:background .2s ease,color .2s ease,transform .2s ease}
.editorial .contact-icon svg{width:20px;height:20px;fill:currentColor}
.editorial .contact-icon:hover,.editorial .contact-icon:focus-visible{background:#741a23;color:#efe7da;transform:translateY(-2px)}
.editorial .hero{position:relative;isolation:isolate;overflow:hidden;min-height:64vh;align-content:start;padding-top:clamp(2rem,5vw,4rem);background:none}
.editorial .hero>*{position:relative;z-index:2}
.editorial .hero::before{content:"";position:absolute;z-index:0;right:5%;top:-8%;width:clamp(230px,34vw,520px);height:82%;background:radial-gradient(ellipse at 55% 18%,rgba(161,47,39,.42) 0 18%,rgba(177,91,72,.25) 35%,transparent 67%),linear-gradient(172deg,rgba(161,47,39,.34),rgba(203,132,103,.18) 55%,transparent 82%);border-radius:42% 58% 68% 32%/28% 38% 62% 72%;filter:blur(1px);transform:rotate(7deg);opacity:.88}
.editorial .hero::after{content:"";position:absolute;z-index:1;right:11%;top:34%;width:clamp(150px,20vw,300px);height:45%;background:linear-gradient(180deg,rgba(161,47,39,.2),rgba(184,101,79,.11) 62%,transparent),radial-gradient(ellipse at 72% 20%,rgba(161,47,39,.2),transparent 60%);border-radius:37% 63% 70% 30%/12% 23% 77% 88%;filter:blur(5px);transform:rotate(-5deg);opacity:.75}
@media(max-width:700px){.editorial .topbar{align-items:start}
.editorial .contact-nav{grid-column:auto;justify-self:end;padding-top:0}
.editorial .contact-icon{width:40px;height:40px}
.editorial .header-wordmark{align-self:center}
.editorial .hero{padding-top:2.2rem;min-height:58vh}
.editorial .hero::before{right:-22%;width:78vw;height:70%;opacity:.65}
.editorial .hero::after{right:-5%;top:35%}
}
.editorial .hero::before{top:3%}
body.editorial{background-color:#fbf6ed;background-image:radial-gradient(ellipse at 92% 8%,rgba(161,47,39,.08),transparent 24%),radial-gradient(ellipse at 4% 34%,rgba(203,132,103,.07),transparent 27%),radial-gradient(ellipse at 94% 58%,rgba(161,47,39,.06),transparent 25%),radial-gradient(ellipse at 12% 88%,rgba(203,132,103,.07),transparent 28%);background-repeat:no-repeat}
.editorial .contact-icon svg{overflow:visible}
.editorial .contact-icon .wa-bubble{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.editorial .product-media{aspect-ratio:1/1;border-radius:20px}
.editorial .product-media img,.editorial .placeholder{border-radius:inherit}
.editorial .hero::before{opacity:.66}
.editorial .hero::after{opacity:.52}
@media(max-width:700px){.editorial .topbar{grid-template-columns:46px minmax(0,1fr) auto;column-gap:.55rem;padding:.55rem .9rem;align-items:start}
.editorial .brand-monogram{grid-column:1;grid-row:1;width:40px;height:50px}
.editorial .header-wordmark{grid-column:2;grid-row:1;align-self:start;justify-self:center;width:clamp(125px,39vw,210px)}
.editorial .topbar .contact-nav{grid-column:3;grid-row:1;justify-self:end;align-self:start;display:flex;flex-wrap:nowrap;gap:.3rem;padding-top:.05rem}
.editorial .contact-icon{width:38px;height:38px}
.editorial .contact-icon svg{width:18px;height:18px}
.editorial .hero::before{opacity:.48}
.editorial .hero::after{opacity:.36}
.editorial .product-media{border-radius:16px}
}
@media(max-width:420px){.editorial .topbar{grid-template-columns:38px minmax(0,1fr) auto;padding-left:.7rem;padding-right:.7rem;column-gap:.35rem}
.editorial .brand-monogram{width:34px;height:44px}
.editorial .header-wordmark{width:clamp(112px,36vw,155px)}
.editorial .contact-icon{width:35px;height:35px}
}
.editorial .menu-shell{position:relative}
.editorial .menu-toggle svg path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.editorial .site-menu{position:absolute;z-index:40;right:0;top:calc(100% + .75rem);width:min(280px,calc(100vw - 2rem));padding:.8rem;background:rgba(239,231,218,.97);border:1px solid rgba(116,26,35,.2);border-radius:18px;box-shadow:0 18px 48px rgba(56,25,22,.16);backdrop-filter:blur(14px)}
.editorial .site-menu[hidden]{display:none}
.editorial .site-menu a{display:block;padding:.78rem .8rem;border-radius:11px;color:#181714;text-decoration:none;font-size:.88rem}
.editorial .site-menu a:hover,.editorial .site-menu a:focus-visible{background:rgba(116,26,35,.1);color:#741a23}
.editorial main{position:relative;isolation:isolate;overflow:hidden}
.editorial main>section{position:relative;z-index:2}
.editorial main::after{content:"";position:absolute;z-index:0;pointer-events:none;top:34rem;right:-9%;bottom:2rem;width:46%;min-height:70%;background:linear-gradient(180deg,rgba(161,47,39,.11),rgba(203,132,103,.07) 28%,rgba(161,47,39,.09) 62%,rgba(203,132,103,.04));border-radius:52% 20% 46% 28%/12% 38% 24% 52%;filter:blur(24px);transform:rotate(-3deg);opacity:.62}
.editorial main::before{content:"";position:absolute;z-index:0;pointer-events:none;left:-13%;bottom:7%;width:38%;height:34%;background:radial-gradient(ellipse,rgba(203,132,103,.1),transparent 70%);filter:blur(22px)}
@media(max-width:700px){.editorial .site-menu{position:fixed;right:.75rem;top:4.4rem}
.editorial main::after{top:28rem;right:-23%;width:72%;opacity:.52}
.editorial main::before{left:-30%;width:65%}
}
/* Clean light canvas; burgundy watercolor remains a restrained hero accent. */
body.editorial:not(.dark){--paper:#FBF6ED;background-color:#FBF6ED;background-image:radial-gradient(ellipse at 96% 8%,rgba(144,34,45,.055),transparent 22%),radial-gradient(ellipse at 8% 82%,rgba(203,132,103,.045),transparent 28%)}
body.editorial:not(.dark) .topbar{background:rgba(255,253,248,.96)}
body.editorial:not(.dark) .site-menu{background:rgba(255,253,248,.98)}
body.editorial:not(.dark) .hero::before{right:3%;top:4%;width:clamp(210px,30vw,430px);height:68%;background:radial-gradient(ellipse at 58% 24%,rgba(144,34,45,.2) 0 17%,rgba(184,101,91,.11) 38%,transparent 69%);opacity:.8;filter:blur(5px)}
body.editorial:not(.dark) .hero::after{right:10%;top:39%;width:clamp(130px,17vw,240px);height:34%;background:linear-gradient(180deg,rgba(144,34,45,.1),rgba(190,115,102,.04) 70%,transparent);opacity:.7;filter:blur(10px)}
body.editorial:not(.dark) main::after{background:linear-gradient(180deg,rgba(144,34,45,.045),rgba(190,115,102,.025) 45%,transparent);opacity:.45}
body.editorial:not(.dark) main::before{background:radial-gradient(ellipse,rgba(144,34,45,.04),transparent 70%)}
body.editorial:not(.dark) .product-media{background:#f7f1eb}
body.editorial:not(.dark) .badge{background:#FBF6ED}
.editorial .brand-monogram img{width:100%;height:auto;aspect-ratio:685/676;object-fit:contain}
/* Give the official mark equal visual authority beside the centered wordmark. */
.editorial .brand-monogram{width:70px;height:70px;align-self:center;margin-left:.2rem}
.editorial .contact-nav{align-self:center}
@media(max-width:700px){.editorial .topbar{grid-template-columns:58px minmax(0,1fr) auto;align-items:center}.editorial .brand-monogram{width:52px;height:52px;margin-left:0}.editorial .contact-nav{align-self:center}}
@media(max-width:420px){.editorial .topbar{grid-template-columns:48px minmax(0,1fr) auto}.editorial .brand-monogram{width:44px;height:44px}}
body.editorial:not(.dark) .shop-head p,body.editorial:not(.dark) .meta,body.editorial:not(.dark) .description{color:#625853}
@media(max-width:700px){body.editorial:not(.dark) .hero::before{right:-16%;width:64vw;opacity:.48}body.editorial:not(.dark) .hero::after{opacity:.4}}
/* Keep the approved cream canvas and watercolor petals equally legible in light mode. */
html{color-scheme:only light}
body.editorial:not(.dark){--paper:#FBF6ED;background-color:#FBF6ED!important}
body.editorial:not(.dark) .hero::before{background:radial-gradient(ellipse at 58% 24%,rgba(144,34,45,.34) 0 17%,rgba(184,101,91,.2) 38%,transparent 69%);opacity:.9;filter:blur(3px)}
body.editorial:not(.dark) .hero::after{background:linear-gradient(180deg,rgba(144,34,45,.2),rgba(190,115,102,.09) 70%,transparent);opacity:.78;filter:blur(7px)}
body.editorial:not(.dark) main::after{background:linear-gradient(180deg,rgba(144,34,45,.09),rgba(190,115,102,.055) 45%,transparent);opacity:.62}
@media(max-width:700px){body.editorial:not(.dark) .hero::before{opacity:.7}body.editorial:not(.dark) .hero::after{opacity:.58}}
/* Stable compact brand alignment on phones. */
@media(max-width:700px){.editorial .topbar{grid-template-columns:48px minmax(0,1fr) auto;min-height:66px;padding:.55rem .75rem;column-gap:.55rem;align-items:center}.editorial .brand-monogram{width:44px;height:44px;margin:0;align-self:center;justify-self:center}.editorial .header-wordmark{align-self:center;justify-self:start;width:clamp(118px,38vw,190px);margin-left:.12rem}.editorial .topbar .contact-nav{align-self:center;padding-top:0}}
@media(max-width:420px){.editorial .topbar{grid-template-columns:42px minmax(0,1fr) auto;padding-left:.6rem;padding-right:.6rem;column-gap:.3rem}.editorial .brand-monogram{width:40px;height:40px}.editorial .header-wordmark{width:clamp(108px,35vw,148px)}}

/* v1 variant swatches */
.swatch-row{display:flex;gap:8px;overflow-x:auto;padding:6px 2px;margin:8px 0;-webkit-overflow-scrolling:touch}
.swatch{width:44px;height:44px;min-width:44px;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#efe9dd;padding:0;cursor:pointer;position:relative}
.swatch img{width:100%;height:100%;object-fit:cover;display:block}
.swatch-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:700}
.swatch.selected{border-color:#111}
.swatch.selected::after{content:'\2713';position:absolute;right:2px;bottom:0;font-size:12px;color:#fff;text-shadow:0 1px 2px #000}
.swatch:focus-visible{outline:2px solid #111;outline-offset:2px}
.price-summary{font-weight:700;margin:8px 0}

/* v1 layout: single source of truth for shop grid (stagger neutralized) */
.editorial .products,.grid .products,.products{grid-template-columns:repeat(2,minmax(0,1fr))}
.editorial .product,.editorial .product:nth-child(n){grid-column:auto;margin-top:0;display:block}
@media(min-width:900px){.editorial .products,.grid .products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1400px){.editorial .products,.grid .products{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.editorial .products,.grid .products{grid-template-columns:1fr}}
/* v1 hero band: cream room, photo dissolving from the right */
.editorial .hero.hero-band{background:transparent;min-height:0;align-content:start;padding:clamp(2rem,5vw,4rem) clamp(1rem,6vw,6rem);display:grid;gap:2rem;align-items:center;color:var(--ink)}
.editorial .hero.hero-band::before,.editorial .hero.hero-band::after{display:none}
.hero-band .hero-inner{position:relative;z-index:2;max-width:560px;display:grid;gap:1rem;justify-items:start;align-content:start}
.hero-band h1{font:600 clamp(3.2rem,8vw,6.5rem)/.9 var(--serif);margin:0;color:var(--ink)}
.hero-band h1 em{color:var(--accent)}
.hero-band .hero-photo{position:relative;margin:0}
.hero-band .hero-photo img{display:block;width:100%;height:clamp(220px,38vw,380px);object-fit:cover;object-position:center 20%;border-radius:24px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 82%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 82%,transparent 100%)}
.hero-band .hero-photo::after{content:'';position:absolute;inset:0;border-radius:24px;background:linear-gradient(90deg,rgba(255,254,252,.55),rgba(255,254,252,0) 35%),linear-gradient(0deg,rgba(161,47,39,.10),rgba(161,47,39,0) 45%);pointer-events:none}
@media(min-width:1000px){.editorial .hero.hero-band{grid-template-columns:.9fr 1.1fr}.hero-band .hero-photo img{height:min(48vh,440px)}}
@media(max-width:999px){.hero-band .hero-photo img{-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 80%,transparent 100%)}}

/* v1 price dropdown styling (matches size select) */
.price-summary{font-family:var(--serif);font-size:1.4rem;font-weight:700;color:var(--burgundy)}
.price-control{display:grid;gap:.35rem;margin:.6rem 0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.price-select{background:#fffdf8;border:1px solid var(--line);border-radius:999px;min-height:44px;padding:.6rem 2rem .6rem 1rem;font-family:var(--sans);font-size:.9rem;font-weight:600;color:var(--ink);max-width:100%;box-shadow:0 1px 3px rgba(24,23,20,.08)}
.size-select{background:#fffdf8;box-shadow:0 1px 3px rgba(24,23,20,.08)}

/* Agency A v1: palette tokens (resolves undefined --burgundy) */
:root{--burgundy:#741a23;--burgundy-deep:#59131b;--cream:#FBF6ED;--cream-soft:#fffdf8}

/* Agency A v1: hero band — containment + cream dissolve */
.editorial .hero.hero-band{overflow:hidden}
.hero-band .hero-inner,.hero-band .hero-photo{min-width:0;max-width:100%}
.hero-band .hero-photo{overflow:hidden;border-radius:24px}
.hero-band .hero-photo img{max-width:100%;background:#f7f1eb}
.hero-band .hero-photo::after{background:linear-gradient(90deg,rgba(251,246,237,.6),rgba(251,246,237,0) 35%),linear-gradient(0deg,rgba(116,26,35,.12),rgba(116,26,35,0) 45%)}
.hero-band .hero-tag{background:rgba(251,246,237,.92);color:#741a23;border:1px solid rgba(116,26,35,.25)}
@media(max-width:999px){.hero-band .hero-photo::after{background:linear-gradient(180deg,rgba(251,246,237,0) 55%,rgba(251,246,237,.65)),linear-gradient(0deg,rgba(116,26,35,.10),rgba(116,26,35,0) 50%)}}

/* Agency A v1: price — burgundy serif, keeps From/summary logic + labels */
.price-summary{color:#741a23}
.price-select{border-color:rgba(116,26,35,.35);color:var(--ink)}
.price-select:hover{border-color:#741a23}
.price-select:focus-visible,.swatch:focus-visible,.size-select:focus-visible{outline:3px solid rgba(116,26,35,.45);outline-offset:2px}
.price-control>span{color:#741a23}

/* Agency A v1: swatches/badges/strips — site palette */
.swatch{background:#f7f1eb;border-color:rgba(116,26,35,.25)}
.swatch.selected{border-color:#741a23}
.swatch.selected::after{color:#741a23;text-shadow:0 1px 0 #FBF6ED}
.product>.badge,.badge{background:#FBF6ED;color:#181714;border:1px solid rgba(116,26,35,.25)}
.category-rail button:focus-visible{outline:3px solid rgba(116,26,35,.45);outline-offset:2px}

/* Agency A v1: grid single source of truth (2-col base; 1 @520 / 3 @900 / 4 @1400) */
.editorial .products,.grid .products,.products{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.editorial .products,.grid .products,.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1400px){.editorial .products,.grid .products,.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.editorial .products,.grid .products,.products{grid-template-columns:1fr}}

/* Agency A v1: dark mode readability */
body.dark .price-summary,body.dark .price-control>span{color:#efb4aa}
body.dark .size-pill,body.dark .price-pill{background:#2a1e1b;color:#f4eadc;border-color:rgba(239,180,170,.4)}
body.dark .size-pill.selected,body.dark .price-pill.selected{background:#efb4aa;border-color:#efb4aa;color:#241110}
body.dark .size-more{color:#f4eadc;border-color:rgba(239,180,170,.4)}
body.dark .price-select{background:#2a1e1b;color:#f4eadc;border-color:rgba(239,180,170,.4)}
body.dark .swatch.selected{border-color:#efb4aa}
body.dark .swatch.selected::after{color:#efb4aa;text-shadow:0 1px 2px #000}
body.dark .product>.badge,body.dark .badge{background:#2a1e1b;color:#f4eadc;border-color:rgba(239,180,170,.4)}
body.dark .hero-band .hero-photo::after{background:linear-gradient(90deg,rgba(24,18,17,.55),rgba(24,18,17,0) 35%),linear-gradient(0deg,rgba(0,0,0,.25),transparent 45%)}
@media(max-width:999px){body.dark .hero-band .hero-photo::after{background:linear-gradient(180deg,transparent 55%,rgba(24,18,17,.6))}}

/* Agency A v3: hero as header background, straight white slogan, bottom fade, warmer cream */
:root{--paper:#f6efdd;--cream:#f6efdd}
body[data-look=editorial]{--paper:#f6efdd}
body{background:#f6efdd}
.editorial .topbar{background:transparent!important;border-bottom:0;position:relative;z-index:3}
.editorial .hero.hero-band{position:relative;margin-top:-10px;padding-top:clamp(3rem,6vw,5rem);background:url('hero-photo.jpg') center 25%/cover no-repeat;border-radius:0 0 28px 28px;overflow:hidden;color:#fff;min-height:min(78vh,640px);align-content:center}
.editorial .hero.hero-band::before{content:'';display:block!important;position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,16,14,.72),rgba(40,16,14,.38) 55%,rgba(40,16,14,.12));pointer-events:none}
.editorial .hero.hero-band::after{content:'';display:block!important;position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,transparent,#f6efdd);pointer-events:none}
.hero-band .hero-inner{position:relative;z-index:2}
.hero-band h1,.hero-band h1 em{color:#fff!important;font-style:normal!important;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.hero-band .hero-lead,.hero-band .hero-reassure{color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.hero-band .hero-eyebrow{color:#f4e3c2}
.hero-band .hero-photo{display:none}
@media(max-width:999px){.editorial .hero.hero-band{min-height:70vh;background-position:center 20%}}

/* size pills match swatches, wrap at 5-7 sizes */
.size-row{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.size-pill{min-width:44px;min-height:44px;padding:.5rem .8rem;border-radius:10px;border:2px solid var(--line);background:#fffdf8;font-weight:700;cursor:pointer;color:var(--ink)}
.size-pill.selected{border-color:#741a23;background:#741a23;color:#fff}
.size-pill:focus-visible{outline:2px solid #741a23;outline-offset:2px}

/* sizes: first 3 visible, extras collapse until toggle */
.size-row .size-pill.extra{display:none}
.sizes-open .size-row .size-pill.extra{display:inline-flex}
.swatch-row .color-pill.extra{display:none}
.colors-open .swatch-row{flex-wrap:wrap;overflow:visible}
.colors-open .swatch-row .color-pill.extra{display:inline-flex}
.size-more{border:1px dashed var(--line);background:transparent;border-radius:999px;padding:.5rem .8rem;font-size:.75rem;font-weight:700;cursor:pointer;color:var(--ink)}

/* water-dissolve: top melts into header, bottom melts before products */
.editorial .hero.hero-band{margin-top:-14px}
.editorial .hero.hero-band::before{background:linear-gradient(180deg,rgba(246,239,221,.9),rgba(246,239,221,0) 22%),linear-gradient(90deg,rgba(40,16,14,.72),rgba(40,16,14,.38) 55%,rgba(40,16,14,.12))}
.editorial .hero.hero-band::after{height:160px;background:linear-gradient(180deg,transparent 0%,rgba(246,239,221,.55) 45%,#f6efdd 92%)}
#collection{padding-top:0;margin-top:-30px;position:relative;z-index:1}

/* price pills replace ugly native dropdown blue highlight */
.price-row{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.price-pill{border:2px solid var(--line);background:#fffdf8;border-radius:999px;padding:.55rem .9rem;font-size:.8rem;font-weight:700;cursor:pointer;color:var(--ink)}
.price-pill.selected{border-color:#741a23;background:#741a23;color:#fff}
.price-pill:focus-visible{outline:2px solid #741a23;outline-offset:2px}
.price-control,.price-select{display:none}

/* hero: no hard cut, text never overlaps photo edge */
.editorial .hero.hero-band{border-radius:0;margin-top:-14px;padding-bottom:clamp(5rem,10vw,8rem)}
.editorial .hero.hero-band::after{height:200px;background:linear-gradient(180deg,transparent 0%,rgba(246,239,221,.5) 40%,#f6efdd 88%)}
.hero-band .hero-inner{padding:clamp(1rem,3vw,2.5rem) 0;z-index:2}
.hero-band h1{line-height:1;margin:0 0 .5rem}
.hero-band .hero-lead{margin:0 0 1rem;max-width:44ch}

/* rail-to-stock spacing: eyebrow never rides into pills */
.category-rail{margin-bottom:1.5rem}
.shop-head{margin-top:0;padding-top:.5rem}
.shop-head .eyebrow{display:block;margin-bottom:.6rem;line-height:1.6}
