/* Ursula cinematic public landing page
   Each major block is isolated under a numbered SECTION comment so it can be restored independently. */

:root{
  --cinema-ink:#15131e;
  --cinema-paper:#f4f3ef;
  --cinema-paper-2:#e9e8e2;
  --cinema-purple:#6047ef;
  --cinema-violet:#9c55e7;
  --cinema-blue:#3c6ff5;
  --cinema-mint:#79e0c1;
  --cinema-night:#101017;
  --cinema-line:rgba(21,19,30,.12);
  --cinema-radius:28px;
  --cinema-shadow:0 42px 120px rgba(31,25,58,.16);
}

html{scroll-behavior:smooth;scroll-padding-top:90px}
body.cinematic-home{margin:0;overflow-x:clip;background:var(--cinema-paper);color:var(--cinema-ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif}
body.cinematic-home *{box-sizing:border-box}
body.cinematic-home main{overflow:clip}
body.cinematic-home em{font-family:var(--serif,Georgia,"Times New Roman",serif);font-weight:400}
body.cinematic-home button,body.cinematic-home a{font:inherit}
body.cinematic-home a{color:inherit}
body.cinematic-home .skip-story{position:fixed;z-index:999;top:8px;left:8px;padding:10px 14px;border-radius:99px;background:#fff;transform:translateY(-150%);transition:transform .2s}
body.cinematic-home .skip-story:focus{transform:none}
body.cinematic-home .story-progress{position:fixed;z-index:201;inset:0 0 auto;height:2px;background:transparent;pointer-events:none}
body.cinematic-home .story-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--cinema-blue),var(--cinema-violet));transform:scaleX(0);transform-origin:left center;will-change:transform}

/* Global navigation */
body.cinematic-home .home-nav{position:fixed;z-index:200;top:16px;left:50%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;width:min(1180px,calc(100% - 32px));min-height:64px;padding:8px 10px 8px 18px;border:1px solid rgba(255,255,255,.62);border-radius:18px;background:rgba(246,245,241,.79);box-shadow:0 12px 40px rgba(29,24,48,.09);transform:translateX(-50%);backdrop-filter:blur(20px) saturate(1.25);transition:transform .35s ease,background .35s ease,color .35s ease,border-color .35s ease}
body.cinematic-home .home-nav.on-dark{border-color:rgba(255,255,255,.11);background:rgba(18,17,25,.72);color:#f7f5ff}
body.cinematic-home .home-brand{display:flex;align-items:center;width:112px;height:38px;text-decoration:none}
body.cinematic-home .home-brand img{display:block;width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}
body.cinematic-home .home-nav.on-dark .home-brand img{filter:brightness(0) invert(1)}
body.cinematic-home .home-nav>.lx-tools{display:none!important}
body.cinematic-home .home-links{display:flex;gap:28px;justify-content:center;margin:0;padding:0}
body.cinematic-home .home-links a{position:relative;color:inherit;font-size:12px;font-weight:700;text-decoration:none}
body.cinematic-home .home-links a::after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:currentColor;transform:scaleX(0);transition:transform .25s}
body.cinematic-home .home-links a:hover::after{transform:scaleX(1)}
body.cinematic-home .home-account{display:flex;align-items:center;gap:5px}
body.cinematic-home .nav-account{min-height:42px;padding:0 15px;border:0!important;border-radius:12px!important;background:transparent!important;color:inherit!important;font-size:12px!important;font-weight:750!important;box-shadow:none!important;text-decoration:none}
body.cinematic-home .nav-account.pro{border:1px solid currentColor!important}
body.cinematic-home .nav-account.signup{padding-inline:18px!important;background:var(--cinema-ink)!important;color:#fff!important}
body.cinematic-home .home-nav.on-dark .nav-account.signup{background:#fff!important;color:var(--cinema-ink)!important}
body.cinematic-home .home-profile{width:42px;height:42px;border:1px solid var(--cinema-line);border-radius:12px;background:transparent;color:inherit}
body.cinematic-home .home-profile svg{width:20px}
body.cinematic-home .scene-kicker{margin:0 0 18px!important;color:var(--cinema-purple)!important;font-size:10px!important;font-weight:850!important;letter-spacing:.18em!important;text-transform:uppercase}
body.cinematic-home .home-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:28px;min-height:54px;padding:0 22px!important;border:0!important;border-radius:14px!important;background:var(--cinema-ink)!important;color:#fff!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 14px 30px rgba(21,19,30,.16)!important;transition:transform .2s ease,box-shadow .2s ease!important}
body.cinematic-home .home-cta:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(21,19,30,.22)!important}
body.cinematic-home .text-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:800;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
body.cinematic-home .text-link.light{color:#fff}

/* SECTION 01 — Hero / uncertainty */
body.cinematic-home .home-hero{position:relative;display:block!important;height:185svh!important;min-height:0!important;padding:0!important;background:var(--cinema-paper)!important;overflow:visible!important}
body.cinematic-home .hero-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate}
body.cinematic-home .hero-aurora{position:absolute;z-index:-1;top:-32vw;right:-18vw;width:74vw;height:74vw;border-radius:50%;background:radial-gradient(circle at 45% 48%,rgba(156,85,231,.27),rgba(60,111,245,.1) 38%,transparent 68%);filter:blur(4px);transform:translate3d(calc(var(--hero-progress,0)*-7vw),calc(var(--hero-progress,0)*8vw),0) scale(calc(1 + var(--hero-progress,0)*.18));will-change:transform}
body.cinematic-home .hero-copy{position:absolute;z-index:5;top:50%;left:max(7vw,42px);width:min(860px,54vw);transform:translateY(-48%)}
body.cinematic-home .hero-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 30px!important;color:rgba(255,255,255,.72)!important;font-size:10px!important;font-weight:850!important;letter-spacing:.14em!important;text-transform:uppercase}
body.cinematic-home .hero-eyebrow span{width:30px;height:1px;background:var(--cinema-purple)}
body.cinematic-home .hero-copy h1{max-width:860px;margin:0!important;color:#f9f7ff!important;font-size:clamp(58px,6.4vw,104px)!important;font-weight:650!important;line-height:.88!important;letter-spacing:-.07em!important;text-shadow:0 8px 30px rgba(0,0,0,.16)}
body.cinematic-home .hero-copy h1 em{display:inline-block;color:var(--cinema-purple);font-size:.9em;letter-spacing:-.055em}
body.cinematic-home .hero-intro{max-width:500px;margin:28px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:clamp(15px,1.25vw,18px)!important;line-height:1.62!important}
body.cinematic-home .hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}
body.cinematic-home .hero-actions .home-cta{background:#8e80ff!important;color:#15131e!important}
body.cinematic-home .hero-actions .text-link{color:#fff}
body.cinematic-home .exam-window{position:absolute;z-index:2;top:50%;right:-11vw;width:min(720px,52vw);height:min(510px,62vh);overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:30px;background:rgba(255,255,255,.66);box-shadow:var(--cinema-shadow);transform:translate3d(calc(var(--hero-progress,0)*-12vw),calc(-45% + var(--hero-progress,0)*-2vh),0) rotate(calc(4deg - var(--hero-progress,0)*4deg));backdrop-filter:blur(18px);will-change:transform}
body.cinematic-home .window-bar{display:flex;align-items:center;gap:7px;height:54px;padding:0 18px;border-bottom:1px solid var(--cinema-line);color:#716d78}
body.cinematic-home .window-bar>span{width:8px;height:8px;border-radius:50%;background:#d4d0d7}
body.cinematic-home .window-bar small{margin-left:12px;font-size:10px;font-weight:700}
body.cinematic-home .window-bar b{margin-left:auto;color:#24212d;font-size:10px;letter-spacing:.06em}
body.cinematic-home .exam-layout{display:grid;grid-template-columns:1.05fr .95fr;height:calc(100% - 54px)}
body.cinematic-home .exam-passage{padding:48px 34px;background:#f8f7f4}
body.cinematic-home .exam-passage i{display:block;width:100%;height:8px;margin-bottom:16px;border-radius:5px;background:#d9d7d2}
body.cinematic-home .exam-passage i:nth-child(2),body.cinematic-home .exam-passage i:nth-child(5){width:87%}
body.cinematic-home .exam-passage i:nth-child(4){width:93%}
body.cinematic-home .exam-question{padding:46px 34px;background:#fff}
body.cinematic-home .exam-question small{color:#8b8790;font-size:10px}
body.cinematic-home .exam-question strong{display:block;margin:18px 0 28px;font-family:Georgia,serif;font-size:22px;line-height:1.3}
body.cinematic-home .exam-question>span{display:block;height:38px;margin:9px 0;border:1px solid #dedbe2;border-radius:9px}
body.cinematic-home .doubt{position:absolute;z-index:8;padding:11px 15px;border:1px solid rgba(255,255,255,.8);border-radius:13px;background:rgba(255,255,255,.74);color:#696371;font-family:Georgia,serif;font-size:15px;line-height:1.25;box-shadow:0 12px 40px rgba(46,35,83,.1);backdrop-filter:blur(14px);will-change:transform,opacity}
body.cinematic-home .doubt-one{top:22%;right:32%;transform:translate3d(calc(var(--hero-progress,0)*-18vw),calc(var(--hero-progress,0)*-30vh),0) rotate(-5deg);opacity:calc(1 - var(--hero-progress,0)*1.7)}
body.cinematic-home .doubt-two{top:61%;right:44%;transform:translate3d(calc(var(--hero-progress,0)*-8vw),calc(var(--hero-progress,0)*28vh),0) rotate(4deg);opacity:calc(1 - var(--hero-progress,0)*1.55)}
body.cinematic-home .doubt-three{top:31%;right:5%;transform:translate3d(calc(var(--hero-progress,0)*22vw),calc(var(--hero-progress,0)*-24vh),0) rotate(6deg);opacity:calc(1 - var(--hero-progress,0)*1.5)}
body.cinematic-home .doubt-four{top:76%;right:16%;transform:translate3d(calc(var(--hero-progress,0)*14vw),calc(var(--hero-progress,0)*30vh),0) rotate(-4deg);opacity:calc(1 - var(--hero-progress,0)*1.45)}
body.cinematic-home .hero-scroll-cue{position:absolute;right:36px;bottom:30px;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.62);font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;opacity:calc(1 - var(--hero-progress,0)*2)}
body.cinematic-home .hero-scroll-cue span{width:32px;height:1px;background:currentColor}

/* SECTION 02 — Connected practice workspace */
body.cinematic-home .practice-preview{position:relative;display:block!important;height:470svh!important;min-height:0!important;padding:0!important;background:linear-gradient(180deg,var(--cinema-paper) 0,#eceaf3 16%,#dfdde9 100%)!important;color:var(--cinema-ink)!important;overflow:visible!important}
body.cinematic-home .practice-sticky{position:sticky;top:0;width:100%;height:100svh;min-height:700px;overflow:hidden;padding:110px 5vw 48px}
body.cinematic-home .preview-heading{position:absolute;z-index:5;top:118px;left:max(5vw,36px);width:min(350px,26vw);margin:0!important;text-align:left!important}
body.cinematic-home .preview-heading h2{margin:0!important;color:var(--cinema-ink)!important;font-size:clamp(40px,4.1vw,66px)!important;line-height:.94!important;letter-spacing:-.055em!important}
body.cinematic-home .preview-heading h2 em{color:var(--cinema-purple)}
body.cinematic-home .preview-heading>span{display:block;margin-top:24px;color:#66616b!important;font-size:14px!important;line-height:1.65!important}
body.cinematic-home .preview-workbench{position:absolute!important;z-index:3!important;top:50%!important;right:5vw!important;width:min(900px,65vw)!important;height:min(650px,74vh)!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:26px!important;background:#f9f9f7!important;box-shadow:0 45px 120px rgba(45,36,80,.21)!important;transform:translate3d(calc((1 - var(--practice-local,0))*9vw),-46%,0) scale(calc(.94 + var(--practice-local,0)*.06));will-change:transform,opacity}
body.cinematic-home .workspace-topbar{display:flex;align-items:center;justify-content:center;height:52px;padding:0 18px;border-bottom:1px solid #e6e4e8;background:#fff;color:#85808b;font-size:10px}
body.cinematic-home .workspace-brand{position:absolute;left:18px;display:flex;align-items:center;gap:7px;color:#282532;font-weight:800}
body.cinematic-home .workspace-brand img{width:22px;height:22px;object-fit:contain}
body.cinematic-home .workspace-save{position:absolute;right:18px;display:flex;align-items:center;gap:7px}
body.cinematic-home .workspace-save i{width:6px;height:6px;border-radius:50%;background:#3fbb8d;box-shadow:0 0 0 4px rgba(63,187,141,.12)}
body.cinematic-home .workspace-body{display:grid;grid-template-columns:150px minmax(0,1fr);height:calc(100% - 96px)}
body.cinematic-home .preview-tabs{display:flex!important;flex-direction:column;gap:5px!important;margin:0!important;padding:18px 10px!important;border:0!important;border-right:1px solid #e5e3e8!important;border-radius:0!important;background:#f3f2ef!important}
body.cinematic-home .preview-tabs button{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;min-height:58px!important;padding:11px 13px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#77717d!important;text-align:left!important;box-shadow:none!important}
body.cinematic-home .preview-tabs button span{font-size:12px;font-weight:800}
body.cinematic-home .preview-tabs button small{font-size:8px;opacity:.65}
body.cinematic-home .preview-tabs button.active{background:#ebe7fc!important;color:var(--cinema-purple)!important}
body.cinematic-home .preview-stage{position:relative!important;min-height:0!important;padding:22px!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#fbfbfa!important;box-shadow:none!important;animation:none!important}
body.cinematic-home .preview-stage>*{animation:workspaceContentIn .45s ease both}
body.cinematic-home .preview-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;height:44px!important;margin:0!important;padding:0 18px!important;border:0!important;border-top:1px solid #e6e4e8!important;border-radius:0!important;background:#fff!important;color:#77717d!important;font-size:9px!important}
body.cinematic-home .preview-footer a{color:var(--cinema-purple)!important;font-weight:800!important;text-decoration:none!important}
body.cinematic-home .practice-caption{position:absolute;z-index:8;right:5vw;bottom:19px;display:grid;grid-template-columns:auto auto;column-gap:12px;align-items:end;width:min(900px,65vw);pointer-events:none}
body.cinematic-home .practice-caption span{grid-column:1/-1;color:#77717e;font-size:8px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
body.cinematic-home .practice-caption strong{font-family:Georgia,serif;font-size:28px;font-weight:400}
body.cinematic-home .practice-caption small{justify-self:end;color:#77717e;font-size:10px}

/* Re-skin the existing live practice content inside the connected workspace. */
body.cinematic-home .preview-stage .preview-passage,body.cinematic-home .preview-stage .preview-listen,body.cinematic-home .preview-stage .preview-task{border-color:#e5e2e8!important;border-radius:15px!important;background:#fff!important;box-shadow:none!important}
body.cinematic-home .preview-stage :is(.preview-passage,.preview-listen,.preview-task,.preview-passage p,.preview-task h3,.preview-support,.preview-email-points){color:var(--cinema-ink)!important}
body.cinematic-home .preview-stage .preview-options button{border-color:#e2dfe6!important;border-radius:10px!important;background:#faf9fb!important;color:#312d37!important}
body.cinematic-home .preview-stage .preview-options button.selected{border-color:var(--cinema-purple)!important;background:#f0edff!important}
body.cinematic-home .preview-stage .preview-check{border-radius:10px!important;background:var(--cinema-ink)!important;color:#fff!important}
body.cinematic-home .preview-stage textarea{border-radius:10px!important;background:#fff!important}

/* SECTION 03 — Feedback turning point */
body.cinematic-home .feedback-story{position:relative;height:330svh;background:var(--cinema-night);color:#f8f6ff}
body.cinematic-home .feedback-sticky{position:sticky;top:0;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(570px,1.22fr);align-items:center;gap:clamp(48px,7vw,120px);height:100svh;min-height:700px;padding:100px max(6vw,38px) 58px;overflow:hidden}
body.cinematic-home .feedback-sticky::before{content:"";position:absolute;inset:5% 20% auto auto;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(96,71,239,.23),transparent 68%);filter:blur(20px);pointer-events:none}
body.cinematic-home .feedback-copy{position:relative;z-index:2}
body.cinematic-home .feedback-copy h2{margin:0;color:#f8f6ff;font-size:clamp(45px,5.1vw,78px);line-height:.94;letter-spacing:-.06em}
body.cinematic-home .feedback-copy h2 em{color:#a998ff}
body.cinematic-home .feedback-copy>p:not(.scene-kicker){max-width:470px;margin:28px 0 0;color:#aaa6b5;font-size:15px;line-height:1.7}
body.cinematic-home .analysis-steps{display:flex;gap:24px;margin-top:34px;color:#5f5b69;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
body.cinematic-home .analysis-steps span{display:flex;align-items:center;gap:8px;transition:color .25s}
body.cinematic-home .analysis-steps span::before{content:"";width:6px;height:6px;border-radius:50%;border:1px solid currentColor}
body.cinematic-home .analysis-steps span.active{color:#a998ff}
body.cinematic-home .analysis-steps span.active::before{background:currentColor;box-shadow:0 0 0 5px rgba(169,152,255,.1)}
body.cinematic-home .feedback-console{position:relative;z-index:2;height:min(650px,76vh);perspective:1600px}
body.cinematic-home .response-card,body.cinematic-home .feedback-report{position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:#191922;box-shadow:0 35px 100px rgba(0,0,0,.35);will-change:transform,opacity}
body.cinematic-home .response-card{z-index:2;top:7%;left:0;width:62%;min-height:330px;padding:24px;transform:translate3d(calc(var(--feedback-progress,0)*-12vw),calc(var(--feedback-progress,0)*-8vh),0) rotateY(calc(var(--feedback-progress,0)*-9deg));opacity:calc(1 - var(--feedback-progress,0)*.72)}
body.cinematic-home .response-card header{display:flex;justify-content:space-between;color:#a6a1ae;font-size:10px}
body.cinematic-home .response-card header span{display:flex;align-items:center;gap:8px}
body.cinematic-home .response-card header i{width:7px;height:7px;border-radius:50%;background:#ff747f;box-shadow:0 0 0 5px rgba(255,116,127,.09)}
body.cinematic-home .response-wave{display:flex;align-items:center;gap:4px;height:120px;margin:25px 0}
body.cinematic-home .response-wave i{flex:1;height:var(--h);min-height:7px;border-radius:99px;background:linear-gradient(180deg,#8774ff,#4b36c9);transform:scaleY(calc(.42 + var(--feedback-progress,0)*.58));transform-origin:center}
body.cinematic-home .response-card p{margin:0;color:#cac6d1;font-family:Georgia,serif;font-size:17px;line-height:1.55}
body.cinematic-home .analysis-scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0,rgba(120,97,255,.15) 48%,rgba(167,146,255,.7) 50%,transparent 53%);transform:translateY(calc(-105% + var(--feedback-progress,0)*210%));opacity:calc(var(--feedback-progress,0)*2)}
body.cinematic-home .feedback-report{z-index:3;right:0;bottom:0;width:69%;min-height:500px;background:#f7f6f3;color:var(--cinema-ink);transform:translate3d(calc((1 - var(--feedback-report,0))*12vw),calc((1 - var(--feedback-report,0))*12vh),0) rotateY(calc((1 - var(--feedback-report,0))*-8deg));opacity:var(--feedback-report,0)}
body.cinematic-home .feedback-report>header{display:flex;align-items:center;justify-content:space-between;padding:24px 26px;border-bottom:1px solid #dfdde3}
body.cinematic-home .feedback-report header small{display:block;margin-bottom:4px;color:#837d89;font-size:9px;text-transform:uppercase;letter-spacing:.1em}
body.cinematic-home .feedback-report header strong{font-family:Georgia,serif;font-size:36px;font-weight:400}
body.cinematic-home .feedback-report header strong b{margin-left:3px;color:#8c8791;font-family:Inter,sans-serif;font-size:11px}
body.cinematic-home .feedback-ready{display:flex;align-items:center;gap:9px;color:#3d8e72;font-size:10px;font-weight:800}
body.cinematic-home .feedback-ready i{width:7px;height:7px;border-radius:50%;background:#56c69f;box-shadow:0 0 0 5px rgba(86,198,159,.13)}
body.cinematic-home .feedback-metrics{display:grid;grid-template-columns:repeat(3,1fr)}
body.cinematic-home .feedback-metrics article{padding:22px 20px;border-right:1px solid #e1dfe4;opacity:.32;transform:translateY(18px);transition:opacity .28s,transform .28s,background .28s}
body.cinematic-home .feedback-metrics article:last-child{border-right:0}
body.cinematic-home .feedback-metrics article.revealed{opacity:1;transform:none}
body.cinematic-home .feedback-metrics article.highlighted{background:#eeebff}
body.cinematic-home .feedback-metrics article div span{display:block;color:#817c87;font-size:9px}
body.cinematic-home .feedback-metrics article div strong{display:block;margin-top:8px;font-size:13px}
body.cinematic-home .feedback-metrics article p{min-height:58px;margin:14px 0;color:#66616c;font-size:10px;line-height:1.5}
body.cinematic-home .feedback-metrics article>b{display:block;height:4px;overflow:hidden;border-radius:99px;background:#dfdce5}
body.cinematic-home .feedback-metrics article>b i{display:block;width:var(--value);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cinema-blue),var(--cinema-violet));transform:scaleX(0);transform-origin:left;transition:transform .6s ease}
body.cinematic-home .feedback-metrics article.revealed>b i{transform:scaleX(1)}
body.cinematic-home .next-step-card{margin:4px 22px 22px;padding:20px 22px;border-radius:15px;background:var(--cinema-ink);color:#fff;opacity:.2;transform:translateY(20px);transition:opacity .3s,transform .3s}
body.cinematic-home .next-step-card.revealed{opacity:1;transform:none}
body.cinematic-home .next-step-card span{color:#a998ff;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
body.cinematic-home .next-step-card p{margin:9px 0 14px;font-family:Georgia,serif;font-size:16px;line-height:1.45}
body.cinematic-home .next-step-card a{font-size:10px;font-weight:800;text-decoration:none}

/* SECTION 04 — Progress */
body.cinematic-home .progress-story{position:relative;height:240svh;background:#f2f0eb;color:var(--cinema-ink)}
body.cinematic-home .progress-sticky{position:sticky;top:0;display:grid;grid-template-columns:minmax(290px,.72fr) minmax(600px,1.28fr);align-items:center;gap:7vw;height:100svh;min-height:690px;padding:105px max(6vw,38px) 50px;overflow:hidden}
body.cinematic-home .progress-copy h2{margin:0;font-size:clamp(48px,5.2vw,80px);line-height:.92;letter-spacing:-.065em}
body.cinematic-home .progress-copy h2 em{color:var(--cinema-purple)}
body.cinematic-home .progress-copy>p:not(.scene-kicker){max-width:430px;margin-top:26px;color:#68636d;font-size:15px;line-height:1.7}
body.cinematic-home .progress-visual{position:relative;height:520px}
body.cinematic-home .progress-grid{position:absolute;inset:50px 0 60px;display:grid;grid-template-rows:repeat(4,1fr)}
body.cinematic-home .progress-grid span{border-top:1px solid #dcd8df}
body.cinematic-home .progress-visual svg{position:absolute;inset:80px 2% auto;width:96%;overflow:visible}
body.cinematic-home .progress-path-ghost{fill:none;stroke:#d7d3df;stroke-width:3;stroke-linecap:round}
body.cinematic-home .progress-path{fill:none;stroke:url(#none);stroke:var(--cinema-purple);stroke-width:4;stroke-linecap:round;stroke-dasharray:1000;stroke-dashoffset:calc(1000 - var(--progress-story,0)*1000);filter:drop-shadow(0 8px 12px rgba(96,71,239,.25))}
body.cinematic-home .attempt{position:absolute;display:grid;grid-template-columns:auto auto;gap:1px 9px;align-items:center;opacity:0;transform:translateY(14px);transition:opacity .25s,transform .25s}
body.cinematic-home .attempt.visible{opacity:1;transform:none}
body.cinematic-home .attempt i{grid-row:1/3;width:13px;height:13px;border:3px solid #f2f0eb;border-radius:50%;background:var(--cinema-purple);box-shadow:0 0 0 1px var(--cinema-purple)}
body.cinematic-home .attempt span{color:#7e7883;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
body.cinematic-home .attempt strong{font-family:Georgia,serif;font-size:28px;font-weight:400}
body.cinematic-home .attempt-one{left:3%;bottom:77px}.attempt-two{left:32%;bottom:134px}.attempt-three{left:59%;bottom:214px}.attempt-four{right:0;top:55px}
body.cinematic-home .confidence-label{position:absolute;right:0;bottom:12px;padding:15px 20px;border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(40,34,55,.09)}
body.cinematic-home .confidence-label span{display:block;color:#88828d;font-size:9px;text-transform:uppercase;letter-spacing:.1em}
body.cinematic-home .confidence-label strong{display:block;margin-top:4px;font-family:Georgia,serif;font-size:28px;font-weight:400;color:var(--cinema-purple)}

/* SECTION 05 — Ursula Speak */
body.cinematic-home .speak-story{position:relative;height:230svh;background:#171720;color:#f8f6ff}
body.cinematic-home .speak-sticky{position:sticky;top:0;display:grid;grid-template-columns:minmax(310px,.8fr) minmax(540px,1.2fr);align-items:center;gap:8vw;height:100svh;min-height:700px;padding:105px max(6vw,38px) 55px;overflow:hidden}
body.cinematic-home .speak-sticky::before{content:"";position:absolute;inset:15% auto auto 45%;width:56vw;height:56vw;border-radius:50%;background:radial-gradient(circle,rgba(96,71,239,.28),transparent 66%);filter:blur(25px)}
body.cinematic-home .speak-copy{position:relative;z-index:2}
body.cinematic-home .speak-copy h2{margin:0;font-size:clamp(45px,5vw,76px);line-height:.94;letter-spacing:-.06em}
body.cinematic-home .speak-copy h2 em{color:#a998ff}
body.cinematic-home .speak-copy>p:not(.scene-kicker){max-width:460px;margin:26px 0;color:#aaa6b3;font-size:15px;line-height:1.7}
body.cinematic-home .speak-device{position:relative;z-index:2;min-height:580px;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:34px;background:rgba(27,26,38,.76);box-shadow:0 50px 130px rgba(0,0,0,.38);transform:translateY(calc((1 - var(--speak-progress,0))*8vh)) scale(calc(.95 + var(--speak-progress,0)*.05));backdrop-filter:blur(20px)}
body.cinematic-home .speak-device>header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.09);font-size:11px;font-weight:800}
body.cinematic-home .speak-device>header span{display:flex;align-items:center;gap:9px}
body.cinematic-home .speak-device>header img{width:26px;height:26px;object-fit:contain}
body.cinematic-home .speak-device>header small{display:flex;align-items:center;gap:7px;color:#9d98a8;font-size:9px}
body.cinematic-home .speak-device>header small i{width:6px;height:6px;border-radius:50%;background:var(--cinema-mint);box-shadow:0 0 0 5px rgba(121,224,193,.1)}
body.cinematic-home .topic-cloud{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:34px 35px 10px}
body.cinematic-home .topic-cloud button{padding:10px 15px;border:1px solid rgba(255,255,255,.11);border-radius:99px;background:rgba(255,255,255,.04);color:#9c97a8;font-size:10px;transform:translateY(calc((1 - var(--speak-progress,0))*20px));opacity:calc(.25 + var(--speak-progress,0)*.75);transition:border-color .2s,background .2s,color .2s}
body.cinematic-home .topic-cloud button.selected{border-color:#8876ff;background:#6550e8;color:#fff;box-shadow:0 10px 30px rgba(96,71,239,.32)}
body.cinematic-home .conversation{padding:25px 38px}
body.cinematic-home .speech{margin-bottom:24px}
body.cinematic-home .speech-ursula{display:flex;align-items:flex-start;gap:12px;transform:translateX(calc((1 - var(--speak-conversation,0))*50px));opacity:var(--speak-conversation,0)}
body.cinematic-home .speech-ursula>span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,var(--cinema-blue),var(--cinema-violet));font-size:11px;font-weight:900}
body.cinematic-home .speech-ursula p{max-width:390px;margin:0;padding:15px 18px;border-radius:4px 16px 16px 16px;background:#f5f3fb;color:#24202d;font-family:Georgia,serif;font-size:17px;line-height:1.5}
body.cinematic-home .speech-student{width:68%;margin-left:auto;padding:17px 20px;border-radius:16px 4px 16px 16px;background:#272634;transform:translateX(calc((1 - var(--speak-conversation,0))*-50px));opacity:var(--speak-conversation,0)}
body.cinematic-home .mini-wave{display:flex;align-items:center;gap:4px;height:48px}
body.cinematic-home .mini-wave i{flex:1;height:var(--h);border-radius:99px;background:#a998ff;animation:speakWave .75s ease-in-out infinite alternate;animation-delay:calc(var(--h)*-8ms)}
body.cinematic-home .speech-student small{display:block;margin-top:7px;color:#8e8998;font-size:8px;text-align:right}
body.cinematic-home .speak-control{position:absolute;bottom:22px;left:50%;display:grid;place-items:center;width:54px;height:54px;border:0;border-radius:50%;background:#fff;color:#1d1a24;transform:translateX(-50%);box-shadow:0 10px 30px rgba(0,0,0,.3)}
body.cinematic-home .speak-control svg{width:21px}

/* SECTION 06 — Return / confidence */
body.cinematic-home .return-story{position:relative;height:185svh;background:#ecebe6;color:var(--cinema-ink)}
body.cinematic-home .return-sticky{position:sticky;top:0;height:100svh;min-height:700px;overflow:hidden;padding:110px max(6vw,38px) 55px}
body.cinematic-home .return-halo{position:absolute;right:-10vw;bottom:-24vw;width:74vw;height:74vw;border-radius:50%;background:radial-gradient(circle,rgba(121,224,193,.25),rgba(60,111,245,.08) 42%,transparent 70%);transform:scale(calc(.7 + var(--return-progress,0)*.3))}
body.cinematic-home .return-copy{position:absolute;z-index:3;top:50%;left:max(7vw,44px);width:min(520px,39vw);transform:translateY(-50%)}
body.cinematic-home .return-copy h2{margin:0;font-size:clamp(60px,7vw,108px);line-height:.88;letter-spacing:-.07em}
body.cinematic-home .return-copy h2 em{color:var(--cinema-purple)}
body.cinematic-home .return-copy>p:not(.scene-kicker){max-width:420px;margin:27px 0;color:#66616b;font-size:15px;line-height:1.7}
body.cinematic-home .calm-exam{position:absolute;z-index:2;top:50%;right:-4vw;width:min(760px,57vw);height:min(520px,64vh);overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:30px;background:rgba(255,255,255,.76);box-shadow:0 45px 120px rgba(35,32,48,.14);transform:translate3d(calc((1 - var(--return-progress,0))*14vw),-45%,0) rotate(calc((1 - var(--return-progress,0))*3deg));backdrop-filter:blur(18px)}
body.cinematic-home .calm-exam-body{display:grid;grid-template-columns:1fr .7fr;height:calc(100% - 54px);align-items:center;padding:50px}
body.cinematic-home .calm-exam-body small{color:#8e8993;font-size:10px}
body.cinematic-home .calm-exam-body strong{display:block;margin:18px 0 44px;font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:1.25}
body.cinematic-home .calm-exam-body p{margin:0 0 5px;color:#8c8791;font-size:9px;text-transform:uppercase;letter-spacing:.1em}
body.cinematic-home .calm-exam-body b{font-family:Georgia,serif;font-size:28px;font-weight:400;color:var(--cinema-purple)}
body.cinematic-home .calm-ring{justify-self:end;display:grid;place-items:center;width:180px;height:180px;border:1px solid #dcd8e0;border-radius:50%;background:radial-gradient(circle,#fff 54%,transparent 56%),conic-gradient(var(--cinema-mint) calc(var(--return-progress,0)*360deg),#e3e0e5 0);box-shadow:0 20px 60px rgba(51,45,70,.1)}
body.cinematic-home .calm-ring span{font-family:Georgia,serif;font-size:22px}

/* SECTION 07 — Final public CTA */
body.cinematic-home .home-final-cta{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-height:95svh!important;padding:120px 24px 90px!important;overflow:hidden;background:var(--cinema-purple)!important;color:#fff!important;text-align:center!important}
body.cinematic-home .home-final-cta::before{content:"";position:absolute;inset:-40% -10% auto;height:90%;background:radial-gradient(ellipse,rgba(255,255,255,.2),transparent 66%)}
body.cinematic-home .home-final-cta .scene-kicker{position:relative;color:#d8d0ff!important}
body.cinematic-home .home-final-cta h2{position:relative;margin:0!important;color:#fff!important;font-size:clamp(68px,9vw,140px)!important;line-height:.8!important;letter-spacing:-.075em!important}
body.cinematic-home .home-final-cta h2 em{color:#d9d1ff}
body.cinematic-home .home-final-cta>p:not(.scene-kicker){position:relative;max-width:500px;margin:28px 0 0!important;color:#e3ddff!important;font-size:16px!important;line-height:1.6!important}
body.cinematic-home .final-actions{position:relative;display:flex;align-items:center;gap:28px;margin-top:35px}
body.cinematic-home .light-cta{background:#fff!important;color:var(--cinema-ink)!important;box-shadow:0 18px 40px rgba(36,22,91,.25)!important}
body.cinematic-home .home-final-cta>small{position:relative;margin-top:16px;color:#c9c0f4;font-size:9px}
body.cinematic-home .final-product-echo{position:absolute;inset:auto 12% -14%;height:42%;border:1px solid rgba(255,255,255,.13);border-radius:36px 36px 0 0;background:rgba(255,255,255,.045);transform:perspective(900px) rotateX(58deg);transform-origin:bottom}
body.cinematic-home .final-product-echo span{display:block;width:45%;height:12px;margin:28px;border-radius:99px;background:rgba(255,255,255,.07)}
body.cinematic-home .final-product-echo span:nth-child(2){width:72%}body.cinematic-home .final-product-echo span:nth-child(3){width:58%}
body.cinematic-home .home-footer{display:grid!important;grid-template-columns:auto 1fr auto auto!important;align-items:center!important;gap:34px!important;padding:32px max(5vw,28px)!important;border:0!important;background:#121119!important;color:#8f8998!important}
body.cinematic-home .home-footer .home-brand{width:105px}
body.cinematic-home .home-footer .home-brand img{filter:brightness(0) invert(1)}
body.cinematic-home .home-footer p,body.cinematic-home .home-footer span{margin:0!important;font-size:10px!important}
body.cinematic-home .home-footer nav{display:flex;gap:20px}
body.cinematic-home .home-footer nav a{font-size:10px;text-decoration:none}

@keyframes workspaceContentIn{from{opacity:0;transform:translateY(12px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes speakWave{to{transform:scaleY(.45);opacity:.6}}

@media(min-width:981px){
  body.cinematic-home .hero-copy h1>span,body.cinematic-home .hero-copy h1>em{white-space:nowrap}
}

/* Mobile and constrained layouts become readable static scenes. */
@media(max-width:980px){
  body.cinematic-home .home-nav{top:10px;grid-template-columns:auto 1fr;width:calc(100% - 20px);min-height:58px;padding-left:13px}
  body.cinematic-home .home-links{display:none}
  body.cinematic-home .home-brand{width:96px}
  body.cinematic-home .home-account{justify-content:flex-end}
  body.cinematic-home .nav-account.pro{display:none!important}
  body.cinematic-home .nav-account.signup{padding-inline:13px!important}
  body.cinematic-home .home-hero,body.cinematic-home .practice-preview,body.cinematic-home .feedback-story,body.cinematic-home .progress-story,body.cinematic-home .speak-story,body.cinematic-home .return-story{height:auto!important;min-height:0!important}
  body.cinematic-home .hero-sticky,body.cinematic-home .practice-sticky,body.cinematic-home .feedback-sticky,body.cinematic-home .progress-sticky,body.cinematic-home .speak-sticky,body.cinematic-home .return-sticky{position:relative;top:auto;height:auto;min-height:0;overflow:hidden}
  body.cinematic-home .hero-sticky{display:flex;flex-direction:column;min-height:920px;padding:140px 22px 70px}
  body.cinematic-home .hero-copy{position:relative;top:auto;left:auto;width:100%;transform:none}
  body.cinematic-home .hero-copy h1{font-size:clamp(57px,15vw,82px)!important}
  body.cinematic-home .hero-intro{font-size:15px!important}
  body.cinematic-home .exam-window{position:relative;top:auto;right:auto;width:115%;height:360px;margin:85px -28% 0 auto;transform:rotate(2deg)}
  body.cinematic-home .exam-passage{padding:28px 20px}body.cinematic-home .exam-question{padding:28px 20px}body.cinematic-home .exam-question strong{font-size:17px}
  body.cinematic-home .doubt{font-size:12px}.doubt-one{top:50%!important;right:8%!important}.doubt-two{top:66%!important;right:auto!important;left:4%!important}.doubt-three,.doubt-four{display:none}
  body.cinematic-home .hero-scroll-cue{display:none}
  body.cinematic-home .practice-sticky{display:flex;flex-direction:column;padding:105px 20px 76px}
  body.cinematic-home .preview-heading{position:relative;top:auto;left:auto;width:100%;margin-bottom:34px!important}
  body.cinematic-home .preview-heading h2{font-size:clamp(48px,13vw,68px)!important}
  body.cinematic-home .preview-workbench{position:relative!important;top:auto!important;right:auto!important;width:100%!important;height:auto!important;min-height:590px!important;transform:none!important}
  body.cinematic-home .workspace-body{grid-template-columns:1fr;height:auto}
  body.cinematic-home .preview-tabs{flex-direction:row!important;overflow-x:auto!important;border-right:0!important;border-bottom:1px solid #e5e3e8!important}
  body.cinematic-home .preview-tabs button{min-width:100px!important;min-height:52px!important}
  body.cinematic-home .preview-stage{min-height:470px!important;overflow:visible!important}
  body.cinematic-home .practice-caption{display:none}
  body.cinematic-home .feedback-sticky,body.cinematic-home .progress-sticky,body.cinematic-home .speak-sticky{display:grid;grid-template-columns:1fr;gap:44px;padding:105px 20px 70px}
  body.cinematic-home .feedback-copy h2,body.cinematic-home .progress-copy h2,body.cinematic-home .speak-copy h2{font-size:clamp(46px,12.5vw,67px)}
  body.cinematic-home .feedback-console{height:760px}
  body.cinematic-home .response-card{width:92%;transform:none;opacity:1}
  body.cinematic-home .feedback-report{width:92%;transform:none;opacity:1}
  body.cinematic-home .feedback-metrics article{opacity:1;transform:none}
  body.cinematic-home .feedback-metrics article>b i{transform:scaleX(1)}
  body.cinematic-home .next-step-card{opacity:1;transform:none}
  body.cinematic-home .progress-visual{height:450px;min-width:690px;transform:scale(.75);transform-origin:left top}
  body.cinematic-home .progress-sticky{overflow-x:hidden}
  body.cinematic-home .speak-device{min-height:560px;transform:none}
  body.cinematic-home .speech-ursula,body.cinematic-home .speech-student{transform:none;opacity:1}
  body.cinematic-home .return-sticky{min-height:900px;padding:105px 20px 70px}
  body.cinematic-home .return-copy{position:relative;top:auto;left:auto;width:100%;transform:none}
  body.cinematic-home .return-copy h2{font-size:clamp(58px,15vw,82px)}
  body.cinematic-home .calm-exam{position:relative;top:auto;right:auto;width:120%;height:410px;margin:70px -28% 0 auto;transform:rotate(-2deg)}
  body.cinematic-home .calm-exam-body{padding:30px}.calm-ring{width:130px!important;height:130px!important}
  body.cinematic-home .home-footer{grid-template-columns:1fr auto!important}.home-footer p{display:none}.home-footer nav{grid-column:1/-1;grid-row:2}
}

@media(max-width:620px){
  body.cinematic-home .home-profile-wrap{display:none}
  body.cinematic-home .nav-account{min-height:38px;padding-inline:10px!important}
  body.cinematic-home .hero-actions{align-items:flex-start;flex-direction:column;gap:20px}
  body.cinematic-home .window-bar b,body.cinematic-home .workspace-save{display:none}
  body.cinematic-home .exam-layout{grid-template-columns:1fr}.exam-passage{display:none}
  body.cinematic-home .preview-workbench{border-radius:20px!important}
  body.cinematic-home .workspace-topbar{justify-content:flex-end;padding-right:16px}
  body.cinematic-home .workspace-brand{left:12px}
  body.cinematic-home .preview-stage{padding:12px!important}
  body.cinematic-home .feedback-console{height:890px}
  body.cinematic-home .response-card{width:96%;min-height:305px;padding:18px}
  body.cinematic-home .feedback-report{right:auto;left:4%;width:96%}
  body.cinematic-home .feedback-metrics{grid-template-columns:1fr}
  body.cinematic-home .feedback-metrics article{border-right:0;border-bottom:1px solid #e1dfe4;padding:14px 17px}
  body.cinematic-home .feedback-metrics article p{min-height:0;margin:7px 0 10px}
  body.cinematic-home .analysis-steps{gap:12px}
  body.cinematic-home .progress-visual{transform:scale(.59)}
  body.cinematic-home .topic-cloud{padding-inline:14px}.conversation{padding-inline:16px!important}.speech-student{width:84%!important}
  body.cinematic-home .calm-exam-body{grid-template-columns:1fr}.calm-ring{display:none!important}
  body.cinematic-home .home-final-cta h2{font-size:clamp(62px,19vw,92px)!important}
  body.cinematic-home .final-actions{flex-direction:column;gap:20px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body.cinematic-home *,body.cinematic-home *::before,body.cinematic-home *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  body.cinematic-home .home-hero,body.cinematic-home .practice-preview,body.cinematic-home .feedback-story,body.cinematic-home .progress-story,body.cinematic-home .speak-story,body.cinematic-home .return-story{height:auto!important}
  body.cinematic-home .hero-sticky,body.cinematic-home .practice-sticky,body.cinematic-home .feedback-sticky,body.cinematic-home .progress-sticky,body.cinematic-home .speak-sticky,body.cinematic-home .return-sticky{position:relative;top:auto}
  body.cinematic-home .doubt{opacity:.5!important;transform:none!important}
  body.cinematic-home .exam-window,body.cinematic-home .preview-workbench,body.cinematic-home .response-card,body.cinematic-home .feedback-report,body.cinematic-home .speak-device,body.cinematic-home .calm-exam{transform:none!important;opacity:1!important}
  body.cinematic-home .feedback-metrics article,body.cinematic-home .next-step-card,body.cinematic-home .attempt,body.cinematic-home .speech{opacity:1!important;transform:none!important}
  body.cinematic-home .feedback-metrics article>b i{transform:scaleX(1)!important}
}

/* Focused hero and four-stop practice tour. */
body.cinematic-home .home-brand{width:142px;height:46px}
body.cinematic-home .hero-copy{top:43%;transform:translateY(-48%)}
body.cinematic-home .hero-copy h1{line-height:1!important}
body.cinematic-home .hero-word{display:inline-block;animation:wordWarmth 6s ease-in-out infinite;animation-delay:calc(var(--word)*1.2s);color:inherit}
@keyframes wordWarmth{0%,22%,100%{color:inherit;text-shadow:0 0 0 transparent}8%,14%{color:#fff0bd;text-shadow:0 0 24px #ffe7a955,0 0 55px #ffe7a922}}
body.cinematic-home .practice-preview{height:580svh!important}
body.cinematic-home .practice-sticky{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr);grid-template-rows:auto 1fr;gap:20px 4vw;padding:112px 5vw 40px;min-height:0;height:100svh;overflow:visible}
body.cinematic-home .preview-heading{position:static;width:auto;grid-column:1;grid-row:1}
body.cinematic-home .preview-heading h2{font-size:clamp(34px,3.3vw,52px)!important}
body.cinematic-home .preview-heading>span{margin-top:16px;font-size:13px!important;max-width:310px}
.skill-wheel-area{position:relative;grid-column:1;grid-row:2;align-self:center;width:280px;height:280px;margin:0 auto 34px}
.skill-wheel{position:absolute;inset:24px;border:1px solid #6047ef30;border-radius:50%;transform:rotate(var(--rotation,0deg));transition:transform 750ms cubic-bezier(.22,.8,.25,1);background:radial-gradient(circle,#fff5 0,transparent 67%)}
.skill-wheel::before{content:"";position:absolute;inset:20px;border:1px dashed #6047ef20;border-radius:50%}
body.cinematic-home .wheel-stop{position:absolute;top:50%;left:50%;width:100px;height:38px;margin:-19px 0 0 -50px;border:1px solid #dad6e7;border-radius:30px;background:#f4f3ef;color:#716a7d;font-size:12px;transform:rotate(calc(var(--stop)*90deg)) translateY(-116px) rotate(calc(var(--stop)*-90deg - var(--rotation,0deg)));transition:transform 750ms cubic-bezier(.22,.8,.25,1),background .3s,color .3s;cursor:pointer}
body.cinematic-home .wheel-stop[aria-pressed="true"]{background:#6047ef;color:white;border-color:#6047ef;box-shadow:0 6px 24px #6047ef30}
.wheel-center{position:absolute;inset:85px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:#77717e}
.wheel-center small{font-size:9px;letter-spacing:.18em}.wheel-center strong{font:48px Georgia,serif;color:#6047ef}.wheel-center span{font-size:10px}
#wheelHint{position:absolute;top:100%;width:100%;text-align:center;font-size:11px;color:#77717e;margin:10px 0}
#resumeTour{position:absolute;top:calc(100% + 32px);left:50%;transform:translateX(-50%);white-space:nowrap;border:0;border-bottom:1px solid #6047ef;background:transparent;color:#6047ef;padding:4px;font-size:11px;cursor:pointer}
body.cinematic-home .preview-workbench{position:relative!important;grid-column:2;grid-row:1/3;align-self:center;top:auto!important;right:auto!important;width:100%!important;height:min(650px,calc(100svh - 154px))!important;transform:none!important;box-shadow:0 24px 70px #2d24501c!important}
body.cinematic-home .workspace-body{grid-template-columns:1fr;height:calc(100% - 96px)}
body.cinematic-home .preview-tabs{display:none!important}
body.cinematic-home .preview-stage{overflow:auto!important;overscroll-behavior:contain;scrollbar-width:thin}
body.cinematic-home .preview-stage>*{animation:none!important}
body.cinematic-home .practice-caption{display:none}
.reading-evidence{color:inherit;background:linear-gradient(90deg,#f6e5aa 50%,transparent 50%);background-size:200% 100%;animation:evidenceSweep 1.3s ease both}
@keyframes evidenceSweep{from{background-position:100% 0}to{background-position:0 0}}
body.cinematic-home .preview-wave i{animation:tourWave .65s ease-in-out 3 alternate;transform-origin:center}
body.cinematic-home .preview-wave i:nth-child(3n){animation-delay:.15s}body.cinematic-home .preview-wave i:nth-child(3n + 1){animation-delay:.3s}
@keyframes tourWave{from{transform:scaleY(.45)}to{transform:scaleY(1)}}
.typing-example{font:12px/1.8 monospace!important;white-space:nowrap;overflow:hidden;width:22ch;max-width:100%;border-right:1px solid #6047ef;animation:tourTyping 1.4s steps(22,end) both;color:#77717e!important;margin:8px 0!important}
@keyframes tourTyping{from{width:0}to{width:22ch}}
[data-skill="speaking"] [data-preview-record]{animation:recordMoment .8s ease-out 3}
@keyframes recordMoment{from{box-shadow:0 0 0 0 #6047ef35}to{box-shadow:0 0 0 12px #6047ef00}}
body.cinematic-home .wheel-stop:focus-visible,#resumeTour:focus-visible{outline:3px solid #b69dff;outline-offset:5px}
@media(max-width:980px){
 body.cinematic-home .home-brand{width:120px;height:42px}
 body.cinematic-home .hero-sticky{padding-top:112px}
 body.cinematic-home .hero-copy{top:auto;transform:none}
 body.cinematic-home .practice-preview{height:520svh!important}
 body.cinematic-home .practice-sticky{position:sticky;top:0;display:grid;grid-template-columns:190px minmax(0,1fr);grid-template-rows:auto 1fr;gap:16px;padding:90px 20px 20px;height:100svh;overflow:visible}
 body.cinematic-home .preview-heading{grid-column:1/-1;margin:0!important}
 body.cinematic-home .preview-heading h2{font-size:32px!important}
 body.cinematic-home .preview-heading h2 br{display:none}
 body.cinematic-home .preview-heading>span{display:none}
 .skill-wheel-area{width:190px;height:190px;grid-row:2}
 .skill-wheel{inset:22px}.wheel-center{inset:50px 30px}.wheel-center strong{font-size:32px}
 body.cinematic-home .wheel-stop{width:78px;font-size:10px;transform:rotate(calc(var(--stop)*90deg)) translateY(-73px) rotate(calc(var(--stop)*-90deg - var(--rotation,0deg)))}
 body.cinematic-home .preview-workbench{grid-column:2;grid-row:2;min-height:0!important;height:100%!important}
 body.cinematic-home .workspace-body{height:calc(100% - 96px)}
 body.cinematic-home .preview-stage{min-height:0!important;overflow:auto!important}
}
@media(max-width:620px){
 body.cinematic-home .practice-sticky{grid-template-columns:1fr;grid-template-rows:auto 134px minmax(0,1fr);gap:10px;padding:86px 14px 16px}
 body.cinematic-home .preview-heading h2{font-size:28px!important}
 .skill-wheel-area{grid-column:1;grid-row:2;width:250px;height:124px;margin:0 auto}
 .skill-wheel{inset:6px 68px}.wheel-center{inset:30px 75px}.wheel-center small{font-size:7px}.wheel-center strong{font-size:26px}.wheel-center span{font-size:8px}
 body.cinematic-home .wheel-stop{height:28px;margin-top:-14px;transform:rotate(calc(var(--stop)*90deg)) translateY(-54px) rotate(calc(var(--stop)*-90deg - var(--rotation,0deg)))}
 #wheelHint{display:none}#resumeTour{top:46px;left:auto;right:-48px;transform:none;white-space:normal;width:75px;font-size:10px;border:0;text-align:left}
 body.cinematic-home .preview-workbench{grid-column:1;grid-row:3;height:100%!important}
 body.cinematic-home .workspace-topbar{height:34px}
 body.cinematic-home .preview-footer{height:32px!important;font-size:8px!important;padding:0 10px!important}
 body.cinematic-home .preview-footer>span{max-width:45%}
 body.cinematic-home .workspace-body{height:calc(100% - 66px)}
 body.cinematic-home .preview-stage{padding:12px!important}
}
@media(prefers-reduced-motion:reduce){
 body.cinematic-home .hero-word{animation:none!important}
 body.cinematic-home .practice-preview{height:auto!important}
 body.cinematic-home .practice-sticky{position:relative;height:auto;min-height:760px}
 body.cinematic-home .preview-workbench{height:650px!important}
 .skill-wheel,body.cinematic-home .wheel-stop{transition:none}
 #wheelHint{font-size:0}#wheelHint::after{content:"Choose a skill to explore.";font-size:11px}
 #resumeTour{display:none}
}
/* Keep the shared entrance animation from overriding the hero's vertical alignment. */
body.cinematic-home .hero-copy{animation:none!important}
body.cinematic-home .preview-heading h2 em::before{content:" ";white-space:pre}
body.cinematic-home .preview-stage .preview-task{display:block!important;padding:22px!important}
body.cinematic-home .preview-stage .preview-passage,body.cinematic-home .preview-stage .preview-listen{padding:22px!important}
body.cinematic-home .preview-stage textarea{min-height:110px!important;color:#312d37!important}
body.cinematic-home .preview-stage .typing-example{animation:tourTyping 1.4s steps(22,end) both!important}
@media(max-width:620px){body.cinematic-home .preview-stage .preview-task,body.cinematic-home .preview-stage .preview-passage,body.cinematic-home .preview-stage .preview-listen{padding:14px!important}}
@media(max-width:980px){
 body.cinematic-home .preview-stage{display:block!important}
 body.cinematic-home .preview-stage .preview-passage,body.cinematic-home .preview-stage .preview-listen,body.cinematic-home .preview-stage .preview-task{min-height:0!important;height:auto!important;overflow:visible!important}
 body.cinematic-home .preview-stage .preview-passage p{font-size:14px!important;line-height:1.55!important;margin:12px 0 0!important}
 body.cinematic-home .preview-stage .preview-task h3{font-size:22px!important;line-height:1.15!important;margin:10px 0 16px!important}
 body.cinematic-home .preview-stage .preview-options button{min-height:38px!important;padding:9px 12px!important;font-size:12px!important}
 body.cinematic-home .preview-stage .preview-email-points,body.cinematic-home .preview-stage .preview-support{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){body.cinematic-home .preview-stage .typing-example{animation:none!important}body.cinematic-home .preview-stage .preview-wave i,body.cinematic-home [data-preview-record],body.cinematic-home .reading-evidence{animation:none!important}}
@media(max-width:980px){body.cinematic-home .wheel-stop{margin-left:-39px}}
/* Topic choices reveal their question immediately and remain independent of scrolling. */
body.cinematic-home .speak-story.topic-selected .speech-ursula{opacity:1!important;transform:none!important}
body.cinematic-home .speech-ursula p{min-height:84px}
body.cinematic-home .topic-cloud button:focus-visible{outline:2px solid #c7baff;outline-offset:4px}
/* Brighter letter sweep, clearer calls to action, and corrected story geometry. */
body.cinematic-home .hero-word{animation:none!important}
body.cinematic-home .hero-letter{animation:letterLight 5s ease-in-out infinite;animation-delay:calc(var(--letter)*.12s);color:inherit}
@keyframes letterLight{0%,18%,100%{color:inherit;text-shadow:none}5%,10%{color:#fff4b8;text-shadow:0 0 8px #fff1bccc,0 0 24px #ffda69aa,0 0 48px #ffd45c77}}
body.cinematic-home .home-nav .home-brand{width:180px!important;height:48px!important;flex-shrink:0}
body.cinematic-home .home-nav .home-brand img{width:180px!important;max-width:none!important;height:48px!important;object-fit:contain}
body.cinematic-home .nav-account.signup,body.cinematic-home .home-nav.on-dark .nav-account.signup,body.cinematic-home .home-final-cta .home-cta,body.cinematic-home .hero-actions .home-cta{background:#fff0ad!important;color:#231c32!important;border-color:#fff0ad!important;box-shadow:0 6px 24px #ffdf7526!important}
body.cinematic-home .nav-account.signup:hover,body.cinematic-home .home-final-cta .home-cta:hover{background:#fff8d7!important}
body.cinematic-home .home-final-cta .text-link{color:#fff!important}
body.cinematic-home .attempt{bottom:auto!important;right:auto!important;transform:none!important;padding-left:16px;transition:opacity .25s}
body.cinematic-home .attempt i{position:absolute;left:0;top:0;transform:translate(-50%,-50%);margin:0}
body.cinematic-home .attempt span{grid-column:1/-1;margin-top:10px}
body.cinematic-home .attempt strong{grid-column:1/-1}
body.cinematic-home .progress-visual svg{height:auto;aspect-ratio:900/370}
body.cinematic-home .preview-stage{border-top:3px solid #6047ef!important}
body.cinematic-home #previewStatus{color:#6047ef;font-weight:800}
body.cinematic-home .skill-wheel{transition-duration:950ms}
body.cinematic-home .wheel-stop{transition-duration:950ms}
@media(min-width:981px){
 body.cinematic-home .calm-exam{right:3vw;width:min(760px,52vw);transform:translate3d(calc((1 - var(--return-progress,0))*2vw),-45%,0)}
 body.cinematic-home .return-copy{width:39vw}
}
@media(max-width:980px){
 body.cinematic-home .home-nav .home-brand{width:145px!important;height:44px!important}
 body.cinematic-home .home-nav .home-brand img{width:145px!important;height:44px!important}
 body.cinematic-home .calm-exam{right:auto;width:100%;margin:60px 0 0;transform:none}
 body.cinematic-home .progress-visual{min-width:0;width:100%;height:auto;aspect-ratio:900/510;transform:none}
 body.cinematic-home .progress-visual svg{top:30px}
 body.cinematic-home .progress-sticky{grid-template-columns:minmax(0,1fr)}
 body.cinematic-home .attempt strong{font-size:20px}
 body.cinematic-home .attempt span{font-size:7px}
 body.cinematic-home .attempt-four{padding-left:0;transform:translateX(0)!important}
 body.cinematic-home .attempt-four span,body.cinematic-home .attempt-four strong{transform:translateX(-100%)}
 body.cinematic-home .confidence-label{bottom:-60px;padding:8px 12px}
 body.cinematic-home .progress-sticky{padding-bottom:125px}
}
@media(max-width:620px){
 body.cinematic-home .home-nav .home-brand{width:124px!important}
 body.cinematic-home .home-nav .home-brand img{width:124px!important}
 body.cinematic-home .attempt{padding-left:5px}
 body.cinematic-home .attempt i{width:9px;height:9px;border-width:2px}
}
@media(prefers-reduced-motion:reduce){body.cinematic-home .hero-letter{animation:none!important}body.cinematic-home .skill-wheel,body.cinematic-home .wheel-stop{transition:none!important}}

/* Winding study wheel: large concentric dial, scrubbed movement and long rests. */
body.cinematic-home .hero-letter{animation:pearlSweep 7s ease-in-out infinite;animation-delay:calc(var(--letter)*.055s)}
@keyframes pearlSweep{0%,45%,100%{color:inherit;text-shadow:none}17%,25%{color:#fffaf0;text-shadow:0 0 16px #f9f3e755,0 0 34px #efebff33}}
body.cinematic-home .practice-preview{height:650svh!important}
body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);column-gap:5vw;row-gap:18px;padding:108px 6vw 50px;align-items:center}
body.cinematic-home .preview-heading{grid-column:1/-1;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:24px}
body.cinematic-home .preview-heading .scene-kicker{display:none}
body.cinematic-home .preview-heading h2{font-size:clamp(32px,3.1vw,48px)!important}
body.cinematic-home .preview-heading h2 br{display:none}
body.cinematic-home .preview-heading>span{display:block;max-width:260px;margin:0;font-size:12px!important}
body.cinematic-home .skill-wheel-area{--wheel-size:min(39vw,49svh,500px);--wheel-radius:calc(var(--wheel-size)*.42);width:var(--wheel-size);height:var(--wheel-size);grid-column:1;grid-row:2;margin:0 auto 26px;align-self:center;isolation:isolate}
body.cinematic-home .skill-wheel-area::before{content:"";position:absolute;inset:5%;border-radius:50%;background:radial-gradient(circle,#f8f7fc 35%,#e6e1f5 69%,#f7f5fd 70%);box-shadow:0 24px 60px #44327614,inset 0 0 0 1px #6047ef1c}
body.cinematic-home .skill-wheel{inset:0;border:0;background:none;transition:none!important;transform:rotate(var(--rotation,0deg));will-change:transform;touch-action:pan-y}
body.cinematic-home .skill-wheel::before{inset:9%;border:0;background:repeating-conic-gradient(from 0deg,#74668b66 0deg 1deg,transparent 1deg 6deg);mask:radial-gradient(circle,transparent 65%,#000 66%,#000 70%,transparent 71%);transform:none}
body.cinematic-home .skill-wheel::after{content:"";position:absolute;inset:16%;border:12px solid transparent;border-top-color:#8b77dc;border-bottom-color:#b5a6ed;border-radius:50%;transform:rotate(35deg);pointer-events:none;box-shadow:inset 0 0 0 1px #6047ef18}
body.cinematic-home .wheel-stop{z-index:2;width:112px;height:42px;min-width:0;margin:-21px 0 0 -56px;font-size:12px;font-weight:650;background:#f7f5fb;border:1px solid #d9d2e7;color:#655b78;transform:rotate(calc(var(--stop)*90deg)) translateY(calc(-1*var(--wheel-radius))) rotate(calc(var(--stop)*-90deg - var(--rotation,0deg)));transition:background .3s,color .3s,box-shadow .3s!important}
body.cinematic-home .wheel-stop[aria-pressed="true"]{background:#6047ef;color:#fff;box-shadow:0 0 0 5px #6047ef12,0 7px 24px #6047ef26}
body.cinematic-home .wheel-center{inset:30%;gap:12px;z-index:3;color:#786e89}
body.cinematic-home .wheel-center small{font-size:8px;letter-spacing:.13em;white-space:nowrap}
body.cinematic-home .wheel-center strong{font:clamp(24px,3vw,42px)/1.1 Georgia,serif;color:#463477}
body.cinematic-home .wheel-center span{font-size:11px;letter-spacing:.14em}
body.cinematic-home .wheel-center b{font-weight:500;color:#6047ef}
body.cinematic-home #wheelHint{display:block;top:100%;margin:8px 0;font-size:11px}
body.cinematic-home #resumeTour{top:calc(100% + 29px);left:50%;right:auto;width:auto;transform:translateX(-50%);white-space:nowrap;font-size:11px}
body.cinematic-home .preview-workbench{grid-column:2;grid-row:2;height:min(520px,calc(100svh - 235px))!important;width:100%!important;max-width:530px;justify-self:end;border-radius:20px!important;box-shadow:0 15px 40px #2d245012!important}
body.cinematic-home .preview-stage{display:block!important;transform:none!important}
body.cinematic-home .preview-stage .preview-passage,body.cinematic-home .preview-stage .preview-listen,body.cinematic-home .preview-stage .preview-task{min-height:0!important;height:auto!important;padding:16px!important;overflow:visible!important}
body.cinematic-home .preview-stage .preview-passage p{font-size:14px!important;line-height:1.5!important;margin:12px 0 0!important}
body.cinematic-home .preview-stage .preview-task h3{font-size:22px!important;line-height:1.2!important;margin:12px 0!important}
body.cinematic-home .preview-stage .preview-options button{font-size:12px!important;min-height:36px!important;padding:8px 12px!important}
body.cinematic-home .workspace-save{display:none}
body.cinematic-home .workspace-topbar{justify-content:flex-end}
@media(max-width:980px){
 body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:94px 24px 48px;gap:20px}
 body.cinematic-home .preview-heading h2{font-size:32px!important}
 body.cinematic-home .preview-heading>span{display:none}
 body.cinematic-home .skill-wheel-area{--wheel-size:min(40vw,42svh);--wheel-radius:calc(var(--wheel-size)*.40)}
 body.cinematic-home .wheel-stop{width:86px;height:38px;margin:-19px 0 0 -43px;font-size:11px}
 body.cinematic-home .wheel-center{gap:8px}
 body.cinematic-home .wheel-center strong{font-size:27px}
 body.cinematic-home .wheel-center small{font-size:6px}
 body.cinematic-home .preview-workbench{height:calc(100svh - 220px)!important}
}
@media(max-width:620px){
 body.cinematic-home .practice-preview{height:600svh!important}
 body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);padding:86px 16px 14px;gap:12px;height:100svh}
 body.cinematic-home .preview-heading h2{font-size:25px!important;line-height:1.05!important}
 body.cinematic-home .skill-wheel-area{--wheel-size:min(62vw,29svh);--wheel-radius:calc(var(--wheel-size)*.40);grid-row:2;margin:5px auto 16px}
 body.cinematic-home .skill-wheel::after{border-width:8px}
 body.cinematic-home .wheel-stop{width:78px;height:32px;margin:-16px 0 0 -39px;font-size:10px}
 body.cinematic-home .wheel-center strong{font-size:24px}
 body.cinematic-home .wheel-center small{display:none}
 body.cinematic-home .wheel-center span{font-size:9px}
 body.cinematic-home #wheelHint{display:none}
 body.cinematic-home #resumeTour{top:calc(100% + 2px);font-size:10px}
 body.cinematic-home .preview-workbench{grid-column:1;grid-row:3;height:100%!important;max-width:none;min-height:0!important;align-self:stretch}
}
@media(prefers-reduced-motion:reduce){
 body.cinematic-home .hero-letter{animation:none!important}
 body.cinematic-home .practice-preview{height:auto!important}
 body.cinematic-home .practice-sticky{position:relative;height:auto;min-height:0;grid-template-rows:auto auto}
 body.cinematic-home .preview-workbench{height:560px!important}
 body.cinematic-home .skill-wheel{transform:none!important;will-change:auto}
 body.cinematic-home #wheelHint{font-size:0}
 body.cinematic-home #resumeTour{display:none}
}

/* Full question previews and a shorter clockwise tour. */
body.cinematic-home .practice-preview{height:420svh!important}
body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:18px 3vw;padding:100px 4vw 25px}
body.cinematic-home .preview-workbench{max-width:none;height:calc(100svh - 195px)!important;max-height:760px}
body.cinematic-home .skill-wheel-area{--wheel-size:min(32vw,46svh,440px)}
body.cinematic-home .preview-stage{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:12px;padding:16px!important}
body.cinematic-home .preview-stage .preview-wave{height:100px;margin:16px 0}
body.cinematic-home .preview-stage .preview-task h3{font-size:21px!important}
body.cinematic-home .preview-stage .preview-email-points,body.cinematic-home .preview-stage .preview-support{font-size:13px!important;line-height:1.5!important}
body.cinematic-home .preview-stage textarea{min-height:90px!important;height:100px}
body.cinematic-home .preview-stage .preview-feedback{margin:8px 0 0!important;font-size:12px!important}
body.cinematic-home .nav-account.signup,body.cinematic-home .home-nav.on-dark .nav-account.signup,body.cinematic-home .home-final-cta .home-cta,body.cinematic-home .hero-actions .home-cta{background:#8e80ff!important;color:#15131e!important;border-color:#8e80ff!important;box-shadow:0 6px 24px #6047ef26!important}
body.cinematic-home .nav-account.signup:hover,body.cinematic-home .home-final-cta .home-cta:hover{background:#a89dff!important}
body.cinematic-home .nav-account.pro{background:#fff0ad!important;color:#231c32!important;border-color:#fff0ad!important}
body.cinematic-home .home-nav .home-brand{width:210px!important;height:54px!important}
body.cinematic-home .home-nav .home-brand img{width:210px!important;height:54px!important;transform:scale(1.12)}
@media(min-width:981px){body.cinematic-home .return-story{height:255svh}}
@media(max-width:980px){
 body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);padding:94px 20px 26px}
 body.cinematic-home .skill-wheel-area{--wheel-size:min(29vw,36svh)}
 body.cinematic-home .preview-stage{display:block!important}
 body.cinematic-home .preview-workbench{height:calc(100svh - 180px)!important}
 body.cinematic-home .home-nav .home-brand{width:160px!important;height:46px!important}
 body.cinematic-home .home-nav .home-brand img{width:160px!important;height:46px!important}
}
/* On small screens use normal page flow so complete questions never need an inner scrollbar. */
@media(max-width:620px),(max-height:650px){
 body.cinematic-home .practice-preview{height:auto!important}
 body.cinematic-home .practice-sticky{position:relative;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;height:auto;min-height:0;padding:92px 16px 40px}
 body.cinematic-home .skill-wheel-area{--wheel-size:min(60vw,260px);grid-column:1;grid-row:2;margin:8px auto 32px}
 body.cinematic-home .preview-workbench{grid-column:1;grid-row:3;height:auto!important;max-height:none;overflow:visible!important}
 body.cinematic-home .workspace-body{height:auto}
 body.cinematic-home .preview-stage{display:block!important;overflow:visible!important}
 body.cinematic-home .home-nav .home-brand{width:140px!important}
 body.cinematic-home .home-nav .home-brand img{width:140px!important}
}
@media(prefers-reduced-motion:reduce){body.cinematic-home .practice-preview,body.cinematic-home .return-story{height:auto!important}body.cinematic-home .preview-workbench{height:auto!important;max-height:none}body.cinematic-home .workspace-body{height:auto}body.cinematic-home .preview-stage{overflow:visible!important}}
/* Preserve centering of the enhanced two-theme logo inside its larger frame. */
body.cinematic-home .home-nav .home-brand .ursula-brand-logo{width:128%!important;height:128%!important;transform:translate(-50%,-50%)!important;object-fit:contain}

/* Spool composition: no workspace chrome, tab list, or entering sequence. */
body.cinematic-home .practice-preview{height:460svh!important;background:radial-gradient(ellipse at 28% 48%,#e4ddf8,transparent 55%),#f4f2f7!important}
body.cinematic-home .practice-sticky{position:sticky;top:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:100svh;min-height:0;padding:104px 5vw 38px;gap:20px 5vw}
body.cinematic-home .spool{--wheel-size:min(43vw,59svh,610px);--wheel-radius:calc(var(--wheel-size)*.44);margin:0 auto 26px;width:var(--wheel-size);height:var(--wheel-size);perspective:1000px}
body.cinematic-home .spool::before{inset:17%;background:radial-gradient(circle at 35% 25%,#fff,#e8e1f5);box-shadow:0 35px 70px #48326a24}
body.cinematic-home .spool .skill-wheel::before,body.cinematic-home .spool .skill-wheel::after{display:none}
.spool-rim{position:absolute;border-radius:50%;pointer-events:none}
.spool-outer{inset:6%;border:22px solid #ada0d9;background:transparent;box-shadow:inset 0 3px 5px #fff,inset 0 -8px 12px #49327f44,0 12px 18px #45306124,0 0 0 1px #e4dff0}
.spool-outer::before{content:"";position:absolute;inset:-18px;border:2px dashed #faf8ff99;border-radius:50%}
.spool-inner{inset:18%;border:26px solid #7052c5;transform:rotate(calc(var(--rotation,0deg)*-2));box-shadow:inset 0 3px 6px #d9c8ff,0 5px 10px #47316a44;background:transparent}
.spool-rim i{position:absolute;left:50%;top:-20px;width:48px;height:25px;transform:translateX(-50%);border-radius:7px;background:#eee7fc;box-shadow:0 4px 7px #3d285a40}
.spool-rim i+i{top:auto;bottom:-20px;background:#8f79c2}
.spool-inner i{top:-23px;background:#c7b6f1;width:36px}.spool-inner i+i{top:auto;bottom:-23px;background:#482c93}
body.cinematic-home .spool .wheel-center{inset:32%;gap:10px}
body.cinematic-home .spool .wheel-center strong{font-size:clamp(28px,3.5vw,52px)}
body.cinematic-home .spool .wheel-stop{width:112px;height:44px;margin:-22px 0 0 -56px;box-shadow:0 5px 15px #46326614}
body.cinematic-home .spool .wheel-stop[aria-pressed="true"]{background:#6047ef;box-shadow:0 0 0 6px #6047ef16,0 8px 20px #6047ef44}
.skill-sample{grid-column:2;grid-row:2;align-self:center;min-width:0;width:100%;max-height:100%;overflow:auto;scrollbar-width:thin;padding:6px 0 10px 24px;border-left:1px solid #cfc6e1}
.skill-sample>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:0 16px;color:#6047ef}
.sample-kicker{font-size:9px;letter-spacing:.15em}.skill-sample>header strong{font-size:13px}
body.cinematic-home .skill-sample .preview-stage{display:block!important;padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;min-height:0!important}
body.cinematic-home .skill-sample .preview-stage .preview-passage,body.cinematic-home .skill-sample .preview-stage .preview-listen,body.cinematic-home .skill-sample .preview-stage .preview-task{padding:14px 16px!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.cinematic-home .skill-sample .preview-stage .preview-task h3{font-size:22px!important;margin:9px 0 13px!important}
body.cinematic-home .skill-sample .preview-wave{height:66px;margin:10px 0}
body.cinematic-home .skill-sample .preview-stage .preview-options{gap:6px}
body.cinematic-home .skill-sample .preview-stage .preview-options button{min-height:34px!important;padding:8px 12px!important;background:#ffffff80!important}
body.cinematic-home .skill-sample .preview-stage .preview-check{margin-top:10px}
body.cinematic-home .sample-link{display:inline-block;margin:18px 16px 0;color:#6047ef;font-size:11px;text-decoration:none;border-bottom:1px solid #b9aadf;padding-bottom:4px}
@media(max-width:980px){
 body.cinematic-home .practice-sticky{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:94px 24px 30px;gap:16px}
 body.cinematic-home .spool{--wheel-size:min(42vw,48svh)}
 body.cinematic-home .spool .wheel-stop{width:88px;height:38px;margin:-19px 0 0 -44px;font-size:11px}
 .skill-sample{padding-left:10px}.spool-outer{border-width:16px}.spool-inner{border-width:18px}
}
@media(max-width:620px){
 body.cinematic-home .practice-sticky{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);height:100svh;padding:84px 16px 16px;gap:14px}
 body.cinematic-home .spool{--wheel-size:min(65vw,29svh);grid-column:1;grid-row:2;margin:4px auto 18px}
 body.cinematic-home .spool .wheel-stop{width:78px;height:32px;margin:-16px 0 0 -39px;font-size:10px}
 body.cinematic-home .spool .wheel-center strong{font-size:25px}
 .spool-outer{border-width:12px}.spool-inner{border-width:14px}
 .spool-rim i{height:18px;width:30px;top:-14px}.spool-rim i+i{top:auto;bottom:-14px}
 .skill-sample{grid-column:1;grid-row:3;border-left:0;border-top:1px solid #cfc6e1;padding:12px 0 0;align-self:stretch;overscroll-behavior:auto}
 .skill-sample>header{margin-bottom:6px}
}
@media(prefers-reduced-motion:reduce){
 body.cinematic-home .practice-preview{height:auto!important}
 body.cinematic-home .practice-sticky{position:relative;height:auto;min-height:0;grid-template-rows:auto auto}
 .skill-sample{max-height:none;overflow:visible}
 .spool-rim{transform:none!important}
 body.cinematic-home .spool .wheel-stop{transform:rotate(calc(var(--stop)*90deg)) translateY(calc(-1*var(--wheel-radius))) rotate(calc(var(--stop)*-90deg))}
}

/* Horizontal question reel — four persistent faces on one X-axis rotor. */
body.cinematic-home .practice-preview{height:460svh!important;background:radial-gradient(ellipse at 50% 48%,#e4ddf5,transparent 70%),#f4f2f7!important}
body.cinematic-home .practice-sticky{display:flex;flex-direction:column;justify-content:center;gap:28px;padding:108px 5vw 32px;height:100svh;position:sticky;top:0;overflow:hidden}
body.cinematic-home .preview-heading{width:100%;flex:none;max-width:1240px;align-self:center}
.question-reel{--face-height:min(440px,53svh);--radius:calc(var(--face-height)/2);position:relative;isolation:isolate;width:min(1120px,100%);height:calc(var(--face-height) + 86px);flex:none;perspective:1500px}
.reel-view{position:absolute;inset:0 44px;perspective:1500px;perspective-origin:50% 8%;overflow:visible;transform-style:preserve-3d}
.reel-cylinder{position:absolute;left:0;right:0;top:43px;height:var(--face-height);transform-style:preserve-3d;transform:translateZ(calc(-1*var(--radius))) rotateX(calc(-1*var(--roll,0deg)));will-change:transform}
.reel-face{position:absolute;inset:0;padding:18px 26px;background:linear-gradient(180deg,#f2eff8,#fff 22%,#fff 78%,#ece7f5);border:1px solid #d4cbe6;border-radius:0;backface-visibility:hidden;transform:rotateX(calc(var(--face)*90deg)) translateZ(var(--radius));overflow:hidden;box-shadow:inset 0 14px 22px #7e65aa0c,inset 0 -12px 18px #7e65aa0c}
.reel-face>header{display:flex;align-items:center;gap:16px;border-bottom:1px solid #e3ddeb;padding:0 0 12px;color:#6047ef}
.reel-face>header strong{font:24px Georgia,serif}.reel-face>header span{font-size:10px;letter-spacing:.14em}.reel-face>header small{margin-left:auto;font-size:9px;letter-spacing:.14em}
.reel-end{position:absolute;z-index:4;top:0;bottom:0;width:82px;border-radius:50%;background:linear-gradient(90deg,#a99abd,#f0eaf9 30%,#b9a6d6 75%,#7e65aa);border:1px solid #b5a5cc;box-shadow:inset 8px 0 14px #ffffff77,8px 16px 24px #42305025;pointer-events:none}
.reel-end::after{content:"";position:absolute;inset:18% 27%;border-radius:50%;border:1px solid #a896c2;background:linear-gradient(90deg,#b9a6d6,#e6dcef);box-shadow:inset 3px 0 8px #6a4e9926}
.reel-end-left{left:0}.reel-end-right{right:0;transform:scaleX(-1)}
body.cinematic-home .reel-face .preview-stage{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;padding:14px 0 0!important;min-height:0!important;background:transparent!important;border:0!important;overflow:visible!important}
body.cinematic-home .reel-face .preview-stage .preview-passage,body.cinematic-home .reel-face .preview-stage .preview-listen,body.cinematic-home .reel-face .preview-stage .preview-task{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;min-height:0!important}
body.cinematic-home .reel-face .preview-stage .preview-passage p{font-size:14px!important;line-height:1.5!important}
body.cinematic-home .reel-face .preview-stage .preview-task h3{font-size:20px!important;margin:8px 0 12px!important}
body.cinematic-home .reel-face .preview-stage .preview-eyebrow{font-size:9px!important;margin:0!important}
body.cinematic-home .reel-face .preview-options{gap:5px}
body.cinematic-home .reel-face .preview-options button{font-size:12px!important;padding:7px 10px!important;min-height:32px!important}
body.cinematic-home .reel-face .preview-check{margin-top:8px;padding:8px 12px!important;min-height:32px!important;font-size:12px!important}
body.cinematic-home .reel-face .preview-wave{height:82px;margin:12px 0}
body.cinematic-home .reel-face textarea{height:70px!important;min-height:70px!important;padding:8px!important}
body.cinematic-home .reel-face .preview-email-points{margin:8px 0!important;font-size:12px!important;line-height:1.4!important}
body.cinematic-home .reel-face .preview-support{font-size:13px!important;line-height:1.5!important}
body.cinematic-home .reel-face .preview-response-row{margin:5px 0!important}
.reel-controls{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;font-size:11px;color:#7f718f;min-height:42px}
.reel-controls nav{display:flex;gap:8px}.reel-controls nav button{border:1px solid #d9d0e6;border-radius:30px;padding:9px 15px;background:transparent;color:#796b8b;cursor:pointer;font-size:11px}
.reel-controls nav button[aria-pressed="true"]{background:#6047ef;border-color:#6047ef;color:white}
body.cinematic-home .reel-controls #resumeTour{position:static;transform:none;width:auto;white-space:nowrap}
.reel-controls #previewStatus{display:none}
.reel-face:not(.reel-active) .reading-evidence,.reel-face:not(.reel-active) .preview-wave i,.reel-face:not(.reel-active) .typing-example,.reel-face:not(.reel-active) [data-preview-record]{animation-play-state:paused!important}
@media(max-width:980px){
 body.cinematic-home .practice-sticky{padding:92px 20px 24px;gap:20px}
 .question-reel{--face-height:min(460px,57svh)}
 .reel-view{inset-inline:25px}.reel-end{width:48px}.reel-face{padding:16px 20px}
 .reel-controls{gap:10px}#reelHint{width:100%;text-align:center}
}
@media(max-width:620px){
 body.cinematic-home .practice-sticky{padding:86px 10px 20px;gap:14px}
 .question-reel{--face-height:490px;height:550px;width:100%}
 .reel-view{inset-inline:14px;perspective:1800px}.reel-end{width:28px}
 .reel-cylinder{top:30px}
 .reel-face{padding:12px 14px}
 .reel-face>header{padding-bottom:8px}.reel-face>header strong{font-size:21px}.reel-face>header small{font-size:7px}
 body.cinematic-home .reel-face .preview-stage{display:block!important;padding-top:10px!important}
 body.cinematic-home .reel-face .preview-stage .preview-passage p{font-size:12px!important;line-height:1.4!important;margin:8px 0!important}
 body.cinematic-home .reel-face .preview-stage .preview-task{margin-top:12px}
 body.cinematic-home .reel-face .preview-stage .preview-task h3{font-size:17px!important;margin:6px 0 8px!important}
 body.cinematic-home .reel-face .preview-wave{height:40px;margin:4px 0}
 body.cinematic-home .reel-face .preview-options button{font-size:11px!important;min-height:29px!important;padding:6px 8px!important}
 body.cinematic-home .reel-face .preview-record{padding:8px 12px;min-height:32px}
 .reel-controls nav{gap:5px}.reel-controls nav button{padding:8px 10px;font-size:10px}
 #reelHint{display:none}
}
@media(max-height:760px) and (max-width:620px){body.cinematic-home .practice-sticky{height:760px}}
@media(prefers-reduced-motion:reduce){
 body.cinematic-home .practice-preview{height:auto!important}
 body.cinematic-home .practice-sticky{position:relative;height:auto;min-height:0}
 .reel-cylinder{transform:none!important;will-change:auto}
 .reel-face{transform:none!important;display:none}
 .reel-face.reel-active{display:block}
 .reel-controls #reelHint{display:none}
}
/* Raise the viewpoint so the next printed face peeks over the top of the drum. */
.question-reel{perspective:none}
.reel-view{perspective-origin:50% -45%}
.reel-face{padding-inline:42px}
@media(max-width:620px){.reel-face{padding-inline:18px}.reel-view{perspective-origin:50% -30%}}

.question-reel{overflow:hidden}


/* Reel refinement: centered viewpoint, no end caps, motion follows the scroll. */
body.cinematic-home .practice-preview{height:540svh!important}
.reel-end{display:none!important}
.reel-view{inset-inline:0;perspective-origin:50% 50%}
.reel-cylinder{transform:translateZ(calc(-1*var(--radius))) rotateX(var(--roll,0deg))}
.reel-face{transform:rotateX(calc(var(--face)*-90deg)) translateZ(var(--radius));border-radius:14px}
body.cinematic-home .hero-copy{top:48%}
body.cinematic-home .hero-copy h1{color:#e7e5ee!important}
body.cinematic-home .hero-copy h1 em{color:#d0c5f2!important}
body.cinematic-home .hero-letter{animation-name:softPearlLight}
@keyframes softPearlLight{0%,30%,100%{color:inherit;text-shadow:0 0 0 transparent}8%,17%{color:#fffefd;text-shadow:0 0 14px #ffffff80,0 0 30px #e2d8ff55}}
/* Both themes share geometry; only foregrounds, surfaces and borders change. */
:root{--landing-nav:#f8f7fc;--landing-nav-ink:#24202f;--landing-nav-border:#d8d2e5}
:root[data-theme="dark"]{--landing-nav:#14131b;--landing-nav-ink:#f4f0ff;--landing-nav-border:#454052}
html body.cinematic-home .home-nav,html body.cinematic-home .home-nav.on-dark{background:var(--landing-nav)!important;color:var(--landing-nav-ink)!important;border-color:var(--landing-nav-border)!important}
html body.cinematic-home .home-nav .home-links a,html body.cinematic-home .home-nav .nav-account[data-auth="login"],html body.cinematic-home .home-profile{color:var(--landing-nav-ink)!important;opacity:1!important}
/* System v3 — the landing nav uses the same tokens, logo and buttons as every account page. */
html body.cinematic-home .home-nav .nav-account.signup{background:var(--primary)!important;color:var(--on-primary)!important;border-color:var(--primary)!important;box-shadow:none!important}
html body.cinematic-home .home-nav .nav-account.signup:hover{background:var(--primary-hover)!important;border-color:var(--primary-hover)!important}
html body.cinematic-home .home-nav .nav-account.pro{background:var(--u-pro)!important;color:var(--u-pro-ink)!important;border-color:var(--u-pro)!important}
/* Log in: filled, outlined secondary button (same tokens as every other top bar). */
html body.cinematic-home .home-nav .nav-account[data-auth="login"]{background:var(--u-login-bg)!important;color:var(--u-login-ink)!important;border:1.5px solid var(--u-login-line)!important;font-weight:750!important}
html body.cinematic-home .home-nav .nav-account[data-auth="login"]:hover{background:var(--u-login-bg-hover)!important}
/* Gradient mark + adaptive wordmark: light image on light nav, dark image on dark nav. Never flattened. */
html body.cinematic-home :is(.home-nav,.home-footer) .ursula-brand-logo{filter:none!important}
html body.cinematic-home .home-nav .ursula-brand-logo-light{display:block!important}
html body.cinematic-home .home-nav .ursula-brand-logo-dark{display:none!important}
html[data-theme="dark"] body.cinematic-home .home-nav .ursula-brand-logo-light{display:none!important}
html[data-theme="dark"] body.cinematic-home .home-nav .ursula-brand-logo-dark{display:block!important}
/* Same logo box as the account pages (148x48, 120x42 on phones). */
html body.cinematic-home .home-nav .home-brand{width:148px!important;height:48px!important;flex-shrink:0}
@media(max-width:640px){html body.cinematic-home .home-nav .home-brand{width:120px!important;height:42px!important}}
/* The footer is always dark, so it always shows the dark-mode logo. */
html body.cinematic-home .home-footer .home-brand{width:132px!important;height:44px!important}
html body.cinematic-home .home-footer .ursula-brand-logo-light{display:none!important}
html body.cinematic-home .home-footer .ursula-brand-logo-dark{display:block!important}
html body.cinematic-home .home-footer .home-brand img{filter:none!important}
/* Serif accent: Instrument Serif needs a touch more size than Georgia to read the same. */
html body.cinematic-home .hero-copy h1 em{font-size:1.04em;letter-spacing:-.02em}
/* Printed questions stay on a light surface in both modes. */
html body.cinematic-home .reel-face{color:#211c2c!important;color-scheme:light}
html body.cinematic-home .reel-face :is(p,h3,li,textarea){color:#211c2c!important}
html body.cinematic-home .reel-face :is(.preview-eyebrow,.preview-support){color:#64517e!important}
html body.cinematic-home .reel-face .preview-options button{background:#f8f6fc!important;color:#292332!important;border-color:#d6cfe2!important}
html body.cinematic-home .reel-face textarea{background:#fff!important;border-color:#a69ab8!important}
html body.cinematic-home .reel-face .preview-listen button{color:#5035ad!important;background:#f0eafb!important;border-color:#c5b6e7!important}
@media(max-width:980px){body.cinematic-home .hero-copy{top:auto;margin-top:32px}}
@media(prefers-reduced-motion:reduce){body.cinematic-home .hero-letter{animation:none!important}}
html body.cinematic-home .reel-controls{color:#655475}
html body.cinematic-home .reel-controls nav button{color:#584468;border-color:#bcb0ca}
html body.cinematic-home .reel-controls nav button[aria-pressed="true"]{color:#fff;border-color:#6047ef}
html body.cinematic-home .reel-face .preview-options button.selected{background:#e4dcfa!important;color:#3e247b!important;border-color:#7655c4!important;box-shadow:inset 0 0 0 1px #7655c4}
html body.cinematic-home .reel-face .preview-feedback{color:#443166!important}

/* System v3 — final CTA: the old landing.css rule left-aligned and upper-cased both paragraphs. */
body.cinematic-home .home-final-cta>p{align-self:center;text-align:center}
body.cinematic-home .home-final-cta>p:not(.scene-kicker){max-width:32em;font-size:17px!important;font-weight:400;letter-spacing:0;text-transform:none}
/* The shared pages layer insets every .home-footer by 56px; on the landing the dark footer runs edge to edge. */
html body.cinematic-home .home-footer{width:100%!important;max-width:none!important;margin:0!important}
html body.cinematic-home .home-footer{color:#a7a1b6!important}
html body.cinematic-home .home-footer :is(p,span,nav a){font-size:12px!important}
html body.cinematic-home .home-footer nav a{color:#c9c4d6!important;text-underline-offset:3px}
html body.cinematic-home .home-footer nav a:hover{color:#fff!important;text-decoration:underline}

/* Hero light sweep: the headline rests in a paler, quieter tone so the wave that travels through it is unmistakable.
   Each letter flashes to white with a purple halo, staggered left to right (about 2.2s across), then settles back. */
html body.cinematic-home .hero-copy h1{color:#9d99b1!important}
html body.cinematic-home .hero-copy h1 em{color:#8d82c4!important}
html body.cinematic-home .hero-letter{animation:heroShine 4.8s cubic-bezier(.45,0,.25,1) infinite;animation-delay:calc(var(--letter)*.085s);will-change:color,text-shadow}
@keyframes heroShine{
  0%,42%,100%{color:inherit;text-shadow:0 0 0 rgba(140,110,255,0)}
  8%,17%{color:#fff;text-shadow:0 0 10px rgba(255,255,255,.95),0 0 28px rgba(196,178,255,.9),0 0 64px rgba(124,92,255,.72)}
  28%{color:#e9e2ff;text-shadow:0 0 14px rgba(196,178,255,.42),0 0 38px rgba(124,92,255,.28)}
}
/* No motion: nothing moves through the headline, so give it the full-strength colours instead of the resting tone. */
@media(prefers-reduced-motion:reduce){
  html body.cinematic-home .hero-copy h1{color:#e7e5ee!important}
  html body.cinematic-home .hero-copy h1 em{color:#d0c5f2!important}
  html body.cinematic-home .hero-letter{animation:none!important}
}

/* Reel faces: each face's small animations (highlight sweep, typing, waveform, record ring) play when that face arrives
   in view and replay on every visit. They are switched off while the face is turned away or the reel is off screen, so they
   are never spent before anyone can see them. .practice-in-view is set on #questionReel by landing-motion.js. */
body.cinematic-home .reel-face:not(.reel-active) :is(.reading-evidence,.preview-wave i,.typing-example,[data-preview-record]),
body.cinematic-home .question-reel:not(.practice-in-view) :is(.reading-evidence,.preview-wave i,.typing-example,[data-preview-record]){animation:none!important}

/* Get started free (top bar and closing call to action): a vivid mint fill with a soft glow, so it reads first in light
   and dark. Colours come from the --u-cta-* tokens in system.css; the mobile menu button uses them in landing-mobile.css. */
html body.cinematic-home header.home-nav .nav-account.signup,
html body.cinematic-home header.home-nav.on-dark .nav-account.signup,
html body.cinematic-home .home-final-cta .home-cta{
  background:var(--u-cta-bg)!important;color:var(--u-cta-ink)!important;border:0!important;
  box-shadow:inset 0 0 0 1px var(--u-cta-ring),var(--u-cta-glow)!important;font-weight:750!important}
html body.cinematic-home header.home-nav .nav-account.signup:hover,
html body.cinematic-home header.home-nav.on-dark .nav-account.signup:hover,
html body.cinematic-home .home-final-cta .home-cta:hover{
  background:var(--u-cta-bg-hover)!important;box-shadow:inset 0 0 0 1px var(--u-cta-ring),var(--u-cta-glow-hover)!important}
