@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#194759;--orange:#DA794F;--yellow:#F2BE4F;--green:#2EAA94;--cream:#F3EEE2;--paper:#fffdf8;--body:#465c62}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.12;letter-spacing:-.05em}h1{font-size:clamp(44px,4.6vw,70px);font-weight:600;margin-bottom:28px}h2{font-size:clamp(35px,3.5vw,53px);font-weight:600;margin-bottom:24px}h3{font-size:27px;font-weight:600}em{font-style:normal;color:var(--orange)}p{color:var(--body)}.wrap{max-width:1320px;margin:auto;padding-left:56px;padding-right:56px}.section{padding-top:112px;padding-bottom:112px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--ink);margin-bottom:23px}.topbar{background:var(--ink);color:white;text-align:center;padding:9px 15px;font-size:12px}.topbar button{border:0;background:none;color:var(--yellow);margin-left:13px;font-size:12px}.topbar span{margin-left:6px}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:20px 56px;background:var(--paper);position:relative;z-index:10}.brand{width:190px;display:block}.brand img{width:100%;height:auto}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav>a:hover,.text-link:hover{color:#a84d28}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:5px;padding:17px 22px;font-size:13px;font-weight:600;line-height:1.4;transition:transform .2s,background .2s}.button:hover{background:#103746;transform:translateY(-2px)}.button.small{padding:13px 18px}.button.light{background:transparent;color:var(--ink)}.button.light:hover{background:#fff4}.text-link{font-size:13px;font-weight:700;background:transparent;border:0;padding:0;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-flex;gap:17px;align-items:center}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:62px;padding-top:55px;padding-bottom:82px;align-items:center}.hero-copy{padding-top:10px}.hero .eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.1em}.dot{width:7px;height:7px;background:var(--green);display:inline-block;border-radius:50%}.lead{font-size:16px;max-width:480px;line-height:1.8}.actions{display:flex;align-items:center;gap:24px;margin-top:30px;flex-wrap:wrap}.micro{font-size:11px;margin-top:13px}.hero-foot{display:flex;align-items:center;gap:14px;margin-top:40px}.hero-foot p{font-size:12px;margin:0;line-height:1.6}.outline-icon{font-size:42px;color:var(--orange)}.hero-art{position:relative;padding:0 7px 25px}.photo-frame{height:605px;border-radius:180px 180px 8px 8px;overflow:hidden;background:var(--cream)}.photo-frame img{height:100%;width:100%;object-fit:cover;object-position:45% center}.photo-label{position:absolute;left:30px;bottom:42px;color:white;background:#123944d9;padding:9px 14px;font-size:9px;letter-spacing:.12em;display:flex;align-items:center;gap:9px;border-radius:3px}.sticker{position:absolute;right:-28px;top:42px;border-radius:50%;height:135px;width:135px;background:var(--yellow);display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:13px;line-height:1.4;transform:rotate(12deg);box-shadow:0 3px 0 #19475915}.sticker span{font-size:35px;line-height:1.1}.handnote{font-size:15px;position:absolute;right:-13px;bottom:-15px;transform:rotate(-7deg);line-height:1.5;color:var(--ink);background:var(--cream);padding:14px 20px}.ribbon{display:flex;justify-content:center;gap:35px;align-items:center;background:var(--cream);padding:22px 20px;font-size:10px;font-weight:700;letter-spacing:.12em}.ribbon b{color:var(--orange);font-size:24px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;max-width:350px;margin:0}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.course{position:relative;border-radius:8px;overflow:hidden;padding:28px 30px 35px;min-height:485px}.spanish{background:#eec4ac}.english{background:#cce4da}.course-top{display:flex;justify-content:space-between;position:relative;z-index:2}.pill{border:1px solid #19475950;border-radius:30px;font-size:10px;letter-spacing:.12em;padding:5px 11px;font-weight:700}.course-number{font-size:11px}.course-content{position:relative;z-index:2;max-width:65%;padding-top:37px}.course h3{font-size:34px;line-height:1.15}.course p{font-size:13px;line-height:1.75;max-width:260px}.course-info{display:flex;flex-direction:column;gap:4px;font-size:11px;margin:24px 0}.course .button{padding:14px 16px;font-size:11px;gap:12px}.mascot{position:absolute;right:-23px;bottom:0;width:43%;height:80%;overflow:hidden;mix-blend-mode:multiply;opacity:.95;pointer-events:none}.mascot img{height:100%;width:240%;max-width:none;object-fit:cover;object-position:0 center}.footnote{font-size:11px;margin:19px 0 0;max-width:800px}.method{background:var(--ink);color:#fff;padding:100px 0}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.method .eyebrow,.method p,.method .text-link{color:#e3ecea}.method h2{font-size:43px;line-height:1.2}.method em{color:var(--yellow)}.method .lead{font-size:14px}.method .text-link{margin-top:15px}.method-list article{display:flex;gap:24px;padding:23px 0;border-bottom:1px solid #ffffff26}.method-list article:first-child{padding-top:0}.method-list article>span{font-size:11px;color:var(--yellow);padding-top:5px}.method-list h3{font-size:20px;letter-spacing:-.025em;margin-bottom:10px}.method-list p{font-size:13px;line-height:1.7;margin-bottom:0}.class-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:30px}.class-grid figure{margin:0}.class-grid figure img{width:100%;height:430px;object-fit:cover;object-position:center 40%;border-radius:8px}.class-grid figcaption{padding:20px 0 0;font-size:13px}.class-grid figcaption span{display:block;font-size:9px;letter-spacing:.12em;font-weight:700;margin-bottom:6px}.class-message{background:var(--cream);padding:30px 40px;border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.big-star{font-size:56px;line-height:1;color:var(--green);margin-bottom:22px}.class-message h3{font-size:43px;margin-bottom:20px}.class-message p{font-size:13px;max-width:300px}.class-message .text-link{margin-top:12px;font-size:11px}.testimonials{background:#f5e2d4;padding:85px 0}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.quote{margin:0;border-top:1px solid #19475940;padding-top:20px}.quote-mark{font-family:Georgia,serif;font-size:75px;color:var(--orange);line-height:.9}.quote blockquote{font-size:27px;font-family:'Manrope',sans-serif;line-height:1.5;letter-spacing:-.025em;margin:0 0 25px;min-height:90px}.quote figcaption{display:flex;flex-direction:column;gap:5px;font-size:11px}.quote figcaption strong{font-size:14px}.quote small{color:var(--body);font-size:10px}.founder{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.founder-photo{position:relative;padding-left:24px}.founder-photo img{height:590px;width:100%;object-fit:cover;object-position:center 25%;border-radius:150px 8px 8px 8px}.vertical-label{position:absolute;left:-14px;bottom:15px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:.15em}.founder-copy h2{font-size:41px;line-height:1.2}.founder-copy>p:not(.eyebrow):not(.micro){font-size:14px;line-height:1.85}.signature{font-family:Georgia,serif;font-style:italic;color:var(--orange);font-size:39px;display:block;margin-top:20px}.team{padding-top:0}.team-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}.teacher-photo{height:350px;background:var(--cream);border-radius:6px;overflow:hidden}.teacher-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.teacher-info{padding-top:20px}.teacher-info h3{font-size:28px;margin-bottom:8px}.teacher-info span{font-size:9px;letter-spacing:.12em;font-weight:600}.team-note{padding:35px;background:#e4eee8;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start}.team-note>span{font-size:57px;color:var(--green);line-height:1.2;margin-bottom:30px}.team-note h3{font-size:32px}.team-note p{font-size:13px}.team-note .text-link{margin-top:10px}.plans{padding:95px 0;background:var(--cream)}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.plan{background:var(--paper);border:1px solid #19475925;border-radius:8px;padding:34px 38px}.plan-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.plan-title .eyebrow{font-size:9px;margin:0}.plan-title>span:last-child{font-size:27px;color:var(--orange)}.plan h3{font-size:37px;margin-bottom:13px}.plan>p{font-size:13px}.price{font-size:48px;letter-spacing:-.05em;font-weight:600;line-height:1.1;margin-top:30px}.price>span{font-size:12px;letter-spacing:0;font-weight:400;margin-left:8px}.plan ul{list-style:none;padding:22px 0;margin:24px 0;border-top:1px solid #19475920;display:grid;gap:10px;font-size:13px}.plan li:before{content:'✓';margin-right:12px;color:var(--green)}.plan .button{width:100%}.individual{background:var(--ink);color:white}.individual p{color:#dce8e8}.individual .eyebrow{color:#fff}.individual ul{border-color:#ffffff30}.individual li:before{color:var(--yellow)}.individual .button{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.plans-bottom{text-align:center;font-size:12px;margin:27px 0 0}.plans-bottom a{text-decoration:underline;text-underline-offset:4px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.faq>div>p:not(.eyebrow){font-size:13px}.faq .text-link{margin-top:10px}.questions details{border-bottom:1px solid #19475930;padding:0 0 20px;margin-bottom:20px}.questions summary{font-size:15px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:500}.questions summary:after{content:'+';font-size:20px;line-height:1.2;color:var(--orange)}.questions details[open] summary:after{content:'−'}.questions p{font-size:13px;line-height:1.8;margin:15px 20px 0 0}.final-cta{background:var(--yellow);padding:75px 0;overflow:hidden}.final-cta .wrap{position:relative}.final-cta h2{font-size:64px;margin-top:20px}.final-cta h2 em{color:var(--ink);font-family:Georgia,serif;font-style:italic}.final-cta p{font-size:14px;max-width:400px}.final-cta .actions{position:relative;z-index:1}.cta-star{position:absolute;right:60px;top:10px;font-size:240px;line-height:1;color:var(--orange);transform:rotate(10deg)}footer{padding-top:65px;padding-bottom:20px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:60px;padding-bottom:50px}.footer-top>p{font-size:13px;line-height:1.8}.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:12px}.footer-top .eyebrow{margin-bottom:0;font-size:9px}.footer-bottom{border-top:1px solid #19475925;padding-top:20px;font-size:10px;display:flex;justify-content:space-between;color:var(--body)}dialog{border:0;border-radius:10px;background:var(--paper);color:var(--ink);padding:45px;width:450px;max-width:calc(100% - 32px);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#0d2d3bc9;backdrop-filter:blur(4px)}dialog h2{font-size:35px}dialog p{font-size:13px}dialog .button{display:flex;margin-top:15px;justify-content:space-between}dialog small{font-size:10px;display:block;margin-top:20px;color:var(--body)}.close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:28px}.skip{position:absolute;top:-80px;left:10px;background:var(--ink);color:white;padding:12px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
@media(min-width:1500px){header{max-width:1320px}.hero{gap:85px}.photo-frame{height:640px}}@media(max-width:1100px){.wrap{padding-left:35px;padding-right:35px}header{padding:18px 35px}nav{gap:19px}.hero{gap:35px}.hero .actions{gap:17px}.hero .text-link{font-size:11px}.photo-frame{height:550px}.sticker{right:-5px;width:110px;height:110px;font-size:11px}.method-grid{gap:50px}.course-content{max-width:75%}.course h3{font-size:29px}.mascot{opacity:.6;right:-30px}.founder{gap:55px}.founder-copy h2{font-size:35px}.team-grid{gap:20px}.teacher-photo{height:300px}.team-note{padding:25px}.team-note h3{font-size:27px}.faq{gap:45px}.footer-top{gap:30px}}
@media(max-width:760px){.wrap{padding-left:23px;padding-right:23px}.section{padding-top:70px;padding-bottom:70px}.topbar{font-size:10px}.topbar button{font-size:10px;margin-left:5px;padding:0}.brand{width:155px}header{padding:18px 23px}.menu-toggle{display:block;border:1px solid #19475940;background:transparent;border-radius:4px;font-size:21px;width:42px;height:40px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 23px;box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:18px}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:27px;padding-bottom:65px;gap:28px}.hero-copy{padding-top:0}.hero h1{font-size:47px;max-width:550px;margin-bottom:22px}.hero .eyebrow{font-size:9px;letter-spacing:.07em;margin-bottom:24px}.lead{font-size:14px}.hero .actions{margin-top:24px}.hero .button{font-size:12px;padding:16px 18px}.hero .text-link{font-size:12px}.hero-foot{display:none}.hero-art{max-width:470px;width:100%;margin:10px auto 0;padding:0 12px 20px 0}.photo-frame{height:480px;border-radius:150px 150px 6px 6px}.sticker{top:25px;right:0;width:112px;height:112px;font-size:11px}.photo-label{left:15px;bottom:35px;font-size:8px}.handnote{right:0;bottom:-15px;font-size:13px}.ribbon{flex-wrap:wrap;gap:12px 20px;padding:20px;font-size:8px;letter-spacing:.07em}.ribbon b{font-size:15px}.ribbon b:last-of-type{display:none}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:100%;font-size:13px}.eyebrow{font-size:9px;margin-bottom:18px}h2{font-size:36px}.course-grid{grid-template-columns:1fr;gap:20px}.course{min-height:470px;padding:25px}.course-content{max-width:70%}.course h3{font-size:31px}.mascot{width:42%;right:-10px;opacity:.85}.course p{font-size:12px}.course-info{font-size:10px}.footnote{font-size:10px}.method{padding:70px 0}.method-grid{grid-template-columns:1fr;gap:35px}.method h2{font-size:35px}.method-list article{gap:18px;padding:22px 0}.method-list h3{font-size:20px}.class-grid{grid-template-columns:1fr;gap:25px}.class-grid figure img{height:350px}.class-message{padding:30px}.class-message h3{font-size:36px}.class-message .big-star{font-size:42px;margin-bottom:17px}.class-message h3 br{display:none}.class-message p{max-width:100%}.testimonials{padding:65px 0}.quote-grid{grid-template-columns:1fr;gap:35px}.quote blockquote{font-size:25px;min-height:0;margin-bottom:20px}.founder{grid-template-columns:1fr;gap:35px}.founder-photo{padding-left:17px}.founder-photo img{height:490px;border-radius:120px 6px 6px 6px}.vertical-label{left:-6px}.founder-copy h2{font-size:35px}.founder-copy>p:not(.eyebrow):not(.micro){font-size:13px}.team{padding-top:0}.team-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.teacher-photo{height:260px}.teacher-info h3{font-size:26px}.teacher-info span{font-size:8px;letter-spacing:.05em}.team-note{grid-column:1/-1;display:grid;grid-template-columns:50px 1fr;gap:0 18px;padding:25px}.team-note>span{grid-row:1/4;font-size:45px;margin:0}.team-note h3{font-size:27px;margin-bottom:12px}.team-note h3 br{display:none}.team-note p{font-size:12px;margin-bottom:8px}.team-note .text-link{justify-self:start}.plans{padding:65px 0}.plan-grid{grid-template-columns:1fr}.plan{padding:28px}.plan h3{font-size:34px}.price{font-size:45px}.plan-title .eyebrow{font-size:8px}.plans-bottom{font-size:11px}.plans-bottom a{display:block;margin-top:8px}.faq{grid-template-columns:1fr;gap:35px}.questions summary{font-size:14px}.final-cta{padding:60px 0}.final-cta h2{font-size:43px}.final-cta p{font-size:13px;max-width:280px}.final-cta .actions{gap:13px;align-items:stretch;flex-direction:column;max-width:340px}.final-cta .button{justify-content:space-between}.cta-star{font-size:120px;top:22px;right:-20px;opacity:.4}.footer-top{grid-template-columns:1fr;gap:25px;padding-bottom:30px}.footer-top>p{margin:0}.footer-top>p br{display:none}.footer-bottom{flex-direction:column;gap:6px}footer{padding-top:45px}dialog{padding:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.mascot img{position:absolute;width:auto;height:115%;left:-55px;bottom:0;object-fit:initial}.mascot{mask-image:linear-gradient(to right,transparent,#000 12%);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%)}
@media(max-width:760px){.mascot img{left:-65px}.mascot{opacity:.65}}
.mascot img{width:225%;height:auto;left:-70px}.mascot{height:85%}

/* Transparent, front-facing course mascots. */
.course .mascot{right:0;bottom:0;width:42%;height:83%;mix-blend-mode:normal;opacity:1;mask-image:none;-webkit-mask-image:none;overflow:hidden}
.course .mascot img{position:static;left:auto;bottom:auto;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center bottom}
@media(max-width:760px){.course .mascot{width:40%;height:78%;right:-5px;opacity:1}}
