@font-face{font-family:"Aeonik";src:url(/fonts/Aeonik-Regular.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Aeonik";src:url(/fonts/Aeonik-Medium.ttf) format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Aeonik";src:url(/fonts/Aeonik-Bold.ttf) format("truetype");font-weight:700;font-display:swap}
:root{
  --navy:#13266B;--deep:#0A1747;--red:#B5172F;--cream:#FDF8F0;--paper:#F5EEE1;--ink:#141414;--mute:#5A6078;--peri:#5F86DE;
  --line:rgba(20,20,20,.14);--line-inv:rgba(255,255,255,.18);
  --f:"Aeonik",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --g:16px;--max:1320px;--ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--f);font-size:18px;line-height:1.55;font-feature-settings:"tnum" 0;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--g)}
@media (min-width:900px){:root{--g:40px}}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px 12px;z-index:99}

/* ---------- type ---------- */
h1,h2,h3,h4{font-weight:500;margin:0;letter-spacing:-.025em;line-height:1.02}
.display{font-size:clamp(44px,8.2vw,124px);letter-spacing:-.045em;line-height:.94}
.h2{font-size:clamp(34px,5vw,72px);letter-spacing:-.035em;line-height:.98}
.h3{font-size:clamp(24px,2.4vw,34px);letter-spacing:-.02em;line-height:1.08}
.lede{font-size:clamp(19px,1.6vw,23px);line-height:1.45;max-width:36em;color:var(--mute)}
.inv .lede,.deep .lede{color:rgba(255,255,255,.78)}
.deep .small{color:rgba(255,255,255,.6)}
.route-map .node{color:#fff}.route-map .node p{color:rgba(255,255,255,.82)}
.kicker{font-size:15px;color:var(--mute);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.kicker::before{content:"";width:28px;height:6px;background:var(--red);flex:none}
.inv .kicker{color:rgba(255,255,255,.7)}
p{margin:0 0 1em}
.small{font-size:15px;color:var(--mute)}
.inv .small{color:rgba(255,255,255,.66)}

/* ---------- header ---------- */
.top{position:absolute;inset:0 0 auto;z-index:20;color:#fff}
.top.solid{position:relative;background:var(--deep)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:84px}
.logo{display:block;width:216px;flex:none}
.nav{display:flex;align-items:center;gap:28px;font-size:15px}
.nav a{text-decoration:none;color:rgba(255,255,255,.86);padding:6px 0;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current]{color:#fff;border-color:rgba(255,255,255,.6)}
.nav .apply{border:1px solid rgba(255,255,255,.55);padding:11px 20px;border-radius:2px;color:#fff}
.nav .apply:hover{background:#fff;color:var(--navy)}
.menu-btn{display:none;background:none;border:1px solid rgba(255,255,255,.5);color:#fff;font:inherit;font-size:15px;padding:10px 16px;border-radius:2px}
@media (max-width:1060px){
  .nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--deep);flex-direction:column;align-items:flex-start;padding:12px var(--g) 28px;gap:6px}
  .nav.open{display:flex}.nav a{font-size:22px}.nav .apply{margin-top:12px;font-size:17px}
  .menu-btn{display:block}.logo{width:180px}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:0 28px;font:500 17px/1 var(--f);text-decoration:none;border:0;cursor:pointer;border-radius:2px;transition:background .25s var(--ease),color .25s var(--ease)}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:#951127}
.btn-ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1px currentColor}
.btn-ghost:hover{background:var(--ink);color:#fff;box-shadow:none}
.inv .btn-ghost:hover{background:#fff;color:var(--navy)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}

/* ---------- hero ---------- */
.routes{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:30px;font-size:15px;color:rgba(255,255,255,.75)}
.routes span{display:inline-flex;align-items:center;gap:10px}
.routes span::before{content:"";width:12px;height:3px;background:var(--red)}
.page-hero{background:var(--deep) var(--bg) center/cover;color:#fff;padding:180px 0 90px;position:relative}
.page-hero .display{font-size:clamp(42px,6.4vw,96px)}

/* signature: the three bars */
.bars{display:grid;gap:9px;width:132px;margin-bottom:40px}
.bars i{display:block;height:12px;background:var(--red);transform-origin:left;animation:draw 1.1s var(--ease) both}
.bars i:nth-child(1){width:62%;margin-left:38%;animation-delay:.15s}
.bars i:nth-child(2){width:62%;margin-left:38%;animation-delay:.3s}
.bars i:nth-child(3){width:100%;animation-delay:.45s}
.bars b{position:absolute}
.hero h1{animation:rise 1s var(--ease) .55s both}
.hero .lede,.hero .actions,.hero .routes{animation:rise 1s var(--ease) .75s both}
@keyframes draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* ---------- sections ---------- */
section{padding:120px 0}
@media (max-width:700px){section{padding:80px 0}}
.inv{background:var(--navy);color:#fff}
.deep{background:var(--deep);color:#fff}
.paper{background:var(--paper)}
.split{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.split.even{grid-template-columns:1fr 1fr}
@media (max-width:900px){.split,.split.even{grid-template-columns:1fr;gap:36px}}
.rule{border-top:1px solid var(--line)}
.inv .rule,.deep .rule{border-color:var(--line-inv)}

/* format index: big typographic list */
.index{list-style:none;margin:56px 0 0;padding:0;border-top:1px solid var(--line)}
.index li{border-bottom:1px solid var(--line)}
.index a{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:24px;padding:26px 0;text-decoration:none;position:relative}
.index .name{font-size:clamp(30px,4.6vw,64px);letter-spacing:-.035em;line-height:1;transition:transform .45s var(--ease),color .3s}
.index .meta{font-size:16px;color:var(--mute);text-align:right;max-width:22em}
.index a:hover .name{transform:translateX(18px);color:var(--navy)}
.index a::before{content:"";position:absolute;left:0;top:50%;width:10px;height:10px;background:var(--red);transform:translate(-30px,-50%) scale(0);transition:transform .4s var(--ease)}
.index a:hover::before{transform:translate(0,-50%) scale(1)}
@media (max-width:700px){.index a{grid-template-columns:1fr}.index .meta{text-align:left}}

/* routing diagram */
.route-map{margin-top:64px;display:grid;grid-template-columns:1fr;gap:0}
.route-map .node{border:1px solid var(--line-inv);padding:28px 32px}
.route-map .top-node{max-width:520px;margin:0 auto;text-align:center}
.route-map .stem{height:56px;width:1px;background:var(--line-inv);margin:0 auto;position:relative}
.route-map .fork{display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative}
.route-map .fork::before{content:"";position:absolute;top:0;left:25%;right:25%;border-top:1px solid var(--line-inv)}
.route-map .leg{padding-top:56px;position:relative}
.route-map .leg::before{content:"";position:absolute;top:0;left:50%;height:56px;border-left:1px solid var(--line-inv)}
.route-map .leg .node{margin:0 12px;min-height:100%}
.route-map .rtag{font-size:56px;letter-spacing:-.04em;line-height:1;display:block;margin-bottom:14px}
.route-map .rtag em{font-style:normal;color:var(--red);font-size:20px;vertical-align:top;margin-left:6px}
@media (max-width:760px){.route-map .fork{grid-template-columns:1fr}.route-map .fork::before{display:none}.route-map .leg{padding-top:24px}.route-map .leg::before{height:24px}.route-map .leg .node{margin:0}}

/* full-bleed image */
.bleed{position:relative;background:var(--deep)}
.bleed img{width:100%;height:clamp(320px,62vw,820px);object-fit:cover}
.caption{display:flex;justify-content:space-between;gap:20px;font-size:14px;color:var(--mute);padding:14px var(--g) 0;max-width:var(--max);margin:0 auto}

/* process: asymmetric editorial grid */
.process{display:grid;grid-template-columns:7fr 5fr;grid-template-rows:auto auto;gap:24px;margin-top:64px}
.process figure{margin:0}
.process figure:first-child{grid-row:span 2}
.process img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.process figure:first-child img{aspect-ratio:auto;min-height:520px}
.process figcaption{display:flex;gap:16px;padding-top:14px;font-size:15px;color:var(--mute)}
.process figcaption b{color:var(--ink);font-weight:500}
@media (max-width:900px){.process{grid-template-columns:1fr}.process figure:first-child{grid-row:auto}.process figure:first-child img{min-height:0;aspect-ratio:4/3}}

/* sequence (real steps) */
.seq{list-style:none;padding:0;margin:56px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.seq li{border-top:6px solid var(--red);padding-top:22px}
.seq .n{font-size:15px;color:var(--mute);display:block;margin-bottom:28px;font-feature-settings:"tnum"}
.seq h3{font-size:26px;margin-bottom:12px}
.seq p{font-size:16px;color:var(--mute)}
.inv .seq p,.deep .seq p{color:rgba(255,255,255,.72)}
@media (max-width:900px){.seq{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.seq{grid-template-columns:1fr}}

/* plain rows (replaces boxed cards) */
.rows{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);gap:0 48px;margin-top:48px}
.rows>div{border-top:1px solid var(--line);padding:28px 0 8px}
.inv .rows>div,.deep .rows>div{border-color:var(--line-inv)}
.rows h3{font-size:24px;margin-bottom:12px}
.rows p{font-size:16px;color:var(--mute)}
.inv .rows p,.deep .rows p{color:rgba(255,255,255,.72)}
@media (max-width:900px){.rows{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rows{grid-template-columns:1fr}}
/* legacy aliases used by inner pages */
.grid{display:grid;gap:0 48px}.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.g3,.g4{grid-template-columns:1fr 1fr}}@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{border-top:1px solid var(--line);padding:28px 0 12px}
.card h3{font-size:24px;margin:0 0 12px}.card p{font-size:16px;color:var(--mute)}
.card .num{display:block;font-size:14px;color:var(--red);margin-bottom:14px}
.inv .card,.deep .card{border-color:var(--line-inv)}.inv .card p,.deep .card p{color:rgba(255,255,255,.72)}
.well{background:var(--paper);padding:28px;margin-top:32px}
.list{list-style:none;padding:0;margin:0}
.list li{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.list .k{flex:none;width:28px;font-size:14px;color:var(--red);padding-top:3px}
.inv .list li,.deep .list li{border-color:var(--line-inv)}

/* product grid (catalog) */
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 24px;margin-top:48px}
.products figure{margin:0}
.products .ph{aspect-ratio:4/5;background:var(--paper);overflow:hidden}
.products .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.products figure:hover .ph img{transform:scale(1.04)}
.products h3{font-size:20px;margin:16px 0 4px}
.products p{font-size:15px;color:var(--mute);margin:0 0 8px}
.products a{font-size:14px;color:var(--navy)}
@media (max-width:1000px){.products{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.products{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.products{grid-template-columns:1fr}}

/* statement */
.statement{font-size:clamp(30px,4.2vw,58px);letter-spacing:-.03em;line-height:1.06;max-width:20ch}

/* faq */
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:26px 48px 26px 0;font-size:clamp(20px,2vw,26px);letter-spacing:-.015em;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"";position:absolute;right:6px;top:50%;width:18px;height:2px;background:var(--ink);box-shadow:0 0 0 0 var(--ink)}
summary::before{content:"";position:absolute;right:14px;top:calc(50% - 8px);width:2px;height:18px;background:var(--ink);transition:transform .3s var(--ease)}
details[open] summary::before{transform:scaleY(0)}
details p{color:var(--mute);max-width:44em;padding-bottom:22px}
.faq{border-top:1px solid var(--line);margin-top:40px}

/* forms */
form.lead{display:grid;gap:22px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media (max-width:640px){.row2{grid-template-columns:1fr}}
label,legend{display:block;font-size:15px;color:var(--ink);margin-bottom:8px;padding:0}
.opt{color:var(--mute);font-size:14px}
input,select,textarea{width:100%;font:inherit;font-size:17px;padding:14px 0;border:0;border-bottom:1px solid rgba(20,20,20,.35);background:transparent;color:var(--ink);border-radius:0;min-height:52px;-webkit-appearance:none;appearance:none}
select{background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23141414' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") right 4px center no-repeat;padding-right:24px}
input:focus,select:focus,textarea:focus{outline:none;border-bottom:2px solid var(--navy)}
textarea{min-height:120px;resize:vertical}
fieldset{border:0;margin:0;padding:0}
.choices{display:flex;flex-wrap:wrap;gap:10px}
.choices label{display:flex;align-items:center;gap:10px;border:1px solid rgba(20,20,20,.25);padding:10px 16px;margin:0;font-size:15px;cursor:pointer;min-height:44px}
.choices input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--navy);-webkit-appearance:auto;appearance:auto}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-msg{display:none;padding:14px 18px;font-size:16px}
.form-msg.ok{display:block;background:#E6EEE2}
.form-msg.err{display:block;background:#F6E1E4;color:#7A0F20}
.consent{font-size:14px;color:var(--mute)}
.formcard{background:#fff;padding:clamp(24px,4vw,48px)}
.apply-grid{grid-template-columns:7fr 5fr}
@media (max-width:900px){.apply-grid{grid-template-columns:1fr}}

/* footer */
footer{background:var(--deep);color:rgba(255,255,255,.72);padding:100px 0 40px;font-size:15px}
footer .mark{width:min(560px,100%);margin-bottom:72px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
@media (max-width:900px){footer .cols{grid-template-columns:1fr 1fr}}
footer h4{font-size:15px;font-weight:500;color:#fff;margin-bottom:16px;letter-spacing:0}
footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:10px}
footer a{text-decoration:none}footer a:hover{color:#fff}
.fine{border-top:1px solid var(--line-inv);margin-top:64px;padding-top:24px;font-size:13px;color:rgba(255,255,255,.5);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.prose{max-width:46em}.prose h2{font-size:30px;margin:1.6em 0 .5em}
.pill{display:inline-block}
.art{background:var(--paper)}
.tag{font-size:13px;color:var(--mute)}
/* aliases for inner-page markup */
.eyebrow{font-size:15px;color:var(--mute);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:6px;background:var(--red);flex:none}
.eyebrow::after{display:none}
.on-navy{background:var(--navy);color:#fff}.on-navy .eyebrow,.page-hero .eyebrow{color:rgba(255,255,255,.72)}
.on-navy .card,.on-navy .list li{border-color:var(--line-inv)}.on-navy .card p,.on-navy .lede{color:rgba(255,255,255,.75)}
.on-cream2{background:var(--paper)}
section.tight{padding:56px 0}
h2:not(.h2):not(.display){font-size:clamp(30px,3.8vw,52px);letter-spacing:-.03em;line-height:1.02;margin-bottom:.45em}
h1:not(.display){font-size:clamp(42px,6.4vw,96px);letter-spacing:-.045em;line-height:.96}
section h2+.lede{margin-top:8px}
.hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:end}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}}
.page-hero .lede{color:rgba(255,255,255,.8)}
.page-hero h1{color:#fff}
.page-hero .actions .btn-ghost,.page-hero .btn-line{color:#fff}
.btn-line{background:transparent;color:inherit;box-shadow:inset 0 0 0 1px currentColor}
.btn-line:hover{background:var(--ink);color:#fff;box-shadow:none}
.on-navy .btn-line:hover,.page-hero .btn-line:hover{background:#fff;color:var(--navy)}
.art.photo{background:none;padding:0}.art.photo img{width:100%;aspect-ratio:5/4;object-fit:cover}
.page-hero.photo{padding:220px 0 110px}
.page-hero.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,23,71,.94) 0%,rgba(10,23,71,.72) 45%,rgba(10,23,71,.25) 100%)}
.page-hero .wrap{position:relative}
.page-hero .lede{max-width:34em}
/* format gallery */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 28px}
.gallery figure{margin:0;scroll-margin-top:100px}
.gallery .ph{aspect-ratio:4/5;overflow:hidden;background:var(--paper)}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.gallery figure:hover img{transform:scale(1.035)}
.gallery figcaption{padding-top:18px}
.gallery h3{font-size:26px;margin:6px 0 10px}
.gallery p{font-size:16px;color:var(--mute);margin:0 0 8px}
.gallery .num{font-size:14px;color:var(--red)}
@media (max-width:1000px){.gallery{grid-template-columns:1fr 1fr;gap:40px 16px}}
@media (max-width:560px){.gallery{grid-template-columns:1fr}}
/* index thumbs */
.index a{grid-template-columns:88px 1fr auto;align-items:center}
.index .thumb{width:88px;height:88px;object-fit:cover;background:var(--paper)}
@media (max-width:700px){.index a{grid-template-columns:72px 1fr;gap:16px;padding:16px 0}.index .thumb{width:72px;height:72px;grid-row:span 2}.index .name{font-size:26px}.index .meta{grid-column:2;font-size:14px}}
@media (max-width:900px){.process img,.process figure:first-child img{height:auto;aspect-ratio:4/3}}
.process figcaption{position:relative;z-index:1}

/* ===== round 4 (11 Nov): hero, plate, rail, buyers ===== */
.hero{position:relative;background:var(--deep);color:#fff;overflow:hidden;padding:clamp(112px,14vh,150px) 0 0}
.hero-in{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center;min-height:min(calc(100svh - 150px),760px)}
.hero .copy{padding-bottom:clamp(40px,6vh,72px)}
.hero .display{font-size:clamp(44px,6.1vw,100px);max-width:10ch}
.hero .lede{color:rgba(255,255,255,.8);max-width:31em;margin-top:28px;font-size:clamp(18px,1.45vw,21px)}
.hero .stage{position:relative;align-self:stretch;display:flex;align-items:flex-end;justify-content:center}
.hero .stage img{width:100%;max-height:760px;object-fit:contain;object-position:50% 100%;animation:lift 1.4s var(--ease) .35s both}
.hero .stage video{width:100%;height:auto}
.buyers{border-top:1px solid var(--line-inv);margin-top:0}
.buyers ul{list-style:none;margin:0;padding:18px 0;display:flex;flex-wrap:wrap;gap:8px 32px;font-size:15px;color:rgba(255,255,255,.72)}
.buyers li{display:flex;align-items:center;gap:10px}
.buyers li::before{content:"";width:12px;height:3px;background:var(--red)}
@keyframes lift{from{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:none}}
@media (max-width:900px){
  .hero{padding-top:104px}
  .hero-in{grid-template-columns:1fr;min-height:0;gap:8px}
  .hero .copy{padding-bottom:8px}
  .hero .display{max-width:12ch}
  .hero .stage img,.hero .stage video{max-height:none;aspect-ratio:1/1;object-fit:cover;object-position:50% 58%}
}
@media (min-width:901px) and (max-width:1180px){.hero .display{font-size:clamp(44px,5.6vw,72px)}}

/* the Standard plate: typographic infographic */
.plate{background:var(--deep);color:#fff;padding:clamp(72px,10vw,140px) 0}
.plate .grid6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(214,170,98,.55);margin-top:clamp(40px,5vw,72px)}
.plate .cell{border-bottom:1px solid rgba(214,170,98,.55);padding:clamp(24px,3vw,44px) clamp(0px,2vw,32px) clamp(28px,3vw,44px) 0;position:relative}
.plate .cell+.cell{padding-left:clamp(16px,2.4vw,40px)}
.plate .cell:nth-child(3n+1){padding-left:0}
.plate .cell:not(:nth-child(3n+1))::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:1px;background:rgba(214,170,98,.35)}
.plate .tok{display:block;font-size:clamp(56px,9vw,148px);letter-spacing:-.055em;line-height:.86;font-weight:500}
.plate .tok sup{font-size:.28em;letter-spacing:0;vertical-align:top;color:#D6AA62;margin-left:.15em;position:relative;top:.3em}
.plate .mean{display:block;margin-top:18px;font-size:clamp(15px,1.25vw,18px);line-height:1.4;color:rgba(255,255,255,.74);max-width:20em}
.plate .head{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:end}
.plate .head p{color:rgba(255,255,255,.72);margin:0}
@media (max-width:900px){.plate .grid6{grid-template-columns:1fr 1fr}.plate .cell:nth-child(3n+1){padding-left:clamp(16px,2.4vw,40px)}.plate .cell:nth-child(2n+1){padding-left:0}.plate .cell::before{display:none}.plate .cell:nth-child(2n)::before{display:block!important}.plate .head{grid-template-columns:1fr;gap:20px}}
@media (max-width:420px){.plate .grid6{grid-template-columns:1fr}.plate .cell{padding-left:0!important}.plate .cell::before{display:none!important}}
.plate .grid6 .cell{opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.plate.in .grid6 .cell{opacity:1;transform:none}
.plate.in .grid6 .cell:nth-child(2){transition-delay:.08s}.plate.in .grid6 .cell:nth-child(3){transition-delay:.16s}.plate.in .grid6 .cell:nth-child(4){transition-delay:.24s}.plate.in .grid6 .cell:nth-child(5){transition-delay:.32s}.plate.in .grid6 .cell:nth-child(6){transition-delay:.4s}
@media (prefers-reduced-motion:reduce){.plate .grid6 .cell{opacity:1;transform:none}}
.no-js .plate .grid6 .cell{opacity:1;transform:none}

/* production rail */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,30%);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:56px;padding-bottom:18px;scrollbar-width:thin}
.rail figure{margin:0;scroll-snap-align:start}
.rail .ph{aspect-ratio:4/5;overflow:hidden;background:#000}
.rail img,.rail video{width:100%;height:100%;object-fit:cover;display:block}
.rail h3{font-size:24px;margin:18px 0 8px}
.rail p{font-size:16px;color:var(--mute);margin:0}
@media (max-width:700px){.rail{grid-auto-columns:82%}}

/* product render frames */
.render{margin:0;background:var(--paper)}
.render img{width:100%;aspect-ratio:3/2;object-fit:cover}
.render.tall img{aspect-ratio:4/5}
.compare{width:100%;border-collapse:collapse;margin-top:48px;font-size:16px}
.compare th,.compare td{text-align:left;padding:18px 16px 18px 0;border-bottom:1px solid var(--line);vertical-align:top}
.compare th{font-weight:500;color:var(--mute);font-size:14px}
.compare td:first-child{font-weight:500;width:28%}
@media (max-width:640px){.compare thead{display:none}.compare tr{display:block;border-bottom:1px solid var(--line);padding:14px 0}.compare td{display:block;border:0;padding:4px 0}.compare td:first-child{width:auto}.compare td[data-l]::before{content:attr(data-l);display:block;font-size:13px;color:var(--mute)}}
/* fold phones / very narrow */
@media (max-width:340px){:root{--g:14px}.btn{padding:0 20px;font-size:16px}.logo{width:156px}.display{letter-spacing:-.035em}}
.deep .compare th,.deep .compare td{border-color:var(--line-inv)}.deep .compare th,.deep .compare td[data-l]::before{color:rgba(255,255,255,.6)}
.duo{position:relative}
.duo .inset{position:absolute;right:-12px;bottom:-40px;width:46%;box-shadow:0 30px 60px -20px rgba(10,23,71,.35);background:#fff}
.duo .inset img{aspect-ratio:1/1}
@media (max-width:900px){.duo .inset{position:relative;right:auto;bottom:auto;width:62%;margin:-80px 0 0 auto}}
.band{background:var(--deep) url(/img/field-41.jpg) center/cover;min-height:0}
.rail video{pointer-events:none}
.route-map .node{min-width:0;overflow-wrap:anywhere}
@media (max-width:420px){.route-map .node{padding:22px 18px}.route-map .rtag{font-size:44px}.route-map .rtag em{display:block;margin:6px 0 0}}
.list li>div,.prose,.lede{overflow-wrap:anywhere;min-width:0}
.film{background:var(--deep);line-height:0}
.film video{width:100%;height:clamp(260px,46vw,680px);object-fit:cover;display:block}
@media (max-width:420px){.plate .grid6 .cell:nth-child(n)::before{display:none!important}}
.hero .stage video{width:100%;max-height:760px;object-fit:contain;object-position:50% 100%;animation:lift 1.4s var(--ease) .35s both}
@media (max-width:900px){.hero .stage video{max-height:none;aspect-ratio:1/1;object-fit:cover;object-position:50% 58%}}

/* ===== HERO v5: type behind product ===== */
.hx{position:relative;overflow:hidden;color:#fff;background:#0A1747;padding-top:clamp(104px,12vh,136px);isolation:isolate}
.hx-glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 46% at 64% 66%,#22409C 0%,#132a78 34%,rgba(10,23,71,0) 72%),radial-gradient(40% 30% at 18% 8%,rgba(95,134,222,.16),rgba(10,23,71,0) 70%)}
.hx-top{position:relative;z-index:1}
.hx .bars{width:104px;gap:7px;margin-bottom:28px}.hx .bars i{height:9px}
.hx-title{font-weight:500;font-size:clamp(46px,8.6vw,138px);line-height:.9;letter-spacing:-.052em;margin:0;max-width:14ch}
.hx-title .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hx-title .ln>span{display:inline-block;transform:translateY(105%);animation:lnup 1.1s var(--ease) forwards}
.hx-title .ln:nth-child(1)>span{animation-delay:.25s}.hx-title .ln:nth-child(2)>span{animation-delay:.37s}.hx-title .ln:nth-child(3)>span{animation-delay:.49s}
@keyframes lnup{to{transform:none}}
.hx-stage{position:relative;z-index:2;pointer-events:none;transform:translate(var(--px,0),var(--py,0));transition:transform .9s cubic-bezier(.2,.7,.1,1)}
.hx-media{display:block;width:100%;height:auto;aspect-ratio:1600/1040;opacity:0;animation:stagein 1.6s var(--ease) .75s forwards;filter:drop-shadow(0 40px 60px rgba(3,8,30,.45))}
@keyframes stagein{from{opacity:0;transform:translateY(48px) scale(.965)}to{opacity:1;transform:none}}
.hx-foot{position:relative;z-index:3;opacity:0;animation:fadein 1s var(--ease) 1.15s forwards}
@keyframes fadein{to{opacity:1}}
.hx-lede{color:rgba(255,255,255,.78);font-size:clamp(16px,1.3vw,19px);line-height:1.45;max-width:30em;margin:0}
.hx-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;max-width:440px}
.hx-cta .btn{justify-content:center;padding:0 14px;min-height:54px;font-size:16px}
.hx-cta .btn-ghost{color:#fff}.hx-cta .btn-ghost:hover{background:#fff;color:var(--navy)}
/* buyers: marquee */
.hx .buyers{position:relative;z-index:3;border-top:1px solid var(--line-inv);margin-top:clamp(28px,4vw,48px);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hx .mq{display:flex;width:max-content;animation:mq 38s linear infinite}
.hx .buyers ul{display:flex;gap:40px;padding:18px 20px;margin:0;list-style:none;flex-wrap:nowrap;white-space:nowrap;font-size:15px;color:rgba(255,255,255,.7)}
@keyframes mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.hx-title .ln>span,.hx-media,.hx-foot{animation:none;transform:none;opacity:1}.hx .mq{animation:none}}
/* phone + tablet: title, product overlapping the last line, then pitch + CTAs, all in the first screen */
@media (max-width:1023px){
  .hx-title{font-size:clamp(42px,12.4vw,96px);max-width:none}
  .hx-stage{width:118%;margin:clamp(-64px,-11vw,-40px) -9% 0}
  .hx-foot{margin-top:-2vw}
}
@media (max-width:360px){.hx-cta{grid-template-columns:1fr}}
/* desktop: product sits to the right, crossing the ends of the lines */
@media (min-width:1024px){
  .hx{min-height:min(100svh,1000px);display:flex;flex-direction:column}
  .hx-top{padding-top:8px}
  .hx-stage{position:absolute;right:max(-2vw,calc((100vw - 1500px)/2));top:clamp(150px,19vh,210px);width:min(66vw,1080px)}
  .hx-foot{margin-top:auto;padding-top:48px}
  .hx-title{font-size:clamp(72px,8.2vw,138px)}
}
.hx>.wrap{width:100%}
.hx-cta .btn{white-space:nowrap}
@media (max-width:1023px){.hx-stage{margin-top:clamp(-52px,-8vw,-30px)}}
@media (max-width:430px){.hx-cta .btn{font-size:14.5px;padding:0 8px}}
@media (min-width:1024px){
  .hx-title{font-size:clamp(64px,6.7vw,120px);max-width:11ch}
  .hx-stage{top:clamp(230px,27vh,320px);right:max(-1vw,calc((100vw - 1560px)/2));width:min(57vw,980px)}
  .hx-lede{max-width:27em}
}
@media (min-width:1024px){.hx-foot{margin-top:0;padding-top:44px}.hx .buyers{margin-top:auto}}
/* hero v6: statement vial */
.hx-media{aspect-ratio:auto}
@media (min-width:1024px){.hx-stage{top:clamp(120px,14vh,170px);width:min(50vw,820px);right:max(0vw,calc((100vw - 1500px)/2))}}
@media (max-width:1023px){.hx-stage{width:112%;margin:clamp(-60px,-10vw,-36px) -6% 0}}
.hx-media{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%),linear-gradient(180deg,transparent 0,#000 8%,#000 84%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%),linear-gradient(180deg,transparent 0,#000 8%,#000 84%,transparent 100%);mask-composite:intersect}
@media (min-width:1024px){.hx-stage{right:max(1vw,calc((100vw - 1480px)/2));width:min(52vw,860px);top:clamp(110px,13vh,160px)}}
@media (max-width:1023px){.hx-stage{width:100%;margin:clamp(-56px,-9vw,-32px) 0 0}}
@media (max-width:1023px){.hx-stage{width:120%;margin:clamp(-60px,-10vw,-36px) -10% 0}}
@media (max-width:1023px){.hx-stage{width:104%;margin:clamp(-60px,-10vw,-36px) -2% 0}}
