.future-page { background:#fff; color:#30343b; }
.future-page .site-header { position:fixed; }
.future-kicker { margin:0 0 16px; color:#d71920; font-size:13px; line-height:1; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.future-hero { position:relative; min-height:720px; display:flex; align-items:flex-end; overflow:hidden; color:#fff; }
.future-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.future-hero__shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,8,15,.83),rgba(4,8,15,.2) 72%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 58%); }
.future-hero__content { position:relative; z-index:1; padding-top:190px; padding-bottom:92px; }
.future-hero .future-kicker { color:#fff; }
.future-hero h1 { max-width:930px; margin:0; font-size:clamp(55px,7vw,104px); line-height:.92; font-weight:600; letter-spacing:-.055em; }
.future-hero p:last-child { max-width:690px; margin:29px 0 0; font-size:clamp(19px,1.8vw,26px); line-height:1.48; }
.future-intro { display:grid; grid-template-columns:.65fr 1.35fr; gap:clamp(45px,8vw,130px); padding-top:clamp(80px,9vw,135px); padding-bottom:clamp(75px,9vw,130px); }
.future-intro h2,.future-section-title h2,.future-pillars h2,.future-cta h2 { margin:0 0 27px; font-size:clamp(38px,4.3vw,62px); line-height:1.03; font-weight:600; letter-spacing:-.04em; }
.future-intro p { max-width:820px; margin:0 0 18px; color:#555a61; font-size:18px; line-height:1.7; }
.future-reports { padding:clamp(75px,8vw,120px) 0; background:#f1f1f1; }
.future-section-title { margin-bottom:42px; }
.future-report-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.future-report { position:relative; min-height:530px; overflow:hidden; color:#fff; }
.future-report > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.future-report:hover > img { transform:scale(1.04); }
.future-report::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,7,12,.88),rgba(3,7,12,.05) 72%); }
.future-report__copy { position:absolute; z-index:1; left:0; right:0; bottom:0; display:flex; flex-direction:column; align-items:flex-start; padding:33px; }
.future-report__copy p { margin:0 0 12px; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.future-report h3 { margin:0; font-size:31px; line-height:1.1; font-weight:600; }
.future-report button { display:flex; align-items:center; justify-content:space-between; gap:28px; min-width:165px; margin-top:25px; border:0; padding:15px 18px; background:#d71920; color:#fff; font:700 12px/1 inherit; letter-spacing:.05em; text-transform:uppercase; cursor:pointer; }
.future-detail { scroll-margin-top:110px; display:none; margin-top:22px; padding:clamp(38px,5vw,68px); background:#fff; }
.future-detail.is-open { display:grid; grid-template-columns:.6fr 1.4fr; gap:clamp(35px,7vw,100px); animation:future-in .35s ease; }
.future-detail h3 { margin:0; font-size:clamp(34px,3.5vw,50px); line-height:1.05; font-weight:600; }
.future-detail p { margin:0 0 17px; color:#555a61; font-size:17px; line-height:1.68; }
@keyframes future-in { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:none} }
.future-pillars { padding-top:clamp(82px,9vw,132px); padding-bottom:clamp(82px,9vw,132px); }
.future-pillar-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #c9cbd0; }
.future-pillar { padding:30px 25px 35px 0; border-bottom:1px solid #c9cbd0; border-right:1px solid #c9cbd0; }
.future-pillar:nth-child(4n) { border-right:0; padding-left:25px; }
.future-pillar:not(:nth-child(4n+1)) { padding-left:25px; }
.future-pillar span { color:#d71920; font-size:13px; font-weight:700; }
.future-pillar h3 { margin:36px 0 13px; font-size:24px; line-height:1.15; font-weight:600; }
.future-pillar p { margin:0; color:#5b6067; font-size:15px; line-height:1.55; }
.future-cta { padding:clamp(70px,8vw,112px) 0; background:#d71920; color:#fff; }
.future-cta .page-width { display:flex; align-items:end; justify-content:space-between; gap:50px; }
.future-cta h2 { max-width:820px; margin:0; }
.future-cta__links { display:flex; flex-wrap:wrap; gap:12px; }
.future-cta a { display:inline-flex; min-height:52px; align-items:center; padding:14px 20px; border:1px solid #fff; color:#fff; font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.future-cta a:first-child { background:#fff; color:#d71920; }
@media(max-width:950px){.future-intro,.future-detail.is-open{grid-template-columns:1fr}.future-report-grid{grid-template-columns:1fr 1fr}.future-report:last-child{grid-column:1/-1}.future-pillar-grid{grid-template-columns:1fr 1fr}.future-pillar:nth-child(4n){border-right:1px solid #c9cbd0}.future-pillar:nth-child(2n){border-right:0}.future-cta .page-width{display:block}.future-cta__links{margin-top:30px}}
@media(max-width:620px){.future-hero{min-height:620px}.future-hero__content{padding-top:155px;padding-bottom:64px}.future-hero h1{font-size:52px}.future-report-grid,.future-pillar-grid{grid-template-columns:1fr}.future-report:last-child{grid-column:auto}.future-report{min-height:450px}.future-pillar,.future-pillar:nth-child(n){border-right:0;padding-left:0;padding-right:0}.future-cta__links{display:grid}.future-cta a{justify-content:center}}
