:root{--soft-acid:#d9ee66;--surface:#131411;--soft-paper:#eceae3}

/* A calmer editorial scale: fewer billboard-sized lines, clearer reading order. */
.home-page .hero{min-height:610px;padding:84px 0 76px;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:8vw}
.home-page .hero h1{font-size:clamp(50px,5.65vw,82px);line-height:.98;letter-spacing:-.055em;max-width:900px;margin:38px 0 32px;font-weight:760}
.home-page .hero h1 em{color:var(--soft-acid);font-size:.94em}
.home-page .hero-copy>p{font-size:17px;line-height:1.85;max-width:710px;color:#b5b7af}
.home-page .hero-actions{margin-top:36px}
.home-page .hero-card{min-height:350px;padding:28px;background:linear-gradient(145deg,rgba(217,238,102,.045),transparent 58%)}
.home-page .hero-card>strong{font-size:36px;line-height:.98;font-weight:720}
.metrics strong{font-size:clamp(32px,3.2vw,48px);font-weight:720}

.section{padding-top:108px;padding-bottom:108px}
.section-head{grid-template-columns:180px minmax(0,1fr) minmax(250px,.52fr);gap:48px;margin-bottom:64px}
.section-head h2{font-size:clamp(36px,3.85vw,54px);line-height:1.1;letter-spacing:-.04em;font-weight:720;max-width:760px}
.section-head>p{font-size:14px;line-height:1.9;max-width:440px;color:#9fa198}
.section-head>span{padding-top:8px}
.cap-grid article{min-height:250px;padding:36px;background:rgba(255,255,255,.012)}
.cap-grid h3{font-size:22px;font-weight:650;margin-top:48px}
.cap-grid p{font-size:14px;color:#aeb0a7;max-width:540px}

.projects{padding-top:108px;padding-bottom:108px}
.project{padding-top:66px;padding-bottom:66px}
.project h3{font-size:clamp(34px,3.55vw,52px);line-height:1.08;letter-spacing:-.042em;font-weight:700;max-width:720px}
.intro{font-size:16px;line-height:1.85;max-width:700px}
.architecture{min-height:310px}
.timeline h3{font-size:18px;font-weight:650}
.profile-grid>div{background:rgba(255,255,255,.012)}
footer>div>a{font-size:clamp(44px,6.2vw,84px);font-weight:760;letter-spacing:-.055em}

/* The architecture case keeps its scale, but reads like a considered case study. */
.architecture-page .hero{min-height:700px;padding-top:78px;padding-bottom:82px;grid-template-columns:1.18fr .72fr}
.architecture-page .hero h1{font-size:clamp(52px,5.8vw,86px);line-height:.94;letter-spacing:-.058em;font-weight:730}
.architecture-page .hero h1 em{color:var(--soft-acid);font-size:.95em}
.architecture-page .lede{font-size:16px;line-height:1.9;max-width:690px;color:#aeb0a7}
.architecture-page .intro-grid blockquote{font-size:clamp(32px,3.8vw,52px);line-height:1.12;font-weight:720}
.architecture-page .section-head h2{font-size:clamp(36px,3.8vw,54px)}
.architecture-page .north-star strong{font-size:27px}
.architecture-page .impact-grid strong{font-size:clamp(34px,3.3vw,50px)}

@media(max-width:900px){
  .home-page .hero,.architecture-page .hero{grid-template-columns:1fr;min-height:auto;padding:68px 0}
  .home-page .hero h1{font-size:clamp(44px,11.5vw,64px)}
  .architecture-page .hero h1{font-size:clamp(46px,12vw,68px)}
  .section{padding-top:82px;padding-bottom:82px}
  .projects{padding-top:82px;padding-bottom:82px}
  .section-head{grid-template-columns:1fr;gap:24px;margin-bottom:48px}
  .section-head h2,.architecture-page .section-head h2{font-size:clamp(34px,8.6vw,48px);max-width:680px}
  .section-head>p{max-width:620px}
}

@media(max-width:520px){
  .home-page .hero h1{font-size:12vw;line-height:1.02}
  .architecture-page .hero h1{font-size:12.2vw;line-height:.98}
  .home-page .hero-copy>p,.architecture-page .lede{font-size:15px;line-height:1.85}
  .section-head h2,.architecture-page .section-head h2{font-size:33px;line-height:1.12}
  .cap-grid article{padding:28px;min-height:230px}
  .cap-grid h3{font-size:20px;margin-top:42px}
  .project h3{font-size:34px;line-height:1.08}
  .architecture-page .intro-grid blockquote{font-size:32px}
  footer>div>a{font-size:12.5vw}
}
