:root {
  --ink: #173f35;
  --ink-soft: #43635b;
  --paper: #f7f4ee;
  --white: #fffdf9;
  --mint: #58c99f;
  --mint-pale: #dff4ea;
  --coral: #ef7b68;
  --yellow: #f1c75b;
  --blue: #68a9d3;
  --line: #d9ded7;
  --shadow: 0 22px 54px rgba(23, 63, 53, .14);
  font-family: 'Nunito', system-ui, sans-serif;
  color: var(--ink);
  background: var(--paper);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); }
a { color: inherit; text-decoration: none; }
button, a { font: inherit; }
img { display: block; max-width: 100%; }
.site-head {
  height: 72px; padding: 0 clamp(20px, 5vw, 72px); display: flex; align-items: center; gap: 36px;
  position: sticky; top: 0; z-index: 20; background: rgba(247,244,238,.94); border-bottom: 1px solid rgba(23,63,53,.1);
  backdrop-filter: blur(14px);
}
.brand { display: inline-flex; align-items: center; gap: 9px; font-family: 'Pacifico', cursive; font-size: 27px; color: #2a8e6e; }
.brand img { flex: 0 0 auto; }
.site-head nav { display: flex; gap: 26px; margin-left: auto; color: var(--ink-soft); font-size: 14px; font-weight: 800; }
.site-head nav a:hover, .text-link:hover, .site-foot a:hover { color: #2a8e6e; }
.head-actions { display: flex; align-items: center; gap: 16px; }
.text-link { font-weight: 900; font-size: 14px; }
.button {
  min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px;
  border: 1px solid var(--ink); border-radius: 8px; background: var(--ink); color: white; font-weight: 900; font-size: 15px;
  box-shadow: 0 8px 18px rgba(23,63,53,.18); transition: transform .16s, box-shadow .16s, background .16s;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(23,63,53,.23); background: #22594b; }
.button--small { min-height: 40px; padding: 0 17px; font-size: 13px; }
.button--secondary { background: transparent; color: var(--ink); box-shadow: none; }
.button--secondary:hover { background: var(--white); box-shadow: none; }
.hero {
  min-height: min(760px, calc(100svh - 120px)); position: relative; overflow: hidden; padding: clamp(50px, 7vh, 78px) clamp(20px, 6vw, 90px) 42px;
  background: #e8f3eb; isolation: isolate; border-bottom: 1px solid var(--line);
}
.hero::before { content: ''; position: absolute; inset: 0 0 0 42%; background: #f4dfb9; clip-path: polygon(18% 0,100% 0,100% 100%,0 100%); z-index: -2; }
.hero-copy { position: relative; z-index: 4; width: min(520px, 42vw); padding-top: 2vh; }
.eyebrow { margin: 0 0 14px; color: #2a8e6e; font-size: 12px; line-height: 1.3; font-weight: 1000; text-transform: uppercase; }
.hero h1 { max-width: 650px; margin: 0; font-size: clamp(42px, 5.4vw, 76px); line-height: .98; font-weight: 1000; letter-spacing: 0; }
.hero-lead { max-width: 570px; margin: 24px 0 0; color: var(--ink-soft); font-size: clamp(17px, 1.5vw, 21px); line-height: 1.48; font-weight: 700; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero-note { margin: 15px 0 0; color: var(--ink-soft); font-size: 13px; font-weight: 800; }
.product-stage {
  position: absolute; z-index: 2; width: min(640px, 47vw); right: clamp(22px, 3vw, 48px); bottom: clamp(34px, 6vh, 72px);
  background: var(--white); border: 1px solid rgba(23,63,53,.15); border-radius: 8px; box-shadow: var(--shadow); overflow: hidden; transform: rotate(-1.4deg);
}
.stage-toolbar { height: 48px; display: flex; align-items: center; gap: 7px; padding: 0 16px; border-bottom: 1px solid var(--line); font-size: 12px; color: var(--ink-soft); }
.stage-toolbar strong { margin-left: 9px; color: var(--ink); font-size: 14px; }.stage-toolbar > span:last-child { margin-left: auto; font-weight: 900; }
.stage-dot { width: 9px; height: 9px; border-radius: 50%; }.stage-dot--coral{background:var(--coral)}.stage-dot--yellow{background:var(--yellow)}.stage-dot--blue{background:var(--blue)}
.stage-body { display: grid; grid-template-columns: 70px 1fr; min-height: 430px; }
.stage-nav { background: var(--ink); display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 18px 0; }.stage-nav img { width: 30px; }.stage-nav i { width: 27px; height: 27px; border-radius: 6px; background: rgba(255,255,255,.18); }.stage-nav i:nth-of-type(2){background:var(--mint)}
.stage-main { padding: 26px; }.stage-title { display: flex; justify-content: space-between; align-items: end; margin-bottom: 18px; }.stage-title span { font-size: 12px; color: var(--ink-soft); font-weight: 800; }.stage-title strong { font-size: 20px; }
.lesson-step { display: grid; grid-template-columns: 27px 52px 1fr auto; align-items: center; gap: 12px; padding: 11px 13px; margin-bottom: 10px; border: 1px solid var(--line); border-left: 5px solid var(--mint); border-radius: 8px; background: white; }
.lesson-step--blue{border-left-color:var(--blue)}.lesson-step--coral{border-left-color:var(--coral)}.lesson-step b { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: var(--paper); font-size: 12px; }.lesson-step img { width: 52px; height: 52px; object-fit: cover; border-radius: 6px; }.lesson-step span strong,.lesson-step span small{display:block}.lesson-step span strong{font-size:14px}.lesson-step span small{margin-top:2px;color:var(--ink-soft);font-size:11px;font-weight:700}.lesson-step em{font-style:normal;font-size:11px;font-weight:900;color:var(--ink-soft)}
.stage-bottom { margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; font-size: 12px; font-weight: 900; color: #2a8e6e; }.stage-bottom a { border: 0; border-radius: 7px; background: var(--ink); color: #fff; padding: 10px 16px; font-weight: 900; text-decoration: none; }
.floating-activity { position: absolute; z-index: 3; display: flex; align-items: center; gap: 8px; padding: 8px 13px 8px 8px; background: white; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 14px 30px rgba(23,63,53,.18); font-size: 12px; font-weight: 1000; }.floating-activity img{width:48px;height:48px;border-radius:6px;object-fit:cover}.floating-activity--one{right:4vw;bottom:39%;transform:rotate(4deg)}.floating-activity--two{right:42vw;bottom:5%;transform:rotate(-4deg)}
.proof-band { min-height: 120px; display: grid; grid-template-columns: repeat(4,1fr); align-items: center; max-width: 1180px; margin: auto; padding: 22px 28px; gap: 24px; }.proof-band div { display: flex; flex-direction: column; padding-left: 18px; border-left: 3px solid var(--yellow); }.proof-band div:nth-child(2){border-color:var(--blue)}.proof-band div:nth-child(3){border-color:var(--coral)}.proof-band div:nth-child(4){border-color:var(--mint)}.proof-band strong{font-size:18px}.proof-band span{margin-top:2px;color:var(--ink-soft);font-size:12px;font-weight:800}
.section { padding: 94px clamp(20px,6vw,90px); }.section-head { max-width: 750px; margin: 0 auto 42px; text-align: center; }.section-head h2,.parent-copy h2,.final-cta h2{margin:0;font-size:clamp(30px,3.6vw,50px);line-height:1.08;letter-spacing:0}.section-head--row{max-width:1180px;display:flex;text-align:left;justify-content:space-between;align-items:end;gap:40px}.section-head--row>div{max-width:650px}.section-head--row>p{max-width:360px;margin:0;color:var(--ink-soft);font-weight:700;line-height:1.5}
.flow { background: var(--white); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:1180px;margin:auto;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.flow-grid article{min-height:250px;padding:34px;background:var(--white)}.flow-grid article>span{display:inline-grid;place-items:center;width:42px;height:42px;border:2px solid var(--yellow);border-radius:50%;font-size:13px;font-weight:1000}.flow-grid article:nth-child(2)>span{border-color:var(--blue)}.flow-grid article:nth-child(3)>span{border-color:var(--coral)}.flow-grid h3{margin:45px 0 9px;font-size:22px}.flow-grid p{margin:0;color:var(--ink-soft);font-weight:700;line-height:1.55}
.activities { background: #eef2eb; }.activity-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.activity-grid article{min-width:0;padding:10px 10px 15px;background:var(--white);border:1px solid var(--line);border-radius:8px}.activity-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px}.activity-grid strong,.activity-grid span{display:block}.activity-grid strong{margin:12px 3px 2px;font-size:15px}.activity-grid span{margin:0 3px;color:var(--ink-soft);font-size:11px;font-weight:700;line-height:1.35}
.parent-band { padding: 90px clamp(20px,8vw,120px); display: grid; grid-template-columns: minmax(0,1fr) minmax(420px,560px); align-items:center;gap:8vw;background:#f5e2dd;border-top:1px solid #e9c9c1;border-bottom:1px solid #e9c9c1}.parent-copy{max-width:570px}.parent-copy>p:last-child{margin:22px 0 0;color:var(--ink-soft);font-size:17px;line-height:1.6;font-weight:700}.report-tool{background:var(--white);border:1px solid #dfc8c0;border-radius:8px;box-shadow:var(--shadow);padding:25px}.report-tool header,.report-tool footer{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:900}.report-tool header span{font-size:17px}.report-score{margin:27px 0 20px;padding:20px;background:#fff4f0;border-radius:7px}.report-score strong,.report-score span{display:block}.report-score strong{font-size:40px}.report-score span{color:var(--ink-soft);font-size:13px;font-weight:800}.report-bars{display:grid;gap:10px}.report-bars::before{content:'Слова · Говорение · Домашка';color:var(--ink-soft);font-size:11px;font-weight:900;word-spacing:18px}.report-bars i{height:8px;border-radius:4px;background:var(--coral)}.report-bars i:nth-child(2){background:var(--blue)}.report-bars i:nth-child(3){background:var(--mint)}.report-tool footer{margin-top:25px;padding-top:18px;border-top:1px solid var(--line)}.report-tool footer span{color:#2a8e6e}
.pricing{background:var(--white)}.price-tool{max-width:980px;margin:auto;display:grid;grid-template-columns:230px 1fr 220px;align-items:center;gap:36px;padding:34px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.price-tool>div:first-child span,.price-tool>div:first-child strong,.price-tool>div:first-child small{display:block}.price-tool>div:first-child span{font-weight:900}.price-tool>div:first-child strong{font-size:46px;line-height:1.05}.price-tool>div:first-child small{color:var(--ink-soft);font-weight:800}.price-tool ul{margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 22px;list-style:none}.price-tool li{font-size:13px;font-weight:800}.price-tool li::before{content:'✓';margin-right:8px;color:#2a8e6e}.price-action{display:flex;flex-direction:column;align-items:center;gap:11px}.price-action .button{width:100%}.price-action>a:last-child{font-size:12px;font-weight:900;color:#2a8e6e}
.final-cta{text-align:center;padding:82px 20px;background:var(--ink);color:white}.final-cta p{margin:16px 0 27px;color:#cde2dc;font-size:17px;font-weight:700}.button--light{background:var(--yellow);border-color:var(--yellow);color:var(--ink);box-shadow:none}.button--light:hover{background:#f7d77e;box-shadow:none}
.site-foot{min-height:120px;padding:28px clamp(20px,5vw,72px);display:flex;align-items:center;gap:30px;background:#102f28;color:#d6e5e1}.site-foot .brand{color:white;font-size:23px}.site-foot>div{display:flex;gap:20px;margin-left:auto;font-size:12px;font-weight:800}.site-foot>span{font-size:11px;color:#91aaa3}
@media (max-width: 1050px){.hero-copy{width:48vw}.product-stage{width:52vw;right:-9vw}.floating-activity--one{display:none}.activity-grid{grid-template-columns:repeat(3,1fr)}.parent-band{grid-template-columns:1fr 1fr}.price-tool{grid-template-columns:190px 1fr}.price-action{grid-column:1/-1;flex-direction:row;justify-content:center}.price-action .button{width:auto}}
@media (max-width: 760px){.site-head{height:60px;padding:0 16px}.site-head nav{display:none}.brand{font-size:23px}.brand img{width:32px;height:32px}.head-actions{margin-left:auto}.text-link{display:none}.hero{min-height:calc(100svh - 104px);max-height:720px;padding:34px 18px 0}.hero-copy{width:100%;padding:0}.hero h1{font-size:clamp(37px,11vw,54px);max-width:540px}.hero-lead{font-size:16px;max-width:520px;margin-top:18px}.hero-actions{margin-top:22px}.hero-note{font-size:11px}.hero{max-height:none;min-height:0}.product-stage{position:relative;right:auto;bottom:auto;width:92vw;margin:34px -19vw -120px auto;transform:rotate(-2deg)}.stage-body{min-height:370px;grid-template-columns:52px 1fr}.stage-main{padding:18px}.stage-nav{padding:15px 0}.stage-nav i{width:22px;height:22px}.lesson-step{grid-template-columns:23px 42px 1fr auto;padding:8px}.lesson-step img{width:42px;height:42px}.floating-activity--two{right:9px;bottom:8px}.proof-band{grid-template-columns:1fr 1fr;min-height:180px;padding:24px 18px}.section{padding:68px 18px}.section-head{margin-bottom:30px}.section-head--row{display:block}.section-head--row>p{margin-top:15px}.flow-grid{grid-template-columns:1fr}.flow-grid article{min-height:0;padding:25px}.flow-grid h3{margin:22px 0 7px}.activity-grid{grid-template-columns:repeat(2,1fr);gap:10px}.parent-band{padding:68px 18px;grid-template-columns:1fr;gap:38px}.report-tool{padding:20px}.price-tool{grid-template-columns:1fr;padding:25px;gap:25px}.price-tool ul{grid-template-columns:1fr}.price-action{grid-column:auto;flex-direction:column}.price-action .button{width:100%}.site-foot{align-items:flex-start;flex-wrap:wrap}.site-foot>div{width:100%;margin:0;flex-wrap:wrap}.site-foot>span{margin-left:auto}}
@media (max-width: 420px){.head-actions .button{min-height:38px;padding:0 12px}.hero{max-height:730px}.hero h1{font-size:39px}.hero-actions .button{width:100%}.product-stage{width:110vw;margin-right:-28vw;margin-bottom:-150px}.floating-activity--two{display:none}.lesson-step em{display:none}.proof-band{gap:15px}.proof-band strong{font-size:15px}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.button{transition:none}}
