
:root {
  --background-main: #030305;
  --background-secondary: #09090d;
  --background-card: #0c0c12;
  --text-primary: #f7f7f8;
  --text-secondary: #b8bac3;
  --accent-teal: #65cbd0;
  --accent-teal-light: #8ad9dc;
  --accent-purple: #542b98;
  --accent-purple-light: #7650b5;
  --border-subtle: rgba(255, 255, 255, 0.10);
  --teal-glow: rgba(101, 203, 208, 0.22);
  --purple-glow: rgba(84, 43, 152, 0.25);

  --container-width: 1300px;
  --page-padding-desktop: 64px;
  --page-padding-tablet: 32px;
  --page-padding-mobile: 20px;

  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --font-sans: "Manrope", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "Space Grotesk", "IBM Plex Mono", monospace;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { background: var(--background-main); color: var(--text-primary); }
html { scroll-behavior: auto; -webkit-font-smoothing: antialiased; }
body {
  font-family: var(--font-sans);
  font-weight: 400;
  line-height: 1.5;
  overflow-x: hidden;
  min-height: 100vh;
}
img, svg, video, canvas { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }

.container {
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--page-padding-desktop);
}
@media (max-width: 900px) { .container { padding: 0 var(--page-padding-tablet); } }
@media (max-width: 600px) { .container { padding: 0 var(--page-padding-mobile); } }

.label {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--text-secondary);
}
.label--teal { color: var(--accent-teal); }

.divider-line {
  height: 1px;
  width: 100%;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--accent-teal) 20%,
    var(--accent-purple-light) 60%,
    transparent 100%);
  opacity: 0.55;
  transform-origin: left center;
}
.main-header-bar {
   background-color: #00000000;;
}

/* ---------- HEADER ---------- */
/*.site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 100;
  padding: 22px 0;
  transition: background 0.4s var(--ease-out), backdrop-filter 0.4s var(--ease-out),
              padding 0.4s var(--ease-out), border-color 0.4s var(--ease-out);
  border-bottom: 1px solid transparent;
}
.site-header.is-scrolled {
 backdrop-filter: blur(18px) saturate(140%);
    background: linear-gradient(oklch(100% 0 0 / .05), oklch(100% 0 0 / .02));
    border: 1px solid oklch(100% 0 0 / .08);
    padding: 14px 0;
    /* background: rgba(3, 3, 5, 0.72); */
    /* backdrop-filter: blur(14px) saturate(140%); */
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    border-bottom-color: var(--border-subtle);
}
/*.site-header .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-sans);
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 1rem;
}
.brand-mark {
  width: 26px; height: 26px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 30% 30%, var(--accent-teal) 0%, transparent 55%),
    radial-gradient(circle at 70% 75%, var(--accent-purple-light) 0%, transparent 60%),
    #000;
  box-shadow: 0 0 18px var(--teal-glow), inset 0 0 8px rgba(0,0,0,0.6);
}
h2 {font-family: "Manrope", sans-serif!important;
       color: #f7f7f8!important;

    font-size: clamp(2.3rem, 5vw, 3.6rem)!important;
    font-weight: 500!important; 
    
}
.text-gradient {
    display: block;
    color: transparent;
  background: linear-gradient(120deg, #fff 0%, #a38cff 45%, #6dd6e8 100%);
    -webkit-background-clip: text;
    background-clip: text;
    
}
.nav-links {
  display: flex;
  gap: 34px;
  list-style: none;
  align-items: center;
}
.nav-links a {
  font-size: 0.9rem;
  color: var(--text-secondary);
  transition: color 0.25s var(--ease-out);
  position: relative;
}
.nav-links a:hover { color: var(--text-primary); }
.nav-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 999px;
  font-size: 0.85rem;
  color: var(--text-primary);
  background: rgba(255,255,255,0.02);
  transition: border-color 0.3s var(--ease-out), box-shadow 0.3s var(--ease-out),
              background 0.3s var(--ease-out);
}
.nav-cta:hover {
  border-color: var(--accent-teal);
  box-shadow: 0 0 24px var(--teal-glow);
  background: rgba(101,203,208,0.05);
}
.nav-cta .dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--accent-teal);
  box-shadow: 0 0 10px var(--accent-teal);
}

.hamburger {
  display: none;
  width: 40px; height: 40px;
  border: 1px solid var(--border-subtle);
  border-radius: 50%;
  position: relative;
}
.hamburger span {
  position: absolute; left: 10px; right: 10px; height: 1.5px;
  background: var(--text-primary);
  transition: transform 0.35s var(--ease-out), opacity 0.25s var(--ease-out), top 0.35s var(--ease-out);
}
.hamburger span:nth-child(1) { top: 15px; }
.hamburger span:nth-child(2) { top: 22px; }
.hamburger.is-open span:nth-child(1) { top: 19px; transform: rotate(45deg); }
.hamburger.is-open span:nth-child(2) { top: 19px; transform: rotate(-45deg); }

.mobile-menu { display: none; }
@media (max-width: 900px) {
  .mobile-menu { display: flex; }
  .nav-links { display: none; }
  .hamburger { display: block; }
  .nav-cta { display: none; }
  .mobile-menu {
    position: fixed; inset: 0; z-index: 90;
    background: rgba(3,3,5,0.96);
    backdrop-filter: blur(20px);
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    gap: 28px;
    opacity: 0; pointer-events: none;
    transition: opacity 0.35s var(--ease-out);
  }
  .mobile-menu.is-open { opacity: 1; pointer-events: auto; }
  .mobile-menu a { font-size: 1.5rem; color: var(--text-primary); }
}

/* =========================================================
   CONVENERS COMPANY HERO
   Video-masked title, positioning statement, actions and metrics.
========================================================= */

.hero,
.conv-hero {
  position: relative;
  isolation: isolate;
  width: 100%;
   min-height:
        calc(
            100svh - 80px
        ) !important;

    padding:
        clamp(62px, 7vh, 78px)
        0
        28px !important;
  overflow: hidden;
  background: #030305;
  color: var(--text-primary);
}

/* Video stays full-size but is revealed only through the SVG mask. */
.hero-video,
.conv-hero__video {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
  filter: saturate(120%) contrast(108%) brightness(0.82);
}

/* Black mask layer with the CONVENERS word cut out. */
.hero-mask-svg,
.conv-hero__mask {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

/* Keeps the masked video rich without allowing it to overpower the copy. */
.hero-vignette,
.conv-hero__vignette {
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(
      ellipse at 50% 38%,
      transparent 0%,
      rgba(3, 3, 5, 0.05) 30%,
      rgba(3, 3, 5, 0.48) 78%
    ),
    radial-gradient(
      circle at 9% 72%,
      rgba(84, 43, 152, 0.10),
      transparent 28%
    ),
    radial-gradient(
      circle at 91% 70%,
      rgba(101, 203, 208, 0.07),
      transparent 27%
    ),
    linear-gradient(
      180deg,
      rgba(3, 3, 5, 0.26) 0%,
      transparent 26%,
      transparent 74%,
      #030305 100%
    );
}

.hero-inner,
.conv-hero__inner {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  width: 100%;
  
   min-height:
        calc(
            100svh - 180px
        ) !important;

    max-width: 1500px !important;
  margin: 0 auto;
}

/* =========================================================
   MASKED TITLE POSITION
========================================================= */

.hero-title-wrap,
.conv-hero__title-wrap {
  position: relative;
  width: 100%;
  margin-top: 0 !important;
  text-align: center;
}

.hero-eyebrow,
.conv-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2vw, 28px);
  margin: 0;
  color: var(--accent-teal);
  font-family: var(--font-mono);
  font-size: clamp(0.62rem, 0.75vw, 0.74rem);
  font-weight: 500;
  letter-spacing: 0.42em;
  line-height: 1.2;
  text-transform: uppercase;
  opacity: 1;
}

.conv-hero__eyebrow > span {
  display: none;
  width: clamp(34px, 5vw, 78px);
  height: 1px;
  flex: 0 0 auto;
  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(101, 203, 208, 0.88)
    );
}

.conv-hero__eyebrow > span:last-child {
  background:
    linear-gradient(
      90deg,
      rgba(101, 203, 208, 0.88),
      transparent
    );
}

.hero-title-spacer,
.conv-hero__title-spacer {
  width: 100%;
  height:
        clamp(
            270px,
            22vw,
            365px
        ) !important;
}

/* =========================================================
   POSITIONING STATEMENT AND ACTIONS
========================================================= */

.conv-hero__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-top: clamp(-12px, -0.6vw, -4px);
  text-align: center;
}

.conv-hero__tagline {
  max-width: 1260px;
  margin: 0;
  color: #f7f7f8;
  font-family: var(--font-sans);
  font-size: clamp(2rem, 2.45vw, 4rem);
  font-weight: 460;
  letter-spacing: -0.045em;
  line-height: 1.08;
  text-wrap: balance;
}

.conv-hero__tagline span {
  color: transparent;
  background:
    linear-gradient(
      105deg,
      #9f72ff 0%,
      #7789ff 48%,
      #65cbd0 100%
    );
  -webkit-background-clip: text;
  background-clip: text;
}

.conv-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: clamp(28px, 4vh, 42px);
}

.conv-hero__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 180px;
  min-height: 56px;
  padding: 14px 28px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: #fff;
  font-family: var(--font-sans);
  font-size: 0.94rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition:
    color 0.3s ease,
    border-color 0.35s ease,
    background 0.35s ease,
    box-shadow 0.4s ease,
    transform 0.4s var(--ease-out);
}

.conv-hero__button--primary {
  border-color: rgba(125, 101, 255, 0.78);
  background:
    linear-gradient(
      110deg,
      #7344ee 0%,
      #616ce8 48%,
      #45cbd2 100%
    );
  box-shadow:
    0 16px 42px rgba(87, 59, 208, 0.27),
    0 0 32px rgba(101, 203, 208, 0.09);
}

.conv-hero__button--secondary {
  background: rgba(255, 255, 255, 0.015);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.conv-hero__button:hover {
  color: #fff;
  transform: translateY(-4px);
}

.conv-hero__button--primary:hover {
  border-color: rgba(101, 203, 208, 0.9);
  box-shadow:
    0 22px 48px rgba(87, 59, 208, 0.34),
    0 0 38px rgba(101, 203, 208, 0.16);
  filter: brightness(1.06);
}

.conv-hero__button--secondary:hover {
  border-color: rgba(167, 133, 239, 0.64);
  background: rgba(118, 80, 181, 0.08);
  box-shadow: 0 16px 38px rgba(84, 43, 152, 0.18);
}

.conv-hero__button span:last-child {
  font-size: 1.18rem;
  transition: transform 0.35s var(--ease-out);
}

.conv-hero__button:hover span:last-child {
  transform: translateX(5px);
}

/* =========================================================
   HERO METRICS PANEL
========================================================= */

.conv-hero__stats {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  margin-top:160px!important;
  overflow: hidden;
 
  background:
    linear-gradient(
      115deg,
      rgba(84, 43, 152, 0.10),
      rgba(8, 8, 14, 0.78) 34%,
      rgba(8, 8, 14, 0.82) 70%,
      rgba(101, 203, 208, 0.07)
    );
  box-shadow:
    0 28px 76px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(18px) saturate(128%);
  -webkit-backdrop-filter: blur(18px) saturate(128%);
}

.conv-hero__stats::before {
  position: absolute;
  top: 0;
  right: 4%;
  left: 4%;
  height: 1px;
  content: "";
  pointer-events: none;
  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(157, 104, 255, 0.78),
      rgba(101, 203, 208, 0.75),
      transparent
    );
  opacity: 0.82;
}

.conv-hero__stat {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(15px, 1.8vw, 25px);
  min-width: 0;
  padding: clamp(20px, 2.1vw, 31px) clamp(18px, 2.4vw, 35px);
}

.conv-hero__stat + .conv-hero__stat::before {
  position: absolute;
  top: 22%;
  bottom: 22%;
  left: 0;
  width: 1px;
  content: "";
  background:
    linear-gradient(
      180deg,
      transparent,
      rgba(255, 255, 255, 0.16),
      transparent
    );
}

.conv-hero__stat-icon {
  display: grid;
  place-items: center;
  width: clamp(52px, 4.4vw, 68px);
  height: clamp(52px, 4.4vw, 68px);
  flex: 0 0 auto;
  border: 1px solid rgba(137, 94, 220, 0.35);
  border-radius: 50%;
  color: #9d72f0;
  background:
    radial-gradient(
      circle at 35% 30%,
      rgba(101, 203, 208, 0.08),
      transparent 58%
    ),
    rgba(5, 5, 10, 0.62);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.018),
    0 0 24px rgba(84, 43, 152, 0.11);
}

.conv-hero__stat:nth-child(3) .conv-hero__stat-icon {
  color: #6fcfd5;
  border-color: rgba(101, 203, 208, 0.32);
}

.conv-hero__stat-icon svg {
  width: clamp(23px, 1.9vw, 29px);
  height: clamp(23px, 1.9vw, 29px);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.conv-hero__stat-copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.conv-hero__stat-number {
  color: #f8f7fa;
  font-family: var(--font-sans);
  font-size: clamp(1.55rem, 2vw, 2.25rem);
  font-weight: 650;
  letter-spacing: -0.04em;
  line-height: 1;
}

.conv-hero__stat-copy > span {
  margin-top: 8px;
  color: rgba(184, 186, 195, 0.72);
  font-family: var(--font-sans);
  font-size: clamp(0.76rem, 0.95vw, 0.98rem);
  line-height: 1.35;
}

/* Compatibility: old event-style hero elements are no longer used. */
.hero-meta,
.hero-info,
.hero-divider-wrap {
  display: none !important;
}

/* =========================================================
   HERO RESPONSIVE
========================================================= */

@media (max-width: 1180px) {
  .hero,
  .conv-hero {
    min-height: max(760px, 100svh);
    padding-top: 132px;
  }

  .hero-inner,
  .conv-hero__inner {
    max-width: 1180px;
  }

  .hero-title-spacer,
  .conv-hero__title-spacer {
    height: clamp(175px, 20vw, 245px);
  }

  .conv-hero__tagline {
    max-width: 960px;
  }

  .conv-hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .conv-hero__stat:nth-child(3)::before {
    display: none;
  }

  .conv-hero__stat:nth-child(n + 3) {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
  }
}

@media (max-width: 767px) {
  .hero,
  .conv-hero {
    min-height: auto;
    padding: 112px 0 24px;
  }

  .hero-inner,
  .conv-hero__inner {
    min-height: 0;
  }

  .hero-title-wrap,
  .conv-hero__title-wrap {
    margin-top: 24px;
  }

  .hero-eyebrow,
  .conv-hero__eyebrow {
    gap: 10px;
    font-size: 0.56rem;
    letter-spacing: 0.28em;
  }

  .conv-hero__eyebrow > span {
    width: 22px;
  }

  .hero-title-spacer,
  .conv-hero__title-spacer {
    height: clamp(112px, 31vw, 170px);
  }

  .conv-hero__content {
    margin-top: 2px;
  }

  .conv-hero__tagline {
    max-width: 640px;
    font-size: clamp(1.8rem, 8.8vw, 3rem);
    line-height: 1.12;
  }

  .conv-hero__actions {
    width: 100%;
    margin-top: 27px;
  }

  .conv-hero__button {
    min-width: 0;
    min-height: 52px;
    padding: 13px 22px;
    font-size: 0.85rem;
  }

  .conv-hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 62px;
    border-radius: 22px;
  }

  .conv-hero__stat {
    flex-direction: column;
    align-items: flex-start;
    gap: 13px;
    padding: 22px 18px;
  }

  .conv-hero__stat + .conv-hero__stat::before {
    top: 16%;
    bottom: 16%;
  }

  .conv-hero__stat:nth-child(3)::before {
    display: none;
  }

  .conv-hero__stat-icon {
    width: 48px;
    height: 48px;
  }

  .conv-hero__stat-number {
    font-size: clamp(1.45rem, 6.8vw, 2rem);
  }

  .conv-hero__stat-copy > span {
    margin-top: 6px;
    font-size: 0.76rem;
  }
}

@media (max-width: 440px) {
  .conv-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .conv-hero__button {
    width: 100%;
  }

  .conv-hero__stats {
    grid-template-columns: 1fr;
  }

  .conv-hero__stat {
    flex-direction: row;
    align-items: center;
  }

  .conv-hero__stat + .conv-hero__stat::before {
    top: 0;
    right: 8%;
    bottom: auto;
    left: 8%;
    width: auto;
    height: 1px;
    background:
      linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.13),
        transparent
      );
  }

  .conv-hero__stat:nth-child(3)::before {
    display: block;
  }

  .conv-hero__stat:nth-child(n + 3) {
    border-top: 0;
  }
}

@media (max-height: 820px) and (min-width: 768px) {
  .hero,
  .conv-hero {
    min-height: 760px;
    padding-top: 120px;
  }

  .hero-title-wrap,
  .conv-hero__title-wrap {
    margin-top: 8px;
  }

  .hero-title-spacer,
  .conv-hero__title-spacer {
    height: clamp(166px, 17vw, 232px);
  }

  .conv-hero__actions {
    margin-top: 24px;
  }

  .conv-hero__stats {
    margin-top: 45px;
  }
}

/* ---------- WAVY VIDEO ---------- */
.wave-section {
  position: relative;
  width: 100%;
  height: clamp(300px, 48vw, 620px);
  margin-top: -40px;
  overflow: hidden;
  z-index: 3;
}
.wave-canvas-holder {
  position: absolute; inset: 0;
  clip-path: url(#waveClip);
  -webkit-clip-path: url(#waveClip);
}
.wave-canvas {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  filter: saturate(120%) contrast(105%);
}
.wave-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(3,3,5,0.35) 0%, transparent 30%, transparent 70%, rgba(3,3,5,0.65) 100%);
  clip-path: url(#waveClip);
  -webkit-clip-path: url(#waveClip);
  pointer-events: none;
}
.wave-theme {
  position: absolute;
  left: 50%; bottom: 8%;
  transform: translateX(-50%);
  z-index: 4;
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: rgba(247,247,248,0.7);
  text-align: center;
}
.wave-theme strong {
  display: block;
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: clamp(0.9rem, 1.4vw, 1.15rem);
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--text-primary);
  margin-top: 6px;
}
/* =========================================================
   INTRO SECTION — RESPONSIVE VISIBILITY FIX
========================================================= */

.section--intro {
    position: relative;
    overflow: visible !important;
    padding: clamp(80px, 10vw, 150px) 0 !important;
}

.section--intro .container {
    overflow: visible !important;
}

.intro-statement {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 64px);
font-weight:590;
    overflow: visible !important;

    text-align: center;
    font-size: clamp(44px, 5vw, 88px) !important;
    line-height: 1.14 !important;
    letter-spacing: -0.035em;
}

/*
 * The old overflow:hidden was cutting the text
 * after resizing the browser.
 */
.intro-statement .line {
    display: block;
    overflow: visible !important;

    min-height: 1.14em;
    padding: 0.04em 0 0.1em;
}

/*
 * Cancel old GSAP/CSS transforms.
 * The complete paragraph will still animate using .fade-in.
 */
.intro-statement .line > span {
    display: inline-block;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
    translate: none !important;
    rotate: none !important;
    scale: none !important;

    clip-path: none !important;
    filter: none !important;
}

/* Laptop and smaller desktop */
@media (max-width: 1200px) {

    .intro-statement {
        font-size: clamp(40px, 5.8vw, 68px) !important;
        line-height: 1.16 !important;
    }
}

/* Tablet */
@media (max-width: 900px) {

    .section--intro {
        padding: 80px 0 !important;
    }

    .intro-statement {
        padding-inline: 28px;

        font-size: clamp(34px, 6.8vw, 56px) !important;
        line-height: 1.17 !important;
    }
}

/* Mobile */
@media (max-width: 600px) {

    .section--intro {
        padding: 68px 0 !important;
    }

    .intro-statement {
        padding-inline: 18px;

        font-size: clamp(29px, 9vw, 43px) !important;
        line-height: 1.2 !important;
        letter-spacing: -0.025em;
    }

    .intro-statement .line {
        min-height: 0;
        padding-block: 0.05em;
    }
}

/* =========================================================
   UPCOMING EVENTS — SCROLL EXPERIENCE

   Layout:
   1. Intro heading on the left and description on the right.
   2. Sticky event display below the intro.
   3. Date tabs, title, date/venue and CTA on the left.
   4. Crossfading event image on the right.
========================================================= */

body.page-template-template-conveners-home {
    --conv-events-flow-top: 112px;
}
.conv-events-flow-label {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 30px;
    padding: 10px 21px;
    border: 1px solid rgba(133, 94, 255, 0.38);
    border-radius: 999px;
    background: rgba(90, 47, 155, 0.075);
    color: #bda7ff;
    font-family: "Space Grotesk", sans-serif;
    font-size: 0.73rem;
    font-weight: 500;
    letter-spacing: 0.25em;
    line-height: 1;
    text-transform: uppercase;
}


.conv-events-flow-label-dot {
    display: block;
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #895eff;
    box-shadow: 0 0 0 4px rgba(137, 94, 255, 0.09), 0 0 15px rgba(137, 94, 255, 0.85);
}
.conv-events-flow,
.conv-events-flow *,
.conv-events-flow *::before,
.conv-events-flow *::after {
    box-sizing: border-box;
}

.conv-events-flow {
    position: relative;
    width: 100%;
    overflow: clip;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(84, 43, 152, 0.08),
            transparent 30%
        ),
        #030305;
    color: #f7f7f8;
}

/* =========================================================
   INTRO — HEADING LEFT / DESCRIPTION RIGHT
========================================================= */

.conv-events-flow__intro {
    padding-top:0px!important;
    display: grid;
    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(340px, 0.76fr);
    gap: clamp(60px, 9vw, 165px);
    align-items: end;
    width: min(calc(100% - 96px), 1680px);
    max-width: none;
    margin: 0 auto;
    padding: clamp(105px, 10vw, 160px) 0 clamp(78px, 7vw, 112px);
}

.conv-events-flow__intro h2 {
    max-width: 800px;
    margin: 0;
    padding: 0;
    font-weight:650;
    color: #f7f7f8 !important;
    font-family: var(--font-sans, "Manrope", Arial, sans-serif);
       font-size: clamp(56px, 5.5vw, 94px) !important;
    letter-spacing: -0.065em;
    line-height: 0.92;
}

.conv-events-flow__intro h2 span {
    display: block;
    color: transparent;
    background:
        linear-gradient(
            105deg,
            #f7f7f8 0%,
            #ae98ff 42%,
            #7f70e9 68%,
            #65cbd0 100%
        );
    -webkit-background-clip: text;
    background-clip: text;
}

.conv-events-flow__intro p {
    max-width: 620px;
    margin: 0 0 7px;
    padding: 0;
    color: rgba(184, 181, 193, 0.78);
    font-family: var(--font-sans, "Manrope", Arial, sans-serif);
    font-size: clamp(1rem, 1.35vw, 1.22rem);
    font-weight: 400;
    line-height: 1.72;
}

/* =========================================================
   SCROLL DISTANCE AND STICKY VIEWPORT
========================================================= */

.conv-events-flow__scroll {
    position: relative;
    height: calc(var(--conv-events-count, 4) * 100vh);
    height: calc(var(--conv-events-count, 4) * 100svh);
    min-height: 3000px;
}

.conv-events-flow__sticky {
    position: sticky;
    z-index: 3;
    top: var(--conv-events-flow-top);
    width: 100%;
    height: calc(100vh - var(--conv-events-flow-top));
    height: calc(100svh - var(--conv-events-flow-top));
    min-height: 650px;
    overflow: hidden;
    background: #030305;
}

/* =========================================================
   MAIN EVENT LAYOUT
========================================================= */

.conv-events-flow__layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.92fr)
        minmax(520px, 1.08fr);
    gap: clamp(58px, 6.5vw, 118px);
    align-items: stretch;
    width: min(calc(100% - 96px), 1680px);
    height: 100%;
    margin: 0 auto;
    padding: clamp(24px, 3.2vh, 42px) 0 clamp(28px, 4vh, 52px);
}

/* =========================================================
   LEFT SIDE
========================================================= */

.conv-events-flow__left {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    height: 100%;
    padding: 0;
}

/* =========================================================
   DATE TABS
========================================================= */

.conv-events-flow__tabs {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 3px;
    width: min(100%, 480px);
    max-width: 100%;
    margin: 0;
    padding: 6px;
    overflow-x: auto;
    border: 1px solid rgba(118, 80, 181, 0.15);
    border-radius: 999px;
    background: rgba(7, 6, 13, 0.96);
    box-shadow:
        0 16px 45px rgba(0, 0, 0, 0.34),
        inset 0 0 0 1px rgba(255, 255, 255, 0.015);
    scrollbar-width: none;
}

.conv-events-flow__tabs::-webkit-scrollbar {
    display: none;
}

.conv-events-flow__tab {
    flex: 1 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    min-height: 50px;
    margin: 0;
    padding: 11px 18px;
    border: 1px solid transparent;
    border-radius: 999px;
    outline: none;
    background: transparent;
    color: rgba(244, 241, 248, 0.78);
    font-family: var(--font-sans, "Manrope", Arial, sans-serif);
    font-size: 0.93rem;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    transition:
        color 0.3s ease,
        border-color 0.35s ease,
        background 0.35s ease,
        box-shadow 0.35s ease,
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-events-flow__tab:hover {
    color: #fff;
}

.conv-events-flow__tab.is-active {
    border-color: #8b5cff;
    background: rgba(104, 62, 188, 0.12);
    color: #fff;
    box-shadow:
        0 0 0 1px rgba(139, 92, 255, 0.12),
        0 0 24px rgba(108, 65, 204, 0.2);
}

.conv-events-flow__tab:focus-visible {
    outline: 2px solid #65cbd0;
    outline-offset: 3px;
}

/* =========================================================
   EVENT COPY
========================================================= */

.conv-events-flow__copy {
    max-width: 720px;
    margin-top: auto;
    margin-bottom: clamp(42px, 8.5vh, 105px);
    padding: 0;
    opacity: 1;
    transform: translateY(0);
    will-change: opacity, transform;
    transition:
        opacity 0.36s ease,
        transform 0.58s cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-events-flow__copy h3 {
    max-width: 720px;
    margin: 0;
    padding: 0;
    color: #f8f7fa;
    font-family: var(--font-sans, "Manrope", Arial, sans-serif);
    font-size: clamp(3rem, 4.55vw, 5.35rem);
    font-weight: 530;
    letter-spacing: -0.055em;
    line-height: 1.03;
}

.conv-events-flow__details {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 25px;
    color: rgba(162, 159, 169, 0.68);
    font-family: var(--font-mono, "Space Grotesk", monospace);
    font-size: 0.69rem;
    font-weight: 500;
    letter-spacing: 0.17em;
    line-height: 1.55;
    text-transform: uppercase;
}

/* Hidden compatibility fields from the PHP stay hidden. */
#conv-flow-category[hidden],
#conv-flow-location[hidden],
#conv-flow-description[hidden] {
    display: none !important;
}

/* =========================================================
   VIEW EVENT BUTTON
========================================================= */

.conv-events-flow__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-width: 168px;
    min-height: 54px;
    margin-top: clamp(48px, 7vh, 78px);
    padding: 14px 27px;
    border: 1px solid rgba(151, 105, 255, 0.9);
    border-radius: 999px;
    background: linear-gradient(135deg, #7148f0 0%, #9a5cff 100%);
    color: #fff;
    font-family: var(--font-sans, "Manrope", Arial, sans-serif);
    font-size: 0.92rem;
    font-weight: 650;
    line-height: 1;
    text-decoration: none;
    box-shadow: 0 14px 38px rgba(96, 48, 190, 0.28);
    transition:
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.35s ease,
        box-shadow 0.35s ease,
        opacity 0.34s ease;
}

.conv-events-flow__cta:hover {
    color: #fff;
    filter: brightness(1.08);
    transform: translateY(-3px);
    box-shadow:
        0 18px 44px rgba(103, 52, 204, 0.36),
        0 0 28px rgba(139, 92, 255, 0.14);
}

.conv-events-flow__cta span:last-child {
    font-size: 1.18rem;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-events-flow__cta:hover span:last-child {
    transform: translateX(5px);
}

/* =========================================================
   RIGHT IMAGE
========================================================= */

.conv-events-flow__media {
    position: relative;
    align-self: center;
    min-width: 0;
    width: 100%;
    height: min(76vh, 770px);
    height: min(76svh, 770px);
    min-height: 560px;
    overflow: hidden;
    border: 1px solid rgba(128, 82, 208, 0.16);
    border-radius: clamp(24px, 2vw, 34px);
    background: #09090d;
    box-shadow: 0 36px 95px rgba(0, 0, 0, 0.38);
    isolation: isolate;
}

.conv-events-flow__image {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    opacity: 0;
    transform: scale(1.045);
    filter: saturate(1.02) contrast(1.02);
    will-change: opacity, transform;
    transition:
        opacity 0.78s cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-events-flow__image.is-active {
    z-index: 2;
    opacity: 1;
    transform: scale(1);
}

.conv-events-flow__media-shade {
    position: absolute;
    z-index: 4;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(3, 3, 5, 0.08) 0%,
            transparent 22%
        ),
        linear-gradient(
            180deg,
            rgba(3, 3, 5, 0.02) 55%,
            rgba(3, 3, 5, 0.18) 100%
        );
}

/* =========================================================
   EVENT CHANGE TRANSITION
========================================================= */

.conv-events-flow.is-changing .conv-events-flow__copy {
    opacity: 0;
    transform: translateY(24px);
}

/* =========================================================
   INVISIBLE SCROLL CHECKPOINTS
========================================================= */

.conv-events-flow__steps {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: none;
}

.conv-events-flow__step {
    flex: 0 0 100vh;
    flex-basis: 100svh;
    width: 100%;
}

/* =========================================================
   WORDPRESS ADMIN BAR
========================================================= */

body.admin-bar.page-template-template-conveners-home {
    --conv-events-flow-top: 144px;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {
    body.page-template-template-conveners-home {
        --conv-events-flow-top: 100px;
    }

    body.admin-bar.page-template-template-conveners-home {
        --conv-events-flow-top: 132px;
    }

    .conv-events-flow__intro,
    .conv-events-flow__layout {
        width: min(calc(100% - 64px), 1480px);
    }

    .conv-events-flow__intro {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 0.8fr);
        gap: 54px;
    }

    .conv-events-flow__layout {
        grid-template-columns:
            minmax(0, 0.92fr)
            minmax(400px, 1.08fr);
        gap: 44px;
    }

    .conv-events-flow__tab {
        min-width: 78px;
        min-height: 46px;
        padding-inline: 14px;
        font-size: 0.82rem;
    }

    .conv-events-flow__copy h3 {
        font-size: clamp(2.55rem, 5vw, 4.4rem);
    }

    .conv-events-flow__media {
        min-height: 520px;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
    body.page-template-template-conveners-home,
    body.admin-bar.page-template-template-conveners-home {
        --conv-events-flow-top: 0px;
    }

    .conv-events-flow {
        overflow: hidden;
    }

    .conv-events-flow__intro {
        grid-template-columns: 1fr;
        gap: 24px;
        width: calc(100% - 40px);
        padding: 82px 0 52px;
    }

    .conv-events-flow__intro h2 {
        font-size: clamp(3.2rem, 15vw, 4.8rem) !important;
    }

    .conv-events-flow__intro p {
        max-width: 100%;
        font-size: 0.96rem;
        line-height: 1.65;
    }

    .conv-events-flow__scroll {
        height: auto;
        min-height: 0;
    }

    .conv-events-flow__sticky {
        position: relative;
        top: auto;
        height: auto;
        min-height: 0;
        overflow: visible;
    }

    .conv-events-flow__layout {
        display: flex;
        flex-direction: column;
        gap: 28px;
        width: calc(100% - 40px);
        height: auto;
        padding: 0 0 72px;
    }

    .conv-events-flow__left {
        min-height: 0;
        height: auto;
    }

    .conv-events-flow__tabs {
        width: 100%;
        max-width: 100%;
    }

    .conv-events-flow__tab {
        flex: 0 0 84px;
        min-width: 84px;
        min-height: 44px;
    }

    .conv-events-flow__copy {
        margin: 52px 0 0;
        padding: 0;
    }

    .conv-events-flow__copy h3 {
        font-size: clamp(2.45rem, 11.5vw, 4rem);
    }

    .conv-events-flow__details {
        margin-top: 18px;
        font-size: 0.62rem;
        letter-spacing: 0.13em;
    }

    .conv-events-flow__cta {
        min-height: 50px;
        margin-top: 34px;
        padding: 13px 23px;
    }

    .conv-events-flow__media {
        order: 2;
        height: 62vh;
        height: 62svh;
        min-height: 420px;
        max-height: 620px;
        border-radius: 24px;
    }

    .conv-events-flow__steps {
        display: none;
    }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
    .conv-events-flow__image,
    .conv-events-flow__copy,
    .conv-events-flow__cta,
    .conv-events-flow__tab {
        transition-duration: 0.01ms !important;
    }
}





/* ---------- SERVICES (pinned stack) ---------- */
.services {
  background: var(--background-main);
  position: relative;
}
.services-inner {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 80px;
  align-items: start;
}
.services-left {
  position: sticky;
  top: 120px;
  align-self: start;
}
.services-left .label { margin-bottom: 22px; }
.services-left h2 {
    
  font-size: clamp(2.4rem, 5.2vw, 4.8rem);
  line-height: 1;
  font-weight: 700;
  letter-spacing: -0.035em;
  margin-bottom: 28px;
}
.services-left p {
  color: var(--text-secondary);
  max-width: 400px;
  line-height: 1.65;
  margin-bottom: 32px;
}
.services-cta {
  display: inline-flex; align-items: center; gap: 12px;
  padding: 14px 22px;
  border: 1px solid var(--border-subtle);
  border-radius: 999px;
  font-size: 0.9rem;
  transition: all 0.35s var(--ease-out);
}
.services-cta:hover {
  border-color: var(--accent-purple-light);
  box-shadow: 0 0 30px var(--purple-glow);
}

.services-stack {
  position: relative;
  min-height: 620px;
}
.service-card {
  position: absolute;
  inset: 0 0 auto 0;
  width: 100%;
  min-height: 460px;
  padding: 42px;
  background: var(--background-card);
  border: 1px solid var(--border-subtle);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  transform-origin: 50% 100%;
  will-change: transform, opacity;
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.03);
}
.service-card:nth-child(1) { transform: rotate(-2deg); }
.service-card:nth-child(2) { transform: rotate(1.5deg); }
.service-card:nth-child(3) { transform: rotate(-1deg); }
.service-card:nth-child(4) { transform: rotate(1deg); }
.service-card:nth-child(5) { transform: rotate(-1.5deg); }

.service-num {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.3em;
  color: var(--accent-teal);
}
.service-icon {
  width: 56px; height: 56px;
  border: 1px solid var(--border-subtle);
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  color: var(--accent-teal);
}
.service-card:nth-child(even) .service-icon { color: var(--accent-purple-light); }
.service-card:nth-child(even) .service-num { color: var(--accent-purple-light); }

.service-card h3 {
  font-size: clamp(1.6rem, 2.6vw, 2.4rem);
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.service-card p {
  color: var(--text-secondary);
  max-width: 440px;
  line-height: 1.6;
}
.service-arrow {
  margin-top: auto;
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 0.85rem;
  color: var(--text-secondary);
  transition: color 0.3s var(--ease-out), transform 0.3s var(--ease-out);
}
.service-card:hover .service-arrow { color: var(--accent-teal); transform: translateX(6px); }
.service-card:nth-child(even):hover .service-arrow { color: var(--accent-purple-light); }

@media (max-width: 900px) {
  .services-inner { grid-template-columns: 1fr; gap: 40px; }
  .services-left { position: static; }
  .services-stack { min-height: 0; display: flex; flex-direction: column; gap: 20px; }
  .service-card { position: static; transform: none !important; min-height: 0; padding: 32px; }
}

/* ---------- SPEAKERS ---------- */
.speakers-head {
  max-width: 900px;
  margin-bottom: clamp(60px, 8vw, 100px);
}
.speakers-head h2 {
  font-size: clamp(2.4rem, 6vw, 5.2rem);
  line-height: 1;
  font-weight: 700;
  letter-spacing: -0.035em;
  margin: 20px 0 24px;
}
.speakers-head p {
  color: var(--text-secondary);
  max-width: 560px;
  line-height: 1.6;
  font-size: clamp(0.95rem, 1.15vw, 1.05rem);
}
.speakers-head .accent-line {
  width: 80px; height: 2px;
  background: linear-gradient(90deg, var(--accent-teal), var(--accent-purple-light));
  margin-top: 24px;
}

.speaker-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(30px, 5vw, 80px);
  align-items: center;
  padding: clamp(40px, 6vw, 80px) 0;
  border-top: 1px solid var(--border-subtle);
}
.speaker-row:last-of-type { border-bottom: 1px solid var(--border-subtle); }
.speaker-row.reverse .speaker-portrait { order: 2; }
.speaker-row.reverse .speaker-details { order: 1; }

.speaker-portrait {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 4px;
  background: var(--background-card);
  transition: transform 0.6s var(--ease-out);
}
.speaker-portrait::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(135deg, var(--accent-teal), var(--accent-purple));
  opacity: 0.25;
  z-index: 1;
  mix-blend-mode: screen;
  transition: opacity 0.5s var(--ease-out);
}
.speaker-portrait .frame {
  position: absolute; inset: 12px;
  border: 1px solid rgba(255,255,255,0.08);
  z-index: 2;
  transition: border-color 0.5s var(--ease-out);
  pointer-events: none;
}
.speaker-portrait .art {
  position: absolute; inset: 0;
  background-size: cover; background-position: center top;
  transition: transform 0.9s var(--ease-out);
}
.speaker-row:hover .speaker-portrait .art { transform: scale(1.04); }
.speaker-row:hover .speaker-portrait .frame { border-color: var(--accent-teal); box-shadow: 0 0 40px var(--teal-glow); }
.speaker-row:nth-of-type(even):hover .speaker-portrait .frame { border-color: var(--accent-purple-light); box-shadow: 0 0 40px var(--purple-glow); }

.speaker-details .num {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.3em;
  color: var(--text-secondary);
  margin-bottom: 20px;
  display: block;
}
.speaker-details h3 {
  font-size: clamp(2rem, 3.6vw, 3.2rem);
  line-height: 1.02;
  font-weight: 700;
  letter-spacing: -0.03em;
  margin-bottom: 6px;
}
.speaker-details .qual {
  color: var(--text-secondary);
  font-size: 0.9rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-family: var(--font-mono);
  margin-bottom: 18px;
}
.speaker-details .designation {
  font-size: 1.05rem;
  color: var(--text-primary);
  margin-bottom: 4px;
}
.speaker-details .org {
  color: var(--text-secondary);
  margin-bottom: 20px;
  font-size: 0.95rem;
}
.speaker-details .country {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--text-secondary);
  margin-bottom: 22px;
}
.speaker-details .flag {
  width: 20px; height: 14px;
  background: var(--background-card);
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  display: inline-block;
  background-size: cover;
}
.speaker-details .bio {
  color: var(--text-secondary);
  line-height: 1.65;
  max-width: 460px;
  margin-bottom: 26px;
}
.speaker-actions {
  display: flex; align-items: center; gap: 20px;
}
.speaker-view {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 0.9rem;
  color: var(--text-primary);
  padding-bottom: 4px;
  border-bottom: 1px solid var(--border-subtle);
  transition: all 0.35s var(--ease-out);
}
.speaker-view:hover { color: var(--accent-teal); border-bottom-color: var(--accent-teal); }
.speaker-view .arrow { transition: transform 0.3s var(--ease-out); display: inline-block; }
.speaker-view:hover .arrow { transform: translateX(6px); }
.speaker-linkedin {
  width: 34px; height: 34px;
  border: 1px solid var(--border-subtle);
  border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--text-secondary);
  transition: all 0.35s var(--ease-out);
}
.speaker-linkedin:hover { color: var(--accent-teal); border-color: var(--accent-teal); }

@media (max-width: 800px) {
  .speaker-row { grid-template-columns: 1fr; padding: 40px 0; }
  .speaker-row.reverse .speaker-portrait { order: 0; }
  .speaker-row.reverse .speaker-details { order: 1; }
  .speaker-portrait { max-width: 420px; }
}

/* ---------- FOOTER STRIP ---------- */
.footer-strip {
  padding: 30px 0;
  border-top: 1px solid var(--border-subtle);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--text-secondary);
}
.footer-strip .container {
  display: flex; justify-content: space-between; align-items: center; gap: 20px;
}

/* Fade-up utility */
.fade-up { opacity: 0; transform: translateY(30px); }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  .fade-up,
  .hero-eyebrow,
  .conv-hero__eyebrow,
  .conv-hero__content,
  .conv-hero__stats,
  .conv-hero__stat {
    opacity: 1 !important;
    transform: none !important;
  }
  .intro-statement .line > span { transform: none !important; }
}

/* ---------- WAVE VIDEO ---------- */
.wave-video {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  filter: saturate(115%) contrast(105%) brightness(0.85);
}

/* =========================================================
   WORDPRESS / ASTRA FULL-WIDTH DARK HOMEPAGE FIX
========================================================= */

html,
body.page-template-template-conveners-home {
    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
    color: #ffffff;
}

body.page-template-template-conveners-home {
    overflow-x: hidden;
}


/* Main Astra page wrapper */

body.page-template-template-conveners-home #page,
body.page-template-template-conveners-home .site,
body.page-template-template-conveners-home #content,
body.page-template-template-conveners-home .site-content {
    
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
}


/* Remove Astra boxed container */

body.page-template-template-conveners-home
.site-content > .ast-container,
body.page-template-template-conveners-home
#content > .ast-container,
body.page-template-template-conveners-home
.ast-container {
    display: block !important;

    
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
}


/* Remove Astra content-column width */

body.page-template-template-conveners-home #primary,
body.page-template-template-conveners-home .content-area,
body.page-template-template-conveners-home .site-main,
body.page-template-template-conveners-home article,
body.page-template-template-conveners-home .entry-content {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
}


/* Custom homepage wrapper */

body.page-template-template-conveners-home .cv-home-main,
body.page-template-template-conveners-home main {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden;

    background: #030305 !important;
}


/* Make every homepage section dark by default */

body.page-template-template-conveners-home
.cv-home-main section {
    margin: 0;

    background-color: #030305;
}


/* Remove paragraph margins that may create gaps */

body.page-template-template-conveners-home
.cv-home-main > section:first-child {
    margin-top: 0 !important;
}


/* Dark Astra footer on this homepage */

body.page-template-template-conveners-home
.site-footer,
body.page-template-template-conveners-home
.site-primary-footer-wrap,
body.page-template-template-conveners-home
.site-below-footer-wrap {
    border-color: rgba(255, 255, 255, 0.1) !important;

    background: #030305 !important;
    color: #ffffff;
}

/* =========================================================
   TWO VIDEO TESTIMONIALS — REFERENCE DESIGN
========================================================= */

.cvt2-testimonials,
.cvt2-testimonials *,
.cvt2-testimonials *::before,
.cvt2-testimonials *::after {
    box-sizing: border-box;
}


.cvt2-testimonials {
    position: relative;

    width: 100%;
    padding: clamp(90px, 9vw, 145px) 0;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 4% 18%,
            rgba(84, 43, 152, 0.13),
            transparent 31%
        ),
        #030305;

    color: #f7f7f8;
}


.cvt2-testimonials__glow {
    position: absolute;

    top: 6%;
    left: -220px;

    width: 520px;
    height: 520px;

    border-radius: 50%;

    background: rgba(84, 43, 152, 0.11);

    filter: blur(130px);

    pointer-events: none;
}


.cvt2-testimonials__container {
    position: relative;
    z-index: 2;

    width: min(calc(100% - 128px), 1380px);
    margin-inline: auto;
}


/* =========================================================
   HEADING
========================================================= */

.cvt2-testimonials__heading {
    max-width: 750px;
    margin-bottom: clamp(48px, 5vw, 78px);

    opacity: 0;

    transform: translateY(42px);

    transition:
        opacity 0.9s var(--ease-out),
        transform 0.95s var(--ease-out);
}


.cvt2-testimonials.is-in-view
.cvt2-testimonials__heading {
    opacity: 1;
    transform: translateY(0);
}


.cvt2-testimonials__label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 22px;
    padding: 8px 15px;

    border: 1px solid rgba(118, 80, 181, 0.26);
    border-radius: 999px;

    background: rgba(84, 43, 152, 0.06);

    color: #b59aff;

    font-family: var(--font-mono);
    font-size: 0.67rem;
    font-weight: 500;
    letter-spacing: 0.22em;
    line-height: 1;
    text-transform: uppercase;
}


.cvt2-testimonials__label span {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #7650b5;

    box-shadow:
        0 0 0 4px rgba(118, 80, 181, 0.08),
        0 0 15px rgba(118, 80, 181, 0.8);
}


.cvt2-testimonials__heading h2 {
    max-width: 720px;
    margin: 0;

    color: #f7f7f8 !important;

    font-family: var(--font-sans) !important;
    font-size: clamp(3.25rem, 5.5vw, 6rem) !important;
    font-weight: 600 !important;
    letter-spacing: -0.06em;
    line-height: 0.96;
}


.cvt2-testimonials__heading h2 strong {
    display: block;

    font-weight: inherit;

    color: transparent;

    background:
        linear-gradient(
            90deg,
            #9677ff 0%,
            #7f79ee 47%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}


/* =========================================================
   STAGE
========================================================= */

.cvt2-testimonials__stage {
    position: relative;

    width: 100%;

    opacity: 0;

    transform: translateY(52px);

    transition:
        opacity 1s var(--ease-out) 120ms,
        transform 1s var(--ease-out) 120ms;
}


.cvt2-testimonials.is-in-view
.cvt2-testimonials__stage {
    opacity: 1;
    transform: translateY(0);
}


.cvt2-testimonial {
    display: none;

    grid-template-columns:
        minmax(320px, 430px)
        minmax(0, 1fr);

    gap: clamp(58px, 7vw, 120px);
    align-items: center;

    width: 100%;
}


.cvt2-testimonial.is-active {
    display: grid;

    animation:
        cvt2-testimonial-enter
        0.7s
        var(--ease-out)
        both;
}


@keyframes cvt2-testimonial-enter {

    from {
        opacity: 0;
        transform: translateY(24px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================================
   VIDEO
========================================================= */

.cvt2-testimonial__media {
    width: 100%;
}


.cvt2-testimonial__video-wrap {
    position: relative;

    width: 100%;
    aspect-ratio: 4 / 5;

    overflow: hidden;

    border: 1px solid rgba(118, 80, 181, 0.18);
    border-radius: 20px;

    background: #050507;

    box-shadow:
        0 28px 75px rgba(0, 0, 0, 0.42),
        0 0 60px rgba(84, 43, 152, 0.08);
}


.cvt2-testimonial__video {
    position: absolute;

    z-index: 1;
    inset: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center top;

    background: #050507;
}


.cvt2-testimonial__overlay {
    position: absolute;

    z-index: 2;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(3, 3, 5, 0.01) 50%,
            rgba(3, 3, 5, 0.42) 100%
        );

    pointer-events: none;

    transition: opacity 0.35s ease;
}


.cvt2-testimonial.is-playing
.cvt2-testimonial__overlay {
    opacity: 0;
}


/* =========================================================
   PLAY BUTTON
========================================================= */

.cvt2-testimonial__play {
    position: absolute;

    z-index: 5;
    top: 50%;
    left: 50%;

    display: grid;
    place-items: center;

    width: 62px;
    height: 62px;
    padding: 0;

    border: 0;
    border-radius: 50%;

    background: #ffffff;
    color: #08080b;

    cursor: pointer;

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

    box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.32);

    transition:
        opacity 0.3s ease,
        transform 0.35s var(--ease-out),
        box-shadow 0.35s ease;
}


.cvt2-testimonial__play:hover {
    transform:
        translate(-50%, -50%)
        scale(1.08);

    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.42),
        0 0 28px rgba(101, 203, 208, 0.22);
}


.cvt2-testimonial__play svg {
    margin-left: 3px;
}


.cvt2-testimonial.is-playing
.cvt2-testimonial__play {
    opacity: 0;
    pointer-events: none;
}


/* =========================================================
   QUOTE
========================================================= */

.cvt2-testimonial__content {
    width: 100%;
    max-width: 690px;
}


.cvt2-testimonial__quote-icon {
    margin-bottom: 25px;

    color: #65cbd0;
}


.cvt2-testimonial__content blockquote {
    margin: 0;

    color: rgba(247, 247, 248, 0.93);

    font-family: var(--font-sans);
    font-size: clamp(1.45rem, 2.15vw, 2.2rem);
    font-weight: 400;
    letter-spacing: -0.025em;
    line-height: 1.38;
}


.cvt2-testimonial__person {
    margin-top: 32px;
}


.cvt2-testimonial__person h3 {
    margin: 0 0 5px;

    color: #f7f7f8;

    font-family: var(--font-sans);
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.3;
}


.cvt2-testimonial__person p {
    margin: 0;

    color: rgba(184, 186, 195, 0.58);

    font-family: var(--font-mono);
    font-size: 0.67rem;
    letter-spacing: 0.04em;
    line-height: 1.5;
}


/* =========================================================
   NAVIGATION
========================================================= */

.cvt2-testimonial__navigation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;

    max-width: 500px;
    margin-top: 50px;
}


.cvt2-testimonial__progress {
    display: flex;
    align-items: center;
    gap: 10px;

    flex: 1;
}


.cvt2-testimonial__progress-button {
    flex: 1;

    height: 20px;
    padding: 9px 0;

    border: 0;

    cursor: pointer;
}


.cvt2-testimonial__progress-button span {
    display: block;

    width: 100%;
    height: 2px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.16);

    transition:
        background 0.35s ease,
        box-shadow 0.35s ease;
}


.cvt2-testimonial__progress-button.is-active span {
    background:
        linear-gradient(
            90deg,
            #7650b5,
            #65cbd0
        );

    box-shadow:
        0 0 15px rgba(101, 203, 208, 0.2);
}


.cvt2-testimonial__arrows {
    display: flex;
    gap: 9px;
}


.cvt2-testimonial__arrows button {
    display: grid;
    place-items: center;

    width: 43px;
    height: 43px;
    padding: 0;

    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.015);
    color: #f7f7f8;

    transition:
        border-color 0.3s ease,
        color 0.3s ease,
        background 0.3s ease,
        transform 0.3s var(--ease-out);
}


.cvt2-testimonial__arrows button:hover {
    border-color: #7650b5;

    background: rgba(118, 80, 181, 0.09);
    color: #65cbd0;

    transform: translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

    .cvt2-testimonials__container {
        width: calc(100% - 64px);
    }

    .cvt2-testimonial {
        grid-template-columns:
            minmax(280px, 380px)
            minmax(0, 1fr);

        gap: 52px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .cvt2-testimonials {
        padding: 82px 0 90px;
    }

    .cvt2-testimonials__container {
        width: calc(100% - 40px);
    }

    .cvt2-testimonials__heading {
        margin-bottom: 42px;
    }

    .cvt2-testimonials__heading h2 {
        font-size:
            clamp(3rem, 14vw, 4.5rem) !important;
    }

    .cvt2-testimonial {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .cvt2-testimonial__media {
        max-width: 420px;
    }

    .cvt2-testimonial__content blockquote {
        font-size: clamp(1.3rem, 6vw, 1.75rem);
    }

    .cvt2-testimonial__navigation {
        margin-top: 38px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .cvt2-testimonials__heading,
    .cvt2-testimonials__stage,
    .cvt2-testimonial.is-active {
        opacity: 1 !important;
        transform: none !important;
        animation: none !important;
        transition: none !important;
    }

}

/* =========================================================
   PARTNERS MARQUEE SECTION
========================================================= */
.conv-partners-title {

    margin: 0;
    color: #f7f7f8 !important;
    font-family: var(--font-sans) !important;
    font-size: clamp(3.25rem, 5.5vw, 6rem) !important;
    font-weight: 600 !important;
    letter-spacing: -0.06em;
    line-height: 0.96;
}
.text-gradient {
        display: block;
    font-weight: inherit;
    color: transparent;
    background: linear-gradient(90deg, rgb(150, 119, 255) 0%, rgb(127, 121, 238) 47%, rgb(101, 203, 208) 100%) text;
}

.conv-partners {
    position: relative;
    padding: 120px 0 110px;
    overflow: hidden;
    background: #030305;
}

.conv-partners__container {
    position: relative;
}

.conv-partners__head {
    max-width: 920px;
    margin: 0 auto 54px;
    text-align: center;
}

.conv-partners__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 28px;
    padding: 10px 22px;

    border: 1px solid rgba(118, 80, 181, 0.28);
    border-radius: 999px;

    background: rgba(84, 43, 152, 0.08);
    color: #b39cff;

    font-family: "Space Grotesk", sans-serif;
    font-size: 0.76rem;
    font-weight: 500;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    line-height: 1;
}

.conv-partners__dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #8a63ff;
    box-shadow: 0 0 16px rgba(138, 99, 255, 0.8);
}

.conv-partners__title {
    margin: 0;
    color: #f7f7f8;
    font-family: "Manrope", sans-serif;
       font-size: clamp(56px, 5.5vw, 94px) !important;
    font-weight: 500;
    line-height: 1.06;
    letter-spacing: -0.04em;
}

.conv-partners__marquee {
    position: relative;
    overflow: hidden;
    width: 100%;

    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0%,
        rgba(0, 0, 0, 1) 10%,
        rgba(0, 0, 0, 1) 90%,
        transparent 100%
    );
    mask-image: linear-gradient(
        to right,
        transparent 0%,
        rgba(0, 0, 0, 1) 10%,
        rgba(0, 0, 0, 1) 90%,
        transparent 100%
    );
}

.conv-partners__track {
    display: flex;
    align-items: center;
    gap: 28px;
    width: max-content;
    animation: convPartnersMarquee 34s linear infinite;
    will-change: transform;
}

.conv-partners__marquee:hover .conv-partners__track {
    animation-play-state: paused;
}

.conv-partners__item {
   display: flex;
    align-items: center;
    justify-content: center;
    min-width: 175px;
    margin-top: 20px;
    height: 83px;
    padding: 0px 0px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 19px;
    background: rgba(255, 255, 255, 0.015);
    text-decoration: none;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.conv-partners__item img {
    max-width: 100%;
    max-height: 50px;
    width: auto;
    height: auto;
    object-fit: contain;

    filter: grayscale(100%) brightness(0.9) opacity(0.9);
    transition:
        filter 0.35s ease,
        opacity 0.35s ease,
        transform 0.35s ease;
}

.conv-partners__item:hover {
    transform: translateY(-3px);
    border-color: rgba(138, 99, 255, 0.75);
    background: rgba(255, 255, 255, 0.025);
    box-shadow:
        0 0 0 1px rgba(138, 99, 255, 0.18),
        0 0 18px rgba(138, 99, 255, 0.24),
        0 0 36px rgba(138, 99, 255, 0.12);
}

.conv-partners__item:hover img {
    filter: grayscale(0%) brightness(1) opacity(1);
    transform: scale(1.02);
}

@keyframes convPartnersMarquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50% - 14px));
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {
    .conv-partners {
        padding: 95px 0 90px;
    }

    .conv-partners__head {
        margin-bottom: 46px;
    }

    .conv-partners__item {
        min-width: 240px;
        height: 84px;
        border-radius: 24px;
    }

    .conv-partners__item img {
        max-height: 34px;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
    .conv-partners {
        padding: 78px 0 74px;
    }

    .conv-partners__eyebrow {
        margin-bottom: 20px;
        padding: 9px 18px;
        font-size: 0.64rem;
        letter-spacing: 0.16em;
    }

    .conv-partners__title {
        font-size: clamp(2rem, 10vw, 3rem);
        line-height: 1.08;
    }

    .conv-partners__head {
        margin-bottom: 36px;
    }

    .conv-partners__track {
        gap: 18px;
        animation-duration: 26s;
    }

    .conv-partners__item {
        min-width: 200px;
        height: 72px;
        padding: 14px 20px;
        border-radius: 20px;
    }

    .conv-partners__item img {
        max-height: 38px;
    }
}

/* =========================================================
   ASTRA HEADER — CONTENT WIDTH ON CUSTOM HOMEPAGE
========================================================= */

body.page-template-template-conveners-home
.site-header
.site-primary-header-wrap {
    width: min(
        calc(100% - 128px),
        1380px
    ) !important;

    max-width: none !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
}

/* Ensure the inner Astra grid fills that container only */
body.page-template-template-conveners-home
.site-header
.ast-builder-grid-row {
    width: 100% !important;
    max-width: none !important;
    margin-inline: auto !important;
}

/* Tablet */
@media (max-width: 1024px) {

    body.page-template-template-conveners-home
    .site-header
    .site-primary-header-wrap {
        width: calc(100% - 64px) !important;
    }

}

/* Mobile */
@media (max-width: 767px) {

    body.page-template-template-conveners-home
    .site-header
    .site-primary-header-wrap {
        width: calc(100% - 40px) !important;
    }

}
/* =========================================================
   SERVICES GRID SECTION
========================================================= */

.conv-services-grid-section {
    position: relative;

    width: 100%;
    padding: 130px 0 145px;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 12% 0%,
            rgba(84, 43, 152, 0.14),
            transparent 31%
        ),
        radial-gradient(
            circle at 88% 100%,
            rgba(101, 203, 208, 0.055),
            transparent 30%
        ),
        #07060d;

    color: #f7f7f8;
}

.conv-services-grid-section::before {
    position: absolute;
    inset: 0;

    content: "";
    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.012),
            transparent 22%
        );
}

.conv-services-grid-container {
    position: relative;
    z-index: 2;
}


/* =========================================================
   SERVICES HEADING
========================================================= */
.conv-services-grid-head {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    gap: clamp(60px, 8vw, 150px);
    align-items: end;
    margin-bottom: 82px;
}


.conv-services-grid-heading-column {
    min-width: 0;
}

.conv-services-grid-label {
    display: inline-flex;
    align-items: center;
    gap: 11px;

    margin-bottom: 30px;
    padding: 10px 21px;

    border: 1px solid rgba(133, 94, 255, 0.38);
    border-radius: 999px;

    background: rgba(90, 47, 155, 0.075);

    color: #bda7ff;

    font-family: "Space Grotesk", sans-serif;
    font-size: 0.73rem;
    font-weight: 500;
    letter-spacing: 0.25em;
    line-height: 1;
    text-transform: uppercase;
}

.conv-services-grid-label-dot {
    display: block;
    flex: 0 0 7px;

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #895eff;

    box-shadow:
        0 0 0 4px rgba(137, 94, 255, 0.09),
        0 0 15px rgba(137, 94, 255, 0.85);
}

.conv-services-grid-head h2 {
    max-width: 760px;
    margin: 0;

    color: #f7f7fa;

    font-family: "Manrope", sans-serif;
    font-size: clamp(3.5rem, 6vw, 6.6rem);
    font-weight: 650;
    letter-spacing: -0.06em;
    line-height: 0.98;
}

.conv-services-grid-head h2 span {
    display: block;

    color: transparent;

    background:
        linear-gradient(
            90deg,
            #e6ddff 0%,
            #9a75ff 47%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}

.conv-services-grid-intro {
    max-width: 680px;
    padding-bottom: 11px;
}

.conv-services-grid-intro p {
    margin: 0;

    color: #9d9aa8;

    font-family: "Manrope", sans-serif;
    font-size: clamp(1.05rem, 1.45vw, 1.4rem);
    font-weight: 400;
    line-height: 1.65;
}


/* =========================================================
   FOUR-COLUMN SERVICES GRID
========================================================= */

.conv-services-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 0px;
}


/* =========================================================
   SERVICE CARD
========================================================= */

.conv-service-grid-card {
    position: relative;

    display: flex;
    flex-direction: column;

    min-width: 0;
    min-height: 330px;
    padding: 34px 32px 30px;
    overflow: hidden;

    border: 1px solid rgba(118, 80, 181, 0.23);
    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            rgba(20, 18, 33, 0.94),
            rgba(10, 9, 17, 0.98)
        );

    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.16);

    transform: translateY(0);

    transition:
        transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.5s ease,
        box-shadow 0.5s ease;
}

/*
 * The purple colour enters smoothly from the top-left area.
 */
.conv-service-grid-card::before {
    position: absolute;
    z-index: 0;
    inset: -1px;

    content: "";
    pointer-events: none;

    border-radius: inherit;

    background:
        radial-gradient(
            circle at 10% 2%,
            rgba(130, 82, 255, 0.75) 0%,
            rgba(106, 65, 205, 0.55) 24%,
            rgba(65, 38, 122, 0.28) 48%,
            transparent 74%
        ),
        linear-gradient(
            135deg,
            rgba(118, 80, 181, 0.72),
            rgba(32, 21, 60, 0.34) 55%,
            transparent 100%
        );

    opacity: 0;

    transform:
        translate3d(-18px, 18px, 0)
        scale(0.96);

    transition:
        opacity 0.55s ease,
        transform 0.65s
        cubic-bezier(0.22, 1, 0.36, 1);
}

/*
 * Soft internal shine.
 */
.conv-service-grid-card::after {
    position: absolute;
    z-index: 1;
    inset: 0;

    content: "";
    pointer-events: none;

    border-radius: inherit;

    background:
        linear-gradient(
            115deg,
            rgba(255, 255, 255, 0.095),
            transparent 26%,
            transparent 73%,
            rgba(101, 203, 208, 0.025)
        );

    opacity: 0;

    transition:
        opacity 0.5s ease;
}

.conv-service-grid-card > * {
    position: relative;
    z-index: 2;
}


/* =========================================================
   CARD HOVER
========================================================= */

/* .conv-service-grid-card:hover {
    border-color: rgba(139, 91, 255, 0.8);

    transform: translateY(-10px);

    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(139, 91, 255, 0.15),
        0 0 38px rgba(102, 57, 188, 0.25);
}*/

.conv-service-grid-card:hover {
    border-color: #7c52ff8c;
    transform: translateY(-6px);
    box-shadow: 0 30px 80px -30px #7c52ff8c;}
.conv-service-grid-card:hover::before {
    opacity: 1;

    transform:
        translate3d(0, 0, 0)
        scale(1);
}

.conv-service-grid-card:hover::after {
    opacity: 1;
}


/* =========================================================
   ICON
========================================================= */

.conv-service-grid-icon {
    display: grid;
    place-items: center;

    width: 66px;
    height: 66px;

    margin-bottom: 34px;

    border: 1px solid rgba(133, 94, 255, 0.4);
    border-radius: 22px;

    background: rgba(9, 7, 18, 0.7);
    color: #a88bff;

    transition:
        color 0.45s ease,
        background 0.45s ease,
        border-color 0.45s ease,
        transform 0.55s
        cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.45s ease;
}

.conv-service-grid-icon svg {
    width: 27px;
    height: 27px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.45;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.conv-service-grid-card:hover
.conv-service-grid-icon {
    border-color: rgba(145, 98, 255, 0.85);

    background:
        rgba(23, 13, 45, 0.9);

    color: #f1edff;

    transform:
        translateY(-3px)
        rotate(-2deg)
        scale(1.03);

    box-shadow:
        0 12px 30px rgba(31, 12, 72, 0.28),
        0 0 24px rgba(139, 91, 255, 0.23);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.conv-service-grid-content {
    flex: 1;
}

.conv-service-grid-content h3 {
    margin: 0 0 17px;

    color: #f6f4f9;

    font-family: "Manrope", sans-serif;
    font-size: clamp(1.25rem, 1.55vw, 1.55rem);
    font-weight: 650;
    letter-spacing: -0.025em;
    line-height: 1.25;

    transition:
        color 0.4s ease,
        transform 0.5s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-service-grid-content p {
    margin: 0;

    color: #96929f;

    font-family: "Manrope", sans-serif;
    font-size: 0.98rem;
    line-height: 1.65;

    transition:
        color 0.45s ease,
        transform 0.55s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-service-grid-card:hover
.conv-service-grid-content h3 {
    color: #ffffff;
    transform: translateY(-2px);
}

.conv-service-grid-card:hover
.conv-service-grid-content p {
    color: rgba(245, 241, 255, 0.83);
    transform: translateY(-2px);
}


/* =========================================================
   CARD LINK
========================================================= */

.conv-service-grid-link {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;
    margin-top: 28px;

    color: #716d79;

    font-family: "Manrope", sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;

    transition:
        color 0.4s ease;
}

.conv-service-grid-arrow {
    display: inline-flex;

    font-size: 1.2rem;
    line-height: 1;

    transform: translate3d(0, 0, 0);

    transition:
        color 0.4s ease,
        transform 0.5s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-service-grid-card:hover
.conv-service-grid-link {
    color: rgba(255, 255, 255, 0.78);
}

.conv-service-grid-card:hover
.conv-service-grid-arrow {
    color: #65d3df;

    transform:
        translate3d(4px, -4px, 0);
}

.conv-service-grid-link:focus-visible {
    outline: 2px solid #65cbd0;
    outline-offset: 8px;
    border-radius: 3px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .conv-services-grid-section {
        padding: 110px 0 120px;
    }

    .conv-services-grid-head {
        grid-template-columns: 1fr;
        gap: 34px;

        margin-bottom: 65px;
    }

    .conv-services-grid-intro {
        max-width: 720px;
        padding-bottom: 0;
    }

    .conv-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .conv-service-grid-card {
        min-height: 315px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .conv-services-grid-section {
        padding: 85px 0 95px;
    }

    .conv-services-grid-head {
        margin-bottom: 48px;
    }

    .conv-services-grid-label {
        margin-bottom: 23px;
        padding: 9px 16px;

        font-size: 0.63rem;
        letter-spacing: 0.18em;
    }

    .conv-services-grid-head h2 {
        font-size: clamp(2.8rem, 13vw, 4.3rem);
        line-height: 1;
    }

    .conv-services-grid-intro p {
        font-size: 1rem;
        line-height: 1.65;
    }

    .conv-services-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .conv-service-grid-card {
        min-height: 300px;
        padding: 28px 25px 25px;

        border-radius: 23px;
    }

    .conv-service-grid-icon {
        width: 59px;
        height: 59px;

        margin-bottom: 27px;

        border-radius: 19px;
    }

}


/* =========================================================
   TOUCH DEVICES
========================================================= */

@media (hover: none) {

    .conv-service-grid-card:hover {
        transform: none;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .conv-service-grid-card,
    .conv-service-grid-card::before,
    .conv-service-grid-card::after,
    .conv-service-grid-icon,
    .conv-service-grid-content h3,
    .conv-service-grid-content p,
    .conv-service-grid-arrow {
        transition: none;
    }

}
/* =========================================================
   SERVICES GRID — FINAL VISUAL CORRECTIONS
   Add at the very bottom of services-grid.css
========================================================= */

body.page-template-template-conveners-home
.conv-services-grid-section {
    padding: 120px 0 135px !important;
}

body.page-template-template-conveners-home
.conv-services-grid-container {
    width: calc(100% - 120px) !important;
    max-width: 1640px !important;
}
/* Keep service heading permanently visible */

body.page-template-template-conveners-home
.conv-services-grid-head,

body.page-template-template-conveners-home
.conv-services-grid-heading-column,

body.page-template-template-conveners-home
.conv-services-grid-label,

body.page-template-template-conveners-home
.conv-services-grid-head h2,

body.page-template-template-conveners-home
.conv-services-grid-head h2 span,

body.page-template-template-conveners-home
.conv-services-grid-intro,

body.page-template-template-conveners-home
.conv-services-grid-intro p {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
}

/* ---------------------------------------------------------
   HEADING SPACING
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-services-grid-head {
    align-items: flex-end !important;
    margin-bottom: 72px !important;
}

/*body.page-template-template-conveners-home
.conv-services-grid-heading-column {
    width: 52% !important;
} */

body.page-template-template-conveners-home
.conv-services-grid-intro {
    
   
    padding-bottom: 8px !important;
}

body.page-template-template-conveners-home
.conv-services-grid-head h2 {
    font-size: clamp(56px, 5.5vw, 94px) !important;
    line-height: 0.98 !important;
    letter-spacing: -4px !important;
}

body.page-template-template-conveners-home
.conv-services-grid-intro p {
    font-size: 15px !important;
    line-height: 1.7 !important;
}


/* ---------------------------------------------------------
   GRID SPACING
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-services-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;

    width: calc(100% + 24px) !important;
    margin: -12px !important;
}


/* ---------------------------------------------------------
   CARD SIZE AND PADDING
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-services-grid-section
.conv-service-grid-card {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;

    width: calc(25% - 24px) !important;
    height: 350px !important;
    min-height: 350px !important;

    margin: 12px !important;
    padding: 34px 34px 28px !important;

    border: 1px solid rgba(118, 80, 181, 0.28) !important;
    border-radius: 28px !important;

    background:
        linear-gradient(
            145deg,
            rgba(19, 17, 31, 0.98),
            rgba(8, 7, 14, 0.99)
        ) !important;

    overflow: hidden !important;
}


/* Ensure the card content does not touch the edges */

body.page-template-template-conveners-home
.conv-service-grid-card > * {
    position: relative !important;
    z-index: 3 !important;
}


/* ---------------------------------------------------------
   ICON POSITION AND SIZE
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-service-grid-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 64px !important;

    width: 64px !important;
    height: 64px !important;

    margin: 0 0 30px !important;
    padding: 0 !important;

    border-radius: 21px !important;
}

body.page-template-template-conveners-home
.conv-service-grid-icon svg {
    width: 27px !important;
    height: 27px !important;
    max-width: 27px !important;
    max-height: 27px !important;
}


/* ---------------------------------------------------------
   CARD TYPOGRAPHY
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-service-grid-content {
    display: flex !important;
    flex-direction: column !important;

    flex: 1 1 auto !important;

    width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}

body.page-template-template-conveners-home
.conv-service-grid-content h3 {
    margin: 0 0 15px !important;
    padding: 0 !important;

    color: #f8f7fa !important;

    font-size: clamp(20px, 1.35vw, 25px) !important;
    font-weight: 650 !important;
    letter-spacing: -0.6px !important;
    line-height: 1.25 !important;

    overflow-wrap: break-word !important;
}

body.page-template-template-conveners-home
.conv-service-grid-content p {
    margin: 0 !important;
    padding: 0 !important;

    color: #96939f !important;

    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;

    overflow-wrap: break-word !important;
}


/* ---------------------------------------------------------
   EXPLORE LINK
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-service-grid-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;

    margin: auto 0 0 !important;
    padding: 22px 0 0 !important;

    color: #77727f !important;

    font-size: 14px !important;
    line-height: 1 !important;
}

body.page-template-template-conveners-home
.conv-service-grid-arrow {
    flex: 0 0 auto !important;

    margin-left: 16px !important;

    font-size: 19px !important;
}


/* ---------------------------------------------------------
   IMPROVED HOVER
--------------------------------------------------------- */

body.page-template-template-conveners-home
.conv-services-grid-section
.conv-service-grid-card:hover {
    transform: translateY(-9px) !important;

    border-color: rgba(139, 91, 255, 0.9) !important;

    box-shadow:
        0 28px 65px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(139, 91, 255, 0.16),
        0 0 38px rgba(112, 66, 210, 0.25) !important;
}

body.page-template-template-conveners-home
.conv-service-grid-card:hover::before {
    opacity: 1 !important;
    transform: translate(0, 0) scale(1) !important;
}

body.page-template-template-conveners-home
.conv-service-grid-card:hover
.conv-service-grid-content h3 {
    color: #ffffff !important;
}

body.page-template-template-conveners-home
.conv-service-grid-card:hover
.conv-service-grid-content p {
    color: rgba(247, 244, 255, 0.82) !important;
}

body.page-template-template-conveners-home
.conv-service-grid-card:hover
.conv-service-grid-link {
    color: rgba(255, 255, 255, 0.78) !important;
}


/* ---------------------------------------------------------
   LAPTOP
--------------------------------------------------------- */

@media screen and (max-width: 1300px) {

    body.page-template-template-conveners-home
    .conv-services-grid-container {
        width: calc(100% - 64px) !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-section
    .conv-service-grid-card {
        height: 365px !important;
        min-height: 365px !important;

        padding: 30px 28px 26px !important;
    }

    body.page-template-template-conveners-home
    .conv-service-grid-content h3 {
        font-size: 21px !important;
    }

}


/* ---------------------------------------------------------
   TABLET — TWO COLUMNS
--------------------------------------------------------- */

@media screen and (max-width: 1024px) {

    body.page-template-template-conveners-home
    .conv-services-grid-section {
        padding: 100px 0 110px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-heading-column,
    body.page-template-template-conveners-home
    .conv-services-grid-intro {
        width: 100% !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-intro {
        margin-top: 30px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-section
    .conv-service-grid-card {
        width: calc(50% - 24px) !important;

        height: 335px !important;
        min-height: 335px !important;

        padding: 32px 30px 27px !important;
    }

}


/* ---------------------------------------------------------
   MOBILE — ONE COLUMN
--------------------------------------------------------- */

@media screen and (max-width: 700px) {

    body.page-template-template-conveners-home
    .conv-services-grid-section {
        padding: 82px 0 90px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-container {
        width: calc(100% - 40px) !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-head {
        margin-bottom: 45px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-head h2 {
        font-size: 46px !important;
        letter-spacing: -2.5px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid {
        width: calc(100% + 18px) !important;
        margin: -9px !important;
    }

    body.page-template-template-conveners-home
    .conv-services-grid-section
    .conv-service-grid-card {
        width: calc(100% - 18px) !important;

        height: auto !important;
        min-height: 310px !important;

        margin: 9px !important;
        padding: 28px 25px 24px !important;

        border-radius: 23px !important;
    }

    body.page-template-template-conveners-home
    .conv-service-grid-content h3 {
        font-size: 21px !important;
    }

}
/* =========================================================
   CUSTOM HOMEPAGE — WIDER CONTENT
========================================================= */

body.page-template-template-conveners-home {
    --cv-content-width: 1600px;
    --cv-side-space: 60px;
}

/* Main containers used throughout the homepage */
body.page-template-template-conveners-home .container,
body.page-template-template-conveners-home .cv-container {
    width: calc(100% - (var(--cv-side-space) * 2)) !important;
    max-width: var(--cv-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Services section */
body.page-template-template-conveners-home
.conv-services-grid-container {
    width: calc(100% - (var(--cv-side-space) * 2)) !important;
    max-width: var(--cv-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Partners section */
body.page-template-template-conveners-home
.conv-partners__container {
    width: calc(100% - (var(--cv-side-space) * 2)) !important;
    max-width: var(--cv-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Testimonial section */
body.page-template-template-conveners-home
.cv-video-testimonials .cv-container {
    width: calc(100% - (var(--cv-side-space) * 2)) !important;
    max-width: var(--cv-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   TABLET
========================================================= */

@media screen and (max-width: 1024px) {

    body.page-template-template-conveners-home {
        --cv-side-space: 32px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media screen and (max-width: 600px) {

    body.page-template-template-conveners-home {
        --cv-side-space: 20px;
    }

}
body.page-template-template-conveners-home
.site-header
.site-primary-header-wrap {
    width: calc(100% - (var(--cv-side-space) * 2)) !important;
    max-width: var(--cv-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.page-template-template-conveners-home
.site-header
.ast-builder-grid-row {
    width: 100% !important;
    max-width: none !important;
}

/* =========================================================
   CUSTOM CONVENERS HOMEPAGE HEADER
========================================================= */

body.page-template-template-conveners-home {
    --cvx-header-max-width: 1600px;
    --cvx-header-side-space: 54px;
    --cvx-header-height: 108px;
    --cvx-header-floating-height: 84px;
}


/* =========================================================
   HIDE ASTRA HEADER ON THIS HOMEPAGE ONLY
========================================================= */

body.page-template-template-conveners-home
#masthead {
    display: none !important;
}


/* =========================================================
   CUSTOM HEADER WRAPPER
========================================================= */

/* .cvx-site-header,
.cvx-site-header *,
.cvx-site-header *::before,
.cvx-site-header *::after {
    box-sizing: border-box;
}

.cvx-site-header {
    position: fixed;
    z-index: 99999;

    top: 0;
    right: 0;
    left: 0;

    width: 100%;

    margin: 0;
    padding: 0;

    pointer-events: none;

    transition:
        padding 0.55s
        cubic-bezier(0.22, 1, 0.36, 1);
}

body.admin-bar .cvx-site-header {
    top: 32px;
}
*/

/* =========================================================
   HEADER BACKGROUND SHELL
========================================================= */

.cvx-header-shell {
    position: relative;
    z-index: 4;
    border-radius: 50px;
    width: 100%;
   padding:15px 0;
top:10px;
    margin: 0 auto;
    overflow: hidden;

    border: 0;
    border-bottom:
        1px solid rgba(131, 99, 194, 0.17);

    background: rgba(8, 7, 15, 0.96);

    pointer-events: auto;

    transition:
        width 0.55s
        cubic-bezier(0.22, 1, 0.36, 1),
        max-width 0.55s
        cubic-bezier(0.22, 1, 0.36, 1),
        min-height 0.5s
        cubic-bezier(0.22, 1, 0.36, 1),
        border-radius 0.55s
        cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.45s ease,
        box-shadow 0.5s ease,
        backdrop-filter 0.45s ease;
}


/*
 * Top-state gradient.
 */

.cvx-header-shell::before {
    position: absolute;
    z-index: 0;
    inset: 0;

    content: "";
    pointer-events: none;

   /* background:
        radial-gradient(
            circle at 8% 0%,
            rgba(90, 52, 155, 0.64),
            transparent 34%
        ),
        linear-gradient(
            90deg,
            rgba(35, 23, 70, 0.96) 0%,
            rgba(10, 9, 20, 0.97) 48%,
            rgba(5, 18, 23, 0.96) 100%
        );*/

    opacity: 1;

    transition:
        opacity 0.45s ease;
}


/*
 * Floating-state gradient.
 */

.cvx-header-shell::after {
    position: absolute;
    z-index: 0;
    inset: 0;

    content: "";
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(34, 23, 68, 0.93) 0%,
            rgba(17, 13, 36, 0.91) 53%,
            rgba(22, 15, 48, 0.93) 100%
        );

    opacity: 0;

    transition:
        opacity 0.45s ease;
}


/* =========================================================
   HEADER INNER CONTENT
========================================================= */

.cvx-header-inner {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns:
        minmax(230px, 1fr)
        auto
        minmax(230px, 1fr);

    align-items: center;

    width:
        calc(
            100% -
            (var(--cvx-header-side-space) * 2)
        );

    max-width: var(--cvx-header-max-width);
    min-height: inherit;

    margin: 0 auto;
    padding: 0;
}


/* =========================================================
   LOGO
========================================================= */

.cvx-header-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    min-width: 0;
}

.cvx-header-brand .custom-logo-link {
    display: flex;
    align-items: center;

    margin: 0;
    padding: 0;
}

.cvx-header-brand .custom-logo {
    display: block;

    width: auto !important;
    max-width: 200px !important;
    max-height: 60px !important;

    object-fit: contain;

    transition:
        max-width 0.45s
        cubic-bezier(0.22, 1, 0.36, 1),
        max-height 0.45s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.cvx-text-logo {
    color: #ffffff;

    font-family: "Manrope", sans-serif;
    font-size: 1.65rem;
    font-weight: 700;
    text-decoration: none;
}

.cvx-brand-tagline {
    margin-top: 4px;
    margin-left: 3px;

    color: #9881d8;

    font-family: "Space Grotesk", sans-serif;
    font-size: 0.63rem;
    font-weight: 500;
    letter-spacing: 0.3em;
    line-height: 1;
    text-transform: uppercase;
}


/* Hide the separate tagline when the logo already contains one. */

.cvx-header-brand.has-tagline-in-logo
.cvx-brand-tagline {
    display: none;
}


/* =========================================================
   DESKTOP MENU
========================================================= */

.cvx-desktop-navigation {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cvx-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(26px, 2.5vw, 50px);

    margin: 0;
    padding: 0;

    list-style: none;
}

.cvx-menu > li {
    margin: 0;
    padding: 0;

    list-style: none;
}

.cvx-menu > li > a {
    position: relative;

    display: inline-flex;
    align-items: center;

    padding: 16px 0;

    color: rgba(232, 228, 240, 0.72);

    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 450;
    line-height: 1;
    text-decoration: none;

    transition:
        color 0.3s ease;
}

.cvx-menu > li > a::after {
    position: absolute;

    right: 0;
    bottom: 6px;
    left: 0;

    height: 1px;

    content: "";

    background:
        linear-gradient(
            90deg,
            #8c60ff,
            #65cbd0
        );

    transform: scaleX(0);
    transform-origin: right center;

    transition:
        transform 0.4s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.cvx-menu > li:hover > a,
.cvx-menu > .current-menu-item > a {
    color: #ffffff;
}

.cvx-menu > li:hover > a::after,
.cvx-menu > .current-menu-item > a::after {
    transform: scaleX(1);
    transform-origin: left center;
}


/* =========================================================
   HEADER CTA
========================================================= */

.cvx-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.cvx-header-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    min-width: 190px;
    min-height: 43px;

    padding: 14px 20px;

    border:
        1px solid rgba(179, 151, 235, 0.48);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, 0.025);

    color: #dfd2ff;

    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;

    transition:
        color 0.35s ease,
        border-color 0.35s ease,
        background 0.35s ease,
        transform 0.35s
        cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.35s ease;
}

.cvx-header-cta:hover {
    border-color:
        rgba(157, 111, 255, 0.92);

    background:
        rgba(112, 65, 194, 0.17);

    color: #ffffff;

    transform: translateY(-2px);

    box-shadow:
        0 0 28px
        rgba(119, 73, 208, 0.2);
}

.cvx-header-cta-arrow {
    font-size: 1.1rem;

    transition:
        transform 0.35s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.cvx-header-cta:hover
.cvx-header-cta-arrow {
    transform: translate(3px, -3px);
}


/* =========================================================
   SCROLLED FLOATING HEADER
========================================================= */

.cvx-site-header.is-scrolled {
    padding: 20px 48px 0;
}

.cvx-site-header.is-scrolled
.cvx-header-shell {
    width: 100%;
    max-width: 1900px;
    min-height:70px;

    border:
        1px solid
        rgba(139, 102, 208, 0.36);
    padding:0px 0px;
    box-shadow:
        0 17px 55px rgba(0, 0, 0, 0.38),
        inset 0 0 0 1px
        rgba(255, 255, 255, 0.025),
        0 0 38px
        rgba(99, 57, 177, 0.09);

    backdrop-filter:
        blur(20px)
        saturate(145%);

    -webkit-backdrop-filter:
        blur(20px)
        saturate(145%);
}

.cvx-site-header.is-scrolled
.cvx-header-shell::before {
    opacity: 0;
}

.cvx-site-header.is-scrolled
.cvx-header-shell::after {
    opacity: 1;
}

.cvx-site-header.is-scrolled
.cvx-header-inner {
    width: calc(100% - 68px);
    max-width: none;
}

.cvx-site-header.is-scrolled
.cvx-header-brand .custom-logo {
    max-width: 205px !important;
    max-height: 52px !important;
}

.cvx-site-header.is-scrolled
.cvx-header-cta {
    min-width: 180px;
    min-height: 50px;

    padding: 13px 24px;
}


/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.cvx-menu-toggle {
    display: none;

    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 7px;

    width: 48px;
    height: 48px;

    margin: 0 0 0 auto;
    padding: 0;

    border:
        1px solid rgba(154, 119, 223, 0.36);

    border-radius: 50%;

    background:
        rgba(255, 255, 255, 0.025);

    cursor: pointer;
}

.cvx-menu-toggle span {
    display: block;

    width: 23px;
    height: 1px;

    background: #ffffff;

    transition:
        transform 0.35s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.cvx-menu-toggle[aria-expanded="true"]
span:first-child {
    transform:
        translateY(4px)
        rotate(45deg);
}

.cvx-menu-toggle[aria-expanded="true"]
span:last-child {
    transform:
        translateY(-4px)
        rotate(-45deg);
}


/* =========================================================
   MOBILE MENU PANEL
========================================================= */

/*.cvx-mobile-panel {
    position: fixed;
    z-index: 2;
    inset: 0;

    visibility: hidden;

    padding:
        145px 24px
        45px;

    background:
        radial-gradient(
            circle at 15% 10%,
            rgba(89, 49, 155, 0.3),
            transparent 35%
        ),
        radial-gradient(
            circle at 90% 90%,
            rgba(101, 203, 208, 0.1),
            transparent 34%
        ),
        rgba(5, 4, 11, 0.985);

    opacity: 0;

    transform: translateY(-18px);

    pointer-events: none;

    transition:
        opacity 0.4s ease,
        transform 0.45s
        cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0.4s;
}

.cvx-mobile-panel.is-open {
    visibility: visible;

    opacity: 1;

    transform: translateY(0);

    pointer-events: auto;
}

.cvx-mobile-panel-inner {
    width: min(100%, 720px);

    margin: 0 auto;
}

.cvx-mobile-menu {
    margin: 0;
    padding: 0;

    list-style: none;
}

.cvx-mobile-menu li {
    margin: 0;
    padding: 0;

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.09);

    list-style: none;
}

.cvx-mobile-menu a {
    display: block;

    padding: 21px 0;

    color: #ffffff;

    font-family: "Manrope", sans-serif;
    font-size:
        clamp(1.9rem, 8vw, 3.3rem);

    font-weight: 550;
    letter-spacing: -0.04em;
    line-height: 1;
    text-decoration: none;
}

.cvx-mobile-cta {
    display: inline-flex;
    align-items: center;
    gap: 14px;

    margin-top: 40px;
    padding: 15px 24px;

    border:
        1px solid rgba(151, 111, 232, 0.65);

    border-radius: 999px;

    color: #ffffff;

    font-family: "Manrope", sans-serif;
    text-decoration: none;
}

body.cvx-mobile-menu-open {
    overflow: hidden;
}*/


/* =========================================================
   TABLET / MOBILE
========================================================= */

/*@media screen and (max-width: 1100px) {

    body.page-template-template-conveners-home {
        --cvx-header-side-space: 30px;
    }

    .cvx-header-inner {
        grid-template-columns: 1fr auto;
    }

    .cvx-desktop-navigation,
    .cvx-header-actions {
        display: none;
    }

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

    .cvx-header-brand .custom-logo {
        max-width: 175px !important;
        max-height: 50px !important;
    }

}


@media screen and (max-width: 782px) {

    body.admin-bar .cvx-site-header {
        top: 46px;
    }

}


@media screen and (max-width: 700px) {

    body.page-template-template-conveners-home {
        --cvx-header-height: 78px;
        --cvx-header-floating-height: 70px;
        --cvx-header-side-space: 20px;
    }

    .cvx-site-header.is-scrolled {
        padding:
            10px 12px 0;
    }

    .cvx-site-header.is-scrolled
    .cvx-header-shell {
        border-radius: 30px;
    }

    .cvx-header-inner,
    .cvx-site-header.is-scrolled
    .cvx-header-inner {
        width: calc(100% - 34px);
    }

    .cvx-header-brand .custom-logo,
    .cvx-site-header.is-scrolled
    .cvx-header-brand .custom-logo {
        max-width: 145px !important;
        max-height: 43px !important;
    }

    .cvx-brand-tagline {
        display: none;
    }

    .cvx-menu-toggle {
        width: 44px;
        height: 44px;
    }

}*/
/* =========================================================
   CONVENERS CUSTOM MOUSE CURSOR
========================================================= */

/*
 * Enable only on devices that have a real mouse.
 * Mobile and touch devices keep their normal behaviour.
 */
@media (hover: hover) and (pointer: fine) {

    body.page-template-template-conveners-home.cvx-cursor-enabled,
    body.page-template-template-conveners-home.cvx-cursor-enabled a,
    body.page-template-template-conveners-home.cvx-cursor-enabled button,
    body.page-template-template-conveners-home.cvx-cursor-enabled input,
    body.page-template-template-conveners-home.cvx-cursor-enabled textarea,
    body.page-template-template-conveners-home.cvx-cursor-enabled select,
    body.page-template-template-conveners-home.cvx-cursor-enabled
    [role="button"] {
        cursor: none !important;
    }


    /* Cursor tracking wrapper */

    .cvx-cursor-ring {
        position: fixed;
        z-index: 2147483645;

        top: 0;
        left: 0;

        width: 0;
        height: 0;

        pointer-events: none;

        opacity: 0;

        transform: translate3d(-100px, -100px, 0);

        transition:
            opacity 0.25s ease;

        will-change: transform;
    }


    /* Visible outlined circle */

    .cvx-cursor-ring__visual {
        position: absolute;

        top: 50%;
        left: 50%;

        width: 40px;
        height: 40px;

        border: 2px solid rgba(143, 92, 242, 0.9);
        border-radius: 50%;

        background: rgba(112, 69, 190, 0);

        box-shadow:
            0 0 0 rgba(137, 84, 235, 0);

        transform:
            translate(-50%, -50%)
            scale(1);

        transition:
            width 0.45s cubic-bezier(0.22, 1, 0.36, 1),
            height 0.45s cubic-bezier(0.22, 1, 0.36, 1),
            background 0.4s ease,
            border-color 0.4s ease,
            box-shadow 0.4s ease,
            transform 0.22s ease;

        will-change:
            width,
            height,
            transform;
    }


    /* Centre dot */

    .cvx-cursor-dot {
        position: fixed;
        z-index: 2147483646;

        top: 0;
        left: 0;

        width: 6px;
        height: 6px;

        border-radius: 50%;

        background: #c8aaff;

        box-shadow:
            0 0 16px rgba(173, 126, 255, 0.42);

        pointer-events: none;

        opacity: 0;

        transform:
            translate3d(-100px, -100px, 0)
            translate(-50%, -50%);

        transition:
            width 0.3s ease,
            height 0.3s ease,
            background 0.3s ease,
            opacity 0.25s ease;

        will-change: transform;
    }


    /* Show after mouse enters the page */

    .cvx-cursor-ring.is-visible,
    .cvx-cursor-dot.is-visible {
        opacity: 1;
    }


    /* Hover effect over links and buttons */

    .cvx-cursor-ring.is-hovering
    .cvx-cursor-ring__visual {
        width: 60px;
        height: 60px;

        border-color: rgba(162, 111, 255, 0.98);

        background:
            linear-gradient(
                145deg,
                rgba(105, 65, 178, 0.38),
                rgba(61, 39, 110, 0.25)
            );

        box-shadow:
            0 0 0 1px rgba(164, 117, 255, 0.1),
            0 0 30px rgba(129, 77, 224, 0.2),
            inset 0 0 28px rgba(161, 115, 255, 0.08);

        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
    }

    .cvx-cursor-dot.is-hovering {
        width: 6px;
        height: 6px;

        background: #d2b5ff;
    }


    /* Mouse-down animation */

    .cvx-cursor-ring.is-clicking
    .cvx-cursor-ring__visual {
        transform:
            translate(-50%, -50%)
            scale(0.82);
    }

    .cvx-cursor-dot.is-clicking {
        width: 4px;
        height: 4px;
    }


    /* Hide it over the WordPress admin toolbar */

    #wpadminbar,
    #wpadminbar * {
        cursor: auto !important;
    }
}


/* Never show the custom cursor on touch devices */

@media (hover: none), (pointer: coarse) {

    .cvx-cursor-ring,
    .cvx-cursor-dot {
        display: none !important;
    }
}

/* =========================================================
   CLOSING CONTACT CTA
========================================================= */

.conv-closing-cta,
.conv-closing-cta *,
.conv-closing-cta *::before,
.conv-closing-cta *::after {
    box-sizing: border-box;
}

.conv-closing-cta {
    position: relative;

    display: flex;
    align-items: center;

    width: 100%;
    min-height: 720px;

    margin: 0;
    padding: 120px 0;

    overflow: hidden;

    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);

   background: radial-gradient(60% 60% at 20% 10%, #7c52ff59, #0000 60%), radial-gradient(50% 50% at 90% 20%, #6dd6e82e, #0000 60%), radial-gradient(70% 70% at 60% 100%, #5a3fb459, #0000 60%), #07070b;

    color: #ffffff;
}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.conv-closing-cta::before {
    position: absolute;
    inset: 0;

    content: "";
    pointer-events: none;

    background:
        linear-gradient(
            115deg,
            rgba(255, 255, 255, 0.018),
            transparent 32%,
            transparent 70%,
            rgba(101, 203, 208, 0.012)
        );
}

.conv-closing-cta__glow {
    position: absolute;

    width: 520px;
    height: 520px;

    border-radius: 50%;

    pointer-events: none;

    filter: blur(100px);
    opacity: 0.16;
}

.conv-closing-cta__glow--left {
    bottom: -340px;
    left: 12%;

    background: #6234ad;
}

.conv-closing-cta__glow--right {
    top: -380px;
    right: 5%;

    background: #4e9da7;
}


/* =========================================================
   CONTENT
========================================================= */

.conv-closing-cta__inner {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;
    align-items: center;

    max-width: 1200px !important;

    text-align: center;
}

.conv-closing-cta__label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 34px;
    padding: 10px 21px;

    border: 1px solid rgba(134, 92, 226, 0.3);
    border-radius: 999px;

    background: rgba(84, 43, 152, 0.075);
    color: #baa2ff;

    font-family: "Space Grotesk", Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.22em;
    line-height: 1;
    text-transform: uppercase;
}

.conv-closing-cta__dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #875cff;

    box-shadow:
        0 0 0 4px rgba(135, 92, 255, 0.08),
        0 0 16px rgba(135, 92, 255, 0.8);
}


/* =========================================================
   HEADING
========================================================= */

.conv-closing-cta__title {
    max-width: 1120px;

    margin: 0;

    color: #f8f7fa;

    font-family: "Manrope", Arial, sans-serif;
    font-size: clamp(56px, 5.5vw, 94px) !important;
    font-weight: 680;
    letter-spacing: -0.065em;
    line-height: 0.98;
}

.conv-closing-cta__gradient {
    color: transparent;

    background:
        linear-gradient(
            90deg,
            #e4dcff 0%,
            #a884ff 48%,
            #7966df 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}

.conv-closing-cta__gradient--teal {
    background:
        linear-gradient(
            90deg,
            #8172ed 0%,
            #678cff 48%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.conv-closing-cta__description {
    max-width: 820px;

    margin: 42px 0 0;

    color: #aaa7b0;

    font-family: "Manrope", Arial, sans-serif;
    font-size: clamp(1rem, 1vw, 1.3rem);
    font-weight: 400;
    line-height: 1.65;
}


/* =========================================================
   BUTTONS
========================================================= */

.conv-closing-cta__actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;

    margin-top: 46px;
}

.conv-closing-cta__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;

    min-height: 30px;
    padding: 16px 28px;

    border-radius: 999px;

    font-family: "Manrope", Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;

    transition:
        color 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease,
        transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.35s ease;
}

.conv-closing-cta__button--primary {
    min-width: 250px;

    border: 1px solid #ffffff;

    background: #ffffff;
    color: #09080d;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, 0.25);
}

.conv-closing-cta__button--primary:hover {
    border-color: #a87cff;

    background: #a87cff;
    color: #ffffff;

    transform: translateY(-4px);

    box-shadow:
        0 20px 48px rgba(73, 36, 139, 0.34),
        0 0 30px rgba(139, 91, 255, 0.22);
}

.conv-closing-cta__button--secondary {
    min-width: 205px;

    border: 1px solid rgba(170, 141, 226, 0.32);

    background: rgba(255, 255, 255, 0.018);
    color: #dfdbe7;
}

.conv-closing-cta__button--secondary:hover {
    border-color: rgba(151, 104, 242, 0.8);

    background: rgba(101, 59, 178, 0.16);
    color: #ffffff;

    transform: translateY(-4px);

    box-shadow:
        0 0 28px rgba(118, 71, 209, 0.16);
}

.conv-closing-cta__arrow {
    font-size: 1.15rem;

    transition:
        transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-closing-cta__button--primary:hover
.conv-closing-cta__arrow {
    transform: translate(4px, -4px);
}

.conv-closing-cta__button:focus-visible {
    outline: 2px solid #65cbd0;
    outline-offset: 5px;
}


/* =========================================================
   TABLET
========================================================= */

@media screen and (max-width: 1024px) {

    .conv-closing-cta {
        min-height: 650px;
        padding: 105px 0;
    }

    .conv-closing-cta__title {
        font-size: clamp(3.3rem, 8vw, 5.8rem);
    }

    .conv-closing-cta__description {
        margin-top: 34px;
    }

    .conv-closing-cta__actions {
        margin-top: 38px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media screen and (max-width: 700px) {

    .conv-closing-cta {
        min-height: 590px;
        padding: 86px 0;
    }

    .conv-closing-cta__inner {
        width: calc(100% - 40px) !important;
    }

    .conv-closing-cta__label {
        margin-bottom: 25px;
        padding: 9px 16px;

        font-size: 10px;
        letter-spacing: 0.17em;
    }

    .conv-closing-cta__title {
        font-size: clamp(2.9rem, 13vw, 4.5rem);
        letter-spacing: -0.055em;
        line-height: 1;
    }

    .conv-closing-cta__description {
        margin-top: 28px;

        font-size: 14px;
        
        line-height: 1.6;
    }

    .conv-closing-cta__actions {
        width: 100%;

        margin-top: 34px;
    }

    .conv-closing-cta__button {
        width: 100%;
        min-width: 0;
    }

}

/* =========================================================
   CLOSING CTA — FORCE COMPLETE VISIBILITY
========================================================= */

body.page-template-template-conveners-home
.conv-closing-cta,

body.page-template-template-conveners-home
.conv-closing-cta__inner,

body.page-template-template-conveners-home
.conv-closing-cta__label,

body.page-template-template-conveners-home
.conv-closing-cta__title,

body.page-template-template-conveners-home
.conv-closing-cta__title span,

body.page-template-template-conveners-home
.conv-closing-cta__description,

body.page-template-template-conveners-home
.conv-closing-cta__actions,

body.page-template-template-conveners-home
.conv-closing-cta__button {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
}

/* Remove GSAP movement only from the CTA content */

body.page-template-template-conveners-home
.conv-closing-cta__inner,

body.page-template-template-conveners-home
.conv-closing-cta__label,

body.page-template-template-conveners-home
.conv-closing-cta__title,

body.page-template-template-conveners-home
.conv-closing-cta__description,

body.page-template-template-conveners-home
.conv-closing-cta__actions {
    transform: none !important;
}


/* Restore proper text brightness */

body.page-template-template-conveners-home
.conv-closing-cta__title {
    color: #f8f7fa !important;
}

body.page-template-template-conveners-home
.conv-closing-cta__description {
    color: #aaa7b0 !important;
}

body.page-template-template-conveners-home
.conv-closing-cta__label {
    color: #baa2ff !important;
}

body.page-template-template-conveners-home
.conv-closing-cta__button--primary {
    background: #ffffff !important;
    color: #09080d !important;
}

body.page-template-template-conveners-home
.conv-closing-cta__button--secondary {
    color: #dfdbe7 !important;
}

/* =========================================================
   LIGHTWEIGHT CONVENERS PAGE LOADER
========================================================= */

html.conv-page-loading,
html.conv-page-loading body {
    overflow: hidden !important;
}

.conv-page-loader,
.conv-page-loader *,
.conv-page-loader *::before,
.conv-page-loader *::after {
    box-sizing: border-box;
}

.conv-page-loader {
    position: fixed;
    z-index: 2147483647;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 100vh;

    padding: 30px;

    background:
        radial-gradient(
            circle at 14% 8%,
            rgba(91, 48, 158, 0.22),
            transparent 34%
        ),
        radial-gradient(
            circle at 88% 90%,
            rgba(101, 203, 208, 0.08),
            transparent 32%
        ),
        #030305;

    color: #ffffff;

    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.65s ease,
        visibility 0.65s ease;

    pointer-events: auto;
}

.conv-page-loader::before {
    position: absolute;
    inset: 0;

    content: "";
    pointer-events: none;

    background:
        linear-gradient(
            115deg,
            rgba(255, 255, 255, 0.015),
            transparent 32%,
            transparent 72%,
            rgba(101, 203, 208, 0.01)
        );
}

.conv-page-loader.is-complete {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* =========================================================
   LOADER CONTENT
========================================================= */

.conv-page-loader__content {
    position: relative;
    z-index: 2;

    width: min(100%, 540px);

    transform: translateY(0);

    transition:
        opacity 0.45s ease,
        transform 0.55s
        cubic-bezier(0.22, 1, 0.36, 1);
}

.conv-page-loader.is-complete
.conv-page-loader__content {
    opacity: 0;
    transform: translateY(-14px);
}


/* =========================================================
   BRAND
========================================================= */

.conv-page-loader__brand {
    margin-bottom: 34px;

    text-align: center;
}

.conv-page-loader__brand span {
    display: inline-block;

    color: transparent;

    background:
        linear-gradient(
            90deg,
            #7650b5 0%,
            #9572ef 48%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;

    font-family: "Manrope", Arial, sans-serif;
    font-size: clamp(2.4rem, 7vw, .8rem);
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
}


/* =========================================================
   PROGRESS TRACK
========================================================= */

.conv-page-loader__track {
    position: relative;

    width: 100%;
    height: 3px;

    overflow: hidden;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.09);
}

.conv-page-loader__bar {
    position: absolute;
    inset: 0;

    display: block;

    width: 0%;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            #7650b5,
            #9161ff,
            #65cbd0
        );

    box-shadow:
        0 0 18px rgba(118, 80, 181, 0.35);

    transition:
        width 0.24s
        cubic-bezier(0.22, 1, 0.36, 1);
}


/* =========================================================
   BOTTOM DETAILS
========================================================= */

.conv-page-loader__details {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;

    margin-top: 16px;

    color: rgba(218, 214, 226, 0.55);

    font-family: "Space Grotesk", Arial, sans-serif;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.22em;
    line-height: 1;
    text-transform: uppercase;
}

.conv-page-loader__percentage {
    flex: 0 0 auto;

    color: #b89cff;
}


/* Hide the custom cursor while loader is visible */

html.conv-page-loading
.cvx-cursor-ring,
html.conv-page-loading
.cvx-cursor-dot {
    opacity: 0 !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media screen and (max-width: 700px) {

    .conv-page-loader {
        padding: 24px;
    }

    .conv-page-loader__brand {
        margin-bottom: 28px;
    }

    .conv-page-loader__details {
        font-size: 8px;
        letter-spacing: 0.16em;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .conv-page-loader,
    .conv-page-loader__content,
    .conv-page-loader__bar {
        transition-duration: 0.01ms !important;
    }

}
/* =========================================================
   VIDEO TESTIMONIAL — KEEP SECTION TITLE VISIBLE
========================================================= */

body.page-template-template-conveners-home
.cv-video-testimonials,

body.page-template-template-conveners-home
.cv-video-testimonials .cv-container,

body.page-template-template-conveners-home
.cv-video-testimonials .testimonials-head,

body.page-template-template-conveners-home
.cv-video-testimonials .testimonial-head,

body.page-template-template-conveners-home
.cv-video-testimonials .section-heading,

body.page-template-template-conveners-home
.cv-video-testimonials .section-label,

body.page-template-template-conveners-home
.cv-video-testimonials h2 {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
}

/* Remove any old GSAP movement from the heading area only */

body.page-template-template-conveners-home
.cv-video-testimonials .testimonials-head,

body.page-template-template-conveners-home
.cv-video-testimonials .testimonial-head,

body.page-template-template-conveners-home
.cv-video-testimonials .section-heading,

body.page-template-template-conveners-home
.cv-video-testimonials .section-label,

body.page-template-template-conveners-home
.cv-video-testimonials h2 {
    transform: none !important;
}


/* Restore proper heading colour and spacing */

body.page-template-template-conveners-home
.cv-video-testimonials h2 {
    position: relative !important;
    z-index: 5 !important;

    margin: 0 0 70px !important;

    color: #f7f7fa !important;

    font-family: "Manrope", Arial, sans-serif !important;
    font-size: clamp(3.4rem, 5vw, 6.5rem) !important;
   
    letter-spacing: -0.055em !important;
    line-height: 1 !important;
}


/* Ensure the title is not hidden behind another layer */

body.page-template-template-conveners-home
.cv-video-testimonials .section-heading,
body.page-template-template-conveners-home
.cv-video-testimonials .testimonials-head {
    position: relative !important;
    z-index: 6 !important;
}
/* =========================================================
   SIMPLE SCROLL FADE-IN ANIMATION
========================================================= */

.fade-in {
    opacity: 0;
    transform: translateY(50px);

    transition:
        opacity 0.9s ease,
        transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

    will-change: opacity, transform;
}

.fade-in.is-visible {
    opacity: 1;
    transform: translateY(0);
}


/* Optional directional animations */

.fade-in-left {
    opacity: 0;
    transform: translateX(-60px);

    transition:
        opacity 0.9s ease,
        transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

    will-change: opacity, transform;
}

.fade-in-right {
    opacity: 0;
    transform: translateX(60px);

    transition:
        opacity 0.9s ease,
        transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

    will-change: opacity, transform;
}

.fade-in-left.is-visible,
.fade-in-right.is-visible {
    opacity: 1;
    transform: translateX(0);
}


/* Optional animation delays */

.fade-delay-1 {
    transition-delay: 0.1s;
}

.fade-delay-2 {
    transition-delay: 0.2s;
}

.fade-delay-3 {
    transition-delay: 0.3s;
}


/* Keep everything visible for reduced-motion users */

@media (prefers-reduced-motion: reduce) {

    .fade-in,
    .fade-in-left,
    .fade-in-right {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}
.accent {
        display: block;
    color: transparent;
    font-weight: inherit;
    background: linear-gradient(90deg, #b49cff 0%, #8f82f3 48%, #65cbd0 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

/* =========================================================
   EMERGENCY HOMEPAGE HERO / VIDEO CONTAINMENT
========================================================= */

body.page-template-template-conveners-home
.hero.conv-hero {
    position: relative !important;
    isolation: isolate;

    display: block !important;

    width: 100% !important;
    min-height: max(760px, 100svh) !important;

    margin: 0 !important;
    overflow: hidden !important;

    background: #030305 !important;
}


/* Hero video must remain inside the hero */

body.page-template-template-conveners-home
.hero.conv-hero
> .hero-video.conv-hero__video {
    position: absolute !important;

    z-index: 0 !important;
    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    height: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    object-fit: cover !important;
    object-position: center !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: none !important;
}


/* Black SVG layer with the video visible inside CONVENERS */

body.page-template-template-conveners-home
.hero.conv-hero
> .hero-mask-svg.conv-hero__mask {
    position: absolute !important;

    z-index: 1 !important;
    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    height: 100% !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: none !important;
    
}
body.page-template-template-conveners-home
.hero-mask-svg,

body.page-template-template-conveners-home
.conv-hero__mask {
    top: -25px !important;
    bottom: 0 !important;

    height: auto !important;
}


/* Hero overlays */

body.page-template-template-conveners-home
.hero.conv-hero
> .conv-hero__vignette {
    position: absolute !important;

    z-index: 2 !important;
    inset: 0 !important;

    pointer-events: none !important;
}


/* Hero content */

body.page-template-template-conveners-home
.hero.conv-hero
> .conv-hero__inner {
    position: relative !important;
    z-index: 3 !important;

    display: flex !important;
    flex-direction: column !important;

    opacity: 1;
    visibility: visible;
}


/* Keep the lower wave video in its own section */

body.page-template-template-conveners-home
.wave-section {
    position: relative !important;
    z-index: 3 !important;

    display: block !important;

    width: 100% !important;
    height: clamp(300px, 48vw, 620px) !important;

    overflow: hidden !important;
}


body.page-template-template-conveners-home
.wave-section
.wave-canvas-holder {
    position: absolute !important;
    inset: 0 !important;

    overflow: hidden !important;
}


body.page-template-template-conveners-home
.wave-section
.wave-video {
    position: absolute !important;

    z-index: 1 !important;
    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
}


/*
 * A hero or wave section must never appear after the footer.
 * This catches accidental duplicate homepage markup.
 */

body.page-template-template-conveners-home
footer ~ .hero,

body.page-template-template-conveners-home
footer ~ .conv-hero,

body.page-template-template-conveners-home
footer ~ .wave-section,

body.page-template-template-conveners-home
footer ~ .hero-video,

body.page-template-template-conveners-home
footer ~ .wave-video {
    display: none !important;
}

/* =========================================================
   HOMEPAGE HERO ALIGNMENT FIX
   For the new 80px global header
========================================================= */

body.page-template-template-conveners-home
.hero,

body.page-template-template-conveners-home
.conv-hero {
    /*
     * Header now occupies 80px above the hero,
     * so the hero must use the remaining viewport height.
     */
    min-height:
        calc(
            100svh - 80px
        ) !important;

    padding:
        clamp(62px, 7vh, 78px)
        0
        28px !important;
}


/* Main hero content area */

body.page-template-template-conveners-home
.hero-inner,

body.page-template-template-conveners-home
.conv-hero__inner {
    min-height:
        calc(
            100svh - 180px
        ) !important;

    max-width: 1500px !important;
}


/* Give the threshold label comfortable top spacing */

body.page-template-template-conveners-home
.hero-title-wrap,

body.page-template-template-conveners-home
.conv-hero__title-wrap {
    margin-top: 0 !important;
}


/*
 * Reserve enough space for the large masked
 * CONVENERS text before showing the tagline.
 */

body.page-template-template-conveners-home
.hero-title-spacer,

body.page-template-template-conveners-home
.conv-hero__title-spacer {
    height:
        clamp(
            270px,
            22vw,
            365px
        ) !important;
}


/* Move the masked CONVENERS title slightly upward */

body.page-template-template-conveners-home
.hero-mask-svg,

body.page-template-template-conveners-home
.conv-hero__mask {
    top: -25px !important;
    bottom: 0 !important;

    height: auto !important;
}


/* Keep the positioning statement below CONVENERS */

body.page-template-template-conveners-home
.conv-hero__content {
    position: relative;
    z-index: 4;

    margin-top: 0 !important;
}


/* Prevent the tagline from touching the masked title */

body.page-template-template-conveners-home
.conv-hero__tagline {
    position: relative;
    z-index: 5;

    margin-top:40px !important;
}


/* Buttons */

body.page-template-template-conveners-home
.conv-hero__actions {
    margin-top:
        clamp(
            27px,
            3.5vh,
            38px
        ) !important;
}


/*
 * Remove the incorrect 160px counter gap.
 * Auto margin keeps the counter panel near
 * the bottom of the hero.
 */

body.page-template-template-conveners-home
.conv-hero__stats {
    margin-top: auto !important;
}


/* =========================================================
   SHORT DESKTOP SCREENS
========================================================= */

@media
(max-height: 850px)
and (min-width: 768px) {

    body.page-template-template-conveners-home
    .hero,

    body.page-template-template-conveners-home
    .conv-hero {
        min-height: 760px !important;

        padding-top: 46px !important;
    }

    body.page-template-template-conveners-home
    .hero-inner,

    body.page-template-template-conveners-home
    .conv-hero__inner {
        min-height: 680px !important;
    }

    body.page-template-template-conveners-home
    .hero-title-spacer,

    body.page-template-template-conveners-home
    .conv-hero__title-spacer {
        height:
            clamp(
                250px,
                20vw,
                325px
            ) !important;
    }

    body.page-template-template-conveners-home
    .conv-hero__actions {
        margin-top: 24px !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1180px) {

    body.page-template-template-conveners-home
    .hero,

    body.page-template-template-conveners-home
    .conv-hero {
        padding-top: 58px !important;
    }

    body.page-template-template-conveners-home
    .hero-title-spacer,

    body.page-template-template-conveners-home
    .conv-hero__title-spacer {
        height:
            clamp(
                225px,
                25vw,
                320px
            ) !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    body.page-template-template-conveners-home
    .hero,

    body.page-template-template-conveners-home
    .conv-hero {
        min-height: auto !important;

        padding:
            52px
            0
            24px !important;
    }

    body.page-template-template-conveners-home
    .hero-inner,

    body.page-template-template-conveners-home
    .conv-hero__inner {
        min-height: 0 !important;
    }

    body.page-template-template-conveners-home
    .hero-mask-svg,

    body.page-template-template-conveners-home
    .conv-hero__mask {
        top: -10px !important;
    }

    body.page-template-template-conveners-home
    .hero-title-spacer,

    body.page-template-template-conveners-home
    .conv-hero__title-spacer {
        height:
            clamp(
                145px,
                39vw,
                205px
            ) !important;
    }

    body.page-template-template-conveners-home
    .conv-hero__stats {
        margin-top: 60px !important;
    }

}
/* =========================================================
   MOBILE HERO — FINAL RESPONSIVE FIX
========================================================= */

@media screen and (max-width: 767px) {

    body.page-template-template-conveners-home
    .hero,

    body.page-template-template-conveners-home
    .conv-hero {
        min-height: auto !important;

        padding:
            30px
            0
            130px !important;

        overflow: hidden !important;
    }


    /* Keep all hero content inside the screen */

    body.page-template-template-conveners-home
    .hero-inner,

    body.page-template-template-conveners-home
    .conv-hero__inner {
        width:
            calc(100% - 36px) !important;

        max-width: 460px !important;
        min-height: 0 !important;

        margin-inline: auto !important;
    }


    /* Threshold label */

    body.page-template-template-conveners-home
    .hero-title-wrap,

    body.page-template-template-conveners-home
    .conv-hero__title-wrap {
        margin-top: 0 !important;
    }


    body.page-template-template-conveners-home
    .hero-eyebrow,

    body.page-template-template-conveners-home
    .conv-hero__eyebrow {
        max-width: 100%;

        font-size: 0.5rem !important;
        letter-spacing: 0.22em !important;

        white-space: nowrap;
    }


    /*
     * Reserve room for the smaller CONVENERS word.
     * The tagline will begin below this space.
     */

    body.page-template-template-conveners-home
    .hero-title-spacer,

    body.page-template-template-conveners-home
    .conv-hero__title-spacer {
        height:
            clamp(
                185px,
                48vw,
                230px
            ) !important;
    }


    /* Positioning statement */

    body.page-template-template-conveners-home
    .conv-hero__content {
        position: relative;
        z-index: 5;

        width: 100%;

        margin-top: 0 !important;
        padding-inline: 4px;
    }


    body.page-template-template-conveners-home
    .conv-hero__tagline {
        width: 100%;
        max-width: 390px;

        margin-inline: auto !important;

        font-size:
            clamp(
                2rem,
                10.3vw,
                2.7rem
            ) !important;

        line-height: 1.08 !important;
        letter-spacing: -0.052em !important;

        text-align: center;
        text-wrap: balance;
    }


    /* Buttons */

    body.page-template-template-conveners-home
    .conv-hero__actions {
        display: flex !important;
        flex-direction: column !important;

        width: 100%;
        max-width: 350px;

        margin:
            34px
            auto
            0 !important;

        gap: 14px !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__button {
        width: 100% !important;
        min-height: 56px !important;

        padding:
            14px
            24px !important;
    }


    /* =====================================================
       MOBILE STATISTICS
    ===================================================== */

    body.page-template-template-conveners-home
    .conv-hero__stats {
        display: grid !important;

        grid-template-columns:
            1fr !important;

        gap: 16px !important;

        width: 100%;

        margin:
            72px
            auto
            105px !important;

        padding: 0 !important;

        overflow: visible !important;

        border: 0 !important;
        border-radius: 0 !important;

        background: transparent !important;

        box-shadow: none !important;

        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stats::before {
        display: none !important;
    }


    /*
     * Every statistic becomes its own card,
     * creating visible space between items.
     */

    body.page-template-template-conveners-home
    .conv-hero__stat {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;

        gap: 18px !important;

        width: 100%;
        min-height: 96px;

        padding:
            18px
            20px !important;

        border:
            1px solid
            rgba(118, 80, 181, 0.25) !important;

        border-radius: 19px;

        background:
            linear-gradient(
                120deg,
                rgba(84, 43, 152, 0.11),
                rgba(8, 8, 14, 0.92) 55%,
                rgba(101, 203, 208, 0.035)
            );

        box-shadow:
            0 18px 45px
            rgba(0, 0, 0, 0.3),
            inset 0 1px 0
            rgba(255, 255, 255, 0.025);
    }


    /*
     * Remove the old connecting divider lines.
     */

    body.page-template-template-conveners-home
    .conv-hero__stat
    + .conv-hero__stat::before {
        display: none !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat:nth-child(n + 3) {
        border-top:
            1px solid
            rgba(118, 80, 181, 0.25) !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat-icon {
        width: 54px !important;
        height: 54px !important;

        flex:
            0
            0
            54px !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat-copy {
        flex: 1 1 auto;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat-number {
        font-size:
            clamp(
                1.75rem,
                8vw,
                2.2rem
            ) !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat-copy > span {
        margin-top: 7px !important;

        font-size: 0.83rem !important;
        line-height: 1.35;
    }

}


/* Smaller phones */

@media screen and (max-width: 390px) {

    body.page-template-template-conveners-home
    .hero-title-spacer,

    body.page-template-template-conveners-home
    .conv-hero__title-spacer {
        height: 180px !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__tagline {
        font-size:
            clamp(
                1.85rem,
                9.8vw,
                2.35rem
            ) !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stats {
        gap: 14px !important;
    }


    body.page-template-template-conveners-home
    .conv-hero__stat {
        min-height: 90px;

        padding:
            16px
            17px !important;
    }

}
