:root{--blue:#004aad;--blue-dark:#002f72;--blue-soft:#eaf2ff;--ink:#10233f;--muted:#5d6d83;--white:#fff;--paper:#f8faff;--line:#dce5f1;--shadow:0 24px 70px rgba(0,74,173,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:110px;max-width:1240px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between}.brand img{display:block;width:154px;height:96px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:700}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--blue)}.nav-cta{padding:11px 20px;color:white!important;background:var(--blue);border-radius:8px}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span{display:block;width:24px;height:2px;margin:5px;background:var(--ink)}
.eyebrow{margin:0 0 16px;color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.eyebrow.light{color:#a8caff}h1,h2,h3{font-family:"Manrope",sans-serif;letter-spacing:-.04em;line-height:1.08}h1{margin:0;font-size:clamp(3.5rem,6.2vw,6.2rem);font-weight:800}h1 span{color:var(--blue)}h2{margin:0;font-size:clamp(2.4rem,4.2vw,4.15rem)}h3{font-size:1.45rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:0;border-radius:8px;font-weight:800;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:white;background:var(--blue);box-shadow:0 12px 28px rgba(0,74,173,.22)}
.hero{max-width:1240px;min-height:660px;margin:auto;padding:80px 34px 105px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.hero-lead{max-width:740px;margin:30px 0;color:var(--muted);font-size:1.13rem}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{font-weight:700}.text-link span{margin-left:5px}.hero-image{min-height:430px;border-radius:28px 28px 100px 28px;box-shadow:var(--shadow);overflow:hidden}.hero-image img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center}
.mission{padding:110px max(34px,calc((100vw - 1172px)/2));display:grid;grid-template-columns:.35fr 1.65fr;gap:70px;background:white}.section-label{padding-top:12px;color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.mission-content{max-width:850px}.mission-content .large{margin:35px 0 18px;font-size:1.18rem;color:#324660}.mission-content p:last-child{color:var(--muted)}
.expertise{padding:110px max(34px,calc((100vw - 1172px)/2))}.section-heading{max-width:740px;margin-bottom:58px}.section-heading>p:last-child{color:var(--muted);max-width:600px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expertise article{min-height:250px;padding:30px;background:white;border:1px solid var(--line);border-radius:16px;transition:transform .2s,border-color .2s}.expertise article:hover{transform:translateY(-4px);border-color:#99bde9}.expertise article span{display:grid;place-items:center;width:36px;height:36px;color:var(--blue);background:var(--blue-soft);border-radius:8px;font-size:.75rem;font-weight:800}.expertise h3{margin:30px 0 10px}.expertise article p{margin:0;color:var(--muted);font-size:.94rem}
.method{padding:110px max(34px,calc((100vw - 1172px)/2));display:grid;grid-template-columns:1fr 1fr;gap:90px;color:white;background:var(--blue-dark)}.method-intro p:last-child{color:#c1d2e9}.method-steps{margin:0;padding:0;list-style:none}.method-steps li{display:flex;gap:24px;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.16)}.method-steps li:first-child{padding-top:0}.method-steps li>span{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;background:var(--blue);font-weight:800}.method-steps strong{font-family:"Manrope";font-size:1.2rem}.method-steps p{margin:5px 0 0;color:#c1d2e9}
.school{padding:110px max(34px,calc((100vw - 1172px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;background:white}.school-visual{border-radius:24px 24px 70px 24px;box-shadow:var(--shadow);overflow:hidden}.school-visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.school>div:last-child>p:last-child{color:var(--muted);font-size:1.05rem}
.experience{padding:110px max(34px,calc((100vw - 1172px)/2))}.section-heading.compact{margin-bottom:45px}.org-list{display:flex;flex-wrap:wrap;gap:12px}.org-list span{padding:17px 23px;background:white;border:1px solid var(--line);border-radius:99px;color:#314762;font-weight:700}
.contact{padding:110px max(34px,calc((100vw - 1172px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;color:white;background:var(--blue)}.contact-copy>p:last-child{color:#c7dcfa}.contact form{padding:38px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}label{display:block;margin-bottom:18px;font-size:.82rem;font-weight:700}input,textarea{width:100%;margin-top:7px;padding:14px 15px;color:white;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.28);border-radius:8px;outline:0;resize:vertical}input::placeholder,textarea::placeholder{color:#b7cff0}input:focus,textarea:focus{border-color:white;box-shadow:0 0 0 3px rgba(255,255,255,.13)}.button-white{color:var(--blue);background:white}.button-white:disabled{cursor:wait;opacity:.75}.form-note,.form-status{margin:12px 0 0;color:#c2d8f7;font-size:.74rem}.form-status{font-weight:700}
footer{min-height:150px;padding:28px max(34px,calc((100vw - 1172px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px;background:#051c3a;color:#9fb3ce;font-size:.82rem}footer img{width:110px;height:85px;object-fit:contain;filter:brightness(0) invert(1)}
@media(max-width:900px){.site-header{height:94px;padding:0 22px}.brand img{width:126px;height:82px}.menu-button{display:block}.site-header nav{display:none;position:absolute;z-index:20;top:88px;left:18px;right:18px;padding:25px;flex-direction:column;align-items:stretch;background:white;border-radius:14px;box-shadow:var(--shadow)}.site-header nav.open{display:flex}.nav-cta{text-align:center}.hero,.mission,.method,.school,.contact{grid-template-columns:1fr;gap:50px}.hero{padding:55px 24px 75px}.mission,.method,.school,.contact{padding:80px 24px}.expertise,.experience{padding:80px 24px}.expertise-grid{grid-template-columns:1fr 1fr}.school-visual{max-width:620px}.section-label{display:none}}
@media(max-width:570px){h1{font-size:3.25rem}.hero-actions{align-items:flex-start;flex-direction:column}.hero-image,.hero-image img{min-height:320px}.expertise-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.contact form{padding:24px}footer{align-items:flex-start;flex-direction:column;padding:42px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
