*{margin:0;padding:0;box-sizing:border-box}
:root{
  --green:#2e7d32;
  --green-light:#e8f5e9;
  --green-dark:#1b5e20;
  --gold:#f57c00;
  --gold-light:#fff3e0;
  --white:#fff;
  --gray-50:#fafafa;
  --gray-100:#f5f5f5;
  --gray-200:#eee;
  --gray-600:#757575;
  --gray-800:#424242;
  --gray-900:#212121;
  --red:#d32f2f;
  --shadow:0 2px 16px rgba(0,0,0,0.08);
  --radius:12px;
}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--gray-900);background:var(--gray-50);line-height:1.7;font-size:16px}
.container{max-width:640px;margin:0 auto;padding:0 20px}
section{padding:48px 0}

/* Hero */
.hero{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 50%,#fff3e0 100%);padding:60px 0 40px;text-align:center}
.hero .badge{display:inline-block;background:var(--green);color:#fff;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;margin-bottom:16px}
.hero h1{font-size:28px;color:var(--green-dark);line-height:1.4;margin-bottom:12px}
.hero h1 span{color:var(--gold)}
.hero .sub{font-size:15px;color:var(--gray-600);margin-bottom:28px;line-height:1.6}
.hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 28px;border-radius:30px;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:all .2s}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-1px)}
.btn-outline{background:var(--white);color:var(--green);border:2px solid var(--green)}
.btn-outline:hover{background:var(--green-light)}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:#e65100}

/* Section titles */
.sec-title{text-align:center;font-size:22px;color:var(--green-dark);margin-bottom:8px}
.sec-sub{text-align:center;font-size:14px;color:var(--gray-600);margin-bottom:32px}

/* Trust bar */
.trust-bar{background:var(--white);padding:24px 0;border-bottom:1px solid var(--gray-200)}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:center}
.trust-item .num{font-size:24px;font-weight:700;color:var(--green)}
.trust-item .lbl{font-size:12px;color:var(--gray-600);margin-top:4px}

/* Card */
.card{background:var(--white);border-radius:var(--radius);padding:28px 24px;margin-bottom:20px;box-shadow:var(--shadow)}

/* How it works */
.steps{display:grid;gap:16px}
.step{display:flex;gap:16px;align-items:flex-start}
.step-num{width:40px;height:40px;background:var(--green);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;flex-shrink:0}
.step h4{font-size:16px;color:var(--gray-900);margin-bottom:4px}
.step p{font-size:14px;color:var(--gray-600)}

/* Results */
.result-card{text-align:center}
.result-card .before-after{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:16px}
.result-card .score{text-align:center}
.result-card .score .num{font-size:36px;font-weight:700}
.result-card .score .lbl{font-size:12px;color:var(--gray-600)}
.result-card .score.old .num{color:var(--red)}
.result-card .score.new .num{color:var(--green)}
.result-card .arrow{font-size:28px;color:var(--gold)}
.result-card .student{font-size:13px;color:var(--gray-600)}
.result-grid{display:grid;gap:16px}

/* Testimonial */
.testimonial{background:var(--green-light);border-left:4px solid var(--green);padding:16px 20px;border-radius:0 var(--radius) var(--radius) 0;margin-bottom:12px}
.testimonial .quote{font-size:14px;color:var(--gray-800);font-style:italic;margin-bottom:8px}
.testimonial .author{font-size:12px;color:var(--gray-600)}

/* Pricing */
.pricing-grid{display:grid;gap:16px}
.pricing-card{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:24px;text-align:center;transition:all .2s}
.pricing-card.featured{border-color:var(--gold);background:var(--gold-light)}
.pricing-card h4{font-size:18px;color:var(--gray-900);margin-bottom:8px}
.pricing-card .price{font-size:28px;font-weight:700;color:var(--green);margin-bottom:12px}
.pricing-card .price small{font-size:14px;font-weight:400;color:var(--gray-600)}
.pricing-card .features{list-style:none;text-align:left;font-size:14px;color:var(--gray-600);margin-bottom:16px}
.pricing-card .features li{padding:4px 0}
.pricing-card .features li::before{content:"✓ ";color:var(--green);font-weight:700}

/* Teacher intro */
.teacher-card{display:flex;gap:20px;align-items:center}
.teacher-avatar{width:80px;height:80px;background:var(--green-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;flex-shrink:0}
.teacher-info h4{font-size:18px;color:var(--gray-900)}
.teacher-info .exp{font-size:14px;color:var(--gold);font-weight:600;margin-bottom:6px}
.teacher-info p{font-size:14px;color:var(--gray-600)}

/* CTA section */
.cta-section{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;text-align:center;padding:48px 20px}
.cta-section h2{font-size:22px;margin-bottom:8px}
.cta-section p{font-size:14px;opacity:.9;margin-bottom:24px}
.cta-section .phone{font-size:20px;font-weight:700;margin-bottom:8px}

/* Sticky bottom bar */
.sticky-bar{position:fixed;bottom:0;left:0;right:0;background:var(--white);padding:12px 20px;box-shadow:0 -2px 12px rgba(0,0,0,0.1);display:flex;gap:10px;z-index:999}
.sticky-bar .btn{flex:1;text-align:center;padding:10px}
.sticky-bar .btn-phone{background:var(--white);color:var(--green);border:2px solid var(--green)}
.sticky-bar .btn-wechat{background:var(--green);color:#fff}

/* QR section */
.qr-box{display:flex;align-items:center;gap:20px;padding:20px;background:var(--gray-50);border-radius:var(--radius)}
.qr-placeholder{width:100px;height:100px;background:var(--gray-200);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--gray-600);text-align:center;flex-shrink:0}
.qr-info h4{font-size:15px;margin-bottom:4px}
.qr-info p{font-size:13px;color:var(--gray-600)}

/* Location */
.location{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--gray-600);justify-content:center;margin-top:12px}

/* Footer */
.footer{background:var(--gray-900);color:var(--gray-600);text-align:center;padding:32px 20px;font-size:13px}
.footer a{color:var(--green-light)}

/* Mobile tweaks */
@media(max-width:400px){
  .hero h1{font-size:24px}
  .trust-grid{grid-template-columns:repeat(3,1fr)}
  .teacher-card{flex-direction:column;text-align:center}
}
