:root{--ed:Fraunces,Georgia,serif;--rule:1px solid var(--ink);--hair:1px solid var(--line)}
@layer kit-default{body>header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:var(--rule)}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-5);padding-block:var(--s-2)}.brand{display:inline-flex;align-items:center;gap:10px;margin-right:auto;color:var(--ink);text-decoration:none}.nav ul{display:flex;gap:0 var(--s-5);margin:0;padding:0;list-style:none}.crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none}.hero{display:grid;gap:var(--s-6) var(--s-8);align-items:start;padding-block:var(--s-4) var(--s-9)}.buy{display:grid;gap:var(--s-4);justify-items:start}.gallery{display:grid;gap:var(--s-3)}.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-3)}.buy-row{display:flex;align-items:center;gap:var(--s-3);width:100%}.sec{display:grid;gap:var(--s-6);padding-block:var(--s-8) var(--s-9);border-top:var(--rule)}.features{display:grid}.drawer{position:fixed;inset:0 0 0 auto;z-index:40;width:min(420px,92vw);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--ink);transition:transform var(--dur-3)}.drawer.entering{transform:translateX(100%)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:var(--s-4) var(--s-5);border-bottom:var(--rule)}.drawer-body{flex:1;overflow:auto;padding:var(--s-2) var(--s-5)}.drawer-foot{display:grid;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-top:var(--hair)}.foot{padding-block:var(--s-6);border-top:var(--rule)}
}
@media (min-width:900px){.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.gallery{grid-template-columns:76px minmax(0,1fr);column-gap:var(--s-5)}.stage{grid-column:2}.thumbs{grid-column:1;grid-row:1;grid-template-columns:1fr;align-content:start;row-gap:30px}.pp-credit{grid-column:2}.sec{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--s-9)}.sec>[data-sec-head]{grid-row:1/3}}
h1,h2,h3,.brand,.price-line b,.drawer .total,.features .step{font-family:var(--ed);font-weight:500;letter-spacing:-.015em}
.brand{font-size:23px;line-height:1;color:var(--ink)}button{cursor:pointer}.mark{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--ink);border-radius:50%;font:italic 500 16px/1 var(--ed)}
.nav ul a,.crumb,.kicker,.opt-label,.specs caption,.specs th,.stage-hint{font:600 12px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.nav ul a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.nav-actions{display:flex;gap:var(--s-2)}.icon-btn{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;border:var(--hair);border-radius:50%;background:0 0;color:var(--ink)}.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.icon-btn[aria-pressed=true]{color:var(--accent);border-color:currentColor}.icon-btn[aria-pressed=true] svg{fill:currentColor}
.cart-badge{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:var(--ink);color:var(--bg);font:700 11px/20px var(--sans);text-align:center}
.crumb{padding-block:var(--s-4) 0}.crumb li+li::before{content:"/";margin-right:8px}.crumb a{color:inherit;text-decoration:none}
.stage{position:relative;padding:clamp(14px,2.6vw,30px);padding-bottom:44px;border:var(--hair);background:var(--sunk);overflow:hidden;cursor:zoom-in}
.slide{aspect-ratio:1;display:grid;place-items:center;background:var(--surface);transition:transform var(--dur-2)}.stage.zoomed .slide{transform:scale(2);transition:none}.slide svg{width:62%;height:62%}
.stage-hint{position:absolute;left:0;right:0;bottom:13px;text-align:center;letter-spacing:.16em}
.thumbs{counter-reset:p;padding-bottom:22px}.thumbs button{position:relative;counter-increment:p;aspect-ratio:1;padding:4px;border:var(--hair);background:var(--sunk);display:grid;place-items:center}.thumbs button::after{content:counter(p,upper-roman);position:absolute;top:calc(100% + 4px);inset-inline:0;font:italic 500 13px/1.2 var(--ed);color:var(--ink-2)}.thumbs button[aria-selected=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.thumbs button[aria-selected=true]::after{color:var(--ink)}
.kicker{margin:0;padding:0;background:0 0;color:var(--accent)}
.hero h1{margin:0;font-size:clamp(40px,4.9vw,64px);line-height:1.03;max-width:13ch;text-wrap:balance}.hero h1 em{font:italic 500 1em var(--ed);color:var(--accent)}
.lead{max-width:40ch;margin:0;font-size:18px;line-height:1.55;color:var(--ink-2)}
.price-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;width:100%;margin:var(--s-2) 0 0;padding-top:var(--s-4);border-top:var(--hair)}.price-line b{font-size:38px;line-height:1;font-variant-numeric:tabular-nums}.price-line span{font-size:14px;color:var(--ink-2)}
.opt-group{display:grid;gap:10px;width:100%}.opt-label{margin:0}.opts{display:flex;flex-wrap:wrap;gap:8px}
.swatch{width:52px;height:44px;border:1px solid var(--edge);border-radius:var(--r-sm);box-shadow:inset 0 0 0 5px var(--bg)}.swatch[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink),inset 0 0 0 5px var(--bg)}
.chip{min-height:44px;padding:0 18px;border:1px solid var(--edge);border-radius:var(--r-sm);background:0 0;color:var(--ink);font:500 15px/1 var(--sans)}.chip:hover,.swatch:hover{border-color:var(--ink-2)}.chip[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--edge);border-radius:var(--r-sm)}.qty button{width:44px;height:50px;border:0;background:0 0;font:400 20px/1 var(--sans);color:var(--ink)}.qty span{min-width:26px;text-align:center;font-weight:600}
.btn{border-radius:var(--r-sm)}#add-cart{flex:1;min-height:52px;padding-inline:var(--s-5);font:600 16px/1 var(--sans);font-variant-numeric:tabular-nums}
.stock{display:flex;align-items:center;gap:8px;margin:0;font:600 14px/1.4 var(--sans);color:var(--good)}.stock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.stock.low{color:var(--warn)}
.trust{width:100%;margin:0;padding:0;list-style:none;font-size:14px;color:var(--ink-2)}.trust li{padding:11px 0;border-top:var(--hair)}.trust li::before{content:"";display:inline-block;width:8px;height:4px;margin:0 12px 3px 1px;border-left:1.5px solid;border-bottom:1.5px solid;transform:rotate(-45deg)}
.sample-note,.pp-credit{margin:0;font-size:12px;color:var(--ink-2)}.sample-note:empty{display:none}.pp-credit a{color:inherit}
.sec h2{margin:var(--s-3) 0 0;font-size:clamp(34px,3.8vw,50px);line-height:1.06;max-width:14ch;text-wrap:balance}
.features>div{display:grid;grid-template-columns:52px 1fr;padding:var(--s-5) 0;border-top:var(--hair)}.features>div:first-child{border-color:var(--ink)}.features .step{grid-row:1/3;margin:0;font-style:italic;font-size:19px;color:var(--accent)}.features h3{margin:0;font-size:24px;line-height:1.2}.features p:last-child{margin:8px 0 0;max-width:56ch;font-size:17px;line-height:1.6;color:var(--ink-2)}
.specs{width:100%;border-collapse:collapse;border-bottom:var(--rule)}.specs caption{padding:var(--s-5) 0 var(--s-3);text-align:left;caption-side:top}.specs tr{border-top:var(--hair)}.specs tr:first-child{border-color:var(--ink)}.specs th{width:34%;padding:14px var(--s-4) 14px 0;text-align:left;vertical-align:top;font-size:11px}.specs td{padding:12px 0;font-size:16px;line-height:1.5}
.drawer-veil{position:fixed;inset:0;z-index:30;background:var(--scrim)}.drawer-head h2{margin:0;font-size:28px}
.cart-line{display:grid;grid-template-columns:60px 1fr auto;gap:14px;align-items:center;padding-block:var(--s-4);border-bottom:var(--hair)}.cart-line .mini{width:60px;height:60px;padding:3px;border:var(--hair);background:var(--sunk);display:grid;place-items:center}.thumbs svg,.mini svg{width:76%;height:76%}.cart-line h3{margin:0;font-size:18px}.cart-line p{margin:2px 0 0;font-size:14px;color:var(--ink-2)}.cart-line .rm{border:0;background:0 0;color:var(--ink-2);font:500 14px/1 var(--sans);text-decoration:underline;min-height:44px}
.drawer .total{display:flex;justify-content:space-between;font-size:24px}.drawer-foot .btn{min-height:52px}.drawer-empty{margin:var(--s-7) 0;font:italic 500 20px/1.4 var(--ed);color:var(--ink-2);text-align:center}
.toast{position:fixed;left:50%;bottom:24px;z-index:50;transform:translate(-50%,80px);padding:12px 20px;border-radius:var(--r-sm);background:var(--ink);color:var(--bg);opacity:0;transition:transform var(--dur-2),opacity var(--dur-2);pointer-events:none}.toast.show{transform:translate(-50%,0);opacity:1}
.foot{font-size:14px;color:var(--ink-2)}.foot p{margin:0}
@media (max-width:639px){body>header{position:static}.brand{flex:1;min-width:0;font-size:20px}.nav ul{order:3;width:100%;overflow-x:auto;gap:var(--s-4)}.nav ul a{white-space:nowrap}.docked{padding-bottom:72px}.docked .buy-row{position:fixed;inset:auto 0 0;z-index:25;padding:10px 16px;background:var(--bg);border-top:var(--rule)}.docked .stock{margin-top:68px}.sec{padding-block:var(--s-7)}.features>div{grid-template-columns:40px 1fr}}
.slide.has-ph{display:block}.pp{display:block;width:100%;height:100%;object-fit:cover}.cart-line .mini.has-ph{overflow:hidden}
