:root {
    --ink: #170d24;
    --muted: #71697c;
    --surface: #ffffff;
    --soft: #f8f6fb;
    --line: rgba(37, 22, 52, .1);
    --purple-950: #10031f;
    --purple-900: #240442;
    --purple-800: #3c0867;
    --purple-700: #5e0aa2;
    --purple-600: #7c1fd0;
    --purple-500: #9a3cef;
    --violet: #6f54e8;
    --mint: #20c9a8;
    --pink: #f65b9a;
    --radius: 28px;
    --shadow: 0 24px 70px rgba(42, 12, 72, .12);
}

* { box-sizing: border-box; }
html { max-width: 100%; scroll-behavior: smooth; overflow-x: clip; }
body { max-width: 100%; margin: 0; color: var(--ink); background: #fff; font-family: IRANSans, iranyekan, Tahoma, Arial, sans-serif; line-height: 1.85; overflow-x: clip; }
html[dir="ltr"] body { font-family: Inter, Arial, sans-serif; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
img { max-width: 100%; display: block; }
.container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.skip-link { position: fixed; inset-block-start: 12px; inset-inline-start: 12px; z-index: 1000; transform: translateY(-150%); background: #fff; padding: 8px 16px; border-radius: 10px; }
.skip-link:focus { transform: none; }

.site-header { position: absolute; inset: 0 0 auto; z-index: 30; color: #fff; transition: .3s ease; }
.site-header.is-sticky { position: fixed; background: rgba(16, 3, 31, .88); backdrop-filter: blur(18px); box-shadow: 0 12px 38px rgba(0,0,0,.15); }
.nav-shell { min-height: 108px; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 28px; }
.brand { display: inline-flex; width: 158px; height: 96px; align-items: center; }
.brand img { width: 158px; height: 96px; object-fit: contain; object-position: center; mix-blend-mode: screen; }
.main-nav { justify-self: center; display: flex; align-items: center; gap: 28px; font-size: 13px; font-weight: 700; color: rgba(255,255,255,.78); }
.main-nav a { position: relative; white-space: nowrap; }
.main-nav a::after { content: ""; position: absolute; inset-inline: 0; inset-block-end: -9px; height: 2px; transform: scaleX(0); background: linear-gradient(90deg, var(--mint), #86ffe6); transition: transform .25s ease; }
.main-nav a:hover { color: #fff; }
.main-nav a:hover::after { transform: scaleX(1); }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.language-switch { display: flex; gap: 3px; padding: 4px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; }
.language-switch a { display: grid; place-items: center; min-width: 31px; height: 28px; border-radius: 999px; font: 700 10px/1 Arial; color: rgba(255,255,255,.6); }
.language-switch a.active { background: rgba(255,255,255,.16); color: #fff; }
.nav-toggle { display: none; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.08); align-content: center; justify-items: center; gap: 6px; }
.nav-toggle span { width: 19px; height: 2px; background: #fff; border-radius: 2px; }

.button { min-height: 52px; padding: 0 24px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; border: 0; border-radius: 16px; font-size: 14px; font-weight: 800; transition: transform .25s ease, box-shadow .25s ease, background .25s ease; cursor: pointer; }
.button:hover { transform: translateY(-3px); }
.button-small { min-height: 43px; padding-inline: 18px; border-radius: 13px; font-size: 12px; }
.button-light { color: #170d24; background: #fff; box-shadow: 0 12px 28px rgba(0,0,0,.13); }
.button-primary { color: #fff; background: linear-gradient(135deg, #aa3ff2 0%, #7419cd 48%, #5d57df 100%); box-shadow: 0 16px 34px rgba(119, 29, 207, .3), inset 0 1px rgba(255,255,255,.3); }
.button-primary:hover { box-shadow: 0 20px 42px rgba(119, 29, 207, .4); }
.button-outline { color: var(--purple-700); border: 1px solid rgba(94, 10, 162, .25); background: transparent; }
.button-white { background: #fff; color: var(--purple-800); box-shadow: 0 16px 35px rgba(15,0,30,.22); }
.text-link { display: inline-flex; align-items: center; gap: 10px; color: rgba(255,255,255,.85); font-size: 13px; font-weight: 700; }
.text-link.dark { color: var(--purple-700); }
.play { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; font-size: 10px; background: rgba(255,255,255,.08); }

.hero { min-height: 780px; position: relative; isolation: isolate; padding: 150px 0 135px; color: #fff; background: radial-gradient(circle at 82% 25%, rgba(154,60,239,.32), transparent 27%), radial-gradient(circle at 15% 78%, rgba(32,201,168,.12), transparent 30%), linear-gradient(135deg, #0d021a 0%, #21043d 48%, #3b0963 100%); overflow: hidden; }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(2px); z-index: -1; }
.hero-orb-one { width: 460px; height: 460px; inset-inline-end: -130px; inset-block-start: 90px; border: 1px solid rgba(255,255,255,.09); box-shadow: inset 0 0 100px rgba(160,62,244,.08); }
.hero-orb-two { width: 240px; height: 240px; inset-inline-start: -90px; inset-block-end: 70px; background: rgba(32,201,168,.06); }
.hero-grid { display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 80px; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow, .section-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--mint); font-size: 12px; font-weight: 900; letter-spacing: .02em; }
.eyebrow i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 6px rgba(32,201,168,.13); }
.hero h1 { max-width: 700px; margin: 24px 0 20px; font-size: clamp(42px, 5vw, 72px); line-height: 1.28; letter-spacing: -.045em; font-weight: 500; }
html[dir="ltr"] .hero h1 { line-height: 1.08; }
html[dir="rtl"] .hero h1 { font-size: clamp(38px, 4.2vw, 60px); line-height: 1.34; letter-spacing: -.025em; }
html[dir="rtl"] .hero-copy > p { font-size: 14px; }
html[dir="rtl"] .main-nav, html[dir="rtl"] .button { font-size: 12px; }
.hero h1 strong { font-weight: 900; background: linear-gradient(100deg, #fff 5%, #dca9ff 55%, #77f5dd); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero-copy > p { max-width: 620px; margin: 0; color: rgba(255,255,255,.66); font-size: 15px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 26px; margin-top: 34px; }
.hero-proof { display: flex; align-items: center; gap: 15px; margin-top: 38px; }
.avatar-stack { display: flex; direction: ltr; }
.avatar-stack span { width: 38px; height: 38px; margin-left: -8px; display: grid; place-items: center; border: 3px solid #21043d; border-radius: 50%; color: #fff; background: linear-gradient(135deg, #9a3cef, #554fe1); font: 800 10px Arial; }
.avatar-stack span:nth-child(2) { background: linear-gradient(135deg, var(--mint), #188f86); }
.avatar-stack span:nth-child(3) { width: 48px; background: linear-gradient(135deg, #f65b9a, #a92ec6); }
.hero-proof p { display: grid; margin: 0; line-height: 1.5; }
.hero-proof strong { font-size: 12px; }
.hero-proof small { color: rgba(255,255,255,.5); font-size: 10px; }
.hero-visual { min-height: 510px; position: relative; }
.visual-frame { position: absolute; inset: 35px 28px 25px 50px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 44% 56% 52% 48% / 36% 40% 60% 64%; transform: rotate(3deg); box-shadow: 0 35px 90px rgba(0,0,0,.35); }
.visual-frame::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(87,18,139,.05), rgba(17,3,30,.45)); }
.visual-frame img { width: 100%; height: 100%; object-fit: cover; transform: rotate(-3deg) scale(1.08); filter: saturate(.72) contrast(1.06); }
.score-card { position: absolute; z-index: 2; padding: 17px 19px; color: var(--ink); background: rgba(255,255,255,.93); border: 1px solid rgba(255,255,255,.7); border-radius: 18px; box-shadow: 0 18px 50px rgba(10,0,25,.25); backdrop-filter: blur(15px); }
.score-main { inset-block-start: 2px; inset-inline-start: 0; min-width: 165px; display: grid; }
.score-main span, .score-main small { font-size: 9px; color: #83778c; }
.score-main strong { color: var(--purple-700); font: 900 28px/1.35 Arial; }
.score-progress { inset-inline-end: -12px; inset-block-end: 40px; display: flex; align-items: center; gap: 12px; }
.progress-ring { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; color: var(--purple-700); background: conic-gradient(var(--mint) 78%, #ece9ef 0); position: relative; font: 800 10px Arial; }
.progress-ring::before { content: ""; position: absolute; inset: 6px; border-radius: 50%; background: #fff; }
.progress-ring { isolation: isolate; }.progress-ring::before { z-index: -1; }
.score-progress p { display: grid; margin: 0; font-size: 10px; font-weight: 800; }.score-progress small { color: var(--mint); }
.skill-pill { position: absolute; z-index: 2; padding: 8px 13px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; color: #fff; background: rgba(28,5,52,.72); backdrop-filter: blur(10px); font: 700 10px Arial; box-shadow: 0 10px 28px rgba(0,0,0,.18); }
.skill-listening { inset-inline-end: 5px; inset-block-start: 100px; }.skill-writing { inset-inline-start: 8px; inset-block-end: 85px; }
.hero-wave { position: absolute; inset: auto -5% -74px; height: 150px; background: #fff; border-radius: 50% 45% 0 0 / 60% 55% 0 0; transform: rotate(-1.5deg); }

.trust-strip { position: relative; z-index: 5; margin-top: -35px; }
.trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); background: #fff; border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); overflow: hidden; }
.trust-grid > div { min-height: 112px; padding: 25px 32px; display: flex; align-items: center; gap: 16px; }
.trust-grid > div + div { border-inline-start: 1px solid var(--line); }
.trust-grid > div > span { color: rgba(94,10,162,.25); font: 900 30px Arial; }
.trust-grid p { display: grid; margin: 0; line-height: 1.7; }.trust-grid strong { font-size: 13px; }.trust-grid small { color: var(--muted); font-size: 10px; }

.section { padding: 115px 0; }
.section-heading { max-width: 700px; margin: 0 auto 50px; text-align: center; }
.section-heading h2, .feature-copy h2, .stats-intro h2, .faq-copy h2, .cta-card h2 { margin: 12px 0 15px; font-size: clamp(30px, 4vw, 48px); line-height: 1.4; letter-spacing: -.035em; }
html[dir="ltr"] .section-heading h2, html[dir="ltr"] .feature-copy h2, html[dir="ltr"] .stats-intro h2, html[dir="ltr"] .faq-copy h2, html[dir="ltr"] .cta-card h2 { line-height: 1.15; }
html[dir="rtl"] .section-heading h2, html[dir="rtl"] .feature-copy h2, html[dir="rtl"] .stats-intro h2, html[dir="rtl"] .faq-copy h2, html[dir="rtl"] .cta-card h2 { font-size: clamp(27px, 3.35vw, 42px); letter-spacing: -.02em; }
.section-heading p, .feature-copy > p, .faq-copy > p, .cta-card p { margin: 0; color: var(--muted); font-size: 14px; }
.heading-row { max-width: none; display: flex; align-items: end; justify-content: space-between; text-align: start; }
.heading-row h2 { margin-bottom: 0; }
.path-section { padding-top: 135px; background: #fff; }
.path-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: path; }
.path-card { min-height: 300px; position: relative; padding: 32px 26px; background: var(--soft); border: 1px solid transparent; border-radius: 24px; transition: .3s ease; overflow: hidden; }
.path-card::after { content: ""; position: absolute; width: 100px; height: 100px; inset-inline-end: -45px; inset-block-end: -45px; border: 18px solid rgba(124,31,208,.06); border-radius: 50%; }
.path-card:hover { transform: translateY(-8px); border-color: rgba(124,31,208,.15); background: #fff; box-shadow: var(--shadow); }
.path-number { position: absolute; inset-block-start: 22px; inset-inline-end: 25px; color: #bbb3c2; font: 800 11px Arial; }
.path-icon { width: 58px; height: 58px; margin-bottom: 34px; display: grid; place-items: center; border-radius: 17px; color: #fff; background: linear-gradient(135deg, var(--purple-500), var(--violet)); box-shadow: 0 13px 26px rgba(111,84,232,.25); font: 700 23px Arial; }
.path-card h3 { margin: 0 0 12px; font-size: 19px; }.path-card p { margin: 0; color: var(--muted); font-size: 12px; }

.courses-section { background: linear-gradient(180deg, #faf8fc, #fff); }
.skills-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.skill-card { min-height: 310px; padding: 34px; position: relative; border-radius: var(--radius); color: #fff; overflow: hidden; isolation: isolate; transition: transform .3s ease; }
.skill-card:hover { transform: translateY(-6px); }
.skill-card::before { content: ""; position: absolute; width: 260px; height: 260px; inset-inline-end: -90px; inset-block-end: -120px; z-index: -1; border-radius: 50%; border: 45px solid rgba(255,255,255,.08); }
.skill-card.listening { background: linear-gradient(135deg, #27104e, #6d21b5); }.skill-card.reading { background: linear-gradient(135deg, #063c42, #13a28d); }.skill-card.writing { background: linear-gradient(135deg, #4b1237, #d54a84); }.skill-card.speaking { background: linear-gradient(135deg, #172257, #525cda); }
.skill-card-top { display: flex; align-items: center; justify-content: space-between; }.skill-card-top span { color: rgba(255,255,255,.5); font: 800 11px Arial; }.skill-card-top i { width: 55px; height: 55px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 17px; background: rgba(255,255,255,.09); font: normal 24px Arial; }
.skill-card h3 { margin: 38px 0 8px; font: 900 31px Arial; }.skill-card p { max-width: 410px; min-height: 52px; margin: 0 0 24px; color: rgba(255,255,255,.72); font-size: 12px; }.skill-card a { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 4px; border-bottom: 1px solid rgba(255,255,255,.45); font-size: 11px; font-weight: 800; }

.features-section { overflow: hidden; }
.feature-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 90px; align-items: center; }
.feature-visual { min-height: 550px; position: relative; border-radius: 46% 54% 55% 45% / 40% 42% 58% 60%; background: radial-gradient(circle at 50% 35%, rgba(188,116,239,.24), transparent 35%), linear-gradient(145deg, #1a0430, #490976); }
.feature-visual::before { content: ""; position: absolute; inset: 24px; border: 1px solid rgba(255,255,255,.1); border-radius: inherit; }
.score-board { position: absolute; inset: 75px 60px; padding: 27px; color: var(--ink); background: rgba(255,255,255,.94); border-radius: 25px; box-shadow: 0 25px 60px rgba(0,0,0,.25); transform: rotate(-2deg); }
.score-board-head { display: flex; justify-content: space-between; font-size: 10px; }.score-board-head b { padding: 5px 9px; color: var(--purple-700); background: #f0e6f8; border-radius: 8px; }
.score-board > strong { display: block; margin-top: 18px; color: var(--purple-700); font: 900 60px/1 Arial; }.score-board > small { color: var(--muted); font-size: 9px; }
.bars { margin-top: 24px; display: grid; gap: 15px; }.bars i { height: 8px; position: relative; display: block; border-radius: 10px; background: #ece8ef; }.bars i::after { content: ""; position: absolute; inset-block: 0; inset-inline-start: 0; width: var(--value); border-radius: inherit; background: linear-gradient(90deg, var(--purple-600), var(--mint)); }.bars span { position: absolute; inset-block-start: -16px; inset-inline-start: 0; color: #817589; font: normal 8px Arial; }
.feature-badge { position: absolute; inset-inline-end: -25px; inset-block-end: 48px; min-width: 125px; padding: 16px; display: grid; text-align: center; color: #fff; border: 1px solid rgba(255,255,255,.2); border-radius: 18px; background: rgba(108,31,176,.88); backdrop-filter: blur(12px); box-shadow: 0 18px 40px rgba(0,0,0,.2); }.feature-badge b { font: 900 24px Arial; }.feature-badge span { font-size: 9px; }
.feature-copy { max-width: 560px; }.feature-copy .button { margin-top: 26px; }
.check-list { padding: 0; margin: 30px 0 0; list-style: none; display: grid; gap: 18px; }.check-list li { display: flex; gap: 14px; align-items: flex-start; }.check-list li > span { flex: 0 0 29px; height: 29px; display: grid; place-items: center; color: #fff; background: var(--mint); border-radius: 9px; font-size: 13px; }.check-list li div { display: grid; }.check-list strong { font-size: 13px; }.check-list small { color: var(--muted); font-size: 10px; }

.stats-section { color: #fff; background: linear-gradient(130deg, #10031f, #310653 60%, #451078); }
.stats-intro { max-width: 650px; margin-bottom: 48px; }.stats-intro h2 { margin-bottom: 0; }.stats-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.stat-card { min-height: 180px; padding: 28px 16px; position: relative; display: flex; align-items: baseline; justify-content: center; text-align: center; border: 1px solid rgba(255,255,255,.1); border-radius: 60% 40% 45% 55% / 52% 42% 58% 48%; background: linear-gradient(150deg, rgba(255,255,255,.13), rgba(255,255,255,.035)); overflow: hidden; }
.stat-card:nth-child(even) { transform: translateY(22px); }.stat-card span { margin-top: 22px; font: 900 34px Arial; }.stat-card small { color: var(--mint); font: 900 18px Arial; }.stat-card p { position: absolute; inset: auto 10px 24px; margin: 0; color: rgba(255,255,255,.62); font-size: 10px; }

.team-section { background: var(--soft); }.team-label { margin: 42px 0 20px; font-size: 17px; }.team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }.team-grid.managers { grid-template-columns: repeat(3, 1fr); max-width: 880px; }
.person-card { padding: 14px 14px 24px; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: 23px; transition: .3s ease; }.person-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }.person-photo { aspect-ratio: 1 / .9; display: grid; place-items: center; overflow: hidden; border-radius: 17px; background: linear-gradient(145deg, #efe7f8, #d8c5eb); }.person-photo img { width: 100%; height: 100%; object-fit: cover; }.person-photo span { color: var(--purple-700); font-size: 60px; font-weight: 900; }.person-card h3 { margin: 18px 0 3px; font-size: 15px; }.person-card p { margin: 0; color: var(--muted); font-size: 10px; }

.faq-section { background: #fff; }.faq-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 85px; align-items: start; }.faq-copy { position: sticky; top: 130px; }.faq-copy .button { margin-top: 28px; }
.accordion { border-top: 1px solid var(--line); }.faq-item { border-bottom: 1px solid var(--line); }.faq-item button { width: 100%; padding: 25px 2px; display: flex; justify-content: space-between; align-items: center; gap: 20px; text-align: start; color: var(--ink); border: 0; background: transparent; cursor: pointer; font-size: 14px; font-weight: 800; }.faq-item button i { flex: 0 0 35px; height: 35px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--purple-700); font: normal 21px Arial; transition: .3s ease; }.faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s ease; }.faq-answer > div { overflow: hidden; color: var(--muted); font-size: 12px; }.faq-answer p { margin: 0 0 24px; }.faq-item.open .faq-answer { grid-template-rows: 1fr; }.faq-item.open button i { color: #fff; background: var(--purple-700); transform: rotate(45deg); }

.final-cta { padding: 40px 0 100px; }.cta-card { min-height: 310px; padding: 58px 65px; display: flex; align-items: center; justify-content: space-between; gap: 50px; color: #fff; position: relative; overflow: hidden; border-radius: 36px; background: radial-gradient(circle at 85% 10%, rgba(255,255,255,.17), transparent 22%), linear-gradient(135deg, #5c0b99, #8e29d7 52%, #5f59e6); box-shadow: 0 35px 75px rgba(76, 13, 126, .25); }.cta-card::after { content: ""; position: absolute; width: 350px; height: 350px; inset-inline-end: -130px; inset-block-end: -230px; border: 50px solid rgba(255,255,255,.08); border-radius: 50%; }.cta-card > div { max-width: 720px; }.cta-card .section-kicker, .cta-card p { color: rgba(255,255,255,.72); }.cta-card h2 { margin-bottom: 7px; }.cta-card .button { flex: 0 0 auto; position: relative; z-index: 2; }

.site-footer { padding: 90px 0 28px; position: relative; color: rgba(255,255,255,.65); background: #0f031e; overflow: hidden; }.footer-glow { position: absolute; width: 600px; height: 300px; inset-inline-start: -150px; inset-block-start: -230px; border-radius: 50%; background: rgba(143,42,213,.35); filter: blur(90px); }.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 60px; position: relative; }.footer-brand img { width: 160px; height: 90px; object-fit: cover; border-radius: 16px; mix-blend-mode: screen; }.footer-brand p { max-width: 330px; }.footer-grid h3 { margin: 8px 0 18px; color: #fff; font-size: 13px; }.footer-grid p, .footer-grid a { margin: 0 0 9px; display: block; font-size: 11px; }.footer-grid a:hover { color: var(--mint); }.footer-bottom { margin-top: 65px; padding-top: 24px; display: flex; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.1); font-size: 9px; }
.footer-brand img { width: 170px; height: 112px; object-fit: contain; object-position: center; border-radius: 0; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }.reveal.visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; } .reveal { opacity: 1; transform: none; } }

@media (max-width: 1100px) {
    .nav-shell { grid-template-columns: 140px 1fr auto; }.main-nav { gap: 17px; }.main-nav a { font-size: 11px; }.language-switch { display: none; }
    .hero-grid { gap: 35px; }.hero h1 { font-size: 50px; }.path-grid { grid-template-columns: repeat(2, 1fr); }.feature-grid { gap: 55px; }.stats-grid { grid-template-columns: repeat(5, 1fr); }.team-grid { grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 820px) {
    .container { width: min(calc(100% - 28px), 700px); }.site-header { position: absolute; }.nav-shell { min-height: 78px; display: flex; justify-content: space-between; }.brand, .brand img { width: 110px; height: 54px; object-fit: contain; }.nav-actions .button { display: none; }.nav-toggle { display: grid; }
    .main-nav { position: absolute; inset: 76px 14px auto; padding: 20px; display: none; align-items: stretch; flex-direction: column; gap: 4px; color: var(--ink); background: rgba(255,255,255,.97); border-radius: 18px; box-shadow: var(--shadow); }.main-nav.open { display: flex; }.main-nav a { padding: 10px 12px; }.main-nav a::after { display: none; }.main-nav a:hover { color: var(--purple-700); }
    .language-switch { display: flex; }.hero { min-height: auto; padding: 125px 0 130px; }.hero-grid { grid-template-columns: minmax(0, 1fr); }.hero-grid > *, .hero-copy { min-width: 0; }.hero-copy { text-align: center; }.hero-copy > p { margin-inline: auto; }.eyebrow { justify-content: center; }.hero-actions, .hero-proof { width: 100%; justify-content: center; }.hero-visual { min-height: 460px; max-width: 560px; width: 100%; margin: 20px auto 0; }.visual-frame { inset: 30px 45px; }.score-progress { inset-inline-end: 10px; }
    .trust-grid { grid-template-columns: 1fr; }.trust-grid > div { min-height: 92px; }.trust-grid > div + div { border-inline-start: 0; border-top: 1px solid var(--line); }.section { padding: 85px 0; }.heading-row { display: block; }.heading-row .text-link { margin-top: 20px; }.skills-grid, .feature-grid, .faq-layout { grid-template-columns: 1fr; }.feature-copy { max-width: none; }.feature-visual { max-width: 600px; width: 100%; margin-inline: auto; }.stats-grid { grid-template-columns: repeat(3,1fr); }.stat-card:nth-child(even) { transform: none; }.faq-copy { position: static; }.team-grid, .team-grid.managers { grid-template-columns: repeat(2,1fr); max-width: none; }.cta-card { padding: 45px; align-items: flex-start; flex-direction: column; }.footer-grid { grid-template-columns: 1.3fr 1fr 1fr; }.footer-brand { grid-column: 1/-1; }
}
@media (max-width: 560px) {
    .brand, .brand img { width: 82px; height: 48px; }.nav-actions { gap: 7px; }.language-switch a { min-width: 27px; }.hero { padding-top: 112px; }.hero h1 { max-width: 100%; font-size: 34px; letter-spacing: -.02em; overflow-wrap: anywhere; }.hero-copy > p { font-size: 13px; }.hero-actions { flex-direction: column; }.hero-actions .button { width: 100%; }.hero-visual { min-height: 390px; }.visual-frame { inset: 32px 16px 25px; }.score-main { min-width: 138px; inset-inline-start: 6px; }.score-progress { inset-inline-end: 6px; inset-block-end: 5px; }.skill-listening { inset-inline-end: 0; }.skill-writing { inset-inline-start: 0; inset-block-end: 66px; }
    html[dir="rtl"] .hero h1 { font-size: 30px; line-height: 1.45; }
    .section-heading { text-align: start; }.path-grid { grid-template-columns: 1fr; }.path-card { min-height: 250px; }.skills-grid { gap: 14px; }.skill-card { min-height: 285px; padding: 28px; }.feature-visual { min-height: 450px; }.score-board { inset: 55px 22px; }.feature-badge { inset-inline-end: 0; }.stats-grid { grid-template-columns: repeat(2,1fr); }.stat-card:last-child { grid-column: 1/-1; width: 50%; justify-self: center; }.team-grid, .team-grid.managers { grid-template-columns: 1fr 1fr; gap: 10px; }.person-card { padding: 9px 9px 18px; }.faq-layout { gap: 50px; }.cta-card { padding: 38px 28px; border-radius: 26px; }.cta-card .button { width: 100%; }.footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 20px; }.footer-brand { grid-column: 1/-1; }.footer-bottom { flex-direction: column; gap: 8px; }
}
