.culture-shell{--forest:#20202a;--cream:#faf9f5;background:var(--cream);color:var(--forest);max-width:1280px;font-family:system-ui,-apple-system,sans-serif;padding:0 40px}.culture-shell .home-header{padding:25px 0 18px;gap:10px;border-color:#dcdad5}.culture-shell .wordmark{font-size:30px;color:#20202a;flex:1}.culture-shell .wordmark span{color:#be3151}.culture-shell .language{color:#20202a;border-color:#d3d0ce;font-size:11px}.culture-shell .home-links{gap:27px;font-size:13px;padding:19px 0;flex-wrap:wrap}.culture-shell h1,.culture-shell h2,.culture-shell h3{font-family:system-ui,-apple-system,sans-serif;font-weight:700;letter-spacing:-1.6px}.culture-shell h1{font-size:clamp(38px,4.7vw,64px);line-height:1.12}.culture-shell h2{font-size:clamp(26px,3vw,40px);line-height:1.2}.culture-shell h3{font-size:21px;line-height:1.35;letter-spacing:-.6px}.culture-shell p{color:#5e5c65;font-size:15px;line-height:1.8}.culture-shell .overline{letter-spacing:1.4px;font-size:10px}.culture-shell .home-btn{border-radius:5px;padding:14px 20px;border-color:#24232d;font-size:12px}.culture-shell .home-btn.dark{background:#24232d;border-color:#24232d;color:#fff}.text-link{display:inline-block;text-underline-offset:5px;font-size:13px;font-weight:600;line-height:1.6}.culture-hero{display:grid;grid-template-columns:1.15fr 1fr;min-height:525px;padding:35px 0 45px;align-items:center;gap:32px;border-top:1px solid #dcdad5}.hero-copy{padding:0 0 0 10px}.hero-copy>p{max-width:480px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0 45px}.editorial-stamp{font:10px monospace;letter-spacing:2px;color:#6d6971}.culture-art{height:470px;position:relative;background:#ded5e2;overflow:hidden;border-radius:8px}.culture-art .culture-stage{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}.culture-art .culture-ruri{position:absolute;width:88%;height:100%;object-fit:contain;bottom:-8%;left:6%;filter:drop-shadow(0 5px 3px #26202a22)}.phrase-sticker{position:absolute;bottom:50px;left:15px;background:#fff8ea;color:#27232a;padding:15px 20px;transform:rotate(-5deg);font:700 26px system-ui;border:1px solid #25232c}.phrase-sticker small{display:block;font:12px system-ui;margin-top:5px}.art-caption{position:absolute;bottom:14px;left:18px;color:#fff;font:9px monospace;letter-spacing:2px}.featured-story{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding:30px;background:#efede8;border-radius:8px}.feature-image{height:330px;position:relative;overflow:hidden;border-radius:5px}.feature-image img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.feature-image>span{position:absolute;left:15px;bottom:15px;background:#fff;padding:8px 10px;font:10px monospace}.feature-copy{padding:20px 15px 20px 0}.feature-copy h2{margin:17px 0}.culture-section{padding:65px 0;border-bottom:1px solid #dcdad5}.section-title{display:flex;gap:35px;justify-content:space-between;align-items:end;margin-bottom:26px}.section-title h2{margin-bottom:0}.section-title>p{max-width:320px;font-size:13px}.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.moment{text-decoration:none!important;position:relative;padding-bottom:8px;min-width:0}.moment-img{height:240px;position:relative;overflow:hidden;border-radius:6px}.moment-img>img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .2s}.moment:hover img{transform:scale(1.025)}.moment-img>span{position:absolute;left:12px;top:12px;background:#fff;padding:7px 9px;font:10px monospace;letter-spacing:1px}.moment h3{font-size:19px;margin:17px 23px 7px 0}.moment>p{font-size:14px;margin:0}.moment-arrow{position:absolute;right:0;bottom:45px;font-size:22px}.character-duo{display:grid;grid-template-columns:1fr 1fr;gap:24px}.character-duo article{display:grid;grid-template-columns:.85fr 1fr;align-items:center;background:#e7e0ed;border-radius:6px;min-height:280px;overflow:hidden;padding:15px 24px 0 0}.character-duo article+article{background:#eee5d9}.character-duo img{width:100%;height:280px;object-fit:contain;object-position:center bottom;align-self:end}.character-duo p{font-size:13px}.character-duo h3{margin:8px 0}.art-disclosure{font-size:10px!important;margin-top:14px}.community-banner{margin:50px 0 0;padding:48px;background:#24232e;color:#fff;border-radius:6px}.community-banner h2{font-size:clamp(30px,4vw,48px)}.community-banner p{color:#ccc8d2;max-width:560px}.community-banner .home-btn{border-color:#aaa4b0;color:#fff;margin-top:12px}.travel-section{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.travel-section>img{width:100%;height:380px;object-fit:cover;border-radius:6px}.travel-section h3{font-size:18px;margin-top:32px}.culture-start{padding:45px 0}.culture-start>p{max-width:650px}.culture-start .text-link{margin-inline-start:25px}.kids-entrance{border-top:1px solid #dcdad5;display:flex;align-items:center;gap:24px;padding:25px 0}.kids-entrance>img{width:100px;height:110px;object-fit:contain}.kids-entrance h3{font-size:17px;margin:0}.kids-entrance p{font-size:12px;margin:6px 0}.kids-entrance .text-link{font-size:12px}.culture-shell footer{color:#6d6971;border-color:#dcdad5}.culture-shell .teacher,.culture-shell .bubble{border-radius:6px}.culture-shell .disclosure{background:#eeebe6;border-radius:6px}.lesson-heading{padding-bottom:25px;max-width:850px}.lesson-heading h1{font-size:42px}.lesson-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;padding-bottom:35px;border-bottom:1px solid #dcdad5}.lesson-video h2,.lesson-practice h2{font-size:22px}.lesson-video video{display:block;width:100%;max-height:550px;aspect-ratio:9/16;background:#24232e;object-fit:contain;border-radius:6px;margin-bottom:15px}.lesson-practice{padding-top:25px}.target-phrase{font-size:28px!important;color:#a72e48!important;font-weight:700;line-height:1.5!important}.phrase-explanation,.practice-limit{font-size:12px!important}.lesson-practice label{display:block;font-size:12px;margin-bottom:8px}.lesson-practice textarea{display:block;width:100%;padding:15px;font:18px/1.6 system-ui;border:1px solid #aaa3ae;border-radius:5px;margin-bottom:12px;resize:vertical;background:#fff}.lesson-practice #culture-feedback:not(:empty){background:#ece8ef;padding:12px 18px;border-radius:6px;margin-top:18px}.culture-shell button:focus-visible,.culture-shell a:focus-visible,.culture-shell textarea:focus-visible{outline:3px solid #be3151;outline-offset:4px}html:has(.culture-shell),body:has(.culture-shell){background:#faf9f5}[dir=rtl] .hero-copy{padding:0 10px 0 0}[dir=rtl] .feature-copy{padding:20px 0 20px 15px}@media(max-width:760px){.culture-shell{padding:0 20px}.culture-shell .home-header{padding-top:20px}.culture-shell .wordmark{font-size:25px}.culture-shell .language{padding:8px;font-size:10px}.culture-shell .home-links{gap:16px;font-size:11px;row-gap:12px}.culture-hero{grid-template-columns:1fr;gap:22px;padding-top:30px}.hero-copy{padding:0}.culture-shell h1{font-size:41px;letter-spacing:-1.8px}.hero-copy>p{font-size:14px}.hero-actions{gap:17px;margin:22px 0}.editorial-stamp{font-size:9px}.culture-art{height:365px}.culture-art .culture-ruri{bottom:-6%}.featured-story{grid-template-columns:1fr;gap:8px;padding:18px}.feature-image{height:270px}.feature-copy{padding:15px 4px}.culture-section{padding:40px 0}.section-title{display:block}.section-title>p{max-width:none}.moment-grid{grid-template-columns:1fr;gap:24px}.moment-img{height:270px}.moment h3{font-size:20px}.moment-arrow{bottom:35px}.character-duo{grid-template-columns:1fr}.character-duo article{min-height:260px;padding-inline-end:16px}.character-duo img{height:265px}.community-banner{padding:30px 24px;margin-top:35px}.travel-section{grid-template-columns:1fr;gap:25px}.travel-section>img{height:270px}.culture-start{padding:30px 0}.culture-start .text-link{display:block;margin:20px 0 0}.kids-entrance{gap:15px}.kids-entrance>img{width:70px}.lesson-heading h1{font-size:34px}.lesson-grid{grid-template-columns:1fr;gap:15px}.lesson-video video{max-height:480px}.lesson-practice{padding-top:15px}.culture-shell .home-btn{font-size:12px;padding:13px 17px}}@media(prefers-reduced-motion:reduce){.moment-img>img{transition:none}}
/* The new cast uses original image viewports; no duplicated character bitmaps. */
.character-portrait{display:block;width:100%;height:100%;background:#fff}.culture-shell .teacher>.character-portrait{height:290px;background:#fff}.culture-shell .tutor-profile>.character-portrait{height:430px;border-radius:8px}.fr .pic .character-portrait,.chathead .ava .character-portrait{width:100%;height:100%}.doll>.character-portrait.body{height:100%;width:100%;position:absolute;inset:0}.new-cast{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}.new-cast>article{min-width:0;border:1px solid #dedbd6;border-radius:6px;background:#fff;padding:20px}.new-cast .character-portrait{height:260px;margin-bottom:18px}.new-cast h3{margin:10px 0;font-size:24px}.new-cast h3 small{font-size:13px;font-weight:400}.new-cast p{font-size:13px}.new-cast .cast-quote{min-height:65px;color:#25232c;border-top:1px solid #eee;padding-top:12px}.new-cast .text-link{font-size:12px}.culture-faq{padding:35px 0 50px}.culture-faq details{border-bottom:1px solid #dcdad5;padding:18px 0}.culture-faq summary{font-size:15px;font-weight:600;cursor:pointer;line-height:1.6}.culture-faq details p{max-width:780px;font-size:14px}.explore-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:15px 0 60px}.explore-story{border-top:2px solid #292632;padding-top:20px}.explore-story h2{font-size:30px}.language-note{background:#efece6;padding:20px;margin:25px 0;border-radius:6px}.language-note b{font-size:20px}.language-note p{font-size:13px;margin:6px 0 18px}.language-note p:last-child{margin-bottom:0}.home-links a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}@media(max-width:760px){.new-cast{grid-template-columns:1fr;gap:18px}.new-cast>article{display:grid;grid-template-columns:125px 1fr;gap:4px 18px;padding:16px}.new-cast .character-portrait{grid-row:1/6;height:225px;margin:0}.new-cast .overline{align-self:end}.new-cast h3{margin:4px 0}.new-cast p{margin:2px 0}.new-cast .cast-quote{min-height:0;padding-top:8px;margin-top:6px;font-size:12px}.new-cast .text-link{align-self:start;margin-top:10px}.explore-grid{grid-template-columns:1fr}.culture-shell .tutor-profile>.character-portrait{height:360px}.culture-shell .teacher>.character-portrait{height:300px}.culture-shell .home-links{column-gap:15px}}

.culture-shell .teacher>img{object-position:center top;background:#fff}.character-portrait{overflow:hidden}
/* 실사풍 AI 선생님 초상(tutor-*.png): 카드 안에서 얼굴 쪽으로 잘라 같은 높이로 */
.culture-shell img[src*="/items/tutor-"]{display:block;width:100%;height:280px;object-fit:cover;object-position:center 22%;border-radius:18px;background:#eee}
.chathead .ava img[src*="/items/tutor-"],.friends .pic img[src*="/items/tutor-"]{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.funnel .ep-shelf{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.ep-card{min-width:0}.ep-img{display:block;position:relative;height:260px;overflow:hidden;border-radius:6px}.ep-img img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.ep-img span{position:absolute;left:10px;top:10px;background:#fff;padding:6px 8px;font:10px monospace}.ep-card h3{font-size:16px;margin:12px 0 2px}.ep-card>p{font-size:13px;margin:0 0 10px}.ep-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ep-actions .home-btn{padding:10px 14px}
.kids-shelf{background:#fff4dc;margin:0 -40px;padding-inline:40px}.kids-row{display:grid;grid-template-columns:repeat(10,1fr);gap:10px}.kid-card{display:block;text-decoration:none;text-align:center;color:#20202a}.kid-card img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:6px}.kid-card b{display:block;font-size:20px;color:#7a3fb0;margin-top:6px}.kid-card span{font:10px monospace;color:#6d6971}
.plan-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:20px}.plan-grid article{border:1px solid #dcdad5;border-radius:8px;padding:24px;background:#fff}.plan-grid .plan-main{background:#24232e;color:#fff}.plan-main h3,.plan-main li{color:#fff}.plan-grid ul{padding-inline-start:18px;margin:12px 0 20px;font-size:14px;line-height:1.9;color:#5e5c65}.plan-main .home-btn.dark{background:#be3151;border-color:#be3151}
.loop{list-style:none;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.loop li{background:#fff;border:1px solid #dcdad5;border-radius:8px;padding:18px}.loop-n{display:inline-block;width:26px;height:26px;border-radius:50%;background:#be3151;color:#fff;text-align:center;line-height:26px;font-weight:700;font-size:13px}.loop b{display:block;margin:10px 0 2px}.loop em{font:11px monospace;color:#be3151;font-style:normal}.loop p{font-size:13px;margin:8px 0 0}.road{display:flex;gap:12px;align-items:center}.road div{flex:1;background:#efede8;border-radius:8px;padding:16px}.road p{font-size:13px;margin:4px 0 0}
.coach-letters{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0 24px}.coach-letters div{background:#fff;border:1px solid #dcdad5;border-radius:8px;padding:12px 16px;text-align:center;min-width:80px}.coach-letters b{display:block;font-size:44px;color:#7a3fb0;font-family:'Nanum Myeongjo',serif}.coach-letters span{display:block;font-weight:700}.coach-letters small{font-size:12px;color:#6d6971}.coach-steps ol{font-size:16px;line-height:1.8}.coach-steps li{margin-bottom:14px}.coach-steps li p{margin:2px 0}.coach-lock{background:#efede8;border-radius:8px;padding:28px}.print-cards{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.print-cards span{width:120px;height:150px;border:2px dashed #aaa;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:80px;font-family:'Nanum Myeongjo',serif}
@media(max-width:760px){.funnel .ep-shelf{grid-template-columns:repeat(5,72%);overflow-x:auto;scroll-snap-type:x mandatory}.ep-card{scroll-snap-align:start}.kids-shelf{margin:0 -20px;padding-inline:20px}.kids-row{grid-template-columns:repeat(10,28%);overflow-x:auto}.plan-grid{grid-template-columns:1fr}.loop{grid-template-columns:1fr 1fr}.loop li{padding:14px}.road{flex-direction:column;align-items:stretch}.road>span{text-align:center}}
@media print{.culture-shell>*:not(main),main>*:not(.coach-steps),.coach-steps>*:not(.print-cards){display:none!important}}
.tieut{width:.8em;height:.8em;vertical-align:-.05em}

/* 형 10/28 홈페이지: 휴대폰 메뉴 9개가 세 줄로 접혀 첫 화면을 먹던 것 — 한 줄 가로 넘김으로 */
@media(max-width:760px){.culture-shell .home-links{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:12px}.culture-shell .home-links::-webkit-scrollbar{display:none}}

/* 형 10/28 "눈을 사로잡아야지" — 홈 첫 화면 움직임(motion.js). 동작 줄이기 설정이면 전부 멈춤 */
.culture-art .culture-ruri{animation:mo-enter .9s cubic-bezier(.2,.8,.2,1) both,mo-sway 5s ease-in-out 1s infinite}
.culture-art .culture-stage{animation:mo-zoom 14s ease-in-out infinite alternate}
.mo-beams{position:absolute;inset:0;pointer-events:none;z-index:1;mix-blend-mode:screen}
.mo-beams i{position:absolute;top:-20%;width:22%;height:140%;background:linear-gradient(180deg,#ffe6f3cc,#c9a2ff33 55%,transparent);filter:blur(6px);transform-origin:50% 0;opacity:.55;animation:mo-beam 6s ease-in-out infinite}
.mo-beams i:nth-child(1){left:8%;animation-delay:-1s}.mo-beams i:nth-child(2){left:42%;animation-delay:-3s;background:linear-gradient(180deg,#b9f1ffcc,#7fd3ff33 55%,transparent)}.mo-beams i:nth-child(3){left:74%;animation-delay:-4.5s}
.mo-float{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.mo-float span{position:absolute;bottom:-40px;color:#fff;font-weight:800;opacity:0;text-shadow:0 2px 12px #be315188;animation:mo-rise linear infinite}
.culture-art .culture-ruri,.culture-art .phrase-sticker,.culture-art .art-caption{z-index:2}
.phrase-sticker.mo-pop{animation:mo-pop .45s cubic-bezier(.2,1.6,.4,1) both}
.phrase-sticker .mo-ko{display:inline-block;min-width:1em}
.culture-hero h1{animation:mo-fade .8s ease both}.culture-hero .hero-copy>p{animation:mo-fade .8s .15s ease both}.culture-hero .hero-actions{animation:mo-fade .8s .3s ease both}
.culture-hero .home-btn.dark{position:relative;overflow:hidden}.culture-hero .home-btn.dark::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff55 50%,transparent 70%);transform:translateX(-120%);animation:mo-shine 3.2s ease-in-out 1.2s infinite}
.mo-up{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.mo-up.mo-in{opacity:1;transform:none}
@keyframes mo-enter{from{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:none}}
@keyframes mo-sway{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-1deg)}}
@keyframes mo-zoom{from{transform:scale(1)}to{transform:scale(1.08)}}
@keyframes mo-beam{0%,100%{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}
@keyframes mo-rise{0%{transform:translateY(0);opacity:0}15%{opacity:.75}100%{transform:translateY(-520px) rotate(25deg);opacity:0}}
@keyframes mo-pop{from{transform:rotate(-5deg) scale(.6);opacity:0}to{transform:rotate(-5deg) scale(1);opacity:1}}
@keyframes mo-fade{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes mo-shine{0%{transform:translateX(-120%)}40%,100%{transform:translateX(120%)}}
@media(prefers-reduced-motion:reduce){.culture-art *,.culture-hero *,.mo-up{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}.mo-beams,.mo-float{display:none}}
