.home-section{padding:138px 0;position:relative}
.home-section h2{margin:0;color:#11253e;font-size:clamp(46px,5.4vw,74px);font-weight:700;line-height:1.08;letter-spacing:-.055em}
.home-section h2 em,.home-project-copy h3 em{font-family:var(--serif);font-weight:600;color:var(--blue-2)}
.home-index{display:flex;gap:17px;color:#718093;font-size:10px;line-height:1.7;text-transform:uppercase;letter-spacing:.13em}
.home-index span{color:var(--gold);font-weight:800}.home-index p{margin:0}

/* Vision */
.home-vision{background:#fbfaf7;overflow:hidden}
.home-vision:after{content:"";position:absolute;right:-260px;top:-300px;width:620px;height:620px;border:1px solid rgba(15,74,132,.07);border-radius:50%;box-shadow:0 0 0 90px rgba(15,74,132,.025)}
.home-vision-grid{display:grid;grid-template-columns:1fr 3fr;gap:60px;position:relative;z-index:1}
.home-vision-main{max-width:920px}.home-vision-main h2 em{display:block}
.home-vision-summary{max-width:760px;margin:35px 0 0;color:#58687b;font-size:16px;line-height:1.9}
.home-role-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:88px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-role-list article{min-height:170px;padding:30px 34px 34px;border-right:1px solid var(--line);transition:background .3s,color .3s}
.home-role-list article:last-child{border-right:0}.home-role-list article:hover{background:#0b3d77;color:#fff}
.home-role-list span{color:var(--gold);font-size:9px;letter-spacing:.14em}.home-role-list h3{max-width:290px;margin:45px 0 0;font-size:clamp(18px,2vw,25px);line-height:1.35}
.home-mission-words{display:flex;justify-content:flex-end;gap:15px;margin-top:34px}
.home-mission-words span{padding:8px 15px;border-left:2px solid #83b8e1;color:#315c84;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}

/* Projects */
.home-projects{background:#edf4fa}
.home-section-heading{display:grid;grid-template-columns:1.15fr .55fr;gap:90px;align-items:end}
.home-section-heading>p{max-width:470px;margin:0 0 8px;color:#66768a;font-size:14px;line-height:1.9}
.home-project-showcase{display:grid;gap:90px;margin-top:78px}
.home-project-row{display:grid;grid-template-columns:minmax(340px,.86fr) minmax(0,1.14fr);min-height:600px;background:#fff;box-shadow:0 28px 70px rgba(15,53,91,.08)}
.home-project-visual{position:relative;display:grid;place-items:center;min-height:600px;padding:48px;background:#082c58;overflow:hidden}
.home-project-visual:before{content:"";position:absolute;width:470px;height:470px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-280px;top:-200px;box-shadow:0 0 0 70px rgba(255,255,255,.025)}
.home-project-visual img{position:relative;z-index:1;display:block;width:auto;max-width:100%;height:auto;max-height:510px;object-fit:contain;box-shadow:0 25px 55px rgba(0,0,0,.34);transition:transform .4s}
.home-project-visual:hover img{transform:translateY(-6px)}
.home-project-poster{background:#0d4f8e}.home-project-poster img{max-height:530px}
.home-project-copy{align-self:center;padding:62px 70px}
.home-project-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:34px;color:#a87923;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}
.home-project-meta span{font-size:31px;line-height:1;color:#c8d7e4;letter-spacing:-.04em}.home-project-meta small{font-size:8px}
.home-project-copy h3{margin:0;color:#12263f;font-size:clamp(40px,4.7vw,62px);line-height:1.08;letter-spacing:-.05em}
.home-project-copy>p{max-width:640px;margin:28px 0;color:#657487;font-size:14px;line-height:1.9}
.home-project-copy dl{display:flex;gap:0;margin:35px 0 30px}.home-project-copy dl div{min-width:165px;padding:0 25px;border-left:1px solid var(--line)}.home-project-copy dl div:first-child{padding-left:0;border-left:0}
.home-project-copy dt{color:#133e6e;font-size:17px;font-weight:800}.home-project-copy dd{margin:5px 0 0;color:#7a8795;font-size:8px;text-transform:uppercase;letter-spacing:.12em}
.home-arrow-link{display:inline-flex;padding-bottom:7px;border-bottom:1px solid #acc2d5;color:#0e4f89;font-size:11px;font-weight:800}
.home-project-row-reverse .home-project-visual{grid-column:2;grid-row:1}.home-project-row-reverse .home-project-copy{grid-column:1;grid-row:1}
.home-projects-all{display:flex;justify-content:center;margin-top:64px}.home-outline-button{border:1px solid #1b5a91;color:#164e80;background:transparent}

/* Four service directions */
.home-service{background:#fbfaf7}
.home-service-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:start}
.home-service-intro{position:sticky;top:120px}.home-service-intro h2{font-size:clamp(43px,4.5vw,62px)}.home-service-intro h2 em{display:block}
.home-service-intro>p:last-child{max-width:430px;margin:30px 0 0;color:#68778a;font-size:14px;line-height:1.9}
.home-service-list{border-top:1px solid var(--line)}
.home-service-list article{display:grid;grid-template-columns:76px 1fr;gap:20px;padding:36px 12px 38px;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}
.home-service-list article:hover{padding-left:26px;background:#f1f6fa}
.home-service-list article>span{padding-top:7px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.12em}
.home-service-list h3{margin:0 0 12px;color:#142943;font-size:27px;line-height:1.25}.home-service-list p{max-width:660px;margin:0;color:#68778a;font-size:13px;line-height:1.85}

/* 2026–2030 roadmap */
.home-roadmap{color:#fff;background:#071f42;overflow:hidden}
.home-roadmap:after{content:"";position:absolute;right:-330px;top:-400px;width:820px;height:820px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 130px rgba(255,255,255,.02),0 0 0 260px rgba(255,255,255,.012)}
.home-roadmap-heading{position:relative;z-index:1;max-width:1050px}.home-roadmap-heading h2{color:#fff}.home-roadmap-heading h2 em{color:#9dd0ff}
.home-roadmap-track{--roadmap-progress:0;--roadmap-line-x:0px;--roadmap-line-y:72px;--roadmap-line-length:100%;position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:90px}
.home-roadmap-line{position:absolute;z-index:0;left:var(--roadmap-line-x);top:var(--roadmap-line-y);width:var(--roadmap-line-length);height:1px;background:rgba(144,198,238,.24);overflow:visible}
.home-roadmap-line span{display:block;width:100%;height:100%;background:#83c9f4;transform:scaleX(var(--roadmap-progress));transform-origin:left center;will-change:transform;box-shadow:0 0 12px rgba(131,201,244,.22)}
.home-roadmap-track article{position:relative;z-index:1;min-height:240px;padding:0 15px;opacity:.42;transition:opacity .38s ease}
.home-roadmap-track time{display:block;color:#8dbfe7;font-size:28px;font-weight:800;letter-spacing:-.04em;transition:color .38s ease,text-shadow .38s ease}
.home-roadmap-track article>span{position:relative;z-index:1;display:block;width:10px;height:10px;margin:25px 0 38px;border:2px solid rgba(119,182,231,.58);border-radius:50%;background:#071f42;box-shadow:0 0 0 5px #071f42;transition:border-color .32s ease,background .32s ease,box-shadow .32s ease}
.home-roadmap-track h3{max-width:175px;margin:0 0 12px;color:#fff;font-size:17px;line-height:1.4;transition:color .32s ease}.home-roadmap-track p{margin:0;color:rgba(255,255,255,.62);font-size:11px;line-height:1.7;transition:color .32s ease}
.home-roadmap-track article.is-active,.home-roadmap-track article.is-completed{opacity:1}
.home-roadmap-track article.is-active time{color:#a9ddff;text-shadow:0 0 18px rgba(131,201,244,.28)}
.home-roadmap-track article.is-active>span{border-color:#a9ddff;background:#83c9f4;box-shadow:0 0 0 5px #071f42,0 0 0 9px rgba(131,201,244,.16),0 0 18px rgba(131,201,244,.38)}
.home-roadmap-track article.is-completed>span{border-color:#83c9f4;background:#83c9f4}
.home-roadmap-track article.is-current time{color:#c49c43}.home-roadmap-track article.is-current.is-active time,.home-roadmap-track article.is-current.is-completed time{color:#e5b956;text-shadow:0 0 18px rgba(229,185,86,.22)}
.home-roadmap-track article.is-current.is-active>span{border-color:#e5b956;background:#e5b956;box-shadow:0 0 0 5px #071f42,0 0 0 9px rgba(229,185,86,.16),0 0 18px rgba(229,185,86,.3)}

/* Impact */
.home-impact{padding-top:118px;padding-bottom:125px;background:#e6f1fa;overflow:hidden}
.home-impact:before{content:"";position:absolute;left:-210px;bottom:-290px;width:600px;height:600px;border:1px solid rgba(14,75,132,.08);border-radius:50%}
.home-impact-inner{position:relative}.home-impact-lines{margin-top:65px}
.home-impact-lines p{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:baseline;gap:clamp(16px,2.4vw,34px);min-height:112px;margin:0;padding:29px 0;border-bottom:1px solid rgba(14,63,108,.1);color:#516c87;font-size:clamp(29px,3.75vw,52px);font-weight:700;line-height:1.17;letter-spacing:-.04em;opacity:.4;transform:scale(.88);transform-origin:left center;filter:saturate(.78);transition:transform .38s cubic-bezier(.2,.72,.2,1),opacity .34s ease,color .34s ease,filter .34s ease,border-color .34s ease}
.home-impact-lines p:nth-child(2){padding-left:8%}.home-impact-lines p:nth-child(3){padding-left:16%}.home-impact-lines p:nth-child(4){padding-left:24%}
.home-impact-number{color:#a99a7d;font-size:9px;font-weight:800;letter-spacing:.15em;transition:color .34s ease,opacity .34s ease}
.home-impact-copy{display:block;min-width:0}.home-impact-copy em{color:#4d88bd;font-family:var(--serif);font-style:italic;font-weight:600;transition:color .34s ease}
.home-impact-lines p.is-active{z-index:1;border-color:rgba(14,76,136,.3);color:#15395e;opacity:1;transform:scale(1);filter:none}
.home-impact-lines p.is-active .home-impact-number{color:#a87923}.home-impact-lines p.is-active .home-impact-copy em{color:#1764aa}
.home-impact-lines p.is-completed{color:#2f506f;opacity:.68;transform:scale(.91);filter:saturate(.9)}
.home-impact-lines p.is-completed .home-impact-number{color:#aa8640}.home-impact-lines p.is-completed .home-impact-copy em{color:#3979b1}
.home-impact-lines p.is-upcoming{opacity:.4;transform:scale(.88)}
.home-leadership{border-top:1px solid rgba(13,43,80,.08)}

@media(max-width:1100px){
  .home-project-copy{padding:50px 45px}.home-project-row{grid-template-columns:minmax(300px,.8fr) 1.2fr}.home-project-visual{padding:35px}
  .home-service-grid{gap:65px}.home-roadmap-track{gap:12px}.home-roadmap-track article{padding:0 8px}
}

@media(max-width:1000px){
  .home-section{padding:110px 0}.home-vision-grid{grid-template-columns:1fr}.home-index{display:none}.home-section-heading{grid-template-columns:1fr .65fr;gap:50px}
  .home-project-row{grid-template-columns:340px 1fr;min-height:540px}.home-project-visual{min-height:540px}.home-project-copy{padding:42px 38px}.home-project-copy dl div{min-width:130px}
  .home-service-grid{grid-template-columns:1fr;gap:65px}.home-service-intro{position:static;max-width:750px}.home-service-intro>p:last-child{max-width:620px}
  .home-roadmap-track h3{font-size:15px}.home-impact-lines p:nth-child(n){padding-left:0}
}

@media(max-width:900px){
  .home-roadmap-heading h2{font-size:clamp(39px,6vw,52px)}.home-roadmap-track{display:block;margin-top:60px;padding-left:24px}
  .home-roadmap-line{left:var(--roadmap-line-x);top:var(--roadmap-line-y);width:1px;height:var(--roadmap-line-length)}.home-roadmap-line span{transform:scaleY(var(--roadmap-progress));transform-origin:center top}
  .home-roadmap-track article{display:grid;grid-template-columns:18px 1fr;grid-template-rows:auto auto auto;gap:0 14px;min-height:0;padding:0 0 64px}.home-roadmap-track article:last-child{padding-bottom:8px}.home-roadmap-track time{grid-column:2;grid-row:1;font-size:21px}.home-roadmap-track article>span{grid-column:1;grid-row:1;margin:7px 0 0}.home-roadmap-track h3{grid-column:2;grid-row:2;max-width:none;margin:9px 0 7px;font-size:16px}.home-roadmap-track p{grid-column:2;grid-row:3}
}

@media(max-width:760px){
  .home-section{padding:85px 0}.home-section h2{font-size:39px}.home-vision-main h2 em{display:inline}.home-vision-summary{font-size:14px}
  .home-role-list{grid-template-columns:1fr;margin-top:55px}.home-role-list article{min-height:auto;padding:25px 5px;border-right:0;border-bottom:1px solid var(--line)}.home-role-list article:last-child{border-bottom:0}.home-role-list h3{margin:16px 0 0;font-size:20px}
  .home-mission-words{justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-top:28px}.home-mission-words span{font-size:8px}
  .home-section-heading{display:block}.home-section-heading>p{margin-top:24px}.home-project-showcase{gap:48px;margin-top:52px}
  .home-project-row,.home-project-row-reverse{display:flex;flex-direction:column;min-height:0}.home-project-row-reverse .home-project-visual,.home-project-row-reverse .home-project-copy{grid-column:auto;grid-row:auto}
  .home-project-visual{min-height:0;height:auto;padding:28px}.home-project-visual img{max-height:440px}.home-project-copy{padding:35px 25px 40px}.home-project-meta{align-items:flex-start;flex-direction:column;margin-bottom:25px}.home-project-copy h3{font-size:39px}.home-project-copy>p{font-size:13px}.home-project-copy dl{flex-direction:column;gap:16px}.home-project-copy dl div{padding:0 0 0 15px;border-left:1px solid var(--line)}.home-projects-all{margin-top:45px}
  .home-service-intro h2{font-size:39px}.home-service-list article{grid-template-columns:45px 1fr;padding:28px 0}.home-service-list article:hover{padding-left:0}.home-service-list h3{font-size:21px}.home-service-list p{font-size:12px}
  .home-impact{padding:80px 0}.home-impact-lines{margin-top:35px}.home-impact-lines p{grid-template-columns:28px minmax(0,1fr);gap:11px;min-height:116px;padding:27px 0;font-size:clamp(26px,7.2vw,31px);line-height:1.22;transform:scale(.9)}.home-impact-number{font-size:7px}.home-impact-lines p.is-active{transform:scale(1)}.home-impact-lines p.is-completed{transform:scale(.93)}.home-impact-lines p.is-upcoming{transform:scale(.9)}
}

@media(prefers-reduced-motion:reduce){
  .home-roadmap-track article,.home-roadmap-track time,.home-roadmap-track article>span,.home-roadmap-track h3,.home-roadmap-track p{transition:none}
  .home-roadmap-line span{will-change:auto;box-shadow:none}.home-roadmap-track article.is-active time,.home-roadmap-track article.is-current.is-active time{text-shadow:none}
  .home-roadmap-track article.is-active>span,.home-roadmap-track article.is-current.is-active>span{box-shadow:0 0 0 5px #071f42}
  .home-impact-lines p,.home-impact-lines p.is-active,.home-impact-lines p.is-completed,.home-impact-lines p.is-upcoming{transform:none;transition:none;filter:none}
  .home-impact-lines p.is-active{opacity:1}.home-impact-lines p.is-completed{opacity:.72}.home-impact-lines p.is-upcoming{opacity:.48}
}
