:root{--navy:#003f87;--navy-dark:#002a5c;--red:#ce1126;--gold:#f2a900;--g2:#ffd25a;--bg:#f7f5f0;--ink:#1d2430;--muted:#5b6472;--line:#e4dfd3;--forest:#0d2a1e}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--navy)}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.site-header{background:var(--navy);color:#fff;border-bottom:4px solid var(--red);position:sticky;top:0;z-index:20}
.site-header .wrap{display:flex;align-items:center;gap:8px 18px;min-height:58px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.brand{color:#fff;font-weight:800;text-decoration:none;font-size:1.15rem}
.brand small{font-weight:500;opacity:.8;margin-left:6px;font-size:.8rem}
.site-header nav{display:flex;gap:2px;flex-wrap:wrap;flex:1}
.site-header nav a{color:#fff;text-decoration:none;padding:6px 10px;border-radius:8px;font-size:.95rem;opacity:.92}
.site-header nav a:hover{background:rgba(255,255,255,.14);opacity:1}
.site-header nav a.on{background:var(--gold);color:#1c1e21;font-weight:700;opacity:1}
.portal-link{color:#fff;border:1px solid rgba(255,255,255,.6);padding:4px 12px;border-radius:8px;text-decoration:none;font-size:.85rem}
.portal-link.scout-portal{margin-right:8px;background:rgba(206,17,38,.85);border-color:transparent}.portal-link.on{outline:2px solid #fff}
/* shared banner */
.tb-hero{position:relative;overflow:hidden;background:var(--forest);line-height:0;height:min(56.25vw,clamp(220px,24vw,340px))}
.tb-art{position:absolute;left:0;width:100%;top:50%;aspect-ratio:16/9;transform:translateY(-50%)}
@media(min-width:900px){.tb-art{transform:translateY(-52%)}}
.tb-bg{display:block;width:100%;height:100%}
.tb-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,16,30,.62) 0,rgba(6,16,30,.25) 22%,rgba(6,16,30,0) 40%)}
.tb-sun{position:absolute;left:75.39%;top:43.33%;width:31.25%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}
.tb-sun>*{position:absolute;inset:0;width:100%;height:100%;border-radius:50%}
.tb-glow{inset:12%!important;width:76%!important;height:76%!important;background:radial-gradient(circle,rgba(255,236,160,.6) 0,rgba(255,210,100,.25) 38%,rgba(255,200,90,0) 70%);mix-blend-mode:screen;animation:tbpulse 5s ease-in-out infinite}
.tb-rays{inset:-30%!important;width:160%!important;height:160%!important;background:repeating-conic-gradient(from 0deg,rgba(255,240,180,.18) 0 3deg,rgba(255,240,180,0) 3deg 15deg);-webkit-mask:radial-gradient(circle,#000 22%,transparent 60%);mask:radial-gradient(circle,#000 22%,transparent 60%);mix-blend-mode:screen;animation:tbspin 140s linear infinite,tbshimmer 5s ease-in-out infinite}
.tb-compass{border-radius:50%;mix-blend-mode:normal;animation:tbglint 5s ease-in-out infinite}
@keyframes tbpulse{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes tbspin{to{transform:rotate(360deg)}}
@keyframes tbshimmer{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes tbglint{0%,100%{filter:brightness(1) saturate(1)}50%{filter:brightness(1.14) saturate(1.12)}}
@media (prefers-reduced-motion:reduce){.tb-sun *{animation:none!important}}
/* page title band (changes per tab, banner stays) */
.pt{background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff;text-align:center;padding:26px 20px 30px;border-bottom:4px solid var(--gold)}
.pt .kick{display:inline-block;background:var(--gold);color:#1c1e21;font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:.75rem;padding:4px 12px;border-radius:999px}
.pt h1{margin:.3em 0 .1em;font-size:clamp(1.7rem,4vw,2.6rem)}
.pt p{margin:0 auto;max-width:720px;opacity:.92}
.btn{display:inline-block;margin:6px;padding:11px 24px;border-radius:999px;background:var(--gold);color:#1c1e21;font-weight:800;text-decoration:none;box-shadow:0 6px 18px rgba(242,169,0,.35);transition:transform .2s}
.btn:hover{transform:translateY(-3px)}
.btn.ghost{background:transparent;color:#fff;border:2px solid var(--gold);box-shadow:none}
.pt .btns{margin-top:12px}
.stats{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:1060px;margin:-18px auto 6px;padding:0 20px;position:relative;z-index:2}
.stat{background:#fff;border-top:4px solid var(--gold);border-radius:14px;padding:12px 20px;box-shadow:0 8px 24px rgba(0,42,92,.12);text-align:center;min-width:160px;flex:1 1 160px;max-width:240px}
.stat b{display:block;color:var(--navy);font-size:1.45rem}
.stat small{display:block;font-size:.76rem;color:var(--muted)}
.sec{max-width:1100px;margin:0 auto;padding:36px 20px}
.sec h2{text-align:center;color:var(--navy);font-size:1.9rem;margin:0 0 .2em}
.sec h2:after{content:"";display:block;width:70px;height:5px;margin:10px auto 0;border-radius:3px;background:var(--gold)}
.sub{text-align:center;color:var(--muted);margin:0 auto 24px;max-width:760px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}
.im.fut.photo{background-size:cover;background-position:center;min-height:170px;position:relative}.im.fut.photo .ic{position:absolute;right:12px;bottom:10px;font-size:1.6rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}.im.fut.photo .mo{position:relative;z-index:1}
.card{display:block;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(0,42,92,.12);text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s;position:relative}
a.card:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 18px 40px rgba(0,42,92,.25)}
.card .im{position:relative;aspect-ratio:16/7;display:flex;align-items:center;justify-content:center;font-size:3rem;line-height:1;background:linear-gradient(135deg,#0d2a1e,#1f5a3c 55%,#c98a1b)}
.card .im.k-oa{background:linear-gradient(135deg,#5a0f12,#a3262b 60%,#f2a900)}
.card .im.k-service{background:linear-gradient(135deg,#002a5c,#1d5fa8 60%,#7fc1ff)}
.card .im.k-hike{background:linear-gradient(135deg,#2c3b1d,#5f7d2f 55%,#e0b04a)}
.card .im.k-meet,.card .im.k-plc,.card .im.k-coh{background:linear-gradient(135deg,#002a5c,#003f87 60%,#f2a900)}
.card .im.k-district,.card .im.k-partner{background:linear-gradient(135deg,#3a3f47,#6b7480 60%,#d6cbb4)}
.card.tc .im.hero{aspect-ratio:16/10;align-items:flex-end;justify-content:flex-start;background-size:cover;background-position:center;overflow:hidden}
.card.tc .im.hero:not(.photo)::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.22),transparent 45%),repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px)}
.card.tc .im.hero:not(.photo)::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,20,45,.7))}
.card.tc .big{position:absolute;right:-6px;top:6px;font-size:6.5rem;opacity:.9;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));transform:rotate(-8deg);transition:transform .3s}
a.card.tc:hover .big{transform:rotate(0) scale(1.08)}
a.card.tc:hover .im.photo{background-size:110%}
.card.tc .cap{position:relative;z-index:2;padding:14px 18px;color:#fff;display:flex;flex-direction:column;gap:2px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.card.tc .cap .ic{font-size:1.6rem;line-height:1}
.card.tc .cap .kd{font-size:.72rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--gold)}
.card.tc .cap b{font-size:1.3rem;line-height:1.2}
.card.tc .mo{z-index:3}
.card.tc .bd{border-top:4px solid var(--gold)}
.card .mo{position:absolute;top:12px;left:12px;background:var(--gold);color:#1c1e21;font-weight:800;font-size:.75rem;padding:4px 12px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px}
.card .bd{padding:14px 20px 18px}
.card h3{margin:0 0 6px;color:var(--navy);font-size:1.12rem}
.card p{margin:0;color:var(--muted);font-size:.95rem}
.card .facts{margin-top:8px;font-size:.82rem;color:var(--muted)}
.card .more{display:block;padding:0 20px 16px;color:var(--navy);font-weight:800}
.band{background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff}
.band h2{color:#fff}.band .sub{color:#dbe6f5}.band a{color:var(--g2)}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px}
.box{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;padding:18px 22px;box-shadow:0 8px 22px rgba(0,42,92,.08)}
.band .box{background:rgba(255,255,255,.08);border:1px solid rgba(242,169,0,.5);box-shadow:none}
.box h3{margin-top:0;color:var(--navy)}.band .box h3{color:var(--gold)}
.band .ev{color:var(--ink)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:10px}
.step{background:#fff;border-radius:18px;padding:26px 22px 18px;box-shadow:0 10px 28px rgba(0,42,92,.12);position:relative}
.step i{position:absolute;top:-16px;left:20px;width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--navy-dark);font:900 1.2rem/40px sans-serif;text-align:center;font-style:normal}
.step h3{color:var(--navy);margin:8px 0 6px}
.month{margin:26px 0 10px;color:var(--navy);font-size:1.25rem;border-bottom:2px solid var(--gold);padding-bottom:4px}
.ev{display:grid;grid-template-columns:118px 1fr;gap:14px;background:#fff;border-radius:14px;padding:12px 16px;margin:10px 0;box-shadow:0 6px 18px rgba(0,42,92,.08);border-left:5px solid var(--gold)}
.ev .d{font-weight:800;color:var(--navy)}.ev .d small{display:block;font-weight:600;color:var(--muted);font-size:.8rem}
.ev h3{margin:0;font-size:1.05rem}.ev p{margin:2px 0 0;color:var(--muted);font-size:.92rem}
.ev.k-camp,.ev.k-hike{border-left-color:#2f7d4f}.ev.k-oa{border-left-color:var(--red)}.ev.k-coh{border-left-color:var(--navy)}
.tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:#eef2f8;color:var(--navy);padding:2px 8px;border-radius:999px;margin-left:6px;vertical-align:middle}
.feats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.feat{background:#fff;border-left:5px solid var(--gold);border-radius:12px;padding:12px 16px;box-shadow:0 6px 18px rgba(0,42,92,.09)}
.note{text-align:center;font-size:.85rem;color:var(--muted);margin-top:16px}
.cta{text-align:center;background:var(--gold);padding:40px 20px}
.cta h2{color:var(--navy-dark);margin:0 0 8px}.cta .btn{background:var(--navy);color:#fff}
.yo .bd .tag{display:inline-block;margin:0 0 4px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--red)}
.full{opacity:.96}.full h2{font-size:1.4rem;color:var(--muted)}.full .ev{box-shadow:none;border:1px solid var(--line);border-left:5px solid var(--gold)}
.trad .ph{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:3px;background:var(--forest);aspect-ratio:16/9;overflow:hidden}
.trad .ph figure{margin:0;overflow:hidden}.trad .ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.trad:hover .ph img{transform:scale(1.04)}
.trad .im{aspect-ratio:16/9}
.mo2{display:inline-block;background:var(--gold);color:#1c1e21;font-weight:800;font-size:.72rem;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.gal figure{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,42,92,.15);aspect-ratio:4/3;background:var(--forest)}
.gal img{width:100%;height:100%;object-fit:cover;display:block}
.site-footer{background:var(--navy-dark);color:#dfe6f2;padding:22px 0;font-size:.9rem;text-align:center}
.site-footer a{color:#fff}

/* ---- page flow (per-page identity + entrance) ---- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vtout .22s ease both}
::view-transition-new(root){animation:vtin .38s ease both}
@keyframes vtout{to{opacity:0}}@keyframes vtin{from{opacity:0}}
.site-header{view-transition-name:hdr;box-shadow:0 4px 14px rgba(0,20,45,.25)}
.site-header nav a{position:relative}
.site-header nav a.on{box-shadow:0 0 0 2px rgba(255,255,255,.25)}
.site-header nav a.on::after{content:"";position:absolute;left:18%;right:18%;bottom:-11px;height:4px;border-radius:3px 3px 0 0;background:var(--gold)}
.tb-hero{transition:height .4s ease}
body:not(.pg-home) .tb-hero{height:min(40vw,clamp(150px,15vw,210px))}
.pg-join .tb-art{transform:translateY(-38%)}.pg-calendar .tb-art{transform:translateY(-62%)}
.pg-adventures .tb-art{transform:translateY(-70%)}.pg-about .tb-art{transform:translateY(-45%)}
.pg-contact .tb-art{transform:translateY(-78%)}.pg-event .tb-art{transform:translateY(-66%)}
.pt{position:relative;overflow:hidden;padding:34px 20px 38px;text-align:left}
.pt .in{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.pt p{margin:0;max-width:680px}
.pt .ghost-ic{position:absolute;right:max(4vw,calc(50% - 560px));top:50%;transform:translateY(-50%) rotate(-8deg);font-size:clamp(5rem,12vw,9rem);line-height:1;opacity:.22;pointer-events:none;filter:saturate(.6)}
.pt .crumb{display:block;font-size:.8rem;opacity:.8;margin-bottom:8px;letter-spacing:.3px}.pt .crumb a{color:#fff}
.pt h1{font-size:clamp(2rem,5vw,3.1rem);line-height:1.1}
.pt h1::after{content:"";display:block;width:64px;height:5px;border-radius:3px;background:var(--gold);margin-top:12px}
.pg-home .pt{text-align:center}.pg-home .pt p{margin:0 auto}.pg-home .pt h1::after{margin:12px auto 0}
.pg-join .pt{background:linear-gradient(120deg,#7a0c18,var(--red) 70%,#e2483a)}
.pg-calendar .pt{background:linear-gradient(120deg,#0d2a1e,#1f5a3c 70%,#2f7d4f)}
.pg-adventures .pt{background:linear-gradient(120deg,#3b2a06,#9a6a0c 60%,#c98a1b)}
.pg-about .pt{background:linear-gradient(120deg,var(--navy-dark),#1d5fa8)}
.pg-contact .pt{background:linear-gradient(120deg,#1b2633,#3a4f66 70%,#4f6d8a)}
.pg-event .pt{background:linear-gradient(120deg,#0d2a1e,#1f5a3c 60%,#9a6a0c)}
main>section:first-child,main>.stats+section{padding-top:44px}
@media (prefers-reduced-motion:no-preference){
.pt .in>*{animation:rise .55s cubic-bezier(.2,.7,.2,1) both}
.pt .in>:nth-child(2){animation-delay:.06s}.pt .in>:nth-child(3){animation-delay:.12s}.pt .in>:nth-child(4){animation-delay:.18s}.pt .in>:nth-child(5){animation-delay:.24s}
.pt .ghost-ic{animation:ghost .8s ease both .1s}
main>*{animation:rise .6s cubic-bezier(.2,.7,.2,1) both .22s}
main>:nth-child(2){animation-delay:.32s}main>:nth-child(n+3){animation-delay:.4s}
@keyframes rise{from{opacity:0;transform:translateY(14px)}}
@keyframes ghost{from{opacity:0;transform:translateY(-50%) rotate(-20deg) scale(.85)}}
}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.tb-hero{transition:none}}
@media(max-width:640px){.pt{text-align:center}.pt p{margin:0 auto}.pt h1::after{margin:12px auto 0}.pt .ghost-ic{opacity:.12}.site-header nav a.on::after{display:none}}
@media(max-width:640px){.site-header nav{order:3;width:100%}.ev{grid-template-columns:1fr;gap:2px}}

/* scenic fixed background + glass panels */
body{background:#0d2a1e}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:url(assets/banner.jpg) center/cover no-repeat;transform:translateZ(0)}
/* uncrop: always show the full painted banner (title + compass) */
.tb-hero,body:not(.pg-home) .tb-hero{height:clamp(190px,30vw,400px)!important;background:#0d2a1f}
.tb-hero::before{content:none}
.tb-hero{background-color:#0d2a1f!important;background-position:center!important;background-size:auto 100%!important;background-repeat:no-repeat!important}
.pg-contact .tb-art,.pg-event .tb-art{top:0!important;left:50%!important;height:100%!important;width:auto!important;max-width:100%;transform:translateX(-50%)!important}
.tb-art,.pg-join .tb-art,.pg-calendar .tb-art,.pg-adventures .tb-art,.pg-about .tb-art{top:0!important;left:50%!important;height:100%!important;width:auto!important;max-width:100%;aspect-ratio:16/9;transform:translateX(-50%)!important}
@media(min-width:900px){.tb-art{transform:translateX(-50%)!important}}
body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,42,30,.25),rgba(13,42,30,.45))}
.site-header{background:rgba(0,63,135,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.sec{background:rgba(247,245,240,.52);-webkit-backdrop-filter:blur(8px) saturate(1.1);backdrop-filter:blur(8px) saturate(1.1);border-radius:22px;margin:28px auto;box-shadow:0 14px 40px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.45);width:calc(100% - 32px);box-sizing:border-box}
.card,.box,.step,.ev,.feat,.stat{background:rgba(255,255,255,.72)!important}
html{background:#0d2a1e url(assets/banner.jpg) center/cover fixed no-repeat}
body{background:transparent!important}
main,.wrap,.alt,section:not(.tb-hero):not(.pt){background-color:transparent}
.sec{background-color:rgba(247,245,240,.52)!important}
.pt{opacity:.96}
.site-footer{background:rgba(0,42,92,.92)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.sec{background:rgba(247,245,240,.93)}}

/* real seasonal art, full-bleed outpainted sides */
.tb-hero,body:not(.pg-home) .tb-hero{height:min(28.125vw,560px)!important;min-height:190px;background-size:cover!important;background-position:center!important}
.tb-art,.pg-join .tb-art,.pg-calendar .tb-art,.pg-adventures .tb-art,.pg-about .tb-art,.pg-contact .tb-art,.pg-event .tb-art{top:0!important;left:50%!important;height:100%!important;width:auto!important;max-width:none!important;aspect-ratio:16/9;transform:translateX(-50%)!important}
.tb-bg{-webkit-mask:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);mask:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%)}
@media(max-width:700px){.tb-hero,body:not(.pg-home) .tb-hero{height:56.25vw!important}.tb-bg{-webkit-mask:none;mask:none}}
.pg-contact .tb-compass{filter:grayscale(1) brightness(1.35) contrast(1.05);animation:tbmoon 5s ease-in-out infinite}
.pg-contact .tb-glow{background:radial-gradient(circle,rgba(220,235,255,.55) 0,rgba(170,200,255,.22) 38%,rgba(150,180,255,0) 70%)}
.pg-contact .tb-rays{background:repeating-conic-gradient(from 0deg,rgba(220,232,255,.16) 0 3deg,rgba(220,232,255,0) 3deg 15deg)}
@keyframes tbmoon{0%,100%{filter:grayscale(1) brightness(1.3)}50%{filter:grayscale(1) brightness(1.55) drop-shadow(0 0 10px rgba(210,225,255,.7))}}
html{background:#0d2a1e url(assets/wide-summer-clean.jpg) center/cover fixed no-repeat}
body::before{background-image:url(assets/wide-summer-clean.jpg)}
body.pg-join::before{background-image:url(assets/wide-spring-clean.jpg)}body.pg-calendar::before{background-image:url(assets/wide-winter-clean.jpg)}
body.pg-adventures::before{background-image:url(assets/wide-fall-clean.jpg)}body.pg-contact::before{background-image:url(assets/wide-night-clean.jpg)}
.sec,.sec[class]{background-color:rgba(247,245,240,.36)!important}
.card,.box,.step,.ev,.feat,.stat{background:rgba(255,255,255,.58)!important}
.sec h2,.sec p,.sub{text-shadow:0 1px 2px rgba(255,255,255,.6)}
@media (prefers-reduced-motion:reduce){body::before{transform:none}}
/* v2: compass rises behind mountains, baked into one panorama */
.tb-sun,.tb-bg,.tb-shade{display:none!important}
.tb-hero,body:not(.pg-home) .tb-hero{height:min(38.46vw,620px)!important;min-height:200px;background-size:cover!important;background-position:center 40%!important}
@media(max-width:700px){.tb-hero,body:not(.pg-home) .tb-hero{height:38.46vw!important;min-height:0!important;background-position:center!important}}
/* soft aura + single seamless panorama (2026-10-26) */
.tb-bg{visibility:hidden!important}
.tb-shade{background:linear-gradient(180deg,rgba(6,16,30,.35) 0,rgba(6,16,30,0) 30%)!important}
.tb-glow{background:radial-gradient(circle,rgba(255,236,170,.26) 0,rgba(255,215,120,.10) 40%,rgba(255,210,110,0) 68%)!important;mix-blend-mode:soft-light!important;animation:tbsoft 6s ease-in-out infinite!important}
.tb-rays{background:repeating-conic-gradient(from 0deg,rgba(255,240,190,.07) 0 3deg,rgba(255,240,190,0) 3deg 15deg)!important;-webkit-mask:radial-gradient(circle,#000 18%,transparent 52%)!important;mask:radial-gradient(circle,#000 18%,transparent 52%)!important;animation:tbspin 160s linear infinite,tbsoft 6s ease-in-out infinite!important}
@keyframes tbsoft{0%,100%{opacity:.35}50%{opacity:.75}}
.tb-compass{animation:none!important;filter:none!important}
.pg-contact .tb-compass{filter:grayscale(1) brightness(1.02)!important;animation:none!important}
.pg-contact .tb-glow{background:radial-gradient(circle,rgba(215,228,255,.16) 0,rgba(170,195,255,.06) 40%,rgba(150,180,255,0) 66%)!important}
.pg-contact .tb-rays{background:repeating-conic-gradient(from 0deg,rgba(220,232,255,.04) 0 3deg,rgba(220,232,255,0) 3deg 15deg)!important}
@media (prefers-reduced-motion:reduce){.tb-sun *{animation:none!important}}
/* living glow on painted sun/moon (2026-10-26) */
.tb-hero{--sx:60.5%;--sy:34%;--gc:255,226,150}
.pg-join .tb-hero{--sx:58.1%;--sy:32.8%}.pg-calendar .tb-hero{--sx:60.6%;--sy:38%}
.pg-adventures .tb-hero,.pg-event .tb-hero{--sx:59.4%;--sy:32.8%}
.pg-contact .tb-hero{--sx:72.5%;--sy:34.4%;--gc:205,222,255}
.pg-about .tb-hero{--sx:72.4%;--sy:19%;--gc:255,205,170}
body.pg-about::before{background-image:url(assets/wide-dawn-clean.jpg)}
.tb-hero::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;mix-blend-mode:screen;
background:radial-gradient(circle at var(--sx) var(--sy),rgba(var(--gc),.30) 0,rgba(var(--gc),.12) 7vw,rgba(var(--gc),0) 15vw);
animation:tbbreathe 4.5s ease-in-out infinite}
.tb-hero::before{content:""!important;position:absolute;inset:0;pointer-events:none;z-index:1;mix-blend-mode:screen;
background:repeating-conic-gradient(from 0deg at var(--sx) var(--sy),rgba(var(--gc),.09) 0 2.5deg,rgba(var(--gc),0) 2.5deg 12deg);
-webkit-mask:radial-gradient(circle at var(--sx) var(--sy),#000 2vw,transparent 11vw);mask:radial-gradient(circle at var(--sx) var(--sy),#000 2vw,transparent 11vw);
animation:tbshimmer 3.2s ease-in-out infinite}
@keyframes tbbreathe{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes tbshimmer{0%,100%{opacity:.15}35%{opacity:.7}60%{opacity:.35}80%{opacity:.8}}
@media (prefers-reduced-motion:reduce){.tb-hero::after,.tb-hero::before{animation:none!important;opacity:.6}}
/* clear pulse v2 (2026-10-26 21:50) */
.tb-hero::after{background:radial-gradient(circle at var(--sx) var(--sy),rgba(var(--gc),.55) 0,rgba(var(--gc),.28) 5vw,rgba(var(--gc),.10) 11vw,rgba(var(--gc),0) 19vw)!important;animation:tbbreathe2 3.6s ease-in-out infinite!important;z-index:2!important}
.tb-hero::before{z-index:2!important;animation:tbshimmer2 3.6s ease-in-out infinite!important}
@keyframes tbbreathe2{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes tbshimmer2{0%,100%{opacity:.2}50%{opacity:.85}}
@media (prefers-reduced-motion:reduce){.tb-hero::after{animation:tbbreathe2 6s ease-in-out infinite!important}}
/* pulse v3 alive (2026-10-26 21:55) */
.tb-hero{position:relative!important;overflow:hidden!important;isolation:isolate}
.tb-hero::after{content:""!important;inset:auto!important;left:var(--sx)!important;top:var(--sy)!important;width:26vw!important;height:26vw!important;margin:-13vw 0 0 -13vw!important;border-radius:50%;z-index:3!important;mix-blend-mode:normal!important;background:radial-gradient(circle,rgba(var(--gc),.85) 0,rgba(var(--gc),.45) 18%,rgba(var(--gc),.16) 40%,rgba(var(--gc),0) 68%)!important;animation:tbalive 4s ease-in-out infinite!important;will-change:transform,opacity}
.tb-hero::before{mix-blend-mode:normal!important;z-index:3!important;animation:tbshimmer2 4s ease-in-out infinite!important}
@keyframes tbalive{0%,100%{opacity:.35;transform:translate(0,0) scale(.9)}25%{opacity:.75;transform:translate(.25vw,-.2vw) scale(1.05)}50%{opacity:1;transform:translate(0,-.4vw) scale(1.18)}75%{opacity:.7;transform:translate(-.25vw,-.2vw) scale(1.04)}}
@media (prefers-reduced-motion:reduce){.tb-hero::after{animation:tbalive 7s ease-in-out infinite!important}}
/* pulse4: real DOM pulse */
.tb-hero::after,.tb-hero::before{content:none!important;animation:none!important}
.tb-pulse{position:absolute;left:var(--sx);top:var(--sy);width:18vw;height:18vw;margin:-9vw 0 0 -9vw;border-radius:50%;pointer-events:none;z-index:5;background:radial-gradient(circle,rgba(255,255,240,.95) 0%,rgba(var(--gc),.7) 25%,rgba(var(--gc),.25) 45%,transparent 70%);box-shadow:0 0 2vw .5vw rgba(var(--gc),.6),0 0 6vw 2vw rgba(255,240,180,.35);animation:tbpulse4 2.8s ease-in-out infinite;will-change:transform,opacity,box-shadow}
@keyframes tbpulse4{0%,100%{transform:translate(0,0) scale(.75);opacity:.4;box-shadow:0 0 1vw .2vw rgba(var(--gc),.4),0 0 3vw 1vw rgba(255,240,180,.2)}50%{transform:translate(.3vw,-.3vw) scale(1.35);opacity:1;box-shadow:0 0 3vw 1vw rgba(var(--gc),.8),0 0 9vw 3vw rgba(255,240,180,.5)}}
@media (prefers-reduced-motion:reduce){.tb-pulse{animation-duration:6s}}
/* pulse5: small, gentle, centered on fleur medallion */
.tb-hero{--sx:71.0%;--sy:32.5%}
.pg-join .tb-hero{--sx:71.3%;--sy:32.8%}.pg-calendar .tb-hero{--sx:71.3%;--sy:33%}
.pg-adventures .tb-hero,.pg-event .tb-hero{--sx:71.5%;--sy:33%}
.pg-contact .tb-hero{--sx:71.9%;--sy:34.5%}
.pg-about .tb-hero{--sx:72.6%;--sy:22.5%}
.tb-pulse{width:9vw;height:9vw;margin:-4.5vw 0 0 -4.5vw;background:radial-gradient(circle,rgba(255,250,225,.6) 0%,rgba(var(--gc),.35) 35%,rgba(var(--gc),.12) 55%,transparent 72%);box-shadow:0 0 1.5vw .3vw rgba(var(--gc),.25);animation:tbpulse5 4s ease-in-out infinite}
@keyframes tbpulse5{0%,100%{transform:translate(0,0) scale(.92);opacity:.35;box-shadow:0 0 1vw .2vw rgba(var(--gc),.18)}50%{transform:translate(.1vw,-.1vw) scale(1.08);opacity:.6;box-shadow:0 0 2vw .5vw rgba(var(--gc),.3)}}
/* bounce (2026-10-26): soft shimmer + gentle float like Pack 242 hpfloat moon; twinkle removed */
.tb-pulse{width:8vw!important;height:8vw!important;margin:-4vw 0 0 -4vw!important;box-shadow:none!important;background:radial-gradient(circle,rgba(255,252,235,.6) 0%,rgba(var(--gc),.3) 40%,transparent 72%)!important;will-change:transform,opacity;animation:tbshim 5s ease-in-out infinite,tbfloat 5s ease-in-out infinite!important}
@keyframes tbshim{0%,100%{opacity:.45}50%{opacity:.85}}
@keyframes tbfloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.08)}}
@media (prefers-reduced-motion:reduce){.tb-pulse{animation:none!important}}
/* bounce3: real fleur/compass image floats like Pack 242 hpfloat (glow-only bounce read as static) */
.tb-pulse{animation:tbshim 5s ease-in-out infinite,tbhpfloat 4s ease-in-out infinite!important}
@keyframes tbhpfloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-16px) rotate(-2deg)}}

/* bounce4: whole painted sun+fleur floats as one (same banner pixels, circular mask), soft bottom fade keeps mountain occlusion */
.tb-pulse{animation:tbshim 5s ease-in-out infinite!important;transform:none!important}
.tb-orb{position:absolute;inset:0;z-index:4;pointer-events:none;background:inherit;background-color:transparent!important;
-webkit-mask:radial-gradient(circle at var(--sx) var(--sy),#000 4.6vw,transparent 6.4vw),linear-gradient(180deg,#000 calc(var(--sy) + 5%),transparent calc(var(--sy) + 13%));-webkit-mask-composite:source-in;
mask:radial-gradient(circle at var(--sx) var(--sy),#000 4.6vw,transparent 6.4vw) intersect,linear-gradient(180deg,#000 calc(var(--sy) + 5%),transparent calc(var(--sy) + 13%));
animation:tborb 5s ease-in-out infinite;will-change:transform}
@keyframes tborb{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

/* bounce5: fleur-free base + separate sun/fleur cutout bouncing as ONE piece + mountain foreground in front */
.tb-pulse,.tb-orb,.tb-sun{display:none!important}
.tb-scene{position:absolute;left:0;width:100%;aspect-ratio:1280/492;top:calc(40% - 15.375vw);pointer-events:none;z-index:4}
@media(max-width:700px){.tb-scene{top:calc(50% - 19.22vw)}}
.tb-scene img{position:absolute;display:block;height:auto}
.tb-s-orb{z-index:1;animation:tbfloat5 4s ease-in-out infinite,tbshim5 5s ease-in-out infinite;will-change:transform,filter}
.tb-s-mtn{z-index:2}
@keyframes tbfloat5{0%,100%{transform:translateY(0)}50%{transform:translateY(-0.7vw)}}
@keyframes tbshim5{0%,100%{filter:brightness(1)}50%{filter:brightness(1.12) drop-shadow(0 0 .6vw rgba(255,240,200,.45))}}
@media (prefers-reduced-motion:reduce){.tb-s-orb{animation:tbshim5 5s ease-in-out infinite}}
.tb-scene.s-summer img{left:59.375%;top:1.626%;width:23.438%}
.tb-scene.s-night img{left:60.156%;top:4.472%;width:23.438%}
.tb-scene.s-dawn img{left:60.547%;top:0.000%;width:23.438%}
.tb-scene.s-fall img{left:59.922%;top:5.081%;width:23.438%}
.tb-scene.s-spring img{left:60.156%;top:5.488%;width:23.438%}
.tb-scene.s-winter img{left:60.156%;top:5.691%;width:23.438%}
.tb-hero,body:not(.pg-home) .tb-hero{--hh:clamp(190px,30vw,400px);height:var(--hh)!important;min-height:0!important;background:#0d2a1f!important}
.tb-art,.tb-hero::before,.tb-hero::after{display:none!important}
.tb-scene{--sw:max(100vw,calc(var(--hh)*2.6016));width:var(--sw)!important;height:calc(var(--sw)/2.6016)!important;aspect-ratio:auto!important;left:calc((100vw - var(--sw))*.15)!important;top:calc((var(--hh) - var(--sw)/2.6016)*.3)!important;transform:none;z-index:1}
.tb-scene img.tb-s-base{left:0!important;top:0!important;width:100%!important;height:100%!important;z-index:0}
.tb-s-orb{animation:tbfloat6 4.5s ease-in-out infinite!important;filter:drop-shadow(0 0 .6vw rgba(255,235,170,.45))}
.s-night .tb-s-orb{filter:drop-shadow(0 0 .7vw rgba(200,220,255,.5))}
@keyframes tbfloat6{0%,100%{transform:translateY(0)}50%{transform:translateY(-.55vw)}}
@media (prefers-reduced-motion:reduce){.tb-s-orb{animation:none!important}}
.pg-home .pt .ghost-ic{display:none}
html{background:#0b2a55!important}body::before{background-image:none!important;background:#0b2a55!important}
.pt{opacity:1!important}
@media(max-width:700px){.tb-hero,body:not(.pg-home) .tb-hero{--hh:38.44vw;height:var(--hh)!important}.tb-scene{left:0!important}}
.tb-scene.s-summer .tb-s-orb{left:58.594%;top:0.000%;width:25.000%}.tb-scene.s-summer .tb-s-mtn{left:47.656%;top:46.341%;width:46.875%}
.tb-scene.s-night .tb-s-orb{left:58.594%;top:2.400%;width:25.000%}.tb-scene.s-night .tb-s-mtn{left:47.656%;top:46.341%;width:46.875%}
.tb-scene.s-dawn .tb-s-orb{left:58.594%;top:4.000%;width:25.000%}.tb-scene.s-dawn .tb-s-mtn{left:47.656%;top:46.341%;width:46.875%}
.tb-scene.s-fall .tb-s-orb{left:59.141%;top:3.049%;width:25.000%}.tb-scene.s-fall .tb-s-mtn{left:48.203%;top:43.089%;width:46.875%}
.tb-scene.s-spring .tb-s-orb{left:59.375%;top:3.455%;width:25.000%}.tb-scene.s-spring .tb-s-mtn{left:48.438%;top:45.528%;width:46.875%}
.tb-scene.s-winter .tb-s-orb{left:59.375%;top:3.659%;width:25.000%}.tb-scene.s-winter .tb-s-mtn{left:48.438%;top:45.935%;width:46.875%}
/* taller1 (2026-10-27): taller hero shows full painting (lake/path/ground); solid page below, no wallpaper */
html{background:#f7f5f0!important}body{background:#f7f5f0!important}
body::before,body::after{background:none!important;background-image:none!important}
body.pg-contact,html:has(body.pg-contact){background:#16263d!important}
.tb-hero,body:not(.pg-home) .tb-hero{--hh:min(38.44vw,62vh)!important;height:var(--hh)!important;min-height:200px!important}
.tb-scene{top:calc((var(--hh) - var(--sw)/2.6016)*.85)!important}
.sec,.sec[class]{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.pg-contact .sec,.pg-contact .sec[class]{background:#1f3350!important;color:#e8eef7}
.pg-contact .sec h2,.pg-contact .sec h3,.pg-contact .sec p{color:#e8eef7}
.card,.box,.step,.ev,.feat,.stat{background:#fff!important}
.pg-contact .box{color:#1c1e21}
.pg-contact .pt{background:#16263d!important}
.tb-title{position:absolute;left:0;right:0;top:56%;transform:translateY(-50%);z-index:6;text-align:center;line-height:1.1;pointer-events:none;color:#fff;text-shadow:0 3px 12px rgba(0,0,0,.65),0 1px 3px rgba(0,0,0,.6)}
.tt1{font:700 clamp(34px,5.6vw,92px)/1.05 Georgia,"Times New Roman",serif;letter-spacing:.5px}
.tt2{margin-top:.35em;font:500 clamp(15px,2vw,32px)/1.2 system-ui,-apple-system,sans-serif;color:#e8c27a}
.trad .ph.art{display:block;background-size:cover;background-position:center}
.iwla-rep .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0}
.iwla-rep .kpis div{background:#fff;border-radius:14px;border-top:4px solid var(--gold);padding:14px;text-align:center;box-shadow:0 6px 18px rgba(0,42,92,.08)}
.iwla-rep .kpis b{display:block;font-size:2rem;color:var(--navy)}
.iwla-rep .asof{display:inline-block;background:var(--navy);color:#fff;border-radius:999px;padding:4px 14px;font-weight:700;font-size:.85rem}
.iwla-rep table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}.iwla-rep td{padding:8px 12px;border-bottom:1px solid var(--line)}.iwla-rep td:first-child{font-weight:700;white-space:nowrap;color:var(--navy)}
.dhero{max-width:1000px;margin:24px auto 0;padding:0 20px}.dhero img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:18px;box-shadow:0 10px 30px rgba(0,42,92,.18);display:block}
.ctab{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}.ctab td{padding:10px 14px;border-bottom:1px solid var(--line)}.ctab td:first-child{font-weight:700;color:var(--navy);white-space:nowrap}
.rep-scroll{max-height:78vh;overflow-y:auto;border-radius:18px;background:linear-gradient(180deg,#fffaf0,#f7f5f0 30%,#eef3fa 60%,#fffaf0);box-shadow:inset 0 0 0 1px var(--line);padding:0 18px;scroll-behavior:smooth}
.rep-pg{padding:26px 6px 34px;border-bottom:1px dashed #d8cfbd}.rep-pg:last-child{border-bottom:0}.rep-pg .asof{position:sticky;top:8px;z-index:2}
.first{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.band .box,.band .box p,.band .box li,.band .box span{color:var(--ink)!important}.band .box h3,.band .sec .box h3{color:var(--navy)!important}.band .sec h2{color:var(--navy)!important}.band .sec .sub,.band .sec .note{color:var(--muted)!important}.band .box p a{color:var(--navy)!important}
a.card.trad{text-decoration:none;color:inherit;display:flex;flex-direction:column}a.card.trad .more{margin-top:auto;padding:0 20px 18px;font-weight:800;color:var(--navy)}
.pg-contact .sec .box,.pg-contact .sec .box p,.pg-contact .sec .box li,.pg-contact .sec .box span,.pg-contact .sec .box strong{color:var(--ink)!important}.pg-contact .sec .box h3{color:var(--navy)!important}.pg-contact .sec .box a{color:var(--navy)!important}
.pg-contact .tb-title{top:74%}@media(max-width:700px){.pg-contact .tb-title{top:56%}}
a.card.trad{position:relative}a.card.trad .ph.art+.bd .mo2{position:absolute;top:12px;left:12px;z-index:2;background:var(--gold,#f2b632);color:#13233a!important;font-weight:800;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.gal{columns:3 260px;column-gap:14px}.gal-i{break-inside:avoid;margin:0 0 14px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px rgba(0,42,92,.08)}.gal-i img{width:100%;display:block}.gal-i figcaption{padding:8px 12px;font-size:.85rem;color:var(--muted)}
.oath{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;text-align:left;max-width:1100px;margin:0 auto 16px;font-size:.82rem;opacity:.9}.oath b{display:block;color:var(--gold);margin-bottom:2px}
.ics-sub{text-align:center;margin:10px 0}
details.ses{background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:12px;margin:0 0 12px;box-shadow:0 4px 14px rgba(0,42,92,.06)}
details.ses>summary{cursor:pointer;padding:14px 18px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;list-style:none}details.ses>summary::-webkit-details-marker{display:none}
details.ses>summary::before{content:"\25B8";color:var(--navy);margin-right:8px;transition:transform .2s}details.ses[open]>summary::before{transform:rotate(90deg)}
.ses-t{font-weight:800;color:var(--navy);flex:1}.ses-m{font-size:.85rem;color:var(--muted)}.ses-b{padding:0 18px 14px}
.rq-r{margin:12px 0 4px;color:var(--navy)}details.rq{border-top:1px solid var(--line);padding:6px 0}details.rq>summary{cursor:pointer}
.tblw{overflow-x:auto;-webkit-overflow-scrolling:touch}.pt-t{width:100%;border-collapse:collapse;font-size:.92rem}.pt-t th,.pt-t td{text-align:left;padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
html,body{max-width:100%;overflow-x:hidden}img{max-width:100%;height:auto}
@media(max-width:760px){.site-header nav a,.portal-link{padding:10px 12px;min-height:44px;display:inline-flex;align-items:center}.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.two,.grid,.feats,.kpis,.stats{grid-template-columns:1fr!important}.sec{padding-left:16px;padding-right:16px}body{font-size:16px}
details.ses>summary,details.rq>summary{padding:14px 12px;min-height:44px}.ses-b{padding:0 12px 12px}.pt-t{font-size:.85rem}.ics-sub .btn{display:flex;margin:6px auto;max-width:320px}
table{display:block;overflow-x:auto}td,th,p,li,a{overflow-wrap:anywhere}}
.rq-n{font-size:.75rem;background:#fde8ea;color:var(--red);border-radius:999px;padding:1px 8px;margin-left:6px}.rq-w{font-size:.9rem;color:var(--ink)}
/* 2026-11-01 mobile header: hamburger menu (CSS-only) */
.navt,.navbtn{display:none}
@media(max-width:760px){
.site-header .wrap{flex-wrap:wrap;gap:6px 8px;min-height:54px;padding-top:6px;padding-bottom:6px}
.brand{order:1;flex:1;min-width:0;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand small{display:block;margin-left:0;font-size:.72rem}
.portal-link{order:2;padding:6px 10px!important;min-height:36px!important;font-size:.8rem;margin:0!important}
.navbtn{order:3;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;cursor:pointer;background:rgba(255,255,255,.12)}
.navbtn span,.navbtn span::before,.navbtn span::after{display:block;width:22px;height:2px;background:#fff;border-radius:2px;position:relative;transition:transform .2s}
.navbtn span::before,.navbtn span::after{content:"";position:absolute;left:0}
.navbtn span::before{top:-7px}.navbtn span::after{top:7px}
.navt:checked+.navbtn span{background:transparent}
.navt:checked+.navbtn span::before{top:0;transform:rotate(45deg)}
.navt:checked+.navbtn span::after{top:0;transform:rotate(-45deg)}
.site-header nav{order:4;width:100%;flex-basis:100%;display:none!important;flex-direction:column;gap:2px;padding:4px 0 8px}
.navt:checked~nav{display:flex!important}
.site-header nav a{display:flex;width:100%;box-sizing:border-box;font-size:1rem}
.site-header nav a.on::after{display:none}
}
@media(max-width:380px){.brand small{display:none}.portal-link{font-size:.75rem;padding:6px 8px!important}}
