*,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    :root {
      --bg: #0C0F0A;
      --bg2: #0A0D07;
      --bg3: #0D1009;
      --card1: #131710;
      --card2: #0F1209;
      --line: #1E2419;
      --line-soft: rgba(30, 36, 25, .5);
      --line-college: #2C1E0F;
      --line-student: #1E2C18;
      --fg: #F5EEE1;
      --fg2: #CABCA4;
      --fg3: #9E9078;
      --fg4: #7C6F58;
      --fg5: #4A3D2A;
      --fg6: #3E2F1B;
      --pulp: #F9930C;
      --pulp-lt: #FFC24B;
      --pulp-hi: #FFB020;
      --pulp-dk: #DA5510;
      --amber: #F79A2E;
      --green: #1EA45C;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: 'Hanken Grotesk', sans-serif;
      color: var(--fg);
      background: var(--bg);
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
    }

    a {
      text-decoration: none;
      color: inherit;
    }

    button {
      font-family: inherit;
    }

    ::selection {
      background: var(--amber);
      color: var(--bg);
    }

    ::-webkit-scrollbar {
      width: 6px;
    }

    ::-webkit-scrollbar-track {
      background: var(--bg);
    }

    ::-webkit-scrollbar-thumb {
      background: var(--fg6);
      border-radius: 3px;
    }

    /* ── KEYFRAMES ── */
    @keyframes hbody {
      0% {
        opacity: 0;
        transform: scale(.7)
      }

      60% {
        opacity: 1
      }

      100% {
        opacity: 1;
        transform: scale(1)
      }
    }

    @keyframes hglow {
      0% {
        opacity: 0
      }

      100% {
        opacity: .85
      }
    }

    @keyframes hstem {
      0% {
        opacity: 0
      }

      100% {
        opacity: 1
      }
    }

    @keyframes hleaf {
      0% {
        opacity: 0;
        transform: rotate(-55deg) scale(.6)
      }

      100% {
        opacity: 1;
        transform: rotate(0) scale(1)
      }
    }

    @keyframes hsheen {

      0%,
      100% {
        opacity: .08;
        transform: translateX(-12px)
      }

      50% {
        opacity: .2;
        transform: translateX(12px)
      }
    }

    @keyframes hbreathe {

      0%,
      100% {
        transform: scale(1) translateY(0)
      }

      50% {
        transform: scale(1.025) translateY(-3px)
      }
    }

    @keyframes hsway {

      0%,
      100% {
        transform: rotate(-2.5deg)
      }

      50% {
        transform: rotate(3deg)
      }
    }

    @keyframes hglint {

      0%,
      72%,
      100% {
        opacity: 0;
        transform: translateX(-30px) skewX(-18deg)
      }

      82% {
        opacity: .5
      }

      88% {
        opacity: .5;
        transform: translateX(40px) skewX(-18deg)
      }

      92% {
        opacity: 0
      }
    }

    @keyframes orbitspin {
      to {
        transform: rotate(360deg)
      }
    }

    @keyframes fadeUp {
      0% {
        opacity: 0;
        transform: translateY(28px)
      }

      100% {
        opacity: 1;
        transform: translateY(0)
      }
    }

    @keyframes pulseDot {

      0%,
      100% {
        opacity: .4;
        transform: scale(.85)
      }

      50% {
        opacity: 1;
        transform: scale(1.15)
      }
    }

    @keyframes ticker {
      0% {
        transform: translateX(0)
      }

      100% {
        transform: translateX(-50%)
      }
    }

    @keyframes floatY {

      0%,
      100% {
        transform: translateY(0)
      }

      50% {
        transform: translateY(-8px)
      }
    }

    .hero-glow {
      opacity: 0;
      animation: hglow .9s ease .2s both;
    }

    .hero-body {
      opacity: 0;
      transform-box: fill-box;
      transform-origin: 106px 124px;
      animation: hbody .82s cubic-bezier(.34, 1.56, .64, 1) both;
    }

    .hero-breathe {
      transform-box: fill-box;
      transform-origin: 106px 124px;
      animation: hbreathe 4.6s ease-in-out 1.3s infinite;
    }

    .hero-sheen {
      transform-box: fill-box;
      animation: hsheen 3.2s ease-in-out 1.1s infinite;
    }

    .hero-glint {
      animation: hglint 6s ease-in-out 2.2s infinite;
    }

    .hero-stem {
      opacity: 0;
      animation: hstem .4s ease .36s both;
    }

    .hero-leaf {
      opacity: 0;
      transform-box: fill-box;
      transform-origin: 92px 56px;
      animation: hleaf .72s cubic-bezier(.2, .8, .3, 1) .42s both;
    }

    .hero-leaf-sway {
      transform-box: fill-box;
      transform-origin: 92px 56px;
      animation: hsway 4.2s ease-in-out 1.6s infinite;
    }

    .orbit-ring {
      transform-box: fill-box;
      transform-origin: center;
      animation: orbitspin 24s linear infinite;
    }

    .fade-up {
      animation: fadeUp .7s cubic-bezier(.2, .8, .3, 1) both;
    }

    .fade-up-1 {
      animation: fadeUp .7s cubic-bezier(.2, .8, .3, 1) .1s both;
    }

    .fade-up-2 {
      animation: fadeUp .7s cubic-bezier(.2, .8, .3, 1) .2s both;
    }

    .fade-up-3 {
      animation: fadeUp .7s cubic-bezier(.2, .8, .3, 1) .35s both;
    }

    .fade-up-4 {
      animation: fadeUp .7s cubic-bezier(.2, .8, .3, 1) .5s both;
    }

    .reveal {
      animation: fadeUp .85s cubic-bezier(.2, .8, .3, 1) both;
      animation-timeline: view();
      animation-range: entry 0% cover 22%;
    }

    .reveal-sm {
      animation: fadeUp .85s cubic-bezier(.2, .8, .3, 1) both;
      animation-timeline: view();
      animation-range: entry 0% cover 18%;
    }

    .float-anim {
      animation: floatY 5s ease-in-out infinite;
    }

    .ticker-track {
      animation: ticker 28s linear infinite;
    }

    .pulse-dot {
      animation: pulseDot 2s ease-in-out infinite;
    }

    /* ── NAV ── */
    nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 200;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 40px;
      height: 64px;
      background: rgba(12, 15, 10, .88);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(62, 47, 27, .5);
    }

    .nav-logo {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .nav-logo-text {
      font-weight: 800;
      font-size: 20px;
      letter-spacing: -.04em;
      color: var(--fg);
    }

    .nav-links {
      display: flex;
      gap: .1rem;
      align-items: center;
      font-size: 14px;
      font-weight: 500;
    }

    .nav-links a {
      color: var(--fg3);
      transition: color .2s, background .2s;
      padding: 6px 14px;
      border-radius: 7px;
    }

    .nav-links a:hover {
      color: var(--fg);
      background: rgba(245, 238, 225, .07);
    }

    .nav-ctas {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .btn-ghost {
      background: transparent;
      border: none;
      color: var(--fg3);
      font-size: 14px;
      font-weight: 500;
      cursor: pointer;
      padding: 8px 14px;
    }

    .btn-ghost:hover {
      color: var(--fg);
    }

    .btn-pulp {
      background: linear-gradient(135deg, var(--pulp-hi), var(--pulp) 60%, var(--pulp-dk));
      border: none;
      color: var(--bg);
      font-size: 14px;
      font-weight: 700;
      cursor: pointer;
      padding: 9px 20px;
      border-radius: 10px;
      box-shadow: 0 4px 16px -4px rgba(249, 147, 12, .5);
      letter-spacing: -.01em;
      transition: transform .2s, box-shadow .2s;
    }

    .btn-pulp:hover {
      transform: translateY(-2px);
      box-shadow: 0 10px 26px -4px rgba(249, 147, 12, .6);
    }

    .btn-pulp-lg {
      font-size: 15.5px;
      padding: 14px 32px;
      border-radius: 12px;
      box-shadow: 0 10px 28px -6px rgba(249, 147, 12, .55);
    }

    .btn-pulp-lg:hover {
      box-shadow: 0 16px 36px -6px rgba(249, 147, 12, .65);
    }

    .btn-outline-lt {
      background: rgba(245, 238, 225, .06);
      border: 1px solid rgba(245, 238, 225, .15);
      color: var(--fg);
      font-size: 15px;
      font-weight: 600;
      cursor: pointer;
      padding: 13px 28px;
      border-radius: 12px;
      transition: transform .2s, background .2s, border-color .2s;
    }

    .btn-outline-lt:hover {
      background: rgba(245, 238, 225, .11);
      border-color: rgba(245, 238, 225, .28);
      transform: translateY(-2px);
    }

    .mobile-toggle {
      display: none;
      background: none;
      border: none;
      color: var(--fg);
      font-size: 22px;
      cursor: pointer;
    }

    /* ── HERO ── */
    .hero {
      position: relative;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 120px 24px 80px;
      overflow: hidden;
      background: var(--bg);
    }

    .hero-glows {
      position: absolute;
      inset: 0;
      pointer-events: none;
    }

    .hero-glow-a {
      position: absolute;
      top: 10%;
      left: 20%;
      width: 600px;
      height: 600px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(78, 122, 50, .22) 0%, transparent 68%);
      filter: blur(2px);
    }

    .hero-glow-b {
      position: absolute;
      bottom: 5%;
      right: 15%;
      width: 500px;
      height: 500px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(249, 147, 12, .12) 0%, transparent 68%);
    }

    .badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(249, 147, 12, .1);
      border: 1px solid rgba(249, 147, 12, .28);
      border-radius: 100px;
      padding: 6px 14px;
    }

    .badge span.label {
      font-size: 12.5px;
      font-weight: 600;
      color: var(--amber);
      letter-spacing: .04em;
    }

    .badge-dot {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--pulp);
      display: inline-block;
    }

    .hero-row {
      display: flex;
      align-items: center;
      gap: 64px;
      max-width: 1080px;
      width: 100%;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 28px;
    }

    .hero-copy {
      flex: 1 1 480px;
      max-width: 560px;
    }

    .hero-copy h1 {
      font-weight: 600;
      font-size: clamp(34px, 4.8vw, 54px);
      line-height: 1.04;
      letter-spacing: -.04em;
      margin: 0 0 24px;
      background: linear-gradient(180deg, #FFFFFF 30%, #E6D9C4);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .hero-copy h1 .hero-brand {
      font-weight: 800;
    }

    .hero-copy p {
      font-size: clamp(16px, 2vw, 18.5px);
      line-height: 1.65;
      color: var(--fg2);
      margin: 0 0 36px;
      max-width: 480px;
    }

    .hero-actions {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
    }

    .hero-fine {
      font-size: 13px;
      color: var(--fg5);
      margin-top: 16px;
      font-weight: 500;
    }

    .hero-mark-wrap {
      flex: 0 0 auto;
      position: relative;
    }

    .hero-mark-glow {
      position: absolute;
      inset: -40px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(78, 122, 50, .3), transparent 70%);
      filter: blur(12px);
    }

    .hero-stats {
      display: flex;
      gap: 0;
      margin-top: 64px;
      width: 100%;
      max-width: 820px;
      border-top: 1px solid var(--line);
      padding-top: 32px;
      flex-wrap: wrap;
      justify-content: center;
    }

    .hstat {
      flex: 1 1 160px;
      text-align: center;
      padding: 0 24px;
      border-right: 1px solid var(--line);
    }

    .hstat:last-child {
      border-right: none;
    }

    .hstat-val {
      font-weight: 800;
      font-size: 26px;
      letter-spacing: -.03em;
      color: var(--fg);
    }

    .hstat-label {
      font-size: 12.5px;
      color: var(--fg5);
      margin-top: 4px;
      font-weight: 500;
    }

    /* ── TICKER ── */
    .ticker {
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      background: var(--bg2);
      padding: 18px 0;
      overflow: hidden;
      position: relative;
    }

    .ticker::before,
    .ticker::after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      width: 80px;
      z-index: 2;
    }

    .ticker::before {
      left: 0;
      background: linear-gradient(90deg, var(--bg2), transparent);
    }

    .ticker::after {
      right: 0;
      background: linear-gradient(270deg, var(--bg2), transparent);
    }

    .ticker-inner {
      display: flex;
      white-space: nowrap;
    }

    .ticker-item {
      display: inline-flex;
      align-items: center;
      gap: 28px;
      padding: 0 28px;
    }

    .ticker-item span.txt {
      font-size: 13.5px;
      font-weight: 600;
      color: var(--fg4);
      letter-spacing: .02em;
    }

    .ticker-dot {
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: var(--fg6);
      flex-shrink: 0;
    }

    /* ── SECTIONS ── */
    .section-wrap {
      max-width: 1080px;
      margin: 0 auto;
      padding: 100px 40px;
    }

    .section-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 16px;
      border-radius: 100px;
      padding: 5px 14px;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .eb-green {
      background: rgba(30, 164, 92, .1);
      border: 1px solid rgba(30, 164, 92, .25);
      color: var(--green);
    }

    .eb-amber {
      background: rgba(249, 147, 12, .1);
      border: 1px solid rgba(249, 147, 12, .28);
      color: var(--amber);
    }

    .eb-gold {
      background: rgba(255, 194, 75, .08);
      border: 1px solid rgba(255, 194, 75, .2);
      color: var(--pulp-lt);
    }

    .section-h2 {
      font-weight: 800;
      font-size: clamp(26px, 4vw, 42px);
      letter-spacing: -.03em;
      color: var(--fg);
      line-height: 1.1;
      margin: 0;
    }

    .section-sub {
      font-size: 16px;
      color: var(--fg4);
      margin-top: 14px;
      line-height: 1.6;
    }

    /* ── FEATURES ── */
    .feat-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
      gap: 20px;
      margin-top: 56px;
    }

    .feat-card {
      background: linear-gradient(160deg, var(--card1), var(--card2));
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 28px 28px 32px;
      transition: border-color .25s, transform .25s, box-shadow .25s;
    }

    .feat-card:hover {
      border-color: #342818;
      transform: translateY(-4px);
      box-shadow: 0 16px 40px -8px rgba(0, 0, 0, .45);
    }

    .feat-icon {
      width: 44px;
      height: 44px;
      border-radius: 12px;
      background: rgba(245, 238, 225, .06);
      border: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 18px;
    }

    .feat-title {
      font-weight: 700;
      font-size: 16.5px;
      color: var(--fg);
      margin-bottom: 10px;
    }

    .feat-desc {
      font-size: 14.5px;
      color: var(--fg4);
      line-height: 1.6;
    }

    /* ── DASHBOARD PREVIEW ── */
    .dash-header {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      margin-bottom: 48px;
      flex-wrap: wrap;
      gap: 24px;
    }

    .dash-note {
      font-size: 15.5px;
      color: var(--fg4);
      max-width: 320px;
      line-height: 1.65;
    }

    .dash-frame {
      background: var(--bg3);
      border: 1px solid var(--line);
      border-radius: 20px;
      overflow: hidden;
      box-shadow: 0 32px 80px -20px rgba(0, 0, 0, .6);
      transition: box-shadow .3s;
    }

    .dash-frame:hover {
      box-shadow: 0 40px 96px -18px rgba(0, 0, 0, .7);
    }

    .dash-topbar {
      background: var(--bg2);
      border-bottom: 1px solid var(--line);
      padding: 14px 24px;
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .dash-dots {
      display: flex;
      gap: 7px;
    }

    .dash-dots span {
      width: 10px;
      height: 10px;
      border-radius: 50%;
    }

    .dash-url {
      flex: 1;
      height: 28px;
      background: #0F1209;
      border-radius: 7px;
      display: flex;
      align-items: center;
      padding: 0 14px;
      gap: 8px;
      max-width: 300px;
      font-size: 11.5px;
      color: #4A3D2A;
    }

    .dash-preview-tag {
      margin-left: auto;
      font-size: 11px;
      font-weight: 700;
      color: var(--fg5);
      letter-spacing: .06em;
      text-transform: uppercase;
      border: 1px solid var(--line);
      border-radius: 100px;
      padding: 4px 10px;
    }

    .dash-user {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .dash-avatar {
      width: 28px;
      height: 28px;
      border-radius: 8px;
      background: linear-gradient(135deg, var(--pulp-hi), var(--pulp));
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .dash-username {
      font-weight: 700;
      font-size: 13px;
      color: #BBAB8E;
    }

    .dash-body {
      display: grid;
      grid-template-columns: 220px 1fr;
      min-height: 420px;
    }

    .dash-sidebar {
      background: var(--bg2);
      border-right: 1px solid var(--line);
      padding: 20px 0;
    }

    .dash-side-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 9px 20px;
      border-left: 2px solid transparent;
    }

    .dash-side-item.active {
      background: rgba(249, 147, 12, .08);
      border-left-color: var(--pulp);
    }

    .dash-side-item span.ic {
      font-size: 13px;
      color: #3E3020;
    }

    .dash-side-item.active span.ic {
      color: var(--pulp);
    }

    .dash-side-item span.lbl {
      font-size: 13px;
      color: #4A3D2A;
    }

    .dash-side-item.active span.lbl {
      color: var(--fg);
      font-weight: 600;
    }

    .dash-main {
      padding: 24px;
    }

    .kpi-row {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
      margin-bottom: 24px;
    }

    .kpi-card {
      background: #0F1209;
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 14px 16px;
    }

    .kpi-label {
      font-size: 11px;
      color: #4A3D2A;
      font-weight: 600;
      letter-spacing: .06em;
      text-transform: uppercase;
      margin-bottom: 6px;
    }

    .kpi-val {
      font-weight: 800;
      font-size: 22px;
      letter-spacing: -.02em;
    }

    .kpi-pie-row {
      display: flex;
      align-items: center;
      gap: 10px;
      margin: 4px 0 2px;
    }

    .kpi-pie {
      width: 34px;
      height: 34px;
      border-radius: 50%;
      flex: 0 0 auto;
      border: 1px solid var(--line);
    }

    .kpi-pct {
      font-weight: 800;
      font-size: 17px;
      letter-spacing: -.02em;
    }

    .kpi-sub {
      font-size: 11.5px;
      color: var(--fg6);
      margin-top: 3px;
    }

    .drives-table {
      background: #0F1209;
      border: 1px solid var(--line);
      border-radius: 14px;
      overflow: hidden;
    }

    .drives-head {
      padding: 12px 18px;
      border-bottom: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .drives-head span.t {
      font-size: 13px;
      font-weight: 700;
      color: #BBAB8E;
    }

    .drives-new {
      background: linear-gradient(135deg, var(--pulp-hi), var(--pulp));
      border-radius: 7px;
      padding: 5px 12px;
      font-size: 11.5px;
      font-weight: 700;
      color: var(--bg);
    }

    .drives-cols {
      display: grid;
      grid-template-columns: 1.4fr 1.2fr .8fr 1.6fr .8fr;
      padding: 10px 18px;
      border-bottom: 1px solid var(--line);
    }

    .drives-cols span {
      font-size: 10.5px;
      font-weight: 600;
      color: #3E2F1B;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .drive-row {
      display: grid;
      grid-template-columns: 1.4fr 1.2fr .8fr 1.6fr .8fr;
      padding: 12px 18px;
      border-bottom: 1px solid var(--line-soft);
      align-items: center;
    }

    .drive-row:last-child {
      border-bottom: none;
    }

    .drive-co {
      font-weight: 600;
      font-size: 13px;
      color: #E6D9C4;
    }

    .drive-role {
      font-size: 12.5px;
      color: var(--fg4);
    }

    .drive-pkg {
      font-size: 12.5px;
      color: #BBAB8E;
      font-weight: 600;
    }

    .mini-bar-track {
      flex: 1;
      height: 8px;
      background: var(--line);
      border-radius: 4px;
      overflow: hidden;
    }

    .mini-bar-fill {
      height: 100%;
      background: var(--pulp);
      border-radius: 4px;
    }

    .drive-pipeline {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .drive-pipeline span.n {
      font-size: 11px;
      color: #4A3D2A;
      white-space: nowrap;
    }

    .drive-status {
      display: flex;
      align-items: center;
      gap: 5px;
    }

    .drive-status .dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      flex-shrink: 0;
    }

    .drive-status span.s {
      font-size: 11.5px;
      color: var(--fg4);
      font-weight: 600;
    }

    /* ── AUDIENCE SPLIT ── */
    .aud-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-top: 56px;
    }

    .aud-card {
      border-radius: 20px;
      padding: 40px 36px;
      position: relative;
      overflow: hidden;
      transition: transform .25s, box-shadow .25s;
    }

    .aud-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 48px -10px rgba(0, 0, 0, .5);
    }

    .aud-card.student {
      background: linear-gradient(160deg, #131A10, #0E1209);
      border: 1px solid var(--line-student);
    }

    .aud-card.college {
      background: linear-gradient(160deg, #1A1308, #110E05);
      border: 1px solid var(--line-college);
    }

    .aud-glow {
      position: absolute;
      top: -40px;
      right: -40px;
      width: 200px;
      height: 200px;
      border-radius: 50%;
    }

    .aud-card.student .aud-glow {
      background: radial-gradient(circle, rgba(30, 164, 92, .18), transparent 70%);
    }

    .aud-card.college .aud-glow {
      background: radial-gradient(circle, rgba(249, 147, 12, .18), transparent 70%);
    }

    .aud-card h3 {
      font-weight: 800;
      font-size: 26px;
      letter-spacing: -.025em;
      color: var(--fg);
      margin: 0 0 10px;
      position: relative;
      z-index: 1;
    }

    .aud-card p.desc {
      font-size: 14.5px;
      color: var(--fg4);
      line-height: 1.6;
      margin: 0 0 30px;
      position: relative;
      z-index: 1;
    }

    .aud-points {
      display: flex;
      flex-direction: column;
      gap: 14px;
      position: relative;
      z-index: 1;
    }

    .aud-point {
      display: flex;
      align-items: flex-start;
      gap: 12px;
    }

    .aud-check {
      margin-top: 1px;
      flex-shrink: 0;
      width: 22px;
      height: 22px;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .aud-card.student .aud-check {
      background: rgba(30, 164, 92, .14);
    }

    .aud-card.college .aud-check {
      background: rgba(249, 147, 12, .12);
    }

    .aud-point span.txt {
      font-size: 14px;
      color: var(--fg2);
      line-height: 1.5;
    }

    .aud-cta {
      margin-top: 32px;
      border: none;
      font-family: inherit;
      font-weight: 700;
      font-size: 14px;
      padding: 11px 22px;
      border-radius: 10px;
      cursor: pointer;
      letter-spacing: -.01em;
      position: relative;
      z-index: 1;
      transition: transform .2s, box-shadow .2s;
    }

    .aud-cta.student {
      background: var(--green);
      color: var(--bg);
    }

    .aud-cta.student:hover {
      transform: translateY(-2px);
      box-shadow: 0 8px 20px -6px rgba(30, 164, 92, .5);
    }

    .aud-cta.college {
      background: linear-gradient(135deg, var(--pulp-hi), var(--pulp));
      color: var(--bg);
      box-shadow: 0 8px 20px -6px rgba(249, 147, 12, .4);
    }

    .aud-cta.college:hover {
      transform: translateY(-2px);
      box-shadow: 0 12px 26px -6px rgba(249, 147, 12, .55);
    }

    /* ── HOW IT WORKS ── */
    .steps-wrap {
      position: relative;
      margin-top: 60px;
    }

    .steps-line {
      position: absolute;
      top: 28px;
      left: calc(12.5% - 1px);
      right: calc(12.5% - 1px);
      height: 1px;
      background: linear-gradient(90deg, transparent, #3E2F1B 20%, #3E2F1B 80%, transparent);
      pointer-events: none;
    }

    .steps-grid2 {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }

    .step-col {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 20px 16px;
      border-radius: 16px;
      transition: background .25s;
    }

    .step-col:hover {
      background: rgba(249, 147, 12, .06);
    }

    .step-circle {
      width: 56px;
      height: 56px;
      border-radius: 50%;
      background: var(--bg);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      position: relative;
      z-index: 1;
    }

    .step-circle span {
      font-weight: 800;
      font-size: 14px;
      letter-spacing: .04em;
    }

    .step-t2 {
      font-weight: 700;
      font-size: 16px;
      color: var(--fg);
      margin-bottom: 10px;
    }

    .step-d2 {
      font-size: 13.5px;
      color: var(--fg4);
      line-height: 1.6;
    }

    /* ── PROOF / TESTIMONIAL PLACEHOLDER ── */
    .proof-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      margin-top: 48px;
    }

    .proof-card {
      background: linear-gradient(160deg, var(--card1), var(--card2));
      border: 1px dashed var(--line);
      border-radius: 18px;
      padding: 28px 26px 30px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      min-height: 180px;
      transition: transform .25s, border-color .25s;
    }

    .proof-card:hover {
      transform: translateY(-3px);
      border-color: #4A3820;
    }

    .proof-icon {
      width: 36px;
      height: 36px;
      border-radius: 10px;
      background: rgba(249, 147, 12, .1);
      border: 1px solid rgba(249, 147, 12, .22);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 16px;
    }

    .proof-text {
      font-size: 14px;
      color: var(--fg4);
      line-height: 1.6;
    }

    .proof-text strong {
      color: var(--fg2);
    }

    /* ── ROADMAP ── */
    .road-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 0;
      margin-top: 56px;
      position: relative;
    }

    .road-grid::before {
      content: '';
      position: absolute;
      top: 23px;
      left: 0;
      right: 0;
      height: 2px;
      background: linear-gradient(90deg, var(--pulp) 0%, var(--pulp) 30%, var(--line) 30%);
    }

    .road-item {
      padding: 0 20px 0 0;
      position: relative;
    }

    .road-dot {
      width: 14px;
      height: 14px;
      border-radius: 50%;
      margin-bottom: 20px;
      position: relative;
      z-index: 1;
    }

    .rd-done {
      background: var(--pulp);
      box-shadow: 0 0 0 4px rgba(249, 147, 12, .18);
    }

    .rd-future {
      background: var(--line);
      border: 2px solid var(--fg6);
    }

    .road-time {
      font-size: 11px;
      font-weight: 700;
      color: var(--pulp);
      letter-spacing: 1px;
      text-transform: uppercase;
      margin-bottom: 4px;
    }

    .road-time.dim {
      color: var(--fg5);
    }

    .road-t {
      font-size: 15px;
      font-weight: 700;
      color: var(--fg);
      margin-bottom: 4px;
    }

    .road-d {
      font-size: 13px;
      color: var(--fg4);
      line-height: 1.55;
    }

    /* ── CTA BANNER ── */
    .cta-banner-outer {
      background: var(--bg2);
      border-top: 1px solid var(--line);
    }

    .cta-banner {
      position: relative;
      background: linear-gradient(160deg, #1A1308, #141208 50%, #0E1209);
      border: 1px solid var(--line-college);
      border-radius: 24px;
      padding: 72px 60px;
      text-align: center;
      overflow: hidden;
    }

    .cta-glow-a {
      position: absolute;
      top: -60px;
      left: 20%;
      width: 320px;
      height: 320px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(249, 147, 12, .18), transparent 70%);
      pointer-events: none;
    }

    .cta-glow-b {
      position: absolute;
      bottom: -60px;
      right: 15%;
      width: 280px;
      height: 280px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(78, 122, 50, .15), transparent 70%);
      pointer-events: none;
    }

    .cta-inner2 {
      position: relative;
      z-index: 1;
    }

    .cta-inner2 h2 {
      font-weight: 800;
      font-size: clamp(26px, 5vw, 50px);
      letter-spacing: -.04em;
      margin: 24px 0 18px;
      background: linear-gradient(180deg, #FFFFFF, #E6D9C4);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      line-height: 1.06;
    }

    .cta-inner2 p {
      font-size: 17px;
      color: var(--fg3);
      max-width: 440px;
      margin: 0 auto 36px;
      line-height: 1.6;
    }

    .cta-inner2 .fine {
      font-size: 13px;
      color: var(--fg5);
      margin-top: 18px;
    }

    .slots-chip {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(249, 147, 12, .1);
      color: var(--pulp-lt);
      border: 1px solid rgba(249, 147, 12, .22);
      padding: 6px 16px;
      border-radius: 99px;
      font-size: 13px;
      font-weight: 600;
    }

    /* ── CONTACT ── */
    .contact-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 16px;
      margin-top: 48px;
    }

    .contact-card {
      background: linear-gradient(160deg, var(--card1), var(--card2));
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 1.75rem;
      display: flex;
      gap: 14px;
      align-items: flex-start;
      transition: transform .25s, box-shadow .25s;
    }

    .contact-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 16px 40px -8px rgba(0, 0, 0, .45);
    }

    .contact-avatar {
      width: 48px;
      height: 48px;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      font-weight: 900;
      color: #fff;
      flex-shrink: 0;
    }

    .contact-name {
      font-size: 16px;
      font-weight: 700;
      color: var(--fg);
    }

    .contact-role {
      font-size: 13px;
      color: var(--fg4);
      margin-bottom: 12px;
    }

    .contact-link {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      background: rgba(245, 238, 225, .06);
      border: 1px solid var(--line);
      color: var(--fg2);
      padding: 8px 14px;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 600;
      transition: background .2s;
    }

    .contact-link:hover {
      background: rgba(245, 238, 225, .1);
    }

    /* ── FAQ ── */
    .faq-grid {
      margin-top: 32px;
      display: grid;
      gap: 16px;
    }

    .faq-card {
      background: linear-gradient(160deg, var(--card1), var(--card2));
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 1.5rem;
      transition: transform .25s, box-shadow .25s, border-color .25s;
    }

    .faq-card:hover {
      transform: translateY(-3px);
      box-shadow: 0 14px 34px -8px rgba(0, 0, 0, .4);
      border-color: #342818;
    }

    .faq-q {
      font-size: 15px;
      font-weight: 700;
      color: var(--fg);
      margin-bottom: 6px;
    }

    .faq-a {
      font-size: 13.5px;
      color: var(--fg4);
      line-height: 1.6;
    }

    /* ── FOOTER ── */
    footer {
      border-top: 1px solid var(--line);
    }

    .foot-wrap {
      max-width: 1080px;
      margin: 0 auto;
      padding: 60px 40px 40px;
    }

    .foot-top2 {
      display: grid;
      grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr;
      gap: 40px;
      margin-bottom: 56px;
    }

    .foot-brand-name {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
    }

    .foot-brand-name span {
      font-weight: 800;
      font-size: 18px;
      letter-spacing: -.04em;
    }

    .foot-desc {
      font-size: 13.5px;
      color: var(--fg4);
      line-height: 1.65;
      max-width: 220px;
      margin: 0 0 20px;
    }

    .foot-social {
      display: flex;
      gap: 12px;
    }

    .foot-social a {
      width: 32px;
      height: 32px;
      border-radius: 8px;
      background: var(--card1);
      border: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--fg4);
      transition: color .2s, border-color .2s, transform .2s;
    }

    .foot-social a:hover {
      color: var(--pulp);
      border-color: var(--pulp);
      transform: translateY(-2px);
    }

    .foot-col-h {
      font-weight: 700;
      font-size: 12.5px;
      color: #BBAB8E;
      letter-spacing: .1em;
      text-transform: uppercase;
      margin-bottom: 16px;
    }

    .foot-col-links {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .foot-col-links a {
      font-size: 13.5px;
      color: var(--fg4);
      font-weight: 500;
      transition: color .2s;
    }

    .foot-col-links a:hover {
      color: var(--fg2);
    }

    .foot-bottom2 {
      border-top: 1px solid var(--line);
      padding-top: 28px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 12px;
    }

    .foot-bottom2 span {
      font-size: 12.5px;
      color: var(--fg5);
    }

    /* ── STUDENT DASHBOARD POPUP ── */
    .popup-card-wide {
      max-width: 920px;
    }

    .sdash-topbar-inner {
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .sdash-profile {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 22px 24px;
      border-bottom: 1px solid var(--line);
    }

    .sdash-avatar {
      width: 52px;
      height: 52px;
      border-radius: 14px;
      background: linear-gradient(135deg, #FFB020, #F9930C 60%, #DA5510);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 20px;
      color: var(--bg);
      flex-shrink: 0;
    }

    .sdash-name {
      font-weight: 700;
      font-size: 16px;
      color: var(--fg);
    }

    .sdash-meta {
      font-size: 12.5px;
      color: var(--fg4);
      margin-top: 2px;
    }

    .sdash-completion {
      margin-left: auto;
      text-align: right;
      min-width: 160px;
    }

    .sdash-completion .pct {
      font-weight: 800;
      font-size: 15px;
      color: var(--pulp-lt);
    }

    .sdash-completion .lbl {
      font-size: 11px;
      color: var(--fg5);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .06em;
      margin-bottom: 6px;
    }

    .sdash-bar-track {
      width: 160px;
      height: 6px;
      background: var(--line);
      border-radius: 3px;
      overflow: hidden;
      margin-top: 6px;
    }

    .sdash-bar-fill {
      height: 100%;
      background: linear-gradient(90deg, var(--pulp-lt), var(--pulp));
      border-radius: 3px;
    }

    .sdash-kpi-row {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
      padding: 20px 24px 0;
    }

    .sdash-app-list {
      margin: 20px 24px 4px;
      background: #0F1209;
      border: 1px solid var(--line);
      border-radius: 14px;
      overflow: hidden;
    }

    .sdash-app-head {
      padding: 12px 18px;
      border-bottom: 1px solid var(--line);
      font-size: 13px;
      font-weight: 700;
      color: #BBAB8E;
    }

    .sdash-app-row {
      display: grid;
      grid-template-columns: 1.4fr 1.2fr 1fr auto;
      padding: 12px 18px;
      border-bottom: 1px solid var(--line-soft);
      align-items: center;
      gap: 10px;
    }

    .sdash-app-row:last-child {
      border-bottom: none;
    }

    .status-pill {
      font-size: 11px;
      font-weight: 700;
      padding: 4px 10px;
      border-radius: 100px;
      white-space: nowrap;
      justify-self: end;
    }

    .status-applied {
      background: rgba(255, 194, 75, .14);
      color: #FFC24B;
    }

    .status-shortlisted {
      background: rgba(249, 147, 12, .14);
      color: var(--pulp-lt);
    }

    .status-interview {
      background: rgba(78, 122, 50, .2);
      color: #86efac;
    }

    .status-offer {
      background: rgba(30, 164, 92, .18);
      color: #4ade80;
    }

    .sdash-side-list {
      display: flex;
      flex-direction: column;
      gap: 10px;
      padding: 20px 24px 24px;
    }

    .sdash-note-card {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      background: #0F1209;
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 14px 16px;
    }

    .sdash-note-icon {
      width: 32px;
      height: 32px;
      border-radius: 9px;
      background: rgba(249, 147, 12, .12);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      font-size: 15px;
    }

    .sdash-note-title {
      font-size: 13px;
      font-weight: 700;
      color: var(--fg);
    }

    .sdash-note-sub {
      font-size: 12px;
      color: var(--fg4);
      margin-top: 2px;
    }

    .sdash-body-grid {
      display: grid;
      grid-template-columns: 1.4fr 1fr;
      gap: 0;
    }

    .sdash-divider {
      border-left: 1px solid var(--line);
    }

    /* ── POPUP (founding partner) ── */
    .popup-overlay {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 999;
      background: rgba(0, 0, 0, .78);
      backdrop-filter: blur(8px);
      align-items: center;
      justify-content: center;
      padding: 1.5rem;
    }

    .popup-card {
      background: var(--bg3);
      border: 1px solid var(--line);
      border-radius: 24px;
      max-width: 620px;
      width: 100%;
      max-height: 90vh;
      overflow-y: auto;
      position: relative;
    }

    .popup-head {
      background: linear-gradient(135deg, #1A2312, var(--bg));
      border-radius: 24px 24px 0 0;
      padding: 2.5rem 2rem 2rem;
      position: relative;
      overflow: hidden;
    }

    .popup-head-glow {
      position: absolute;
      top: -60px;
      right: -60px;
      width: 220px;
      height: 220px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(245, 166, 35, .2) 0%, transparent 70%);
      pointer-events: none;
    }

    .popup-close {
      width: 36px;
      height: 36px;
      flex-shrink: 0;
      border-radius: 50%;
      border: 1px solid rgba(255, 255, 255, .15);
      background: rgba(255, 255, 255, .08);
      cursor: pointer;
      font-size: 16px;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .perk-row {
      display: flex;
      gap: 14px;
      align-items: flex-start;
      padding: 1rem 1.25rem;
      background: var(--card2);
      border-radius: 12px;
      border: 1px solid var(--line);
      transition: border-color .2s, transform .2s;
    }

    .perk-row:hover {
      border-color: #342818;
      transform: translateX(2px);
    }

    .perk-icon {
      width: 36px;
      height: 36px;
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      flex-shrink: 0;
    }

    .perk-title {
      font-size: 15px;
      font-weight: 700;
      color: var(--fg);
      margin-bottom: 3px;
    }

    .perk-desc {
      font-size: 13px;
      color: var(--fg4);
      line-height: 1.5;
    }

    /* ── RESPONSIVE ── */
    @media(max-width:900px) {
      .aud-grid {
        grid-template-columns: 1fr;
      }

      .steps-grid2 {
        grid-template-columns: 1fr 1fr;
      }

      .steps-line {
        display: none;
      }

      .kpi-row {
        grid-template-columns: 1fr 1fr;
      }

      .proof-grid {
        grid-template-columns: 1fr;
      }

      .foot-top2 {
        grid-template-columns: 1fr 1fr;
      }
    }

    @media(max-width:640px) {
      nav {
        padding: 0 1.25rem;
      }

      .nav-links {
        display: none;
      }

      .mobile-toggle {
        display: block;
      }

      .hero {
        padding: 100px 1.25rem 60px;
      }

      .section-wrap {
        padding: 64px 1.25rem;
      }

      .hero-copy h1 {
        font-size: clamp(30px, 8.5vw, 42px);
      }

      .dash-body {
        grid-template-columns: 1fr;
      }

      .dash-sidebar {
        display: none;
      }

      .kpi-row {
        grid-template-columns: 1fr 1fr;
      }

      .drives-cols,
      .drive-row {
        grid-template-columns: 1.4fr 1fr .8fr;
      }

      .drives-cols span:nth-child(4),
      .drives-cols span:nth-child(5),
      .drive-row>*:nth-child(4),
      .drive-row>*:nth-child(5) {
        display: none;
      }

      .cta-banner {
        padding: 48px 24px;
      }

      .foot-top2 {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
      }

      .hero-actions .btn-pulp,
      .hero-actions .btn-outline-lt {
        width: 100%;
        justify-content: center;
        text-align: center;
      }
    }
