
:root{
 --navy:#071827;--navy2:#0d2b45;--green:#006633;--green2:#084c2c;
 --gold:#f5c542;--blue:#1d4ed8;--purple:#6d287d;--red:#b91c1c;
 --ink:#15202b;--muted:#667085;--paper:#f5f7fa;--white:#fff;--line:#e4e7ec;
 --shadow:0 12px 35px rgba(15,23,42,.08);--radius:18px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
img{max-width:100%;display:block}a{color:inherit}button,input{font:inherit}
.wrap{width:min(1160px,92%);margin:auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:9999;background:#fff;padding:.6rem}
.globalbar{position:fixed;inset:0 0 auto;z-index:1100;background:linear-gradient(90deg,var(--green),#004b28);color:#fff;border-bottom:2px solid var(--gold);font-size:.78rem}
.globalbar .wrap{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.chapters{display:flex;overflow:auto;white-space:nowrap;gap:.2rem}.chapters a{padding:.42rem .65rem;text-decoration:none;border-radius:8px}.chapters a:hover{background:rgba(255,255,255,.12)}
.portal{background:var(--gold);color:#111!important;font-weight:900;text-decoration:none;padding:.35rem .7rem;border-radius:8px}
.header{position:fixed;top:40px;inset-inline:0;z-index:1090;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 5px 20px rgba(0,0,0,.05)}
.header .wrap{height:68px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;min-width:0}.brand img{width:46px;height:46px;object-fit:contain}.brand strong{display:block;color:var(--green);font-size:1.1rem}.brand span{display:block;color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.menu{display:flex;align-items:center;gap:1rem}.menu a{text-decoration:none;font-size:.88rem;font-weight:800}.menu a:hover{color:var(--blue)}.hamb{display:none;border:0;background:none;font-size:1.4rem}
main{padding-top:108px}.hero{color:#fff;padding:76px 0 66px;background:radial-gradient(circle at 85% 10%,rgba(245,197,66,.2),transparent 30%),linear-gradient(135deg,var(--navy),var(--navy2))}
.hero.green{background:radial-gradient(circle at 85% 10%,rgba(245,197,66,.2),transparent 30%),linear-gradient(135deg,var(--green2),var(--navy))}
.hero.purple{background:radial-gradient(circle at 85% 10%,rgba(245,197,66,.18),transparent 30%),linear-gradient(135deg,#4a1855,var(--navy))}
.eyebrow{display:inline-flex;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.35rem .72rem;color:var(--gold);font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.hero h1{font-size:clamp(2.35rem,7vw,5.3rem);line-height:1.02;letter-spacing:-.055em;margin:.65rem 0 1rem;max-width:850px}.hero p{max-width:800px;font-size:1.06rem;color:rgba(255,255,255,.83)}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.78rem 1rem;border-radius:11px;border:1px solid transparent;text-decoration:none;font-weight:900;cursor:pointer}.btn-primary{background:var(--gold);color:#111}.btn-light{background:#fff;color:var(--navy)}.btn-outline{border-color:rgba(255,255,255,.42);color:#fff}.btn-soft{background:#eef2ff;color:var(--blue)}.btn-wa{background:#25d366;color:#fff}
.section{padding:64px 0}.section.alt{background:#fff}.section h2{font-size:clamp(1.75rem,4vw,2.65rem);line-height:1.12;margin:0 0 .65rem}.lead{color:var(--muted);max-width:820px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow)}.card h3{margin:.35rem 0 .45rem}.card p{color:var(--muted)}.icon{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:#eef2ff;font-size:1.35rem}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.8rem}.stat{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:16px;padding:1rem;text-align:center}.stat strong{display:block;font-size:1.65rem;color:var(--gold)}.stat span{color:rgba(255,255,255,.72);font-size:.78rem}
.timezones{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.5rem}.tz{min-width:112px;padding:.7rem;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);border-radius:13px;text-align:center}.tz small{display:block;color:rgba(255,255,255,.62)}.tz strong{color:var(--gold);font-size:1.02rem}
.event{background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:14px;padding:1rem 1.1rem;margin:.8rem 0;box-shadow:0 8px 22px rgba(0,0,0,.05)}.event .date{color:var(--blue);font-weight:900;font-size:.75rem;text-transform:uppercase}.event h3{margin:.25rem 0}.event p{color:var(--muted);margin-bottom:0}
.directory-hero{background:radial-gradient(circle at 85% 10%,rgba(245,197,66,.2),transparent 30%),linear-gradient(135deg,var(--green2),var(--navy))}
.searchrow{display:grid;grid-template-columns:1fr auto;gap:.7rem;margin:1.2rem 0}.searchrow input,.filter{width:100%;padding:.9rem 1rem;border:1px solid var(--line);background:#fff;border-radius:12px;outline:none}.searchrow input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(29,78,216,.1)}
.member-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.member-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:var(--shadow)}.member-top{display:flex;gap:.8rem;align-items:center}.avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#e5e7eb}.member-card h3{margin:0;font-size:1rem}.pill{display:inline-block;padding:.2rem .5rem;background:#eef2ff;color:var(--blue);border-radius:999px;font-size:.7rem;font-weight:900}.member-card p{color:var(--muted);font-size:.88rem}
.notice{padding:1rem;border:1px solid #f0d273;background:#fff9dc;border-radius:14px}.ok{border-color:#b7e1c3;background:#effaf2}
.song{white-space:pre-line;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.4rem;box-shadow:var(--shadow);font-family:Georgia,serif}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;max-width:650px;margin-top:1.5rem}.countdown div{padding:1rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;text-align:center}.countdown strong{display:block;font-size:2rem;color:var(--gold)}
.footer{background:#101827;color:#fff;padding:3rem 0 1.2rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}.footer h3,.footer h4{margin-top:0}.footer p,.footer a{color:rgba(255,255,255,.7)}.footer a{text-decoration:none}.footer a:hover{color:var(--gold)}.badges{display:flex;gap:.45rem;margin-top:1rem}.badges button{border:0;background:transparent;padding:0;cursor:pointer}.badges img{width:62px;height:62px;object-fit:contain}.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:2rem;padding-top:1rem;text-align:center;font-size:.78rem;color:rgba(255,255,255,.52)}
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.84);z-index:3000}.modal.open{display:flex}.modal img{max-width:94vw;max-height:86vh;border-radius:16px}.modal .close{position:absolute;right:1rem;top:1rem;width:42px;height:42px;border:0;border-radius:50%;font-size:1.5rem;cursor:pointer}
@media(max-width:850px){.menu{display:none;position:fixed;top:108px;left:0;right:0;background:#fff;padding:1rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.menu.open{display:flex}.hamb{display:block}.grid,.member-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.brand span{display:none}.searchrow{grid-template-columns:1fr}.hero{padding:54px 0 48px}}
@media(max-width:480px){.globalbar .portal{display:none}.footer-grid{grid-template-columns:1fr}.stats{gap:.55rem}.stat strong{font-size:1.35rem}.countdown{grid-template-columns:repeat(2,1fr)}.countdown strong{font-size:1.65rem}.actions .btn{width:100%}}
