    /* ── ANNOUNCEMENT BAR ────────────────────────────── */
    .cc-announcement-bar { background: var(--navy); padding: .5rem 1rem; }
    .cc-announcement-bar p { color: var(--gold-lt); font-size: .8rem; margin: 0; }

    /* ── TOKENS ──────────────────────────────────────── */
    :root {
      --navy:    #071B34;
      --ocean:   #0E5A8A;
      --teal:    #12c5c5;
      --emerald: #2BAE66;
      --cream:   #F6F2EC;
      --gold:    #C9960C;
      --gold-lt: #E9B94E;
      --white:   #ffffff;
      --deep:    #031f2d;
      --muted:   rgba(7,27,52,.55);

      /* ── unified section surfaces (two families, no rainbow) ── */
      /* light: a very soft sand→sea, echoing the header/footer but calm enough for body text */
      --surface-light: linear-gradient(150deg, #fbf7ef 0%, #f4efe2 38%, #eaf1ec 70%, #e2eef0 100%);
      /* dark: one deep-ocean navy family reused everywhere */
      --surface-dark:  linear-gradient(160deg, #061a30 0%, #0a2846 55%, #0c3358 100%);

      --heading: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
      --body:    'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
      --ease:    cubic-bezier(0.16, 1, 0.3, 1);
      --t:       300ms;
      --r-xl: 1.5rem;
      --r-lg: 1rem;
    }

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; font-size: 16px; }
    body { font-family: var(--body); color: var(--navy); background: var(--white); overflow-x: hidden; -webkit-font-smoothing: antialiased; }
    img, video { display: block; max-width: 100%; }
    a { text-decoration: none; color: inherit; }

    /* ── UTILITY ── */
    .container { max-width: 1180px; margin: 0 auto; padding: 0 2rem; }

    /* WP core caps every non-aligned child of a "constrained" layout group at
       var(--wp--style--global--content-size) (theme.json contentSize: 700px),
       even when the child group itself declares layout type "default". That
       silently shrinks these full-width card grids to 700px instead of
       filling the section, unlike the reference which has no such cap. */
    .startup-programs, .eco-grid, .impact-grid, .corridor-grid, .invest-grid,
    .heritage-grid, .stories-grid, .bluecarbon-grid {
      max-width: none;
    }
    .eyebrow { font-size: .68rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--teal); display: block; margin-bottom: .75rem; }
    .section-title { font-family: var(--heading); font-weight: 800; font-size: clamp(2rem, 4.5vw, 3.2rem); line-height: 1.12; letter-spacing: -.02em; color: var(--navy); }
    .section-title-light { color: #fff; }
    .section-body { font-size: 1rem; line-height: 1.82; color: var(--muted); max-width: 580px; }
    .section-body-light { color: rgba(255,255,255,.58); }

    /* ── BUTTONS ── */
    /* Reset WP core block defaults that force full-width buttons
       (wp-includes/blocks/buttons/style.css sets
       .wp-block-buttons .wp-block-button__link { width: 100% }
       and .wp-block-buttons > .wp-block-button { display: inline-block }).
       Buttons must stay compact/pill-shaped per the reference design. */
    .wp-block-buttons { max-width: none; }
    .wp-block-buttons > .wp-block-button { width: auto; flex: 0 0 auto; }
    .wp-block-buttons .wp-block-button__link.btn,
    .wp-block-button__link.btn { width: auto; height: auto; }
    .btn { display: inline-flex; align-items: center; gap: .45rem; padding: .72rem 1.55rem; border-radius: 4rem; font-family: var(--body); font-size: .84rem; font-weight: 600; cursor: pointer; border: none; transition: transform var(--t) var(--ease), box-shadow var(--t), opacity var(--t); white-space: nowrap; width: auto; }
    .btn:hover { transform: translateY(-2px); }
    /* Color/border variants belong on the inner <a class="btn">, not the
       wrapping .wp-block-button div — the div has no border-radius of its
       own, so giving it a border too draws a square outline behind the
       pill-shaped link and makes the button look square-cornered. */
    .wp-block-button.btn-primary, .wp-block-button.btn-gold, .wp-block-button.btn-ghost, .wp-block-button.btn-outline { background: transparent; border: none; }
    .btn-primary .wp-block-button__link { background: linear-gradient(135deg, var(--teal) 0%, var(--ocean) 100%); color: #fff; box-shadow: 0 4px 20px rgba(18,197,197,.35); }
    .btn-primary .wp-block-button__link:hover { box-shadow: 0 8px 32px rgba(18,197,197,.5); }
    .btn-gold .wp-block-button__link { background: linear-gradient(135deg, var(--gold-lt), var(--gold)); color: var(--navy); box-shadow: 0 4px 20px rgba(201,150,12,.3); }
    .btn-gold .wp-block-button__link:hover { box-shadow: 0 8px 32px rgba(201,150,12,.48); }
    .btn-ghost .wp-block-button__link { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.3); }
    .btn-ghost .wp-block-button__link:hover { border-color: var(--teal); color: var(--teal); }
    .btn-outline .wp-block-button__link { background: transparent; color: var(--navy); border: 1.5px solid rgba(7,27,52,.22); }
    .btn-outline .wp-block-button__link:hover { border-color: var(--teal); color: var(--teal); }

    /* ═══ NAV ═══ */
    .nav { position: fixed; top: 0; left: 0; right: 0; z-index: 300; display: flex; align-items: center; justify-content: space-between; padding: 0 2.5rem; height: 88px;
      max-width: 1180px; margin: 0 auto; box-sizing: border-box;
      transition: background 380ms, border-color 380ms, box-shadow 380ms; }
    .nav::before { content: ""; position: absolute; top: 0; bottom: 0; left: 50%; width: 100vw; transform: translateX(-50%); z-index: -1;
      /* sand → sea across the whole bar, with transparency */
      background: linear-gradient(100deg, rgba(253,246,233,.82) 0%, rgba(243,234,212,.80) 30%, rgba(220,239,233,.80) 62%, rgba(195,230,226,.82) 100%);
      backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
      border-bottom: 1px solid rgba(255,255,255,.35);
      transition: background 380ms, border-color 380ms, box-shadow 380ms; }
    .nav.scrolled::before { background: linear-gradient(100deg, rgba(253,246,233,.96) 0%, rgba(243,234,212,.95) 30%, rgba(220,239,233,.95) 62%, rgba(195,230,226,.96) 100%); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-bottom: 1px solid rgba(14,90,138,.18); box-shadow: 0 2px 24px rgba(7,27,52,.18); }
    .nav-logo { display: flex; align-items: center; gap: .85rem; text-decoration: none; transition: transform var(--t) var(--ease); }
    .nav-logo:hover { transform: translateY(-1px); }
    .nav-logo img { height: 70px; width: auto; max-width: 280px; object-fit: contain; display: block; transition: transform var(--t) var(--ease); }
    .nav-logo:hover img { transform: scale(1.03); }
    .nav-logo-text { padding-left: .85rem; border-left: 1px solid rgba(7,27,52,.18); }
    .nav-logo-text strong { display: block; color: var(--navy); font-size: .9rem; font-weight: 700; line-height: 1.2; letter-spacing: .01em; }
    .nav-logo-text span { display: block; color: var(--ocean); font-size: .58rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; margin-top: 2px; }
    .nav-links { display: flex; align-items: center; gap: 1.75rem; list-style: none; }
    .nav-links a { color: rgba(7,27,52,.78); font-size: .82rem; font-weight: 600; transition: color var(--t); }
    .nav-links a:hover { color: var(--ocean); }
    .nav-actions { display: flex; gap: .6rem; align-items: center; }
    .nav-cta { /*background: linear-gradient(135deg, var(--teal), var(--ocean)); color: #fff;*/ font-size: .78rem; font-weight: 600; padding: .44rem 1.1rem; border-radius: 3rem; transition: box-shadow var(--t), transform var(--t) var(--ease); }
    .nav-cta:hover { box-shadow: 0 6px 20px rgba(18,197,197,.45); transform: translateY(-1px); }
    .nav-hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: .5rem; background: none; border: none; z-index: 310; }
    .nav-hamburger span { display: block; width: 24px; height: 2px; background: var(--navy); border-radius: 2px; transition: transform 300ms, opacity 300ms; }
    .nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .nav-hamburger.open span:nth-child(2) { opacity: 0; }
    .nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .nav-drawer { display: none; position: fixed; top: 72px; left: 0; right: 0; background: rgba(3,18,30,.97); backdrop-filter: blur(20px); border-bottom: 1px solid rgba(18,197,197,.15); z-index: 299; padding: 1.5rem 1.75rem 2rem; flex-direction: column; gap: 0; transform: translateY(-8px); opacity: 0; transition: transform 280ms var(--ease), opacity 280ms; }
    .nav-drawer.open { transform: translateY(0); opacity: 1; }
    .nav-drawer a { display: block; color: rgba(255,255,255,.8); font-size: .98rem; font-weight: 500; padding: .88rem 0; border-bottom: 1px solid rgba(255,255,255,.07); transition: color 200ms; }
    .nav-drawer a:last-child { border-bottom: none; }
    .nav-drawer a:hover { color: var(--teal); }
    .nav-drawer .nav-cta { margin-top: 1rem; border-bottom: none; text-align: center; border-radius: 2rem; padding: .75rem 1rem; }

    /* ═══ HERO SLIDER ═══ */
    .hero {
      position: relative;
      height: 100vh; min-height: 640px;
      overflow: hidden;
    }

    /* fullscreen slide images */
    .hero-slides { position: absolute; inset: 0; }
    .hero-slide {
      position: absolute; inset: 0;
      opacity: 0;
      transition: opacity 1.1s var(--ease), transform 7s linear;
      transform: scale(1);
    }
    .hero-slide.active {
      opacity: 1;
      transform: scale(1.04);
    }
    .hero-slide-link { position: absolute; inset: 0; display: block; z-index: 5; pointer-events: none; }
    .hero-slide.active .hero-slide-link { pointer-events: auto; }
    .hero-slide-cta {
      position: absolute; right: 2.5rem; bottom: 6.5rem; z-index: 6;
      display: inline-flex; align-items: center; gap: .5rem;
      background: linear-gradient(135deg, var(--teal), var(--ocean));
      color: #fff; font-weight: 700; font-size: .85rem;
      padding: .75rem 1.4rem; border-radius: 3rem;
      box-shadow: 0 8px 28px rgba(7,27,52,.35);
      opacity: 0; transform: translateY(10px);
      transition: opacity 400ms var(--ease) 300ms, transform 400ms var(--ease) 300ms, box-shadow var(--t);
    }
    .hero-slide.active .hero-slide-cta { opacity: 1; transform: translateY(0); }
    .hero-slide-link:hover .hero-slide-cta { box-shadow: 0 10px 34px rgba(18,197,197,.5); transform: translateY(-2px); }
    .hero-slide img {
      width: 100%; height: 100%;
      object-fit: cover; object-position: center;
      display: block;
    }

    /* dark gradient overlay for text readability */
    .hero-overlay {
      position: absolute; inset: 0; z-index: 2;
      background: linear-gradient(180deg,
        rgba(3,31,45,.18) 0%,
        rgba(3,31,45,.04) 35%,
        rgba(3,31,45,.42) 100%);
    }

    /* left-aligned text content */
    .hero-content {
      position: absolute; inset: 0; z-index: 3;
      display: flex; align-items: center; justify-content: flex-start;
      text-align: left;
    }
    .hero-inner { max-width: 1100px; width: 100%; padding: 7rem 2rem 4rem; margin: 0 auto; }
    .hero-inner > * { margin-left: 0 !important; margin-right: auto !important; }

    .hero-badge {
      display: inline-flex; align-items: center; gap: .5rem;
      background: rgba(18,197,197,.13);
      border: 1px solid rgba(18,197,197,.38);
      color: var(--teal); font-size: .68rem; font-weight: 600;
      letter-spacing: .14em; text-transform: uppercase;
      padding: .4rem 1.1rem; border-radius: 3rem; margin-bottom: 1.8rem;
    }
    .hero-badge::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--teal); animation: pulse 2s ease infinite; }
    @keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(1.5)} }

    .hero-title { font-family: var(--heading); font-size: clamp(3rem, 9vw, 6.2rem); font-weight: 800; letter-spacing: -.03em; line-height: 1; color: #fff; margin-bottom: .5rem; text-shadow: 0 2px 24px rgba(0,0,0,.6), 0 1px 4px rgba(0,0,0,.8); }
    .hero-title .accent { color: var(--gold-lt); }
    .hero-inf {
      display: inline-block;
      font-size: clamp(3rem, 8vw, 5.5rem);
      background: linear-gradient(135deg, var(--teal), var(--gold-lt));
      -webkit-background-clip: text; -webkit-text-fill-color: transparent;
      background-clip: text;
      filter: drop-shadow(0 0 20px rgba(18,197,197,.4));
      line-height: 1; margin-bottom: .4rem;
    }
    .hero-os { font-size: clamp(.9rem, 1.8vw, 1.12rem); color: rgba(255,255,255,.85); font-style: italic; font-family: var(--heading); margin-bottom: 1rem; text-shadow: 0 1px 12px rgba(0,0,0,.7); }
    .hero-sub { font-size: clamp(.84rem, 1.4vw, .96rem); color: rgba(255,255,255,.82); line-height: 1.88; max-width: 620px; margin: 0 0 2.5rem; text-shadow: 0 1px 8px rgba(0,0,0,.65); }
    .hero-actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-start; max-width: none; width: 100%; }
    .hero-actions .btn { font-size: .8rem; padding: .65rem 1.25rem; }

    /* slider controls — bottom overlay */
    /* dots + caption — bottom centre, never overlaps badge */
    .hero-slider-controls {
      position: absolute; bottom: 2rem; left: 0; right: 0;
      z-index: 4; display: flex; flex-direction: column;
      align-items: center; gap: .6rem;
      pointer-events: none;
    }
    .hero-slider-controls > * { pointer-events: auto; }
    .hero-dots { display: flex; gap: .55rem; }
    .hero-dot {
      width: 9px; height: 9px; border-radius: 50%;
      background: rgba(255,255,255,.3);
      border: 1.5px solid rgba(255,255,255,.5);
      cursor: pointer;
      transition: background 300ms, width 300ms var(--ease), border-radius 300ms;
    }
    .hero-dot.active { background: var(--teal); border-color: var(--teal); width: 26px; border-radius: 4px; }

    /* arrows — pinned to vertical centre on each side */
    .hero-arrow {
      position: absolute; top: 50%; z-index: 4;
      transform: translateY(-50%);
      width: 46px; height: 46px; border-radius: 50%;
      background: rgba(3,20,38,.45);
      border: 1.5px solid rgba(255,255,255,.22);
      color: #fff; font-size: 1.3rem;
      display: flex; align-items: center; justify-content: center;
      cursor: pointer;
      transition: background 250ms, border-color 250ms, transform 250ms var(--ease);
      backdrop-filter: blur(10px);
    }
    .hero-arrow:hover { background: var(--teal); border-color: var(--teal); transform: translateY(-50%) scale(1.1); }
    #heroPrev { left: 1.25rem; }
    #heroNext { right: 1.25rem; }

    /* slide caption label */
    .hero-caption {
      font-size: .68rem; font-weight: 600; letter-spacing: .14em;
      text-transform: uppercase; color: rgba(255,255,255,.55);
      text-shadow: 0 1px 6px rgba(0,0,0,.7);
    }

    /* progress bar */
    .hero-progress {
      position: absolute; bottom: 0; left: 0; height: 4px;
      background: linear-gradient(90deg, var(--teal), var(--gold-lt));
      z-index: 5; width: 0%;
      transition: width 0ms linear;
    }

    /* wave */
    .hero-wave { position: absolute; bottom: -1px; left: 0; right: 0; z-index: 3; line-height: 0; }
    .hero-wave svg { display: block; width: 100%; }

    /* ═══ FOUNDER ═══ */
    .founder { background: var(--surface-dark); padding: 6rem 2rem; position: relative; overflow: hidden; }
    .founder::before { content: '∞'; position: absolute; right: -3rem; top: 50%; transform: translateY(-50%); font-size: 28rem; color: rgba(18,197,197,.04); line-height: 1; pointer-events: none; }
    .founder-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 300px 1fr; gap: 5rem; align-items: center; position: relative; }
    .founder-portrait-wrap { position: relative; }
    .founder-portrait-wrap::before {
      content: '';
      position: absolute;
      inset: -6px;
      border-radius: 2rem;
      background: linear-gradient(155deg, var(--gold-lt), var(--teal), var(--ocean));
      z-index: 0;
      opacity: .5;
    }
    .founder-portrait-wrap::after {
      content: '';
      position: absolute;
      bottom: -12px; right: -12px;
      width: 80px; height: 80px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(18,197,197,.35), transparent 70%);
      z-index: 0;
      pointer-events: none;
    }
    .founder-portrait-frame {
      position: relative; z-index: 1;
      aspect-ratio: 3/4;
      border-radius: 1.75rem;
      overflow: hidden;
      box-shadow: 0 24px 64px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.08);
    }
    .founder-portrait-frame img {
      width: 100%; height: 100%;
      object-fit: cover;
      object-position: center top;
      display: block;
      filter: contrast(1.05) saturate(1.08);
      transition: transform .6s var(--ease);
    }
    .founder-portrait-frame:hover img { transform: scale(1.04); }
    .founder-portrait-frame::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(3,31,45,.45) 0%, transparent 50%);
      pointer-events: none;
    }
    .founder-portrait-placeholder { font-size: 6rem; opacity: .3; filter: grayscale(1); }
    .founder-sig { margin-top: 1.25rem; text-align: center; }
    .founder-name { font-family: var(--heading); font-size: 1.2rem; color: var(--gold-lt); font-weight: 700; display: block; }
    .founder-role { font-size: .75rem; color: rgba(255,255,255,.42); letter-spacing: .08em; text-transform: uppercase; margin-top: .25rem; display: block; }
    .founder-principle { font-size: .65rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--teal); margin-bottom: 1.75rem; display: flex; align-items: center; gap: .75rem; }
    .founder-principle::after { content: ''; flex: 1; height: 1px; background: rgba(18,197,197,.22); }
    .founder-q { font-family: var(--heading); font-size: clamp(1.4rem, 2.8vw, 2.1rem); font-style: italic; font-weight: 600; color: rgba(255,255,255,.9); line-height: 1.55; padding-left: 1.5rem; border-left: 3px solid var(--teal); margin-bottom: 2rem; }
    .founder-q p { margin-bottom: .65rem; }
    .founder-q p:last-child { margin-bottom: 0; }
    .founder-message { font-size: .88rem; color: rgba(255,255,255,.48); line-height: 1.82; margin-bottom: 1.5rem; }
    .founder-tagline { font-size: .8rem; color: var(--teal); font-weight: 600; letter-spacing: .06em; }

    /* ═══ HERITAGE / FOUNDING SOCIETIES ═══ */
    .heritage { background: var(--surface-light); padding: 5.5rem 0; position: relative; }
    .heritage-head { text-align: center; max-width: 640px; margin: 0 auto 3rem; padding: 0 2rem; }
    /* !important needed: WP core .wp-block-columns sets
       display:flex + flex-wrap:wrap !important (same 0,1,0 specificity),
       which otherwise wins on load-order ties and breaks the 2-col grid. */
    .heritage-grid { display: grid !important; flex-wrap: unset !important; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; max-width: 980px; margin: 0 auto; padding: 0 2rem; }
    .heritage-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
    .heritage-card { position: relative; background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); padding: 2.25rem 2rem 2rem; box-shadow: 0 10px 30px rgba(7,27,52,.06); transition: transform var(--t) var(--ease), box-shadow var(--t); overflow: hidden; }
    .heritage-card::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, var(--teal), var(--ocean)); }
    .heritage-card:hover { transform: translateY(-4px); box-shadow: 0 18px 44px rgba(7,27,52,.12); }
    .heritage-year { font-family: var(--heading); font-weight: 700; font-size: 2.6rem; line-height: 1; color: var(--ocean); }
    .heritage-year span { color: var(--gold); font-size: 1rem; font-family: var(--body); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; margin-left: .5rem; vertical-align: middle; }
    .heritage-name { font-family: var(--heading); font-weight: 700; font-size: 1.4rem; color: var(--navy); margin: .9rem 0 .35rem; line-height: 1.25; }
    .heritage-loc { font-size: .82rem; font-weight: 600; color: var(--teal); letter-spacing: .04em; display: flex; align-items: center; gap: .4rem; }
    /* launch banner */
    .heritage-launch { max-width: 980px; margin: 1.5rem auto 0; padding: 0 2rem; }
    .heritage-launch-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem 1.75rem; text-align: center; background: linear-gradient(120deg, var(--navy), #0a3a68); border-radius: var(--r-xl); padding: 1.6rem 2rem; box-shadow: 0 14px 38px rgba(7,27,52,.22); }
    .heritage-launch-mark { font-family: var(--heading); font-weight: 700; font-size: 1.5rem; color: #fff; letter-spacing: .01em; }
    .heritage-launch-mark b { color: var(--teal); }
    .heritage-launch-date { display: inline-flex; align-items: center; gap: .5rem; background: linear-gradient(135deg, var(--teal), var(--ocean)); color: #fff; font-weight: 700; font-size: .88rem; letter-spacing: .04em; padding: .55rem 1.2rem; border-radius: 3rem; }
    .heritage-launch-note { color: rgba(255,255,255,.68); font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; }

    /* ═══ GALLERY SLIDER (below hero) ═══ */
    .gallery-slider { padding: 5rem 0; background: var(--surface-light); overflow: hidden; }
    .gallery-head { text-align: center; max-width: 620px; margin: 0 auto 2.5rem; padding: 0 2rem; }
    .gslider-track-outer { overflow: hidden; }
    .gslider-track { display: flex; transition: transform 600ms var(--ease); will-change: transform; }
    .gslide { flex: 0 0 33.333%; padding: 0 .6rem; }
    .gslide-inner { border-radius: var(--r-xl); overflow: hidden; aspect-ratio: 4/3; position: relative; }
    .gslide-inner img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--ease); }
    .gslide-inner:hover img { transform: scale(1.05); }
    .gslide-caption { position: absolute; bottom: 0; left: 0; right: 0; padding: .65rem 1rem; background: linear-gradient(transparent, rgba(3,31,45,.75)); color: rgba(255,255,255,.88); font-size: .75rem; font-weight: 500; }
    .gslider-controls { display: flex; justify-content: center; align-items: center; gap: 1.25rem; margin-top: 1.75rem; }
    .gslider-btn { width: 44px; height: 44px; border-radius: 50%; background: var(--white); border: 1.5px solid rgba(7,27,52,.12); cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; color: var(--navy); transition: background var(--t), border-color var(--t), transform var(--t) var(--ease); box-shadow: 0 2px 12px rgba(7,27,52,.07); }
    .gslider-btn:hover { background: var(--teal); border-color: var(--teal); color: #fff; transform: scale(1.05); }
    .gslider-dots { display: flex; gap: .5rem; }
    .gslider-dot { width: 8px; height: 8px; border-radius: 50%; background: rgba(7,27,52,.15); cursor: pointer; transition: background var(--t), width var(--t) var(--ease); }
    .gslider-dot.active { background: var(--teal); width: 22px; border-radius: 4px; }

    /* ═══ CORRIDOR ═══ */
    .corridor { position: relative; padding: 6.5rem 2rem; overflow: hidden; background: var(--surface-dark); }
    .corridor-glow { position: absolute; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(18,197,197,.1) 0%, transparent 70%); right: -80px; top: 50%; transform: translateY(-50%); pointer-events: none; }
    .corridor-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 4.5rem; align-items: center; max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
    .corridor-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2rem; }
    .tag { background: rgba(18,197,197,.1); border: 1px solid rgba(18,197,197,.25); color: var(--teal); font-size: .74rem; font-weight: 600; padding: .33rem .88rem; border-radius: 2rem; transition: background var(--t), border-color var(--t); }
    .tag:hover { background: rgba(18,197,197,.2); border-color: rgba(18,197,197,.5); }
    .corridor-map { background: rgba(255,255,255,.04); border: 1px solid rgba(18,197,197,.18); border-radius: var(--r-xl); padding: 1.8rem; backdrop-filter: blur(8px); }
    .corridor-map-label { font-size: .63rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.32); margin-bottom: .4rem; }
    .corridor-map-title { font-family: var(--heading); color: #fff; font-size: 1.08rem; font-weight: 700; margin-bottom: 1.5rem; }
    .corridor-svg { width: 100%; height: auto; border-radius: .75rem; overflow: hidden; }
    .route-dot { animation: routeGlow 2.2s ease-in-out infinite; }
    .route-dot:nth-child(2){animation-delay:.3s}.route-dot:nth-child(3){animation-delay:.6s}.route-dot:nth-child(4){animation-delay:.9s}.route-dot:nth-child(5){animation-delay:1.2s}.route-dot:nth-child(6){animation-delay:1.5s}
    @keyframes routeGlow { 0%,100%{r:4;opacity:.8} 50%{r:7;opacity:1;filter:drop-shadow(0 0 6px #12c5c5)} }
    .route-path { stroke-dasharray: 600; stroke-dashoffset: 600; transition: stroke-dashoffset 3s ease; }
    .corridor-map.map-active .route-path { stroke-dashoffset: 0; }
    .panel-pill { display: inline-flex; align-items: center; gap: .38rem; background: rgba(18,197,197,.1); border: 1px solid rgba(18,197,197,.2); border-radius: 2rem; padding: .3rem .75rem; font-size: .7rem; font-weight: 600; color: var(--teal); margin-top: .75rem; margin-right: .4rem; }

    /* ═══ ECOSYSTEM ═══ */
    .ecosystem { padding: 6.5rem 2rem; background: var(--surface-light); }
    .ecosystem-head { text-align: center; max-width: 640px; margin: 0 auto 3.5rem; }
    .eco-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; max-width: 1100px; margin: 0 auto; }
    .eco-card { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); padding: 2rem 1.75rem; position: relative; overflow: hidden; transition: transform var(--t) var(--ease), box-shadow var(--t), border-color var(--t); }
    .eco-card::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--teal), var(--ocean)); transform: scaleX(0); transform-origin: left; transition: transform var(--t) var(--ease); }
    .eco-card:hover { transform: translateY(-6px); box-shadow: 0 20px 56px rgba(7,27,52,.1); border-color: rgba(18,197,197,.25); }
    .eco-card:hover::after { transform: scaleX(1); }
    .eco-icon { width: 48px; height: 48px; border-radius: .85rem; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; margin-bottom: 1.1rem; }
    .eco-icon-1{background:rgba(18,197,197,.1)}.eco-icon-2{background:rgba(43,174,102,.1)}.eco-icon-3{background:rgba(14,90,138,.1)}.eco-icon-4{background:rgba(201,150,12,.1)}.eco-icon-5{background:rgba(18,197,197,.1)}.eco-icon-6{background:rgba(43,174,102,.1)}
    .eco-card-title { font-family: var(--heading); font-weight: 700; font-size: 1.15rem; color: var(--navy); margin-bottom: .5rem; }
    .eco-card-sub { font-size: .83rem; color: var(--muted); line-height: 1.65; }

    /* ═══ IMPACT ═══ */
    .impact { padding: 6.5rem 2rem; background: var(--surface-dark); }
    .impact-head { text-align: center; max-width: 620px; margin: 0 auto 3.5rem; }
    .impact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; max-width: 1100px; margin: 0 auto; }
    .impact-card { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: var(--r-xl); padding: 1.8rem; text-align: center; transition: border-color var(--t), background var(--t); }
    .impact-card:hover { border-color: rgba(18,197,197,.3); background: rgba(18,197,197,.12); }
    .impact-ring { width: 86px; height: 86px; margin: 0 auto 1.2rem; position: relative; }
    .impact-ring svg { transform: rotate(-90deg); }
    .impact-ring-track { fill: none; stroke: rgba(255,255,255,.07); stroke-width: 6; }
    .impact-ring-fill { fill: none; stroke-width: 6; stroke-linecap: round; }
    .impact-ring-fill.c1{stroke:var(--teal)}.impact-ring-fill.c2{stroke:var(--emerald)}.impact-ring-fill.c3{stroke:var(--gold-lt)}.impact-ring-fill.c4{stroke:#6ab4f5}.impact-ring-fill.c5{stroke:var(--teal)}.impact-ring-fill.c6{stroke:var(--emerald)}.impact-ring-fill.c7{stroke:var(--gold-lt)}.impact-ring-fill.c8{stroke:#6ab4f5}.impact-ring-fill.c9{stroke:var(--teal)}
    .impact-ring-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 1.55rem; }
    .impact-num { font-family: var(--heading); font-size: 2.2rem; font-weight: 700; color: #fff; line-height: 1; margin-bottom: .3rem; }
    .impact-num span { background: linear-gradient(135deg, var(--teal), var(--emerald)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
    .impact-label { font-size: .8rem; color: rgba(255,255,255,.42); line-height: 1.5; }

    /* ═══ STORIES ═══ */
    .stories { padding: 6.5rem 2rem; background: var(--surface-dark); overflow: hidden; }
    .stories-head { max-width: 1100px; margin: 0 auto 3rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
    /* !important needed: same wp:columns core-vs-theme display conflict as .heritage-grid above. */
    .stories-grid { max-width: 1100px; margin: 0 auto; display: grid !important; flex-wrap: unset !important; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
    .stories-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
    .story-card { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 1.4rem; padding: 2rem; backdrop-filter: blur(8px); transition: transform var(--t) var(--ease), border-color var(--t); }
    .story-card:hover { transform: translateY(-4px); border-color: rgba(18,197,197,.3); }
    .story-avatar { width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, var(--teal), var(--ocean)); display: flex; align-items: center; justify-content: center; font-size: 1.55rem; margin-bottom: 1.15rem; }
    .story-role { font-size: .66rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--teal); margin-bottom: .45rem; }
    .story-q { font-family: var(--heading); font-size: 1rem; font-style: italic; font-weight: 700; color: rgba(255,255,255,.88); line-height: 1.55; margin-bottom: .88rem; }
    .story-text { font-size: .83rem; color: rgba(255,255,255,.44); line-height: 1.78; }

    /* ═══ BLUE CARBON ═══ */
    /* ═══ EMPOWHER PROMO ═══ */
    .eh-promo { padding: 6.5rem 2rem; background: linear-gradient(135deg, #0e3a4f 0%, #0a2a3a 100%); position: relative; overflow: hidden; }
    .eh-promo::before { content: ''; position: absolute; top: -180px; right: -180px; width: 640px; height: 640px; background: radial-gradient(circle, rgba(255,199,0,.12) 0%, transparent 70%); pointer-events: none; }
    .eh-promo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5rem; align-items: center; max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
    .eh-promo-img-inner { border-radius: 1.5rem; overflow: hidden; aspect-ratio: 4/3; box-shadow: 0 20px 60px rgba(0,0,0,.35); }
    .eh-promo-img-inner img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--ease); }
    .eh-promo-img-inner a:hover img { transform: scale(1.04); }
    .eh-promo-features { list-style: none; margin: 1.8rem 0 2.2rem; display: flex; flex-direction: column; gap: .85rem; }
    .eh-promo-feature { display: flex; align-items: center; gap: .85rem; font-size: .9rem; color: rgba(255,255,255,.72); }
    .eh-promo-feature::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--gold-lt); flex-shrink: 0; box-shadow: 0 0 8px rgba(255,199,0,.6); }
    .eh-promo .accent { color: var(--gold-lt); }

    .bluecarbon { padding: 6.5rem 2rem; background: var(--surface-dark); position: relative; overflow: hidden; }
    .bluecarbon::before { content: ''; position: absolute; top: -150px; left: -150px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(43,174,102,.1) 0%, transparent 70%); pointer-events: none; }
    .bluecarbon-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5rem; align-items: center; max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
    .bluecarbon-img-inner { border-radius: 1.5rem; overflow: hidden; aspect-ratio: 4/3; max-height: 420px; }
    .bluecarbon-img-inner img { width: 100%; height: 100%; object-fit: cover; }
    .bluecarbon-features { list-style: none; margin: 1.8rem 0 2.2rem; display: flex; flex-direction: column; gap: .85rem; }
    .bluecarbon-feature { display: flex; align-items: center; gap: .85rem; font-size: .9rem; color: rgba(255,255,255,.72); }
    .bluecarbon-feature::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--emerald); flex-shrink: 0; box-shadow: 0 0 8px rgba(43,174,102,.6); }

    /* ═══ STARTUP ═══ */
    .startup { padding: 6.5rem 2rem; background: var(--surface-light); }
    .startup-inner { max-width: 1100px; margin: 0 auto; }
    .startup-head.startup-head { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: end; margin-bottom: 3.5rem; max-width: none; width: 100%; }
    .startup-head > .wp-block-column { flex-basis: auto; }
    .startup-badge { display: inline-flex; align-items: center; gap: .55rem; background: linear-gradient(135deg, rgba(43,174,102,.12), rgba(18,197,197,.08)); border: 1px solid rgba(43,174,102,.25); color: var(--emerald); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; padding: .38rem .95rem; border-radius: 2rem; margin-bottom: 1.1rem; }
    .startup-programs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; }
    .program-card { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); padding: 1.75rem; transition: transform var(--t) var(--ease), box-shadow var(--t), border-color var(--t); }
    .program-card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(7,27,52,.1); border-color: rgba(43,174,102,.3); }
    .program-num { font-size: .65rem; font-weight: 700; letter-spacing: .14em; color: rgba(7,27,52,.22); text-transform: uppercase; margin-bottom: 1rem; }
    .program-icon { font-size: 1.9rem; margin-bottom: .85rem; }
    .program-title { font-family: var(--heading); font-size: 1.08rem; font-weight: 700; color: var(--navy); margin-bottom: .45rem; }
    .program-desc { font-size: .83rem; color: var(--muted); line-height: 1.7; }

    /* ═══ GLOBAL ═══ */
    .global { padding: 6.5rem 2rem; background: var(--surface-dark); overflow: hidden; }
    .global-head { text-align: center; max-width: 620px; margin: 0 auto 3.5rem; }
    /* width + margin-left/right !important needed: WP core's
       ".is-layout-constrained > *" rule forces max-width + auto margins on
       any non-aligned child (this is a raw wp:html div, not a real aligned
       block), which combines with our max-width to produce a stale
       computed width and a large negative margin on narrow viewports. */
    .global-map-bg { width: 100% !important; max-width: 900px; margin: 0 auto 3rem !important; aspect-ratio: 2/1; background: rgba(255,255,255,.03); border: 1px solid rgba(18,197,197,.12); border-radius: var(--r-xl); display: flex; align-items: center; justify-content: center; overflow: hidden; position: relative; box-sizing: border-box; }
    .global-map-bg svg { max-width: 100%; max-height: 100%; }
    .global-countries { position: absolute; inset: 0; padding: 2rem; display: flex; flex-wrap: wrap; gap: .6rem; align-content: center; justify-content: center; }
    .country-dot { background: rgba(18,197,197,.1); border: 1px solid rgba(18,197,197,.28); color: var(--teal); font-size: .72rem; font-weight: 600; padding: .3rem .8rem; border-radius: 2rem; display: flex; align-items: center; gap: .35rem; animation: floatIn 600ms var(--ease) both; transition: background var(--t), border-color var(--t); cursor: default; }
    .country-dot:hover { background: rgba(18,197,197,.2); border-color: rgba(18,197,197,.55); }
    .country-dot:nth-child(1){animation-delay:100ms}.country-dot:nth-child(2){animation-delay:180ms}.country-dot:nth-child(3){animation-delay:260ms}.country-dot:nth-child(4){animation-delay:340ms}.country-dot:nth-child(5){animation-delay:420ms}.country-dot:nth-child(6){animation-delay:500ms}.country-dot:nth-child(7){animation-delay:580ms}.country-dot:nth-child(8){animation-delay:660ms}.country-dot:nth-child(9){animation-delay:740ms}.country-dot:nth-child(10){animation-delay:820ms}.country-dot:nth-child(11){animation-delay:900ms}.country-dot:nth-child(12){animation-delay:980ms}
    @keyframes floatIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
    .global-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; max-width: 900px; margin: 0 auto; }
    .global-stat { text-align: center; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: var(--r-lg); padding: 1.5rem 1rem; }
    .global-stat-num { font-family: var(--heading); font-size: 1.95rem; font-weight: 700; color: var(--teal); }
    .global-stat-label { font-size: .78rem; color: rgba(255,255,255,.38); margin-top: .3rem; }

    /* ═══ INVESTOR ═══ */
    .investor { padding: 6.5rem 2rem; background: var(--surface-light); position: relative; overflow: hidden; }
    .investor-head { text-align: center; max-width: 660px; margin: 0 auto 3.5rem; position: relative; z-index: 1; }
    /* !important needed: core's "body .is-layout-flex" (from this block's
       layout:{"type":"flex"} attribute) outranks a bare .invest-grid rule. */
    .invest-grid { display: grid !important; flex-wrap: unset !important; grid-template-columns: repeat(5, 1fr); gap: 1rem; max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
    .invest-tier { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); padding: 1.75rem 1.15rem; text-align: center; transition: transform var(--t) var(--ease), box-shadow var(--t); }
    .invest-tier:hover { transform: translateY(-6px); box-shadow: 0 20px 48px rgba(7,27,52,.12); }
    .invest-tier.featured { background: linear-gradient(155deg, var(--navy), #0c3060); border-color: rgba(18,197,197,.25); }
    .invest-tier.featured .invest-tier-name { color: #fff; }
    .invest-tier.featured .invest-tier-desc { color: rgba(255,255,255,.48); }
    .invest-tier-badge { width: 46px; height: 46px; border-radius: 50%; margin: 0 auto .88rem; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
    .t1 .invest-tier-badge{background:rgba(205,127,50,.12)}.t2 .invest-tier-badge{background:rgba(180,180,180,.12)}.t3 .invest-tier-badge{background:rgba(201,150,12,.12)}.t4 .invest-tier-badge{background:rgba(14,90,138,.12)}.t5 .invest-tier-badge{background:rgba(18,197,197,.12)}
    .invest-tier-name { font-family: var(--heading); font-size: .98rem; font-weight: 700; color: var(--navy); margin-bottom: .38rem; }
    .invest-tier-desc { font-size: .78rem; color: var(--muted); line-height: 1.6; }

    /* ═══ CTA FINAL ═══ */
    .cta-final { position: relative; min-height: 520px; display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; }
    .cta-final-bg { position: absolute !important; inset: 0; max-width: none !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; background: var(--surface-dark); }
    .cta-final-glow { position: absolute !important; top: 50%; left: 50%; transform: translate(-50%,-50%); max-width: none !important; width: 800px; height: 800px; margin-left: 0 !important; margin-right: 0 !important; background: radial-gradient(ellipse, rgba(18,197,197,.1) 0%, rgba(43,174,102,.05) 40%, transparent 70%); pointer-events: none; }
    .cta-final-content { position: relative; z-index: 1; max-width: 760px; padding: 5rem 2rem; box-sizing: border-box; }
    .cta-inf { font-family: var(--heading); font-size: clamp(1.1rem, 2.8vw, 1.9rem); font-style: italic; line-height: 1.7; color: rgba(255,255,255,.75); margin-bottom: 2.5rem; max-width: 100%; overflow-wrap: break-word; }
    .cta-inf p { max-width: 100%; overflow-wrap: break-word; }
    .cta-inf .inf-sym { background: linear-gradient(135deg, var(--teal), var(--gold-lt)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
    .cta-big { font-family: var(--heading); font-size: clamp(1rem, 2.2vw, 1.4rem); color: rgba(255,255,255,.38); letter-spacing: .08em; text-transform: uppercase; margin-bottom: 2.8rem; }
    .cta-actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }

    /* ═══ PARTNERS / ALLIANCE ═══ */
    .partners { background: var(--surface-dark); padding: 5.5rem 2rem; position: relative; overflow: hidden; }
    .partners::before { content: '∞'; position: absolute; left: -3rem; top: 50%; transform: translateY(-50%); font-size: 26rem; color: rgba(18,197,197,.045); line-height: 1; pointer-events: none; }
    .partners-head { text-align: center; max-width: 640px; margin: 0 auto 3rem; position: relative; z-index: 1; }
    .partners-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.75rem; max-width: 900px; margin: 0 auto; position: relative; z-index: 1; }
    .partner-card { display: flex; flex-direction: column; align-items: center; gap: 1.1rem; text-decoration: none; flex: 1 1 320px; max-width: 400px;
      background: linear-gradient(120deg, #fdf6e9 0%, #f3ead4 34%, #dcefe9 66%, #c3e6e2 100%);
      border-radius: var(--r-xl); padding: 2.4rem 2rem; box-shadow: 0 14px 40px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.5);
      transition: transform var(--t) var(--ease), box-shadow var(--t); }
    .partner-card:hover { transform: translateY(-5px); box-shadow: 0 22px 54px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.65); }
    .partner-logo { height: 70px; display: flex; align-items: center; justify-content: center; }
    .partner-logo img { max-height: 70px; width: auto; max-width: 260px; object-fit: contain; }
    .partner-meta { text-align: center; }
    .partner-name { font-family: var(--heading); font-weight: 700; font-size: 1.15rem; color: var(--navy); line-height: 1.2; }
    .partner-link { font-size: .74rem; font-weight: 700; letter-spacing: .06em; color: var(--ocean); margin-top: .3rem; display: inline-flex; align-items: center; gap: .35rem; }
    .partner-card:hover .partner-link { color: var(--teal); }

    /* ═══ FOOTER ═══ */
    footer { padding: 4.5rem 2rem 2rem; border-top: 1px solid rgba(255,255,255,.4);
      background: linear-gradient(120deg, #fdf6e9 0%, #f3ead4 34%, #dcefe9 66%, #c3e6e2 100%); }
    .footer-grid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 3rem; padding-bottom: 3rem; border-bottom: 1px solid rgba(7,27,52,.12); }
    .footer-logo { display: inline-flex; align-items: center; margin-bottom: 1.4rem; }
    .footer-logo img { height: 104px; width: auto; max-width: 320px; border-radius: 0; filter: drop-shadow(0 2px 6px rgba(7,27,52,.18)); }
    .footer-desc { font-size: .84rem; color: rgba(7,27,52,.62); line-height: 1.78; max-width: 280px; margin-bottom: 1.4rem; }
    .footer-contact { display: flex; flex-direction: column; gap: .4rem; }
    .footer-contact a { font-size: .8rem; color: rgba(7,27,52,.66); display: flex; align-items: center; gap: .45rem; transition: color var(--t); }
    .footer-contact a:hover { color: var(--ocean); }
    .footer-col-title { font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ocean); margin-bottom: 1.1rem; }
    .footer-links { list-style: none; display: flex; flex-direction: column; gap: .55rem; }
    .footer-links a { font-size: .83rem; color: rgba(7,27,52,.62); font-weight: 500; transition: color var(--t); }
    .footer-links a:hover { color: var(--ocean); }
    .footer-bottom { max-width: 1100px; margin: 1.75rem auto 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem; }
    .footer-bottom span { font-size: .74rem; color: rgba(7,27,52,.5); }
    .footer-inf { color: var(--ocean) !important; font-weight: 700; }

    /* ═══ WAVE ═══ */
    .wave-div { line-height: 0; }
    .wave-div svg { display: block; width: 100%; }

    /* ═══ REVEAL ═══ */
    .reveal { opacity: 0; transform: translateY(24px); transition: opacity 680ms var(--ease), transform 680ms var(--ease); }
    .reveal.visible { opacity: 1; transform: translateY(0); }
    .reveal-d1{transition-delay:100ms}.reveal-d2{transition-delay:200ms}.reveal-d3{transition-delay:300ms}.reveal-d4{transition-delay:400ms}

    /* ═══ FOCUS-VISIBLE ═══ */
    .btn:focus-visible, .nav-cta:focus-visible, .hero-arrow:focus-visible,
    .gslider-btn:focus-visible, .hero-dot:focus-visible, .gslider-dot:focus-visible,
    .nav-hamburger:focus-visible {
      outline: 2px solid var(--teal); outline-offset: 3px;
    }

    /* ═══ RESPONSIVE ═══ */
    @media (max-width: 1024px) {
      .invest-grid { grid-template-columns: repeat(3, 1fr); }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
    }
    @media (max-width: 860px) {
      .nav-links, .nav-actions { display: none; }
      .nav-hamburger { display: flex; }
      .nav-drawer { display: flex; }
      .founder-inner { grid-template-columns: 1fr; gap: 2.5rem; }
      .founder-portrait-frame { max-width: 260px; margin: 0 auto; }
      .gslide { flex: 0 0 50%; }
      .corridor-grid, .bluecarbon-grid, .eh-promo-grid { grid-template-columns: 1fr; }
      .eco-grid { grid-template-columns: 1fr 1fr; }
      .impact-grid { grid-template-columns: repeat(2, 1fr); }
      .stories-grid { grid-template-columns: 1fr; }
      .startup-head.startup-head { grid-template-columns: 1fr; }
      .startup-programs { grid-template-columns: 1fr 1fr; }
      .global-stats { grid-template-columns: repeat(2, 1fr); }
      .invest-grid { grid-template-columns: repeat(2, 1fr); }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
      .footer-bottom { flex-direction: column; text-align: center; gap: .75rem; }
      .stories-head { flex-direction: column; align-items: flex-start; }
    }
    @media (max-width: 768px) {
      .founder-inner { grid-template-columns: 1fr; gap: 2rem; }
      .founder-portrait-frame { max-width: 240px; }
    }
    @media (max-width: 600px) {
      .hero-title { font-size: clamp(2.2rem, 11vw, 3.2rem); }
      .hero-actions { flex-direction: column; align-items: center; }
      .hero-actions .btn { width: 100%; max-width: 280px; justify-content: center; }
      .hero-arrow { width: 36px; height: 36px; font-size: 1rem; }
      #heroPrev { left: .6rem; }
      #heroNext { right: .6rem; }
      .gslide { flex: 0 0 100%; }
      .eco-grid, .startup-programs { grid-template-columns: 1fr; }
      .impact-grid { grid-template-columns: repeat(2, 1fr); }
      .invest-grid { grid-template-columns: 1fr 1fr; }
      .global-stats { grid-template-columns: repeat(2, 1fr); }
      .footer-grid { grid-template-columns: 1fr; gap: 1.5rem; }
      .footer-contact a { word-break: break-word; }
      .founder::before { font-size: 14rem; }
      .heritage-grid { grid-template-columns: 1fr; }
      .heritage-launch-inner { flex-direction: column; gap: .9rem; }
      .nav { height: 74px; }
      .nav-logo img { height: 56px; }
      .nav-logo-text { display: none; }
      .cta-final-glow { width: 400px; height: 400px; }
    }
    @media (max-width: 400px) {
      .invest-grid, .impact-grid { grid-template-columns: 1fr; }
    }

    /* ── WP admin bar offset ── */
    body.admin-bar .nav { top: 32px; }
    @media (max-width: 782px) {
      body.admin-bar .nav { top: 46px; }
    }

    /* ── WP core block resets inside patterns ── */
    .wp-site-blocks img { display: block; max-width: 100%; }
    .is-root-container.hero,
    .is-root-container .hero { margin-bottom: 0; }
    main.wp-site-blocks > .alignfull:first-child .hero { margin-top: 0; }

    /* ── WP core/navigation + core/button compatibility for nav ── */
    .nav-logo .wp-block-site-logo img,
    .nav-logo img { height: 70px; width: auto; max-width: 280px; object-fit: contain; display: block; }
    .nav-logo-text { padding-left: .85rem; border-left: 1px solid rgba(7,27,52,.18); gap: 0; }
    .nav-logo-text .wp-block-site-title,
    .nav-logo-text .wp-block-site-title a { color: var(--navy); }
    .nav-logo-text .wp-block-site-tagline { margin-top: 2px; }
    .nav-links .wp-block-navigation__container { display: flex; align-items: center; gap: 1.75rem; list-style: none; }
    .nav-links a.wp-block-navigation-item__content { color: rgba(7,27,52,.78); font-size: .82rem; font-weight: 600; transition: color var(--t); padding: 0; }
    .nav-links a.wp-block-navigation-item__content:hover { color: var(--ocean); }
    .nav-actions .nav-cta.wp-block-button .wp-block-button__link { background: linear-gradient(135deg, var(--teal), var(--ocean)); color: #fff; font-size: .78rem; font-weight: 600; padding: .44rem 1.1rem; border-radius: 3rem; transition: box-shadow var(--t), transform var(--t) var(--ease); }
    .nav-actions .nav-cta.wp-block-button .wp-block-button__link:hover { box-shadow: 0 6px 20px rgba(18,197,197,.45); transform: translateY(-1px); }
    @media (max-width: 860px) {
      .nav-links, .nav-actions { display: none; }
    }

    /* ── footer nav (core/navigation vertical) compatibility ── */
    .footer-links .wp-block-navigation__container { display: flex; flex-direction: column; gap: .55rem; list-style: none; }
    .footer-links a.wp-block-navigation-item__content { font-size: .83rem; color: rgba(7,27,52,.62); font-weight: 500; transition: color var(--t); padding: 0; }
    .footer-links a.wp-block-navigation-item__content:hover { color: var(--ocean); }
    .footer-logo .wp-block-site-logo img { height: 104px; width: auto; max-width: 320px; filter: drop-shadow(0 2px 6px rgba(7,27,52,.18)); }

    /* ── CONTACT FORM 7 — card wrapper + form UI ── */
    .cf7-card {
      background: #fff;
      border: 1px solid rgba(7,27,52,.08);
      border-radius: var(--r-xl);
      padding: clamp(1.75rem, 4vw, 3rem);
      box-shadow: 0 10px 30px rgba(7,27,52,.06);
    }
    .cf7-card .wpcf7 form.wpcf7-form { display: block; }
    .cf7-card .wpcf7-form p { margin: 0; }

    .cf7-card .wpcf7-form-control-wrap { display: block; margin-bottom: 1.3rem; }
    .cf7-card .wpcf7-form br { display: none; }

    .cf7-card .wpcf7-form-control {
      width: 100%;
      display: block;
      font-family: var(--body);
      font-size: .95rem;
      color: var(--navy);
      background: var(--cream);
      border: 1.5px solid rgba(7,27,52,.1);
      border-radius: var(--r-lg);
      padding: .9rem 1.1rem;
      transition: border-color var(--t), box-shadow var(--t), background var(--t);
    }
    .cf7-card textarea.wpcf7-form-control { min-height: 150px; resize: vertical; }
    .cf7-card select.wpcf7-form-control { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%230E5A8A' stroke-width='2'%3E%3Cpath d='M5 7l5 5 5-5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; background-size: 1rem; padding-right: 2.6rem; cursor: pointer; }

    .cf7-card .wpcf7-form-control::placeholder { color: rgba(7,27,52,.4); }
    .cf7-card .wpcf7-form-control:hover { border-color: rgba(14,90,138,.35); }
    .cf7-card .wpcf7-form-control:focus {
      outline: none;
      background: #fff;
      border-color: var(--teal);
      box-shadow: 0 0 0 4px rgba(18,197,197,.14);
    }

    .cf7-card .wpcf7-not-valid { border-color: #d9483a !important; background: rgba(217,72,58,.05); }
    .cf7-card .wpcf7-not-valid-tip { display: block; font-size: .78rem; color: #d9483a; margin-top: .4rem; }
    .cf7-card span.wpcf7-not-valid-tip { font-weight: 500; }

    .cf7-card input.wpcf7-submit {
      width: auto;
      display: inline-flex;
      align-items: center;
      gap: .45rem;
      background: linear-gradient(135deg, var(--teal) 0%, var(--ocean) 100%);
      color: #fff;
      font-family: var(--body);
      font-size: .88rem;
      font-weight: 600;
      border: none;
      border-radius: 4rem;
      padding: .85rem 2rem;
      cursor: pointer;
      box-shadow: 0 4px 20px rgba(18,197,197,.35);
      transition: box-shadow var(--t), transform var(--t) var(--ease), opacity var(--t);
    }
    .cf7-card input.wpcf7-submit:hover { box-shadow: 0 8px 32px rgba(18,197,197,.5); transform: translateY(-2px); }
    .cf7-card input.wpcf7-submit:disabled { opacity: .6; cursor: not-allowed; transform: none; }

    .cf7-card .wpcf7-spinner { margin-left: .6rem; }

    .cf7-card .wpcf7-response-output {
      margin-top: 1.5rem;
      padding: .9rem 1.2rem;
      border-radius: var(--r-lg);
      font-size: .88rem;
      border: 1.5px solid rgba(7,27,52,.1);
    }
    .cf7-card form.sent .wpcf7-response-output { border-color: rgba(43,174,102,.4); background: rgba(43,174,102,.08); color: #1d7a48; }
    .cf7-card form.failed .wpcf7-response-output,
    .cf7-card form.aborted .wpcf7-response-output,
    .cf7-card form.spam .wpcf7-response-output { border-color: rgba(217,72,58,.4); background: rgba(217,72,58,.07); color: #b93a2e; }
    .cf7-card form.invalid .wpcf7-response-output { border-color: rgba(201,150,12,.4); background: rgba(201,150,12,.08); color: #8a670a; }

    .cf7-card .wpcf7-list-item { margin: 0 1rem 0 0; }

    @media (max-width: 600px) {
      .cf7-card { padding: 1.5rem 1.25rem; border-radius: var(--r-lg); }
      .cf7-card input.wpcf7-submit { width: 100%; justify-content: center; }
    }

    /* ═══ EMPOWHER — HERO ═══ */
    .eh-hero { position: relative; overflow: hidden; padding: 8rem 2rem 6rem; }
    .eh-hero-bg { position: absolute !important; inset: 0; max-width: none !important; width: 100% !important; margin: 0 !important; }
    .eh-hero-bg img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
    /* Scrim only behind the text column (left ~65%), not the full photo —
       a uniform overlay was darkening the whole image and made it unreadable. */
    .eh-hero-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(3,31,45,.88) 0%, rgba(3,31,45,.72) 35%, rgba(3,31,45,.35) 60%, rgba(3,31,45,0) 78%), linear-gradient(0deg, rgba(3,31,45,.55) 0%, rgba(3,31,45,0) 35%); }
    .eh-hero-inner { max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
    /* margin-left:0 !important needed: WP core's ".is-layout-constrained > *"
       rule applies "margin-left:auto !important" to every non-full child,
       which centers each paragraph/heading inside this 1100px box instead
       of letting it hug the left edge like every other section on the page. */
    .eh-hero-inner > * { max-width: 780px; margin-left: 0 !important; margin-right: auto !important; }
    .eh-kicker { font-size: .68rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--teal); display: block; margin-bottom: .9rem; }
    .eh-hero-title { font-family: var(--heading); font-weight: 800; font-size: clamp(2.6rem, 7vw, 4.6rem); line-height: 1.05; letter-spacing: -.02em; color: #fff; margin-bottom: 1.1rem; }
    .eh-hero-title .accent { color: var(--gold-lt); }
    .eh-hero-tagline { font-family: var(--heading); font-style: italic; font-size: clamp(1.05rem, 2vw, 1.3rem); color: var(--teal); margin-bottom: 1.3rem; }
    .eh-hero-sub { font-size: 1rem; line-height: 1.85; color: rgba(255,255,255,.78); max-width: 620px; margin-bottom: 2.2rem; }
    .eh-hero-note { font-size: .78rem; color: rgba(255,255,255,.5); margin-top: 1.5rem; }

    /* ═══ EMPOWHER — STAT BADGE ═══ */
    .eh-badge-row { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
    .eh-badge { display: inline-flex; align-items: center; gap: .5rem; padding: .5rem 1.2rem; border-radius: 3rem; font-size: .8rem; font-weight: 600; }
    .eh-badge-teal { background: rgba(18,197,197,.1); border: 1px solid rgba(18,197,197,.3); color: var(--ocean); }
    .eh-badge-gold { background: rgba(201,150,12,.1); border: 1px solid rgba(201,150,12,.3); color: var(--gold); }

    /* ═══ EMPOWHER — WHY SECTION ═══ */
    .eh-why { padding: 6.5rem 2rem; background: var(--surface-light); }
    /* !important needed: core's "body .is-layout-flex" (from wp:columns'
       layout:{"type":"flex"} default) outranks a bare rule on load-order
       ties — same issue as .heritage-grid/.stories-grid/.invest-grid above. */
    .eh-why-grid { display: grid !important; flex-wrap: unset !important; grid-template-columns: 1fr 1fr; gap: 4.5rem; align-items: center; max-width: 1100px; margin: 0 auto; }
    .eh-why-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
    .eh-why-img-wrap { position: relative; }
    .eh-why-img-wrap .wp-block-image { border-radius: var(--r-xl); overflow: hidden; box-shadow: 0 20px 50px rgba(7,27,52,.14); aspect-ratio: 4/3; margin: 0; }
    .eh-why-img-wrap .wp-block-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .eh-why-callout { position: absolute; bottom: -1.4rem; left: -1.4rem; background: #fff; border-radius: var(--r-lg); box-shadow: 0 14px 36px rgba(7,27,52,.16); padding: 1.1rem 1.4rem; border: 1px solid rgba(7,27,52,.06); }
    .eh-why-callout-num { font-family: var(--heading); font-weight: 800; font-size: 1.7rem; color: var(--ocean); line-height: 1; }
    .eh-why-callout-label { font-size: .72rem; color: var(--muted); margin-top: .25rem; }

    /* ═══ EMPOWHER — FRAMEWORK CARDS (reuses .eco-card look, own grid) ═══ */
    .eh-framework { padding: 6.5rem 2rem; }
    .eh-framework-head { text-align: center; max-width: 640px; margin: 0 auto 3.5rem; }
    /* !important needed: same core "body .is-layout-flex" override as .eh-why-grid above. */
    .eh-framework-grid { display: grid !important; flex-wrap: unset !important; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; max-width: 1100px; margin: 0 auto; }
    .eh-framework-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
    .eh-fw-card { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); padding: 2.25rem 2rem; transition: transform var(--t) var(--ease), box-shadow var(--t); }
    .eh-fw-card:hover { transform: translateY(-6px); box-shadow: 0 20px 48px rgba(7,27,52,.1); }
    .eh-fw-icon { width: 52px; height: 52px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; margin-bottom: 1.3rem; }
    .eh-fw-icon-teal { background: rgba(18,197,197,.13); }
    .eh-fw-icon-emerald { background: rgba(43,174,102,.13); }
    .eh-fw-icon-gold { background: rgba(201,150,12,.13); }
    .eh-fw-title { font-family: var(--heading); font-weight: 700; font-size: 1.2rem; color: var(--navy); margin-bottom: .6rem; }
    .eh-fw-desc { font-size: .88rem; color: var(--muted); line-height: 1.7; }

    /* ═══ EMPOWHER — IMPACT STRIP (reuses .global-stat look) ═══ */
    .eh-impact { padding: 5.5rem 2rem; background: var(--surface-dark); }
    .eh-impact-head { text-align: center; max-width: 620px; margin: 0 auto 3rem; }
    .eh-impact-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; max-width: 1000px; margin: 0 auto; }
    .eh-impact-num { font-family: var(--heading); font-weight: 800; font-size: clamp(2rem, 4vw, 2.8rem); line-height: 1; }
    .eh-impact-label { font-size: .8rem; color: rgba(255,255,255,.6); margin-top: .5rem; }

    /* ═══ EMPOWHER — CURRICULUM TIMELINE ═══ */
    .eh-curriculum { padding: 6.5rem 2rem; background: var(--surface-light); }
    .eh-curriculum-head { max-width: 640px; margin: 0 auto 3.5rem; text-align: center; }
    .eh-curriculum-layout { display: flex; gap: 3.5rem; max-width: 1180px; margin: 0 auto; align-items: flex-start; }
    .eh-timeline { position: relative; flex: 1 1 48%; min-width: 0; display: flex; flex-direction: column; gap: 1.5rem; }
    .eh-timeline::before { content: ''; position: absolute; top: 0; bottom: 0; left: 27px; width: 2px; background: linear-gradient(180deg, var(--teal) 0%, rgba(18,197,197,.15) 100%); }
    .eh-week { position: relative; padding-left: 4.5rem; }
    .eh-week-marker { position: absolute; left: 0; top: 1.5rem; width: 56px; height: 56px; border-radius: 50%; background: #fff; border: 2px solid var(--teal); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; box-shadow: 0 6px 18px rgba(7,27,52,.1); z-index: 1; }
    .eh-week-card { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); box-shadow: 0 10px 30px rgba(7,27,52,.06); padding: 1.75rem 1.9rem; }
    .eh-week-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: .75rem; }
    .eh-week-tag { display: inline-flex; padding: .32rem 1rem; border-radius: 2rem; background: rgba(18,197,197,.1); color: var(--ocean); font-size: .7rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
    .eh-week-num { font-family: var(--heading); font-weight: 800; font-size: 1.7rem; color: rgba(18,197,197,.28); }
    .eh-week-title { font-family: var(--heading); font-weight: 700; font-size: 1.25rem; color: var(--navy); margin-bottom: .55rem; }
    .eh-week-desc { font-size: .9rem; color: var(--muted); line-height: 1.75; margin-bottom: 1rem; max-width: 640px; }
    .eh-week-tags { display: flex; flex-wrap: wrap; gap: .5rem; }
    .eh-week-tags .tag { background: rgba(7,27,52,.05); border-color: rgba(7,27,52,.1); color: rgba(7,27,52,.62); }

    /* Fold/unfold reveal — each card starts "folded" back at the top edge
       (rotated on the X axis, like paper folding down) and unfolds flat as
       it scrolls into view. transform-origin at the top makes it hinge
       rather than just slide, matching the "folding/unfolding" ask. */
    .eh-fold { perspective: 1200px; }
    .eh-fold .eh-week-card {
      transform-origin: top center;
      transform: rotateX(-35deg) translateY(-10px);
      opacity: 0;
      transition: transform 700ms var(--ease), opacity 700ms var(--ease);
      will-change: transform, opacity;
    }
    .eh-fold .eh-week-marker {
      opacity: 0;
      transform: scale(.5);
      transition: transform 600ms var(--ease) 150ms, opacity 600ms var(--ease) 150ms;
    }
    .eh-fold.unfolded .eh-week-card { transform: rotateX(0deg) translateY(0); opacity: 1; }
    .eh-fold.unfolded .eh-week-marker { opacity: 1; transform: scale(1); }
    @media (prefers-reduced-motion: reduce) {
      .eh-fold .eh-week-card, .eh-fold .eh-week-marker { transition: none; transform: none; opacity: 1; }
    }

    /* Sticky classroom photo, right column */
    .eh-curriculum-visual { flex: 1 1 42%; min-width: 0; position: sticky; top: 6.5rem; align-self: flex-start; }
    .eh-curriculum-visual-inner { border-radius: var(--r-xl); overflow: hidden; box-shadow: 0 20px 50px rgba(7,27,52,.14); aspect-ratio: 4/5; }
    .eh-curriculum-visual-inner img { width: 100%; height: 100%; object-fit: cover; display: block; }

    /* ═══ EMPOWHER — FAQ ACCORDION ═══ */
    .eh-faq { padding: 6.5rem 2rem; }
    .eh-faq-head { text-align: center; max-width: 640px; margin: 0 auto 3rem; }
    .eh-faq-list { max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; gap: .75rem; }
    .eh-faq-item { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-lg); box-shadow: 0 6px 20px rgba(7,27,52,.05); overflow: hidden; }
    .eh-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; list-style: none; padding: 1.2rem 1.5rem; font-family: var(--heading); font-weight: 700; font-size: .96rem; color: var(--navy); }
    .eh-faq-item summary::-webkit-details-marker { display: none; }
    .eh-faq-item summary .eh-faq-icon { flex-shrink: 0; width: 22px; height: 22px; display: flex; align-items: center; justify-content: center; color: var(--teal); transition: transform var(--t) var(--ease); font-size: 1.1rem; }
    .eh-faq-item[open] summary .eh-faq-icon { transform: rotate(45deg); }
    .eh-faq-item p { padding: 0 1.5rem 1.3rem; font-size: .88rem; color: var(--muted); line-height: 1.75; }

    /* ═══ EMPOWHER — REGISTRATION ═══ */
    .eh-register { padding: 6.5rem 2rem; }
    /* !important needed: same core "body .is-layout-flex" override as .eh-why-grid above. */
    .eh-register-grid { display: grid !important; flex-wrap: unset !important; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; max-width: 1100px; margin: 0 auto; }
    .eh-register-grid > .wp-block-column { flex-basis: auto; width: auto; min-width: 0; }
    .eh-eligibility { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-lg); box-shadow: 0 8px 24px rgba(7,27,52,.06); padding: 1.5rem 1.6rem; margin-top: 1.75rem; }
    .eh-eligibility-title { font-family: var(--heading); font-weight: 700; font-size: .98rem; color: var(--navy); margin-bottom: .85rem; display: flex; align-items: center; gap: .5rem; }
    .eh-eligibility-list { list-style: none; display: flex; flex-direction: column; gap: .6rem; }
    .eh-eligibility-list li { display: flex; align-items: flex-start; gap: .55rem; font-size: .86rem; color: var(--muted); line-height: 1.5; }
    .eh-eligibility-list li::before { content: '✓'; color: var(--teal); font-weight: 700; flex-shrink: 0; }
    .eh-est-time { font-size: .76rem; color: var(--muted); margin-top: 1.5rem; }

    .eh-form-card { background: #fff; border: 1px solid rgba(7,27,52,.08); border-radius: var(--r-xl); box-shadow: 0 10px 30px rgba(7,27,52,.06); padding: clamp(1.75rem, 4vw, 2.5rem); }
    .eh-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; margin-bottom: 1.25rem; }
    .eh-field { display: flex; flex-direction: column; gap: .45rem; margin-bottom: 1.25rem; }
    .eh-field label { font-size: .84rem; font-weight: 600; color: var(--navy); }
    .eh-field label .eh-optional { font-weight: 400; color: var(--muted); font-size: .78rem; }
    .eh-field input, .eh-field textarea {
      width: 100%; font-family: var(--body); font-size: .92rem; color: var(--navy);
      background: var(--cream); border: 1.5px solid rgba(7,27,52,.1); border-radius: var(--r-lg);
      padding: .85rem 1.05rem; transition: border-color var(--t), box-shadow var(--t), background var(--t);
    }
    .eh-field textarea { min-height: 120px; resize: vertical; }
    .eh-field input:focus, .eh-field textarea:focus { outline: none; background: #fff; border-color: var(--teal); box-shadow: 0 0 0 4px rgba(18,197,197,.14); }
    .eh-field-hint { font-size: .76rem; color: var(--muted); margin: -.15rem 0 .1rem; }
    .eh-form-submit { width: 100%; justify-content: center; }
    .eh-form-privacy { font-size: .76rem; color: var(--muted); display: flex; align-items: flex-start; gap: .5rem; margin-top: 1.25rem; }

    /* ═══ EMPOWHER — FINAL CTA (reuses .cta-final gradient look) ═══ */
    .eh-cta { position: relative; padding: 6.5rem 2rem; text-align: center; overflow: hidden; background: linear-gradient(135deg, var(--teal) 0%, var(--ocean) 100%); }
    .eh-cta-inner { max-width: 720px; margin: 0 auto; position: relative; z-index: 1; }
    .eh-cta-title { font-family: var(--heading); font-weight: 800; font-size: clamp(2rem, 4.5vw, 3rem); color: #fff; line-height: 1.15; margin-bottom: 1rem; }
    .eh-cta-sub { font-size: 1rem; color: rgba(255,255,255,.88); max-width: 520px; margin: 0 auto 2.2rem; }
    .eh-cta-actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }
    .btn-white .wp-block-button__link { background: #fff; color: var(--navy); box-shadow: 0 4px 20px rgba(3,31,45,.25); }
    .btn-white .wp-block-button__link:hover { box-shadow: 0 8px 32px rgba(3,31,45,.35); }

    /* ═══ EMPOWHER — RESPONSIVE ═══ */
    @media (max-width: 1024px) {
      .eh-why-grid { grid-template-columns: 1fr; gap: 3rem; }
      .eh-framework-grid { grid-template-columns: 1fr 1fr; }
      .eh-impact-grid { grid-template-columns: 1fr 1fr; }
      .eh-register-grid { grid-template-columns: 1fr; gap: 3rem; }
      .eh-curriculum-layout { flex-direction: column-reverse; gap: 2.5rem; }
      .eh-curriculum-visual { position: static; width: 100%; }
      .eh-curriculum-visual-inner { aspect-ratio: 16/9; max-width: 560px; margin: 0 auto; }
    }
    @media (max-width: 768px) {
      .eh-hero { padding: 7rem 1.5rem 4.5rem; }
      .eh-framework-grid { grid-template-columns: 1fr; }
      .eh-form-row { grid-template-columns: 1fr; gap: 0; }
      .eh-why-callout { left: 1rem; bottom: -1.1rem; padding: .9rem 1.1rem; }
    }
    @media (max-width: 600px) {
      .eh-impact-grid { grid-template-columns: 1fr 1fr; }
      .eh-week { padding-left: 3.75rem; }
      .eh-week-marker { width: 46px; height: 46px; font-size: 1.15rem; top: 1.25rem; }
      .eh-timeline::before { left: 22px; }
      .eh-week-card { padding: 1.4rem 1.5rem; }
      .eh-cta-actions { flex-direction: column; align-items: stretch; }
    }
