:root{
      --bg: #0b0b10;
      --text:#e8e9ef;
      --muted:#a9adc1;
      --accent:#8b5cf6;
      --accent-2:#24CCCE;
      --accent-3:#D10459;
      --radius: 18px;
      --serif: "Playfair Display", serif;
    }

    html,body{
      height:100%;
      background:var(--bg);
      color:var(--text);
      font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans";
    }

    .noise::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:-7;
      mix-blend-mode:overlay;
      background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="2" stitchTiles="stitch"/></filter><rect width="120" height="120" filter="url(%23n)" opacity="0.03"/></svg>');
      background-size:240px 240px;
      opacity:.35;
    }

    .grid-bg{
      position:fixed;
      inset:0;
      z-index:-8;
      pointer-events:none;
      opacity:.06;
      background-image:
        radial-gradient(transparent 1px, var(--bg) 1px),
        linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px),
        linear-gradient(0deg, rgba(255,255,255,.05) 1px, transparent 1px);
      background-size: 24px 24px, 48px 48px, 48px 48px;
      background-position: center;
    }

    .te-vignette{
      position: fixed;
      inset: 0;
      z-index: -4;
      pointer-events: none;
      background:
        radial-gradient(1200px 420px at 50% 82%, rgba(209,4,89,0.22), rgba(0,0,0,0) 60%),
        radial-gradient(800px 260px at 50% 92%, rgba(0,0,0,0.9), rgba(0,0,0,0) 60%),
        radial-gradient(1200px 800px at 50% 120%, rgba(0,0,0,1), rgba(0,0,0,0.65) 40%, rgba(0,0,0,0.95) 70%),
        radial-gradient(900px 600px at 50% -10%, rgba(0,0,0,0.7), rgba(0,0,0,0.08) 60%, rgba(0,0,0,0.7) 100%);
    }

    .te-stars,
    .te-stars::before{
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: -4;
      background-repeat: no-repeat;
      animation: teStarTwinkle 10s ease-in-out infinite;
    }

    .te-stars{
      background-image:
        radial-gradient(3px 3px at 10% 22%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 28% 35%, rgba(129,140,248,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 55% 18%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 72% 30%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 86% 20%, rgba(94,234,212,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 18% 60%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 42% 65%, rgba(129,140,248,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 65% 55%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 82% 70%, rgba(244,114,182,1) 40%, transparent 60%),
        radial-gradient(3px 3px at 30% 82%, rgba(129,140,248,1) 40%, transparent 60%);
      opacity:.65;
    }

    .te-stars::before{
      content:"";
      background-image:
        radial-gradient(10px 10px at 10% 22%, rgba(244,114,182,0.30) 30%, transparent 70%),
        radial-gradient(10px 10px at 28% 35%, rgba(129,140,248,0.28) 30%, transparent 70%),
        radial-gradient(10px 10px at 55% 18%, rgba(244,114,182,0.30) 30%, transparent 70%),
        radial-gradient(10px 10px at 72% 30%, rgba(244,114,182,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 86% 20%, rgba(94,234,212,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 18% 60%, rgba(244,114,182,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 42% 65%, rgba(129,140,248,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 65% 55%, rgba(244,114,182,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 82% 70%, rgba(244,114,182,0.26) 30%, transparent 70%),
        radial-gradient(10px 10px at 30% 82%, rgba(129,140,248,0.26) 30%, transparent 70%);
      filter: blur(2px);
      opacity: .55;
    }

    @keyframes teStarTwinkle{
      0%{opacity:.55; transform:translateY(0)}
      50%{opacity:.90; transform:translateY(-4px)}
      100%{opacity:.55; transform:translateY(0)}
    }

    .navbar-te{
      position:sticky;
      top:0;
      z-index:1000;
      backdrop-filter: blur(10px);
      background: linear-gradient(180deg, rgba(14,14,22,.85), rgba(14,14,22,.45));
      border-bottom: 1px solid rgba(255,255,255,.12);
    }
    .navbar-brand img{width:64px; height:64px; object-fit:contain;}
    .nav-link{color:var(--muted)!important; font-weight:600;}
    .nav-link:hover{color:var(--text)!important;}
    .social-icons a{font-size:22px; color:var(--muted); margin:0 .35rem;}
    .social-icons a:hover{color:var(--accent-2);}

    .btn-cta{
      background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 80%);
      color:#0b0b10;
      border:0;
      font-weight:900;
      border-radius:999px;
      padding:.55rem 1rem;
      box-shadow:0 8px 30px rgba(36,204,206,.22);
      text-transform: uppercase;
      letter-spacing: .06em;
      font-size: 0.9rem;
    }

    .hero{
      position:relative;
      min-height:calc(100vh - 81px);
      display:grid;
      place-items:center;
      overflow:hidden;
      border-bottom:1px solid rgba(255,255,255,.10);
      z-index:1;
      background:#08090d;
    }

    .hero video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center 45%;
      opacity:.86;
      filter:saturate(1.12) contrast(1.08) brightness(.96);
      z-index:0;
    }

    .hero-overlay{
      position:absolute;
      inset:0;
      z-index:1;
      pointer-events:none;
      background:
        radial-gradient(65% 60% at 50% 42%, rgba(209,4,89,.08), transparent 65%),
        linear-gradient(90deg, rgba(11,11,16,.42) 0%, rgba(11,11,16,.20) 48%, rgba(11,11,16,.30) 100%),
        linear-gradient(180deg, rgba(11,11,16,.16) 0%, rgba(11,11,16,.08) 48%, rgba(11,11,16,.68) 100%);
    }

    .hero-content{
      position:relative;
      z-index:2;
      width:100%;
      max-width:1000px;
      padding:5rem 1rem 4rem;
      text-align:center;
    }

    .eyebrow{
      letter-spacing:.28em;
      text-transform:uppercase;
      font-size:.84rem;
      color:var(--accent-2);
      text-shadow:0 3px 16px rgba(0,0,0,.9);
    }

    .hero h1{
      font-weight:900;
      font-size:clamp(2.2rem, 4vw + 1rem, 4.4rem);
      line-height:1.25;
      margin:.4rem 0 1rem;
      text-shadow:0 4px 14px rgba(0,0,0,.95), 0 12px 34px rgba(0,0,0,.75);
    }

    .hero .te-serif{
      font-family:var(--serif);
      font-style:italic;
      font-weight:600;
      letter-spacing:.01em;
    }

    .hero-intro{
      max-width:760px;
      margin:0 auto;
      color:rgba(255,255,255,.94);
      font-size:clamp(1rem, .9rem + .45vw, 1.18rem);
      line-height:1.65;
      text-shadow:0 2px 8px rgba(0,0,0,1), 0 5px 22px rgba(0,0,0,.9);
    }

    .hero-schedule{
      margin:.9rem auto 0;
      color:#fff;
      font-size:clamp(.95rem, .88rem + .3vw, 1.08rem);
      text-shadow:0 2px 8px rgba(0,0,0,1), 0 5px 18px rgba(0,0,0,.9);
    }

    .hero .badges{
      margin-top:1.35rem;
      display:flex;
      gap:.75rem;
      justify-content:center;
      flex-wrap:wrap;
    }

    .chip{
      border:1px solid rgba(255,255,255,.28);
      color:#fff;
      padding:.5rem .82rem;
      border-radius:999px;
      background:rgba(7,9,14,.56);
      backdrop-filter:saturate(130%) blur(10px);
      -webkit-backdrop-filter:saturate(130%) blur(10px);
      font-size:.9rem;
      box-shadow:0 10px 30px rgba(0,0,0,.35);
      text-shadow:0 2px 6px rgba(0,0,0,.8);
    }

    .hero-logo{
      display:block;
      margin:0 auto 1.35rem;
      width:clamp(130px, 18vw, 215px);
      height:auto;
      filter:drop-shadow(0 6px 12px rgba(0,0,0,.9)) drop-shadow(0 18px 34px rgba(0,0,0,.55));
    }

    .hero-secondary-cta{
      border-radius:999px;
      padding:.6rem 1.4rem;
      border:1px solid rgba(255,255,255,.48);
      background:rgba(7,9,14,.68);
      color:var(--text);
      font-weight:600;
      text-transform:uppercase;
      font-size:.9rem;
      letter-spacing:.06em;
      backdrop-filter:blur(8px);
      -webkit-backdrop-filter:blur(8px);
    }

    .hero-secondary-cta:hover{
      background:rgba(255,255,255,.10);
      border-color:var(--accent-2);
      color:var(--accent-2);
    }

    @media (max-width:768px){
      .hero{min-height:82vh;}
      .hero video{
        opacity:.76;
        object-position:center center;
        filter:saturate(1.08) contrast(1.06) brightness(.92);
      }
      .hero-overlay{
        background:linear-gradient(180deg, rgba(11,11,16,.22) 0%, rgba(11,11,16,.22) 35%, rgba(11,11,16,.76) 100%);
      }
      .hero-content{padding:4rem 1rem 3rem;}
      .hero-logo{
        width:clamp(115px, 34vw, 180px);
        margin-bottom:1.15rem;
      }
      .hero-intro{line-height:1.55;}
    }

    @media (max-width:576px){
      .hero{min-height:86vh;}
      .hero h1{font-size:clamp(2rem, 10vw, 3rem);}
      .eyebrow{font-size:.72rem; letter-spacing:.22em;}
      .hero .badges{gap:.5rem;}
      .chip{padding:.42rem .68rem; font-size:.8rem;}
    }

    .section{
      padding: clamp(2.5rem, 2rem + 2vw, 4rem) 0;
      position:relative;
      z-index:1;
    }
    .section-title{display:flex; align-items:center; gap:.6rem; margin-bottom:1.1rem;}
    .title-dot{width:10px; height:10px; border-radius:999px; background:var(--accent);}
    .subtitle{color:var(--muted)}

    .panel{
      background: rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.12);
      border-radius: var(--radius);
      box-shadow: 0 10px 34px rgba(0,0,0,.28);
      backdrop-filter: saturate(130%) blur(10px);
    }

    .count-label{
      color: var(--muted);
      letter-spacing: .04em;
      text-transform: uppercase;
      font-weight: 800;
      font-size: .85rem;
    }
    .count-number{
      font-size: clamp(2.4rem, 3vw + 1.2rem, 4rem);
      font-weight: 900;
      line-height: 1;
      margin: .6rem 0 .3rem;
      background: linear-gradient(90deg, var(--accent), var(--accent-2));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      text-shadow: 0 12px 30px rgba(0,0,0,.35);
      font-variant-numeric: tabular-nums;
    }

    .group-heading{
      font-weight:900;
      font-size:1.35rem;
      margin:1.6rem 0 .8rem;
      display:flex;
      align-items:center;
      gap:.55rem;
    }
    .dot{width:10px; height:10px; border-radius:999px; display:inline-block}
    .dot-weekly{background:var(--accent-2)}
    .dot-friday{background:var(--accent-3)}
    .dot-thought{background:var(--accent)}
    .dot-special{background:#ffb020}

    .event-card{
      background: rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.12);
      border-radius:16px;
      overflow:hidden;
      transition:transform .25s ease, box-shadow .25s ease;
      backdrop-filter: saturate(130%) blur(10px);
      box-shadow: 0 10px 34px rgba(0,0,0,.28);
    }
    .event-card:hover{transform: translateY(-4px); box-shadow:0 16px 44px rgba(0,0,0,.35);}
    .event-thumb{position:relative}
    .event-thumb img{width:100%; height:220px; object-fit:cover; display:block; filter:saturate(1.05) contrast(1.05);}
    .price-badge{
      position:absolute; top:12px; left:12px;
      background:linear-gradient(135deg, var(--accent-3), var(--accent-2));
      color:#0b0b10; font-weight:900; padding:.4rem .6rem; border-radius:10px;
      box-shadow:0 6px 20px rgba(0,0,0,.25);
    }
    .event-body{padding:1rem}
    .event-meta{color:var(--muted); font-size:.95rem}
    .event-body h5{font-weight:900; margin:.25rem 0 .4rem}
    .event-body h5 a{color:var(--text)!important; text-decoration:none;}
    .event-body h5 a:hover{color:var(--accent-2)!important;}

    #event-banner{
      position: fixed;
      bottom: 14px;
      left: 50%;
      transform: translateX(-50%);
      width: min(1024px, calc(100% - 24px));
      z-index:1100;
      border-radius: 14px;
      padding:.9rem 2.75rem .9rem 1.1rem;
      color:#091014;
      font-weight:800;
      background: linear-gradient(90deg, var(--accent) 0%, var(--accent-2) 60%);
      box-shadow:0 18px 50px rgba(139,92,246,.28);
    }
    #event-banner a{color:#091014; text-decoration:underline}
    #close-banner{
      position:absolute;
      right:12px;
      top:50%;
      transform:translateY(-50%);
      cursor:pointer;
      font-size:22px;
      color:#091014;
    }

    .img-fluid{
      width:100%;
      height:auto;
      border-radius:12px;
      margin-bottom:15px;
      transition: transform .18s ease-out, box-shadow .18s ease-out;
    }
    .img-fluid:hover{transform: translateY(-4px); box-shadow:0 12px 40px rgba(0,0,0,.35);}

    .map-embed{
      border:1px solid rgba(255,255,255,.12);
      border-radius:var(--radius);
      overflow:hidden;
      background: rgba(255,255,255,.04);
    }
    .map-embed iframe{
      display:block;
    }
    footer{
      border-top:1px solid rgba(255,255,255,.10);
      position:relative;
      z-index:1;
    }

    @media (max-width: 768px){
      .event-thumb img{height:200px}
    }

    @media (max-width: 576px){
      .map-embed iframe{
        height: 360px;
      }
    }

    /* ===== React Liquid-Ether Background System Rules Overrides ===== */
    html, body {
      height: auto !important;
      overflow-y: auto !important;
    }
    body {
      display: block !important;
      min-height: auto !important;
      place-items: unset !important;
      background: #0a0d12 !important;
      font-family: Inter, system-ui, sans-serif !important;
    }
    :root {
      background-color: transparent !important;
      font-family: Inter, system-ui, sans-serif !important;
    }
    #root {
      position: fixed !important;
      inset: 0 !important;
      width: 100vw !important;
      height: 100vh !important;
      z-index: -6 !important;
      pointer-events: none !important;
      margin: 0 !important;
      padding: 0 !important;
      max-width: none !important;
      text-align: initial !important;
    }

    .social-cta-buttons .btn{
      border-radius: 999px;
      padding: 0.75rem 1.6rem;
      font-weight: 700;
      font-size: 0.95rem;
      letter-spacing: 0.02em;
      box-shadow: 0 10px 30px rgba(0,0,0,.35);
      transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
      text-transform: uppercase;
    }
    .social-cta-buttons .btn:hover{
      transform: translateY(-2px);
      box-shadow: 0 16px 40px rgba(0,0,0,.5);
    }

    .btn-instagram{
      border: 0;
      background: radial-gradient(circle at 30% 30%, #f9ed32 0, #fbdc2c 10%, #f9a233 20%, #f55555 35%, #e43767 45%, #d92d7a 55%, #b93ac9 75%, #8b5cf6 100%);
      color: #0a0d12;
      min-width: 230px;
    }
    .btn-instagram i{
      font-size: 1.1rem;
    }

    .btn-social-outline{
      border: 1px solid rgba(232,233,239,.35);
      background: rgba(11,11,16,0.7);
      color: var(--text);
      min-width: 180px;
    }
    .btn-social-outline:hover{
      border-color: var(--accent-2);
      color: var(--accent-2);
      background: rgba(255,255,255,0.04);
    }

    @media (max-width: 576px){
      .social-cta-buttons .btn{
        width: 100%;
      }
    }

    .video-vertical{
      position: relative;
      width: 100%;
      padding-top: 177.78%;
      overflow: hidden;
      border-radius: 16px;
      box-shadow: 0 12px 40px rgba(0,0,0,.45);
      background: #000;
    }

    .video-vertical iframe{
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      border: 0;
    }

    .video-card-caption{
      margin-top: .6rem;
      font-size: .9rem;
      color: var(--muted);
    }

    .seo-copy p{
      color: var(--muted);
      margin-bottom: 1rem;
    }
    .btn-whatsapp{
      border: 0;
      background: #25D366;
      color: #0a0d12;
      min-width: 230px;
    }

    .btn-whatsapp:hover{
      background: #1ebe5d;
      color: #0a0d12;
    }

    .launch-offer{
      border:1px solid rgba(36,204,206,.35);
      background:
        radial-gradient(700px 180px at 20% 0%, rgba(36,204,206,.14), transparent 60%),
        radial-gradient(700px 180px at 80% 100%, rgba(209,4,89,.16), transparent 60%),
        rgba(255,255,255,.07);
    }

    .official-update-panel{
      border:1px solid rgba(36,204,206,.45);
      background:
        radial-gradient(700px 200px at 15% 0%, rgba(36,204,206,.18), transparent 60%),
        radial-gradient(700px 200px at 85% 100%, rgba(139,92,246,.18), transparent 60%),
        rgba(255,255,255,.075);
    }

    .official-update-panel .alert-pill{
      display:inline-flex;
      align-items:center;
      gap:.4rem;
      border-radius:999px;
      padding:.35rem .75rem;
      background:rgba(36,204,206,.14);
      border:1px solid rgba(36,204,206,.34);
      color:var(--accent-2);
      font-size:.8rem;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.07em;
      margin-bottom:.9rem;
    }

    .official-venue-list{
      margin:0;
      padding-left:1.2rem;
      color:var(--muted);
    }

    .official-venue-list li{
      margin-bottom:.35rem;
    }


    .venue-list{
      display:grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap:1rem;
    }

    .venue-mini-card{
      border:1px solid rgba(255,255,255,.12);
      border-radius:16px;
      background:rgba(255,255,255,.06);
      padding:1rem;
      height:100%;
    }

    .venue-mini-card h3{
      font-size:1.05rem;
      font-weight:900;
      margin-bottom:.35rem;
    }

    .venue-mini-card .day-pill{
      display:inline-flex;
      align-items:center;
      border-radius:999px;
      padding:.25rem .55rem;
      background:rgba(36,204,206,.14);
      border:1px solid rgba(36,204,206,.28);
      color:var(--accent-2);
      font-size:.78rem;
      font-weight:800;
      text-transform:uppercase;
      letter-spacing:.05em;
      margin-bottom:.55rem;
    }

    @media (max-width: 992px){
      .venue-list{grid-template-columns:1fr;}
    }

    .pillar-link-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:1rem;
}

    .pillar-card{
      display:block;
      height:100%;
      padding:1.15rem;
      border-radius:16px;
      text-decoration:none;
      color:var(--text);
      background:rgba(255,255,255,.065);
      border:1px solid rgba(255,255,255,.12);
      transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
    }

    .pillar-card:hover{
      color:var(--text);
      transform:translateY(-4px);
      border-color:rgba(36,204,206,.36);
      background:rgba(255,255,255,.095);
      box-shadow:0 16px 42px rgba(0,0,0,.34);
    }

    .pillar-card .pillar-kicker{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      border-radius:999px;
      padding:.28rem .58rem;
      margin-bottom:.7rem;
      color:var(--accent-2);
      background:rgba(36,204,206,.12);
      border:1px solid rgba(36,204,206,.26);
      font-size:.76rem;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.06em;
    }

    .pillar-card h3{
      font-weight:900;
      font-size:1.15rem;
      margin-bottom:.45rem;
    }

    .pillar-card p{
      color:var(--muted);
      margin-bottom:0;
      font-size:.96rem;
    }

    .quick-start-card{
      border:1px solid rgba(36,204,206,.32);
      background:
        radial-gradient(700px 220px at 12% 0%, rgba(36,204,206,.13), transparent 60%),
        radial-gradient(700px 220px at 88% 100%, rgba(139,92,246,.14), transparent 60%),
        rgba(255,255,255,.07);
    }

    .quick-step{
      border:1px solid rgba(255,255,255,.12);
      border-radius:14px;
      padding:1rem;
      background:rgba(255,255,255,.055);
      height:100%;
    }

    .quick-step-number{
      width:34px;
      height:34px;
      border-radius:999px;
      display:inline-grid;
      place-items:center;
      margin-bottom:.65rem;
      color:#091014;
      background:linear-gradient(135deg, var(--accent), var(--accent-2));
      font-weight:900;
    }

    .footer-links{
      display:flex;
      flex-wrap:wrap;
      justify-content:center;
      gap:.75rem 1rem;
      margin:1rem 0;
    }

    .footer-links a{
      color:var(--muted);
      text-decoration:none;
      font-weight:700;
    }

    .footer-links a:hover{color:var(--accent-2);}

  @media (max-width: 1200px){
  .pillar-link-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
     @media (max-width: 576px){
  .pillar-link-grid{
    grid-template-columns:1fr;
  }
}
/* ===== Compact Nationalities Section ===== */
.nationality-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
  margin-top:1.25rem;
}

.nationality-chip{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.065);
  padding:.45rem .75rem;
  color:var(--text);
  font-weight:800;
  font-size:.92rem;
}

.nationality-chip .rank{
  width:24px;
  height:24px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  color:#091014;
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  font-size:.75rem;
  font-weight:900;
  flex:0 0 auto;
}

.nationality-highlight{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.35rem .7rem;
  background:rgba(36,204,206,.12);
  border:1px solid rgba(36,204,206,.28);
  color:var(--accent-2);
  font-weight:900;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:.85rem;
}



/* ===== Partners / Community Friends - Logo Grid ===== */
.partner-logo-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:1rem;
  margin-top:1.5rem;
}

.partner-logo-card{
  width:100%;
  min-height:120px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.055);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem;
  text-decoration:none;
  overflow:hidden;
  transition:transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.partner-logo-card:hover{
  transform:translateY(-4px);
  border-color:rgba(36,204,206,.34);
  background:rgba(255,255,255,.085);
  box-shadow:0 16px 42px rgba(0,0,0,.32);
}


/* Official partnership treatment */
.partner-logo-card.official-partner{
  position:relative;
  border-color:rgba(36,204,206,.48);
  background:
    radial-gradient(420px 120px at 50% 0%, rgba(36,204,206,.14), transparent 70%),
    rgba(255,255,255,.07);
}

.partner-logo-card.official-partner::before{
  content:"Official Partner";
  position:absolute;
  top:.55rem;
  left:.55rem;
  z-index:2;
  display:inline-flex;
  align-items:center;
  padding:.28rem .55rem;
  border-radius:999px;
  border:1px solid rgba(36,204,206,.34);
  background:rgba(8,10,15,.86);
  color:var(--accent-2);
  font-size:.67rem;
  font-weight:900;
  line-height:1;
  letter-spacing:.06em;
  text-transform:uppercase;
  box-shadow:0 6px 18px rgba(0,0,0,.28);
}

.partner-logo-card.official-partner:hover{
  border-color:rgba(36,204,206,.72);
  box-shadow:0 18px 48px rgba(36,204,206,.12), 0 16px 42px rgba(0,0,0,.34);
}

.partner-logo-card img{
  display:block;
  width:auto;
  max-width:100%;
  max-height:70px;
  object-fit:contain;
}

.partner-kicker{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.35rem .7rem;
  background:rgba(36,204,206,.12);
  border:1px solid rgba(36,204,206,.28);
  color:var(--accent-2);
  font-weight:900;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:.85rem;
}

/* Tablet */
@media (max-width: 992px){
  .partner-logo-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 576px){
  .partner-logo-grid{
    grid-template-columns: repeat(2, 1fr);
    gap:.75rem;
  }

  .partner-logo-card{
    min-height:90px;
    padding:.75rem;
  }

  .partner-logo-card img{
    max-height:52px;
  }
}




    /* ===== Updated Stay in the Loop Section ===== */
    .social-connect-panel{
      overflow:hidden;
    }

    .social-cta-buttons{
      display:grid !important;
      grid-template-columns:repeat(3, minmax(0, 1fr));
      gap:1rem;
      width:100%;
      max-width:980px;
      margin:0 auto;
    }

    .social-cta-buttons .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:100%;
      min-width:0 !important;
      min-height:52px;
      padding:.75rem 1rem;
      border-radius:999px;
      font-weight:800;
      font-size:.88rem;
      line-height:1.2;
      letter-spacing:.015em;
      text-transform:uppercase;
      white-space:normal;
      text-decoration:none;
      box-shadow:0 10px 30px rgba(0,0,0,.35);
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease,
                 color .2s ease, border-color .2s ease, filter .2s ease;
    }

    .social-cta-buttons .btn:hover{
      transform:translateY(-2px);
      box-shadow:0 16px 40px rgba(0,0,0,.5);
    }

    .btn-instagram{
      border:0;
      background:radial-gradient(
        circle at 30% 30%,
        #f9ed32 0,
        #fbdc2c 10%,
        #f9a233 20%,
        #f55555 35%,
        #e43767 45%,
        #d92d7a 55%,
        #b93ac9 75%,
        #8b5cf6 100%
      );
      color:#0a0d12;
    }

    .btn-instagram:hover{
      color:#0a0d12;
      filter:brightness(1.06);
    }

    .btn-instagram i{
      font-size:1.1rem;
    }

    .btn-whatsapp{
      border:0;
      background:#25D366;
      color:#0a0d12;
    }

    .btn-whatsapp:hover{
      background:#1ebe5d;
      color:#0a0d12;
    }

    .btn-social-outline{
      border:1px solid rgba(232,233,239,.35);
      background:rgba(11,11,16,.7);
      color:var(--text);
    }

    .btn-social-outline:hover{
      border-color:var(--accent-2);
      color:var(--accent-2);
      background:rgba(255,255,255,.04);
    }

    .newsletter-inline{
      max-width:980px;
      margin:1.5rem auto 0;
      padding:1.5rem;
      border:1px solid rgba(139,92,246,.34);
      border-radius:18px;
      background:
        radial-gradient(650px 180px at 10% 0%, rgba(139,92,246,.16), transparent 60%),
        radial-gradient(650px 180px at 90% 100%, rgba(36,204,206,.14), transparent 60%),
        rgba(255,255,255,.055);
    }

    .newsletter-inline-heading{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:.55rem;
      margin-bottom:.4rem;
      font-size:1.2rem;
      font-weight:900;
    }

    .newsletter-inline-heading i{
      color:var(--accent-2);
    }

    .newsletter-inline-description{
      max-width:720px;
      margin:0 auto 1.2rem;
      color:var(--muted);
    }

    .newsletter-inline-form{
      display:grid;
      grid-template-columns:minmax(180px, .8fr) minmax(260px, 1.4fr) auto;
      gap:.75rem;
      align-items:center;
    }

    .newsletter-inline-form input{
      width:100%;
      min-width:0;
      min-height:50px;
      padding:.75rem 1rem;
      border:1px solid rgba(255,255,255,.18);
      border-radius:999px;
      background:rgba(8,10,15,.76);
      color:var(--text);
      font:inherit;
      font-size:.95rem;
      outline:none;
      transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
    }

    .newsletter-inline-form input::placeholder{
      color:rgba(169,173,193,.78);
    }

    .newsletter-inline-form input:focus{
      border-color:var(--accent-2);
      background:rgba(8,10,15,.92);
      box-shadow:0 0 0 4px rgba(36,204,206,.12);
    }

    .newsletter-submit{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:50px;
      padding:.75rem 1.35rem;
      border:0;
      border-radius:999px;
      background:linear-gradient(135deg, var(--accent), var(--accent-2));
      color:#091014;
      font:inherit;
      font-size:.88rem;
      font-weight:900;
      letter-spacing:.025em;
      text-transform:uppercase;
      white-space:nowrap;
      cursor:pointer;
      box-shadow:0 10px 30px rgba(36,204,206,.18);
      transition:transform .2s ease, filter .2s ease, box-shadow .2s ease;
    }

    .newsletter-submit:hover{
      transform:translateY(-2px);
      filter:brightness(1.08);
      box-shadow:0 15px 38px rgba(36,204,206,.25);
    }

    .newsletter-submit:disabled{
      cursor:wait;
      opacity:.72;
      transform:none;
    }

    .newsletter-message{
      display:none;
      margin:1rem auto 0;
      padding:.8rem 1rem;
      border-radius:12px;
      font-size:.9rem;
      font-weight:700;
    }

    .newsletter-message.is-visible{
      display:block;
    }

    .newsletter-message.is-success{
      color:#b8f5cb;
      background:rgba(37,211,102,.12);
      border:1px solid rgba(37,211,102,.30);
    }

    .newsletter-message.is-error{
      color:#ffc4c4;
      background:rgba(245,85,85,.12);
      border:1px solid rgba(245,85,85,.30);
    }

    .newsletter-privacy{
      margin:.8rem 0 0;
      color:var(--muted);
      font-size:.78rem;
    }

    @media (max-width:991px){
      .social-cta-buttons{
        grid-template-columns:repeat(2, minmax(0, 1fr));
      }

      .newsletter-inline-form{
        grid-template-columns:1fr 1fr;
      }

      .newsletter-submit{
        grid-column:1 / -1;
        width:100%;
      }
    }

    @media (max-width:576px){
      .social-cta-buttons{
        grid-template-columns:1fr;
      }

      .newsletter-inline{
        padding:1.2rem;
      }

      .newsletter-inline-form{
        grid-template-columns:1fr;
      }

      .newsletter-submit{
        grid-column:auto;
        width:100%;
      }
    }
.hero-gradient-text{
  background: linear-gradient(
    90deg,
    #E166C1 0%,
    #F3B4DE 85%,
    #FFFFF1 100%
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;

  text-shadow: none;

  filter:
    drop-shadow(0 3px 8px rgba(0,0,0,.75))
    drop-shadow(0 8px 22px rgba(0,0,0,.45));
}


    /* ===== 2026 Professional UI Refinements ===== */
    html{scroll-behavior:smooth; scroll-padding-top:96px;}
    body{overflow-x:hidden;}
    a{transition:color .2s ease, opacity .2s ease;}
    a:focus-visible, button:focus-visible, input:focus-visible{
      outline:3px solid rgba(36,204,206,.62);
      outline-offset:3px;
    }
    .skip-link{
      position:fixed; left:1rem; top:-80px; z-index:2000;
      padding:.7rem 1rem; border-radius:10px;
      background:#fff; color:#0b0b10; font-weight:900;
      transition:top .2s ease;
    }
    .skip-link:focus{top:1rem;}
    .navbar-te{box-shadow:0 10px 35px rgba(0,0,0,.16);}
    .navbar-brand img{transition:transform .25s ease;}
    .navbar-brand:hover img{transform:scale(1.04);}
    .section-title h2{letter-spacing:-.035em;}
    .panel,.event-card,.pillar-card,.venue-mini-card{isolation:isolate;}
    .panel{box-shadow:0 18px 60px rgba(0,0,0,.20);}
    .event-body{display:flex; flex-direction:column; min-height:235px;}
    .event-body .btn{margin-top:auto; align-self:flex-start;}
    .party-feature{
      overflow:hidden;
      border:1px solid rgba(209,4,89,.42);
      background:
        radial-gradient(900px 300px at 0% 0%, rgba(209,4,89,.20), transparent 58%),
        radial-gradient(850px 300px at 100% 100%, rgba(36,204,206,.16), transparent 58%),
        rgba(255,255,255,.075);
    }
    .party-kicker{
      display:inline-flex; align-items:center; gap:.45rem;
      padding:.35rem .72rem; margin-bottom:.9rem; border-radius:999px;
      border:1px solid rgba(244,114,182,.32);
      background:rgba(209,4,89,.14); color:#f9a8d4;
      font-size:.8rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase;
    }
    .party-activities{display:flex; flex-wrap:wrap; gap:.6rem; margin:1.2rem 0 1.5rem;}
    .party-activity{
      display:inline-flex; align-items:center; gap:.42rem;
      padding:.48rem .72rem; border-radius:999px;
      border:1px solid rgba(255,255,255,.14);
      background:rgba(7,9,14,.48); color:var(--text); font-weight:750; font-size:.9rem;
    }
    .party-details{
      height:100%; padding:1.2rem; border-radius:16px;
      border:1px solid rgba(255,255,255,.13); background:rgba(7,9,14,.38);
    }
    .party-details-row{display:flex; gap:.8rem; padding:.72rem 0; border-bottom:1px solid rgba(255,255,255,.09);}
    .party-details-row:last-child{border-bottom:0;}
    .party-details-row i{width:20px; color:var(--accent-2); margin-top:.2rem; text-align:center;}
    .party-details-row strong{display:block; color:var(--text);}
    .venue-list{grid-template-columns:repeat(3,minmax(0,1fr));}
    .day-pill.party-day{color:#f9a8d4; background:rgba(209,4,89,.14); border-color:rgba(244,114,182,.3);}
    .maps-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem;}
    .maps-grid .map-embed iframe{height:330px;}
    .map-label{padding:.8rem 1rem; font-weight:900; border-top:1px solid rgba(255,255,255,.1);}
    @media(max-width:992px){.venue-list,.maps-grid{grid-template-columns:1fr;}.maps-grid .map-embed iframe{height:340px;}}
    @media(prefers-reduced-motion:reduce){
      html{scroll-behavior:auto;}
      *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
    }

  
    /* =========================================================
       FLAT / VIDEO-FIRST HOMEPAGE REFRESH
       Same Inter + Playfair typography and existing Linguas palette.
       ========================================================= */

    body{
      background:#0b0b10 !important;
    }

    /* Keep the original Liquid Ether + star field behind the flatter layout */
    .te-vignette{
      display:block !important;
      opacity:.72;
    }

    .te-stars{
      display:block !important;
      opacity:.82;
    }

    /* Keep the old grid suppressed so the page stays cleaner and flatter */
    .grid-bg{
      display:none !important;
    }

    /* ----- Navigation ----- */
    .navbar-te{
      position:absolute;
      top:0;
      left:0;
      right:0;
      z-index:1000;
      min-height:72px;
      background:linear-gradient(180deg, rgba(5,6,9,.70), rgba(5,6,9,0)) !important;
      border-bottom:0 !important;
      box-shadow:none !important;
      backdrop-filter:none !important;
    }

    .navbar-te .container{
      max-width:1380px;
    }

    .navbar-brand img{
      width:54px;
      height:54px;
    }

    .nav-link{
      color:rgba(255,255,255,.86) !important;
      font-size:.88rem;
      font-weight:700;
    }

    .nav-link:hover{
      color:#fff !important;
    }

    .navbar-te .btn-cta{
      padding:.52rem .9rem;
      font-size:.78rem;
    }

    .social-icons a{
      color:rgba(255,255,255,.82);
      font-size:18px;
    }

    /* The fixed venue banner competes with the video. Keep the information,
       but make it a normal slim strip below the hero instead. */
    #event-banner{
      position:relative !important;
      inset:auto !important;
      transform:none !important;
      width:100% !important;
      border-radius:0 !important;
      margin:0 !important;
      padding:.72rem 3.5rem .72rem 1rem !important;
      text-align:center;
      background:#15151c !important;
      color:rgba(255,255,255,.78) !important;
      box-shadow:none !important;
      border-bottom:1px solid rgba(255,255,255,.08);
      font-size:.78rem;
      font-weight:700;
    }

    #event-banner a,
    #close-banner{
      color:var(--accent-2) !important;
    }

    /* ----- Hero ----- */
    .hero{
      position:relative;
      min-height:100svh;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
      border:0;
      background:#050609;
    }

    .hero video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center 48%;
      opacity:1 !important;
      filter:saturate(1.08) contrast(1.03) brightness(1.04) !important;
    }

    .hero-overlay{
      position:absolute;
      inset:0;
      background:
        linear-gradient(180deg,
          rgba(3,4,7,.24) 0%,
          rgba(3,4,7,.03) 26%,
          rgba(3,4,7,.05) 52%,
          rgba(3,4,7,.34) 76%,
          rgba(3,4,7,.86) 100%) !important;
    }

    .hero-content{
      position:relative;
      z-index:2;
      max-width:920px;
      padding:12rem 1rem 4.2rem;
      margin-top:auto;
      margin-bottom:6vh;
      text-align:center;
    }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      margin-bottom:1rem;
      padding:.38rem .72rem;
      border:1px solid rgba(255,255,255,.24);
      border-radius:999px;
      background:rgba(8,9,13,.20);
      color:#fff;
      font-size:.68rem;
      font-weight:800;
      letter-spacing:.14em;
      text-transform:uppercase;
      text-shadow:0 2px 10px rgba(0,0,0,.9);
      backdrop-filter:blur(7px);
    }

    .hero h1{
      max-width:850px;
      margin:0 auto .9rem;
      color:#fff;
      font-size:clamp(3.1rem, 6vw, 6.4rem);
      line-height:.88;
      letter-spacing:-.055em;
      font-weight:900;
      text-shadow:0 5px 20px rgba(0,0,0,.92);
    }

    .hero h1 .te-serif{
      display:block;
      margin-top:.12em;
      font-size:.72em;
      line-height:.98;
    }

    .hero-gradient-text{
  background: linear-gradient(
    90deg,
    #E166C1 0%,
    #F3B4DE 45%,
    #FFFFF1 100%
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;

  text-shadow: none;

  filter:
    drop-shadow(0 3px 8px rgba(0,0,0,.75))
    drop-shadow(0 8px 22px rgba(0,0,0,.45));
}

    .hero-intro{
      max-width:620px;
      margin:0 auto;
      color:rgba(255,255,255,.92);
      font-size:clamp(.96rem, .88rem + .35vw, 1.12rem);
      line-height:1.55;
      text-shadow:0 3px 12px rgba(0,0,0,.95);
    }

    .hero-actions{
      display:flex;
      justify-content:center;
      gap:.7rem;
      flex-wrap:wrap;
      margin-top:1.35rem;
    }

    .hero .btn-cta,
    .hero .hero-secondary-cta{
      min-width:145px;
      padding:.68rem 1.18rem;
      border-radius:999px;
      font-size:.78rem;
      font-weight:900;
      letter-spacing:.045em;
      text-transform:uppercase;
    }

    .hero-secondary-cta{
      border:1px solid rgba(255,255,255,.42);
      background:rgba(8,9,13,.24);
      color:#fff;
      box-shadow:none;
    }

    .hero-facts{
      display:flex;
      align-items:stretch;
      justify-content:center;
      gap:0;
      max-width:700px;
      margin:2.2rem auto 0;
      border-top:1px solid rgba(255,255,255,.22);
    }

    .hero-fact{
      flex:1;
      padding:1rem .8rem 0;
      text-align:center;
    }

    .hero-fact + .hero-fact{
      border-left:1px solid rgba(255,255,255,.16);
    }

    .hero-fact strong{
      display:block;
      color:#fff;
      font-size:1.02rem;
      font-weight:900;
      line-height:1.15;
    }

    .hero-fact span{
      display:block;
      margin-top:.26rem;
      color:rgba(255,255,255,.62);
      font-size:.68rem;
      font-weight:700;
      letter-spacing:.04em;
      text-transform:uppercase;
    }

    /* ----- Flat page sections ----- */
    .section,
    .section.pt-0{
      padding:clamp(4.5rem, 6vw, 7.5rem) 0 !important;
      border-top:1px solid rgba(255,255,255,.06);
      background:rgba(11,11,16,.58);
    }

    .section:nth-of-type(even){
      background:rgba(16,16,23,.64);
    }

    .section:nth-of-type(3n){
      background:rgba(13,13,19,.56);
    }

    /* Make section wrappers themselves flat */
    .section > .container > .panel{
      padding:0 !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      backdrop-filter:none !important;
      -webkit-backdrop-filter:none !important;
    }

    .official-update-panel,
    .launch-offer,
    .quick-start-card,
    .social-connect-panel,
    .party-feature{
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
    }

    .section-title{
      gap:.7rem;
      margin-bottom:1.2rem;
    }

    .section-title h2{
      font-size:clamp(2.1rem, 3.7vw, 4rem);
      line-height:.98;
      letter-spacing:-.05em;
      max-width:960px;
    }

    .title-dot{
      width:8px;
      height:8px;
      flex:0 0 auto;
    }

    .subtitle,
    .seo-copy p{
      max-width:900px;
      line-height:1.75;
      color:#a9adc1;
    }

    /* Inner items remain usable but visually quiet */
    .pillar-card,
    .venue-mini-card,
    .quick-step,
    .event-card,
    .party-details,
    .map-embed,
    .partner-logo-card,
    .newsletter-inline,
    .video-vertical{
      background:rgba(255,255,255,.018) !important;
      border:1px solid rgba(255,255,255,.10) !important;
      border-radius:10px !important;
      box-shadow:none !important;
      backdrop-filter:none !important;
    }

    .pillar-card:hover,
    .event-card:hover,
    .partner-logo-card:hover{
      transform:translateY(-2px);
      border-color:rgba(36,204,206,.30) !important;
      background:rgba(255,255,255,.045) !important;
      box-shadow:none !important;
    }

    .nationality-chip,
    .party-activity,
    .chip{
      background:rgba(255,255,255,.04);
      box-shadow:none;
    }

    .count-number{
      font-size:clamp(4rem, 9vw, 8rem);
      letter-spacing:-.055em;
    }

    /* Make embedded/visual sections breathe more */
    .event-thumb img{
      height:260px;
    }

    /* ----- Mobile ----- */
    @media (max-width:991px){
      .navbar-te{
        background:rgba(5,6,9,.88) !important;
      }

      .navbar-collapse{
        padding:1rem 0 1.3rem;
      }

      .hero-content{
        padding:9rem 1rem 3rem;
        margin-bottom:3vh;
      }

      .hero h1{
        font-size:clamp(2.8rem, 11vw, 5rem);
      }
    }

    @media (max-width:576px){
      .hero{
        min-height:92svh;
      }

      .hero video{
        object-position:center center;
      }

      .hero-overlay{
        background:
          linear-gradient(180deg,
            rgba(3,4,7,.20) 0%,
            rgba(3,4,7,.04) 32%,
            rgba(3,4,7,.18) 62%,
            rgba(3,4,7,.88) 100%) !important;
      }

      .hero-content{
        padding:7.5rem .9rem 2.4rem;
        margin-bottom:0;
      }

      .hero h1{
        font-size:clamp(2.55rem, 13vw, 4rem);
      }

      .hero-intro{
        max-width:94%;
      }

      .hero-facts{
        margin-top:1.7rem;
      }

      .hero-fact{
        padding:.8rem .35rem 0;
      }

      .hero-fact strong{
        font-size:.82rem;
      }

      .hero-fact span{
        font-size:.58rem;
      }

      #event-banner{
        text-align:left;
        font-size:.72rem;
      }

      .section,
      .section.pt-0{
        padding:4rem 0 !important;
      }

      .section-title h2{
        font-size:2.2rem;
      }
    }

  
    /* ===== Flat Social Proof Strip ===== */
    .social-proof-strip{
      position:relative;
      z-index:2;
      padding:2.8rem 0 2.5rem;
      background:rgba(15,15,21,.62);
      border-top:1px solid rgba(255,255,255,.06);
      border-bottom:1px solid rgba(255,255,255,.07);
    }

    .social-proof-intro{
      text-align:center;
      max-width:780px;
      margin:0 auto 2rem;
    }

    .social-proof-kicker{
      display:block;
      margin-bottom:.45rem;
      color:var(--accent-2);
      font-size:.72rem;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
    }

    .social-proof-intro h2{
      margin:0;
      color:var(--text);
      font-size:clamp(1.9rem, 3.2vw, 3.25rem);
      line-height:1;
      letter-spacing:-.045em;
      font-weight:900;
    }

    .social-proof-intro p{
      margin:.75rem auto 0;
      color:var(--muted);
      font-size:.96rem;
    }

    .social-proof-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      max-width:1050px;
      margin:0 auto;
      border-top:1px solid rgba(255,255,255,.09);
      border-bottom:1px solid rgba(255,255,255,.09);
    }

    .social-proof-item{
      display:flex;
      min-width:0;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      padding:1.55rem 1rem;
      color:var(--text);
      text-align:center;
      text-decoration:none;
      transition:background .2s ease, color .2s ease;
    }

    .social-proof-item + .social-proof-item{
      border-left:1px solid rgba(255,255,255,.09);
    }

    .social-proof-item:hover{
      color:var(--text);
      background:rgba(255,255,255,.025);
    }

    .social-proof-item i{
      min-height:22px;
      margin-bottom:.6rem;
      color:var(--accent-2);
      font-size:1.15rem;
    }

    .social-proof-item strong{
      display:block;
      font-size:clamp(1.65rem, 2.7vw, 2.5rem);
      line-height:1;
      font-weight:900;
      letter-spacing:-.04em;
    }

    .social-proof-item span{
      display:block;
      margin-top:.4rem;
      color:var(--muted);
      font-size:.72rem;
      font-weight:800;
      letter-spacing:.055em;
      text-transform:uppercase;
    }

    .social-proof-note{
      margin:1rem auto 0;
      color:rgba(169,173,193,.62);
      text-align:center;
      font-size:.7rem;
    }

    @media(max-width:768px){
      .social-proof-strip{
        padding:2.35rem 0 2.15rem;
      }

      .social-proof-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
      }

      .social-proof-item:nth-child(3),
      .social-proof-item:nth-child(4){
        border-top:1px solid rgba(255,255,255,.09);
      }

      .social-proof-item:nth-child(3){
        border-left:0;
      }
    }

    @media(max-width:420px){
      .social-proof-item{
        padding:1.25rem .5rem;
      }

      .social-proof-item strong{
        font-size:1.7rem;
      }

      .social-proof-item span{
        font-size:.62rem;
      }
    }

  
    /* ===== Linguas FAQ Accordion ===== */
    .linguas-faq{
      max-width:980px;
      margin-top:1.5rem;
      border-top:1px solid rgba(255,255,255,.12);
    }

    .linguas-faq .accordion-item{
      background:transparent;
      border:0;
      border-bottom:1px solid rgba(255,255,255,.12);
      border-radius:0 !important;
      color:var(--text);
    }

    .linguas-faq .accordion-button{
      padding:1.3rem .2rem;
      background:transparent;
      color:var(--text);
      box-shadow:none;
      font-family:Inter, system-ui, sans-serif;
      font-size:1.02rem;
      font-weight:800;
    }

    .linguas-faq .accordion-button:not(.collapsed){
      background:transparent;
      color:var(--accent-2);
      box-shadow:none;
    }

    .linguas-faq .accordion-button:focus{
      border-color:transparent;
      box-shadow:none;
    }

    .linguas-faq .accordion-button::after{
      filter:invert(1) brightness(1.6);
      opacity:.7;
    }

    .linguas-faq .accordion-button:not(.collapsed)::after{
      filter:none;
    }

    .linguas-faq .accordion-body{
      padding:.1rem .2rem 1.45rem;
      max-width:900px;
      color:var(--muted);
      line-height:1.75;
    }

    .linguas-faq .accordion-body a{
      color:var(--accent-2);
    }

  
    /* ===== Shared content spine + footer alignment ===== */
    #faq .container,
    .site-footer .container{
      max-width:1020px;
    }

    #faq .linguas-faq{
      max-width:none;
      width:100%;
    }

    .site-footer{
      position:relative;
      z-index:1;
      padding:3.4rem 0 2.5rem;
      border-top:1px solid rgba(255,255,255,.08);
      background:rgba(8,9,13,.42);
      text-align:left;
    }

    .footer-inner{
      width:100%;
      max-width:980px;
      margin:0 auto;
    }

    .footer-brand{
      display:flex;
      align-items:baseline;
      gap:.75rem;
      flex-wrap:wrap;
      margin-bottom:.75rem;
    }

    .footer-brand strong{
      color:var(--text);
      font-size:1.15rem;
      font-weight:900;
      letter-spacing:.08em;
    }

    .footer-brand span{
      color:var(--accent-2);
      font-size:.78rem;
      font-weight:800;
      letter-spacing:.05em;
      text-transform:uppercase;
    }

    .footer-summary{
      max-width:780px;
      margin:0 0 1.35rem;
      color:var(--muted);
      font-size:.9rem;
      line-height:1.7;
    }

    .site-footer .footer-links{
      display:flex;
      justify-content:flex-start;
      align-items:center;
      flex-wrap:wrap;
      gap:.65rem 1.15rem;
      margin:0 0 1.4rem;
    }

    .site-footer .footer-links a{
      color:rgba(232,233,239,.82);
      font-size:.82rem;
      font-weight:750;
      text-decoration:none;
      white-space:nowrap;
    }

    .site-footer .footer-links a:hover{
      color:var(--accent-2);
    }

    .footer-socials{
      display:flex;
      align-items:center;
      gap:1rem;
      margin-bottom:1.35rem;
    }

    .footer-socials a{
      width:34px;
      height:34px;
      display:grid;
      place-items:center;
      border:1px solid rgba(255,255,255,.12);
      border-radius:999px;
      color:var(--text);
      text-decoration:none;
      background:rgba(255,255,255,.025);
    }

    .footer-socials a:hover{
      color:var(--accent-2);
      border-color:rgba(36,204,206,.38);
      background:rgba(36,204,206,.06);
    }

    .footer-bottom{
      display:flex;
      flex-wrap:wrap;
      gap:.3rem .8rem;
      padding-top:1.15rem;
      border-top:1px solid rgba(255,255,255,.08);
      color:rgba(169,173,193,.72);
      font-size:.72rem;
      line-height:1.6;
    }

    .footer-bottom a{
      color:rgba(169,173,193,.9);
      text-decoration:none;
    }

    .footer-bottom a:hover{
      color:var(--accent-2);
    }

    /* Let more of the Ether colour breathe through the content area */
    main{
      position:relative;
      z-index:1;
      background:transparent;
    }

    @media(max-width:768px){
      .site-footer{
        padding:2.8rem 0 2.2rem;
      }

      .site-footer .footer-links{
        gap:.6rem .9rem;
      }

      .site-footer .footer-links a{
        white-space:normal;
      }

      .footer-bottom{
        flex-direction:column;
        gap:.15rem;
      }
    }
.pillar-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  overflow: hidden;
}

.pillar-card-main {
  display: block;
  flex: 1;
  color: inherit;
  text-decoration: none;
  padding: 1.5rem;
}

.pillar-card-main:hover {
  color: inherit;
  text-decoration: none;
}

.pillar-instagram {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  padding: 0.8rem 1rem;

  border-top: 1px solid rgba(225, 48, 108, 0.35);

  background: linear-gradient(
    90deg,
    rgba(131, 58, 180, 0.12),
    rgba(225, 48, 108, 0.16),
    rgba(245, 96, 64, 0.12)
  );

  color: #e1306c;
  font-size: 0.9rem;
  font-weight: 700;
  text-decoration: none;

  transition:
    background 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.pillar-instagram i {
  font-size: 1.15rem;
  color: #e1306c;
}

.pillar-instagram:hover {
  color: #ffffff;
  text-decoration: none;

  background: linear-gradient(
    90deg,
    #833ab4,
    #e1306c,
    #f56040
  );
}

.pillar-instagram:hover i {
  color: #ffffff;
}
  

    /* =========================================================
       PERSISTENT TOP NAVIGATION — FINAL OVERRIDE
       Keep this block at the END of the stylesheet so older
       homepage refresh rules cannot change the menu positioning.
       ========================================================= */
    :root{
      --nav-height:72px;
    }

    html{
      scroll-padding-top:calc(var(--nav-height) + 18px) !important;
    }

    body{
      padding-top:var(--nav-height) !important;
    }

    .navbar-te{
      position:fixed !important;
      top:0 !important;
      left:0 !important;
      right:0 !important;
      width:100% !important;
      min-height:var(--nav-height) !important;
      z-index:2500 !important;
      background:rgba(7,8,12,.90) !important;
      border-bottom:1px solid rgba(255,255,255,.10) !important;
      box-shadow:0 10px 34px rgba(0,0,0,.24) !important;
      backdrop-filter:saturate(135%) blur(16px) !important;
      -webkit-backdrop-filter:saturate(135%) blur(16px) !important;
    }

    .navbar-te .container{
      min-height:var(--nav-height);
    }

    .navbar-te .navbar-brand,
    .navbar-te .navbar-toggler,
    .navbar-te .nav-link,
    .navbar-te .social-icons a,
    .navbar-te .btn-cta{
      position:relative;
      z-index:1;
    }

    .navbar-te .nav-link{
      color:rgba(255,255,255,.86) !important;
    }

    .navbar-te .nav-link:hover,
    .navbar-te .nav-link:focus{
      color:#fff !important;
    }

    .navbar-te .navbar-toggler{
      border-color:rgba(255,255,255,.18);
      box-shadow:none !important;
    }

    .hero{
      min-height:calc(100svh - var(--nav-height)) !important;
    }

    #event-banner{
      z-index:1200 !important;
    }

    .skip-link{
      z-index:3000 !important;
    }

    @media (max-width:991.98px){
      :root{
        --nav-height:70px;
      }

      .navbar-te{
        background:rgba(7,8,12,.96) !important;
      }

      .navbar-te .navbar-collapse{
        max-height:calc(100vh - var(--nav-height));
        overflow-y:auto;
        padding:1rem 0 1.25rem;
        border-top:1px solid rgba(255,255,255,.08);
      }

      .navbar-te .navbar-nav{
        align-items:stretch !important;
      }

      .navbar-te .nav-link{
        padding:.72rem .25rem;
      }

      .navbar-te .btn-cta{
        display:inline-flex;
        justify-content:center;
        margin:.35rem 0 .55rem;
      }

      .navbar-te .social-icons{
        padding-top:.25rem;
      }

      .hero-content{
        padding-top:4.5rem !important;
      }
    }

    @media (max-width:576px){
      .navbar-brand img{
        width:50px !important;
        height:50px !important;
      }
    }

  

    /* =========================================================
       2026 ALIGNMENT SYSTEM
       Section-level headings and introductions are centred.
       Cards, lists, event details and longer reading content stay left aligned.
       ========================================================= */
    main .section-title{
      justify-content:center !important;
      text-align:center;
      width:100%;
    }

    main .section-title h2{
      margin-left:auto !important;
      margin-right:auto !important;
      text-align:center;
    }

    main .section > .container > .subtitle,
    main .section > .container > .seo-copy > .subtitle,
    main .panel > .subtitle,
    main .social-proof-intro,
    main .newsletter-inline-description{
      margin-left:auto !important;
      margin-right:auto !important;
      text-align:center;
    }

    /* Keep detail-oriented content easy to scan. */
    main .event-card,
    main .event-body,
    main .venue-mini-card,
    main .quick-step,
    main .party-details,
    main .official-venue-list,
    main .pillar-card,
    main .seo-copy p,
    main .footer-summary,
    main dl,
    main ul:not(.navbar-nav){
      text-align:left;
    }

    /* Introductory SEO heading is centred, its long-form paragraphs remain left aligned. */
    main .seo-copy .section-title{
      justify-content:center !important;
    }

    /* Pills/chips read better as centred groups at section level. */
    main .nationality-highlight,
    main .partner-kicker,
    main .alert-pill{
      margin-left:auto;
      margin-right:auto;
    }

    main .nationality-chips,
    main .party-activities{
      justify-content:center;
    }

    @media (max-width: 576px){
      main .section-title h2{
        max-width:100%;
      }
      main .section > .container > .subtitle,
      main .panel > .subtitle{
        max-width:92%;
      }
    }


    /* ===== Work With Us ===== */
    .work-with-us-panel{
      position:relative;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.11);
      background:
        radial-gradient(900px 300px at 0% 0%, rgba(36,204,206,.10), transparent 60%),
        radial-gradient(900px 320px at 100% 100%, rgba(139,92,246,.12), transparent 62%),
        rgba(255,255,255,.045);
    }

    .work-with-us-intro{
      max-width:820px;
      margin-bottom:1.5rem;
    }

    .work-path-grid{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:1rem;
    }

    .work-path-card{
      position:relative;
      display:flex;
      flex-direction:column;
      min-height:330px;
      padding:1.5rem;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.13);
      text-decoration:none;
      color:var(--text);
      background:rgba(8,10,15,.58);
      overflow:hidden;
      transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
    }

    .work-path-card::after{
      content:"";
      position:absolute;
      inset:auto -90px -110px auto;
      width:250px;
      height:250px;
      border-radius:50%;
      pointer-events:none;
      background:rgba(36,204,206,.08);
      filter:blur(2px);
    }

    .work-path-card.host-path::after{
      background:rgba(139,92,246,.10);
    }

    .work-path-card:hover{
      color:var(--text);
      transform:translateY(-5px);
      border-color:rgba(36,204,206,.42);
      background:rgba(255,255,255,.075);
      box-shadow:0 20px 50px rgba(0,0,0,.32);
    }

    .work-path-card.host-path:hover{
      border-color:rgba(139,92,246,.48);
    }

    .work-path-icon{
      width:50px;
      height:50px;
      display:grid;
      place-items:center;
      margin-bottom:1.1rem;
      border-radius:15px;
      background:rgba(36,204,206,.12);
      border:1px solid rgba(36,204,206,.25);
      color:var(--accent-2);
      font-size:1.15rem;
    }

    .host-path .work-path-icon{
      background:rgba(139,92,246,.14);
      border-color:rgba(139,92,246,.28);
      color:#c4b5fd;
    }

    .work-path-kicker{
      display:inline-flex;
      align-self:flex-start;
      padding:.3rem .62rem;
      margin-bottom:.8rem;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.055);
      color:var(--muted);
      font-size:.72rem;
      font-weight:900;
      letter-spacing:.07em;
      text-transform:uppercase;
    }

    .work-path-card h3{
      margin:0 0 .75rem;
      font-size:clamp(1.45rem,1.2rem + .7vw,2rem);
      font-weight:900;
      letter-spacing:-.025em;
    }

    .work-path-card p{
      color:var(--muted);
      line-height:1.7;
      margin-bottom:1.3rem;
      max-width:620px;
    }

    .work-path-link{
      position:relative;
      z-index:1;
      display:inline-flex;
      align-items:center;
      gap:.55rem;
      margin-top:auto;
      font-weight:900;
      color:var(--accent-2);
    }

    .host-path .work-path-link{
      color:#c4b5fd;
    }

    .work-path-link i{
      transition:transform .2s ease;
    }

    .work-path-card:hover .work-path-link i{
      transform:translateX(4px);
    }

    @media(max-width:768px){
      .work-path-grid{grid-template-columns:1fr;}
      .work-path-card{min-height:285px;padding:1.25rem;}
    }
/* =========================================================
   STAY IN THE LOOP
   Linguas palette:
   Pink  #E166C1
   Navy  #2A3050
   Cream #FFFFF1
   ========================================================= */

.social-connect-panel{
  overflow:hidden;
}

/* Buttons */
.social-cta-buttons{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.9rem;
  width:100%;
  max-width:980px;
  margin:0 auto;
}

.social-cta-buttons .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  width:100%;
  min-width:0 !important;
  min-height:52px;

  padding:.78rem 1rem;

  border-radius:10px;

  font-weight:800;
  font-size:.88rem;
  line-height:1.2;

  letter-spacing:.02em;
  text-transform:uppercase;

  text-decoration:none;

  box-shadow:none !important;

  transition:
    transform .18s ease,
    background-color .18s ease,
    color .18s ease,
    border-color .18s ease;
}

.social-cta-buttons .btn:hover{
  transform:translateY(-2px);
}

/* Pink button */
.btn-social-primary{
  background:#E166C1 !important;
  color:#2A3050 !important;
  border:1px solid #E166C1 !important;
}

.btn-social-primary:hover{
  background:#FFFFF1 !important;
  color:#2A3050 !important;
  border-color:#FFFFF1 !important;
}

/* Cream button */
.btn-social-cream{
  background:#FFFFF1 !important;
  color:#2A3050 !important;
  border:1px solid #FFFFF1 !important;
}

.btn-social-cream:hover{
  background:#E166C1 !important;
  color:#2A3050 !important;
  border-color:#E166C1 !important;
}

/* Navy / outline buttons */
.btn-social-outline{
  background:#2A3050 !important;
  color:#FFFFF1 !important;
  border:1px solid #E166C1 !important;
}

.btn-social-outline:hover{
  background:#E166C1 !important;
  color:#2A3050 !important;
  border-color:#E166C1 !important;
}


/* =========================================================
   NEWSLETTER
   ========================================================= */

.newsletter-inline{
  max-width:980px;

  margin:1.8rem auto 0;
  padding:1.5rem;

  border:1px solid #E166C1;
  border-radius:12px;

  background:#2A3050;
}

.newsletter-inline-heading{
  display:flex;
  align-items:center;
  justify-content:center;

  gap:.55rem;

  margin-bottom:.4rem;

  color:#FFFFF1;

  font-size:1.2rem;
  font-weight:900;
}

.newsletter-inline-heading i{
  color:#E166C1;
}

.newsletter-inline-description{
  max-width:720px;

  margin:0 auto 1.2rem;

  color:#FFFFF1;
  opacity:.82;
}


/* Form */

.newsletter-inline-form{
  display:grid;

  grid-template-columns:
    minmax(180px, .8fr)
    minmax(260px, 1.4fr)
    auto;

  gap:.75rem;
  align-items:center;
}

.newsletter-inline-form input{
  width:100%;
  min-width:0;
  min-height:50px;

  padding:.75rem 1rem;

  border:1px solid #E166C1;
  border-radius:8px;

  background:#FFFFF1;

  color:#2A3050;

  font:inherit;
  font-size:.95rem;

  outline:none;

  box-shadow:none;
}

.newsletter-inline-form input::placeholder{
  color:#2A3050;
  opacity:.6;
}

.newsletter-inline-form input:focus{
  border-color:#FFFFF1;
  outline:2px solid #E166C1;
  outline-offset:2px;
}


/* Subscribe button */

.newsletter-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:50px;

  padding:.75rem 1.35rem;

  border:1px solid #E166C1;
  border-radius:8px;

  background:#E166C1;

  color:#2A3050;

  font:inherit;
  font-size:.88rem;
  font-weight:900;

  letter-spacing:.025em;
  text-transform:uppercase;

  white-space:nowrap;

  cursor:pointer;

  box-shadow:none;

  transition:
    transform .18s ease,
    background-color .18s ease,
    border-color .18s ease;
}

.newsletter-submit:hover{
  transform:translateY(-2px);

  background:#FFFFF1;

  border-color:#FFFFF1;

  color:#2A3050;
}

.newsletter-submit:disabled{
  cursor:wait;
  opacity:.65;
  transform:none;
}


/* Newsletter messages */

.newsletter-message{
  display:none;

  margin:1rem auto 0;
  padding:.8rem 1rem;

  border-radius:8px;

  font-size:.9rem;
  font-weight:700;
}

.newsletter-message.is-visible{
  display:block;
}

.newsletter-message.is-success{
  color:#2A3050;
  background:#FFFFF1;
  border:1px solid #E166C1;
}

.newsletter-message.is-error{
  color:#FFFFF1;
  background:#2A3050;
  border:1px solid #E166C1;
}

.newsletter-privacy{
  margin:.8rem 0 0;

  color:#FFFFF1;
  opacity:.65;

  font-size:.78rem;
}


/* Tablet */

@media (max-width:991px){

  .social-cta-buttons{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .newsletter-inline-form{
    grid-template-columns:1fr 1fr;
  }

  .newsletter-submit{
    grid-column:1 / -1;
    width:100%;
  }

}


/* Mobile */

@media (max-width:576px){

  .social-cta-buttons{
    grid-template-columns:1fr;
  }

  .newsletter-inline{
    padding:1.2rem;
  }

  .newsletter-inline-form{
    grid-template-columns:1fr;
  }

  .newsletter-submit{
    grid-column:auto;
    width:100%;
  }

}