:root{color:#173d3f;background:#f7f6f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;min-width:320px;background:#f7f6f1}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #e7b64e;outline-offset:3px}.page-shell{width:min(1200px,calc(100% - 48px));margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;padding:28px 0 20px}.brand{display:inline-flex;align-items:center;gap:10px;color:inherit;font-weight:800;font-size:1.25rem;letter-spacing:-.06em;text-decoration:none}.brand-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:9px 9px 9px 2px;background:#173d3f;color:#f6cf67;font-size:1rem;letter-spacing:-.08em}.header-note{display:flex;align-items:center;gap:8px;color:#5c7472;font-size:.78rem;font-weight:700}.header-dot{width:8px;height:8px;border-radius:50%;background:#73b5a4;box-shadow:0 0 0 4px #dbece4}.eyebrow{color:#bd7b16;font-size:.7rem;font-weight:800;letter-spacing:.13em}.hero{display:grid;grid-template-columns:1.08fr .92fr;gap:55px;align-items:center;padding:76px 48px 84px;border-radius:28px;background:#e9ede5;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;width:420px;height:420px;right:-175px;top:-240px;border-radius:50%;background:#d9e4d9}.hero-copy{position:relative;z-index:1}.hero h1,.complete-card h1{margin:13px 0 18px;max-width:620px;color:#173d3f;font-size:clamp(2.8rem,5.5vw,5.1rem);line-height:.99;letter-spacing:-.075em}h1 em{color:#bd7b16;font-family:Georgia,Times New Roman,serif;font-weight:500}.hero-summary{max-width:510px;margin:0;color:#48615f;font-size:1.05rem;line-height:1.65}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:32px}.primary-button,.secondary-button{border:0;border-radius:12px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.primary-button{padding:15px 20px;color:#fffdf7;background:#173d3f;box-shadow:0 8px 18px #173d3f2e}.primary-button:hover{transform:translateY(-2px);background:#0f3032;box-shadow:0 12px 22px #173d3f38}.primary-button span{margin-left:9px;font-size:1.1em}.secondary-button{padding:13px 15px;color:#28595a;background:#e4efeb}.secondary-button:hover{background:#d5e6e0}.compact{padding-inline:17px}.session-length{color:#667c79;font-size:.82rem;font-weight:700}.privacy-message{display:flex;align-items:center;gap:9px;margin-top:38px;color:#657b77;font-size:.78rem;font-weight:700}.privacy-message span{color:#bd7b16;font-size:1.2rem}.hero-orb{position:relative;z-index:1;width:min(100%,345px);aspect-ratio:1;justify-self:center;display:grid;place-items:center}.hero-orb:before,.hero-orb:after{content:"";position:absolute;border:1px solid rgba(23,61,63,.16);border-radius:50%}.hero-orb:before{inset:5%}.hero-orb:after{inset:18%;border-color:#173d3f40}.orb-core{position:relative;z-index:1;width:47%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;padding:20px;color:#f9f6ee;border-radius:47% 53% 50% 33%;background:#173d3f;box-shadow:18px 24px #d2ae54;transform:rotate(-7deg)}.orb-core span{color:#e8be54;font-size:.7rem;font-weight:800;letter-spacing:.08em}.orb-core strong{margin-top:8px;font-size:1.12rem;line-height:1.05;letter-spacing:-.06em;transform:rotate(7deg)}.sound{position:absolute;left:3%;width:23%;border-top:4px solid #73b5a4;border-radius:50%;transform:rotate(-25deg)}.sound-one{top:30%}.sound-two{top:48%;width:15%;left:0}.sound-three{top:66%;width:28%;left:4%}.how-it-works{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:44px 25px 58px}.how-it-works div{border-top:1px solid #cfd8d1;padding-top:17px}.how-it-works span{color:#bd7b16;font-size:.75rem;font-weight:800}.how-it-works h2{margin:7px 0;font-size:1.05rem;letter-spacing:-.03em}.how-it-works p{margin:0;color:#6a7f7d;font-size:.86rem;line-height:1.5}.session-layout,.complete-layout{display:grid;grid-template-columns:minmax(0,1fr) 304px;gap:26px;align-items:start;padding:34px 0 52px}.practice-card,.complete-card{padding:clamp(28px,5vw,55px);border:1px solid #dce2da;border-radius:24px;background:#fffefa;box-shadow:0 15px 30px #18423f0d}.progress-row,.word-topline{display:flex;justify-content:space-between;gap:16px;align-items:center;color:#637875;font-size:.76rem;font-weight:800}.progress-track{height:7px;margin:10px 0 43px;overflow:hidden;border-radius:999px;background:#e7ece5}.progress-track span{display:block;height:100%;border-radius:inherit;background:#dba83d;transition:width .25s ease}.audio-button{border:0;padding:0;color:#356b6a;background:transparent;font-size:.77rem;font-weight:800}.word-title{margin:10px 0 0;color:#173d3f;font-size:clamp(3rem,7vw,5.4rem);line-height:.92;letter-spacing:-.085em}.pronunciation{margin:12px 0 23px;color:#c18220;font-size:.8rem;font-weight:800;letter-spacing:.08em}.definition{max-width:640px;margin:0;color:#3e5d5a;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.2rem,2.2vw,1.65rem);line-height:1.35}.practice-card blockquote{margin:30px 0 38px;padding:15px 18px;border-left:3px solid #dfb04f;color:#697c78;background:#fbf8ef;font-size:.93rem;font-style:italic;line-height:1.5}.recall-box{padding:25px;border-radius:17px;background:#eaf1ed}.recall-box h2{margin:8px 0 7px;color:#173d3f;font-size:clamp(1.15rem,2.2vw,1.45rem);line-height:1.22;letter-spacing:-.04em}.voice-status{margin:0 0 17px;color:#66807b;font-size:.77rem;line-height:1.45}.answer-entry{display:flex;gap:8px}.answer-entry input{min-width:0;flex:1;padding:14px 15px;color:#173d3f;border:1px solid #c7d7cf;border-radius:10px;background:#fffefa}.answer-entry input::placeholder{color:#8b9d98}.mic-button{width:51px;border:0;border-radius:10px;color:#fffefa;background:#397977;font-size:1.2rem}.mic-button:hover{background:#245f5f}.mic-button.is-listening{color:#173d3f;background:#e6b34c;animation:pulse 1s ease-in-out infinite}.feedback{margin:14px 0 0;font-size:.83rem;font-weight:800}.feedback.correct{color:#257057}.feedback.retry,.feedback.empty{color:#9a5b24}.hint{margin:13px 0 0;padding:11px 12px;border-radius:8px;color:#6d591f;background:#f8edc9;font-size:.8rem;line-height:1.45}.recall-actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.confidence-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:23px 0 0;color:#667d77;font-size:.8rem;font-weight:800}.confidence-row>span{margin-right:5px}.confidence-button{padding:7px 10px;border:1px solid #cbd9d1;border-radius:999px;color:#526c67;background:#fffefa;font-size:.73rem;font-weight:800}.confidence-button.selected{border-color:#397977;color:#fffefa;background:#397977}.next-button{float:right;margin-top:20px}.insights-card{position:sticky;top:18px;padding:24px;border-radius:18px;color:#e9f1ed;background:#173d3f}.insights-card .eyebrow{color:#e7bd55}.insights-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.insights-heading h2{margin:8px 0;font-size:1.35rem;letter-spacing:-.045em}.local-pill{padding:5px 7px;border:1px solid #4b7874;border-radius:999px;color:#a9d5c8;font-size:.62rem;font-weight:800;text-transform:uppercase}.insights-note{margin:0 0 18px;color:#b1c9c2;font-size:.75rem;line-height:1.45}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:0}.metric-grid div{padding-top:11px;border-top:1px solid #396461}.metric-grid dt{color:#abc3bc;font-size:.64rem;font-weight:700}.metric-grid dd{margin:4px 0 0;color:#fffdf7;font-size:.9rem;font-weight:800}.duration-row{display:flex;justify-content:space-between;margin-top:19px;padding:12px 0;border-top:1px solid #396461;border-bottom:1px solid #396461;color:#b7cec7;font-size:.75rem}.duration-row strong{color:#fffdf7}.text-button{margin-top:17px;padding:0;border:0;color:#eac260;background:transparent;font-size:.76rem;font-weight:800;text-decoration:underline;text-underline-offset:3px}.complete-layout{align-items:center;min-height:67vh}.complete-card{text-align:center}.completion-seal{width:57px;height:57px;display:grid;place-items:center;margin:0 auto 24px;border-radius:50%;color:#173d3f;background:#f2cc6c;font-size:1.5rem;font-weight:900}.complete-card h1{margin:10px auto 18px;max-width:670px;font-size:clamp(2.7rem,5.3vw,4.65rem)}.complete-card>p{max-width:500px;margin:0 auto;color:#5e7772;line-height:1.6}.completion-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:30px}footer{display:flex;justify-content:space-between;gap:16px;margin-top:auto;padding:23px 0 30px;color:#82918c;font-size:.68rem;line-height:1.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes pulse{50%{transform:scale(1.05);box-shadow:0 0 0 7px #e7b64e3d}}@media(max-width:820px){.page-shell{width:min(100% - 32px,680px)}.hero{grid-template-columns:1fr;padding:52px 30px;gap:20px}.hero-orb{width:245px;justify-self:end;margin-top:-20px}.session-layout,.complete-layout{grid-template-columns:1fr}.insights-card{position:static}.how-it-works{gap:18px;padding-inline:0}.hero h1{font-size:clamp(3rem,12vw,4.7rem)}}@media(max-width:540px){.page-shell{width:min(100% - 28px,500px)}.site-header{padding-top:18px}.header-note{max-width:135px;font-size:.67rem}.hero{padding:43px 24px 34px;border-radius:22px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-orb{width:200px}.how-it-works{grid-template-columns:1fr;gap:20px;padding:30px 0 38px}.practice-card,.complete-card{padding:26px 20px;border-radius:18px}.recall-box{padding:19px}.word-topline{align-items:flex-start}.audio-button span{display:none}.recall-actions{align-items:stretch;flex-direction:column}.recall-actions button{width:100%}.next-button{float:none;width:100%}.confidence-row{align-items:flex-start;flex-direction:column}.confidence-row>span{margin-bottom:3px}.metric-grid{grid-template-columns:repeat(3,1fr);gap:14px 9px}.metric-grid dd{font-size:.8rem}.metric-grid dt{font-size:.58rem}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
