:root{--ink:#183746;--muted:#607581;--paper:#fffdf8;--line:#dce5e7;--coral:#e86655;--blue:#3d80b8;--jade:#3e8b72;--sun:#f2ba4c;--shadow:0 18px 46px rgba(24,55,70,.12)}
*{box-sizing:border-box}body{margin:0;background:#f2f5f2;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.topbar{height:72px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,55,70,.12);background:rgba(255,253,248,.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:13px 13px 5px;background:var(--coral);color:#fff;font-size:22px;font-weight:900;box-shadow:3px 3px 0 #9e4136}.brand b,.brand small{display:block}.brand b{font-size:17px}.brand small{margin-top:2px;color:var(--muted);font-size:9px;letter-spacing:.16em}.home-link{padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;font-size:13px;font-weight:800}
.hero{max-width:1240px;margin:auto;padding:72px clamp(22px,5vw,65px) 58px;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.eyebrow,.section-heading p{margin:0 0 14px;color:var(--coral);font-size:12px;font-weight:900;letter-spacing:.16em}.hero h1{margin:0;font-size:clamp(43px,5.7vw,73px);line-height:1.08;letter-spacing:-.045em}.hero h1 em{color:var(--coral);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:640px;margin:24px 0;color:var(--muted);font-size:17px;line-height:1.8}.hero-facts{display:flex;gap:13px;flex-wrap:wrap}.hero-facts span{padding:11px 15px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72);color:var(--muted);font-size:12px}.hero-facts b{margin-right:6px;color:var(--ink);font-size:20px}.hero-board{min-height:375px;padding:44px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;border:9px solid #bd8c5b;border-radius:13px;background:#214e48;color:#fff;box-shadow:14px 14px 0 var(--sun);overflow:hidden;transform:rotate(1deg)}.hero-board:before{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.16)}.chalk{position:absolute;color:rgba(255,255,255,.18);font:800 35px Georgia}.chalk.one{left:24px;top:32px;transform:rotate(-9deg)}.chalk.two{right:25px;bottom:31px;transform:rotate(8deg)}.mascot{font-size:92px;filter:drop-shadow(5px 6px 0 rgba(0,0,0,.17))}.hero-board strong{margin-top:16px;font-size:27px}.hero-board small{margin-top:7px;color:#cce2db}
.subject-section{max-width:1140px;margin:auto;padding:54px 28px 65px}.section-heading{text-align:center}.section-heading h2{margin:0 0 30px;font-size:clamp(28px,4vw,44px)}.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.subject-card{min-height:390px;padding:30px;position:relative;display:flex;flex-direction:column;border:1px solid rgba(24,55,70,.16);border-radius:24px;background:var(--paper);color:var(--ink);text-decoration:none;box-shadow:0 7px 0 rgba(24,55,70,.1);transition:.2s}.subject-card:hover{transform:translateY(-7px);box-shadow:0 16px 0 var(--card)}.subject-card.english{--card:#8ec7e7}.subject-card.chinese{--card:#d8a19a}.card-count{position:absolute;right:22px;top:22px;color:var(--muted);font:800 10px/1.3 ui-monospace,monospace;letter-spacing:.14em}.subject-icon{width:78px;height:78px;margin-bottom:34px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50% 50% 43% 57%;background:var(--card);box-shadow:6px 6px 0 var(--ink);font:900 32px Georgia}.subject-card small{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.15em}.subject-card h3{margin:8px 0 12px;font-size:29px}.subject-card p{margin:0;color:var(--muted);line-height:1.75}.enter{margin-top:auto;padding-top:26px;display:flex;justify-content:space-between;border-top:1px dashed var(--line);font-weight:900}.enter b{font-size:24px;transition:.2s}.subject-card:hover .enter b{transform:translateX(6px)}
.price-strip{max-width:1084px;margin:0 auto 74px;display:grid;grid-template-columns:1.2fr 1fr 1fr;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.price-strip>div{min-height:150px;padding:25px;display:flex;justify-content:center;flex-direction:column;border-right:1px solid var(--line)}.price-strip>div:last-child{border:0}.price-strip small,.price-strip span{color:var(--muted);font-size:12px}.price-strip b{margin:6px 0;font-size:24px}.price-strip b em{font-size:16px;font-style:normal}.price-strip .best{background:#173a45;color:#fff}.price-strip .best small,.price-strip .best span{color:#c3d7dd}.steps{max-width:1084px;margin:0 auto 75px;padding:0 10px}.steps h2{text-align:center;font-size:32px}.steps ol{padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:13px;list-style:none}.steps li{padding:23px;display:flex;gap:15px;border-top:3px solid var(--coral);background:#fff}.steps li>b{color:#e6a49b;font:900 30px Georgia}.steps strong{display:block;margin-bottom:6px}.steps span{color:var(--muted);font-size:13px;line-height:1.6}footer{padding:27px;text-align:center;color:var(--muted);font-size:12px;border-top:1px solid var(--line);background:#fff}
@media(max-width:820px){.hero{grid-template-columns:1fr;gap:40px;text-align:center}.hero-copy>p:not(.eyebrow){margin-inline:auto}.hero-facts{justify-content:center}.hero-board{width:min(470px,90vw);margin:auto;min-height:320px}.subject-grid{grid-template-columns:1fr}.price-strip{margin-inline:20px;grid-template-columns:1fr}.price-strip>div{min-height:112px;border-right:0;border-bottom:1px solid var(--line)}.steps{padding:0 20px}.steps ol{grid-template-columns:1fr}}
@media(max-width:520px){.topbar{height:66px;padding:0 14px}.brand small{display:none}.home-link{width:42px;padding:10px 0;font-size:0;text-align:center}.home-link:before{content:"←";font-size:18px}.hero{padding:45px 20px 35px}.hero h1{font-size:39px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-board{min-height:250px;border-width:6px;box-shadow:8px 8px 0 var(--sun)}.mascot{font-size:65px}.hero-board strong{font-size:22px}.subject-section{padding:42px 14px}.subject-card{min-height:340px;padding:23px}.subject-card h3{font-size:25px}.price-strip{margin-bottom:55px}.steps h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
