/* Shard landing. Tokens live in ds.css. Every size is a step; every gap is a rung.
   Six shapes: split hero, hairline properties, ruled arguments, numbered rail,
   two-column index, question-left FAQ. One dark object — the file. */

.s{background:var(--paper);color:var(--ink);font-family:var(--ui)}
.s-in{width:100%;max-width:1760px;margin:0 auto;padding:0 var(--gut)}
@media (min-width:900px){.s-in{padding:0 64px}}

/* mark */
.s-mark{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:800;
  letter-spacing:-.03em;color:var(--ink);font-size:var(--d6)}
.s-mark svg{width:16px;height:22px;color:var(--ink)}
.s-mark small{display:block;font-family:var(--ui);font-size:var(--t5);font-weight:600;
  letter-spacing:.04em;color:var(--ink2);text-transform:uppercase}
@media (min-width:900px){.s-mark{font-size:var(--d5)}}

/* nav */
.s-nav{height:68px;border-bottom:1px solid var(--hair);background:color-mix(in srgb,var(--paper) 88%,transparent);
  backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}
.s-nav-in{max-width:1760px;margin:0 auto;height:68px;display:flex;align-items:center;
  padding:0 var(--gut);gap:var(--s4)}
@media (min-width:900px){.s-nav-in{padding:0 64px;gap:var(--s7)}}
.s-nav .links{display:none}
@media (min-width:900px){
  .s-nav .links{display:flex;gap:var(--s6);margin-left:var(--s4)}
  .s-nav .links a{font-size:var(--t3);font-weight:600;color:var(--ink2);padding:6px 0;border-bottom:2px solid transparent}
  .s-nav .links a:hover,.s-nav .links a.on{color:var(--ink);font-weight:700;border-bottom-color:var(--ink)}
}
.s-nav .acts{margin-left:auto;display:flex;align-items:center;gap:var(--s3)}
.s-tog{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;border:1px solid var(--hair2);
  background:var(--white);box-shadow:var(--sh1)}
.s-mark{white-space:nowrap}
@media (max-width:899px){.s-nav .acts .btn{display:none}}
@media (min-width:900px){.s-tog{display:none}}
.s-menu{display:none;position:fixed;inset:68px 0 0 0;background:var(--paper);z-index:19;padding:var(--s7) var(--gut)}
body.open .s-menu{display:flex;flex-direction:column;gap:var(--s2)}
.s-menu a{font-family:var(--disp);font-size:var(--d3);font-weight:700;letter-spacing:-.03em;padding:var(--s3) 0;
  border-bottom:1px solid var(--hair)}

/* ceremonial band — white roman, gold italic, one gold action */
.s-band{background:var(--olive);color:var(--dkink);text-align:center;
  padding:var(--s10) var(--gut) var(--s11);position:relative;overflow:hidden}
@media (min-width:900px){.s-band{padding:var(--s12) 64px 88px}}
.s-band .bg{position:absolute;inset:0}
.s-band .bg img{width:100%;height:100%;object-fit:cover}
.s-band .bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(37,39,30,.55) 0%,rgba(28,30,24,.88) 58%,rgba(25,27,20,.94) 100%)}
.s-band > *:not(.bg){position:relative;z-index:1}
.s-band .eyebrow{color:var(--gold);letter-spacing:.22em}
.s-band h1{font-family:var(--serif);font-size:var(--d3);font-weight:500;letter-spacing:-.02em;
  line-height:1.08;margin:var(--s5) auto 0;max-width:18ch}
@media (min-width:900px){.s-band h1{font-size:var(--d0)}}
.s-band h1 em{font-style:italic;font-weight:400;color:var(--gold)}
.s-band .sub{font-size:var(--t2);line-height:1.65;color:var(--sage);margin:var(--s5) auto 0;max-width:52ch;font-weight:500}
@media (min-width:900px){.s-band .sub{font-size:var(--t1)}}
.s-band .aside{font-family:var(--serif);font-style:italic;font-size:var(--t2);line-height:1.6;
  color:var(--sage);margin:var(--s6) auto 0;max-width:46ch}
.s-band .btn.gold{margin-top:var(--s7)}
.s-close{padding-bottom:var(--s10)}
.s-close .s-form{max-width:720px;margin:var(--s8) auto 0;text-align:left}
.s-close .s-ok h3{color:var(--ink)}

.s-heroin{display:flex;justify-content:center;padding:var(--s8) 0 0}
.s-file{padding:var(--s5);width:100%;max-width:440px}
@media (min-width:900px){.s-file{padding:var(--s6)}}
.s-file-top{display:flex;align-items:center;gap:var(--s3)}
.s-file-top .st{margin-left:auto}
.s-file h2{font-family:var(--disp);font-size:var(--d5);font-weight:600;letter-spacing:-.028em;
  line-height:1.26;margin-top:var(--s3);color:var(--dkink)}
.s-file .steps{margin-top:var(--s4)}
.s-file-f{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--dkhair);
  font-size:var(--t5);line-height:1.6;color:var(--dkmut);font-weight:600}
.s-file-f b{color:var(--dkink);font-weight:700}

/* properties */
.s-props{display:grid;grid-template-columns:1fr 1fr;margin-top:var(--s6);border-top:1px solid var(--hair2)}
.s-prop{padding:var(--s4) var(--s4) var(--s4) 0;border-bottom:1px solid var(--hair)}
.s-prop:nth-child(2n){padding-left:var(--s4);padding-right:0;border-left:1px solid var(--hair)}
.s-prop b{display:block;font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.022em}
.s-prop span{display:block;font-size:var(--t5);color:var(--ink2);margin-top:3px;font-weight:600;line-height:1.45}
@media (min-width:900px){
  .s-props{grid-template-columns:repeat(4,1fr);margin-top:var(--s8);border-bottom:1px solid var(--hair2)}
  .s-prop{padding:var(--s5);border-bottom:0;border-left:1px solid var(--hair)}
  .s-prop:first-child{padding-left:0;border-left:0}
  .s-prop:nth-child(2n){padding-left:var(--s5)}
}

/* sections */
.s-sec{padding-top:var(--sec)}
@media (min-width:900px){.s-sec{padding-top:var(--sec-w)}}
.s-sh{border-bottom:1px solid var(--hair2);padding-bottom:var(--s5)}
@media (min-width:900px){.s-sh{display:flex;align-items:flex-end;gap:var(--s10);padding-bottom:var(--s6)}}
@media (min-width:900px){.s-sh .l{flex:1;min-width:0}.s-sh .r{flex:none;width:400px}}
.s-h2{font-family:var(--disp);font-size:var(--d4);font-weight:700;letter-spacing:-.032em;line-height:1.14;margin-top:var(--s2);max-width:22ch}
@media (min-width:900px){.s-h2{font-size:var(--d2);letter-spacing:-.038em;line-height:1.06;max-width:20ch}}
.s-lede{font-size:var(--t3);line-height:1.65;color:var(--ink2);margin-top:var(--s3);max-width:62ch}
@media (min-width:900px){.s-lede{font-size:var(--t2);margin-top:0}}

/* ruled arguments */
.s-args{display:grid;grid-template-columns:1fr}
@media (min-width:900px){.s-args{grid-template-columns:1fr 1fr;column-gap:var(--s10)}}
.s-arg{display:flex;gap:var(--s4);padding:var(--s5) 0;border-bottom:1px solid var(--hair)}
.s-arg:last-child{border-bottom:0}
@media (min-width:900px){.s-arg:nth-last-child(2){border-bottom:0}}
.s-arg .ic{width:38px;height:38px;border-radius:var(--r1);background:var(--paper2);
  display:grid;place-items:center;color:var(--ink);flex:none;overflow:hidden}
.s-arg .ic img{width:38px;height:38px;object-fit:cover}
.s-arg .ic svg{width:19px;height:19px}
.s-arg h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.022em;line-height:1.26}
.s-arg p{font-size:var(--t4);line-height:1.62;color:var(--ink2);margin-top:5px}

/* numbered rail */
.s-how{margin-top:var(--s6);padding:2px var(--s5)}
@media (min-width:900px){.s-how{margin-top:var(--s7);padding:2px var(--s7)}}
.s-step{display:flex;gap:var(--s4);padding:var(--s5) 0;border-bottom:1px solid var(--hair)}
.s-step:last-child{border-bottom:0}
.s-step .n{font-family:var(--disp);font-size:var(--t5);font-weight:800;letter-spacing:.14em;
  color:var(--faint);flex:none;width:28px;padding-top:4px;font-variant-numeric:tabular-nums}
.s-step h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.022em}
.s-step p{font-size:var(--t4);line-height:1.62;color:var(--ink2);margin-top:5px;max-width:58ch}

/* photo rail */
.s-railwrap{position:relative;margin-top:var(--s6)}
.s-rail{display:flex;gap:var(--s3);overflow-x:auto;padding:2px 0 var(--s3);scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch}
.s-rail::-webkit-scrollbar{height:0}
.s-shot{width:220px;flex:none;scroll-snap-align:start}
@media (min-width:900px){.s-shot{width:260px}}
.s-shot img{width:100%;height:168px;object-fit:cover;border-radius:var(--r2);background:var(--paper2)}
.s-shot b{display:block;font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.02em;margin-top:var(--s3)}
.s-shot span{display:block;font-size:var(--t5);color:var(--ink2);font-weight:600;margin-top:3px}
.s-fade{position:absolute;right:0;top:0;bottom:var(--s3);width:48px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--paper) 82%)}

/* two-column index */
.s-feats{margin-top:var(--s5);display:grid;grid-template-columns:1fr}
@media (min-width:900px){.s-feats{margin-top:var(--s6);grid-template-columns:1fr 1fr;column-gap:var(--s10)}}
.s-feat{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s4) 0;border-bottom:1px solid var(--hair)}
.s-feat:last-child{border-bottom:0}
@media (min-width:900px){.s-feat:nth-last-child(2){border-bottom:0}}
.s-feat .ic{width:28px;height:28px;border-radius:9px;background:var(--paper2);display:grid;
  place-items:center;color:var(--ink2);flex:none;margin-top:1px}
.s-feat .ic svg{width:15px;height:15px}
.s-feat .t{display:block;font-size:var(--t2);font-weight:700;letter-spacing:-.012em}
.s-feat .m{display:block;font-size:var(--t4);line-height:1.55;color:var(--ink2);margin-top:2px}

/* corridor list */
.s-rows{margin-top:var(--s5);border-top:1px solid var(--hair2)}
.s-row{display:grid;grid-template-columns:28px 1fr;gap:var(--s3);padding:var(--s4) 0;border-bottom:1px solid var(--hair);align-items:start}
@media (min-width:900px){.s-row{grid-template-columns:28px 180px 1fr auto;align-items:center;gap:var(--s6)}}
.s-row .n{font-family:var(--disp);font-size:var(--t5);font-weight:800;letter-spacing:.1em;color:var(--faint);
  font-variant-numeric:tabular-nums;padding-top:3px}
.s-row h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.02em}
.s-row p{font-size:var(--t4);line-height:1.55;color:var(--ink2);margin-top:4px}
@media (min-width:900px){.s-row p{margin-top:0}}
.s-row .c{font-family:var(--mono);font-size:var(--t5);color:var(--ink2);font-weight:600;letter-spacing:.02em}

/* about */
.s-about{display:flex;flex-direction:column;gap:var(--s6);margin-top:var(--s5)}
@media (min-width:900px){.s-about{flex-direction:row;align-items:flex-start;gap:var(--s10);margin-top:var(--s7)}}
@media (min-width:900px){.s-about .copy{flex:1.4;min-width:0}.s-about .side{flex:1;max-width:380px}}
.s-body{font-size:var(--t3);line-height:1.72;color:var(--ink2);margin-top:var(--s4);max-width:64ch}
.s-body b{color:var(--ink);font-weight:700}
.s-plate{border-radius:var(--r3);overflow:hidden;background:var(--dk);box-shadow:var(--sh2)}
.s-plate img{width:100%;height:280px;object-fit:cover}
.s-plate figcaption{padding:var(--s4) var(--s5);font-size:var(--t5);font-weight:700;color:var(--dkmut);
  letter-spacing:.04em;text-transform:uppercase}

/* FAQ */
.s-faqs{margin-top:var(--s5);border-top:1px solid var(--hair2)}
.s-faq{border-bottom:1px solid var(--hair)}
@media (min-width:900px){.s-faq .row{display:grid;grid-template-columns:360px 1fr;gap:var(--s10);align-items:start}}
.s-faq .qq{display:flex;align-items:center;gap:var(--s3);padding:var(--s4) 0;width:100%;text-align:left;
  font-size:var(--t2);font-weight:600;letter-spacing:-.008em;cursor:pointer}
.s-faq .qq svg{width:14px;height:14px;color:var(--faint);margin-left:auto;flex:none}
.s-faq.open .qq svg{transform:rotate(90deg);color:var(--ink)}
.s-faq .aa{font-size:var(--t3);line-height:1.7;color:var(--ink2);padding-bottom:var(--s5);max-width:72ch}
@media (min-width:900px){.s-faq .aa{padding-top:var(--s4)}}
.s-faq.shut .aa{display:none}

.s-close{margin-top:var(--sec)}
@media (min-width:900px){.s-close{margin-top:var(--sec-w)}}

/* form */
.s-form{display:grid;gap:var(--s4);margin-top:var(--s5)}
.s-form .row{display:grid;gap:var(--s3)}
@media (min-width:900px){.s-form .row{grid-template-columns:1fr 1fr}}
.s-field span{display:block;font-size:var(--t5);font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);margin-bottom:6px}
.s-field input,.s-field select,.s-field textarea{color:var(--ink)}
.s-field input,.s-field select,.s-field textarea{
  width:100%;height:48px;border:1px solid var(--hair2);border-radius:var(--r1);background:var(--white);
  padding:0 var(--s4);font-size:var(--t2);box-shadow:var(--sh1)}
.s-field textarea{height:120px;padding:var(--s3) var(--s4);resize:vertical}
.s-field input:focus,.s-field select:focus,.s-field textarea:focus{outline:2px solid var(--ink);outline-offset:1px}
.s-note{font-size:var(--t5);color:var(--ink2);font-weight:600;line-height:1.55}
.s-err{padding:var(--s3) var(--s4);background:rgba(217,85,59,.1);border:1px solid rgba(217,85,59,.3);
  border-radius:var(--r1);color:var(--alert-l);font-size:var(--t4);font-weight:600;line-height:1.5}
.btn.is-loading{opacity:.75;pointer-events:none;cursor:wait}
.s-form.is-sent .pane{display:none}
.s-ok{display:none;padding:var(--s8) var(--s5);text-align:center}
.s-form.is-sent .s-ok{display:block}
.s-ok h3{font-family:var(--disp);font-size:var(--d4);font-weight:700;letter-spacing:-.03em}

/* footer */
.s-foot{background:var(--paper2);border-top:1px solid var(--hair);padding:var(--s8) 0 var(--s7)}
@media (min-width:900px){.s-foot{padding:var(--s10) 0 var(--s8)}}
.s-foot-top{display:flex;flex-direction:column;gap:var(--s7)}
@media (min-width:900px){.s-foot-top{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--s10)}}
.s-foot-line{margin-top:var(--s3);max-width:36ch;font-size:var(--t4);line-height:1.65;color:var(--ink2);font-weight:500}
.s-foot-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6)}
@media (min-width:900px){.s-foot-cols{width:440px;flex:none;gap:var(--s8)}}
.s-foot-k{font-size:var(--t5);letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--ink2);margin-bottom:var(--s2)}
.s-foot-links a{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);
  padding:11px 0;border-bottom:1px solid var(--hair);font-size:var(--t4);font-weight:600;color:var(--ink)}
.s-foot-links li:last-child a{border-bottom:0}
.s-foot-links svg{width:13px;height:13px;color:var(--faint)}
.s-foot-bar{margin-top:var(--s7);padding-top:var(--s5);border-top:1px solid var(--hair2);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);
  font-size:var(--t5);color:var(--mut);font-weight:600}
@media (min-width:900px){
  .s-foot-cols{width:auto;flex:1.4;grid-template-columns:repeat(4,1fr);gap:var(--s8)}
}

.skip{position:absolute;left:12px;top:-40px;z-index:40;background:var(--ink);color:var(--paper);padding:8px 12px;border-radius:8px}
.skip:focus{top:12px}
section[id]{scroll-margin-top:76px}

/* ── enterprise sweep: full-bleed splits, desks, nations, notes ── */
.s-band.photo{min-height:86vh;display:grid;place-items:center;padding:var(--s11) var(--gut)}
@media (min-width:900px){.s-band.photo{padding:var(--s12) 64px}}
.s-hero.s-band.photo{place-items:center stretch}

.s-split{display:grid;grid-template-columns:1fr}
@media (min-width:900px){.s-split{grid-template-columns:1fr 1fr;min-height:560px}}
.s-split .media{min-height:320px;background:var(--olive2)}
.s-split .media img{width:100%;height:100%;object-fit:cover;min-height:320px}
@media (min-width:900px){.s-split .media img{min-height:560px}}
.s-split .copy{padding:var(--s7) var(--gut);display:flex;flex-direction:column;justify-content:center;gap:var(--s3)}
@media (min-width:900px){.s-split .copy{padding:var(--s9) 64px}}
.s-split .copy.dk{background:var(--olive);color:var(--dkink)}
.s-split .copy.dk .eyebrow{color:var(--gold)}
.s-split .copy.dk p,.s-split .copy.dk li{color:var(--sage)}
.s-split .copy.dk h2{color:var(--dkink)}
.s-split .copy h2{font-family:var(--disp);font-size:var(--d4);font-weight:700;letter-spacing:-.032em;line-height:1.12;max-width:16ch}
@media (min-width:900px){.s-split .copy h2{font-size:var(--d2)}}
.s-split .copy p{font-size:var(--t2);line-height:1.65;color:var(--ink2);max-width:54ch}
.s-split ul{margin-top:var(--s4);display:grid;gap:10px}
.s-split li{font-size:var(--t3);line-height:1.5;color:var(--ink2);padding-left:18px;position:relative;font-weight:500}
.s-split li::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
@media (min-width:900px){.s-split.flip .media{order:2}}

.s-props.wide{margin:0;background:var(--paper2);padding:0 64px}
@media (max-width:899px){.s-props.wide{padding:0 var(--gut)}}
.s-props.wide .s-prop{padding:var(--s6) var(--s5)}

.s-pipe{display:grid;grid-template-columns:1fr;background:var(--olive);color:var(--dkink)}
@media (min-width:900px){.s-pipe{grid-template-columns:repeat(4,1fr)}}
.s-pipe article{padding:var(--s7) var(--gut);border-bottom:1px solid var(--dkhair)}
@media (min-width:900px){.s-pipe article{padding:var(--s9) 40px;border-bottom:0;border-right:1px solid var(--dkhair)}}
.s-pipe article:last-child{border:0}
.s-pipe b{display:block;font-family:var(--disp);font-size:var(--t5);letter-spacing:.16em;color:var(--gold);margin-bottom:var(--s8)}
.s-pipe h3{font-family:var(--disp);font-size:var(--d5);font-weight:700;letter-spacing:-.026em;margin-bottom:var(--s3)}
.s-pipe p{font-size:var(--t4);line-height:1.65;color:var(--sage)}

.s-bento{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);margin-top:var(--s6)}
@media (min-width:900px){.s-bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:280px;gap:var(--s3)}}
.s-bento a,.s-bento figure{position:relative;overflow:hidden;border-radius:var(--r2);min-height:200px;display:block}
.s-bento img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.s-bento figcaption{position:absolute;left:0;right:0;bottom:0;padding:var(--s4);z-index:1;
  background:linear-gradient(transparent,rgba(20,19,18,.82));color:var(--dkink)}
.s-bento figcaption b{display:block;font-family:var(--disp);font-size:var(--d6);font-weight:700}
.s-bento figcaption span{display:block;font-size:var(--t5);font-weight:600;color:var(--sage);margin-top:3px}
@media (min-width:900px){
  .s-bento .span2{grid-column:span 2;grid-row:span 2;min-height:100%}
}

.s-nations{display:grid;grid-template-columns:1fr;gap:1px;background:var(--hair);margin-top:var(--s6);border:1px solid var(--hair)}
@media (min-width:700px){.s-nations{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.s-nations{grid-template-columns:repeat(4,1fr)}}
.s-nation{background:var(--paper);padding:var(--s5);min-height:180px}
.s-nation .n{font-family:var(--mono);font-size:var(--t5);color:var(--ink2);font-weight:600}
.s-nation h3{font-family:var(--disp);font-size:var(--d5);font-weight:700;letter-spacing:-.024em;margin:var(--s3) 0}
.s-nation p{font-size:var(--t4);line-height:1.55;color:var(--ink2)}
.s-nation .c{display:block;margin-top:var(--s4);font-family:var(--mono);font-size:var(--t5);color:var(--ink2)}
.s-airports{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hair);margin-top:var(--s6);border:1px solid var(--hair)}
@media (min-width:900px){.s-airports{grid-template-columns:repeat(4,1fr)}}
.s-airports article{background:var(--white);padding:var(--s5) var(--s5) var(--s6)}
.s-airports b{display:block;font-family:var(--mono);font-size:var(--d5);font-weight:700;letter-spacing:.04em}
.s-airports span{display:block;font-size:var(--t4);color:var(--ink2);margin-top:6px;font-weight:600;line-height:1.45}
.s-airports em{display:block;font-style:normal;font-size:var(--t5);color:var(--ink2);margin-top:4px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}

.s-engage{display:grid;grid-template-columns:1fr;gap:var(--s3);margin-top:var(--s6)}
@media (min-width:900px){.s-engage{grid-template-columns:repeat(3,1fr)}}
.s-engage article{background:var(--white);border:1px solid var(--hair);border-radius:var(--r3);padding:var(--s6);box-shadow:var(--sh1)}
.s-engage .k{font-size:var(--t5);letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--ink2)}
.s-engage h3{font-family:var(--disp);font-size:var(--d5);font-weight:700;letter-spacing:-.026em;margin:var(--s3) 0 var(--s4)}
.s-engage p{font-size:var(--t3);line-height:1.65;color:var(--ink2)}
.s-engage ul{margin-top:var(--s4);display:grid;gap:8px}
.s-engage li{font-size:var(--t4);color:var(--ink2);padding-left:14px;position:relative}
.s-engage li::before{content:'';position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--gold)}

.s-notes{display:grid;grid-template-columns:1fr;gap:var(--s3);margin-top:var(--s6)}
@media (min-width:900px){.s-notes{grid-template-columns:1.4fr 1fr 1fr}}
.s-note-c{display:block;background:var(--white);border:1px solid var(--hair);border-radius:var(--r3);overflow:hidden;box-shadow:var(--sh1);color:inherit}
.s-note-c img{width:100%;height:220px;object-fit:cover}
@media (min-width:900px){.s-notes .lead img{height:100%;min-height:360px}.s-notes .lead{display:grid;grid-template-rows:1fr auto}}
.s-note-c .g{padding:var(--s5)}
.s-note-c .k{font-size:var(--t5);letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--ink2)}
.s-note-c h3{font-family:var(--disp);font-size:var(--d5);font-weight:700;letter-spacing:-.024em;margin:var(--s2) 0;line-height:1.2}
.s-note-c p{font-size:var(--t4);line-height:1.6;color:var(--ink2)}

.s-who{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hair);margin-top:var(--s6);border:1px solid var(--hair)}
@media (min-width:900px){.s-who{grid-template-columns:repeat(4,1fr)}}
.s-who article{background:var(--paper);padding:var(--s6)}
.s-who h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;margin-bottom:var(--s3)}
.s-who p{font-size:var(--t4);line-height:1.6;color:var(--ink2)}

.s-close .s-form{max-width:960px}

@media (max-width:899px){
  .s-bento{grid-template-columns:1fr}
  .s-pipe article{padding:var(--s6) var(--gut)}
}

/* ── hero mosaic + dual CTAs ── */
.s-hero.s-band{text-align:left;place-items:stretch}
.s-hero-in{width:100%;max-width:1760px;margin:0 auto;display:grid;gap:var(--s7);align-items:center}
@media (min-width:980px){.s-hero-in{grid-template-columns:1.05fr .95fr;gap:48px}}
.s-hero .s-hero-copy h1{margin-left:0;margin-right:0;max-width:14ch}
.s-hero .sub,.s-hero .aside{margin-left:0;margin-right:0}
.s-hero-ctas{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s7)}
.s-hero-ctas .btn.gold{margin-top:0}
.btn.ghost-light{background:transparent;border:1px solid rgba(245,243,238,.3);color:var(--dkink);
  height:48px;border-radius:var(--r1);padding:0 22px;font-size:var(--t5);font-weight:700;
  letter-spacing:.14em;text-transform:uppercase}
.btn.ghost-light:hover{background:rgba(245,243,238,.08)}
.s-hero-mosaic{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:190px 130px 130px;gap:10px}
@media (min-width:980px){.s-hero-mosaic{grid-template-rows:220px 150px 150px}}
.s-hero-mosaic a:nth-child(1){grid-row:1 / 3}
.s-hero-mosaic a:nth-child(4){grid-column:1 / -1}
.hm{position:relative;display:block;overflow:hidden;border-radius:14px;min-height:120px;
  border:1px solid rgba(245,243,238,.12);box-shadow:var(--dsh)}
.hm img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .8s var(--ease,cubic-bezier(.22,1,.36,1))}
.hm:hover img{transform:scale(1.05)}
.hm::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(20,19,18,.78))}
.hm-lab{position:absolute;left:12px;right:12px;bottom:12px;z-index:1;display:flex;align-items:baseline;gap:8px;color:var(--dkink)}
.hm-lab b{font-family:var(--mono);font-size:var(--t5);color:var(--gold);font-weight:600}
.hm-lab span{font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.02em}

/* ── mandate form ── */
.mandate{display:grid;grid-template-columns:1fr;max-width:1200px;margin:var(--s8) auto 0;
  background:var(--white);color:var(--ink);border-radius:var(--r3);overflow:hidden;text-align:left;box-shadow:var(--sh3)}
@media (min-width:980px){.mandate{grid-template-columns:.88fr 1.12fr}}
.mandate-side{background:var(--olive);color:var(--dkink);padding:var(--s7);position:relative;overflow:hidden}
.mandate-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}
.mandate-side .g{position:relative;z-index:1}
.mandate-side .eyebrow{color:var(--gold)}
.mandate-side h2{font-family:var(--serif);font-size:var(--d4);font-weight:500;line-height:1.15;margin:var(--s3) 0 var(--s4)}
.mandate-side p{font-size:var(--t3);line-height:1.65;color:var(--sage)}
.mandate-side ul{margin-top:var(--s5);display:grid;gap:10px}
.mandate-side li{font-size:var(--t4);color:var(--dkink);padding-left:16px;position:relative;font-weight:500}
.mandate-side li::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.mandate-main{padding:var(--s6)}
@media (min-width:980px){.mandate-main{padding:var(--s8)}}
.picks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:var(--s5)}
.pick{border:1px solid var(--hair2);border-radius:var(--r1);padding:14px 12px;text-align:left;background:var(--paper);
  color:var(--ink);font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.02em}
.pick small{display:block;font-family:var(--ui);font-size:var(--t5);font-weight:600;color:var(--ink2);margin-top:4px}
.pick.is-on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--white));box-shadow:0 0 0 1px var(--gold)}
.s-field input,.s-field select,.s-field textarea{background:var(--paper);box-shadow:none}
.s-field input:focus,.s-field select:focus,.s-field textarea:focus{outline:2px solid var(--gold);background:var(--white)}
.mandate .s-form{margin-top:0}
.mandate.is-sent .pane{display:none}
.mandate.is-sent .s-ok{display:block;padding:var(--s10) var(--s5)}
.mandate .s-ok h3{color:var(--ink)}

/* inner pages */
.pg-hero{position:relative;min-height:42vh;display:grid;align-items:end;overflow:hidden;color:var(--dkink)}
.pg-hero .bg{position:absolute;inset:0}
.pg-hero .bg img{width:100%;height:100%;object-fit:cover}
.pg-hero .bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(37,39,30,.3),rgba(28,30,24,.88) 70%)}
.pg-hero .s-in{position:relative;z-index:1;padding-top:var(--s10);padding-bottom:var(--s8)}
.pg-hero h1{font-family:var(--serif);font-size:var(--d3);font-weight:500;letter-spacing:-.02em;line-height:1.08;max-width:16ch;margin-top:var(--s3)}
@media (min-width:900px){.pg-hero h1{font-size:var(--d1)}}
.pg-hero h1 em{font-style:italic;color:var(--gold)}
.pg-hero .sub{max-width:54ch;color:var(--sage);margin-top:var(--s4);font-size:var(--t2)}
.crumb{font-size:var(--t5);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.crumb a{color:var(--sage)}
.svc-toc{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hair);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
@media (min-width:900px){.svc-toc{grid-template-columns:repeat(4,1fr)}}
.svc-toc a{background:var(--paper);padding:var(--s5) var(--s5);display:block}
.svc-toc a:hover{background:var(--white)}
.svc-toc b{display:block;font-family:var(--mono);font-size:var(--t5);color:var(--ink2);margin-bottom:6px}
.svc-toc span{font-family:var(--disp);font-size:var(--d6);font-weight:700}
.contact-grid{display:grid;gap:var(--s4);margin-top:var(--s6)}
@media (min-width:700px){.contact-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1200px){.contact-grid{grid-template-columns:repeat(4,1fr)}}
.contact-grid article{background:var(--white);border:1px solid var(--hair);border-radius:var(--r3);padding:var(--s5);box-shadow:var(--sh1)}
.contact-grid h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;margin:var(--s2) 0}
.contact-grid p{font-size:var(--t4);line-height:1.6;color:var(--ink2)}

/* split overlay chip */
.s-split .media{position:relative}
.media-chip{
  position:absolute;left:16px;bottom:16px;z-index:2;
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  background:rgba(37,39,30,.88);color:var(--gold);padding:8px 12px;border-radius:8px;
  border:1px solid rgba(209,179,90,.35);backdrop-filter:blur(10px)
}
@media (min-width:900px){.media-chip{left:24px;bottom:24px}}

.term-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--s2)}
.term-pills span{
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  border:1px solid var(--hair2);border-radius:999px;padding:6px 10px;color:var(--ink)
}
.s-split .copy.dk .term-pills span{border-color:var(--dkhair);color:var(--dkink)}
.term-pills span.on{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}

/* agricultural product specs + Incoterms */
.s-detail{background:var(--paper2);padding:var(--s8) 0}
@media (min-width:900px){.s-detail{padding:var(--s10) 0}}
.s-specs{display:grid;gap:var(--s3);grid-template-columns:1fr}
@media (min-width:700px){.s-specs{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.s-specs{grid-template-columns:repeat(4,1fr)}}
.s-specs article{background:var(--white);border:1px solid var(--hair);border-radius:var(--r2);overflow:hidden;box-shadow:var(--sh1)}
.s-specs img{width:100%;height:148px;object-fit:cover}
.s-specs article > div{padding:var(--s4) var(--s5) var(--s5)}
.s-specs .k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--ink2)}
.s-specs h3{font-family:var(--disp);font-size:var(--d6);font-weight:700;letter-spacing:-.02em;margin:6px 0 8px}
.s-specs p{font-size:var(--t4);line-height:1.55;color:var(--ink2)}
.s-specs .tag{display:inline-block;margin-top:10px;font-family:var(--mono);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink);background:color-mix(in srgb,var(--gold) 28%,var(--white));
  padding:4px 8px;border-radius:6px}

.s-terms{display:grid;grid-template-columns:1fr;gap:var(--s3);margin-top:var(--s6)}
@media (min-width:900px){.s-terms{grid-template-columns:1.08fr .92fr}}
.s-terms article{padding:var(--s7);border-radius:var(--r3)}
.s-terms .cif{background:var(--olive);color:var(--dkink);box-shadow:var(--dsh)}
.s-terms .fob{background:var(--white);color:var(--ink);border:1px solid var(--hair);box-shadow:var(--sh1)}
.s-terms .k{font-size:var(--t5);letter-spacing:.16em;text-transform:uppercase;font-weight:800}
.s-terms .cif .k{color:var(--gold)}
.s-terms .fob .k{color:var(--ink2)}
.s-terms h3{font-family:var(--serif);font-size:var(--d2);font-weight:500;font-style:italic;letter-spacing:-.02em;margin:var(--s3) 0 var(--s4)}
.s-terms p{font-size:var(--t3);line-height:1.65;max-width:48ch}
.s-terms .cif p{color:var(--sage)}
.s-terms .fob p{color:var(--ink2)}
.s-terms ul{margin-top:var(--s4);display:grid;gap:8px}
.s-terms li{font-size:var(--t4);padding-left:16px;position:relative;font-weight:500}
.s-terms li::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.s-terms .cif li{color:var(--dkink)}
.s-terms .fob li{color:var(--ink2)}

/* air first / sea exception */
.s-mode{display:grid;grid-template-columns:1fr}
@media (min-width:900px){.s-mode{grid-template-columns:1.45fr .85fr}}
.s-mode article{padding:var(--s7) var(--gut)}
@media (min-width:900px){.s-mode article{padding:var(--s9) 64px}}
.s-mode .air{background:var(--olive);color:var(--dkink)}
.s-mode .sea{background:var(--paper2);color:var(--ink)}
.s-mode .k{font-size:var(--t5);letter-spacing:.16em;text-transform:uppercase;font-weight:800}
.s-mode .air .k{color:var(--gold)}
.s-mode h3{font-family:var(--disp);font-size:var(--d4);font-weight:700;letter-spacing:-.03em;margin:var(--s3) 0 var(--s3)}
@media (min-width:900px){.s-mode h3{font-size:var(--d3)}}
.s-mode p{font-size:var(--t3);line-height:1.65;max-width:56ch}
.s-mode .air p{color:var(--sage)}
.s-mode .codes{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--s4)}
.s-mode .codes b{
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em;
  background:rgba(245,243,238,.08);color:var(--dkink);border:1px solid var(--dkhair);
  padding:5px 8px;border-radius:6px}

/* airport cards: air vs sea */
.s-airports article{position:relative;transition:background .2s}
.s-airports article:hover{background:var(--paper)}
.s-airports article .mode{
  display:inline-block;margin-top:10px;font-family:var(--mono);font-size:10px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);
  background:color-mix(in srgb,var(--gold) 32%,var(--white));padding:3px 7px;border-radius:5px}
.s-airports article.sea{background:var(--paper2)}
.s-airports article.sea .mode{background:transparent;border:1px solid var(--hair2);color:var(--ink2)}
.s-airports article.term{background:var(--olive);color:var(--dkink)}
.s-airports article.term b{color:var(--gold)}
.s-airports article.term span{color:var(--sage)}
.s-airports article.term em{color:var(--gold)}
.s-airports article.term .mode{background:var(--gold);color:var(--gold-ink)}

.hm-lab{flex-wrap:wrap}
.hm-lab span{line-height:1.15}
