:root {
          --navy: #0D2145;
          --navy-dark: #0A1A35;
          --orange: #E87722;
          --light: #F8F9FC;
          --white: #FFFFFF;
          --text: #444444;
          --muted: #707887;
          --line: rgba(13,33,69,0.12);
          --shadow: 0 18px 50px rgba(13,33,69,0.12);
          --radius: 8px;
          --heading: "Playfair Display", Georgia, serif;
          --body: "Inter", Arial, sans-serif;
        }
        * {
          box-sizing:border-box;
          margin:0;
          padding:0
        }
        html {
          scroll-behavior:smooth;
          scroll-padding-top:84px
        }
        body {
          background:var(--light);
          color:var(--text);
          font-family:var(--body);
          line-height:1.7;
          overflow-x:hidden
        }
        body.is-loading {
          overflow:hidden
        }
        body.is-loading .site-header,body.is-loading main,body.is-loading .site-footer {
          opacity:0;
          visibility:hidden
        }
        a {
          color:inherit;
          text-decoration:none
        }
        button {
          border:0;
          cursor:pointer;
          font:inherit
        }
        .container {
          width:min(1120px,calc(100% - 40px));
          margin:0 auto
        }
        .section {
          padding:96px 0;
          position:relative
        }
        .page-loader {
          align-items:center;
          background:var(--white);
          display:flex;
          flex-direction:column;
          gap:28px;
          inset:0;
          justify-content:center;
          opacity:1;
          position:fixed;
          transition:opacity 450ms ease,visibility 450ms ease;
          visibility:visible;
          z-index:9999
        }
        .page-loader.done {
          opacity:0;
          pointer-events:none;
          visibility:hidden
        }
        .loader-logo {
          font-size:clamp(2.2rem,7vw,4.6rem);
          font-weight:800
        }
        .loader-progress {
          background:rgba(13,33,69,.12);
          border-radius:999px;
          height:3px;
          overflow:hidden;
          width:min(280px,64vw)
        }
        .loader-progress span {
          animation:loaderFill 1.5s linear forwards;
          background:var(--orange);
          display:block;
          height:100%;
          transform:scaleX(0);
          transform-origin:left;
          width:100%
        }
        @keyframes loaderFill {
          to {
            transform:scaleX(1)
          }
          
        }
        .site-header {
          position:fixed;
          inset:0 0 auto 0;
          z-index:1000;
          background:rgba(255,255,255,.94);
          border-bottom:1px solid rgba(13,33,69,.08);
          box-shadow:0 10px 30px rgba(13,33,69,.08);
          backdrop-filter:blur(16px);
          transition:background 220ms ease
        }
        .site-header.scrolled {
          background:var(--navy)
        }
        .site-header.scrolled .brand-penta,.site-header.scrolled .nav-link {
          color:var(--white)
        }
        .site-header.scrolled .brand-sub {
          color:rgba(255,255,255,.68)
        }
        .site-header.scrolled .nav-link:hover,.site-header.scrolled .nav-link.active {
          background:rgba(232,119,34,.16);
          color:var(--orange)
        }
        .nav-wrap {
          align-items:center;
          display:flex;
          justify-content:space-between;
          min-height:78px;
          gap:24px;
        }
        .brand {
          display:inline-flex;
          flex-direction:column;
          line-height:1.05;
        }
         .brand-main {
          
          
      font-size: 1.32rem;
          
      font-weight: 800;
          
      letter-spacing: 0;
      
          
    
        }
        
        #text{
          position: absolute;
        }
        #text1{
          position: relative;
          left: 65px;
        }

    .brand-penta {
          
      color: var(--navy);
          
    
        }
        

    .brand-minds {
          
      color: var(--orange);
          
    
        }
        

    .brand-sub {
          
      color: #777f8d;
          
      font-size: 0.72rem;
          
      font-weight: 500;
          
      margin-top: 4px;
          
      text-transform: uppercase;
          
    
        }
    
        .nav-links {
          align-items:center;
          display:flex;
          gap:8px;
          list-style:none;
          position: relative;
          left: 50px;
        }
        .nav-link {
          border-radius:999px;
          color:var(--navy);
          display:inline-flex;
          font-size:.92rem;
          font-weight:700;
          padding:8px 12px;
          white-space:nowrap
        }
        .nav-link:hover,.nav-link.active {
          background:rgba(232,119,34,.12);
          color:var(--orange)
        }
        .menu-toggle {
          align-items:center;
          background:var(--navy);
          border-radius:8px;
          display:none;
          height:42px;
          justify-content:center;
          width:46px
        }
        .menu-toggle span,.menu-toggle span:before,.menu-toggle span:after {
          background:#fff;
          border-radius:999px;
          content:"";
          display:block;
          height:2px;
          position:absolute;
          transition:.2s;
          width:21px
        }
        .menu-toggle span {
          position:relative
        }
        .menu-toggle span:before {
          transform:translateY(-7px)
        }
        .menu-toggle span:after {
          transform:translateY(7px)
        }
        .menu-toggle.open span {
          background:transparent
        }
        .menu-toggle.open span:before {
          transform:rotate(45deg)
        }
        .menu-toggle.open span:after {
          transform:rotate(-45deg)
        }
        .hero {
          align-items:center;
          background:linear-gradient(135deg,#0D2145 0%,#132A55 52%,#0A1A35 100%);
          display:flex;
          min-height:100vh;
          overflow:hidden;
          padding:118px 0 80px;
          position:relative
        }
        .hero-network-canvas {
          inset:0;
          position:absolute;
          width:100%;
          height:100%;
          z-index:0
        }
        .hero-content {
          position:relative;
          z-index:2
        }
        .eyebrow-badge {
          border:1px solid rgba(232,119,34,.72);
          border-radius:999px;
          color:white;
          display:inline-flex;
          font-size:.78rem;
          font-weight:900;
          letter-spacing:.12em;
          margin-bottom:22px;
          padding:8px 14px
        }
        .hero h1,.hero h2 {
          font-family:var(--heading);
          font-size:clamp(3.2rem,8vw,7.6rem);
          font-weight:800;
          line-height:.95;
          max-width:960px
        }
        .hero h1 {
          color:white
        }
        .hero h2 {
          color:var(--orange);
          margin-top:10px
        }
        .hero p {
          color:rgba(255,255,255,.86);
          font-size:clamp(1.05rem,2vw,1.28rem);
          font-weight:600;
          margin-top:28px;
          max-width:680px
        }
        .button-row {
          display:flex;
          flex-wrap:wrap;
          gap:14px;
          margin-top:34px
        }
        .btn {
          align-items:center;
          border-radius:8px;
          display:inline-flex;
          font-weight:800;
          justify-content:center;
          min-height:50px;
          padding:13px 22px;
          transition:all 200ms ease
        }
        .btn:hover {
          box-shadow:0 14px 28px rgba(0,0,0,.16);
          transform:translateY(-2px)
        }
        .btn-orange {
          background:var(--orange);
          color:white
        }
        .btn-orange:hover {
          background:#cc6419
        }
        .btn-white-outline {
          border:2px solid rgba(255,255,255,.86);
          color:white
        }
        .btn-white-outline:hover {
          background:white;
          color:var(--navy)
        }
        .btn-navy-outline {
          border:2px solid var(--navy);
          color:var(--navy)
        }
        .btn-navy-outline:hover {
          background:var(--navy);
          color:white
        }
        .stats-bar {
          background:var(--navy);
          color:white;
          padding:28px 0
        }
        .stats-grid {
          display:grid;
          gap:18px;
          grid-template-columns:repeat(3,1fr);
          text-align:center
        }
        .stat strong {
          display:block;
          font-family:var(--heading);
          font-size:clamp(1.5rem,3vw,2.15rem)
        }
        .stat span {
          color:rgba(255,255,255,.68);
          display:block;
          font-size:.92rem;
          font-weight:800;
          letter-spacing:.08em;
          text-transform:uppercase
        }
        .section-title {
          color:var(--navy);
          font-family:var(--heading);
          font-size:clamp(2.2rem,5vw,4rem);
          line-height:1.05
        }
        .section-title.white {
          color:white
        }
        .orange-rule {
          background:var(--orange);
          border-radius:999px;
          display:block;
          height:4px;
          width:82px;
          margin-top:18px;
          position: relative;
          right: 500px;
        }

         #o{
          background:var(--orange);
          border-radius:999px;
          display:block;
          height:4px;
          width:82px;
          margin-top:18px;
          position: absolute;
          left: 10px;
        }
        #or{
          background:var(--orange);
          border-radius:999px;
          display:block;
          height:4px;
          width:82px;
          margin-top:18px;
          position: absolute;
          right: 92%;
        }
        .orange-divider {
          background:var(--orange);
          height:4px
        }
        .subtitle,.lead-copy {
          color:var(--muted);
          font-size:1.08rem;
          margin-top:20px;
          max-width:780px
        }
        .lead-copy {
          color:#4a4f5b;
          line-height:1.85
        }
        .split {
          display:grid;
          gap:54px;
          grid-template-columns:.86fr 1.14fr
        }
        .cards-3,.scope-grid,.objectives-grid,.resource-grid {
          display:grid;
          gap:24px;
          grid-template-columns:repeat(3,1fr);
          margin-top:42px
        }
        .module-grid {
          display:grid;
          gap:24px;
          grid-template-columns:repeat(2,1fr);
          margin-top:42px
        }
        .info-card,.team-card,.objective-card,.resource-card,.associate-card {
          background:white;
          border:1px solid var(--line);
          border-radius:var(--radius);
          padding:20px 2px;
          transition:.22s;
          position: relative;
        }
        .info-card:hover,.team-card:hover,.objective-card:hover,.resource-card:hover,.associate-card:hover {
          box-shadow:var(--shadow);
          transform:translateY(-5px)
        }
        .info-card h3,.objective-card h3,.resource-card h3 {
          color:var(--navy);
          font-size:1.05rem;
          font-weight:800;
          margin-top:18px
        }
        .info-card p,.objective-card p,.resource-card p {
          color:var(--muted);
          font-size:.96rem;
          margin-top:10px
        }
        .icon {
          align-items:center;
          background:rgba(232,119,34,.12);
          border-radius:50%;
          color:var(--orange);
          display:inline-flex;
          height:56px;
          justify-content:center;
          width:56px
        }
        .icon svg {
          height:28px;
          width:28px
        }
        .badge {
          border:1px solid rgba(232,119,34,.42);
          border-radius:999px;
          color:var(--orange);
          display:inline-flex;
          font-size:.78rem;
          font-weight:800;
          padding:6px 12px
        }
        .dark-section,.contact-section {
          background:var(--navy);
          color:white
        }
        .dark-section .subtitle,.contact-section .subtitle {
          color:rgba(255,255,255,.72)
        }
        .scope-card {
          background:rgba(255,255,255,.08);
          border:1px solid rgba(255,255,255,.14);
          border-radius:var(--radius);
          color:white;
          padding:30px 22px
        }
        .scope-card h3 {
          color:white
        }
        .scope-card p {
          color:rgba(255,255,255,.72);
          margin-top:10px
        }
        .light-card {
          background:white;
          border-color:var(--line);
          color:var(--text)
        }
        .light-card h3 {
          color:var(--navy)
        }
        .light-card p {
          color:var(--muted)
        }
        .focus-list {
          display:grid;
          gap:14px;
          margin-top:40px
        }
        .focus-bar {
          align-items:center;
          background:rgba(255,255,255,.08);
          border:1px solid rgba(255,255,255,.14);
          border-radius:var(--radius);
          color:white;
          display:flex;
          font-weight:800;
          min-height:62px;
          padding:16px 22px
        }
        .focus-bar:nth-child(even) {
          background:var(--orange);
          border-color:var(--orange)
        }
        .project-card {
          background:white;
          border:1px solid var(--line);
          border-radius:12px;
          box-shadow:0 8px 32px rgba(13,33,69,.07);
          margin-top:48px;
          overflow:hidden;
          transition:.22s
        }
        .project-card:hover {
          box-shadow:var(--shadow);
          transform:translateY(-4px)
        }
        .project-card-header {
          background:var(--navy);
          color:white;
          padding:32px 36px;
          position:relative
        }
        .project-card-header:after {
          background:var(--orange);
          bottom:0;
          content:"";
          height:4px;
          left:0;
          position:absolute;
          width:82px
        }
        .project-number {
          color:var(--orange);
          font-size:.78rem;
          font-weight:900;
          letter-spacing:.1em;
          text-transform:uppercase
        }
        .project-title {
          font-family:var(--heading);
          font-size:clamp(1.5rem,3vw,2.2rem);
          font-weight:800;
          color:white
        }
        .project-tagline {
          color:rgba(255,255,255,.74);
          font-weight:600;
          margin-top:10px
        }
        .project-body {
          padding:36px
        }
        .project-meta-grid {
          display:grid;
          gap:18px;
          grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
          margin-bottom:28px
        }
        .project-meta-item {
          border-left:3px solid var(--orange);
          padding-left:14px
        }
        .project-meta-label {
          color:var(--muted);
          font-size:.78rem;
          font-weight:800;
          letter-spacing:.08em;
          text-transform:uppercase
        }
        .project-meta-value {
          color:var(--navy);
          font-weight:700
        }
        .project-overview {
          color:#4a4f5b;
          font-size:1.02rem;
          line-height:1.75;
          margin-bottom:28px
        }
        .project-sections {
          display:grid;
          gap:20px;
          grid-template-columns:repeat(auto-fit,minmax(240px,1fr))
        }
        .project-section-block {
          background:var(--light);
          border:1px solid var(--line);
          border-radius:var(--radius);
          padding:22px
        }
        .project-section-block h4 {
          color:var(--navy);
          font-size:.9rem;
          font-weight:800;
          letter-spacing:.06em;
          text-transform:uppercase
        }
        .project-section-block p {
          color:var(--muted);
          font-size:.93rem
        }
        .project-timeline-strip {
          border-top:1px solid var(--line);
          margin-top:28px;
          padding-top:24px
        }
        .timeline-strip-items,.affiliation-chips,.social-row,.pill-row {
          display:flex;
          flex-wrap:wrap;
          gap:12px
        }
        .timeline-strip-item {
          align-items:center;
          background:var(--light);
          border:1px solid var(--line);
          border-radius:8px;
          display:flex;
          gap:12px;
          padding:12px 16px;
          flex:1 1 180px
        }
        .timeline-strip-dot,.affiliation-chip-dot,.live-dot {
          background:var(--orange);
          border-radius:50%;
          height:10px;
          width:10px;
          flex-shrink:0
        }
        .timeline-strip-date {
          color:var(--orange);
          display:block;
          font-size:.78rem;
          font-weight:900
        }
        .timeline-strip-event {
          color:var(--navy);
          font-size:.88rem;
          font-weight:700
        }
        .affiliation-chip {
          align-items:center;
          background:white;
          border:1px solid var(--line);
          border-radius:8px;
          display:inline-flex;
          gap:8px;
          padding:8px 14px;
          font-size:.88rem;
          font-weight:700;
          color:var(--navy)
        }
        .note {
          color:var(--muted);
          font-size:.92rem;
          font-style:italic;
          margin-top:18px
        }
        .team-grid {
          display:grid;
          gap:24px;
          grid-template-columns:repeat(6,1fr);
          margin-top:42px
        }
        .team-card {
          grid-column:span 2;
          text-align:center;
        }
        .team-card:nth-child(4) {
          grid-column:2/span 2
        }
        .team-card:nth-child(5) {
          grid-column:span 1
        }
        .associate-row {
          
  display: grid;
          
  gap: 24px;
          
  grid-template-columns: repeat(6, 1fr);
          
  margin-top: 42px;
          
        }
        

.associate-row .associate-card {
          
  grid-column: span 2;
          
        }
        .associate-card {
          text-align:center
        }
        .avatar {
          align-items:center;
          background:var(--navy);
          border-radius:50%;
          color:white;
          display:inline-flex;
          font-size:1.2rem;
          font-weight:800;
          height:92px;
          justify-content:center;
          margin-bottom:18px;
          overflow:hidden;
          position:relative;
          width:92px
        }
        .avatar:before {
          content:attr(data-initials)
        }
        .avatar img {
          inset:0;
          height:100%;
          object-fit:cover;
          position:absolute;
          width:100%
        }
        .member-meta {
          color:var(--muted);
          font-size:.9rem;
          margin:8px 0 12px
        }
        .linkedin,.social-btn {
          align-items:center;
          border:1px solid rgba(13,33,69,.16);
          border-radius:999px;
          color:var(--navy);
          display:inline-flex;
          font-weight:800;
          justify-content:center;
          min-height:36px;
          min-width:36px;
          padding:7px 12px
        }
        .linkedin:hover,.social-btn:hover {
          background:var(--orange);
          border-color:var(--orange);
          color:white
        }
        .ecosystem-tree {
          margin-top:42px;
          text-align:center
        }
        .ecosystem-root {
          background:var(--navy);
          border-radius:var(--radius);
          color:white;
          display:inline-block;
          font-family:var(--heading);
          font-size:1.6rem;
          font-weight:800;
          padding:22px 42px
        }
        .ecosystem-branches {
          border-top:2px solid var(--line);
          display:grid;
          gap:22px;
          grid-template-columns:repeat(5,1fr);
          margin-top:48px;
          padding-top:34px;
          position:relative
        }
        .ecosystem-branches:before {
          background:var(--line);
          content:"";
          height:48px;
          left:50%;
          position:absolute;
          top:-48px;
          width:2px
        }
        .division-card {
          background:white;
          border:1px solid var(--line);
          border-left:3px solid var(--orange);
          border-radius:var(--radius);
          color:var(--navy);
          font-weight:800;
          min-height:108px;
          padding:22px 18px;
          text-align:left
        }
        .email-link {
          color:var(--orange);
          display:inline-block;
          font-family:var(--heading);
          font-size:clamp(2rem,5vw,4rem);
          font-weight:800;
          line-height:1.08;
          margin-top:18px;
          margin-bottom: 28px;
          overflow-wrap:anywhere
        }
        .contact-section .social-btn {
          border-color:rgba(255,255,255,.18);
          color:white
        }
        .affiliation-line {
          color:rgba(255,255,255,.72);
          font-weight:700;
          margin-top:24px
        }
        .live-counter {
          align-items:center;
          border:1px solid var(--line);
          border-radius:999px;
          color:var(--navy);
          display:inline-flex;
          font-weight:900;
          gap:10px;
          margin-top:22px;
          padding:10px 16px
        }
        .pill {
          background:var(--light);
          border:1px solid var(--line);
          border-radius:999px;
          color:var(--navy);
          font-weight:800;
          padding:8px 14px
        }
        .site-footer {
          background:var(--navy-dark);
          color:white
        }

        #fo
        {
          position: relative;
          right: 60px;
          top: 5px;
        
        }

        .footer-grid {
          align-items:center;
          display:grid;
          gap:22px;
          grid-template-columns:1fr auto 1fr;
          padding:34px 0
        }
        .footer-links {
          display:flex;
          flex-wrap:wrap;
          gap:14px;
          justify-content:center;
          list-style:none;
        }
        .footer-links a {
          color:rgba(255,255,255,.74);
          font-size:0.9rem;
          font-weight:700
        }
        .footer-copy {
          color:rgba(255,255,255,.72);
          font-size:.9rem;
          font-weight:700;
          text-align:right
        }
        .footer-line {
          background:var(--orange);
          height:3px
        }
        .redirect-overlay {
          align-items:center;
          background:white;
          display:flex;
          flex-direction:column;
          inset:0;
          justify-content:center;
          opacity:0;
          pointer-events:none;
          position:fixed;
          transition:opacity 300ms ease;
          z-index:9998
        }
        .redirect-overlay.active {
          opacity:1;
          pointer-events:all
        }
        .redirect-spinner {
          border:3px solid var(--line);
          border-top-color:var(--orange);
          border-radius:50%;
          height:40px;
          width:40px;
          animation:spin 700ms linear infinite
        }
      .leadership-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(200px, 320px));
  justify-content: center;
  gap: 28px;
  margin-top: 42px;
}

#le{
  position: relative;
  align-items: center;
  left: 80px;
  width: 630px;
  display: inline;

}

#l
{
  grid-column: span 2;
  position: relative;
  right: 220px;
  width: 300px;
  display: inline;
  margin-left: 300px;
}

#e
{
   grid-column: span 2;
  position: relative;
  left: 108px; 
  width: 300px;
  display: inline;
  margin-left: 300px;
  bottom: 317px;
}

#re
{
  position: relative;
  left: 200px;
  padding: 20px;
}

#j{
  position: relative;
  left: 520px;
}

#jo
{
  position: relative;
  left: 200px;
}

.leadership-grid .team-card {
  width: 100%;
}

.profile-action {
  margin-top: 14px;
}
      @media (max-width: 680px) {
  .leadership-grid {
    grid-template-columns: 1fr;
    max-width: 380px;
    margin-left: auto;
    margin-right: auto;
  }
}
      /* Center the final Core Team card on an incomplete final row */
#team-grid-container .team-card:last-child {
  grid-column: span 2;
}
      /* Responsive overrides for Core Team */
@media (max-width: 920px) {
  #team-grid-container .team-card,
  #team-grid-container .team-card:nth-child(4),
  #team-grid-container .team-card:nth-child(5),
  #team-grid-container .team-card:last-child {
    grid-column: span 2;
  }
}

@media (max-width: 680px) {
  #team-grid-container .team-card,
  #team-grid-container .team-card:nth-child(4),
  #team-grid-container .team-card:nth-child(5),
  #team-grid-container .team-card:last-child {
    grid-column: auto;
  }
}
      
      @keyframes spin {
          to {
            transform:rotate(360deg)
          }
          
        }
        .redirect-label {
          color:var(--navy);
          font-weight:700;
          margin-top:18px
        }
        .reveal {
          opacity:0;
          transform:translateY(24px);
          transition:opacity 700ms ease,transform 700ms ease
        }
        .reveal.visible {
          opacity:1;
          transform:translateY(0)
        }

      .menu-toggle {
      align-items: center;
      background: var(--navy);
      border-radius: 8px;
      display: none;
      height: 44px;
      justify-content: center;
      width: 44px;
    }

    .menu-toggle span {
      background: var(--white);
      border-radius: 99px;
      display: block;
      height: 2px;
      position: relative;
      width: 22px;
    }

    .menu-toggle span::before,
    .menu-toggle span::after {
      background: var(--white);
      border-radius: 99px;
      content: "";
      height: 2px;
      left: 0;
      position: absolute;
      transition: transform 200ms ease, top 200ms ease;
      width: 22px;
    }

    .menu-toggle span::before {
      top: -7px;
    }

    .menu-toggle span::after {
      top: 7px;
    }

    .menu-toggle.open span {
      background: transparent;
    }

    .menu-toggle.open span::before {
      top: 0;
      transform: rotate(45deg);
    }

    .menu-toggle.open span::after {
      top: 0;
      transform: rotate(-45deg);
    }
      
        @media(max-width:920px) {
          

  .menu-toggle {
            
    display:inline-flex;
            
  
          }
          


  .team-card,
  .team-card:nth-child(4),
  .team-card:nth-child(5) {
            
    grid-column:span 3;
            
  
          }
          

  .associate-row .associate-card {
            
    grid-column:span 3;
            
  
          }
          

  .ecosystem-branches {
            
    border-top:0;
            
    margin-top:28px;
            
    padding-top:0;
            
  
          }
          

  .ecosystem-branches:before {
            
    display:none;
            
  
          }
          
        }
        @media(max-width:680px) {
          .container {
            width:min(100% - 28px,1120px)
          }
          .section {
            padding:72px 0
          }
          .button-row {
            flex-direction:column
          }
          .btn {
            width:100%
          }
          .project-body {
            padding:22px 18px
          }
          .project-card-header {
            padding:24px 18px
          }
          .team-grid,.associate-row {
            grid-template-columns:1fr
          }
          .team-card,.team-card:nth-child(4),.team-card:nth-child(5) {
            grid-column:auto
          }
          .footer-grid {
            grid-template-columns:1fr;
            text-align:center
          }
          .footer-copy {
            text-align:center
          }
          .social-row {
            justify-content:center
          }
          
        }
        
    .avatar-initials {
          
      align-items: center;
          
      color: var(--white);
          
      display: inline-flex;
          
      font-size: 1.35rem;
          
      font-weight: 800;
          
      height: 100%;
          
      justify-content: center;
          
      pointer-events: none;
          
      user-select: none;
          
      width: 100%;
          
    
        }
        

    .avatar:has(.avatar-initials)::before,
    .avatar:has(img)::before {
          
      content: "";
          
      display: none;
          
        }
        

  /* ── Team Section Eyebrow Labels ─────────────────────────────── */
    .section-eyebrow {
          
      color: var(--muted);
          
      display: block;
          
      font-size: 0.74rem;
          
      font-weight: 900;
          
      letter-spacing: 0.14em;
          
      margin-bottom: 12px;
          
      text-transform: uppercase;
          
    
        }
        
    .core-eyebrow {
          
      color: var(--orange);
          
    
        }
        

    /* ── Foundational Team — badge on cards ──────────────────────── */
    .founding-badge {
          
      background: rgba(13, 33, 69, 0.07);
          
      border: 1px solid rgba(13, 33, 69, 0.14);
          
      border-radius: 999px;
          
      color: var(--navy);
          
      display: inline-flex;
          
      font-size: 0.7rem;
          
      font-weight: 900;
          
      letter-spacing: 0.08em;
          
      margin-top: 8px;
          
      padding: 4px 10px;
          
      text-transform: uppercase;
          
    
        }
        

    /* ── Core Team Grid ───────────────────────────────────────────── */
    /* Mirrors .team-grid exactly — kept separate so future
       column-count changes on one do not affect the other.          */

  /* ── Core Team Badge on cards ─────────────────────────────────── */
    .core-team-badge {
          
      align-items: center;
          
      background: rgba(232, 119, 34, 0.10);
          
      border: 1px solid rgba(232, 119, 34, 0.28);
          
      border-radius: 999px;
          
      color: var(--orange);
          
      display: inline-flex;
          
      font-size: 0.7rem;
          
      font-weight: 900;
          
      gap: 5px;
          
      letter-spacing: 0.08em;
          
      margin-top: 8px;
          
      padding: 4px 10px;
          
      text-transform: uppercase;
          
    
        }
        
    .core-team-badge::before {
          
      background: var(--orange);
          
      border-radius: 50%;
          
      content: "";
          
      display: inline-block;
          
      flex-shrink: 0;
          
      height: 6px;
          
      width: 6px;
          
    
        }
        

    /* ── Core Associates Row ──────────────────────────────────────── */
    .core-associate-row {
          
      display: grid;
          
      gap: 24px;
          
      grid-template-columns: repeat(2, minmax(220px, 320px));
          
      justify-content: center;
          
      margin-top: 24px;
          
    
        }
        

    /* ── Responsive overrides for core team ──────────────────────── */
    @media (max-width: 920px) {
          
      .core-team-grid .team-card,
      .core-team-grid .team-card:nth-child(4),
      .core-team-grid .team-card:nth-child(5) {
            
        grid-column: span 3;
            
      
          }
          
    
        }
        
  
    .core-team-grid {
          
      display: grid;
          
      gap: 24px;
          
      grid-template-columns: repeat(6, 1fr);
          
      margin-top: 42px;
          
    
        }
        

  /* ══════════════════════════════════════════════════════════
     * TEAM SECTION SPLIT — NEW CSS
     * Added for: Foundational Team / Core Team / Associates split
     * ══════════════════════════════════════════════════════════ */

    /* ── Section eyebrow labels ─────────────────────────────── */
    /* Small uppercase label that appears above section titles.
       Used for "Foundational Team", "Current · Active", "Associates" */
    .team-section-eyebrow {
          
      color: var(--muted);
          
      display: block;
          
      font-size: 0.72rem;
          
      font-weight: 900;
          
      letter-spacing: 0.14em;
          
      margin-bottom: 12px;
          
      text-transform: uppercase;
          
    
        }

      /* Leadership Team Layout */
.leadership-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
    height: 700px;
}

/* Keep leadership cards equal in height */
.leadership-grid .team-card {
    width: 100%;
    
}

/* Mobile */
@media (max-width: 768px) {
    .leadership-grid {
        grid-template-columns: 1fr;
    }
}
        
    /* Orange variant for the Core Team eyebrow */
    .core-eyebrow {
          
      color: var(--orange);
          
    
        }
        

    /* ── Team-type identity badges ──────────────────────────── */
    /* Base badge — both foundational and core variants extend this */
    .team-type-badge {
          
      border-radius: 999px;
          
      display: inline-flex;
          
      font-size: 0.70rem;
          
      font-weight: 900;
          
      letter-spacing: 0.08em;
          
      margin-top: 8px;
          
      padding: 4px 11px;
          
      text-transform: uppercase;
          
    
        }
        
    /* "Founding Member" — muted navy pill */
    .team-type-badge.foundational {
          
      background: rgba(13, 33, 69, 0.07);
          
      border: 1px solid rgba(13, 33, 69, 0.16);
          
      color: var(--navy);
          
    
        }
        
    /* "Core Member" — orange-accented live-dot pill */
    .team-type-badge.core {
          
      align-items: center;
          
      background: rgba(232, 119, 34, 0.09);
          
      border: 1px solid rgba(232, 119, 34, 0.26);
          
      color: var(--orange);
          
      gap: 5px;
          
    
        }
        
    /* Animated live dot inside the core badge */
    .team-type-badge.core::before {
          
      animation: corePulse 2.2s ease infinite;
          
      background: var(--orange);
          
      border-radius: 50%;
          
      content: '';
          
      display: inline-block;
          
      flex-shrink: 0;
          
      height: 6px;
          
      width: 6px;
          
    
        }

      .leadership-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 42px auto 0;
  max-width: 760px;
}

.leadership-grid .team-card {
  width: 100%;
}

      @media (max-width: 680px) {
  .leadership-grid {
    grid-template-columns: 1fr;
    max-width: 420px;
  }
}
        
    @keyframes corePulse {
          
      0%, 100% {
             opacity: 1;
                transform: scale(1);
                
          }
          
      50%       {
             opacity: 0.5;
             transform: scale(0.72);
             
          }
          
    
        }
        

    /* ── Foundational team grid ─────────────────────────────── */
    /* Mirrors .team-grid exactly. Kept as a separate selector so
       future column-count changes on one don't affect the other. */
    #foundational-team-container {
          
      display: grid;
          
      gap: 24px;
          
      grid-template-columns: repeat(6, 1fr);
          
      margin-top: 42px;
          
    
        }
        
    /* Default: span 2 of 6 columns = 3 cards per row */
    #foundational-team-container .team-card {
          
      grid-column: span 2;
          
    
        }
        
    /* Centre row-2 if exactly 4 or 5 foundational members */
    #foundational-team-container .team-card:nth-child(4) {
          
      grid-column: 2 / span 2;
          
    
        }
        
    #foundational-team-container .team-card:nth-child(5) {
          
      grid-column: 4 / span 2;
          
    
        }
        

    /* ── .orange-rule centering fix for text-center sections ── */
    /* Ensures the orange underline rule centres when the parent
       container has text-align:center */
    .container.text-center .orange-rule {
          
      display: block;
          
      margin-left: auto;
          
      margin-right: auto;
          
    
        }
        

    /* ── Responsive: foundational grid ─────────────────────── */
    @media (max-width: 920px) {
          
      #foundational-team-container .team-card,
      #foundational-team-container .team-card:nth-child(4),
      #foundational-team-container .team-card:nth-child(5) {
            
        grid-column: span 3;
            
      
          }
          
    
        }
        
    @media (max-width: 680px) {
          
      #foundational-team-container {
            
        grid-template-columns: 1fr;
            
      
          }
          
      #foundational-team-container .team-card,
      #foundational-team-container .team-card:nth-child(4),
      #foundational-team-container .team-card:nth-child(5) {
            
        grid-column: auto;
            
      
          }
          
    
        }
        

  /* =====================================================
   Team Card Layout v2
   Role → Member Type → LinkedIn
===================================================== */

.member-stack {
          
  display:flex;
          
  flex-direction:column;
          
  align-items:center;
          
  gap:10px;
          
  margin-top:14px;
          
        }
        

.member-stack .badge,
.member-stack .team-type-badge {
          
  margin:0;
          
        }
        

.member-stack .linkedin {
          
  margin-top:2px;
          
        }
        
  
@media (max-width: 920px) {
      .menu-toggle {
        display: inline-flex;
      }

      .nav-links {
        background: var(--white);
        border-bottom: 1px solid var(--line);
        box-shadow: 0 20px 30px rgba(13, 33, 69, 0.08);
        display: grid;
        gap: 4px;
        left: 0;
        opacity: 0;
        padding: 12px 20px 20px;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 78px;
        transform: translateY(-8px);
        transition: opacity 180ms ease, transform 180ms ease;
      }

      .site-header.scrolled .nav-links {
        background: var(--navy);
        border-bottom-color: rgba(255, 255, 255, 0.08);
      }

      .nav-links.open {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
      }

      .nav-link {
        border-radius: 8px;
        justify-content: center;
        padding: 12px;
      }

      .split,
      .toolkit-grid,
      .footer-grid {
        grid-template-columns: 1fr;
      }

      .cards-3,
      .scope-grid {
        grid-template-columns: 1fr;
      }

      .team-card,
      .team-card:nth-child(4),
      .team-card:nth-child(5) {
        grid-column: span 3;
      }

      .copyright,
      .footer-grid {
        text-align: center;
      }
    }

    @media (max-width: 680px) {
      .container {
        width: min(100% - 28px, 1120px);
      }

      .section {
        padding: 74px 0;
      }

      .hero {
        min-height: 100vh;
        padding-top: 110px;
      }

      .button-row {
        align-items: stretch;
        flex-direction: column;
      }

      .btn {
        width: 100%;
      }

      .stats-grid,
      .objectives-grid,
      .module-grid {
        grid-template-columns: 1fr;
      }

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

      .team-card,
      .team-card:nth-child(4),
      .team-card:nth-child(5) {
        grid-column: auto;
      }

      .footer-links {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
      }
        }

        /* Main-site mobile responsiveness transplant.
           Mapping: sub-site .hero-content is the functional equivalent of main-site .hero-layout on team, research, projects, and toolkit. */
        @media (max-width: 920px) {
          .menu-toggle {
            display: inline-flex;
          }

          .nav-links {
            position: absolute;
            top: 78px;
            left: 0;
            right: 0;
            background: var(--white);
            padding: 12px 20px 20px;
            gap: 4px;
            display: grid;
            opacity: 0;
            pointer-events: none;
            transform: translateY(-8px);
            transition: opacity 180ms ease, transform 180ms ease;
          }

          .nav-links.open {
            opacity: 1;
            pointer-events: auto;
            transform: translateY(0);
          }

          .site-header.scrolled .nav-links {
            background: var(--navy);
            border-bottom-color: rgba(255,255,255,0.08);
          }

          .nav-link {
            border-radius: 8px;
            justify-content: center;
            padding: 12px;
          }

          .split,
          .toolkit-grid,
          .footer-grid,
          .hero-layout,
          .hero-content {
            grid-template-columns: 1fr;
          }

          .cards-3,
          .scope-grid {
            grid-template-columns: 1fr;
          }

          .team-card,
          .team-card:nth-child(4),
          .team-card:nth-child(5) {
            grid-column: span 3;
          }

          .copyright,
          .footer-grid {
            text-align: center;
          }

          .hero-layout,
          .hero-content {
            gap: 40px;
          }

          .hero-logo-panel {
            display: flex;
            justify-content: center;
          }

          .hero-logo-frame {
            max-width: 380px;
          }

          .hero-copy,
          .hero-content {
            text-align: center;
          }

          .hero p {
            margin-left: auto;
            margin-right: auto;
          }

          .button-row {
            justify-content: center;
          }

          .ecosystem-branches {
            grid-template-columns: 1fr;
            border-top: 0;
            margin-top: 28px;
            padding-top: 0;
          }

          .ecosystem-branches::before {
            display: none;
          }

          .nav-divider {
            display: none;
          }
        }

        @media (max-width: 720px) {
          .projects-section-header {
            grid-template-columns: 1fr;
          }
        }

        @media (max-width: 680px) {
          .container {
            width: min(100% - 28px, 1120px);
          }

          .section {
            padding: 74px 0;
          }

          .hero {
            min-height: 100vh;
            padding-top: 110px;
          }

          .button-row,
          .survey-section .button-row {
            align-items: stretch;
            flex-direction: column;
          }

          .btn {
            width: 100%;
          }

          .stats-grid,
          .objectives-grid,
          .module-grid,
          .team-grid,
          .toolkit-grid,
          .cards-3,
          .scope-grid,
          .split {
            grid-template-columns: 1fr;
          }

          .team-card,
          .team-card:nth-child(4),
          .team-card:nth-child(5) {
            grid-column: auto;
          }

          .footer-links {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
          }

          .hero-logo-frame {
            max-width: 280px;
            border-radius: 12px;
          }

          .hero h1 {
            font-size: clamp(2rem, 10vw, 3rem);
          }

          .project-body {
            padding: 22px 18px;
          }

          .project-card-header {
            padding: 24px 18px;
          }

          .project-meta-grid {
            grid-template-columns: 1fr 1fr;
          }

          .section-portal-cta-inner {
            flex-direction: column;
            align-items: flex-start;
          }

          .section-portal-cta-inner .btn {
            width: 100%;
          }
        }


        

/* =====================================================================
   RESPONSIVE OVERRIDES — all phones & tablets
   Kept last in the file so they win over the desktop-only offsets above
   (left:520px, left:80px/width:630px, bottom:317px, right:500px,
   height:700px, etc.), which pushed content off-screen on small devices.

   Breakpoints
     1240  footer logo offset
     1200  nav switches to hamburger (8 links + logo no longer fit)
     1160  desktop centring offsets reset (container is no longer 1120px)
      920  tablet     (2-column layouts)
      680  phone
      560  phone      (1-column layouts)
      480  small phone
      360  very small phone (320–360px)
      short landscape phones, touch devices
   ===================================================================== */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
img, svg { max-width: 100%; }

/* "Join Us" button: was shifted with left:520px, which widened the whole
   page on touch devices at every screen size */
#j { left: 0; justify-content: center; }

/* ---------- 1240 — footer logo had right:60px (clipped off-screen) ---------- */
@media (max-width: 1240px) {
  #fo { right: 0; top: 0; }
}

/* ---------- 1200 — hamburger navigation ---------- */
@media (max-width: 1200px) {
  .nav-wrap { gap: 12px; }
  .menu-toggle { display: inline-flex; flex-shrink: 0; }

  .nav-links {
    background: var(--white);
    border-bottom: 1px solid var(--line);
    box-shadow: 0 20px 30px rgba(13, 33, 69, 0.08);
    display: grid;
    gap: 4px;
    left: 0;
    right: 0;
    top: 78px;
    max-height: calc(100vh - 78px);
    max-height: calc(100dvh - 78px);
    overflow-y: auto;
    opacity: 0;
    padding: 12px 20px 20px;
    pointer-events: none;
    position: absolute;
    transform: translateY(-8px);
    transition: opacity 180ms ease, transform 180ms ease;
  }
  .site-header.scrolled .nav-links {
    background: var(--navy);
    border-bottom-color: rgba(255, 255, 255, 0.08);
  }
  .nav-links.open { opacity: 1; pointer-events: auto; transform: translateY(0); }
  .nav-link { border-radius: 8px; justify-content: center; padding: 12px; }
}

/* ---------- 1160 and below — container is narrower than 1120px, so the
   fixed pixel offsets that centred things on desktop must be reset ---------- */
@media (max-width: 1160px) {
  /* orange underline: right:500px pushed it off-screen */
  .orange-rule, #o, #or {
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  #re, #jo { left: 0; }
  .footer-copy { position: static !important; left: auto !important; }
}

/* Small laptops / tablets in landscape: keep the 3-up grids, centre the last row */
@media (min-width: 921px) and (max-width: 1160px) {
  .cards-3, .scope-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .cards-3 > *, .scope-grid > * { grid-column: span 2; }
  .cards-3 > :nth-child(4), .scope-grid > :nth-child(4) { grid-column: 2 / span 2; }
  .cards-3 > :nth-child(5), .scope-grid > :nth-child(5) { grid-column: 4 / span 2; }
}

/* ---------- 920 — tablets ---------- */
@media (max-width: 920px) {
  .split { gap: 28px; }
  .hero { min-height: 100vh; min-height: 100svh; }

  /* Leadership: top card centred, two cards below */
  .leadership-grid {
    height: auto;
    max-width: 640px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  #le, #l, #e {
    position: static;
    display: block;
    width: 100%;
    margin-left: 0;
    left: auto;
    right: auto;
    bottom: auto;
    grid-column: auto;
  }
  #le { grid-column: 1 / -1; justify-self: center; width: calc(50% - 10px); }

  /* Divisions + join cards: 2 columns, odd last card centred */
  .cards-3, .scope-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: 32px;
  }
  .cards-3 > *, .scope-grid > * { grid-column: auto; }
  .cards-3 > :last-child:nth-child(odd),
  .scope-grid > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc(50% - 10px);
  }

  /* Team + associates: 2 columns, odd last card centred */
  .team-grid, #team-grid-container, .associate-row, #foundational-team-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .team-grid .team-card,
  #team-grid-container .team-card,
  #team-grid-container .team-card:nth-child(4),
  #team-grid-container .team-card:nth-child(5),
  #team-grid-container .team-card:last-child,
  .associate-row .associate-card,
  #foundational-team-container .team-card,
  #foundational-team-container .team-card:nth-child(4),
  #foundational-team-container .team-card:nth-child(5) {
    grid-column: auto;
  }
  #team-grid-container .team-card:last-child:nth-child(odd),
  .associate-row .associate-card:last-child:nth-child(odd),
  #foundational-team-container .team-card:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc(50% - 10px);
  }
  .team-card, .associate-card { padding-left: 14px; padding-right: 14px; }
  .badge, .team-type-badge { max-width: 100%; text-align: center; justify-content: center; }

  /* Footer: single centred column */
  .footer-grid { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: 18px; }
  .footer-grid .brand { width: max-content; padding-right: 65px; }
  .footer-copy { text-align: center; }
}

/* ---------- 680 — phones ---------- */
@media (max-width: 680px) {
  .section { padding: 64px 0; }
  .hero { padding: 104px 0 56px; }
  .hero h1, .hero h2 { font-size: clamp(2.4rem, 11vw, 3.4rem); line-height: 1.08; }
  .hero p { font-size: 1rem; margin-top: 20px; }
  .section-title { font-size: clamp(1.9rem, 8vw, 2.6rem); }
  .subtitle, .lead-copy { font-size: 1rem; }
  .scope-card { padding: 24px 18px; }
  .profile-action .btn { width: auto; min-width: 160px; }
  .footer-links { gap: 8px; }
}

/* ---------- 560 — single-column layouts ---------- */
@media (max-width: 560px) {
  .leadership-grid { grid-template-columns: 1fr; max-width: 420px; }
  #le { grid-column: auto; width: 100%; justify-self: stretch; }

  .cards-3, .scope-grid { grid-template-columns: 1fr; }
  .cards-3 > :last-child:nth-child(odd),
  .scope-grid > :last-child:nth-child(odd) { grid-column: auto; width: 100%; }

  .team-grid, #team-grid-container, .associate-row, #foundational-team-container {
    grid-template-columns: 1fr;
  }
  #team-grid-container .team-card:last-child:nth-child(odd),
  .associate-row .associate-card:last-child:nth-child(odd),
  #foundational-team-container .team-card:last-child:nth-child(odd) {
    grid-column: auto;
    width: 100%;
  }
  .team-grid, .associate-row { max-width: 420px; margin-left: auto; margin-right: auto; }
}

/* ---------- 480 — small phones ---------- */
@media (max-width: 480px) {
  .section { padding: 56px 0; }
  .email-link { font-size: clamp(1.35rem, 7vw, 2rem); }
  .info-card, .scope-card { padding: 20px 16px !important; }
  .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-links .nav-link { padding: 12px 6px; }
}

/* ---------- 360 — very small phones (iPhone SE, Galaxy Fold, 320–360px) ---------- */
@media (max-width: 360px) {
  .container { width: calc(100% - 24px); }
  .btn { padding: 12px 16px; font-size: 0.95rem; }
  .menu-toggle { width: 40px; height: 40px; }
  .nav-links { padding: 10px 14px 16px; }
  .team-card, .associate-card { padding-left: 10px; padding-right: 10px; }
  .footer-links { grid-template-columns: 1fr; }
  .social-btn { flex: 1 1 100%; }
}

/* ---------- Short landscape phones ---------- */
@media (max-height: 500px) and (orientation: landscape) {
  .hero { min-height: auto; padding: 96px 0 48px; }
  .section { padding: 56px 0; }
}

/* ---------- Touch screens: hover lift would stay "stuck" after a tap ---------- */
@media (hover: none) {
  .info-card:hover, .team-card:hover, .associate-card:hover, .objective-card:hover,
  .resource-card:hover, .project-card:hover, .btn:hover { transform: none; }
}
