:root{--navy:#10263f;--navy2:#183a5d;--blue:#2c6682;--teal:#83c8c1;--gold:#e7b75c;--paper:#f5f5f1;--white:#fff;--ink:#172b3a;--muted:#647581;--line:#dce3e3;--max:1180px;--shadow:0 20px 55px rgba(16,38,63,.12)}
    *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Roboto,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}button{font:inherit}.wrap{width:min(var(--max),calc(100% - 44px));margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:var(--blue)}.eyebrow:before{content:"";width:24px;height:2px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.03em}h1{font-size:clamp(2.8rem,7vw,5.5rem);max-width:760px;margin:.8rem 0 1.2rem}h2{font-size:clamp(2rem,4vw,3.1rem);margin:.55rem 0 1rem}h3{font-size:1.25rem}.lead{font-size:1.1rem;color:#536875;max-width:660px}.section{padding:92px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px}.section-head>div{max-width:680px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;border:1px solid transparent;border-radius:5px;padding:13px 19px;font-weight:750;text-decoration:none;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#192b38}.btn-primary:hover{background:#f0c876}.btn-outline{border-color:rgba(255,255,255,.45);color:white;background:transparent}.btn-dark{background:var(--navy);color:white}.btn-light{background:white;color:var(--navy)}.arrow{font-size:1.1em}
    .topbar{background:#0b1c2d;color:#d7e1e4;font-size:.78rem}.topbar .wrap{display:flex;justify-content:space-between;padding:8px 0;gap:12px}.topbar a{text-decoration:none;color:inherit}.nav{background:rgba(16,38,63,.97);color:white;position:sticky;top:0;z-index:20;box-shadow:0 4px 20px rgba(0,0,0,.12)}.nav-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;line-height:1.15;letter-spacing:.01em}.brand small{display:block;color:#b5c8d2;font-weight:550;letter-spacing:.08em;text-transform:uppercase;font-size:.61rem;margin-top:5px}.seal{width:52px;height:52px;flex:none;object-fit:cover;border-radius:50%;background:#fff;border:2px solid rgba(255,255,255,.72)}.site-menu{position:relative}.nav-links{display:none;position:absolute;top:calc(100% + 8px);right:0;width:min(390px,calc(100vw - 44px));grid-template-columns:1fr 1fr;gap:5px;padding:12px;background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.site-menu[open] .nav-links{display:grid}.nav-links>a:not(.btn){text-decoration:none;color:var(--navy);font-size:.9rem;font-weight:700;padding:12px;border-radius:5px}.nav-links>a:hover:not(.btn){color:var(--blue);background:#eff5f3}.nav-links>a.btn{grid-column:1/-1;margin-top:4px}.menu-toggle{list-style:none;display:inline-flex;align-items:center;gap:9px;color:#fff;background:transparent;border:1px solid #7891a1;border-radius:5px;padding:10px 14px;font-weight:750;cursor:pointer}.menu-toggle::-webkit-details-marker{display:none}.menu-toggle:after{content:"☰";font-size:1.1rem;line-height:1}.site-menu[open] .menu-toggle:after{content:"×"}
    .hero{position:relative;overflow:hidden;background:var(--navy);color:white;padding:88px 0 84px;isolation:isolate}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(10,27,45,.96) 0%,rgba(16,38,63,.9) 48%,rgba(16,38,63,.22) 100%),radial-gradient(ellipse at 82% 38%,#38758a 0%,#1b4666 30%,transparent 58%),linear-gradient(145deg,#10263f,#234c67)}.hero:after{content:"";position:absolute;z-index:-1;width:600px;height:600px;right:-90px;bottom:-320px;border:1px solid rgba(131,200,193,.24);border-radius:50%;box-shadow:0 0 0 48px rgba(131,200,193,.035),0 0 0 108px rgba(131,200,193,.03),0 0 0 172px rgba(131,200,193,.025)}.hero .eyebrow{color:var(--teal)}.hero p{color:#d7e4e8}.hero .lead{color:#d7e4e8}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:30px 0 54px}.hero-foot{display:flex;gap:36px;flex-wrap:wrap;color:#b8c9d1;font-size:.87rem}.hero-foot strong{display:block;font-size:1.1rem;color:white}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:30px}.hero-card{justify-self:end;width:min(100%,340px);padding:24px;background:rgba(9,26,43,.62);border:1px solid rgba(255,255,255,.19);backdrop-filter:blur(10px);border-radius:8px}.hero-card .date{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:800}.hero-card h3{font-size:1.38rem;margin:11px 0}.hero-card p{font-size:.9rem;margin-bottom:14px}.hero-card a{color:var(--gold);font-weight:750;text-decoration:none}
    .purpose{background:white}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.purpose-copy p{color:#566b77}.purpose-quote{padding:30px 34px;border-left:3px solid var(--gold);background:#f3f6f4;font-size:1.25rem;font-family:Georgia,serif;line-height:1.5;color:var(--navy)}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.value{border-top:1px solid var(--line);padding:16px 5px}.value b{display:block;color:var(--navy);font-size:.98rem}.value span{font-size:.83rem;color:var(--muted)}
    .events{background:#eaf0ef}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.card{background:white;border:1px solid var(--line);border-radius:7px;padding:25px;box-shadow:0 3px 15px rgba(20,43,60,.03)}.card .tag{display:inline-block;background:#e5f1ef;color:#2c6c70;border-radius:30px;padding:4px 10px;font-size:.7rem;text-transform:uppercase;font-weight:800;letter-spacing:.08em;margin-bottom:15px}.card h3{color:var(--navy);margin-bottom:10px}.card p{font-size:.91rem;color:#5e707b;margin-bottom:14px}.card .date{font-weight:800;color:var(--blue);font-size:.83rem}.quiet-card{background:var(--navy);color:white;display:flex;flex-direction:column;justify-content:space-between}.quiet-card h3{color:white}.quiet-card p{color:#d2dfe3}.quiet-card .tag{background:rgba(131,200,193,.17);color:var(--teal)}
    .news{background:white}.news-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:56px}.news-intro p{color:#596d79}.newsletter-list{display:grid;gap:12px}.newsletter{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f5f7f5;border:1px solid var(--line);padding:19px 22px;border-radius:6px;text-decoration:none}.newsletter:hover{border-color:var(--blue);background:#eef4f3}.newsletter strong{display:block;color:var(--navy);font-size:1.02rem}.newsletter span{font-size:.82rem;color:var(--muted)}.newsletter .arrow{font-size:1.35rem;color:var(--blue)}
    .membership{background:var(--navy);color:white;position:relative;overflow:hidden}.membership:after{content:"";position:absolute;width:520px;height:520px;right:-230px;top:-310px;border:1px solid rgba(131,200,193,.26);border-radius:50%;box-shadow:0 0 0 60px rgba(131,200,193,.035),0 0 0 120px rgba(131,200,193,.025)}.membership .eyebrow{color:var(--teal)}.membership .lead{color:#d1dfe3}.member-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center}.class-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:27px 0}.class-item{border:1px solid rgba(255,255,255,.19);border-radius:5px;padding:14px 16px}.class-item b{display:block;color:white}.class-item span{color:#b9cbd2;font-size:.83rem}.pay-panel{background:#fff;color:var(--ink);border-radius:8px;padding:28px;box-shadow:var(--shadow)}.pay-panel h3{color:var(--navy);font-size:1.5rem}.pay-panel p{color:#60727c;font-size:.9rem}.pay-panel .btn{width:100%;margin:8px 0 6px}.pay-panel small{display:block;color:#768791;line-height:1.45}.pay-panel .pay-disabled{background:#dbe3e4;color:#52636b;cursor:not-allowed;box-shadow:none}.secure-note{display:flex;gap:9px;align-items:flex-start;margin:15px 0 0!important;font-size:.76rem!important}.secure-note b{color:#2f766f}
    .board{background:var(--paper)}.board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.person{background:white;border:1px solid var(--line);border-radius:6px;padding:20px}.person .role{font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:var(--blue);font-weight:850}.person h3{margin:7px 0;font-size:1.14rem;color:var(--navy)}.person p{margin:0;color:var(--muted);font-size:.84rem}.person a{text-decoration:none;color:var(--blue)}.board-note{font-size:.8rem;color:var(--muted);margin-top:16px}
    .resources{background:white}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resource{display:flex;gap:16px;padding:21px;border:1px solid var(--line);border-radius:6px;text-decoration:none;align-items:flex-start}.resource:hover{background:#f5f8f6;border-color:#9bb8ba}.resource-icon{width:39px;height:39px;display:grid;place-items:center;background:#e8f1ef;color:var(--blue);border-radius:5px;flex:none;font-weight:900}.resource b{display:block;color:var(--navy)}.resource span{font-size:.81rem;color:var(--muted)}
    .contact{background:#eaf0ef}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.contact-copy p{color:#566b77}.contact-box{background:white;border-radius:7px;padding:27px;box-shadow:0 10px 35px rgba(16,38,63,.07)}.contact-row{padding:14px 0;border-bottom:1px solid var(--line)}.contact-row:last-child{border:0}.contact-row span{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.68rem;font-weight:800}.contact-row a{color:var(--navy);font-weight:750;text-decoration:none}.footer{background:#0b1c2d;color:#d0dce1;padding:32px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer small{color:#9eb1bd}.footer a{color:var(--teal);text-decoration:none}.backtop{font-size:.82rem}
    :focus-visible{outline:3px solid var(--gold);outline-offset:3px}
    @media(max-width:900px){.hero-grid{grid-template-columns:1fr .65fr}.cards,.resource-grid{grid-template-columns:1fr 1fr}.news-grid{gap:30px}.board-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:700px){.wrap{width:min(100% - 32px,var(--max))}.topbar .wrap{font-size:.68rem}.nav-inner{height:68px}.nav-links{top:calc(100% + 6px);right:0;width:min(390px,calc(100vw - 32px));grid-template-columns:1fr;padding:10px}.nav-links>a:not(.btn){padding:11px 12px;border-bottom:1px solid #e6ecec;font-size:.95rem}.nav-links>a.btn{margin-top:9px}.hero{padding:66px 0}.hero-grid,.purpose-grid,.member-grid,.news-grid,.contact-grid{grid-template-columns:1fr}.hero-card{justify-self:start;margin-top:8px}.hero-actions{margin-bottom:36px}.hero-foot{gap:21px}.section{padding:68px 0}.section-head{display:block}.section-head>.btn{margin-top:14px}.cards,.resource-grid,.board-grid{grid-template-columns:1fr}.values{grid-template-columns:1fr}.purpose-grid,.news-grid,.contact-grid{gap:26px}.class-list{grid-template-columns:1fr}.pay-panel{padding:23px}.footer-inner{align-items:flex-start;flex-direction:column}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Explicit text colors prevent Zoho's theme typography from overriding dark sections. */
body .hero h1,
body .hero h2,
body .hero h3,
body .hero p,
body .hero .lead,
body .hero-foot,
body .hero-foot div,
body .hero-foot strong,
body .membership .member-grid > div h2,
body .membership .class-item b,
body .quiet-card h3,
body .footer b,
body .nav .brand,
body .nav .brand > span,
body .nav .menu-toggle {
  color: #ffffff !important;
}
body .topbar,
body .topbar span,
body .topbar a,
body .nav .brand small,
body .membership .member-grid > div > p,
body .membership .class-item span,
body .quiet-card p,
body .footer,
body .footer small {
  color: #e6eff5 !important;
}
body .hero .eyebrow,
body .hero-card .date,
body .membership .member-grid > div > .eyebrow,
body .quiet-card .tag {
  color: #b6eee7 !important;
}
body .hero-card a,
body .footer a {
  color: #f4cf88 !important;
}
body a.btn-outline,
body a.btn-outline:visited,
body a.btn-outline:hover,
body a.btn-dark,
body a.btn-dark:visited,
body a.btn-dark:hover {
  color: #ffffff !important;
}
/* Light cards and filled buttons need dark text, including within a dark section. */
body a.btn-primary,
body a.btn-primary:visited,
body a.btn-primary:hover,
body a.btn-light,
body a.btn-light:visited,
body a.btn-light:hover,
body .nav-links > a:not(.btn),
body .pay-panel h3 {
  color: #10263f !important;
}
body .membership .pay-panel .eyebrow {
  color: #2c6682 !important;
}
body .pay-panel p,
body .pay-panel small {
  color: #52636b !important;
}
