/* TDNSC v8: editorial app-inspired redesign. All original features, routes & product access remain unchanged. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--display:'Space Grotesk','Outfit',system-ui,sans-serif;--font:'DM Sans',system-ui,sans-serif;--v7-ink:#17264a;--v7-blue:#2b60ed}
html{scroll-behavior:smooth}
body{background:#f7f9fe;color:#17264a;letter-spacing:-.006em}
.header{background:#ffffffef;border-bottom:1px solid #eef0f7;backdrop-filter:blur(18px)}
.header-inner{max-width:1350px;min-height:85px;padding-inline:32px}
.header .nav-link{font-family:var(--font);font-size:.83rem;font-weight:700;border-radius:30px;padding:10px 13px}
.header .nav-link.active{background:#e9f0ff;color:#224bc7}
.header .account-link{border-radius:100px;background:#f2f5fc;border:1px solid #e8edf7;box-shadow:none;color:#273c62}
main{max-width:1390px;padding:25px 24px 80px}
/* Oversized editorial hero on rich digital blue, with uncluttered copy. */
.hero.student-hero{
  background:radial-gradient(circle at 82% 85%,rgba(145,155,255,.25),transparent 39%),
             radial-gradient(circle at 6% 10%,rgba(78,124,252,.42),transparent 38%),
             linear-gradient(118deg,#0b1d46 0%,#102e75 63%,#203bc0 100%);
  border:0; border-radius:30px; box-shadow:none; min-height:660px;
  display:grid; grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:clamp(30px,5vw,84px);padding:clamp(42px,6.5vw,86px);
  margin-bottom:0;overflow:hidden;position:relative;isolation:isolate;
}
.hero.student-hero::before{content:'';position:absolute;left:auto;right:-85px;top:-215px;width:490px;height:490px;border-radius:50%;border:1px solid rgba(202,227,255,.17);box-shadow:0 0 0 73px rgba(182,206,255,.024),0 0 0 145px rgba(182,206,255,.024);pointer-events:none;z-index:0}
.hero.student-hero::after{content:'';position:absolute;width:300px;height:300px;right:28%;bottom:-245px;background:#7197ff22;filter:blur(52px);pointer-events:none;z-index:0}
.student-hero .hero-copy{max-width:690px;z-index:2}
.student-hero h1{font-family:var(--display);font-weight:700;font-size:clamp(3.25rem,5.55vw,6.1rem);line-height:1.035;letter-spacing:-.075em;color:#fff;margin:0 0 28px!important;text-wrap:balance}
.student-hero h1 em{font-style:normal;display:inline-block;letter-spacing:-.073em;color:#9fc8ff;background:none;-webkit-text-fill-color:currentColor;padding:0}
.student-hero .intro{max-width:43ch;color:#d4e1ff;font:500 clamp(1rem,1.5vw,1.21rem)/1.5 var(--font);letter-spacing:-.014em;margin-bottom:34px}
.student-hero .actions{gap:12px;display:flex;flex-wrap:wrap}
.student-hero .actions .btn{min-height:59px;padding:16px 22px;gap:15px;border-radius:13px;font:750 .95rem/1.2 var(--font);transition:transform .15s ease,background .15s ease,border-color .15s ease;box-shadow:none}
.student-hero .actions .btn:hover{transform:translateY(-2px)}
.student-hero .actions .primary{color:#17336c;background:white;border:1.5px solid white}
.student-hero .actions .primary:hover{background:#eaf3ff;color:#17336c;border-color:#eaf3ff}
.student-hero .actions .secondary{color:#f8fbff;background:#ffffff0d;border:1.5px solid #d2e2ff78;backdrop-filter:blur(8px)}
.student-hero .actions .secondary:hover{color:#fff;background:#ffffff21;border-color:#e9f1ff}
.student-hero .v7-preview-wrap{align-self:center;justify-self:end;transform:none;position:relative;z-index:2;width:100%;min-height:0;padding:30px;background:#fff;border-radius:22px;border:1px solid #ffffffaa;box-shadow:0 26px 80px #020b284c;gap:0}
.student-hero .v7-preview-wrap:before{content:'';position:absolute;z-index:-1;inset:28px -20px -23px 24px;border-radius:22px;background:#8db5ff38;transform:rotate(4deg);filter:blur(0);pointer-events:none}
.v7-preview-top{margin-bottom:28px}
.v7-preview-avatar{width:45px;height:45px;border-radius:13px;background:linear-gradient(135deg,#225ce9,#8ba7ff);color:white;font-size:1.3rem}
.v7-preview-top strong{font:750 .8rem var(--font);color:#1a2b52;letter-spacing:.03em}
.v7-preview-top small{font-size:.77rem;color:#7b8aa5}
.v8-preview-live{margin-left:auto;color:#3263ce;background:#eaf0ff;border-radius:7px;padding:7px 9px;font:800 .63rem var(--font);letter-spacing:.07em}
.v7-preview-progress{font-size:.73rem;color:#7a8aa2}
.v7-preview-bar{height:6px;background:#e9effa;margin:9px 0 27px}.v7-preview-bar span{background:#386df0}
.v7-preview-label{font:800 .7rem var(--font);color:#5374d1;letter-spacing:.08em}
.v7-preview-wrap h2{font:700 clamp(1.85rem,2.7vw,2.75rem)/1.12 var(--display);letter-spacing:-.055em;color:#162b54;margin-bottom:12px}
.v7-preview-hint{font-size:.87rem;color:#8290a6;margin-bottom:25px}
.v7-flip{background:#f1f5ff;border:1px solid #dfe7fa;border-radius:12px;color:#2453bc;margin-bottom:24px}
.v7-flip summary{padding:17px 18px;font:750 .85rem var(--font)}
.v7-preview-bottom{border-top:1px solid #eef1f8;padding-top:19px}
.student-proof{background:#fff;border:1px solid #e5ebf6;border-top:0;border-radius:0 0 24px 24px;margin:0 0 80px;box-shadow:none;padding:19px}
.student-proof span{border-color:#e8edf6}.student-proof strong{color:#2158dd;font-family:var(--display)}
.student-proof small{color:#748199;font-weight:600}
/* An intentional cohesive restyle of below-the-fold student navigation. */
.student-home .eyebrow{color:#315fd3;letter-spacing:.13em;font-size:.7rem}
.student-home .section-intro h2{font-family:var(--display);font-weight:700;letter-spacing:-.068em;color:#16244b;font-size:clamp(2.3rem,4vw,3.45rem)}
.student-home .section-intro h2 em{color:#356bf2}
.student-home .path-cards{gap:17px}
.student-home .path-card,.student-home .path-card:nth-child(2),.student-home .path-card:nth-child(3){background:#fff!important;border:1px solid #e7edf8;box-shadow:0 8px 34px #12327608;border-radius:20px;padding:27px;min-height:272px;transition:transform .15s,box-shadow .15s}
.student-home .path-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #12327616}
.student-home .path-card:first-child{background:#1d4fe0!important;border-color:#1d4fe0;box-shadow:0 16px 35px #245fe020}
.student-home .path-card:nth-child(3){background:#eaf0ff!important;border-color:#e2e9ff}
.student-home .path-icon{border-radius:12px}.student-home .path-card h3{font-family:var(--display);letter-spacing:-.045em;font-size:1.85rem}
.student-home .path-card p{font-size:.91rem;line-height:1.48}
.student-home .student-toolkit{border-radius:28px}.student-home .quick-section h2{font-family:var(--display);letter-spacing:-.06em}
.student-home .offer-card,.student-home .rewards-teaser,.student-home .calm-strip,.student-home .existing-learner{border-radius:24px}
.student-home .offer-card h3,.student-home .rewards-teaser h2,.student-home .calm-strip h2{font-family:var(--display);letter-spacing:-.05em}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e6b6ff!important;outline-offset:3px}
/* Smaller laptop */
@media(max-width:1150px){.hero.student-hero{padding:48px;gap:35px;min-height:615px;grid-template-columns:minmax(0,1.06fr) minmax(310px,.94fr)}.student-hero h1{font-size:clamp(2.9rem,5.1vw,5.2rem)}.student-hero .actions .btn{font-size:.86rem;padding:14px 16px}}
/* Mobile: strong hierarchy, true thumb targets, no fake app overflow */
@media(max-width:760px){
  .header-inner{padding:10px 16px;min-height:72px}.header .brand-logo-crop{width:172px}
  main{padding:12px 12px 80px}
  .hero.student-hero{display:flex;flex-direction:column;gap:35px;padding:37px 25px 34px;border-radius:23px;min-height:0;background:radial-gradient(circle at 90% 75%,#3862c873,transparent 41%),linear-gradient(148deg,#10234d 0%,#183b9d 100%)}
  .hero.student-hero::before{right:-160px;top:-205px;opacity:.7}
  .student-hero h1{font-size:clamp(2.7rem,10.15vw,4.2rem);line-height:1.035;letter-spacing:-.073em;margin-bottom:20px!important}
  .student-hero .intro{font-size:1.02rem;line-height:1.5;max-width:29ch;margin-bottom:26px}
  .student-hero .actions{flex-direction:column;gap:10px}
  .student-hero .actions .btn{width:100%;min-height:56px;justify-content:center;font-size:.94rem;padding:14px 12px}
  .student-hero .v7-preview-wrap{width:100%;padding:22px 20px 20px;border-radius:19px;box-shadow:0 16px 44px #00133f55}
  .student-hero .v7-preview-wrap:before{display:none}
  .v7-preview-top{margin-bottom:21px}.v7-preview-bar{margin-bottom:21px}.v7-preview-wrap h2{font-size:1.85rem}
  .student-proof{border-radius:0 0 20px 20px;margin-bottom:56px;padding:16px 4px}
  .student-proof span{padding:0 6px}.student-proof strong{font-size:1.35rem}
  .student-home .path-cards{gap:10px}
  .student-home .path-card,.student-home .path-card:nth-child(2),.student-home .path-card:nth-child(3){border-radius:16px;padding:22px;min-height:0}
  .student-home .path-card h3{font-size:1.5rem}
}
@media(max-width:375px){.hero.student-hero{padding:31px 18px 27px}.student-hero h1{font-size:clamp(2.5rem,10vw,3.15rem)}.student-hero .intro{font-size:.95rem}.student-hero .actions .btn{font-size:.85rem}.v7-preview-wrap h2{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.student-home *{transition:none!important}.student-hero .actions .btn:hover,.student-home .path-card:hover{transform:none}}
/* Keep the content card crisp rather than placing decorative layers across text. */
.student-hero .v7-preview-wrap:before{display:none}
.v8-preview-live{white-space:nowrap;flex-shrink:0;font-size:.62rem}
@media(max-width:760px){.v7-preview-top{gap:9px}.v7-preview-avatar{width:41px;height:41px}.v8-preview-live{padding:6px 7px;font-size:.6rem}.v7-preview-top strong{font-size:.73rem}.v7-preview-top small{font-size:.71rem}}
