/* ═══════════════════════════════════════════════════
   SHIELD OF STEEL — Shared site styles
   Tokens, typography, nav, footer, mobile drawer
   ═══════════════════════════════════════════════════ */

:root{
  --f-display:'Barlow Condensed','Arial Narrow',sans-serif;
  --f-body:'Source Serif 4',Georgia,'Times New Roman',serif;
  --f-ui:'Barlow Condensed',sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,Menlo,monospace;

  --ink-0:#000;
  --ink-1:#0B0B0C;
  --ink-2:#151518;
  --ink-3:#1E1F22;
  --ink-4:#2A2B2F;
  --ink-5:#3A3C41;
  --steel-3:#5A5D62;
  --steel-2:#7B7E83;
  --steel-1:#A6A9AE;

  --paper-0:#FAF8F3;
  --paper-1:#F3F0EA;
  --paper-2:#E9E5DD;
  --paper-3:#DCD7CC;
  --paper-4:#CBC5B8;

  --amber-3:oklch(0.82 0.10 65);
  --amber-2:#d89a3c;
  --amber-1:#9a4c00; /* WCAG AA 4.7:1 on paper-1 — was oklch(0.62 0.16 58) = #cb6800 @ 3.35:1 */
  --amber-0:oklch(0.50 0.15 55);

  --bg:var(--paper-1);
  --fg:var(--ink-1);
  --muted:var(--steel-3);
  --accent:var(--amber-2);
  --accent-strong:var(--amber-1);
  --rule:rgba(11,11,12,.14);
  --rule-strong:rgba(11,11,12,.24);
  --rule-dark:rgba(255,255,255,.10);
  --rule-dark-strong:rgba(255,255,255,.18);
  --focus:oklch(0.82 0.12 62);

  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:20px;
  --s-6:24px; --s-7:32px; --s-8:40px; --s-9:48px; --s-10:64px;
  --s-11:80px; --s-12:96px; --s-13:120px; --s-14:160px;

  --r-sm:3px; --r-md:4px; --r-lg:6px;
  --chamfer-sm:2px 2px 10px 2px;
  --chamfer-md:2px 2px 18px 2px;
  --chamfer-lg:4px 4px 28px 4px;

  --sh-1:0 1px 2px rgba(0,0,0,.04), 0 2px 6px rgba(0,0,0,.04);
  --sh-2:0 4px 12px rgba(0,0,0,.06), 0 10px 30px rgba(0,0,0,.05);
  --sh-3:0 12px 40px rgba(0,0,0,.18), 0 2px 6px rgba(0,0,0,.08);

  --grid-dark:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  --grid-light:
    linear-gradient(rgba(11,11,12,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(11,11,12,.04) 1px,transparent 1px);
  --grid-size:44px 44px;

  --container:1320px;
  --header-h:64px;
  --gutter:24px;
}
@media (min-width:768px){ :root{ --gutter:32px; --header-h:68px } }
@media (min-width:1280px){ :root{ --gutter:40px; --header-h:72px } }

/* ── Reset + base ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%;background:var(--ink-1);scroll-behavior:smooth}
body{
  font-family:var(--f-body);color:var(--fg);background:var(--bg);
  line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
body.no-scroll{overflow:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;background:none;border:0;color:inherit}

a:focus-visible,button:focus-visible,.btn:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--focus); outline-offset:3px; border-radius:var(--r-sm);
}
::selection{background:var(--amber-2);color:var(--ink-1)}

h1,h2,h3,h4,h5,h6{font-family:var(--f-display);font-weight:700;line-height:.98;letter-spacing:.005em;text-transform:uppercase}
.mono{font-family:var(--f-mono);font-weight:400;letter-spacing:.02em}
.label{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--steel-3)}
.label.on-dark{color:rgba(255,255,255,.55)}

.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* ── Buttons ── */
.btn{
  display:inline-flex;align-items:center;gap:var(--s-2);
  font-family:var(--f-ui);font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  font-size:12px;padding:var(--s-3) var(--s-5);
  border:1px solid currentColor;border-radius:var(--chamfer-sm);
  transition:background .2s,color .2s,transform .15s,border-color .2s;
  line-height:1;white-space:nowrap;
}
.btn-lg{font-size:13px;padding:var(--s-4) var(--s-6)}
.btn-paper{background:var(--paper-0);color:var(--ink-1);border-color:var(--paper-0)}
.btn-paper:hover{background:#fff;transform:translateY(-1px)}
.btn-ink{background:var(--ink-1);color:var(--paper-0);border-color:var(--ink-1)}
.btn-ink:hover{background:var(--ink-3)}
.btn-ghost-light{color:#fff;border-color:rgba(255,255,255,.35)}
.btn-ghost-light:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.6)}
.btn-ghost-dark{color:var(--ink-1);border-color:var(--ink-1)}
.btn-ghost-dark:hover{background:var(--ink-1);color:var(--paper-0)}
.btn-amber{background:var(--amber-2);color:var(--ink-1);border-color:var(--amber-2)}
.btn-amber:hover{background:#e8a84a;border-color:#e8a84a}
.btn .ar{font-family:var(--f-mono);font-weight:400}

@keyframes pulse{50%{transform:scale(1.15);box-shadow:0 0 0 7px color-mix(in oklab,var(--amber-2) 10%,transparent)}}

/* ═══════════════════════════════════
   TOP NAV
   ═══════════════════════════════════ */
header.top{
  position:fixed;top:0;left:0;right:0;z-index:60;
  height:var(--header-h);
  background:color-mix(in oklab,var(--ink-1) 88%,transparent);
  backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%);
  border-bottom:1px solid var(--rule-dark);color:#fff;
}
.top-inner{
  max-width:var(--container);margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 var(--gutter);gap:var(--s-6);
}
.brand{display:flex;align-items:center;height:100%}
.brand-logo{height:32px;width:auto;display:block}
@media (max-width:1024px){ .brand-logo{height:26px} }
@media (max-width:480px){ .brand-logo{height:22px} }
.top nav.primary{display:flex;gap:var(--s-7);align-items:center}
.top nav.primary a{font-family:var(--f-ui);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82);padding:var(--s-2) 0;transition:color .2s;position:relative}
.top nav.primary a:hover{color:#fff}
.top nav.primary a.current{color:#fff}
.top nav.primary a.current::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--amber-2)}
.top-cta{display:flex;gap:var(--s-3);align-items:center}
.top-phone{font-family:var(--f-mono);font-size:13px;letter-spacing:.04em;color:#fff;display:flex;align-items:center;gap:var(--s-2)}
.top-phone .dot{width:7px;height:7px;border-radius:50%;background:var(--amber-2);box-shadow:0 0 0 4px color-mix(in oklab,var(--amber-2) 35%,transparent);animation:pulse 2.2s ease-in-out infinite}

.burger{display:none;width:40px;height:40px;border:1px solid rgba(255,255,255,.25);border-radius:var(--r-sm);place-items:center;position:relative;transition:border-color .2s,background .2s}
.burger:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.04)}
.burger span{display:block;width:18px;height:1.5px;background:#fff;position:relative;transition:transform .25s,opacity .2s}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:18px;height:1.5px;background:#fff;transition:transform .25s,top .25s}
.burger span::before{top:-6px}.burger span::after{top:6px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}

/* ═══════════════════════════════════
   MOBILE DRAWER
   ═══════════════════════════════════ */
.drawer{
  position:fixed;inset:0;z-index:55;
  background:var(--ink-1);color:#fff;
  display:flex;flex-direction:column;
  transform:translateY(-100%);
  transition:transform .4s cubic-bezier(.7,0,.2,1);
  will-change:transform;
  overflow-y:auto;
  visibility:hidden;
}
.drawer[data-open="true"]{transform:translateY(0);visibility:visible}
.drawer::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:var(--grid-dark);background-size:var(--grid-size);
  mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 80%);
}
.drawer-spacer{height:var(--header-h);flex-shrink:0;border-bottom:1px solid var(--rule-dark)}
.drawer-inner{
  position:relative;z-index:1;
  padding:var(--s-8) var(--gutter) var(--s-6);
  display:flex;flex-direction:column;gap:var(--s-8);
  flex:1;
}
.drawer-eyebrow{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.2em;color:rgba(255,255,255,.5);text-transform:uppercase;display:flex;align-items:center;gap:var(--s-3);padding-bottom:var(--s-4);border-bottom:1px dashed var(--rule-dark)}
.drawer-eyebrow .live{width:7px;height:7px;border-radius:50%;background:var(--amber-2);animation:pulse 2.2s ease-in-out infinite}
.drawer nav.drawer-nav{display:flex;flex-direction:column}
.drawer nav.drawer-nav a{
  font-family:var(--f-display);font-weight:700;
  font-size:clamp(34px,8vw,56px);
  letter-spacing:.005em;line-height:1;text-transform:uppercase;
  padding:var(--s-5) 0;
  border-bottom:1px solid var(--rule-dark);
  display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);
  color:#fff;transition:color .2s,padding .25s;
}
.drawer nav.drawer-nav a .num{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:rgba(255,255,255,.4);font-weight:400;text-transform:uppercase}
.drawer nav.drawer-nav a .ar{font-family:var(--f-mono);font-size:16px;color:var(--amber-2);opacity:0;transform:translateX(-8px);transition:opacity .25s,transform .25s}
.drawer nav.drawer-nav a:hover,.drawer nav.drawer-nav a:focus-visible{color:var(--amber-3);padding-left:var(--s-3)}
.drawer nav.drawer-nav a:hover .ar,.drawer nav.drawer-nav a:focus-visible .ar{opacity:1;transform:translateX(0)}
.drawer nav.drawer-nav a.current{color:var(--amber-2)}

.drawer-contact{
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-5);
  padding-top:var(--s-6);border-top:1px solid var(--rule-dark);
}
.drawer-contact .dk{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.2em;color:rgba(255,255,255,.5);text-transform:uppercase;margin-bottom:var(--s-2)}
.drawer-contact .dv{font-family:var(--f-display);font-weight:700;font-size:18px;letter-spacing:.05em;text-transform:uppercase;color:#fff;line-height:1.2}
.drawer-contact .dv a{color:#fff}
.drawer-contact .ds{font-family:var(--f-mono);font-size:11px;letter-spacing:.15em;color:rgba(255,255,255,.55);text-transform:uppercase;margin-top:4px}
.drawer-ctas{display:flex;flex-direction:column;gap:var(--s-3);padding-top:var(--s-5)}
.drawer-ctas .btn{justify-content:space-between;padding:var(--s-4) var(--s-5)}
.drawer-foot{
  padding:var(--s-5) var(--gutter);border-top:1px solid var(--rule-dark);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s-3);
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.2em;color:rgba(255,255,255,.5);text-transform:uppercase;
  position:relative;z-index:1;
}
.drawer-foot em{color:var(--amber-2);font-style:normal;display:flex;align-items:center;gap:var(--s-2)}
.drawer-foot em::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber-2);animation:pulse 2s ease-in-out infinite}

/* ═══════════════════════════════════
   SECTION SHELL (shared)
   ═══════════════════════════════════ */
section.block{padding:var(--s-13) 0;position:relative}
section.block.dark{background:var(--ink-1);color:#fff}
section.block.paper{background:var(--paper-1)}
section.block.paper-2{background:var(--paper-2)}
.block.grid-bg::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--grid-light);background-size:var(--grid-size)}
.block.dark.grid-bg::before{background-image:var(--grid-dark)}
.block > .container{position:relative;z-index:1}

/* ═══════════════════════════════════
   STATS BAND (directly under page hero on location + industry pages)
   Sits between the dark hero and the first paper block — acts as a visual
   transition strip with real content density.
   ═══════════════════════════════════ */
.stats-band{
  background:var(--ink-2);color:#fff;border-bottom:1px solid var(--rule-dark);
  position:relative;overflow:hidden;
}
.stats-band::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:var(--grid-dark);background-size:44px 44px;opacity:.6;
}
.stats-inner{
  position:relative;z-index:1;max-width:var(--container);margin:0 auto;padding:0 var(--gutter);
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
}
.stats-band .stat{
  padding:var(--s-7) var(--s-6) var(--s-7);border-right:1px solid var(--rule-dark);
  display:flex;flex-direction:column;gap:var(--s-2);
  position:relative;transition:background .25s;
}
.stats-band .stat:last-child{border-right:0}
.stats-band .stat:hover{background:rgba(255,255,255,.02)}
.stats-band .stat::after{
  content:"";position:absolute;left:0;top:0;height:2px;width:34px;
  background:var(--amber-2);
}
.stats-band .stat .sn{
  font-family:var(--f-display);font-weight:800;font-size:clamp(40px,4.5vw,64px);
  line-height:.9;letter-spacing:-.01em;color:#fff;
}
.stats-band .stat .sl{
  font-family:var(--f-display);font-weight:700;font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--amber-2);margin-top:var(--s-3);
}
.stats-band .stat .sd{
  font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;line-height:1.5;
  color:rgba(255,255,255,.6);text-transform:none;
}
@media (max-width:1024px){
  .stats-inner{grid-template-columns:repeat(2,1fr)}
  .stats-band .stat:nth-child(2n){border-right:0}
  .stats-band .stat:nth-child(-n+2){border-bottom:1px solid var(--rule-dark)}
}
@media (max-width:520px){
  .stats-inner{grid-template-columns:1fr}
  .stats-band .stat{border-right:0;border-bottom:1px solid var(--rule-dark)}
  .stats-band .stat:last-child{border-bottom:0}
}

.sec-head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:var(--s-9);
  align-items:end;margin-bottom:var(--s-10);padding-bottom:var(--s-6);border-bottom:1px solid var(--rule);
}
.dark .sec-head{border-bottom-color:var(--rule-dark)}
.sec-num{font-family:var(--f-mono);font-size:12px;letter-spacing:.22em;color:var(--steel-3);text-transform:uppercase;display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-5)}
.dark .sec-num,.page-head .sec-num{color:rgba(255,255,255,.65)}
.sec-num .bar{width:34px;height:1px;background:currentColor}
/* Any label/kicker living inside a dark hero should inherit readable contrast */
.page-head .label,.page-head .eyebrow,.page-head .kicker{color:rgba(255,255,255,.75)}
.sec-head h2{font-size:clamp(36px,5vw,68px);line-height:.92;letter-spacing:-.005em;font-weight:800;text-wrap:balance}
.sec-head h2 em{font-style:normal;color:var(--steel-3)}
.dark .sec-head h2 em{color:var(--steel-2)}
.sec-head h2 .amber{color:var(--amber-1);font-style:normal}
.dark .sec-head h2 .amber,.page-head h2 .amber{color:var(--amber-2)}
.sec-lede{font-family:var(--f-body);font-size:clamp(16px,1.25vw,18px);line-height:1.6;color:var(--steel-3);max-width:54ch}
.dark .sec-lede{color:rgba(255,255,255,.72)}

/* ═══════════════════════════════════
   PAGE HEADER (subpages)
   ═══════════════════════════════════ */
.page-head{
  background:var(--ink-1);color:#fff;padding:calc(var(--header-h) + var(--s-11)) 0 var(--s-11);
  position:relative;overflow:hidden;border-bottom:1px solid var(--rule-dark);
}
.page-head::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:var(--grid-dark);background-size:var(--grid-size);
  mask-image:radial-gradient(ellipse at 80% 40%,#000 20%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse at 80% 40%,#000 20%,transparent 80%);
}
.page-head-inner{position:relative;z-index:1;max-width:var(--container);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--s-9);align-items:end}
.ph-crumb{font-family:var(--f-mono);font-size:11px;letter-spacing:.22em;color:rgba(255,255,255,.55);text-transform:uppercase;display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-6)}
.ph-crumb a{color:rgba(255,255,255,.55)}
.ph-crumb a:hover{color:#fff}
.ph-crumb .sep{width:16px;height:1px;background:rgba(255,255,255,.2)}
.ph-crumb .cur{color:var(--amber-2)}
.page-head h1{font-size:clamp(34px,7vw,108px);line-height:.92;letter-spacing:-.005em;font-weight:800;margin-bottom:var(--s-5);text-wrap:balance;overflow-wrap:break-word}
.page-head h1 em{font-style:normal;color:var(--steel-2)}
.page-head h1 .amber{font-style:normal;color:var(--amber-2)}
/* Amber text on paper/light backgrounds must use amber-1 to meet WCAG contrast. */
.paper .amber,section.paper .amber,.paper-2 .amber,.paper-0 .amber{color:var(--amber-1)}
.page-head h1 .stroke{-webkit-text-stroke:1.5px rgba(255,255,255,.7);color:transparent;display:inline}
.ph-lede{font-family:var(--f-body);font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:rgba(255,255,255,.78);max-width:58ch}
.ph-lede strong{color:#fff;font-weight:600}
.ph-side{display:flex;flex-direction:column;gap:var(--s-4)}
.ph-side .meta-card{
  border:1px solid var(--rule-dark-strong);
  background:rgba(12,12,13,.5);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-radius:var(--chamfer-md);
  padding:var(--s-5) var(--s-6);
  font-family:var(--f-mono);
}
.ph-side .mc-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3);padding:var(--s-3) 0;font-size:11.5px;letter-spacing:.04em}
.ph-side .mc-row + .mc-row{border-top:1px solid rgba(255,255,255,.07)}
.ph-side .mc-row .k{color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.18em;font-size:10.5px}
.ph-side .mc-row .v{color:#fff;text-align:right}
.ph-side .mc-row .v .tag{color:var(--amber-2)}

/* ═══════════════════════════════════
   FOOTER
   ═══════════════════════════════════ */
footer.bot{background:var(--ink-1);color:#fff;border-top:1px solid var(--rule-dark);padding:var(--s-11) 0 var(--s-6)}
.bot-inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
/* Prominent FAQ/Ask-Us banner — sits above the footer grid for discoverability */
.bot-ask{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-6);
  padding:var(--s-6) var(--s-7);
  border:1px solid var(--rule-dark);border-left:3px solid var(--amber-2);
  border-radius:var(--chamfer-md);
  background:linear-gradient(135deg,rgba(216,154,60,.06),rgba(255,255,255,.02));
  color:#fff;text-decoration:none;
  margin-bottom:var(--s-9);transition:background .25s,border-color .25s,transform .2s;
}
.bot-ask:hover{background:linear-gradient(135deg,rgba(216,154,60,.12),rgba(255,255,255,.04));border-color:var(--amber-2);transform:translateY(-1px)}
.bot-ask-l{display:flex;flex-direction:column;gap:var(--s-1);min-width:0}
.bot-ask-kicker{font-family:var(--f-mono);font-size:11px;letter-spacing:.22em;color:var(--amber-2);text-transform:uppercase}
.bot-ask-title{font-family:var(--f-display);font-weight:800;font-size:clamp(22px,2.2vw,30px);letter-spacing:.01em;text-transform:uppercase;color:#fff;line-height:1.05}
.bot-ask-sub{font-family:var(--f-body);font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.7);max-width:72ch;margin-top:var(--s-1)}
.bot-ask-cta{font-family:var(--f-ui);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber-2);white-space:nowrap;padding:var(--s-3) var(--s-5);border:1px solid var(--amber-2);border-radius:var(--chamfer-sm);flex-shrink:0}
.bot-ask:hover .bot-ask-cta{background:var(--amber-2);color:var(--ink-1)}
@media (max-width:768px){
  .bot-ask{flex-direction:column;align-items:flex-start;gap:var(--s-4);padding:var(--s-5)}
  .bot-ask-cta{width:100%;text-align:center}
}
.bot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:var(--s-9);padding-bottom:var(--s-9);border-bottom:1px solid var(--rule-dark)}
.bot-brand{display:flex;align-items:center;margin-bottom:var(--s-5)}
.bot-logo{height:36px;width:auto;display:block;margin-bottom:var(--s-3)}
.bot-sub{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.18em;color:rgba(255,255,255,.5);font-weight:400;display:block;text-transform:uppercase}
.bot p.bot-des{font-family:var(--f-body);font-size:15px;color:rgba(255,255,255,.65);max-width:36ch;margin-bottom:var(--s-4)}
.bot-mini{display:flex;gap:var(--s-3);flex-wrap:wrap;font-family:var(--f-mono);font-size:11px;letter-spacing:.15em;color:rgba(255,255,255,.55);text-transform:uppercase}
.bot-mini span{display:inline-flex;align-items:center;gap:var(--s-1)}
.bot-mini span::before{content:"";width:4px;height:4px;background:var(--amber-2);border-radius:50%}
.bot h3,.bot h5{font-family:var(--f-display);font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:var(--s-4)}
.bot ul{list-style:none;display:flex;flex-direction:column;gap:var(--s-3)}
.bot ul a{font-family:var(--f-ui);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7);transition:color .2s}
.bot ul a:hover{color:#fff}
.bot-base{display:flex;justify-content:space-between;align-items:center;padding-top:var(--s-6);font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.45);text-transform:uppercase;gap:var(--s-6);flex-wrap:wrap}
.bot-base .legal a{margin-left:var(--s-5)}

/* ─── Footer 'Who we are' disclosure (all pages) ─── */
details.who-we-are{margin:var(--s-7) 0 var(--s-5);padding:14px 18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:4px}
details.who-we-are>summary{cursor:pointer;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55);list-style:none;display:flex;align-items:center;gap:10px;user-select:none}
details.who-we-are>summary::-webkit-details-marker{display:none}
details.who-we-are>summary::before{content:"▸";transition:transform .18s ease;display:inline-block;color:var(--amber-2)}
details.who-we-are[open]>summary::before{transform:rotate(90deg)}
details.who-we-are>summary:hover{color:rgba(255,255,255,.9)}
.who-we-are-body{margin-top:14px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.12);font-family:var(--f-body);font-size:14.5px;line-height:1.65;color:rgba(255,255,255,.72)}
.who-we-are-body p{margin:0 0 12px}
.who-we-are-body strong{color:rgba(255,255,255,.92);font-weight:600}
.who-we-are-more{display:inline-block;margin-top:4px;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber-2);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.who-we-are-more:hover{color:#fff;border-bottom-color:#fff}

/* ═══════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════ */
@media (max-width:1024px){
  .top nav.primary{display:none}
  .burger{display:grid}
  .top-cta .top-phone{display:none}
  .top-cta .btn{display:none}
  .page-head-inner{grid-template-columns:1fr;gap:var(--s-7);align-items:start}
  .bot-grid{grid-template-columns:1fr 1fr;gap:var(--s-8)}
}

@media (max-width:768px){
  section.block{padding:var(--s-11) 0}
  .sec-head{grid-template-columns:1fr;gap:var(--s-6);align-items:start}
  .page-head{padding:calc(var(--header-h) + var(--s-8)) 0 var(--s-9)}
  .bot-grid{grid-template-columns:1fr;gap:var(--s-7)}
  .bot-base{flex-direction:column;align-items:flex-start;gap:var(--s-2)}
  .bot-base .legal a{margin-left:0;margin-right:var(--s-4)}
  .drawer-contact{grid-template-columns:1fr;gap:var(--s-4)}
}

@media (max-width:480px){
  .sec-head h2{font-size:34px}
  .page-head h1{font-size:38px;letter-spacing:0}
  .page-head-inner{padding:0 var(--s-5)}
  .ph-crumb{flex-wrap:wrap}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}
  .top-phone .dot,.drawer-eyebrow .live,.drawer-foot em::before{animation:none}
  .drawer{transition:none}
}
