:root{--bg:#f9fbfe;--bg-soft:#eef3fd;--bg-soft2:#f1eefc;--tint-a:#dee9fb;--tint-b:#e7e2fa;--surface:#ffffff;--border:#e2e8f4;--text:#212437;--text-soft:#5e6480;--text-faint:#959ab1;--accent:#5b62b8;--accent-2:#3d7fc4;--accent-soft:#e6eafa;--shadow:0 1px 2px rgba(50,60,110,.05), 0 8px 24px -12px rgba(50,60,110,.22);--radius:14px;--maxw:1080px;--font:"Pretendard","Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic",sans-serif;--font-display:"Gowun Dodum","Pretendard","Noto Sans KR",serif}html[data-theme=dark]{--bg:#12151f;--bg-soft:#1a1f2e;--bg-soft2:#1f1d2e;--tint-a:#1b2338;--tint-b:#221f39;--surface:#1c2030;--border:#2e3446;--text:#eef1f8;--text-soft:#9ca4bd;--text-faint:#737b95;--accent:#9aa6f0;--accent-2:#7ec0f0;--accent-soft:#232842;--shadow:0 1px 2px rgba(0,0,0,.35), 0 8px 24px -12px rgba(0,0,0,.65)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background-color:var(--bg);background-image:radial-gradient(1100px 620px at 8% -10%,var(--tint-a),transparent 62%),radial-gradient(900px 540px at 96% 2%,var(--tint-b),transparent 60%),radial-gradient(900px 700px at 50% 108%,var(--tint-a),transparent 65%);background-attachment:fixed;background-repeat:no-repeat;color:var(--text);font-family:var(--font);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;letter-spacing:-.01em;transition:background-color .3s ease,color .3s ease}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{line-height:1.35;letter-spacing:-.03em;margin:0;font-weight:700}p{margin:0}ul{margin:0;padding:0;list-style:none}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid transparent;transition:border-color .3s ease}header.scrolled{border-bottom-color:var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;height:84px;gap:16px}.logo{display:inline-flex;align-items:center;flex:none}.logo img{height:60px;width:auto;display:block}.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{font-size:14.5px;color:var(--text-soft);font-weight:500;white-space:nowrap;position:relative;padding:4px 0;transition:color .2s ease}.nav-links a:after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--accent);transition:width .25s ease}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after{width:100%}.nav-tel{color:var(--accent)!important;font-weight:700!important;background:var(--accent-soft);border-radius:100px;padding:6px 14px!important}.nav-tel:after{display:none}.theme-btn{width:36px;height:36px;flex:none;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);border-radius:50%;cursor:pointer;transition:all .2s ease}.theme-btn:hover{color:var(--accent);border-color:var(--accent);transform:rotate(-15deg)}.theme-btn svg{width:16px;height:16px}html[data-theme=dark] .icon-moon,html[data-theme=light] .icon-sun{display:none}.hero{padding:96px 0 88px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:-160px;right:-140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%);opacity:.85;pointer-events:none}.hero-inner{position:relative;display:grid;grid-template-columns:1.35fr .65fr;gap:56px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:6px 14px;margin-bottom:22px}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.hero h1{font-size:clamp(32px,5vw,54px);margin-bottom:22px}.hero h1 em{font-style:normal;color:var(--accent);font-family:var(--font-display)}.hero p.lead{font-size:17.5px;color:var(--text-soft);max-width:52ch;margin-bottom:22px}.hero-note{font-size:14.5px;color:var(--text-faint);margin-bottom:30px}.cta-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:100px;font-size:15px;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--accent);color:#fff}html[data-theme=dark] .btn-primary{color:#141726}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px -8px var(--accent)}.btn-ghost{border-color:var(--border);color:var(--text);background:var(--surface)}.btn-ghost:hover{border-color:var(--text-faint);transform:translateY(-2px)}.portrait{aspect-ratio:9/10;border-radius:var(--radius);overflow:hidden;background:linear-gradient(150deg,var(--bg-soft),var(--accent-soft));border:1px solid var(--border);box-shadow:var(--shadow)}.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}.band{padding:0 0 8px}.band figure{margin:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}.band img{width:100%;height:auto;display:block}.band figcaption{padding:14px 20px;background:var(--surface);border-top:1px solid var(--border);font-size:13.5px;color:var(--text-soft);text-align:center}section{padding:88px 0}.section-head{margin-bottom:44px;max-width:62ch}.section-num{font-size:13px;font-weight:500;color:var(--accent);letter-spacing:.08em;display:block;margin-bottom:10px}.section-head h2{font-size:clamp(26px,3.4vw,34px);margin-bottom:14px}.section-head p{color:var(--text-soft);font-size:16px}.about{background:color-mix(in srgb,var(--bg-soft) 62%,transparent);border-block:1px solid var(--border)}.about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:48px;align-items:start}.about-grid p+p{margin-top:18px}.about-grid p{color:var(--text-soft)}.about-grid em{font-style:normal;color:var(--accent);font-weight:500}.teacher{margin:0}.teacher .ph{aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow)}.teacher .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.teacher figcaption{margin-top:12px;font-size:13.5px;color:var(--text-faint);text-align:center}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-content:start;margin-top:34px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.stat b{display:block;font-size:28px;font-family:var(--font-display);color:var(--accent);line-height:1.25}.stat span{font-size:13.5px;color:var(--text-soft)}.classes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.class-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.class-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--accent)}.class-card .emoji{font-size:26px;line-height:1;margin-bottom:12px}.class-card .age{font-size:12.5px;color:var(--accent-2);font-weight:700;margin-bottom:4px}.class-card h3{font-size:17px;margin-bottom:10px}.class-card p{font-size:14.5px;color:var(--text-soft);margin-bottom:16px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{font-size:12.5px;color:var(--text-soft);background:var(--bg-soft);border:1px solid var(--border);border-radius:100px;padding:3px 11px}.table-scroll{overflow-x:auto;margin-top:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}table{width:100%;border-collapse:collapse;min-width:560px;font-size:14.5px}th,td{padding:14px 20px;text-align:left;border-top:1px solid var(--border);vertical-align:top}thead th{background:var(--bg-soft);border-top:none;font-weight:700;font-size:13.5px;white-space:nowrap}tbody th{font-weight:700;white-space:nowrap;color:var(--accent);background:color-mix(in srgb,var(--bg-soft) 45%,transparent)}td{color:var(--text-soft)}.hours{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.hour-chip{background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:7px 16px;font-size:14px;font-weight:500}.hour-chip b{color:var(--accent);font-weight:700}.scenes{background:color-mix(in srgb,var(--bg-soft2) 62%,transparent);border-block:1px solid var(--border)}.scene{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:22px}.scene:nth-child(2n) .shot{order:2}.shot{width:100%;height:auto;display:block;background:var(--bg-soft)}.scene-body{padding:34px 34px 34px 0}.scene:nth-child(2n) .scene-body{padding:34px 0 34px 34px}.scene-meta{font-size:12.5px;color:var(--accent);letter-spacing:.05em;margin-bottom:9px}.scene h3{font-size:22px;margin-bottom:12px}.scene p{color:var(--text-soft);font-size:15px}.themes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.theme{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.theme:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--accent)}.theme .emoji{font-size:30px;line-height:1;margin-bottom:14px}.theme h3{font-size:18px;margin-bottom:8px}.theme p{font-size:14.5px;color:var(--text-soft)}.theme .ph{aspect-ratio:1;overflow:hidden;border-radius:10px;margin-bottom:16px;background:var(--bg-soft)}.theme .ph img{width:100%;height:100%;object-fit:cover}.themes-label{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.04em;display:block;margin-top:52px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.shot-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.shot-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.shot-card .ph{aspect-ratio:1;overflow:hidden;background:var(--bg-soft)}.shot-card .ph img{width:100%;height:100%;object-fit:cover}.shot-card .cap{padding:14px 18px 16px;font-size:14.5px;color:var(--text-soft)}.note-card{margin-top:36px;background:var(--accent-soft);border-radius:var(--radius);padding:30px 32px;border:1px solid var(--border)}.note-card p{color:var(--text);font-size:16px}.note-card em{font-style:normal;color:var(--accent);font-weight:500}.note-card p+p{margin-top:14px}.note-card .sign{margin-top:16px;font-size:14px;color:var(--accent);font-weight:500}.place-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.card h3{font-size:18px;margin-bottom:14px}.card .addr{font-size:17px;font-weight:500;margin-bottom:6px;letter-spacing:-.02em}.card p{color:var(--text-soft);font-size:15px}.pickup-list li{display:flex;gap:12px;align-items:baseline;padding:11px 0;border-top:1px solid var(--border);font-size:15px;color:var(--text-soft)}.pickup-list li:first-child{border-top:none;padding-top:0}.pickup-list b{flex:none;font-size:12.5px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:2px 12px}.map-link{display:inline-flex;gap:6px;align-items:center;margin-top:16px;font-size:14.5px;font-weight:500;color:var(--accent)}.map-link:hover span{transform:translate(4px)}.map-link span{transition:transform .2s ease}.contact{background:color-mix(in srgb,var(--bg-soft) 55%,transparent);border-top:1px solid var(--border);text-align:center}.contact h2{font-size:clamp(26px,3.6vw,36px);margin-bottom:16px}.contact p{color:var(--text-soft);max-width:48ch;margin:0 auto 12px}.contact .tel{display:inline-block;font-family:var(--font-display);font-size:clamp(28px,4.6vw,40px);color:var(--accent);letter-spacing:-.02em;margin:14px 0 8px}.contact .memo{font-size:14.5px;color:var(--text-faint);margin-bottom:28px}.contact-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}footer{padding:32px 0;border-top:1px solid var(--border)}.foot{display:flex;justify-content:space-between;gap:8px 14px;flex-wrap:wrap;font-size:13.5px;color:var(--text-faint)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.dot{animation:none}}@media(max-width:1020px){.nav-links{gap:16px}.nav-links a{font-size:13.5px}.classes,.themes,.gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:940px){.nav-links a:not(.nav-tel){display:none}}@media(max-width:880px){.hero-inner,.about-grid,.scene,.scene:nth-child(2n) .scene,.place-grid{grid-template-columns:1fr}.portrait{max-width:300px}.teacher .ph{max-width:320px}.teacher figcaption{text-align:left}.stats{grid-template-columns:repeat(2,1fr)}.scene:nth-child(2n) .shot{order:0}.scene-body,.scene:nth-child(2n) .scene-body{padding:0 28px 30px}.shot{margin-bottom:26px}}@media(max-width:620px){.hero{padding:60px 0 52px}section{padding:64px 0}.stats{grid-template-columns:1fr 1fr}.classes,.themes,.gallery{grid-template-columns:1fr}.logo img{height:42px}.nav{height:66px}.nav-tel{font-size:13px!important;padding:5px 12px!important}}.newsletter{background:color-mix(in srgb,var(--bg-soft2) 62%,transparent);border-block:1px solid var(--border)}.news-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:34px 36px;max-width:640px}.news-card h2{font-size:clamp(22px,3vw,28px);margin-bottom:12px}.news-card>p{color:var(--text-soft);font-size:15.5px;margin-bottom:22px}.field-row{display:flex;flex-wrap:wrap;gap:10px}.field{flex:1 1 220px;min-width:0;background:var(--bg);border:1px solid var(--border);border-radius:100px;padding:12px 20px;font-size:15px;font-family:inherit;color:var(--text);transition:border-color .2s ease}.field::placeholder{color:var(--text-faint)}.field:focus{outline:none;border-color:var(--accent)}.field.wide{flex-basis:100%;border-radius:var(--radius)}textarea.field{resize:vertical;min-height:84px;line-height:1.6}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.form-note{font-size:13px;color:var(--text-faint);margin-top:14px}.msg{margin-top:18px;border-radius:var(--radius);padding:14px 18px;font-size:14.5px;line-height:1.6;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-soft)}.msg.ok{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.msg.err{border-color:#d98a8a;background:#fdeeee;color:#7c2b2b}html[data-theme=dark] .msg.err{border-color:#7c4a4a;background:#2d1c1c;color:#f0bcbc}.standalone{min-height:100vh;display:grid;place-items:center;padding:48px 24px}.standalone .news-card{width:100%}.standalone .brand{display:block;margin:0 auto 26px;max-width:220px}.standalone .back{display:inline-block;margin-top:22px;font-size:14.5px;font-weight:500;color:var(--accent)}.rise{display:block;overflow:hidden;padding-bottom:.18em;margin-bottom:-.18em}.rise .rc{display:inline-block;opacity:0;transition:transform .85s cubic-bezier(.2,.95,.25,1),opacity .45s ease,filter .6s ease;transition-delay:calc(var(--i, 0) * 30ms)}.reveal.in .rise .rc,.hero.in .rise .rc{transform:none;opacity:1;filter:none}.rise-up .rc{transform:translateY(118%) rotate(9deg)}.rise-wave .rc{transform:translateY(118%)}.rise-wave .rc:nth-child(2n){transform:translateY(-118%)}.rise-flip{perspective:700px}.rise-flip .rc{transform:rotateX(-92deg) translateY(28%);transform-origin:50% 100%}.rise-zoom,.rise-blur,.rise-swing{overflow:visible;padding-bottom:0;margin-bottom:0}.rise-zoom .rc{transform:scale(.3) translateY(26%)}.rise-blur .rc{transform:translateY(24%);filter:blur(12px)}.rise-swing .rc{transform:translate(-26px) rotate(-14deg)}.sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.sparkle{position:absolute;width:22px;height:22px;opacity:.85;animation:float 6s ease-in-out infinite}.sparkle svg{width:100%;height:100%;display:block}.sparkle.s1{top:12%;left:6%;width:18px;height:18px;animation-delay:0s;color:var(--accent)}.sparkle.s2{top:26%;right:12%;width:26px;height:26px;animation-delay:-1.4s;color:#f0a8cf}.sparkle.s3{top:62%;left:2%;width:14px;height:14px;animation-delay:-2.6s;color:var(--accent-2)}.sparkle.s4{top:8%;right:32%;width:12px;height:12px;animation-delay:-3.8s;color:#f4c96b}.sparkle.s5{bottom:14%;right:6%;width:20px;height:20px;animation-delay:-5s;color:var(--accent)}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(12deg)}}.section-num{display:inline-flex;align-items:center;gap:7px;background:var(--accent-soft);border-radius:100px;padding:5px 14px;letter-spacing:.08em}.section-num:before{content:"✦";font-size:12px;line-height:1}.theme:hover,.shot-card:hover{transform:translateY(-6px) rotate(-1.2deg)}.class-card:hover{transform:translateY(-6px) rotate(1deg)}.class-card:hover .emoji,.theme:hover .emoji{animation:hop .6s ease}@keyframes hop{0%,to{transform:translateY(0) scale(1)}35%{transform:translateY(-10px) scale(1.15)}70%{transform:translateY(-3px) scale(1.02)}}.note-card{position:relative}.note-card:after{content:"";position:absolute;left:42px;bottom:-13px;width:24px;height:14px;background:var(--accent-soft);border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-bottom-right-radius:4px;transform:skew(-22deg)}.eyebrow .dot{animation:pulse 2s infinite}@media(prefers-reduced-motion:reduce){.rise .rc{transform:none;opacity:1;filter:none;transition:none}.sparkle{animation:none}.theme:hover,.shot-card:hover,.class-card:hover{transform:none}.class-card:hover .emoji,.theme:hover .emoji{animation:none}}@media(max-width:620px){.sparkle.s2,.sparkle.s4{display:none}}.monthly{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:8px}.ev-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.ev-card:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:var(--shadow);border-color:var(--accent)}.ev-ph{aspect-ratio:4/3;overflow:hidden;background:var(--bg-soft)}.ev-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.ev-ph.empty{display:grid;place-items:center;background:linear-gradient(150deg,var(--bg-soft),var(--accent-soft))}.ev-ph.empty span{font-size:46px;line-height:1}.ev-card:hover .ev-ph.empty span{animation:hop .6s ease}.ev-body{padding:18px 20px 22px}.ev-body h3{font-size:17px;margin-bottom:6px}.ev-body p{font-size:14px;color:var(--text-soft)}@media(max-width:1020px){.monthly{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.monthly{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.ev-card:hover{transform:none}.ev-card:hover .ev-ph.empty span{animation:none}}.class-card .emoji,.theme .emoji,.ev-ph.empty span{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--accent-soft);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent-soft) 45%,transparent)}.class-card .emoji{font-size:28px;margin-bottom:18px}.theme .emoji{font-size:26px;width:50px;height:50px;margin-bottom:12px}.ev-ph.empty span{width:86px;height:86px;font-size:40px;box-shadow:0 0 0 8px color-mix(in srgb,var(--accent-soft) 45%,transparent)}.stat{position:relative}.stat:before{content:attr(data-icon);position:absolute;top:16px;right:18px;font-size:22px;opacity:.5}.pickup-list li::marker{content:none}.hour-chip:before{content:"⏰ ";font-size:13px}.scene-meta:before{content:"● ";font-size:9px;vertical-align:middle}.tag:before{content:"·";margin-right:5px;color:var(--accent);font-weight:700}.divider{display:flex;align-items:center;justify-content:center;gap:14px;padding:6px 0 2px;color:var(--accent);opacity:.65}.divider i{display:block;flex:1;max-width:120px;height:0;border-top:2px dotted currentColor}.divider span{font-size:15px;line-height:1}.contact .tel:after{content:" 📞";font-size:.5em;vertical-align:middle}.foot span:first-child:before{content:"💛 "}@media(max-width:620px){.class-card .emoji{width:50px;height:50px;font-size:25px}.ev-ph.empty span{width:70px;height:70px;font-size:34px}}.tv{padding:64px 0 0}.tv-card{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.tv-badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:6px 14px;margin-bottom:16px}.tv-body h2{font-size:clamp(22px,2.8vw,28px);margin-bottom:14px}.tv-body p{color:var(--text-soft);font-size:15.5px}.tv-body em{font-style:normal;color:var(--accent);font-weight:500}.tv-prog{margin-top:12px!important;font-size:14px;color:var(--text-faint);padding-left:12px;border-left:3px solid var(--accent-soft)}.tv-body .btn{margin-top:20px}.tv-player{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--bg-soft);border:1px solid var(--border)}.tv-player iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}@media(max-width:880px){.tv-card{grid-template-columns:1fr;gap:24px;padding:26px}}.tv-media{display:grid;grid-template-columns:.62fr 1fr;gap:16px;align-items:start}.tv-poster{width:100%;height:auto;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow)}@media(max-width:880px){.tv-media{grid-template-columns:1fr}}.loop{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}.loop-step{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;text-align:center;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.loop-step:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:var(--shadow);border-color:var(--accent)}.loop-no{position:absolute;top:14px;left:16px;font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:2px 10px}.loop-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--accent-soft);font-size:30px;margin:6px 0 14px;box-shadow:0 0 0 6px color-mix(in srgb,var(--accent-soft) 45%,transparent)}.loop-step h3{font-size:18px;margin-bottom:8px}.loop-step p{font-size:14.5px;color:var(--text-soft)}.loop-step:not(:last-child):after{content:"→";position:absolute;top:50%;right:-15px;transform:translateY(-50%);color:var(--accent);font-size:18px;opacity:.55;z-index:1}#reading .note-card{margin-top:26px}@media(max-width:1020px){.loop{grid-template-columns:repeat(2,1fr)}.loop-step:nth-child(2):after{display:none}}@media(max-width:620px){.loop{grid-template-columns:1fr}.loop-step:after{display:none!important}}@media(prefers-reduced-motion:reduce){.loop-step:hover{transform:none}}.branch{position:relative}.branch-tag{display:inline-block;font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:100px;padding:4px 12px;margin-bottom:12px}.branch h3{font-size:20px;margin-bottom:10px}.pickup-card{margin-top:20px}.char{display:block;width:100%;height:100%;overflow:visible}.char .body{stroke:#0000001a;stroke-width:1.5}.char .star{fill:#f7c948}.char .book{fill:#7fb2ea}.char .pencil{fill:#f2a65a}.char .cloud{fill:#cfe0fb}.char .tip{fill:#f6d9b8}.char .band{fill:#e88f8f}.char .page{stroke:#fff;stroke-width:3;stroke-linecap:round;fill:none;opacity:.75}.char .eye{fill:#3b3550;animation:blink 4.5s infinite}.char .cheek{fill:#ff8fae;opacity:.45}.char .mouth{fill:none;stroke:#3b3550;stroke-width:3;stroke-linecap:round}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.char .eye{transform-box:fill-box;transform-origin:center}@keyframes bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(-5deg)}}@keyframes wiggle{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes walk{0%{transform:translate(-14px) rotate(-8deg)}50%{transform:translate(14px) rotate(8deg)}to{transform:translate(-14px) rotate(-8deg)}}@keyframes drift{0%,to{transform:translate(0)}50%{transform:translate(18px)}}.char-bob{animation:bob 4s ease-in-out infinite}.char-wiggle{animation:wiggle 3.2s ease-in-out infinite}.char-walk{animation:walk 3.6s ease-in-out infinite}.char-drift{animation:drift 9s ease-in-out infinite}.char-slot{position:absolute;pointer-events:none;z-index:2}.hero .char-star{top:6%;right:6%;width:74px;height:74px}.hero .char-cloud{top:20%;left:2%;width:92px;height:62px;opacity:.9}.section-head{position:relative}.head-char{position:absolute;top:-14px;right:0;width:64px;height:64px;pointer-events:none}.divider .char-slot{position:static;width:40px;height:40px}.foot-char{width:34px;height:34px;display:inline-block;vertical-align:-10px;margin-right:8px}@media(max-width:880px){.head-char{width:50px;height:50px;top:-8px}.hero .char-star{width:56px;height:56px}.hero .char-cloud{display:none}}@media(prefers-reduced-motion:reduce){.char-bob,.char-wiggle,.char-walk,.char-drift,.char .eye{animation:none}}
