/* Fonts hosted locally (SIL OFL 1.1, see LISANSLAR.md); no request to Google Fonts. */
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url(fonts/archivo-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url(fonts/archivo-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Big Shoulders';
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src: url(fonts/big-shoulders-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Big Shoulders';
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src: url(fonts/big-shoulders-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Big Shoulders Stencil';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/big-shoulders-stencil-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Big Shoulders Stencil';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/big-shoulders-stencil-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Layout concept: one pinned WebGL world on the right, a narrow editorial column on the left that the story scrolls through; afterwards a spec sheet and an index, set like a port's paperwork. */
:root{
  --fog:#dfe5e2;      /* North Sea haze: page ground */
  --paper:#f2f4f1;    /* form & sheet surface */
  --ink:#0f1d1b;      /* text */
  --ink-2:#3a4946;    /* secondary text */
  --rule:#b9c3bf;     /* hairlines */
  --teal:#0b7f58;     /* Xontainer green */
  --teal-deep:#065a3e;
  --signal:#e8601c;   /* the container, ADR orange; never as small text on light */
  --night:#0d1a1f;
  --f-display:"Big Shoulders","Big Shoulders Display","Arial Narrow",Impact,sans-serif;
  --f-stencil:"Big Shoulders Stencil","Big Shoulders Stencil Display","Big Shoulders","Arial Narrow",Impact,sans-serif;
  --f-body:"Archivo","Helvetica Neue",Arial,sans-serif;
  --gut:max(16px, env(safe-area-inset-left, 0px));
  --gut-r:max(16px, env(safe-area-inset-right, 0px));
  --veil:#dfe5e2;
  --stage-ink:#0f1d1b;
  color-scheme: light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--fog);color:var(--ink);font:400 1.0625rem/1.55 var(--f-body);font-variation-settings:"wdth" 100;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--fog);padding:.6rem 1rem;z-index:100}
.skip:focus{left:16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ph{font-style:normal;background:repeating-linear-gradient(-45deg,rgba(232,96,28,.16) 0 4px,transparent 4px 8px);border-bottom:1.5px dashed var(--signal);padding:0 .15em;white-space:nowrap}
.wide{font-variation-settings:"wdth" 125;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:650}
.num{font-variant-numeric:tabular-nums}

/* ---------- header ---------- */
.top{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;gap:clamp(12px,2.4vw,40px);padding:calc(14px + env(safe-area-inset-top,0px)) var(--gut-r) 14px var(--gut);pointer-events:none}
.top>*{pointer-events:auto}
.top::before{content:"";position:absolute;inset:0 0 -40px;z-index:-1;pointer-events:none;background:linear-gradient(var(--veil) 0%,color-mix(in srgb,var(--veil) 70%,transparent) 55%,transparent);transition:opacity .4s}
.top{transition:transform .45s cubic-bezier(.7,0,.2,1);color:var(--stage-ink)}
.top .mark{color:inherit}.top .mark b{color:var(--stage-accent,#0b7f58)}.top .mark small,.top .lang a{color:inherit;opacity:.75}.top .lang a[aria-current]{opacity:1;box-shadow:inset 0 -2px 0 currentColor}.top .btn:not(.solid){--b:var(--stage-ink)}
.top.solid::before{background:var(--fog);inset:0}
.top.hide{transform:translateY(-110%)}
.mark{font:900 2.25rem/1 var(--f-display);letter-spacing:.01em;text-decoration:none;color:var(--ink);display:flex;align-items:baseline}
.mark b{font-weight:900;color:var(--teal)}
.mark small{font:600 .8rem/1 var(--f-body);font-variation-settings:"wdth" 125;letter-spacing:.08em;margin-left:.6rem;color:var(--ink-2);text-transform:uppercase}
.nav{display:flex;gap:1.6rem;font-size:1.1rem;font-weight:550;margin-left:1.2rem}
.nav a{text-decoration:none;position:relative;padding:.3rem 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--signal);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.7,0,.2,1)}
.nav a:hover::after{transform:scaleX(1);transform-origin:left}
.top .end{margin-left:auto;display:flex;align-items:center;gap:.9rem}
.lang{display:flex;gap:.2rem;font-size:.98rem;font-weight:650}
.lang a{text-decoration:none;padding:.3rem .35rem;color:var(--ink-2)}
.lang a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.btn{--b:var(--ink);display:inline-flex;align-items:center;gap:.6rem;font:650 1.06rem/1 var(--f-body);text-decoration:none;padding:.9rem 1.2rem;border:1.5px solid var(--b);color:var(--b);background:transparent;position:relative;overflow:hidden;isolation:isolate;cursor:pointer}
.btn::before{content:"";position:absolute;inset:0;background:var(--b);transform:translateY(101%);transition:transform .38s cubic-bezier(.7,0,.2,1);z-index:-1}
.btn:hover{color:var(--fog)}
.btn:hover::before{transform:none}
.btn.solid{background:var(--ink);color:var(--fog)}
.btn.solid::before{background:var(--signal)}
.btn.solid:hover{color:var(--ink)}
.btn .arr{display:inline-block;transition:transform .3s}
.btn:hover .arr{transform:translateX(4px)}
.menu{display:none}

/* ---------- journey (pinned stage) ---------- */
#journey{position:relative}
.stage{position:sticky;top:0;height:100vh;height:100svh;margin-bottom:-100vh;margin-bottom:-100svh;overflow:hidden;background:#cdd6d3 url(haven.webp) center/cover no-repeat;z-index:0}
.stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1.2s ease}
.stage.ready canvas{opacity:1}
.stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--veil) 0%,color-mix(in srgb,var(--veil) 78%,transparent) 26%,transparent 50%);transition:background .6s}
.grain{position:absolute;inset:-50%;pointer-events:none;opacity:.07;z-index:2;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}

.loader{position:absolute;left:var(--gut);font-size:1rem;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;align-items:center;gap:.8rem;color:var(--ink);transition:opacity .6s}
.loader .bar{width:9rem;height:3px;background:color-mix(in srgb,var(--ink) 18%,transparent);position:relative;overflow:hidden}
.loader .bar i{position:absolute;inset:0;background:var(--signal);transform-origin:left;transform:scaleX(var(--p,0));transition:transform .2s}
.stage.ready .loader{opacity:0;pointer-events:none}
.stage.ready.loading2 .loader{opacity:1}
.stage.post .grain{display:none}
html:not(.js) .loader,html:not(.js) .rail,html:not(.js) .pin{display:none}

/* consignment readout */
.tag{position:absolute;right:var(--gut-r);top:calc(84px + env(safe-area-inset-top,0px));z-index:5;width:min(24rem,36vw);background:var(--night);color:#e4ebe8;padding:1.1rem 1.25rem 1.2rem;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}
.tag::before{content:"";position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(232,96,28,.25)}
.tag dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.45rem 1rem;font-size:1.07rem;line-height:1.3}
.tag dt{color:#a3b8b3;font-variation-settings:"wdth" 125;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;font-weight:650;padding-top:.22rem}
.tag dd{margin:0;font-variant-numeric:tabular-nums;min-width:0}
.tag .status{font:800 1.8rem/1 var(--f-display);letter-spacing:.01em;margin:0 0 .85rem;color:#fff;text-transform:uppercase}
.tag .ph{border-color:#f39a62;background:repeating-linear-gradient(-45deg,rgba(232,96,28,.25) 0 4px,transparent 4px 8px)}

/* route rail = the actual order of the chain */
.rail{position:absolute;right:var(--gut-r);top:calc(var(--tag-h,300px) + 24px + env(safe-area-inset-top,0px));bottom:calc(96px + env(safe-area-inset-bottom,0px) + var(--onay-h,0px));z-index:5;display:grid;grid-template-rows:repeat(9,1fr);justify-items:end;align-items:center;pointer-events:auto}
.rail::before{content:"";position:absolute;right:6px;top:0;bottom:0;width:2px;background:color-mix(in srgb,var(--stage-ink) 30%,transparent)}
.rail .fill{position:absolute;right:6px;top:0;width:2px;background:var(--signal);height:calc(var(--rp,0) * 100%)}
.rail button{all:unset;cursor:pointer;position:relative;padding-right:28px;display:flex;align-items:stretch;font-size:.95rem;font-weight:650;font-variation-settings:"wdth" 110;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;z-index:1;transition:transform .3s}
.rail button::after{content:"";position:absolute;right:1px;top:50%;margin-top:-6px;width:9px;height:9px;background:var(--night);border:2px solid #e4ebe8;transform:rotate(45deg)}
.rail button span,.rail button .t{background:rgba(13,26,31,.8);color:#e4ebe8;padding:.3rem .45rem;line-height:1.1}
.rail button span{font-family:var(--f-stencil);font-weight:800;font-size:1.02rem;letter-spacing:0;padding-right:.2rem}
.rail button .t{font-weight:650;padding-left:.3rem}
.rail button:hover{transform:translateX(-4px)}
.rail button.on::after{background:var(--signal);border-color:var(--signal)}
.rail button[aria-current] span,.rail button[aria-current] .t{background:var(--signal);color:var(--ink)}
.rail button:focus-visible{outline:2px solid var(--signal);outline-offset:2px}

/* projected labels */
.pin{position:absolute;left:0;top:0;z-index:4;pointer-events:none;transform:translate(-50%,-100%);opacity:0;transition:opacity .4s;white-space:nowrap}
.pin span{display:block;background:var(--ink);color:var(--fog);font:650 .95rem/1 var(--f-body);font-variation-settings:"wdth" 112;text-transform:uppercase;letter-spacing:.04em;padding:.5rem .7rem}
.pin::after{content:"";display:block;width:1.5px;height:26px;background:var(--ink);margin:0 auto}
.pin.sig span{background:var(--signal);color:var(--ink)}
.pin.sig::after{background:var(--signal)}
.pin.dest span{background:transparent;color:#ffe9d8;font:800 1.9rem/1 var(--f-display);letter-spacing:.02em;padding:0;text-shadow:0 2px 12px rgba(0,0,0,.55)}
.pin.dest::after{height:12px;width:12px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 6px rgba(232,96,28,.28)}
.pin.show{opacity:1}

/* chapters */
.chapters{position:relative;z-index:3}
.chap{min-height:135vh;min-height:135svh;display:flex;align-items:center;padding:7rem var(--gut-r) 7rem var(--gut)}
.chap .col{width:min(31rem,40vw);color:var(--stage-ink)}
.top.solid{--stage-ink:#0f1d1b}
.chap .code{display:flex;align-items:baseline;gap:.8rem;margin:0 0 1.1rem}
.chap .code b{font:800 3.6rem/.8 var(--f-stencil);color:var(--signal)}
.chap .code span{font-size:.9rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.06em;text-transform:uppercase}
.chap h2{font:800 clamp(2.4rem,4.4vw,4.4rem)/.9 var(--f-display);text-transform:uppercase;letter-spacing:.005em;margin:0 0 1.1rem;text-wrap:balance}
.chap p{margin:0 0 1rem;max-width:30rem;font-size:1.06rem}
.chap .terms{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.2rem 0 0;padding:0;list-style:none}
.chap .terms li{font-size:.74rem;font-weight:650;font-variation-settings:"wdth" 118;letter-spacing:.04em;text-transform:uppercase;border:1.5px solid currentColor;padding:.32rem .55rem}

.hero{min-height:100vh;min-height:100svh;align-items:flex-end;padding-bottom:clamp(7.5rem,15vh,10rem)}
.hero .col{width:min(40rem,46vw)}
.kicker{font-size:.8rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.07em;text-transform:uppercase;margin:0 0 1.2rem;display:flex;gap:1rem;flex-wrap:wrap}
.kicker span+span::before{content:"·";margin-right:1rem;color:var(--signal)}
h1{font:900 clamp(3.1rem,6.3vw,7.4rem)/.84 var(--f-display);text-transform:uppercase;letter-spacing:-.005em;margin:0 0 1.5rem;text-wrap:balance}
h1 .l{display:block;overflow:hidden;padding-bottom:.04em}
h1 .l>span{display:inline-block}
h1 em{font-style:normal;color:var(--teal)}
h1 .stencil{font-family:var(--f-stencil);color:var(--signal)}
.lead{font-size:1.12rem;max-width:32rem;margin:0 0 1.6rem}
.ctas{display:flex;gap:.7rem;flex-wrap:wrap}
.cue{display:inline-flex;align-items:center;gap:.8rem;margin-top:2rem;font-size:1.06rem;font-weight:600}
.cue i{width:3rem;height:1.5px;background:currentColor;position:relative;overflow:hidden}
.cue i::after{content:"";position:absolute;top:0;left:-40%;height:100%;width:40%;background:var(--signal);animation:drip 1.8s cubic-bezier(.6,0,.3,1) infinite}
@keyframes drip{to{left:100%}}

/* ---------- after the journey ---------- */
.band{position:relative;z-index:3;background:var(--fog);padding:clamp(5rem,10vw,9rem) var(--gut-r) clamp(5rem,10vw,9rem) var(--gut)}
.wrap{max-width:84rem;margin:0 auto}
.sec-h{font:800 clamp(2.6rem,6vw,6rem)/.88 var(--f-display);text-transform:uppercase;margin:0;text-wrap:balance}

/* spec sheet */
.spec{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.spec .intro p{max-width:28rem;color:var(--ink-2)}
.spec figure{margin:2rem 0 0;position:relative}
.spec figure img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.9)}
.spec figcaption{font-size:.78rem;color:var(--ink-2);margin-top:.6rem}
.sheet{border-top:3px solid var(--ink);margin:0}
.sheet div{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--rule);align-items:baseline}
.sheet dt{font-size:.74rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.sheet dd{margin:0;font:700 clamp(1.4rem,2.4vw,2.1rem)/1.05 var(--f-display);text-transform:uppercase;letter-spacing:.01em;min-width:0}
.sheet dd small{display:block;font:400 .85rem/1.45 var(--f-body);text-transform:none;color:var(--ink-2);margin-top:.3rem;letter-spacing:0}
.sheet .ph{font-family:inherit}
.asof{font-size:.8rem;color:var(--ink-2);margin-top:1rem}

/* services index */
.dark{background:var(--night);color:#e4ebe8}
.dark .sec-h{color:#fff}
.idx-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:3rem}
.idx-head p{max-width:26rem;color:#a9bab5;margin:0}
.idx{list-style:none;margin:0;padding:0;border-top:1px solid #2c3d40}
.idx li{border-bottom:1px solid #2c3d40}
.idx a{display:grid;grid-template-columns:4.5rem minmax(0,1.3fr) minmax(0,1fr) 2rem;gap:1.5rem;align-items:center;padding:1.6rem 0;text-decoration:none;position:relative}
.idx .n{font:800 1.6rem/1 var(--f-stencil);color:#5f7a75;transition:color .3s}
.idx h3{margin:0;font:800 clamp(2rem,4.6vw,4.4rem)/.9 var(--f-display);text-transform:uppercase;transition:transform .5s cubic-bezier(.2,.8,.2,1),color .3s;transform-origin:left}
.idx p{margin:0;color:#a9bab5;font-size:.98rem}
.idx .go{font-size:1.4rem;transition:transform .35s}
.idx a:hover h3,.idx a:focus-visible h3{transform:translateX(.6rem);color:var(--signal)}
.idx a:hover .n{color:#fff}
.idx a:hover .go{transform:translateX(6px) rotate(-45deg)}
.peek{position:fixed;left:0;top:0;width:min(22rem,30vw);aspect-ratio:4/3;pointer-events:none;z-index:30;opacity:0;transform:translate(-50%,-50%) scale(.85) rotate(-3deg);transition:opacity .25s,transform .4s cubic-bezier(.2,.8,.2,1);overflow:hidden;background:#000}
.peek.on{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-3deg)}
.peek img{width:100%;height:100%;object-fit:cover}

/* location */
.loc{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.map{background:var(--paper);border:1px solid var(--rule);overflow:hidden}
.map svg{display:block;width:100%;height:auto}
.addr{font-style:normal;font:700 clamp(1.7rem,3vw,2.6rem)/1 var(--f-display);text-transform:uppercase;margin:1.4rem 0 1rem}
.loc .nap{display:grid;gap:.25rem;margin:0 0 1.6rem}
.offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:3px solid var(--ink);margin-top:2rem}
.offices div{padding:1rem 1rem 0 0}
.offices b{display:block;font:800 1.5rem/1 var(--f-display);text-transform:uppercase}
.offices span{font-size:.88rem;color:var(--ink-2)}
.copy{all:unset;cursor:pointer;font-size:.78rem;font-weight:650;border-bottom:1.5px solid var(--teal);color:var(--teal);margin-left:.5rem}

/* portal proposal */
.portal{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.wms{background:var(--night);color:#d7e2de;font-size:.82rem;padding:1.2rem;font-variant-numeric:tabular-nums;overflow-x:auto}
.wms table{width:100%;border-collapse:collapse;min-width:30rem}
.wms th{text-align:left;color:#7e938e;font-weight:650;font-variation-settings:"wdth" 120;text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;padding:.5rem .6rem;border-bottom:1px solid #2c3d40}
.wms td{padding:.6rem;border-bottom:1px solid #1d2d31}
.wms .st{display:inline-block;padding:.15rem .45rem;font-size:.7rem;font-weight:650}
.st.ok{background:#1f4a40;color:#9be0cb}.st.chk{background:#5a3214;color:#ffc79f}.st.out{background:#2d3a3e;color:#cfd8d5}
.wms .bar{display:flex;justify-content:space-between;margin-bottom:.8rem;color:#7e938e;font-size:.72rem}
.label{display:inline-block;font-size:.72rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.06em;text-transform:uppercase;border:1.5px solid var(--signal);color:var(--ink);padding:.3rem .55rem;margin-bottom:1rem}

/* FAQ as an open Q/A sheet */
.faq{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,5rem)}
.faq dl{margin:0}
.faq dt{font:800 clamp(1.4rem,2.2vw,1.9rem)/1.02 var(--f-display);text-transform:uppercase;padding-top:1.4rem;border-top:1px solid var(--rule)}
.faq dd{margin:.6rem 0 1.4rem;color:var(--ink-2);max-width:40rem}
.faq dl > div:first-child dt{border-top:3px solid var(--ink)}

/* quote = CMR-like consignment form */
.quote{background:var(--teal-deep);color:#eaf2ef}
.quote .sec-h{color:#fff}
.cmr{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));border:1.5px solid #8fb9ad;margin-top:2.5rem;background:#123f37}
.box{grid-column:span 6;border:1px solid #3f7266;padding:.7rem .9rem .9rem;display:flex;flex-direction:column;gap:.35rem;min-width:0;position:relative}
.box.s4{grid-column:span 4}.box.s3{grid-column:span 3}.box.s12{grid-column:span 12}.box.s8{grid-column:span 8}
.box label{font-size:.68rem;font-weight:650;font-variation-settings:"wdth" 120;letter-spacing:.05em;text-transform:uppercase;color:#a8cbc1;display:flex;gap:.5rem;align-items:baseline}
.box label b{font:800 1rem/1 var(--f-stencil);color:#f39a62;letter-spacing:0}
.box input,.box select,.box textarea{font:500 1.05rem/1.3 var(--f-body);color:#fff;background:transparent;border:0;border-bottom:1.5px solid #5d8f83;padding:.35rem 0;width:100%;border-radius:0}
.box select option{color:#000}
.box input::placeholder,.box textarea::placeholder{color:#7fa79c}
.box input:focus,.box select:focus,.box textarea:focus{outline:none;border-bottom-color:var(--signal)}
.qfoot{display:flex;flex-wrap:wrap;gap:1.4rem;align-items:center;justify-content:space-between;margin-top:1.4rem}
.qfoot p{margin:0;color:#a8cbc1;font-size:.9rem;max-width:36rem}
.quote .btn{--b:#fff}
.quote .btn.solid{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.quote .btn.solid::before{background:#fff}
.quote .btn.solid:hover{color:var(--ink)}
.sent{margin-top:1rem;font-weight:650;color:#ffc79f}

/* careers + footer */
.careers{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;border-top:3px solid var(--ink);padding-top:2rem}
.careers h2{font:800 clamp(2rem,4vw,3.6rem)/.9 var(--f-display);text-transform:uppercase;margin:0 0 .5rem}
.careers p{margin:0;color:var(--ink-2)}
footer{position:relative;z-index:3;background:var(--night);color:#a9bab5;padding:4rem var(--gut-r) calc(2.5rem + env(safe-area-inset-bottom,0px)) var(--gut);font-size:.9rem}
footer .grid,footer .legal{max-width:84rem;margin-inline:auto}
footer .grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
footer .mark b{color:#4ac4a9}
footer .mark{color:#fff;font-size:3.4rem}
footer h3{font-size:.7rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.07em;text-transform:uppercase;color:#6f8a84;margin:0 0 .8rem}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
footer a{text-decoration:none}
footer a:hover{color:#fff}
footer .credits{max-width:84rem;margin:1rem auto 0;font-size:.74rem;color:#7f9590;line-height:1.5}
footer .credits a{text-decoration:underline}
footer .legal{margin-top:3rem;margin-inline:auto;padding-top:1.2rem;border-top:1px solid #253538;display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.78rem}

/* ---------- responsive ---------- */
@media (max-width: 1000px){
  .nav{display:none}
  .tag{width:min(20rem,44vw)}
}
@media (max-width: 760px){
  .top{padding-top:calc(10px + env(safe-area-inset-top,0px));padding-bottom:10px;background:linear-gradient(var(--fog),color-mix(in srgb,var(--fog) 0%,transparent))}
  .mark small,.lang,.top .end .btn:not(.solid){display:none}
  .top .end .btn.solid{padding:.7rem .9rem;font-size:1rem}
  .mark{font-size:2rem}
  .stage::after{background:linear-gradient(0deg,var(--veil) 0%,color-mix(in srgb,var(--veil) 85%,transparent) 30%,transparent 58%)}
  .tag{top:auto;bottom:calc(64px + env(safe-area-inset-bottom,0px));right:var(--gut-r);left:auto;width:auto;max-width:60vw;padding:.6rem .8rem;display:none}
  .rail{top:calc(66px + env(safe-area-inset-top,0px));bottom:auto;left:var(--gut);right:var(--gut-r);grid-template-rows:none;grid-template-columns:repeat(9,1fr);justify-items:start;align-items:end;height:42px}
  .rail::before{right:0;left:0;top:auto;bottom:4px;width:auto;height:2px}
  .rail .fill{right:auto;left:0;top:auto;bottom:4px;height:2px;width:calc(var(--rp,0) * 100%)}
  .rail button{font-size:0;padding-right:0;padding-bottom:14px}
  .rail button::after{right:auto;left:0;top:auto;bottom:0;margin-top:0}
  .rail button span{font-size:.95rem;padding:.12rem .22rem}
  .rail button .t{display:none}
  .chap{align-items:flex-end;min-height:120svh;padding-top:50svh;padding-bottom:calc(10svh + 4.6rem)}
  .chap .terms{display:none}
  .kicker,.cue{display:none}
  .chap .col{width:100%}
  .chap .code b{font-size:2.6rem}
  .chap h2{font-size:2.3rem}
  .chap p{font-size:1rem}
  .hero{padding-top:34svh;padding-bottom:5rem}
  .hero .col{width:100%}
  h1{font-size:clamp(2.9rem,14vw,4.4rem)}
  .lead{font-size:1.04rem}
  .spec,.loc,.portal,.faq{grid-template-columns:1fr}
  .sheet div{grid-template-columns:1fr;gap:.2rem}
  .idx a{grid-template-columns:2.6rem minmax(0,1fr) 1.4rem;gap:.8rem}
  .idx p{grid-column:2/3}
  .idx .go{grid-row:1;grid-column:3}
  .peek{display:none}
  .box,.box.s4,.box.s3,.box.s8{grid-column:span 12}
  .offices{grid-template-columns:1fr}
  .careers{grid-template-columns:1fr}
  footer .grid{grid-template-columns:1fr 1fr}
  footer .grid>div:first-child{grid-column:1/-1}
}

/* ---------- assistant bubble ---------- */
.as-btn{position:fixed;right:max(20px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px) + var(--onay-h,0px));z-index:60;display:flex;align-items:center;gap:.6rem;border:0;cursor:pointer;background:var(--night);color:#eef2ef;font:650 1rem/1 var(--f-body);padding:.95rem 1.2rem .95rem 1rem;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);transition:transform .3s cubic-bezier(.2,.8,.2,1),bottom .3s}
.as-btn:hover{transform:translateY(-3px)}
.as-btn:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.as-btn-ico{width:12px;height:12px;background:var(--signal);transform:rotate(45deg);box-shadow:0 0 0 4px rgba(232,96,28,.25)}
.as-open .as-btn{opacity:0;pointer-events:none}
.as-open .rail{visibility:hidden}
.as-panel{position:fixed;right:max(20px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px) + var(--onay-h,0px));z-index:61;width:min(25rem,calc(100vw - 40px));height:min(40rem,calc(100vh - var(--tag-h,260px) - 44px - var(--onay-h,0px)));min-height:22rem;display:flex;flex-direction:column;background:#f4f6f3;color:var(--ink);box-shadow:0 24px 60px rgba(13,26,31,.35);border-top:4px solid var(--signal)}
.as-panel[hidden]{display:none}
.as-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;background:var(--night);color:#eef2ef;padding:1rem 1.1rem .9rem}
.as-head h2{margin:0;font:800 1.55rem/1 var(--f-display);text-transform:uppercase;letter-spacing:.01em}
.as-mode{display:inline-block;margin-top:.45rem;font-size:.82rem;font-weight:650;color:#a3b8b3}
.as-mode[data-m=ai]{color:#ffc79f}
.as-head-b{display:flex;gap:.4rem;align-items:center}
.as-restart{all:unset;cursor:pointer;font-size:.85rem;font-weight:600;color:#cfdcd8;border-bottom:1.5px solid currentColor}
.as-x{all:unset;cursor:pointer;font-size:1.8rem;line-height:1;width:2.2rem;height:2.2rem;text-align:center;color:#fff}
.as-restart:focus-visible,.as-x:focus-visible{outline:2px solid var(--signal);outline-offset:2px}
.as-log{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.7rem;font-size:1rem;line-height:1.45;overscroll-behavior:contain}
.as-log:focus-visible{outline:2px solid var(--signal);outline-offset:-2px}
.as-msg{max-width:92%}
.as-bot{align-self:flex-start;background:#fff;border:1px solid var(--rule);padding:.7rem .85rem}
.as-user{align-self:flex-end;background:var(--teal-deep);color:#fff;padding:.6rem .85rem}
.as-err{border-color:var(--signal);color:#8a2f0e}
.as-msg p{margin:.25rem 0}
.as-k{font:800 1.15rem/1.1 var(--f-display);text-transform:uppercase;letter-spacing:.01em;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.as-q{font-weight:650}
.as-demo{font:650 .72rem/1 var(--f-body);font-variation-settings:"wdth" 118;letter-spacing:.05em;border:1.5px solid var(--signal);padding:.25rem .4rem;color:#8a2f0e;text-transform:uppercase}
.as-card dl{margin:.5rem 0 0;display:grid;gap:.2rem}
.as-card dl div{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.6rem;border-top:1px solid #e3e7e4;padding-top:.25rem}
.as-card dt{font-size:.8rem;font-weight:650;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em}
.as-card dd{margin:0;overflow-wrap:anywhere}
.as-list{margin:.6rem 0 0;padding-left:1.1rem}
.as-list li{margin:.2rem 0}
.as-tl{margin:.6rem 0;padding-left:1.3rem}
.as-tl li{margin:.25rem 0;padding-left:.2rem}
.as-tl li::marker{color:var(--signal);font-weight:700}
.as-note{font-size:.86rem;color:var(--ink-2);border-left:3px solid var(--signal);padding-left:.6rem;margin-top:.6rem}
.as-link{font-weight:650;color:var(--teal-deep)}
.as-act{margin-top:.6rem;border:0;cursor:pointer;background:var(--ink);color:#fff;font:650 .95rem/1 var(--f-body);padding:.75rem .9rem}
.as-act:hover{background:var(--signal);color:var(--ink)}
.as-opts{display:flex;flex-wrap:wrap;gap:.4rem;padding:.5rem 1rem .7rem;max-height:6.4rem;overflow-y:auto;border-top:1px solid var(--rule)}
.as-chip{border:1.5px solid var(--ink);background:transparent;color:var(--ink);font:600 .92rem/1.15 var(--f-body);padding:.5rem .7rem;cursor:pointer;text-align:left}
.as-chip:hover,.as-chip:focus-visible{background:var(--ink);color:#fff;outline:none}
.as-chip-q{display:block;width:100%;margin-top:.35rem}
.as-ghost{border-style:dashed}
.as-form{display:flex;border-top:1px solid var(--rule);background:#fff}
.as-in{flex:1;min-width:0;border:0;padding:1rem;font:500 1rem/1.2 var(--f-body);color:var(--ink);background:transparent}
.as-in:focus{outline:2px solid var(--signal);outline-offset:-2px}
.as-send{border:0;background:var(--signal);color:var(--ink);font:700 .95rem/1 var(--f-body);padding:0 1.1rem;cursor:pointer}
.sel{user-select:all;font-weight:650}
@media (max-width:760px){
  .as-btn{right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px) + var(--onay-h,0px));padding:.8rem .95rem}
  .as-btn-txt{font-size:.95rem}
  .as-panel{inset:0;width:auto;height:auto;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);border-top:0}
  .as-open body{overflow:hidden}
}
/* ---------- consent banner ---------- */
.onay{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--night);color:#e4ebe8;padding:1.1rem max(16px,env(safe-area-inset-right,0px)) calc(1.1rem + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));border-top:3px solid var(--signal)}
.onay[hidden]{display:none}
.onay-in{max-width:84rem;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem 2rem;align-items:center}
.onay h2{margin:0 0 .3rem;font:800 1.4rem/1 var(--f-display);text-transform:uppercase;color:#fff}
.onay p{margin:0 0 .3rem;max-width:52rem;font-size:.98rem;line-height:1.45}
.onay a{color:#d2ebe0;font-size:.9rem}
.onay-btns{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.onay-b{min-width:9rem;border:2px solid #fff;background:#fff;color:var(--night);font:700 1rem/1 var(--f-body);padding:.85rem 1.1rem;cursor:pointer}
.onay-b:hover{background:var(--signal);border-color:var(--signal)}
.onay-set{all:unset;cursor:pointer;font-weight:650;border-bottom:1.5px solid currentColor;padding:.2rem 0;margin-left:.3rem}
.onay-b:focus-visible,.onay-set:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.onay-panel{grid-column:1/-1;display:grid;gap:.9rem;border-top:1px solid #2c3d40;padding-top:.9rem}
.onay-panel[hidden]{display:none}
.onay-panel fieldset{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.onay-panel label{display:grid;grid-template-columns:auto 1fr;gap:.2rem .6rem;align-items:start;font-size:.92rem}
.onay-panel input{width:1.2rem;height:1.2rem;margin:.1rem 0 0;accent-color:var(--signal)}
.onay-panel b{font-weight:700;color:#fff}
.onay-panel span{grid-column:2;color:#a9bab5}
.onay-panel .onay-b{justify-self:start}
@media (max-width:760px){
  .onay-in{grid-template-columns:1fr}
  .onay-btns{display:grid;grid-template-columns:1fr 1fr}
  .onay-set{grid-column:1/-1;justify-self:start}
  .onay-b{min-width:0}
  .onay-panel fieldset{grid-template-columns:1fr}
  .onay p{font-size:.92rem}
}

@media (prefers-reduced-motion: reduce){
  .as-btn,.onay *{transition:none}
  .grain,.cue i::after{animation:none}
  .stage canvas{transition:none}
  *{scroll-behavior:auto!important}
}
/* v7: long compound words (NL/DE) must break inside their box, never overflow */
h1,h2,h3,.sheet dt,.box label,.idx h3,.chap .code span{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.faq .sec-h,.spec .sec-h,.loc .sec-h,.portal .sec-h{font-size:clamp(2.3rem,4.6vw,5.4rem)}
h1 .l{padding-top:.14em;margin-top:-.14em} /* keep Ü/Ö/İ diacritics inside the reveal mask */

/* ---------- v8: light sub-pages (services, legal, careers, 404) — same type, colour and grid, no 3D stage ---------- */
body.sub{--stage-ink:#0f1d1b}
.sub-top{position:sticky;top:0}
.sub-top::before{background:var(--fog);inset:0;border-bottom:1px solid var(--rule)}
.sub .band{padding-top:clamp(3.5rem,7vw,6rem);padding-bottom:clamp(3.5rem,7vw,6rem)}
.sub-crumbs{padding:1.4rem var(--gut-r) 0 var(--gut);box-sizing:content-box}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem .6rem;font-size:.82rem;font-weight:600;font-variation-settings:"wdth" 112;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.crumbs li+li::before{content:"/";margin-right:.6rem;color:var(--signal)}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs [aria-current]{color:var(--ink)}
.sub .sub-hero{padding-top:clamp(2rem,4vw,3.5rem)}
.sub-hero-g{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.sub-hero .code{display:flex;align-items:baseline;gap:.8rem;margin:0 0 1rem}
.sub-hero .code b{font:800 3rem/.8 var(--f-stencil);color:var(--signal)}
.sub-hero .code span{font-size:.85rem;font-weight:650;font-variation-settings:"wdth" 125;letter-spacing:.06em;text-transform:uppercase}
.sub-hero h1{font-size:clamp(2.6rem,5.2vw,5.6rem);line-height:.9;margin-bottom:1.2rem}
.sub-hero .lead{max-width:38rem}
.sub-fig{margin:0}
.sub-fig img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.9);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%)}
.sub-fig figcaption{font-size:.78rem;color:var(--ink-2);margin-top:.6rem}
.steps{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:3px solid var(--ink)}
.steps li{padding:1.3rem 1.4rem 0 0;border-right:1px solid var(--rule);margin-right:1.4rem}
.steps li:last-child{border-right:0;margin-right:0}
.steps b{display:block;font:800 2.4rem/1 var(--f-stencil);color:var(--signal);margin-bottom:.6rem}
.steps h3,.cover h3{font:800 clamp(1.35rem,2vw,1.8rem)/1 var(--f-display);text-transform:uppercase;margin:0 0 .5rem}
.steps p,.cover p{margin:0;color:var(--ink-2);font-size:.98rem}
.sub-cover{background:var(--paper)}
.cover{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.cover li{background:var(--paper);padding:1.3rem 1.3rem 1.5rem}
.sub-cta .sub-cta-p{max-width:38rem;color:#d2ebe0;margin:1rem 0 1.6rem}
.sub-cta .btn:not(.solid){--b:#fff}
.other{list-style:none;margin:2rem 0 0;padding:0;border-top:1px solid var(--rule)}
.other a{display:grid;grid-template-columns:3.4rem minmax(0,1fr) 2rem;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--rule);text-decoration:none;font:800 clamp(1.5rem,2.6vw,2.4rem)/1 var(--f-display);text-transform:uppercase;overflow-wrap:break-word;hyphens:auto}
.other .n{font:800 1.3rem/1 var(--f-stencil);color:#5f7a75}
.other a:hover{color:var(--teal)}
.other .go{font-size:1.3rem}
.sub-legal .wrap>div{max-width:52rem}
.prose{max-width:84rem}
.prose>section,.prose>p,.prose>div{max-width:48rem}
.prose h2{font:800 clamp(1.6rem,2.6vw,2.3rem)/1 var(--f-display);text-transform:uppercase;margin:2.4rem 0 .7rem;padding-top:1.2rem;border-top:1px solid var(--rule)}
.prose section:first-child h2{margin-top:0}
.prose p{margin:0 0 1rem;color:var(--ink-2)}
.prose a{color:var(--teal-deep);text-underline-offset:2px}
.prose code{font-size:.88em;background:var(--paper);padding:.05em .3em;overflow-wrap:anywhere}
.prose .none{font-style:italic}
.prose .cover{max-width:none}
.tbl{overflow-x:auto;border:1px solid var(--rule);margin:.6rem 0 1rem;background:var(--paper)}
.tbl table{border-collapse:collapse;width:100%;font-size:.92rem;min-width:34rem}
.tbl th{text-align:left;font-size:.7rem;font-weight:650;font-variation-settings:"wdth" 120;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);padding:.6rem .7rem;border-bottom:2px solid var(--ink)}
.tbl td{padding:.6rem .7rem;border-bottom:1px solid var(--rule);vertical-align:top}
.nf{padding:clamp(3rem,8vw,7rem) var(--gut-r) clamp(3rem,8vw,7rem) var(--gut)}
.nf h1{font-size:clamp(5rem,16vw,12rem);color:var(--signal);margin-bottom:2rem}
.nf-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1.6rem}
.nf-list li{border-top:3px solid var(--ink);padding-top:1rem}
.nf-list h2{font:800 1.6rem/1 var(--f-display);text-transform:uppercase;margin:0 0 .5rem}
.nf-list p{margin:0 0 1rem;color:var(--ink-2)}
@media (max-width:1000px){
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps li:nth-child(2){border-right:0;margin-right:0}
  .cover{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .sub-top{background:var(--fog)}
  .sub-hero-g{grid-template-columns:1fr}
  .sub-hero h1{font-size:clamp(2.2rem,10.5vw,3.4rem)}
  .steps,.cover{grid-template-columns:1fr}
  .steps li{border-right:0;margin-right:0;border-bottom:1px solid var(--rule);padding-bottom:1.2rem}
  .other a{grid-template-columns:2.4rem minmax(0,1fr) 1.4rem}
}

/* ---------- v8 contrast fix: text over the 3D stage never follows the sky colour ----------
   Every text block on the stage sits on a fixed card, so contrast no longer depends on the scene
   (dawn, bright warehouse floor, night). Mobile: dark card + light text. Desktop: light card + dark text. */
.top{--stage-ink:#0f1d1b;--stage-accent:#0b7f58;color:#0f1d1b}
.top::before{background:linear-gradient(var(--fog) 0%,color-mix(in srgb,var(--fog) 82%,transparent) 62%,transparent)}
.chap .col{--stage-ink:#0f1d1b;color:#0f1d1b;background:rgba(223,229,226,.86);-webkit-backdrop-filter:blur(10px) saturate(1.05);backdrop-filter:blur(10px) saturate(1.05);padding:1.5rem 1.7rem 1.7rem;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}
.chap .code b{color:#c4501a}
.pin.dest span{background:rgba(13,26,31,.82);color:#ffe9d8;padding:.3rem .5rem;text-shadow:none}
.loader{background:rgba(223,229,226,.9);color:#0f1d1b;padding:.45rem .7rem}
@media (max-width:760px){
  .top{background:linear-gradient(var(--fog) 0%,var(--fog) 70%,color-mix(in srgb,var(--fog) 0%,transparent))}
  .chap .col{--stage-ink:#eef2ef;color:#eef2ef;background:rgba(13,26,31,.86);padding:1.1rem 1.1rem 1.25rem;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}
  .chap .code b{color:#f39a62}
  .chap .col h1 em{color:#5fd3b8}
  .chap .col h1 .stencil{color:#f39a62}
  .chap .col .btn{--b:#eef2ef}
  .chap .col .btn:hover{color:var(--ink)}
  .chap .col .btn.solid{background:var(--signal);color:var(--ink);border-color:var(--signal)}
  .chap .col .btn.solid::before{background:#fff}
  .pin.dest span{font-size:1.4rem}
}
.rail button span,.rail button .t{background:#0d1a1f;color:#fff}
.sub main .ph,.faq dd .ph{white-space:normal;overflow-wrap:anywhere}
.sub-legal+.sub-prose{padding-top:0}.sub-legal{padding-bottom:2rem}
.top .btn{white-space:nowrap}.top .end{flex-shrink:0}.nav{min-width:0;gap:clamp(.8rem,1.6vw,1.6rem);white-space:nowrap}@media (max-width:1280px){.top .end .btn:not(.solid){display:none}}
