/* Portada editorial: fotografías a sangre, contraste y ritmo visual. */
.campaign{background:#102b43;display:grid;--slide-progress:0}
.campaign-slide{grid-area:1/1;min-height:650px;background:#102b43}
.campaign-ready .campaign-slide{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .85s ease,visibility .85s;z-index:0}
.campaign-ready .campaign-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.campaign-photo{inset:0;opacity:1;z-index:-3;height:100%;overflow:hidden}
.campaign-photo img{object-position:70% center;width:100%;height:100%;transform:scale(1.025)}
.campaign-wash{background:linear-gradient(90deg,rgba(6,26,46,.96),rgba(8,35,58,.83) 34%,rgba(8,35,58,.22) 72%),linear-gradient(0deg,#0d2a46c7,transparent 45%);z-index:-2}
.campaign-shape{display:none}
.campaign-content{padding:92px 35px 135px;position:relative}
.campaign-copy{width:58%;max-width:670px}
.campaign-kicker{color:#8edcfa;letter-spacing:.16em;font-size:11px;display:flex;align-items:center;gap:13px}
.campaign-kicker:before{content:'';height:2px;width:36px;background:#8edcfa;flex-shrink:0}
.campaign-copy h1,.campaign-copy h2,.campaign-theme-2 .campaign-copy h2{color:#fff;font-size:clamp(40px,4.2vw,62px);line-height:1.1;letter-spacing:-.035em;text-wrap:balance;text-shadow:0 2px 22px #071d3433}
.campaign-copy>p:not(.campaign-kicker){color:#e1e9f0;font-size:16px;max-width:490px;line-height:1.8}
.campaign-button,.campaign-theme-2 .campaign-button{background:#fff;color:#104f7e;border:1px solid #fff;border-radius:3px;padding:16px 25px;font-size:13px}
.campaign-button:hover{background:#1e73be;color:white;border-color:#1e73be;transform:translateY(-2px)}
.campaign-signature{color:#c4d5e3;font-size:9px;letter-spacing:.16em;margin-top:30px}.campaign-signature b{color:#8edcfa}
.campaign-seal{right:7%;bottom:116px;text-align:left;border-left:2px solid #ffffff5a;padding-left:20px}.campaign-seal strong{font-size:22px}.campaign-seal span{font-size:8px;color:#d2e4ef}
.campaign-controls{bottom:28px;background:transparent;border:0;border-radius:0;color:white;left:auto;right:7%;transform:none;gap:18px;padding:0;z-index:5}
.campaign-dots{gap:10px}.campaign-dots button{border:0;width:32px;height:26px;border-radius:0;background:linear-gradient(#ffffff60,#ffffff60) center/100% 3px no-repeat;transition:background .3s,transform .3s}
.campaign-dots button[aria-pressed=true]{background:linear-gradient(#fff,#fff) center/100% 3px no-repeat;transform:none}
[data-slide-pause]{color:white;border:1px solid #ffffff5a;border-radius:50%;width:38px;height:38px;min-width:38px}
.campaign-arrow{z-index:5;background:#ffffff0d;color:white;border:1px solid #ffffff3a;border-radius:50%;width:42px;height:42px;font-size:32px;top:46%;transition:background .25s,transform .25s}.campaign-arrow:hover{background:#ffffff30}.campaign-arrow.previous{left:18px}.campaign-arrow.next{right:18px}
.campaign:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:#70cdee;transform:scaleX(var(--slide-progress));transform-origin:left;z-index:6;transition:transform .1s linear}
.campaign-slide.is-active .campaign-photo img{animation:photo-drift 8.5s ease-out both}
.campaign-slide.is-active .campaign-copy>*{animation:slide-copy .8s both}.campaign-slide.is-active .campaign-copy>:nth-child(2){animation-delay:.12s}.campaign-slide.is-active .campaign-copy>:nth-child(3){animation-delay:.22s}.campaign-slide.is-active .campaign-copy>:nth-child(4){animation-delay:.32s}.campaign-slide.is-active .campaign-copy>:nth-child(5){animation-delay:.4s}
.campaign.is-paused .campaign-photo img,.campaign.is-held .campaign-photo img{animation-play-state:paused}
@keyframes photo-drift{from{transform:scale(1.025)}to{transform:scale(1.1)}}
@keyframes slide-copy{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes menu-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
.nav-group[open] .dropdown{animation:menu-enter .23s ease-out}.navigation.mobile-open{animation:menu-enter .25s ease-out}.nav-group summary>span{transition:transform .25s}.nav-group[open] summary>span{transform:rotate(180deg)}
.nav-row>a,.nav-group>summary{position:relative;transition:color .2s,background .2s}.nav-row>a:after,.nav-group>summary:after{content:'';position:absolute;bottom:6px;left:10px;right:10px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav-row>a:hover:after,.nav-group[open]>summary:after,.nav-group>summary:hover:after{transform:scaleX(1)}
.dropdown a{transition:background .2s,color .2s,padding-left .2s}.dropdown a:hover,.dropdown a:focus-visible{padding-left:25px;background:#edf6fc;color:#165f9c}
.button,.program-card,.person,.service-box,.news-card,.community-links a{transition:transform .25s,box-shadow .25s,background .25s}.program-card:hover,.person:hover,.service-box:hover{transform:translateY(-5px)}.button:hover .icon,.text-link:hover .icon{transform:translateX(4px)}.button .icon,.text-link .icon{transition:transform .25s}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s ease var(--reveal-delay,0ms)}.reveal.is-revealed{opacity:1;transform:none}.reveal:focus-within{opacity:1;transform:none}
.page-banner{background:linear-gradient(120deg,#eff6fc,#f8fbfd);border-bottom:1px solid #dfeaf2}.page-banner h1{text-wrap:balance}.inner-page .prose{min-width:0}.prose>div{max-width:100%}.prose figure{background:#f5f8fb;padding:12px}.prose figure img{margin:auto}.prose h2,.prose h3{scroll-margin-top:150px}
@media(max-width:1050px){.campaign-copy{width:70%}.campaign-content{padding-left:25px;padding-right:25px}.campaign-copy h1,.campaign-copy h2,.campaign-theme-2 .campaign-copy h2{font-size:46px}.campaign-seal{display:none}}
@media(max-width:570px){.campaign-slide{min-height:690px}.campaign-photo{inset:0;height:100%;opacity:1}.campaign-photo img{object-position:65% center}.campaign-wash{background:linear-gradient(0deg,#071e35 3%,#071e35e8 38%,#071e3577 73%,#071e3544)}.campaign-content{padding:235px 12px 104px}.campaign-copy{width:100%}.campaign-kicker{font-size:8px;letter-spacing:.1em;gap:8px;margin-bottom:18px}.campaign-kicker:before{width:18px}.campaign-copy h1,.campaign-copy h2,.campaign-theme-2 .campaign-copy h2{font-size:33px;line-height:1.14}.campaign-copy>p:not(.campaign-kicker){font-size:13px;line-height:1.75}.campaign-button{font-size:11px;padding:13px 17px}.campaign-signature{font-size:6px;letter-spacing:.12em;margin-top:23px}.campaign-arrow{top:125px;width:35px;height:35px;font-size:27px}.campaign-arrow.previous{left:14px}.campaign-arrow.next{right:14px}.campaign-controls{right:30px;left:30px;bottom:24px;justify-content:center}.campaign-dots button{width:26px}.campaign-controls #slide-counter{font-size:11px}.reveal{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.campaign-slide,.campaign-copy>*,.campaign-photo img,.dropdown,.navigation,.button,.nav-row>a:after,.nav-group>summary:after{animation:none!important;transition:none!important}.campaign-photo img{transform:none}.campaign:after{transition:none}.program-card:hover,.person:hover,.service-box:hover{transform:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.study-band,.benefits-panel{background:var(--green)}
.nav-group[open]>summary{color:var(--blue);background:#f1f7fc}.nav-group[open] .dropdown{animation:menu-enter .28s ease-out}
.section-navigation{margin:0 0 36px;padding:20px 24px;background:#f1f6fb;border-left:4px solid var(--blue);border-radius:8px}.section-navigation>strong{display:block;color:var(--green);margin-bottom:12px}.section-navigation>div{display:flex;flex-wrap:wrap;gap:8px}.section-navigation a{padding:8px 12px;border:1px solid #d7e3ed;border-radius:5px;background:#fff;font-size:13px;color:#254361;text-decoration:none}.section-navigation a:hover,.section-navigation a:focus-visible,.section-navigation a[aria-current=page]{background:var(--blue);color:#fff;border-color:var(--blue)}
