/* On Location Hire concept. Tokens first. */
:root{
  --ink:#090D0A; --ink2:#121913; --ink3:#1C251E;
  --amber:#FFC738; --amber-d:#E0A91C;
  --paper:#F1F3EF; --paper2:#E2E6DF; --white:#fff;
  --mute:#454E47; --mute-d:#B7C0B8;
  --line:rgba(9,13,10,.2); --line-d:rgba(255,255,255,.22);
  --r:3px;
  --disp:"Anybody","Arial Narrow",Arial,sans-serif;
  --body:"Albert Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --chrome:112px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0 auto;max-width:1920px;background:var(--paper);color:var(--ink);font:400 18px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p,dl,dd,figure,blockquote{margin:0}
.wrap{width:min(1340px,100% - 48px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--ink);padding:10px 16px;z-index:100}
.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.is-light :focus-visible,.cta :focus-visible,.hybrid :focus-visible{outline-color:var(--ink)}
h1,h2,h3{font-family:var(--disp);font-stretch:125%;font-weight:800;line-height:1;letter-spacing:-.012em;text-wrap:balance}
h2{font-size:clamp(30px,3.4vw,52px)}
h3{font-size:clamp(20px,1.6vw,26px)}
p{text-wrap:pretty}
h1,h2,h3{overflow-wrap:break-word}

/* tape: the clapper-arm stripe, used as the one recurring motif */
.tape{height:18px;background:repeating-linear-gradient(-58deg,var(--amber) 0 22px,var(--ink) 22px 44px)}

/* buttons */
.btn{display:inline-flex;align-items:center;min-height:50px;padding:0 26px;background:var(--amber);color:var(--ink);font:700 17px/1 var(--body);text-decoration:none;border:2px solid var(--amber);border-radius:var(--r);transition:background .18s,color .18s,border-color .18s,transform .18s}
.btn:hover{background:var(--white);border-color:var(--white);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--white);border-color:var(--white)}
.btn-ghost:hover{background:var(--white);color:var(--ink)}
.btn-ink{background:var(--ink);border-color:var(--ink);color:var(--white)}
.btn-ink:hover{background:var(--amber);border-color:var(--ink);color:var(--ink)}
.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}
.btn-line-ink{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-line-ink:hover{background:var(--ink);color:var(--amber);border-color:var(--ink)}
.link-arrow{font-weight:700;text-decoration:none;border-bottom:3px solid var(--amber);padding-bottom:2px}
.link-arrow:hover{background:var(--amber)}

/* concept bar + header */
.concept-bar{background:var(--amber);color:var(--ink);font:600 14px/36px var(--body);height:36px;overflow:hidden;white-space:nowrap}
.concept-bar .wrap{overflow:hidden;text-overflow:ellipsis}
.site-head{background:var(--ink);color:var(--white);height:76px;position:relative;z-index:20}
.head-in{display:flex;align-items:center;justify-content:space-between;gap:28px;height:76px}
.logo{display:block;flex:none}
.logo img{width:auto;height:56px}
.nav ul{display:flex;gap:clamp(18px,2.4vw,40px);white-space:nowrap}
.nav a{display:block;padding:8px 0;font:600 16px/1 var(--body);text-decoration:none;border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current]{border-bottom-color:var(--amber)}
.head-call{margin-left:auto;display:flex;align-items:baseline;gap:10px;text-decoration:none;white-space:nowrap;background:var(--amber);color:var(--ink);padding:12px 18px;border-radius:var(--r);font-size:16px;line-height:1}
.head-call .hc-l{font-weight:500}
.head-call strong{font-family:var(--disp);font-stretch:115%;font-weight:800;font-size:18px}
.head-call:hover{background:var(--white)}
.mmenu{display:none;margin-left:auto}
.mmenu summary{list-style:none;cursor:pointer;font:700 16px/1 var(--body);padding:14px 18px;border:2px solid var(--amber);border-radius:var(--r)}
.mmenu summary::-webkit-details-marker{display:none}
.mm-panel{position:absolute;left:0;right:0;top:76px;background:var(--ink2);border-top:3px solid var(--amber);padding:12px 24px 24px}
.mm-panel a{display:block;padding:14px 0;font:600 20px/1.2 var(--body);text-decoration:none;border-bottom:1px solid var(--line-d)}
@media (max-width:1180px){.head-call .hc-l{display:none}}
@media (max-width:980px){.nav,.head-call{display:none}.mmenu{display:block}}

/* ---------- HOME HERO ---------- */
.hero{position:relative;overflow:hidden;background:var(--ink);color:var(--white);height:clamp(340px,calc(100svh - var(--chrome) - 104px),640px);min-height:340px;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 38%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,10,.94) 0%,rgba(9,13,10,.8) 38%,rgba(9,13,10,.35) 72%,rgba(9,13,10,.55) 100%)}
.hero-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,410px);gap:clamp(24px,4vw,72px);align-items:center}
.hero h1{font-size:clamp(32px,min(5vw,9svh),88px);line-height:.95;font-weight:850;max-width:15ch}
.h1-a,.h1-b{display:block}
.h1-b{color:var(--amber);margin-top:.12em}
.hero-sub{margin-top:clamp(12px,2.2svh,26px);max-width:44ch;font-size:clamp(16px,1.35vw,20px);color:#E8EDE8}
.hero-btns{margin-top:clamp(14px,2.6svh,30px);display:flex;gap:14px;flex-wrap:wrap}

/* the slate: signature */
.slate{position:relative;justify-self:end;width:100%;max-width:410px;filter:drop-shadow(0 22px 34px rgba(0,0,0,.55))}
.slate-arm{height:44px;border:3px solid var(--white);border-bottom:0;border-radius:var(--r) var(--r) 0 0;background:repeating-linear-gradient(-58deg,var(--amber) 0 24px,var(--ink) 24px 48px);transform-origin:14px 100%;transform:rotate(-5deg);position:relative;z-index:2;margin-bottom:-3px;animation:clap 1s .5s cubic-bezier(.3,1.6,.5,1) both}
@keyframes clap{from{transform:rotate(-26deg)}to{transform:rotate(-5deg)}}
.slate-board{background:var(--ink2);border:3px solid var(--white);border-radius:0 0 var(--r) var(--r);padding:0}
.slate-board dl{display:grid;grid-template-columns:1fr 1fr}
.sl-row{padding:clamp(8px,1.6svh,16px) 18px;border-top:2px solid var(--white)}
.sl-r{border-left:2px solid var(--white)}
.sl-wide2{grid-column:1 / -1}
.sl-small dd{font-size:clamp(16px,1.4vw,20px)}
.sl-wide{grid-column:1 / -1;border-top:0;background:var(--amber);color:var(--ink)}
.sl-row dt{font:600 14px/1.2 var(--body);color:var(--mute-d)}
.sl-wide dt{color:var(--ink)}
.sl-row dd{font:800 clamp(18px,1.8vw,26px)/1.05 var(--disp);font-stretch:118%;margin-top:4px}
.sl-wide dd{font-size:clamp(22px,2.4vw,34px)}
@media (prefers-reduced-motion:reduce){.slate-arm{animation:none}.btn,.dept,.dept img{transition:none}}

/* fact strip */
.facts{background:var(--amber);color:var(--ink);border-top:3px solid var(--ink)}
.facts-in{display:grid;grid-template-columns:repeat(5,1fr);height:101px}
.facts-in li{padding:14px 20px;border-left:2px solid var(--ink);display:flex;flex-direction:column;justify-content:center}
.facts-in li:first-child{border-left:0;padding-left:0}
.facts-in strong{font:850 clamp(24px,2.5vw,38px)/1 var(--disp);font-stretch:125%;letter-spacing:-.015em}
.facts-in span{font:500 14.5px/1.25 var(--body);margin-top:4px}

/* ---------- NOISE FLOOR ---------- */
.floor{background:var(--paper);padding:clamp(64px,8vw,128px) 0}
.floor-in{display:grid;grid-template-columns:5fr 6fr;gap:clamp(36px,6vw,110px);align-items:center}
.floor h2{font-size:clamp(34px,4.2vw,68px);margin-bottom:28px}
.floor-copy p{max-width:46ch;margin-bottom:16px;color:var(--ink)}
.floor-copy .link-arrow{display:inline-block;margin-top:10px}
.ladder{background:var(--ink);color:var(--white);padding:clamp(24px,3vw,44px);border-radius:var(--r);border-left:12px solid var(--amber)}
.ladder figcaption{font:500 15px/1.4 var(--body);color:var(--mute-d);margin-bottom:26px;max-width:52ch}
.ladder ol{display:grid;gap:18px}
.ladder li{display:grid;grid-template-columns:minmax(120px,170px) 1fr 44px;gap:16px;align-items:center}
.lad-n{font:600 15.5px/1.2 var(--body)}
.lad-bar{height:26px;background:var(--ink3);border-radius:2px;overflow:hidden;display:block}
.lad-bar i{display:block;height:100%;background:#7B867D;border-radius:2px}
.is-low .lad-bar i{background:var(--amber)}
.lad-v{font:800 24px/1 var(--disp);font-stretch:118%;text-align:right}
.is-low .lad-v{color:var(--amber)}

/* ---------- DEPARTMENTS: poster panels ---------- */
.depts{background:var(--ink);color:var(--white);padding:clamp(56px,6vw,96px) 0 0}
.depts-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,6vw,100px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}
.depts-head h2{font-size:clamp(34px,4.2vw,68px)}
.depts-head p{color:var(--mute-d);max-width:52ch}
.depts-row{display:flex;height:clamp(460px,44vw,680px);border-top:3px solid var(--amber)}
.dept{position:relative;flex:1 1 0;min-width:0;overflow:hidden;text-decoration:none;border-left:3px solid var(--ink);transition:flex-grow .5s cubic-bezier(.2,.8,.2,1)}
.dept:first-child{border-left:0}
.dept img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.dept::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,13,10,.05) 30%,rgba(9,13,10,.92) 100%)}
.dept-t{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 26px 30px}
.dept-t b{display:block;font:850 clamp(24px,2.3vw,36px)/1 var(--disp);font-stretch:122%}
.dept-t em{display:block;font-style:normal;font-size:15.5px;line-height:1.45;margin-top:12px;color:#E8EDE8;max-width:34ch}
.dept:hover,.dept:focus-visible{flex-grow:1.7}
.dept:hover img{transform:scale(1.04)}
.dept:focus-visible{outline-offset:-6px}

/* ---------- HYBRID ---------- */
.hybrid{background:var(--amber);color:var(--ink);padding:clamp(64px,8vw,120px) 0;overflow:hidden}
.hybrid-in{display:grid;grid-template-columns:7fr 5fr;gap:clamp(36px,7vw,120px);align-items:center}
.hybrid h2{font-size:clamp(40px,5.8vw,96px);line-height:.92;margin-bottom:28px}
.hy-lead{font:600 clamp(20px,1.7vw,26px)/1.4 var(--body);max-width:36ch;margin-bottom:18px}
.hy-copy p{max-width:52ch;margin-bottom:16px}
.hy-btn{margin-top:26px}
.hy-plate{background:var(--white);border:4px solid var(--ink);box-shadow:16px 16px 0 var(--ink);padding:14px 14px 0;max-width:460px;justify-self:center;width:100%}
.hy-plate img{width:100%;aspect-ratio:1;object-fit:contain}
.hy-plate figcaption{padding:14px 4px 16px;font:600 15px/1.35 var(--body);border-top:2px solid var(--ink)}

/* ---------- THE 11PM CALL ---------- */
.night{background:var(--ink2);color:var(--white);padding:clamp(64px,8vw,128px) 0;position:relative}
.night-h{font-size:clamp(34px,4.6vw,76px);max-width:16ch;margin-bottom:clamp(36px,5vw,64px)}
.callsheet{display:grid;grid-template-columns:repeat(3,1fr);border-top:3px solid var(--amber);margin-bottom:clamp(40px,5vw,72px)}
.callsheet li{padding:26px 28px 8px 0;border-right:2px solid var(--line-d);margin-right:28px}
.callsheet li:last-child{border-right:0;margin-right:0}
.callsheet b{display:block;white-space:nowrap;font:850 clamp(40px,5.4vw,92px)/.9 var(--disp);font-stretch:130%;color:var(--amber);letter-spacing:-.025em}
.callsheet span{display:block;margin-top:16px;max-width:30ch;color:#DDE3DD}
.night-q{max-width:980px;margin-left:auto;border-left:8px solid var(--amber);padding-left:clamp(20px,3vw,44px)}
.night-q blockquote p{font:500 clamp(19px,1.7vw,25px)/1.5 var(--body)}
.night-q figcaption{margin-top:18px;font:700 17px/1 var(--body);color:var(--amber)}

/* ---------- CREDITS ---------- */
.credits{padding:clamp(64px,8vw,120px) 0 clamp(40px,5vw,72px);background:var(--paper)}
.credits h2{font-size:clamp(32px,3.8vw,60px);margin-bottom:clamp(32px,4vw,64px);max-width:14ch}
.cr-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.cr{border-top:6px solid var(--ink);padding-top:22px}
.cr-2{margin-top:72px}
.cr-3{margin-top:28px}
.cr blockquote p{font:500 clamp(18px,1.5vw,21px)/1.55 var(--body)}
.cr figcaption{margin-top:20px;font-size:16px;color:var(--mute)}
.cr figcaption b{display:block;color:var(--ink);font-size:18px}

.clients{background:var(--paper2);color:var(--ink);padding:clamp(40px,5vw,64px) 0}
.clients-in{display:grid;grid-template-columns:minmax(220px,3fr) 9fr;gap:40px;align-items:center}
.clients h2{font-size:clamp(22px,2vw,30px);line-height:1.1}
.clients h2 span{display:block;font:400 16px/1.4 var(--body);margin-top:10px;color:var(--mute);font-stretch:100%}
.clients ul{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center}
.clients img{height:40px;width:auto;max-width:120px;object-fit:contain}

/* ---------- SUSTAIN BAND ---------- */
.green{position:relative;color:var(--white);background:var(--ink);overflow:hidden;min-height:520px;display:flex;align-items:center;padding:clamp(56px,7vw,110px) 0}
.green-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 55%}
.green-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,10,.92),rgba(9,13,10,.5) 60%,rgba(9,13,10,.1))}
.green-in{position:relative}
.green-panel{max-width:620px;border-left:8px solid var(--amber);padding-left:clamp(20px,3vw,40px)}
.green-panel h2{font-size:clamp(32px,4vw,64px);margin-bottom:22px}
.green-panel p{margin-bottom:18px;color:#EEF2EE}

/* ---------- HUB TEASER ---------- */
.dispatch{background:var(--paper);padding:clamp(64px,8vw,120px) 0}
.dispatch-in{display:grid;grid-template-columns:7fr 5fr;column-gap:clamp(28px,5vw,80px);row-gap:36px}
.dp-head{grid-column:1 / -1;display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:3px solid var(--ink);padding-bottom:16px}
.dp-head h2{font-size:clamp(30px,3.4vw,52px)}
.dp-lead{position:relative;display:block;min-height:440px;text-decoration:none;color:var(--white);overflow:hidden;border-radius:var(--r);background:var(--ink)}
.dp-lead img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.dp-lead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,13,10,.1) 25%,rgba(9,13,10,.92))}
.dp-lead:hover img{transform:scale(1.04)}
.dp-lead span{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:30px}
.dp-lead b{display:block;font:850 clamp(24px,2.6vw,40px)/1.02 var(--disp);font-stretch:118%}
.dp-lead em{display:block;font-style:normal;margin-top:12px;max-width:50ch;color:#E8EDE8}
.dp-list{display:grid;align-content:start}
.dp-list li{border-bottom:2px solid var(--line)}
.dp-list a{display:block;padding:22px 0;text-decoration:none}
.dp-list b{display:block;font:800 clamp(19px,1.6vw,24px)/1.15 var(--disp);font-stretch:112%;transition:color .2s}
.dp-list a:hover b{text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:4px;text-underline-offset:5px}
.dp-list span{display:block;margin-top:8px;font-size:16px;color:var(--mute);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dp-wide{grid-column:1 / -1;grid-template-columns:repeat(3,1fr);gap:0 40px}
.dp-wide li{border-bottom:0;border-top:6px solid var(--ink)}

/* ---------- CTA ---------- */
.cta{background:var(--white);color:var(--ink)}
.cta-in{display:grid;grid-template-columns:6fr 5fr;gap:clamp(32px,6vw,100px);align-items:end;padding:clamp(56px,7vw,104px) 0}
.cta h2{font-size:clamp(40px,6vw,100px);line-height:.92;margin-bottom:22px}
.cta-copy p{max-width:44ch}
.cta-btns{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}
.cta-nums li{border-top:4px solid var(--ink);padding:18px 0 22px}
.cta-nums span{display:block;font:600 15px/1 var(--body);color:var(--mute);margin-bottom:8px}
.cta-nums a{font:850 clamp(30px,3.6vw,56px)/1 var(--disp);font-stretch:122%;text-decoration:none;letter-spacing:-.01em}
.cta-nums a:hover{background:var(--amber)}

/* ---------- FOOTER ---------- */
.site-foot{background:var(--ink);color:var(--white)}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:40px;padding:clamp(48px,5vw,80px) 0 40px}
.foot-grid h2{font:700 17px/1 var(--body);font-stretch:100%;letter-spacing:0;margin-bottom:18px;color:var(--amber)}
.foot-grid li{margin-bottom:10px}
.foot-grid a{text-decoration:none;color:#E6EBE6}
.foot-grid a:hover{color:var(--amber);text-decoration:underline}
.fg-brand img{width:150px;height:auto;margin-bottom:18px}
.fg-brand p{color:var(--mute-d);max-width:32ch;margin-bottom:14px;font-size:16px}
.foot-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line-d);padding:22px 0 30px;font-size:15px;color:var(--mute-d)}
.fb-links{display:flex;gap:22px;flex-wrap:wrap}
.fb-links a{color:var(--mute-d)}
.fb-links a:hover{color:var(--amber)}

/* ============ INNER HEROES ============ */
.ihero{position:relative;background:var(--ink);color:var(--white);overflow:hidden}
.ih-in{position:relative;display:grid;gap:clamp(24px,5vw,80px);align-items:center;min-height:330px;padding:clamp(32px,3.6vw,48px) 0}
.ihero h1{font-size:clamp(36px,5.2vw,88px);line-height:.92;font-weight:850}
.ih-split h1{font-size:clamp(34px,4.3vw,70px)}
.ih-clap{position:absolute;right:0;bottom:34px;width:min(29vw,420px)}
.ih-type h1{font-size:clamp(34px,4.8vw,80px)}
.ih-clap i{display:block;border:3px solid var(--white);border-radius:var(--r)}
.ih-clap i:first-child{height:50px;background:repeating-linear-gradient(-58deg,var(--amber) 0 26px,var(--ink) 26px 52px);transform:rotate(-7deg);transform-origin:0 100%;margin-bottom:-3px;position:relative;z-index:1;border-bottom:0}
.ih-board{background:var(--amber);color:var(--ink);border:3px solid var(--white);border-radius:0 0 var(--r) var(--r)}
.ih-board dl div{padding:9px 18px;border-top:2px solid var(--ink)}
.ih-board dl div:first-child{border-top:0}
.ih-board dt{font:600 13px/1.2 var(--body)}
.ih-board dd{font:800 clamp(17px,1.6vw,24px)/1.1 var(--disp);font-stretch:118%;margin-top:2px}
@media (max-width:900px){.ih-clap{display:none}}
.ih-lede{margin-top:20px;max-width:56ch;font-size:clamp(17px,1.4vw,21px);color:#E4EAE4}
/* type-led */
.ih-type .ih-in{grid-template-columns:1fr;border-bottom:0}
.ih-type{border-bottom:18px solid transparent;border-image:repeating-linear-gradient(-58deg,var(--amber) 0 22px,var(--ink) 22px 44px) 18}
.ih-type h1{max-width:none}
.ih-type .ih-copy{max-width:min(62%,880px)}
@media (max-width:900px){.ih-type .ih-copy{max-width:none}}
.ih-green{background:#0E1F14}
/* split with photo plate */
.ih-split .ih-in{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.ih-split .ih-plate{border:4px solid var(--amber);border-radius:var(--r);overflow:hidden;max-height:360px;background:var(--ink2)}
.ih-split .ih-plate img{width:100%;height:100%;max-height:360px;object-fit:cover}
.ih-tall .ih-plate img{object-position:50% 60%}
.ih-split{border-bottom:18px solid transparent;border-image:repeating-linear-gradient(-58deg,var(--amber) 0 22px,var(--ink) 22px 44px) 18}
/* photo hero (overseas) */
.ih-photo .ihp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.ih-photo .ihp-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,10,.9),rgba(9,13,10,.45) 70%,rgba(9,13,10,.2))}
.ih-photo .ih-in{grid-template-columns:1fr;min-height:380px}
.ih-photo h1{max-width:12ch}

/* ---------- SERVICES INDEX ---------- */
.evolve{background:var(--paper);padding:clamp(56px,7vw,110px) 0}
.evolve-in{display:grid;grid-template-columns:7fr 4fr;gap:clamp(32px,6vw,100px);align-items:start}
.evolve h2{font-size:clamp(28px,3.3vw,52px);line-height:1.04}
.ev-body p{margin-bottom:16px;max-width:42ch}
.svc{padding:clamp(40px,5vw,72px) 0;background:var(--paper)}
.svc:nth-child(even){background:var(--paper2)}
.svc-in{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,5vw,90px);align-items:center}
.svc-flip .svc-img{order:2}
.svc-img{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden;background:var(--ink)}
.svc-img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.svc h2{font-size:clamp(30px,3.6vw,58px);margin-bottom:20px}
.svc-copy p{margin-bottom:22px;max-width:44ch}

/* ---------- GENERATORS ---------- */
.gen-intro{background:var(--paper);padding:clamp(56px,6vw,96px) 0}
.gi-in{display:grid;grid-template-columns:7fr 4fr;gap:clamp(32px,6vw,100px);align-items:start}
.gen-intro h2{font-size:clamp(30px,3.6vw,56px);margin-bottom:24px;max-width:16ch}
.gi-main p{margin-bottom:16px;max-width:54ch}
.gi-side{background:var(--ink);color:var(--white);padding:28px;border-radius:var(--r);border-top:10px solid var(--amber)}
.gi-side h3{margin-bottom:16px}
.plain li{padding:10px 0;border-bottom:1px solid var(--line-d)}
.plain li:last-child{border-bottom:0}
.sheet{background:var(--paper2);padding:clamp(56px,6vw,96px) 0}
.sheet-h{font-size:clamp(32px,4vw,64px);margin-bottom:16px}
.sheet-note{max-width:70ch;color:var(--mute);margin-bottom:36px}
.sheet-table{border:3px solid var(--ink);background:var(--white);border-radius:var(--r);overflow:hidden}
.st-head,.st-row{display:grid;grid-template-columns:minmax(260px,3.2fr) 2fr 1.2fr 1.1fr 1.2fr 1fr;gap:18px;align-items:center;padding:14px 22px}
.st-head{background:var(--ink);color:var(--white);font:700 15px/1 var(--body);padding-top:16px;padding-bottom:16px}
.st-row{border-top:2px solid var(--line);font-size:16.5px}
.st-row:nth-child(even){background:#F7F8F5}
.st-hy{background:#FFF4D1!important;border-top:2px solid var(--ink)}
.st-set{display:flex;align-items:center;gap:16px}
.st-set img{width:84px;height:84px;object-fit:contain;background:var(--white);border:2px solid var(--line);border-radius:var(--r)}
.st-set h3{font-size:22px;line-height:1.05}
.st-set p{font-size:14.5px;color:var(--mute);line-height:1.3;margin-top:4px}
.st-row b{font:850 26px/1 var(--disp);font-stretch:118%}
.dl{display:inline-block;font-weight:700;text-decoration:none;border-bottom:3px solid var(--amber);padding-bottom:1px}
.dl:hover{background:var(--amber)}
.sheet-foot{margin-top:24px;max-width:70ch;color:var(--mute)}
.gallery-strip{background:var(--ink);padding:0}
.gs-in{display:grid;grid-template-columns:5fr 7fr;gap:0;width:100%;max-width:1920px}
.gs-in figure{height:clamp(280px,32vw,520px);overflow:hidden}
.gs-in img{width:100%;height:100%;object-fit:cover}

/* ---------- LIGHTING ---------- */
.lux{background:var(--amber);color:var(--ink);border-bottom:3px solid var(--ink)}
.lux-in{display:grid;grid-template-columns:repeat(3,1fr)}
.lux-fig{padding:clamp(28px,3.4vw,52px) clamp(16px,2.4vw,36px);border-left:3px solid var(--ink)}
.lux-fig:first-child{border-left:0;padding-left:0}
.lux-fig strong{display:block;white-space:nowrap;font:850 clamp(34px,4.4vw,74px)/.95 var(--disp);font-stretch:128%;letter-spacing:-.02em}
.lux-fig span{display:block;margin-top:12px;max-width:30ch;font-weight:500}
.lux-text{background:var(--paper);padding:clamp(56px,7vw,110px) 0}
.lt-in{display:grid;grid-template-columns:7fr 4fr;gap:clamp(32px,6vw,100px);align-items:start}
.lt-copy h2{font-size:clamp(30px,3.6vw,56px);margin-bottom:24px;max-width:18ch}
.lt-copy p{margin-bottom:16px;max-width:58ch}
.lt-dl{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.lt-plate{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden;background:var(--ink)}
.lt-plate img{width:100%;max-height:640px;object-fit:cover}
.used-on{background:var(--ink);color:var(--white);padding:clamp(48px,6vw,88px) 0}
.uo-in{display:grid;grid-template-columns:4fr 8fr;gap:clamp(24px,5vw,80px);align-items:start}
.used-on h2{font-size:clamp(28px,3vw,46px)}
.uo-list{font:600 clamp(22px,2.4vw,36px)/1.25 var(--body);color:var(--amber)}

/* ---------- ATV ---------- */
.ih-tall .ih-plate{max-height:380px}
.atv-nums{background:var(--ink);color:var(--white);border-top:3px solid var(--amber)}
.an-in{display:grid;grid-template-columns:repeat(4,1fr)}
.an-in div{padding:clamp(28px,3vw,48px) 24px;border-left:2px solid var(--line-d)}
.an-in div:first-child{border-left:0;padding-left:0}
.an-in strong{display:block;white-space:nowrap;font:850 clamp(34px,4.2vw,70px)/.95 var(--disp);font-stretch:128%;color:var(--amber)}
.an-in span{display:block;margin-top:10px;max-width:24ch;color:#DDE3DD;font-size:16px}
.atv-text{background:var(--paper);padding:clamp(56px,7vw,100px) 0}
.at-in{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,64px)}
.at-in div{border-top:6px solid var(--ink);padding-top:20px}
.at-in h2{font-size:clamp(24px,2.3vw,34px);margin-bottom:14px}
.at-dl{margin-top:48px;display:grid;grid-template-columns:7fr 4fr;gap:40px;align-items:center;padding:32px;background:var(--paper2);border-radius:var(--r)}

/* ---------- OVERSEAS ---------- */
.world{background:var(--amber);color:var(--ink)}
.world-in{display:grid;grid-template-columns:7fr 4fr;gap:clamp(24px,5vw,80px);align-items:end;padding:clamp(40px,5vw,72px) 0}
.world-list li{font:850 clamp(40px,6.2vw,104px)/.95 var(--disp);font-stretch:135%;letter-spacing:-.025em}
.world-copy p{font-weight:500;max-width:34ch}
.prep{background:var(--paper);padding:clamp(56px,7vw,100px) 0}
.prep-in{display:grid;grid-template-columns:repeat(3,1fr) 220px;gap:clamp(24px,4vw,56px);align-items:start}
.prep-in>div{border-top:6px solid var(--ink);padding-top:20px}
.prep h2{font-size:clamp(24px,2.3vw,34px);margin-bottom:14px}
.prep-img{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden;width:220px}
.prep-img img{width:220px;height:293px;object-fit:cover}

/* ---------- ABOUT ---------- */
.story{background:var(--paper);padding:clamp(56px,7vw,110px) 0}
.story-in{display:grid;grid-template-columns:5fr 4fr 3fr;gap:clamp(24px,4vw,64px);align-items:start}
.story-big p{font:800 clamp(28px,3.2vw,50px)/1.05 var(--disp);font-stretch:118%;letter-spacing:-.01em}
.story-body p{margin-bottom:16px}
.story-img{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden}
.story-img img{width:100%;aspect-ratio:1;object-fit:cover}
.pmv{background:var(--ink);color:var(--white);padding:clamp(56px,7vw,104px) 0}
.pmv h2{font-size:clamp(28px,3.2vw,48px);margin-bottom:36px}
.pmv dl{border-top:3px solid var(--amber)}
.pmv dl div{display:grid;grid-template-columns:1fr 3fr;gap:24px;padding:26px 0;border-bottom:2px solid var(--line-d)}
.pmv dt{font:850 clamp(26px,3vw,46px)/1 var(--disp);font-stretch:125%;color:var(--amber)}
.pmv dd{font:500 clamp(19px,1.9vw,28px)/1.35 var(--body);max-width:40ch}
.cservice{background:var(--paper2);padding:clamp(56px,7vw,100px) 0}
.cs-in{display:grid;grid-template-columns:4fr 6fr;gap:clamp(28px,6vw,100px);align-items:center}
.cs-img{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden;max-height:620px}
.cs-img img{width:100%;height:100%;max-height:620px;object-fit:cover;object-position:50% 70%}
.cs-copy h2{font-size:clamp(32px,4vw,64px);margin-bottom:24px}
.cs-copy p{margin-bottom:16px;max-width:54ch}
.badges{display:flex;gap:28px;align-items:center;margin-top:28px;padding-top:24px;border-top:2px solid var(--line)}
.badges img{height:64px;width:auto}
.values{background:var(--paper);padding:clamp(56px,7vw,100px) 0}
.values h2{font-size:clamp(32px,4vw,64px);margin-bottom:36px}
.values dl{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(32px,6vw,100px)}
.values dl div{display:grid;grid-template-columns:clamp(150px,15vw,210px) 1fr;gap:20px;padding:22px 0;border-top:3px solid var(--ink)}
.values dt{font:850 clamp(18px,1.6vw,24px)/1.1 var(--disp);font-stretch:118%}
.values dd{color:var(--ink)}
.team{background:var(--amber);padding:clamp(56px,7vw,100px) 0 clamp(40px,5vw,64px);color:var(--ink)}
.team h2{font-size:clamp(32px,4vw,64px);margin-bottom:40px}
.team ul{display:grid;grid-template-columns:repeat(8,1fr);gap:14px;align-items:end}
.team li:nth-child(even){margin-bottom:-0px;padding-bottom:36px}
.team img{width:100%;height:auto;aspect-ratio:352/500;object-fit:cover;border:3px solid var(--ink);border-radius:var(--r);background:var(--white)}
.team li span{display:block;margin-top:10px;font:700 16px/1.2 var(--body)}
.team-note{margin-top:28px;font-size:15px;max-width:60ch}
.join-strip{background:var(--ink);color:var(--white)}
.js-in{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:44px 0}
.join-strip h2{font-size:clamp(24px,2.6vw,40px)}
.join-strip p{display:flex;gap:14px;flex-wrap:wrap}
.join-strip .btn-ink{background:var(--amber);color:var(--ink);border-color:var(--amber)}
.join-strip .btn-line-ink{color:var(--white);border-color:var(--white)}
.join-strip .btn-line-ink:hover{background:var(--white);color:var(--ink)}

/* ---------- SUSTAINABILITY ---------- */
.sus-1{background:var(--paper);padding:clamp(56px,7vw,104px) 0}
.sus1-in{display:grid;grid-template-columns:3fr 6fr;gap:clamp(28px,6vw,100px);align-items:center}
.sus-fig,.sus-2 figure,.sus-3 figure{border:4px solid var(--ink);border-radius:var(--r);overflow:hidden}
.sus-fig img{width:100%;aspect-ratio:1;object-fit:cover}
.sus-1 h2{font-size:clamp(32px,4.2vw,68px);margin-bottom:24px}
.sus-1 p{margin-bottom:16px;max-width:52ch}
.sus-2{background:#0E1F14;color:var(--white);padding:clamp(56px,7vw,104px) 0}
.sus2-in{display:grid;grid-template-columns:7fr 4fr;gap:clamp(28px,6vw,100px);align-items:center}
.sus-2 h2{font-size:clamp(34px,5vw,84px);margin-bottom:24px;line-height:.94}
.sus2-copy p{max-width:50ch;color:#E3EAE3}
.sus-2 figure{border-color:var(--amber)}
.sus-2 img,.sus-3 img{width:100%;aspect-ratio:536/463;object-fit:cover}
.sus-3{background:var(--paper2);padding:clamp(56px,7vw,104px) 0}
.sus3-in{display:grid;grid-template-columns:4fr 6fr;gap:clamp(28px,6vw,100px);align-items:center}
.sus-3 h2{font-size:clamp(30px,3.8vw,60px);margin-bottom:22px}
.sus-3 p{max-width:52ch}
.dispatch-alt{background:var(--paper)}

/* ---------- HUB ---------- */
.hub-lead{background:var(--paper);padding:clamp(40px,5vw,72px) 0 0}
.hl-card{position:relative;display:block;min-height:clamp(380px,36vw,560px);overflow:hidden;color:var(--white);text-decoration:none;border-radius:var(--r);background:var(--ink)}
.hl-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.hl-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,10,.9),rgba(9,13,10,.2) 70%)}
.hl-card:hover img{transform:scale(1.03)}
.hl-card span{position:absolute;left:0;bottom:0;z-index:2;padding:clamp(24px,4vw,56px);max-width:720px}
.hl-card b{display:block;font:850 clamp(28px,3.6vw,58px)/1 var(--disp);font-stretch:120%}
.hl-card em{display:block;font-style:normal;margin-top:16px;color:#E8EDE8}
.hub-list{background:var(--paper);padding:clamp(24px,3vw,40px) 0 clamp(56px,7vw,100px)}
.hub-list ol{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(28px,5vw,80px)}
.hub-list li{border-top:3px solid var(--ink)}
.hub-list a{display:grid;grid-template-columns:200px 1fr;gap:22px;padding:24px 0;text-decoration:none;align-items:start}
.hub-list img{width:200px;height:134px;object-fit:cover;border-radius:var(--r);background:var(--ink)}
.hl-t b{display:block;font:800 clamp(18px,1.5vw,22px)/1.15 var(--disp);font-stretch:112%}
.hub-list a:hover .hl-t b{text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:4px;text-underline-offset:5px}
.hl-t em{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-style:normal;margin-top:8px;font-size:15.5px;color:var(--mute);line-height:1.45}

/* post */
.phero{background:var(--ink);color:var(--white);border-bottom:18px solid transparent;border-image:repeating-linear-gradient(-58deg,var(--amber) 0 22px,var(--ink) 22px 44px) 18}
.ph-in{padding:clamp(36px,4.4vw,56px) 0;min-height:320px;display:flex;flex-direction:column;justify-content:center}
.ph-back a{font-weight:700;text-decoration:none;border-bottom:3px solid var(--amber)}
.phero h1{font-size:clamp(30px,4.2vw,68px);line-height:.98;max-width:22ch;margin-top:20px}
.ph-dek{margin-top:20px;max-width:62ch;font-size:clamp(17px,1.4vw,20px);color:#E4EAE4}
.post{background:var(--paper);padding:clamp(40px,5vw,80px) 0}
.post-in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr) minmax(0,3.2fr);gap:clamp(28px,4vw,64px);align-items:start}
.post-img{position:sticky;top:24px;border:4px solid var(--ink);border-radius:var(--r);overflow:hidden;background:var(--ink)}
.post-img img{width:100%;max-height:520px;object-fit:cover}
.post-body{font-size:19px;line-height:1.7;max-width:68ch}
.post-body p{margin-bottom:20px}
.post-body h2{font-size:clamp(24px,2.3vw,34px);margin:40px 0 16px}
.post-body h3{font-size:22px;margin:30px 0 12px}
.post-body ul{list-style:disc;padding-left:22px;margin-bottom:20px}
.post-body a{text-decoration-color:var(--amber);text-decoration-thickness:3px;text-underline-offset:3px}
.post-aside{position:sticky;top:24px;border-top:6px solid var(--ink);padding-top:18px}
.post-aside h2{font-size:22px;margin-bottom:14px}
.post-aside li{border-bottom:2px solid var(--line)}
.post-aside li a{display:block;padding:14px 0;font-weight:600;line-height:1.3;text-decoration:none}
.post-aside li a:hover{text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:3px}
.pa-call{margin-top:28px;background:var(--amber);padding:22px;border-radius:var(--r)}
.pa-call p{font-weight:700;margin-bottom:14px}

/* contact */
.contact{background:var(--paper);padding:clamp(48px,6vw,96px) 0}
.contact-in{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,6vw,100px);align-items:start}
.ct-main h2,.ct-card h2{font-size:clamp(28px,3.2vw,48px);margin-bottom:18px}
.ct-main>p{max-width:46ch;margin-bottom:24px}
.ct-nums{margin-bottom:32px}
.ct-nums li{display:grid;grid-template-columns:150px 1fr;align-items:baseline;gap:20px;border-top:3px solid var(--ink);padding:18px 0}
.ct-nums span{font:600 16px/1 var(--body);color:var(--mute)}
.ct-nums a{font:850 clamp(22px,2.6vw,40px)/1 var(--disp);font-stretch:118%;text-decoration:none;word-break:break-word}
.ct-nums a:hover{background:var(--amber)}
.ct-mail a{font-size:clamp(17px,1.7vw,25px);font-stretch:112%;word-break:normal;overflow-wrap:anywhere}
.ct-card{background:var(--ink);color:var(--white);padding:clamp(24px,3vw,44px);border-radius:var(--r);border-top:12px solid var(--amber)}
.ct-card address{font:500 22px/1.5 var(--body);font-style:normal;margin-bottom:18px}
.w3w{color:var(--mute-d);margin-bottom:22px}
.ct-card .btn-ink{background:var(--amber);color:var(--ink);border-color:var(--amber)}
.ct-card .btn-ink:hover{background:var(--white);border-color:var(--white)}
.soc{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px;padding-top:20px;border-top:1px solid var(--line-d)}
.soc a{color:var(--amber);font-weight:600}

/* join */
.job{background:var(--paper);padding:clamp(48px,6vw,96px) 0}
.job-in{display:grid;grid-template-columns:4fr 8fr;gap:clamp(28px,6vw,100px);align-items:start}
.job-slate{position:sticky;top:24px;background:var(--ink);color:var(--white);border:3px solid var(--ink);border-radius:var(--r);overflow:hidden}
.job-slate dl div{padding:18px 22px;border-bottom:2px solid var(--white)}
.job-slate dt{font:600 14px/1 var(--body);color:var(--mute-d);margin-bottom:6px}
.job-slate dd{font:800 24px/1.1 var(--disp);font-stretch:118%}
.job-slate p{padding:22px}
.job-lead{font:600 clamp(20px,1.8vw,26px)/1.4 var(--body);margin-bottom:22px;max-width:46ch}
.job-body p{margin-bottom:18px;max-width:64ch}
.job-body h2{font-size:clamp(24px,2.4vw,34px);margin:40px 0 14px;padding-top:18px;border-top:4px solid var(--ink)}
.job-body .plain{margin-bottom:12px}
.job-body .plain li{border-bottom:1px solid var(--line);padding:10px 0;max-width:64ch}
.job-body .plain li:last-child{border-bottom:1px solid var(--line)}

/* manuals */
.manuals{background:var(--paper);padding:clamp(48px,6vw,96px) 0}
.man-in{display:grid;grid-template-columns:repeat(2,1fr);gap:48px clamp(28px,6vw,100px)}
.man-g h2{font-size:clamp(26px,2.6vw,40px);margin-bottom:14px;padding-bottom:12px;border-bottom:6px solid var(--ink)}
.man-g li a{display:flex;justify-content:space-between;align-items:center;padding:16px 4px;border-bottom:2px solid var(--line);text-decoration:none;font-weight:600;gap:16px}
.man-g li a:hover{background:var(--amber)}
.man-g i{font:700 13px/1 var(--body);font-style:normal;border:2px solid var(--ink);padding:5px 8px;border-radius:var(--r)}

/* ============ RESPONSIVE ============ */
@media (max-width:1100px){
  .hero-in{grid-template-columns:1fr}
  .slate{display:none}
  .hero h1{max-width:16ch}
  .facts-in{grid-template-columns:repeat(5,minmax(0,1fr))}
  .facts-in span{font-size:13px}
  .st-head{display:none}
  .st-row{grid-template-columns:1fr 1fr;gap:12px 20px;padding:20px}
  .st-set{grid-column:1 / -1}
  .st-row>div[data-l]::before{content:attr(data-l);display:block;font:600 13px/1 var(--body);color:var(--mute);margin-bottom:4px}
  .team ul{grid-template-columns:repeat(4,1fr)}
  .team li:nth-child(even){padding-bottom:0}
  .prep-in{grid-template-columns:repeat(3,1fr)}
  .prep-img{display:none}
  .post-in{grid-template-columns:minmax(0,1fr)}
  .post-img,.post-aside,.job-slate{position:static}
  .post-img{max-width:640px}
}
@media (max-width:900px){
  .floor-in,.depts-head,.hybrid-in,.dispatch-in,.cta-in,.evolve-in,.svc-in,.gi-in,.lt-in,.uo-in,.at-dl,.world-in,.story-in,.cs-in,.sus1-in,.sus2-in,.sus3-in,.contact-in,.job-in,.clients-in,.ih-split .ih-in{grid-template-columns:1fr}
  .svc-flip .svc-img{order:0}
  .depts-row{flex-direction:column;height:auto}
  .dept{flex:none;height:360px;border-left:0;border-top:3px solid var(--ink)}
  .dept:hover,.dept:focus-visible{flex-grow:0}
  .callsheet{grid-template-columns:1fr}
  .callsheet li{border-right:0;margin-right:0;border-bottom:2px solid var(--line-d);padding-bottom:22px}
  .cr-cols{grid-template-columns:1fr}
  .cr-2,.cr-3{margin-top:0}
  .dp-wide{grid-template-columns:1fr}
  .dp-wide li{margin-bottom:18px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .lux-in,.an-in{grid-template-columns:1fr 1fr}
  .lux-fig,.an-in div{border-left:0;border-top:3px solid var(--ink)}
  .an-in div{border-top-color:var(--line-d)}
  .lux-fig:first-child,.an-in div:first-child{border-top:0}
  .at-in{grid-template-columns:1fr}
  .values dl{grid-template-columns:1fr}
  .hub-list ol{grid-template-columns:1fr}
  .man-in{grid-template-columns:1fr}
  .pmv dl div{grid-template-columns:1fr;gap:8px}
  .gs-in{grid-template-columns:1fr}
  .js-in{grid-template-columns:1fr}
  .ih-split .ih-plate{max-height:260px}
  .prep-in{grid-template-columns:1fr}
  .world-list li{font-size:clamp(34px,10vw,64px)}
}
@media (max-width:700px){
  :root{--chrome:112px}
  body{font-size:17px}
  .facts-in{grid-template-columns:1fr 1fr;height:auto}
  .facts-in li{border-left:0;border-top:2px solid var(--ink);padding:12px 4px}
  .facts-in li:first-child{border-top:0;padding-left:4px}
  .facts-in li:nth-child(even){border-left:2px solid var(--ink);padding-left:16px}
  .facts-in li:last-child{grid-column:1 / -1;border-left:0;padding-left:4px}
  .hero{height:auto;min-height:520px;padding:48px 0}
  .ladder li{grid-template-columns:1fr 36px;gap:6px 12px}
  .lad-n{grid-column:1 / -1}
  .team ul{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
  .hub-list a{grid-template-columns:110px 1fr;gap:14px}
  .hub-list img{width:110px;height:84px}
  .hl-t em{display:none}
  .ct-nums li{grid-template-columns:1fr;gap:6px}
  .st-row{grid-template-columns:1fr 1fr}
  .hy-plate{box-shadow:10px 10px 0 var(--ink)}
  .concept-bar{font-size:12.5px}
  .head-call{display:none}
}
@media (max-width:700px){.lux-in,.an-in{grid-template-columns:1fr}.lux-fig strong,.an-in strong{white-space:normal}.phero h1{font-size:clamp(22px,6.6vw,40px)}.callsheet b{font-size:clamp(40px,14vw,64px)}}
