:root{--paper:#faf7f1;--card:#fff;--sand:#f0eade;--navy:#12324a;--navy-deep:#0d2536;--teal:#0f7d84;--teal-dark:#0a5c61;--teal-soft:#e5f2f0;--coral:#e8663c;--coral-dark:#d4552c;--coral-soft:#fdeee7;--aqua:#7fd4d9;--text:#2b3a45;--dim:#66757f;--line:#e3ddd0;--line-soft:#eee9dd;--r:18px;--r-lg:26px;--r-pill:999px;--shadow:0 2px 24px #12324a14;--shadow-lift:0 12px 36px #12324a24;--disp:"Outfit",sans-serif;--body:"Source Sans 3",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65}img{max-width:100%}a{color:var(--teal);text-decoration:none}a:hover{color:var(--teal-dark)}h1,h2,h3,h4{font-family:var(--disp);color:var(--navy);letter-spacing:-.015em;line-height:1.12}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}.wrap-n{max-width:880px;margin:0 auto;padding:0 28px}.nav{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#faf7f1eb;position:sticky;top:0}.nav-in{justify-content:space-between;align-items:center;gap:16px;height:100px;display:flex}.nav-brand{color:inherit;align-items:center;gap:11px;display:flex}.nav-brand img{width:auto;height:70px}.nav-brand .nb-name{font-family:var(--disp);color:var(--navy);font-size:22px;font-weight:700;line-height:1.2}.nav-links{align-items:center;gap:24px;display:flex}.nav-links a{color:var(--dim);font-size:15px;font-weight:600;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--navy)}.nav-links a.btn-nav{background:var(--coral);color:#fff;border-radius:var(--r-pill);padding:10px 22px;box-shadow:0 4px 14px #e8663c47}.nav-links a.btn-nav:hover{background:var(--coral-dark)}.nav-burger{cursor:pointer;background:0 0;border:0;padding:8px;display:none}.nav-burger span{background:var(--navy);border-radius:2px;width:22px;height:2px;margin:5px 0;display:block}@media (width<=1020px){.nav-links{display:none}.nav-links.open{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lift);flex-direction:column;align-items:flex-start;padding:20px 28px 26px;display:flex;position:absolute;top:100px;left:0;right:0}.nav-burger{display:block}}.band{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:64px 0 56px}.band .eyebrow{color:var(--aqua)}.band h1{color:#fff;font-size:clamp(34px,4vw,52px);font-weight:800}.band .sub{color:#b8c6d1;max-width:60ch;margin-top:14px;font-size:18.5px}.eyebrow{font-family:var(--disp);letter-spacing:.16em;text-transform:uppercase;color:var(--coral);margin-bottom:12px;font-size:13.5px;font-weight:700}.btn{font-family:var(--disp);border-radius:var(--r-pill);cursor:pointer;text-align:center;border:0;padding:14px 30px;font-size:16px;font-weight:600;transition:all .22s;display:inline-block}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 6px 18px #0f7d8447}.btn-primary:hover{background:var(--teal-dark);color:#fff;transform:translateY(-1px)}.btn-coral{background:var(--coral);color:#fff;box-shadow:0 6px 18px #e8663c47}.btn-coral:hover{background:var(--coral-dark);color:#fff;transform:translateY(-1px)}.btn-soft{color:var(--navy);border:1.5px solid var(--line);background:#fff}.btn-soft:hover{border-color:var(--teal);color:var(--teal)}.btn-ghost-light{color:#fff;background:0 0;border:1.5px solid #fff6}.btn-ghost-light:hover{color:#fff;border-color:#fff}.btn-danger{color:#b3362a;background:#fff;border:1.5px solid #e5b8b3}.btn-danger:hover{color:#fff;background:#b3362a;border-color:#b3362a}.btn-sm{padding:9px 20px;font-size:14px}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.card-pad{padding:28px}.grid3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.grid2{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}@media (width<=960px){.grid3,.grid2{grid-template-columns:1fr}}.tile{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:inherit;flex-direction:column;padding:26px 24px;transition:transform .2s,box-shadow .2s;display:flex}.tile:hover{box-shadow:var(--shadow-lift);color:inherit;transform:translateY(-3px)}.tile .t-region{font-family:var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-size:12px;font-weight:700}.tile h3{margin:8px 0;font-size:20px;font-weight:700}.tile p{color:var(--dim);flex:1;font-size:15.5px}.tile .t-city{letter-spacing:.08em;text-transform:uppercase;color:#98a4ac;margin-top:14px;font-size:13px;font-weight:600}.badges{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.badge{font-family:var(--disp);border-radius:var(--r-pill);padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-block}.badge-teal{background:var(--teal-soft);color:var(--teal-dark)}.badge-coral{background:var(--coral-soft);color:var(--coral-dark)}.badge-sand{background:var(--sand);color:var(--dim)}.badge-navy{color:var(--navy);background:#e7edf3}.section{padding:72px 0}.sec-title{font-size:clamp(26px,2.6vw,36px);font-weight:800}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px;display:flex}.seemore{font-family:var(--disp);font-size:15px;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin:34px 0 30px;display:flex}.toolbar .count{font-family:var(--disp);letter-spacing:.1em;text-transform:uppercase;color:#98a4ac;font-size:13.5px;font-weight:600}.toolbar .spacer{flex:1}select,input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=tel],input[type=datetime-local],textarea{font-family:var(--body);color:var(--text);border:1.5px solid var(--line);background:#fff;border-radius:12px;outline:none;padding:11px 14px;font-size:15.5px;transition:border-color .2s}select:focus,input:focus,textarea:focus{border-color:var(--teal)}textarea{resize:vertical;width:100%;min-height:110px}label{font-family:var(--disp);color:var(--navy);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.field{margin-bottom:18px}.form-note{color:var(--dim);font-size:14px}.err{color:#b3362a;background:#fbeae7;border:1px solid #efc4bd;border-radius:12px;margin-bottom:18px;padding:12px 16px;font-size:15px}.ok{color:#1e6b47;background:#e8f4ee;border:1px solid #bfdfcd;border-radius:12px;margin-bottom:18px;padding:12px 16px;font-size:15px}.map-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}.map-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:22px 28px;display:flex}.map-head h3{font-size:20px}.map-el{width:100%;height:480px}.leaflet-container{font-family:var(--body)}.map-legend{border-top:1px solid var(--line);color:var(--dim);flex-wrap:wrap;gap:18px;padding:14px 28px;font-size:14px;display:flex}.dotk{vertical-align:-1px;border-radius:50%;width:11px;height:11px;margin-right:7px;display:inline-block}.stats-band{background:var(--navy);color:#fff;padding:56px 0}.stats-grid{text-align:center;grid-template-columns:repeat(4,1fr);gap:28px;display:grid}@media (width<=820px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-n{font-family:var(--disp);color:var(--aqua);font-size:48px;font-weight:800}.stat-l{letter-spacing:.12em;text-transform:uppercase;color:#b8c6d1;margin-top:2px;font-size:13px;font-weight:600}.event-row{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:inherit;align-items:center;gap:22px;padding:22px 26px;transition:transform .2s,box-shadow .2s;display:flex}.event-row:hover{box-shadow:var(--shadow-lift);color:inherit;transform:translateY(-2px)}.date-chip{text-align:center;background:var(--teal-soft);border-radius:14px;flex:none;width:74px;padding:10px 4px}.date-chip .mo{font-family:var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dark);font-size:12px;font-weight:700}.date-chip .da{font-family:var(--disp);color:var(--navy);font-size:27px;font-weight:800;line-height:1.05}.event-row .e-title{font-family:var(--disp);color:var(--navy);font-size:18.5px;font-weight:700}.event-row .e-meta{color:var(--dim);margin-top:3px;font-size:14.5px}.empty{border:1.5px dashed var(--line);border-radius:var(--r);text-align:center;background:#fffdf8;padding:48px 32px}.empty h3{margin-bottom:8px;font-size:20px}.empty p{color:var(--dim);max-width:48ch;margin:0 auto 20px}.notice{border-radius:var(--r);color:#6b5518;background:#fff8e8;border:1px solid #eddfb9;padding:18px 24px;font-size:15.5px}.notice a{font-weight:600}.footer{background:var(--navy);color:#b8c6d1;margin-top:88px}.footer a{color:var(--aqua)}.footer a:hover{color:#fff}.foot-grid{grid-template-columns:1.3fr 1fr 1fr;gap:48px;padding:64px 0 48px;display:grid}@media (width<=860px){.foot-grid{grid-template-columns:1fr}}.foot-about{max-width:40ch;font-size:15px}.foot-h{font-family:var(--disp);letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:16px;font-size:14px;font-weight:700}.foot-grid ul{list-style:none}.foot-grid li{margin-bottom:10px;font-size:15.5px}.foot-bottom{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:22px 0;font-size:14px;display:flex}.foot-motto{font-family:var(--disp);letter-spacing:.1em;text-transform:uppercase;color:var(--aqua);font-size:12.5px;font-weight:600}.tabs{flex-wrap:wrap;gap:10px;margin-bottom:30px;display:flex}.tab{font-family:var(--disp);border-radius:var(--r-pill);border:1.5px solid var(--line);color:var(--dim);cursor:pointer;background:#fff;padding:10px 22px;font-size:14.5px;font-weight:600;transition:all .2s}.tab:hover{color:var(--navy)}.tab.active{background:var(--navy);border-color:var(--navy);color:#fff}.ltable{border-collapse:collapse;width:100%}.ltable th{font-family:var(--disp);letter-spacing:.1em;text-transform:uppercase;color:#98a4ac;text-align:left;border-bottom:1.5px solid var(--line);padding:14px 18px;font-size:12.5px;font-weight:700}.ltable td{border-bottom:1px solid var(--line-soft);padding:16px 18px;font-size:15.5px}.ltable tr:last-child td{border-bottom:0}.ltable .num{font-family:var(--disp);color:var(--navy);text-align:right;font-weight:700}.ltable th.num{text-align:right}.rank{font-family:var(--disp);color:#c3ccd2;width:40px;font-size:15px;font-weight:800}tr.top3 .rank{color:var(--coral)}.auth-wrap{max-width:460px;margin:64px auto;padding:0 24px}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:40px 38px}.auth-card h1{margin-bottom:6px;font-size:27px}.auth-card .sub{color:var(--dim);margin-bottom:26px;font-size:15.5px}.auth-alt{text-align:center;color:var(--dim);margin-top:22px;font-size:15px}.detail-band{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:56px 0 48px}.detail-band h1{color:#fff;font-size:clamp(30px,3.4vw,44px);font-weight:800}.detail-band .sub{color:#b8c6d1;max-width:64ch;margin-top:12px;font-size:17px}.detail-band .cta-row{flex-wrap:wrap;gap:14px;margin-top:26px;display:flex}.meta-row{color:#8fb3c9;flex-wrap:wrap;gap:20px;margin-top:16px;font-size:14.5px;display:flex}.meta-row a{color:var(--aqua)}.muted{color:var(--dim)}.mt8{margin-top:8px}.mt16{margin-top:16px}.mt24{margin-top:24px}.mt32{margin-top:32px}.mt48{margin-top:48px}.mb16{margin-bottom:16px}.mb24{margin-bottom:24px}.mb32{margin-bottom:32px}.center{text-align:center}.prose{max-width:72ch;font-size:17px}.prose h2{margin:36px 0 12px;font-size:24px}.prose h3{margin:26px 0 10px;font-size:19px}.prose p{margin-bottom:16px}.prose ul{margin:0 0 16px 22px}.prose li{margin-bottom:8px}.spin{border:3px solid var(--line);border-top-color:var(--teal);border-radius:50%;width:22px;height:22px;margin:40px auto;animation:1s linear infinite sp;display:block}@keyframes sp{to{transform:rotate(360deg)}}.home-hero{padding-top:64px}.hh-grid{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.hh-eyebrow{background:var(--teal-soft);color:var(--teal-dark);border-radius:var(--r-pill);align-items:center;gap:8px;margin-bottom:26px;padding:8px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.hh-eyebrow .dot{background:var(--teal);border-radius:50%;width:8px;height:8px}.hh-copy h1{font-size:clamp(38px,4.2vw,58px);font-weight:800;line-height:1.05}.hh-copy .hl{color:var(--teal)}.hh-copy .lede{color:var(--dim);max-width:46ch;margin-top:22px;font-size:19px}.hh-cta{flex-wrap:wrap;gap:16px;margin-top:36px;display:flex}.art-card{border-radius:28px;position:relative;overflow:hidden;box-shadow:0 24px 60px #12324a2e}.art-card img{width:100%;height:auto;display:block}.art-card .credit{color:#fff;background:linear-gradient(#0000,#0a141ec7);padding:44px 24px 18px;font-size:14px;position:absolute;bottom:0;left:0;right:0}.art-card .credit b{font-family:var(--disp);font-weight:600}.art-card .credit a{color:#ffd9a8;text-underline-offset:3px;text-decoration:underline}.wave{width:100%;height:70px;margin-top:60px;display:block}.mission-grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:64px;display:grid}.mission-grid p{color:var(--dim);font-size:17.5px}.mission-grid strong{color:var(--navy)}.hw-icon{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:18px;font-size:24px;display:flex}.hw-icon.i1{background:var(--teal-soft)}.hw-icon.i2{background:var(--coral-soft)}.hw-icon.i3{background:#eef0fa}.hw-who{letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-size:12.5px;font-weight:700}.card h3{margin:8px 0 10px;font-size:21px}.cta-band{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-dark) 100%);border-radius:28px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:56px 64px;display:flex}.cta-band h2{color:#fff;font-size:32px;font-weight:800}.btn-white{color:var(--teal-dark);background:#fff}.btn-white:hover{background:var(--sand);color:var(--teal-dark)}@media (width<=960px){.hh-grid,.mission-grid{grid-template-columns:1fr}.cta-band{padding:40px}}.photo-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.photo-grid img{object-fit:cover;border:1px solid var(--line);border-radius:14px;width:100%;height:180px}@media (width<=860px){.photo-grid{grid-template-columns:repeat(2,1fr)}}
