@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root{--navy:#102a43;--blue:#2355d9;--gold:#f4b942;--orange:#ef7d32;--purple:#8135b5;--teal:#149c91;--green:#3b9d62;--cream:#fffaf0;--ink:#17212b;--gray:#5c6670;--line:#e6e1d7;--white:#fff;--shadow:0 18px 55px rgba(16,42,67,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.container{width:min(1160px,90%);margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:var(--navy);color:#fff;padding:.6rem 1rem;z-index:100}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,250,240,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(16,42,67,.08)}.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--navy);letter-spacing:-.03em}.brand img{width:38px;height:48px}.nav{display:flex;gap:24px;align-items:center;font-size:.9rem;font-weight:700}.nav a:hover,.nav a:focus{color:var(--purple)}.lang{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px}.lang a{padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:800}.lang .active{background:var(--navy);color:#fff}.menu{display:none;border:0;background:none;font-size:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:999px;font-weight:800;border:2px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--navy);color:#fff;box-shadow:0 8px 24px rgba(16,42,67,.22)}.btn-secondary{border-color:var(--navy);color:var(--navy)}.btn-gold{background:var(--gold);color:var(--navy)}
.hero{padding:62px 0 72px;overflow:hidden;background:radial-gradient(circle at 86% 12%,#f8d8f0 0,transparent 34%),linear-gradient(145deg,#fffaf0,#fff 72%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:48px;align-items:center}.eyebrow{display:inline-block;font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;color:var(--purple);margin-bottom:14px}.hero h1{font-size:clamp(3rem,6.4vw,5.8rem);line-height:.96;letter-spacing:-.065em;margin:0;color:var(--navy)}.skillup{position:relative;display:inline-block;z-index:0}.skillup:after{content:"";position:absolute;left:-2%;right:-2%;bottom:.01em;height:.22em;background:var(--gold);border-radius:50% 12% 45% 8%;z-index:-1;transform-origin:left;animation:draw 1.25s cubic-bezier(.2,.8,.2,1) both}.skillup:before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--orange);right:-20px;top:8px;animation:pulse 2.2s ease-in-out infinite}@keyframes draw{from{transform:scaleX(0) rotate(-2deg)}to{transform:scaleX(1) rotate(-2deg)}}@keyframes pulse{50%{transform:scale(1.7);opacity:.3}}.nonprofit-kicker{display:inline-block;margin-bottom:12px;padding:7px 12px;border-radius:999px;background:#eaf4ee;color:#20613b;font-weight:900;font-size:.78rem;letter-spacing:.03em}.hero-copy{font-size:1.1rem;color:var(--gray);max-width:620px;margin:24px 0 28px}.nonprofit-tax-note{padding:16px 18px;border-left:4px solid var(--gold);background:#fff8df;border-radius:8px;color:var(--navy);max-width:760px}.pathway-section{background:#fffaf0}.pathway-figure{margin:36px auto 0;max-width:1100px}.pathway-figure picture,.pathway-figure img{display:block;width:100%;height:auto}.pathway-figure figcaption{margin-top:12px;text-align:center;color:var(--gray);font-size:.82rem}.site-footer .legal{line-height:1.6}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-photo{position:relative}.hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:36px 10px 36px 10px;box-shadow:var(--shadow)}.hero-note{position:absolute;left:-30px;bottom:-24px;background:#fff;padding:16px 20px;border-radius:14px;box-shadow:var(--shadow);font-weight:800;color:var(--navy)}.hero-note span{display:block;color:var(--teal);font-size:.8rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px;max-width:580px}.stat{border-left:3px solid var(--gold);padding-left:12px}.stat strong{display:block;color:var(--navy);font-size:1.2rem}.stat span{font-size:.78rem;color:var(--gray)}
.section{padding:88px 0}.white{background:#fff}.tint{background:#f6f0ff}.section-head{max-width:740px;margin:0 auto 42px;text-align:center}.section-head h2,.split h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.045em;color:var(--navy);margin:0 0 16px}.section-head p,.split p{color:var(--gray);font-size:1.04rem}.audience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.audience-card{position:relative;min-height:340px;border-radius:22px;overflow:hidden;color:#fff;box-shadow:var(--shadow)}.audience-card img{width:100%;height:100%;object-fit:cover;position:absolute}.audience-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,20,42,.94),rgba(8,20,42,.05) 72%)}.card-copy{position:absolute;z-index:2;left:26px;right:26px;bottom:24px}.card-copy h3{font-size:1.6rem;margin:0 0 4px}.card-copy p{margin:0 0 14px;color:rgba(255,255,255,.87)}.card-link{display:inline-flex;align-items:center;gap:8px;font-weight:900;color:var(--gold)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.purpose-art{border-radius:28px;background:linear-gradient(145deg,var(--navy),#315b86);padding:40px;color:#fff;box-shadow:var(--shadow)}.purpose-art h3{font-size:1.8rem;margin-top:0}.purpose-list{display:grid;gap:14px}.purpose-item{display:flex;gap:14px;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:12px}.purpose-item b{color:var(--gold)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{background:#fff;padding:30px;border-radius:18px;border:1px solid var(--line)}.step-num{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--gold);font-weight:900;color:var(--navy)}.step h3{color:var(--navy)}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit{padding:24px;background:#fff;border-radius:16px;border-top:5px solid var(--teal)}.benefit:nth-child(2){border-color:var(--purple)}.benefit:nth-child(3){border-color:var(--gold)}.benefit:nth-child(4){border-color:var(--green)}.benefit h3{color:var(--navy)}.principle{max-width:950px;margin:auto;text-align:center}.principle blockquote{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.25;color:var(--navy);font-weight:800;margin:0}.principle cite{display:block;margin-top:18px;color:var(--gray);font-style:normal}.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.story{background:#fff;border-radius:18px;overflow:hidden;border:1px solid var(--line)}.story-top{height:150px;background:linear-gradient(135deg,var(--purple),var(--orange));padding:24px;color:#fff;display:flex;align-items:end;font-weight:900;font-size:1.25rem}.story-body{padding:22px}.story-body p{color:var(--gray)}.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.trust-item{text-align:center;padding:26px}.trust-icon{font-size:2.2rem;color:var(--teal)}.cta{padding:76px 0;background:var(--navy);color:#fff;text-align:center}.cta h2{font-size:clamp(2rem,4vw,3.4rem);margin:0 0 12px}.cta p{max-width:650px;margin:0 auto 24px;color:#d4dde7}.site-footer{padding:56px 0 28px;background:#0c1d2c;color:#cbd5df}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:38px}.site-footer h4{color:#fff}.site-footer ul{list-style:none;padding:0}.site-footer li{margin:8px 0}.legal{border-top:1px solid #314252;margin-top:34px;padding-top:22px;font-size:.8rem;color:#95a5b4}
.inner-hero{padding:70px 0;background:linear-gradient(135deg,#fff,#f2e8ff)}.inner-hero .container{max-width:860px}.inner-hero h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1;letter-spacing:-.055em;color:var(--navy)}.prose{max-width:800px;margin:auto}.prose h2{color:var(--navy);margin-top:2.2rem}.prose p{color:var(--gray)}.form-placeholder{padding:26px;border:2px dashed var(--gold);border-radius:16px;background:#fff8df;margin-top:28px}.form-placeholder strong{display:block;color:var(--navy)}
.contact-section{scroll-margin-top:88px;background:linear-gradient(145deg,#fffaf0,#f6f0ff)}.contact-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:52px;align-items:start}.contact-intro{position:sticky;top:112px}.contact-intro h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.045em;color:var(--navy);margin:0 0 18px}.contact-intro p{color:var(--gray);font-size:1.04rem}.contact-privacy{padding:16px 18px;border-left:4px solid var(--teal);background:#fff;border-radius:8px;font-size:.92rem!important}.contact-privacy a,.contact-fallback a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.contact-form-shell{min-width:0;min-height:860px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow);overflow:hidden}.contact-form-shell iframe{display:block;width:100%;min-height:860px}.contact-fallback{margin:8px 4px 0;text-align:center;color:var(--gray);font-size:.82rem}
@media(max-width:900px){.nav{display:none}.nav.open{display:flex;position:absolute;top:66px;left:5%;right:5%;padding:20px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.menu{display:block}.hero-grid,.split,.contact-layout{grid-template-columns:1fr}.contact-intro{position:static}.hero-photo{order:-1}.hero-note{left:15px}.benefits{grid-template-columns:1fr 1fr}.stories,.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(3rem,13vw,5rem)}}
@media(max-width:620px){.section{padding:64px 0}.audience-grid,.benefits,.trust{grid-template-columns:1fr}.audience-card{min-height:300px}.stats{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.hero{padding-top:34px}.header-inner{height:66px}.brand span{font-size:.95rem}.brand img{width:30px}.hero-note{font-size:.8rem}.lang{margin-left:auto}}
.legal-hero{padding-bottom:52px}.policy-date{color:var(--navy);margin-top:22px}.legal-prose{font-size:1rem}.legal-prose h2{scroll-margin-top:100px}.legal-prose h3{color:var(--navy);margin-top:1.5rem}.legal-prose li{margin:.5rem 0}.legal-prose a{text-decoration:underline;text-underline-offset:3px;color:#1746b5}.policy-summary{padding:24px 28px;border:1px solid #d8c5ed;border-left:5px solid var(--purple);border-radius:14px;background:#faf6ff;color:var(--navy);margin-bottom:36px}.policy-summary ul{margin-bottom:0}.legal-note{margin-top:42px;padding:18px;border-radius:12px;background:#f4f7fa;border:1px solid #dce4ec}.legal-links{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:12px}.legal-links a{text-decoration:underline;text-underline-offset:3px}
body.modal-open{overflow:hidden}.booking-modal[hidden]{display:none}.booking-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px}.booking-backdrop{position:absolute;inset:0;background:rgba(5,18,35,.78);backdrop-filter:blur(6px)}.booking-dialog{position:relative;width:min(1180px,100%);height:min(96vh,960px);display:flex;flex-direction:column;background:#fff;border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.32);overflow:hidden}.booking-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:16px 22px 12px;border-bottom:1px solid var(--line)}.booking-header .eyebrow{margin-bottom:3px}.booking-header h2{margin:0;color:var(--navy);font-size:clamp(1.25rem,3vw,1.75rem);line-height:1.1}.booking-close{flex:0 0 auto;width:42px;height:42px;border:0;border-radius:50%;background:#edf2f7;color:var(--navy);font-size:1.8rem;line-height:1;cursor:pointer}.booking-close:hover,.booking-close:focus{background:var(--gold)}.booking-frame-wrap{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f6f7f9}.booking-frame-wrap iframe{display:block;width:100%;height:900px;min-height:900px;border:0}.booking-fallback{margin:0;padding:8px 20px;text-align:center;color:var(--gray);font-size:.82rem;border-top:1px solid var(--line)}.booking-fallback a{color:var(--blue);text-decoration:underline}
@media(max-width:620px){.booking-modal{padding:0}.booking-dialog{width:100%;height:100dvh;max-height:none;border-radius:0}.booking-header{padding:16px 18px 12px}.booking-close{width:40px;height:40px}.policy-summary{padding:20px}.legal-prose{font-size:.96rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
