@font-face{font-family:Inter;src:local('Inter')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdfb;color:#302b3a;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC',sans-serif}button,a{font:inherit}button{cursor:pointer}a{color:inherit}img{max-width:100%}.wrap{width:min(100% - 48px,1160px);margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:5px;z-index:100;padding:12px;background:#fff}.skip-link:focus{left:5px}a:focus-visible,button:focus-visible,summary:focus-visible,.transcript-list:focus-visible{outline:3px solid #aa8dcf;outline-offset:3px}.eyebrow{margin:0;color:#6c5688;font-size:11px;letter-spacing:.21em;font-weight:850;text-transform:uppercase}.eyebrow.light{color:#e7d9f7}.topbar{height:76px;background:#fffaf7;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 max(24px,calc((100vw - 1160px)/2));border-bottom:1px solid #e8dfea}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-size:18px;font-weight:850;white-space:nowrap}.brand img{width:38px;height:40px;object-fit:contain}.topbar nav{display:flex;gap:26px}.topbar nav a{text-decoration:none;color:#574b67;font-size:13px;font-weight:750}.topbar nav a:hover{color:#5b447c}.nav-cta{white-space:nowrap;background:#5b467b;color:#fff;text-decoration:none;border-radius:999px;padding:11px 18px;font-size:13px;font-weight:800}.hero{position:relative;isolation:isolate;min-height:680px;background:#211d25;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-photo{background:url('assets/hero.jpg') center 41%/cover no-repeat;opacity:.8}.hero-shade{background:linear-gradient(90deg,rgba(20,18,27,.91) 0%,rgba(31,26,35,.83) 37%,rgba(31,25,35,.31) 78%,rgba(31,25,35,.12) 100%),linear-gradient(0deg,rgba(22,19,25,.52),transparent 44%)}.hero-inner{padding:100px 0 48px;color:#fff}.hero h1{font-size:clamp(68px,8vw,114px);letter-spacing:-.07em;line-height:.98;margin:27px 0 25px;max-width:800px}.hero h1 span{display:block;color:#f4dce9;font-size:clamp(27px,3.5vw,48px);font-weight:600;letter-spacing:-.045em;line-height:1.17;margin-top:24px}.hero-lead{max-width:670px;font-size:19px;line-height:1.65;color:#f3edf4;margin:0}.hero-lead em{font-style:italic}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:999px;padding:13px 22px;text-decoration:none;font-size:14px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#fff;color:#43345b}.button-outline{border:1px solid #e3d7e5;color:#fff;background:#ffffff1a}.hero-facts{display:flex;flex-wrap:wrap;gap:0;margin-top:84px;border-top:1px solid #ffffff55;max-width:800px}.hero-facts span{padding:21px 32px 0 0;margin-right:32px;border-right:1px solid #ffffff55;color:#eee6f0;font-size:13px}.hero-facts span:last-child{border-right:0}.hero-facts strong{font-size:25px;color:#fff;margin-right:7px}.intro,.screens-section,.routine{padding-block:104px}.section-heading{max-width:770px;margin-bottom:36px}.section-heading h2,.mini-heading h2,.fit-section h2,.faq-section h2,.closing h2{font-size:clamp(34px,4.2vw,57px);line-height:1.12;letter-spacing:-.046em;margin:13px 0 16px}.section-heading p:last-child,.mini-heading p:last-child{color:#6c6577;font-size:16px;line-height:1.7;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature{background:#fff;border:1px solid #e7dceb;border-radius:24px;padding:28px 24px;min-height:255px;box-shadow:0 12px 30px #48355b0a}.feature-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#eee6f4;color:#554170;font-size:13px;font-weight:850}.feature:nth-child(2) .feature-icon{background:#fae4d8}.feature:nth-child(3) .feature-icon{background:#dcefe7}.feature h3{font-size:20px;letter-spacing:-.02em;margin:25px 0 10px}.feature p{font-size:14px;line-height:1.65;color:#6a6272;margin:0}.mini-section{padding:92px 0 105px;background:linear-gradient(130deg,#f1ebf6,#f8f3f5 55%,#faf2e4)}.mini-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:29px}.mini-heading>div{max-width:760px}.mini-heading h2{margin-bottom:10px}.preview-badge{border-radius:999px;background:#e5d9ef;color:#584174;font-size:12px;font-weight:850;padding:9px 14px;white-space:nowrap}.mini-player{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);background:#fff;border:1px solid #ddd2e6;border-radius:27px;overflow:hidden;box-shadow:0 28px 65px #4f3f611c}.video-column{padding:22px;border-right:1px solid #e9dfed}.video-frame{border-radius:18px;overflow:hidden;background:#18171b;aspect-ratio:16/9}.video-frame video{display:block;width:100%;height:100%;object-fit:cover}.control-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:17px 2px 15px}.control-row button,.transcript-head button{border:1px solid #dacde5;background:#f6f0fa;color:#554170;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.control-row button[aria-pressed=true],.transcript-head button[aria-pressed=true]{background:#584475;color:#fff}.control-row span{font-size:12px;color:#797182;margin-left:auto}.current-line{border-radius:17px;background:#f3edf8;padding:17px 20px;min-height:101px;display:flex;flex-direction:column;gap:4px}.current-line span{font-size:10px;font-weight:850;letter-spacing:.17em;color:#6f5b8c}.current-line strong{font-size:22px;line-height:1.3}.current-line small{font-size:13px;color:#6f6578}.transcript-column{padding:24px 0 20px;display:flex;flex-direction:column;min-width:0}.transcript-head{padding:0 23px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px}.transcript-head h3{font-size:24px;letter-spacing:-.035em;margin:6px 0 0}.transcript-list{overflow-y:auto;max-height:385px;min-height:280px;padding:0 14px 0 20px;scrollbar-color:#b49acb #f6f2f8}.transcript-row{display:block;width:100%;border:0;border-left:3px solid transparent;border-bottom:1px solid #eee8f0;background:#fff;text-align:left;padding:12px 13px;color:#302b3a}.transcript-row:hover{background:#faf7fc}.transcript-row.active{background:#f1eaf7;border-left-color:#5d467e;border-radius:0 11px 11px 0}.transcript-row .time{display:block;color:#78668b;font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:5px}.transcript-row .cn{display:block;font-size:17px;font-weight:800;line-height:1.45}.transcript-row .py{display:none;font-size:12px;color:#785e90;margin-top:3px}.transcript-list.show-pinyin .py{display:block}.transcript-row .en{display:block;font-size:12px;color:#716979;line-height:1.4;margin-top:5px}.transcript-note{font-size:11px;line-height:1.5;color:#7e7385;margin:13px 23px 0}.screen-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.screen-card{border:1px solid #e6ddeb;border-radius:24px;overflow:hidden;background:#fff;text-align:left;padding:0;box-shadow:0 12px 30px #4e3c5e0c;transition:transform .2s,box-shadow .2s}.screen-card:hover{transform:translateY(-4px);box-shadow:0 20px 35px #4e3c5e1b}.screen-card.wide{grid-column:span 3;display:grid;grid-template-columns:1.6fr .8fr;align-items:center;background:#f6f0f8}.screen-image{display:block;height:340px;overflow:hidden;background:#f3eef5}.screen-image img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}.screen-card.wide .screen-image{height:290px}.screen-card.wide .screen-image img{object-fit:contain;object-position:center}.screen-image.shadow img{object-position:center 55%}.screen-image.vocab img{object-position:top}.screen-image.patterns img{object-position:top}.screen-copy{display:flex;flex-direction:column;gap:8px;padding:23px 25px;min-height:135px}.screen-copy b{font-size:18px;letter-spacing:-.025em}.screen-copy span{font-size:13px;color:#6e6475;line-height:1.5}.screen-copy i{font-size:12px;color:#654c83;font-style:normal;font-weight:800}.fit-section{background:#f1eaf3;padding:100px 0}.fit-layout{display:grid;grid-template-columns:1fr .88fr;align-items:center;gap:80px}.fit-lead{font-size:18px;color:#6b6173;line-height:1.7;max-width:570px}.fit-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.fit-tags span{background:#fff;color:#584a65;padding:9px 13px;border-radius:999px;font-size:12px;font-weight:800}.fit-card{background:#fff;border:1px solid #e1d3e9;border-radius:27px;padding:34px;box-shadow:0 18px 40px #4c3b5a13}.fit-card h3{font-size:26px;margin:0 0 12px}.fit-card p{color:#6f6577;font-size:15px;line-height:1.7}.stars{display:flex;flex-direction:column;gap:9px;margin-top:25px}.stars span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border-radius:12px;background:#f8f4fa;color:#5d467a;font-weight:850}.stars small{font-size:12px;color:#716a77;font-weight:600}.routine ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.routine li{border-top:2px solid #c9b7d9;padding:19px 5px 0;display:flex;gap:15px}.routine li>span{flex:0 0 35px;height:35px;display:grid;place-items:center;background:#5b467b;color:#fff;border-radius:50%;font-weight:850}.routine h3{font-size:18px;margin:4px 0 10px}.routine li p{color:#6f6677;font-size:13px;line-height:1.6;margin:0}.faq-section{background:#f9f5f8;padding:100px 0}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:85px}.faq-intro p:last-child{color:#716979;font-size:16px;line-height:1.6}.faq-list details{border-bottom:1px solid #d9cddf;padding:19px 0}.faq-list details:first-child{border-top:1px solid #d9cddf}.faq-list summary{cursor:pointer;list-style:none;font-weight:800;font-size:17px;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';color:#6a5185;font-size:24px;line-height:20px}.faq-list details[open] summary:after{content:'−'}.faq-list p{color:#6b6272;font-size:14px;line-height:1.7;max-width:630px;margin:14px 0 0}.faq-list a{color:#5b467b;font-weight:750}.closing{background:#514069;color:#fff;padding:92px 0}.closing-inner{text-align:center}.closing h2{max-width:700px;margin:15px auto}.closing p:not(.eyebrow){color:#e1d8e9}.closing .button{margin-top:18px}footer{background:#3e3150;color:#ece4ef;padding:24px max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px}footer a{text-decoration:none;font-weight:800}#lightbox{border:0;border-radius:20px;max-width:min(96vw,1100px);max-height:94vh;padding:15px 15px 18px;box-shadow:0 30px 90px #22182780}#lightbox::backdrop{background:#201824bd}#lightbox img{display:block;max-height:77vh;width:auto;margin:auto}#lightbox p{margin:11px 6px 0;color:#5a5262;font-size:13px}#closeLightbox{position:absolute;right:15px;top:15px;border:0;border-radius:50%;background:#514069;color:#fff;font-size:25px;width:37px;height:37px}
@media(max-width:1000px){.feature-grid{grid-template-columns:repeat(2,1fr)}.fit-layout{gap:35px}.routine ol{grid-template-columns:repeat(2,1fr)}.topbar nav{gap:16px}}
@media(max-width:760px){.wrap{width:min(100% - 32px,1160px)}.topbar{height:67px;padding:0 16px}.topbar nav{display:none}.brand{font-size:14px}.brand img{width:32px;height:35px}.nav-cta{font-size:11px;padding:9px 12px}.hero{min-height:0}.hero-photo{background-position:57% center;opacity:.75}.hero-shade{background:linear-gradient(90deg,#17141de8 0%,#17141dbb 70%,#17141d89),linear-gradient(0deg,#17141de0,transparent 70%)}.hero-inner{padding:74px 0 35px}.hero h1{font-size:clamp(55px,12vw,86px)}.hero h1 span{font-size:clamp(26px,6vw,39px)}.hero-lead{font-size:16px}.hero-facts{margin-top:58px}.hero-facts span{padding-right:13px;margin-right:13px;font-size:11px}.hero-facts strong{font-size:20px}.intro,.screens-section,.routine{padding-block:70px}.section-heading h2,.mini-heading h2,.fit-section h2,.faq-section h2,.closing h2{font-size:36px}.mini-section,.fit-section,.faq-section{padding:68px 0}.mini-heading{display:block}.preview-badge{display:inline-block;margin-top:14px}.mini-player{grid-template-columns:1fr}.video-column{border-right:0;border-bottom:1px solid #e9dfed;padding:13px}.transcript-column{padding:21px 0}.transcript-list{min-height:200px;max-height:255px}.screen-gallery{grid-template-columns:1fr 1fr}.screen-card.wide{grid-column:span 2;grid-template-columns:1fr}.screen-card.wide .screen-image{height:220px}.fit-layout,.faq-layout{grid-template-columns:1fr;gap:28px}.faq-layout{gap:12px}.routine ol{gap:23px}}
@media(max-width:520px){.hero h1{font-size:56px}.hero h1 span{font-size:28px}.hero-actions{display:grid}.button{width:100%}.hero-facts{display:grid;grid-template-columns:repeat(3,1fr)}.hero-facts span{border:0;padding:13px 5px 0 0;margin:0}.hero-facts strong{display:block}.feature-grid,.screen-gallery,.routine ol{grid-template-columns:1fr}.feature{min-height:0}.screen-card.wide{grid-column:auto}.screen-image{height:270px}.screen-card.wide .screen-image{height:175px}.screen-copy{min-height:0;padding:18px}.control-row span{width:100%;margin:0}.current-line strong{font-size:19px}.fit-card{padding:24px}.stars span{display:block}.stars small{display:block;margin-top:5px}.faq-list summary{font-size:15px}footer{flex-direction:column;align-items:flex-start}#lightbox{padding:8px;max-width:96vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.screen-card{transition:none}}

/* Keep both faces equally visible; use one light, even tint over the photograph. */
.hero-photo{opacity:1;filter:brightness(1.14)}
.hero-shade{background:rgba(20,17,27,.28)}
.hero .eyebrow,.hero h1,.hero-lead,.hero-facts{text-shadow:0 2px 14px rgba(17,14,24,.72)}
@media(max-width:760px){.hero-photo{opacity:1;filter:brightness(1.14)}.hero-shade{background:rgba(20,17,27,.34)}}

/* The gallery shows actual lesson content, without the seven-step navigation. */
.screen-image.shadow img,.screen-image.vocab img,.screen-image.patterns img{object-fit:contain;object-position:center top}
