:root{--ink:#171426;--purple:#4b164c;--pink:#e71977;--blush:#f8e8ef;--paper:#fffdf9;--muted:#655f6d;--line:#d8cfd7}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.55}
a{color:inherit;text-decoration:none}
.skip-link{position:absolute;left:-999px}
.skip-link:focus{left:10px;top:10px;z-index:10;background:#fff;padding:8px}
.announcement{background:var(--purple);color:#fff;text-align:center;font-size:11px;letter-spacing:.16em;padding:10px 20px;font-weight:700}
.announcement span{color:#f4ba3b;padding:0 7px}
.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:auto;padding:0 48px;position:relative;z-index:4}
.brand{display:flex;align-items:center}
.brand img{display:block;width:128px;height:auto;max-height:72px;object-fit:contain}
.site-header nav{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:600}
.site-header nav>a:not(.nav-cta):hover{color:var(--pink)}
.nav-cta{border:1px solid var(--ink);padding:10px 15px}
.menu-toggle{display:none}
.hero{min-height:620px;background:var(--blush);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);overflow:hidden}
.hero-copy{padding:100px max(48px,calc((100vw - 1184px)/2)) 90px;position:relative;z-index:2}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--pink);margin:0 0 18px}
.hero h1,h2{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.045em;line-height:.98;margin:0}
.hero h1{font-size:clamp(52px,5.7vw,84px);max-width:620px}
.hero em,h2 em{font-style:italic;color:var(--pink);font-weight:500}
.hero-intro{font-size:18px;max-width:548px;line-height:1.55;margin:28px 0}
.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;gap:24px;padding:15px 20px;font-weight:700;font-size:14px;transition:transform .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--pink);color:#fff}
.button span{font-size:21px;line-height:0}
.text-link{font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:3px}
.text-link span{margin-left:10px}
.hero-art{position:relative;background:var(--purple);overflow:hidden}
.sun{width:490px;height:490px;border-radius:50%;background:#f3bd43;position:absolute;right:-110px;top:70px}
.arc{border-radius:50%;border:1px solid rgba(255,255,255,.45);position:absolute}
.arc-one{width:580px;height:580px;right:-180px;top:25px}
.arc-two{width:415px;height:415px;right:-95px;top:108px}
.home{position:absolute;bottom:0;background:#201323;width:210px;height:250px}
.home:before{content:'';position:absolute;top:-105px;border-left:105px solid transparent;border-right:105px solid transparent;border-bottom:105px solid #201323}
.home-back{right:275px;height:185px;width:170px;background:#7d2f73}
.home-back:before{border-left-width:85px;border-right-width:85px;border-bottom-color:#7d2f73;top:-85px}
.home-front{right:47px}
.hero-quote{position:absolute;right:44px;bottom:34px;color:#fff;line-height:1.22;font-family:Fraunces,serif;font-size:21px;width:195px}
.section-pad{padding:118px max(48px,calc((100vw - 1184px)/2))}
.section-kicker{display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:.16em;font-size:11px;color:var(--pink)}
.house-icon{color:var(--purple);font-size:25px;line-height:0}
.mission-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;padding:30px 0 72px}
.mission h2,.demands h2,.leadership h2,.resources h2,.join h2{font-size:clamp(42px,4.4vw,64px)}
.mission-layout p{font-size:18px;margin:0;padding-top:12px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.pillars article{padding:27px 30px 0 0}
.pillars article+article{border-left:1px solid var(--line);padding-left:30px}
.pillars span,.demand-list b{color:var(--pink);font-size:12px;font-weight:700;letter-spacing:.14em}
.pillars h3,.demand-list h3{font-family:Fraunces,Georgia,serif;font-size:24px;margin:10px 0 9px;line-height:1.12}
.pillars p{margin:0;color:var(--muted);font-size:14px}
.demands{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:60px}
.demands-heading .eyebrow{color:#f9a4c5}
.demands h2 em{color:#f3bd43}
.demands-copy{padding-top:30px;font-size:18px}
.quote-rule{border-top:1px solid rgba(255,255,255,.3);margin-top:45px;padding-top:16px;font-family:Fraunces,Georgia,serif;font-size:20px;color:#f8bad3}
.demand-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:0;list-style:none;margin:15px 0 0;padding:0;border-top:1px solid rgba(255,255,255,.3)}
.demand-list li{padding:26px 24px 0 0;display:flex;gap:16px}
.demand-list li+li{border-left:1px solid rgba(255,255,255,.3);padding-left:24px}
.demand-list h3{color:#fff}
.demand-list p{font-size:14px;color:#dad5dc;margin:0}
.leadership{background:#fff}
.leadership-title{max-width:700px}
.leaders{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;margin-top:54px}
.leaders article{padding:30px;background:var(--blush);min-height:265px}
.leaders article+article{background:#f3bd43}
.leader-monogram{font-family:Fraunces,Georgia,serif;font-size:27px;color:var(--pink);border-bottom:1px solid rgba(23,20,38,.26);padding-bottom:18px}
.leaders h3{font-family:Fraunces,Georgia,serif;font-size:25px;margin:25px 0 2px}
.leaders p{font-size:14px;line-height:1.55;margin:5px 0}
.leaders .role{color:var(--purple);font-weight:700}
.resources{display:grid;grid-template-columns:.9fr 1.1fr;gap:105px;border-top:1px solid var(--line)}
.resources h2{font-size:43px}
.resource-copy p{margin:0 0 20px}
.resource-link{display:block;color:var(--purple);font-weight:700;margin-top:10px;text-decoration:underline;text-underline-offset:4px}
.resource-link span{color:var(--pink)}
.join{background:var(--pink);color:white;display:grid;grid-template-columns:1.2fr .8fr;gap:90px;padding:95px max(48px,calc((100vw - 1184px)/2))}
.join .eyebrow{color:#fff}
.join h2 em{color:var(--purple)}
.join>div:last-child{font-size:18px;padding-top:18px}
.button-light{margin-top:22px;background:#fff;color:var(--ink)}
footer{background:var(--purple);color:#fff;padding:48px max(48px,calc((100vw - 1184px)/2)) 27px}
.footer-brand{display:flex;flex-direction:column;gap:8px}
.footer-brand strong{font-family:Fraunces,Georgia,serif;font-size:18px;letter-spacing:.02em}
.footer-brand span,footer small{font-size:11px;letter-spacing:.04em}
.footer-links{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.28);margin:30px 0 17px;padding-top:17px;font-size:13px}
.footer-links a:hover{text-decoration:underline}
@media(max-width:800px){.site-header{height:82px;padding:0 22px}
.site-header nav{display:none;position:absolute;left:0;right:0;top:82px;background:var(--paper);padding:20px 22px;box-shadow:0 8px 14px #0002}
.site-header nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:19px}
.menu-toggle{display:flex;gap:7px;align-items:center;background:none;border:0;font:700 13px 'DM Sans';text-transform:uppercase;letter-spacing:.1em}
.menu-toggle span,.menu-toggle:after{content:'';display:block;width:18px;height:1px;background:var(--ink)}
.hero{grid-template-columns:1fr}
.hero-copy{padding:75px 25px 72px}
.hero-art{height:350px}
.sun{width:370px;height:370px;right:-95px;top:10px}
.hero-quote{right:23px}
.section-pad{padding:76px 25px}
.mission-layout,.resources,.join{grid-template-columns:1fr;gap:30px}
.mission-layout{padding-bottom:42px}
.pillars{grid-template-columns:1fr}
.pillars article,.pillars article+article{border-left:0;border-bottom:1px solid var(--line);padding:22px 0}
.demands{display:block}
.demands-copy{padding-top:30px}
.demand-list{grid-template-columns:1fr 1fr;margin-top:45px}
.demand-list li+li{border-left:0;padding-left:0}
.demand-list li:nth-child(even){padding-left:17px;border-left:1px solid rgba(255,255,255,.3)}
.demand-list li{padding:22px 15px 22px 0}
.leaders{grid-template-columns:1fr;margin-top:35px}
.resources{gap:27px}
.join{padding:74px 25px}
.footer-brand span{line-height:1.6}
.hero h1{font-size:52px}
.hero-intro{font-size:17px}
}
@media(max-width:420px){.brand img{width:106px}
.demand-list{grid-template-columns:1fr}
.demand-list li:nth-child(even){padding-left:0;border-left:0}
.hero-actions{gap:18px}
.hero-art{height:300px}
}

