/* Public responsive policy: fluid type and gutters, full-width heroes, bounded reading lines. */
:root{--site-gutter:clamp(28px,4.4vw,100px);--text-body:clamp(20px,1.25vw,24px);--text-lead:clamp(20px,1.4vw,25px);--title-section:clamp(46px,4.5vw,80px);--title-hero:clamp(58px,5.3vw,104px)}
body{font-size:var(--text-body)}
.wrap{width:min(1760px,calc(100% - 2*var(--site-gutter)))}
.section p,.photo-story-head p{font-size:var(--text-body);line-height:1.85}
.section h2,.photo-story h2{font-size:var(--title-section);line-height:1.06;letter-spacing:-.04em}
.section .eyebrow,.photo-story .eyebrow{font-size:13px;line-height:1.6}
.button{font-size:18px;min-height:62px;padding:18px 28px}
.hero.layout-immersive.hero-carousel{--hero-gutter:var(--site-gutter);width:100%;max-width:none;margin-inline:0;min-height:920px;height:max(920px,calc(100svh - 112px));max-height:1400px}
.hero-carousel .wrap.hero-copy{width:calc(100% - 2*var(--site-gutter));max-width:none;margin-inline:var(--site-gutter);padding:clamp(84px,9vh,140px) 0 180px!important}
.hero.layout-immersive.hero-carousel .hero-copy :is(h1,h2){width:58%;max-width:none;font-size:var(--title-hero);line-height:1.05;min-height:2.1em;margin:27px 0 28px;letter-spacing:-.045em}
.hero.layout-immersive.hero-carousel .hero-copy .eyebrow{max-width:52%;font-size:12px;line-height:1.6;letter-spacing:.13em}
.hero.layout-immersive.hero-carousel .hero-copy p{width:41%;max-width:540px;font-size:var(--text-lead);line-height:1.75;min-height:5.25em;margin-bottom:28px}
.hero.layout-immersive.hero-carousel .hero-copy .button{font-size:18px;min-height:64px;padding:18px 28px}
.hero.layout-immersive.hero-carousel .hero-image{width:64%;height:100%}
.hero-carousel .hero-copy .hero-portals>span{font-size:14px}.hero-carousel .hero-copy .hero-portals a{font-size:14px;min-height:52px;padding:14px 20px}
.hero-controls button{font-size:14px;width:44px;height:44px;min-height:44px}.hero-carousel .scroll-cue{font-size:11px}
.quick-link-copy strong{font-size:clamp(25px,1.85vw,32px);line-height:1.14}.quick-link-copy>span{font-size:16px;line-height:1.6}
.quick-link{padding-top:29px;padding-bottom:29px}.card-content h3{font-size:clamp(30px,2.1vw,38px);line-height:1.12}.card-content p{font-size:18px;line-height:1.7}
.photo-story-frame figcaption{font-size:18px}.photo-story-frame figcaption span{font-size:12px}
.image-caption h2{font-size:clamp(50px,5vw,88px);line-height:1.05}
.article-head h1{font-size:clamp(48px,5.2vw,90px);line-height:1.08}.lede{font-size:clamp(23px,1.7vw,29px)}.article-meta{font-size:16px}.photo-grid figcaption{font-size:18px}
.footer-top h2{font-size:clamp(38px,3.7vw,62px);line-height:1.1}.footer-bottom{font-size:15px;line-height:1.8}
.menu-kicker{font-size:12px}.menu-navigation nav a{font-size:clamp(36px,3.6vw,58px)}.menu-contact{font-size:19px}.menu-bottom{font-size:12px}.menu-bottom a{font-size:16px}
.cookie-banner b{font-size:16px}.cookie-banner p{font-size:14px;line-height:1.65}.cookie-actions button{font-size:12px;min-height:42px}.accessibility #access-panel{font-size:16px}
@media(min-width:1101px){.menu-enhanced .site-header .header-cta{font-size:16px}.menu-trigger{font-size:19px}.language-switch a{font-size:13px}}
@media(min-width:761px) and (max-width:1100px){
 :root{--site-gutter:32px;--title-hero:clamp(44px,5.2vw,58px);--title-section:clamp(42px,4.8vw,54px);--text-body:19px;--text-lead:19px}
 .hero.layout-immersive.hero-carousel{min-height:900px;height:max(900px,calc(100svh - 112px))}.hero-carousel .wrap.hero-copy{padding-top:85px!important}.hero.layout-immersive.hero-carousel .hero-copy :is(h1,h2){width:58%}.hero.layout-immersive.hero-carousel .hero-copy p{width:44%}.quick-link-copy strong{font-size:27px}.quick-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:761px) and (max-height:800px){.menu-navigation nav a{font-size:clamp(34px,3vw,46px);padding-block:12px}}
@media(max-width:760px){
 :root{--site-gutter:24px;--text-body:17px;--text-lead:17px;--title-section:clamp(36px,9vw,50px);--title-hero:clamp(36px,10vw,54px)}
 .wrap{width:calc(100% - 48px)}
 .section p,.photo-story-head p{font-size:17px;line-height:1.8}.section h2,.photo-story h2{font-size:var(--title-section);line-height:1.08}.section .eyebrow,.photo-story .eyebrow{font-size:11px}
 .hero.layout-immersive.hero-carousel{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none;width:100%}
 .hero-carousel .wrap.hero-copy{width:calc(100% - 48px);margin-inline:24px;padding:clamp(420px,112vw,570px) 0 0!important}
 .hero.layout-immersive.hero-carousel .hero-image{width:100%;height:clamp(490px,130vw,660px)!important}
 .hero.layout-immersive.hero-carousel .hero-copy :is(h1,h2){width:100%;font-size:var(--title-hero);line-height:1.12;min-height:2.24em;margin:23px 0 23px}
 .hero.layout-immersive.hero-carousel .hero-copy .eyebrow{max-width:100%;font-size:10px;line-height:1.6;letter-spacing:.07em}
 .hero.layout-immersive.hero-carousel .hero-copy p{width:100%;max-width:none;font-size:17px;line-height:1.75;min-height:7em;margin-bottom:26px}
 .hero.layout-immersive.hero-carousel .hero-copy .button{font-size:16px;min-height:60px;padding:16px 24px}
 .hero-carousel .hero-copy .hero-portals>span{font-size:13px}.hero-carousel .hero-copy .hero-portals a{font-size:12px;min-height:56px;padding:13px 12px}
 .hero-controls button{width:36px;height:42px;min-height:42px;font-size:12px}.hero-carousel .scroll-cue{font-size:10px}
 .quick-link-copy strong{font-size:25px}.quick-link-copy>span{font-size:15px;line-height:1.6}.quick-link{padding-inline:13px}.quick-links-grid{gap:12px}
 .card-content h3{font-size:30px}.card-content p{font-size:17px}.button{font-size:16px;min-height:58px}.photo-story-frame figcaption,.photo-grid figcaption{font-size:16px}.image-caption h2{font-size:clamp(40px,10vw,60px)}
 .article-head h1{font-size:clamp(38px,9.5vw,56px)}.lede{font-size:22px}.footer-top h2{font-size:35px}.footer-bottom{font-size:14px}
 .menu-navigation nav a{font-size:37px}.menu-contact{font-size:18px}.menu-kicker{font-size:11px}.menu-bottom{font-size:10px}
 .cookie-banner p{font-size:13px}.cookie-banner b{font-size:15px}.cookie-actions button{font-size:11px;min-height:40px}
}
@media(max-width:360px){:root{--site-gutter:20px;--title-hero:34px}.wrap,.hero-carousel .wrap.hero-copy{width:calc(100% - 40px)}.hero-carousel .wrap.hero-copy{margin-inline:20px}.quick-link-copy strong{font-size:22px}.quick-link-copy>span{font-size:14px}.hero-carousel .hero-copy .hero-portals a{font-size:11px;padding-inline:10px}}
.large-text .section p,.large-text .photo-story-head p{font-size:calc(var(--text-body)*1.2)}.large-text .hero.layout-immersive.hero-carousel .hero-copy p{font-size:calc(var(--text-lead)*1.2)}

.section.callout h2{font-size:var(--title-section);line-height:1.08}
