/* Parwaan's approved learning universe. Scoped to its own microsite. */
@font-face { font-family: Sora; src: url('/fonts/parwaan/sora-regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: Sora; src: url('/fonts/parwaan/sora-semibold.ttf') format('truetype'); font-weight: 600 800; font-display: swap; }
@font-face { font-family:'Parwaan Urdu';src:url('/fonts/parwaan/urdu-regular.ttf') format('truetype');font-weight:400;font-display:swap; }
@font-face { font-family:'Parwaan Urdu';src:url('/fonts/parwaan/urdu-semibold.ttf') format('truetype');font-weight:600 800;font-display:swap; }
.parwaan-page { --font-urdu:'Parwaan Urdu'; }
.parwaan-page { --pv-bg:#071c1b; --pv-panel:#102e2b; --pv-ink:#f4f6ef; --pv-muted:#b0c7c0; --pv-mint:#b1f1c9; --pv-orange:#ed996f; --pv-line:#33524a; background:var(--pv-bg); color:var(--pv-ink); font-family:Sora,system-ui,sans-serif; font-size:16px; line-height:1.7; overflow-x:clip; }
.parwaan-page :is(h1,h2,h3) { font-family:Sora,system-ui,sans-serif; color:inherit; letter-spacing:-.03em; font-weight:600; }
.parwaan-page ::selection { background:var(--pv-mint); color:var(--pv-bg); }
.parwaan-page :focus-visible { outline:2px solid var(--pv-orange); outline-offset:5px; }
.parwaan-page .icon { width:22px; height:22px; flex:none; }
.parwaan-page [hidden] { display:none !important; }
.pv-wrap { width:min(1280px,calc(100% - 96px)); margin-inline:auto; }
.pv-header { position:relative; z-index:3; }
.pv-nav { min-height:110px; display:flex; align-items:center; gap:32px; }
.pv-wordmark { font-size:1.8rem; line-height:1.15; letter-spacing:-.04em; font-weight:600; margin-inline-end:auto; }
.pv-wordmark span { display:block; margin-top:8px; color:var(--pv-muted); font-size:10px; font-weight:400; letter-spacing:0; }
.pv-nav>nav { display:flex; gap:30px; font-size:13px; }
.pv-nav-actions { display:flex; align-items:center; gap:24px; }
.pv-language { display:flex; gap:14px; font-size:12px; align-items:center; }
.pv-language a { padding:8px 2px; color:var(--pv-muted); }
.pv-language a[aria-current] { color:var(--pv-ink); border-bottom:1px solid var(--pv-orange); }
.pv-button { display:inline-flex; justify-content:center; align-items:center; gap:20px; min-height:54px; padding:14px 23px; border-radius:8px; background:var(--pv-mint); color:var(--pv-bg); border:0; font:600 13px Sora,system-ui,sans-serif; cursor:pointer; transition:background .2s, transform .25s; }
.pv-button:hover { background:#d2ffde; transform:translateY(-3px); }
.pv-button:active { transform:translateY(0); }
.pv-small { min-height:44px; padding:12px 16px; gap:14px; font-size:11px; }
.pv-text-link { display:inline-flex; align-items:center; gap:12px; padding-block:14px; font-size:12px; text-decoration:underline; text-underline-offset:5px; }
.pv-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:32px; }
.pv-hero { display:grid; grid-template-columns:1fr 1.08fr; min-height:740px; align-items:center; gap:12px; padding-block:35px 75px; }
.pv-hero-copy { position:relative; z-index:1; padding-bottom:25px; }
.pv-hero h1 { font-size:clamp(3.4rem,5.7vw,5.75rem); line-height:1.09; max-width:11ch; margin:0 0 28px; }
.pv-intro { font-size:17px; max-width:42ch; color:var(--pv-muted); line-height:1.9; }
.pv-coverage { font-size:11px; line-height:1.9; color:var(--pv-muted); max-width:55ch; margin-top:28px; }
.pv-universe { position:relative; min-width:0; text-align:center; }
.pv-scene { position:relative; width:calc(100% + 90px); margin-inline-start:-45px; aspect-ratio:1; isolation:isolate; touch-action:pan-y; }
#parwaan-canvas { position:absolute; inset:0; width:100%; height:100%; display:block; opacity:0; transition:opacity .6s; }
.pv-scene[data-ready="true"] #parwaan-canvas { opacity:1; }
.pv-poster { width:100%; height:100%; object-fit:contain; }
.pv-scene[data-ready="true"] .pv-poster { visibility:hidden; }
.pv-world-word { position:absolute; top:43%; inset-inline:0; font-size:clamp(2rem,4.8vw,4.5rem); font-weight:600; letter-spacing:-.04em; pointer-events:none; opacity:.9; text-shadow:0 2px 25px #061c1b; }
.pv-orbit-control { position:relative; display:flex; justify-content:center; gap:6px; margin-top:-46px; }
.pv-orbit-control button { border:1px solid var(--pv-line); background:var(--pv-bg); color:var(--pv-muted); border-radius:6px; padding:12px 19px; font:400 12px Sora,sans-serif; cursor:pointer; transition:background .3s,color .3s; }
.pv-orbit-control button.active { background:var(--pv-mint); border-color:var(--pv-mint); color:var(--pv-bg); }
.pv-orbit-caption { margin-top:16px; font-size:11px; min-height:40px; color:var(--pv-muted); }
.pv-scene-controls { display:flex; justify-content:space-between; align-items:center; margin-inline:auto; max-width:360px; color:var(--pv-muted); font-size:10px; }
.pv-scene-controls button { display:flex; align-items:center; gap:8px; background:none; border:0; color:var(--pv-muted); font:inherit; padding:12px; cursor:pointer; }
.pv-scene-controls .icon { width:14px; height:14px; }
.pv-scene-label { margin-top:8px; font-size:9px; color:var(--pv-muted); }
.pv-vision { padding:110px 0; background:#173a32; }
.pv-split { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.pv-display { font-size:clamp(2.1rem,3.25vw,3.4rem); line-height:1.25; max-width:20ch; }
.pv-prose { display:grid; gap:22px; color:var(--pv-muted); }
.pv-prose p { max-width:55ch; }
.pv-lead { font-size:17px; line-height:1.95; }
.pv-scope { display:flex; gap:32px; margin-top:70px; padding-top:40px; border-top:1px solid #3f5e50; }
.pv-scope-line { display:block; width:60px; height:60px; flex:none; border:1px solid var(--pv-mint); border-radius:50%; position:relative; }
.pv-scope-line:after { content:''; position:absolute; inset:14px -9px; border:1px solid var(--pv-orange); border-radius:50%; transform:rotate(-35deg); }
.pv-scope h3 { font-size:21px; margin-bottom:16px; }
.pv-scope p { max-width:85ch; font-size:13px; color:var(--pv-muted); }
.pv-paths { padding-block:110px; }
.pv-section-top { display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:48px; }
.pv-section-top>p { max-width:42ch; color:var(--pv-muted); font-size:13px; }
.pv-course-browser { border:1px solid var(--pv-line); border-radius:12px; overflow:hidden; }
.pv-class-tabs { display:flex; border-bottom:1px solid var(--pv-line); }
.pv-class-tabs button { position:relative; flex:1; padding:22px 20px; text-align:start; border:0; background:transparent; color:var(--pv-muted); font:inherit; cursor:pointer; border-inline-end:1px solid var(--pv-line); }
.pv-class-tabs button:last-child { border-inline-end:0; }
.pv-class-tabs span { display:block; font-size:11px; }
.pv-class-tabs strong { display:block; font-size:28px; font-weight:400; color:var(--pv-ink); }
.pv-class-tabs button[aria-selected="true"] strong { color:var(--pv-bg); }
.pv-class-tabs button[aria-selected="true"] { background:var(--pv-mint); color:var(--pv-bg); }
.pv-class-tabs .pv-dot { position:absolute; width:7px; height:7px; background:var(--pv-bg); border-radius:50%; top:24px; inset-inline-end:20px; }
.pv-course-panel { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; padding:50px; gap:60px; min-height:415px; background:var(--pv-panel); }
.pv-course-copy h3 { font-size:30px; margin-bottom:16px; }
.pv-course-copy>p:not(.pv-status) { color:var(--pv-muted); font-size:14px; }
.pv-status { margin-bottom:12px; font-size:12px; color:var(--pv-mint); }
.pv-starter-note { margin-top:18px; }
.pv-course-copy .pv-button { margin-top:25px; }
.pv-course-art img { border-radius:8px; width:100%; height:auto; }
.pv-course-art[hidden] { display:none; }
.pv-unit-title { display:flex; justify-content:space-between; gap:15px; margin-top:14px; font-size:11px; color:var(--pv-muted); }
.pv-learning { background:#e7eade; color:#133c32; padding-block:110px; }
.pv-learning .pv-lead { margin-top:30px; max-width:39ch; }
.pv-learning-steps { display:flex; align-items:center; gap:18px; font-size:12px; margin-top:40px; }
.pv-learning-steps .icon { width:18px; }
.pv-demo { border:1px solid #a9bdad; border-radius:12px; padding:32px; min-height:360px; }
.pv-demo h3 { font-size:19px; }
.pv-demo-label { font-size:10px; line-height:1.8; margin-top:12px; }
.pv-demo-tabs { display:flex; gap:6px; margin:24px 0; }
.pv-demo-tabs button { flex:1; background:none; border:0; border-bottom:1px solid #9eb7aa; padding:12px 3px; color:#34554a; font:600 12px Sora,sans-serif; cursor:pointer; }
.pv-demo-tabs button[aria-selected="true"] { background:#133c32; color:#e7eade; border-radius:4px; }
.pv-demo-pane { padding-bottom:10px; }
.pv-demo-pane[hidden] { display:none; }
.pv-demo-pane>p:not(.pv-english-sentence) { font-size:13px; }
.pv-english-sentence { font-size:clamp(20px,2vw,25px); line-height:1.6; margin-bottom:20px; color:#163e34; }
.pv-answers { display:flex; gap:10px; }
.pv-answers button { min-width:75px; padding:12px 15px; border:1px solid #789f8a; border-radius:6px; background:transparent; color:#173e33; font:600 13px Sora,sans-serif; cursor:pointer; }
.pv-answers button.is-correct { background:#164d35; color:white; }
.pv-answers button.is-wrong { background:#71382a; color:white; }
#pv-feedback { margin-top:18px; min-height:44px; }
.pv-audio { border:1px solid #729b80; font-size:11px; gap:10px; }
.pv-account { padding-block:110px; }
.pv-account-grid { margin-top:65px; display:grid; grid-template-columns:repeat(3,1fr); gap:50px; }
.pv-account-grid article { padding-top:26px; border-top:1px solid var(--pv-line); }
.pv-account-grid .icon { color:var(--pv-orange); margin-bottom:18px; width:26px; height:26px; }
.pv-account-grid h3 { font-size:20px; line-height:1.45; margin-bottom:16px; }
.pv-account-grid p { font-size:13px; color:var(--pv-muted); }
.pv-guides { background:#10332d; padding-block:105px; }
.pv-guide-list { display:grid; }
.pv-guide { display:grid; grid-template-columns:40px 1fr 24px; gap:30px; align-items:center; border-top:1px solid var(--pv-line); padding-block:30px; transition:color .2s; }
.pv-guide:last-child { border-bottom:1px solid var(--pv-line); }
.pv-guide h3 { font-size:23px; margin-bottom:10px; }
.pv-guide p { font-size:12px; color:var(--pv-muted); }
.pv-guide-num { color:var(--pv-orange); }
.pv-guide>.icon { transition:transform .3s; }
.pv-guide:hover>.icon { transform:translateX(8px); }
.pv-guide:hover h3 { color:var(--pv-mint); }
.pv-faq { padding-block:105px; display:grid; grid-template-columns:.8fr 1fr; gap:90px; }
.pv-faq details { border-top:1px solid var(--pv-line); padding-block:20px; }
.pv-faq details:last-child { border-bottom:1px solid var(--pv-line); }
.pv-faq summary { cursor:pointer; font-size:14px; font-weight:600; list-style:revert; padding-inline-end:15px; }
.pv-faq details p { color:var(--pv-muted); font-size:13px; margin-top:20px; }
.pv-close { position:relative; background:#b1f1c9; color:#0b2f25; padding-block:110px; overflow:hidden; }
.pv-close h2 { position:relative; z-index:1; font-size:clamp(3.1rem,6vw,6rem); line-height:1.1; max-width:14ch; }
.pv-close p { position:relative; z-index:1; margin-top:28px; font-size:14px; }
.pv-close .pv-actions { position:relative; z-index:1; }
.pv-close .pv-button { background:#0b2f25; color:#f4f6ef; }
.pv-close-orbit { position:absolute; top:-55%; inset-inline-end:-20%; width:800px; height:800px; border:1px solid #528e70; border-radius:50%; pointer-events:none; }
.pv-close-orbit:before,.pv-close-orbit:after { content:''; position:absolute; inset:80px; border:1px solid #528e70; border-radius:50%; }
.pv-close-orbit:after { inset:160px; }
.pv-footer { padding-block:45px; }
.pv-footer>.pv-wrap { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.pv-footer .pv-wrap>a { display:flex; align-items:center; gap:18px; max-width:450px; font-size:11px; color:var(--pv-muted); }
.pv-footer img { width:44px; height:44px; border-radius:50%; }
.pv-footer nav { display:flex; gap:24px; font-size:11px; }
.parwaan-page .wa-fab { display:none; }
.no-js .pv-class-tabs,.no-js .pv-demo-tabs,.no-js .pv-orbit-control,.no-js .pv-scene-controls,.no-js .pv-audio,.no-js .pv-answers { display:none; }
.no-js .pv-demo-pane { margin-top:20px; }
.no-js #demo-practice { display:none; }
html[lang="ur"] .parwaan-page { font-family:var(--font-urdu),serif; line-height:2.5; }
html[lang="ur"] .parwaan-page :is(h1,h2,h3,.pv-button,.pv-class-tabs button,.pv-demo-tabs button,.pv-orbit-control button) { font-family:var(--font-urdu),serif; letter-spacing:0; }
html[lang="ur"] .pv-wordmark { font-family:var(--font-urdu),serif; font-size:1.9rem; line-height:2; }
html[lang="ur"] .pv-wordmark span { margin-top:-4px; }
html[lang="ur"] .pv-hero h1 { font-size:clamp(2.6rem,4.7vw,4.75rem); line-height:1.9; max-width:16ch; margin-bottom:30px; }
html[lang="ur"] .pv-intro { font-size:19px; line-height:2.5; }
html[lang="ur"] .pv-display { line-height:2; font-size:clamp(1.9rem,2.8vw,2.8rem); }
html[lang="ur"] .pv-button { font-size:14px; line-height:2; padding-block:10px 18px; }
html[lang="ur"] .pv-small { font-size:12px; }
html[lang="ur"] .pv-lead { line-height:2.6; }
html[lang="ur"] .pv-nav>nav,html[lang="ur"] .pv-text-link { font-size:15px; }
html[lang="ur"] .pv-world-word { font-family:var(--font-urdu),serif; font-size:4rem; top:35%; letter-spacing:0; }
html[lang="ur"] .pv-course-copy h3 { line-height:2; font-size:27px; }
html[lang="ur"] .pv-course-copy>p,html[lang="ur"] .pv-faq summary { font-size:16px; }
html[lang="ur"] .pv-course-copy>p:not(.pv-status) { line-height:2.5; }
html[lang="ur"] .pv-account-grid h3,html[lang="ur"] .pv-guide h3 { line-height:2.1; }
html[lang="ur"] .pv-close h2 { font-size:clamp(2.5rem,4.5vw,4.3rem); line-height:1.9; }
html[lang="ur"] .pv-guide:hover>.icon { transform:translateX(-8px); }
@media(max-width:1100px) {
 .pv-wrap { width:calc(100% - 64px); }
 .pv-nav>nav { display:none; }
 .pv-hero h1 { font-size:4.5rem; }
 .pv-hero { min-height:660px; }
 .pv-scene { width:calc(100% + 60px); margin-inline-start:-30px; }
 .pv-split { gap:50px; }
 .pv-course-panel { padding:32px; gap:30px; }
 .pv-faq { gap:50px; }
}
@media(min-width:761px) and (max-width:1000px) {
 .pv-hero { grid-template-columns:1fr; }
 .pv-universe { width:100%; max-width:650px; margin-inline:auto; }
 .pv-scene { width:100%; margin-inline-start:0; }
 .pv-hero-copy { max-width:650px; }
 .pv-footer>.pv-wrap { flex-wrap:wrap; }
}
@media(max-width:760px) {
 .pv-wrap { width:calc(100% - 40px); }
 .pv-nav { min-height:100px; gap:15px; }
 .pv-wordmark { font-size:1.55rem; }
 .pv-nav-actions { gap:15px; }
 .pv-nav-actions .pv-button { display:none; }
 .pv-hero { grid-template-columns:1fr; padding-block:40px 65px; gap:0; }
 .pv-hero-copy { padding:0; }
 .pv-hero h1 { font-size:clamp(3.4rem,11.7vw,5rem); max-width:13ch; margin-bottom:22px; }
 .pv-intro { font-size:14px; max-width:47ch; }
 .pv-actions { gap:14px; margin-top:24px; }
 .pv-actions>.pv-text-link { font-size:10px; }
 .pv-button { padding-inline:18px; font-size:12px; gap:16px; }
 .pv-coverage { margin-top:20px; font-size:10px; }
 .pv-scene { width:calc(100% + 40px); margin-inline-start:-20px; }
 .pv-world-word { font-size:2.75rem; }
 .pv-orbit-control { margin-top:-22px; }
 .pv-orbit-control button { padding:10px 18px; }
 .pv-scene-controls { margin-inline:15px; }
 .pv-vision,.pv-learning,.pv-guides,.pv-close { padding-block:65px; }
 .pv-paths,.pv-account,.pv-faq { padding-block:65px; }
 .pv-split { grid-template-columns:1fr; gap:30px; }
 .pv-display { font-size:2rem; }
 .pv-lead { font-size:15px; }
 .pv-prose { gap:18px; }
 .pv-prose>p:not(.pv-lead) { font-size:13px; }
 .pv-scope { margin-top:40px; padding-top:32px; gap:22px; }
 .pv-scope-line { width:35px; height:35px; }
 .pv-scope-line:after { inset:8px -7px; }
 .pv-scope h3 { font-size:18px; }
 .pv-section-top { display:block; margin-bottom:30px; }
 .pv-section-top>p { margin-top:22px; }
 .pv-class-tabs button { padding:16px 10px; }
 .pv-class-tabs span { font-size:10px; }
 .pv-class-tabs strong { font-size:24px; }
 .pv-class-tabs .pv-dot { top:18px; inset-inline-end:10px; width:5px; height:5px; }
 .pv-course-panel { grid-template-columns:1fr; padding:26px 22px; gap:25px; }
 .pv-course-copy h3 { font-size:27px; }
 .pv-course-art { max-width:450px; }
 .pv-learning-steps { margin-top:25px; }
 .pv-demo { padding:24px 20px; min-height:330px; }
 .pv-account-grid { grid-template-columns:1fr; gap:35px; margin-top:38px; }
 .pv-account-grid article { padding-top:24px; }
 .pv-guide { grid-template-columns:24px 1fr 20px; gap:15px; padding-block:25px; }
 .pv-guide h3 { font-size:18px; }
 .pv-guide .icon { width:20px; height:20px; }
 .pv-faq { grid-template-columns:1fr; gap:30px; }
 .pv-faq summary { font-size:13px; }
 .pv-close h2 { font-size:3rem; }
 .pv-close-orbit { width:550px; height:550px; top:10%; inset-inline-end:-110%; }
 .pv-footer>.pv-wrap { display:block; }
 .pv-footer nav { flex-wrap:wrap; margin-top:30px; gap:15px 25px; }
 html[lang="ur"] .pv-hero h1 { font-size:2.7rem; line-height:2; }
 html[lang="ur"] .pv-intro { font-size:17px; }
 html[lang="ur"] .pv-display { font-size:1.8rem; }
 html[lang="ur"] .pv-hero .pv-text-link { font-size:12px; }
 html[lang="ur"] .pv-close h2 { font-size:2.5rem; }
 html[lang="ur"] .pv-nav .pv-wordmark { font-size:1.6rem; }
 html[lang="ur"] .pv-orbit-control button { padding:8px 17px 13px; }
}
@media(prefers-reduced-motion:reduce) {
 .parwaan-page *, .parwaan-page *:before,.parwaan-page *:after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
 .pv-button:hover,.pv-guide:hover>.icon { transform:none; }
}
