/* StudyVest v18.8 — visual quality and design-system pass
   Purpose: tighter hierarchy, calmer surfaces, consistent spacing, restrained imagery,
   and one visual language across public, account, Pro and Campus experiences. */
:root{
  --sv88-navy:#081f3f;
  --sv88-navy-2:#0d2d59;
  --sv88-blue:#245eea;
  --sv88-blue-2:#1748c9;
  --sv88-sky:#edf4ff;
  --sv88-bg:#f8fafc;
  --sv88-card:#ffffff;
  --sv88-ink:#102038;
  --sv88-muted:#617087;
  --sv88-line:#e1e7f0;
  --sv88-success:#15805f;
  --sv88-radius:18px;
  --sv88-radius-lg:26px;
  --sv88-shadow:0 16px 42px rgba(8,31,63,.08);
  --sv88-shadow-lg:0 28px 72px rgba(8,31,63,.12);
}

/* Foundation */
body{background:var(--sv88-bg);color:var(--sv88-ink);letter-spacing:-.005em}
.shell{width:min(1200px,calc(100% - 48px))}
.section{padding:82px 0}
.section-head{margin-bottom:36px}
.section-head p{line-height:1.7;color:var(--sv88-muted)}
h1,h2,h3{letter-spacing:-.045em}
h1{font-size:clamp(46px,5.7vw,78px);line-height:.98}
h2{font-size:clamp(36px,4.2vw,60px);line-height:1.02}
h3{line-height:1.08}
p{line-height:1.65}
.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--sv88-blue)}
.small-note{color:var(--sv88-muted)!important}

/* Header */
.header{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(18,54,104,.08);box-shadow:0 8px 26px rgba(8,31,63,.045)}
.header-row{height:74px;gap:18px}
.brand-mark{width:138px}
.nav{gap:4px}
.nav a{padding:9px 10px;border-radius:10px;font-size:13px;font-weight:720;text-decoration:none!important;color:#253650}
.nav a:hover,.nav a.active{background:#eef4ff;color:var(--sv88-blue)}
.header-cta{padding:11px 17px!important;font-size:13px!important;box-shadow:none!important}
.announcement{padding:7px 0;background:var(--sv88-navy);font-size:11px}

/* Buttons */
.button{min-height:44px;padding:11px 18px;border-radius:12px!important;box-shadow:none!important;font-weight:780}
.button.primary{background:var(--sv88-blue)!important;border-color:var(--sv88-blue)!important;box-shadow:0 10px 24px rgba(36,94,234,.18)!important}
.button.primary:hover{background:var(--sv88-blue-2)!important;transform:translateY(-1px)}
.button.navy{background:var(--sv88-navy)!important;border-color:var(--sv88-navy)!important}

/* Public homepage: product-led, closer to StudyVest poster direction */
.v9-hero{min-height:690px;background:#fff;color:var(--sv88-ink);border-bottom:1px solid var(--sv88-line)}
.v9-hero video{display:none!important}
.v9-hero:before{background:radial-gradient(circle at 79% 27%,rgba(36,94,234,.11),transparent 29%),linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.v9-hero:after{display:none}
.v9-hero .hero-inner{grid-template-columns:minmax(0,.92fr) minmax(420px,.88fr);gap:72px;padding:88px 0 64px}
.v9-hero .hero-copy{color:var(--sv88-ink)}
.v9-hero .hero-copy .eyebrow{color:var(--sv88-blue)!important}
.v9-hero h1{font-size:clamp(54px,5.7vw,84px);color:var(--sv88-navy);text-shadow:none;max-width:680px}
.v9-hero p{color:#526178;font-size:18px;max-width:600px}
.v9-hero .button.secondary{background:#fff;color:var(--sv88-navy);border-color:#cbd8ea}
.v9-hero .button.secondary:hover{background:#f1f6ff;border-color:#a8bddd}
.v9-hero .trust-row{margin-top:34px;gap:8px;color:#526178}
.v9-hero .trust-row span{padding:7px 10px;background:#f7f9fc;border:1px solid var(--sv88-line);backdrop-filter:none}
.v9-hero .trust-row span:before{color:var(--sv88-blue)}
.v9-hero .video-toggle{display:none!important}
.hero-product-visual{filter:none}
.hero-board{padding:24px;border-radius:26px;background:linear-gradient(145deg,var(--sv88-navy),var(--sv88-navy-2));border:0;box-shadow:var(--sv88-shadow-lg);backdrop-filter:none}
.hero-board:before{display:none}
.hero-growth-card{border-radius:18px;box-shadow:0 12px 34px rgba(0,0,0,.12)}
.hero-learning-grid>div{min-height:110px;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.10)}

/* Public cards */
.path-card,.simple-card,.tool-card,.article-card,.course-card,.dashboard-card,.pricing-card,.calc-card,.account-panel,.member-panel,.sv13-card{
  border:1px solid var(--sv88-line)!important;
  box-shadow:0 10px 28px rgba(8,31,63,.055)!important;
}
.path-card,.simple-card,.tool-card,.article-card,.course-card,.calc-card{border-radius:var(--sv88-radius)!important}
.path-card:hover,.simple-card:hover,.tool-card:hover,.article-card:hover{transform:translateY(-3px)!important;box-shadow:var(--sv88-shadow)!important}
.path-card:before{height:3px;background:linear-gradient(90deg,var(--sv88-blue),#7da5ff)}
.path-icon{border-radius:14px}
.featured-article{border-radius:var(--sv88-radius-lg);padding:36px;box-shadow:var(--sv88-shadow)}
.newsletter-panel{border-radius:var(--sv88-radius-lg);padding:58px}

/* Keep photographs deliberate and contained rather than dominant */
.visual-story-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);gap:20px}
.media-story-main,.media-story-card,.media-frame,.feature-image{overflow:hidden;border-radius:20px!important;box-shadow:0 14px 36px rgba(8,31,63,.09)!important}
.media-story-main img{max-height:430px;object-fit:cover}
.media-story-card img{max-height:225px;object-fit:cover}
.media-frame img{max-height:440px;width:100%;object-fit:cover}
.media-story-main figcaption,.media-story-card figcaption{padding:18px 20px}

/* Learn page */
.learning-hero{background:linear-gradient(180deg,#fff,#f6f9fe)!important;border-bottom:1px solid var(--sv88-line)}
.learning-hero-grid{gap:56px!important;align-items:center!important;padding-top:72px!important;padding-bottom:72px!important}
.learning-hero h1{max-width:660px!important;color:var(--sv88-navy)}
.learning-hero p{max-width:640px!important;color:var(--sv88-muted);font-size:18px!important}
.learning-visual-stack{position:relative!important;min-width:0!important;width:100%!important;max-width:520px!important;justify-self:end!important}
.learning-visual-stack>img{position:static!important;width:100%!important;max-height:340px!important;object-fit:cover!important;border-radius:20px!important;box-shadow:var(--sv88-shadow)!important}
.learning-preview{position:relative!important;inset:auto!important;margin:-44px 22px 0!important;padding:18px!important;border-radius:16px!important;background:rgba(255,255,255,.97)!important;border:1px solid var(--sv88-line)!important;box-shadow:0 18px 38px rgba(8,31,63,.11)!important}
.course-grid{gap:20px!important}
.course-card{padding:28px!important;background:#fff!important}
.course-card h2{font-size:31px!important}
.pro-course-card{background:linear-gradient(145deg,#0a2143,#12386b)!important;border-color:transparent!important}
.learn-real-life{gap:48px!important;align-items:center!important}

/* Articles / markets / tools */
.article-grid{gap:22px}
.article-card{min-height:500px;padding:22px;background:#fff!important}
.article-card img{height:220px;border-radius:16px;box-shadow:none}
.market-grid{gap:22px}
.market-story{border-radius:18px;padding:26px}
.tool-card{padding:34px;min-height:285px;background:#fff}
.tools-cards{gap:24px}
.calc-card{padding:26px}
.ticker{border-radius:12px;box-shadow:none}

/* Footer */
.footer{background:#fff;padding-top:58px}
.footer-grid{gap:40px}
.footer h4{font-size:15px;letter-spacing:.08em}
.footer a,.footer .contact-line{font-size:14px;color:#4f5f75}
.footer-disclaimer{color:#738096;line-height:1.6}

/* Account */
.account-top{box-shadow:0 8px 28px rgba(8,31,63,.05)!important}
.account-topin{min-height:70px!important}
.account-shell{padding-top:34px!important}
.account-panel,.auth-card{border-radius:18px!important;box-shadow:0 10px 30px rgba(8,31,63,.065)!important}
.account-side a{border-radius:12px!important;border-color:var(--sv88-line)!important}
.account-side a:hover{transform:none!important;background:#eef4ff!important}
.member-metric{border-radius:15px!important}

/* Pro/member */
.pro-announcement{background:var(--sv88-navy)!important}
.member-top{box-shadow:0 8px 28px rgba(8,31,63,.05)!important;background:rgba(255,255,255,.97)!important}
.member-topin{min-height:70px!important}
.member-top nav a{border-radius:10px!important}
.member-side{gap:7px!important}
.member-side a{border-radius:11px!important;padding:11px 13px!important}
.member-side a.active{background:var(--sv88-navy)!important;color:#fff!important}
.member-panel,.dashboard-card,.member-card,.sv13-card{border-radius:18px!important;background:#fff!important}
.pro-hero{border-radius:22px!important;box-shadow:var(--sv88-shadow)!important}
.pro-path-grid,.pro-choice-grid,.member-cards,.tool-row{gap:16px!important}
.pro-route-card{min-height:230px!important}
.pro-more,.pro-link-list a{border-radius:12px!important}
.sv13-card.primary{background:linear-gradient(145deg,var(--sv88-navy),var(--sv88-navy-2))!important;border:0!important}
.sv13-feature{border-radius:14px!important}
.sv13-assist button{background:var(--sv88-navy)!important;box-shadow:0 12px 28px rgba(8,31,63,.18)!important}
.sv13-drawer{border-radius:18px!important;box-shadow:0 24px 64px rgba(8,31,63,.18)!important}
.pro-footer{background:#fff!important;border-top:1px solid var(--sv88-line)!important}

/* Forms */
input,select,textarea{border-color:#d8e1ed!important;background:#fff}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(36,94,234,.12);border-color:#8aadef!important}

@media(max-width:1100px){
  .nav a{font-size:12px;padding:8px 7px}
  .v9-hero .hero-inner{grid-template-columns:1fr .78fr;gap:40px}
}
@media(max-width:900px){
  .shell{width:min(100% - 30px,1200px)}
  .section{padding:68px 0}
  .v9-hero .hero-inner{grid-template-columns:1fr;padding:72px 0 54px}
  .hero-product-visual{max-width:620px}
  .learning-hero-grid{grid-template-columns:1fr!important;padding-top:54px!important;padding-bottom:54px!important}
  .learning-visual-stack{justify-self:start!important;max-width:620px!important}
  .visual-story-grid{grid-template-columns:1fr}
  .media-story-side{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:620px){
  .shell{width:min(100% - 24px,1200px)}
  .section{padding:54px 0}
  .header-row{height:66px}
  .brand-mark{width:126px}
  h1{font-size:clamp(42px,12vw,58px)}
  h2{font-size:clamp(32px,9vw,44px)}
  .v9-hero .hero-inner{padding:58px 0 42px}
  .v9-hero h1{font-size:clamp(44px,12vw,62px)}
  .v9-hero p{font-size:16px}
  .hero-board{padding:15px;border-radius:20px}
  .learning-preview{margin:-28px 12px 0!important}
  .media-story-side{grid-template-columns:1fr!important}
  .newsletter-panel{padding:36px 22px}
}
