/* V1.2.17 — Leonardo-Google challenge only. All other approved views untouched. */
.challenge-card-cover{background:#234562;isolation:isolate}
.challenge-card-cover::before{content:"";position:absolute;inset:-22px;background:url("challenge-google-kaggle-card.webp") center/cover;filter:blur(13px) brightness(.74);z-index:0}
.challenge-card-cover img{object-fit:cover!important;z-index:1}
.challenge-page .challenge-hero{background:linear-gradient(155deg,#0a1c2a,#153c54 80%);padding:150px 0 90px}
.challenge-page .challenge-back{padding-bottom:36px;color:#c7d5df;font:500 11px var(--mono);letter-spacing:.1em}
.challenge-page .challenge-hero-visual{margin:0;overflow:hidden;background:#234562;border:1px solid rgba(184,210,220,.38);box-shadow:0 25px 95px rgba(0,0,0,.22)}
.challenge-page .challenge-hero-visual img{display:block;width:100%;height:auto}
.challenge-page .challenge-intro{background:var(--paper);padding:125px 0 132px}
.challenge-page .challenge-intro-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,.62fr);gap:76px;align-items:start}
.challenge-page .challenge-intro h1{font-size:clamp(46px,5.2vw,80px);line-height:1.07;letter-spacing:-.062em;margin:0 0 35px;max-width:870px}
.challenge-page .challenge-intro-copy p{color:#5a6c64;font-size:clamp(17px,1.6vw,22px);line-height:1.72;max-width:780px;margin:0}
.challenge-page .challenge-facts{border-top:1px solid #bac9c0}
.challenge-page .challenge-facts>div{display:flex;flex-direction:column;gap:5px;padding:18px 0 23px;border-bottom:1px solid #bac9c0}
.challenge-page .challenge-facts span,.challenge-page .challenge-facts small{font:500 10px/1.45 var(--mono);letter-spacing:.08em;color:#738e83}
.challenge-page .challenge-facts strong{font-size:clamp(26px,2.6vw,37px);font-weight:700;letter-spacing:-.045em}
.challenge-page .challenge-overview{background:#f8f9f4;padding:110px 0 128px}
.challenge-page .challenge-narrative{max-width:1130px}
.challenge-page .challenge-overview-intro{max-width:1000px}
.challenge-page .challenge-overview-intro .eyebrow{color:#628878}
.challenge-page .challenge-statement{font-size:clamp(30px,3.6vw,55px);font-weight:700;line-height:1.2;letter-spacing:-.045em;margin:22px 0 29px}
.challenge-page .challenge-overview-intro p:not(.challenge-statement){font-size:18px;line-height:1.82;color:#566960;max-width:870px;margin:0}
.challenge-page .challenge-contribution{max-width:870px;border-top:1px solid #bbc9c0;margin:82px 0 0 auto;padding:28px 0 0}
.challenge-page .challenge-contribution h2{font-size:26px;margin:0 0 14px;letter-spacing:-.035em}
.challenge-page .challenge-contribution p{font-size:18px;line-height:1.82;color:#566960;margin:0}
.challenge-page .challenge-story{background:#e5ebe4;padding:110px 0 125px}
.challenge-page .challenge-section{border-top:1px solid #b8cabd;padding:34px 0 70px}
.challenge-page .challenge-section:last-child{padding-bottom:0}
.challenge-page .challenge-section .eyebrow{color:#547c6c}
.challenge-page .challenge-section h2{font-size:clamp(33px,4.5vw,60px);max-width:780px;letter-spacing:-.04em;line-height:1.14;margin:20px 0 22px}
.challenge-page .challenge-section p{font-size:18px;line-height:1.8;color:#53675d;max-width:860px;margin:0}
.challenge-page .challenge-evidence{background:#0b1a22;padding:116px 0 145px;color:#e9f4ef}
.challenge-page .challenge-evidence-header{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:55px;margin-bottom:42px}
.challenge-page .challenge-evidence-header .eyebrow{color:#9bcbdb}
.challenge-page .challenge-evidence-header h2{font-size:clamp(33px,4vw,56px);letter-spacing:-.055em;line-height:1.15;margin:17px 0 0;max-width:740px}
.challenge-page .challenge-evidence-header p{font-size:16px;line-height:1.75;color:#aec7c2;margin:0;max-width:420px}
.challenge-page .challenge-evidence-image{margin:0;background:#f7f8f5;padding:18px;border:1px solid #45606a;box-shadow:0 25px 75px #0004}
.challenge-page .challenge-evidence-image img{display:block;width:100%;height:auto}
@media(max-width:850px){
.challenge-page .challenge-hero{padding:113px 0 64px}
.challenge-page .challenge-intro{padding:88px 0}
.challenge-page .challenge-intro-grid{grid-template-columns:1fr;gap:51px}
.challenge-page .challenge-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.challenge-page .challenge-overview{padding:85px 0}
.challenge-page .challenge-contribution{margin-top:60px}
.challenge-page .challenge-story{padding:85px 0}
.challenge-page .challenge-evidence{padding:90px 0}
.challenge-page .challenge-evidence-header{grid-template-columns:1fr;gap:19px}
}
@media(max-width:560px){
.challenge-page .challenge-hero{padding:95px 0 55px}
.challenge-page .challenge-hero-visual{overflow-x:auto;scrollbar-color:#628a94 #142d3c}
.challenge-page .challenge-hero-visual img{min-width:800px}
.challenge-page .challenge-intro h1{font-size:clamp(38px,10.7vw,56px)}
.challenge-page .challenge-facts{grid-template-columns:1fr;gap:0}
.challenge-page .challenge-overview-intro p:not(.challenge-statement),.challenge-page .challenge-contribution p,.challenge-page .challenge-section p{font-size:16px}
.challenge-page .challenge-section{padding-bottom:50px}
.challenge-page .challenge-evidence-image{padding:8px}
}
