:root{--ink:#473d36;--blue:#559eb6;--teal:#61a69a;--green:#78b62a;--cream:#fbfaf5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.8 'Montserrat',sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{display:block;max-width:100%}header{max-width:1400px;margin:auto;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}.logo{width:205px}nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:18px;font-size:12px;font-weight:600}.button{display:inline-flex;gap:35px;align-items:center;background:var(--ink);color:white;padding:15px 24px;border-radius:6px;font-weight:600;font-size:13px;transition:background .2s}.button:hover{background:#347b75}.button.small{padding:12px 19px}.hero{max-width:1400px;margin:auto;padding:45px 5% 75px;display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#387e7b;margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,4.5vw,68px);line-height:1.12;letter-spacing:-3px;font-weight:500;margin-bottom:28px}em{font-family:'Caveat',cursive;font-weight:500;color:#438c82;font-size:1.25em;letter-spacing:-1px}h1 em{white-space:nowrap}.intro{max-width:470px;font-size:15px;line-height:1.9}.actions{display:flex;align-items:center;gap:25px;margin-top:30px}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid #acb6a8;padding-bottom:5px}.hero-note{font-size:10px;margin-top:35px}.hero-note span{display:inline-block;background:var(--green);width:7px;height:7px;border-radius:50%;margin-right:8px}.hero-image{display:grid;grid-template-columns:1fr auto;grid-template-areas:"photo photo" "note sun";align-items:start;column-gap:8px}.hero-image>img{grid-area:photo;width:100%;height:auto;object-fit:contain}.photo-note{grid-area:note;justify-self:start;margin-top:10px;background:#e8edda;padding:20px 28px;font-family:'Caveat',cursive;font-size:24px;line-height:1.2;transform:rotate(-5deg);transform-origin:top left;box-shadow:0 5px 15px #473d3610}.sun{grid-area:sun;margin-top:4px;font-size:90px;color:var(--green);line-height:1}.ribbon{background:#e9efe4;display:flex;justify-content:center;gap:40px;align-items:center;padding:22px;font-size:12px}.ribbon b{color:#569c8c;font-size:20px}.section{padding:85px max(5%,calc((100vw - 1260px)/2));}h2{font-weight:500;font-size:36px;letter-spacing:-1.2px;line-height:1.25;margin-bottom:20px}h3{font-size:20px;line-height:1.3;font-weight:600}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about p{font-size:14px}.learning{background:#f0f1e9}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:35px}.section-heading>p,.section-heading>div+div{max-width:410px;font-size:13px}.learning-grid{display:grid;grid-template-columns:.85fr 1fr 1fr;gap:18px}.learning-photo img{height:100%;width:100%;object-fit:cover;border-radius:90px 6px 6px 6px}.age{padding:35px 30px;border-radius:6px}.blue{background:#dfedf0}.green{background:#e0e9d2}.number{font-size:9px;letter-spacing:1.8px;display:block;margin-bottom:35px}.age h3{margin-bottom:0}.script{font-family:'Caveat',cursive;font-size:28px;color:#367a73;margin:5px 0 20px}.age>p:last-child{font-size:12px}.approach{text-align:center}.approach h2{font-size:43px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;margin-top:40px}.principles span{font-size:32px;color:#549b97}.principles h3{font-size:16px;margin:15px 0 10px}.principles p{font-size:12px;margin:auto;max-width:250px}.downloads{background:#edf3f2}.notice{font-size:11px;color:#635f53}.download-list{display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.doc{display:flex;gap:17px;align-items:center;padding:20px 0;border-bottom:1px solid #cbd9d5;font-size:12px;font-weight:500}.doc:hover{color:#27796e}.doc>span:nth-child(2){flex:1}.pdf{font-size:8px;border:1px solid #94aaa4;padding:5px 7px;border-radius:3px}small{display:block;font-size:9px;font-weight:400;color:#686e64;margin-top:4px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:110px;background:#e6ecd8}.contact>div>p{max-width:440px;font-size:13px}.contact .button{margin-top:15px}.contact-details>a{display:block;font-size:14px}.contact-details p{font-size:12px;margin-bottom:18px}hr{border:0;border-top:1px solid #becab4;margin:25px 0}.social{display:flex;flex-wrap:wrap;gap:20px;font-size:10px;font-weight:600}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 5%;gap:25px;font-size:10px}footer img{width:160px}footer p{margin:0}.skip{position:absolute;left:-999px}.skip:focus{left:15px;top:15px;background:white;padding:15px;z-index:5}.mission{max-width:720px;margin:24px auto 0;font-size:14px;line-height:1.85}.mission p{margin:0 0 16px}.mission p:last-child{margin-bottom:0}.age p+p{margin-top:12px}.hours{background:#eef4f0}.hours .section-heading{align-items:flex-start;margin-bottom:0}.hours-times{display:flex;gap:48px;flex-wrap:wrap;margin-top:18px}.hours-times p{margin:0;font-size:14px}.hours-times b{display:block;font-size:22px;font-weight:500;letter-spacing:-.5px;color:#367a73;margin-bottom:4px}.age p:not(.script){font-size:12px}@media(max-width:950px){nav{gap:16px}nav>a:not(.button){display:none}.hero{gap:25px}h1{font-size:46px}.actions{flex-wrap:wrap}.ribbon{gap:15px;font-size:10px}.section{padding:65px 5%}.about{gap:35px}.learning-grid{grid-template-columns:1fr 1fr}.learning-photo{display:none}.contact{gap:40px}}@media(max-width:620px){header{padding:18px 6%}.logo{width:150px}.button.small{font-size:10px;padding:10px}.hero{grid-template-columns:1fr;padding:35px 6% 60px;gap:30px}h1{font-size:44px;letter-spacing:-2px}.hero-note{margin-top:23px}.ribbon{flex-wrap:wrap;gap:8px 15px}.ribbon span{font-size:10px}.ribbon b:last-of-type{display:none}.section{padding:55px 6%}.about,.contact{grid-template-columns:1fr;gap:25px}.section-heading{display:block;margin-bottom:25px}h2{font-size:31px}.learning-grid,.download-list{grid-template-columns:1fr}.age{padding:28px}.number{margin-bottom:20px}.principles{grid-template-columns:1fr;gap:28px}.approach h2{font-size:34px}.hours-times{gap:22px}.contact-details>a{font-size:12px;overflow-wrap:anywhere}footer{flex-wrap:wrap;justify-content:center;text-align:center}footer p{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
