:root{--ink:#0F2A24;--matcha:#2F5D3A;--cream:#FAF6EC;--cream-dark:#F2EAD7;--amber:#E0A037;--muted:#6B6B60;--line:rgba(15,42,36,.14);--white:#fffdfa;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--s20:80px;--s24:96px;--s32:128px;--r:18px;--shadow:0 18px 50px rgba(15,42,36,.1)}
    *{box-sizing:border-box;margin:0} html{scroll-behavior:smooth} body{font-family:"Noto Sans",sans-serif;background:var(--cream);color:var(--ink);font-size:16px;line-height:1.55} a{color:inherit} button{font:inherit;cursor:pointer;border:0}.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:30;background:#fff;padding:10px}.container{width:min(1160px,calc(100% - 32px));margin:auto}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--matcha)}h1,h2,h3{line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(42px,7vw,76px);max-width:11ch;font-weight:800}h2{font-size:clamp(32px,4vw,52px);max-width:15ch}h3{font-size:24px}.lead{font-size:clamp(18px,2vw,22px);color:var(--muted);max-width:54ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 22px;border-radius:999px;text-decoration:none;font-weight:700;transition:.2s transform,.2s background}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--amber);color:var(--ink)}.btn-secondary{border:1px solid var(--line);background:transparent}.header{position:sticky;top:0;z-index:20;background:rgba(250,246,236,.92);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:22px;letter-spacing:-.05em}.logo-mark{width:31px;height:31px;border:3px solid var(--matcha);border-radius:50% 50% 50% 10%;transform:rotate(-36deg);position:relative}.logo-mark:after{content:"";width:9px;height:15px;border-radius:9px;background:var(--amber);position:absolute;right:-6px;top:-7px;transform:rotate(42deg)}.nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}.nav a{text-decoration:none}.header-phone{font-weight:700;text-decoration:none;white-space:nowrap}.menu-toggle{display:none;background:transparent;font-size:22px}.hero{padding:clamp(48px,8vw,110px) 0 var(--s16);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(47,93,58,.12);border-radius:50%;right:-190px;top:30px}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(28px,5vw,80px);align-items:center;position:relative;z-index:1}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s6)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:14px;color:var(--muted)}.hero-card{background:var(--cream-dark);border-radius:36px;padding:12px;position:relative;box-shadow:var(--shadow)}.hero-photo{width:100%;height:520px;display:block;object-fit:cover;object-position:center;border-radius:26px;background:#ddd}.hero-badge{position:absolute;bottom:32px;left:-28px;background:var(--white);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);max-width:210px}.hero-badge strong{display:block;font-size:26px;line-height:1}.hero-badge span{font-size:13px;color:var(--muted)}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fact{padding:24px 18px;border-right:1px solid var(--line)}.fact:last-child{border:0}.fact b{display:block;font-size:24px}.fact span{font-size:13px;color:var(--muted)}.section{padding:clamp(64px,9vw,120px) 0}.section-alt{background:var(--cream-dark)}.section-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:48px}.section-head p{max-width:48ch;color:var(--muted)}.diagnostic{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--s16);align-items:center}.report-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:34px;box-shadow:var(--shadow)}.report-card .mini-logo{font-weight:800;color:var(--matcha);letter-spacing:-.04em}.report-title{font-size:24px;line-height:1.2;margin:28px 0 20px}.skill-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);font-size:14px}.dots{display:flex;gap:5px}.dots i{width:10px;height:10px;border-radius:50%;background:var(--matcha);display:block}.dots i:last-child{background:var(--cream-dark);border:1px solid var(--line)}.steps{display:grid;gap:0;border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}.step-num{font-size:32px;font-weight:800;color:var(--amber);line-height:1}.step p{color:var(--muted);margin-top:7px}.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program{background:var(--white);border-radius:var(--r);padding:30px;min-height:285px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(15,42,36,.08)}.program .grade{font-size:13px;color:var(--matcha);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.program p{color:var(--muted);font-size:15px}.program a{font-weight:700;text-decoration:none}.teacher{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);align-items:center}.teacher-photo{aspect-ratio:4/5;object-fit:cover;border-radius:var(--r);background:var(--cream-dark);width:100%}.teacher-copy{display:flex;flex-direction:column;gap:20px}.teacher-list{list-style:none;display:grid;gap:12px}.teacher-list li{padding-left:26px;position:relative}.teacher-list li:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--amber);position:absolute;left:0;top:8px}.pricing{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.price-main{background:var(--matcha);color:var(--white);padding:clamp(30px,5vw,56px);border-radius:var(--r)}.price-main .price{font-size:clamp(50px,7vw,82px);font-weight:800;letter-spacing:-.06em;line-height:1;margin:20px 0 8px}.price-main p{color:rgba(255,255,255,.76);max-width:45ch}.price-aside{background:var(--white);padding:34px;border-radius:var(--r);border:1px solid var(--line)}.price-aside ul{margin:20px 0;display:grid;gap:12px;padding-left:18px}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{background:var(--white);padding:28px;border-radius:var(--r);border:1px solid var(--line)}.review blockquote{font-size:17px;line-height:1.55}.review footer{margin-top:18px;color:var(--muted);font-size:14px}.faq{max-width:850px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:18px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:"+";font-size:28px;font-weight:400;line-height:.7}.faq details[open] summary:after{content:"–"}.faq p{color:var(--muted);padding-top:14px;max-width:70ch}.contact{background:var(--ink);color:var(--white);padding:clamp(60px,9vw,110px) 0}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:48px;align-items:end}.contact h2{max-width:13ch}.contact .eyebrow{color:#f7d48f}.contact .lead{color:rgba(255,255,255,.7);margin-top:20px}.contact-info{display:grid;gap:16px;margin-top:30px}.contact-info a{text-decoration:none;font-size:20px;font-weight:700}.contact-info span{display:block;color:rgba(255,255,255,.63);font-size:14px}.footer{background:var(--ink);border-top:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.68);padding:26px 0 90px;font-size:13px}.footer-inner{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap}.modal{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(15,42,36,.58)}.modal.is-open{display:flex}.modal-box{background:var(--cream);width:min(100%,430px);padding:30px;border-radius:24px;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.28)}.modal-close{position:absolute;right:14px;top:14px;width:44px;height:44px;background:transparent;font-size:28px}.modal h2{font-size:32px;margin-right:30px}.modal p{color:var(--muted);margin:12px 0 22px}.choice{display:flex;align-items:center;gap:14px;padding:17px;border:1px solid var(--line);border-radius:14px;text-decoration:none;font-weight:700;margin-top:10px;background:var(--white)}.choice small{display:block;color:var(--muted);font-weight:400}.choice-icon{font-size:24px}.mobile-cta{display:none}.reveal{opacity:0;transform:translateY(18px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:850px){.nav,.header-phone{display:none}.menu-toggle{display:block}.header .btn{display:none}.hero-grid,.diagnostic,.teacher,.pricing,.contact-grid{grid-template-columns:1fr}.hero-photo{height:390px}.hero-badge{left:18px;bottom:26px}.facts{grid-template-columns:repeat(2,1fr)}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid var(--line)}.section-head{display:block}.section-head p{margin-top:18px}.programs,.reviews{grid-template-columns:1fr}.teacher-photo{max-height:520px;object-position:top}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;z-index:19;background:rgba(250,246,236,.96);padding:10px 16px;border-top:1px solid var(--line);backdrop-filter:blur(10px)}.mobile-cta .btn{width:100%}.footer{padding-bottom:82px}}@media(max-width:480px){.hero{padding-top:50px}.facts{margin-inline:-16px}.fact{padding:18px 16px}.hero-card{padding:8px;border-radius:24px}.hero-photo{border-radius:18px;height:340px}.hero-badge{max-width:190px;padding:13px}.section{padding:68px 0}.report-card{padding:24px}}
