/* ============================================================
   Company page styles (mobile-first, desktop at 768px+)
   ============================================================ */

/* ---------- nav active link ---------- */
.fs-nav-links a.is-active{border-bottom:1.5px solid var(--ink);padding-bottom:2px}

/* ---------- masthead ---------- */
.company-hero{padding:36px 20px 34px;border-bottom:1px solid var(--line)}
.company-hero .fs-label{display:block;margin-bottom:22px}
.company-hero h1{font:800 41px/.94 var(--arch);letter-spacing:-.03em;margin:0 0 26px;text-transform:uppercase;font-size:min(41px,10.4vw)}
.company-hero h1 > span{display:block;overflow:hidden;white-space:nowrap}
.company-hero p{font:400 17px/1.5 var(--arch);color:var(--body);margin:0 0 24px}
.company-hero-ctas{display:flex;flex-direction:column;gap:10px}
@media (min-width:768px){
  .company-hero{padding:52px 40px;min-height:calc(100vh - 200px);display:flex;flex-direction:column}
  .company-hero .fs-label{margin-bottom:26px}
  .company-hero h1{font-size:84px;margin-bottom:40px}
  .company-hero p{font-size:21px;margin-bottom:30px;max-width:600px}
  .company-hero-ctas{flex-direction:row;gap:12px;flex-wrap:wrap}
  .company-hero-ctas .btn{white-space:nowrap}
}

/* desktop marquee, pinned to the masthead foot (full-bleed right) */
.company-hero-marquee{margin-top:auto;margin-right:-40px;margin-bottom:-52px;border-top:1px solid var(--line);padding:26px 0;display:flex;align-items:center;overflow:hidden}
.company-hero-marquee-label{flex:none;font:600 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:0 40px 0 0}
.company-hero-marquee .fs-mrow{gap:56px;animation-duration:32s;font:700 22px/1 var(--arch);color:var(--body)}

/* mobile marquee band: prototype runs faster than the shared default */
.company-marquee-m .fs-mrow{animation-duration:26s}

/* ---------- scale strip ---------- */
.company-scale{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.company-scale > div{padding:22px 18px}
.company-scale > div:nth-child(odd){border-right:1px solid var(--line)}
.company-scale > div:nth-child(-n+2){border-bottom:1px solid var(--line)}
@media (min-width:768px){
  .company-scale{grid-template-columns:repeat(4,1fr)}
  .company-scale > div{padding:30px 22px;border-right:none;border-bottom:none}
  .company-scale > div:nth-child(-n+3){border-right:1px solid var(--line)}
}

/* ---------- manifesto (dark) ---------- */
.company-belief{background:var(--dark-bg);color:var(--dark-text);padding:48px 20px 52px;scroll-margin-top:64px}
.company-belief .fs-label{display:block;margin-bottom:22px}
.company-belief p{font:500 27px/1.25 var(--arch);letter-spacing:-.02em;margin:0 0 22px}
.company-belief p:last-of-type{margin-bottom:0}
.company-belief p span{color:var(--muted)}
@media (min-width:768px){
  .company-belief{padding:72px 40px;scroll-margin-top:70px;border-bottom:1px solid var(--dark-line)}
  .company-belief .fs-label{margin-bottom:28px}
  .company-belief p{font-size:38px;line-height:1.22;margin-bottom:26px;max-width:980px}
  .company-belief p:last-of-type{margin-bottom:0}
}

/* ---------- vision (tinted panel) ---------- */
.company-vision{border-bottom:1px solid var(--line);padding:44px 20px;background:var(--tint-1)}
.company-vision .fs-label{display:block;margin-bottom:18px}
.company-vision p{font:500 25px/1.28 var(--arch);letter-spacing:-.01em;margin:0;color:var(--ink)}
.company-vision p span{color:var(--muted)}
@media (min-width:768px){
  .company-vision{padding:64px 40px}
  .company-vision .fs-label{margin-bottom:24px}
  .company-vision p{font-size:32px;max-width:940px}
}

/* ---------- offices ---------- */
.company-offices-head{padding:38px 20px 8px;scroll-margin-top:64px}
.company-offices-head-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.company-offices-mail{font:600 11px/1.4 var(--mono);color:var(--ink);cursor:pointer}
@media (min-width:768px){
  .company-offices-head{border-top:1px solid var(--line);padding:56px 40px 20px;scroll-margin-top:70px}
  .company-offices-head-row{gap:20px;flex-wrap:wrap}
  .company-offices-mail{font-size:12px}
  .company-offices-mail:hover{color:var(--muted)}
}

.company-offices{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.company-office{padding:22px 20px}
.company-office + .company-office{border-top:1px solid var(--line)}
.company-office .office-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.company-office h4{font:700 20px/1 var(--arch);margin:0}
.company-office .office-tag{font:600 11px/1 var(--mono);color:var(--faint)}
.company-office .office-clock{display:flex;align-items:center;gap:6px;font:500 11px/1.4 var(--mono);color:var(--green-l);margin-bottom:8px}
.company-office .office-dot{width:6px;height:6px;border-radius:50%;background:var(--green-l);display:block}
.company-office p{font:400 13px/1.5 var(--arch);color:var(--body-2);margin:0}
@media (min-width:768px){
  .company-offices{display:grid;grid-template-columns:repeat(4,1fr)}
  .company-office{padding:32px 26px}
  .company-office + .company-office{border-top:none}
  .company-office:not(:last-child){border-right:1px solid var(--line)}
  .company-office .office-head{flex-direction:column-reverse;align-items:flex-start;gap:0}
  .company-office .office-tag{margin-bottom:14px}
  .company-office .office-clock{margin-bottom:10px}
}

/* ---------- CTA band: page-specific rendered values ---------- */
.fs-cta{border-bottom:1px solid var(--dark-line)}
@media (max-width:767.98px){ .fs-cta h2{font-size:32px} }
@media (min-width:768px){ .fs-cta p{max-width:460px} }
