/* Preflight Provisions. Art direction: a calm room with one useful corner. */
@font-face{font-family:"Alegreya Sans";font-weight:800;font-style:normal;font-display:swap;src:url(../fonts/alegreya-sans-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Alegreya Sans";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/alegreya-sans-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible Next";font-weight:200 800;font-style:normal;font-display:swap;src:url(../fonts/atkinson-hyperlegible-next-latin-wght-normal.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible Next";font-weight:200 800;font-style:italic;font-display:swap;src:url(../fonts/atkinson-hyperlegible-next-latin-wght-italic.woff2) format("woff2")}

:root{
  --porcelain:#F6F3EC;
  --porcelain-2:#EDE8DD;
  --porcelain-3:#E4DDCF;
  --forest:#173D35;
  --forest-2:#1F4B42;
  --forest-ink:#0E2923;
  --citrus:#D7F279;
  --citrus-2:#C6E65A;
  --sage:#4A6158;          /* secondary text: 6.0:1 on porcelain, 5.5:1 on porcelain-2 */
  --on-forest:#F6F3EC;
  --on-forest-2:#C9D6CF;   /* secondary text on forest: 8.0:1 */
  --line:rgba(23,61,53,.16);
  --line-forest:rgba(246,243,236,.18);
  --metal-1:#E6E7E2; --metal-2:#B9BDB6; --metal-3:#8E948D;
  --display:"Alegreya Sans","Gill Sans","Seravek",system-ui,sans-serif;
  --text:"Atkinson Hyperlegible Next","Seravek","Segoe UI",system-ui,sans-serif;
  --r-panel:28px; --r-ctl:14px; --r-sm:8px;
  --pf-focus:var(--forest);
  --ease:cubic-bezier(.2,.7,.2,1);
  --wrap:1320px;
  --gutter:clamp(16px,4vw,48px);
}

html{background:var(--porcelain);scroll-padding-top:96px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{font-family:var(--text);font-size:1.0625rem;line-height:1.6;color:var(--forest);background:var(--porcelain)}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.02;letter-spacing:-.012em;margin:0;text-wrap:balance}
p,ul,ol,dl{margin:0}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.pf-skip{background:var(--forest);color:var(--porcelain);border-radius:var(--r-sm)}
.sprites{position:absolute;width:0;height:0;overflow:hidden}
mark.pf-todo{border-radius:3px}

/* ---------------- header */
.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--porcelain) 88%,transparent);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line)}
.header-row{display:flex;align-items:center;gap:24px;min-height:72px}
.wordmark{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-size:1.32rem;font-weight:700;letter-spacing:-.005em;white-space:nowrap}
.wordmark b{font-weight:800}
.wordmark-glyph{width:28px;height:28px;flex:none}
.header-help{margin-left:auto;font-size:.95rem;color:var(--sage);order:0;padding-right:16px;border-right:1px solid var(--line)}
.site-nav{order:1;margin-left:4px}
.site-nav ul{display:flex;gap:4px;list-style:none;padding:0;align-items:center}
.site-nav a{display:block;padding:10px 12px;border-radius:var(--r-sm);text-decoration:none;font-size:.98rem}
.site-nav a:hover{background:var(--porcelain-2)}
.site-nav .nav-cta{background:var(--citrus);color:var(--forest-ink);font-weight:650;padding:10px 16px;margin-left:8px;border-radius:var(--r-ctl)}
.site-nav .nav-cta:hover{background:var(--citrus-2)}

/* ---------------- buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:52px;padding:0 26px;border-radius:var(--r-ctl);border:0;font-weight:650;font-size:1.05rem;text-decoration:none;cursor:pointer;transition:background-color .2s,transform .2s var(--ease),box-shadow .2s}
.btn-primary{background:var(--citrus);color:var(--forest-ink);box-shadow:inset 0 -2px 0 rgba(14,41,35,.14),0 1px 2px rgba(14,41,35,.12)}
.btn-primary:hover{background:var(--citrus-2);transform:translateY(-1px)}
.btn-primary:active{transform:translateY(0)}
.btn[disabled]{opacity:.6;cursor:progress}
.btn-link{font-weight:600;color:var(--forest)}

/* ---------------- hero */
.hero{padding:clamp(28px,3.4vw,48px) 0 clamp(48px,6vw,96px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,13fr);gap:clamp(32px,4vw,64px);align-items:center}
.hero h1{font-size:clamp(2.75rem,4.6vw,4.35rem);line-height:.98}
.h1-line{display:block;color:var(--forest-2)}
.lede{font-size:clamp(1.15rem,1.4vw,1.3rem);line-height:1.5;margin-top:24px;max-width:34ch}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:32px}
.ops-line{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);font-weight:600;max-width:42ch}
.fineprint{margin-top:10px;font-size:.92rem;line-height:1.55;color:var(--sage);max-width:52ch}

/* scene */
.scene{margin:0}
.scene-frame{position:relative;border-radius:var(--r-panel);overflow:hidden;
  background:
    radial-gradient(120% 80% at 50% 0%,rgba(255,255,255,.7),transparent 60%),
    linear-gradient(180deg,var(--porcelain-2),#E7E1D4);
  box-shadow:inset 0 0 0 1px var(--line),0 30px 60px -40px rgba(14,41,35,.35)}
.scene-tag{position:absolute;top:16px;left:16px;z-index:2;margin:0;padding:5px 10px;border-radius:999px;background:rgba(246,243,236,.86);box-shadow:inset 0 0 0 1px var(--line);font-size:.82rem;font-weight:600;color:var(--forest)}
.stage{position:relative;perspective:1600px;padding:36px 10px 4px}
.stage-floor{position:absolute;left:12%;right:12%;bottom:6%;height:14%;border-radius:50%;background:radial-gradient(closest-side,rgba(14,41,35,.22),transparent);filter:blur(8px)}
.scene-svg{position:relative;width:100%;height:auto;overflow:visible;transform-origin:50% 60%;
  transform:rotateX(var(--cam-rx,0deg)) rotateY(var(--cam-ry,0deg)) translate3d(var(--cam-x,0%),var(--cam-y,0%),0) scale(var(--cam-s,1));
  transition:transform 1.1s var(--ease)}
.scene[data-room="breakroom"]{--cam-ry:-2deg;--cam-s:1;--cam-x:0%;--cam-y:0%}
.scene[data-room="lounge"]{--cam-ry:3deg;--cam-rx:2deg;--cam-s:1.02;--cam-x:1.5%;--cam-y:-1.5%}
.scene[data-room="essentials"]{--cam-ry:-4deg;--cam-rx:1deg;--cam-s:1.03;--cam-x:-1%;--cam-y:-1%}

/* scene materials: rooms relight by swapping variables */
.scene{--wallL:#E9E6DD;--wallR:#F1EEE6;--floor:#DCD8CC;--floorLine:rgba(23,61,53,.08);--cap:#FBFAF6;--slab:#CFC8B8;--slab2:#C2BAA8;--light:transparent}
.scene[data-room="lounge"]{--wallL:#EEDFC8;--wallR:#F5EAD8;--floor:#D3B48A;--floorLine:rgba(94,58,24,.16);--slab:#BF9C70;--slab2:#AD8B60}
.scene[data-room="essentials"]{--wallL:#DFE5DC;--wallR:#EBEFE7;--floor:#D9D4C6;--floorLine:rgba(23,61,53,.08);--slab:#C9C3B4;--slab2:#BBB4A3}
.s-wall-l{fill:var(--wallL)} .s-wall-r{fill:var(--wallR)} .s-floor{fill:var(--floor)}
.s-wall-l,.s-wall-r,.s-floor,.s-slab-l,.s-slab-r{transition:fill .9s var(--ease)}
.s-slab-l{fill:var(--slab)} .s-slab-r{fill:var(--slab2)}
.s-cap{fill:var(--cap)} .s-cap-end{fill:#E9E5DB} .s-cap-end2{fill:#DCD6C9}
.s-ao{fill:rgba(14,41,35,.07)} .s-base{fill:rgba(23,61,53,.10)}
.s-shadow{fill:rgba(14,41,35,.16)}
.fl-line{fill:var(--floorLine)}
.fl-runner{fill:#2E5A4F} .fl-runner-in{fill:none;stroke:rgba(246,243,236,.35);stroke-width:.6}

.rm{transition:opacity .6s var(--ease)}
.scene .rm:not([data-room="breakroom"]){opacity:0}
.scene[data-room="lounge"] .rm{opacity:0}
.scene[data-room="lounge"] .rm[data-room="lounge"]{opacity:1}
.scene[data-room="essentials"] .rm{opacity:0}
.scene[data-room="essentials"] .rm[data-room="essentials"]{opacity:1}
.scene[data-room="breakroom"] .rm[data-room="breakroom"]{opacity:1}

/* the station */
.m-front{fill:var(--forest)} .m-side{fill:#10302A} .m-top{fill:#2A5A50}
.m-vent{fill:rgba(0,0,0,.25)}
.m-header{fill:#22524A} .m-mark{fill:none;stroke:var(--porcelain);stroke-width:.8;stroke-linecap:round}
.m-word{font-family:var(--display);font-weight:700;font-size:3.6px;fill:var(--porcelain)}
.m-trim{fill:none;stroke:var(--metal-2);stroke-width:1.2}
.m-glass{fill:rgba(190,220,214,.07)}
.m-glare{fill:rgba(255,255,255,.07)}
.m-back{fill:#F2EFE7} .m-inwall{fill:#D9D5CB}
.m-shelf{fill:#C9CCC6} .m-lip{fill:#9CA29B}
.m-panel{fill:#12342D} .m-screen{fill:#C9E7D7} .m-reader{fill:#0B201B} .m-reader-led{fill:var(--citrus)}
.m-key{fill:var(--metal-2)}
.m-help{fill:var(--porcelain)} .m-qr{fill:var(--forest)} .m-helptext{font-family:var(--text);font-size:2.6px;font-weight:700;fill:var(--forest)}
.m-bin{fill:#0B201B} .m-flap{fill:var(--metal-3)} .m-plinth{fill:#0E2923}
.pk-hi{fill:rgba(255,255,255,.22)} .pk-band{fill:rgba(255,255,255,.55)} .pk-label{fill:rgba(255,255,255,.78)}
.pk-rim{fill:#D7DAD4} .pk-cap{fill:#3F5D55} .pk-card{fill:#F7F5EF;stroke:rgba(23,61,53,.18);stroke-width:.25} .pk-hole{fill:#C9C4B8}
.pk-glass{opacity:.92}
.m-stock{transition:opacity .45s var(--ease)}
.scene .m-stock{opacity:0}
.scene[data-room="breakroom"] .m-stock[data-room="breakroom"],
.scene[data-room="lounge"] .m-stock[data-room="lounge"],
.scene[data-room="essentials"] .m-stock[data-room="essentials"]{opacity:1}
@media (prefers-reduced-motion:no-preference){
  .js .m-stock .pk{transform-box:fill-box;transform-origin:50% 100%;transition:transform .5s var(--ease),opacity .4s;transition-delay:calc(var(--i) * 18ms + 120ms)}
  .js .scene .m-stock:not([data-active]) .pk{transform:translateY(-1.5px) scale(.85);opacity:0}
}

/* dressing */
.d-cork{fill:#C9A77C} .d-paper{fill:#FBFAF6} .d-paper2{fill:#E6F0C2}
.d-clock{fill:var(--forest)} .d-clockface{fill:#FBFAF6} .d-hands{stroke:var(--forest);stroke-width:.8;stroke-linecap:round;fill:none}
.d-countertop{fill:#F4F2EC} .d-counter-edge{fill:#D9D5CB} .d-cab{fill:#B9C7BF} .d-cab-end{fill:#A3B3AA} .d-cab-top{fill:#C9D4CD}
.d-door{fill:none;stroke:rgba(23,61,53,.25);stroke-width:.5}
.d-coffee{fill:#2D3431} .d-coffee-top{fill:#45504B} .d-coffee-side{fill:#1F2523}
.d-mug{fill:#FBFAF6} .d-mug-side{fill:#DCD8CE}
.d-leg{fill:#6E756F}
.d-tabletop{fill:#A98760} .d-tabletop-top{fill:#E9DCC7}
.d-stool{fill:#2F5C52}
.d-frame{fill:#FBFAF6} .d-sky{fill:#CFE3E8} .d-hills{fill:#A9C79B} .d-sill{fill:#E8E2D6}
.d-art{fill:#E9D9BE} .d-art-sun{fill:#E9B949} .d-art-hill{fill:#5E8C6A}
.d-lightpool{fill:rgba(255,236,190,.45);mix-blend-mode:screen}
.d-rug{fill:#B8C7A6} .d-rug-in{fill:none;stroke:rgba(246,243,236,.6);stroke-width:.8}
.d-chair-top{fill:#5F8A78} .d-chair-front{fill:#4C7464} .d-chair-side{fill:#3E6153} .d-cushion{fill:#7AA390} .d-cushion-side{fill:#5F8A78}
.d-wood{fill:#A07A52} .d-wood-top{fill:#C49B6C} .d-wood-side{fill:#8A6743}
.d-shade{fill:#F8EBCB} .d-shade-side{fill:#E9D7AE}
.d-pot{fill:#C46F4F} .d-pot-top{fill:#5B3B2A} .d-pot-side{fill:#A95B3F}
.d-pot2{fill:#E9E5DB} .d-pot2-side{fill:#D3CDBF}
.d-leaf{fill:#4E8A5E} .d-stem{fill:none;stroke:#3D6E4A;stroke-width:.8;stroke-linecap:round}
.d-sign{fill:var(--forest)} .d-signtext{font-family:var(--display);font-weight:800;font-size:5.4px;fill:var(--porcelain)}
.d-hook{fill:#8E948D} .d-coat{fill:#B66A4F}
.d-plate{fill:#FBFAF6} .d-plate-line{fill:rgba(23,61,53,.35)}
.d-tote{fill:#D9C39A} .d-tote-top{fill:#E8D6B2} .d-tote-side{fill:#C4AC80}
.d-outlet{fill:#FBFAF6;stroke:rgba(23,61,53,.25);stroke-width:.3} .d-outlet-slot{fill:#6E756F}

/* caption + controls */
.scene-caption{padding:18px 4px 0}
.scene-controls{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border-radius:calc(var(--r-ctl) + 6px);background:var(--porcelain-2);box-shadow:inset 0 0 0 1px var(--line);width:max-content;max-width:100%}
.seg{appearance:none;border:0;background:transparent;min-height:44px;padding:0 16px;border-radius:var(--r-ctl);font-weight:600;font-size:.98rem;cursor:pointer;color:var(--forest);transition:background-color .25s}
.seg:hover{background:rgba(23,61,53,.07)}
.seg[aria-pressed="true"]{background:var(--citrus);color:var(--forest-ink);box-shadow:0 1px 2px rgba(14,41,35,.18)}
html:not(.js) .scene-controls{display:none}
.scene-notes{margin-top:16px;min-height:5.2em}
.js .scene-note[hidden]{display:none}
html:not(.js) .scene-note{margin-bottom:12px}
.note-title{font-size:1.25rem;font-weight:800;margin-bottom:4px}
.scene-note p{max-width:56ch}
.scene-constant{margin-top:8px;font-size:.92rem;color:var(--sage);max-width:60ch}

/* ---------------- sections */
.section{padding:clamp(64px,8vw,120px) 0}
.section-tint{background:var(--porcelain-2)}
.section-head{max-width:640px;margin-bottom:clamp(32px,4vw,56px)}
.section-head h2{font-size:clamp(2.1rem,3.6vw,3.3rem)}
.section-head p{margin-top:14px;font-size:1.12rem;color:var(--sage)}
.band-forest{background:var(--forest);color:var(--on-forest);padding:clamp(64px,8vw,120px) 0;--pf-focus:var(--citrus)}
.band-forest .section-head p{color:var(--on-forest-2)}
.band-forest a{color:var(--on-forest)}

/* who handles what: the corner motif as the divider */
.split{display:grid;grid-template-columns:1fr 1fr;position:relative}
.split-col{padding:8px 0 32px}
.split-col + .split-col{padding-left:clamp(28px,4vw,64px);border-left:1px solid var(--line-forest)}
.split-col:first-child{padding-right:clamp(28px,4vw,64px)}
.split h3{font-size:1.7rem;margin-bottom:18px}
.ticks{list-style:none;padding:0;display:grid;gap:0}
.ticks li{position:relative;padding:12px 0 12px 32px;border-top:1px solid var(--line-forest)}
.ticks li::before{content:"";position:absolute;left:2px;top:19px;width:12px;height:12px;border-left:2px solid var(--on-forest);border-bottom:2px solid var(--on-forest)}
.band-forest mark.pf-todo{font-size:.78em}
.agreement{margin-top:clamp(32px,4vw,56px);padding:28px clamp(20px,3vw,36px);border-radius:var(--r-panel);background:var(--forest-2);box-shadow:inset 0 0 0 1px var(--line-forest)}
.agreement h3{font-size:1.4rem}
.agreement > p{margin-top:6px;color:var(--on-forest-2)}
.agreement-list{list-style:none;padding:0;margin-top:18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px 28px;font-size:.98rem}
.agreement-list li{padding-top:10px;border-top:1px solid var(--line-forest)}

/* steps */
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);counter-reset:none}
.step-art{border-radius:var(--r-panel);background:linear-gradient(180deg,var(--porcelain-2),#E8E2D5);box-shadow:inset 0 0 0 1px var(--line);padding:20px 16px 12px;margin-bottom:22px}
.vignette-svg{width:100%;height:auto}
.vignette-svg{--wallL:#E9E6DD;--wallR:#F1EEE6;--floor:#DCD8CC;--floorLine:rgba(23,61,53,.08);--cap:#FBFAF6;--slab:#CFC8B8;--slab2:#C2BAA8}
.vignette-svg .m-stock{opacity:1}
.v-tape{fill:none;stroke:var(--forest);stroke-width:1;stroke-dasharray:3 2}
.v-x{stroke:rgba(23,61,53,.5);stroke-width:.8}
.v-pin path{fill:var(--forest)} .v-pin-dot{fill:var(--porcelain)}
.v-crate{fill:#C49B6C} .v-crate-top{fill:#8A6743} .v-crate-side{fill:#A07A52}
.v-board{fill:#C49B6C} .v-clip{fill:#8E948D} .v-check{fill:var(--forest)} .v-line{fill:rgba(23,61,53,.4)}
.step h3{font-size:1.6rem;display:flex;align-items:baseline;gap:12px}
.step-n{font-size:1rem;font-family:var(--text);font-weight:700;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--forest);flex:none;transform:translateY(-3px)}
.step p{margin-top:10px;max-width:38ch}
.after{margin-top:clamp(48px,6vw,80px);padding-top:32px;border-top:1px solid var(--line)}
.after h3{font-size:1.5rem;max-width:30ch}
.after-list{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);margin-top:22px}
.after-list dt{font-weight:700}
.after-list dd{margin:4px 0 0;color:var(--sage)}
.after-exit{margin-top:28px;max-width:72ch}

/* see what fits */
.fits{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,64px);align-items:start}
.fits-title{font-size:1.7rem;margin-bottom:20px}
.fits-group{border:0;padding:0;margin:0 0 24px}
.fits-group legend{font-weight:700;padding:0;margin-bottom:10px}
.seg-row{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border-radius:calc(var(--r-ctl) + 6px);background:var(--porcelain);box-shadow:inset 0 0 0 1px var(--line);width:max-content;max-width:100%}
.seg-radio,.chip{position:relative;cursor:pointer}
.seg-radio input,.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg-radio span{display:flex;align-items:center;min-height:44px;padding:0 14px;border-radius:var(--r-ctl);font-weight:600;font-size:.96rem;transition:background-color .25s}
.seg-radio:hover span{background:rgba(23,61,53,.07)}
.seg-radio input:checked + span{background:var(--citrus);color:var(--forest-ink);box-shadow:0 1px 2px rgba(14,41,35,.18)}
.seg-radio input:focus-visible + span,.chip input:focus-visible + span{outline:3px solid var(--forest);outline-offset:2px}
.chip-row{display:flex;flex-wrap:wrap;gap:8px}
.chip span{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border-radius:999px;background:var(--porcelain);box-shadow:inset 0 0 0 1px rgba(23,61,53,.28);font-weight:600;font-size:.96rem;transition:background-color .25s,box-shadow .25s}
.chip span::before{content:"";width:16px;height:16px;border-radius:5px;box-shadow:inset 0 0 0 1.5px var(--forest);background:var(--porcelain);flex:none}
.chip input:checked + span{background:var(--citrus);color:var(--forest-ink);box-shadow:inset 0 0 0 1px rgba(14,41,35,.25)}
.chip input:checked + span::before{background:var(--forest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.6 2.5L12 5.5' fill='none' stroke='%23D7F279' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;box-shadow:none}
html:not(.js) .fits-controls fieldset{display:none}
.fits-explain{margin-top:4px;max-width:46ch;min-height:6.4em}
.fits-display{position:relative}
.fits-display .scene-tag{top:14px;left:14px}
.cabinet{border-radius:var(--r-panel);padding:56px clamp(14px,2.4vw,28px) 22px;background:linear-gradient(180deg,#FBFAF6,#F1EDE3);box-shadow:inset 0 0 0 1px var(--line),inset 0 -40px 60px -50px rgba(14,41,35,.25),0 30px 60px -44px rgba(14,41,35,.4)}
.shelf{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0 clamp(8px,1.6vw,18px);min-height:420px;align-content:start}
.fit-item{display:flex;flex-direction:column;align-items:center;justify-content:end;text-align:center;padding:14px 4px 12px;position:relative;min-height:138px}
.fit-item::after{content:"";position:absolute;left:-12px;right:-12px;bottom:0;height:8px;border-radius:2px;background:linear-gradient(180deg,var(--metal-1),var(--metal-2));box-shadow:0 6px 10px -6px rgba(14,41,35,.4)}
.fit-pk{width:auto;height:78px;aspect-ratio:auto;overflow:visible;filter:drop-shadow(0 4px 4px rgba(14,41,35,.16))}
.fit-name{margin-top:8px;font-weight:700;font-size:.92rem;line-height:1.2}
.fit-need{font-size:.78rem;color:var(--sage);line-height:1.2;margin-top:2px;margin-bottom:6px}
.fit-item.is-new{animation:fit-in .45s var(--ease) both}
@keyframes fit-in{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:none}}
.shelf-empty{grid-column:1/-1;align-self:center;text-align:center;color:var(--sage);padding:80px 16px}
.nojs-note{margin-top:12px;font-size:.9rem;color:var(--sage)}
.js .nojs-note{display:none}
.qualifiers{margin-top:clamp(32px,4vw,48px);display:grid;grid-template-columns:repeat(3,1fr);gap:20px 40px;font-size:.95rem;color:var(--sage);border-top:1px solid var(--line);padding-top:20px}

/* faq */
.faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px,4vw,64px);align-items:start}
.faq-grid .section-head{position:sticky;top:110px}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:20px 44px 20px 0;font-family:var(--display);font-weight:700;font-size:1.32rem;line-height:1.25;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:2px solid var(--forest);border-bottom:2px solid var(--forest);transform:translateY(-70%) rotate(45deg);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq summary:hover{color:var(--forest-2)}
.faq details p{padding:0 0 20px;max-width:64ch}
.faq details p + p{margin-top:-8px}
.faq-items{font-size:.95rem;color:var(--sage)}
.faq-cat{font-weight:700;color:var(--forest)}

/* about */
.about-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,64px);align-items:start}
.about h2{font-size:clamp(2.1rem,3.6vw,3.3rem);margin-bottom:18px}
.about p + p{margin-top:14px}
.about-grid > div:first-child p{max-width:60ch}
.contact-card{padding:28px;border-radius:var(--r-panel);background:var(--porcelain);box-shadow:inset 0 0 0 1px var(--line)}
.contact-card h3{font-size:1.4rem;margin-bottom:10px}
.contact-card p + p{margin-top:6px}
.contact-help{margin-top:18px!important;padding-top:16px;border-top:1px solid var(--line)}

/* request */
.request-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.request h2{font-size:clamp(2.3rem,4vw,3.6rem)}
.next{margin-top:28px;display:grid;gap:0}
.next > div{padding:14px 0;border-top:1px solid var(--line-forest)}
.next dt{font-weight:700}
.next dd{margin:4px 0 0;color:var(--on-forest-2)}
.form{background:var(--porcelain);color:var(--forest);border-radius:var(--r-panel);padding:clamp(22px,3vw,40px);display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;--pf-focus:var(--forest)}
.form .field-wide{grid-column:1/-1}
.form-notice,.form-next,.form .btn,.form .pf-form-status{grid-column:1/-1}
.form-next{font-size:.95rem}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-weight:700;font-size:.98rem}
.hint{font-weight:400;color:var(--sage);font-size:.9rem}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:12px 14px;border-radius:var(--r-sm);border:1px solid rgba(23,61,53,.38);background:#FFFEFB;font-size:1rem;line-height:1.4}
.field textarea{min-height:96px;resize:vertical}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--forest)}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--forest);outline-offset:1px;border-color:var(--forest)}
.field input:user-invalid,.field select:user-invalid{border-color:#B3261E;box-shadow:0 0 0 1px #B3261E}
.form-notice{font-size:.9rem;color:var(--sage);padding:12px 14px;border-radius:var(--r-sm);background:var(--porcelain-2)}
.form .btn{justify-self:start}
.pf-form-status{border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--porcelain-2);font-weight:600}
.pf-form-status[data-state="error"],.pf-form-status[data-state="offline"]{background:#FBEAE7;color:#7A1C15}
.pf-form-status[data-state="ok"]{background:#E3F1E7;color:#14532D}
.pf-form-status a{color:inherit}

/* footer */
.site-footer{background:var(--forest-ink);color:var(--on-forest);padding:48px 0 56px;--pf-focus:var(--citrus)}
.footer-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:start}
.wordmark-foot{color:var(--on-forest)}
.foot-small{margin-top:12px;font-size:.9rem;color:var(--on-forest-2);max-width:44ch}
.foot-links{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,auto);gap:10px 32px;justify-content:end}
.foot-links a{color:var(--on-forest);font-size:.96rem}

/* ---------------- responsive */
@media (max-width:1100px){
  .agreement-list{grid-template-columns:repeat(2,1fr)}
  .site-nav a{padding:10px 8px}
}
@media (max-width:980px){
  .hero-grid,.fits,.faq-grid,.about-grid,.request-grid,.footer-grid{grid-template-columns:1fr}
  .faq-grid .section-head{position:static}
  .foot-links{justify-content:start}
  .hero-copy{max-width:640px}
}
@media (max-width:860px){
  .header-row{flex-wrap:wrap;gap:0 16px;min-height:0;padding-top:12px}
  .header-help{order:1;margin-left:auto;padding-right:0;border-right:0}
  .site-nav{order:3;width:calc(100% + 2 * var(--gutter));margin:6px calc(-1 * var(--gutter)) 0;overflow-x:auto;scrollbar-width:none}
  .site-nav::-webkit-scrollbar{display:none}
  .site-nav{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .site-nav ul{padding:0 var(--gutter) 10px;width:max-content}
  .site-nav .nav-cta{margin-left:4px}
  html{scroll-padding-top:120px}
}
@media (max-width:720px){
  body{font-size:1rem}
  .split{grid-template-columns:1fr}
  .split-col + .split-col{padding-left:0;border-left:0;padding-top:24px}
  .split-col:first-child{padding-right:0}
  .steps,.after-list,.qualifiers{grid-template-columns:1fr}
  .agreement-list{grid-template-columns:1fr}
  .form{grid-template-columns:1fr}
  .form .btn{justify-self:stretch}
  .shelf{grid-template-columns:repeat(3,1fr);min-height:0}
  .fit-pk{height:62px}
  .fit-item{min-height:120px}
  .foot-links{grid-template-columns:1fr 1fr}
  /* mobile: crisp static scene, no camera moves */
  .scene-svg{transform:none!important;transition:none}
  .stage{padding:24px 6px 4px}
  .scene-controls,.seg-row{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:4px;padding:4px}
  .seg{padding:6px 6px;font-size:.9rem;line-height:1.2;min-height:52px}
  .seg-radio span{justify-content:center;text-align:center;padding:6px 6px;font-size:.9rem;line-height:1.2;min-height:52px;height:100%}
  .step{display:grid;grid-template-columns:132px 1fr;gap:4px 16px;align-items:start}
  .step-art{grid-row:span 2;margin:0;padding:8px 4px 4px;border-radius:18px}
  .step h3{font-size:1.35rem}
  .step p{margin-top:6px}
  .steps{gap:28px}
}
@media (prefers-reduced-motion:reduce){
  .scene-svg{transform:none!important;transition:none!important}
  .fit-item.is-new{animation:none}
}

/* ---------------- subpages */
.page-hero{padding:clamp(40px,6vw,88px) 0 clamp(24px,3vw,40px)}
.page-hero h1{font-size:clamp(2.4rem,4.6vw,4.2rem)}
.page-hero .lede{max-width:52ch}
.prose{max-width:72ch}
.prose h2{font-size:clamp(1.6rem,2.4vw,2.1rem);margin:48px 0 12px}
.prose h3{font-size:1.3rem;margin:28px 0 8px}
.prose p + p,.prose p + ul,.prose ul + p{margin-top:12px}
.prose ul{padding-left:1.2em}
.prose li + li{margin-top:6px}
.draft-banner{background:var(--citrus);color:var(--forest-ink);padding:14px 0;font-weight:700}
.draft-banner p{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.page-body{padding-bottom:clamp(64px,8vw,120px)}

/* machine help */
.help-hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,64px);align-items:end}
.help-contact{padding:24px 28px;border-radius:var(--r-panel);background:var(--forest);color:var(--on-forest);--pf-focus:var(--citrus)}
.help-contact h2{font-size:1.35rem;margin-bottom:10px}
.help-contact p + p{margin-top:6px}
.help-contact a{color:var(--on-forest)}
.help-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start;padding-top:clamp(16px,2vw,24px)}
.help-h{font-size:clamp(1.6rem,2.4vw,2.1rem);margin-bottom:18px}
.help-steps .help-h + .help-step{margin-top:0}
.help-step{padding:18px 0;border-top:1px solid var(--line)}
.help-step h3{font-size:1.3rem;margin-bottom:6px}
.help-step + .help-h{margin-top:40px}
.label-sample{margin:18px 0 0;max-width:320px}
.label-sample svg{width:100%;height:auto;filter:drop-shadow(0 10px 16px rgba(14,41,35,.12))}
.label-sample figcaption{margin-top:10px;font-size:.9rem;color:var(--sage)}
.form-help{box-shadow:inset 0 0 0 1px var(--line),0 30px 60px -44px rgba(14,41,35,.35);background:#FBFAF6}
.page-help .faq summary{font-size:1.18rem}

/* pilot overview (screen) */
.overview-tools{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:28px;padding-bottom:20px}
.overview-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.js .print-hint{display:none}
.print-hint{font-size:.95rem;color:var(--sage)}
.sheet{max-width:880px;margin:0 auto clamp(48px,6vw,96px);background:#FFFEFB;border-radius:18px;padding:clamp(24px,5vw,64px);box-shadow:inset 0 0 0 1px var(--line),0 40px 80px -50px rgba(14,41,35,.45)}
.sheet-head{display:grid;gap:18px;padding-bottom:24px;border-bottom:2px solid var(--forest)}
.sheet-head h1{font-size:clamp(2rem,4vw,2.9rem)}
.sheet-sub{margin-top:6px;color:var(--sage)}
.sheet-block{padding-top:20px}
.sheet-block h2{font-size:1.25rem;margin-bottom:6px}
.sheet-block ul{padding-left:1.1em}
.sheet-block li + li{margin-top:2px}
.sheet-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.sheet-note{margin-top:20px;padding:16px 20px 18px;border-radius:12px;background:var(--porcelain-2)}
.sheet-note h2{margin-top:0}
.sheet-foot{margin-top:28px;padding-top:14px;border-top:1px solid var(--line);font-size:.88rem;color:var(--sage)}
@media (max-width:980px){.help-hero,.help-grid{grid-template-columns:1fr}}
@media (max-width:720px){.sheet-cols{grid-template-columns:1fr}.sheet{border-radius:0;margin-left:0;margin-right:0;padding:24px var(--gutter)}}

@media print{
  @page{size:letter;margin:.55in}
  html,body{background:#fff!important}
  body{font-size:10.5pt;line-height:1.4;color:#000}
  .site-header,.site-footer,.pf-skip,.overview-tools,.draft-banner{display:none!important}
  .sheet{box-shadow:none;border-radius:0;padding:0;margin:0;max-width:none;background:#fff}
  .sheet-head{grid-template-columns:auto 1fr;align-items:end;border-bottom-color:#173D35}
  .sheet-head h1{font-size:22pt;color:#173D35}
  .wordmark{color:#173D35}
  .sheet-block{padding-top:10pt;break-inside:avoid}
  .sheet-block h2{font-size:12.5pt;color:#173D35}
  .sheet-note{background:#F3F0E8;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .sheet-cols{grid-template-columns:1fr 1fr!important}
  mark.pf-todo{background:#ffe066;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  a{color:inherit;text-decoration:none}
}
