.gl-page-hero {
  padding: 78px 0 44px;
}

.gl-page-hero-inner {
  max-width: 850px;
}

.gl-page-hero h1 {
  margin: 18px 0 16px;
  font-size: clamp(2.4rem, 5vw, 4.5rem);
  line-height: 1;
  letter-spacing: -0.05em;
}

.gl-page-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--gl-text-soft);
  font-size: 1.08rem;
}

.gl-content-section {
  padding: 30px 0 82px;
}

.gl-content-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.gl-content-card {
  min-height: 210px;
  padding: 24px;
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius-lg);
  background: var(--gl-surface);
  box-shadow: var(--gl-shadow-sm);
}

.gl-content-card h2,
.gl-content-card h3 {
  margin: 0 0 10px;
  font-size: 1.15rem;
  letter-spacing: -0.02em;
}

.gl-content-card p {
  margin: 0;
  color: var(--gl-text-soft);
}

.gl-price-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.gl-price-card {
  min-height: 260px;
  padding: 26px;
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius-lg);
  background: var(--gl-surface);
  box-shadow: var(--gl-shadow-sm);
}

.gl-price-card:first-child {
  border-color: rgba(255, 152, 0, 0.30);
  background: linear-gradient(180deg, #fffaf2, #ffffff);
}

.gl-price-card h2 {
  margin: 0 0 12px;
  font-size: 1.35rem;
}

.gl-price-card p {
  margin: 0;
  color: var(--gl-text-soft);
}

.gl-price-note {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: var(--gl-radius-md);
  background: var(--gl-brand-blue-soft);
  color: #1b6195;
  font-size: 0.92rem;
}

.gl-page-cta {
  padding: 0 0 86px;
}

.gl-page-cta-box {
  padding: 34px;
  border-radius: var(--gl-radius-xl);
  background: var(--gl-navy-950);
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.gl-page-cta-box h2 {
  margin: 0;
  font-size: clamp(1.55rem, 3vw, 2.3rem);
  letter-spacing: -0.035em;
}

.gl-page-cta-box .gl-btn {
  flex: none;
}

.gl-draft {
  padding: 96px 0 120px;
}

.gl-draft-box {
  max-width: 760px;
  padding: 34px;
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius-xl);
  background: white;
  box-shadow: var(--gl-shadow-sm);
}

.gl-draft-box h1 {
  margin: 0 0 12px;
  font-size: clamp(2rem, 4vw, 3.2rem);
}

.gl-draft-box p {
  margin: 0;
  color: var(--gl-text-soft);
}

.gl-footer-links {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.gl-footer-links a {
  text-decoration: none;
}

.gl-footer-links a:hover,
.gl-footer-links a:focus-visible {
  text-decoration: underline;
}

/* Premium cinematic inner pages: product + personas */
body[data-gl-route="features"],
body[data-gl-route="students"],
body[data-gl-route="teachers"],
body[data-gl-route="schools"],
body[data-gl-route="adults"] {
  --gl-inner-accent: #ff9f1c;
  --gl-inner-accent-2: #ff5f88;
  --gl-inner-glow: rgba(255,159,28,.22);
}
body[data-gl-route="students"] { --gl-inner-accent:#35d3ff; --gl-inner-accent-2:#8e61ff; --gl-inner-glow:rgba(53,211,255,.20); }
body[data-gl-route="teachers"] { --gl-inner-accent:#ff6ab0; --gl-inner-accent-2:#9e62ff; --gl-inner-glow:rgba(255,106,176,.20); }
body[data-gl-route="schools"] { --gl-inner-accent:#46b8ff; --gl-inner-accent-2:#ffb02d; --gl-inner-glow:rgba(70,184,255,.19); }
body[data-gl-route="adults"] { --gl-inner-accent:#ffad35; --gl-inner-accent-2:#35c8ff; --gl-inner-glow:rgba(255,173,53,.18); }

body[data-gl-route="features"] .gl-page-hero,
body[data-gl-route="students"] .gl-page-hero,
body[data-gl-route="teachers"] .gl-page-hero,
body[data-gl-route="schools"] .gl-page-hero,
body[data-gl-route="adults"] .gl-page-hero {
  position: relative;
  min-height: 560px;
  padding: 54px 0 48px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

body[data-gl-route="features"] .gl-page-hero::before,
body[data-gl-route="students"] .gl-page-hero::before,
body[data-gl-route="teachers"] .gl-page-hero::before,
body[data-gl-route="schools"] .gl-page-hero::before,
body[data-gl-route="adults"] .gl-page-hero::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: radial-gradient(circle, var(--gl-inner-glow), transparent 67%);
  filter: blur(8px);
  pointer-events: none;
}

body[data-gl-route="features"] .gl-page-hero-inner,
body[data-gl-route="students"] .gl-page-hero-inner,
body[data-gl-route="teachers"] .gl-page-hero-inner,
body[data-gl-route="schools"] .gl-page-hero-inner,
body[data-gl-route="adults"] .gl-page-hero-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--gl-container);
  min-height: 440px;
  padding: 56px 54% 56px 52px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 30px;
  background:
    linear-gradient(115deg, rgba(18,20,55,.97) 0%, rgba(12,14,40,.94) 54%, rgba(13,13,36,.72) 100%);
  box-shadow: 0 30px 90px rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.04);
  overflow: hidden;
}

body[data-gl-route="features"] .gl-page-hero-inner::before,
body[data-gl-route="students"] .gl-page-hero-inner::before,
body[data-gl-route="teachers"] .gl-page-hero-inner::before,
body[data-gl-route="schools"] .gl-page-hero-inner::before,
body[data-gl-route="adults"] .gl-page-hero-inner::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, transparent, var(--gl-inner-accent), var(--gl-inner-accent-2), transparent);
  box-shadow: 0 0 30px var(--gl-inner-glow);
}

body[data-gl-route="features"] .gl-page-hero::after,
body[data-gl-route="students"] .gl-page-hero::after,
body[data-gl-route="teachers"] .gl-page-hero::after,
body[data-gl-route="schools"] .gl-page-hero::after,
body[data-gl-route="adults"] .gl-page-hero::after {
  content: "";
  position: absolute;
  z-index: 3;
  top: 50%;
  right: max(24px, calc((100vw - 1240px) / 2 + 24px));
  width: clamp(430px, 40vw, 555px);
  height: 386px;
  transform: translateY(-50%);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 26px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 1;
  filter: none;
  mask-image: none;
  box-shadow: 0 28px 70px rgba(0,0,0,.46), 0 0 52px var(--gl-inner-glow);
  pointer-events: none;
}
body[data-gl-route="features"] .gl-page-hero::after { background-image: linear-gradient(180deg,rgba(7,10,30,.02),rgba(7,10,30,.12)), url('/assets/site/art/product-experience.webp'); }
body[data-gl-route="students"] .gl-page-hero::after { background-image: linear-gradient(180deg,rgba(7,10,30,.02),rgba(7,10,30,.20)), url('/assets/site/art/persona-students.webp'); background-position:center 22%; }
body[data-gl-route="teachers"] .gl-page-hero::after { background-image: linear-gradient(180deg,rgba(7,10,30,.02),rgba(7,10,30,.20)), url('/assets/site/art/persona-teachers.webp'); background-position:center 22%; }
body[data-gl-route="schools"] .gl-page-hero::after { background-image: linear-gradient(180deg,rgba(7,10,30,.02),rgba(7,10,30,.17)), url('/assets/site/art/persona-schools.webp'); background-position:center 30%; }
body[data-gl-route="adults"] .gl-page-hero::after { background-image: linear-gradient(180deg,rgba(7,10,30,.02),rgba(7,10,30,.20)), url('/assets/site/art/persona-adults.webp'); background-position:center 22%; }

body[data-gl-route="features"] .gl-page-hero .gl-eyebrow,
body[data-gl-route="students"] .gl-page-hero .gl-eyebrow,
body[data-gl-route="teachers"] .gl-page-hero .gl-eyebrow,
body[data-gl-route="schools"] .gl-page-hero .gl-eyebrow,
body[data-gl-route="adults"] .gl-page-hero .gl-eyebrow {
  display: inline-flex;
  padding: 9px 14px;
  border-color: color-mix(in srgb, var(--gl-inner-accent) 45%, transparent);
  background: color-mix(in srgb, var(--gl-inner-accent) 12%, transparent);
  color: color-mix(in srgb, var(--gl-inner-accent) 78%, white);
  box-shadow: 0 0 30px var(--gl-inner-glow);
}

body[data-gl-route="features"] .gl-page-hero h1,
body[data-gl-route="students"] .gl-page-hero h1,
body[data-gl-route="teachers"] .gl-page-hero h1,
body[data-gl-route="schools"] .gl-page-hero h1,
body[data-gl-route="adults"] .gl-page-hero h1 {
  max-width: 650px;
  margin: 20px 0 18px;
  font-size: clamp(3rem, 4.35vw, 4.75rem);
  line-height: .94;
  letter-spacing: -.055em;
  text-wrap: balance;
  text-shadow: 0 12px 42px rgba(0,0,0,.32);
}

body[data-gl-route="features"] .gl-page-hero p,
body[data-gl-route="students"] .gl-page-hero p,
body[data-gl-route="teachers"] .gl-page-hero p,
body[data-gl-route="schools"] .gl-page-hero p,
body[data-gl-route="adults"] .gl-page-hero p {
  max-width: 590px;
  color: #c8c3d5;
  font-size: 1rem;
  line-height: 1.65;
}

body[data-gl-route="features"] .gl-content-section,
body[data-gl-route="students"] .gl-content-section,
body[data-gl-route="teachers"] .gl-content-section,
body[data-gl-route="schools"] .gl-content-section,
body[data-gl-route="adults"] .gl-content-section {
  padding: 12px 0 72px;
}

body[data-gl-route="features"] .gl-content-grid,
body[data-gl-route="students"] .gl-content-grid,
body[data-gl-route="teachers"] .gl-content-grid,
body[data-gl-route="schools"] .gl-content-grid,
body[data-gl-route="adults"] .gl-content-grid {
  gap: 18px;
}

body[data-gl-route="features"] .gl-content-card,
body[data-gl-route="students"] .gl-content-card,
body[data-gl-route="teachers"] .gl-content-card,
body[data-gl-route="schools"] .gl-content-card,
body[data-gl-route="adults"] .gl-content-card {
  position: relative;
  min-height: 228px;
  padding: 82px 28px 28px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-top-color: color-mix(in srgb, var(--gl-inner-accent) 46%, rgba(255,255,255,.1));
  border-radius: 22px;
  background:
    radial-gradient(circle at 12% 0%, var(--gl-inner-glow), transparent 11rem),
    linear-gradient(145deg,rgba(26,29,69,.92),rgba(11,14,40,.96));
  box-shadow: 0 20px 50px rgba(0,0,0,.24), inset 0 1px rgba(255,255,255,.035);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

body[data-gl-route="features"] .gl-content-card:hover,
body[data-gl-route="students"] .gl-content-card:hover,
body[data-gl-route="teachers"] .gl-content-card:hover,
body[data-gl-route="schools"] .gl-content-card:hover,
body[data-gl-route="adults"] .gl-content-card:hover {
  transform: translateY(-5px);
  border-color: color-mix(in srgb, var(--gl-inner-accent) 48%, transparent);
  box-shadow: 0 28px 64px rgba(0,0,0,.34), 0 0 34px var(--gl-inner-glow);
}

body[data-gl-route="features"] .gl-content-card::before,
body[data-gl-route="students"] .gl-content-card::before,
body[data-gl-route="teachers"] .gl-content-card::before,
body[data-gl-route="schools"] .gl-content-card::before,
body[data-gl-route="adults"] .gl-content-card::before {
  position: absolute;
  top: 24px;
  left: 26px;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--gl-inner-accent) 55%, transparent);
  border-radius: 13px;
  background: color-mix(in srgb, var(--gl-inner-accent) 12%, #10142e);
  color: color-mix(in srgb, var(--gl-inner-accent) 78%, white);
  font-size: 1.1rem;
  font-weight: 900;
  box-shadow: 0 0 28px var(--gl-inner-glow);
}

body[data-gl-route="features"] .gl-content-card::after,
body[data-gl-route="students"] .gl-content-card::after,
body[data-gl-route="teachers"] .gl-content-card::after,
body[data-gl-route="schools"] .gl-content-card::after,
body[data-gl-route="adults"] .gl-content-card::after {
  position: absolute;
  top: 24px;
  right: 26px;
  color: rgba(255,255,255,.12);
  font-size: 1.15rem;
  font-weight: 900;
  letter-spacing: .08em;
}

body[data-gl-route="features"] .gl-content-card:nth-child(1)::before { content:"✦"; }
body[data-gl-route="features"] .gl-content-card:nth-child(2)::before { content:"𝄞"; }
body[data-gl-route="features"] .gl-content-card:nth-child(3)::before { content:"♪"; }
body[data-gl-route="features"] .gl-content-card:nth-child(4)::before { content:"◉"; }
body[data-gl-route="features"] .gl-content-card:nth-child(5)::before { content:"✓"; }
body[data-gl-route="features"] .gl-content-card:nth-child(6)::before { content:"↗"; }
body[data-gl-route="students"] .gl-content-card:nth-child(1)::before { content:"◎"; }
body[data-gl-route="students"] .gl-content-card:nth-child(2)::before { content:"⚡"; }
body[data-gl-route="students"] .gl-content-card:nth-child(3)::before { content:"✦"; }
body[data-gl-route="teachers"] .gl-content-card:nth-child(1)::before { content:"✎"; }
body[data-gl-route="teachers"] .gl-content-card:nth-child(2)::before { content:"↗"; }
body[data-gl-route="teachers"] .gl-content-card:nth-child(3)::before { content:"▦"; }
body[data-gl-route="schools"] .gl-content-card:nth-child(1)::before { content:"▦"; }
body[data-gl-route="schools"] .gl-content-card:nth-child(2)::before { content:"◎"; }
body[data-gl-route="schools"] .gl-content-card:nth-child(3)::before { content:"↗"; }
body[data-gl-route="adults"] .gl-content-card:nth-child(1)::before { content:"◷"; }
body[data-gl-route="adults"] .gl-content-card:nth-child(2)::before { content:"◉"; }
body[data-gl-route="adults"] .gl-content-card:nth-child(3)::before { content:"♫"; }

body[data-gl-route="features"] .gl-content-card:nth-child(1)::after,
body[data-gl-route="students"] .gl-content-card:nth-child(1)::after,
body[data-gl-route="teachers"] .gl-content-card:nth-child(1)::after,
body[data-gl-route="schools"] .gl-content-card:nth-child(1)::after,
body[data-gl-route="adults"] .gl-content-card:nth-child(1)::after { content:"01"; }
body[data-gl-route="features"] .gl-content-card:nth-child(2)::after,
body[data-gl-route="students"] .gl-content-card:nth-child(2)::after,
body[data-gl-route="teachers"] .gl-content-card:nth-child(2)::after,
body[data-gl-route="schools"] .gl-content-card:nth-child(2)::after,
body[data-gl-route="adults"] .gl-content-card:nth-child(2)::after { content:"02"; }
body[data-gl-route="features"] .gl-content-card:nth-child(3)::after,
body[data-gl-route="students"] .gl-content-card:nth-child(3)::after,
body[data-gl-route="teachers"] .gl-content-card:nth-child(3)::after,
body[data-gl-route="schools"] .gl-content-card:nth-child(3)::after,
body[data-gl-route="adults"] .gl-content-card:nth-child(3)::after { content:"03"; }
body[data-gl-route="features"] .gl-content-card:nth-child(4)::after { content:"04"; }
body[data-gl-route="features"] .gl-content-card:nth-child(5)::after { content:"05"; }
body[data-gl-route="features"] .gl-content-card:nth-child(6)::after { content:"06"; }

body[data-gl-route="features"] .gl-content-card h2,
body[data-gl-route="students"] .gl-content-card h2,
body[data-gl-route="teachers"] .gl-content-card h2,
body[data-gl-route="schools"] .gl-content-card h2,
body[data-gl-route="adults"] .gl-content-card h2 {
  margin-bottom: 10px;
  color: #fff;
  font-size: 1.16rem;
  letter-spacing: -.025em;
}

body[data-gl-route="features"] .gl-content-card p,
body[data-gl-route="students"] .gl-content-card p,
body[data-gl-route="teachers"] .gl-content-card p,
body[data-gl-route="schools"] .gl-content-card p,
body[data-gl-route="adults"] .gl-content-card p {
  color: #bbb7c9;
  line-height: 1.62;
}

body[data-gl-route="features"] .gl-page-cta-box,
body[data-gl-route="students"] .gl-page-cta-box,
body[data-gl-route="teachers"] .gl-page-cta-box,
body[data-gl-route="schools"] .gl-page-cta-box,
body[data-gl-route="adults"] .gl-page-cta-box {
  position: relative;
  min-height: 162px;
  padding: 38px 44px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--gl-inner-accent) 30%, rgba(255,255,255,.08));
  border-radius: 24px;
  background:
    radial-gradient(circle at 82% 50%, var(--gl-inner-glow), transparent 19rem),
    linear-gradient(120deg,#17113d,#25104a 58%,#30203f);
  box-shadow: 0 28px 72px rgba(0,0,0,.28), 0 0 52px var(--gl-inner-glow);
}

body[data-gl-route="features"] .gl-page-cta-box::before,
body[data-gl-route="students"] .gl-page-cta-box::before,
body[data-gl-route="teachers"] .gl-page-cta-box::before,
body[data-gl-route="schools"] .gl-page-cta-box::before,
body[data-gl-route="adults"] .gl-page-cta-box::before {
  content:"♪   ✦   ♫";
  position:absolute;
  right:150px;
  top:50%;
  transform:translateY(-50%) rotate(-7deg);
  color:color-mix(in srgb, var(--gl-inner-accent) 55%, transparent);
  font-size:2.4rem;
  letter-spacing:.45em;
  opacity:.45;
  pointer-events:none;
}
body[data-gl-route="features"] .gl-page-cta-box > *,
body[data-gl-route="students"] .gl-page-cta-box > *,
body[data-gl-route="teachers"] .gl-page-cta-box > *,
body[data-gl-route="schools"] .gl-page-cta-box > *,
body[data-gl-route="adults"] .gl-page-cta-box > * { position:relative; z-index:2; }

body[data-gl-route="features"] .gl-nav a:nth-child(1),
body[data-gl-route="students"] .gl-nav a:nth-child(2),
body[data-gl-route="teachers"] .gl-nav a:nth-child(3),
body[data-gl-route="schools"] .gl-nav a:nth-child(4),
body[data-gl-route="adults"] .gl-nav a:nth-child(5) {
  color:#fff;
  text-shadow:0 0 22px var(--gl-inner-glow);
}

@media (max-width: 1080px) {
  body[data-gl-route="features"] .gl-page-hero,
  body[data-gl-route="students"] .gl-page-hero,
  body[data-gl-route="teachers"] .gl-page-hero,
  body[data-gl-route="schools"] .gl-page-hero,
  body[data-gl-route="adults"] .gl-page-hero { min-height: auto; padding-top: 38px; }

  body[data-gl-route="features"] .gl-page-hero-inner,
  body[data-gl-route="students"] .gl-page-hero-inner,
  body[data-gl-route="teachers"] .gl-page-hero-inner,
  body[data-gl-route="schools"] .gl-page-hero-inner,
  body[data-gl-route="adults"] .gl-page-hero-inner {
    min-height: 720px;
    padding: 48px 44px 420px;
  }

  body[data-gl-route="features"] .gl-page-hero::after,
  body[data-gl-route="students"] .gl-page-hero::after,
  body[data-gl-route="teachers"] .gl-page-hero::after,
  body[data-gl-route="schools"] .gl-page-hero::after,
  body[data-gl-route="adults"] .gl-page-hero::after {
    top: auto;
    bottom: 74px;
    left: 50%;
    right: auto;
    width: min(calc(100% - 100px), 700px);
    height: 340px;
    transform: translateX(-50%);
  }
}

@media (max-width: 960px) {
  .gl-content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gl-price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .gl-page-hero { padding: 54px 0 34px; }
  .gl-content-grid,
  .gl-price-grid { grid-template-columns: 1fr; }
  .gl-page-cta-box {
    align-items: flex-start;
    flex-direction: column;
  }

  body[data-gl-route="features"] .gl-page-hero-inner,
  body[data-gl-route="students"] .gl-page-hero-inner,
  body[data-gl-route="teachers"] .gl-page-hero-inner,
  body[data-gl-route="schools"] .gl-page-hero-inner,
  body[data-gl-route="adults"] .gl-page-hero-inner {
    min-height: 650px;
    padding: 34px 26px 330px;
    border-radius: 22px;
  }

  body[data-gl-route="features"] .gl-page-hero h1,
  body[data-gl-route="students"] .gl-page-hero h1,
  body[data-gl-route="teachers"] .gl-page-hero h1,
  body[data-gl-route="schools"] .gl-page-hero h1,
  body[data-gl-route="adults"] .gl-page-hero h1 {
    font-size: clamp(2.6rem, 13vw, 3.7rem);
  }

  body[data-gl-route="features"] .gl-page-hero::after,
  body[data-gl-route="students"] .gl-page-hero::after,
  body[data-gl-route="teachers"] .gl-page-hero::after,
  body[data-gl-route="schools"] .gl-page-hero::after,
  body[data-gl-route="adults"] .gl-page-hero::after {
    bottom: 58px;
    width: calc(100% - 54px);
    height: 270px;
    border-radius: 18px;
  }

  body[data-gl-route="features"] .gl-content-card,
  body[data-gl-route="students"] .gl-content-card,
  body[data-gl-route="teachers"] .gl-content-card,
  body[data-gl-route="schools"] .gl-content-card,
  body[data-gl-route="adults"] .gl-content-card { min-height: 200px; }

  body[data-gl-route="features"] .gl-page-cta-box::before,
  body[data-gl-route="students"] .gl-page-cta-box::before,
  body[data-gl-route="teachers"] .gl-page-cta-box::before,
  body[data-gl-route="schools"] .gl-page-cta-box::before,
  body[data-gl-route="adults"] .gl-page-cta-box::before { display:none; }
}
