/* Stronger campaign color system and issue-depth sections */
.site-header{background:var(--navy);border-bottom:4px solid var(--red);box-shadow:0 8px 24px rgba(5,22,48,.2)}
.site-header .brand-name,.site-header nav a{color:#fff}
.site-header .brand-office{color:#ced8e7}
.site-header .nav-cta{background:var(--red);border-color:var(--red);color:#fff}
.menu{color:#fff;border-color:rgba(255,255,255,.6)}
.brand-logo{display:block;height:72px;width:94px;flex:0 0 auto}
.brand-logo img{width:100%;height:100%;object-fit:contain;display:block}
.hero-campaign-logo{position:absolute;z-index:3;left:1.5%;bottom:7%;width:clamp(170px,18vw,270px);height:auto;filter:drop-shadow(8px 10px 0 rgba(2,13,31,.58))}

.hero{background:var(--navy);color:#fff;position:relative}
.hero:before{content:"";position:absolute;left:0;bottom:0;width:46%;height:10px;background:var(--red)}
.hero-copy{position:relative;z-index:2}
.hero .eyebrow{color:#ff555b}
.hero h1{color:#fff;font-size:clamp(5rem,9vw,9.5rem);line-height:.72;text-shadow:5px 4px 0 rgba(0,0,0,.2)}
.hero h1 em{color:#ef3037;text-shadow:3px 3px 0 #fff}
.hero-kicker{font:800 clamp(1.15rem,2vw,1.65rem)/1.1 "Barlow Condensed";text-transform:uppercase;letter-spacing:.08em;margin:32px 0 0;color:#fff}
.hero .hero-lead{color:#d7e1ee}
.hero .secondary{border-color:#fff;color:#fff;background:transparent}
.hero .secondary:hover{background:#fff;color:var(--navy)}
.hero-proof{border-top-color:rgba(255,255,255,.25)}
.hero-proof div{border-right-color:rgba(255,255,255,.25)}
.hero-proof strong{color:#ff4b51}
.hero-visual{background:linear-gradient(140deg,var(--navy2),#06152f)}
.campaign-ribbon{background:var(--red);color:#fff;min-height:118px;padding:24px clamp(22px,7vw,110px);display:flex;align-items:center;justify-content:center;gap:clamp(12px,2.5vw,34px);font:900 clamp(1.5rem,3vw,2.6rem)/1 "Barlow Condensed";letter-spacing:.08em;text-transform:uppercase;text-align:center;border-top:4px solid #fff;border-bottom:8px solid var(--navy)}
.campaign-ribbon b{color:var(--navy);text-shadow:1px 1px 0 #fff}
.campaign-ribbon p{margin:0 0 0 clamp(16px,3vw,50px);padding-left:clamp(16px,3vw,50px);border-left:2px solid rgba(255,255,255,.65);font:800 clamp(1.15rem,2vw,1.65rem)/1.1 "Barlow Condensed";letter-spacing:0;text-transform:none}

.priorities{background:var(--navy);color:#fff;border-top:8px solid var(--red)}
.priorities .section-heading>p:last-child{color:#cbd6e5}
.priorities .eyebrow{color:#ff565c}
.priority{background:#fff;color:var(--navy);border-top:6px solid var(--red);box-shadow:0 16px 35px rgba(0,0,0,.16)}
.priority.featured{background:var(--red);color:#fff;border-top-color:#fff}
.priority p{line-height:1.65;margin-bottom:20px}
.priority h4{font:800 1rem/1.2 Inter;text-transform:uppercase;letter-spacing:.09em;margin:20px 0 10px;color:var(--red)}
.priority.featured h4{color:#fff}
.priority ul{margin:0;padding-left:1.2rem;display:grid;gap:9px}
.priority li{line-height:1.5;color:#3b4655}
.priority.featured li{color:#fff}
.priority-grid{gap:18px;border:0}
.priority{border:0;min-height:100%;padding:38px}
.priority h3{margin:28px 0 16px}

.challenges{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(520px,1.35fr);background:#f2f5f9;border-bottom:10px solid var(--red)}
.challenges-intro{background:var(--red);color:#fff;padding:clamp(64px,8vw,120px) clamp(28px,6vw,95px);display:flex;flex-direction:column;justify-content:center}
.challenges-intro h2{font:900 clamp(3rem,5.5vw,5.8rem)/.9 "Barlow Condensed";text-transform:uppercase;margin:16px 0 28px}
.challenges-intro>p:last-child{font-size:1.08rem;line-height:1.75;max-width:560px;color:#fff}
.challenge-list{padding:clamp(48px,7vw,100px) clamp(24px,6vw,90px);display:grid;gap:0}
.challenge-list article{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:26px 0;border-bottom:1px solid #cbd3de}
.challenge-list article:first-child{padding-top:0}
.challenge-list article:last-child{border-bottom:0;padding-bottom:0}
.challenge-list article>span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font:900 1.25rem/1 "Barlow Condensed";box-shadow:4px 4px 0 var(--red)}
.challenge-list h3{font:800 clamp(1.55rem,2.2vw,2.2rem)/1 "Barlow Condensed";text-transform:uppercase;color:var(--navy);margin:0 0 12px}
.challenge-list p{margin:7px 0;color:#37465a;line-height:1.62}
.challenge-list b{color:var(--red)}

.youth-impact{display:grid;grid-template-columns:1.15fr .85fr;min-height:650px;background:var(--navy);color:#fff}
.youth-photo{position:relative;overflow:hidden;min-height:560px}
.youth-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(7,30,65,.78))}
.youth-photo img{width:100%;height:100%;object-fit:cover;object-position:48% center;display:block}
.youth-copy{padding:clamp(58px,7vw,110px) clamp(28px,7vw,110px);display:flex;flex-direction:column;justify-content:center;border-left:8px solid var(--red)}
.youth-copy h2{font:900 clamp(3.2rem,6vw,6.5rem)/.86 "Barlow Condensed";text-transform:uppercase;margin:16px 0 28px;text-shadow:4px 3px 0 var(--red)}
.youth-copy p{font-size:1.05rem;line-height:1.72;color:#d7e0ed;margin:0 0 18px}
.text-link{font-weight:800;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;margin-top:14px}
.text-link span{color:#ff4248;font-size:1.35em;margin-left:8px}

.join{background:linear-gradient(115deg,#f1f4f8 0 50%,#dce4ef 50% 100%);border-top:10px solid var(--red)}
footer{background:var(--navy);color:#fff;border-top:6px solid var(--red)}
footer .brand-name,footer p{color:#fff}
footer .brand-office,footer small{color:#c8d4e4}
footer .footer-brand{height:130px;width:150px}

@media(max-width:980px){
  .challenges,.youth-impact{grid-template-columns:1fr}
  .youth-photo{height:520px;min-height:0}
  .youth-photo:after{background:linear-gradient(180deg,transparent 70%,rgba(7,30,65,.65))}
  .youth-copy{border-left:0;border-top:8px solid var(--red)}
}
@media(max-width:900px){
  .site-header nav{background:var(--navy);border-top:1px solid rgba(255,255,255,.2)}
  .hero{background:var(--navy)}
  .campaign-ribbon{flex-wrap:wrap}
  .campaign-ribbon p{flex-basis:100%;border-left:0;padding-left:0;margin-left:0}
  .brand-logo{height:62px;width:78px}
  .hero-campaign-logo{left:5%;bottom:5%;width:190px}
}
@media(max-width:580px){
  .challenges-intro{padding:58px 24px}
  .challenges-intro h2{font-size:3rem}
  .challenge-list{padding:48px 24px}
  .challenge-list article{grid-template-columns:46px 1fr;gap:15px}
  .challenge-list article>span{width:42px;height:42px;font-size:1rem}
  .youth-photo{height:350px}
  .youth-copy{padding:56px 24px}
  .join{background:#eef2f7}
  footer .footer-brand{height:110px;width:125px}
}
