/* Homepage hero only: all existing sections and shared styles are preserved. */
@font-face{font-family:HeroCamel;src:url('hero-camel-bold.otf') format('opentype');font-weight:700;font-display:swap}
.association-hero{box-sizing:border-box;color:#fff;background-color:#002a4d;background-image:linear-gradient(90deg,rgba(0,38,71,.2),rgba(0,42,77,.5)),url('hero-background.png');background-position:center;background-size:cover;display:grid;grid-template-columns:1fr .84fr;align-items:center;gap:8vw;height:calc(100svh - 160px);min-height:740px;max-height:950px;padding:85px 7vw 90px;position:relative;isolation:isolate;overflow:hidden;font-family:AssociationNumerals,BrandArabic,Arial,sans-serif;line-height:1.5}
.association-hero::after{content:"";pointer-events:none;background:linear-gradient(transparent,rgba(0,30,56,.28));height:180px;position:absolute;inset:auto 0 0;z-index:0}
.association-hero *{box-sizing:border-box}
.association-hero a{text-decoration:none}
.association-hero-copy{z-index:2;max-width:680px;position:relative}
.association-hero-kicker{color:#bcecff;display:flex;align-items:center;gap:9px;font-size:13px}
.association-hero-kicker svg{width:17px;height:24px;flex-shrink:0}
.association-hero .association-hero-copy h1{color:white;letter-spacing:-2px;margin:22px 0;font-family:AssociationNumerals,HeroCamel,BrandArabic,Arial,sans-serif;font-size:clamp(58px,6.2vw,96px);font-weight:700;line-height:1.06}
.association-hero-copy h1 strong{color:#8fe2ff;font-weight:700}
.association-hero .association-hero-copy>p{color:#d9ecf6;max-width:620px;font-size:17px;line-height:2;margin:0}
.association-hero-ctas{display:flex;gap:13px;margin-top:28px;flex-wrap:wrap}
.association-hero .association-hero-ctas a{border-radius:99px;display:flex;justify-content:center;align-items:center;gap:9px;padding:14px 22px;font-size:13px;font-weight:700;min-height:54px;transition:transform .2s,background .2s}
.association-hero-ctas svg{width:17px;height:24px}
.association-hero .association-hero-primary{color:#005697;background:white}
.association-hero .association-hero-secondary{color:white;backdrop-filter:blur(12px);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.35)}
.association-hero-ctas a:hover{transform:translateY(-2px)}
.association-hero .association-hero-secondary:hover{background:rgba(255,255,255,.15)}
.association-hero-assurances{color:#b8d3e3;display:flex;gap:25px;margin-top:28px;font-size:11px;flex-wrap:wrap}
.association-hero-assurances span{display:flex;align-items:center;gap:7px}
.association-hero-assurances svg{color:#8fe2ff;width:16px;height:24px;flex-shrink:0}
.association-hero .association-hero-media{z-index:2;color:white;aspect-ratio:1.25;backdrop-filter:blur(14px);background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.28);border-radius:30px;display:flex;flex-direction:column;justify-content:space-between;align-self:center;max-width:520px;width:100%;padding:28px;position:relative;overflow:hidden;box-shadow:0 35px 80px rgba(0,20,40,.25)}
.association-hero-media::before{content:"";background:radial-gradient(circle,rgba(28,168,220,.55),transparent 68%);border-radius:50%;width:330px;height:330px;position:absolute;bottom:-150px;left:-80px;pointer-events:none}
.association-media-top{color:#c7e6f4;display:flex;justify-content:space-between;font-size:11px}
.association-media-copy{display:flex;flex-direction:column;position:relative}
.association-media-copy small{color:#8fe2ff;margin-bottom:8px;font-size:12.8px}
.association-media-copy b{max-width:330px;font-size:21px;line-height:1.5}
.association-hero .association-hero-scroll{z-index:3;color:#bed5e2;display:flex;align-items:center;gap:15px;font-size:10px;position:absolute;bottom:35px;right:7vw}
.association-hero-scroll i{background:rgba(255,255,255,.55);width:65px;height:1px}
.association-hero a:focus-visible{outline:3px solid #8fe2ff;outline-offset:6px}
@media(max-width:1050px){.association-hero{grid-template-columns:1fr 360px;gap:35px;padding-right:5vw;padding-left:5vw}.association-hero .association-hero-copy h1{font-size:clamp(48px,6.2vw,70px)}}
@media(max-width:760px){.association-hero{background-position:42% center;grid-template-columns:1fr;align-content:center;height:auto;min-height:900px;max-height:none;padding:70px 22px 65px;gap:40px}.association-hero .association-hero-copy h1{font-size:54px}.association-hero .association-hero-copy>p{font-size:15px}.association-hero-ctas{flex-direction:column;align-items:stretch}.association-hero .association-hero-media{aspect-ratio:1.35;width:100%;max-width:430px;padding:22px;justify-self:center}.association-hero .association-hero-scroll{display:none}.association-hero-assurances{gap:16px}}
@media(max-width:380px){.association-hero .association-hero-copy h1{font-size:47px}.association-hero .association-hero-media{min-height:265px}.association-media-copy b{font-size:19px}.association-media-play{width:66px;height:66px}.association-hero-assurances{font-size:10px;gap:12px}}
@media(prefers-reduced-motion:reduce){.association-hero-ctas a{transition:none}.association-hero-ctas a:hover{transform:none}}

/* Compact homepage chrome and a visual vocabulary drawn from the original logo. */
.association-home .gov-bar{padding:3px 0;min-height:28px;font-size:11px;background:#f7fbfd;border-bottom-color:#e5f0f6}
.association-home .gov-email{font-size:11px}
.association-home .gov-social a{font-size:10px;padding:1px 8px;box-shadow:none;background:transparent;border:0}
.association-home .header{padding:10px 0;border-bottom-color:#e8f2f7;background:linear-gradient(180deg,#fff,#f8fcfe)}
.association-home .header-inner{gap:12px}
.association-home .header .brand img{width:52px;height:52px}
.association-home .header .brand-name{font-size:1rem}
.association-home .header .brand-tag{margin-top:2px;font-size:.67rem}
.association-home .nav>li>a{font-size:.78rem;padding:7px 8px}
.association-home .actions .btn{padding:9px 13px;font-size:.76rem;border-radius:13px}
.association-home .review-bar{font-size:11px;background:#eff7fc;color:#547083;border-bottom:1px solid #deedf6}
.association-home .review-bar .container{padding-top:4px;padding-bottom:4px;gap:12px}
.association-home .review-bar a{color:#045598}
.association-hero{height:calc(100svh - 128px);min-height:740px;padding-top:80px;padding-bottom:85px}
.association-hero::before{content:"";position:absolute;inset:0 0 auto;height:90px;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(143,226,255,.18),transparent)}
.association-hero .association-hero-media{aspect-ratio:auto;min-height:410px;padding:25px 28px 28px;background:linear-gradient(145deg,rgba(220,245,255,.24),rgba(255,255,255,.065));border-color:rgba(208,243,255,.35)}
.association-hero-media::before{background:radial-gradient(circle,rgba(33,169,221,.45),transparent 68%);width:390px;height:390px;bottom:-160px;left:-110px}
.association-brand-emblem{width:245px;height:245px;position:relative;display:grid;place-items:center;align-self:center;flex-shrink:0;margin:22px auto 13px;isolation:isolate}
.association-brand-emblem::before{content:"";position:absolute;inset:24px;border-radius:50%;background:linear-gradient(145deg,#fff,#def3fc);box-shadow:0 12px 55px rgba(1,37,69,.2),0 0 60px rgba(143,226,255,.25);z-index:-1}
.association-brand-emblem img{width:245px;height:245px;object-fit:contain;position:relative;z-index:2;filter:none}
.association-brand-orbit{position:absolute;border-radius:50%;border:1px solid rgba(190,234,254,.32);inset:8px;transform:rotate(-28deg);pointer-events:none}
.association-brand-orbit.orbit-two{inset:-8px 18px;border-color:rgba(143,226,255,.17);transform:rotate(32deg)}
.association-brand-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#21a9dd;box-shadow:0 0 0 6px rgba(33,169,221,.12);z-index:3}
.association-brand-dot.dot-one{right:24px;top:43px}
.association-brand-dot.dot-two{left:32px;bottom:24px;width:8px;height:8px;background:#8fe2ff}
.association-media-copy{text-align:center;align-items:center;gap:0}
.association-media-copy small{font-size:11px;margin-bottom:7px}
.association-media-copy b{font-size:36px;line-height:1.25;font-family:AssociationNumerals,HeroCamel,BrandArabic,Arial,sans-serif;max-width:none;letter-spacing:-.5px}
.association-card-link{font-size:11px;color:#c7e6f4;margin-top:15px;display:flex;align-items:center;gap:8px}
.association-card-link svg{width:15px;height:15px;transition:transform .2s}
.association-hero-media:hover .association-card-link svg{transform:translateX(-4px)}
@media(max-width:1280px) and (min-width:801px){.association-home .header nav{order:initial;flex-basis:auto}.association-home .header-inner{flex-wrap:nowrap}.association-home .nav{flex-wrap:nowrap}.association-home .nav>li>a{font-size:.73rem;padding:7px 6px}.association-home .header .brand-name{font-size:.86rem}.association-home .actions .btn{font-size:.7rem;padding:8px 10px}}
@media(max-width:1120px) and (min-width:801px){.association-home .header nav{order:3;flex-basis:100%}.association-home .header-inner{flex-wrap:wrap}.association-home .nav{justify-content:center}}
@media(max-width:760px){.association-hero{height:auto;padding-top:58px;padding-bottom:58px;gap:32px}.association-hero .association-hero-media{min-height:380px;width:100%;max-width:400px;padding:22px}.association-brand-emblem{width:220px;height:220px;margin:18px auto 14px}.association-brand-emblem img{width:220px;height:220px}.association-home .header .brand img{width:42px;height:42px}.association-home .header .brand-name{font-size:.86rem}.association-home .header .brand-tag{font-size:.6rem}.association-home .review-bar{font-size:10px}.association-home .actions .btn{padding:8px 10px;font-size:.7rem}.association-media-copy b{font-size:33px}.association-hero .association-hero-copy h1{font-size:52px}.association-home .header.menu-open .nav>li>a{font-size:.9rem;padding:10px}.association-home .header-inner{gap:8px}}
@media(max-width:460px){.association-home .header .brand-name{font-size:.77rem}.association-home .header .brand img{width:36px;height:36px}.association-home .header .brand{gap:5px}.association-home .actions{gap:5px}.association-home .actions .btn{padding:8px 7px;font-size:.64rem}.association-home .header .menu-toggle{width:30px}.association-home .header-inner{gap:5px}}
@media(max-width:380px){.association-hero .association-hero-copy h1{font-size:47px}.association-hero .association-hero-media{min-height:355px}.association-brand-emblem{width:200px;height:200px}.association-brand-emblem img{width:200px;height:200px}.association-media-copy b{font-size:31px}.association-home .header .brand-name{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.association-card-link svg{transition:none}.association-hero-media:hover .association-card-link svg{transform:none}}
