/*
Theme Name: Future Founders Lab
Theme URI: https://edumonics.in/future-founders/
Author: Edumonics Learning Pvt. Ltd.
Description: A custom responsive WordPress landing-page theme for FutureFounders Lab.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: future-founders-lab
*/

@font-face{font-family:"Gotham";src:local("Gotham"),local("Gotham Medium"),local("Gotham Book");}

    * { margin: 0; padding: 0; box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { font-family: "Inter", sans-serif;  color: #151515; overflow-x: hidden; }
    h1, h2, h3, .blueprint-title { font-family: "Poppins", sans-serif; font-weight: 600; }


    .hero {
      --scroll-fade: 0;


    }


    .nav {
      width: min(1240px, calc(100% - 56px));
      margin: 0 auto;
      height: 86px;
      padding: 0 20px 0 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      position: relative;
      z-index: 10;

      border: 1px solid rgba(255,255,255,.7);
      border-radius: 28px;

      backdrop-filter: blur(18px);
    }

    .brand {
      display: flex;
      align-items: center;
      text-decoration: none;
      height: 62px;
      width: 256px;
      border-radius: 22px;
      overflow: hidden;
      box-shadow: 0 14px 28px rgba(255,46,85,.22), inset 0 0 0 1px rgba(255,255,255,.22);
      transform: translateZ(0);
      background: linear-gradient(120deg, #e90054, #ff321c);
    }
    .brand img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover; object-position:center 30%;
      object-position: center;
      border-radius: 22px;
    }

    .nav-links {
      display: flex;
      gap: 34px;
      align-items: center;
      font-weight: 850;
      font-size: 15px;
    }
    .nav-links a {
      color: #202020;
      text-decoration: none;
      opacity: .82;
      transition: opacity .25s ease, color .25s ease;
    }

    .nav-cta {
      color: #fff;
      text-decoration: none;
      font-weight: 600;
      font-size: 15px;
      padding: 16px 28px;
      border-radius: 999px;
      background: linear-gradient(120deg, #ff2e55, #ff321c);
      box-shadow: 0 14px 30px rgba(255,46,85,.28);
      transition: transform .25s ease, box-shadow .25s ease;
    }
    .nav-cta:hover { transform: translateY(-2px); box-shadow: 0 18px 38px rgba(255,46,85,.36); }

    .wrap {
      width: min(1240px, calc(100% - 56px));
      margin: 0 auto;

      display: grid;
      grid-template-columns: .92fr .98fr;
      gap: 64px;
      align-items: center;
      position: relative;
      z-index: 2;

    }

    .badge {
      display: inline-flex;
      align-items: center;
      width: fit-content;
      padding: 11px 18px;
      border: 1px solid rgba(255,255,255,.46);
      border-radius: 999px;

      backdrop-filter: blur(12px);

      font-size: 12px;
      letter-spacing: .16em;
      font-weight: 950;
      margin-bottom: 24px;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.2);
    }

    h1 {
      font-family: Poppins, Inter, sans-serif;
      font-size: clamp(44px, 4.25vw, 68px);
      line-height: 1.02;
      letter-spacing: -0.055em;
      color: #fff;
      max-width: 620px;
      font-weight: 600;
      margin-bottom: 22px;
    }
    h1 span {
      display: inline-block;
      position: relative;
      white-space: nowrap;
    }
    h1 span::after {
      content: "";
      position: absolute;
      left: 2px;
      right: 4px;
      bottom: 7px;
      height: 8px;
      border-radius: 999px;
      background: rgba(255,255,255,.28);
      z-index: -1;
    }

    .sub {
      max-width: 570px;
      font-size: 18px;
      line-height: 1.58;
      font-weight: 700;
      color: rgba(255,255,255,.9);
      margin-bottom: 30px;
    }

    .actions { display: flex; gap: 14px; flex-wrap: wrap; }
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 52px;
      padding: 0 24px;
      border-radius: 16px;
      font-weight: 600;
      text-decoration: none;
      transition: transform .25s ease, background .25s ease, color .25s ease;
    }
    .btn-primary {   box-shadow: 0 18px 40px rgba(0,0,0,.15); }
    .btn-secondary {  border: 1px solid rgba(255,255,255,.54);  backdrop-filter: blur(10px); }
    .btn:hover { transform: translateY(-3px); }
    .btn-secondary:hover { background: #fff; color: #ff2e55; }

    .visual {
      position: relative;
      min-height: 500px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .visual-card {
      width: min(600px, 100%);
      aspect-ratio: 1.34/1;

      z-index: 2;
      border-radius: 42px;

      border: 1px solid rgba(255,255,255,.34);

      backdrop-filter: blur(12px);

      transform: rotate(-1deg);
    }
    .screen {
      position: absolute;
      inset: 0;
      border-radius: 42px;
      background: #171717;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.12), 0 26px 46px rgba(0,0,0,.16);
      overflow: hidden;
    }
    .screen img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover; object-position:center 30%;
      object-position: center center;
      filter: saturate(1.03) contrast(1.02);
    }

    .float {
      position: absolute;
      border-radius: 26px;
      border: 1px solid rgba(255,255,255,.34);
      background: rgba(40,40,40,.42);
      color: #fff;
      backdrop-filter: blur(18px);
      box-shadow: 0 20px 46px rgba(0,0,0,.18);
      animation: float 5s ease-in-out infinite;
    }
    .float h3 { font-size: 15px; font-weight: 950; margin-bottom: 14px; }
    .skills {
      top: 0;
      left: calc(50% - 300px + 48px);
      width: 220px;
      padding: 22px;
      z-index: 5;
    }
    .projects {
      right: calc(50% - 300px - 18px);
      top: 252px;
      width: 164px;
      padding: 24px 22px;
      animation-delay: -1.6s;
      z-index: 5;
    }
    .grades {
      left: calc(50% - 300px + 48px);
      bottom: 28px;
      width: 170px;
      padding: 20px;
      animation-delay: -2.4s;
      z-index: 5;
    }
    .chips { display:flex; flex-wrap:wrap; gap:10px; }
    .chip { display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.15); font-size:12px; font-weight:900; }
    .big-num { font-size: 38px; font-weight: 950; line-height:1; margin-bottom: 8px; }
    .float p { font-size: 13px; line-height: 1.35; font-weight: 800; color: rgba(255,255,255,.86); }

    @keyframes float {
      0%,100% { transform: translateY(0); }
      50% { transform: translateY(-12px); }
    }

    @media (max-width: 980px) {
      .nav { height: auto; min-height: 78px; flex-wrap: wrap; gap: 18px; padding: 12px; }
      .brand { width: 218px; height: 56px; }
      .nav-links { order: 3; width: 100%; justify-content: center; gap: 18px; flex-wrap: wrap; font-size: 14px; }
      .wrap { grid-template-columns: 1fr; gap: 30px; padding-top: 42px; }
      .visual { min-height:560px; }
      .skills { left: 8px; top: 6px; }
      .projects { right: -4px; top: 218px; }
      .grades { left: 10px; bottom: 8px; }
      h1 { max-width: 720px; }
    }
    @media (max-width: 620px) {
      .hero { padding-top: 14px; }
      .nav, .wrap { width: min(100% - 28px, 1240px); }
      .nav-cta { padding: 13px 18px; font-size: 13px; }
      .brand { width: 188px; height: 52px; }
      .nav-links { display: none; }
      .badge { font-size: 10px; padding: 10px 14px; }
      .sub { font-size: 16px; }
      .visual-card { border-radius: 30px; }
      .screen { inset: 0; border-radius: 30px; }
      .float { transform: scale(.9); }
      .skills { left: 0; top: -10px; width: 190px; }
      .projects { right: -4px; top: 210px; }
      .grades { display: none; }
    }

    /* Hero visual alignment fix: cards now stay anchored around the image like the reference */
    @media (min-width: 981px) {
      .wrap {
        grid-template-columns: .88fr 1.08fr;
        gap: 42px;
        padding-top: 26px;
      }
      .visual {
        min-height: 470px;
        justify-content: flex-end;
        align-items: center;
        padding-top: 18px;
      }
      .visual-card {
        width: min(620px, calc(100% - 58px));
        transform: none;
        border-radius: 40px;
      }
      .screen {
        border-radius: 40px;
      }
      .screen img {
        object-fit: cover; object-position:center 30%;
        object-position: center center;
      }
      .float {
        border-radius: 24px;
        background: rgba(28,28,28,.46);
        box-shadow: 0 18px 42px rgba(0,0,0,.20);
        animation: float 6s ease-in-out infinite;
      }
      .float h3 {
        font-size: 14px;
        margin-bottom: 11px;
      }
      .skills {
        left: 18px;
        top: 2px;
        width: 198px;
        padding: 18px 20px;
      }
      .projects {
        right: -10px;
        top: 235px;
        width: 142px;
        padding: 20px 18px;
      }
      .grades {
        left: 18px;
        bottom: 34px;
        width: 148px;
        padding: 18px 18px;
      }
      .chip {
        font-size: 11px;
        padding: 7px 10px;
      }
      .big-num {
        font-size: 36px;
      }
      .float p {
        font-size: 12px;
      }
    }


    /* Smooth hero-to-white transition: the fade is built into the bottom of the hero,
       so the pink background dissolves into section 2 without a visible cut line. */
    .page-transition-panel { display: none; }
    .hero .hero-inner, .hero .nav { will-change: transform; }
    body { background: #ffffff; }
    .post-hero {

      color: #102033;
      font-family: "Inter", sans-serif;


      border-radius: 0;
      box-shadow: none;
    }
    .blueprint-section {
      width: min(1160px, calc(100% - 48px));


    }

    .section-kicker {


      font: 700 12px/1 "Inter", sans-serif;


    }
    .blueprint-title {


      margin: 0 0 16px;
    }
    .blueprint-copy {


      margin: 0 0 26px;

    }
    .reality-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
      margin-top: 30px;
    }
    .reality-card {
      min-height: 118px;
      padding: 20px;
      border-radius: 28px;
      background: #ffffff;
      border: 1px solid rgba(16, 32, 51, .08);
      box-shadow: 0 18px 45px rgba(16, 32, 51, .07);
      position: relative;
      overflow: hidden;
    }
    .reality-card::before {
      content: "";
      position: absolute;
      inset: 0 0 auto 0;
      height: 4px;
      background: linear-gradient(90deg, #ff3046, #ff6a2a);
    }
    .reality-card strong {
      display: block;
      font-family: "Poppins", sans-serif;
      font-weight: 600;
      font-size: 19px;
      color: #0b1f3a;
      margin-bottom: 8px;
    }
    .reality-card span {
      display: block;
      font-size: 14px;
      line-height: 1.45;
      color: #64748b;
      font-weight: 500;
    }
    .responsibility-wrap {
      display: grid;
      grid-template-columns: .9fr 1.1fr;
      gap: 36px;
      align-items: center;
      padding: 38px;
      border-radius: 40px;
      background: linear-gradient(135deg, #fff7f5, #ffffff 48%, #f4f8ff);
      border: 1px solid rgba(16, 32, 51, .08);
      box-shadow: 0 24px 60px rgba(16, 32, 51, .075);
    }

    .flow-item {


      font-family: "Inter", sans-serif;
      font-weight: 600;
      color: #0b1f3a;
    }
    .flow-icon {


      flex: 0 0 42px;


      font-size: 18px;

      box-shadow: 0 12px 22px rgba(255, 48, 70, .20);
    }

    .responsibility-note {
      margin-top: 22px;
      padding: 16px 18px;
      border-left: 4px solid #ff3046;
      border-radius: 16px;
      background: rgba(255, 48, 70, .065);
      color: #4b5d73;
      font-size: 15px;
      line-height: 1.55;
      font-weight: 500;
    }
    @media (max-width: 900px) {
      .blueprint-section { width: min(100% - 28px, 680px); padding: 68px 0; }
      .reality-grid { grid-template-columns: 1fr 1fr; }
      .responsibility-wrap { grid-template-columns: 1fr; padding: 26px; }
    }
    @media (max-width: 560px) {
      .reality-grid { grid-template-columns: 1fr; }
      .blueprint-title { font-size: 38px; }
    }


    .blueprint-section {
      opacity: 0;
      transform: translateY(22px);
      transition: opacity .75s ease, transform .75s ease;
    }
    .blueprint-section.is-visible {
      opacity: 1;
      transform: translateY(0);
    }

    @media (prefers-reduced-motion: reduce) {
      .blueprint-section { opacity: 1; transform: none; transition: none; }
    }


    /* v18: smooth scroll-linked background fade: pink hero background fades into white without a hard section break */
    .hero {
      --bg-fade: 0;


    }
    .hero-bg-fade {


      inset: 0;


    }


    .blueprint-section { padding: 62px 0 !important; }


    .blueprint-title { font-family: "Poppins", sans-serif !important; font-weight: 600 !important; }
    .blueprint-copy, .reality-card span, .responsibility-note, p, span { font-family: "Inter", sans-serif !important; }


    /* v19 final: seamless hero-to-white blend without adding empty scroll space */


    .hero::after {


      min-height: 0 !important;


    }


    @media (max-width: 900px) {
      .post-hero {
        margin-top: -110px !important;
        padding-top: 100px !important;
      }
      #reality { padding-top: 18px !important; }
    }


    /* v20: fixed scroll-linked fade overlay — no layout gap, no hard white block */


    .hero-bg-fade {
      display: block !important;
      position: fixed !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      height: 46vh !important;
      z-index: 40 !important;
      pointer-events: none !important;
      opacity: var(--bg-fade, 0) !important;
      background: linear-gradient(
        to bottom,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,.14) 22%,
        rgba(255,255,255,.45) 52%,
        rgba(255,255,255,.78) 76%,
        #ffffff 100%
      ) !important;
      transition: opacity .05s linear !important;
      will-change: opacity !important;
    }


    @media (max-width: 900px) {
      #reality { padding-top: 62px !important; }
      .hero-bg-fade { height: 40vh !important; }
    }


    /* v21: TRUE scroll-linked background fade.
       The whole viewport background fades from FutureFounders pink to white while scrolling.
       No gradient band, no separator line, no extra empty transition block. */


    body::before {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      background:
        radial-gradient(circle at 72% 40%, rgba(255,255,255,.24), transparent 27%),
        radial-gradient(circle at 18% 76%, rgba(255,255,255,.13), transparent 30%),
        radial-gradient(circle at 104% 100%, rgba(255,255,255,.16), transparent 24%),
        linear-gradient(120deg, #e90054 0%, #ff2e55 47%, #ff321c 100%);
      opacity: calc(1 - var(--scroll-bg-white));
      will-change: opacity;
      transform: translateZ(0);
    }
    body::after {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      background: #ffffff;
      opacity: var(--scroll-bg-white);
      will-change: opacity;
      transform: translateZ(0);
    }

    .hero::after, .hero-bg-fade, .page-transition-panel {
      display: none !important;
    }

    .hero .nav,
    .hero .wrap,
    .post-hero {
      position: relative !important;
      z-index: 2 !important;
    }


    h1, h2, h3, .title, .blueprint-title {
      font-family: "Poppins", sans-serif !important;
      font-weight: 600 !important;
    }
    p, span, a, button, .sub, .blueprint-copy, .section-kicker, .reality-card span, .responsibility-note {
      font-family: "Inter", sans-serif !important;
    }
    @media (max-width: 900px) {
      .blueprint-section { padding-top: 54px !important; padding-bottom: 58px !important; }
      #reality { padding-top: 46px !important; }
    }


    /* v22: actual scroll-down BACKGROUND transition only.
       No strips, no gradient divider, no top-to-bottom overlay, no hero fading.
       The whole page background color itself changes from pink to white as the user scrolls. */

    html, body {

      transition: none !important;
    }
    body::before,
    body::after,
    .hero::after,
    .hero-bg-fade,
    .page-transition-panel {
      display: none !important;
      content: none !important;
      opacity: 0 !important;
      background: none !important;
    }


    /* v23: clean curved white layer between hero and Section 2.
       Removed all scroll-fade/transition hacks. Hero stays pink; white section enters through a soft curve. */
    :root {
      --ff-bg-scroll: #ffffff !important;
      --ff-white-progress: 0 !important;
      --scroll-bg-white: 0 !important;
    }

    body::before,
    body::after,
    .hero-bg-fade,
    .page-transition-panel {
      display: none !important;
      content: none !important;
      opacity: 0 !important;
      background: none !important;
    }
    .hero {


      z-index: 1 !important;

    }
    .hero::before {


      background-image: radial-gradient(rgba(255,255,255,.11) 1px, transparent 1px) !important;
      background-size: 26px 26px !important;


    }
    .hero::after {


      left: -6vw !important;
      right: -6vw !important;
      bottom: -1px !important;
      width: 112vw !important;
      height: clamp(150px, 17vw, 260px) !important;


      background: #ffffff !important;
      clip-path: ellipse(70% 100% at 50% 100%) !important;
      box-shadow: 0 -24px 70px rgba(12, 18, 38, .08) !important;
    }
    .hero .nav,
    .hero .wrap {


      opacity: 1 !important;
      transform: none !important;
      filter: none !important;
    }


    .blueprint-section {
      background: #ffffff !important;


    }
    #reality {

      margin-top: 0 !important;
    }
    @media (max-width: 900px) {
      .hero::after {
        height: 150px !important;
        clip-path: ellipse(88% 100% at 50% 100%) !important;
      }
      .hero .wrap {
        padding-bottom: 130px !important;
      }
      #reality { padding-top: 42px !important; }
    }


    /* v24: inverted white arc layer (concave dip) between hero and Section 2 */


    #reality {
      padding-top: clamp(48px, 6vh, 72px) !important;
    }
    @media (max-width: 900px) {
      .hero-curve { height: 130px !important; }
      .hero .wrap { padding-bottom: 115px !important; }
    }


    /* v26: Inc42-inspired interactive hero background animation */
    :root {


      --inc-orange: #ff6a00;

      --inc-cream: #fff8ee;
    }


    body::before,
    body::after {
      display: none !important;
    }


    .hero .nav,
    .hero .wrap {
      position: relative !important;
      z-index: 3 !important;
    }


    .hero h1,
    .hero h1 span {
      color: #101014 !important;
      text-shadow: none !important;
    }


    .hero .sub {

      text-shadow: none !important;
    }


    @keyframes inc42HeroMesh {
      0% { background-position: 0% 44%, 100% 0%, 65% 100%, center; }
      50% { background-position: 62% 32%, 52% 18%, 40% 82%, center; }
      100% { background-position: 100% 58%, 0% 36%, 72% 46%, center; }
    }

    @keyframes inc42BlobFloat {
      0% { transform: translate3d(-1.5%, -1%, 0) scale(1.04) rotate(0deg); }
      50% { transform: translate3d(1.25%, .5%, 0) scale(1.08) rotate(2deg); }
      100% { transform: translate3d(-.25%, 1.5%, 0) scale(1.05) rotate(-1deg); }
    }

    @media (prefers-reduced-motion: reduce) {
      .hero,
      .hero::before { animation: none !important; }
    }


    /* v27: corrected Inc42-style TRUE RED hero background (removed brown/orange tones) */
    :root {


      --inc-red: #ed1c24;
      --inc-red-deep: #c80000;
      --inc-black: #070707;
    }

    .hero {
      color: var(--inc-black) !important;

      background-size: 135% 135%, 125% 125%, 110% 110%, 100% 100% !important;

    }


    .hero .kicker,
    .hero .eyebrow,
    .hero .tagline {
      color: #ed1c24 !important;
    }


    .hero .btn-secondary:hover {
      background: #ed1c24 !important;
      border-color: #ed1c24 !important;
      color: #ffffff !important;
    }


    /* v28: true red hero + orange cursor glow + completed landing sections */
    :root {


      --ff-red-soft: #ff4a5f;
      --ff-orange: #ff6a00;
      --ff-orange-bright: #ff8a00;
      --hero-x: 50%;
      --hero-y: 42%;
    }

    .hero {


      animation: ffRedBreath 12s ease-in-out infinite alternate !important;
    }

    .hero::before {


      width: 58vw !important;
      height: 58vw !important;
      min-width: 560px !important;
      min-height: 560px !important;
      left: var(--hero-x) !important;
      top: var(--hero-y) !important;

      transform: translate(-50%, -50%) !important;


      filter: blur(22px) saturate(1.25) !important;
      transition: left .08s linear, top .08s linear !important;
      animation: ffOrangePulse 5.5s ease-in-out infinite alternate !important;
    }

    .hero::after {
      content: "" !important;
      position: absolute !important;
      inset: 0 !important;
      display: block !important;
      z-index: 1 !important;
      pointer-events: none !important;
      opacity: .18 !important;
      background-image:
        linear-gradient(rgba(255,255,255,.34) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.28) 1px, transparent 1px) !important;
      background-size: 42px 42px !important;
      mask-image: radial-gradient(circle at var(--hero-x) var(--hero-y), #000 0%, transparent 65%) !important;
      -webkit-mask-image: radial-gradient(circle at var(--hero-x) var(--hero-y), #000 0%, transparent 65%) !important;
    }

    .hero .nav,
    .hero .wrap,
    .hero-curve {
      position: relative !important;
      z-index: 3 !important;
    }

    .hero .nav {
      background: rgba(255,255,255,.92) !important;
      box-shadow: 0 26px 70px rgba(96,0,14,.24), 0 12px 34px rgba(255,106,0,.16) !important;
      border: 1px solid rgba(255,255,255,.55) !important;
    }

    .hero .badge {
      background: rgba(255,255,255,.18) !important;
      color: #ffffff !important;
      border-color: rgba(255,255,255,.52) !important;
      backdrop-filter: blur(8px) !important;
    }

    .hero h1,
    .hero h1 span,
    .hero .sub {
      color: #ffffff !important;
      text-shadow: 0 18px 44px rgba(85,0,12,.28) !important;
    }


    .hero .btn-primary {
      background: #08080c !important;
      color: #ffffff !important;
      box-shadow: 0 18px 42px rgba(0,0,0,.22), 0 0 0 1px rgba(255,255,255,.24) inset !important;
    }

    .hero .btn-secondary {
      background: rgba(255,255,255,.92) !important;
      color: #111116 !important;
      border-color: rgba(255,255,255,.6) !important;
    }

    .visual-card {
      background: rgba(255,255,255,.50) !important;
      border-color: rgba(255,255,255,.55) !important;

    }

    @keyframes ffRedBreath {
      0% { background-position: 0% 0%, 100% 0%, center; }
      100% { background-position: 12% 6%, 86% 14%, center; }
    }

    @keyframes ffOrangePulse {
      0% { opacity: .70; filter: blur(28px) saturate(1.16); }
      100% { opacity: .96; filter: blur(18px) saturate(1.35); }
    }

    .program-grid,
    .curriculum-grid,
    .school-grid,
    .faq-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
      margin-top: 34px;
    }

    .ff-info-card,
    .ff-step,
    .faq-item {
      background: #ffffff;
      border: 1px solid rgba(11,11,15,.08);
      border-radius: 28px;
      padding: 26px;
      box-shadow: 0 18px 50px rgba(11,11,15,.07);
    }

    .ff-info-card strong,
    .ff-step strong,
    .faq-item strong {
      display: block;
      color: #101014;
      font-size: 1.08rem;
      margin-bottom: 8px;
    }

    .ff-info-card span,
    .ff-step span,
    .faq-item span {
      display: block;
      color: rgba(16,16,20,.68);
      line-height: 1.55;
      font-weight: 600;
    }

    .journey-timeline {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;
      margin-top: 34px;
    }

    .ff-step {
      position: relative;
      overflow: hidden;
    }

    .ff-step::before {
      content: attr(data-step);
      display: inline-grid;
      place-items: center;
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--ff-red), var(--ff-orange));
      color: #fff;
      font-weight: 900;
      margin-bottom: 18px;
    }

    #pilot {
      text-align: center;
      background: linear-gradient(135deg, #101014, #250007);
      color: #ffffff;
      border-radius: 42px;
      margin: clamp(42px, 7vw, 88px) auto;
      max-width: 1180px;
    }

    #pilot .blueprint-title,
    #pilot .blueprint-copy,
    #pilot .section-kicker { color: #ffffff !important; }

    #pilot .btn-primary {
      display: inline-flex;
      margin-top: 22px;
      background: linear-gradient(135deg, var(--ff-red), var(--ff-orange)) !important;
      border: 0 !important;
    }

    @media (max-width: 900px) {
      .program-grid,
      .curriculum-grid,
      .school-grid,
      .faq-grid,
      .journey-timeline { grid-template-columns: 1fr; }
      .hero::before { min-width: 420px !important; min-height: 420px !important; }
    }


/* === Future Founders Ver 29: corrected Inc42-inspired red hero + orange cursor glow === */
:root {
  --ff-red-deep: #d8002f;
  --ff-red: #f4063d;
  --ff-red-hot: #ff2448;
  --ff-orange-logo: #ff4b18;
  --ff-orange-soft: #ff7a1a;
  --ff-mx: 63%;
  --ff-my: 38%;
}
html, body {
  background: #ffffff !important;

}
body::before,
body::after,
.hero::after,
.hero-bg-fade,
.page-transition-panel {
  display: none !important;
  opacity: 0 !important;
  content: none !important;
  background: none !important;
}
.hero {
  isolation: isolate !important;

  padding: 24px 0 72px !important;


}
.ff-interactive-bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}
.ff-interactive-bg::before {
  content: "";
  position: absolute;
  inset: -18%;
  background:
    radial-gradient(circle at 22% 26%, rgba(255,255,255,.13), transparent 22%),
    radial-gradient(circle at 76% 24%, rgba(255, 75, 24, .28), transparent 24%),
    radial-gradient(circle at 50% 92%, rgba(255,255,255,.10), transparent 28%);
  filter: blur(10px);
  animation: ffMeshDrift 12s ease-in-out infinite alternate;
}
.ff-cursor-orb {
  position: absolute !important;
  left: var(--ff-mx) !important;
  top: var(--ff-my) !important;
  width: clamp(360px, 45vw, 720px) !important;
  height: clamp(360px, 45vw, 720px) !important;
  border-radius: 999px !important;
  transform: translate(-50%, -50%) !important;
  background: radial-gradient(circle, rgba(255, 98, 24, .95) 0%, rgba(255, 75, 24, .70) 14%, rgba(255, 122, 26, .28) 35%, transparent 66%) !important;
  filter: blur(22px) saturate(1.2) !important;
  opacity: .95 !important;

  will-change: left, top !important;
}
.ff-soft-mesh {
  position: absolute !important;
  inset: -10% !important;
  background-image: radial-gradient(rgba(255,255,255,.18) 1px, transparent 1px) !important;
  background-size: 28px 28px !important;
  opacity: .18 !important;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.95), rgba(0,0,0,.18));
  animation: ffDotMove 18s linear infinite !important;
}
.hero::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: .7 !important;
  background: linear-gradient(90deg, rgba(255,255,255,.10), transparent 34%, rgba(0,0,0,.08)) !important;
}

.nav {
  margin-top: 0 !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 24px 65px rgba(122, 0, 28, .24), 0 8px 22px rgba(0,0,0,.10) !important;
}
.brand,
.nav-cta {
  background: linear-gradient(120deg, #e90054 0%, #ff2448 56%, #ff4b18 100%) !important;
}

.wrap {
  min-height: calc(100svh - 132px) !important;
  padding: 44px 0 58px !important;
}
.badge {
  background: rgba(255,255,255,.15) !important;
  border-color: rgba(255,255,255,.48) !important;
  color: #fff !important;
}
h1, .sub { color: #ffffff !important; }
.sub { opacity: .93 !important; }
.btn-primary { background: #11131a !important; color: #fff !important; }
.btn-secondary { background: rgba(255,255,255,.92) !important; color: #151515 !important; border-color: rgba(255,255,255,.65) !important; }

.post-hero {
  display: block !important;


}
@keyframes ffMeshDrift {
  0% { transform: translate3d(-2%, -1%, 0) scale(1); }
  100% { transform: translate3d(2%, 2%, 0) scale(1.04); }
}
@keyframes ffDotMove {
  from { background-position: 0 0; }
  to { background-position: 120px 84px; }
}
@media (max-width: 900px) {
  .hero { padding-bottom: 54px !important; }
  .ff-cursor-orb { width: 520px !important; height: 520px !important; }
}


/* === Future Founders Ver 30: FINAL curve fix — white arc ONLY at the bottom of hero === */
.hero {
  position: relative !important;
  overflow: hidden !important;
  padding-top: 24px !important;

}

/* Stop any older top/scroll transition layers from showing */
body::before,
body::after,
.hero-bg-fade,
.page-transition-panel {
  display: none !important;
  opacity: 0 !important;
  height: 0 !important;
  content: none !important;
  background: transparent !important;
}

/* This is the ONLY arc. It is pinned to the bottom, not the top. */
.hero-curve {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;

  width: 100% !important;

  z-index: 3 !important;
  display: block !important;
  pointer-events: none !important;
  transform: none !important;
  margin: 0 !important;
}
.hero-curve path {
  fill: #ffffff !important;
}

/* Keep hero content above the red/orange animated background, but below/clear of the curve. */
.hero .nav,
.hero .wrap {
  position: relative !important;
  z-index: 4 !important;
}


/* Make the red background visible across the full hero while orange follows the cursor. */
.hero {
  background:
    radial-gradient(circle at var(--ff-mx) var(--ff-my), rgba(255, 75, 24, .95) 0%, rgba(255, 75, 24, .62) 10%, rgba(255, 122, 26, .22) 24%, transparent 46%),
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.16) 0%, transparent 28%),
    linear-gradient(120deg, #d8002f 0%, #f4063d 48%, #ff2448 100%) !important;
}
.ff-cursor-orb {
  z-index: 1 !important;
  mix-blend-mode: screen !important;
}
.ff-soft-mesh,
.ff-interactive-bg::before {
  z-index: 0 !important;
}
.post-hero {


  background: #ffffff !important;
  position: relative !important;
  z-index: 6 !important;
}

@media (max-width: 900px) {
  .hero-curve { height: 120px !important; }
  .hero .wrap { padding-bottom: 112px !important; }
}


/* === Future Founders Ver 31: reduce excess white space below hero === */
.hero {
  min-height: auto !important;
  padding-bottom: 0 !important;
}

.hero .wrap {
  min-height: auto !important;
  padding-top: clamp(34px, 4vw, 54px) !important;
  padding-bottom: clamp(66px, 7vw, 96px) !important;
}

.hero-curve {
  height: clamp(78px, 8vw, 118px) !important;
  bottom: -1px !important;
}

.post-hero {
  margin-top: 0 !important;
  padding-top: clamp(18px, 2.5vw, 36px) !important;
}

.blueprint-section:first-child {
  padding-top: clamp(22px, 3vw, 42px) !important;
}

@media (max-width: 900px) {
  .hero .wrap {
    padding-bottom: 78px !important;
  }
  .hero-curve {
    height: 82px !important;
  }
  .post-hero {
    padding-top: 18px !important;
  }
}


/* === Future Founders Ver 32: full blueprint sections === */
.post-hero{background:#fff;overflow:hidden;}
.blueprint-section{max-width:1180px;margin:0 auto;padding:clamp(56px,7vw,96px) 24px;position:relative;}
.section-kicker{display:inline-flex;align-items:center;gap:10px;border-radius:999px;font-weight:900;text-transform:uppercase;}
.blueprint-title{color:#071d3a;max-width:900px;}
.blueprint-copy{color:#4b5565;font-weight:600;}
.ff-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px;}
.ff-section-head .blueprint-copy{max-width:520px;}
.ff-panel{border:1px solid #edf0f5;background:rgba(255,255,255,.86);box-shadow:0 24px 70px rgba(7,29,58,.08);border-radius:34px;padding:clamp(24px,3.5vw,42px);}
.ff-dark{color:#fff;border-radius:38px;padding:clamp(34px,5vw,64px);position:relative;overflow:hidden;}
.ff-dark:before{content:"";position:absolute;inset:-30%;pointer-events:none;}
.ff-dark>*{position:relative;z-index:1;}.ff-dark .blueprint-title,.ff-dark h2,.ff-dark h3{color:#fff;}.ff-dark .blueprint-copy,.ff-dark p{color:rgba(255,255,255,.78);}
.reality-grid,.program-grid,.curriculum-grid,.school-grid,.faq-grid,.included-grid,.mindset-grid,.skill-grid,.transform-grid,.parent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.reality-card,.ff-info-card,.faq-item,.included-card,.skill-card,.transform-card{border:1px solid #edf0f5;background:#fff;border-radius:22px;padding:26px;box-shadow:0 18px 50px rgba(7,29,58,.07);transition:transform .25s ease, box-shadow .25s ease;}
.reality-card:hover,.ff-info-card:hover,.included-card:hover,.skill-card:hover,.transform-card:hover{transform:translateY(-6px);box-shadow:0 26px 70px rgba(7,29,58,.12);}
.reality-card strong,.ff-info-card strong,.faq-item strong,.included-card strong,.skill-card strong,.transform-card strong{display:block;color:#071d3a;font:800 21px/1.2 Poppins;margin-bottom:10px;letter-spacing:-.03em;}.reality-card span,.ff-info-card span,.faq-item span,.included-card span,.skill-card span,.transform-card span{display:block;color:#647084;line-height:1.55;font-weight:600;}.card-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#ff4b1f,#f50043);color:#fff;display:grid;place-items:center;font-weight:900;margin-bottom:18px;box-shadow:0 16px 34px rgba(255,75,31,.22);}
.compare-wrap{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:stretch;}.compare-col{border-radius:34px;padding:30px;background:#fff;border:1px solid #edf0f5;box-shadow:0 24px 60px rgba(7,29,58,.07);}.compare-col.future{background:linear-gradient(180deg,#fff,#fff6f3);border-color:#ffd6cb;}.compare-col h3{font-size:30px;color:#071d3a;margin-bottom:22px;}.compare-col ul{list-style:none;display:grid;gap:14px;}.compare-col li{padding:14px 16px;border-radius:18px;background:#f6f8fb;color:#354052;font-weight:800;}.compare-col.future li{background:#fff0eb;color:#d8280b;}.vs-pill{align-self:center;width:72px;height:72px;border-radius:50%;background:#071d3a;color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 18px 38px rgba(7,29,58,.22);}
.intro-grid,.responsibility-wrap,.philosophy-grid,.inside-grid,.dashboard-grid,.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;}.mission-flow{display:grid;gap:12px;}.flow-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #edf0f5;border-radius:22px;padding:16px 18px;box-shadow:0 14px 38px rgba(7,29,58,.06);}.flow-icon{width:42px;height:42px;border-radius:14px;background:#071d3a;color:#fff;display:grid;place-items:center;font-weight:900;}.flow-arrow{width:2px;height:22px;background:linear-gradient(#ff4b1f,#f50043);margin-left:38px;border-radius:10px;}
.triangle-card{min-height:420px;display:grid;place-items:center;position:relative;background:radial-gradient(circle at center,#fff8f5,#fff);border-radius:38px;border:1px solid #ffdcd2;box-shadow:0 24px 70px rgba(255,75,31,.1);}.triangle{width:min(420px,90%);aspect-ratio:1;position:relative;}.tri-node{position:absolute;width:145px;min-height:92px;border-radius:26px;background:#fff;box-shadow:0 18px 46px rgba(7,29,58,.1);display:grid;place-items:center;text-align:center;padding:16px;color:#071d3a;font-weight:900;}.tri-node small{display:block;color:#ff4b1f;text-transform:uppercase;letter-spacing:.12em;font-size:11px;}.node-founder{top:0;left:50%;transform:translateX(-50%);}.node-officer{bottom:15px;left:0;}.node-future{bottom:15px;right:0;}.node-student{top:52%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#071d3a,#163c70);color:#fff;}.tri-line{position:absolute;inset:72px 48px 64px;border-left:3px dashed #ff4b1f;border-right:3px dashed #ff4b1f;border-bottom:3px dashed #ff4b1f;clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.55;}
.grade-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative;}.grade-card{background:#fff;border:1px solid #edf0f5;border-radius:22px;padding:26px;box-shadow:0 18px 50px rgba(7,29,58,.07);}.grade-card b{display:inline-flex;background:#071d3a;color:#fff;border-radius:999px;padding:8px 14px;margin-bottom:16px;}.grade-card h3{font-size:24px;color:#071d3a;margin-bottom:10px;}.inside-steps{position:relative;display:grid;gap:42px;padding:34px 0 34px 96px;}.inside-steps:before{content:"";position:absolute;left:44px;top:24px;bottom:24px;width:3px;border-radius:999px;background:#F21D6B;box-shadow:0 0 20px rgba(242,29,107,.24),0 0 48px rgba(242,29,107,.12);}.inside-steps:after{content:"";position:absolute;left:36px;top:26px;width:18px;height:18px;border-radius:50%;background:#F21D6B;box-shadow:0 0 0 6px rgba(242,29,107,.10),0 0 20px rgba(242,29,107,.65),0 0 42px rgba(242,29,107,.35);animation:insideTimelineDot 5.6s linear infinite;}.inside-step{position:relative;display:flex;align-items:center;min-height:96px;padding:28px 36px;border-radius:22px;background:#fff;border:1px solid rgba(242,29,107,.28);box-shadow:0 20px 60px rgba(7,29,58,.06),0 0 34px rgba(242,29,107,.06);font-weight:900;font-size:18px;color:#071d3a;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}.inside-step:hover{transform:translateY(-8px);border-color:rgba(242,29,107,.58);box-shadow:0 28px 72px rgba(7,29,58,.10),0 0 38px rgba(242,29,107,.16);}.inside-step:before{content:"";position:absolute;left:-20px;top:50%;width:20px;height:2px;background:rgba(242,29,107,.34);transform:translateY(-50%);}.inside-step i{position:absolute;left:-84px;top:50%;transform:translateY(-50%);z-index:2;font-style:normal;width:64px;height:64px;border-radius:50%;background:#F21D6B;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:900;box-shadow:0 0 0 10px #fff,0 0 0 12px rgba(242,29,107,.22),0 0 34px rgba(242,29,107,.42);transition:box-shadow .28s ease,transform .28s ease;}.inside-step:hover i{box-shadow:0 0 0 10px #fff,0 0 0 12px rgba(242,29,107,.34),0 0 48px rgba(242,29,107,.72);transform:translateY(-50%) scale(1.03);}@keyframes insideTimelineDot{0%{top:26px;opacity:.75}100%{top:calc(100% - 44px);opacity:1}}.included-card{min-height:168px;}.transform-card{display:flex;align-items:center;justify-content:space-between;gap:18px;}.transform-card span{font-size:15px;}.arrow-change{font-weight:900;color:#ff4b1f;font-size:24px;}.school-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}.benefit-pill{padding:18px;border-radius:22px;background:#fff;border:1px solid #edf0f5;box-shadow:0 14px 34px rgba(7,29,58,.06);font-weight:900;color:#071d3a;}.quote-card{background:#fff;border-radius:30px;padding:28px;border:1px solid #edf0f5;box-shadow:0 18px 50px rgba(7,29,58,.07);}.quote-card:before{content:"“";font:900 62px/1 Poppins;color:#ff4b1f;}.quote-card p{font-size:22px;line-height:1.35;color:#071d3a;font-weight:900;}.dash-card{background:#fff;border:1px solid #edf0f5;border-radius:30px;padding:24px;box-shadow:0 18px 50px rgba(7,29,58,.07);}.metric{margin:18px 0;}.metric-top{display:flex;justify-content:space-between;color:#071d3a;font-weight:900;margin-bottom:8px;}.bar{height:12px;background:#eef2f7;border-radius:999px;overflow:hidden;}.bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff4b1f,#f50043);}.choice-table{width:100%;border-collapse:separate;border-spacing:0 10px;}.choice-table th{text-align:left;color:#071d3a;font:900 18px Poppins;padding:14px;}.choice-table td{background:#fff;border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5;padding:16px;font-weight:800;color:#4b5565;}.choice-table td:first-child{border-left:1px solid #edf0f5;border-radius:16px 0 0 16px;}.choice-table td:last-child{border-right:1px solid #edf0f5;border-radius:0 16px 16px 0;}.check{color:#14a45b;}.cross{color:#ef233c;}.final-vision{text-align:center;max-width:1180px;}.final-vision .blueprint-title{margin-left:auto;margin-right:auto;}.cta-box{text-align:center;background:linear-gradient(135deg,#ff4b1f,#f50043);border-radius:42px;padding:clamp(42px,6vw,78px);color:#fff;box-shadow:0 36px 100px rgba(245,0,67,.24);}.cta-box h2{font-size:clamp(34px,5vw,64px);line-height:1;color:#fff;margin-bottom:18px;}.cta-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:28px;}.cta-actions .btn{border-radius:18px;padding:18px 24px;text-decoration:none;font-weight:900;}.btn-light{background:#fff;color:#071d3a;}.btn-outline{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.42);}

/* Two-part comparison card copy: label semi-bold, phrase normal. */


@media(max-width:720px){
  #gap .compare-card-text{flex-wrap:wrap!important;gap:5px!important;}
}

@media(max-width:950px){.ff-section-head,.intro-grid,.responsibility-wrap,.philosophy-grid,.inside-grid,.dashboard-grid,.choice-grid,.compare-wrap{grid-template-columns:1fr;}.reality-grid,.program-grid,.curriculum-grid,.school-grid,.faq-grid,.included-grid,.mindset-grid,.skill-grid,.transform-grid,.parent-grid,.grade-timeline,.school-benefits{grid-template-columns:1fr;}.vs-pill{margin:auto;}.blueprint-section{padding-left:18px;padding-right:18px;}.triangle-card{min-height:360px;}.tri-node{width:120px;}.choice-table{font-size:14px;}.choice-table th,.choice-table td{padding:12px;}}


/* Final header + brand color correction */
:root{--ff-logo-pink:#e90054;--ff-logo-pink-2:#ff2e78;--ff-logo-red:#ff321c;}
.nav-links a{scroll-margin-top:120px;}
.nav-links a:hover{color:var(--ff-logo-pink)!important;opacity:1;}
.section-kicker{background:#fff0f6!important;color:var(--ff-logo-pink)!important;box-shadow:0 10px 30px rgba(233,0,84,.10)!important;}
.ff-dark .section-kicker,#pilot .section-kicker{background:rgba(255,255,255,.18)!important;color:#ffffff!important;border:1px solid rgba(255,255,255,.32);}
.ff-dark{background:linear-gradient(135deg,var(--ff-logo-pink) 0%,var(--ff-logo-pink-2) 52%,var(--ff-logo-red) 100%)!important;box-shadow:0 34px 90px rgba(233,0,84,.24)!important;}
.ff-dark:before{background:radial-gradient(circle at 82% 22%,rgba(255,255,255,.24),transparent 28%),radial-gradient(circle at 18% 80%,rgba(255,255,255,.14),transparent 24%)!important;}
section[id]{scroll-margin-top:120px;}


    /* Ver 34 updates: clean uploaded icons + section fade transitions */
    .reality-card .card-icon {
      width: 58px !important;
      height: 58px !important;
      margin-bottom: 16px !important;
      border-radius: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      color: inherit !important;
    }
    .reality-card .card-icon img {
      width: 58px;
      height: 58px;
      object-fit: contain;
      display: block;
      background: transparent;
      border: 0;
      box-shadow: none;
      filter: drop-shadow(0 10px 18px rgba(255, 48, 70, .12));
    }

    .post-hero .blueprint-section.section-visible {
      opacity: 1;
      transform: translateY(0) scale(1);
      filter: blur(0);
    }

    @media (prefers-reduced-motion: reduce) {
      .post-hero .blueprint-section,
      .post-hero .blueprint-section.section-visible,
      .post-hero .blueprint-section.section-fading {
        opacity: 1;
        transform: none;
        filter: none;
        transition: none;
      }
    }


/* Ver 35: keyword-focused messaging */
.keyword-row{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 6px;}
.keyword-row span{display:inline-flex;align-items:center;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);color:#fff;font-weight:800;font-size:12px;letter-spacing:.02em;backdrop-filter:blur(10px);}
.choice-table td:first-child{font-weight:900;color:#10204a;}


/* === Future_Fouders_Ver_56: Our Philosophy animated triangle graphic === */
#philosophy .triangle-card{
  min-height:560px;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%, rgba(242,29,107,.18), transparent 34%),
    radial-gradient(circle at 26% 70%, rgba(11,31,68,.10), transparent 28%),
    radial-gradient(circle at 62% 20%, rgba(242,29,107,.12), transparent 28%),
    #fff;
  border:0;
  box-shadow:none;
}
#philosophy .triangle-card:before{
  content:"";
  position:absolute;
  width:520px;height:520px;
  border-radius:50%;
  background:repeating-radial-gradient(circle, rgba(255,255,255,.75) 0 2px, transparent 2px 58px);
  opacity:.75;
  filter:blur(.2px);
}
#philosophy .triangle{
  width:min(560px,96%);
  height:500px;
  aspect-ratio:auto;
  position:relative;
}
#philosophy .triangle svg.philo-lines{
  position:absolute;
  inset:0;
  width:100%;height:100%;
  overflow:visible;
  z-index:1;
}
#philosophy .philo-path-base{
  fill:none;
  stroke:rgba(242,29,107,.20);
  stroke-width:2;
}
#philosophy .philo-path{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:4;
  stroke-dasharray:12 18;
  filter:drop-shadow(0 0 8px rgba(242,29,107,.55));
  animation:philoDash 2.4s linear infinite;
}
#philosophy .philo-path.blue{stroke:#2547ff;filter:drop-shadow(0 0 8px rgba(37,71,255,.35));}
#philosophy .philo-path.pink{stroke:#f21d6b;}
#philosophy .philo-inner-arrow{
  fill:none;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:10 14;
  animation:philoDash 1.8s linear infinite;
}
@keyframes philoDash{to{stroke-dashoffset:-60;}}
#philosophy .tri-node{
  position:absolute;
  z-index:3;
  width:150px;
  min-height:142px;
  border-radius:30px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 28px 70px rgba(11,31,68,.14), inset 0 1px 0 rgba(255,255,255,.95);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:6px;
  text-align:center;
  padding:18px 14px;
  color:#071d3a;
  font-weight:800;
  backdrop-filter:blur(10px);

  cursor:pointer;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
}
#philosophy .tri-node:hover,
#philosophy .tri-node.is-active{
  background:#fff;
  border-color:rgba(242,29,107,.32);
  box-shadow:0 34px 88px rgba(11,31,68,.18), 0 0 38px rgba(242,29,107,.20), inset 0 1px 0 rgba(255,255,255,.95);
}
#philosophy .node-founder:hover,
#philosophy .node-founder.is-active{transform:translateX(-50%) scale(1.1);}
#philosophy .node-officer:hover,
#philosophy .node-officer.is-active{transform:scale(1.1);}
#philosophy .node-future:hover,
#philosophy .node-future.is-active{transform:scale(1.1);}
#philosophy .tri-node:focus-visible{outline:3px solid rgba(242,29,107,.42);outline-offset:5px;}
.mindset-linked-section{scroll-margin-top:110px;}
.mindset-linked-section.is-philo-highlight{
  animation:philoSectionPulse 1.4s ease both;
}
@keyframes philoSectionPulse{
  0%{box-shadow:0 0 0 0 rgba(242,29,107,0);}
  35%{box-shadow:0 0 0 10px rgba(242,29,107,.10);}
  100%{box-shadow:0 0 0 0 rgba(242,29,107,0);}
}
#philosophy .tri-node .node-icon{
  width:52px;height:52px;
  display:grid;
  place-items:center;
  margin-bottom:4px;
}
#philosophy .tri-node svg{width:48px;height:48px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
#philosophy .tri-node span{font-size:25px;line-height:1.02;letter-spacing:-.04em;}
#philosophy .tri-node small{display:block;color:#f21d6b;text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:900;}
#philosophy .node-founder{top:5px;left:50%;transform:translateX(-50%);color:#f21d6b;}
#philosophy .node-founder span{color:#071d3a;}
#philosophy .node-officer{bottom:28px;left:6px;color:#071d3a;}
#philosophy .node-future{bottom:28px;right:6px;color:#f21d6b;}
#philosophy .node-future span{color:#071d3a;}
#philosophy .node-student{
  top:54%;left:50%;
  width:150px;min-height:165px;border-radius:22px;


}
#philosophy .node-student .node-icon svg{stroke:#fff;filter:drop-shadow(0 0 8px rgba(255,255,255,.6));}
#philosophy .node-student span{font-size:20px;color:#fff;}
#philosophy .philo-sparkle{position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 12px #fff,0 0 22px rgba(242,29,107,.55);z-index:2;animation:philoSpark 2.8s ease-in-out infinite;}
#philosophy .s1{left:18%;top:23%;animation-delay:.2s;}#philosophy .s2{right:24%;top:26%;animation-delay:.8s;}#philosophy .s3{left:43%;bottom:19%;animation-delay:1.3s;}#philosophy .s4{right:36%;bottom:29%;animation-delay:.5s;}
@keyframes philoSpark{50%{transform:scale(1.75);opacity:.45}}
@media(max-width:950px){#philosophy .triangle-card{min-height:500px;}#philosophy .triangle{transform:scale(.88);transform-origin:center;}}


/* === Ver 62: philosophy center card fixed + outer cards interactive === */
#philosophy .node-student{
  cursor:default !important;
  pointer-events:none !important;
  transition:none !important;
  transform:translate(-50%,-50%) !important;
  background:radial-gradient(circle at 45% 25%,#173d83,#071d3a 62%,#030a18) !important;
  color:#fff !important;
  border:2px solid rgba(255,255,255,.95) !important;
  box-shadow:0 0 0 3px rgba(242,29,107,.22), 0 0 44px rgba(242,29,107,.85), 0 26px 70px rgba(11,31,68,.35) !important;
}
#philosophy .node-student:hover{
  transform:translate(-50%,-50%) !important;
  background:radial-gradient(circle at 45% 25%,#173d83,#071d3a 62%,#030a18) !important;
}
#philosophy .node-student span,
#philosophy .node-student .node-icon svg{
  color:#fff !important;
  stroke:#fff !important;
}
#philosophy .node-founder,
#philosophy .node-officer,
#philosophy .node-future{
  cursor:pointer;
}


/* Officer Mindset showcase update */
.officer-showcase{position:relative;overflow:hidden;padding-top:72px;padding-bottom:72px;background:radial-gradient(circle at 68% 24%, rgba(242,29,107,.14), transparent 34%), radial-gradient(circle at 78% 68%, rgba(61,83,255,.10), transparent 30%), #fff;border-radius:0;}
.officer-showcase::before{content:"";position:absolute;inset:24px;pointer-events:none;background:linear-gradient(135deg, rgba(242,29,107,.05), transparent 35%, rgba(37,71,255,.045));border-radius:36px;}
.officer-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:0.9fr 1.1fr;align-items:center;gap:44px;max-width:1320px;margin:0 auto;}
.officer-copy{padding-left:8px;}
.officer-pill{display:inline-flex;align-items:center;padding:10px 22px;border-radius:999px;background:rgba(242,29,107,.09);color:#f21d6b;text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:14px;box-shadow:0 16px 38px rgba(242,29,107,.14);}
.officer-copy h2{margin:34px 0 18px;color:#061b3d;font-size:clamp(42px,5vw,76px);line-height:.98;font-weight:950;letter-spacing:-.055em;}
.officer-copy h2 span{color:#f21d6b;display:inline-block;}
.officer-line{width:78px;height:5px;border-radius:999px;background:#f21d6b;box-shadow:26px 0 0 -1px rgba(242,29,107,.55);margin:20px 0 24px;}
.officer-copy p{max-width:500px;color:#4c5a74;font-weight:650;font-size:22px;line-height:1.5;}
.officer-visual{position:relative;min-height:520px;display:flex;align-items:flex-end;justify-content:center;}
.officer-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle, rgba(242,29,107,.25), rgba(242,29,107,.12) 42%, transparent 68%);filter:blur(.2px);bottom:22px;}
.officer-ring{position:absolute;border-radius:50%;border:2px solid rgba(242,29,107,.14);bottom:52px;}
.ring-one{width:520px;height:520px;}
.ring-two{width:430px;height:430px;border-style:dashed;border-color:rgba(242,29,107,.28);animation:officerSpin 18s linear infinite;}
@keyframes officerSpin{to{transform:rotate(360deg)}}
.officer-student-img{position:relative;z-index:3;max-height:520px;max-width:78%;object-fit:contain;filter:drop-shadow(0 35px 36px rgba(8,27,60,.22));}
.orbit-icon{position:absolute;z-index:4;width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.96);border:1px solid rgba(242,29,107,.17);box-shadow:0 18px 34px rgba(242,29,107,.16);padding:14px;overflow:hidden;}
.orbit-icon svg{width:36px;height:36px;fill:none;stroke:#f21d6b;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;}.orbit-icon img{width:40px!important;height:40px!important;object-fit:contain!important;display:block!important;border-radius:0!important;}
.orbit-icon.blue{border-color:rgba(37,71,255,.18);box-shadow:0 22px 38px rgba(37,71,255,.15);}
.orbit-icon.blue svg{stroke:#4257e8;}
.orbit-a{left:18%;top:18%;}.orbit-b{right:16%;top:24%;}.orbit-c{left:12%;bottom:20%;}.orbit-d{right:8%;bottom:26%;}
.officer-card-row{position:relative;z-index:2;max-width:1180px;margin:-20px auto 0;display:grid;grid-template-columns:1fr 54px 1fr 54px 1fr;align-items:center;gap:0;}
.officer-value-card{min-height:220px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border:1px solid rgba(8,27,60,.09);border-radius:22px;padding:22px 20px 18px;text-align:center;box-shadow:0 28px 60px rgba(8,27,60,.09);transition:transform .25s ease, box-shadow .25s ease;}
.officer-value-card:hover{transform:translateY(-8px);box-shadow:0 34px 75px rgba(8,27,60,.14);}
.value-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg, rgba(242,29,107,.12), rgba(255,255,255,.86));box-shadow:0 15px 32px rgba(242,29,107,.15);}
.value-icon svg{width:28px;height:28px;fill:none;stroke:#f21d6b;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;}.value-icon img{width:28px!important;height:28px!important;object-fit:contain!important;display:block!important;border-radius:0!important;}
.officer-value-card h3{font-size:20px;color:#061b3d;margin:0;font-weight:950;letter-spacing:-.03em;}
.officer-value-card span{display:block;width:54px;height:4px;border-radius:999px;background:#f21d6b;margin:10px auto 14px;}
.officer-value-card p{font-size:14px;line-height:1.45;color:#42506d;font-weight:650;margin:0 auto;max-width:200px;}
.officer-value-card b{display:block;text-align:left;color:rgba(242,29,107,.58);font-size:16px;margin-top:28px;}
.purple-card .value-icon{background:linear-gradient(135deg, rgba(129,91,255,.15), rgba(255,255,255,.9));box-shadow:0 15px 32px rgba(129,91,255,.16);}.purple-card .value-icon svg{stroke:#7b5cff;}.purple-card span{background:#7b5cff;}.purple-card b{color:rgba(123,92,255,.6);}
.blue-card .value-icon{background:linear-gradient(135deg, rgba(37,71,255,.13), rgba(255,255,255,.9));box-shadow:0 15px 32px rgba(37,71,255,.15);}.blue-card .value-icon svg{stroke:#2547ff;}.blue-card span{background:#2547ff;}.blue-card b{color:rgba(37,71,255,.58);}
.officer-arrow{width:54px;height:54px;border-radius:50%;background:#fff;display:grid;place-items:center;color:#f21d6b;font-size:44px;line-height:1;font-weight:700;box-shadow:0 12px 34px rgba(242,29,107,.18);border:1px solid rgba(242,29,107,.14);justify-self:center;z-index:5;}
.officer-bottom-note{position:relative;z-index:2;max-width:560px;margin:26px auto 0;text-align:center;background:rgba(242,29,107,.08);color:#3d4964;font-weight:750;border-radius:999px;padding:14px 22px;font-size:18px;}
.officer-bottom-note strong{color:#f21d6b;}
@media(max-width:950px){.officer-hero-grid{grid-template-columns:1fr;text-align:center;}.officer-copy{padding-left:0;}.officer-line{margin-left:auto;margin-right:auto;}.officer-copy p{margin:auto;}.officer-card-row{grid-template-columns:1fr;gap:18px;}.officer-arrow{display:none;}.officer-visual{min-height:440px;}.officer-student-img{max-height:440px;}.orbit-icon{width:60px;height:60px;padding:12px;}.orbit-icon svg{width:30px;height:30px;}.orbit-icon img{width:34px!important;height:34px!important;}}
@media(max-width:560px){.officer-copy h2{font-size:42px;}.officer-visual{min-height:360px;}.officer-student-img{max-width:92%;max-height:360px;}.officer-glow,.ring-one{width:340px;height:340px;}.ring-two{width:280px;height:280px;}.officer-value-card{min-height:auto;}.officer-showcase{padding-top:44px;padding-bottom:44px;}}


/* Future Skills premium interactive timeline */
.future-skills-timeline-section{
  max-width: 1260px !important;
  padding-top: clamp(58px, 7vw, 96px) !important;
  padding-bottom: clamp(58px, 7vw, 96px) !important;
  overflow: visible;
}
.future-skills-head{max-width: 920px; margin-bottom: 42px;}
.future-skills-badge{
  width: fit-content;


}
.future-skills-badge span{
  width: 34px;
  height: 34px;
  border-radius: 50%;

  place-items:center;
  background: rgba(255,255,255,.82);
  box-shadow: inset 0 0 0 1px rgba(242,29,107,.09);
}
.future-skills-title{

  color: #071b3a;


}
.future-skills-title span{color:#F21D6B;}
.future-skills-underline{
  width: 76px;
  height: 5px;
  border-radius: 999px;
  background: #F21D6B;
  margin: 32px 0 22px;
  position: relative;
}
.future-skills-underline:after{
  content:"";
  width: 8px;
  height: 5px;
  border-radius: 999px;
  background:#F21D6B;
  position:absolute;
  right:-16px;
  top:0;
}
.future-skills-subtext{
  margin: 0;


}
.skills-timeline{
  display:grid;
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap: 0;
  align-items: stretch;
  filter: drop-shadow(0 18px 36px rgba(7,27,58,.07));
}
.skill-chevron{
  appearance:none;
  border: 1px solid rgba(242,29,107,.18);
  background: rgba(255,255,255,.86);
  min-height: 162px;
  padding: 26px 26px 24px 38px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  color:#071b3a;
  cursor:pointer;
  position:relative;
  clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 50%, calc(100% - 34px) 100%, 0 100%, 34px 50%);
  margin-left:-22px;
  transition: transform .28s ease, background .28s ease, color .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.skill-chevron:first-child{
  margin-left:0;
  clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 50%, calc(100% - 34px) 100%, 0 100%);
  border-radius: 14px 0 0 14px;
}
.skill-chevron:last-child{border-radius: 0 14px 14px 0;}
.skill-chevron:hover,
.skill-chevron.is-active{
  z-index: 5;
  transform: translateY(-8px);
  background: linear-gradient(135deg, #F21D6B, #E40658);
  color: #fff;
  border-color: rgba(242,29,107,.72);
  box-shadow: 0 26px 60px rgba(242,29,107,.32);
}
.skill-icon{
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display:grid;
  place-items:center;
  background: rgba(242,29,107,.10);
  box-shadow: 0 14px 28px rgba(242,29,107,.12), inset 0 0 0 1px rgba(242,29,107,.10);
  transition: background .28s ease, box-shadow .28s ease;
}
.skill-chevron:hover .skill-icon,
.skill-chevron.is-active .skill-icon{
  background: rgba(255,255,255,.20);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.40), 0 14px 26px rgba(0,0,0,.10);
}
.skill-icon svg{
  width: 32px;
  height: 32px;
  fill:none;
  stroke: currentColor;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  color:#F21D6B;
}
.skill-chevron:hover .skill-icon svg,
.skill-chevron.is-active .skill-icon svg{color:#fff;}
.skill-chevron strong{
  font-size: clamp(17px, 1.8vw, 22px);
  line-height: 1.05;
  letter-spacing: -.035em;
  font-weight: 950;
  text-align:center;
}
.skills-desc-wrap{
  min-height: 94px;
  display:grid;
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap:0;
  margin-top: 0;
  padding-left: 0;
}
.skill-desc{
  position:relative;
  opacity:0;
  transform: translateY(-4px);
  pointer-events:none;
  color:#3d4963;
  font-size: clamp(15px, 1.7vw, 20px);
  line-height: 1.35;
  font-weight: 650;
  text-align:center;
  padding: 54px 12px 0;
  transition: opacity .22s ease, transform .22s ease;
}
.skill-desc:before{
  content:"";
  width:2px;
  height:33px;
  background:#F21D6B;
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  border-radius:999px;
  box-shadow:0 0 0 4px rgba(242,29,107,.08);
}
.skill-desc:after{
  content:"";
  width:9px;
  height:9px;
  border-right:2px solid #F21D6B;
  border-bottom:2px solid #F21D6B;
  position:absolute;
  top:31px;
  left:50%;
  transform: translateX(-50%) rotate(45deg);
}
.skill-desc.is-visible{opacity:1; transform:translateY(0);}
@media(max-width:1050px){
  .skills-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;filter:none;}
  .skill-chevron,.skill-chevron:first-child,.skill-chevron:last-child{margin-left:0;clip-path:none;border-radius:22px;}
  .skills-desc-wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
}
@media(max-width:640px){
  .skills-timeline,.skills-desc-wrap{grid-template-columns:1fr;}
  .future-skills-title{font-size:42px;}
}


/* Ver 75: fixed clean timeline-grid path for A 21st Century Learning System only */
.learning-system-section{overflow:hidden;isolation:isolate;}
.learning-system-layout{display:grid;grid-template-columns:minmax(280px, .72fr) minmax(640px, 1.55fr);gap:clamp(42px,6vw,86px);align-items:center;}
.learning-system-copy .blueprint-title{margin-bottom:28px;}
.learning-system-grid{position:relative;display:grid!important;grid-template-columns:repeat(4,minmax(145px,1fr))!important;gap:24px 28px!important;align-items:stretch;padding:30px 18px;}
.learning-system-grid .system-path-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0;}
.learning-system-grid .system-path-line{fill:none;stroke:#F21D6B;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round;opacity:.86;filter:drop-shadow(0 0 3px rgba(242,29,107,.20));}
.learning-system-grid .system-path-nodes circle{fill:#fff;stroke:#F21D6B;stroke-width:3;filter:drop-shadow(0 0 3px rgba(242,29,107,.35));}
.learning-system-grid .system-orb{fill:#F21D6B;filter:drop-shadow(0 0 7px rgba(242,29,107,.95)) drop-shadow(0 0 18px rgba(242,29,107,.50));}
.learning-system-grid .system-card{position:relative;z-index:2;height:174px!important;min-height:174px!important;padding:18px 18px 16px!important;border:1px solid rgba(242,29,107,.14)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 14px 36px rgba(7,29,58,.06)!important;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;will-change:transform,box-shadow,border-color;transition:transform 250ms ease,box-shadow 250ms ease,border-color 250ms ease;}
.learning-system-grid .system-card:hover,.learning-system-grid .system-card.is-orb-active{transform:translateY(-8px) scale(1.02);border-color:#F21D6B!important;box-shadow:0 28px 74px rgba(7,29,58,.12),0 0 34px rgba(242,29,107,.12)!important;}
.system-num{position:absolute;top:14px;left:14px;width:36px;height:36px;border-radius:9px;background:#F21D6B;color:#fff;display:grid;place-items:center;font:900 14px/1 Poppins,Inter,sans-serif;box-shadow:0 10px 20px rgba(242,29,107,.20);}
.system-icon{width:62px;height:62px;margin:22px auto 14px;border-radius:50%;display:grid;place-items:center;background:transparent;box-shadow:none;transition:transform 250ms ease,box-shadow 250ms ease,background 250ms ease;}
.system-icon svg{width:34px;height:34px;fill:none;stroke:#F21D6B;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;}
.learning-system-grid .system-card strong{display:block;margin:0 0 6px!important;color:#071d3a!important;font:900 18px/1.08 Poppins,Inter,sans-serif!important;letter-spacing:-.035em;transition:none!important;}
.learning-system-grid .system-card span{display:block;color:#647084!important;font-size:13px!important;line-height:1.32!important;font-weight:650!important;}
.system-accent{width:34px;height:3px;border-radius:999px;background:#F21D6B;margin:10px auto 0;transition:width 250ms ease,box-shadow 250ms ease;}
.learning-system-grid .system-card:hover .system-icon,.learning-system-grid .system-card.is-orb-active .system-icon{transform:scale(1.08);background:transparent;box-shadow:none;}
.learning-system-grid .system-card:hover .system-accent,.learning-system-grid .system-card.is-orb-active .system-accent{width:58px;box-shadow:0 0 16px rgba(242,29,107,.35);}
.system-particle{position:absolute;width:6px;height:6px;border-radius:999px;background:#F21D6B;opacity:.12;box-shadow:0 0 18px rgba(242,29,107,.35);animation:systemParticleFloat 10s ease-in-out infinite;pointer-events:none;z-index:0;}
.system-particle.p1{right:12%;top:16%;animation-duration:10s;}.system-particle.p2{right:34%;top:22%;animation-duration:12s;animation-delay:-3s;}.system-particle.p3{right:6%;bottom:24%;animation-duration:11s;animation-delay:-5s;}.system-particle.p4{left:48%;bottom:14%;animation-duration:13s;animation-delay:-2s;}.system-particle.p5{left:58%;top:54%;animation-duration:10s;animation-delay:-6s;}
@keyframes systemParticleFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-16px,0)}}
@media(max-width:1100px){.learning-system-layout{grid-template-columns:1fr;gap:28px;}.learning-system-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.learning-system-grid{grid-template-columns:1fr!important;padding:16px 0;}.learning-system-grid .system-path-svg{display:none;}.learning-system-grid .system-card{height:auto!important;min-height:170px!important;}}
@media (prefers-reduced-motion:reduce){.learning-system-grid .system-orb,.system-particle{animation:none!important;}.learning-system-grid .system-card{transition:none;}}


/* Premium WEF comparison flow */
.wef-comparison-flow{width:100%;margin-top:28px;display:grid;gap:16px;position:relative;}
.wef-flow-head{display:grid;grid-template-columns:1.08fr 1fr 1.08fr;align-items:center;gap:28px;margin:4px 0 14px;}
.wef-head-item{display:flex;align-items:center;gap:14px;color:#071d3a;font-weight:900;font-size:17px;white-space:nowrap;position:relative;}
.wef-head-item:not(:last-child)::after{content:"";height:1px;flex:1;background:rgba(242,29,107,.15);margin-left:16px;}
.wef-head-item.lab{color:#F21D6B;}
.wef-head-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(242,29,107,.08);border:1px solid rgba(242,29,107,.22);box-shadow:0 14px 32px rgba(242,29,107,.08);color:#F21D6B;flex:0 0 auto;}
.wef-head-icon svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;}
.wef-flow-row{display:grid;grid-template-columns:1.08fr 46px 1fr 46px 1.08fr;align-items:stretch;gap:14px;transition:transform .3s ease, filter .3s ease;}
.wef-flow-row:hover{transform:translateY(-5px);filter:drop-shadow(0 22px 42px rgba(7,29,58,.08));}
.wef-flow-card{min-height:82px;border-radius:20px;border:1px solid #edf0f5;background:#fff;display:flex;align-items:center;gap:18px;padding:16px 22px;color:#071d3a;font-weight:900;box-shadow:0 16px 38px rgba(7,29,58,.035);transition:border-color .3s ease,box-shadow .3s ease,background .3s ease;}
.wef-flow-row:hover .wef-flow-card{border-color:rgba(242,29,107,.34);box-shadow:0 18px 44px rgba(7,29,58,.06);}
.wef-flow-card.regular{color:#364050;font-weight:800;}
.wef-flow-card.lab{background:linear-gradient(135deg,rgba(242,29,107,.10),rgba(242,29,107,.035));border-color:rgba(242,29,107,.25);}
.wef-flow-row:hover .wef-flow-card.lab{border-color:rgba(242,29,107,.62);box-shadow:0 18px 54px rgba(242,29,107,.16),0 0 0 1px rgba(242,29,107,.05) inset;}
.wef-skill-icon{width:48px;height:48px;border-radius:13px;background:rgba(242,29,107,.08);display:grid;place-items:center;color:#F21D6B;flex:0 0 auto;}
.wef-skill-icon svg{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;}
.wef-minus{width:28px;height:28px;border-radius:50%;border:2px solid rgba(242,29,107,.75);display:grid;place-items:center;color:#F21D6B;flex:0 0 auto;}
.wef-minus::before{content:"";width:10px;height:2px;border-radius:999px;background:currentColor;}
.wef-check{width:36px;height:36px;border-radius:50%;background:#F21D6B;display:grid;place-items:center;color:#fff;box-shadow:0 12px 26px rgba(242,29,107,.24);flex:0 0 auto;}
.wef-check svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;}
.wef-arrow{display:grid;place-items:center;color:#F21D6B;font-size:29px;font-weight:900;line-height:1;align-self:center;animation:wefArrowSlide 1.5s ease-in-out infinite;}
.wef-flow-row:hover .wef-arrow{animation-duration:1s;}
@keyframes wefArrowSlide{0%,100%{transform:translateX(-2px);opacity:.72}50%{transform:translateX(5px);opacity:1}}
@media(max-width:980px){.wef-flow-head{grid-template-columns:1fr 1fr 1fr;gap:16px;}.wef-head-item{font-size:15px;}.wef-flow-row{grid-template-columns:1fr 34px 1fr 34px 1fr;gap:10px;}.wef-flow-card{padding:15px 16px;gap:12px;font-size:15px;}.wef-skill-icon{width:42px;height:42px;}}
@media(max-width:720px){.wef-flow-head{display:none;}.wef-flow-row{grid-template-columns:1fr;gap:8px;}.wef-arrow{transform:rotate(90deg);animation:wefArrowDown 1.5s ease-in-out infinite;}.wef-flow-row:hover .wef-arrow{animation-duration:1s;}.wef-flow-card{min-height:76px;}.wef-flow-row:hover{transform:translateY(-3px);}}
@keyframes wefArrowDown{0%,100%{transform:rotate(90deg) translateX(-2px);opacity:.72}50%{transform:rotate(90deg) translateX(5px);opacity:1}}


/* v84: footer fixed - no dark card/background; same soft hero-style mesh background with a small curved top edge */
.final-footer-section{


  background-size:130% 130%,120% 120%,110% 110%,100% 100% !important;


}


.final-footer-section .btn-outline:hover,
.final-footer-section .btn-light:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 20px 44px rgba(242,29,107,.16),0 16px 34px rgba(7,29,58,.10) !important;
}
@media(max-width:720px){
  .final-footer-section{margin-top:78px !important;padding-top:104px !important;}
  .final-footer-section::before{height:70px !important;clip-path:polygon(0 0,100% 0,100% 100%,84% 88%,68% 72%,50% 54%,32% 72%,16% 88%,0 100%) !important;}
  .final-footer-section .cta-actions{gap:10px !important;}
}


/* === Future Founders Ver 36: entrepreneurship hero + working CTA form === */
.entrepreneurship-tags{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 28px;max-width:650px;}
.entrepreneurship-tags span{display:inline-flex;align-items:center;gap:8px;padding:11px 15px;border-radius:999px;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.34);color:#fff;font-weight:900;font-size:13px;letter-spacing:.01em;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.16);}
.entrepreneurship-tags span::before{content:"";width:7px;height:7px;border-radius:50%;background:#ffb11f;box-shadow:0 0 18px rgba(255,177,31,.8);}
.visual-card{position:relative;overflow:hidden!important;}.venture-overlay{position:absolute;left:22px;right:22px;bottom:22px;z-index:4;padding:18px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.7);box-shadow:0 22px 60px rgba(20,0,10,.18);backdrop-filter:blur(16px);}
.venture-top{font-family:Poppins,Inter,sans-serif;font-size:16px;font-weight:900;color:#071d3a;letter-spacing:-.04em;margin-bottom:12px;}.venture-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px;}.venture-steps span{padding:10px 8px;border-radius:14px;background:#fff1f4;color:#e90054;text-align:center;font-size:12px;font-weight:900;}.venture-metric{padding:12px 14px;border-radius:16px;background:linear-gradient(120deg,#e90054,#ff321c);color:#fff;font-weight:900;text-align:center;font-size:13px;}
.pilot-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;}.pilot-modal.is-open{display:flex;}.pilot-modal-backdrop{position:absolute;inset:0;background:rgba(5,8,18,.62);backdrop-filter:blur(10px);}.pilot-form-card{position:relative;width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:34px;padding:34px;box-shadow:0 40px 120px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.6);}.pilot-close{position:absolute;right:22px;top:18px;width:42px;height:42px;border:0;border-radius:50%;background:#fff1f4;color:#e90054;font-size:30px;line-height:1;cursor:pointer;font-weight:400;}.pilot-form-card h2{font-family:Poppins,Inter,sans-serif;color:#071d3a;font-size:clamp(28px,4vw,44px);line-height:1;margin:8px 48px 12px 0;letter-spacing:-.05em;}.pilot-form-card p{color:#647084;font-weight:700;line-height:1.6;margin-bottom:22px;}.pilot-lead-form{display:grid;gap:14px;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}.pilot-lead-form label{display:grid;gap:8px;color:#071d3a;font-weight:900;font-size:13px;}.pilot-lead-form input,.pilot-lead-form select,.pilot-lead-form textarea{width:100%;border:1px solid #e5e8ef;border-radius:16px;padding:14px 15px;font:600 15px Inter,sans-serif;outline:none;background:#fff;}.pilot-lead-form textarea{min-height:96px;resize:vertical;}.pilot-lead-form input:focus,.pilot-lead-form select:focus,.pilot-lead-form textarea:focus{border-color:#ff2e78;box-shadow:0 0 0 4px rgba(255,46,120,.12);}.form-submit{border:0;border-radius:999px;padding:16px 24px;background:linear-gradient(120deg,#e90054,#ff321c);color:#fff;font-weight:900;font-size:16px;cursor:pointer;box-shadow:0 18px 42px rgba(233,0,84,.25);}.form-note{color:#7b8494;text-align:center;font-weight:700;}.interest-display{background:#fff7fb!important;color:#071d3a!important;cursor:default;}.pilot-lead-form.is-submitted::before{content:"Thank you — your request has been captured.";display:block;padding:14px 16px;border-radius:16px;background:#effaf3;color:#14793c;font-weight:900;text-align:center;}
body.modal-open{overflow:hidden!important;}
@media(max-width:720px){.form-row,.venture-steps{grid-template-columns:1fr;}.pilot-form-card{padding:26px 20px;}.venture-overlay{left:14px;right:14px;bottom:14px;}.entrepreneurship-tags{gap:8px;}.entrepreneurship-tags span{font-size:12px;padding:9px 12px;}}


/* Ver 37: cleaner hero with entrepreneurship focus */
.hero h1{max-width:760px!important;margin-bottom:18px!important;}
.hero h1 span{font-weight:950!important;white-space:normal!important;}
.hero h1 span::after{content:none!important;background:transparent!important;}
.hero .sub{max-width:650px!important;font-size:clamp(17px,1.45vw,23px)!important;line-height:1.5!important;margin-bottom:28px!important;color:#fff!important;}
.entrepreneurship-tags,.venture-overlay{display:none!important;}
.visual-card{box-shadow:0 32px 90px rgba(0,0,0,.22)!important;}
.visual-card .screen{height:100%!important;}
.visual-card img{display:block!important;}
@media(max-width:900px){.hero h1{max-width:100%!important;}.hero .sub{max-width:100%!important;}}


/* === Future Founders Ver 40: slim framework ticker strip === */
.framework-marquee {


  position: relative;
  z-index: 8;
}
.framework-marquee::before { display: none !important; }
.framework-marquee-inner {
  position: relative;
  z-index: 1;
  display: flex !important;
  align-items: center !important;
  gap: clamp(22px, 4vw, 64px) !important;
  min-height: 68px !important;
  padding: 0 clamp(22px, 5vw, 72px) !important;
}
.framework-marquee-copy {
  flex: 0 0 auto !important;
  margin: 0 !important;
  color: #4d5868 !important;
  font: 800 clamp(15px, 1.25vw, 18px)/1.2 Inter, Manrope, sans-serif !important;
  letter-spacing: -.015em !important;
  white-space: nowrap !important;
}
.framework-marquee-copy span {
  color: #e90054 !important;
  font-weight: 950 !important;
}
.framework-logo-window {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%) !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%) !important;
}
.framework-logo-track {
  display: flex !important;
  align-items: center !important;
  gap: clamp(28px, 4vw, 58px) !important;
  width: max-content !important;
  animation: frameworkMarquee 28s linear infinite !important;
  will-change: transform;
}
.framework-logo-track:hover { animation-play-state: paused !important; }
.framework-logo {
  flex: 0 0 auto !important;
  width: auto !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.framework-logo img {
  width: auto !important;
  height: 34px !important;
  max-width: 150px !important;
  max-height: 34px !important;
  object-fit: contain !important;
  display: block !important;
  background: transparent !important;
  filter: saturate(.95) contrast(1.02) !important;
  opacity: .92 !important;
}
.framework-logo:hover img { filter: none !important; opacity: 1 !important; }
@keyframes frameworkMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 820px) {
  .framework-marquee-inner { flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; padding: 14px 20px !important; min-height: auto !important; }
  .framework-marquee-copy { white-space: normal !important; }
  .framework-logo-window { width: 100% !important; }
  .framework-logo img { height: 30px !important; max-height: 30px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .framework-logo-track { animation: none !important; flex-wrap: wrap !important; justify-content: center !important; width: auto !important; }
}


/* === Future Founders Ver 41: full-width moving framework marquee === */
.framework-marquee {
  width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  background: #fff !important;
  border-top: 1px solid #eceff4 !important;
  border-bottom: 1px solid #eceff4 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.framework-marquee .framework-logo-window {
  width: 100% !important;
  overflow: hidden !important;
  min-width: 0 !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.framework-marquee .framework-logo-track {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  width: max-content !important;
  min-height: 62px !important;
  animation: frameworkMarqueeFull 42s linear infinite !important;
  will-change: transform !important;
}
.framework-marquee:hover .framework-logo-track { animation-play-state: paused !important; }
.framework-marquee-unit {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  gap: clamp(24px, 3.2vw, 48px) !important;
  padding-right: clamp(40px, 6vw, 86px) !important;
  white-space: nowrap !important;
}
.framework-text {
  flex: 0 0 auto !important;
  color: #344054 !important;
  font: 800 clamp(15px, 1.35vw, 20px)/1.1 Inter, Manrope, sans-serif !important;
  letter-spacing: -0.02em !important;
}
.framework-text strong {
  color: #e90054 !important;
  font-weight: 950 !important;
}
.framework-marquee .framework-logo {
  flex: 0 0 auto !important;
  height: 38px !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.framework-marquee .framework-logo img {
  height: 32px !important;
  max-height: 32px !important;
  width: auto !important;
  max-width: 142px !important;
  object-fit: contain !important;
  display: block !important;
  background: transparent !important;
  filter: saturate(.95) contrast(1.04) !important;
  opacity: .96 !important;
}
@keyframes frameworkMarqueeFull {
  from { transform: translateX(0); }
  to { transform: translateX(-33.333%); }
}
@media (max-width: 820px) {
  .framework-marquee .framework-logo-track { min-height: 56px !important; animation-duration: 34s !important; }
  .framework-marquee-unit { gap: 22px !important; padding-right: 44px !important; }
  .framework-text { font-size: 14px !important; }
  .framework-marquee .framework-logo img { height: 27px !important; max-height: 27px !important; max-width: 120px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .framework-marquee .framework-logo-track { animation: none !important; }
}


  /* Hero: clean Entrepreneurship text with no shadow or glow */
  .hero h1 span {
    color: #ffffff !important;
    text-shadow: none !important;
    filter: none !important;
  }
  .hero h1 span::after {
    display: none !important;
  }

  /* Scroll effect: fade in / fade out only, no blur-in or blur-out */
  .post-hero .blueprint-section {
    opacity: 0;
    transform: none !important;
    filter: none !important;
    transition: opacity .8s ease !important;
    will-change: opacity !important;
  }
  .post-hero .blueprint-section.is-visible,
  .post-hero .blueprint-section.section-visible {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
  .post-hero .blueprint-section.section-fading {
    opacity: 0 !important;
    transform: none !important;
    filter: none !important;
  }

  /* Schools Must Change: number squares in logo pink */
  #responsibility .flow-icon,
  .responsibility-wrap .flow-icon {
    background: #e90054 !important;
    color: #ffffff !important;
    box-shadow: 0 16px 34px rgba(233, 0, 84, .24) !important;
  }

  /* Education Gap: middle aligned cards */
  #gap .compare-wrap {
    align-items: stretch !important;
  }
  #gap .compare-col {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

  }


/* Premium comparison section update only */
#gap .premium-compare{position:relative;display:grid!important;margin-top:28px!important;}
#gap .compare-col{position:relative;border-radius:22px!important;padding:22px!important;background:#fff!important;border:1px solid rgba(226,232,240,.95)!important;box-shadow:0 18px 44px rgba(7,29,58,.07)!important;text-align:left!important;overflow:hidden!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;}
#gap .compare-col.traditional h3,#gap .compare-col:not(.future) h3{color:#071d3a!important;}
#gap .compare-col.future{box-shadow:0 28px 74px rgba(255,75,31,.18),0 18px 44px rgba(233,0,84,.10)!important;}
#gap .compare-col.future:before{content:"";position:absolute;inset:-40% -22% auto auto;width:230px;height:230px;background:radial-gradient(circle,rgba(233,0,84,.18),rgba(255,117,43,.10) 45%,transparent 70%);pointer-events:none;}
#gap .compare-col h3{font-size:24px!important;letter-spacing:-.03em!important;font-weight:900!important;}
#gap .compare-col ul{width:100%!important;list-style:none!important;display:grid!important;margin:0!important;padding:0!important;}
#gap .compare-col li{min-height:48px!important;padding:10px 12px!important;border-radius:16px!important;display:flex!important;align-items:center!important;gap:10px!important;text-align:left!important;font-size:15px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:-.01em!important;transition:transform .24s ease,box-shadow .24s ease,background .24s ease!important;}
#gap .compare-col.traditional li,#gap .compare-col:not(.future) li{background:#f6f8fb!important;color:#263247!important;border:1px solid rgba(226,232,240,.9)!important;}
#gap .compare-col.future li{box-shadow:0 8px 22px rgba(255,75,31,.08)!important;}
#gap .compare-icon{width:30px!important;height:30px!important;min-width:30px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:#fff!important;color:#071d3a!important;box-shadow:inset 0 0 0 1px rgba(7,29,58,.08)!important;}
#gap .compare-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
#gap .future .compare-icon{background:#fff7f4!important;}
#gap .compare-bridge{justify-items:center!important;}
#gap .compare-bridge:before{content:"";position:absolute;top:61px;bottom:4px;left:50%;width:1px;background:linear-gradient(180deg,transparent,rgba(233,0,84,.32),rgba(255,75,31,.28),transparent);transform:translateX(-50%);}
#gap .vs-pill{width:auto!important;height:auto!important;min-width:44px!important;padding:7px 10px!important;border-radius:999px!important;font-size:12px!important;line-height:1!important;font-weight:950!important;align-self:center!important;margin:0!important;}
#gap .compare-bridge i{z-index:1;align-items:center;justify-content:center;font-style:normal;}
#gap .compare-bridge i:before,#gap .compare-bridge i:after{content:"";height:1px;background:linear-gradient(90deg,rgba(7,29,58,.18),rgba(233,0,84,.48));flex:1;}
#gap .compare-bridge i:after{background:linear-gradient(90deg,rgba(233,0,84,.48),rgba(255,75,43,.20));}
#gap .compare-bridge i:before{margin-right:3px;}#gap .compare-bridge i:after{margin-left:3px;}
#gap .compare-bridge i:empty::selection{background:transparent;}
#gap .compare-bridge i:after{clip-path:polygon(0 0,calc(100% - 7px) 0,calc(100% - 7px) -5px,100% 50%,calc(100% - 7px) 105%,calc(100% - 7px) 100%,0 100%);}
#gap .premium-compare:hover .future{transform:translateY(-3px)!important;box-shadow:0 34px 86px rgba(255,75,31,.23),0 20px 50px rgba(233,0,84,.12)!important;border-color:rgba(233,0,84,.25)!important;}
#gap .premium-compare:hover .future li{box-shadow:0 14px 34px rgba(255,75,31,.13)!important;background:#fff6f2!important;}
#gap .future li:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(255,75,31,.18)!important;}

/* Two-part comparison card copy: label semi-bold, phrase normal. */


@media(max-width:720px){
  #gap .compare-card-text{flex-wrap:wrap!important;gap:5px!important;}
}

@media(max-width:950px){#gap .premium-compare{grid-template-columns:1fr!important;gap:14px!important;}#gap .compare-bridge{display:none!important;}#gap .compare-col{padding:18px!important;border-radius:24px!important;}#gap .compare-col li{min-height:44px!important;font-size:14px!important;}#gap .compare-col h3{font-size:22px!important;}}


/* Final comparison table cleanup requested */

#gap .compare-col,
#gap .compare-col.future{


  filter:none!important;
  transform:none!important;


}
#gap .compare-col.future{
  background:#fff8f6!important;
  border-color:rgba(233,0,84,.18)!important;
}
#gap .compare-col:before,
#gap .compare-col.future:before{display:none!important;}
#gap .compare-col h3{


  line-height:1.15!important;
}

#gap .compare-col li,
#gap .compare-col.future li{


  gap:0!important;
  box-shadow:none!important;
  transform:none!important;

}
#gap .compare-col.traditional li,
#gap .compare-col:not(.future) li{
  background:#f6f8fb!important;
  color:#263247!important;
  border:1px solid rgba(226,232,240,.95)!important;
}
#gap .compare-col.future li{
  background:#fff0ec!important;
  color:#e90054!important;
  border:1px solid rgba(233,0,84,.18)!important;
}

#gap .compare-icon,
#gap .future .compare-icon{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;


  box-shadow:0 8px 22px rgba(7,29,58,.08), inset 0 0 0 1px rgba(7,29,58,.10)!important;

}
/* Traditional SVGs sit on the far left edge of the main card */

/* Future SVGs sit half inside / half outside each pink row */
#gap .future .compare-icon{

  color:#e90054!important;
  box-shadow:0 8px 22px rgba(233,0,84,.12), inset 0 0 0 1px rgba(233,0,84,.22)!important;
}

/* Uploaded comparison icon assets */
#gap .compare-icon img{border-radius:0!important;}
#gap .compare-icon{overflow:hidden!important;}

#gap .compare-bridge{
  display:grid!important;


  position:relative!important;
}

#gap .vs-pill{
  position:absolute!important;


  background:#ffffff!important;
  color:#e90054!important;
  border:1px solid rgba(233,0,84,.24)!important;
  box-shadow:none!important;

}
#gap .compare-bridge i{

  width:100%!important;

  display:block!important;
}
#gap .compare-bridge i:before{
  content:""!important;
  position:absolute!important;


}

#gap .premium-compare:hover .future,
#gap .premium-compare:hover .future li,
#gap .future li:hover{transform:none!important;box-shadow:none!important;}
@keyframes ffCompareDash{from{background-position:0 0;}to{background-position:46px 0;}}

/* Two-part comparison card copy: label semi-bold, phrase normal. */


@media(max-width:720px){
  #gap .compare-card-text{flex-wrap:wrap!important;gap:5px!important;}
}

@media(max-width:950px){
  #gap .premium-compare{grid-template-columns:1fr!important;gap:16px!important;}
  #gap .compare-bridge{display:none!important;}
  #gap .compare-col,#gap .compare-col.future{padding:22px 30px!important;}
  #gap .compare-col.traditional .compare-icon,#gap .compare-col:not(.future) .compare-icon{left:-18px!important;}
}


/* Final comparison card corrections */
#gap .premium-compare{
  grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr)!important;
  gap:28px!important;
  align-items:start!important;
  overflow:visible!important;
}

/* Remove the large outer card effect/background. Keep only row cards. */
#gap .compare-col,
#gap .compare-col.future{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0 0 0 0!important;
  overflow:visible!important;
}

#gap .compare-col h3{
  margin:0 0 26px!important;
  text-align:center!important;
}

#gap .compare-col ul{
  gap:14px!important;
  overflow:visible!important;
}

#gap .compare-col li,
#gap .compare-col.future li{
  position:relative!important;
  min-height:64px!important;
  padding:14px 44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:18px!important;
  overflow:visible!important;
}

#gap .compare-col li span:last-child{
  width:100%!important;
  text-align:center!important;
  display:block!important;
}

/* Move Traditional icons from the left side to the right edge of each card. */
#gap .compare-col.traditional .compare-icon,
#gap .compare-col:not(.future) .compare-icon{


  top:50%!important;
  transform:translateY(-50%)!important;
}

/* Future icons stay on the left edge of each card. */
#gap .future .compare-icon{


  top:50%!important;
  transform:translateY(-50%)!important;
}

#gap .compare-icon,
#gap .future .compare-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:13px!important;
  background:#fff!important;
  z-index:10!important;
}

/* Make the animated dashed lines sit exactly in the center of each comparison row. */
#gap .compare-bridge{
  grid-template-rows:repeat(5,64px)!important;
  gap:14px!important;
  align-content:start!important;
  padding-top:57px!important;
  overflow:visible!important;
}

#gap .compare-bridge i{
  height:64px!important;
  position:relative!important;
}

#gap .compare-bridge i:before{
  left:-28px!important;
  right:-28px!important;
  top:50%!important;
  height:2px!important;
  transform:translateY(-50%)!important;
  background-image:repeating-linear-gradient(90deg,#e90054 0 13px,transparent 13px 23px)!important;
  background-size:46px 2px!important;
  animation:ffCompareDash 1.05s linear infinite!important;
  opacity:.9!important;
}

#gap .compare-bridge i:after{display:none!important;}
#gap .compare-bridge:before{display:none!important;}

#gap .vs-pill{
  top:0!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:20!important;
}


/* Two-part comparison card copy: label semi-bold, phrase normal. */
#gap .compare-card-text{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  text-align:center!important;
  line-height:1.25!important;
  font-weight:400!important;
}
#gap .compare-card-text strong{
  font-weight:600!important;
}
#gap .compare-card-text b{
  font-weight:500!important;
  opacity:.55!important;
}
#gap .compare-card-text em{
  font-style:normal!important;
  font-weight:400!important;
  opacity:.82!important;
}
#gap .compare-col li span:last-child{
  font-weight:400!important;
}
@media(max-width:720px){
  #gap .compare-card-text{flex-wrap:wrap!important;gap:5px!important;}
}

@media(max-width:950px){
  #gap .premium-compare{grid-template-columns:1fr!important;gap:18px!important;}
  #gap .compare-bridge{display:none!important;}
  #gap .compare-col.traditional .compare-icon,
  #gap .compare-col:not(.future) .compare-icon{right:-18px!important;left:auto!important;}
}

/* Future Founders Lab rocket visual update */
#programs .intro-grid{align-items:center;gap:clamp(28px,5vw,72px);}
.future-lab-visual{
  min-height:clamp(430px,44vw,590px);
  position:relative;
  display:grid;
  place-items:center;
  border-radius:44px;
  background:
    radial-gradient(circle at 50% 62%,rgba(242,29,107,.16),transparent 44%),
    radial-gradient(circle at 34% 20%,rgba(242,29,107,.08),transparent 26%),
    radial-gradient(circle at 78% 18%,rgba(11,31,68,.06),transparent 25%);
  overflow:visible;
  isolation:isolate;
}
.future-lab-visual:before{
  content:"";
  position:absolute;
  width:min(450px,76%);
  aspect-ratio:1;
  border:1.5px dashed rgba(242,29,107,.30);
  border-radius:50%;
  animation:labSpin 18s linear infinite;
  filter:drop-shadow(0 0 18px rgba(242,29,107,.10));
}
.future-lab-visual:after{
  content:"";
  position:absolute;
  width:min(350px,60%);
  aspect-ratio:1;
  border:1px dashed rgba(11,31,68,.14);
  border-radius:50%;
  animation:labSpin 25s linear infinite reverse;
}
.future-rocket{
  width:min(500px,96%);
  height:auto;
  position:relative;
  z-index:3;
  object-fit:contain;
  filter:drop-shadow(0 30px 52px rgba(242,29,107,.20));
  animation:rocketFloat 4.8s ease-in-out infinite;
}
.lab-orbit{
  position:absolute;
  z-index:5;
  width:64px;
  height:64px;
  border-radius:20px;
  background:rgba(255,255,255,.90);
  border:1px solid rgba(242,29,107,.20);
  box-shadow:0 22px 48px rgba(11,31,68,.12);
  display:grid;
  place-items:center;
  color:#f21d6b;
  backdrop-filter:blur(10px);
}
.lab-orbit svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.lab-orbit img{width:30px;height:30px;object-fit:contain;display:block;}
.orbit-ai{left:7%;top:25%;animation:miniFloat 4.6s ease-in-out infinite;}
.orbit-idea{right:8%;top:17%;animation:miniFloat 5.4s ease-in-out infinite .2s;}
.orbit-target{left:11%;bottom:18%;animation:miniFloat 5.1s ease-in-out infinite .5s;}
.orbit-growth{right:12%;bottom:22%;animation:miniFloat 4.9s ease-in-out infinite .8s;}
.lab-chip{
  position:absolute;
  z-index:6;
  padding:11px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#0b1f44;
  font-size:14px;
  font-weight:600;
  box-shadow:0 18px 44px rgba(11,31,68,.12);
  border:1px solid rgba(11,31,68,.08);
  backdrop-filter:blur(10px);
}
.chip-one{top:10%;left:32%;}.chip-two{right:17%;top:43%;}.chip-three{left:18%;top:53%;}.chip-four{right:30%;bottom:10%;}.chip-five{left:33%;bottom:7%;}
.lab-spark{position:absolute;z-index:2;width:10px;height:10px;border-radius:50%;background:#f21d6b;box-shadow:0 0 0 9px rgba(242,29,107,.10);animation:sparkPulse 2.6s ease-in-out infinite;}
.spark-one{top:14%;right:35%;}.spark-two{bottom:16%;right:28%;animation-delay:.6s;}.spark-three{bottom:30%;left:8%;animation-delay:1s;}.spark-four{top:20%;left:20%;animation-delay:1.4s;}.spark-five{top:38%;right:12%;animation-delay:1.8s;}
.lab-star{position:absolute;z-index:4;width:26px;height:26px;color:#f21d6b;opacity:.72;animation:twinkle 3s ease-in-out infinite;}
.lab-star svg{width:100%;height:100%;fill:currentColor;}
.star-one{top:14%;left:22%;}.star-two{top:16%;right:22%;animation-delay:.45s;}.star-three{bottom:28%;right:21%;animation-delay:.9s;}.star-four{bottom:31%;left:23%;animation-delay:1.25s;}
.lab-path{position:absolute;z-index:1;inset:8% 6%;pointer-events:none;opacity:.68;}
.lab-path path{fill:none;stroke:#f21d6b;stroke-width:1.3;stroke-dasharray:6 8;animation:pathMove 2.8s linear infinite;}
.lab-path path:nth-child(2){stroke:#0b1f44;opacity:.22;animation-duration:4.2s;}
@keyframes rocketFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-14px) scale(1.015)}}
@keyframes miniFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-11px) rotate(3deg)}}
@keyframes sparkPulse{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.15);opacity:1}}
@keyframes twinkle{0%,100%{transform:scale(.82) rotate(0deg);opacity:.45}50%{transform:scale(1.18) rotate(16deg);opacity:1}}
@keyframes pathMove{to{stroke-dashoffset:-28}}
@keyframes labSpin{to{transform:rotate(360deg)}}
@media(max-width:900px){.future-lab-visual{min-height:390px;}.lab-orbit{width:52px;height:52px;}.chip-two,.chip-three,.chip-four,.chip-five{display:none;}}


/* Final adjustment: larger SVG cards in the comparison section only */
#gap .compare-icon,
#gap .future .compare-icon,
#gap .compare-col.traditional .compare-icon,
#gap .compare-col:not(.future) .compare-icon{
  width:68px!important;
  height:68px!important;
  min-width:68px!important;
  border-radius:16px!important;
}

#gap .compare-icon img{
  width:42px!important;
  height:42px!important;
  display:block!important;
  object-fit:contain!important;
}

#gap .compare-icon svg{
  width:36px!important;
  height:36px!important;
}

#gap .compare-col.traditional .compare-icon,
#gap .compare-col:not(.future) .compare-icon{
  left:auto!important;
  right:-34px!important;
}

#gap .future .compare-icon{
  left:-34px!important;
  right:auto!important;
}

@media(max-width:950px){
  #gap .compare-col.traditional .compare-icon,
  #gap .compare-col:not(.future) .compare-icon{
    right:-28px!important;
    left:auto!important;
  }
  #gap .future .compare-icon{
    left:-28px!important;
    right:auto!important;
  }
}

.skill-card img{border-radius:18px;margin-bottom:18px;display:block;}
.skill-card{padding:20px;display:flex;flex-direction:column;}
.skill-card strong{margin-top:0;}


.learning-roadmap-section{background:radial-gradient(circle at 50% 52%,rgba(242,29,107,.075),transparent 42%),#fff;position:relative;overflow:hidden;}.roadmap-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;align-items:stretch;margin-top:46px;padding-top:88px;}.roadmap-path{position:absolute;left:2%;right:2%;top:0;width:96%;height:178px;overflow:visible;pointer-events:none;z-index:0;}.roadmap-base,.roadmap-flow{fill:none;stroke-linecap:round;stroke-width:5;}.roadmap-base{stroke:rgba(11,31,68,.12);stroke-dasharray:14 16;}.roadmap-flow{stroke:#f21d6b;stroke-dasharray:14 18;filter:drop-shadow(0 8px 18px rgba(242,29,107,.2));animation:roadmapDash 1.25s linear infinite;}.roadmap-dot{fill:#f21d6b;filter:drop-shadow(0 0 8px rgba(242,29,107,.95)) drop-shadow(0 0 22px rgba(242,29,107,.55));}.roadmap-card{position:relative;z-index:2;min-height:255px;padding:30px 24px 24px;border-radius:28px;border:1px solid rgba(242,29,107,.16);background:rgba(255,255,255,.92);box-shadow:0 22px 60px rgba(11,31,68,.08);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}.roadmap-card:hover{transform:translateY(-10px);border-color:rgba(242,29,107,.42);box-shadow:0 30px 80px rgba(242,29,107,.18),0 20px 50px rgba(11,31,68,.08);}.roadmap-card::before{content:"";position:absolute;top:-13px;left:30px;width:24px;height:24px;border-radius:50%;background:#fff;border:6px solid #f21d6b;box-shadow:0 0 0 8px rgba(242,29,107,.10),0 0 26px rgba(242,29,107,.32);}.roadmap-card .stage-number{position:absolute;right:22px;top:20px;font:900 42px/1 Poppins,sans-serif;color:rgba(242,29,107,.10);letter-spacing:-.05em;}.roadmap-card b{display:inline-flex;background:#0b1f44;color:#fff;border-radius:999px;padding:8px 14px;margin:0 0 18px;font:800 13px/1 Inter,sans-serif;letter-spacing:.02em;}.roadmap-card h3{font-size:28px;color:#0b1f44;margin:0 0 20px;letter-spacing:-.03em;}.skill-chips{display:flex;flex-wrap:wrap;gap:10px;}.skill-chips span{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:rgba(242,29,107,.08);border:1px solid rgba(242,29,107,.14);color:#0b1f44;font:800 13px/1.1 Inter,sans-serif;}.skill-chips span:hover{background:rgba(242,29,107,.13);}@keyframes roadmapDash{to{stroke-dashoffset:-32px}}@media(max-width:900px){.roadmap-timeline{grid-template-columns:1fr;padding-top:30px;}.roadmap-path{display:none;}.roadmap-card::before{top:24px;left:auto;right:24px;width:18px;height:18px;border-width:5px;}.roadmap-card{min-height:auto;}.roadmap-card .stage-number{font-size:34px;}}


#journey .roadmap-path,
#journey .roadmap-base,
#journey .roadmap-flow,
#journey .roadmap-dot{display:none!important;opacity:0!important;visibility:hidden!important;}


/* Learning Journey only: move cards up + update stage labels/numbers to logo color */
#journey .roadmap-timeline{
  margin-top: 24px !important;
  padding-top: 28px !important;
}
#journey .roadmap-card b{
  background:#f21d6b !important;
  color:#ffffff !important;
  box-shadow:0 10px 24px rgba(242,29,107,.22) !important;
}
#journey .roadmap-card .stage-number{
  color:rgba(242,29,107,.32) !important;
}
@media(max-width:900px){
  #journey .roadmap-timeline{
    margin-top:20px !important;
    padding-top:18px !important;
  }
}


  #schools{position:relative;overflow:hidden;background:#fff;padding-top:clamp(56px,6vw,82px);padding-bottom:clamp(54px,6vw,76px);}
  #schools .blueprint-title{max-width:1120px;margin-bottom:22px;}
  #schools .blueprint-title:after{content:"";display:block;width:76px;height:4px;border-radius:999px;background:#F21D6B;margin-top:22px;box-shadow:14px 0 0 -1px rgba(242,29,107,.85);}
  #schools .school-benefits{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:34px;max-width:1120px;}
  #schools .benefit-pill{position:relative;min-height:132px;padding:18px 14px 16px;border-radius:20px;background:#fff;border:1px solid rgba(242,29,107,.18);box-shadow:0 14px 34px rgba(7,29,58,.055),0 4px 14px rgba(242,29,107,.035);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#071d3a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
  #schools .benefit-pill:hover{transform:translateY(-8px);border-color:#F21D6B;box-shadow:0 24px 54px rgba(7,29,58,.10),0 12px 34px rgba(242,29,107,.14);}
  #schools .benefit-num{position:absolute;top:14px;left:14px;min-width:36px;height:28px;padding:0 9px;border-radius:7px;background:#F21D6B;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;letter-spacing:.02em;box-shadow:0 8px 18px rgba(242,29,107,.22);transition:filter .25s ease,transform .25s ease;}
  #schools .benefit-pill:hover .benefit-num{filter:brightness(1.08);transform:translateY(-1px);}
  #schools .benefit-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:12px 0 8px;background:rgba(242,29,107,.08);transition:transform .25s ease,background .25s ease;}
  #schools .benefit-icon svg{width:40px;height:40px;fill:none;stroke:#071d3a;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease,stroke .25s ease;}
  #schools .benefit-icon svg path:nth-child(2n),#schools .benefit-icon svg circle:nth-child(2n),#schools .benefit-icon svg rect:nth-child(2n){stroke:#F21D6B;}
  #schools .benefit-pill:hover .benefit-icon{transform:scale(1.08);background:rgba(242,29,107,.11);}
  #schools .benefit-pill h3{margin:0;color:#071d3a;font-size:16px;line-height:1.12;font-weight:900;letter-spacing:-.02em;max-width:150px;}
  #schools .benefit-accent{width:28px;height:3px;border-radius:999px;background:#F21D6B;margin-top:12px;}
  #schools .schools-deco{position:absolute;pointer-events:none;z-index:0;opacity:.35;}
  #schools .schools-deco-one{right:5%;top:7%;width:78px;height:96px;background-image:radial-gradient(circle,rgba(242,29,107,.18) 2px,transparent 3px);background-size:18px 18px;}
  #schools .schools-deco-two{right:13%;top:13%;width:10px;height:10px;transform:rotate(45deg);background:#F21D6B;border-radius:2px;opacity:.45;}
  #schools .schools-deco-three{left:-80px;bottom:-110px;width:260px;height:260px;border:1px solid rgba(242,29,107,.14);border-radius:50%;box-shadow:42px 36px 0 -12px rgba(242,29,107,.05);}
  @media(max-width:1100px){#schools .school-benefits{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px;}#schools .benefit-pill{min-height:128px;}}
  @media(max-width:620px){#schools .school-benefits{grid-template-columns:1fr;gap:14px;}#schools .benefit-pill{max-width:280px;width:100%;margin:0 auto;}#schools .blueprint-title:after{width:62px;}}


.parent-growth-section{overflow:hidden;}.parent-growth-section:after{content:"";position:absolute;right:7%;top:14%;width:116px;height:116px;background-image:radial-gradient(rgba(242,29,107,.16) 2px,transparent 2px);background-size:18px 18px;pointer-events:none;}.parent-image-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}.parent-image-card:hover{transform:translateY(-8px);border-color:rgba(242,29,107,.45);box-shadow:0 30px 75px rgba(7,29,58,.12);}.parent-card-art{position:relative;}.parent-card-art img{transition:transform .25s ease,filter .25s ease;}.parent-card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 56%,rgba(255,255,255,.28));pointer-events:none;}.parent-quote-text span{font:900 54px/0.7 Poppins;margin-bottom:8px;}@media(max-width:950px){.parent-image-grid{grid-template-columns:1fr;}.parent-image-card{min-height:260px;}.parent-growth-section:after{display:none;}}@media(min-width:951px) and (max-width:1180px){.parent-image-grid{grid-template-columns:repeat(3,1fr);}.parent-quote-text p{font-size:19px;}}


/* v83: final section as a real full-width footer with the same light hero background */
.final-footer-section{


  background-size:130% 130%,120% 120%,110% 110%,100% 100%;

}


.final-footer-section .blueprint-title{
  color:#071d3a;

  text-shadow:none;
}
.final-footer-section .blueprint-copy{
  color:rgba(7,29,58,.78);


}
.final-footer-section .cta-box{


  color:#071d3a;
}
.final-footer-section .cta-box h2{
  color:#071d3a;


  text-shadow:none;
}
.final-footer-section .cta-box p{
  color:rgba(7,29,58,.72);
  margin:0;
  font-weight:800;
}


.final-footer-section .btn-outline:hover,
.final-footer-section .btn-light:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 44px rgba(242,29,107,.16),0 16px 34px rgba(7,29,58,.10);
}
@media(max-width:720px){
  .final-footer-section{margin-top:88px;padding-top:112px;}
  .final-footer-section::before{height:120px;clip-path:ellipse(88% 100% at 50% 0%);}
  .final-footer-section .cta-actions{gap:10px;}
}


/* Ver 85: footer corrected to match hero background, no dark backing/card */
.final-footer-section{
  width:100% !important;
  max-width:none !important;
  margin:90px 0 0 !important;
  padding:clamp(120px,9vw,150px) 24px clamp(70px,7vw,100px) !important;
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  text-align:center !important;
  border-radius:0 !important;
  color:#ffffff !important;
  background:
    radial-gradient(circle at 72% 40%, rgba(255,255,255,.24), transparent 27%),
    radial-gradient(circle at 18% 76%, rgba(255,255,255,.13), transparent 30%),
    radial-gradient(circle at 104% 100%, rgba(255,255,255,.16), transparent 24%),
    linear-gradient(120deg, #e90054 0%, #ff2e55 47%, #ff321c 100%) !important;
  box-shadow:none !important;
  animation:none !important;
}

.final-footer-section::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  opacity:.16 !important;
  background-image:radial-gradient(rgba(255,255,255,.18) 1px, transparent 1px) !important;
  background-size:26px 26px !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
}
.final-footer-inner{
  width:min(1120px,100%) !important;
  margin:0 auto !important;
  position:relative !important;
  z-index:3 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.final-footer-section .section-kicker{
  background:rgba(255,255,255,.18) !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.42) !important;
  box-shadow:none !important;
}
.final-footer-section .blueprint-title,
.final-footer-section .cta-box h2{
  color:#ffffff !important;
  text-shadow:0 18px 42px rgba(75,0,24,.18) !important;
}
.final-footer-section .blueprint-copy,
.final-footer-section .cta-box p{
  color:rgba(255,255,255,.92) !important;
  text-shadow:none !important;
}
.final-footer-section .blueprint-title{
  margin:0 auto 18px !important;
}
.final-footer-section .blueprint-copy{
  max-width:780px !important;
  margin:0 auto clamp(42px,5vw,64px) !important;
}
.final-footer-section .cta-box{
  width:min(980px,100%) !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.final-footer-section .cta-box h2{
  font-size:clamp(40px,5.5vw,72px) !important;
  line-height:1.03 !important;
  margin:0 0 16px !important;
}
.final-footer-section .cta-actions{
  margin-top:30px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
}
.final-footer-section .btn-light{
  background:#0b0b0f !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 18px 36px rgba(0,0,0,.20) !important;
}
.final-footer-section .btn-outline{
  background:rgba(255,255,255,.12) !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.42) !important;
  box-shadow:none !important;
}
.final-footer-section .btn-light:hover,
.final-footer-section .btn-outline:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 20px 44px rgba(0,0,0,.16) !important;
}
@media(max-width:720px){
  .final-footer-section{margin-top:74px !important;padding-top:106px !important;}
  .final-footer-section::before{height:54px !important;clip-path:ellipse(78% 100% at 50% 0%) !important;}
}


/* Ver 88: removed extra footer headline/subheadline */

@media(max-width:720px){.final-footer-section{padding-top:82px !important;}}


/* Ver 90: REAL footer arc update — outward /\ peak direction */
.final-footer-section{

  padding-top:clamp(118px,9vw,152px) !important;
}
.final-footer-section::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:-1px !important;
  width:100% !important;
  height:clamp(92px,8vw,136px) !important;
  background:#ffffff !important;
  /* White cutout is deeper on the sides and shallow in the center, so the footer rises outward like /\ */
  clip-path:polygon(0 0,100% 0,100% 100%,88% 88%,74% 72%,60% 42%,50% 18%,40% 42%,26% 72%,12% 88%,0 100%) !important;
  z-index:5 !important;
  pointer-events:none !important;
  box-shadow:none !important;
}
@media(max-width:720px){
  .final-footer-section{padding-top:112px !important;}
  .final-footer-section::before{
    height:92px !important;
    clip-path:polygon(0 0,100% 0,100% 100%,82% 86%,66% 62%,50% 20%,34% 62%,18% 86%,0 100%) !important;
  }
}

.section-badge,.eyebrow,.section-label,.badge-title,[class*="badge"]:not(.btn){
font-family:"Gotham",sans-serif!important;
font-size:0.95rem!important;
font-weight:700!important;
letter-spacing:.12em!important;
text-transform:uppercase!important;
padding:12px 28px!important;
border-radius:999px!important;
background:rgba(255,105,180,.10)!important;
backdrop-filter:blur(14px)!important;
-webkit-backdrop-filter:blur(14px)!important;
border:1px solid rgba(242,29,107,.18)!important;
box-shadow:0 8px 30px rgba(242,29,107,.14)!important;
}
h1,.section-title,.hero-title,.title{
font-family:"Poppins",sans-serif!important;
font-size:clamp(3.4rem,5vw,5rem)!important;
line-height:1.02!important;
font-weight:800!important;
letter-spacing:-.03em!important;
}
.section-description,.section-text,.subtitle,p.lead,.lead,.desc{
font-family:"Inter",sans-serif!important;
font-size:1.25rem!important;
line-height:1.75!important;
color:#5f6b7a!important;
font-weight:500!important;
}


/* === Ver 97: Future Skills header consistency fix === */
.future-skills-badge{
  font-family:"Gotham", sans-serif !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:0 !important;
  padding:12px 28px !important;
  border-radius:999px !important;
  background:rgba(255,105,180,.10) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  border:1px solid rgba(242,29,107,.18) !important;
  box-shadow:0 8px 30px rgba(242,29,107,.14) !important;
  color:#F21D6B !important;
  font-size:.95rem !important;
  font-weight:700 !important;
  letter-spacing:.12em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  margin-bottom:28px !important;
}
.future-skills-badge span{display:none !important;}
.future-skills-title{
  font-family:"Poppins", sans-serif !important;
  font-size:clamp(42px,5vw,76px) !important;
  line-height:1.02 !important;
  font-weight:800 !important;
  letter-spacing:-.03em !important;
  margin:0 !important;
}
.future-skills-subtext{
  font-family:"Inter", sans-serif !important;
  font-size:1.25rem !important;
  line-height:1.75 !important;
  color:#5f6b7a !important;
  font-weight:500 !important;
}
@media(max-width:720px){
  .future-skills-title{font-size:clamp(36px,10vw,52px) !important;}
}


/* Mobile friendliness hotfix: keeps the original design but prevents overflow and stacks dense desktop layouts. */
html, body { width: 100%;   }
img, svg, video, canvas {  height: auto; }
:where(section, header, footer, main, div) { max-width: 100%; }
:where(.wrap,.blueprint-section,.ff-section-head,.blueprint-title,.blueprint-copy) { box-sizing: border-box; }

@media (max-width: 1024px) {
  .hero { min-height: auto !important; padding: 18px 0 70px !important; }
  .hero .wrap,
  .intro-grid,
  .philosophy-grid,
  .officer-hero-grid,
  .responsibility-wrap,
  .compare-wrap,
  .schools-layout,
  .learning-system-layout,
  .final-footer-grid,
  .pilot-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  .visual, .hero .visual, .visual-card, .screen { width: 100% !important; max-width: 520px !important; margin-inline: auto !important; }
  .nav { width: min(94vw, 1120px) !important; padding: 12px 14px !important; border-radius: 22px !important; }
  .nav-links { display: none !important; }
  .brand img { max-width: 170px !important; height: auto !important; }
  .nav-cta, .nav .btn { padding: 11px 14px !important; font-size: 13px !important; white-space: nowrap !important; }
  .blueprint-section { padding-inline: 22px !important; }
}

@media (max-width: 768px) {
  body { font-size: 15px !important; }
  .hero { padding-top: 14px !important; border-radius: 0 !important; }
  .hero::after { min-height: 160px !important; height: 18vh !important; }
  .hero-curve { height: 80px !important; }
  .hero .wrap { padding: 28px 18px 24px !important; }
  .hero .copy { text-align: center !important; align-items: center !important; }
  .hero h1, .hero .copy h1 {
    font-size: clamp(38px, 11vw, 56px) !important;
    line-height: .95 !important;
    letter-spacing: -0.055em !important;
    max-width: 100% !important;
  }
  .hero .sub, .sub {
    font-size: 15px !important;
    line-height: 1.6 !important;
    max-width: 100% !important;
  }
  .badge { font-size: 12px !important; padding: 9px 12px !important; }
  .actions { justify-content: center !important; gap: 10px !important; flex-wrap: wrap !important; }
  .btn, button, .open-pilot-form { min-height: 44px !important; padding: 12px 16px !important; font-size: 14px !important; }

  .framework-marquee { padding: 10px 0 !important; }
  .framework-text { font-size: 13px !important; white-space: nowrap !important; }
  .framework-logo { height: 34px !important; width: auto !important; }

  .blueprint-section, .final-footer-section {
    padding: 54px 18px !important;
    overflow: hidden !important;
  }
  .section-kicker {
    font-size: 12px !important;
    letter-spacing: .1em !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .blueprint-title, .ff-section-head h2, .officer-copy h2, .final-footer-section h2 {
    font-size: clamp(30px, 8vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.04em !important;
    text-align: center !important;
    max-width: 100% !important;
  }
  .blueprint-copy, .responsibility-note, .officer-copy p, .final-footer-section p {
    font-size: 15px !important;
    line-height: 1.65 !important;
    text-align: center !important;
    max-width: 100% !important;
  }

  :where(.reality-grid,.mission-flow,.skill-grid,.officer-values,.flow-grid,.parent-image-grid,.included-grid,.inside-steps,.school-benefits,.wef-flow,.transform-grid,.faq-grid,.metrics,.roadmap-timeline) {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  :where(.reality-card,.flow-item,.skill-card,.officer-value-card,.grade-card,.roadmap-card,.system-card,.transform-card,.benefit-pill,.included-card,.inside-step,.parent-image-card,.faq-item) {
    width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }
  .premium-compare, .compare-wrap { display: grid !important; grid-template-columns: 1fr !important; gap: 16px !important; }
  .compare-bridge, .flow-arrow, .roadmap-path, .system-path-svg, .wef-flow-head { display: none !important; }
  .compare-col { padding: 18px !important; border-radius: 24px !important; }
  .compare-col ul, .compare-col li { width: 100% !important; }
  .compare-col li { min-height: auto !important; padding: 12px !important; font-size: 14px !important; }

  .future-lab-visual, .officer-visual, .triangle-card, .visual-card {
    min-height: 300px !important;
    height: auto !important;
    transform: none !important;
  }
  .future-rocket, .lab, .officer-student-img {
    max-width: 86vw !important;
    max-height: 330px !important;
    object-fit: contain !important;
  }
  .lab-chip, .lab-orbit, .lab-star, .philo-sparkle, .schools-deco, .system-particle { transform: scale(.78) !important; }
  .chip-two, .chip-three, .chip-four, .chip-five, .star-three, .star-four { display: none !important; }

  .future-skills-timeline-section .skill-chevron,
  .skill-chevron {
    clip-path: none !important;
    border-radius: 20px !important;
    min-height: auto !important;
  }
  .skill-desc { position: static !important; opacity: 1 !important; transform: none !important; display: none; }
  .skill-desc.is-visible { display: block !important; }

  .learning-system-grid { grid-template-columns: 1fr !important; gap: 14px !important; padding: 0 !important; }
  .learning-system-grid .system-card { height: auto !important; min-height: auto !important; }
  .roadmap-timeline { padding-top: 10px !important; margin-top: 24px !important; }
  .roadmap-card b { background: #f21d6b !important; }
  .skill-chips { justify-content: center !important; }
  .skill-chips span { font-size: 12px !important; padding: 8px 10px !important; }

  .wef-flow-row { grid-template-columns: 1fr !important; gap: 8px !important; }
  .wef-arrow { transform: rotate(90deg) !important; margin: 0 auto !important; }
  .wef-flow-card { padding: 14px !important; min-height: auto !important; }

  .parent-card-art { height: 155px !important; margin: 14px 14px 0 !important; border-radius: 18px !important; }
  .parent-quote-text { padding: 16px 18px 20px !important; }
  .parent-quote-text p { font-size: 18px !important; line-height: 1.35 !important; }

  .pilot-form-card, .final-cta-card, .venture-card { padding: 20px !important; border-radius: 24px !important; }
  input, select, textarea { width: 100% !important; font-size: 16px !important; }
}

@media (max-width: 480px) {
  .nav { width: calc(100vw - 20px) !important; padding: 10px !important; gap: 8px !important; }
  .brand img { max-width: 132px !important; }
  .nav-cta { font-size: 12px !important; padding: 10px 12px !important; }
  .hero h1, .hero .copy h1 { font-size: clamp(34px, 12vw, 48px) !important; }
  .hero .wrap { padding-inline: 14px !important; }
  .blueprint-section, .final-footer-section { padding: 46px 14px !important; }
  .blueprint-title, .ff-section-head h2, .officer-copy h2, .final-footer-section h2 { font-size: clamp(28px, 9vw, 36px) !important; }
  .visual-card, .screen { border-radius: 24px !important; }
  .btn { width: 100% !important; justify-content: center !important; }
  .actions { width: 100% !important; }
  .actions .btn { max-width: 280px !important; }
  .framework-logo-window { width: 100% !important; }
}


/* FINAL MOBILE RESPONSIVE FIX */
html, body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
*, *::before, *::after{box-sizing:border-box!important;}
img, svg, video, canvas{max-width:100%!important;}

@media (max-width: 768px){
  body{width:100%!important; overflow-x:hidden!important;}
  section, .section, .blueprint-section, .container, .wrap, .wrapper{
    max-width:100%!important;
    overflow:hidden!important;
  }
  .blueprint-section{
    padding:56px 16px!important;
  }
  h1,.hero-title,.section-title,.title{
    font-size:clamp(2.15rem, 10vw, 3rem)!important;
    line-height:1.05!important;
    letter-spacing:-.04em!important;
  }
  h2,.blueprint-title{
    font-size:clamp(2rem, 8vw, 2.55rem)!important;
    line-height:1.08!important;
    letter-spacing:-.04em!important;
    text-align:center!important;
    max-width:100%!important;
  }
  .section-description,.section-text,.subtitle,p.lead,.lead,.desc,p{
    font-size:1rem!important;
    line-height:1.55!important;
  }
  .section-badge,.eyebrow,.section-label,.badge-title,[class*="badge"]:not(.btn){
    font-size:.72rem!important;
    padding:9px 16px!important;
    max-width:100%!important;
    white-space:normal!important;
  }

  /* Fix broken mobile comparison section */
  #gap{
    overflow:hidden!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  #gap .premium-compare{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    width:100%!important;
    max-width:100%!important;
    margin:24px auto 0!important;
    overflow:visible!important;
  }
  #gap .compare-bridge,
  #gap .vs-pill{
    display:none!important;
  }
  #gap .compare-col,
  #gap .compare-col.future{
    width:100%!important;
    max-width:100%!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  #gap .compare-col h3{
    font-size:clamp(1.85rem, 8vw, 2.35rem)!important;
    line-height:1.1!important;
    margin:0 0 18px!important;
    text-align:center!important;
  }
  #gap .compare-col ul{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  #gap .compare-col li,
  #gap .compare-col.future li{
    width:100%!important;
    max-width:100%!important;
    min-height:auto!important;
    padding:14px 14px!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    text-align:left!important;
    overflow:hidden!important;
  }
  #gap .compare-icon,
  #gap .future .compare-icon,
  #gap .compare-col.traditional .compare-icon,
  #gap .compare-col:not(.future) .compare-icon{
    position:static!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:14px!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 46px!important;
    box-shadow:0 8px 20px rgba(7,29,58,.08), inset 0 0 0 1px rgba(7,29,58,.08)!important;
  }
  #gap .compare-icon img,
  #gap .compare-icon svg{
    width:28px!important;
    height:28px!important;
    object-fit:contain!important;
  }
  #gap .compare-col li span:last-child,
  #gap .compare-card-text{
    width:auto!important;
    min-width:0!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:4px 6px!important;
    text-align:left!important;
    line-height:1.25!important;
    font-size:clamp(.92rem, 4.2vw, 1.05rem)!important;
  }
  #gap .compare-card-text strong,
  #gap .compare-card-text b,
  #gap .compare-card-text em{
    line-height:1.25!important;
  }

  /* Generic mobile layout fixes for the rest of the page */
  .ff-section-head,.intro-grid,.responsibility-wrap,.philosophy-grid,.inside-grid,
  .dashboard-grid,.choice-grid,.reality-grid,.program-grid,.curriculum-grid,
  .school-grid,.faq-grid,.included-grid,.mindset-grid,.skill-grid,.transform-grid,
  .parent-grid,.grade-timeline,.school-benefits,.cards-grid,.grid,.benefits-grid{
    grid-template-columns:1fr!important;
    max-width:100%!important;
  }
  .hero,.hero-section{
    min-height:auto!important;
    padding:84px 16px 48px!important;
    overflow:hidden!important;
  }
  .card, [class*="card"]{
    max-width:100%!important;
  }
}

@media (max-width: 420px){
  #gap .compare-col li,
  #gap .compare-col.future li{
    padding:12px 12px!important;
    gap:10px!important;
  }
  #gap .compare-icon,
  #gap .future .compare-icon,
  #gap .compare-col.traditional .compare-icon,
  #gap .compare-col:not(.future) .compare-icon{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    flex-basis:42px!important;
  }
  #gap .compare-icon img,
  #gap .compare-icon svg{
    width:25px!important;
    height:25px!important;
  }
}


/* User requested updates: hero image, Future Skills typography, PNG icon replacements */
#curriculum.future-skills-timeline-section{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:72px 24px 78px !important;
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 68% 24%, rgba(242,29,107,.14), transparent 34%),
    radial-gradient(circle at 78% 68%, rgba(61,83,255,.10), transparent 30%),
    #ffffff !important;
  border-radius:0 !important;
}
#curriculum.future-skills-timeline-section::before{
  content:"";
  position:absolute;
  inset:24px;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(242,29,107,.05), transparent 35%, rgba(37,71,255,.045));
  border-radius:36px;
}
#curriculum .future-skills-head,
#curriculum .skills-timeline,
#curriculum .skills-desc-wrap{
  position:relative;
  z-index:1;
  max-width:1320px;
  margin-left:auto !important;
  margin-right:auto !important;
}
#curriculum .future-skills-head{
  max-width:1120px !important;
  margin-bottom:42px !important;
}
#curriculum .future-skills-badge{
  font-family:"Gotham","Poppins","Inter",sans-serif !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:9px 18px !important;
  border-radius:999px !important;
  background:rgba(242,29,107,.09) !important;
  color:#f21d6b !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;

  font-size:13px !important;
  line-height:1 !important;
  border:0 !important;
  box-shadow:0 16px 38px rgba(242,29,107,.12) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  margin:0 0 28px !important;
}
#curriculum .future-skills-badge span{display:none !important;}
#curriculum .future-skills-title{
  font-family:"Poppins","Inter",sans-serif !important;
  margin:0 0 16px !important;
  color:#061b3d !important;
  font-size:clamp(36px,5vw,62px) !important;
  line-height:1.02 !important;
  font-weight:600 !important;
  letter-spacing:-.045em !important;
  max-width:920px !important;
}
#curriculum .future-skills-title span{
  color:#f21d6b !important;
  display:inline-block !important;
}
#curriculum .future-skills-underline{
  width:78px !important;
  height:5px !important;
  border-radius:999px !important;
  background:#f21d6b !important;
  box-shadow:26px 0 0 -1px rgba(242,29,107,.55) !important;
  margin:20px 0 24px !important;
  position:relative !important;
}
#curriculum .future-skills-underline::after{display:none !important;}
#curriculum .future-skills-subtext{
  font-family:"Inter","Poppins",sans-serif !important;
  max-width:660px !important;
  color:#4c5a74 !important;

  font-size:clamp(16px,1.5vw,19px) !important;
  line-height:1.6 !important;
  margin:0 !important;
}
#curriculum .skill-icon img{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
  display:block !important;
  border-radius:0 !important;
}
#curriculum .skill-chevron:hover .skill-icon,
#curriculum .skill-chevron.is-active .skill-icon{
  background:rgba(255,255,255,.95) !important;
  box-shadow:0 14px 28px rgba(242,29,107,.16), inset 0 0 0 1px rgba(255,255,255,.60) !important;
}
.learning-system-grid .system-icon img{
  width:44px !important;
  height:44px !important;
  object-fit:contain !important;
  display:block !important;
  border-radius:0 !important;
}
.hero .screen img{
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:1050px){
  #curriculum.future-skills-timeline-section{padding:64px 18px 66px !important;}
  #curriculum .future-skills-head{text-align:left !important;}
}
@media(max-width:720px){
  #curriculum.future-skills-timeline-section{padding:56px 18px 58px !important;}
  #curriculum.future-skills-timeline-section::before{inset:12px;border-radius:26px;}
  #curriculum .future-skills-badge{font-size:12px !important;padding:9px 16px !important;margin-bottom:24px !important;}
  #curriculum .future-skills-title{font-size:clamp(34px,9vw,44px) !important;line-height:1.08 !important;}
  #curriculum .future-skills-subtext{font-size:16px !important;line-height:1.55 !important;}
  #curriculum .skill-icon img{width:40px !important;height:40px !important;}
}


/* Keep Future Skills typography consistent with the shared section system. */
#curriculum .future-skills-title,
#curriculum .future-skills-title span{
  font-weight:600 !important;
  letter-spacing:-.045em !important;
}
#curriculum .future-skills-subtext{
  font-weight:500 !important;
}
#curriculum .future-skills-badge{
  font-weight:700 !important;
}


/* === Ver 107: mobile-compatible desktop parity layer ===
   Keeps the desktop design/content intact, and only adjusts layout below tablet width. */
@media (max-width: 768px){
  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    -webkit-text-size-adjust:100%;
  }
  body{min-width:0 !important;}
  *, *::before, *::after{box-sizing:border-box !important;}
  img, svg, video, canvas{max-width:100% !important; height:auto;}

  /* Stop scroll reveal from leaving sections faded on phones. */
  .post-hero .blueprint-section,
  .post-hero .blueprint-section.section-fading,
  .post-hero .blueprint-section.is-visible,
  .blueprint-section,
  .final-footer-section{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    visibility:visible !important;
  }

  .blueprint-section,
  .final-footer-section{
    width:100% !important;
    max-width:100% !important;
    padding-left:18px !important;
    padding-right:18px !important;
    overflow:hidden !important;
  }

  .section-kicker,
  .future-skills-badge,
  .badge{
    width:max-content !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .blueprint-title,
  .ff-section-head h2,
  .future-skills-title,
  .officer-copy h2,
  .learning-system-copy h2,
  .final-footer-section h2,
  .pilot-form-card h2{
    max-width:100% !important;
    text-align:center !important;
    font-size:clamp(32px, 9.3vw, 44px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  .blueprint-copy,
  .ff-section-head p,
  .future-skills-subtext,
  .officer-copy p,
  .learning-system-copy p,
  .responsibility-note,
  .final-footer-section p{
    max-width:100% !important;
    text-align:center !important;
    font-size:15.5px !important;
    line-height:1.62 !important;
  }

  /* Hero + header */
  .hero{
    min-height:auto !important;
    height:auto !important;
    padding:20px 0 48px !important;
    overflow:hidden !important;
  }
  .hero::after{height:96px !important; min-height:96px !important; opacity:.5 !important;}
  .hero-curve{display:none !important;}
  .hero .nav{
    width:calc(100% - 28px) !important;
    max-width:420px !important;
    height:auto !important;
    min-height:66px !important;
    margin:0 auto !important;
    padding:10px !important;
    border-radius:24px !important;
    gap:10px !important;
    display:flex !important;
    align-items:center !important;
    overflow:hidden !important;
  }
  .hero .brand{
    width:clamp(150px, 45vw, 205px) !important;
    height:48px !important;
    min-width:0 !important;
    flex:1 1 auto !important;
    border-radius:18px !important;
  }
  .hero .brand img{width:100% !important; height:100% !important; object-fit:cover !important; border-radius:18px !important;}
  .hero .nav-links{display:none !important;}
  .hero .nav-cta{
    flex:0 0 auto !important;
    max-width:43vw !important;
    min-height:46px !important;
    padding:0 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:14px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
    border-radius:999px !important;
  }
  .hero .wrap{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:34px !important;
    padding:44px 18px 18px !important;
    overflow:visible !important;
  }
  .hero .copy{
    width:100% !important;
    max-width:370px !important;
    margin:0 auto !important;
    text-align:center !important;
    align-items:center !important;
  }
  .hero h1,
  .hero .copy h1{
    width:100% !important;
    max-width:360px !important;
    margin:0 auto 18px !important;
    font-size:clamp(38px, 12vw, 50px) !important;
    line-height:1.02 !important;
    letter-spacing:-.058em !important;
    text-align:center !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
  .hero h1 span{display:inline !important; white-space:normal !important;}
  .hero .sub{max-width:340px !important; margin:0 auto 26px !important; font-size:16px !important; line-height:1.58 !important; text-align:center !important;}
  .hero .actions{width:100% !important; max-width:330px !important; margin:0 auto !important; display:grid !important; grid-template-columns:1fr !important; gap:12px !important;}
  .hero .actions .btn{width:100% !important; min-height:56px !important; border-radius:18px !important; font-size:16px !important; padding:0 18px !important; display:flex !important; align-items:center !important; justify-content:center !important; white-space:normal !important;}
  .hero .visual{width:100% !important; max-width:380px !important; margin:18px auto 0 !important; padding:0 !important; overflow:visible !important; min-height:0 !important;}
  .hero .visual-card{width:100% !important; max-width:360px !important; aspect-ratio:1 / 1.04 !important; height:auto !important; margin:0 auto !important; border-radius:24px !important; transform:none !important;}
  .hero .screen{width:100% !important; height:100% !important; border-radius:24px !important; overflow:hidden !important;}
  .hero .screen img{width:100% !important; height:100% !important; object-fit:cover !important; object-position:center center !important;}

  .framework-marquee{width:100% !important; overflow:hidden !important; padding:10px 0 !important;}
  .framework-logo-window{width:100% !important; max-width:100% !important; overflow:hidden !important;}
  .framework-logo-track{display:flex !important; align-items:center !important;}

  /* Core responsive grids */
  .ff-section-head,
  .intro-grid,
  .responsibility-wrap,
  .philosophy-grid,
  .officer-hero-grid,
  .inside-grid,
  .dashboard-grid,
  .reality-grid,
  .skill-grid,
  .grade-timeline,
  .roadmap-timeline,
  .learning-system-layout,
  .included-grid,
  .learning-system-grid,
  .school-benefits,
  .parent-image-grid,
  .faq-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .reality-card,
  .skill-card,
  .grade-card,
  .roadmap-card,
  .included-card,
  .system-card,
  .benefit-pill,
  .parent-image-card,
  .faq-item,
  .inside-step,
  .officer-value-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    padding:18px !important;
    border-radius:22px !important;
  }

  /* Education gap */
  #gap .premium-compare,
  #gap .compare-wrap{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:26px !important;
    overflow:visible !important;
  }
  #gap .compare-bridge,
  #gap .vs-pill{display:none !important;}
  #gap .compare-col,
  #gap .compare-col.future{
    width:100% !important;
    max-width:100% !important;
    padding:18px !important;
    border-radius:24px !important;
    overflow:visible !important;
  }
  #gap .compare-col ul{display:grid !important; gap:12px !important; padding:0 !important; margin:0 !important; width:100% !important;}
  #gap .compare-col li,
  #gap .compare-col.future li{width:100% !important; max-width:100% !important; min-height:auto !important; padding:14px !important; display:flex !important; align-items:center !important; gap:12px !important; text-align:left !important;}
  #gap .compare-icon{position:static !important; transform:none !important; flex:0 0 46px !important; width:46px !important; height:46px !important; min-width:46px !important;}
  #gap .compare-icon img,
  #gap .compare-icon svg{width:28px !important; height:28px !important; object-fit:contain !important;}

  /* Visual cards and decorative sections */
  .future-lab-visual,
  .triangle-card,
  .officer-visual,
  .visual-card{
    width:100% !important;
    max-width:360px !important;
    min-height:300px !important;
    height:auto !important;
    margin-left:auto !important;
    margin-right:auto !important;
    transform:none !important;
  }
  .future-rocket,
  .lab,
  .officer-student-img{max-width:88vw !important; max-height:330px !important; object-fit:contain !important;}
  .officer-card-row{display:grid !important; grid-template-columns:1fr !important; gap:14px !important; width:100% !important;}
  .officer-arrow{display:none !important;}

  /* Future Skills */
  .future-skills-timeline-section{padding-top:56px !important; padding-bottom:56px !important;}
  .future-skills-head{width:100% !important; max-width:100% !important; margin:0 auto 28px !important; text-align:center !important;}
  .skills-timeline{display:grid !important; grid-template-columns:1fr !important; gap:14px !important; width:100% !important; max-width:100% !important; margin:0 auto !important; filter:none !important;}
  .skill-chevron,
  .skill-chevron:first-child,
  .skill-chevron:last-child{width:100% !important; margin:0 !important; min-height:132px !important; clip-path:none !important; border-radius:22px !important;}
  .skills-desc-wrap{display:grid !important; grid-template-columns:1fr !important; width:100% !important; padding:0 !important; margin-top:14px !important;}
  .skill-desc{position:static !important; padding:14px !important;}

  /* Learning roadmap / system */
  #journey .roadmap-path,
  #journey .roadmap-base,
  #journey .roadmap-flow,
  #journey .roadmap-dot,
  .system-path-svg{display:none !important;}
  .learning-system-layout{align-items:start !important;}
  .learning-system-grid .system-card{height:auto !important;}

  /* Transformation sections */
  .ff-dark{width:100% !important; max-width:360px !important; margin-left:auto !important; margin-right:auto !important; padding:28px 18px !important; border-radius:30px !important; overflow:hidden !important;}
  .transform-grid{display:grid !important; grid-template-columns:1fr !important; gap:14px !important; width:100% !important; max-width:100% !important;}
  .transform-card{width:100% !important; min-width:0 !important; display:grid !important; grid-template-columns:1fr auto 1fr !important; gap:10px !important; align-items:center !important; padding:16px !important; border-radius:18px !important;}
  .transform-card strong,
  .transform-card span{font-size:14px !important; line-height:1.25 !important;}
  #schools .school-benefits{grid-template-columns:1fr !important; gap:14px !important;}
  #schools .benefit-pill{min-height:148px !important; display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; text-align:center !important;}
  #schools .benefit-icon{margin:0 auto 10px !important;}

  /* WEF / Why choose us */
  .wef-comparison-flow{width:100% !important; max-width:100% !important; overflow:visible !important;}
  .wef-flow-head{display:none !important;}
  .wef-flow-row{display:grid !important; grid-template-columns:1fr !important; gap:10px !important; width:100% !important; max-width:100% !important;}
  .wef-flow-card{width:100% !important; max-width:100% !important; min-height:auto !important; padding:16px !important; border-radius:20px !important;}
  .wef-arrow{width:38px !important; height:38px !important; margin:0 auto !important; transform:rotate(90deg) !important;}

  /* Forms / footer */
  .final-footer-inner,
  .cta-box{width:100% !important; max-width:100% !important;}
  .cta-actions{display:grid !important; grid-template-columns:1fr !important; gap:12px !important; width:100% !important; max-width:330px !important; margin-left:auto !important; margin-right:auto !important;}
  .cta-actions .btn,
  .final-footer-section .btn{width:100% !important; min-height:56px !important; justify-content:center !important; text-align:center !important;}
  .pilot-modal{padding:12px !important; align-items:flex-start !important; overflow:auto !important;}
  .pilot-form-card{width:100% !important; max-width:100% !important; max-height:calc(100svh - 24px) !important; padding:24px 18px !important; border-radius:26px !important; overflow:auto !important;}
  .form-row{display:grid !important; grid-template-columns:1fr !important; gap:12px !important;}
  .pilot-lead-form input,
  .pilot-lead-form textarea,
  .pilot-lead-form select{font-size:16px !important; min-height:52px !important;}
}

@media (max-width: 420px){
  .blueprint-section,
  .final-footer-section{padding-left:14px !important; padding-right:14px !important;}
  .hero .nav{width:calc(100% - 20px) !important; padding:9px !important; gap:8px !important;}
  .hero .brand{width:clamp(138px, 43vw, 185px) !important; height:46px !important;}
  .hero .nav-cta{max-width:44vw !important; min-height:44px !important; padding:0 12px !important; font-size:13px !important;}
  .hero .wrap{padding-left:14px !important; padding-right:14px !important;}
  .hero h1,.hero .copy h1{font-size:clamp(34px, 11.4vw, 45px) !important; max-width:340px !important;}
  .hero .sub{font-size:16px !important; max-width:320px !important;}
  .blueprint-title,
  .ff-section-head h2,
  .future-skills-title,
  .officer-copy h2,
  .learning-system-copy h2,
  .final-footer-section h2{font-size:clamp(29px, 9vw, 38px) !important;}
  .ff-dark{max-width:346px !important; padding-left:14px !important; padding-right:14px !important;}
}


/* v108: Mobile-only fix for Why Schools Choose Us comparison table. Desktop stays untouched. */
@media (max-width: 720px){
  .blueprint-section .wef-comparison-flow{
    display:grid !important;
    gap:22px !important;
    margin-top:26px !important;
    overflow:visible !important;
  }

  .blueprint-section .wef-flow-head{
    display:none !important;
  }

  .blueprint-section .wef-flow-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    padding:14px !important;
    margin:0 0 18px !important;
    border-radius:28px !important;
    background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,246,250,.82)) !important;
    border:1px solid rgba(242,29,107,.18) !important;
    box-shadow:0 18px 46px rgba(7,29,58,.07), 0 10px 34px rgba(242,29,107,.06) !important;
    position:relative !important;
    transform:none !important;
    filter:none !important;
  }

  .blueprint-section .wef-flow-row:hover{
    transform:none !important;
    filter:none !important;
  }

  .blueprint-section .wef-flow-row + .wef-flow-row{
    margin-top:8px !important;
  }

  .blueprint-section .wef-flow-card{
    width:100% !important;
    max-width:100% !important;
    min-height:78px !important;
    padding:13px 14px !important;
    border-radius:20px !important;
    display:grid !important;
    grid-template-columns:46px 1fr !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    column-gap:13px !important;
    row-gap:5px !important;
    box-shadow:0 10px 28px rgba(7,29,58,.045) !important;
    background:#fff !important;
    border:1px solid rgba(7,29,58,.08) !important;
    color:#071d3a !important;
    font-size:18px !important;
    line-height:1.12 !important;
    text-align:left !important;
  }

  .blueprint-section .wef-flow-card::before{
    grid-column:1 / -1 !important;
    content:"Future Skill";
    display:inline-flex !important;
    width:max-content !important;
    align-items:center !important;
    padding:5px 9px !important;
    border-radius:999px !important;
    background:rgba(242,29,107,.08) !important;
    color:#F21D6B !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:.11em !important;
    text-transform:uppercase !important;
    line-height:1 !important;
  }

  .blueprint-section .wef-flow-card.regular::before{
    content:"Regular Activity" !important;
    background:rgba(7,29,58,.055) !important;
    color:#5e6878 !important;
  }

  .blueprint-section .wef-flow-card.lab::before{
    content:"Future Founders Lab" !important;
    background:rgba(242,29,107,.13) !important;
    color:#F21D6B !important;
  }

  .blueprint-section .wef-flow-card.lab{
    background:linear-gradient(135deg, rgba(242,29,107,.10), rgba(255,255,255,.98)) !important;
    border-color:rgba(242,29,107,.32) !important;
    box-shadow:0 14px 34px rgba(242,29,107,.09) !important;
  }

  .blueprint-section .wef-skill-icon,
  .blueprint-section .wef-minus,
  .blueprint-section .wef-check{
    grid-column:1 !important;
    grid-row:2 !important;
    margin:0 !important;
    justify-self:start !important;
    align-self:center !important;
  }

  .blueprint-section .wef-skill-icon{
    width:44px !important;
    height:44px !important;
    border-radius:13px !important;
  }

  .blueprint-section .wef-skill-png-icon{
    width:28px !important;
    height:28px !important;
    object-fit:contain !important;
  }

  .blueprint-section .wef-minus{
    width:34px !important;
    height:34px !important;
    border-width:2px !important;
    justify-self:center !important;
  }

  .blueprint-section .wef-check{
    width:40px !important;
    height:40px !important;
    justify-self:center !important;
  }

  .blueprint-section .wef-flow-card > span:not(.wef-skill-icon):not(.wef-minus):not(.wef-check),
  .blueprint-section .wef-flow-card > strong{
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:center !important;
    margin:0 !important;
    font-size:18px !important;
    line-height:1.12 !important;
    letter-spacing:-.02em !important;
    overflow-wrap:anywhere !important;
  }

  .blueprint-section .wef-arrow{
    width:28px !important;
    height:28px !important;
    margin:-2px auto !important;
    display:grid !important;
    place-items:center !important;
    font-size:22px !important;
    line-height:1 !important;
    color:#F21D6B !important;
    transform:rotate(90deg) !important;
    animation:none !important;
    opacity:.9 !important;
  }

  .blueprint-section .wef-flow-row:hover .wef-arrow{
    animation:none !important;
  }
}

@media (max-width: 430px){
  .blueprint-section .wef-flow-row{
    padding:12px !important;
    border-radius:24px !important;
  }
  .blueprint-section .wef-flow-card{
    grid-template-columns:42px 1fr !important;
    min-height:74px !important;
    padding:12px !important;
    column-gap:12px !important;
    font-size:17px !important;
  }
  .blueprint-section .wef-flow-card > span:not(.wef-skill-icon):not(.wef-minus):not(.wef-check),
  .blueprint-section .wef-flow-card > strong{
    font-size:17px !important;
  }
}


/* Missing content from the earlier Future Founders page, rebuilt in the current visual system. */
.outcome-path-section,
.founder-story-section{
  position:relative;
  overflow:hidden;
}
.outcome-path-section::before{
  content:"";
  position:absolute;
  width:290px;
  height:290px;
  right:-150px;
  top:54px;
  border-radius:50%;
  border:1px solid rgba(242,29,107,.12);
  box-shadow:0 0 0 38px rgba(242,29,107,.035),0 0 0 76px rgba(37,71,255,.025);
  pointer-events:none;
}
.outcome-path-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.66fr);
  gap:56px;
  align-items:end;
}
.outcome-path-head .blueprint-copy{
  margin-bottom:4px;
}
.outcome-flow-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:40px;
  counter-reset:outcomeStep;
}
.outcome-flow-card{
  counter-increment:outcomeStep;
  position:relative;
  min-height:250px;
  padding:28px 24px 24px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(7,29,58,.08);
  box-shadow:0 18px 48px rgba(7,29,58,.075);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.outcome-flow-card:hover{
  transform:translateY(-8px);
  border-color:rgba(242,29,107,.34);
  box-shadow:0 28px 66px rgba(7,29,58,.12),0 10px 30px rgba(242,29,107,.08);
}
.outcome-flow-card::after{
  content:"";
  position:absolute;
  top:50%;
  right:-19px;
  width:20px;
  border-top:2px dashed rgba(242,29,107,.46);
  z-index:3;
}
.outcome-flow-card:last-child::after{display:none;}
.outcome-step-number{
  width:44px;
  height:34px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
  background:#F21D6B;
  color:#fff;
  font:800 14px/1 Inter,sans-serif;
  box-shadow:0 10px 22px rgba(242,29,107,.22);
}
.outcome-step-number::before{content:"0" counter(outcomeStep);}
.outcome-flow-icon{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:20px;
  margin-bottom:18px;
  background:linear-gradient(145deg,rgba(242,29,107,.10),rgba(37,71,255,.07));
}
.outcome-flow-icon svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:#071d3a;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.outcome-flow-icon svg .accent{stroke:#F21D6B;}
.outcome-flow-card h3{
  color:#071d3a;
  font:600 21px/1.18 Poppins,sans-serif;
  letter-spacing:-.025em;
  margin:0 0 10px;
}
.outcome-flow-card p{
  color:#647083!important;
  font-size:15px!important;
  line-height:1.58!important;
  margin:0;
}
.framework-alignment-panel{
  margin-top:28px;
  display:grid;
  grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);
  gap:28px;
  align-items:center;
  padding:28px 30px;
  border-radius:28px;
  background:linear-gradient(130deg,#071d3a 0%,#102c57 100%);
  color:#fff;
  box-shadow:0 24px 62px rgba(7,29,58,.16);
  position:relative;
  overflow:hidden;
}
.framework-alignment-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:22px 22px;
  opacity:.22;
  pointer-events:none;
}
.framework-alignment-copy,
.framework-tags{position:relative;z-index:1;}
.framework-alignment-copy strong{
  display:block;
  font:600 24px/1.25 Poppins,sans-serif;
  letter-spacing:-.025em;
  margin-bottom:7px;
}
.framework-alignment-copy span{
  color:rgba(255,255,255,.72);
  font-size:14px;
  line-height:1.55;
}
.framework-tags{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:10px;
}
.framework-tags span{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  backdrop-filter:blur(10px);
}
.framework-tags span:first-child{
  background:#F21D6B;
  border-color:#F21D6B;
}

.founder-story-section{

  margin:0 auto;

}
.founder-story-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);

  align-items:center;


  background:
    radial-gradient(circle at 8% 14%,rgba(242,29,107,.12),transparent 34%),
    radial-gradient(circle at 88% 82%,rgba(37,71,255,.10),transparent 36%),
    #fff;
  border:1px solid rgba(7,29,58,.08);
  box-shadow:0 28px 80px rgba(7,29,58,.10);
  overflow:hidden;
}
.founder-story-shell::after{
  content:"";
  position:absolute;
  right:38px;
  top:34px;
  width:92px;
  height:92px;
  background-image:radial-gradient(rgba(242,29,107,.20) 2px,transparent 2px);
  background-size:17px 17px;
  opacity:.42;
  pointer-events:none;
}
.founder-visual{
  position:relative;
  min-height:330px;
  border-radius:30px;
  background:linear-gradient(145deg,#071d3a,#153b70);
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
  box-shadow:0 24px 54px rgba(7,29,58,.20);
}
.founder-visual::before{
  content:"";
  position:absolute;
  width:250px;
  height:250px;
  border:1px dashed rgba(255,255,255,.24);
  border-radius:50%;
  animation:founderOrbit 18s linear infinite;
}
.founder-visual::after{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border:1px solid rgba(242,29,107,.18);
  border-radius:50%;
}
@keyframes founderOrbit{to{transform:rotate(360deg)}}
.founder-monogram{
  position:relative;
  z-index:2;
  width:126px;
  height:126px;
  border-radius:36px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#F21D6B,#ff5729);
  color:#fff;
  font:700 46px/1 Poppins,sans-serif;
  letter-spacing:-.06em;
  box-shadow:0 22px 48px rgba(242,29,107,.30);
  transform:rotate(-3deg);
}
.founder-visual h3{
  position:relative;
  z-index:2;
  color:#fff;
  font:600 24px/1.2 Poppins,sans-serif;
  margin:24px 0 6px;
}
.founder-visual p{
  position:relative;
  z-index:2;
  color:rgba(255,255,255,.68)!important;
  font-size:14px!important;
  line-height:1.4!important;
  margin:0;
}
.founder-story-content{position:relative;z-index:2;}
.founder-story-content .blueprint-title{

  max-width:720px;
}
.founder-quote{
  position:relative;
  margin:28px 0 26px;

  border-left:4px solid #F21D6B;
  border-radius:0 20px 20px 0;
  background:rgba(242,29,107,.055);
  color:#071d3a;
  font:600 20px/1.48 Poppins,sans-serif;
  letter-spacing:-.02em;
}
.founder-beliefs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));

}
.founder-belief{

  border-radius:18px;
  border:1px solid rgba(7,29,58,.08);
  background:#fff;
  color:#071d3a;

  line-height:1.35;
  font-weight:800;
  text-align:center;
}
.founder-belief span{
  display:block;
  color:#F21D6B;
  font:800 18px/1 Poppins,sans-serif;
  margin-bottom:8px;
}

@media(max-width:1000px){
  .outcome-path-head{grid-template-columns:1fr;gap:12px;}
  .outcome-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .outcome-flow-card:nth-child(2)::after{display:none;}
  .framework-alignment-panel{grid-template-columns:1fr;}
  .framework-tags{justify-content:flex-start;}
  .founder-story-shell{grid-template-columns:1fr;padding:34px;}
  .founder-visual{min-height:290px;}
}
@media(max-width:620px){
  .outcome-flow-grid{grid-template-columns:1fr;gap:14px;}
  .outcome-flow-card{min-height:0;}
  .outcome-flow-card::after{display:none;}
  .framework-alignment-panel{padding:24px 20px;}
  .framework-tags span{font-size:12px;padding:0 13px;}
  .founder-story-section{width:min(100% - 28px,1160px);padding:56px 0;}
  .founder-story-shell{padding:22px;border-radius:28px;gap:30px;}
  .founder-visual{min-height:260px;border-radius:24px;}
  .founder-monogram{width:108px;height:108px;border-radius:30px;font-size:39px;}
  .founder-beliefs{grid-template-columns:1fr;}
  .founder-quote{font-size:17px;padding:20px 18px 20px 22px;}
}
@media(prefers-reduced-motion:reduce){.founder-visual::before{animation:none;}}


/* Faster framework marquee */
.framework-marquee .framework-logo-track{

  will-change:transform;
}
@media(max-width:720px){
  .framework-marquee .framework-logo-track{animation-duration:15s !important;}
}

/* Keep card photography fully visible instead of clipping faces/objects. */


.skill-card img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff7fb !important;
}
.reality-card img,
.transform-card img,
.inside-step img,
.system-card img,
.founder-card img,
.impact-maker-card img{
  object-fit:contain !important;
  object-position:center center !important;
}

.ff-integrated-section{

  margin:0 auto;

  position:relative;
}
.ff-integrated-section .section-kicker{margin-bottom:16px;}
.ff-integrated-section .blueprint-title{max-width:980px;}
.ff-integrated-section .blueprint-copy{max-width:850px;}

/* Imagine a world without */

.imagine-section::before{
  content:"";position:absolute;left:-120px;top:55px;width:330px;height:330px;border-radius:50%;
  background:radial-gradient(circle,rgba(242,29,107,.12),transparent 68%);pointer-events:none;
}
.imagine-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:end;}
.imagine-lead{
  border-left:5px solid #f21d6b;padding:10px 0 10px 22px;
  font:800 clamp(18px,2vw,23px)/1.55 Inter,sans-serif;color:#31405d;
}

.impact-maker-card{
  border:1px solid rgba(242,29,107,.16);
  transition:.28s ease;min-width:0;
}
.impact-maker-card:hover{box-shadow:0 30px 75px rgba(7,29,58,.12);border-color:rgba(242,29,107,.42);}
.impact-maker-media{display:grid;place-items:center;}
.impact-maker-media img{display:block;}
.impact-maker-card h3{font:900 22px/1.15 Poppins,sans-serif;color:#071d3a;}
.impact-maker-company{font:900 13px/1 Inter,sans-serif;color:#f21d6b;text-transform:uppercase;letter-spacing:.08em;}
.impact-maker-card p{font:600 14px/1.55 Inter,sans-serif;color:#536078;}

/* Indian founder celebration */
.indian-founders-section{

  overflow:hidden;
}
.founder-celebration-head{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:end;}
.founder-celebration-note{font:750 18px/1.55 Inter,sans-serif;color:#495875;margin:0;}
.founder-grid{margin-top:42px;}
.founder-card{


  isolation:isolate;transition:transform .28s ease,box-shadow .28s ease;
}

.founder-card::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,#071d3a 72%);z-index:1;}
.founder-avatar-fallback{display:grid;place-items:center;color:#fff;font:900 68px/1 Poppins;background:linear-gradient(135deg,#f21d6b,#0b1f44);}
.founder-card img{display:block;}
.founder-card-content{left:0;right:0;bottom:0;}
.founder-card h3{font:900 23px/1.15 Poppins;}
.founder-card b{display:block;font:850 14px/1.3 Inter;}
.founder-card p{font:600 14px/1.5 Inter;}
.founder-closing{max-width:820px;text-align:center;font:900 clamp(20px,2.2vw,28px)/1.35 Poppins;color:#0b1f44;}
.founder-closing span{color:#f21d6b;}

/* Program impact */

.program-impact-section::before{content:"";position:absolute;inset:-170px auto auto -120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(242,29,107,.28),transparent 68%);}
.program-impact-head{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;position:relative;z-index:1;}

.program-impact-section .blueprint-title{margin-bottom:0;}
.program-impact-head p{font:600 18px/1.65 Inter;color:rgba(255,255,255,.75);margin:0;}
.program-impact-grid{margin-top:44px;}
.impact-stat-card{display:flex;flex-direction:column;justify-content:center;}
.impact-number{font:950 clamp(72px,9vw,128px)/.88 Poppins;color:#fff;}
.impact-stat-card h3{font:900 28px/1.15 Poppins;}
.impact-stat-card p{font:600 15px/1.55 Inter;color:rgba(255,255,255,.8);margin:0;}

.impact-outcome{backdrop-filter:blur(12px);}
.impact-outcome span{display:inline-grid;place-items:center;background:#f21d6b;color:#fff;font:900 15px Poppins;margin-bottom:18px;}
.impact-outcome h3{font:850 20px/1.25 Poppins;}
.impact-outcome p{font:550 14px/1.55 Inter;margin:0;}
.impact-principal-quote{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;}
.impact-principal-quote .quote-mark{font:900 66px/.7 Poppins;color:#f21d6b;}
.impact-principal-quote blockquote{font:850 19px/1.5 Poppins;margin:0;}
.impact-principal-quote small{display:block;font:700 13px/1.4 Inter;color:#68748a;margin-top:7px;}

/* Student voices */

.student-voices-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px;}
.student-voice-card{border:1px solid rgba(242,29,107,.16);border-radius:30px;background:#fff;padding:30px;box-shadow:0 22px 60px rgba(7,29,58,.08);display:flex;flex-direction:column;min-height:310px;}
.student-voice-card .quote-mark{font:900 64px/.7 Poppins;color:#f21d6b;margin-bottom:22px;}
.student-voice-card blockquote{font:800 20px/1.5 Poppins;color:#071d3a;margin:0 0 26px;flex:1;}
.student-person{display:flex;align-items:center;gap:13px;}
.student-avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#0b1f44;color:#fff;font:900 15px Poppins;box-shadow:0 0 0 6px rgba(242,29,107,.08);}
.student-person strong{display:block;font:850 15px/1.3 Inter;color:#071d3a;}
.student-person span{font:650 13px/1.35 Inter;color:#788298;}

/* Founder/program video */
.founder-video-section{padding-top:34px;padding-bottom:92px;}
.founder-video-shell{display:grid;grid-template-columns:1.12fr .88fr;gap:38px;align-items:center;border:1px solid rgba(242,29,107,.16);border-radius:38px;background:#fff;padding:30px;box-shadow:0 30px 84px rgba(7,29,58,.10);}
.founder-video-frame{position:relative;aspect-ratio:16/9;border-radius:28px;overflow:hidden;background:#071d3a;isolation:isolate;}
.founder-video-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,58,.15),rgba(7,29,58,.56));z-index:1;pointer-events:none;}
.founder-video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block;z-index:0;}
.founder-video-play{position:absolute;inset:0;margin:auto;width:90px;height:90px;border:0;border-radius:50%;background:#f21d6b;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:2;box-shadow:0 0 0 14px rgba(255,255,255,.22),0 22px 48px rgba(0,0,0,.28);transition:.25s ease;}
.founder-video-play:hover{transform:scale(1.08);}
.founder-video-play svg{width:34px;height:34px;fill:#fff;margin-left:5px;}
.founder-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:4;background:#071d3a;}
.founder-video-copy{padding:18px 18px 18px 4px;}
.founder-video-copy h2{font:900 clamp(35px,4vw,56px)/1.06 Poppins;color:#071d3a;letter-spacing:-.045em;margin:0 0 20px;}
.founder-video-copy h2 span{color:#f21d6b;}
.founder-video-copy p{font:600 17px/1.65 Inter;color:#536078;margin:0 0 24px;}
.video-points{display:grid;gap:12px;}
.video-point{display:flex;align-items:center;gap:12px;font:800 14px/1.4 Inter;color:#071d3a;}
.video-point::before{content:"✓";width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(242,29,107,.1);color:#f21d6b;font-weight:950;flex:none;}
.founder-monogram{overflow:hidden !important;padding:0 !important;}
.founder-monogram img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block;}

@media(max-width:950px){
  .imagine-intro,.founder-celebration-head,.program-impact-head,.founder-video-shell{grid-template-columns:1fr;}
  .impact-maker-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .founder-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .program-impact-grid{grid-template-columns:1fr;}
  .student-voices-grid{grid-template-columns:1fr;}
  .founder-video-copy{padding:4px;}
}
@media(max-width:620px){
  .ff-integrated-section{width:min(100% - 28px,1160px);padding:62px 0;}
  .indian-founders-section,.program-impact-section{padding:66px 16px;}
  .impact-maker-grid,.founder-grid,.impact-outcomes{grid-template-columns:1fr;}
  .impact-maker-card,.student-voice-card{border-radius:24px;}
  .founder-card{min-height:390px;}
  .impact-stat-card{min-height:300px;padding:30px;}
  .impact-principal-quote{grid-template-columns:1fr;}
  .founder-video-section{padding-bottom:66px;}
  .founder-video-shell{padding:14px;border-radius:28px;}
  .founder-video-frame{border-radius:22px;}
}


/* ===== FutureFounders refined layout: compact, clear and tangible ===== */
.framework-marquee .framework-logo-track{animation-duration:11s!important;}

.blueprint-section{padding-top:72px!important;padding-bottom:72px!important;}
.blueprint-title{font-size:clamp(38px,4.25vw,62px)!important;line-height:1.04!important;letter-spacing:-.045em!important;margin-bottom:16px!important;}
.blueprint-copy{font-size:clamp(16px,1.3vw,19px)!important;line-height:1.6!important;max-width:720px!important;}
.section-kicker{font-size:12px!important;line-height:1!important;letter-spacing:.12em!important;padding:11px 16px!important;margin-bottom:14px!important;}
.ff-integrated-section{width:min(1180px,calc(100% - 48px))!important;max-width:1180px!important;margin-inline:auto!important;padding:72px 0!important;}
.compact-section-head{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:48px;align-items:end;margin-bottom:34px;}
.compact-section-head .blueprint-title{margin-bottom:0!important;}
.compact-lead{margin:0;font:700 17px/1.55 Inter,sans-serif;color:#4d5a72;max-width:520px;}

/* Image safety across the complete page */
.parent-card-art,.skill-card,.reality-card,.transform-card,.inside-step,.system-card{overflow:hidden;}
.parent-card-art img,.skill-card img,.reality-card img,.transform-card img,.inside-step img,.system-card img{object-fit:contain!important;object-position:center!important;transform:none!important;image-rendering:auto!important;background:#f7f8fb!important;}
.parent-image-card:hover img,.skill-card:hover img,.reality-card:hover img,.transform-card:hover img{transform:none!important;}

/* Imagine: compact 2x2 horizontal cards; low-resolution images are never enlarged excessively. */
.imagine-section{overflow:visible!important;}
.imagine-section::before{display:none!important;}
.impact-maker-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;margin-top:0!important;}
.impact-maker-card{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:18px!important;align-items:center!important;min-height:170px!important;padding:16px!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 44px rgba(7,29,58,.07)!important;}
.impact-maker-card:hover{transform:translateY(-4px)!important;}
.impact-maker-media{width:132px!important;height:132px!important;aspect-ratio:1!important;border-radius:18px!important;overflow:hidden!important;background:#f5f6f9!important;}
.impact-maker-media img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;}
.impact-maker-card h3{font-size:21px!important;margin:0 0 4px!important;}
.impact-maker-company{font-size:12px!important;margin:0 0 9px!important;}
.impact-maker-card p{font-size:13px!important;line-height:1.48!important;margin:0!important;}

/* Indian founders: clean profile cards instead of giant background tiles. */
.indian-founders-section{width:100%!important;max-width:none!important;padding:76px max(24px,calc((100vw - 1180px)/2))!important;background:linear-gradient(180deg,#fff 0%,#fff7fa 100%)!important;}
.indian-founders-section .compact-section-head{max-width:1180px;margin-inline:auto;margin-bottom:30px;}
.founder-grid{max-width:1180px;margin:0 auto!important;display:grid!important;}
.founder-card{position:relative!important;display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;}
.founder-card:hover{transform:translateY(-4px)!important;box-shadow:0 20px 50px rgba(7,29,58,.11)!important;}
.founder-card::after{display:none!important;}
.founder-avatar-fallback{position:absolute!important;left:14px!important;top:14px!important;width:104px!important;height:122px!important;inset:auto!important;border-radius:18px!important;font-size:28px!important;z-index:0!important;}
.founder-card img{position:relative!important;inset:auto!important;height:122px!important;border-radius:18px!important;z-index:1!important;background:#eef1f6!important;}
.founder-card-content{position:relative!important;inset:auto!important;color:#071d3a!important;z-index:2!important;}
.founder-card h3{font-size:18px!important;line-height:1.2!important;margin:0 0 4px!important;}
.founder-card b{font-size:12px!important;line-height:1.3!important;margin-bottom:8px!important;color:#f21d6b!important;}
.founder-card p{font-size:13px!important;line-height:1.45!important;color:#59657a!important;margin:0!important;}
.founder-closing{margin:26px auto 0!important;font-size:22px!important;}

/* Program impact: one contained, high-contrast panel. */
.program-impact-section{width:min(1240px,calc(100% - 40px))!important;max-width:1240px!important;padding:54px 0!important;background:transparent!important;color:#fff!important;overflow:visible!important;}
.program-impact-section::before{display:none!important;}
.impact-panel{background:#071d3a!important;color:#fff!important;border-radius:38px!important;padding:54px!important;box-shadow:0 30px 80px rgba(7,29,58,.18)!important;position:relative!important;overflow:hidden!important;}
.impact-panel::before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;left:-170px;top:-180px;background:radial-gradient(circle,rgba(242,29,107,.35),transparent 68%);pointer-events:none;}
.impact-head{position:relative;z-index:1;margin-bottom:30px!important;}
.program-impact-section .section-kicker{color:#ff8bb5!important;background:rgba(255,255,255,.08)!important;}
.program-impact-section .blueprint-title{color:#fff!important;}
.program-impact-section .compact-lead{color:rgba(255,255,255,.72)!important;}
.program-impact-grid{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;gap:18px!important;margin:0!important;position:relative!important;z-index:1!important;}
.impact-stat-card{min-height:250px!important;border-radius:28px!important;padding:30px!important;background:linear-gradient(145deg,#f21d6b,#b5165c)!important;box-shadow:none!important;}
.impact-number{font-size:clamp(68px,7vw,96px)!important;letter-spacing:-.07em!important;}
.impact-stat-card h3{font-size:23px!important;margin:18px 0 6px!important;}
.impact-stat-card p{font-size:13px!important;}
.impact-outcomes{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
.impact-outcome{display:grid!important;grid-template-columns:42px 1fr!important;align-items:center!important;gap:14px!important;border-radius:22px!important;padding:20px!important;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.12)!important;}
.impact-outcome span{margin:0!important;width:42px!important;height:42px!important;border-radius:13px!important;}
.impact-outcome h3{font-size:17px!important;margin:0 0 4px!important;color:#fff!important;}
.impact-outcome p{font-size:13px!important;line-height:1.45!important;color:rgba(255,255,255,.68)!important;}
.impact-principal-quote{position:relative!important;z-index:1!important;margin-top:16px!important;border-radius:22px!important;padding:20px 24px!important;background:#fff!important;color:#071d3a!important;}
.impact-principal-quote blockquote{font-size:17px!important;}

/* Student voices: actual video, not oversized text cards. */
.student-voices-section{overflow:visible!important;}
.student-video-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:28px;align-items:stretch;}
.student-video-frame{min-height:0!important;aspect-ratio:16/9!important;border-radius:28px!important;box-shadow:0 24px 62px rgba(7,29,58,.14)!important;}
.student-video-frame::after{background:linear-gradient(90deg,rgba(7,29,58,.08),rgba(7,29,58,.28))!important;}
.student-video-frame .founder-video-poster{object-fit:cover!important;object-position:center!important;}
.student-video-thumbnail-link{display:block;text-decoration:none;cursor:pointer;color:inherit;}
.official-student-video-thumbnail{background:#fff5f9!important;}
.official-student-video-thumbnail::after{display:none!important;}
.official-student-video-thumbnail .founder-video-poster{object-fit:contain!important;object-position:center!important;background:#fff5f9!important;}
.student-video-copy{border:1px solid rgba(242,29,107,.14);border-radius:28px;background:#fff;padding:30px;box-shadow:0 18px 52px rgba(7,29,58,.07);display:flex;flex-direction:column;justify-content:center;}
.student-video-copy h3{font:900 28px/1.18 Poppins,sans-serif;color:#071d3a;margin:0 0 12px;}
.student-video-copy>p{font:600 15px/1.6 Inter,sans-serif;color:#59657a;margin:0 0 22px;}
.video-proof-list{display:grid;gap:10px;}
.video-proof-list>div{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;background:#fff5f9;}
.video-proof-list span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#f21d6b;color:#fff;font:900 12px Poppins;flex:0 0 auto;}
.video-proof-list strong{font:800 14px/1.35 Inter;color:#071d3a;}

/* Founder story: shorter and lighter. */
.founder-story-section{width:min(1180px,calc(100% - 48px))!important;padding:72px 0 18px!important;}
.founder-story-shell{padding:26px!important;border-radius:30px!important;gap:34px!important;}
.founder-story-content .blueprint-title{font-size:clamp(36px,4vw,56px)!important;}
.founder-story-content .blueprint-copy{font-size:16px!important;}
.founder-quote{font-size:17px!important;padding:18px 20px!important;}
.founder-beliefs{gap:10px!important;margin-top:18px!important;}
.founder-belief{padding:14px!important;font-size:13px!important;}

/* General density correction on the remaining page. */
.outcome-flow-grid,.skills-timeline,.learning-system-grid,.school-benefits-grid{gap:16px!important;}
.outcome-flow-card,.skill-card,.system-card{min-height:0!important;}
.outcome-flow-card p,.system-card p,.skill-card p{font-size:13px!important;line-height:1.5!important;}
.parent-growth-section .blueprint-title{font-size:clamp(38px,4.25vw,62px)!important;}


@media(max-width:980px){
  .compact-section-head,.student-video-layout{grid-template-columns:1fr!important;gap:20px!important;}
  .impact-maker-grid,.founder-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .program-impact-grid{grid-template-columns:1fr!important;}
  .impact-stat-card{min-height:220px!important;}
  .founder-story-section{padding-top:56px!important;}
}
@media(max-width:680px){
  .framework-marquee .framework-logo-track{animation-duration:9s!important;}
  .blueprint-section{padding-top:54px!important;padding-bottom:54px!important;}
  .ff-integrated-section{width:min(100% - 28px,1180px)!important;padding:54px 0!important;}
  .blueprint-title{font-size:clamp(34px,10vw,46px)!important;}
  .compact-section-head{margin-bottom:24px!important;}
  .impact-maker-grid,.founder-grid,.impact-outcomes{grid-template-columns:1fr!important;}
  .impact-maker-card{grid-template-columns:104px 1fr!important;min-height:142px!important;padding:13px!important;}
  .impact-maker-media{width:104px!important;height:104px!important;}
  .indian-founders-section{padding:56px 14px!important;}
  .founder-card{grid-template-columns:88px 1fr!important;min-height:132px!important;}
  .founder-card img,.founder-avatar-fallback{width:88px!important;height:104px!important;}
  .impact-panel{padding:28px 20px!important;border-radius:28px!important;}
  .program-impact-section{width:calc(100% - 24px)!important;padding:38px 0!important;}
  .impact-outcome{grid-template-columns:38px 1fr!important;padding:16px!important;}
  .student-video-copy{padding:22px!important;}
  .founder-story-section{width:calc(100% - 28px)!important;padding:54px 0 8px!important;}
}

.founder-card-content{grid-column:2!important;}


/* --- Corrective improvements --- */
.hero-video-section { padding-top: 28px !important; }
.hero-video-section .founder-story-shell {
  display:grid !important; grid-template-columns: 1.1fr .9fr !important; gap:40px !important;
  align-items:center !important; background:#fff !important; border:1px solid rgba(242,29,107,.18) !important;
  border-radius:36px !important; padding:38px !important; box-shadow:0 22px 50px rgba(11,31,68,.06) !important;
}
.founder-story-media { min-width:0; }
.founder-video-poster-shell {
  position:relative;
  border-radius:28px;
  overflow:hidden;
  background:#f5f6fa;
  border:1px solid rgba(11,31,68,.08);
}
.founder-video-link { display:block; line-height:0; }
.founder-video-poster-img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  transition:transform .25s ease, filter .25s ease;
}
.founder-video-link:hover .founder-video-poster-img {
  transform:scale(1.01);
  filter:brightness(.98);
}
.hero-video-note { margin-top:14px; font-size:13px; color:#6c7892; }
.founder-story-checklist { list-style:none; margin:20px 0 0; padding:0; display:grid; gap:12px; }
.founder-story-checklist li { position:relative; padding-left:34px; font-weight:600; color:#0B1F44; }
.founder-story-checklist li::before {
  content:"✓"; position:absolute; left:0; top:0; width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center; background:rgba(242,29,107,.12); color:#F21D6B; font-size:14px; font-weight:800;
}
.weekly-rhythm-section { padding-top: 30px !important; }
.weekly-rhythm-grid { display:grid; grid-template-columns: .9fr 1.1fr; gap: 48px; align-items:start; }
.weekly-rhythm-copy { position:sticky; top:110px; }
.weekly-rhythm-track { position:relative; padding:18px 0; min-height:640px; }
.weekly-rhythm-line {
  position:absolute; left:50%; top:10px; bottom:10px; width:4px; transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(242,29,107,.18), #F21D6B 18%, #F21D6B 82%, rgba(242,29,107,.18));
  border-radius:999px;
}
.weekly-rhythm-glow { position:absolute; left:50%; transform:translateX(-50%); width:26px; height:26px; border-radius:50%;
  background:rgba(242,29,107,.18); box-shadow:0 0 0 16px rgba(242,29,107,.08), 0 0 32px rgba(242,29,107,.16); }
.weekly-rhythm-glow::after { content:""; position:absolute; inset:4px; border-radius:50%; background:#F21D6B; }
.weekly-rhythm-glow-one { top:165px; }
.weekly-rhythm-glow-two { top:455px; }
.weekly-rhythm-step { position:relative; display:flex; align-items:center; margin: 0 0 34px; min-height:125px; }
.weekly-rhythm-step-left { justify-content:flex-start; padding-right:calc(50% + 28px); }
.weekly-rhythm-step-right { justify-content:flex-end; padding-left:calc(50% + 28px); }
.weekly-rhythm-card {
  width:100%; background:#fff; border:1px solid rgba(242,29,107,.18); border-radius:28px; padding:28px 28px 24px;
  box-shadow:0 18px 40px rgba(11,31,68,.05);
}
.weekly-rhythm-card h3 { margin:0 0 10px; font-size:clamp(24px,2vw,32px); line-height:1.1; color:#0B1F44; }
.weekly-rhythm-card p { margin:0; font-size:17px; line-height:1.6; color:#55627d; }
.weekly-rhythm-dot {
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:76px; height:76px; border-radius:50%;
  display:grid; place-items:center; background:#fff; color:#F21D6B; font-weight:800; font-size:22px;
  border:5px solid rgba(242,29,107,.20); box-shadow:0 12px 30px rgba(11,31,68,.10); z-index:2;
}
.parent-growth-intro { margin: 12px 0 26px !important; font-size: 18px !important; color:#55627d !important; max-width: 620px; }

.parent-image-card {
  height:auto !important;
    display:flex !important; flex-direction:column !important;
}
.parent-card-art {
  margin-bottom:24px !important;
   display:flex !important; align-items:center !important; justify-content:center !important;
}

.parent-quote-text {  flex-direction:column !important; gap:14px !important; margin-top:auto !important; }
.parent-quote-text span { font-size:72px !important; line-height:.8 !important; color:#F21D6B !important; }

.founder-grid { grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap:24px !important; }
.founder-card {
  min-height: 0 !important; padding:0 !important; overflow:hidden !important; background:#fff !important;
  border:1px solid rgba(242,29,107,.18) !important; border-radius:28px !important; box-shadow:0 16px 38px rgba(11,31,68,.06) !important;
}
.founder-card img { width:100% !important; aspect-ratio:1/1 !important; object-fit:cover !important; object-position:center !important; }
.founder-card-content { padding:22px 22px 24px !important; }
.founder-card-content h3 { margin:0 0 8px !important; font-size:clamp(24px,1.8vw,34px) !important; }
.founder-card-content b { display:block; margin-bottom:10px; }
.founder-card-content p { margin:0; font-size:17px; line-height:1.55; color:#55627d; }
@media (max-width: 1100px) {
  .weekly-rhythm-grid, .hero-video-section .founder-story-shell { grid-template-columns:1fr !important; }
  .weekly-rhythm-copy { position:static; }
  .founder-grid, .parent-image-grid { grid-template-columns:1fr !important; }
  .weekly-rhythm-track { min-height:auto; padding-left:18px; }
  .weekly-rhythm-line { left:32px; transform:none; }
  .weekly-rhythm-glow { left:32px; transform:translateX(-50%); }
  .weekly-rhythm-step-left, .weekly-rhythm-step-right { justify-content:flex-start; padding:0 0 0 76px; }
  .weekly-rhythm-dot { left:32px; }
}


.weekly-simple-section{
  width:min(1180px,calc(100% - 48px))!important;
  padding:72px 0!important;
  margin-inline:auto!important;
}
.weekly-simple-head{
  max-width:760px!important;
  margin-bottom:34px!important;
}
.weekly-simple-head .blueprint-title{
  margin-bottom:12px!important;
}
.weekly-simple-head .blueprint-copy{
  margin:0!important;
  font-size:18px!important;
  line-height:1.55!important;
}
.weekly-simple-list{
  width:min(900px,100%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
}
.weekly-simple-card{
  min-height:112px!important;
  display:flex!important;
  align-items:center!important;
  gap:22px!important;
  padding:24px 30px!important;
  background:#fff!important;
  border:1px solid rgba(11,31,68,.08)!important;
  border-radius:28px!important;
  box-shadow:0 18px 40px rgba(11,31,68,.07)!important;
}
.weekly-simple-number{
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:20px!important;
  background:#F21D6B!important;
  color:#fff!important;
  font-family:var(--font-primary,"Poppins",sans-serif)!important;
  font-size:29px!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:0 14px 30px rgba(242,29,107,.18)!important;
}
.weekly-simple-card h3{
  margin:0!important;
  color:#0B1F44!important;
  font-size:clamp(22px,2vw,30px)!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
.weekly-simple-connector{
  width:3px!important;
  height:34px!important;
  margin:10px 0 10px 61px!important;
  border-radius:999px!important;
  background:#F21D6B!important;
  position:relative!important;
  overflow:hidden!important;
}
.weekly-simple-connector::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.95),transparent)!important;
  transform:translateY(-100%)!important;
  animation:weeklyConnectorFlow 2.2s linear infinite!important;
}
@keyframes weeklyConnectorFlow{
  to{transform:translateY(100%)!important;}
}
@media(max-width:700px){
  .weekly-simple-section{
    width:calc(100% - 28px)!important;
    padding:54px 0!important;
  }
  .weekly-simple-head{
    margin-bottom:26px!important;
  }
  .weekly-simple-card{
    min-height:96px!important;
    gap:16px!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .weekly-simple-number{
    flex-basis:54px!important;
    width:54px!important;
    height:54px!important;
    border-radius:17px!important;
    font-size:24px!important;
  }
  .weekly-simple-card h3{
    font-size:20px!important;
  }
  .weekly-simple-connector{
    height:26px!important;
    margin:8px 0 8px 44px!important;
  }
}


/* Weekly classroom flow — matching the connected-card motion used across the LP */
.weekly-flow-section {
  width: min(1180px, calc(100% - 48px)) !important;
  padding: 58px 0 !important;
}
.weekly-flow-panel {
  display: grid !important;
  grid-template-columns: .92fr 1.08fr !important;
  gap: 60px !important;
  align-items: center !important;
  padding: 48px !important;
  border-radius: 40px !important;
  background: linear-gradient(135deg, #fff9f7 0%, #ffffff 49%, #f5f8ff 100%) !important;
  border: 1px solid rgba(11,31,68,.08) !important;
  box-shadow: 0 24px 60px rgba(11,31,68,.07) !important;
}
.weekly-flow-copy .blueprint-title {
  max-width: 560px !important;
  margin: 20px 0 20px !important;
  font-size: clamp(50px, 5vw, 76px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.045em !important;
}
.weekly-flow-copy .blueprint-copy {
  max-width: 540px !important;
  margin: 0 !important;
  color: #526078 !important;
  font-size: clamp(18px, 1.65vw, 25px) !important;
  line-height: 1.55 !important;
}
.weekly-flow-list {
  --weekly-line-x: 58px;
  position: relative !important;

  display: grid !important;

  padding: 0 !important;
}
.weekly-flow-track {
  position: absolute !important;

  left: var(--weekly-line-x) !important;
  top: 48px !important;
  bottom: 48px !important;

  transform: translateX(-50%) !important;
  border-radius: 999px !important;


}
.weekly-flow-runner {
  position: absolute !important;

  left: var(--weekly-line-x) !important;


}
.weekly-flow-card {


  min-height: 112px !important;
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  padding: 22px 28px !important;
  border-radius: 28px !important;

  border: 1px solid rgba(11,31,68,.08) !important;
  box-shadow: 0 16px 38px rgba(11,31,68,.06) !important;
}
.weekly-flow-number {
  position: relative !important;

  width: 64px !important;
  height: 64px !important;
  flex: 0 0 64px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 20px !important;
  background: #f21d6b !important;
  color: #ffffff !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  box-shadow: 0 12px 26px rgba(242,29,107,.22) !important;
}
.weekly-flow-card h3 {
  margin: 0 !important;
  color: #0b1f44 !important;
  font-size: clamp(20px, 1.65vw, 27px) !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  letter-spacing: -.015em !important;
}
@keyframes weeklyDotTravel {
  0%, 8% { top: 44px; opacity: 0; }
  14% { opacity: 1; }
  86% { opacity: 1; }
  92%, 100% { top: calc(100% - 44px); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .weekly-flow-runner { animation: none !important; top: 50% !important; opacity: 1 !important; }
}
@media (max-width: 980px) {
  .weekly-flow-panel {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    padding: 34px !important;
  }
  .weekly-flow-copy .blueprint-title { font-size: clamp(44px, 8vw, 64px) !important; }
  .weekly-flow-list { --weekly-line-x: 50px; gap: 22px !important; }
  .weekly-flow-card { min-height: 102px !important; padding: 20px 22px !important; }
  .weekly-flow-number { width: 56px !important; height: 56px !important; flex-basis: 56px !important; border-radius: 18px !important; }
}
@media (max-width: 560px) {
  .weekly-flow-section { width: calc(100% - 28px) !important; padding: 44px 0 !important; }
  .weekly-flow-panel { padding: 24px 18px !important; border-radius: 30px !important; }
  .weekly-flow-copy .blueprint-title { font-size: 40px !important; }
  .weekly-flow-copy .blueprint-copy { font-size: 18px !important; }
  .weekly-flow-list { --weekly-line-x: 40px; gap: 18px !important; }
  .weekly-flow-card { min-height: 88px !important; gap: 14px !important; padding: 16px !important; border-radius: 22px !important; }
  .weekly-flow-number { width: 48px !important; height: 48px !important; flex-basis: 48px !important; border-radius: 15px !important; font-size: 20px !important; }
  .weekly-flow-card h3 { font-size: 17px !important; }
  .weekly-flow-track { top: 40px !important; bottom: 40px !important; }
  .weekly-flow-runner { top: 38px !important; }
  @keyframes weeklyDotTravel {
    0%, 8% { top: 38px; opacity: 0; }
    14% { opacity: 1; }
    86% { opacity: 1; }
    92%, 100% { top: calc(100% - 38px); opacity: 0; }
  }
}


/* Stronger animated runner for the weekly classroom section */

.weekly-flow-track {

  background: linear-gradient(180deg, rgba(242,29,107,.18) 0%, rgba(242,29,107,.95) 18%, rgba(242,29,107,.95) 82%, rgba(242,29,107,.18) 100%) !important;

}
.weekly-flow-track::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  transform: translateX(-50%) !important;
  width: 10px !important;
  height: 120px !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 50%, rgba(255,255,255,0) 100%) !important;
  animation: weeklyLineShimmer 3.8s linear infinite !important;
  pointer-events: none !important;
}

.weekly-flow-runner::before,
.weekly-flow-runner::after {

  position: absolute !important;
  inset: 50% auto auto 50% !important;
  border-radius: 50% !important;
  transform: translate(-50%, -50%) !important;
  pointer-events: none !important;
}


.weekly-flow-card { transition: transform .28s ease, box-shadow .28s ease !important; }
.weekly-flow-card:hover { transform: translateY(-2px) !important; box-shadow: 0 20px 44px rgba(11,31,68,.09) !important; }
@keyframes weeklyDotPulse {
  0%,100% { box-shadow: 0 0 0 10px rgba(242,29,107,.10), 0 0 0 18px rgba(242,29,107,.06), 0 10px 28px rgba(242,29,107,.28); }
  50% { box-shadow: 0 0 0 13px rgba(242,29,107,.13), 0 0 0 24px rgba(242,29,107,.07), 0 12px 32px rgba(242,29,107,.34); }
}
@keyframes weeklyDotRipple {
  0% { width: 22px; height: 22px; opacity: .8; }
  70% { width: 42px; height: 42px; opacity: .18; }
  100% { width: 48px; height: 48px; opacity: 0; }
}
@keyframes weeklyLineShimmer {
  0% { top: 0; opacity: 0; }
  10% { opacity: .65; }
  90% { opacity: .65; }
  100% { top: calc(100% - 120px); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .weekly-flow-track::after, .weekly-flow-runner::before { animation: none !important; }
  .weekly-flow-runner { animation: none !important; }
}
@media (max-width: 560px) {
  .weekly-flow-runner { width: 16px !important; height: 16px !important; box-shadow: 0 0 0 8px rgba(242,29,107,.10), 0 0 0 15px rgba(242,29,107,.06), 0 8px 22px rgba(242,29,107,.25) !important; }
  .weekly-flow-runner::before { width: 28px !important; height: 28px !important; }
  .weekly-flow-track::after { height: 90px !important; }
}


/* Reduce only the gap between Future Skills and Learning Journey. */
#curriculum.future-skills-timeline-section {
  padding-bottom: 30px !important;
}
#journey.learning-roadmap-section {
  padding-top: 34px !important;
  margin-top: 0 !important;
}
@media (max-width: 1050px) {
  #curriculum.future-skills-timeline-section { padding-bottom: 26px !important; }
  #journey.learning-roadmap-section { padding-top: 30px !important; }
}
@media (max-width: 720px) {
  #curriculum.future-skills-timeline-section { padding-bottom: 22px !important; }
  #journey.learning-roadmap-section { padding-top: 26px !important; }
}


/* One spacing rhythm for the complete landing page */
:root{
  --ff-uniform-section-pad:40px;
}
main.post-hero{
  display:block !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
main.post-hero > section{
  margin-block:0 !important;
}
/* The framework strip is a utility band, not a content section. */
main.post-hero > .framework-marquee{
  margin:0 !important;
}
/* Remove one-off spacing overrides that previously made individual gaps inconsistent. */
#curriculum.future-skills-timeline-section,
#journey.learning-roadmap-section,
#inside-classroom.weekly-flow-section,
#program-impact.program-impact-section,
#student-voices.student-voices-section,
#student-transformation,
#learning-system.learning-system-section,
#schools,
.parent-growth-section,
#faq{
  padding-top:var(--ff-uniform-section-pad) !important;
  padding-bottom:var(--ff-uniform-section-pad) !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
/* Keep the footer arc intact while removing its extra outside gap. */
.final-footer-section{
  margin-top:0 !important;
}
@media (max-width:720px){
  :root{
    --ff-uniform-section-pad:30px;
  }
}


/* Correct the moving dot: keep it behind cards and visible only on the connector gaps */


.weekly-flow-track::after {
  z-index: 0 !important;
}

.weekly-flow-runner::before,
.weekly-flow-runner::after {
  display: none !important;
  content: none !important;
}


@media (max-width: 560px) {
  .weekly-flow-runner {
    width: 11px !important;
    height: 11px !important;
    box-shadow: 0 0 0 6px rgba(242,29,107,.10), 0 0 17px rgba(242,29,107,.28) !important;
  }
}


/* Functional tracing dot: visible in each gap, hidden behind the cards while travelling. */
.weekly-flow-list { isolation:isolate !important; gap:32px !important; overflow:visible !important; }
.weekly-flow-track { z-index:0 !important; width:4px !important; box-shadow:0 0 22px rgba(242,29,107,.16) !important; }
.weekly-flow-runner {
  z-index:2 !important;
  top:0 !important;
  margin-top:0;
  width:16px !important;
  height:16px !important;
  display:block !important;
  border:3px solid #fff !important;
  border-radius:50% !important;
  background:#f21d6b !important;
  box-shadow:0 0 0 8px rgba(242,29,107,.13),0 0 28px rgba(242,29,107,.42) !important;
  transform:translate(-50%,-50%) !important;
  animation:none !important;
  opacity:0;
  will-change:margin-top,opacity !important;
  pointer-events:none !important;
}
.weekly-flow-runner::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:24px !important;
  height:24px !important;
  border:2px solid rgba(242,29,107,.32) !important;
  border-radius:50% !important;
  transform:translate(-50%,-50%) !important;
  animation:weeklyRunnerPulseV10 1.5s ease-out infinite !important;
}
.weekly-flow-runner::after {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:5px !important;
  height:5px !important;
  border-radius:50% !important;
  background:#fff !important;
  transform:translate(-50%,-50%) !important;
}
.weekly-flow-card { position:relative !important; z-index:3 !important; background:#fff !important; }
.weekly-flow-number { z-index:4 !important; }
@keyframes weeklyRunnerPulseV10 {
  0% { width:20px; height:20px; opacity:.9; }
  75% { width:42px; height:42px; opacity:.08; }
  100% { width:46px; height:46px; opacity:0; }
}
@media(max-width:560px){
  .weekly-flow-list{gap:24px !important;}
  .weekly-flow-runner{width:14px !important;height:14px !important;box-shadow:0 0 0 7px rgba(242,29,107,.12),0 0 24px rgba(242,29,107,.38) !important;}
}


/* Parent Transformation section redesigned to match the large image card style */
.parent-growth-section{position:relative;}
.parent-growth-section:after{display:none!important;}
.parent-image-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
  margin-top:28px!important;
  align-items:stretch!important;
}
.parent-image-card{
  position:relative!important;
  overflow:hidden!important;

  min-height:0!important;
  border-radius:34px!important;
  border:1px solid rgba(11,31,68,.08)!important;

  box-shadow:0 18px 46px rgba(7,29,58,.08)!important;
}
.parent-image-card::before{

  position:absolute!important;
  left:0!important; right:0!important; top:0!important;
  height:4px!important;
  background:linear-gradient(90deg,#0b2e6f 0%, #f2994a 100%)!important;
  z-index:3!important;
}
.parent-image-card::after{
  position:absolute!important;
  right:18px!important;
  top:18px!important;
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(11,31,68,.08)!important;
  display:grid!important;
  place-items:center!important;
  color:#0b2e6f!important;
  font:700 18px/1 Poppins, sans-serif!important;
  box-shadow:0 10px 24px rgba(7,29,58,.10)!important;
  z-index:4!important;
}
.parent-image-card:nth-child(1)::after{content:"01"!important;}
.parent-image-card:nth-child(2)::after{content:"02"!important;}
.parent-image-card:nth-child(3)::after{content:"03"!important;}
.parent-card-art{

  width:100%!important;
  height:420px!important;
  aspect-ratio:auto!important;


}
.parent-card-art::after{display:none!important;}
.parent-card-art img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;

  background:transparent!important;
  transform:none!important;
}
.parent-image-card:hover .parent-card-art img{transform:none!important;filter:none!important;}
.parent-quote-text{
  padding:28px 28px 30px!important;
  display:block!important;
  margin:0!important;
}
.parent-quote-text span{display:none!important;}
.parent-quote-text p{
  margin:0!important;
  font-size:18px!important;
  line-height:1.45!important;
  letter-spacing:-.01em!important;
  color:#0b1f44!important;
  font-weight:700!important;
}
@media (max-width:1180px){
  .parent-card-art{height:340px!important;}
  .parent-quote-text{padding:24px 22px 26px!important;}
  .parent-quote-text p{font-size:17px!important;}
}
@media (max-width:950px){
  .parent-image-grid{grid-template-columns:1fr!important;gap:22px!important;}
  .parent-card-art{height:300px!important;}
}
@media (max-width:560px){
  .parent-image-card{border-radius:26px!important;}
  .parent-card-art{height:240px!important;border-radius:26px 26px 0 0!important;}
  .parent-image-card::after{right:14px!important;top:14px!important;width:46px!important;height:46px!important;font-size:16px!important;}
  .parent-quote-text{padding:18px 18px 22px!important;}
  .parent-quote-text p{font-size:16px!important;line-height:1.4!important;}
}


/* Remove unwanted top accent and top white strip from parent cards */
.parent-image-card::before{
  display:none !important;
  content:none !important;
}
.parent-image-card{
  padding:0 !important;
  background:#ffffff !important;
}
.parent-card-art{
  margin:0 !important;
  padding:0 !important;
  border-radius:34px 34px 0 0 !important;
  overflow:hidden !important;
  background:transparent !important;
  line-height:0 !important;
}
.parent-card-art img{
  display:block !important;
  margin:0 !important;
  border-radius:34px 34px 0 0 !important;
}
@media (max-width:560px){
  .parent-card-art,
  .parent-card-art img{
    border-radius:26px 26px 0 0 !important;
  }
}


/* Framework marquee sits directly below hero and above the program video */
.hero + .framework-marquee,
section#home + .framework-marquee {
  margin: 0 !important;
  width: 100% !important;
}
.framework-marquee + #founder-story {
  margin-top: 0 !important;
}


/* Ver 100: hard mobile fixes for the hero + final CTA/footer overflow */
@media (max-width: 768px){
  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .hero{
    min-height:auto !important;
    height:auto !important;
    padding:20px 0 44px !important;
    overflow:hidden !important;
  }
  .hero::after{
    height:90px !important;
    min-height:90px !important;
    opacity:.55 !important;
  }
  .hero-curve{
    display:none !important;
  }

  .hero .nav{
    width:calc(100% - 28px) !important;
    height:auto !important;
    min-height:64px !important;
    padding:10px !important;
    border-radius:24px !important;
    gap:8px !important;
    overflow:hidden !important;
  }
  .hero .brand{
    width:clamp(150px, 45vw, 210px) !important;
    height:48px !important;
    border-radius:18px !important;
    flex:0 1 auto !important;
  }
  .hero .brand img{
    border-radius:18px !important;
    object-fit:cover !important;
  }
  .hero .nav-links{
    display:none !important;
  }
  .hero .nav-cta{
    flex:0 0 auto !important;
    max-width:42vw !important;
    padding:13px 16px !important;
    font-size:14px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  .hero .wrap{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:34px !important;
    padding:46px 18px 20px !important;
    overflow:hidden !important;
  }
  .hero .copy{
    width:100% !important;
    max-width:100% !important;
    text-align:center !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }
  .hero .badge{
    margin:0 auto 18px !important;
    max-width:100% !important;
    font-size:11px !important;
    letter-spacing:.16em !important;
    white-space:normal !important;
    text-align:center !important;
  }
  .hero h1,
  .hero .copy h1{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 18px !important;
    padding:0 !important;
    font-size:clamp(36px, 12vw, 48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
    text-align:center !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  .hero h1 span,
  .hero .copy h1 span{
    display:inline !important;
    white-space:normal !important;
  }
  .hero h1 span::after{
    display:none !important;
  }
  .hero .sub,
  .hero .copy .sub{
    width:100% !important;
    max-width:330px !important;
    margin:0 auto 26px !important;
    font-size:17px !important;
    line-height:1.58 !important;
    text-align:center !important;
  }
  .hero .actions{
    width:100% !important;
    max-width:330px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin:0 auto !important;
  }
  .hero .actions .btn,
  .hero .btn{
    width:100% !important;
    max-width:100% !important;
    min-height:56px !important;
    padding:0 18px !important;
    border-radius:18px !important;
    font-size:16px !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
  }
  .hero .visual{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:22px auto 0 !important;
    padding:0 !important;
    display:block !important;
    overflow:visible !important;
  }
  .hero .visual-card{
    width:calc(100vw - 42px) !important;
    max-width:360px !important;
    aspect-ratio:1/1.02 !important;
    margin:0 auto !important;
    border-radius:24px !important;
    transform:none !important;
  }
  .hero .screen{
    border-radius:24px !important;
  }

  .final-footer-section{
    margin-top:34px !important;
    padding:82px 18px 60px !important;
    overflow:hidden !important;
  }
  .final-footer-section::before{
    height:38px !important;
    left:-5vw !important;
    right:-5vw !important;
    width:110vw !important;
    clip-path:ellipse(86% 100% at 50% 0%) !important;
    z-index:1 !important;
  }
  .final-footer-inner,
  .final-footer-section .cta-box{
    position:relative !important;
    z-index:5 !important;
    width:100% !important;
    max-width:100% !important;
  }
  .final-footer-section .section-kicker{
    margin:0 auto 14px !important;
  }
  .final-footer-section .blueprint-title,
  .final-footer-section .cta-box h2{
    width:100% !important;
    max-width:340px !important;
    margin:0 auto 18px !important;
    font-size:clamp(34px, 10.5vw, 44px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    text-align:center !important;
    overflow-wrap:break-word !important;
  }
  .final-footer-section .blueprint-copy,
  .final-footer-section .cta-box p{
    max-width:330px !important;
    margin:0 auto 28px !important;
    font-size:16px !important;
    line-height:1.55 !important;
    text-align:center !important;
  }
  .final-footer-section .cta-actions{
    width:100% !important;
    max-width:340px !important;
    margin:26px auto 0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .final-footer-section .cta-actions .btn,
  .final-footer-section .btn-light,
  .final-footer-section .btn-outline{
    width:100% !important;
    min-height:58px !important;
    border-radius:20px !important;
    padding:0 18px !important;
    font-size:16px !important;
    line-height:1.15 !important;
    text-align:center !important;
  }
}

@media (max-width: 390px){
  .hero h1,
  .hero .copy h1{
    font-size:clamp(33px, 11.4vw, 42px) !important;
  }
  .hero .sub{font-size:16px !important; max-width:310px !important;}
  .hero .actions{max-width:310px !important;}
  .final-footer-section .blueprint-title,
  .final-footer-section .cta-box h2{
    font-size:clamp(31px, 9.6vw, 38px) !important;
    max-width:310px !important;
  }
  .final-footer-section .cta-actions{max-width:310px !important;}
}

@media (max-width: 760px){
  .hero-video-section .founder-story-media{padding:10px;border-radius:22px;}
  .hero-video-section .founder-video-poster-shell{border-width:3px;border-radius:12px;}
}

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body { min-width: 0; }
  a, button, input, select, textarea { touch-action: manipulation; }
  img { -webkit-user-drag: none; }
  .founder-video-link, .student-video-thumbnail-link { -webkit-tap-highlight-color: transparent; }
  @media (max-width: 720px) {
    input, select, textarea { font-size: 16px !important; }
    .founder-video-link, .student-video-thumbnail-link { display: block; width: 100%; }
    .founder-video-poster-img, .founder-video-poster { display: block; width: 100%; }
    [id] { scroll-margin-top: 18px; }
  }
  @supports (padding: max(0px)) {
    body { padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); }
  }

/* Mobile interaction correction: Future Skills + Learning Journey */
@media (max-width: 768px){
  /* Remove the decorative roadmap rings that clash with 01/02/03/04. */
  #journey .roadmap-card::before{
    display:none !important;
    content:none !important;
  }
  #journey .roadmap-card{
    padding-right:72px !important;
  }
  #journey .roadmap-card .stage-number{
    right:20px !important;
    top:20px !important;
    z-index:2 !important;
  }

  /* Each Future Skills description opens directly under its selected card. */
  #curriculum .skills-desc-wrap{
    display:none !important;
    min-height:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  #curriculum .skills-timeline{
    align-items:stretch !important;
    gap:14px !important;
  }
  #curriculum .skills-timeline .skill-desc{
    display:none !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    margin:-7px 0 2px !important;
    padding:18px 20px 20px !important;
    border:1px solid rgba(242,29,107,.18) !important;
    border-top:0 !important;
    border-radius:0 0 22px 22px !important;
    background:linear-gradient(180deg,rgba(242,29,107,.075),rgba(255,255,255,.98)) !important;
    color:#3d4963 !important;
    box-shadow:0 16px 34px rgba(7,29,58,.07) !important;
    text-align:center !important;
    font-size:16px !important;
    line-height:1.5 !important;
    font-weight:650 !important;
    opacity:0 !important;
    transform:translateY(-8px) !important;
    pointer-events:none !important;
  }
  #curriculum .skills-timeline .skill-desc::before,
  #curriculum .skills-timeline .skill-desc::after{
    display:none !important;
    content:none !important;
  }
  #curriculum .skills-timeline .skill-desc.is-visible{
    display:block !important;
    opacity:1 !important;
    transform:none !important;
    pointer-events:auto !important;
    animation:ffSkillDescOpen .22s ease both !important;
  }
  #curriculum .skill-chevron.is-active{
    border-radius:22px 22px 8px 8px !important;
    margin-bottom:0 !important;
  }
}
@keyframes ffSkillDescOpen{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}

/* Stable touch accordion for Future Skills. Prevents mobile browsers from
   keeping old cards visually active through their sticky :hover state. */
@media (max-width: 768px){
  #curriculum .skills-timeline{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
  }

  #curriculum .skill-chevron,
  #curriculum .skill-chevron:hover,
  #curriculum .skill-chevron:focus{
    width:100% !important;
    min-height:132px !important;
    margin:0 !important;
    transform:none !important;
    clip-path:none !important;
    border-radius:22px !important;
    border:1px solid rgba(242,29,107,.18) !important;
    background:rgba(255,255,255,.92) !important;
    color:#071b3a !important;
    box-shadow:none !important;
    -webkit-tap-highlight-color:transparent !important;
    touch-action:manipulation !important;
  }

  #curriculum .skill-chevron:hover .skill-icon,
  #curriculum .skill-chevron:focus .skill-icon,
  #curriculum .skill-chevron .skill-icon{
    background:rgba(242,29,107,.10) !important;
    box-shadow:0 14px 28px rgba(242,29,107,.12), inset 0 0 0 1px rgba(242,29,107,.10) !important;
  }

  #curriculum .skill-chevron:hover .skill-icon svg,
  #curriculum .skill-chevron:focus .skill-icon svg,
  #curriculum .skill-chevron .skill-icon svg{
    color:#F21D6B !important;
  }

  #curriculum .skill-chevron.is-active,
  #curriculum .skill-chevron.is-active:hover,
  #curriculum .skill-chevron.is-active:focus{
    background:#F21D6B !important;
    color:#fff !important;
    border-color:#F21D6B !important;
    border-radius:22px 22px 8px 8px !important;
    box-shadow:0 18px 38px rgba(242,29,107,.22) !important;
  }

  #curriculum .skill-chevron.is-active .skill-icon,
  #curriculum .skill-chevron.is-active:hover .skill-icon,
  #curriculum .skill-chevron.is-active:focus .skill-icon{
    background:rgba(255,255,255,.95) !important;
    box-shadow:none !important;
  }

  #curriculum .skill-chevron.is-active .skill-icon svg,
  #curriculum .skill-chevron.is-active:hover .skill-icon svg,
  #curriculum .skill-chevron.is-active:focus .skill-icon svg{
    color:#F21D6B !important;
  }

  #curriculum .skills-timeline .skill-desc{
    box-sizing:border-box !important;
    flex:0 0 auto !important;
    overflow:hidden !important;
    transition:none !important;
  }

  #curriculum .skills-timeline .skill-desc.is-visible{
    display:block !important;
    margin:-14px 0 0 !important;
    padding:24px 20px 22px !important;
    border-radius:0 0 22px 22px !important;
    animation:none !important;
  }
}

/* Hover effects belong only to devices that actually have a mouse. */
@media (hover:none), (pointer:coarse){
  #curriculum .skill-chevron:hover:not(.is-active){
    transform:none !important;
    background:rgba(255,255,255,.92) !important;
    color:#071b3a !important;
    box-shadow:none !important;
  }
}

/* 1 — Larger framework marquee with logo-and-text cards. */
.framework-marquee.framework-card-marquee{
  padding:16px 0 !important;
  background:#fff9fc !important;
  border-top:1px solid rgba(242,29,107,.12) !important;
  border-bottom:1px solid rgba(242,29,107,.12) !important;
}
.framework-card-marquee .framework-logo-track{
  min-height:104px !important;
  animation-duration:30s !important;
}
.framework-card-marquee .framework-marquee-unit{
  gap:16px !important;
  padding-right:16px !important;
}
.framework-card-marquee .framework-text{
  width:260px !important;
  min-height:82px !important;
  padding:16px 20px !important;
  display:flex !important;
  align-items:center !important;
  white-space:normal !important;
  border-radius:20px !important;
  background:#071d3a !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1.35 !important;
  box-shadow:0 12px 28px rgba(7,29,58,.10) !important;
}
.framework-card-marquee .framework-text strong{color:#ff4d8e !important;}
.framework-card-marquee .framework-logo{
  width:205px !important;
  height:82px !important;
  padding:12px 16px !important;
  display:grid !important;
  grid-template-columns:64px minmax(0,1fr) !important;
  gap:12px !important;
  border:1px solid rgba(242,29,107,.13) !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 12px 30px rgba(7,29,58,.07) !important;
}
.framework-card-marquee .framework-logo img{
  width:64px !important;
  height:52px !important;
  max-width:64px !important;
  max-height:52px !important;
  object-fit:contain !important;
}
.framework-card-marquee .framework-logo-label{
  display:block !important;
  color:#071d3a !important;
  font:800 13px/1.25 Inter,Poppins,sans-serif !important;
  white-space:normal !important;
  text-align:left !important;
}

/* 2 and 10 — Direct YouTube embeds on hosted pages; thumbnail links for local files. */
.responsive-youtube{
  position:relative !important;
  width:100% !important;
  aspect-ratio:16/9 !important;
  overflow:hidden !important;
  background:#071d3a !important;
}
.founder-video-poster-shell.responsive-youtube{border-radius:14px !important;}
.responsive-youtube .youtube-direct-embed{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border:0 !important;
  display:block !important;
  background:#071d3a !important;
}
.responsive-youtube .youtube-thumbnail-fallback{
  position:absolute !important;
  inset:0 !important;
  display:none !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  text-decoration:none !important;
  background:#071d3a !important;
}
.ff-local-file .responsive-youtube .youtube-direct-embed{display:none !important;}
.ff-local-file .responsive-youtube .youtube-thumbnail-fallback{display:block !important;}
.youtube-thumbnail-fallback .youtube-fallback-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}
.official-student-video-thumbnail .youtube-fallback-image{
  object-fit:contain !important;
  background:#fff9dc !important;
}
.youtube-fallback-play{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:78px !important;
  height:78px !important;
  transform:translate(-50%,-50%) !important;
  filter:drop-shadow(0 16px 24px rgba(0,0,0,.28));
}
.youtube-fallback-play svg{width:100% !important;height:100% !important;display:block !important;}
.youtube-fallback-play circle{fill:#f21d6b !important;stroke:rgba(255,255,255,.88) !important;stroke-width:2 !important;}
.youtube-fallback-play path{fill:#fff !important;}
.youtube-fallback-label{
  position:absolute !important;
  left:50% !important;
  bottom:18px !important;
  transform:translateX(-50%) !important;
  padding:9px 14px !important;
  border-radius:999px !important;
  background:rgba(7,29,58,.88) !important;
  color:#fff !important;
  font:800 13px/1 Inter,Poppins,sans-serif !important;
  white-space:nowrap !important;
}

/* 3 — Remove the uneven shadow below the dark-blue alignment panel. */
.framework-alignment-panel{box-shadow:none !important;}

/* 4 — Remove the unnecessary pink haze behind the Officer Mindset copy. */
.officer-showcase::before{display:none !important;content:none !important;}
.officer-pill{box-shadow:none !important;}

/* 9 — Decorative SVG icon badges inside the transformation subcards. */
#student-transformation .transform-card{
  position:relative !important;
  overflow:hidden !important;
  padding-right:72px !important;
}
#student-transformation .transform-decoration{
  position:absolute !important;
  right:14px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:44px !important;
  height:44px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:15px !important;
  background:rgba(242,29,107,.08) !important;
  color:#f21d6b !important;
  opacity:.92 !important;
  pointer-events:none !important;
}
#student-transformation .transform-decoration svg{
  width:25px !important;
  height:25px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.3 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* 11 — Use the newly transparent PNG icons without any white tile. */
#schools .benefit-icon{overflow:visible !important;}
#schools .transparent-school-icon{
  background:transparent !important;
  mix-blend-mode:normal !important;
}

@media (max-width:820px){
  .framework-marquee.framework-card-marquee{padding:12px 0 !important;}
  .framework-card-marquee .framework-logo-track{min-height:88px !important;animation-duration:24s !important;}
  .framework-card-marquee .framework-marquee-unit{gap:12px !important;padding-right:12px !important;}
  .framework-card-marquee .framework-text{
    width:220px !important;
    min-height:72px !important;
    padding:13px 16px !important;
    border-radius:17px !important;
    font-size:13px !important;
  }
  .framework-card-marquee .framework-logo{
    width:174px !important;
    height:72px !important;
    padding:10px 12px !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    gap:9px !important;
    border-radius:17px !important;
  }
  .framework-card-marquee .framework-logo img{
    width:52px !important;
    height:44px !important;
    max-width:52px !important;
    max-height:44px !important;
  }
  .framework-card-marquee .framework-logo-label{font-size:11.5px !important;}
  .youtube-fallback-play{width:64px !important;height:64px !important;}
  .youtube-fallback-label{bottom:12px !important;font-size:12px !important;padding:8px 12px !important;}
  #student-transformation .transform-card{padding-right:64px !important;}
  #student-transformation .transform-decoration{width:40px !important;height:40px !important;right:12px !important;}
  #student-transformation .transform-decoration svg{width:22px !important;height:22px !important;}
}

@media (max-width:480px){
  .framework-card-marquee .framework-logo-track{animation-duration:21s !important;}
  .responsive-youtube{border-radius:16px !important;}
  .student-video-frame.responsive-youtube{border-radius:20px !important;}
}

@media (prefers-reduced-motion:reduce){
  .framework-card-marquee .framework-logo-track{animation:none !important;}
}

/* Remove the unwanted dark copy card from every repeated marquee loop. */
.framework-card-marquee .framework-text{display:none !important;}

/* Keep the first video thumbnail clean, edge-to-edge and free of the yellow frame. */
.founder-video-poster-shell[data-youtube-id="qCb0SJkOXeI"],
.founder-video-poster-shell[data-youtube-id="qCb0SJkOXeI"] .youtube-thumbnail-fallback,
.founder-video-poster-shell[data-youtube-id="qCb0SJkOXeI"] .youtube-fallback-image{
  background:#071d3a !important;
}
.founder-video-poster-shell[data-youtube-id="qCb0SJkOXeI"] .youtube-fallback-image{
  object-fit:cover !important;
  object-position:center !important;
}

/* Final marquee correction: contained logo/text cards with a faster seamless loop. */
.framework-marquee.framework-card-marquee{
  overflow:hidden !important;
  padding:14px 0 !important;
}
.framework-card-marquee .framework-logo-window{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
  min-width:0 !important;
}
.framework-card-marquee .framework-logo-track{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:0 !important;
  width:max-content !important;
  min-width:max-content !important;
  min-height:94px !important;
  animation-name:frameworkMarqueeFull !important;
  animation-duration:14s !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
  will-change:transform !important;
}
.framework-card-marquee .framework-marquee-unit{
  display:flex !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:16px !important;
  width:max-content !important;
  min-width:max-content !important;
  padding:0 16px 0 0 !important;
  white-space:normal !important;
}
.framework-card-marquee .framework-logo{
  box-sizing:border-box !important;
  flex:0 0 238px !important;
  width:238px !important;
  min-width:238px !important;
  max-width:238px !important;
  height:86px !important;
  min-height:86px !important;
  padding:12px 15px !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:72px minmax(0,1fr) !important;
  align-items:center !important;
  column-gap:13px !important;
  overflow:hidden !important;
  border:1px solid rgba(242,29,107,.14) !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(7,29,58,.06) !important;
}
.framework-card-marquee .framework-logo img{
  grid-column:1 !important;
  box-sizing:border-box !important;
  display:block !important;
  width:72px !important;
  height:58px !important;
  min-width:0 !important;
  max-width:72px !important;
  max-height:58px !important;
  margin:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
}
.framework-card-marquee .framework-logo-label{
  grid-column:2 !important;
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  color:#071d3a !important;
  font:800 15px/1.22 Inter,Poppins,sans-serif !important;
  letter-spacing:-.01em !important;
  text-align:left !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
  hyphens:auto !important;
}

@media (max-width:820px){
  .framework-marquee.framework-card-marquee{padding:11px 0 !important;}
  .framework-card-marquee .framework-logo-track{
    min-height:80px !important;
    animation-duration:11s !important;
  }
  .framework-card-marquee .framework-marquee-unit{
    gap:10px !important;
    padding-right:10px !important;
  }
  .framework-card-marquee .framework-logo{
    flex-basis:196px !important;
    width:196px !important;
    min-width:196px !important;
    max-width:196px !important;
    height:72px !important;
    min-height:72px !important;
    padding:9px 11px !important;
    grid-template-columns:54px minmax(0,1fr) !important;
    column-gap:9px !important;
    border-radius:16px !important;
  }
  .framework-card-marquee .framework-logo img{
    width:54px !important;
    height:46px !important;
    max-width:54px !important;
    max-height:46px !important;
  }
  .framework-card-marquee .framework-logo-label{
    font-size:12.5px !important;
    line-height:1.2 !important;
  }
}

@media (max-width:480px){
  .framework-card-marquee .framework-logo-track{animation-duration:10s !important;}
  .framework-card-marquee .framework-logo{
    flex-basis:184px !important;
    width:184px !important;
    min-width:184px !important;
    max-width:184px !important;
  }
  .framework-card-marquee .framework-logo-label{font-size:12px !important;}
}

@media (prefers-reduced-motion:reduce){
  .framework-card-marquee .framework-logo-track{animation:none !important;}
}

/* Mobile section menu */
.mobile-menu-toggle,
.mobile-section-menu,
.mobile-menu-backdrop{display:none;}

@media (max-width:768px){
  .hero .nav{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto 48px!important;
    align-items:center!important;
    gap:8px!important;
    overflow:visible!important;
  }
  .hero .brand{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
  }
  .hero .nav-cta{
    max-width:none!important;
    min-width:0!important;
    padding:0 12px!important;
    font-size:13px!important;
  }
  .mobile-menu-toggle{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:16px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 10px 24px rgba(7,29,58,.12)!important;
    cursor:pointer!important;
    position:relative!important;
    z-index:10001!important;
  }
  .mobile-menu-toggle span{
    display:block!important;
    width:23px!important;
    height:3px!important;
    border-radius:999px!important;
    background:#071d3a!important;
    transition:transform .22s ease,opacity .22s ease!important;
  }
  body.mobile-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)!important;}
  body.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0!important;}
  body.mobile-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)!important;}

  .mobile-menu-backdrop{
    position:fixed!important;
    inset:0!important;
    display:block!important;
    background:rgba(7,29,58,.42)!important;
    opacity:0!important;
    visibility:hidden!important;
    transition:opacity .22s ease,visibility .22s ease!important;
    z-index:9998!important;
  }
  .mobile-section-menu{
    position:fixed!important;
    top:82px!important;
    left:14px!important;
    right:14px!important;
    max-height:calc(100dvh - 100px)!important;
    overflow:auto!important;
    display:block!important;
    padding:18px!important;
    border-radius:24px!important;
    background:#fff!important;
    border:1px solid rgba(242,29,107,.18)!important;
    box-shadow:0 28px 70px rgba(7,29,58,.24)!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(-12px)!important;
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease!important;
    z-index:10000!important;
  }
  body.mobile-menu-open .mobile-menu-backdrop,
  body.mobile-menu-open .mobile-section-menu{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
  }
  body.mobile-menu-open{overflow:hidden!important;}
  .mobile-section-menu-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-bottom:14px!important;
    color:#071d3a!important;
  }
  .mobile-section-menu-head strong{
    font:800 18px/1.2 Poppins,Inter,sans-serif!important;
  }
  .mobile-menu-close{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    padding:0!important;
    border:0!important;
    border-radius:12px!important;
    background:#fff0f6!important;
    color:#e90054!important;
    font:500 28px/1 Inter,sans-serif!important;
    cursor:pointer!important;
  }
  .mobile-section-menu-links{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }
  .mobile-section-menu-links a{
    min-width:0!important;
    padding:12px 10px!important;
    border-radius:13px!important;
    background:#fff5f8!important;
    color:#071d3a!important;
    text-decoration:none!important;
    font:700 13px/1.25 Inter,sans-serif!important;
    text-align:left!important;
  }

  /* Use the embedded clickable thumbnails on mobile instead of the iframe error screen. */
  .responsive-youtube .youtube-direct-embed{
    display:none!important;
  }
  .responsive-youtube .youtube-thumbnail-fallback{
    display:block!important;
    z-index:3!important;
  }
  .responsive-youtube .youtube-fallback-image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .official-student-video-thumbnail .youtube-fallback-image{
    object-fit:contain!important;
  }

  /* Mobile Learning By Doing cards: large number on the left; icon and copy on the right. */
  #outcome-path .outcome-flow-card{
    display:grid!important;
    grid-template-columns:66px 56px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:12px!important;
    row-gap:5px!important;
    align-items:center!important;
    min-height:0!important;
    padding:22px 18px!important;
    text-align:left!important;
  }
  #outcome-path .outcome-step-number{
    grid-column:1!important;
    grid-row:1 / 3!important;
    position:static!important;
    width:62px!important;
    height:62px!important;
    margin:0!important;
    border-radius:17px!important;
    font-size:20px!important;
    align-self:center!important;
  }
  #outcome-path .outcome-flow-icon{
    grid-column:2!important;
    grid-row:1 / 3!important;
    width:54px!important;
    height:54px!important;
    margin:0!important;
    align-self:center!important;
  }
  #outcome-path .outcome-flow-icon img{
    width:54px!important;
    height:54px!important;
    object-fit:contain!important;
  }
  #outcome-path .outcome-flow-card h3{
    grid-column:3!important;
    grid-row:1!important;
    margin:0!important;
    align-self:end!important;
    text-align:left!important;
    font-size:18px!important;
    line-height:1.16!important;
  }
  #outcome-path .outcome-flow-card p{
    grid-column:3!important;
    grid-row:2!important;
    margin:0!important;
    align-self:start!important;
    text-align:left!important;
    font-size:14px!important;
    line-height:1.42!important;
  }
}

/* Remove the unnecessary arrows in the Education Gap cards. */
#gap .compare-card-text b{display:none!important;}

/* Keep icon artwork clean against the cards by removing the extra icon-container fills. */
#outcome-path .outcome-flow-icon,
#schools .benefit-icon,
.wef-head-icon,
.wef-skill-icon{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#schools .benefit-pill:hover .benefit-icon{
  background:transparent!important;
}
#outcome-path .outcome-flow-icon img,
#schools .benefit-icon img,
.wef-head-icon img,
.wef-skill-icon img{
  background:transparent!important;
  border-radius:0!important;
}

.official-student-video-thumbnail,
.official-student-video-thumbnail .youtube-thumbnail-fallback,
.official-student-video-thumbnail .youtube-fallback-image{
  background:transparent !important;
}


/* Desktop card-height correction: prevents longer system-card descriptions from being clipped. */
@media (min-width:1101px){
  .learning-system-grid .system-card{
    height:228px!important;
    min-height:228px!important;
  }
}
