@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fredoka:wght@400;500;600&display=swap');
:root{--blue:#174c91;--ink:#163c47;--green:#326c3d;--lime:#dbe88b;--light:#eff5fa;--line:#dce5e7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 'DM Sans',sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button,.button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b2870d;outline-offset:4px}.topline{background:var(--blue);color:white;padding:9px 6%;font-size:14px;display:flex;justify-content:space-between}header{padding:18px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font:500 25px/1.05 'Fredoka',sans-serif;color:var(--blue)}.brand img{width:58px;height:58px;object-fit:contain}.brand small{display:block;font:700 11px/2 'DM Sans',sans-serif;letter-spacing:2px}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-weight:600;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--blue);color:white;border:0;border-radius:9px;padding:15px 23px;text-decoration:none;font-weight:700;min-height:48px}.button:hover{background:#10376a}.button.small{padding:11px 19px}.menu{display:none}.hero{max-width:1400px;margin:auto;padding:64px 6% 65px;display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.eyebrow{font-size:13px;font-weight:700;letter-spacing:2.1px;color:var(--green);margin:0 0 20px}h1,h2,h3{font-family:'Fredoka',sans-serif;font-weight:500;line-height:1.12}h1{font-size:clamp(44px,5.1vw,76px);letter-spacing:-1.5px;margin:0 0 25px}h1 em{font-style:normal;color:var(--green)}.lead{font-size:18px;max-width:490px;color:#4c656c}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}.textlink{font-size:14px;font-weight:700;text-underline-offset:6px}.reassurance{margin-top:25px;font-size:14px;color:#567078}.hero-photo{position:relative;padding-bottom:25px}.hero-photo>img{width:100%;height:465px;object-fit:cover;border-radius:110px 18px 18px 18px}.photo-note{position:absolute;bottom:0;right:-14px;background:var(--lime);padding:19px 28px;border-radius:12px;transform:rotate(-3deg)}.photo-note span{font:500 24px 'Fredoka',sans-serif}.photo-note small{display:block;font-size:13px}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 6%;background:var(--light);gap:20px}.facts div{border-right:1px solid #cbd9e5}.facts div:last-child{border:0}.facts strong{display:block;font:500 22px 'Fredoka',sans-serif;color:var(--blue)}.facts span{display:block;font-size:14px;margin-top:6px}.section{padding:80px 6%;max-width:1400px;margin:auto}h2{font-size:clamp(32px,3.4vw,47px);margin:0 0 22px}h3{font-size:24px;margin:12px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.section-head p{max-width:440px}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.split img{width:100%;border-radius:18px;aspect-ratio:1.25;object-fit:cover}.tag{display:inline-block;border-radius:30px;background:#e9f2e7;color:var(--green);padding:7px 13px;font-size:14px;font-weight:600}.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:16px;padding:26px;background:white}.card .number{font:500 30px 'Fredoka';color:var(--green)}.card p{margin-bottom:0}.tint{background:var(--light)}.green{background:#eff5e9}.calendar{display:grid;grid-template-columns:1.1fr 1fr;gap:30px}.calendar-panel{background:white;padding:24px;border:1px solid var(--line);border-radius:16px}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px}.calendar-header h3{font-size:22px;margin:0}.iconbutton{border:1px solid var(--line);background:white;border-radius:8px;min-width:44px;min-height:44px}.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.day{padding:10px 2px;min-width:0;border-radius:7px}.weekday{font-size:12px;font-weight:bold;color:#52676b}.today{background:var(--blue);color:white}.event-day{box-shadow:inset 0 -4px var(--green)}.event{padding:17px 0;border-bottom:1px solid var(--line)}.event strong{display:block}.muted{color:#52676b}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0}.gallery img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:14px}.gallery figcaption{font-size:14px;margin-top:8px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:30px 0}.steps strong{color:var(--green);font-size:14px}.faq{max-width:850px;margin:auto}details{padding:20px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:700;font-size:18px}details p{margin-bottom:0}.contact{background:var(--blue);color:white;border-radius:24px;padding:40px}.contact a{overflow-wrap:anywhere}.contact h2{color:white}.contact-form{background:white;padding:30px;color:var(--ink);border-radius:16px;display:grid;gap:15px}label{display:grid;gap:6px;font-weight:600;font-size:14px}input,textarea,select{width:100%;min-width:0;border:1px solid #b7c9cf;border-radius:7px;background:white;color:var(--ink);padding:11px;font-weight:400}textarea{min-height:100px}.contact-form small{line-height:1.5}.map{width:100%;height:240px;border:0;border-radius:14px;margin-top:20px}footer{padding:40px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap}footer .brand{display:block}footer small{font-size:12px}.mobile-contact{display:none}.skip{position:absolute;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:0}.editor{max-width:980px;margin:30px auto;padding:0 20px}.editor-toolbar{position:sticky;top:0;background:white;padding:16px 0;display:flex;gap:12px;flex-wrap:wrap;z-index:12}.editor details{padding:18px;border:1px solid var(--line);border-radius:10px;margin:14px 0}.editor-fields{display:grid;gap:16px;padding-top:20px}.editor-item{border-bottom:1px solid var(--line);padding:16px 0;display:grid;gap:12px}.notice{padding:16px;background:#edf4dc;border-radius:10px}.status{font-size:14px}.secondary{background:#eaf0f5;color:var(--blue)}
@media(max-width:850px){nav{gap:16px}.hero{gap:25px;padding-top:40px}.hero-photo>img{height:380px}.programs{grid-template-columns:repeat(2,1fr)}.split{gap:30px}.section{padding:60px 6%}.contact{padding:25px}.contact.split{grid-template-columns:1fr}.facts strong{font-size:18px}}
@media(max-width:620px){.topline{font-size:12px;text-align:center;justify-content:center}.topline span{display:none}header{padding:12px 5%}.brand{font-size:23px}.brand img{width:44px;height:44px}.menu{display:block;padding:9px 14px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--blue)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{padding:8px}.hero{grid-template-columns:1fr;padding:35px 6% 42px;gap:30px}h1{font-size:49px}.hero-photo>img{height:310px;border-top-left-radius:75px}.photo-note{right:-4px;padding:15px 20px}.photo-note span{font-size:21px}.eyebrow{font-size:12px}.lead{font-size:17px}.facts{grid-template-columns:1fr 1fr;padding:25px 6%;gap:22px}.facts div:nth-child(2){border:0}.facts span{font-size:12px}.split,.calendar,.resource-grid,.steps{grid-template-columns:1fr}.section-head{display:block}.section{padding:50px 6%}.programs{grid-template-columns:1fr}.card{padding:24px}.gallery{grid-template-columns:1fr 1fr}.gallery figure:first-child{grid-column:1/-1}.contact{padding:24px 18px}.contact-form{padding:22px 17px}.calendar-panel{padding:16px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:white;box-shadow:0 -2px 14px #163c4720;padding:10px 15px;gap:10px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.mobile-contact a{flex:1;text-align:center;background:var(--blue);color:white;padding:11px 7px;border-radius:7px;text-decoration:none;font-size:14px;font-weight:700}.mobile-contact a:first-child{background:#eaf0f5;color:var(--blue)}footer{padding-bottom:100px}.actions{gap:18px}.day{padding:8px 2px}body{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.preview-banner{background:#f5df8d;color:#513f12;padding:12px;text-align:center;font-weight:700;font-size:14px}

.button.secondary:hover{background:#dce6f0;color:var(--blue)}
