:root{--d:#003399;--l:#00AEEF;--bg:#fff;--t:#10213f;--c:#f1f6fd;--m:#5b6b86;--card:#fff;--line:#dfe8f3;--shadow:0 12px 30px #00245c12;box-sizing:border-box}
@media (prefers-color-scheme:dark){:root{--bg:#0a1330;--t:#e8eefc;--c:#111d42;--m:#9fb0d3;--card:#142344;--line:#ffffff18;--shadow:0 14px 34px #0005}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--bg);color:var(--t);font:16px/1.65 Poppins,system-ui,sans-serif}
a{color:var(--l)}h1,h2,h3{line-height:1.2;margin:0 0 .5em}
nav{position:sticky;top:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:10px 5%;background:var(--bg);border-bottom:1px solid #8883;box-shadow:0 8px 24px #001a5c12}
nav::after{content:"";position:absolute;bottom:0;left:5%;width:90%;height:2px;background:linear-gradient(90deg,transparent,var(--l),var(--d),transparent)}
.logo{display:flex;flex:0 0 auto;align-items:center;width:clamp(90px,11vw,130px);text-decoration:none}
.nav-logo-image{display:block;width:100%;height:auto;max-height:48px;object-fit:contain}
nav .nav-links{display:flex;flex:1;align-items:center;justify-content:center;gap:clamp(14px,2vw,26px)}
nav .nav-links>a,nav .nav-menu summary{color:var(--t);font-size:14px;font-weight:600;letter-spacing:.1px;white-space:nowrap;text-decoration:none;cursor:pointer}
nav .nav-menu{position:relative}
nav .nav-menu summary{list-style:none}
nav .nav-menu summary::-webkit-details-marker{display:none}
nav .nav-menu summary::after{content:"⌄";display:inline-block;margin-left:6px;color:var(--m);font-size:12px;transition:transform .2s}
nav .nav-menu[open] summary::after{transform:rotate(180deg)}
nav .nav-menu summary:hover,nav .nav-links>a:hover{color:var(--l)}
nav .nav-menu:focus-within summary,nav .nav-links>a:focus-visible{color:var(--l)}
nav .nav-sub{position:absolute;top:100%;left:-14px;z-index:10;min-width:190px;display:grid;gap:0;padding:8px;background:var(--bg);border:1px solid #8884;border-radius:12px;box-shadow:0 12px 28px #001a5c25}
nav .programs-menu .nav-sub{min-width:280px;max-width:calc(100vw - 32px)}
nav .programs-menu .nav-sub a{white-space:normal}
nav .nav-menu:not([open])>.nav-sub{display:none}
nav .nav-menu:hover>.nav-sub,nav .nav-menu:focus-within>.nav-sub{display:grid}
nav .nav-sub a{padding:9px 12px;border-radius:8px;color:var(--t);font-size:14px;text-decoration:none;white-space:nowrap}
nav .nav-sub a:hover,nav .nav-sub a:focus-visible{background:var(--c)}
.nav-join{padding:9px 16px;border:0;border-radius:24px;background:var(--d);color:#fff;font:600 14px Poppins,system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.nav-join:hover{background:#0055b3;box-shadow:0 6px 16px #00339935}
.nav-clock{display:flex;flex:0 0 auto;align-items:center;gap:8px;margin-left:auto;padding:7px 12px;border:1px solid #d6e1f1;border-radius:12px;background:var(--c);color:var(--d);font-size:12px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.nav-clock-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#18a66a;box-shadow:0 0 0 3px #18a66a22}
@media (prefers-color-scheme:dark){.nav-clock{border-color:#ffffff2b;color:#e4eeff}.nav-clock-dot{box-shadow:0 0 0 3px #18a66a35}}
nav a:focus-visible,nav summary:focus-visible,.nav-join:focus-visible{outline:3px solid var(--l);outline-offset:3px}
.par{background-attachment:fixed;background-size:cover;background-position:center;color:#fff}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;justify-content:space-between;gap:0;padding:64px 0 64px 5%;background-image:radial-gradient(circle at 80% 20%,#00AEEF99,transparent 45%),radial-gradient(circle at 10% 90%,#0055ff66,transparent 50%),linear-gradient(135deg,#001a5c,#003399 60%,#0072c6)}
.hero-copy{flex:1 1 48%;min-width:0}
.hero h1{font-size:clamp(32px,4.6vw,60px);font-weight:800;max-width:720px}.hero p{max-width:620px;font-size:18px;opacity:.92}
.hero .hero-subtitle{margin:-6px 0 14px;font-size:clamp(20px,2.4vw,28px);font-weight:600;opacity:1}
.hero-image{display:block;flex:0 1 52%;width:52%;height:auto;max-height:78vh;object-fit:contain;border:0;border-radius:0;box-shadow:none;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 18%);mask-image:linear-gradient(to right,transparent 0%,#000 18%)}
.btn{display:inline-block;padding:12px 26px;border-radius:30px;background:var(--l);color:#fff;text-decoration:none;font:600 16px Poppins,sans-serif;border:0;cursor:pointer;margin:6px 8px 0 0}.btn.o{background:none;border:2px solid #fff}
section{padding:90px 5%;max-width:1200px;margin:auto}.wide{max-width:none;background:var(--c)}.wide>.in{max-width:1200px;margin:auto}
.k{color:var(--l);font-weight:600;letter-spacing:2px;font-size:13px;text-transform:uppercase}h2{font-size:clamp(26px,4vw,40px);color:var(--d)}
@media (prefers-color-scheme:dark){h2{color:#fff}}
.g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}
.card{background:var(--c);border-radius:18px;padding:26px;transition:.3s}.card:hover{transform:translateY(-6px);box-shadow:0 14px 30px #0033992a}
.programs-marquee{overflow:hidden;background:var(--d);color:#fff}
.programs-marquee p{display:inline-block;margin:0;padding:8px 0 8px 100vw;white-space:nowrap;font-weight:600;animation:programs-marquee 18s linear infinite}
.programs-marquee:hover p{animation-play-state:paused}
@keyframes programs-marquee{to{transform:translateX(-100%)}}
.programs-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:24px}
.programs-list ul{margin:0;padding-left:1.2em;color:var(--m)}
.programs-list li{margin:.45em 0;padding-left:2px}
.opportunity-intro,.approach-intro{max-width:820px;color:var(--m)}
.opportunity-grid,.process-grid,.stewardship-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:24px}
.opportunity-listings{margin-top:26px}
.opportunity-listing h3{margin:12px 0 6px}
.opportunity-listing p{white-space:pre-line}
.opportunity-provider{color:var(--m);font-weight:600}
.opportunity-listing .btn{display:inline-block;margin-top:8px;text-decoration:none}
.step-number{display:inline-grid;place-items:center;width:42px;height:42px;margin-bottom:16px;border-radius:13px;background:#00AEEF1a;color:var(--d);font-size:14px;font-weight:800;letter-spacing:.5px}
.opportunity-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:26px;padding:20px 24px;border:1px solid #00AEEF35;border-radius:16px;background:var(--bg);color:var(--t)}
.opportunity-cta .btn{flex:0 0 auto}
.stewardship-grid a{font-weight:600;text-decoration:none}
.stewardship-grid a:hover{text-decoration:underline}
.ic{width:48px;height:48px;border-radius:12px;background:#e4f1fb;color:var(--d);display:grid;place-items:center;margin-bottom:14px}
.ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-color-scheme:dark){.ic{background:#16294e;color:#8cdbff}}
.contact-card>svg{width:22px;height:22px;margin:0 8px -5px 0;fill:none;stroke:var(--d);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-color-scheme:dark){.contact-card>svg{stroke:#8cdbff}}
.band{padding:120px 6%;text-align:center;background-image:linear-gradient(#001a5cd9,#003399cc),repeating-linear-gradient(45deg,#00AEEF 0 2px,transparent 2px 40px)}
.band q{font-size:clamp(22px,3.5vw,38px);font-weight:600;max-width:900px;display:block;margin:auto}
.post{border-radius:18px;overflow:hidden;background:var(--c);display:flex;flex-direction:column;color:inherit;text-decoration:none;cursor:pointer;transition:.3s}.post:hover{transform:translateY(-6px);box-shadow:0 14px 30px #0033992a}
.post:focus-visible,.post-back:focus-visible{outline:3px solid var(--l);outline-offset:4px}
.post-detail{max-width:1000px;margin:0 auto;padding:32px 6% 64px;min-height:60vh}
.post-detail-content{margin-top:22px;padding:clamp(20px,4vw,42px);border-radius:18px;background:var(--c)}
.post-detail-content h1{margin:14px 0;color:var(--d);font-size:clamp(28px,5vw,46px);line-height:1.2}
@media (prefers-color-scheme:dark){.post-detail-content h1{color:#fff}}
.post-back{display:inline-block;color:var(--d);font-weight:600;text-decoration:none}
@media (prefers-color-scheme:dark){.post-back{color:#8cdbff}}
.post-back:hover{text-decoration:underline}
.post-detail-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;margin:22px 0}
.post-detail-images img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:12px;background:var(--bg)}
.post-detail-body{color:var(--m);font-size:16px;line-height:1.8;white-space:pre-line}
.post-detail-content>.btn{display:inline-block;margin-top:24px;text-decoration:none}
body.post-detail-open>:not(nav):not(#post-detail){display:none!important}
.post .im{display:block;width:100%;height:220px;object-fit:cover;object-position:center;background:linear-gradient(135deg,var(--d),var(--l))}.post .bd{padding:18px;flex:1}
.post-subtitle{margin:5px 0 8px;color:var(--m);font-size:14px;font-weight:600;line-height:1.45}
.team-card{overflow:hidden;padding:0}
.team-card .team-photo-wrap{display:grid;place-items:center;padding:26px 20px 0}
.team-card .team-photo{display:block;width:clamp(112px,16vw,156px);aspect-ratio:1;border-radius:50%;object-fit:cover;object-position:50% 25%;background:var(--c);border:4px solid #fff;box-shadow:0 5px 20px #0033992a}
.team-card .team-info{padding:18px 22px 24px;text-align:center}
.team-card .team-role{margin:-4px 0 10px;color:var(--l);font-weight:600}
.team-card .team-bio{margin:0;color:var(--m);white-space:pre-line}
.partner-logo{display:grid;place-items:center;width:clamp(140px,18vw,220px);height:120px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
.partner-logo img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}
#partnerList .partner-logo img{transform:none;transition:none}
#partnerList .partner-logo:hover img,#partnerList .partner-logo:focus-visible img{transform:none}
#partnerList{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:clamp(12px,2vw,24px);overflow-x:auto;padding:8px 2px 14px}
#partnerList>.partner-logo{flex:0 0 clamp(120px,14vw,180px);width:clamp(120px,14vw,180px)}
#partnerList a:focus-visible{outline:3px solid var(--l);outline-offset:5px}
.tag{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;background:var(--l);color:#fff;text-transform:uppercase}.dt{font-size:12px;color:var(--m);margin-left:6px}
.post p{color:var(--m);font-size:14px}.empty{color:var(--m)}
.gal{columns:3 220px;gap:14px}.gal img{width:100%;display:block;margin-bottom:14px;border-radius:14px;cursor:zoom-in;transition:.4s}.gal img[hidden]{display:none}.gal img:hover{transform:scale(1.03)}
.tl{border-left:3px solid var(--l);padding-left:22px;margin-left:8px}.tl div{margin-bottom:26px;position:relative}.tl div:before{content:"";position:absolute;left:-30px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--d);border:3px solid var(--l)}
.rv{opacity:0;transform:translateY(40px);transition:opacity 1.2s ease,transform 1.2s ease}.rv.v{opacity:1;transform:none}
form.fm{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.fm .full{grid-column:1/-1}
input,textarea,select{padding:12px;border-radius:10px;border:1px solid #8886;background:var(--bg);color:var(--t);font:inherit;width:100%}
.hp{position:absolute;left:-9999px}.msg{font-size:14px;margin-left:10px}.msg.ok{color:#14a44d}.msg.er{color:#d33}
.site-footer{padding:0;background:#174487;color:#fff;text-align:left}
.footer-main{padding:54px 5% 42px;background:linear-gradient(115deg,#194a8e,#123b78)}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.15fr;gap:clamp(28px,5vw,72px);max-width:1200px;margin:auto}
.footer-brand>a{display:inline-flex;width:150px;padding:6px 10px;border-radius:8px;background:#fff}
.footer-brand img{display:block;width:100%;height:auto}
.footer-brand p{max-width:290px;margin:16px 0 0;color:#d7e5fb;font-size:14px}
.footer-column h2{margin:0 0 20px;color:#fff;font-size:17px;font-weight:700}
.footer-column h2::after{content:"";display:block;width:30px;height:2px;margin-top:12px;background:#54b9f2}
.footer-column ul{display:grid;gap:0;margin:0;padding:0;list-style:none}
.footer-column li{padding:0 0 12px;margin:0 0 12px;border-bottom:1px solid #ffffff26;color:#e0ebfa;font-size:14px}
.footer-column li span{margin-right:10px;color:#83d2ff}
.footer-column a{color:#e0ebfa;text-decoration:none}
.footer-column a:hover,.footer-bottom a:hover{color:#8cdbff;text-decoration:underline}
.footer-involved p{margin:0 0 18px;color:#d7e5fb;font-size:14px}
.footer-join{padding:10px 15px;border:1px solid #ffffff80;border-radius:8px;background:#fff;color:#174487;font:600 14px Poppins,system-ui,sans-serif;cursor:pointer}
.footer-join:hover{background:#dff3ff}
.footer-join span{margin-left:8px}
.footer-bottom{padding:17px 5%;background:#102e5c;color:#d7e5fb;font-size:13px}
.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:auto}
.footer-bottom a{color:#d7e5fb;text-decoration:none}
#lb{position:fixed;inset:0;background:#000e;display:none;place-items:center;z-index:30}#lb.on{display:grid}#lb img{max-width:94%;max-height:92%;border-radius:10px}
.join-dialog{width:min(850px,calc(100% - 28px));max-height:92vh;overflow:auto;padding:clamp(20px,4vw,36px);border:1px solid #8885;border-radius:22px;background:var(--bg);color:var(--t);box-shadow:0 24px 80px #001a5c66}
.join-dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}
.join-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.join-dialog-head h2{margin:.35em 0}
.join-dialog .close-join{width:42px;height:42px;flex:0 0 42px;border:0;border-radius:50%;background:var(--c);color:var(--t);font-size:28px;line-height:1;cursor:pointer}
.join-intro{max-width:700px;color:var(--m)}
.join-dialog .card{margin-top:18px;border:1px solid #8883}
.consent{display:flex;align-items:flex-start;gap:9px}
.consent input{width:auto;margin-top:6px}
#gallery .gal{margin-top:20px}
#gallery #galleryMore{margin-top:10px}
@media (max-width:900px){nav{flex-wrap:wrap;align-items:center}.nav-links{order:3;flex:1 0 100%;flex-wrap:wrap;gap:10px 16px}}
@media (max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}}
@media (max-width:700px){.opportunity-cta{align-items:flex-start;flex-direction:column;gap:8px;padding:18px}.opportunity-cta .btn{margin-top:8px}}
@media (max-width:900px){nav .programs-menu .nav-sub{width:min(280px,calc(100vw - 32px));min-width:0}}
@media (max-width:700px){nav{gap:8px 16px}.nav-links{padding-bottom:4px}.nav-clock{margin-left:auto}.join-dialog .fm{grid-template-columns:1fr}}
@media (max-width:700px){.footer-main{padding:42px 6% 32px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand p{max-width:none}.footer-bottom{padding:16px 6%}.footer-bottom-inner{flex-direction:column;align-items:flex-start;gap:8px}}
@media (max-width:700px){nav .programs-menu .nav-sub{left:auto;right:-14px}}
@media (max-width:700px){.nav-logo-image{max-height:40px}.par{background-attachment:scroll}.hero{min-height:auto;flex-direction:column;align-items:stretch;padding:48px 0 0}.hero-copy{padding:0 5% 36px}.hero-image{width:100%;max-height:none;flex:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%)}#partnerList{gap:18px}.partner-logo{width:clamp(120px,38vw,180px);height:100px}section{padding:60px 5%}}
nav{background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(14px)}
nav::after{height:1px;opacity:.65}
nav .nav-links>a,nav .nav-menu summary{transition:color .18s ease}
nav .nav-links>a:hover,nav .nav-menu summary:hover{color:var(--l)}
nav .nav-sub{border-color:var(--line);box-shadow:var(--shadow)}
.nav-join{box-shadow:0 6px 16px #00339924;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.nav-join:hover{transform:translateY(-1px)}
.hero{min-height:min(82vh,780px);overflow:hidden;isolation:isolate;background-image:radial-gradient(ellipse at 78% 18%,#00AEEF66,transparent 38%),radial-gradient(ellipse at 8% 95%,#0055ff55,transparent 48%),linear-gradient(120deg,#061d50 0%,#003399 55%,#075ca4 100%)}
.hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(#ffffff20 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent 5%,#000 100%);opacity:.24}
.hero-copy{position:relative;z-index:1;flex-basis:50%;padding:18px 0}
.hero h1{max-width:660px;font-size:clamp(38px,4.4vw,58px);letter-spacing:-1.7px;line-height:1.08;text-wrap:balance}
.hero .hero-subtitle{color:#bcecff;letter-spacing:.2px}
.hero-copy>p:not(.hero-subtitle){max-width:540px;color:#e5efff;font-size:17px;line-height:1.8}
.hero-image{position:relative;z-index:1;flex-basis:50%;width:50%;max-height:70vh;object-fit:cover;object-position:center;border-radius:26px 0 0 26px;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%);mask-image:linear-gradient(90deg,transparent 0%,#000 18%)}
.btn{padding:12px 23px;border-radius:10px;background:#0079ae;box-shadow:0 8px 18px #00339922;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px #00339935;background:#006793}
.btn:focus-visible{outline:3px solid #42c8f2;outline-offset:3px}
.btn.o{box-shadow:inset 0 0 0 1px #ffffff75}
.programs-marquee{background:#062b78;border-bottom:1px solid #ffffff24}
.programs-marquee p{padding-top:10px;padding-bottom:10px;letter-spacing:.25px}
section{padding-top:76px;padding-bottom:76px}
section>h2,.wide .in>h2{margin:8px 0 22px;font-size:clamp(30px,4vw,42px);letter-spacing:-1px}
section>h2::after,.wide .in>h2::after{content:"";display:block;width:48px;height:4px;margin-top:14px;border-radius:4px;background:linear-gradient(90deg,var(--l),#5bc6ee)}
.k{display:inline-flex;align-items:center;padding:5px 11px;border:1px solid #00aeef27;border-radius:999px;background:#00aeef0d;color:#007db4;font-size:11px;letter-spacing:1.5px}
@media (prefers-color-scheme:dark){.k{color:#8cdbff;background:#00aeef12;border-color:#00aeef30}}
.wide{background:linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 72%,var(--bg)))}
#about{position:relative}
#about>div:first-child>p{color:var(--m);font-size:17px;line-height:1.85}
.g3{gap:20px}
.card{position:relative;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 4px 14px #00245c08;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.card:hover{transform:translateY(-4px);border-color:#00aeef55;box-shadow:var(--shadow)}
.card h3{letter-spacing:-.25px}
.programs-list{margin-top:30px}
.programs-list .card{padding:28px}
.programs-list li::marker{color:var(--l)}
.opportunity-intro,.approach-intro{font-size:16px;line-height:1.8}
.opportunity-listing{border-top:3px solid var(--l)}
.opportunity-cta{border-color:#00aeef38;border-radius:14px;box-shadow:0 6px 20px #00245c0b}
.band{position:relative;overflow:hidden;padding-top:100px;padding-bottom:100px;background-image:radial-gradient(ellipse at 15% 100%,#00aeef38,transparent 45%),linear-gradient(120deg,#061d50,#003399 70%,#075ca4)}
.band::before,.band::after{content:"";position:absolute;width:230px;height:230px;border:1px solid #ffffff20;border-radius:50%;pointer-events:none}
.band::before{top:-155px;right:12%}
.band::after{bottom:-170px;left:10%}
.band q{position:relative;z-index:1;text-wrap:balance}
.post{border:1px solid var(--line);box-shadow:0 5px 16px #00245c0b}
.post:hover{transform:translateY(-5px);border-color:#00aeef55;box-shadow:var(--shadow)}
.post .im{height:235px;transition:transform .35s ease}
.post:hover .im{transform:scale(1.025)}
.post .bd{padding:22px}
.post h3{font-size:19px}
.post p{line-height:1.75}
.tag{background:#e6f5fc;color:#075285;font-size:10px;letter-spacing:.55px}
@media (prefers-color-scheme:dark){.tag{background:#163653;color:#9cdeff}}
.team-card .team-photo{border-color:var(--card);box-shadow:0 5px 18px #0033991c}
.team-card .team-info{padding-top:20px}
.partner-logo{transition:opacity .18s ease}
#partnerList a:hover{opacity:.78}
#gallery .gal img{border-radius:14px;box-shadow:0 6px 18px #00245c15}
#gallery #galleryMore{padding:10px 20px}
.site-footer{background:#071d47}
.footer-main{background:radial-gradient(ellipse at 90% 0%,#00aeef26,transparent 38%),linear-gradient(115deg,#123b78,#0c2a5d)}
.footer-bottom{background:#071b40}
input,textarea,select{border-color:var(--line);border-radius:9px}
input:focus,textarea:focus,select:focus{outline:3px solid #00aeef38;border-color:var(--l)}
.contact-section{max-width:none;padding:clamp(54px,8vw,92px) 5%;background:linear-gradient(135deg,#edf5fc,#f8fbff 58%,#eaf4fb)}
.contact-inner{max-width:1120px;margin:0 auto}
.contact-heading{max-width:720px;margin:0 0 34px;text-align:left}
.contact-heading h2{margin:12px 0;font-size:clamp(30px,4vw,44px);letter-spacing:-1px}
.contact-heading h2::after{content:"";display:block;width:52px;height:4px;margin-top:16px;border-radius:4px;background:linear-gradient(90deg,var(--l),#5bc6ee)}
.contact-heading>p{max-width:610px;color:#52647d;font-size:16px;line-height:1.8}
.contact-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:stretch;gap:24px}
.contact-details{display:grid;align-content:start;gap:12px;padding:22px;border-radius:18px;background:linear-gradient(155deg,#09295f,#063985 68%,#07529a);box-shadow:0 16px 36px #06275c2b}
.contact-card{display:flex;align-items:center;gap:14px;padding:14px 12px;border:1px solid #ffffff22;border-radius:12px;background:#ffffff0b;color:#fff}
.contact-location-card{align-items:flex-start}
.contact-location-card>div{flex:1}
.contact-location-card .contact-map{margin-top:12px;height:210px}
.contact-card .contact-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:11px;background:#ffffff17;color:#bcecff}
.contact-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-card>div{display:grid;gap:3px;min-width:0}
.contact-card b{font-size:14px}
.contact-card>div>span,.contact-email-link{color:#d5e6fb;font-size:14px;overflow-wrap:anywhere}
.contact-email-link{font-weight:600;text-decoration:none}
.contact-email-link:hover{text-decoration:underline}
.contact-map{height:245px;overflow:hidden;border:1px solid #ffffff36;border-radius:13px;background:#fff;box-shadow:0 5px 16px #001a4022}
.contact-map-caption{padding:9px 13px;background:#ffffff;color:#123b78;font-size:12px;font-weight:600;letter-spacing:.2px}
.contact-map iframe{display:block;width:100%;height:calc(100% - 36px);border:0}
.contact-note{margin:2px 2px 0;color:#d5e6fb;font-size:12px;line-height:1.6}
.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:17px;padding:clamp(22px,3.5vw,36px);border:1px solid #dfe8f3;border-radius:18px;background:#fff;box-shadow:0 16px 36px #06275c15}
.contact-form-heading{grid-column:1/-1;padding-bottom:4px}
.contact-form-heading h3{margin:0 0 4px;font-size:21px}
.contact-form-heading p{margin:0;color:#687991;font-size:13px}
.contact-form label{display:grid;gap:7px;color:#233b5e;font-size:13px;font-weight:600}
.contact-form label input,.contact-form label textarea{font-size:14px;font-weight:400}
.contact-form .contact-input{width:100%}
.contact-form textarea{resize:vertical;min-height:130px}
.contact-submit{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.contact-submit .msg{margin:0}
@media (prefers-color-scheme:dark){.contact-section{background:linear-gradient(135deg,#0c1833,#0a1330 58%,#102044)}.contact-heading>p{color:#b8c7de}.contact-form{border-color:#ffffff20;background:#142344}.contact-form-heading p{color:#b8c7de}.contact-form label{color:#e8eefc}.contact-form input,.contact-form textarea{background:#0b1530;color:#e8eefc}.contact-email-link{color:#d5e6fb}}
::selection{background:#00aeef38;color:var(--t)}
@media (max-width:900px){.hero{min-height:70vh}.hero h1{font-size:clamp(36px,5.5vw,54px)}}
@media (max-width:700px){section{padding-top:58px;padding-bottom:58px}.hero{min-height:auto;gap:16px;padding-top:42px}.hero-copy{padding:0 5% 8px}.hero h1{font-size:clamp(36px,10vw,50px);letter-spacing:-1.2px}.hero-copy>p:not(.hero-subtitle){font-size:16px}.hero-image{width:100%;max-height:none;max-height:56vh;flex:none;border-radius:22px 22px 0 0;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 15%);mask-image:linear-gradient(to bottom,transparent 0%,#000 15%)}.band{padding-top:74px;padding-bottom:74px}.post .im{height:220px}.contact-layout{grid-template-columns:1fr}.contact-heading{margin-bottom:26px}}
@media (max-width:500px){.contact-form{grid-template-columns:1fr}.contact-form .full,.contact-form-heading{grid-column:1}.contact-section{padding-right:5%;padding-left:5%}}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.programs-marquee p{padding-left:0;text-align:center;width:100%;animation:none}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
