:root{--brand:#ba2020;--dark:#07111c;--gray:#bdc7c7;--accent:#ffeb4d;--ink:#111316;--bg:#faf9f7}*{box-sizing:border-box}body{font-family:system-ui,-apple-system,sans-serif;margin:0;background:var(--bg);color:var(--ink)}nav{background:#fff;border-bottom:1px solid #eee;position:-webkit-sticky;position:sticky;top:0;z-index:5}.nav-in{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:4px;padding:10px 16px}.nav-logo-link{margin-right:auto;line-height:0}.nav-logo{height:34px;cursor:pointer;display:block}.nav-links{display:flex;align-items:center;gap:4px}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:38px;padding:9px;background:none;border-radius:8px}.nav-toggle span{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px}.nav-toggle:hover{background:#f7eaea}nav a.nav-link{background:none;border:0;padding:9px 13px;font-size:.95rem;cursor:pointer;color:var(--ink);border-radius:8px;text-decoration:none}nav a.nav-link.active,nav a.nav-link:hover{background:#f7eaea;color:var(--brand)}.wrap{max-width:960px;margin:0 auto;padding:24px 16px 60px}.narrow{max-width:620px;margin:0 auto}.card{background:#fff;border-radius:14px;padding:26px;box-shadow:0 2px 10px rgba(7,17,28,.08);margin-top:18px}h1{font-size:1.7rem}h2{font-size:1.2rem}button{border:0}.primary,button{cursor:pointer;border-radius:10px;font-size:1rem}.primary{background:var(--brand);color:#fff;padding:13px 26px;width:100%;margin-top:6px;border:0}.primary:disabled{opacity:.55;cursor:not-allowed}.secondary{background:#f7eaea;color:var(--brand);padding:13px 26px;margin-top:10px;border-radius:10px;border:0}.opt,.secondary{width:100%;cursor:pointer;font-size:1rem}.opt{display:block;text-align:left;margin:8px 0;padding:13px 16px;background:#f4f2ef;border:2px solid transparent;border-radius:10px}.opt.sel,.opt:hover{border-color:var(--brand)}.opt.sel{background:#f2dddd}.ghost{background:none;color:var(--brand);padding:10px 0;border:0;cursor:pointer;font-size:1rem}input,select{width:100%;padding:11px;margin:4px 0 14px;border:1px solid #ccc;border-radius:8px;font-size:1rem}label{display:block}.bar{height:8px;background:#eee3e3;border-radius:4px;margin:14px 0;overflow:hidden}.bar>div{height:100%;background:var(--brand);transition:width .25s}.qno{color:#888;font-size:.9rem}.result-type{font-size:3.2rem;color:var(--brand);text-align:center;margin:10px 0 0}.note{font-size:.85rem;color:#777}.qr{width:180px;height:180px;margin:14px auto;background:repeating-conic-gradient(#111316 0 25%,#fff 0 50%) 0 0/20px 20px;border:10px solid #fff;outline:1px solid #ddd}.price{font-size:1.8rem;text-align:center;color:var(--brand);font-weight:700}.banner{position:relative;border-radius:16px;overflow:hidden;margin-top:18px;aspect-ratio:16/6;min-height:220px;background:#ddd}.slide{position:absolute;inset:0;opacity:0;transition:opacity .8s}.slide.on{opacity:1}.slide img,.slide picture,.slide video{width:100%;height:100%;object-fit:cover;display:block}.slide .caption{position:absolute;left:0;right:0;bottom:0;padding:26px 30px 20px;background:linear-gradient(transparent,rgba(7,17,28,.75));color:#fff}.slide .caption h1{margin:0;font-size:1.5rem}.slide .caption .tag{color:var(--accent);font-style:italic;font-size:.95rem}.dots{position:absolute;bottom:10px;right:16px;display:flex;gap:6px}.dots span{width:9px;height:9px;border-radius:50%;background:hsla(0,0%,100%,.5);cursor:pointer}.dots span.on{background:#fff}.arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(7,17,28,.35);color:#fff;width:38px;height:38px;border-radius:50%;font-size:1.1rem}.arrow:hover{background:rgba(7,17,28,.6)}.arrow.l{left:12px}.arrow.r{right:12px}.stats{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:18px}.stat{background:#fff;border-radius:12px;padding:16px 26px;text-align:center;box-shadow:0 2px 10px rgba(7,17,28,.08);flex:1 1;min-width:150px}.stat b{display:block;font-size:1.7rem;color:var(--brand);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat span{font-size:.85rem;color:#777}.terms-box{max-height:320px;overflow-y:auto;border:1px solid #ddd;border-radius:10px;padding:4px 16px;background:#fcfbfa;font-size:.87rem;color:#444}.terms-box h4{margin:14px 0 4px;color:var(--ink)}.terms-box p{margin:4px 0}.agree{display:flex;gap:10px;align-items:flex-start;margin:16px 0 4px;font-size:.95rem}.agree input{width:auto;margin:3px 0 0;transform:scale(1.3)}.err{color:var(--brand);font-size:.82rem;margin:-10px 0 10px}.dot{position:relative;padding-left:18px}.dot:before{content:"";position:absolute;left:0;top:.45em;width:9px;height:9px;border-radius:50%;background:var(--brand)}.lg-wrap{overflow:hidden;background:#fff;border-radius:14px;padding:18px 0;box-shadow:0 2px 10px rgba(7,17,28,.08);margin-top:18px}.lg-track{display:flex;align-items:center;gap:46px;width:max-content;animation:lgscroll 40s linear infinite}.lg-wrap:hover .lg-track{animation-play-state:paused}.lg-track img{height:44px;width:auto}@keyframes lgscroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.teacher{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.teacher .tphoto{width:120px;height:120px;border-radius:50%;object-fit:cover;object-position:top;background:#f0ece6;flex:none}.teacher .tinfo{flex:1 1;min-width:220px}.teacher h3{margin:0 0 2px}.teacher .ttitle{color:var(--brand);font-weight:600;font-size:.92rem}.teacher ul{margin:10px 0 0;padding-left:18px;color:#555;font-size:.9rem}.tbio{display:none;margin-top:12px;color:#444;font-size:.92rem;border-top:1px solid #eee;padding-top:12px}.tbio.open{display:block}.band{background:linear-gradient(160deg,#eef2f0,#e7e3da);border-radius:16px;padding:26px 22px 30px;margin-top:36px}.band h2{margin-top:0}.tcard{background:#fff;border-radius:12px;padding:18px;box-shadow:0 2px 8px rgba(7,17,28,.06);display:flex;flex-direction:column}.ticon{width:37px;height:37px;border-radius:10px;margin-bottom:10px;overflow:hidden;flex:none}.ticon img{width:100%;height:100%;object-fit:contain;display:block}.ticon.ph{border:2px dashed var(--gray);background:#f7f6f4;display:flex;align-items:center;justify-content:center}.ticon.ph svg{width:18px;height:18px;opacity:.45}.tcard h4{margin:0 0 6px;font-size:1rem}.tcard p{color:#555;font-size:.88rem;flex:1 1;margin:0 0 10px}.tcard .meta{display:flex;justify-content:space-between;font-size:.85rem}.tcard .meta b{color:var(--brand)}.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:14px;gap:14px;margin-top:14px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:16px;gap:16px;margin-top:18px}.product{background:#fff;border-radius:14px;padding:22px;box-shadow:0 2px 10px rgba(7,17,28,.08);display:flex;flex-direction:column}.product .ticon{margin-top:12px;margin-bottom:0}.product .ticon:not(.ph){width:92px;height:92px;border-radius:14px}.product .badge{align-self:flex-start;font-size:.75rem;padding:4px 10px;border-radius:20px;background:#f7eaea;color:var(--brand);font-weight:600}.product .badge.soon{background:#eee;color:#888}.product h3{margin:12px 0 6px}.product p{color:#555;font-size:.92rem;flex:1 1}.product .pprice{font-weight:700;color:var(--brand);margin:8px 0}.footer{text-align:center;font-size:.8rem;color:#999;margin-top:40px}.contact-row{display:flex;gap:10px;margin:12px 0;align-items:flex-start}.contact-row .ic{width:34px;height:34px;border-radius:8px;background:#f7eaea;display:flex;align-items:center;justify-content:center;flex:none;font-size:1rem}.contact-row .ic,a{color:var(--brand)}.resume-card{border-left:5px solid var(--brand)}.atable{width:100%;border-collapse:collapse;font-size:.88rem;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(7,17,28,.08)}.atable td,.atable th{padding:9px 12px;text-align:left;border-bottom:1px solid #f0ece8;white-space:nowrap}.atable th{background:#f7f5f2;font-weight:600;color:#444;position:-webkit-sticky;position:sticky;top:0}.atable tr:hover td{background:#faf6f2}.atable-wrap{overflow-x:auto;margin-top:14px;border-radius:12px}.afilters{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;align-items:flex-end}.afilters label{font-size:.78rem;color:#777;display:block}.afilters input,.afilters select{margin:2px 0 0;padding:8px;width:auto;min-width:110px}.atabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.atabs button{padding:9px 14px;border-radius:8px;background:#f4f2ef}.atabs button.on{background:var(--brand);color:#fff}.apill{display:inline-block;padding:2px 9px;border-radius:12px;font-size:.78rem;background:#f7eaea;color:var(--brand);font-weight:600}.apill.gray{background:#eee;color:#777}.abtn{background:var(--brand);color:#fff;padding:8px 14px;border-radius:8px}.abtn.sec{background:#f7eaea;color:var(--brand)}.abtn:disabled{opacity:.5}.amsg{font-size:.85rem;margin:8px 0}.amsg.ok{color:#1a7f37}.amsg.bad{color:var(--brand)}.admin-root{width:100%}body:has(.admin-root) .wrap{max-width:none}@media (max-width:720px){.nav-toggle{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;background:#fff;padding:8px 12px 14px;border-bottom:1px solid #eee;box-shadow:0 10px 18px rgba(7,17,28,.1)}.nav-links.open{display:flex}nav a.nav-link{padding:12px 13px;font-size:1rem}.banner{aspect-ratio:1/1}.slide .caption{padding:18px 18px 16px}.slide .caption h1{font-size:1.2rem}.arrow{width:32px;height:32px}.wrap{padding:18px 14px 48px}h1{font-size:1.45rem}}