@import url('https://fonts.googleapis.com/css2?family=Baskervville:ital@0;1&family=Instrument+Sans:wght@400;500;600;700&display=swap');

:root{color-scheme:light;--ink:#3a2b25;--muted:#73594e;--brand:#884b39;--brand-dark:#653b31;--accent:#a3644e;--brand-blush:#fae8dc;--pink:#f4ded2;--pink-light:#fbefe8;--paper:#fffaf6;--white:#fffdfb;--line:#ead5ca;--display:"Baskervville",Georgia,serif;--sans:"Instrument Sans",Arial,sans-serif;--ease:cubic-bezier(.2,.74,.24,1);font-family:var(--sans);color:var(--ink);background:var(--paper);font-size:15px}
*,*::before,*::after{box-sizing:border-box}
html{scrollbar-gutter:stable}
html:has(dialog[open]){overflow:hidden}
body{margin:0}
#site{min-height:100svh;display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) 0 env(safe-area-inset-left,0px)}
#main{flex:1;min-width:0}
#main:focus{outline:none}
#main.home-page{display:flex;flex-direction:column}
.home-page>.hero:only-child,.home-page>.arrivals{flex:1}
.home-payments{display:grid;gap:10px;padding-block:15px}
.home-payment{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.home-payment>div{display:grid;gap:4px}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
button[aria-busy=true]{cursor:progress}
img{display:block;width:100%;height:auto}
[hidden]{display:none!important}
p{line-height:1.62;margin:0 0 1rem}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0 0 .45em;line-height:1.16;font-variant-ligatures:none}
h1{font-size:clamp(2.65rem,5.7vw,5.6rem);letter-spacing:-.022em}
h2{font-size:clamp(2rem,3.75vw,3.75rem);letter-spacing:-.02em}
h3{font-size:1.65rem}
em{font-weight:inherit;color:var(--accent)}
small,.muted{color:var(--muted)}
.preline{white-space:pre-line}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.skip{position:fixed;z-index:30;background:var(--white);padding:1rem;transform:translateY(-120%)}
.skip:focus{transform:translateY(0)}
.wrap{width:min(100% - 104px,1330px);margin-inline:auto}
.announcement{min-height:32px;display:flex;justify-content:center;align-items:center;gap:12px;background:var(--brand-dark);color:#fff6ef;font-size:11px;line-height:1.35;letter-spacing:.025em;padding:6px 12px;text-align:center}
.eyebrow i{width:4px;height:4px;background:#d8a795;border-radius:50%;display:inline-block;flex:none}
.announcement-marquee{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 42px;min-height:37px;gap:0;padding:0;font-size:12px}
.announcement-copy,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
.announcement-window{overflow:hidden;min-width:0;mask-image:linear-gradient(to right,transparent,#000 14px,#000 calc(100% - 14px),transparent)}
.announcement-track{display:flex;width:max-content;animation:announcement-scroll calc(42s + var(--extra-announcements,0)*14s) linear infinite}
.announcement-marquee.is-paused .announcement-track{animation-play-state:paused}
.announcement-group{display:flex;align-items:center;justify-content:space-around;flex:none;gap:24px;min-width:100vw;padding-right:24px}
.announcement-track :is(.offer,.custom-announcement){white-space:nowrap}
.announcement-dot{color:#e9b7a4;font-weight:700}
.announcement-toggle{display:grid;place-items:center;align-self:stretch;min-height:37px;padding:0;border:0;background:transparent;color:inherit}
.announcement-toggle:focus-visible{outline-color:#ffe2d5;outline-offset:-4px}
@keyframes announcement-scroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){
  .announcement-marquee{display:flex;padding:8px 14px}
  .announcement-copy{position:static;width:auto;height:auto;clip-path:none;overflow:visible;line-height:1.5}
  .announcement-copy .announcement-dot{margin-inline:6px}
  .announcement-window,.announcement-toggle{display:none}
}
.offer strong{font-weight:700}
.offer>span{white-space:nowrap}
.custom-announcement{overflow-wrap:anywhere}
.studio-label{letter-spacing:.12em;text-transform:uppercase}
.preview-label{text-align:center;font-size:11px;color:var(--muted);background:var(--pink-light);padding:4px 12px}
.mobile-nav,.purchase-price{display:none}
.top{border-bottom:1px solid #e8cfc0;background:var(--brand-blush);position:sticky;top:env(safe-area-inset-top,0px);z-index:5}
.top-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"links logo tools";align-items:center;min-height:70px;width:min(100% - 104px,1330px);margin:auto}
.top .mobile-back{display:none}
.top-inner>.logo{grid-area:logo;justify-self:center}
.top-links{grid-area:links;justify-self:start}
.top-inner>.tools{grid-area:tools;justify-self:end}
.top-links,.tools{display:flex;align-items:center;gap:29px}
.top-links a{position:relative;font-size:12px;font-weight:600;letter-spacing:.055em;transition:color .2s;padding-block:10px}
.top-links a::after{content:"";position:absolute;inset:auto 0 5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .27s var(--ease)}
.top-links a:hover::after,.top-links a[aria-current=page]::after{transform:scaleX(1)}
.top-links a:hover,.text-link:hover,.quiet:hover{color:var(--accent)}
.logo{position:relative;display:inline-block;width:108px;aspect-ratio:420/151;overflow:hidden;flex:none;vertical-align:middle;background:var(--brand-blush)}
.logo img{position:absolute;max-width:none;width:257.14286%;height:auto;left:-78.57143%;top:-286.75497%}
.tools{justify-content:flex-end;gap:18px}
.icon{display:inline-grid;place-items:center;min-width:34px;min-height:36px;padding:0 3px;border:0;background:none;color:inherit;transition:color .2s,transform .25s var(--ease)}
.icon:hover{color:var(--accent);transform:translateY(-2px)}
.icon:active:not(:disabled){transform:scale(.93)}
.bag-button{display:flex;gap:4px;align-items:center}
.bag-button span{font-size:10px;min-width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--brand-dark);color:#fff7ef;transform-origin:center}
.hero{display:grid;grid-template-columns:43% 57%;min-height:clamp(430px,43vw,650px);background:linear-gradient(125deg,#fff8f2,var(--pink-light));border-bottom:1px solid var(--line)}
.hero-copy{display:grid;place-items:center start;padding:55px 28px 54px max(52px,calc((100vw - 1330px)/2))}
.hero.hero-text{grid-template-columns:minmax(0,1fr);min-height:clamp(380px,55svh,580px);background:radial-gradient(ellipse at 56% 5%,#fffaf6 4%,#f5ddd1 100%)}
.hero-text .hero-copy{place-items:center;text-align:center;padding-inline:20px}
.hero-text .eyebrow{justify-content:center}
.hero-body>*{animation:hero-copy .62s var(--ease) both}
.hero-body>h1{animation-delay:75ms}
.hero-body>.button{animation-delay:145ms}
.hero h1{font-size:clamp(3.2rem,5.75vw,6.5rem);margin:.15em 0 .4em;line-height:1.12;letter-spacing:-.012em;color:var(--brand-dark)}
.refine-f{margin-inline-end:.05em}
.hero-location{margin-bottom:16px}
.hero h1 em{font-style:italic}
.hero-media{position:relative;overflow:hidden;min-height:100%;background:#e9cfc1}
.hero-media .campaign{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;animation:campaign-in .85s var(--ease) both}
.hero-media .photo-empty{height:100%;min-height:410px}
.eyebrow{font:700 10px/1.5 var(--sans);letter-spacing:.165em;text-transform:uppercase;color:var(--brand);display:flex;align-items:center;gap:8px;margin:0 0 12px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:47px;padding:12px 21px;border:1px solid transparent;border-radius:999px;font-size:13px;letter-spacing:.008em;font-weight:600;text-align:center;transition:background .22s,border .22s,transform .27s var(--ease),box-shadow .27s var(--ease);white-space:normal}
.button:hover:not(:disabled){transform:translateY(-2px)}
.button:active:not(:disabled){transform:translateY(0) scale(.985)}
.button svg{transition:transform .29s var(--ease)}
.button:hover:not(:disabled) svg{transform:translateX(3px)}
.button.primary{background:var(--brand);border-color:var(--brand);color:#fff7f3}
.button.primary:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark);box-shadow:0 8px 18px #653b3120}
.button.secondary{background:transparent;border-color:#cba99a;color:var(--brand-dark)}
.button.secondary:hover{background:var(--pink-light)}
.button.text{padding:4px 0;min-height:30px;color:var(--brand);background:none;text-transform:none;letter-spacing:0;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.full{width:100%}
.arrivals{padding:67px 0 89px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:21px}
.section-head h1,.section-head h2,.section-head p:last-child{margin-bottom:0}
.section-head :is(h1,h2)+p{margin-top:12px}
.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--brand-dark);font-size:12px;font-weight:700;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}
.section-head>.text-link{margin-bottom:5px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:20px}
.product{display:grid;grid-template-rows:auto 1fr auto;min-width:0;padding-bottom:32px}
@supports(grid-template-rows:subgrid){
  .product{grid-row:span 3;grid-template-rows:subgrid}
}
.product-photo{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:#f2e3db;border-radius:7px}
.product-photo img,.product-photo .photo-empty{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .68s var(--ease)}
@media(hover:hover) and (pointer:fine){
  .product-photo:hover img{transform:scale(1.048)}
}
.photo-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px}
.arrivals .photo-toolbar{justify-content:flex-end}
.photo-toolbar .photo-toggle{min-height:44px;font-size:.82rem}
@media(prefers-reduced-motion:reduce){.photo-toggle{display:none!important}}
.quick{display:grid;place-items:center;position:absolute;bottom:10px;right:10px;background:var(--white);width:37px;height:37px;border:1px solid #ead5cb;border-radius:50%;color:var(--brand);transition:background .2s,color .2s,transform .27s var(--ease)}
.product-photo:hover .quick{background:var(--brand);color:var(--white);transform:translateY(-3px)}
.sold-label{position:absolute;top:9px;left:9px;background:var(--white);padding:5px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.product-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:7px 10px;padding-top:13px;font-size:13px;font-weight:600}
.price-label{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:3px 7px;font-variant-numeric:tabular-nums}
.price-label strong,.price-label del,.price-discount{white-space:nowrap}
.price-label del{color:var(--muted);font-size:.85em;font-weight:400}
.price-label del+strong{color:var(--brand-dark)}
.price-discount{border-radius:4px;padding:2px 5px;background:var(--pink);color:var(--brand-dark);font-size:.68rem;font-weight:700;line-height:1.2}
.product-meta>.price-label,.bag-row>div:last-child .price-label,.order-product-price .price-label{display:grid;justify-items:end;gap:3px}
.product-meta>div{min-width:0;overflow-wrap:anywhere}
.product-meta a{font:500 clamp(1rem,1.53vw,1.28rem)/1.15 var(--display);letter-spacing:-.03em}
.product-meta a:hover{color:var(--accent)}
.product-meta small,.order-tile small,.inventory-card small{display:block;font-size:11px;margin-top:5px}
.swatches{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:10px}
.swatches a,.swatches button,.dot{display:inline-block;background:var(--swatch);width:16px;height:16px;border:1px solid #6b4d4140;border-radius:50%;transition:transform .2s}
.swatches a:hover,.swatches button:hover{transform:scale(1.12)}
.swatches.large{gap:12px}
.swatches.large button{width:30px;height:30px;padding:0}
.swatches button[aria-pressed=true]{outline:1px solid var(--brand);outline-offset:3px;transform:scale(1.07)}
.photo-empty{min-height:100%;display:grid;place-items:center;background:linear-gradient(140deg,#f1dcd3,#f9ebe1);font:400 2.25rem var(--display);color:#865c50}
.page{padding-block:55px 85px;min-height:54vh}
.narrow{max-width:560px}
.narrow h1{font-size:clamp(3rem,6vw,4.8rem)}
.narrow h2{font-size:2rem;margin-top:30px}
.policy-nav{display:flex;flex-wrap:wrap;gap:0 18px;margin:8px 0 20px}
.policy-nav a{display:inline-flex;align-items:center;min-height:44px}
.about-page h2[id]{scroll-margin-top:calc(76px + env(safe-area-inset-top,0px))}
.about-page :is(.policy-disclosure,.return-request){margin-block:12px;padding-inline:clamp(12px,4vw,19px)}
.about-page .policy-disclosure{padding-block:0}
.policy-disclosure>summary{padding-block:12px}
.policy-disclosure>div{padding-block:0 16px}
.policy-title{display:grid;gap:2px;min-width:0;font:700 1rem/1.4 var(--sans)}
.policy-title>[lang=en]{font-size:.85rem;font-weight:500;color:var(--muted)}
.policy-copy{display:grid;gap:.6rem;font-size:.95rem;line-height:1.7;overflow-wrap:anywhere}
.policy-copy+.policy-copy{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.policy-copy>p{margin:0;padding:0;line-height:inherit}
.policy-copy>ul{margin:0;padding-inline-start:1.25em}
.policy-copy li+li{margin-top:.25rem}
.return-request{padding-block:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.return-request h3{font:700 1rem/1.4 var(--sans);color:var(--brand-dark);margin:0 0 12px}
.return-request>.button{margin-top:16px}
.page-heading{padding-bottom:12px}
.collection .page-heading{padding-bottom:clamp(17px,3vw,32px)}
.collection h1{font-size:clamp(2.55rem,5.1vw,5.15rem);margin-bottom:0;text-wrap:balance}
.filters{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 20px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.filters label{font-size:12px;white-space:nowrap}
.filters select{border:0;background:transparent;padding:7px}
.shop-filters :is(.shop-category,.shop-sort){display:flex;align-items:center;gap:6px}
.pills{display:flex;flex-wrap:wrap;gap:7px}
.pills button{border:1px solid var(--line);border-radius:999px;background:transparent;min-height:39px;padding:6px 15px;transition:border .2s,background .2s,color .2s,transform .2s var(--ease);color:var(--brand-dark);font-size:13px}
.pills button[aria-pressed=true]{border-color:var(--brand);background:var(--pink)}
.pills button:active:not(:disabled){transform:scale(.95)}
.size-pills button{border-radius:6px;min-width:45px}
.pills button:hover:not(:disabled){border-color:var(--brand)}
.pills button:disabled{text-decoration:line-through}
.query{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;overflow-wrap:anywhere}
.result-count{color:var(--muted);font-size:12px;margin-bottom:14px}
.collection-empty{display:grid;justify-items:center;align-content:center;min-height:clamp(220px,32vw,350px);padding:28px 16px;text-align:center;border:1px solid var(--line);border-radius:12px;background:linear-gradient(140deg,var(--pink-light),var(--white))}
.collection-empty h2{font-size:clamp(1.85rem,3.8vw,3.2rem);color:var(--brand-dark);text-wrap:balance}
.collection-empty p{max-width:30ch;color:var(--muted)}
.empty{padding:26px 18px;border:1px dashed #ddc5b9;color:var(--muted);background:#fffaf7}
.breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:19px;color:var(--muted);font-size:12px}
.breadcrumb a{text-decoration:underline}
.breadcrumb span{min-width:0;overflow-wrap:anywhere}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.23fr) minmax(0,1fr);grid-template-areas:"gallery intro" "gallery options" "gallery copy";grid-template-rows:auto auto 1fr;column-gap:clamp(26px,6vw,95px);align-items:start}
.gallery{grid-area:gallery;display:flex;gap:10px;min-width:0;align-items:flex-start}
.thumbs{flex:0 0 62px;display:flex;flex-direction:column;gap:8px;max-height:570px;overflow:auto;padding:2px}
.thumbs button,.detail-photo{padding:0;border:1px solid transparent;background:#f3e4dc;overflow:hidden}
.thumbs button[aria-pressed=true]{border-color:var(--brand)}
.thumbs img{aspect-ratio:4/5;object-fit:cover}
.detail-stage{position:relative;flex:1;min-width:0;width:100%}
.detail-photo{display:block;position:relative;width:100%;aspect-ratio:4/5;cursor:zoom-in;border-radius:7px;touch-action:pan-y pinch-zoom}
.detail-photo>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.detail-intro{grid-area:intro;min-width:0;overflow-wrap:anywhere;padding:14px 0 6px}
.detail-intro h1{font-size:clamp(2.4rem,4.5vw,4.5rem);margin-bottom:12px}
.variant-options{grid-area:options;min-width:0;overflow-wrap:anywhere}
.gallery-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:2px 5px;border-radius:999px;background:#fffaf4e8;box-shadow:0 6px 20px #37231b14;color:var(--brand-dark)}
.gallery-prev svg{transform:rotate(180deg)}
.gallery-index{min-width:36px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}
.detail-copy{grid-area:copy;min-width:0;overflow-wrap:anywhere}
.detail-price{font-size:21px}
.product-code{display:block;color:var(--muted);font-size:.75rem;font-weight:500;line-height:1.45;letter-spacing:.035em;overflow-wrap:anywhere}
.product-meta .product-code{margin-top:5px}
.detail-intro .product-code{margin-bottom:8px}
.option{margin:23px 0}
.option strong{margin-right:5px}
.option-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
details{margin-top:17px;border-top:1px solid var(--line);padding:13px 0}
summary{cursor:pointer;font-weight:700}
details p{padding-top:8px}
.delivery-rates{display:grid;gap:12px;margin:16px 0 24px}
.delivery-rates>div{min-width:0;padding:13px 15px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.delivery-rates dt{font-weight:700;line-height:1.4;margin-bottom:6px}
.delivery-rates dd{display:grid;gap:2px;margin:0;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}
.detail .delivery-rates{margin-bottom:5px}
footer{background:var(--brand-blush);border-top:1px solid var(--line)}
.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;padding-block:37px 22px}
.footer-inner .logo{margin-bottom:14px}
.footer-inner nav,.footer-right{display:grid;gap:11px;align-content:start;font-size:13px}
.footer-right{justify-content:end}
.footer-right a{display:flex;gap:6px;align-items:center}
.footer-inner p,.legal{color:var(--muted);font-size:12px}
.legal{border-top:1px solid var(--line);padding-block:15px}
dialog{color:var(--ink);border:1px solid var(--line);padding:0;background:var(--white);width:min(100%,470px);max-width:100%;max-height:100dvh;overflow:auto;overscroll-behavior:contain}
dialog::backdrop{background:#36231d65;animation:fade .24s both}
dialog.drawer{margin:0 0 0 auto;height:100dvh;max-height:none;border-right:0;animation:slide .28s var(--ease) both;box-shadow:-18px 0 60px #2b1d1619}
dialog.centered{width:min(100% - 28px,760px);max-height:calc(100dvh - 30px);margin:auto;animation:appear .25s var(--ease) both}
dialog.drawer.closing{animation:slide-out .20s cubic-bezier(.42,0,1,1) both}
dialog.centered.closing{animation:fade-out .20s both}
dialog.closing::backdrop{animation:fade-out .20s both}
.dialog-inner{padding:23px 26px 28px}
.drawer .dialog-inner{min-height:100%;display:flex;flex-direction:column}
.drawer:has(.bag-items){overflow:hidden}
.drawer:has(.bag-items) .dialog-inner{max-height:100dvh}
.dialog-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px;background:var(--white)}
.dialog-head h2{font:600 clamp(1.35rem,2.1vw,1.75rem)/1.25 var(--sans);letter-spacing:-.015em;margin:0;overflow-wrap:anywhere}
.settings-exit-actions{display:flex;flex-wrap:wrap;gap:9px}
.product-save{position:sticky;bottom:0;z-index:1;display:flex;justify-content:flex-end;padding:10px 0;background:var(--white);border-top:1px solid var(--line)}
.product-save:has(+ .form-error:not(:empty)){position:static}
.zoom-image{max-height:calc(100dvh - 125px);object-fit:contain}
.bag-items{display:grid;align-content:start;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.bag-feedback{background:#f6e9df;border-radius:6px;color:var(--brand-dark);font-size:13px;padding:9px 12px;margin:0 0 4px;animation:appear .25s var(--ease) both}
.bag-row{display:grid;grid-template-columns:67px minmax(0,1fr) auto;gap:12px;align-items:start;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px}
.bag-row>div{overflow-wrap:anywhere}
.bag-row img,.bag-row>.photo-empty{width:67px;height:81px;object-fit:cover}
.bag-row>.photo-empty{min-height:0;font-size:1.1rem;overflow:hidden}
.bag-row small{display:block;margin-top:4px}
.bag-row>div:last-child{text-align:right}
.bag-product-link{font-weight:600}
.bag-product-link:hover,.bag-edit-link:hover{text-decoration:underline;text-underline-offset:3px}
.bag-edit-link{display:block;width:max-content;max-width:100%;min-height:32px;align-content:center;color:var(--brand-dark);font-weight:600}
.warn,.form-error{color:#9b3434}
.quiet{display:block;margin:5px 0 0 auto;border:0;background:none;font-size:11px;padding:0;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.quantity{display:inline-flex;align-items:center;margin-top:6px;border:1px solid var(--line)}
.quantity .icon{min-width:28px;min-height:28px}
.quantity span{min-width:22px;text-align:center}
.edit-quantity{align-items:center;margin:8px 0 5px;border-radius:6px;background:var(--white)}
.edit-quantity .icon{min-width:44px;min-height:44px}
.edit-quantity span{min-width:32px;font-variant-numeric:tabular-nums}
.bag-actions{margin-top:auto;padding:12px 0 3px;background:var(--white);border-top:1px solid var(--line)}
.bag-actions>p{margin:0 0 10px;font-size:12px}
.bag-actions>p:last-child{margin:8px 0 0}
.bag-total{display:flex;justify-content:space-between;padding-bottom:6px}
.form{display:grid;gap:16px;margin-top:20px;min-width:0}
.form h2,.form h3,.form p{margin:0}
.form h2{font-size:clamp(1.65rem,3.2vw,2.3rem)}
.form h3{font:650 1.05rem/1.4 var(--sans)}
.form .form-help{font-size:13px;line-height:1.55;color:var(--muted)}
.form #defect-price-help{margin-top:6px}
.form-help a{line-height:inherit;min-height:0}
.form-section{display:grid;gap:14px;min-width:0}
.form-section+.form-section{border-top:1px solid var(--line);padding-top:20px;margin-top:4px}
.form .form-section>h2,.promo-settings .form>h2{font:650 1.13rem/1.35 var(--sans);letter-spacing:normal;color:var(--brand-dark)}
.form-fields{min-width:0;margin:0;border:0;padding:0;display:grid;gap:14px}
.form-fields legend{padding:0;margin-bottom:9px;font-size:13px;font-weight:700;color:var(--brand-dark)}
.form-fields+.form-fields{margin-top:5px}
.field{display:grid;gap:7px;font-size:13px;font-weight:600;line-height:1.35;min-width:0;overflow-wrap:anywhere}
.field input,.field textarea,.field select{border:1px solid #d9bfb2;border-radius:8px;background:#fffdfa;padding:11px 12px;width:100%;min-width:0;min-height:46px;font-weight:400;transition:border-color .18s,box-shadow .18s,background-color .18s}
.field :is(input,textarea,select):focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #884b3923}
.field:focus-within>span:first-child{color:var(--brand-dark)}
.field input[type=color]{padding:5px;cursor:pointer}
.field input[type=file]{padding:8px}
.field input[type=file]::file-selector-button{border:0;border-radius:5px;padding:8px 10px;margin-right:8px;background:var(--pink);color:var(--brand-dark);cursor:pointer;font:inherit;font-size:13px;transition:background-color .18s}
.field input[type=file]::file-selector-button:hover{background:var(--brand-blush)}
.field textarea{resize:vertical;min-height:96px}
.field input[readonly]{background:#f8efe9}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-row>.field{grid-template-rows:1fr auto}
.address-locality{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}
.variant-colour-fields{grid-template-columns:minmax(0,1fr) 86px}
.form-error{padding:10px 12px;background:#fff1ec;border:1px solid #eac2b8;border-radius:7px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.form-error:empty{display:none}
.form-error:not(:empty){animation:form-reveal .16s var(--ease) both}
.check{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--pink-light);font-size:13px;line-height:1.45;cursor:pointer}
.check input{accent-color:var(--brand);flex:none;width:17px;height:17px;margin:1px 0 0}
.auth-links{display:flex;gap:12px 18px;margin-top:16px}
.auth-email-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 12px}
.auth-email-heading .button.text{min-height:36px;text-align:left}
.checkout-form{padding:clamp(16px,2.2vw,27px);border:1px solid var(--line);border-radius:10px;background:var(--white)}
.form-disclosure{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--white);margin-block:14px;padding-inline:12px}
.form-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;list-style:none;color:var(--brand-dark)}
.form-disclosure>summary::-webkit-details-marker{display:none}
.form-disclosure>summary svg{flex:none;transition:transform .18s var(--ease)}
.form-disclosure[open]>summary svg{transform:rotate(90deg)}
.form-disclosure>.form{margin:0;padding:8px 0 13px}
.form-disclosure[open]>:not(summary),.checkout-summary[open]>:not(summary){animation:form-reveal .19s var(--ease) both}
@keyframes form-reveal{from{opacity:.55;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
.account-back{margin-bottom:16px}
.account-page>.section-head{align-items:center}
.account-page>.section-head p{overflow-wrap:anywhere}
.account-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:25px 0 34px}
.account-card{display:grid;align-content:start;justify-items:start;gap:12px;min-width:0;padding:clamp(17px,3vw,26px);border:1px solid var(--line);border-radius:12px;background:var(--white)}
.account-card h2,.account-card p,.account-orders h2{margin:0}
.account-card address{font-style:normal;line-height:1.65;overflow-wrap:anywhere}
.account-orders h2{margin-bottom:13px}
.checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,54px);align-items:start}
.checkout-grid>.form{margin:0}
.summary,.payment,.settings-card{background:#fff9f5;border:1px solid var(--line);border-radius:10px;padding:22px}
.summary,.payment{min-width:0;overflow-wrap:anywhere}
.summary:is(.checkout-summary,.order-summary){--order-summary-inset:clamp(16px,2.25vw,26px);padding:0;margin:0;overflow:clip}
.checkout-summary>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;list-style:none;padding:16px var(--order-summary-inset);min-height:58px;color:var(--brand-dark)}
.checkout-summary>summary::-webkit-details-marker{display:none}
.checkout-summary>summary small{display:block;font-size:12px;font-weight:400;margin-top:3px}
.checkout-summary>summary>strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.checkout-summary>summary svg{grid-column:3;transform:rotate(90deg);transition:transform .2s var(--ease)}
.checkout-summary>summary:focus-visible{outline-offset:-4px}
.checkout-summary[open]>summary svg{transform:rotate(-90deg)}
.checkout-summary[open]>summary :is(#summary-delivery-note,#total-value){display:none}
.summary.order-summary>h2{margin:0;padding:20px var(--order-summary-inset) 16px;font:700 1.1rem/1.3 var(--sans);letter-spacing:normal;color:var(--brand-dark)}
.order-products{list-style:none;padding:0 var(--order-summary-inset);margin:0 0 7px}
.order-product{display:grid;grid-template-columns:clamp(46px,12vw,62px) minmax(0,1fr) auto;align-items:start;column-gap:clamp(9px,2vw,16px);padding-block:14px}
.order-product+.order-product{border-top:1px solid var(--line)}
.order-product:first-child{padding-top:5px}
.order-product-thumb{display:grid;place-items:center;aspect-ratio:4/5;overflow:hidden;border-radius:5px;background:var(--pink-light);color:var(--accent)}
.order-product-thumb img{width:100%;height:100%;object-fit:cover}
.order-product-info,.order-product-price{margin-top:4px}
.order-product-name{margin:0;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.order-product-variant{display:flex;flex-wrap:wrap;gap:2px 8px;margin:5px 0 0;font-size:12px;line-height:1.45;color:var(--muted)}
.order-product-price{font-size:clamp(12px,3.5vw,15px);line-height:1.35;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.order-totals{display:grid;gap:8px;margin:0;padding:15px var(--order-summary-inset) 17px;background:var(--pink-light);border-top:1px solid var(--line);font-size:14px}
.order-totals>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px}
.order-totals dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.order-totals-final{margin-top:4px;padding-top:12px;border-top:1px solid var(--line);color:var(--brand-dark);font-size:1.12rem;font-weight:700}
.order-recipient{padding:18px var(--order-summary-inset);border-top:1px solid var(--line);font-size:14px}
.order-recipient h3{font:600 1rem/1.35 var(--sans);margin:0 0 6px}
.purchase-steps{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;padding:0;margin:0 0 24px;font-size:12px;color:var(--muted)}
.purchase-steps li{display:flex;gap:8px;align-items:center}
.purchase-steps li::before{content:"";width:8px;height:8px;border-radius:50%;border:1px solid currentColor}
.purchase-steps li[aria-current=step]{color:var(--brand-dark);font-weight:700}
.purchase-steps li:is(.done,[aria-current=step])::before{background:var(--brand)}
.order-address{font-style:normal;line-height:1.62;overflow-wrap:anywhere;white-space:pre-line}
.order-phone{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:8px}
.order-phone>span:last-child{min-width:0;font-variant-numeric:lining-nums tabular-nums}
.order-management{margin-top:20px;padding-top:12px;border-top:1px solid var(--line)}
.report-order-list{display:grid;gap:12px}
.report-order-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px}
.report-order-list .warn,.order-management .warn{color:#9b3434}
@media(max-width:680px){
  .report-order-list>div{grid-template-columns:minmax(0,1fr)}
  .report-order-list .warn{justify-self:end}
}
.tracking-details{display:grid;gap:10px;margin:12px 0 16px}
.tracking-details dt{font-size:12px;color:var(--muted)}
.tracking-details dd{margin:3px 0 0;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:lining-nums tabular-nums}
.tracking-details~details,.tracking-details~p,.tracking-details~button,.payment>.button+details{margin-top:16px}
.qr{width:min(100%,250px);aspect-ratio:1;object-fit:contain;background:#fff;display:grid;place-content:center;text-align:center;border:1px solid var(--line);margin:0 0 14px}
.merchant-qr{width:min(100%,430px);margin:0 auto 8px;padding:0;background:#fff;border:1px solid var(--line);border-radius:6px}
.merchant-qr img{display:block;width:100%;height:auto;object-fit:contain}
.qr-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.qr-actions a{min-height:44px}
.order-back{margin-bottom:8px}
.order-heading{align-items:center;flex-wrap:wrap;gap:9px 16px}
.section-head.order-heading>h1{font:500 clamp(1.45rem,3vw,2.35rem)/1.25 var(--sans);letter-spacing:-.02em;color:var(--muted)}
.order-reference{font-weight:700;color:var(--ink);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
.payment-quick{display:flex;align-items:center;justify-content:space-between;gap:6px 12px;margin-bottom:10px;padding-inline:11px;border-radius:8px;background:var(--pink-light)}
.payment-quick .button{min-height:44px;white-space:nowrap}
.payment-quick time{font-size:1.05rem}
.scan-instruction{font-size:13px;margin:12px 0}
.receipt-section{margin:20px 0;border-top:1px solid var(--line);padding-top:16px}
.receipt-section h3{font:600 1.08rem/1.35 var(--sans);margin-top:0;scroll-margin-top:calc(70px + env(safe-area-inset-top,0px))}
.payment-amount,.review-overview{display:grid;gap:8px;margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.amount-line{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.amount-line .button{min-height:44px;padding:8px 12px}
.amount-line small,.amount-line strong,.review-overview small,.review-overview strong{display:block}
.payment-amount small,.review-overview small{color:var(--muted)}
.payment-amount strong,.review-overview strong{font-size:clamp(1.25rem,2.8vw,1.6rem);font-variant-numeric:tabular-nums;color:var(--brand-dark);line-height:1.25}
.merchant-name{display:flex;align-items:baseline;justify-content:center;gap:4px 8px;flex-wrap:wrap;margin-bottom:12px;font-size:13px}
.payment-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:14px 0 12px;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--pink-light)}
.payment-methods button{min-height:44px;padding:8px 6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);font-size:13px;font-weight:600;transition:background .18s,border-color .18s,color .18s}
.payment-methods button[aria-pressed=true]{border-color:var(--line);background:var(--white);color:var(--brand-dark)}
.payment-panel{animation:form-reveal .19s var(--ease) both}
.bank-panel{padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.bank-details{display:grid;gap:10px;margin:0}
.bank-details>div+div{padding-top:10px;border-top:1px solid var(--line)}
.bank-details dt{color:var(--muted);font-size:12px}
.bank-details dd{margin:3px 0 0;font-weight:600;overflow-wrap:anywhere}
.bank-account-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px}
.bank-account-number{font-variant-numeric:lining-nums tabular-nums;letter-spacing:.025em;font-size:1.07rem}
.bank-account-row .button{min-height:44px;padding-inline:10px;font-size:12px}
.bank-panel .scan-instruction{margin-bottom:0}
.review-overview{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;background:var(--pink-light)}
.review-order{font-size:12px;color:var(--muted)}
.review-overview .button{justify-self:start;grid-column:1/-1;min-height:44px;padding:8px 14px}
.payment-countdown{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px;color:var(--brand-dark);font-size:12px}
.payment-countdown time{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.payment>.payment-countdown{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:10px 0 14px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:var(--pink-light)}
.payment>.payment-countdown time{font-size:1.3rem}
.order-meta .payment-countdown{margin-top:5px}
.payment>.text-link{margin-bottom:13px}
.order-list,.inventory-list{display:grid;gap:8px}
.order-tile,.inventory-card{display:grid;align-items:center;gap:16px;border:1px solid var(--line);background:var(--white);padding:14px;transition:border .2s,background .2s}
.order-tile{grid-template-columns:minmax(0,1fr) auto auto 20px}
.order-tile:hover,.inventory-card:hover{border-color:#be9383;background:var(--pink-light)}
.order-meta,.inventory-meta{min-width:0;overflow-wrap:anywhere}
.order-total,.inventory-stock{white-space:nowrap;font-variant-numeric:tabular-nums}
.status{white-space:nowrap;border-radius:30px;background:#eee6df;color:#5c493f;padding:5px 9px;font-size:11px;line-height:1.2;display:inline-block;align-self:center}
.status.in_review,.status.awaiting_payment{background:#f6e7cb;color:#694a27}
.status.confirmed,.status.shipped,.status.completed{background:#e6eee4;color:#365438}
.status.rejected{background:#f3ddda;color:#7a3c3a}
.studio-main{background:#fcf6f1}
.studio{display:grid;grid-template-columns:clamp(192px,17vw,228px) minmax(0,1fr);min-height:100svh}
.sidebar{position:sticky;top:env(safe-area-inset-top,0px);align-self:start;min-height:100svh;padding:30px 18px;border-right:1px solid var(--line);background:var(--brand-blush)}
.studio-brand{display:flex;align-items:center;flex-wrap:wrap;gap:9px 12px}
.studio-brand .eyebrow{margin:0}
.studio-brand .button{margin-left:auto}
.studio-nav{display:grid;gap:8px;margin-top:26px}
.studio-nav a{display:flex;align-items:center;gap:11px;min-width:0;min-height:46px;padding:10px 11px;font-size:14px;border:1px solid transparent;border-radius:8px;transition:background .19s,color .19s}
.studio-nav a svg{flex:none}
.studio-nav a:hover,.studio-nav a[aria-current=page]{background:#f3ded4;color:var(--brand-dark)}
.studio-nav a[aria-current=page]{border-color:#e5cabe;font-weight:700}
.studio-nav-short,.studio-order-filter,.table-label{display:none}
.studio-content{min-width:0;padding:32px clamp(17px,4vw,62px) 70px}
:is(.studio-main,.account-page) h1,.studio-main .narrow h1,.narrow:is(.auth-page,.address-page,.checkout-page) h1,.checkout-page .page-heading h1{font:600 clamp(1.7rem,3.1vw,2.45rem)/1.18 var(--sans);letter-spacing:-.024em;overflow-wrap:anywhere}
:is(.studio-main,.account-page,.payment,.checkout-form) h2{font:600 clamp(1.18rem,1.75vw,1.55rem)/1.3 var(--sans);letter-spacing:-.015em;overflow-wrap:anywhere}
.studio-main h3{font:600 1.08rem/1.35 var(--sans);overflow-wrap:anywhere}
.order-meta strong,.review-order{font-variant-numeric:lining-nums tabular-nums}
.studio-content .section-head>div{min-width:0}
.studio-heading{margin-bottom:20px}
.pagination{display:flex;gap:8px;margin-top:17px}
.orders-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;margin-bottom:10px}
.orders-toolbar .result-count,.orders-toolbar .pagination{margin:0}
.pagination .button{padding-inline:12px;min-height:44px}
.order-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;max-width:420px;gap:8px;margin-bottom:14px}
.order-search .button{min-height:44px}
.order-search :is(.form-error,[data-act=clear-order-search]){grid-column:1/-1;justify-self:start}
.inventory-list{gap:12px}
.inventory-card{grid-template-columns:64px minmax(0,1fr) 186px 16px;gap:18px;padding:16px;border-radius:9px}
.inventory-photo{display:grid;place-items:center;aspect-ratio:4/5;overflow:hidden;border-radius:6px;background:#f3e3da;color:var(--muted)}
.inventory-photo img{width:100%;height:100%;object-fit:cover}
.inventory-meta strong{display:block;line-height:1.35}
.inventory-card .inventory-meta small{display:flex;flex-wrap:wrap;gap:3px 10px;font-size:12px;line-height:1.4;margin-top:5px}
.inventory-state{display:grid;grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:10px;font-size:13px;text-align:right}
.inventory-state .status{justify-self:end}
.inventory-card>svg{color:var(--muted);justify-self:end}
.inventory-search{max-width:380px;margin-bottom:22px}
.product-admin-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 19px;padding:15px;background:var(--white);border:1px solid var(--line);border-radius:8px}
.product-admin-details dt{color:var(--muted);font-size:12px}
.product-admin-details dd{margin:4px 0 0;font-weight:600;overflow-wrap:anywhere}
.admin-section{border-top:1px solid var(--line);margin-top:25px;padding-top:19px}
.product-panels{gap:9px}
.product-panels button{min-height:44px}
.product-panels button span{color:var(--muted);margin-left:3px;font-variant-numeric:tabular-nums}
.variant-groups{display:grid;gap:8px}
.variant-group{margin:0;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.variant-group>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:8px;min-height:48px;list-style:none}
.variant-group>summary::-webkit-details-marker{display:none}
.variant-group>summary>span:first-child{overflow-wrap:anywhere}
.variant-group>summary svg{transition:transform .2s var(--ease)}
.variant-group[open]>summary svg{transform:rotate(90deg)}
.variant-count{font-variant-numeric:tabular-nums;color:var(--brand-dark);text-align:right}
.variant-group>summary .variant-count{font-size:12px}
.variant-rows{padding:0;margin:0;list-style:none}
.variant-rows li{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:10px;align-items:center;padding:6px 0;border-top:1px solid var(--line)}
.variant-rows strong,.variant-rows small{display:block;overflow-wrap:anywhere}
.variant-rows small{font-size:11px;color:var(--muted)}
.variant-rows .button{min-height:44px}
.table-scroll{overflow:auto}
table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:13px}
.guide-table{table-layout:fixed;white-space:normal;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
th,td{border-bottom:1px solid var(--line);padding:9px 10px}
th{background:#f6e8df;color:var(--brand-dark)}
.dot{vertical-align:middle;width:14px;height:14px;margin-right:7px}
.admin-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:16px}
.admin-photos article{background:#fff9f5;border:1px solid var(--line)}
.admin-photos img{aspect-ratio:4/5;object-fit:cover}
.admin-photos article>div{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:4px 8px}
.admin-photos article small{min-width:0;overflow-wrap:anywhere}
.settings-card{max-width:650px}
.settings-card>.form{margin:0}
.settings-save{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:12px}
.storefront-settings{max-width:820px}
.promo-settings{margin-top:18px}
.offer-rows{display:grid;gap:10px}
.offer-rows:empty{display:none}
.offer-row{min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.offer-row .button.text{justify-self:end;min-height:38px;margin-top:4px}
.settings-qr-preview{margin:0}
.settings-qr-preview .merchant-qr{max-width:220px;margin:8px auto 14px}
.upload-form{max-width:580px;margin:0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.home-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hero-picker{min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px}
.hero-picker img{margin-bottom:9px;aspect-ratio:16/10;object-fit:cover;border-radius:6px}
.hero-picker .check{margin-top:8px}
.sales-filter{display:grid;grid-template-columns:minmax(125px,1fr) minmax(125px,1fr) auto;align-items:end;max-width:640px;margin-bottom:18px}
.sales-filter .form-error{grid-column:1/-1}
.sales-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sales-metrics>div{display:flex;flex-direction:column;justify-content:space-between;gap:9px;container-type:inline-size;border:1px solid var(--line);background:var(--white);padding:14px 12px;border-radius:8px;min-width:0}
.sales-metrics span{font-size:13px;line-height:1.4;color:var(--muted)}
.sales-metrics strong{font-size:1.15rem;font-size:clamp(.95rem,12cqi,1.5rem);line-height:1.25;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.report-note{margin:13px 0 0;color:var(--muted);font-size:13px}
.courier-cost>summary strong{font-variant-numeric:tabular-nums;margin-inline-start:6px}
.report-breakdowns{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:19px}
.report-table th{white-space:normal}
.report-section{border:1px solid var(--line);border-radius:8px;background:var(--white);padding:0 12px}
.report-section>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:52px;color:var(--brand-dark);list-style:none}
.report-section>summary::-webkit-details-marker{display:none}
.report-section>summary small{font-variant-numeric:tabular-nums}
.report-section>summary svg{transition:transform .2s var(--ease)}
.report-section[open]>summary svg{transform:rotate(90deg)}
.report-section[open]{padding-bottom:12px}
.report-pagination,.report-pagination>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.report-pagination{justify-content:space-between;margin:0 0 10px}
.report-range{scroll-margin-block:68px}
.report-pagination p{margin:0;padding:0;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}
.report-pagination .button{min-height:44px;padding:7px 11px}
.studio-table td:first-child{white-space:normal}
.guide-editor{border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;min-width:0;margin:0;padding:10px}
.guide-editor legend{font-size:13px;font-weight:700;padding:0 5px}
.guide-edit-rows{display:grid;gap:8px}
.guide-edit-rows:empty{display:none}
.guide-edit-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:end;padding:8px;border:1px solid var(--line);border-radius:6px}
.guide-remove{justify-self:end;color:var(--brand)}
.guide-note{margin-top:13px}
.phone-input{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:stretch;border:1px solid #d9bfb2;border-radius:6px;overflow:hidden;background:#fffdfa}
.phone-input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #884b3923}
.phone-input input{border:0!important;border-radius:0;box-shadow:none!important}
.country-code{align-self:center;padding:0 10px;border-right:1px solid var(--line);color:var(--brand-dark);font-weight:700;white-space:nowrap;overflow-wrap:normal}
#toast{position:fixed;z-index:10;bottom:20px;left:50%;transform:translate(-50%,14px);background:#4e312c;color:#fff7f2;padding:12px 17px;max-width:calc(100% - 28px);width:max-content;opacity:0;pointer-events:none;transition:transform .24s var(--ease),opacity .24s;box-shadow:0 4px 20px #321c1930;font-size:13px}
#toast.show{transform:translate(-50%,0);opacity:1}
@keyframes appear{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes slide{from{opacity:.68;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}
@keyframes slide-out{to{opacity:0;transform:translateX(24px)}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes fade-out{to{opacity:0}}
@keyframes hero-copy{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes campaign-in{from{opacity:.5;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
.opening{min-height:calc(100svh - 32px);display:grid;place-items:center;padding:44px 20px;text-align:center;background:var(--brand-blush);color:var(--brand-dark)}
.opening-with-photo{grid-template-columns:46% 54%;padding:0}
.opening-with-photo .opening-content{padding:30px 14px}
.opening-with-photo .hero-media{width:100%}
.opening-content>*{animation:hero-copy .55s var(--ease) both}
.opening .logo{width:clamp(115px,20vw,176px);margin:0 auto 34px}
.opening h1{font-size:clamp(2.55rem,9vw,7.1rem);line-height:1.12;letter-spacing:-.012em;margin-bottom:.28em;animation-delay:80ms}
.opening p{margin:0 0 23px;animation-delay:125ms}
.opening .text-link{animation-delay:175ms}
@media(max-width:1000px){
  .wrap,.top-inner{width:calc(100% - 56px)}
  .hero-copy{padding-left:28px}
  .hero h1{font-size:clamp(2.55rem,5.9vw,5.5rem)}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:14px}
  .product{padding-bottom:26px}
  .sales-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:880px){
  .studio{display:block}
  .sidebar{z-index:7;min-height:0;padding:8px clamp(16px,5vw,30px);border-right:0;border-bottom:1px solid var(--line)}
  .studio-brand{min-height:40px}
  .studio-brand .logo{width:81px}
  .studio-brand .button{min-height:40px}
  .studio-nav{position:fixed;inset:auto 0 0;z-index:8;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;margin:0;padding:3px max(4px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #56372b12}
  .studio-nav a{min-height:53px;display:grid;justify-items:center;align-content:center;gap:5px;padding:5px 1px;font-size:10px;line-height:1.15}
  .studio-nav a svg{transition:transform .18s var(--ease)}
  .studio-nav a:active svg{transform:scale(.88)}
  .studio-nav-full,.studio-order-pills{display:none}
  .studio-nav-short,.studio-order-filter{display:grid}
  .studio-order-filter{margin-bottom:14px;max-width:280px}
  .studio-content{padding:27px clamp(16px,5vw,30px) calc(83px + env(safe-area-inset-bottom,0px))}
  .studio-content .section-head{flex-wrap:wrap}
  .studio-content .text-link{min-height:38px}
  .studio-table{display:block;white-space:normal}
  .studio-table thead{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}
  .studio-table tbody{display:grid;gap:9px}
  .studio-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 15px;padding:14px 15px;background:var(--white);border:1px solid var(--line);border-radius:8px}
  .studio-table td{display:grid;min-width:0;padding:0;border:0;overflow-wrap:anywhere}
  .studio-table td:has(.button){grid-column:1/-1}
  .studio-table td .button{min-height:38px}
  .report-table tbody tr{gap:8px 12px;padding:10px 12px}
  .report-table td:first-child{grid-column:1/-1;font-weight:600}
  .report-pagination{position:sticky;top:calc(57px + env(safe-area-inset-top,0px));z-index:2;background:var(--white);padding-block:4px}
  .table-label{display:block;margin-bottom:2px;color:var(--muted);font-size:11px}
  .settings-save{position:sticky;bottom:calc(61px + env(safe-area-inset-bottom,0px));z-index:1;padding:6px 0;background:#fff9f5;border-top:1px solid var(--line)}
  .settings-save .button{min-height:44px}
  .keyboard-open .settings-save,.settings-save:has(+ .form-error:not(:empty)){position:static}
  .studio-content .checkout-grid{grid-template-columns:minmax(0,1fr)}
  .studio-content .checkout-grid>.payment{order:-1}
  .keyboard-open .studio-nav{visibility:hidden}
  #site:has(.studio)+dialog+#toast{bottom:calc(65px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:680px){
  :root{--page-gutter:clamp(16px,4.5vw,24px)}
  .wrap,.top-inner{width:calc(100% - var(--page-gutter) - var(--page-gutter))}
  .sidebar,.studio-content{padding-inline:var(--page-gutter)}
  .announcement-marquee{font-size:11px}
  .announcement-track{animation-duration:calc(36s + var(--extra-announcements,0)*14s)}
  .announcement-toggle{min-height:42px}
  .top-inner{min-height:61px;grid-template-areas:"back logo tools"}
  .top-links,.top .tools{display:none}
  .compact-route .top .mobile-back{display:inline-grid;justify-self:start;grid-area:back;min-width:40px;min-height:44px}
  .mobile-back svg{transform:rotate(180deg)}
  .compact-route .top .tools{display:flex;justify-content:flex-end}
  .compact-route .top .tools>.icon:not(.bag-button){display:none}
  .logo{width:81px}
  .mobile-nav{position:fixed;z-index:8;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:3px max(8px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 22px #56372b0c}
  .mobile-nav>a,.mobile-nav>button{border:0;background:transparent;display:grid;justify-items:center;align-content:center;gap:2px;min-height:51px;color:var(--muted);font-size:10px;padding:4px 2px}
  .mobile-nav [aria-current=page]{color:var(--brand-dark);font-weight:700}
  .keyboard-open .mobile-nav{visibility:hidden}
  .mobile-nav :is(a,button):active svg{transform:scale(.9)}
  .mobile-nav svg{transition:transform .18s var(--ease)}
  .mobile-bag-icon{position:relative}
  .mobile-bag-icon b{position:absolute;top:-2px;right:-9px;min-width:14px;height:14px;display:grid;place-items:center;background:var(--brand-dark);color:var(--white);border-radius:50%;font-size:8px}
  .mobile-navigation footer{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}
  .hero{grid-template-columns:minmax(0,1fr);min-height:0}
  .hero-copy{padding:clamp(32px,8vw,50px) clamp(20px,6vw,36px)}
  .hero:not(.hero-text) .hero-copy{padding-block:28px}
  .hero:not(.hero-text) .hero-media{grid-row:2}
  .home-payments{padding-block:10px}
  .home-payment{gap:8px;padding:8px 11px;font-size:13px}
  .home-payment .button{min-height:44px;padding-inline:10px}
  .hero.hero-text{min-height:clamp(350px,53svh,480px)}
  .hero-text .hero-copy{padding-inline:clamp(20px,6vw,36px)}
  .hero h1{font-size:clamp(2.65rem,10.1vw,4.4rem);margin-bottom:.48em}
  .hero-body>p:not(.eyebrow){margin-bottom:20px}
  .hero-media{grid-row:1;min-height:0;height:clamp(235px,79vw,410px)}
  .hero-media .photo-empty{min-height:100%}
  .opening-with-photo{grid-template-columns:minmax(0,1fr);min-height:auto}
  .opening-with-photo .opening-content{padding-block:33px}
  .opening-with-photo .hero-media{height:clamp(235px,85vw,430px)}
  .arrivals{padding-block:37px 47px}
  .section-head{gap:10px;flex-wrap:wrap}
  .section-head>div{min-width:0}
  .section-head h1{overflow-wrap:anywhere}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:13px}
  .product{padding-bottom:29px}
  .product-meta{font-size:13px;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;gap:6px;padding-top:11px}
  .product-meta a{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:clamp(1rem,3.7vw,1.25rem);line-height:1.25}
  .product-meta small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .product-meta>.price-label{display:inline-flex;justify-items:normal}
  .product .swatches{gap:2px;margin-top:2px}
  .product .swatches a,.swatches.large button{display:grid;place-items:center;height:44px;border:0;background:none;border-radius:6px}
  .product .swatches a{width:clamp(24px,7vw,32px)}
  .product .swatches a::before,.swatches.large button::before{content:"";width:16px;height:16px;border:1px solid #6b4d4140;border-radius:50%;background:var(--swatch)}
  .quick{width:31px;height:31px;bottom:6px;right:6px}
  .page{padding-block:31px 49px}
  .page-heading h1,.narrow h1{font-size:clamp(2.4rem,8.8vw,3.6rem)}
  .collection .page-heading h1{font-size:clamp(2rem,8.2vw,3.1rem)}
  .collection{padding-top:23px}
  .filters{align-items:flex-start;flex-wrap:wrap}
  .filters .pills{flex:1 1 100%}
  .filters select{min-height:40px}
  .shop-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;margin-bottom:12px}
  .shop-filters :is(.shop-category,.shop-sort){display:grid;min-width:0;gap:5px;color:var(--muted);font-weight:600}
  .shop-filters select{display:block;width:100%;min-width:0;min-height:44px;padding:6px 5px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--ink);font-size:16px;font-weight:400;text-overflow:ellipsis}
  .checkout-grid{grid-template-columns:minmax(0,1fr);gap:21px}
  .detail-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "options" "gallery" "copy";grid-template-rows:auto;gap:0}
  .detail{width:100%;padding-top:0;padding-bottom:28px}
  .detail .breadcrumb{display:none}
  .gallery{flex-direction:column-reverse;gap:5px}
  .detail-photo{aspect-ratio:4/4.4;border-radius:0;border:0}
  .thumbs{flex:auto;flex-direction:row;width:100%;padding:2px 16px}
  .thumbs button{width:53px;flex:0 0 53px}
  .detail-intro{padding:16px var(--page-gutter) 0}
  .detail-intro h1{font-size:clamp(1.45rem,6.2vw,2.15rem);line-height:1.13;margin-bottom:6px}
  .detail-intro .eyebrow{margin-bottom:7px}
  .detail-copy{padding:8px var(--page-gutter) 0}
  .detail-price{font-size:1.125rem}
  .variant-options{padding:12px var(--page-gutter) 16px}
  .variant-options .option{margin:0}
  .variant-options .option+.option{margin-top:6px}
  .variant-options .option-head{margin-bottom:4px}
  .variant-options .option-head .button{min-height:44px}
  .gallery-controls .icon{min-width:42px;min-height:42px}
  .size-pills button{min-height:44px}
  .swatches.large{gap:2px;margin-top:1px}
  .swatches.large button{width:44px}
  .swatches.large button::before{width:24px;height:24px}
  .swatches.large button[aria-pressed=true]{outline:0;transform:none}
  .swatches.large button[aria-pressed=true]::before{outline:1px solid var(--brand);outline-offset:3px}
  .swatches.large button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
  .purchase-bar{position:fixed;z-index:8;inset:auto 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:center;padding:8px max(14px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #56372b0c}
  .purchase-price{display:block;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
  .compact-route:has(.detail) footer{padding-bottom:calc(63px + env(safe-area-inset-bottom,0px))}
  .checkout-grid>.summary{order:0}
  .checkout-grid>.form{order:1}
  .checkout-grid:has(.payment)>.payment{order:-1}
  .purchase-steps{margin-bottom:14px}
  .field input,.field textarea,.field select{font-size:16px}
  .form-row-stack{grid-template-columns:minmax(0,1fr)}
  .form .button.primary{min-height:46px}
  :is(.settings-save,.product-save) .button{width:100%}
  .keyboard-open .product-save{position:static}
  .auth-links{flex-wrap:wrap}
  .auth-email-heading .button.text,.narrow:has(.auth-email-heading) .auth-links .button.text{min-height:44px}
  .account-settings{grid-template-columns:minmax(0,1fr);margin:20px 0 25px}
  .account-page>.section-head{align-items:start}
  .account-page>.section-head .button{flex:none}
  dialog.drawer,dialog.centered{width:100%;max-width:100%;max-height:87dvh;height:auto;margin:auto 0 0;border-radius:18px 18px 0 0;border-bottom:0;border-right:0;border-left:0;animation:sheet-in .27s var(--ease) both}
  .drawer:has(.bag-items) .dialog-inner{max-height:87dvh}
  dialog.drawer.closing,dialog.centered.closing{animation:sheet-out .20s both}
  .dialog-inner{padding:14px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
  .dialog-head{margin-bottom:12px}
  .dialog-head .icon{min-width:44px;min-height:44px}
  .bag-row{grid-template-columns:53px minmax(0,1fr) auto;gap:8px}
  .bag-row img,.bag-row>.photo-empty{width:53px;height:65px}
  .quantity .icon{min-width:38px;min-height:40px}
  .quiet{min-height:36px}
  .zoom-image{max-height:calc(84dvh - 90px)}
  #toast{bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:21px 14px;padding-block:28px 17px}
  .footer-right{justify-content:start;grid-column:1/-1;display:flex;gap:16px}
  .order-tile{gap:8px 10px;padding:12px;font-size:13px;grid-template-columns:minmax(0,1fr) auto 18px;grid-template-areas:"meta status arrow" "meta total arrow"}
  .order-meta{grid-area:meta}
  .order-total{grid-area:total;justify-self:end}
  .order-tile .status{grid-area:status;justify-self:end}
  .order-tile>svg{grid-area:arrow;justify-self:end}
  .inventory-card{grid-template-columns:52px minmax(0,1fr) 16px;grid-template-areas:"photo meta arrow" "photo state arrow";gap:9px 12px;padding:13px;align-items:start}
  .inventory-photo{grid-area:photo}
  .inventory-meta{grid-area:meta}
  .inventory-state{grid-area:state;grid-template-columns:minmax(0,1fr) auto;gap:8px;text-align:left}
  .inventory-stock{white-space:normal}
  .inventory-card>svg{grid-area:arrow;align-self:center}
  .status{padding:5px 7px}
  .summary,.payment,.settings-card{padding:14px}
  .order-page{padding-top:16px}
  .order-page>.order-back{display:none}
  .order-heading{margin-bottom:14px}
  .payment-amount{margin-block:9px;padding:10px}
  .payment-amount strong{overflow-wrap:anywhere}
  .guide-table th,.guide-table td{padding:9px 4px;font-size:12px}
  .home-photo-grid{grid-template-columns:minmax(0,1fr)}
  .admin-product-intro h1{margin-bottom:7px}
  .admin-product-intro p{margin-bottom:0}
  .sales-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-photo-grid{gap:8px}
  .hero-picker{padding:8px}
  .sales-filter{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sales-filter button{grid-column:1/-1;justify-self:start}
}
@media(max-width:360px){
  .swatches.large{gap:1px}
  .sales-metrics{gap:8px}
  .sales-metrics>div{padding:10px}
  .sales-filter{grid-template-columns:minmax(0,1fr)}
  .sales-filter button{width:100%}
}
@media(max-width:680px) and (prefers-reduced-motion:reduce){
  .announcement-copy .offer{display:block}
  .announcement-copy .announcement-dot{display:none}
  .announcement-copy .custom-announcement{display:block;margin-top:4px}
}
@keyframes sheet-in{from{opacity:.7;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes sheet-out{to{opacity:0;transform:translateY(22px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

