/* Four clear project stories replace the former comparison matrix and diagrams. */
.past-performance-page main { overflow:clip; }
.past-performance-page main > section { scroll-margin-top:80px; }
.proof-hero { position:relative; isolation:isolate; overflow:hidden; background:#071522; color:#f7fafb; padding:calc(var(--header-h) + 76px) 0 0; }
.proof-hero__ambient { position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(ellipse 48% 88% at 73% 42%,rgba(70,125,149,.2),transparent 78%),radial-gradient(ellipse 28% 56% at 3% 89%,rgba(184,54,48,.15),transparent 72%),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px); background-size:auto,auto,90px 90px; }
.proof-hero__grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:clamp(44px,7vw,116px); align-items:center; min-height:595px; padding-bottom:56px; }
.proof-hero__copy { position:relative; z-index:2; }
.proof-hero .eyebrow { color:#b9c6cf; }
.proof-hero h1 { max-width:760px; margin:28px 0 29px; font-size:clamp(3.4rem,5.3vw,5.75rem); line-height:.9; letter-spacing:-.071em; color:#fff; }
.proof-hero h1 em { display:block; font-style:normal; color:#e3ada8; }
.proof-hero__copy > p { max-width:590px; color:#c2cdd5; font-size:clamp(1.05rem,1.25vw,1.21rem); line-height:1.72; }
.proof-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:37px; }
.proof-hero__image { position:relative; min-height:535px; border:1px solid rgba(218,239,245,.2); box-shadow:0 36px 85px rgba(0,0,0,.3); overflow:hidden; background:#142937; }
.proof-hero__image img { display:block; width:100%; height:535px; object-fit:cover; object-position:70% center; filter:saturate(.78) contrast(1.06); transform:scale(1.025); transition:transform 1.1s ease; }
.proof-hero__image:hover img { transform:scale(1.075); }
.proof-hero__image::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(3,12,20,.91),transparent 54%),linear-gradient(90deg,rgba(5,15,24,.26),transparent 50%); }
.proof-hero__image-caption { position:absolute; z-index:1; left:31px; right:31px; bottom:27px; display:flex; flex-direction:column; gap:8px; }
.proof-hero__image-caption span { color:#e9aba5; font:600 .64rem var(--font-mono); letter-spacing:.13em; }
.proof-hero__image-caption strong { color:#fff; font-size:1.35rem; letter-spacing:-.035em; }
.proof-hero__facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.15); }
.proof-hero__facts div { padding:23px 24px 26px 0; }
.proof-hero__facts div + div { border-left:1px solid rgba(255,255,255,.13); padding-left:25px; }
.proof-hero__facts span { display:block; color:#93a3af; font:600 .62rem var(--font-mono); letter-spacing:.13em; }
.proof-hero__facts strong { display:block; margin-top:9px; color:#f5f7f9; font-size:.9rem; }

.proof-intro { position:relative; padding:clamp(78px,9vw,130px) 0 110px; background:linear-gradient(140deg,#fbfaf6,#eaf2f3); }
.proof-intro::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.35; background:radial-gradient(circle at 81% 6%,rgba(67,121,143,.15),transparent 24%),linear-gradient(90deg,rgba(21,54,70,.06) 1px,transparent 1px); background-size:auto,110px 100%; }
.proof-intro__grid { position:relative; display:grid; grid-template-columns:1.05fr .75fr; gap:8vw; align-items:end; }
.proof-intro h2 { max-width:750px; margin:21px 0 0; font-size:clamp(2.6rem,4vw,4.2rem); line-height:1; letter-spacing:-.06em; color:#0d1d2c; }
.proof-intro__grid > p { max-width:535px; margin:0; color:#536474; font-size:1.05rem; line-height:1.75; }
.proof-index { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:58px; }
.proof-index a { position:relative; display:flex; flex-direction:column; min-height:230px; padding:25px 25px 28px; overflow:hidden; border:1px solid rgba(20,56,72,.15); background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(239,246,247,.9)); box-shadow:0 14px 36px rgba(16,51,67,.065); transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease; }
.proof-index a::before { content:""; position:absolute; right:-40px; bottom:-75px; width:170px; aspect-ratio:1; border:1px solid rgba(159,48,43,.16); border-radius:50%; box-shadow:0 0 0 20px rgba(159,48,43,.025),0 0 0 46px rgba(159,48,43,.018); transition:transform .5s ease; }
.proof-index a:hover,.proof-index a:focus-visible { transform:translateY(-6px); border-color:rgba(155,47,42,.36); box-shadow:0 24px 55px rgba(15,45,60,.14); }
.proof-index a:hover::before { transform:scale(1.18); }
.proof-index span { color:#a52d28; font:650 .63rem var(--font-mono); letter-spacing:.12em; }
.proof-index strong { position:relative; margin-top:auto; color:#0b1d2a; font-size:1.43rem; letter-spacing:-.04em; }
.proof-index small { position:relative; margin-top:7px; color:#647482; font-size:.81rem; }
.proof-index b { position:absolute; right:23px; top:22px; color:#a52d28; font-size:1rem; }

.proof-story { position:relative; padding:clamp(85px,9vw,135px) 0; background:#faf9f5; color:#0d1d2b; }
.proof-story + .proof-story { border-top:1px solid rgba(27,62,78,.14); }
.proof-story--scale { background:linear-gradient(145deg,#f1f5f5,#f8f3eb); }
.proof-story--rabbit { background:linear-gradient(145deg,#0a1a29,#102a38); color:#f9fbfc; }
.proof-story--usace { background:linear-gradient(145deg,#f8f2e9,#edf4f5); }
.proof-story__grid { display:grid; grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr); gap:clamp(48px,7vw,118px); align-items:center; }
.proof-story:nth-of-type(2n) .proof-story__visual { order:2; }
.proof-story__visual { position:relative; min-height:570px; overflow:hidden; background:#0c2331; box-shadow:0 28px 70px rgba(14,37,51,.16); }
.proof-story__visual img { width:100%; height:570px; display:block; object-fit:cover; object-position:center; filter:saturate(.75) contrast(1.05); transition:transform 1.2s ease,filter 1.2s ease; }
.proof-story__visual:hover img { transform:scale(1.06); filter:saturate(.92) contrast(1.04); }
.proof-story__visual::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,12,21,.94),transparent 54%); pointer-events:none; }
.proof-story__visual-label { position:absolute; z-index:1; left:30px; right:30px; bottom:28px; display:flex; flex-direction:column; gap:8px; }
.proof-story__visual-label span { color:#e7aaa4; font:600 .65rem var(--font-mono); letter-spacing:.13em; }
.proof-story__visual-label strong { color:#fff; font-size:1.25rem; letter-spacing:-.03em; }
.proof-story__body .eyebrow { color:#a32d28; }
.proof-story--rabbit .proof-story__body .eyebrow { color:#e69b94; }
.proof-story__body h2 { margin:21px 0 21px; font-size:clamp(3.2rem,5vw,5.2rem); line-height:.94; letter-spacing:-.065em; }
.proof-story__lead { max-width:640px; margin:0 0 28px; font-size:clamp(1.18rem,1.65vw,1.5rem); line-height:1.45; letter-spacing:-.026em; }
.proof-story--rabbit .proof-story__lead { color:#dce7ed; }
.proof-story__details { border-top:1px solid rgba(23,57,73,.19); }
.proof-story__details > div { display:grid; grid-template-columns:110px 1fr; gap:22px; padding:19px 0; border-bottom:1px solid rgba(23,57,73,.15); }
.proof-story__details span { padding-top:4px; color:#a12f2a; font:650 .62rem var(--font-mono); letter-spacing:.1em; }
.proof-story__details p { margin:0; color:#566673; font-size:.94rem; line-height:1.68; }
.proof-story--rabbit .proof-story__details { border-color:rgba(230,240,247,.19); }
.proof-story--rabbit .proof-story__details > div { border-color:rgba(230,240,247,.16); }
.proof-story--rabbit .proof-story__details p { color:#bdccd5; }
.proof-story--rabbit .proof-story__details span { color:#eba69e; }
.proof-story__tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:25px; }
.proof-story__tags span { padding:9px 12px; border:1px solid rgba(21,56,73,.2); background:rgba(255,255,255,.55); color:#334c5b; font:600 .61rem var(--font-mono); letter-spacing:.04em; }
.proof-story--rabbit .proof-story__tags span { border-color:rgba(229,242,248,.22); background:rgba(255,255,255,.055); color:#dce8ee; }
.proof-story__metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:52px; }
.proof-story__metrics > div { min-height:155px; display:flex; flex-direction:column; justify-content:flex-end; padding:24px 26px; border:1px solid rgba(23,57,73,.17); background:rgba(255,255,255,.7); box-shadow:0 12px 30px rgba(11,38,54,.045); transition:transform .3s ease,box-shadow .3s ease; }
.proof-story__metrics > div:hover { transform:translateY(-4px); box-shadow:0 20px 44px rgba(11,38,54,.1); }
.proof-story__metrics strong { color:#a82c28; font-size:clamp(2.8rem,4.5vw,4.5rem); line-height:.95; letter-spacing:-.07em; }
.proof-story__metrics span { margin-top:10px; color:#506370; font-size:.86rem; }
.proof-close { position:relative; overflow:hidden; padding:clamp(80px,9vw,125px) 0; color:#f8fbfc; background:linear-gradient(90deg,rgba(5,17,28,.98),rgba(5,17,28,.76)),url('../interior-generated/contact.webp') center/cover; }
.proof-close__grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:8vw; align-items:center; }
.proof-close h2 { margin:20px 0 0; font-size:clamp(2.6rem,4.4vw,4.8rem); line-height:1; letter-spacing:-.06em; color:#fff; }
.proof-close h2 em { font-style:normal; color:#e6a9a4; }
.proof-close p { max-width:480px; color:#d0dce3; font-size:1.05rem; line-height:1.72; }
.proof-close .btn { margin-top:18px; }
.proof-close__secondary { display:inline-block; margin:21px 0 0 23px; color:#f0d0cd; font-size:.82rem; font-weight:700; }
@media(max-width:1080px) { .proof-hero__grid { gap:44px; } .proof-story__grid { gap:50px; } .proof-story__details > div { grid-template-columns:90px 1fr; gap:15px; } }
@media(max-width:850px) { .proof-hero__grid,.proof-intro__grid,.proof-story__grid,.proof-close__grid { grid-template-columns:1fr; } .proof-hero__grid { padding-bottom:45px; } .proof-hero__image { min-height:380px; } .proof-hero__image img { height:380px; } .proof-index { grid-template-columns:repeat(2,minmax(0,1fr)); } .proof-story:nth-of-type(2n) .proof-story__visual { order:0; } .proof-story__visual,.proof-story__visual img { min-height:430px; height:430px; } .proof-story__body { max-width:780px; } }
@media(max-width:600px) { .proof-hero { padding-top:calc(var(--header-h) + 41px); } .proof-hero__grid { gap:38px; } .proof-hero h1 { font-size:clamp(2.85rem,12vw,4.2rem); } .proof-hero__image,.proof-hero__image img { min-height:320px; height:320px; } .proof-hero__facts { grid-template-columns:1fr; } .proof-hero__facts div,.proof-hero__facts div + div { padding:15px 0; border-left:0; border-top:1px solid rgba(255,255,255,.12); } .proof-hero__facts div:first-child { border-top:0; } .proof-intro { padding:72px 0; } .proof-intro h2 { font-size:clamp(2.45rem,10vw,3.4rem); } .proof-index { gap:8px; margin-top:34px; } .proof-index a { min-height:184px; padding:17px; } .proof-index strong { font-size:1.15rem; } .proof-index small { font-size:.73rem; } .proof-story { padding:72px 0; } .proof-story__grid { gap:33px; } .proof-story__visual,.proof-story__visual img { min-height:310px; height:310px; } .proof-story__body h2 { font-size:clamp(2.65rem,11vw,4rem); } .proof-story__details > div { grid-template-columns:1fr; gap:6px; padding:16px 0; } .proof-story__metrics { gap:0; grid-template-columns:1fr; margin-top:28px; } .proof-story__metrics > div { min-height:95px; border-bottom:0; } .proof-story__metrics > div:last-child { border-bottom:1px solid rgba(23,57,73,.17); } .proof-close__secondary { display:block; margin:22px 0 0; } }
@media(prefers-reduced-motion:reduce) { .proof-hero__image img,.proof-story__visual img,.proof-index a,.proof-story__metrics > div { transition:none; } }
