/* BOYD'S Logistics — site styles */
@font-face{font-family:"Archivo";src:url("/assets/fonts/archivo.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("/assets/fonts/archivo-italic.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:italic;font-display:swap}

:root{
  --ink:#0D1117;
  --navy:#0B1F3B;
  --navy-2:#102A4E;
  --orange:#FF7A00;
  --orange-2:#E86E00;
  --teal:#00BCD4;
  --paper:#F3F2EE;
  --white:#FFFFFF;
  --muted:#596170;
  --line:rgba(13,17,23,.12);
  --line-light:rgba(255,255,255,.16);
  --pad:clamp(16px,4vw,56px);
  --max:1440px;
  --r:2px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --header-h:84px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.6;font-stretch:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,video{display:block;max-width:100%}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.02;letter-spacing:-.035em;font-stretch:100%}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--orange);color:var(--ink);padding:10px 16px;font-weight:700;text-decoration:none}
.skip:focus{top:12px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:22px}
.eyebrow::before{content:"";width:28px;height:3px;background:var(--orange);transform:skewX(-20deg)}
.label{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--muted);display:flex;gap:10px}
.label b{color:var(--orange);font-weight:700}
.lead{font-size:clamp(18px,1.5vw,21px);line-height:1.55;color:var(--muted);max-width:60ch}
.on-dark .lead{color:rgba(255,255,255,.78)}

/* Wordmark */
.wordmark{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--white)}
.wordmark img{height:46px;width:auto}
.wordmark .wm{display:flex;flex-direction:column;line-height:.9}
.wordmark .wm-1{font-style:italic;font-weight:900;font-stretch:112%;font-size:27px;letter-spacing:-.02em;text-transform:uppercase}
.wordmark .wm-2{font-style:italic;font-weight:800;font-stretch:112%;font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;margin-top:3px;padding-left:2px}

/* Buttons */
.btn{--bg:var(--orange);--fg:var(--ink);display:inline-flex;align-items:stretch;text-decoration:none;font:inherit;font-weight:700;font-size:15px;letter-spacing:-.005em;border:0;cursor:pointer;color:var(--fg);background:none;padding:0;min-height:52px;border-radius:var(--r)}
.btn span{display:flex;align-items:center;padding:0 22px;background:var(--bg);border-radius:var(--r) 0 0 var(--r);transition:background .25s var(--ease)}
.btn i{display:flex;align-items:center;justify-content:center;width:52px;background:var(--bg);border-left:1px solid rgba(13,17,23,.18);border-radius:0 var(--r) var(--r) 0;transition:background .25s var(--ease)}
.btn i svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.btn:hover span,.btn:hover i{background:var(--orange-2)}
.btn:hover i svg{transform:translateX(3px)}
.btn--ghost{--fg:var(--white)}
.btn--ghost span,.btn--ghost i{background:rgba(255,255,255,.08);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.28)}
.btn--ghost i{border-left:0}
.btn--ghost:hover span,.btn--ghost:hover i{background:rgba(255,255,255,.18)}
.btn--dark{--fg:var(--white)}
.btn--dark span,.btn--dark i{background:var(--ink)}
.btn--dark i{border-left-color:rgba(255,255,255,.18)}
.btn--dark:hover span,.btn--dark:hover i{background:var(--navy)}
.btn--line{--fg:var(--ink)}
.btn--line span,.btn--line i{background:transparent;border:1px solid var(--ink)}
.btn--line i{border-left:0}
.btn--line:hover span,.btn--line:hover i{background:var(--ink);color:var(--white)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.text-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:4px}
.text-link svg{width:16px;height:16px;transition:transform .3s var(--ease)}
.text-link:hover svg{transform:translateX(4px)}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:50;color:var(--white);transition:background .35s var(--ease),box-shadow .35s var(--ease)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);gap:24px}
.site-header.is-solid{background:rgba(11,31,59,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line-light)}
.nav{display:flex;align-items:center;gap:4px}
.nav a{text-decoration:none;font-size:15px;font-weight:500;padding:8px 13px;border-radius:var(--r);opacity:.88;position:relative;transition:opacity .2s}
.nav a:hover{opacity:1}
.nav a[aria-current="page"]{opacity:1}
.nav a[aria-current="page"]::after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:2px;background:var(--orange)}
.header-cta{display:flex;align-items:center;gap:10px}
.header-cta .btn{min-height:46px;font-size:14px}
.header-cta .btn i{width:46px}
.track-link{font-size:14px;font-weight:600;text-decoration:none;padding:12px 14px;opacity:.88}
.track-link:hover{opacity:1}
.menu-btn{display:none;width:48px;height:48px;border:1px solid var(--line-light);background:transparent;color:inherit;border-radius:var(--r);cursor:pointer;align-items:center;justify-content:center}
.menu-btn span{display:block;width:20px;height:2px;background:currentColor;position:relative}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor;transition:transform .25s var(--ease)}
.menu-btn span::before{top:-6px}.menu-btn span::after{top:6px}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{display:none}

@media (max-width:1240px){
  .nav,.track-link{display:none}
  .menu-btn{display:inline-flex}
  .mobile-nav{display:block;position:fixed;inset:0;z-index:45;background:var(--navy);color:var(--white);padding:calc(var(--header-h) + 24px) var(--pad) 32px;overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility .3s}
  .mobile-nav.is-open{opacity:1;visibility:visible}
  .mobile-nav ul{list-style:none;margin:0 0 32px;padding:0;border-top:1px solid var(--line-light)}
  .mobile-nav li a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line-light);text-decoration:none;font-size:clamp(24px,6vw,34px);font-weight:600;letter-spacing:-.03em}
  .mobile-nav li a[aria-current="page"]{color:var(--orange)}
}
@media (max-width:560px){
  :root{--header-h:72px}
  .header-cta .btn{display:none}
  .wordmark img{height:38px}
  .wordmark .wm-1{font-size:22px}
  .wordmark .wm-2{font-size:11px}
}

/* Grid lines overlay */
.gridlines{position:absolute;inset:0;pointer-events:none;z-index:2}
.gridlines .wrap{height:100%;display:grid;grid-template-columns:repeat(4,1fr)}
.gridlines .wrap div{border-left:1px solid rgba(255,255,255,.12)}
.gridlines .wrap div:last-child{border-right:1px solid rgba(255,255,255,.12)}
@media (max-width:760px){.gridlines .wrap{grid-template-columns:repeat(2,1fr)}.gridlines .wrap div:nth-child(n+3){display:none}.gridlines .wrap div:nth-child(2){border-right:1px solid rgba(255,255,255,.12)}}

/* Hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;color:var(--white);background:var(--navy);overflow:hidden;isolation:isolate}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media img,.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-media img{animation:drift 26s ease-in-out infinite alternate;transform-origin:60% 40%}
.hero-media video{opacity:0;transition:opacity 1.2s var(--ease)}
.hero-media video.is-playing{opacity:1}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,14,28,.55) 0%,rgba(6,14,28,0) 26%,rgba(6,14,28,0) 42%,rgba(6,14,28,.72) 100%),linear-gradient(90deg,rgba(6,14,28,.55) 0%,rgba(6,14,28,0) 62%)}
@keyframes drift{from{transform:scale(1.04)}to{transform:scale(1.14) translate(-1.5%,1%)}}
.hero-body{position:relative;z-index:3;flex:1;display:flex;align-items:flex-end;padding-top:calc(var(--header-h) + 40px);padding-bottom:clamp(40px,7vh,84px)}
.hero-body .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px}
.hero h1{font-size:clamp(42px,6.6vw,112px);font-weight:600;letter-spacing:-.045em;line-height:.95;margin-bottom:28px}
.hero h1 .l{display:block;white-space:nowrap}
.hero h1 em{font-style:italic;font-weight:800;font-stretch:108%;color:var(--orange);letter-spacing:-.04em}
.hero p.hero-sub{font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:rgba(255,255,255,.86);max-width:46ch;margin-bottom:32px}
.hero-aside{max-width:250px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.78);border-top:1px solid rgba(255,255,255,.35);padding-top:14px}
.hero-aside strong{display:block;color:var(--white);font-weight:600;margin-bottom:4px}
@media (max-width:860px){.hero-body .wrap{grid-template-columns:1fr}.hero-aside{display:none}}

/* Capability ticker */
.ticker{position:relative;z-index:3;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);overflow:hidden}
.ticker-track{display:flex;width:max-content;animation:ticker 38s linear infinite}
.ticker ul{display:flex;list-style:none;margin:0;padding:0}
.ticker li{display:flex;align-items:center;gap:28px;padding:22px 28px 22px 0;font-size:clamp(16px,1.6vw,22px);font-weight:600;letter-spacing:-.02em;white-space:nowrap}
.ticker li::after{content:"";width:9px;height:9px;background:var(--orange);transform:skewX(-20deg)}
@keyframes ticker{to{transform:translateX(-50%)}}

/* Sections */
.section{padding-block:clamp(72px,10vw,150px)}
.section--tight{padding-block:clamp(56px,7vw,100px)}
.section--white{background:var(--white)}
.section--ink{background:var(--ink);color:var(--white)}
.section--navy{background:var(--navy);color:var(--white)}
.sec-head{display:grid;grid-template-columns:minmax(180px,3fr) 9fr;gap:24px 40px;margin-bottom:clamp(40px,6vw,80px)}
.sec-head h2{font-size:clamp(34px,4.6vw,72px);max-width:16ch}
.sec-head .lead{margin-top:24px}
.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
@media (max-width:860px){.sec-head{grid-template-columns:1fr}}
.on-dark .label{color:rgba(255,255,255,.6)}

/* Statement */
.statement{font-size:clamp(21px,2.1vw,32px);line-height:1.3;letter-spacing:-.022em;font-weight:500;max-width:36ch;margin:36px 0 0}
.statement span{color:var(--muted)}

.points{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px);margin-top:clamp(48px,6vw,88px)}
.point{border-top:1px solid var(--ink);padding-top:22px}
.point h3{font-size:22px;letter-spacing:-.02em;margin-bottom:10px;display:flex;gap:12px;align-items:baseline}
.point h3 small{font-size:13px;color:var(--orange);font-weight:700;letter-spacing:0}
.point p{color:var(--muted);margin:0;max-width:34ch}
@media (max-width:760px){.points{grid-template-columns:1fr}}

/* Feature split image */
.split{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);align-items:end;margin-top:clamp(56px,7vw,110px)}
.split figure{margin:0;position:relative;overflow:hidden;background:#d9d7d0;aspect-ratio:16/9}
.split figure img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.split figure:hover img{transform:scale(1.03)}
.split .split-copy{padding-bottom:8px}
.split .split-copy h3{font-size:clamp(26px,2.4vw,36px);margin-bottom:16px}
.split .split-copy p{color:var(--muted)}
@media (max-width:860px){.split{grid-template-columns:1fr}}

/* Service rows */
.rows{border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:90px minmax(0,5fr) minmax(0,5fr) 56px;gap:24px;align-items:center;padding:clamp(24px,3vw,40px) 0;border-bottom:1px solid var(--line);text-decoration:none;position:relative}
.row::before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.row:hover::before{transform:scaleX(1)}
.row .n{font-size:14px;font-weight:700;color:var(--orange)}
.row h3{font-size:clamp(24px,2.8vw,42px);letter-spacing:-.035em}
.row p{margin:0;color:var(--muted);max-width:44ch}
.row .arr{width:56px;height:56px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .3s var(--ease),border-color .3s,transform .3s var(--ease)}
.row .arr svg{width:20px;height:20px}
a.row:hover .arr{background:var(--orange);border-color:var(--orange)}
@media (max-width:860px){.row{grid-template-columns:44px 1fr 48px}.row p{grid-column:2/3}.row .arr{grid-row:1/3;grid-column:3;width:48px;height:48px}}

/* Coverage band */
.band{position:relative;color:var(--white);background:var(--navy);overflow:hidden;isolation:isolate}
.band-media{position:absolute;inset:0;z-index:-1}
.band-media img{width:100%;height:100%;object-fit:cover;opacity:.42;mix-blend-mode:luminosity}
.band-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,59,.96) 0%,rgba(11,31,59,.78) 55%,rgba(11,31,59,.55) 100%)}
.band .wrap{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px,6vw,96px);align-items:center;padding-block:clamp(80px,11vw,160px);position:relative;z-index:3}
.band h2{font-size:clamp(36px,4.8vw,76px);max-width:14ch;margin-bottom:28px}
.band .lead{margin-bottom:36px}
.checklist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-light)}
.checklist li{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--line-light)}
.checklist li b{font-size:13px;color:var(--orange)}
.checklist li span{font-size:19px;font-weight:600;letter-spacing:-.015em}
.checklist li small{display:block;font-size:14px;font-weight:400;color:rgba(255,255,255,.66);letter-spacing:0;margin-top:2px}
.checklist-title{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.66);margin-bottom:16px}
@media (max-width:860px){.band .wrap{grid-template-columns:1fr}}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:s}
.step{padding:28px 24px 0 0;border-top:1px solid var(--ink);position:relative}
.step::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;background:var(--orange);transform:skewX(-20deg)}
.step .num{font-size:clamp(44px,4.4vw,72px);font-weight:300;letter-spacing:-.05em;line-height:1;color:var(--ink);margin-bottom:28px;display:block;font-stretch:90%}
.step h3{font-size:20px;letter-spacing:-.02em;margin-bottom:10px}
.step p{font-size:15.5px;color:var(--muted);margin:0}
.on-dark .step{border-top-color:rgba(255,255,255,.4)}
.on-dark .step .num{color:var(--white)}
.on-dark .step p{color:rgba(255,255,255,.68)}
@media (max-width:1000px){.steps{grid-template-columns:repeat(2,1fr);row-gap:40px}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* Steps — vertical */
.vsteps{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.vsteps li{display:grid;grid-template-columns:minmax(80px,2fr) minmax(0,4fr) minmax(0,6fr);gap:24px;padding:clamp(28px,3.4vw,48px) 0;border-bottom:1px solid var(--line);align-items:start}
.vsteps .num{font-size:clamp(44px,5vw,80px);font-weight:300;letter-spacing:-.05em;line-height:.9;font-stretch:90%}
.vsteps h3{font-size:clamp(22px,2.2vw,32px);letter-spacing:-.03em}
.vsteps p{margin:0;color:var(--muted);font-size:18px;max-width:52ch}
@media (max-width:760px){.vsteps li{grid-template-columns:1fr;gap:10px}}

/* Industries grid */
.tiles{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.tile{padding:28px 24px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-start;gap:clamp(24px,4vw,64px);background:var(--white);transition:background .3s var(--ease),color .3s}
.tile small{font-size:13px;font-weight:700;color:var(--orange)}
.tile h3{font-size:22px;letter-spacing:-.025em;margin-bottom:10px}
.tile p{font-size:15px;color:var(--muted);margin:0}
.tile:hover{background:var(--navy);color:var(--white)}
.tile:hover p{color:rgba(255,255,255,.72)}
@media (max-width:1100px){.tiles{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.tiles{grid-template-columns:1fr}.tile{min-height:0}}

/* Closing CTA */
.closing{background:var(--ink);color:var(--white);position:relative;overflow:hidden}
.closing .wrap{padding-block:clamp(88px,12vw,180px);position:relative;z-index:3}
.closing h2{font-size:clamp(44px,7.6vw,128px);letter-spacing:-.05em;line-height:.92;max-width:12ch;margin-bottom:36px}
.closing h2 em{font-style:italic;font-weight:800;font-stretch:108%;color:var(--orange)}
.closing .lead{margin-bottom:40px}
.closing .gridlines .wrap div{border-color:rgba(255,255,255,.07)}

/* Page hero */
.page-hero{position:relative;color:var(--white);background:var(--navy);overflow:hidden;isolation:isolate;min-height:min(78vh,760px);display:flex;align-items:flex-end}
.page-hero .hero-media::after{background:linear-gradient(180deg,rgba(6,14,28,.6) 0%,rgba(6,14,28,.2) 35%,rgba(6,14,28,.82) 100%)}
.page-hero .hero-media img{animation:none;transform:scale(1.02)}
.page-hero .wrap{position:relative;z-index:3;padding-top:calc(var(--header-h) + 80px);padding-bottom:clamp(48px,7vw,96px)}
.page-hero h1{font-size:clamp(40px,6vw,96px);letter-spacing:-.045em;line-height:.96;max-width:14ch;margin-bottom:26px}
.page-hero .lead{color:rgba(255,255,255,.82);max-width:58ch;margin:0}
.crumbs{font-size:13px;color:rgba(255,255,255,.66);margin-bottom:28px}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--white)}

/* Content blocks */
.two-col{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,110px);align-items:start}
.two-col h2{font-size:clamp(32px,3.8vw,58px);max-width:16ch}
.two-col .body p{font-size:19px;color:var(--muted);max-width:58ch}
@media (max-width:860px){.two-col{grid-template-columns:1fr}}
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,40px)}
.values .point{border-top-color:currentColor}
.on-dark .values .point p{color:rgba(255,255,255,.7)}
@media (max-width:1000px){.values{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.values{grid-template-columns:1fr}}

.solution{display:grid;grid-template-columns:90px minmax(0,5fr) minmax(0,6fr);gap:24px 40px;padding:clamp(36px,4.6vw,72px) 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 16px)}
.solution:first-child{border-top:1px solid var(--line)}
.solution .n{font-size:14px;font-weight:700;color:var(--orange);padding-top:10px}
.solution h2{font-size:clamp(30px,3.4vw,52px);letter-spacing:-.04em}
.solution p{font-size:19px;color:var(--muted);margin-bottom:24px;max-width:52ch}
@media (max-width:860px){.solution{grid-template-columns:1fr;gap:12px}}

.note{border-left:3px solid var(--orange);background:var(--white);padding:28px 32px;max-width:900px}
.note h3{font-size:20px;letter-spacing:-.02em;margin-bottom:8px}
.note p{margin:0;color:var(--muted)}

.detail-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin:0;padding:0;list-style:none}
.detail-list li{padding:22px 24px 22px 0;border-bottom:1px solid var(--line);font-weight:600;font-size:18px;letter-spacing:-.015em;display:flex;gap:14px;align-items:baseline}
.detail-list li b{font-size:13px;color:var(--orange)}
@media (max-width:860px){.detail-list{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.detail-list{grid-template-columns:1fr}}

/* FAQ */
.faq{border-top:1px solid var(--line);max-width:1000px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-size:clamp(19px,1.8vw,24px);font-weight:600;letter-spacing:-.025em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:none;width:40px;height:40px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;transition:background .25s,border-color .25s}
.faq summary .pm::before,.faq summary .pm::after{content:"";position:absolute;width:14px;height:2px;background:currentColor;transition:transform .3s var(--ease)}
.faq summary .pm::after{transform:rotate(90deg)}
.faq details[open] summary .pm{background:var(--orange);border-color:var(--orange)}
.faq details[open] summary .pm::after{transform:rotate(0)}
.faq .ans{padding:0 64px 28px 0;color:var(--muted);font-size:18px;max-width:72ch}
.faq .ans p{margin:0}

/* Forms */
.form-layout{display:grid;grid-template-columns:7fr 4fr;gap:clamp(32px,5vw,88px);align-items:start}
@media (max-width:960px){.form-layout{grid-template-columns:1fr}}
.form-card{background:var(--white);padding:clamp(24px,4vw,56px);border-top:3px solid var(--orange)}
.form-card h2{font-size:clamp(28px,2.8vw,40px);margin-bottom:10px}
.form-card > p{color:var(--muted);margin-bottom:32px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}
.field{display:flex;flex-direction:column;gap:8px}
.field--full{grid-column:1/-1}
.field label,.field legend{font-size:14px;font-weight:600}
.field label .req{color:var(--orange-2)}
.field input,.field textarea,.field select{font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid transparent;border-bottom:1px solid rgba(13,17,23,.35);border-radius:0;padding:14px 14px;width:100%;transition:border-color .2s,background .2s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--ink);background:var(--white)}
.field textarea{min-height:130px;resize:vertical}
.field [aria-invalid="true"]{border-color:#C23B1E;background:#FFF5F2}
.field .err{font-size:13px;color:#B0321A;min-height:0}
.field.radio-row{flex-direction:row;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:0}
.radio-row legend{width:100%}
.radio-row legend{margin-bottom:10px}
.radio-row label{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;background:var(--paper);cursor:pointer;font-weight:500;font-size:15px}
.radio-row input{accent-color:var(--orange);width:18px;height:18px}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:32px}
.form-foot small{color:var(--muted);font-size:13.5px;max-width:52ch;line-height:1.5}
.form-status{margin-top:20px;font-weight:600;font-size:15px}
.form-status:empty{display:none}
.form-status[data-state="ok"]{color:#1C6B3A}
.form-status[data-state="error"]{color:#B0321A}
.notice{display:flex;gap:14px;background:var(--navy);color:var(--white);padding:18px 22px;margin-bottom:28px;font-size:15px}
.notice::before{content:"";flex:none;width:9px;height:9px;margin-top:8px;background:var(--orange);transform:skewX(-20deg)}
@media (max-width:640px){.fields{grid-template-columns:1fr}}
.side h3{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.side-block{padding:28px 0;border-top:1px solid var(--line)}
.side-block:first-child{padding-top:0;border-top:0}
.contact-line{display:block;font-size:clamp(20px,1.8vw,26px);font-weight:600;letter-spacing:-.025em;text-decoration:none;margin-bottom:6px;word-break:break-word}
.contact-line:hover{color:var(--orange-2)}
.side ul{margin:0;padding:0;list-style:none}
.side ul li{padding:8px 0;color:var(--muted);display:flex;gap:12px}
.side ul li::before{content:"";flex:none;width:7px;height:7px;margin-top:10px;background:var(--orange);transform:skewX(-20deg)}

/* Footer */
.site-footer{background:var(--navy);color:var(--white);overflow:hidden}
.footer-top{display:grid;grid-template-columns:5fr 2fr 3fr;gap:40px;padding-block:clamp(64px,8vw,110px) 48px}
.footer-top p{color:rgba(255,255,255,.7);max-width:40ch;margin:22px 0 28px}
.footer-top h3{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:18px}
.footer-top ul{list-style:none;margin:0;padding:0}
.footer-top li a{display:inline-block;padding:5px 0;text-decoration:none;color:rgba(255,255,255,.86)}
.footer-top li a:hover{color:var(--orange)}
.footer-contact a{display:block;text-decoration:none;font-size:20px;font-weight:600;letter-spacing:-.02em;margin-bottom:8px;word-break:break-word}
.footer-contact a:hover{color:var(--orange)}
.footer-mark{font-style:italic;font-weight:900;font-stretch:118%;text-transform:uppercase;font-size:clamp(72px,19.5vw,300px);line-height:.78;letter-spacing:-.04em;color:rgba(255,255,255,.06);white-space:nowrap;margin:0 0 -.06em -.04em;user-select:none}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-block:22px;border-top:1px solid var(--line-light);font-size:14px;color:rgba(255,255,255,.6)}
.footer-bottom a{text-decoration:none}
.footer-bottom a:hover{color:var(--white)}
@media (max-width:900px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media (max-width:520px){.footer-top{grid-template-columns:1fr}}

/* Reveal */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .rv.in{opacity:1;transform:none}

/* Prose (legal) */
.prose{max-width:760px}
.prose h2{font-size:26px;letter-spacing:-.025em;margin:40px 0 12px}
.prose p,.prose li{color:var(--muted);font-size:18px}


/* ===== v2 refinements ===== */
/* Wordmark: heavy italic on both lines */
.wordmark{gap:11px}
.wordmark img{height:48px}
.wordmark .wm{line-height:.86}
.wordmark .wm-1{font-weight:900;font-stretch:118%;font-size:29px;letter-spacing:-.025em}
.wordmark .wm-2{font-weight:900;font-stretch:118%;font-size:15.5px;letter-spacing:.075em;margin-top:4px;padding-left:1px}

/* Header right side */
.header-cta{gap:6px}
.track-link{font-size:14px;font-weight:600}
.phone-link{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;font-size:17px;letter-spacing:-.01em;padding:10px 16px 10px 12px;margin-right:6px;white-space:nowrap;font-variant-numeric:tabular-nums}
.phone-link svg{width:18px;height:18px;flex:none}
.phone-link:hover span{text-decoration:underline;text-underline-offset:4px}
.nav a{padding:8px 12px}
.nav a[aria-current="page"]::after{left:12px;right:12px;background:var(--white)}
@media (max-width:1380px) and (min-width:1241px){.nav a{padding:8px 7px;font-size:14px}.track-link{font-size:13.5px;padding:10px 8px}.phone-link{font-size:15.5px;padding:10px 8px;margin-right:2px}.phone-link svg{width:16px}.wordmark img{height:42px}.wordmark .wm-1{font-size:25px}.wordmark .wm-2{font-size:13.5px}.header-cta .btn span{padding:0 16px}}
@media (max-width:1259px) and (min-width:1241px){.track-link{display:none}}
@media (max-width:1240px){.phone-link{border:1px solid var(--line-light);width:48px;height:48px;padding:0;justify-content:center;margin-right:0}.phone-link span{display:none}}
.mobile-nav .btn-row{gap:10px}

/* Orange only where it earns it: primary buttons + focus */
.eyebrow::before{background:currentColor;opacity:.55;width:24px;height:2px;transform:none}
.hero h1 em,.closing h2 em{color:inherit}
.hero h1 em{font-weight:800}
.label{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;color:var(--muted)}
.label b{color:var(--ink);font-weight:700}
.on-dark .label b{color:var(--white)}
.point h3 small,.row .n,.solution .n,.tile small,.checklist li b,.detail-list li b{color:var(--muted)}
.on-dark .checklist li b{color:rgba(255,255,255,.55)}
.ticker li::after{background:var(--ink);opacity:.25}
.step::before{background:var(--ink)}
.on-dark .step::before{background:var(--white)}
.text-link{border-bottom-color:currentColor}
.row::before{background:var(--ink)}
a.row:hover .arr{background:var(--ink);border-color:var(--ink);color:var(--white)}
.faq details[open] summary .pm{background:var(--ink);border-color:var(--ink);color:var(--white)}
.form-card{border-top-color:var(--ink)}
.note{border-left-color:var(--ink)}
.notice::before,.side ul li::before{background:currentColor;opacity:.5}
.btn--line:hover span,.btn--line:hover i{background:var(--ink)}

/* Section heads: one clean left edge */
.sec-head{display:block}
.sec-head .label{margin-bottom:24px}
.sec-head h2{max-width:18ch}
.sec-head-row{align-items:flex-end}

/* Why BOYD'S */
.why{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(40px,6vw,96px);align-items:center}
.why-copy .label{margin-bottom:24px}
.why-copy h2{font-size:clamp(34px,4.4vw,68px);max-width:14ch}
.why-list{list-style:none;margin:48px 0 40px;padding:0;border-top:1px solid var(--line)}
.why-list li{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:24px 0;border-bottom:1px solid var(--line)}
.why-list .n{font-size:13px;font-weight:700;color:var(--muted);padding-top:5px}
.why-list h3{font-size:21px;letter-spacing:-.02em;margin-bottom:6px}
.why-list p{margin:0;color:var(--muted);max-width:46ch}
.why-media{margin:0;position:relative;overflow:hidden;background:#d9d7d0;aspect-ratio:4/3}
.why-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:42% 50%}
@media (max-width:960px){.why{grid-template-columns:1fr}.why-media{aspect-ratio:16/10}}

/* Paired intro (Solutions) */
.pair{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,110px);align-items:start}
.pair .label{margin-bottom:24px}
.pair h2{font-size:clamp(32px,3.8vw,58px);max-width:15ch}
@media (max-width:900px){.pair{grid-template-columns:1fr}}

/* Alternating feature blocks */
.feature{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,5vw,88px);align-items:center;padding:clamp(28px,3.5vw,56px) 0;scroll-margin-top:calc(var(--header-h) + 16px)}
.feature + .feature{border-top:1px solid var(--line)}
.feature figure{margin:0;overflow:hidden;background:#d9d7d0;aspect-ratio:4/3}
.feature figure img{width:100%;height:100%;object-fit:cover}
.feature--flip figure{order:2}
.feature .n{display:block;font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--muted);margin-bottom:22px}
.feature h3{font-size:clamp(30px,3.2vw,50px);letter-spacing:-.04em;margin-bottom:20px}
.feature p{font-size:18.5px;color:var(--muted);margin-bottom:30px;max-width:46ch}
@media (max-width:860px){.feature{grid-template-columns:1fr}.feature--flip figure{order:0}}

/* Closing CTA over photography */
.closing-media{position:absolute;inset:0;z-index:0}
.closing-media img{width:100%;height:100%;object-fit:cover;opacity:.75}
.closing-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,17,23,.92) 0%,rgba(13,17,23,.62) 55%,rgba(13,17,23,.3) 100%)}

/* Motion: image curtain reveal + heading lift */
.js .reveal-img{clip-path:inset(12% 0 12% 0)}
.js .reveal-img img{transform:scale(1.14);transition:transform 1.6s var(--ease)}
.js .reveal-img{transition:clip-path 1.3s var(--ease)}
.js .reveal-img.in{clip-path:inset(0 0 0 0)}
.js .reveal-img.in img{transform:scale(1)}
.js .hero h1 .l{opacity:0;transform:translateY(40%);animation:lift 1.1s var(--ease) forwards}
.js .hero h1 .l:nth-child(2){animation-delay:.14s}
.js .hero .hero-sub,.js .hero .btn-row,.js .hero .eyebrow,.js .hero-aside{opacity:0;animation:fade .9s var(--ease) .45s forwards}
@keyframes lift{to{opacity:1;transform:none}}
@keyframes fade{to{opacity:1}}
.hero-media{will-change:transform}
.hero-aside{border-top-color:rgba(255,255,255,.5);max-width:270px;font-size:15px}

/* Help desk */
.hd-launch{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:10px;background:var(--navy);color:var(--white);border:1px solid rgba(255,255,255,.18);font:inherit;font-weight:700;font-size:15px;padding:14px 20px 14px 16px;border-radius:999px;cursor:pointer;box-shadow:0 12px 32px rgba(6,14,28,.28);transition:transform .25s var(--ease),opacity .25s}
.hd-launch:hover{transform:translateY(-2px)}
.hd-launch.is-hidden{opacity:0;pointer-events:none;transform:translateY(8px)}
.hd-pulse{width:10px;height:10px;border-radius:50%;background:#2BD576;box-shadow:0 0 0 0 rgba(43,213,118,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(43,213,118,0)}100%{box-shadow:0 0 0 0 rgba(43,213,118,0)}}
.hd{position:fixed;right:20px;bottom:20px;z-index:61;width:min(400px,calc(100vw - 24px));height:min(620px,calc(100dvh - 40px));display:flex;flex-direction:column;background:var(--white);color:var(--ink);box-shadow:0 24px 64px rgba(6,14,28,.32);border-radius:14px;overflow:hidden;opacity:0;transform:translateY(16px) scale(.98);transform-origin:bottom right;transition:opacity .25s var(--ease),transform .25s var(--ease)}
.hd[hidden]{display:none}
.hd.is-open{opacity:1;transform:none}
.hd-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 18px 16px 22px;background:var(--navy);color:var(--white)}
.hd-title{margin:0;font-weight:800;font-size:17px;letter-spacing:-.01em}
.hd-sub{margin:2px 0 0;font-size:13px;color:rgba(255,255,255,.7)}
.hd-close{width:40px;height:40px;border:1px solid rgba(255,255,255,.2);background:transparent;border-radius:50%;cursor:pointer;position:relative;color:var(--white)}
.hd-close span::before,.hd-close span::after{content:"";position:absolute;left:12px;top:19px;width:16px;height:2px;background:currentColor;transform:rotate(45deg)}
.hd-close span::after{transform:rotate(-45deg)}
.hd-log{flex:1;overflow-y:auto;padding:20px 18px 8px;display:flex;flex-direction:column;gap:10px;background:var(--paper)}
.hd-msg{max-width:88%;padding:12px 15px;border-radius:12px;font-size:15px;line-height:1.5;animation:fade .3s ease forwards}
.hd-msg--bot{background:var(--white);border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start}
.hd-msg--user{background:var(--ink);color:var(--white);border-bottom-right-radius:4px;align-self:flex-end}
.hd-msg a{font-weight:700}
.hd-ul{margin:8px 0 6px;padding-left:18px}
.hd-ul li{margin:4px 0}
.hd-link{display:inline-block;margin-top:8px;background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.hd-chips{display:flex;flex-wrap:wrap;gap:8px;padding:10px 18px;background:var(--paper)}
.hd-chips:empty{display:none}
.hd-chip{font:inherit;font-size:14px;font-weight:600;padding:9px 14px;border-radius:999px;border:1px solid var(--ink);background:var(--white);color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.hd-chip:hover{background:var(--ink);color:var(--white)}
.hd-form{display:flex;border-top:1px solid var(--line)}
.hd-form input{flex:1;font:inherit;font-size:16px;border:0;padding:16px 18px;min-width:0;background:var(--white);color:var(--ink)}
.hd-form input:focus{outline:none}
.hd-form button{width:56px;border:0;background:var(--orange);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center}
.hd-form button svg{width:18px;height:18px}
.hd-foot{font-size:13px;color:var(--muted);padding:10px 18px 14px;border-top:1px solid var(--line)}
.hd-foot a{font-weight:700;color:var(--ink)}
@media (max-width:560px){.hd{right:12px;bottom:12px}.hd-launch{right:14px;bottom:14px;padding:12px 16px 12px 14px}}


/* ===== v3 ===== */
/* Wordmark — heavy italic, both lines, tight (American freight lettering) */
.wordmark{gap:10px}
.wordmark .wm{line-height:.84;transform:translateY(1px)}
.wordmark .wm-1{font-weight:900;font-style:italic;font-stretch:100%;font-size:31px;letter-spacing:-.035em}
.wordmark .wm-2{font-weight:900;font-style:italic;font-stretch:100%;font-size:21.5px;letter-spacing:-.012em;margin-top:1px;padding-left:0}
@media (max-width:1380px) and (min-width:1241px){.wordmark .wm-1{font-size:27px}.wordmark .wm-2{font-size:18.5px}}
@media (max-width:560px){.wordmark .wm-1{font-size:25px}.wordmark .wm-2{font-size:17px}}

/* Dropdown (mega) menus */
.nav-item{position:relative;display:flex;align-items:center}
.nav-item > a{padding-right:2px!important}
.nav-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:30px;background:none;border:0;color:inherit;cursor:pointer;opacity:.8;padding:0;margin-right:4px}
.nav-caret svg{width:12px;height:12px;transition:transform .25s var(--ease)}
.nav-item:hover .nav-caret svg,.nav-item.is-open .nav-caret svg{transform:rotate(180deg)}
.mega{position:absolute;top:100%;left:-24px;padding-top:18px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s}
.nav-item:hover .mega,.nav-item.is-open .mega,.nav-item:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega-in{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);width:min(760px,calc(100vw - 48px));background:var(--white);color:var(--ink);border-radius:6px;box-shadow:0 28px 64px rgba(6,14,28,.28);overflow:hidden}
.mega-list{padding:24px 18px 18px}
.mega-k{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px 10px}
.mega .mega-link{display:grid;grid-template-columns:30px 1fr 18px;gap:10px;align-items:start;padding:12px 10px;border-radius:4px;text-decoration:none;opacity:1;font-size:inherit}
.mega .mega-link::after{display:none}
.mega-link:hover{background:var(--paper)}
.mega-n{font-size:12px;font-weight:700;color:var(--muted);padding-top:3px}
.mega-link strong{display:block;font-size:16px;font-weight:700;letter-spacing:-.015em}
.mega-link small{display:block;font-size:13.5px;color:var(--muted);line-height:1.45;margin-top:2px}
.mega-link svg{width:16px;height:16px;margin-top:4px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.mega-link:hover svg{opacity:1;transform:none}
.mega .mega-all{display:inline-flex;gap:8px;align-items:center;margin:8px 0 0 10px;padding:6px 0;font-weight:700;font-size:14px;opacity:1;text-decoration:none;border-bottom:2px solid currentColor}
.mega .mega-all::after{display:none}
.mega-all svg{width:14px;height:14px}
.mega-promo{background:var(--navy);color:var(--white);padding:28px 26px;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;background-image:linear-gradient(180deg,rgba(11,31,59,.35),rgba(11,31,59,.96)),url("/assets/img/mega-promo.jpg");background-size:cover;background-position:center}
.mega-promo .mega-k{color:rgba(255,255,255,.7);margin:0}
.mega-promo p{margin:0;font-size:15px;line-height:1.5;color:rgba(255,255,255,.86)}
.mega-promo .btn{opacity:1;padding:0;align-self:flex-start;margin-top:6px}
.mega-promo .btn::after{display:none}

/* Four-step rows */
.steps--4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.steps--4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.steps--4{grid-template-columns:1fr}}

.btn-reset{background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;font:inherit;font-weight:700;color:inherit;padding:0 0 4px}
.mobile-nav .sub{list-style:none;margin:0 0 10px;padding:0;border:0}
.mobile-nav .sub li a{font-size:17px;font-weight:500;padding:9px 0 9px 18px;border-bottom:0;opacity:.8}

@media (prefers-reduced-motion:reduce){
  .js .reveal-img{clip-path:none}.js .reveal-img img{transform:none}
  .js .hero h1 .l,.js .hero .hero-sub,.js .hero .btn-row,.js .hero .eyebrow,.js .hero-aside{opacity:1;transform:none}

  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;transform:none}
}
.mobile-nav li a[aria-current="page"]{color:var(--white);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
body.nav-open .hd-launch{display:none}

/* ===================== v4 — DP World-grade type, rounded UI, calm motion ===================== */
@font-face{font-family:"Figtree";src:url("/assets/fonts/figtree.woff2") format("woff2");font-weight:300 900;font-style:normal;font-display:swap}
:root{--r:999px;--rad:16px;--rad-sm:10px;--wide:"Archivo",system-ui,sans-serif;--body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif}
html.lenis,html.lenis body{height:auto}
html.lenis{scroll-behavior:auto}
.lenis.lenis-stopped{overflow:hidden}
body{font-family:var(--body);font-size:17px;font-weight:400;letter-spacing:-.003em}

/* Headings: extra-wide, all caps, heavy (Pilat Wide feel) */
h1,h2,.hero h1,.page-hero h1,.closing h2,.band h2,.sec-head h2,.why-copy h2,.pair h2,.two-col h2,.feature h3,.solution h2{font-family:var(--wide);font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1.02}
.hero h1{font-size:clamp(38px,5.6vw,92px);line-height:.98;letter-spacing:-.015em}
.hero h1 em{font-style:normal;font-weight:800}
.closing h2{font-size:clamp(36px,5.4vw,88px);max-width:16ch}
.closing h2 em{font-style:normal}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2{font-size:clamp(28px,3.3vw,52px);max-width:20ch}
.band h2{font-size:clamp(30px,3.8vw,60px);max-width:16ch}
.feature h3{font-size:clamp(22px,2.1vw,32px)}
h3,.row h3,.tile h3,.point h3,.why-list h3,.step h3{font-family:var(--wide);font-stretch:112%;font-weight:700;letter-spacing:-.01em;text-transform:none}
.row h3{font-size:clamp(20px,2vw,30px)}
.statement{font-family:var(--body);font-weight:500;letter-spacing:-.018em}
.lead{font-family:var(--body)}
.eyebrow,.label,.mega-k,.checklist-title,.side h3,.footer-top h3{font-family:var(--wide);font-stretch:112%}

/* Navigation in the wide face, like DP World */
.nav a,.track-link{font-family:var(--wide);font-stretch:112%;font-weight:600;font-size:14px;letter-spacing:0;opacity:.92}
.nav-item > a{padding-right:2px!important}
.phone-link{font-family:var(--wide);font-stretch:112%;font-weight:700;font-size:15.5px}
.mobile-nav li a{font-family:var(--wide);font-stretch:112%;text-transform:uppercase;font-size:clamp(20px,5vw,28px)}
.mobile-nav .sub li a{text-transform:none;font-family:var(--body)}

/* Pill buttons: one shape, arrow inside */
.btn{border-radius:999px;overflow:hidden;background:var(--bg);min-height:50px;font-family:var(--wide);font-stretch:112%;font-weight:700;font-size:14px;letter-spacing:0;transition:background .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease)}
.btn span,.btn i{background:transparent!important;border:0!important;border-radius:0!important}
.btn span{padding:0 6px 0 24px}
.btn i{width:46px}
.btn:hover{background:var(--orange-2);transform:translateY(-1px)}
.btn--ghost{background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.btn--ghost:hover{background:rgba(255,255,255,.2)}
.btn--line{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink);color:var(--ink)}
.btn--line:hover{background:var(--ink);color:var(--white)}
.btn--dark{background:var(--ink)}
.btn--track{--fg:var(--white);background:var(--navy-2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);min-height:44px}
.btn--track span{padding-left:20px}
.btn--track i{width:40px}
.btn--track:hover{background:var(--white);color:var(--ink)}
.site-header:not(.is-solid):not(.always-solid) .btn--track{background:rgba(255,255,255,.12);backdrop-filter:blur(8px)}
.header-cta .btn{display:inline-flex}
@media (max-width:560px){.header-cta .btn--track{display:none}}
.text-link{font-family:var(--wide);font-stretch:112%;font-size:14px}

/* Softer, blended edges */
.why-media,.feature figure,.split figure,.form-card,.note,.mega-in,.phero-media,.stepper-panel figure,.ind,.flow-step,.tile{border-radius:var(--rad)}
.tiles{border:0;gap:14px;grid-template-columns:repeat(4,1fr)}
.tile{border:1px solid var(--line)!important;min-height:0;text-decoration:none;color:inherit;transition:background .35s var(--ease),color .35s,transform .35s var(--ease),box-shadow .35s}
.tile:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(13,17,23,.08)}
@media (max-width:1000px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.tiles{grid-template-columns:1fr}}
.row .arr,.faq summary .pm{border-radius:50%}
.field input,.field textarea,.field select{border-radius:var(--rad-sm);border:1px solid rgba(13,17,23,.14)}
.radio-row label{border-radius:999px}
.form-card{border-top:0;box-shadow:0 1px 0 var(--line),0 24px 60px rgba(13,17,23,.06)}
.note{border-left:0;box-shadow:inset 4px 0 0 var(--ink)}
.closing,.band{border-radius:0}

/* Header always solid on inner pages */
.site-header.always-solid{background:rgba(11,31,59,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* DP World-style page hero: copy left, photo right */
.phero{display:grid;grid-template-columns:1fr 1fr;min-height:min(78vh,720px);margin-top:var(--header-h);background:#EEEDE9}
.phero-copy{display:flex;align-items:flex-end;padding:clamp(48px,7vw,110px) clamp(24px,4vw,64px) clamp(48px,6vw,88px) max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)))}
.phero-in{max-width:620px}
.phero .crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--ink);margin-bottom:28px}
.phero .crumbs a{text-decoration:none}
.phero .crumbs a:hover{text-decoration:underline}
.phero .crumbs [aria-current]{color:var(--muted)}
.crumb-sep{width:12px;height:12px;opacity:.6}
.phero h1{font-size:clamp(36px,4.6vw,72px);margin-bottom:26px;max-width:14ch}
.phero .lead{color:#3B4250;font-size:clamp(17px,1.35vw,20px);line-height:1.6;max-width:52ch;margin-bottom:34px}
.phero-media{position:relative;overflow:hidden;border-radius:0}
.phero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);animation:settle 1.8s var(--ease) forwards}
@keyframes settle{to{transform:scale(1)}}
@media (max-width:900px){.phero{grid-template-columns:1fr}.phero-media{aspect-ratio:16/10;order:-1}.phero-copy{padding:40px var(--pad) 48px}}

/* Sticky in-page navigation */
.subnav{position:sticky;top:var(--header-h);z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.subnav-in{display:flex;gap:30px;overflow-x:auto;scrollbar-width:none}
.subnav-in::-webkit-scrollbar{display:none}
.subnav a{flex:none;position:relative;padding:18px 0 16px;font-family:var(--wide);font-stretch:112%;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;transition:color .25s}
.subnav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--navy);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.subnav a:hover,.subnav a.is-active{color:var(--ink)}
.subnav a.is-active::after{transform:scaleX(1)}
section[id],article[id],.ind[id]{scroll-margin-top:calc(var(--header-h) + 72px)}

/* Home: connected four-step flow */
.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:f}
.flow li{position:relative}
.flow li:not(:last-child)::after{content:"";position:absolute;top:50%;right:-17px;width:34px;height:34px;z-index:2;border-radius:50%;transform:translateY(-50%);background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M4 10h11M10.5 5.5 15 10l-4.5 4.5' stroke='white' stroke-width='1.8'/%3E%3C/svg%3E") center/16px no-repeat;box-shadow:0 0 0 5px var(--paper)}
.flow-step{display:flex;flex-direction:column;height:100%;padding:30px 26px 26px;background:var(--white);border:1px solid var(--line);text-decoration:none;color:inherit;transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .4s,color .4s}
.flow-step:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(13,17,23,.1);background:var(--navy);color:var(--white)}
.flow-n{font-family:var(--wide);font-stretch:112%;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:48px}
.flow-step:hover .flow-n,.flow-step:hover p{color:rgba(255,255,255,.72)}
.flow-step h3{font-size:22px;margin-bottom:12px}
.flow-step p{color:var(--muted);font-size:15.5px;margin:0 0 28px;flex:1}
.flow-more{display:inline-flex;gap:8px;align-items:center;font-family:var(--wide);font-stretch:112%;font-weight:700;font-size:13px}
.flow-more svg{width:14px;height:14px;transition:transform .3s var(--ease)}
.flow-step:hover .flow-more svg{transform:translateX(4px)}
@media (max-width:1000px){.flow{grid-template-columns:repeat(2,1fr)}.flow li:nth-child(2)::after{display:none}}
@media (max-width:560px){.flow{grid-template-columns:1fr}.flow li::after{display:none}}

/* How We Work: tabbed process (click a step) */
.stepper-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);margin-bottom:28px}
.stepper-tab{position:relative;display:flex;align-items:baseline;gap:12px;text-align:left;background:none;border:0;padding:18px 18px 20px 0;font:inherit;color:var(--muted);cursor:pointer;transition:color .3s}
.st-n{font-family:var(--wide);font-stretch:112%;font-size:12px;font-weight:700}
.st-t{font-family:var(--wide);font-stretch:112%;font-weight:700;font-size:clamp(14px,1.2vw,17px)}
.st-bar{position:absolute;left:0;right:12px;bottom:-1px;height:3px;background:var(--navy);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.stepper-tab[aria-selected="true"]{color:var(--ink)}
.stepper-tab[aria-selected="true"] .st-bar{transform:scaleX(1)}
.stepper-tab:hover{color:var(--ink)}
.stepper-panel{display:grid;grid-template-columns:5fr 6fr;background:var(--paper);border-radius:var(--rad);overflow:hidden;min-height:480px}
.stepper-panel[hidden]{display:none}
.stepper-panel.is-in{animation:panelIn .7s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.stepper-panel figure{margin:0;order:2;border-radius:0;overflow:hidden;position:relative}
.stepper-panel figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sp-copy{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:flex-end;gap:16px}
.sp-n{font-family:var(--wide);font-stretch:112%;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sp-copy h3{font-size:clamp(24px,2.4vw,36px);text-transform:uppercase;font-stretch:125%;font-weight:800}
.sp-copy > p{color:#3B4250;font-size:18px;margin:0;max-width:46ch}
.sp-lists{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:8px 0 12px}
.sp-lists h4{margin:0 0 8px;font-family:var(--wide);font-stretch:112%;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sp-lists ul{list-style:none;margin:0;padding:0}
.sp-lists li{position:relative;padding:5px 0 5px 18px;font-size:15px}
.sp-lists li::before{content:"";position:absolute;left:0;top:13px;width:7px;height:7px;border-radius:50%;background:var(--ink);opacity:.5}
.sp-copy .btn,.sp-copy .text-link{align-self:flex-start}
@media (max-width:900px){.stepper-tabs{grid-template-columns:1fr 1fr}.stepper-panel{grid-template-columns:1fr}.stepper-panel figure{order:0;aspect-ratio:16/9}.sp-lists{grid-template-columns:1fr}}

/* Industries grid */
.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ind{background:var(--white);border:1px solid var(--line);padding:28px 24px;display:flex;flex-direction:column;gap:10px;transition:transform .35s var(--ease),box-shadow .35s}
.ind:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(13,17,23,.08)}
.ind-n{font-family:var(--wide);font-stretch:112%;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:28px}
.ind h3{font-size:19px}
.ind p{margin:0;color:var(--muted);font-size:15px}
.ind .ind-ex{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink)}
.ind:target{box-shadow:0 0 0 2px var(--navy)}
.fine{font-size:14px;color:var(--muted);max-width:80ch;margin-top:28px}
@media (max-width:1100px){.ind-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ind-grid{grid-template-columns:1fr}}

/* Calm motion (Himon / Apple feel): words fill from light to full colour */
.js .wfill .w{opacity:.16;transition:opacity .9s var(--ease)}
.js .wfill.in .w{opacity:1}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.js .rv.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .js .wfill .w{opacity:1}
  .phero-media img{animation:none;transform:none}
}

/* ===================== v5 — readable type system ===================== */
/* Logo keeps its original heavy italic lettering */
.wordmark .wm,.wordmark .wm-1,.wordmark .wm-2{font-family:"Archivo",system-ui,sans-serif;font-style:italic;font-weight:900;font-stretch:100%;text-transform:uppercase}
.footer-mark{font-family:"Archivo",system-ui,sans-serif}

/* Capitals only for page titles; section headings in sentence case */
.sec-head h2,.why-copy h2,.pair h2,.two-col h2,.band h2,.closing h2,.solution h2{
  text-transform:none;font-stretch:112%;font-weight:700;letter-spacing:-.022em;line-height:1.08}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2{font-size:clamp(28px,2.9vw,44px);max-width:22ch}
.band h2{font-size:clamp(30px,3.4vw,52px);max-width:18ch;line-height:1.06}
.closing h2{font-size:clamp(36px,4.6vw,72px);max-width:18ch;line-height:1.04;letter-spacing:-.028em}
.closing h2 em{font-style:normal;color:inherit;font-weight:inherit}
.feature h3,.sp-copy h3{text-transform:none;font-stretch:112%;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.feature h3{font-size:clamp(24px,2.2vw,34px)}
.sp-copy h3{font-size:clamp(24px,2.3vw,34px)}

/* Page titles: wide capitals, sized to stay on sensible lines */
.hero h1{font-size:clamp(36px,5vw,84px);letter-spacing:-.012em;line-height:1}
.phero h1{font-size:clamp(34px,3.6vw,58px);max-width:none;line-height:1.02;margin-bottom:22px}
.phero{min-height:min(66vh,620px)}
.phero-copy{align-items:center}
.phero .lead{max-width:50ch}

/* Section heading blocks: label, heading, one-line summary — one left edge */
.sec-head{margin-bottom:clamp(36px,4.5vw,64px)}
.sec-head .lead{margin:16px 0 0;max-width:58ch;font-size:clamp(17px,1.3vw,19px)}
.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 48px;flex-wrap:wrap}
.sec-head-row > div{flex:1 1 520px}
.sec-head-row > .btn,.sec-head-row > .text-link{flex:none;margin-bottom:6px}
.label{margin-bottom:18px}

/* Comfortable reading */
.statement{font-size:clamp(20px,1.75vw,27px);line-height:1.42;max-width:40ch}
.why-copy .statement{margin-top:24px}
.pair{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}
.pair .statement{max-width:44ch}
.lead,.feature p,.sp-copy > p,.two-col .body p{line-height:1.65}
p{max-width:68ch}
.why-list p,.flow-step p,.ind p,.point p,.tile p{line-height:1.6}
.point h3,.why-list h3{font-size:19px}
.values{gap:clamp(24px,3vw,48px)}
.section{padding-block:clamp(72px,9vw,128px)}

/* Gentler word fill */
.js .wfill .w{opacity:.22;transition:opacity 1s var(--ease)}

/* ===================== v6 — clean, white, professional ===================== */
:root{
  --white:#FFFFFF; --mist:#F4F6F8; --navy:#0B1F3B; --navy-2:#132C52;
  --ink:#121821; --text:#2B3340; --muted:#5E6774; --line:#E2E6EB; --orange:#FF7A00; --orange-2:#EB6F00;
  --paper:#FFFFFF;
}
body{background:#fff;color:var(--text);font-family:var(--body);font-size:17px;line-height:1.6;letter-spacing:0}
h1,h2,h3,h4{color:var(--ink)}
.on-dark h1,.on-dark h2,.on-dark h3,.closing h2,.band h2{color:#fff}

/* Type scale: wide face for titles only, at its natural spacing */
.hero h1,.phero h1{font-family:var(--wide);font-stretch:125%;font-weight:700;text-transform:uppercase;letter-spacing:.005em}
.hero h1{font-size:clamp(34px,4.6vw,72px);line-height:1.04}
.hero h1 em{font-weight:700}
.phero h1{font-size:clamp(32px,3.3vw,52px);line-height:1.08}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2,.band h2,.closing h2,.feature h3,.sp-copy h3{
  font-family:var(--wide);font-stretch:112%;font-weight:700;text-transform:none;letter-spacing:0;line-height:1.15}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2{font-size:clamp(26px,2.5vw,38px);max-width:24ch}
.band h2{font-size:clamp(28px,2.8vw,44px);max-width:20ch}
.closing h2{font-size:clamp(30px,3.6vw,56px);max-width:20ch;line-height:1.1}
.feature h3,.sp-copy h3{font-size:clamp(22px,1.9vw,28px)}
h3,.row h3,.tile h3,.point h3,.why-list h3,.step h3,.ind-row h3,.itxt h3,.tl h3,.mega-link strong{
  font-family:var(--body);font-stretch:100%;font-weight:700;letter-spacing:-.005em;text-transform:none}
.row h3{font-size:clamp(19px,1.6vw,24px)}
.point h3,.why-list h3{font-size:18px;margin-bottom:6px}
.statement{font-family:var(--body);font-weight:400;font-size:clamp(19px,1.5vw,23px);line-height:1.5;color:var(--text);letter-spacing:0;max-width:46ch}
.statement span{color:var(--text)}
.lead{color:var(--muted);font-size:clamp(17px,1.25vw,19px);line-height:1.6}
.on-dark .lead,.closing .lead,.band .lead{color:rgba(255,255,255,.8)}

/* Everything small in the regular face */
.nav a,.track-link,.phone-link,.btn,.text-link,.subnav a,.st-t,.st-n,.sp-n,.sp-lists h4,.mega-k,.checklist-title,.side h3,.footer-top h3,.crumbs,.eyebrow,.hero-kicker{font-family:var(--body);font-stretch:100%}
.nav a{font-size:15px;font-weight:600;opacity:.9}
.phone-link{font-size:16px;font-weight:700}
.btn{font-size:15px;font-weight:700}
.text-link{font-size:15px;font-weight:700;border-bottom-width:2px}
.subnav a{font-size:15px;font-weight:600}
.mega-k,.checklist-title,.side h3,.footer-top h3,.sp-lists h4,.sp-n{text-transform:none;letter-spacing:0;font-size:14px;font-weight:700;color:var(--muted)}
.footer-top h3{color:rgba(255,255,255,.6)}
.hero-kicker{font-size:16px;font-weight:600;color:rgba(255,255,255,.85);margin:0 0 18px}

/* Calm: no fade on every block; images and headings carry the motion */
.js .rv{opacity:1!important;transform:none!important}
.js .wfill .w{opacity:.25}

/* Sections alternate white / mist */
.section{background:#fff}
.section--white{background:var(--mist)}
.section--ink{background:var(--navy)}
.phero{background:var(--mist)}
.subnav{background:rgba(255,255,255,.97)}

/* Service bar under the hero */
.svcbar{background:#fff;border-bottom:1px solid var(--line)}
.svcbar ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.svcbar li + li{border-left:1px solid var(--line)}
.svcbar a{display:block;padding:26px 28px 28px;text-decoration:none;height:100%;transition:background .25s}
.svcbar li:first-child a{padding-left:0}
.svcbar a:hover{background:var(--mist)}
.svcbar strong{display:block;font-size:16px;color:var(--ink);margin-bottom:4px}
.svcbar span{display:block;font-size:14.5px;line-height:1.5;color:var(--muted)}
@media (max-width:900px){.svcbar ul{grid-template-columns:1fr 1fr}.svcbar li:nth-child(3){border-left:0}.svcbar li:nth-child(n+3){border-top:1px solid var(--line)}.svcbar li:nth-child(3) a{padding-left:0}}
@media (max-width:520px){.svcbar ul{grid-template-columns:1fr}.svcbar li + li{border-left:0;border-top:1px solid var(--line)}.svcbar a{padding-left:0}}

/* Why: plain list, no numbers */
.why-list li{grid-template-columns:1fr;padding:20px 0}
.why-media{border-radius:12px}

/* Solutions rows without numbering */
.row{grid-template-columns:minmax(0,5fr) minmax(0,6fr) 48px}
.row .arr{width:48px;height:48px}
@media (max-width:860px){.row{grid-template-columns:1fr 48px}.row p{grid-column:1/2}.row .arr{grid-row:1/3;grid-column:2}}

/* How it works: a real sequence — numbered timeline, no boxes */
.tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;position:relative}
.tl::before{content:"";position:absolute;left:20px;right:20px;top:20px;height:2px;background:var(--line)}
.tl li{position:relative}
.tl a{display:block;text-decoration:none;color:inherit}
.tl-dot{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:16px;margin-bottom:22px;box-shadow:0 0 0 6px #fff;transition:background .25s}
.tl a:hover .tl-dot{background:var(--orange);color:var(--ink)}
.tl h3{font-size:19px;margin-bottom:8px}
.tl p{color:var(--muted);font-size:16px;margin:0}
.tl a:hover h3{text-decoration:underline;text-underline-offset:4px}
@media (max-width:900px){.tl{grid-template-columns:1fr 1fr;row-gap:40px}.tl::before{display:none}}
@media (max-width:520px){.tl{grid-template-columns:1fr}}

/* Coverage band: navy with photo, no tinted greys */
.band{background:var(--navy)}
.checklist li{grid-template-columns:1fr}
.checklist-title{color:rgba(255,255,255,.7)!important;margin:0 0 12px}

/* Industries on home: text grid with rules, no cards */
.itxt-grid{display:grid;grid-template-columns:repeat(4,1fr);column-gap:32px}
.itxt{display:block;padding:22px 0 26px;border-top:1px solid var(--line);text-decoration:none;color:inherit}
.itxt h3{font-size:17px;margin-bottom:6px}
.itxt p{font-size:15px;color:var(--muted);margin:0;line-height:1.55}
.itxt:hover h3{text-decoration:underline;text-underline-offset:4px}
@media (max-width:1000px){.itxt-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.itxt-grid{grid-template-columns:1fr}}

/* Industries page: two-column list */
.ind-list{border-top:1px solid var(--line)}
.ind-row{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:16px 48px;padding:30px 0;border-bottom:1px solid var(--line)}
.ind-row h3{font-size:clamp(19px,1.5vw,22px)}
.ind-row p{margin:0;color:var(--text)}
.ind-row .ind-ex{margin-top:8px;color:var(--muted);font-size:15px}
.ind-row:target h3{color:var(--navy);text-decoration:underline;text-underline-offset:5px}
@media (max-width:760px){.ind-row{grid-template-columns:1fr}}

/* Values / points */
.values .point,.points .point{border-top:1px solid var(--line);padding-top:20px}
.on-dark .values .point{border-top-color:rgba(255,255,255,.25)}

/* Forms & cards: one quiet radius, minimal shadow */
.form-card{border-radius:12px;box-shadow:none;border:1px solid var(--line)}
.note{border-radius:10px;background:var(--mist);box-shadow:none;border-left:3px solid var(--navy)}
.field input,.field textarea{background:#fff;border-radius:8px;border:1px solid #CDD3DA}
.field input:focus,.field textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(11,31,59,.12)}
.radio-row label{background:var(--mist)}
.feature figure,.stepper-panel,.why-media,.split figure{border-radius:12px}
.stepper-panel{background:var(--mist)}

/* Buttons: steady, no lift */
.btn:hover{transform:none}
.btn--line{box-shadow:inset 0 0 0 1.5px #C5CCD4}
.btn--line:hover{box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--ink)}

/* Mega menu: full-width panel under the header, everything visible at once */
.nav-item{position:static}
.nav{position:static}
.site-header .wrap{position:relative}
.mega{position:fixed;left:0;right:0;top:var(--header-h);padding-top:0;transform:translateY(-6px)}
.mega > .wrap{padding-top:0}
.mega-in{width:auto;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:0;border-radius:0 0 14px 14px;box-shadow:0 30px 60px rgba(11,31,59,.18)}
.mega-list{display:grid;grid-template-columns:repeat(2,1fr);column-gap:8px;row-gap:2px;padding:26px 24px 22px;align-content:start}
.mega--industries .mega-list{grid-template-columns:repeat(4,1fr)}
.mega-list .mega-k,.mega-list .mega-all{grid-column:1/-1}
.mega .mega-link{display:block;padding:14px 14px;border-radius:8px}
.mega-link strong{display:block;font-size:15.5px;color:var(--ink);margin-bottom:3px}
.mega-link small{font-size:14px;line-height:1.45}
.mega .mega-all{justify-self:start;margin:10px 0 0 14px;border-bottom:2px solid var(--ink);font-family:var(--body);color:var(--ink)}
.mega-promo{border-radius:0 0 14px 0}
.mega-promo .mega-k{color:rgba(255,255,255,.75)!important;font-size:15px}
@media (max-width:1240px){.mega{display:none}}

/* Header */
.site-header.always-solid,.site-header.is-solid{background:var(--navy)}
.btn--track{background:transparent;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.45)}
.btn--track:hover{background:#fff;color:var(--navy)}

/* Footer: simple and solid */
.site-footer{background:var(--navy)}
.footer-top{padding-bottom:56px}
.footer-bottom{border-top-color:rgba(255,255,255,.14)}

/* Help: a quiet support button and panel */
.hd-launch{width:60px;height:60px;padding:0;justify-content:center;border-radius:50%;background:var(--navy);border:0;box-shadow:0 10px 30px rgba(11,31,59,.3)}
.hd-launch svg{width:26px;height:26px}
.hd-tip{position:absolute;right:72px;top:50%;transform:translateY(-50%);background:var(--ink);color:#fff;font-size:13px;font-weight:600;padding:6px 10px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .2s;white-space:nowrap}
.hd-launch:hover .hd-tip,.hd-launch:focus-visible .hd-tip{opacity:1}
.hd-launch:hover{transform:none}
.hd-pulse{display:none}
.hd{border-radius:16px;box-shadow:0 24px 70px rgba(11,31,59,.28)}
.hd-head{background:#fff;color:var(--ink);border-bottom:1px solid var(--line);padding:16px 16px 16px 18px}
.hd-brand{display:flex;align-items:center;gap:12px}
.hd-brand img{width:36px;height:auto}
.hd-title{color:var(--ink)}
.hd-sub{color:var(--muted)}
.hd-close{border-color:var(--line);color:var(--ink)}
.hd-log{background:#fff}
.hd-msg--bot{background:var(--mist);border:0}
.hd-msg--user{background:var(--navy)}
.hd-chips{background:#fff}
.hd-chips.is-menu{flex-direction:column;flex-wrap:nowrap;gap:0;padding:0 18px 12px}
.hd-chips.is-menu .hd-chip{border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;text-align:left;padding:14px 4px;font-size:15px;display:flex;justify-content:space-between}
.hd-chips.is-menu .hd-chip::after{content:"›";color:var(--muted);font-size:18px;line-height:1}
.hd-chips.is-menu .hd-chip:hover{background:var(--mist);color:var(--ink)}
.hd-chip{border-color:#C5CCD4}
.hd-chip:hover{background:var(--navy);border-color:var(--navy)}
.hd-form button{background:var(--navy);color:#fff}
.nav{align-self:stretch;height:var(--header-h)}
.nav-item{height:100%}
.site-header .mega > .wrap{display:block;height:auto}
.mega-in{max-height:calc(100vh - var(--header-h) - 24px);overflow:auto}
.site-header:has(.nav-item:hover),.site-header:has(.nav-item.is-open),.site-header:has(.nav-item:focus-within){background:var(--navy)}

/* ===================== v7 — Manrope (mockup lettering), readable widths ===================== */
@font-face{font-family:"Manrope";src:url("/assets/fonts/manrope.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
:root{--wide:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif}
body{font-family:var(--body);font-size:17px;line-height:1.65;font-weight:450;color:var(--text)}
*{font-stretch:normal}

/* Wordmark exactly in the mockup's spirit: heavy, slanted, two tight lines */
.wordmark{gap:12px}
.wordmark .wm{display:flex;flex-direction:column;line-height:.92;transform:skewX(-10deg);transform-origin:left bottom}
.wordmark .wm-1,.wordmark .wm-2{font-family:"Manrope",sans-serif!important;font-style:normal!important;font-weight:800!important;text-transform:uppercase;letter-spacing:-.01em;color:#fff}
.wordmark .wm-1{font-size:27px}
.wordmark .wm-2{font-size:21px;margin-top:2px;letter-spacing:.01em}
.wordmark img{height:52px}
@media (max-width:560px){.wordmark .wm-1{font-size:22px}.wordmark .wm-2{font-size:17px}}
@media (max-width:1380px) and (min-width:1241px){.wordmark .wm-1{font-size:24px}.wordmark .wm-2{font-size:18.5px}}

/* Titles: Title Case, heavy, normal width */
.hero h1,.phero h1{font-family:var(--wide);text-transform:none;font-weight:800;letter-spacing:-.025em}
.hero h1{font-size:clamp(40px,5.4vw,84px);line-height:1.02}
.hero h1 em{font-weight:800;font-style:normal}
.phero h1{font-size:clamp(36px,3.8vw,58px);line-height:1.06}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2,.band h2,.closing h2,.feature h3,.sp-copy h3{font-family:var(--wide);font-weight:800;letter-spacing:-.022em;line-height:1.14}
.sec-head h2,.why-copy h2,.pair h2,.two-col h2{font-size:clamp(28px,2.7vw,42px);max-width:22ch}
.band h2{font-size:clamp(30px,3vw,48px)}
.closing h2{font-size:clamp(34px,4vw,62px);letter-spacing:-.03em}
h3,.row h3,.point h3,.why-list h3,.ind-row h3,.itxt h3,.tl h3,.mega-link strong,.svcbar strong{font-weight:700;letter-spacing:-.01em}
.statement{font-weight:500;color:var(--ink)}
.nav a{font-size:15px;font-weight:600}
.btn{font-weight:700;font-size:15px}

/* Phone number: orange so it is the first thing a buyer sees */
.phone-link,.phone-link span{color:var(--orange)}
.phone-link svg{color:var(--orange)}
.phone-link{font-size:17px;font-weight:800}
@media (max-width:1240px){.phone-link{border-color:rgba(255,122,0,.6)}}

/* Footer brand with Mo's emblem */
.wordmark--footer img{height:56px}
.footer-mark{display:none}
/* Hero film: keep headline and header readable over bright scenes */
.hero .hero-media::after{background:linear-gradient(180deg,rgba(6,14,28,.62) 0%,rgba(6,14,28,.12) 22%,rgba(6,14,28,0) 45%,rgba(6,14,28,.6) 100%),linear-gradient(90deg,rgba(6,14,28,.72) 0%,rgba(6,14,28,.42) 42%,rgba(6,14,28,0) 72%)}

/* ===================== v8 — hero prompt + help panel ===================== */
.hero-aside{display:none}
.hero-ask{align-self:end;display:grid;gap:6px;width:300px;padding:20px 22px;border-radius:14px;text-decoration:none;color:#fff;background:rgba(11,31,59,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .3s}
.hero-ask:hover{background:rgba(11,31,59,.75)}
.ha-k{font-size:14px;font-weight:600;color:rgba(255,255,255,.75)}
.ha-rot{position:relative;display:block;height:54px;overflow:hidden}
.ha-rot span{position:absolute;inset:0;font-size:19px;font-weight:700;line-height:1.3;letter-spacing:-.01em;opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.ha-rot span.is-on{opacity:1;transform:none}
.ha-cta{display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-size:14px;font-weight:700;color:var(--orange)}
.ha-cta svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.hero-ask:hover .ha-cta svg{transform:translateX(3px)}
@media (max-width:860px){.hero-ask{display:none}}
@media (prefers-reduced-motion:reduce){.ha-rot span{transition:none}}

/* Help panel: one scroll area, clear footer */
.hd{height:min(600px,calc(100dvh - 40px))}
.hd-head{padding:18px 18px 16px 22px}
.hd-title{font-size:18px;font-weight:800;margin:0}
.hd-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:#fff;-webkit-overflow-scrolling:touch}
.hd-log{flex:none;overflow:visible;background:#fff;padding:18px 18px 6px}
.hd-chips{padding:4px 18px 16px}
.hd-chips.is-menu{padding:0 18px 14px}
.hd-msg{font-size:15px}
.hd-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px 14px;border-top:1px solid var(--line);background:var(--mist)}
.hd-call{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:15px;color:var(--ink);text-decoration:none}
.hd-call svg{width:17px;height:17px;color:var(--orange)}
.hd-call:hover span{text-decoration:underline;text-underline-offset:3px}
.hd-mail{font-size:14px;font-weight:700;color:var(--muted);text-decoration:none}
.hd-mail:hover{color:var(--ink)}

/* Help prompt bubble */
.hd-nudge{position:fixed;right:20px;bottom:92px;z-index:59;max-width:270px;background:#fff;color:var(--ink);border-radius:14px;padding:14px 38px 14px 16px;box-shadow:0 14px 40px rgba(11,31,59,.22);opacity:0;transform:translateY(8px);transition:opacity .3s var(--ease),transform .3s var(--ease)}
.hd-nudge.is-in{opacity:1;transform:none}
.hd-nudge p{margin:0;font-size:14.5px;line-height:1.45;cursor:pointer}
.hd-nudge-x{position:absolute;top:6px;right:8px;width:26px;height:26px;border:0;background:none;font-size:20px;line-height:1;color:var(--muted);cursor:pointer}
.hd-nudge::after{content:"";position:absolute;right:22px;bottom:-6px;width:12px;height:12px;background:#fff;transform:rotate(45deg)}
body.nav-open .hd-nudge{display:none}

/* ===================== v9 — hero news line, cookies, legal ===================== */
.hero-ask{display:none!important}
.hero-news{position:relative;width:320px;align-self:end;padding-top:16px;color:rgba(255,255,255,.82);font-size:15.5px;line-height:1.5}
.hero-news::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(255,255,255,.35)}
.hn-bar{position:absolute;left:0;top:0;height:1px;width:100%;background:#fff;transform:scaleX(0);transform-origin:left}
.hero-news.is-running .hn-bar{animation:hnbar var(--hn-dur,4200ms) linear forwards}
@keyframes hnbar{to{transform:scaleX(1)}}
.hero-news ul{list-style:none;margin:0;padding:0;position:relative;min-height:72px}
.hero-news li{position:absolute;inset:0 0 auto 0;opacity:0;transform:translateY(10px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.hero-news li.is-on{opacity:1;transform:none;position:relative}
.hero-news strong{color:#fff;font-weight:700}
@media (max-width:860px){.hero-news{display:none}}
@media (prefers-reduced-motion:reduce){.hero-news li{transition:none}.hn-bar{display:none}}

/* Cookie notice: small, bottom-left, out of the way */
.cookie{position:fixed;left:20px;bottom:20px;z-index:58;max-width:430px;background:#fff;color:var(--text);border-radius:14px;padding:18px 20px;box-shadow:0 16px 48px rgba(11,31,59,.22);opacity:0;transform:translateY(10px);transition:opacity .3s var(--ease),transform .3s var(--ease)}
.cookie.is-in{opacity:1;transform:none}
.cookie p{margin:0 0 14px;font-size:14.5px;line-height:1.5}
.cookie p strong{color:var(--ink)}
.cookie a{color:var(--ink);font-weight:600}
.cookie-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px}
.cookie-more{font-size:14px}
.cookie .btn{min-height:40px}
.cookie .btn span{padding:0 24px}
@media (max-width:560px){.cookie{left:12px;right:84px;bottom:12px;max-width:none;padding:14px 16px}}

/* Footer legal row */
.legal-links{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
.legal-links a,.cookie-reopen{color:rgba(255,255,255,.6);text-decoration:none;font:inherit;background:none;border:0;padding:0;cursor:pointer}
.legal-links a:hover,.cookie-reopen:hover{color:#fff}

/* Legal pages */
.legal-date{margin:0;font-size:14px;font-weight:600;color:var(--muted)}
.prose h2{font-family:var(--wide);font-size:22px;font-weight:800;letter-spacing:-.015em;margin:44px 0 12px;max-width:none}
.prose p,.prose li{font-size:17px;color:var(--text)}
.prose ul{padding-left:20px}
.legal-table{width:100%;border-collapse:collapse;margin:8px 0 8px;font-size:15px}
.legal-table th,.legal-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.legal-table th{font-weight:700;color:var(--ink);background:var(--mist)}
@media (max-width:640px){.legal-table{display:block;overflow-x:auto}}
.cookie{left:20px;right:96px;max-width:860px;display:flex;align-items:center;gap:20px;padding:14px 18px}
.cookie p{margin:0;flex:1}
.cookie-actions{flex:none}
@media (max-width:760px){.cookie{flex-direction:column;align-items:stretch;gap:12px;right:84px}}

/* Track Shipment */
.track-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:start}
.track-card .field{margin-bottom:6px}
.track-how h2{font-family:var(--wide);font-weight:800;font-size:clamp(24px,2.2vw,32px);letter-spacing:-.02em;margin-bottom:28px}
.tl--v{grid-template-columns:1fr;gap:26px}
.tl--v::before{left:20px;right:auto;top:20px;bottom:20px;width:2px;height:auto}
.tl--v li{display:grid;grid-template-columns:42px 1fr;column-gap:18px}
.tl--v .tl-dot{grid-row:1/3;margin:0}
.tl--v h3{margin:8px 0 4px}
@media (max-width:900px){.track-grid{grid-template-columns:1fr}.tl--v::before{display:block}}
h1,h2{text-transform:none;font-stretch:normal}
.form-card h2{font-family:var(--wide);font-weight:800;letter-spacing:-.02em;font-size:clamp(24px,2.2vw,32px);line-height:1.15}

/* ===================== v11 ===================== */
/* Buttons: small variant + mega footer */
.btn--sm{min-height:42px;font-size:14px}
.btn--sm span{padding:0 4px 0 20px}.btn--sm i{width:40px}
.mega-foot{grid-column:1/-1;padding:14px 14px 4px;margin-top:8px;border-top:1px solid var(--line)}
.mega .mega-foot .btn{opacity:1;padding:0}
.mega .mega-foot .btn::after{display:none}

/* Industries */
.ind-feature{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,36px)}
.ind-card figure{margin:0 0 22px;aspect-ratio:3/2;border-radius:12px;overflow:hidden;background:var(--mist)}
.ind-card figure img{width:100%;height:100%;object-fit:cover}
.ind-card h3{font-size:21px;margin-bottom:8px}
.ind-card p{margin:0;color:var(--text);font-size:16px}
.ind-card .ind-ex{margin-top:10px;color:var(--muted);font-size:14.5px}
.ind-card:target h3{text-decoration:underline;text-underline-offset:5px}
@media (max-width:900px){.ind-feature{grid-template-columns:1fr;gap:40px}}
.ind-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.ind-aside{position:sticky;top:calc(var(--header-h) + 90px)}
.ind-aside h2{font-family:var(--wide);font-weight:800;font-size:clamp(28px,2.7vw,40px);letter-spacing:-.022em;line-height:1.14;margin-bottom:16px}
.ind-aside .lead{margin-bottom:28px}
@media (max-width:900px){.ind-split{grid-template-columns:1fr}.ind-aside{position:static}}
.ind-list .ind-row{display:block;padding:26px 0}
.ind-row h3{margin-bottom:6px}
.ind-row p{max-width:60ch}
.req-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.req-list li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}
.req-n{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:15px}
.req-list h3{font-size:18px;margin:5px 0 4px}
.req-list p{margin:0;color:var(--muted);font-size:16px}
.fine{margin-top:40px}
/* gentle reveal on list rows */
.js .ind-row,.js .req-list li,.js .ind-card{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .ind-row.in,.js .req-list li.in,.js .ind-card.in{opacity:1;transform:none}

/* Help launcher: solid bubble + label, like Apple/Stripe support */
.hd-launch{width:auto;height:52px;padding:0 20px 0 16px;gap:9px;border-radius:999px;background:var(--navy);font:inherit;font-weight:700;font-size:15px}
.hd-launch svg{width:22px;height:22px}
.hd-tip{display:none}
.hd-label{line-height:1}
@media (max-width:560px){.hd-launch{width:52px;padding:0;justify-content:center}.hd-label{display:none}}
.hd-nudge{bottom:84px}

/* Typing indicator + chip entrance */
.hd-typing{align-self:flex-start;display:inline-flex;gap:5px;padding:14px 16px;background:var(--mist);border-radius:12px;border-bottom-left-radius:4px}
.hd-typing span{width:7px;height:7px;border-radius:50%;background:#8A93A0;animation:hdDot 1s infinite ease-in-out}
.hd-typing span:nth-child(2){animation-delay:.15s}.hd-typing span:nth-child(3){animation-delay:.3s}
@keyframes hdDot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.hd-chip{opacity:0;animation:chipIn .35s var(--ease) forwards}
@keyframes chipIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hd-chip{opacity:1;animation:none}.hd-typing span{animation:none}}
.btn i{border-left:0!important}.btn--ghost span,.btn--ghost i{box-shadow:none!important;backdrop-filter:none!important}
.band-media img{opacity:1;mix-blend-mode:normal;object-position:30% 40%}.band-media::after{background:linear-gradient(90deg,rgba(11,31,59,.94) 0%,rgba(11,31,59,.82) 45%,rgba(11,31,59,.45) 100%)}

/* ===================== v12 — hero framing, Track, Industries, FAQ ===================== */
/* Split hero: wider photo so it is framed, not zoomed */
.phero--split{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}
.phero--split .phero-copy{padding-right:clamp(24px,3.5vw,56px)}
.phero-media img{transform:none;animation:heroDrift 22s ease-in-out infinite alternate}
@keyframes heroDrift{from{transform:scale(1)}to{transform:scale(1.045)}}

/* Full-bleed hero (Track Shipment) */
.phero--full{position:relative;display:block;min-height:min(78vh,700px);background:var(--navy);color:#fff;overflow:hidden}
.phero--full .phero-media{position:absolute;inset:0}
.phero--full .phero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,22,43,.94) 0%,rgba(9,22,43,.86) 34%,rgba(9,22,43,.35) 62%,rgba(9,22,43,.05) 100%)}
.phero--full .phero-copy{position:relative;z-index:1;min-height:inherit;display:flex;align-items:center;padding:clamp(56px,7vw,100px) var(--pad);max-width:var(--max);margin:0 auto}
.phero--full .phero-in{max-width:620px}
.phero--full .crumbs,.phero--full .crumbs a{color:rgba(255,255,255,.8)}
.phero--full .crumbs [aria-current]{color:rgba(255,255,255,.55)}
.phero--full h1{color:#fff;padding-left:22px;border-left:5px solid var(--orange);margin-bottom:16px}
.phero--full .lead{color:rgba(255,255,255,.88);padding-left:27px;max-width:34ch;font-size:clamp(18px,1.5vw,22px);margin-bottom:34px}
.trk-bar{display:grid;grid-template-columns:1fr auto;gap:10px;max-width:600px}
.trk-field{position:relative}
.trk-field svg{position:absolute;left:16px;top:50%;width:24px;height:24px;transform:translateY(-50%);color:#6B7480;pointer-events:none}
.trk-field input{width:100%;height:58px;border:0;border-radius:8px;padding:0 16px 0 52px;font:inherit;font-size:16px;color:var(--ink);background:#fff}
.trk-field input:focus{outline:3px solid rgba(255,122,0,.55);outline-offset:0}
.trk-btn{height:58px;padding:0 28px;border:0;border-radius:8px;background:var(--orange);color:#fff;font:inherit;font-weight:800;font-size:16px;cursor:pointer;transition:background .2s}
.trk-btn:hover{background:var(--orange-2)}
.trk-msg{grid-column:1/-1;margin:2px 0 0;font-size:14.5px;min-height:1px;color:rgba(255,255,255,.85)}
.trk-msg[data-state="error"]{color:#FFC59A}
.trk-help{display:inline-flex;gap:16px;align-items:flex-start;margin-top:34px;color:#fff;text-decoration:none}
.trk-help svg{width:28px;height:28px;flex:none;margin-top:2px}
.trk-help strong{display:block;font-size:18px;font-weight:700}
.trk-help span{font-size:15px;color:rgba(255,255,255,.82)}
.trk-help:hover strong{text-decoration:underline;text-underline-offset:4px}
@media (max-width:760px){.phero--full .phero-media::after{background:linear-gradient(180deg,rgba(9,22,43,.75),rgba(9,22,43,.9))}.trk-bar{grid-template-columns:1fr}.phero--full .phero-media img{object-position:80% center!important}}

/* Stacked hero (About): copy above, the whole scene below */
.phero--stack{display:flex;flex-direction:column;min-height:0}
.phero--stack .phero-media{order:2;aspect-ratio:21/9;max-height:620px}
.phero--stack .phero-copy{padding:clamp(48px,6vw,88px) var(--pad) clamp(36px,4vw,56px);max-width:var(--max);margin:0 auto;width:100%;align-items:flex-start}
.phero--stack .phero-in{max-width:none;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:12px 64px;align-items:end}
.phero--stack .crumbs{grid-column:1/-1}
.phero--stack h1{margin:0}
.phero--stack .lead{margin:0}
.phero--stack .btn-row{grid-column:2}
@media (max-width:900px){.phero--stack .phero-in{grid-template-columns:1fr}.phero--stack .btn-row{grid-column:1}.phero--stack .phero-media{aspect-ratio:16/10}}

/* Industries hero: slanted photo panels, built from the individual photos */
.ihero{margin-top:var(--header-h);background:var(--navy);color:#fff;overflow:hidden}
.ihero-panels{--s:70px;display:flex;height:clamp(320px,46vw,560px);margin-right:calc(var(--s) * -1)}
.ipan{position:relative;flex:1;margin-left:calc(var(--s) * -1 + 6px);clip-path:polygon(var(--s) 0,100% 0,calc(100% - var(--s)) 100%,0 100%);overflow:hidden;color:#fff;text-decoration:none;opacity:0;transform:translateY(30px);animation:panIn 1.1s var(--ease) forwards;animation-delay:calc(var(--i) * 110ms)}
.ipan:first-child{margin-left:0;clip-path:polygon(0 0,100% 0,calc(100% - var(--s)) 100%,0 100%)}
.ipan img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.2s var(--ease),filter .6s}
.ipan::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,22,43,0) 55%,rgba(9,22,43,.85) 100%)}
.ipan span{position:absolute;left:calc(var(--s) * .55);right:calc(var(--s) + 8px);bottom:20px;z-index:1;font-weight:700;font-size:15px;line-height:1.3;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s}
.ipan:first-child span{left:20px}
.ipan:hover img,.ipan:focus-visible img{transform:scale(1.1)}
.ipan:hover span,.ipan:focus-visible span{opacity:1;transform:none}
.ihero-panels:hover .ipan:not(:hover) img{filter:brightness(.7)}
@keyframes panIn{to{opacity:1;transform:none}}
.ihero-copy{position:relative;padding:34px 0 46px;border-top:4px solid var(--orange)}
.ihero-copy .crumbs,.ihero-copy .crumbs a{color:rgba(255,255,255,.75);margin-bottom:18px}
.ihero-copy .crumbs [aria-current]{color:rgba(255,255,255,.5)}
.ihero-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:16px 64px;align-items:end}
.ihero h1{color:#fff;font-size:clamp(34px,3.8vw,58px);line-height:1.04;margin:0}
.ihero .lead{color:rgba(255,255,255,.82);margin:0}
@media (max-width:900px){.ihero-panels{--s:34px;height:300px;overflow-x:auto;scrollbar-width:none}.ipan{flex:0 0 46vw}.ipan span{opacity:1;transform:none}.ihero-row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ipan{opacity:1;transform:none;animation:none}.phero-media img{animation:none}}

/* Industry cards: one size, one ratio, even rhythm */
.ind-grid2{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 28px}
.icard figure{margin:0 0 18px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--mist)}
.icard figure img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.icard:hover figure img{transform:scale(1.05)}
.icard h3{font-size:18.5px;margin-bottom:8px}
.icard p{margin:0;font-size:15.5px;color:var(--text);line-height:1.55}
.icard .ind-ex{margin-top:10px;font-size:14px;color:var(--muted)}
.icard:target h3{color:var(--navy);text-decoration:underline;text-underline-offset:5px}
.js .icard{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .icard.in{opacity:1;transform:none}
.js .icard:nth-child(4n+2){transition-delay:.08s}.js .icard:nth-child(4n+3){transition-delay:.16s}.js .icard:nth-child(4n+4){transition-delay:.24s}
@media (max-width:1100px){.ind-grid2{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ind-grid2{grid-template-columns:1fr}}

/* FAQ motion */
.faq .ans{overflow:hidden;transition:height .45s var(--ease)}
.js .faq details{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .faq details.in{opacity:1;transform:none}
.faq summary{transition:color .2s}
.faq summary:hover{color:var(--navy)}
.phero--full .phero-in{max-width:680px}.trk-bar{max-width:640px}
.ihero-panels{height:clamp(300px,33vw,450px)}
.ihero-copy{padding:28px 0 40px}
.phero--stack .phero-copy{padding-top:clamp(36px,4vw,64px);padding-bottom:clamp(28px,3vw,44px)}

/* ===================== v13 ===================== */
/* Wordmark: true heavy italic, both lines set to the same width */
.wordmark .wm{transform:none;display:inline-flex;flex-direction:column;align-items:flex-start;line-height:.84}
.wordmark .wm-1,.wordmark .wm-2{font-family:"Archivo",sans-serif!important;font-style:italic!important;font-weight:900!important;font-stretch:112%!important;text-transform:uppercase;color:#fff;white-space:nowrap}
.wordmark .wm-1{font-size:33px;letter-spacing:-.01em}
.wordmark .wm-2{font-size:14.5px;letter-spacing:.2em;margin-top:5px;padding-left:2px}
@media (max-width:1380px) and (min-width:1241px){.wordmark .wm-1{font-size:29px}.wordmark .wm-2{font-size:13px}}
@media (max-width:560px){.wordmark .wm-1{font-size:27px}.wordmark .wm-2{font-size:12px}}

/* Industry panels: labels always visible, so they read as links */
.ipan span{opacity:1;transform:none;display:flex;align-items:center;gap:8px;font-size:14px}
.ipan span b{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.18);font-size:12px;transition:background .3s}
.ipan:hover span b{background:var(--orange)}
.ipan::after{background:linear-gradient(180deg,rgba(9,22,43,0) 50%,rgba(9,22,43,.9) 100%)}

/* Industry cards: rows line up across the grid */
.ind-grid2{grid-auto-rows:auto}
@supports (grid-template-rows:subgrid){
  .icard{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0}
  .icard figure{margin-bottom:18px}
}
.icard-body{display:flex;flex-direction:column}
.icard-body .ind-ex{margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.icard-body p:not(.ind-ex){margin-bottom:14px}
.section.section--navy{background:var(--navy)}.section--navy h2,.section--navy h3{color:#fff}

/* Industry cards: whole card opens details */
.icard{position:relative;cursor:pointer}
.icard-hit{position:absolute;inset:0;z-index:2;background:none;border:0;cursor:pointer;border-radius:10px}
.icard-hit:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.icard-more{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:700;font-size:14.5px;color:var(--ink)}
.icard-more svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.icard:hover .icard-more svg{transform:translateX(4px)}
.icard:hover h3{color:var(--navy)}
@supports (grid-template-rows:subgrid){.icard{grid-row:span 2}}

/* Industry drawer */
.idrawer{position:fixed;inset:0;z-index:80}
.idrawer[hidden]{display:none}
.idrawer-scrim{position:absolute;inset:0;background:rgba(9,22,43,.55);opacity:0;transition:opacity .35s var(--ease)}
.idrawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100%);background:#fff;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .45s var(--ease);box-shadow:-20px 0 60px rgba(9,22,43,.25)}
.idrawer.is-open .idrawer-scrim{opacity:1}
.idrawer.is-open .idrawer-panel{transform:none}
.idrawer-top{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 16px 28px;border-bottom:1px solid var(--line)}
.idr-count{font-size:14px;font-weight:700;color:var(--muted)}
.idr-nav{display:flex;gap:8px}
.idr-nav button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:background .2s,border-color .2s}
.idr-nav button:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.idr-nav svg{width:18px;height:18px}
.idr-close span::before,.idr-close span::after{content:"";position:absolute;left:13px;top:20px;width:15px;height:2px;background:currentColor;transform:rotate(45deg)}
.idr-close span::after{transform:rotate(-45deg)}
.idrawer-body{flex:1;overflow-y:auto;padding:24px 28px 28px;overscroll-behavior:contain}
.idrawer-body figure{margin:0 0 22px;aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:var(--mist)}
.idrawer-body figure img{width:100%;height:100%;object-fit:cover}
.idrawer-body h2{font-family:var(--wide);font-weight:800;font-size:clamp(26px,2.4vw,32px);letter-spacing:-.02em;line-height:1.12;margin:0 0 10px}
.idr-desc{font-size:17px;color:var(--text);margin:0 0 22px}
.idrawer-body h3{font-size:15px;font-weight:700;margin:0 0 10px}
.idr-list{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.idr-list li{position:relative;padding:10px 12px 10px 34px;background:var(--mist);border-radius:8px;font-size:14.5px;line-height:1.4}
.idr-list li::before{content:"";position:absolute;left:13px;top:15px;width:9px;height:5px;border-left:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:rotate(-45deg)}
.idr-cust{font-size:15px;color:var(--muted);margin:0 0 18px}
.idr-cust strong{color:var(--ink)}
.idr-note{font-size:14px;color:var(--muted);padding:12px 14px;border-left:3px solid var(--navy);background:var(--mist);border-radius:0 8px 8px 0}
.idrawer-foot{display:flex;flex-wrap:wrap;gap:10px;padding:16px 28px 20px;border-top:1px solid var(--line)}
.idrawer-panel.is-swap .idrawer-body{animation:swapIn .45s var(--ease)}
@keyframes swapIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
@media (max-width:560px){.idr-list{grid-template-columns:1fr}.idrawer-body{padding:20px}.idrawer-foot{padding:14px 20px}.idrawer-foot .btn{flex:1;justify-content:space-between}}
@media (prefers-reduced-motion:reduce){.idrawer-panel,.idrawer-scrim{transition:none}.idrawer-panel.is-swap .idrawer-body{animation:none}}
@media (max-width:560px){.idrawer-foot{flex-direction:column}.idrawer-foot .btn{width:100%}}

/* ===================== v14 ===================== */
/* Menu closes after a choice, even while the pointer is still over it */
.nav-item.mega-off .mega{opacity:0!important;visibility:hidden!important;pointer-events:none}
/* Menu side panel: calm navy, aligned to the list */
.mega-promo{background:var(--navy)!important;background-image:none!important;justify-content:flex-start;padding:30px 28px;gap:12px;border-radius:0 0 14px 0}
.mega-promo .mega-h{margin:0;color:#fff;font-weight:800;font-size:19px;letter-spacing:-.01em;line-height:1.25}
.mega-promo p{color:rgba(255,255,255,.8)}
.mega-promo .btn{margin-top:10px}
.btn--light{--fg:var(--ink);background:#fff}
.btn--light:hover{background:var(--orange);color:var(--ink)}
/* How We Work: facts row */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--line)}
.fact{padding:26px 24px 6px 0}
.fact + .fact{padding-left:24px;border-left:1px solid var(--line)}
.fact strong{display:block;font-family:var(--wide);font-weight:800;font-size:clamp(34px,3.4vw,52px);letter-spacing:-.03em;color:var(--navy);line-height:1;margin-bottom:10px}
.fact span{display:block;font-size:15.5px;color:var(--muted);line-height:1.5;max-width:26ch}
@media (max-width:900px){.facts{grid-template-columns:1fr 1fr}.fact:nth-child(3){padding-left:0;border-left:0}.fact:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:520px){.facts{grid-template-columns:1fr}.fact,.fact + .fact{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.section--tight{padding-block:clamp(56px,7vw,96px)}
.feature .text-link{margin-top:4px}
