.company-hero { display:grid; grid-template-columns:1.15fr 1fr; gap:55px; align-items:center; padding-top:58px; padding-bottom:65px; }
.company-hero h1 { font-size:clamp(38px,3.7vw,54px); line-height:1.13; }
.company-hero h1 em { font-style:normal; color:var(--green); }
.company-hero-copy > p:not(.eyebrow) { margin:24px 0 28px; font-size:16px; max-width:490px; }
.company-city { margin:0; min-width:0; }
.company-city img { width:100%; height:auto; border-radius:6px; }
.company-city figcaption { margin-top:12px; color:var(--muted); font-size:10px; }
.company-story { display:grid; grid-template-columns:1fr 1.2fr; gap:90px; padding-top:48px; padding-bottom:90px; border-top:1px solid var(--line); }
.company-story h2 { font-size:43px; }
.company-story > div > p { margin-bottom:18px; font-size:15px; line-height:1.8; }
.company-story .eyebrow { font-size:11px; }
.company-purpose { background:var(--navy); color:var(--paper); padding:75px 0; }
.company-purpose .eyebrow { color:var(--mint); }
.company-purpose h2 { font-size:clamp(40px,5vw,70px); }
.company-purpose p:not(.eyebrow) { color:#bccdd0; margin-top:25px; line-height:1.8; }
.company-capability-grid { display:grid; grid-template-columns:1fr 1fr; gap:38px 60px; }
.company-capability-grid article { border-top:1px solid #b3c7b9; padding-top:26px; }
.company-capability-grid article > span { font-size:10px; letter-spacing:.12em; color:var(--green); }
.company-capability-grid h3 { font-size:29px; margin:20px 0 16px; }
.company-capability-grid p { font-size:14px; line-height:1.8; max-width:490px; }
.company-history { padding:80px 0; }
.company-timeline { list-style:none; display:grid; grid-template-columns:repeat(4,1fr); padding:0; margin:40px 0 0; gap:30px; }
.company-timeline li { border-top:2px solid #91bba0; padding-top:20px; }
.company-timeline li > span { font-size:35px; font-weight:500; letter-spacing:-.04em; color:var(--green); }
.company-timeline h3 { font-size:22px; line-height:1.2; margin:19px 0 15px; }
.company-timeline p { font-size:13px; line-height:1.8; }
.company-working { display:grid; grid-template-columns:1fr 1fr; gap:85px; }
.company-working > div > p:not(.eyebrow) { margin-top:25px; max-width:440px; }
.company-service { margin:0; padding-left:22px; }
.company-service li { padding:0 0 27px 15px; }
.company-service li::marker { color:var(--green); font-size:12px; }
.company-service h3 { font-size:24px; margin-bottom:13px; }
.company-service p { font-size:14px; }
.company-principles { display:grid; grid-template-columns:1fr 1fr; gap:85px; padding-top:45px; padding-bottom:60px; border-top:1px solid var(--line); }
.company-principles h2 { font-size:40px; }
.company-principles > div > p { margin-top:21px; }
.company-principles article { margin-bottom:24px; }
.company-principles h3 { font-size:23px; margin-bottom:12px; }
.company-principles article p { font-size:14px; }
@media(max-width:1000px) {
  .company-hero { gap:30px; }
  .company-story,.company-working,.company-principles { gap:40px; }
  .company-timeline { grid-template-columns:1fr 1fr; gap:35px; }
}
@media(max-width:640px) {
  .company-hero,.company-story,.company-capability-grid,.company-working,.company-principles { grid-template-columns:1fr; gap:30px; }
  .company-hero { padding-top:38px; padding-bottom:38px; }
  .company-hero h1 { font-size:39px; }
  .company-hero-copy > p:not(.eyebrow) { font-size:14px; }
  .company-city figcaption { font-size:9px; }
  .company-story { padding-top:40px; padding-bottom:55px; }
  .company-story h2 { font-size:35px; }
  .company-story > div > p { font-size:14px; }
  .company-purpose { padding:55px 0; }
  .company-purpose h2 { font-size:41px; }
  .company-purpose p:not(.eyebrow) { font-size:14px; }
  .company-capability-grid h3 { font-size:27px; }
  .company-history { padding:55px 0; }
  .company-timeline { grid-template-columns:1fr; gap:27px; margin-top:30px; }
  .company-timeline li { display:grid; grid-template-columns:70px 1fr; gap:10px 20px; }
  .company-timeline li > span { grid-row:span 2; font-size:29px; }
  .company-timeline h3 { margin:4px 0 0; font-size:22px; }
  .company-timeline p { grid-column:2; font-size:13px; }
  .company-service h3 { font-size:23px; }
  .company-working > div > p:not(.eyebrow) { font-size:14px; }
  .company-principles h2 { font-size:35px; }
}
