/**
 * InspireX - Main stylesheet
 * All colors, spacing, and tokens live in :root. No direct values below.
 */

 @import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap");

 /* -------------------------------------------------------------------------
    DESIGN TOKENS – single source of truth for colors, spacing, breakpoints
    ------------------------------------------------------------------------- */
 :root {
     /* Colors */
     --color-primary: #ffffff;
     --color-background: #0B0B0B;
     --color-background-solid: #0B0B0B;
     --color-accent: #73F764;
     --color-accent-hover: #73F764;
     --color-border: #9ca3af;
     --color-text-muted: #fbfbfb;
     --color-nav-muted: #d1d5db;
     --color-transparent: transparent;
 
     /* Spacing */
     --space-page-x: 1.5rem;
     --space-page-x-md: 3rem;
     --space-nav-y: 1.5rem;
     --space-section-y: 3rem;
     --space-section-y-md: 4rem;
     --space-stack-xs: 0.25rem;
     --space-stack-sm: 0.5rem;
     --space-stack-md: 1rem;
     --space-stack-lg: 1.5rem;
     --space-stack-xl: 2.5rem;
     --gap-buttons: 0.5rem;
     --gap-buttons-md: 1.5rem;
     --gap-trusted: 4.5rem;
     --gap-trusted-md: 6rem;
     --gradient-band-height: 2rem;
 
     /* Typography */
     --font-sans: "Poppins", system-ui, -apple-system, sans-serif;
     --font-sans-regular: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
     --line-height-body: 1.5;
 
     /* Logo / component sizing */
     --logo-inspirex-height: 1.75rem;
     --logo-inspirex-height-md: 2.25rem;
     --logo-trusted-height: 2.75rem;
     --logo-trusted-height-md: 3rem;
 
     /* Hero gradient */
     --gradient-overlay-start: 0%;
     --gradient-overlay-mid: 50%;
     --gradient-overlay-end: 100%;
 
     /* Border radius */
     --radius-button: 0.375rem;
 
     /* Hero */
     --hero-min-height: 100vh;
     --hero-content-offset: 6rem;
     --site-header-offset: 6.5rem;
     --icon-btn-size: 1.25rem;
 
     /* Projects section */
     --projects-section-padding-top: 2.5rem;
     --projects-section-padding-bottom: 5rem;
     --projects-section-padding-x: 8%;
     --projects-header-gap: 2.5rem;
     --projects-subtitle-size: 0.75rem;
     --projects-subtitle-spacing: 0.45rem;
     --projects-subtitle-margin-bottom: 0.25rem;
     --projects-title-size: 2.5rem;
     --projects-title-weight: 400;
     --projects-grid-gap: 0.5rem;
     --project-card-radius: 0.25rem;
     --project-card-overlay: rgba(0, 0, 0, 0.15);
     --projects-view-all-gap: 0.5rem;
     --projects-view-all-size: 0.875rem;
     --bp-projects-stack: 1000px;
 
     /* Projects carousel – always 3 on screen: left (half) + center (full) + right (half) */
     --carousel-slide-width: 50vw;
     --carousel-slide-height: 72vh;
     --carousel-gap: 2.5vw;
     --carousel-duration: 18s;
 
     /* Prev / page / Next pagination (news, resources, projects hub, impact featured) */
     --pagination-compact-gap: 0.55rem;
     --pagination-compact-font: 1rem;
     --pagination-compact-icon: 1.2rem;
     --pagination-compact-chevron-btn: 1.5rem;
     --pagination-compact-margin-top: 1.25rem;
 
     /* Leadership / Story section */
     --leadership-section-padding-y: 0;
     --leadership-section-padding-x: 4%;
     --leadership-quote-size: 5rem;
     --leadership-headline-size: 3.25rem;
     --leadership-headline-line: 1.2;
     --leadership-body-size: 1rem;
     --leadership-body-line: 1.6;
     --leadership-conviction-margin-bottom: 1.5rem;
     --leadership-card-bg: #0f0f0f;
     --leadership-card-radius: 0.5rem;
     --leadership-card-padding: 3rem;
     --leadership-card-gap: 2rem;
     --leadership-structure-subtitle-size: 0.75rem;
     --leadership-structure-title-size: 2.5rem;
     --leadership-structure-title-margin: 0.5rem;
     --leadership-structure-desc-margin: 1.5rem;
     --leadership-labs-gap: 2rem;
     --leadership-labs-margin-top: 4rem;
     --leadership-watermark-opacity: 0.03;
     --leadership-hero-image-max-width: 28rem;
     --leadership-hero-image-aspect: 3 / 4;
 
     /* Events section */
     --events-section-padding-y: 5rem;
     --events-section-padding-x: 8%;
     --events-title-size: 2.5rem;
     --events-title-italic-weight: 400;
     --events-cards-gap: 2rem;
     --event-card-bg: #151515;
     --event-card-border: 1px solid rgba(156, 163, 175, 0.3);
     --event-card-radius: 0.25rem;
     --event-card-padding: 3rem;
     --event-card-padding-x: 6rem;
     --event-date-num-size: 3rem;
     --event-date-month-size: 0.875rem;
     --event-meta-size: 0.875rem;
     --event-title-size: 1.5rem;
     --event-desc-size: 0.9375rem;
     --event-desc-max-width: 70ch;
     --event-meta-icon-color: var(--color-accent);
     --stats-gap: 2rem;
     --stats-num-size: 3.5rem;
     --stats-label-size: 0.75rem;
     --stats-label-color: var(--color-accent);
     --stats-divider-color: rgba(255, 255, 255, 0.1);
 
     /* CTA sections (Download + Real Projects) */
     --cta-section-padding-y: 4rem;
     --cta-section-padding-x: 4%;
     --cta-download-heading-size: 2.5rem;
     --cta-download-heading-max-width: 20ch;
     --cta-projects-heading-size: 4.25rem;
     --cta-btn-padding-x: 1.5rem;
     --cta-btn-padding-y: 0.875rem;
     --cta-btn-gap: 0.5rem;
     --cta-projects-buttons-gap: 1rem;
     --cta-section-border: 1px solid rgba(255, 255, 255, 0.08);
 
     /* Footer */
     --footer-bg: #000000;
     --footer-padding-y: 4rem;
     --footer-padding-x: 2%;
     --footer-bottom-padding-y: 1.5rem;
     --footer-col-gap: 4rem;
     --footer-logo-height: 2.25rem;
     --footer-desc-size: 0.9375rem;
     --footer-desc-line: 1.5;
     --footer-desc-max-width: 20rem;
     --footer-heading-size: 1rem;
     --footer-heading-weight: 600;
     --footer-heading-margin-bottom: 0.5rem;
     --footer-link-size: 0.9375rem;
     --footer-link-gap: 0.001rem;
     --footer-bottom-size: 0.8125rem;
     --footer-social-size: 1.5rem;
     --footer-bullet-color: var(--color-text-muted);
     --footer-glow-color: var(--color-accent);
     --footer-glow-size: 200px;
     --footer-region-glow-size: 80vmin;
 
     /* Breakpoints (use in media queries) */
     --bp-sm: 640px;
     --bp-md: 768px;
     --bp-lg: 1024px;
 }
 
 /* -------------------------------------------------------------------------
    Base
    ------------------------------------------------------------------------- */
 * {
     box-sizing: border-box;
 }
 
 body {
     font-family: var(--font-sans);
     line-height: var(--line-height-body);
     margin: 0;
     background-color: var(--color-background);
     color: var(--color-primary);
 }
 
 /* Force consistent typography on native form controls across browsers. */
 button,
 input,
 select,
 textarea {
     font-family: inherit;
 }
 
 .inspirex-title-html {
     word-break: break-word;
 }
 
 /* -------------------------------------------------------------------------
    Color / utility classes (use these instead of inline or Tailwind colors)
    ------------------------------------------------------------------------- */
 .text-primary { color: var(--color-primary); }
 .text-accent { color: var(--color-accent); }
 .text-muted { color: var(--color-text-muted); }
 .text-nav-muted { color: var(--color-nav-muted); }
 
 .bg-background { background-color: var(--color-background); }
 .bg-background-solid { background-color: var(--color-background-solid); }
 .bg-accent { background-color: var(--color-accent); }
 .bg-transparent { background-color: var(--color-transparent); }
 
 .border-default { border-color: var(--color-border); }
 
 .hover\:text-primary:hover { color: var(--color-primary); }
 .hover\:bg-primary:hover { background-color: var(--color-primary); color: var(--color-background-solid); }
 .hover\:bg-accent:hover { background-color: var(--color-accent-hover); }
 
 .text-on-accent { color: var(--color-background-solid); }
 
 /* -------------------------------------------------------------------------
    Hero area
    ------------------------------------------------------------------------- */
 .hero-background-wrap {
     position: relative;
     min-height: 100vh;
     background-image: url("../images/Background.png");
     background-size: cover;
     background-position: center top;
     background-repeat: no-repeat;
 }
 
 .hero-background-wrap--bg2 {
     background-image: url("../images/Background - 2.png");
     background-size: contain;
     background-position: center top;
     background-repeat: no-repeat;
 }
 
 .hero-image-gradient-overlay {
     position: absolute;
     inset: 0;
     z-index: 0;
     background: none;
     pointer-events: none;
 }
 
 .hero-background-wrap--bg2 .hero-image-gradient-overlay {
     background: linear-gradient(
         to bottom,
         var(--color-transparent) var(--gradient-overlay-start),
         var(--color-transparent) var(--gradient-overlay-mid),
         var(--color-background-solid) var(--gradient-overlay-end)
     );
 }
 
 .hero-section {
     min-height: calc(var(--hero-min-height) - var(--site-header-offset));
     padding-bottom: 0;
     margin-bottom: 0;
 }
 
 .hero-to-black-gradient {
     width: 100%;
     height: var(--gradient-band-height);
     background: linear-gradient(to bottom, var(--color-transparent), var(--color-background));
     flex-shrink: 0;
 }
 
 .btn-hero i {
     font-size: var(--icon-btn-size);
 }
 
 /* -------------------------------------------------------------------------
    Nav
    ------------------------------------------------------------------------- */
 .nav-transparent {
     background: var(--color-transparent);
 }
 
 .site-header {
     position: sticky;
     top: 0;
     left: 0;
     right: 0;
     width: 100%;
     z-index: 1200;
     transform: translateY(0);
     transition: background-color 0.22s ease, backdrop-filter 0.22s ease;
 }
 
 .site-header.is-scrolled {
     background: rgba(11, 11, 11, 0.92);
     backdrop-filter: blur(4px);
 }
 
 .site-header.is-hidden {
     transform: none;
 }
 
 /* -------------------------------------------------------------------------
    Logos
    ------------------------------------------------------------------------- */
 .inspirex-logo {
     height: var(--logo-inspirex-height);
     width: auto;
 }
 
 .trusted-logos-viewport {
     overflow: hidden;
     width: 100%;
 }
 
 .trusted-section-track {
     display: flex;
     flex-wrap: nowrap;
     align-items: center;
     justify-content: flex-start;
     gap: var(--gap-trusted);
     width: max-content;
     will-change: transform;
     opacity: 0.9;
 }
 
 .trusted-section-track .trusted-logo {
     flex-shrink: 0;
 }
 
 .trusted-logo {
     height: var(--logo-trusted-height);
     width: auto;
     object-fit: contain;
 }
 
 /* Monochrome SVG tinted via CMS (mask + background-color) */
 .trusted-logo.trusted-logo--svg-mask {
     display: inline-block;
     vertical-align: middle;
     height: var(--logo-trusted-height);
     width: min(12rem, 42vw);
     max-width: 200px;
     flex-shrink: 0;
     object-fit: contain;
     -webkit-mask-repeat: no-repeat;
     mask-repeat: no-repeat;
     -webkit-mask-position: center;
     mask-position: center;
     -webkit-mask-size: contain;
     mask-size: contain;
 }
 
 .trusted-section {
     position: relative;
     background-color: var(--color-background);
     overflow: hidden;
     padding-top: 0;
 }
 
 .trusted-section-box {
     position: absolute;
     top: 0;
     bottom: 0;
     width: min(25vw, 21rem);
     z-index: 1;
     pointer-events: none;
     border: none;
 }
 
 .trusted-section-box--left {
     left: 0;
     background: linear-gradient(to right, #0B0B0B 0%, #0B0B0B 70%, transparent 100%);
 }
 
 .trusted-section-box--right {
     right: 0;
     background: linear-gradient(to left, #0B0B0B 0%, #0B0B0B 70%, transparent 100%);
 }
 
 /* -------------------------------------------------------------------------
    Spacing utilities (optional – use for consistency)
    ------------------------------------------------------------------------- */
 .section-padding-x {
     padding-left: var(--space-page-x);
     padding-right: var(--space-page-x);
 }
 
 .section-padding-y {
     padding-top: var(--space-section-y);
     padding-bottom: var(--space-section-y);
 }
 
 .trusted-section.section-padding-y {
     padding-top: 0;
 }
 
 .gap-trusted {
     gap: var(--gap-trusted);
 }
 
 /* Hero / CTA buttons */
 .btn-hero {
     border-radius: var(--radius-button);
 }
 
 /* -------------------------------------------------------------------------
    Projects section
    ------------------------------------------------------------------------- */
 .projects-section {
     padding-top: var(--projects-section-padding-top);
     padding-bottom: var(--projects-section-padding-bottom);
     padding-left: var(--projects-section-padding-x);
     padding-right: var(--projects-section-padding-x);
     background-color: var(--color-background);
     overflow-x: hidden;
 }
 
 .projects-header {
     display: flex;
     justify-content: space-between;
     align-items: flex-end;
     margin-bottom: var(--projects-header-gap);
 }
 
 .projects-header .subtitle {
     color: var(--color-accent);
     font-size: var(--projects-subtitle-size);
     letter-spacing: var(--projects-subtitle-spacing);
     margin-bottom: var(--projects-subtitle-margin-bottom);
 }
 
 .projects-header .title {
     font-size: var(--projects-title-size);
     font-weight: var(--projects-title-weight);
     color: var(--color-primary);
 }
 
 .projects-header .title span {
     font-style: italic;
     font-weight: 400;
 }
 
 .projects-header-titles {
     min-width: 0;
 }
 
 .projects-header-intro {
     margin: 0;
     max-width: min(36rem, 46vw);
     text-align: right;
     align-self: flex-end;
     font-size: 0.95rem;
     line-height: 1.55;
     font-weight: 500;
     color: var(--color-text-muted);
 }
 
 .projects-header-intro.inspirex-title-html span {
     color: inherit;
 }
 
 /* Carousel: full-width container, track moves so center slide is full, sides half visible */
 .projects-carousel {
     width: 100vw;
     position: relative;
     left: 50%;
     margin-left: -50vw;
     overflow: hidden;
     margin-top: var(--projects-header-gap);
 }
 
 .projects-carousel-track {
     display: flex;
     gap: var(--carousel-gap);
     will-change: transform;
     transition: transform 0.6s ease-in-out;
 }
 
 .projects-carousel .project-card {
     flex: 0 0 var(--carousel-slide-width);
     width: var(--carousel-slide-width);
     height: var(--carousel-slide-height);
     min-height: 280px;
 }
 
 .projects-carousel .project-card img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     display: block;
 }
 
 .projects-carousel .project-card:hover img {
     transform: scale(1.05);
 }
 
 .project-card {
     position: relative;
     overflow: hidden;
     border-radius: var(--project-card-radius);
     cursor: pointer;
 }
 
 .project-card img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     display: block;
     transition: transform 0.6s ease;
 }
 
 .project-card:hover img {
     transform: scale(1.08);
 }
 
 .project-card::after {
     content: "";
     position: absolute;
     inset: 0;
     background: var(--project-card-overlay);
     pointer-events: none;
 }
 
 @media (max-width: 1000px) {
     :root {
         --carousel-slide-width: 50vw;
     }
 
     .projects-carousel .project-card {
         flex: 0 0 50vw;
         width: 50vw;
         height: 50vh;
     }
 
     .projects-header {
         flex-direction: column;
         align-items: flex-start;
         gap: var(--space-stack-md);
     }
 
     .projects-header-intro {
         max-width: none;
         width: 100%;
         text-align: right;
         align-self: flex-end;
     }
 }
 
 /* One slide at a time; active slide is full viewport width */
 @media (max-width: 768px) {
     :root {
         --carousel-slide-width: 100vw;
         --carousel-gap: 1rem;
     }
 
     .projects-carousel .project-card {
         flex: 0 0 100vw;
         width: 100vw;
         height: 50vh;
         border-radius: 0;
     }
 }
 
 /* -------------------------------------------------------------------------
    Leadership / Story section (Final Balanced Adjustment)
    ------------------------------------------------------------------------- */
 .leadership-section {
     background-color: var(--color-background);
     padding: var(--leadership-section-padding-y) var(--leadership-section-padding-x);
     color: var(--color-primary);
 }
 
 .leadership-hero {
     display: grid;
     grid-template-columns: 0.94fr auto 0.96fr;   /* Slightly more width to conviction */
     gap: 2.2rem;
     align-items: stretch;
     max-width: 1400px;
     margin: 0 auto 4rem;
 }
 
 /* Quote block */
 .leadership-quote-block {
     position: relative;
     align-self: start;
 }
 
 /* Image wrapper - now matches full section height */
 .leadership-hero-image-wrap {
     margin-right: 0;
     width: var(--leadership-hero-image-max-width);
     height: 100%;                    /* Changed to 100% to match grid height */
     min-height: 520px;               /* Fallback minimum height */
     flex-shrink: 0;
     display: flex;
     align-items: stretch;
     justify-content: center;
 }
 
 /* Image itself */
 .leadership-hero-image {
     width: 100%;
     height: 100%;                    /* Full height of wrapper */
     object-fit: cover;
     object-position: center top;
     border-radius: var(--leadership-card-radius);
     display: block;
 }
 
 /* Conviction block */
 .leadership-conviction-block {
     align-self: end;
 }
 
 /* ==================== Rest of styles (unchanged) ==================== */
 .leadership-quote-icon {
     width: var(--leadership-quote-size);
     height: auto;
     display: block;
     margin-bottom: 0.5rem;
 }
 
 .leadership-quote-block .headline {
     font-size: var(--leadership-headline-size);
     font-weight: 400;
     line-height: var(--leadership-headline-line);
     color: var(--color-primary);
     font-style: italic;
 }
 
 .leadership-quote-block .headline .accent {
     color: var(--color-accent);
     font-weight: 400;
 }
 
 .leadership-conviction-block h2 {
     font-size: var(--leadership-headline-size);
     font-weight: 600;
     color: var(--color-primary);
     margin-bottom: var(--leadership-conviction-margin-bottom);
 }
 
 .leadership-conviction-block h2 .accent {
     color: var(--color-accent);
 }
 
 .leadership-conviction-block p,
 .leadership-conviction-block .inspirex-cms-rich {
     font-size: var(--leadership-body-size);
     line-height: var(--leadership-body-line);
     color: var(--color-primary);
     text-align: justify;
     margin-bottom: 1.25rem;
 }
 
 /* Inline HTML from CMS rich-text (colors, alignment, lists) */
 .inspirex-cms-rich {
     max-width: 100%;
 }
 
 .inspirex-cms-rich a {
     color: var(--color-accent);
     text-decoration: underline;
 }
 
 .inspirex-cms-rich a:hover {
     opacity: 0.9;
 }
 
 .inspirex-cms-rich ul,
 .inspirex-cms-rich ol {
     margin: 0.5rem 0;
     padding-left: 1.25rem;
     text-align: start;
 }
 
 .inspirex-cms-rich blockquote {
     margin: 0.5rem 0;
     padding-left: 0.75rem;
     border-left: 3px solid rgba(255, 255, 255, 0.2);
 }
 
 .leadership-conviction-block .link-accent {
     color: var(--color-accent);
     text-decoration: none;
     font-size: 1rem;
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
 }
 
 .leadership-conviction-block .link-accent:hover {
     opacity: 0.85;
 }
 
 .leadership-structure {
     text-align: center;
     margin-top: 10rem !important;
     margin-bottom: var(--leadership-labs-margin-top);
 }
 
 /* Home page: bring "Our Work" closer to leadership content above */
 .home-leadership-structure {
     margin-top: 5rem !important;
 }
 
 .leadership-structure .subtitle {
     font-size: var(--leadership-structure-subtitle-size);
     letter-spacing: 0.2em;
     color: var(--color-accent);
     margin-bottom: var(--leadership-structure-title-margin);
 }
 
 .leadership-structure .title {
     font-size: var(--leadership-structure-title-size);
     font-weight: 600;
     color: var(--color-primary);
 }
 
 .leadership-structure .title .accent {
     color: var(--color-accent);
 }
 
 .leadership-structure .title .title-italic {
     font-style: italic;
     font-weight: 400;
 }
 
 .leadership-structure .desc {
     font-size: var(--leadership-body-size);
     line-height: var(--leadership-body-line);
     color: var(--color-text-muted);
     max-width: 640px;
     margin: var(--leadership-structure-desc-margin) auto 0;
 }
 
 .leadership-labs {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: var(--leadership-labs-gap);
     max-width: 1400px;
     margin: 0 auto;
     width: 100%;
 }
 
 .lab-card {
     background-color: var(--leadership-card-bg);
     border-radius: var(--leadership-card-radius);
     padding: var(--leadership-card-padding);
     position: relative;
     overflow: hidden;
 }
 
 .lab-card-studio::before {
     content: "";
     position: absolute;
     inset: 0;
     background-image: url("../images/icons/Pallete.png");
     background-size: 30% auto;
     background-position: right bottom;
     background-repeat: no-repeat;
     opacity: var(--leadership-watermark-opacity);
     pointer-events: none;
 }
 
 .lab-card-future::before {
     content: "";
     position: absolute;
     inset: 0;
     background-image: url("../images/icons/Flower.png");
     background-size: 30% auto;
     background-position: right bottom;
     background-repeat: no-repeat;
     opacity: var(--leadership-watermark-opacity);
     pointer-events: none;
 }
 
 .lab-card .icon {
     margin-bottom: 4.5rem;
 }
 
 .lab-card .icon img {
     width: 3.25rem;
     height: auto;
     display: block;
 }
 
 .lab-card h3 {
     font-size: 1.75rem;
     font-weight: 600;
     color: var(--color-primary);
     margin-bottom: 0.25rem;
 }
 
 .lab-card p,
 .lab-card .inspirex-cms-rich {
     font-size: var(--leadership-body-size);
     line-height: var(--leadership-body-line);
     color: var(--color-primary);
     text-align: justify;
     margin-bottom: 1.5rem;
 }
 
 .lab-card p strong,
 .lab-card .inspirex-cms-rich strong {
     font-weight: 600;
 }
 
 .lab-card .lab-card-actions {
     margin-top: 2rem;
 }
 
 /* About page lab cards still use .btn-explore */
 .lab-card .btn-explore {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     color: var(--color-primary);
     background: transparent;
     border: 1px solid var(--color-border);
     padding: 0.6rem 1.25rem;
     border-radius: var(--radius-button);
     font-size: 0.9rem;
     cursor: pointer;
     transition: opacity 0.2s;
 }
 
 .lab-card .btn-explore:hover {
     opacity: 0.9;
 }
 
 /* -------------------------------------------------------------------------
    Upcoming Events + Statistics section
    ------------------------------------------------------------------------- */
 .events-section {
     background-color: var(--color-background);
     padding: var(--events-section-padding-y) var(--events-section-padding-x);
     color: var(--color-primary);
 }
 
 .events-section .section-title {
     text-align: center;
     font-size: var(--events-title-size);
     font-weight: var(--events-title-italic-weight);
     color: var(--color-primary);
     margin-bottom: 3rem;
 }
 
 .events-section .section-title .title-italic {
     font-style: italic;
     font-weight: var(--events-title-italic-weight);
 }
 
 .events-list {
     display: flex;
     flex-direction: column;
     max-width: 1100px;
     margin: 0 auto 4rem;
     border: var(--event-card-border);
     border-radius: var(--event-card-radius);
     background-color: var(--color-transparent);
     overflow: hidden;
 }
 
 .event-card {
     display: flex;
     align-items: center;
     gap: 2rem;
     padding: var(--event-card-padding) var(--event-card-padding-x);
     background-color: var(--color-transparent);
     border: none;
     border-bottom: var(--event-card-border);
     border-radius: 0;
 }
 
 .event-card:last-child {
     border-bottom: none;
 }
 
 .event-card .event-date {
     flex-shrink: 0;
     display: flex;
     flex-direction: column;
 }
 
 .event-card .event-date .day {
     font-size: var(--event-date-num-size);
     font-weight: 700;
     color: var(--color-primary);
     line-height: 1;
 }
 
 .event-card .event-date .month {
     font-size: var(--event-date-month-size);
     color: var(--color-text-muted);
     margin-top: 0.25rem;
 }
 
 .event-card .event-body {
     flex: 1;
     min-width: 0;
 }
 
 .event-card .event-meta {
     display: flex;
     flex-wrap: wrap;
     gap: 1.5rem;
     font-size: var(--event-meta-size);
     color: var(--color-text-muted);
     margin-bottom: 0.75rem;
 }
 
 .event-card .event-meta span {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
 }
 
 .event-card .event-meta i {
     color: var(--event-meta-icon-color);
     font-size: 1rem;
 }
 
 .event-card .event-title {
     font-size: var(--event-title-size);
     font-weight: 500;
     color: var(--color-primary);
     margin-bottom: 0.5rem;
 }
 
 .event-card .event-desc {
     font-size: var(--event-desc-size);
     line-height: 1.5;
     color: var(--color-text-muted);
     max-width: var(--event-desc-max-width);
 }
 
 .event-card .event-actions {
     flex-shrink: 0;
     display: flex;
     align-items: center;
 }
 
 .event-card .btn-register,
 .lab-card .lab-card-actions .btn-register {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     color: var(--color-primary);
     background: transparent;
     border: 2px solid rgba(156, 163, 175, 0.3);
     padding: 0.75rem 1.5rem;
     border-radius: var(--radius-button);
     font-size: 1rem;
     cursor: pointer;
     white-space: nowrap;
     text-decoration: none;
 }
 
 .event-card .btn-register:hover,
 .lab-card .lab-card-actions .btn-register:hover {
     opacity: 0.9;
 }
 
 /* Statistics */
 .stats-section {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     gap: var(--stats-gap);
     max-width: 1000px;
     margin: 0 auto;
 }
 
 .stats-block {
     flex: 1;
     min-width: 120px;
     text-align: center;
     padding: 0 1.5rem;
     position: relative;
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     align-items: baseline;
     justify-content: center;
     gap: 0.35rem 0.65rem;
 }
 
 .stats-block:not(:last-child)::after {
     content: "";
     position: absolute;
     right: 0;
     top: 50%;
     transform: translateY(-50%);
     width: 1px;
     height: 90%;
     background-color: var(--stats-divider-color);
 }
 
 .stats-block .num {
     font-size: var(--stats-num-size);
     font-weight: 400;
     color: var(--color-primary);
     display: inline;
     line-height: 1.2;
 }
 
 .stats-block .label {
     font-size: var(--stats-label-size);
     font-weight: 400;
     letter-spacing: 0.1em;
     color: var(--stats-label-color);
     text-transform: uppercase;
     margin-top: 0;
     display: inline;
     max-width: 12rem;
     text-align: center;
 }

 /* Stat visibility control classes */
.stats-block.stat-desktop-only {
    display: flex;
}
.stats-block.mobile-stat-only {
    display: none;
}

@media (max-width: 768px) {
    .stats-block.stat-desktop-only {
        display: none !important;
    }
    .stats-block.mobile-stat-only {
        display: flex !important;
    }
}
 
 @media (max-width: 768px) {
     .events-section {
         text-align: center;
     }
 
     .events-list {
         margin-left: auto;
         margin-right: auto;
     }
 
     .event-card {
         flex-direction: column;
         align-items: center;
         gap: 1rem;
         text-align: center;
     }
 
     .event-card .event-date {
         align-items: center;
     }
 
     .event-card .event-body {
         display: flex;
         flex-direction: column;
         align-items: center;
         width: 100%;
     }
 
     .event-card .event-meta {
         justify-content: center;
     }
 
     .event-card .event-title,
     .event-card .event-desc {
         text-align: center;
     }
 
     .event-card .event-desc {
         margin-left: auto;
         margin-right: auto;
     }
 
     .event-card .event-actions {
         align-self: center;
     }
 
     .stats-block:not(:last-child)::after {
         display: none;
     }
 
     .stats-section {
         gap: 2rem;
     }
 }
 
 @media (max-width: 1024px) {
     .leadership-hero {
         grid-template-columns: 1fr;
         text-align: center;
     }
 
     .home-leadership-structure {
         margin-top: 4rem !important;
     }
 
     .leadership-hero-image-wrap {
         width: 100%;
         height: 480px;
         margin-right: 0;
     }
 
     .leadership-hero-image {
         width: 100%;
         height: 100%;
         object-fit: cover;
         object-position: center top;
     }
 
     .leadership-quote-block {
         order: 1;
     }
 
     .leadership-hero-image-wrap {
         order: 2;
     }
 
     .leadership-conviction-block {
         order: 3;
         text-align: left;
     }
 
     .leadership-labs {
         grid-template-columns: 1fr;
     }
 }
 
 @media (max-width: 767px) {
     .leadership-hero-image-wrap {
         margin-right: 0;
         width: 100%;
         height: 360px;
     }
 
     .leadership-hero-image {
         width: 100%;
         height: 100%;
         object-fit: cover;
         object-position: center top;
         display: block;
     }
 }
 
 /* -------------------------------------------------------------------------
    CTA section + Footer (Design With Intention)
    ------------------------------------------------------------------------- */
 .cta-direction-section {
     background: transparent;
     padding: var(--cta-section-padding-y) var(--cta-section-padding-x);
     text-align: center;
 }
 
 .cta-direction-heading {
     font-size: clamp(2.35rem, 4.5vw, 5.5rem);
     font-weight: 700;
     line-height: 1.2;
     color: var(--color-primary);
     margin: 0 0 1rem;
 }
 
 .cta-direction-heading em {
     color: var(--color-accent);
     font-style: italic;
 }
 
 .cta-direction-desc {
     font-size: 1rem;
     line-height: 1.6;
     color: var(--color-primary);
     margin: 0 auto 2rem;
     max-width: 64ch;
 }
 
 .cta-direction-buttons {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     gap: var(--cta-projects-buttons-gap);
 }
 
 .cta-direction-btn {
     display: inline-flex;
     align-items: center;
     gap: var(--cta-btn-gap);
     padding: var(--cta-btn-padding-y) var(--cta-btn-padding-x);
     font-family: var(--font-sans);
     font-size: 0.875rem;
     font-weight: 400;
     letter-spacing: 0.02em;
     text-transform: uppercase;
     border-radius: var(--radius-button);
     cursor: pointer;
 }
 
 .cta-direction-btn--outline {
     color: var(--color-primary);
     background: transparent;
     border: 1px solid rgba(255, 255, 255, 0.5);
 }
 
 .cta-direction-btn--filled {
     color: var(--color-background);
     background: var(--color-accent);
     border: none;
 }
 
 a.cta-direction-btn,
 a.cta-projects-btn,
 a.cta-download-btn {
     text-decoration: none;
     box-sizing: border-box;
 }
 
 /* Home page footer: Download + Real Projects (two CTAs) */
 .cta-download-section {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     gap: 1.5rem;
     padding: var(--cta-section-padding-y) var(--cta-section-padding-x);
     background: transparent;
     border-bottom: 1px solid rgba(255, 255, 255, 0.12);
 }
 
 .cta-download-heading {
     font-size: var(--cta-download-heading-size);
     font-weight: 700;
     line-height: 1.2;
     color: var(--color-primary);
     margin: 0;
     max-width: var(--cta-download-heading-max-width);
 }
 
 .cta-download-heading .cta-download-accent {
     color: var(--color-accent);
 }
 
 .cta-download-heading em {
     font-style: italic;
     font-weight: 400;
     color: var(--color-primary);
 }
 
 .cta-download-btn {
     display: inline-flex;
     align-items: center;
     gap: var(--cta-btn-gap);
     padding: var(--cta-btn-padding-y) var(--cta-btn-padding-x);
     font-family: var(--font-sans-regular);
     font-size: 0.875rem;
     font-weight: 400;
     letter-spacing: 0.02em;
     text-transform: uppercase;
     color: var(--color-primary);
     background: transparent;
     border: 1px solid rgba(255, 255, 255, 0.5);
     border-radius: var(--radius-button);
     cursor: pointer;
 }
 
 .cta-projects-section {
     padding: var(--cta-section-padding-y) var(--cta-section-padding-x);
     text-align: center;
     background: transparent;
     border-bottom: 1px solid rgba(255, 255, 255, 0.12);
 }
 
 .cta-projects-heading {
     font-size: 5.25rem;
     font-weight: 650;
     line-height: 1.2;
     color: var(--color-primary);
     margin: 0 0 1rem;
 }
 
 .cta-projects-heading .cta-projects-accent {
     color: var(--color-accent);
     font-family: var(--font-sans-regular);
     font-weight: 400;
     font-style: italic;
 }
 
 .cta-projects-desc {
     font-size: 1rem;
     line-height: 1.6;
     color: var(--color-primary);
     margin: 0 auto 2rem;
     max-width: 52ch;
 }
 
 .cta-projects-buttons {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     gap: var(--cta-projects-buttons-gap);
 }
 
 .cta-projects-btn {
     display: inline-flex;
     align-items: center;
     gap: var(--cta-btn-gap);
     width: fit-content;
     padding: var(--cta-btn-padding-y) var(--cta-btn-padding-x);
     font-family: var(--font-sans-regular);
     font-size: 0.875rem;
     font-weight: 400;
     letter-spacing: 0.02em;
     text-transform: uppercase;
     border-radius: var(--radius-button);
     cursor: pointer;
 }
 
 .cta-projects-btn--outline {
     color: var(--color-primary);
     background: transparent;
     border: 1px solid rgba(255, 255, 255, 0.5);
 }
 
 .cta-projects-btn--filled {
     color: var(--color-background);
     background: var(--color-accent);
     border: none;
 }
 
 .footer-region {
     position: relative;
     overflow: hidden;
     background: var(--footer-bg);
 }
 
 .footer-region::before {
     content: "";
     position: absolute;
     top: 0;
     right: 0;
     width: var(--footer-region-glow-size);
     height: var(--footer-region-glow-size);
     background: radial-gradient(circle at 100% 0%, var(--footer-glow-color) 0%, transparent 60%);
     opacity: 0.2;
     pointer-events: none;
 }
 
 .site-footer {
     background: var(--footer-bg);
     padding: var(--footer-padding-y) var(--footer-padding-x);
 }
 
 .footer-grid {
     display: grid;
     grid-template-columns: 1.9fr 1fr 1fr 1fr;
     gap: var(--footer-col-gap);
     align-items: end;
     max-width: 1200px;
     margin: 0 auto;
 }
 
 .footer-logo-wrap {
     display: inline-block;
     margin-bottom: 1rem;
 }
 
 .footer-logo-img {
     display: block;
     height: var(--footer-logo-height);
     width: auto;
 }
 
 .footer-brand .footer-desc {
     font-size: var(--footer-desc-size);
     line-height: var(--footer-desc-line);
     color: var(--color-text-muted);
     max-width: var(--footer-desc-max-width);
     margin: 0;
 }
 
 .footer-col h4 {
     font-size: 1.15rem;
     font-weight: var(--footer-heading-weight);
     color: var(--color-primary);
     margin: none;
     padding-left: 0.75rem;
 }
 
 .footer-col ul {
     list-style: none;
     padding: 0;
     margin: 0;
 }
 
 .footer-col ul li {
     font-size: var(--footer-link-size);
     color: var(--color-text-muted);
     margin-bottom: var(--footer-link-gap);
 }
 
 .footer-col ul li::before {
     content: "•";
     color: var(--footer-bullet-color);
     margin-right: 0.5rem;
 }
 
 .footer-col ul li a {
     color: var(--color-text-muted);
     text-decoration: none;
 }
 
 .footer-col ul li a:hover {
     color: var(--color-primary);
 }
 
 .footer-col-with-social {
     display: flex;
     gap: var(--footer-col-gap);
     align-items: flex-end;
 }
 
 .footer-social {
     display: flex;
     flex-direction: column;
     gap: 0.35rem;
 }
 
 .footer-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: var(--footer-social-size);
     height: var(--footer-social-size);
     color: var(--color-primary);
     border: none;
     border-radius: 0.25rem;
     font-size: 1rem;
 }
 
 .footer-bottom {
     max-width: 1200px;
     margin: 0 auto;
     padding-top: var(--footer-bottom-padding-y);
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     gap: 1rem;
 }
 
 .footer-copyright {
     font-size: var(--footer-bottom-size);
     color: var(--color-text-muted);
     margin: 0;
 }
 
 .footer-legal {
     display: flex;
     gap: 4.5rem;
 }
 
 .footer-legal a {
     font-size: var(--footer-bottom-size);
     color: var(--color-text-muted);
     text-decoration: none;
 }
 
 .footer-legal a:hover {
     color: var(--color-primary);
 }
 
 @media (max-width: 900px) {
     .footer-grid {
         grid-template-columns: 1fr 1fr;
     }
 }
 
 @media (max-width: 600px) {
     .cta-direction-buttons {
         flex-direction: column;
     }
 
     .cta-download-section {
         flex-direction: column;
         text-align: center;
     }
 
     .cta-download-heading {
         max-width: none;
     }
 
     .cta-projects-buttons {
         flex-direction: column;
     }
 
     .footer-grid {
         grid-template-columns: 1fr;
     }
 
     .footer-col,
     .footer-col-with-social {
         text-align: left;
         align-items: flex-start;
     }
 
     .footer-col-with-social {
         flex-direction: column;
     }
 
     .footer-social {
         flex-direction: row;
         align-items: center;
         justify-content: flex-start;
     }
 }
 
 /* -------------------------------------------------------------------------
    Media queries – breakpoints and responsive tokens
    ------------------------------------------------------------------------- */
 @media (min-width: 768px) {
     :root {
         --space-page-x: var(--space-page-x-md);
         --space-section-y: var(--space-section-y-md);
         --gap-trusted: var(--gap-trusted-md);
         --logo-inspirex-height: var(--logo-inspirex-height-md);
         --logo-trusted-height: var(--logo-trusted-height-md);
     }
 }