:root{--ink:#402b35;--muted:#765f69;--pink:#e75f97;--pink-dark:#ba3d71;--soft:#fff1f6;--cream:#fffaf7;--line:#ecd8e1;--deep:#3b2831;--white:#fff;--shadow:0 18px 55px rgba(88,45,63,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:#fffafc;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}.seo-shell{width:min(1160px,calc(100% - 34px));margin:0 auto}.seo-header{position:sticky;top:0;z-index:20;background:rgba(255,250,252,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(236,216,225,.8)}.seo-nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.seo-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900}.seo-brand img{width:42px;height:42px;border-radius:50%;object-fit:cover}.seo-links{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:800}.seo-links a{text-decoration:none}.seo-links a:hover{color:var(--pink-dark)}.seo-nav-cta{padding:10px 17px;border-radius:999px;background:var(--pink);color:#fff!important}.seo-crumb{padding:22px 0 0;font-size:12px;color:#98717f}.seo-crumb a{font-weight:800;text-decoration:none}.seo-hero{padding:58px 0 72px}.seo-hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center}.seo-kicker{margin:0 0 12px;font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--pink-dark)}.seo-hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(46px,6.6vw,78px);line-height:1.02;margin:0 0 22px;letter-spacing:-.025em}.seo-lead{font-size:19px;color:var(--muted);max-width:670px;margin:0 0 27px}.seo-actions{display:flex;flex-wrap:wrap;gap:11px}.seo-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 23px;border-radius:999px;text-decoration:none;font-weight:900;background:var(--pink);color:#fff;box-shadow:0 10px 24px rgba(231,95,151,.22)}.seo-button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.seo-price{margin-top:22px;font-size:14px;color:var(--muted)}.seo-price strong{color:var(--ink);font-size:18px}.seo-visual{background:linear-gradient(145deg,#ffe0eb,#fff8fb);border:1px solid var(--line);border-radius:32px;padding:28px;box-shadow:var(--shadow);position:relative;overflow:hidden}.seo-visual:after{content:"♡";position:absolute;right:20px;top:7px;font-size:66px;color:rgba(192,65,112,.12)}.seo-visual img{width:100%;border-radius:23px;box-shadow:0 13px 35px rgba(70,38,51,.13)}.seo-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:-23px;position:relative;z-index:3}.seo-mini div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;text-align:center;box-shadow:0 10px 30px rgba(80,48,61,.07)}.seo-mini b{display:block;font-size:15px}.seo-mini span{font-size:12px;color:var(--muted)}.seo-section{padding:82px 0}.seo-section.soft{background:var(--soft)}.seo-section.deep{background:var(--deep);color:#fff}.seo-heading{max-width:790px;margin:0 auto 38px;text-align:center}.seo-heading h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(34px,4.5vw,52px);line-height:1.08;margin:5px 0 14px}.seo-heading p{color:var(--muted);font-size:17px;margin:0}.deep .seo-heading p{color:#e9dbe1}.seo-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.seo-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:27px;box-shadow:0 12px 34px rgba(75,42,55,.06)}.seo-card .icon{font-size:25px}.seo-card h3{font-family:"Playfair Display",Georgia,serif;font-size:25px;line-height:1.15;margin:11px 0 9px}.seo-card p{color:var(--muted);margin:0}.seo-split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.seo-split h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(34px,4vw,50px);line-height:1.1;margin:0 0 17px}.seo-split p{color:var(--muted)}.seo-list{display:grid;gap:13px;margin:25px 0}.seo-list div{display:flex;gap:11px;align-items:flex-start}.seo-list b{color:var(--pink-dark)}.seo-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.seo-panel.dark{background:#4b303d;border-color:#684250;color:#fff}.seo-panel.dark p{color:#f0dde5}.seo-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.seo-gallery img{border-radius:20px;width:100%;height:100%;object-fit:cover}.seo-gallery img:first-child{grid-row:span 2}.seo-faq{max-width:850px;margin:0 auto}.seo-faq details{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px 20px;margin:11px 0}.seo-faq summary{font-weight:900;cursor:pointer}.seo-faq p{color:var(--muted);margin:12px 0 0}.seo-cta{border-radius:32px;padding:44px;background:linear-gradient(135deg,#ffd8e6,#fff7fa 57%,#eee5ff);display:flex;justify-content:space-between;gap:28px;align-items:center}.seo-cta h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(32px,4vw,48px);line-height:1.08;margin:0 0 9px}.seo-cta p{margin:0;color:var(--muted)}.seo-related{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.seo-related a{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;text-decoration:none;font-weight:900}.seo-related small{display:block;color:var(--pink-dark);margin-bottom:4px}.seo-footer{padding:34px 0;background:#38262f;color:#fff}.seo-footer .seo-shell{display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:13px}.seo-footer a{color:#ffd6e5}.teacher-photo{max-width:460px;margin:auto;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.inline-link{color:var(--pink-dark);font-weight:900}.note{font-size:13px;color:var(--muted)}
@media(max-width:900px){.seo-hero-grid,.seo-split{grid-template-columns:1fr}.seo-mini{grid-template-columns:1fr 1fr;margin-top:0}.seo-grid3,.seo-related{grid-template-columns:1fr}.seo-links a:not(.seo-nav-cta){display:none}.seo-hero{padding-top:38px}.seo-visual{max-width:650px;margin:auto}.seo-cta{display:block}.seo-cta .seo-button{margin-top:20px}.seo-footer .seo-shell{display:block;text-align:center}.seo-footer .seo-shell div+div{margin-top:9px}}
@media(max-width:560px){.seo-shell{width:min(100% - 24px,1160px)}.seo-nav{min-height:68px}.seo-brand span{font-size:14px}.seo-nav-cta{padding:9px 12px}.seo-hero h1{font-size:43px}.seo-lead{font-size:17px}.seo-section{padding:62px 0}.seo-mini{grid-template-columns:1fr 1fr}.seo-mini div{padding:14px 10px}.seo-gallery{grid-template-columns:1fr}.seo-gallery img:first-child{grid-row:auto}.seo-cta{padding:30px 23px}.seo-panel{padding:23px}}
