:root{
    --blue:#76b7df;
    --blue-deep:#347fa8;
    --yellow:#fff1bd;
    --orange:#f6a35f;
    --orange-soft:#ffd4a8;
    --white:#ffffff;
    --ink:#243447;
    --muted:#63788f;
    --panel:#f7fbff;
    --line:#e3eef7;
    --shadow:0 18px 45px rgba(52,127,168,.13);
    --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
    color:var(--ink);
    background:linear-gradient(180deg,#f4fbff 0%,#fffdf5 45%,#ffffff 100%);
    line-height:1.72;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.site-header{
    position:sticky;
    top:0;
    z-index:20;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px clamp(18px,4vw,56px);
    background:rgba(255,255,255,.88);
    backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(227,238,247,.86);
}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--blue-deep)}
.brand-mark{
    width:48px;height:48px;border-radius:16px;
    background:linear-gradient(135deg,var(--blue),var(--orange-soft));
    color:#fff;display:grid;place-items:center;font-size:20px;letter-spacing:.5px;box-shadow:var(--shadow)
}
.brand-text{font-size:15px;color:#395a72}
.site-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.site-nav a{padding:9px 13px;border-radius:999px;color:#415b70;font-size:15px}
.site-nav a:hover,.site-nav a.active{background:#eaf6ff;color:var(--blue-deep)}
.nav-toggle{display:none;border:0;background:#eaf6ff;border-radius:14px;width:44px;height:42px;padding:10px;gap:4px;flex-direction:column;justify-content:center}
.nav-toggle span{height:2px;background:var(--blue-deep);border-radius:9px;display:block;margin:3px 0}
main{overflow:hidden}
.section{padding:74px clamp(18px,5vw,76px)}
.section.tight{padding-top:46px;padding-bottom:46px}
.hero{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
    align-items:center;
    gap:34px;
    padding:74px clamp(18px,5vw,76px) 42px;
}
.hero-card,.soft-card,.feature-card,.content-card,.guide-card,.quote-card,.faq-card,.contact-panel{
    background:rgba(255,255,255,.86);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
}
.hero-card{padding:42px;position:relative;overflow:hidden}
.hero-card:before{content:"";position:absolute;right:-90px;top:-90px;width:240px;height:240px;border-radius:50%;background:rgba(255,212,168,.55)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:var(--yellow);color:#8a6120;font-weight:700;font-size:14px;margin-bottom:18px}
h1,h2,h3{line-height:1.22;margin:0;color:#203a4f}
h1{font-size:clamp(34px,5vw,58px);letter-spacing:-1.2px}
h2{font-size:clamp(28px,3.6vw,42px);letter-spacing:-.6px}
h3{font-size:22px}
p{margin:12px 0 0;color:var(--muted)}
.lead{font-size:18px;color:#516d83;max-width:760px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;border-radius:999px;font-weight:800;border:1px solid transparent;transition:.2s ease}
.btn.primary{background:linear-gradient(135deg,var(--blue-deep),var(--blue));color:#fff;box-shadow:0 12px 26px rgba(52,127,168,.22)}
.btn.secondary{background:#fff7dc;color:#805d1d;border-color:#ffe5a5}
.btn:hover{transform:translateY(-2px)}
.hero-visual{padding:18px}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.stat{padding:18px;border-radius:22px;background:#f6fbff;border:1px solid var(--line)}
.stat strong{display:block;font-size:24px;color:var(--blue-deep)}
.stat span{font-size:13px;color:var(--muted)}
.section-head{max-width:780px;margin-bottom:28px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.grid{display:grid;gap:20px}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.soft-card,.feature-card,.content-card,.guide-card,.quote-card,.faq-card,.contact-panel{padding:24px}
.soft-card img,.feature-card img,.content-card img{border-radius:22px;margin-bottom:16px;background:#f9fdff}
.badge-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:#eef8ff;color:#367fa8;font-weight:700;font-size:13px}
.badge.warm{background:#fff3d1;color:#8b6620}
.badge.orange{background:#fff0e1;color:#9a5722}
.band{margin:28px clamp(18px,5vw,76px);padding:36px;border-radius:34px;background:linear-gradient(135deg,#eaf7ff,#fff4ca);display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;box-shadow:var(--shadow)}
.check-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.check-list li{position:relative;padding-left:32px;color:#4e6679}
.check-list li:before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#e6f6ef;color:#25835f;display:grid;place-items:center;font-weight:900;font-size:13px}
.timeline{display:grid;gap:16px}
.timeline-item{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;padding:18px;border-radius:24px;background:#fff;border:1px solid var(--line)}
.timeline-item strong{color:var(--blue-deep)}
.week-card{display:grid;grid-template-columns:minmax(260px,.75fr) 1fr;gap:26px;align-items:center;padding:28px;border-radius:34px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.content-card{display:flex;flex-direction:column;min-height:100%}
.card-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;color:#6b7f90;font-size:13px}
.card-meta span{background:#f1f8fd;border-radius:999px;padding:5px 9px}
.rating-row{margin-top:auto;padding-top:18px;color:#8a6120;font-weight:800}
.quote-card{position:relative;background:#fffdf7}
.quote-card:before{content:"示例家长反馈";display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff0d4;color:#93652a;font-size:12px;font-weight:800;margin-bottom:10px}
.faq-list{display:grid;gap:14px}
.faq-card h3{font-size:19px}
.notice{padding:20px;border-radius:24px;background:#eef8ff;border:1px solid #d4eaf7;color:#446277}
.page-hero{padding:72px clamp(18px,5vw,76px) 42px;background:radial-gradient(circle at 85% 20%,rgba(255,212,168,.55),transparent 30%),radial-gradient(circle at 10% 0%,rgba(118,183,223,.25),transparent 35%)}
.page-hero .lead{max-width:860px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:28px;align-items:center}
.panel-list{display:grid;gap:14px;margin-top:22px}
.panel-item{padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.panel-item strong{color:#274d68}
.video-frame{border-radius:26px;background:linear-gradient(135deg,#dff3ff,#fff1bd);padding:18px;border:1px solid var(--line);position:relative;overflow:hidden}
.video-screen{aspect-ratio:16/9;border-radius:20px;background:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #e3eef7}
.play-dot{width:58px;height:58px;border-radius:50%;background:var(--orange);position:relative;box-shadow:0 10px 24px rgba(246,163,95,.28)}
.play-dot:after{content:"";position:absolute;left:23px;top:17px;border-left:18px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent}
.form-grid{display:grid;gap:14px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:grid;gap:7px;color:#3e596f;font-weight:800}
input,textarea,select{width:100%;border:1px solid #d7e8f3;border-radius:16px;padding:13px 14px;background:#fff;color:var(--ink);outline:none}
textarea{min-height:132px;resize:vertical}
input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(118,183,223,.18)}
.form-status{display:none;margin-top:12px;padding:12px 14px;border-radius:16px;background:#eef8ff;color:#36708f}
.form-status.show{display:block}
.site-footer{margin-top:36px;background:#203a4f;color:#e8f4fb;padding:42px clamp(18px,5vw,76px) 24px}
.site-footer p,.site-footer .small-note{color:#c9dbe8}
.footer-grid{display:grid;grid-template-columns:1.25fr .9fr 1fr;gap:26px}
.footer-bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#d8e8f3}
.small-note{font-size:13px}
@media (max-width:980px){
    .hero,.split,.band,.week-card{grid-template-columns:1fr}
    .grid.three,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}
    .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
    .site-header{align-items:flex-start}
    .nav-toggle{display:flex;margin-left:auto}
    .site-nav{display:none;position:absolute;left:18px;right:18px;top:72px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:12px;box-shadow:var(--shadow);justify-content:flex-start}
    .site-nav.open{display:flex}
    .site-nav a{width:calc(50% - 4px)}
    .hero-card{padding:28px}
    .stats-row,.grid.two,.grid.three,.grid.four,.footer-grid,.form-row{grid-template-columns:1fr}
    .section,.hero,.page-hero{padding-left:18px;padding-right:18px}
    .band{margin-left:18px;margin-right:18px;padding:24px}
}
@media (max-width:420px){
    .brand-text{display:none}
    .site-nav a{width:100%}
    .timeline-item{grid-template-columns:1fr}
}
