@font-face{font-family:"DM Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/dm-sans-regular.ttf") format("truetype")}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:600 700;font-display:swap;src:url("fonts/dm-sans-semibold.ttf") format("truetype")}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 500;font-display:swap;src:url("fonts/manrope-medium.ttf") format("truetype")}
@font-face{font-family:Manrope;font-style:normal;font-weight:600 800;font-display:swap;src:url("fonts/manrope-semibold.ttf") format("truetype")}
:root{--white:#fff;--mist:#f3f5f4;--ink:#202c2f;--muted:#586466;--red:#b8272b;--red-dark:#982025;--yellow:#ffda24;--line:#dce1df;--max:1280px;--gutter:48px;--header-height:100px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.65 "DM Sans",sans-serif;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
[hidden]{display:none!important}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button{font:inherit;cursor:pointer}
button,a,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #126e90;outline-offset:6px}
::selection{background:#ffed9a;color:var(--ink)}
p,h1,h2,h3,figure{margin:0}
h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500;line-height:1.2;letter-spacing:-.045em}
h2{font-size:clamp(32px,3.2vw,44px)}
h3{font-size:22px;letter-spacing:-.025em}
p{color:var(--muted)}
.container{width:min(calc(100% - var(--gutter)*2),var(--max));margin-inline:auto}
.section{padding-block:100px}
.section-label{color:var(--red);font-weight:600;font-size:14px;margin-bottom:22px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:48px}
.section-heading>p{max-width:420px;font-size:16px;line-height:1.8;padding-bottom:3px}
.icon-library{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.icon,.line-icon{flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.icon{width:21px;height:21px}
.line-icon{width:35px;height:35px;stroke-width:1.5}
.skip-link{position:fixed;left:16px;top:-100px;padding:12px 20px;background:var(--ink);color:white;z-index:200}
.skip-link:focus{top:12px}
.site-header{height:var(--header-height);position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center;gap:28px}
.brand{flex-shrink:0;width:270px;display:block}
.primary-navigation{display:flex;align-items:center;gap:20px;font-size:14px;font-weight:600}
.header-inner>.brand{width:240px}
.primary-navigation>a:not(.button){padding-block:12px;position:relative;white-space:nowrap}
.primary-navigation>a:not(.button)::after{content:"";position:absolute;bottom:5px;left:0;right:0;height:2px;background:var(--red);transform:scaleX(0);transition:transform .18s}
.primary-navigation>a:hover::after,.primary-navigation>a[aria-current="location"]::after{transform:scaleX(1)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:14px 23px;background:var(--red);color:white;font-size:14px;font-weight:600;border:1px solid transparent;border-radius:4px;transition:background .15s;white-space:nowrap}
.button:hover{background:var(--red-dark)}
.button-small{min-height:44px;padding:10px 17px;gap:22px}
.button-outline{color:var(--ink);background:transparent;border-color:#bac4c1}
.button-outline:hover{background:#e8edeb}
.button-white{background:var(--white);color:var(--red)}
.button-white:hover{background:#fff2e5}
.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;font-weight:600;line-height:1.5}
.text-link:hover{text-decoration:underline}
.text-link .icon{transition:transform .15s}
.text-link:hover .icon{transform:translateX(3px)}
.button-group{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:26px;padding-top:44px;padding-bottom:52px;align-items:center}
.hero-copy{padding-block:18px}
.community-label{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);margin-bottom:31px}
.community-label>span{height:7px;width:7px;background:var(--red);border-radius:50%;flex-shrink:0}
.hero h1{font-size:clamp(48px,5.2vw,74px);line-height:1.075;letter-spacing:-.055em;white-space:nowrap}
.hero-description{font-size:18px;line-height:1.8;max-width:490px;margin:26px 0 32px}
.hero-footnote{display:flex;align-items:center;gap:15px;margin-top:57px}
.hero-footnote p{font-size:12px}
.small-link-mark{position:relative;display:block;width:38px;height:28px;flex-shrink:0}
.small-link-mark i{display:block;position:absolute;width:21px;height:21px;border:5px solid var(--red);transform:rotate(45deg);top:4px;left:3px}
.small-link-mark i+i{left:17px;border-color:#e5b800}
.hero-visual{height:550px;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 87%,87% 100%,0 100%)}
.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:50% 41%}
.hero-visual::after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(9,32,38,.75));pointer-events:none}
.hero-visual figcaption{position:absolute;left:27px;bottom:29px;right:45px;display:flex;align-items:center;gap:8px;color:white;font-size:12px;z-index:1}
.hero-visual figcaption .icon{width:17px;height:17px}
.values-strip{background:var(--mist);border-block:1px solid #e8ece9}
.values-grid{display:grid;grid-template-columns:1fr 1.12fr 1fr;padding-block:30px}
.value{display:flex;align-items:center;gap:19px;padding-inline:35px;border-right:1px solid #d8dfdc}
.value:first-child{padding-left:0}.value:last-child{padding-right:0;border:0}
.value>.line-icon{color:var(--red);width:32px;height:32px}
.value h2{font-family:"DM Sans",sans-serif;font-size:15px;font-weight:600;letter-spacing:0;margin-bottom:5px}
.value p{font-size:12px}
.about-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.about-copy .lead{font-size:23px;line-height:1.5;color:var(--ink);letter-spacing:-.02em;margin-bottom:23px}
.about-copy p+p{margin-top:18px}
.programs-section{background:var(--mist)}
.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
.program{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:34px 0 32px 62px;border-top:1px solid #ced6d2}
.program>.line-icon{position:absolute;top:34px;left:0;color:var(--red)}
.program p{margin-top:13px;margin-bottom:23px;max-width:420px;font-size:15px;line-height:1.8}
.program .text-link{margin-top:auto}
.community-section{display:grid;grid-template-columns:1fr 1fr;margin-top:100px}
.community-photo{min-height:440px;position:relative}.community-photo img{width:100%;height:100%;object-fit:cover}
.community-photo figcaption{position:absolute;bottom:12px;left:14px;background:rgba(14,26,27,.8);color:white;font-size:10px;padding:4px 9px;border-radius:3px}
.community-photo figcaption a{text-decoration:underline}
.community-copy{padding:64px 48px;background:var(--ink);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.community-copy .section-label{color:#efd777}
.community-copy h2{color:white;font-size:clamp(29px,2.7vw,38px);line-height:1.25}
.community-copy p:not(.section-label){color:#d6dfdd;margin:25px 0 29px;font-size:15px;max-width:420px}
.text-link-light{color:white}
.team-section+.events-section{padding-top:0}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}
.team-portrait{aspect-ratio:1;overflow:hidden;background:#f3f5f4;border-radius:50%;width:100%;max-width:248px;margin-inline:auto}
.team-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.team-member-info{padding-top:21px;text-align:center}
.team-links{display:flex;justify-content:center;align-items:center;gap:6px 18px;flex-wrap:wrap}
.team-role{color:var(--red);font-size:12px;font-weight:600;margin-bottom:7px}
.team-member h3{font-size:21px;letter-spacing:-.035em}
.team-member .text-link{font-size:12px;margin-top:17px;color:var(--muted);gap:8px}
.team-member .text-link .icon{width:17px;height:17px}
.event-notice{padding:34px;background:var(--mist);display:flex;gap:27px;align-items:center;border:1px solid #e0e6e2;border-radius:5px}
.event-icon{display:grid;place-items:center;width:72px;height:80px;border:1px solid #d4ddda;background:white;border-radius:4px;flex-shrink:0;color:var(--red)}
.status-label{font-size:12px;color:var(--muted)}
.event-notice h3{margin:6px 0 10px;font-size:25px}
.event-notice p{max-width:580px;font-size:14px}
.event-notice>.button{margin-left:auto}
.past-events{margin-top:28px;border-block:1px solid var(--line)}
.past-events summary{display:flex;align-items:center;justify-content:space-between;padding:20px 0;cursor:pointer;font-size:14px;font-weight:600;list-style:none}
.past-events summary::-webkit-details-marker{display:none}
.past-events summary span{font-size:23px;line-height:1;font-weight:400;transition:transform .15s}
.past-events[open] summary span{transform:rotate(45deg)}
.past-events-content{padding:0 0 15px}
.archive-note{font-size:13px;padding-bottom:13px}
.past-event{padding:22px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:170px 1fr auto;gap:25px;align-items:center}
.past-event time{font-size:14px;color:var(--muted)}
.past-event h3{font-family:"DM Sans",sans-serif;font-size:17px;font-weight:600;letter-spacing:0}
.past-event p{font-size:13px;margin-top:5px}
.archive-tag{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:4px 10px;border-radius:20px}
.membership-section{background:var(--red);color:white}
.membership-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:100px;padding-block:76px}
.membership-copy>.section-label{color:#ffe9be}
.membership-copy h2{font-size:clamp(34px,3.4vw,47px)}
.membership-copy>p:not(.section-label){color:#ffe5e3;margin-top:22px;margin-bottom:30px;max-width:465px}
.form-note{display:block;color:#ffe5e3;font-size:11px;margin-top:15px}
.membership-benefits{padding-left:45px;border-left:1px solid #d46060;align-self:center}
.membership-benefits h3{font-size:18px;font-weight:600;letter-spacing:-.02em}
.membership-benefits ul{padding:0;margin:27px 0 0;list-style:none;display:grid;gap:23px}
.membership-benefits li{display:flex;gap:15px;align-items:flex-start}
.membership-benefits .icon{color:var(--yellow);margin-top:2px}
.membership-benefits strong{font-size:15px;font-weight:600;display:block}
.membership-benefits span{font-size:13px;color:#ffe5e3;display:block;margin-top:2px}
.involved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.involved-grid article{padding-top:26px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}
.involved-grid article p{font-size:15px;margin:16px 0 25px}
.involved-grid .text-link{margin-top:auto}
.site-footer{background:var(--mist)}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:65px 0 53px;border-bottom:1px solid #d6deda}
.footer-top .section-label{margin-bottom:14px}
.footer-top h2{font-size:32px}
.footer-email{display:inline-flex;align-items:center;gap:22px;font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-.03em;color:var(--red);margin-top:18px}
.footer-email:hover{text-decoration:underline}
.footer-top>p{font-size:14px;padding-right:65px}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:36px 0}
.footer-main .brand{width:240px}
.footer-main>p{font-size:13px;margin-left:5px;margin-right:auto}
.footer-main nav{display:flex;gap:26px;font-size:13px}
.footer-main nav a:hover,.footer-bottom a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid #dce3df;display:flex;align-items:center;gap:24px;padding-block:21px;color:var(--muted);font-size:11px}
.footer-bottom>span{margin-left:auto}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:9px 12px;align-items:center;gap:12px;font-size:13px;min-height:44px}
.menu-lines{width:18px;height:13px;display:block;border-block:1.5px solid var(--ink);position:relative}
.menu-lines::after{content:"";position:absolute;top:4px;width:18px;height:1.5px;background:var(--ink)}
.document{max-width:790px;padding-block:76px 100px;min-height:65vh}
.document h1{font-size:clamp(37px,5vw,60px);margin-bottom:24px}
.document h2{font-size:25px;margin:35px 0 14px}
.document p{margin-bottom:18px}
.document p a{color:var(--red);text-decoration:underline}
.document .button{margin-top:15px}
.document .section-label{margin-bottom:18px}
.member-page{min-height:100dvh;display:flex;flex-direction:column}
.member-page .site-footer{margin-top:auto}
.member-coming-soon{padding-block:80px 90px;text-align:center;max-width:840px}
.member-emblem{width:76px;height:76px;margin:0 auto 30px;border-radius:50%;display:grid;place-items:center;color:var(--red);background:#fbefed}
.member-emblem svg{width:42px;height:42px}
.member-coming-soon .section-label{display:flex;justify-content:center;align-items:center;gap:12px}
.coming-soon-badge{font-size:11px;font-weight:600;padding:4px 10px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}
.member-coming-soon h1{font-size:clamp(36px,5vw,60px)}
.member-coming-soon>p:not(.section-label){max-width:470px;margin:25px auto 0}
.member-coming-soon .button-group{justify-content:center;margin-top:32px}
.member-coming-soon .member-registration-note{font-size:13px}
.member-registration-note a{color:var(--red);text-decoration:underline}
@media(max-width:1050px){.site-header{height:auto;min-height:var(--header-height)}.header-inner{min-height:var(--header-height);flex-wrap:wrap;gap:0}.menu-toggle:not([hidden]){display:inline-flex}.primary-navigation{width:100%;padding:6px 0 20px;gap:8px 22px;flex-wrap:wrap}.primary-navigation .button{margin-left:auto}.js-enabled .primary-navigation{display:none}.js-enabled .primary-navigation.is-open{display:flex;flex-direction:column;align-items:stretch;height:calc(100dvh - var(--header-height));padding:25px 0;overflow:auto;justify-content:flex-start;gap:10px}.primary-navigation.is-open>a:not(.button){font-size:23px;font-weight:400;padding:16px 0;border-bottom:1px solid var(--line)}.primary-navigation.is-open .button{margin:20px 0 0;align-self:flex-start;padding:14px 24px}.primary-navigation>a:not(.button)::after{display:none}}
@media(min-width:1500px){.hero{gap:65px}.hero-visual{height:580px}}
@media(max-width:1150px){:root{--gutter:32px}.brand{width:230px}.primary-navigation{gap:22px}.hero{gap:28px}.hero h1{font-size:clamp(43px,5.4vw,62px)}.hero-visual{height:510px}.hero-description{font-size:16px}.hero .button-group{gap:20px}.hero .button{padding-inline:18px;gap:15px}.hero .text-link{font-size:13px;gap:8px}.value{padding-inline:23px;gap:14px}.value h2{font-size:13px}.value p{font-size:11px}.about-section{gap:50px}.membership-inner{gap:55px}.community-copy{padding:44px 35px}.footer-main>p{display:none}.footer-top>p{padding:0}}
@media(max-width:950px){:root{--header-height:86px}.primary-navigation{gap:19px;font-size:13px}.primary-navigation .button{gap:12px;padding-inline:13px}.brand{width:215px}.hero{padding-top:33px;gap:23px}.hero h1{font-size:49px;white-space:normal}.hero-visual{height:495px}.community-label{font-size:11px;margin-bottom:24px}.hero-description{font-size:16px}.hero-footnote{margin-top:33px}.hero .button-group{align-items:flex-start;flex-direction:column}.hero .text-link{padding-block:3px}.values-grid{gap:25px}.value{padding:0;border:0;align-items:flex-start;gap:12px}.value p{max-width:155px}.value>.line-icon{width:26px;height:26px}.section{padding-block:76px}.section-heading{gap:35px}.section-heading>p{max-width:330px;font-size:14px}.section-heading>p br{display:none}.program-grid{gap:0 35px}.program{padding-left:49px}.program h3{font-size:20px}.community-section{margin-top:76px}.community-photo{min-height:440px}.community-copy h2 br{display:none}.event-notice{gap:20px;padding:26px;flex-wrap:wrap}.event-notice>div:nth-child(2){flex:1}.event-notice>.button{margin-left:92px}.membership-inner{gap:40px}.membership-benefits{padding-left:28px}.involved-grid{gap:30px}.footer-main{gap:18px}.footer-main nav{gap:18px}.footer-bottom{flex-wrap:wrap;gap:10px 24px}.footer-bottom>span{width:100%;margin:0}}
@media(max-width:760px){:root{--gutter:24px;--header-height:80px}.site-header{height:auto;min-height:var(--header-height)}.header-inner{min-height:var(--header-height);flex-wrap:wrap;gap:0}.brand{width:220px}.menu-toggle:not([hidden]){display:inline-flex}.primary-navigation{width:100%;padding:6px 0 20px;gap:8px 22px;flex-wrap:wrap}.primary-navigation .button{margin-left:auto}.js-enabled .primary-navigation{display:none}.js-enabled .primary-navigation.is-open{display:flex;flex-direction:column;align-items:stretch;height:calc(100dvh - var(--header-height));padding:25px 0;overflow:auto;justify-content:flex-start;gap:10px}.primary-navigation.is-open>a:not(.button){font-size:23px;font-weight:400;padding:16px 0;border-bottom:1px solid var(--line)}.primary-navigation.is-open .button{margin:20px 0 0;align-self:flex-start;padding:14px 24px}.primary-navigation>a:not(.button)::after{display:none}.hero{grid-template-columns:1fr;gap:30px;padding-top:38px;padding-bottom:32px}.hero-copy{padding:0}.hero h1{font-size:clamp(47px,8.8vw,65px);line-height:1.08;white-space:nowrap}.community-label{font-size:12px;margin-bottom:24px}.hero-description{font-size:16px;margin-top:23px;margin-bottom:26px;max-width:480px}.hero .button-group{flex-direction:row;align-items:center;gap:22px}.hero .button{font-size:13px}.hero-footnote{margin-top:29px}.hero-visual{height:390px;clip-path:polygon(0 0,100% 0,100% 85%,90% 100%,0 100%)}.hero-visual>img{object-position:50% 39%}.hero-visual figcaption{left:22px;bottom:24px;font-size:11px}.values-grid{grid-template-columns:1fr;padding-block:28px;gap:24px}.value{gap:20px;align-items:center}.value>.line-icon{width:29px;height:29px}.value h2{font-size:14px;margin-bottom:2px}.value p{max-width:none;font-size:12px}.section{padding-block:62px}.about-section{grid-template-columns:1fr;gap:30px}.section-label{margin-bottom:17px}.about-copy .lead{font-size:21px}.about-copy p{font-size:15px}.section-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:32px}.section-heading>p{max-width:470px;font-size:15px;padding:0}.program-grid{grid-template-columns:1fr}.program{padding:28px 0 28px 52px}.program>.line-icon{top:29px}.program p{max-width:none;margin-bottom:20px}.program:last-child{padding-bottom:0}.community-section{grid-template-columns:1fr;margin-top:62px}.community-photo{min-height:0;height:310px}.community-copy{padding:36px 30px 40px}.community-copy h2{max-width:440px;font-size:32px}.community-copy p:not(.section-label){margin:20px 0 24px;max-width:none}.event-notice{padding:24px;gap:17px}.event-icon{width:52px;height:60px}.event-notice>div:nth-child(2){min-width:calc(100% - 72px)}.event-notice h3{font-size:23px}.event-notice p{font-size:13px}.event-notice>.button{margin-left:0;width:100%;margin-top:8px}.past-event{grid-template-columns:1fr auto;gap:10px}.past-event time{grid-column:1/3;font-size:12px}.past-event h3{font-size:15px}.past-event p{font-size:12px}.archive-tag{align-self:start}.membership-inner{grid-template-columns:1fr;gap:39px;padding-block:53px}.membership-copy h2{font-size:35px}.membership-copy>p:not(.section-label){font-size:15px;max-width:480px}.membership-benefits{border-left:0;border-top:1px solid #d46060;padding:31px 0 0}.membership-benefits ul{grid-template-columns:1fr 1fr;gap:25px}.membership-benefits li{gap:11px}.involved-grid{grid-template-columns:1fr;gap:30px}.involved-grid article{padding-top:24px}.involved-grid article p{max-width:490px;margin:12px 0 18px}.footer-top{padding:44px 0 34px;flex-direction:column;align-items:flex-start;gap:25px}.footer-top h2{font-size:29px}.footer-email{font-size:25px}.footer-main{padding-block:29px;flex-direction:column;align-items:flex-start;gap:22px}.footer-main .brand{width:225px}.footer-main nav{flex-wrap:wrap;gap:24px}.footer-bottom{font-size:10px}.footer-bottom p{flex:1;min-width:80%}.document{padding-block:54px 72px}}
@media(max-width:400px){:root{--gutter:20px}.brand{width:191px}.menu-toggle{padding-inline:10px;gap:8px}.hero h1{font-size:43px}.community-label{font-size:10px}.hero-description{font-size:15px}.desktop-break{display:none}.hero .button-group{gap:18px;flex-direction:column;align-items:flex-start}.hero-visual{height:340px}.hero-footnote p{font-size:11px}.hero-visual figcaption{font-size:10px;left:17px;right:26px}.membership-benefits ul{grid-template-columns:1fr}.membership-copy h2{font-size:31px}.community-copy{padding-inline:25px}.community-copy h2{font-size:29px}}
@media(min-width:761px) and (max-width:1050px){.primary-navigation{gap:14px;font-size:12px}.header-inner{gap:16px}.primary-navigation .button{font-size:12px;gap:10px}.header-inner>.brand{width:195px}}
@media(max-width:950px){.team-grid{gap:20px}.team-member h3{font-size:18px}}
@media(max-width:760px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}.team-member h3{font-size:20px}.team-member-info{padding-top:17px}}
@media(max-width:480px){.team-grid{gap:29px 17px}.team-member h3{font-size:17px}.team-role{font-size:11px}.team-member .text-link{font-size:11px;gap:5px}.team-member .text-link .icon{width:15px;height:15px}}
@media(max-width:400px){.header-inner>.brand{width:191px}.member-coming-soon{padding-block:54px 65px}.member-coming-soon h1 br{display:none}}
@media(max-width:360px){.hero h1{font-size:36px}.team-member h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
