:root{--cream:#fff9f0;--coral:#ef8354;--sky:#7fb3d5;--butter:#f4d35e;--leaf:#6a994e;--ink:#3d2f2a;--card:#fff}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--cream);color:var(--ink);font-family:'Nunito',sans-serif;line-height:1.65;overflow-x:hidden}
header{display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;background:#fff;border-bottom:3px solid var(--butter)}
.logo{display:flex;align-items:center;gap:10px;font-family:'Fredoka',sans-serif;font-weight:700;font-size:1.45rem}.logo svg{flex:none}
nav a{color:var(--ink);text-decoration:none;font-weight:800;margin-left:22px;font-size:.94rem}nav a:hover{color:var(--coral)}
.tourbtn{background:var(--coral);color:#fff!important;padding:10px 20px;border-radius:99px}
.hero{padding:52px 5vw 48px;max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}
.hero h1{font-family:'Fredoka',sans-serif;font-weight:700;font-size:3.4rem;line-height:1.05}
.hero h1 span{color:var(--coral)}.hero p{margin-top:16px;font-size:1.08rem;font-weight:600;max-width:520px}
.cta{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}.cta a{text-decoration:none;font-weight:900;padding:14px 26px;border-radius:99px}
.cta .a{background:var(--coral);color:#fff;box-shadow:0 5px 0 #c75f35}.cta .b{background:#fff;color:var(--ink);border:3px solid var(--sky)}
.trust{background:#fff;border-radius:28px;padding:26px;box-shadow:0 12px 30px rgba(61,47,42,.09)}
.trust h3{font-family:'Fredoka',sans-serif;font-size:1.25rem;margin-bottom:12px}
.trust li{list-style:none;padding:9px 0;border-bottom:1px solid #f3e9dc;font-weight:700;font-size:.95rem;display:flex;gap:10px}.trust li:last-child{border:0}
.check{width:24px;height:24px;border-radius:50%;background:var(--leaf);color:#fff;text-align:center;line-height:24px;font-size:.85rem;flex:none}
.programs{padding:58px 5vw;max-width:1120px;margin:0 auto}
.programs h2,.day h2,.tuition h2,.reviews h2{font-family:'Fredoka',sans-serif;text-align:center}
.programs h2{font-size:2.3rem}.sub{text-align:center;font-weight:700;color:#7a6a62;margin:6px 0 30px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.prog{background:var(--card);border-radius:28px;overflow:hidden;box-shadow:0 10px 24px rgba(61,47,42,.07)}
.prog .top{padding:22px;color:#fff}.t1{background:var(--coral)}.t2{background:var(--sky)}.t3{background:var(--leaf)}
.prog .top h3{font-family:'Fredoka',sans-serif;font-size:1.45rem}.prog .top p{font-weight:800;font-size:.9rem;opacity:.95}
.prog .body{padding:20px 22px 24px}.prog .body p{font-size:.95rem;font-weight:600}.ratio{display:inline-block;margin-top:14px;background:var(--cream);border:2px dashed var(--butter);border-radius:99px;padding:5px 14px;font-weight:900;font-size:.88rem}
.day{background:#fff;padding:58px 5vw;border-top:3px solid var(--butter);border-bottom:3px solid var(--butter)}
.day h2{font-size:2.1rem;margin-bottom:26px}
.rhythm{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:12px;text-align:center}
.step{background:var(--cream);border-radius:20px;padding:16px 10px}.step b{font-family:'Fredoka',sans-serif;display:block;font-size:.95rem}.step span{font-size:.82rem;font-weight:700;color:#7a6a62}
.tuition{padding:58px 5vw;max-width:860px;margin:0 auto}.tuition h2{font-size:2.1rem;margin-bottom:22px}
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:22px;overflow:hidden;border:2px solid #f0e2cd}
th,td{padding:15px 18px;text-align:left}th{background:var(--ink);color:#fff}td{border-top:1px solid #f3e9dc;font-weight:700}td.price{font-weight:900;color:var(--coral);white-space:nowrap}
.tuition .note{text-align:center;margin-top:14px;font-weight:700;font-size:.92rem;color:#7a6a62}
.story{padding:56px 5vw;text-align:center;max-width:780px;margin:0 auto}.story h2{font-family:'Fredoka',sans-serif;font-size:2rem;margin-bottom:12px}.story p{font-weight:600}
.reviews{padding:58px 5vw;background:#eef6fb}.reviews h2{font-size:2.1rem;margin-bottom:26px}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1080px;margin:0 auto}
.rev{background:#fff;border-radius:24px;padding:24px}.rev .stars{color:#e9a426;letter-spacing:.15em}.rev p{margin:10px 0;font-size:.95rem;font-weight:600}.rev cite{font-style:normal;font-weight:900;font-size:.88rem}
.visit{padding:56px 5vw;max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:center}.visit h3{font-family:'Fredoka',sans-serif;margin-bottom:6px}.visit p{font-weight:700;font-size:.94rem}
footer{text-align:center;padding:24px 5vw;background:var(--ink);color:#ffeecf;font-weight:700;font-size:.9rem}
@media(max-width:820px){.hero,.grid,.rgrid,.visit{grid-template-columns:1fr}.rhythm{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:2.5rem}nav{display:none}}
