:root{
  --ink:#123b5d;
  --navy:#0a2942;
  --blue:#248bd1;
  --cyan:#84d9dc;
  --cyan-soft:#e9f9fa;
  --coral:#f86b70;
  --pink:#e95e9c;
  --green:#49b18a;
  --yellow:#ffd765;
  --paper:#f7fafc;
  --muted:#637686;
  --line:#dce8ee;
  --shadow:0 28px 80px rgba(18,59,93,.12);
}

body{font-family:"Plus Jakarta Sans",sans-serif;background:var(--paper);letter-spacing:-.01em}
h1,h2{font-family:"DM Serif Display",serif;font-weight:400;letter-spacing:-.035em}
h3{font-family:"Plus Jakarta Sans",sans-serif;font-weight:750;letter-spacing:-.03em}
h1{font-size:clamp(3.2rem,6.5vw,6.35rem);line-height:.94}
h2{font-size:clamp(2.35rem,4.2vw,4.25rem);line-height:1.02}
.lead{font-size:1.08rem;line-height:1.8}
.section{padding:116px 0}
.section-head{margin-bottom:52px}
.eyebrow{font-size:.72rem;letter-spacing:.18em;color:#326275}
.eyebrow:before{width:34px;height:1px;background:var(--cyan)}
.btn{min-height:56px;padding:0 26px;border-radius:999px;font-size:.92rem;letter-spacing:-.01em}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--green),#2f9e80);box-shadow:0 12px 30px rgba(73,177,138,.25)}
.btn-primary:hover{background:linear-gradient(135deg,#3ba57e,#238b6d)}
.btn-dark{background:var(--ink)}

.topbar{background:linear-gradient(90deg,var(--coral),var(--pink));color:#fff;letter-spacing:.01em}
.topbar .wrap{min-height:40px;justify-content:center;font-family:"Noto Sans Malayalam",sans-serif;font-size:.9rem}
.topbar strong{color:#fff}
header{background:rgba(255,255,255,.88);border-bottom:1px solid rgba(199,214,222,.68);box-shadow:0 8px 30px rgba(7,28,44,.03)}
nav{min-height:82px}
.brand img{width:64px;height:64px}
.nav-links{gap:30px;color:#39505d;font-size:.92rem}
.nav-links a{position:relative}
.nav-links a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--cyan);transition:right .2s}
.nav-links a:not(.nav-cta):hover:after,.nav-links a.active:after{right:0}
.nav-cta{min-height:46px;padding:0 20px;border-radius:999px;background:var(--ink)}

.hero{color:var(--ink);background:linear-gradient(140deg,#fff 0%,#f8fcff 48%,#eaf9fa 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(36,139,209,.13) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(to right,#000,transparent 58%);opacity:.3}
.hero:after{content:"";position:absolute;width:560px;height:560px;right:-260px;top:-280px;border:1px solid rgba(233,94,156,.28);border-radius:50%;box-shadow:0 0 0 72px rgba(248,107,112,.055),0 0 0 144px rgba(132,217,220,.06)}
.hero-grid{min-height:720px;grid-template-columns:1.05fr .95fr;gap:76px;padding:76px 0 56px}
.hero-copy{position:relative;z-index:3}
.hero .eyebrow{color:#326275}
.hero h1{max-width:720px;font-size:clamp(2.7rem,5vw,5rem)}
.hero h1 span{display:block;background:linear-gradient(90deg,var(--coral),var(--pink) 65%);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.hero-copy .lead{max-width:610px;color:#506570;margin:24px 0 32px}
.malayalam{color:var(--ink);font-family:"Noto Sans Malayalam",sans-serif;margin-top:22px}
.ml-display{max-width:760px;margin:22px 0 18px;font-size:clamp(2.45rem,4.5vw,4.45rem);font-weight:700;line-height:1.28;letter-spacing:-.045em;background:linear-gradient(90deg,#d9354d 0%,var(--pink) 45%,var(--blue) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-copy>.lead[lang="ml"]{font-family:"Noto Sans Malayalam",sans-serif;font-size:1.12rem;line-height:1.95;letter-spacing:0}
.hero .btn-outline{color:var(--ink);border-color:#a7bac4;background:rgba(255,255,255,.38)}
.hero .btn-outline:hover{background:#fff}
.hero-note{margin-top:34px;color:#4b6470;font-size:.82rem;letter-spacing:.02em}
.hero-note{font-family:"Noto Sans Malayalam",sans-serif}
.hero-note i{background:var(--coral)}
.hero-visual{min-height:596px;border-radius:48px 48px 180px 48px;background:linear-gradient(145deg,#248bd1 0%,#2f9bc2 42%,#84d9dc 100%);box-shadow:0 36px 80px rgba(18,59,93,.22);overflow:visible}
.hero-visual:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.12);border-radius:36px 36px 164px 36px}
.portrait-halo{width:430px;height:430px;top:72px;border-color:rgba(255,255,255,.16)}
.portrait-halo:before,.portrait-halo:after{border-color:rgba(96,226,211,.22)}
.portrait-monogram{position:absolute;left:30px;top:24px;color:rgba(255,255,255,.05);font:400 9rem/1 "DM Serif Display",serif;letter-spacing:-.1em}
.hero-photo{max-height:590px}
.hero-photo-new{width:min(100%,490px);max-height:610px;object-position:center bottom;filter:drop-shadow(0 30px 28px rgba(7,28,44,.3))}
.route-pill{top:54px;right:-26px;display:flex;flex-direction:column;gap:1px;padding:14px 20px;color:var(--ink);background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.7);border-radius:15px;box-shadow:0 18px 45px rgba(7,28,44,.18);transform:none}
.route-pill small{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.route-pill strong{font-size:.9rem}
.hero-proof-card{position:absolute;z-index:4;left:-36px;bottom:42px;display:flex;flex-direction:column;padding:17px 20px;color:#fff;background:rgba(5,25,39,.84);border:1px solid rgba(255,255,255,.15);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.16);backdrop-filter:blur(12px)}
.hero-proof-card span{color:#ffd7e7;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}
.hero-proof-card strong{margin-top:3px;font-size:.94rem}

.proof{position:relative;z-index:5;margin-top:-18px;background:transparent;border:0}
.proof .proof-grid{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 60px rgba(7,28,44,.09);overflow:hidden}
.proof-item{padding:31px 30px}
.proof-item strong{font:400 2rem "DM Serif Display",serif;color:var(--ink)}
.proof-item span{font-size:.8rem;text-transform:uppercase;letter-spacing:.09em;color:#75848e}

.section-white{background:#fff}
.priority-grid{gap:24px}
.card{padding:32px;border-color:#e0e9ee;border-radius:28px;box-shadow:0 14px 45px rgba(7,28,44,.055);transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-7px);border-color:#bad0d8;box-shadow:0 28px 70px rgba(7,28,44,.12)}
.card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--coral),var(--pink),var(--blue));opacity:0;transition:opacity .25s}
.card:hover:before,.card.featured:before{opacity:1}
.card.featured{color:var(--ink);background:#fff;border-color:#d8e4e9}
.card.featured p,.card.featured .meta{color:var(--muted)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:30px}
.card-icon{width:52px;height:52px;margin:0;color:#174d56;background:var(--cyan-soft);border:1px solid #ccebed;border-radius:15px;font-size:.78rem;font-weight:800;letter-spacing:.05em}
.signature-label{padding:7px 10px;color:#745615;background:#fff6dc;border:1px solid #f1dfac;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.card h3{font-size:1.34rem}
.card-ml{min-height:3.25em;margin:0 0 10px!important;color:var(--ink)!important;font-family:"Noto Sans Malayalam",sans-serif;font-size:1.25rem!important;font-weight:700;line-height:1.48!important;letter-spacing:-.02em}
.priority-grid .course-summary{min-height:6.2em}
.card .price,.card.featured .price{font:400 1.8rem "DM Serif Display",serif;color:var(--ink)}
.offer-badge{align-self:flex-start;display:inline-flex;margin:6px 0 2px;padding:7px 11px;color:#fff;background:linear-gradient(90deg,var(--coral),var(--pink));border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 20px rgba(233,94,156,.18)}
.offer-price{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap}
.offer-price del{color:#87939b;font-family:"Plus Jakarta Sans",sans-serif;font-size:.88rem;font-weight:600;text-decoration-thickness:2px}
.offer-price strong{color:var(--ink);font:400 1.12em "DM Serif Display",serif}
.card .price.offer-price{margin-top:7px}
.fee-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;font-family:"Plus Jakarta Sans",sans-serif!important}
.fee-options>span{display:flex;min-width:0;flex-direction:column;gap:2px;padding:10px 11px;background:#f3f8fb;border:1px solid #dce8ee;border-radius:13px}
.fee-options small{color:#6e7f89;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fee-options strong{color:var(--ink);font-size:1.12rem;line-height:1.2;white-space:nowrap}
.card .price.fee-options{margin:7px 0 4px}
.card p{font-size:.92rem;line-height:1.7}
.card .meta{font-size:.78rem;letter-spacing:.02em}
.card a.more,.card.featured a.more{display:flex;align-items:center;justify-content:space-between;margin-top:25px;padding-top:18px;color:#234c5c;border-top:1px solid var(--line);font-size:.83rem;letter-spacing:.02em}
.card a.more span{width:28px;height:28px;display:grid;place-items:center;background:#eff6f8;border-radius:50%}
.course-teachers-english .card-icon{color:#a52f55;background:#fff0f5;border-color:#f7cade}
.course-premium-english .card-icon{color:#14699d;background:#eaf7ff;border-color:#cce8fa}
.course-english-mastery .card-icon{color:#277e77;background:#e8fafa;border-color:#ccebec}

.route-panel{gap:90px}
.step{padding:28px;border-radius:22px;border-color:#dde7ec;box-shadow:0 12px 36px rgba(7,28,44,.04)}
.step-num{color:var(--ink);background:#e5f6f3;border:1px solid #c7e9e2;border-radius:50%;font-size:.77rem}
.step h3{font-size:1.03rem}
.step p{font-size:.9rem}
.dark-panel{position:relative;padding:72px;background:linear-gradient(135deg,#123b5d,#176d94);border-radius:42px;overflow:hidden}
.dark-panel:after{content:"EB";position:absolute;right:-18px;bottom:-56px;color:rgba(255,255,255,.035);font:400 15rem/1 "DM Serif Display",serif;letter-spacing:-.1em}
.dark-panel h2{max-width:720px}
.feature-grid{gap:16px;margin-top:42px}
.feature{position:relative;z-index:2;padding:23px;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.1);border-radius:18px}
.feature b{display:inline-grid;width:30px;height:30px;place-items:center;margin-bottom:9px;color:#9ae0d7;border:1px solid rgba(154,224,215,.28);border-radius:50%;font-size:.68rem}

.page-hero{position:relative;color:var(--ink);background:linear-gradient(130deg,#fff,#edf9fb);padding:108px 0;overflow:hidden}
.page-hero:after{content:"";position:absolute;width:450px;height:450px;right:-160px;top:-200px;border:1px solid rgba(233,94,156,.28);border-radius:50%;box-shadow:0 0 0 70px rgba(248,107,112,.05),0 0 0 140px rgba(132,217,220,.06)}
.page-hero-grid,.page-hero>.wrap,.page-hero>.narrow{position:relative;z-index:2}
.page-hero h1{font-size:clamp(3.1rem,5.7vw,5.65rem)}
.page-hero h1 span{background:linear-gradient(90deg,var(--coral),var(--pink),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.ml-page-title{max-width:920px;font-family:"Noto Sans Malayalam",sans-serif!important;font-size:clamp(2.8rem,5.4vw,5.5rem)!important;font-weight:700!important;line-height:1.28!important;letter-spacing:-.045em!important}
.ml-page-title span{font-style:normal!important}
.course-ml-hero{margin:18px 0 8px;font-family:"Noto Sans Malayalam",sans-serif;font-size:clamp(1.8rem,3vw,3.15rem);font-weight:700;line-height:1.35;letter-spacing:-.035em;background:linear-gradient(90deg,var(--coral),var(--pink),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
.course-ml-summary{max-width:720px;margin:16px 0 8px;color:#31687d;font-family:"Noto Sans Malayalam",sans-serif;font-size:1.18rem;line-height:1.85;letter-spacing:0}
.page-hero .lead{color:#506570}
.page-hero .eyebrow{color:#326275}
.crumbs{color:#718590;font-size:.78rem;letter-spacing:.02em}
.crumbs a{color:#22566a}
.price-box{padding:34px;border:1px solid #dbe6eb;border-radius:28px;box-shadow:0 24px 70px rgba(7,28,44,.1)}
.price-box>span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#7a8991}
.price-box .fee{margin-top:4px;font:400 2.65rem "DM Serif Display",serif;color:var(--ink)}
.price-box .offer-badge{margin-top:14px}
.price-box .fee.offer-price{margin-top:8px;gap:14px}
.price-box .fee.offer-price del{font-size:1.05rem}
.price-box .fee.fee-options{margin-top:12px;font-family:"Plus Jakarta Sans",sans-serif}
.price-box .fee.fee-options strong{font-size:1.45rem}
.course-side{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
.course-portrait{position:relative;min-height:470px;display:flex;align-items:flex-end;justify-content:center;border:1px solid rgba(255,255,255,.78);border-radius:34px;box-shadow:0 30px 75px rgba(18,59,93,.16);overflow:hidden}
.course-portrait:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.38);border-radius:25px}
.course-portrait img{position:relative;z-index:2;width:auto;max-width:100%;height:465px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 22px 24px rgba(18,59,93,.25))}
.course-portrait-teachers-english{background:linear-gradient(145deg,#dff5fb,#8fd8e8 48%,#ffccd7)}
.course-portrait-english-mastery{background:linear-gradient(145deg,#fff1f5,#f7a8bd 50%,#bcebed)}
.course-portrait-premium-english{background:linear-gradient(145deg,#e8f2ff,#8fbad9 48%,#f3bfd3)}
.course-side .price-box{position:relative;z-index:4;width:calc(100% - 34px);margin:-64px auto 0}
.tag{padding:8px 12px;color:#25596b;background:rgba(255,255,255,.7);border:1px solid #d6e5e9;font-size:.72rem;letter-spacing:.04em}

.about-hero{padding-bottom:0}
.about-portrait{position:relative;align-self:end;min-height:540px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(145deg,#dff7f7 0%,#7fd4d6 50%,#ffbbc9 100%);border:1px solid rgba(255,255,255,.9);border-radius:42px 42px 0 0;box-shadow:0 28px 75px rgba(18,59,93,.16);overflow:hidden}
.about-portrait:before{content:"";position:absolute;inset:18px 18px 0;border:1px solid rgba(255,255,255,.48);border-bottom:0;border-radius:30px 30px 0 0}
.about-portrait img{position:relative;z-index:2;width:auto;max-width:100%;height:535px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 24px 28px rgba(18,59,93,.24))}
.about-monogram{position:absolute;left:24px;top:18px;color:rgba(18,59,93,.07);font:400 8rem/1 "DM Serif Display",serif;letter-spacing:-.1em}
.about-caption{position:absolute;z-index:4;right:20px;bottom:22px;display:flex;flex-direction:column;padding:13px 17px;color:#fff;background:rgba(8,35,53,.84);border:1px solid rgba(255,255,255,.18);border-radius:14px;box-shadow:0 16px 38px rgba(7,28,44,.16);backdrop-filter:blur(10px)}
.about-caption small{font-size:.61rem;letter-spacing:.13em;text-transform:uppercase;color:#cceff0}
.about-caption strong{font-size:.91rem}

.content-grid{gap:78px}
.prose h2{font:400 2.35rem/1.15 "DM Serif Display",serif;color:var(--ink)}
.prose p,.prose li{color:#4c606c;line-height:1.8}
.check-list{gap:14px}
.check-list li{padding:17px 18px;border-color:#dfe9ee;border-radius:16px;box-shadow:0 7px 25px rgba(7,28,44,.035)}
.check-list li:before{color:var(--cyan)}
.sidebar-card{padding:30px;border-radius:24px;box-shadow:0 18px 50px rgba(7,28,44,.07)}
.sidebar-card h3{font-size:1rem;text-transform:uppercase;letter-spacing:.08em}
.sidebar-card li{color:#536874;font-size:.9rem}
summary{font-size:1rem}

.test-shell{border-radius:36px;border-color:#d8e4e9;box-shadow:0 28px 80px rgba(7,28,44,.1)}
.test-side{padding:52px;background:linear-gradient(150deg,#071c2c,#0d4055)}
.test-side h2{font-size:3.3rem}
.test-main{padding:52px}
.option{background:#f7fafb;border-color:#dfe8ed;border-radius:16px}
.option:hover{border-color:var(--cyan);background:#ecf8f6}
.option.selected{background:var(--ink);border-color:var(--ink)}
.next{background:var(--ink);border-radius:999px!important}

.article-card .meta{font-size:.66rem;text-transform:uppercase;letter-spacing:.12em}
.contact-item{padding:20px;border-radius:18px;box-shadow:0 8px 28px rgba(7,28,44,.035)}
.final-cta{padding:88px 0;background:linear-gradient(125deg,#123b5d,#166989)}
.final-cta h2{max-width:650px}
.final-cta .ml-kicker{margin:0 0 10px;color:#ffd4e4;font-family:"Noto Sans Malayalam",sans-serif;font-size:clamp(1.55rem,2.5vw,2.35rem);font-weight:700;line-height:1.45}
.final-cta p{font-family:"Noto Sans Malayalam",sans-serif;font-size:1rem;line-height:1.8}
footer{background:#061722}
.footer-brand img{border-radius:18px}

.topbar .wrap{gap:18px;justify-content:space-between}
.topbar-followers{white-space:nowrap;font-weight:600;letter-spacing:.02em}
.topbar-followers:before{content:"•";margin-right:18px;color:#66d7ef}

.ml-section-title{max-width:920px;font-family:"Noto Sans Malayalam",sans-serif;font-size:clamp(2.35rem,4.4vw,4.4rem);font-weight:700;line-height:1.35;letter-spacing:-.04em}
.malayalam-band{position:relative;padding:100px 0;color:#fff;background:linear-gradient(120deg,var(--coral),var(--pink) 54%,#b34ba3);overflow:hidden}
.malayalam-band:after{content:"";position:absolute;width:420px;height:420px;right:-90px;top:-190px;border:1px solid rgba(255,255,255,.24);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.06),0 0 0 140px rgba(255,255,255,.035)}
.malayalam-band-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.7fr 1fr;align-items:end;gap:28px 70px}
.malayalam-band .eyebrow{grid-column:1/-1;color:#fff;font-family:"Noto Sans Malayalam",sans-serif;font-size:.9rem;letter-spacing:0}
.malayalam-band .eyebrow:before{background:#fff}
.malayalam-band h2{font-family:"Noto Sans Malayalam",sans-serif;font-size:clamp(2.55rem,4.7vw,4.8rem);font-weight:700;line-height:1.35;letter-spacing:-.045em}
.malayalam-band h2 span{color:#fff3b7}
.malayalam-band-grid>p:last-child{max-width:500px;font-family:"Noto Sans Malayalam",sans-serif;font-size:1.12rem;line-height:2}

@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;min-height:auto;gap:56px}
  .hero-copy{padding-top:12px}
  .hero-visual{max-width:590px;width:100%;margin:auto}
  .route-panel{gap:50px}
  .malayalam-band-grid{grid-template-columns:1fr;align-items:start}
  .course-side{max-width:590px;width:100%;margin:0 auto}
  .about-portrait{max-width:590px;width:100%;margin:0 auto}
}
@media(max-width:640px){
  h1{font-size:clamp(3rem,15vw,4.5rem)}
  h2{font-size:clamp(2.15rem,11vw,3.2rem)}
  .section{padding:82px 0}
  .hero-grid{padding-top:54px}
  .ml-display{font-size:clamp(2.25rem,10vw,3.25rem);line-height:1.38}
  .hero h1{font-size:clamp(2.45rem,12vw,3.8rem)}
  .hero-copy>.lead[lang="ml"]{font-size:1.02rem}
  .hero-visual{min-height:450px;border-radius:32px 32px 110px 32px}
  .hero-visual:before{border-radius:23px 23px 96px 23px}
  .hero-photo{max-height:455px}
  .hero-photo-new{max-height:470px;width:min(100%,390px)}
  .route-pill{top:28px;right:-4px}
  .hero-proof-card{left:-4px;bottom:18px}
  .proof{margin-top:20px}
  .proof .proof-grid{border-radius:20px}
  .dark-panel{padding:38px 24px;border-radius:28px}
  .page-hero{padding:72px 0}
  .ml-page-title{font-size:clamp(2.45rem,11vw,3.6rem)!important;line-height:1.4!important}
  .course-ml-hero{font-size:clamp(1.75rem,8vw,2.55rem)}
  .course-portrait{min-height:400px;border-radius:28px}
  .course-portrait img{height:405px}
  .course-side .price-box{width:calc(100% - 20px);margin-top:-48px}
  .about-portrait{min-height:430px;border-radius:30px 30px 0 0}
  .about-portrait:before{inset:13px 13px 0;border-radius:21px 21px 0 0}
  .about-portrait img{height:425px}
  .about-caption{right:14px;bottom:14px}
  .malayalam-band{padding:72px 0}
  .malayalam-band h2{font-size:clamp(2.25rem,10vw,3.35rem)}
  .test-side,.test-main{padding:32px 23px}
  .test-side h2{font-size:2.6rem}
  .topbar .wrap{gap:8px 14px;justify-content:center;flex-wrap:wrap;padding:6px 0}
  .topbar-followers:before{content:"";margin:0}
}
