/* ========================================================== */
/* Brand variables (edit once; used everywhere)               */
/* ========================================================== */
:root{
  --card-grad-start:#12D0E4;   /* cyan */
  --card-grad-mid:#6F7BEF;     /* periwinkle */
  --card-grad-end:#A629FF;     /* violet */

  --btn-grad-start:#ff2bd6;    /* magenta */
  --btn-grad-end:#a629ff;      /* violet */

  --btn-shadow:0 10px 28px rgba(166,41,255,.45);
  --btn-shadow-hover:0 12px 32px rgba(166,41,255,.55);
}

/* ========================================================== */
/* Universal Styles (Linked on ALL pages)                      */
/* ========================================================== */
*{ margin:0; padding:0; box-sizing:border-box; }

html, body { height:100%; overflow-x:hidden; }

body{
  font-family:'Oxanium',sans-serif;
  color:#FCFCFD;
  padding-top:0;
  position:relative;
  background-color:#0A0A1A;
}

h1,h2,h3,h4{ font-family:'Syne',sans-serif; color:#FCFCFD; line-height:1.2; }

a{ text-decoration:none; color:#FCFCFD; transition:color .3s ease; }

/* --- Navigation and Dropdown Styles (Common to all pages) --- */
.header nav{
  width:100%; padding:3px 75px; display:flex; justify-content:flex-start; align-items:center;
  position:absolute; z-index:1000;
  background:linear-gradient(to bottom, rgba(26,26,48,1) 0%, rgba(26,26,48,0) 100%);
  box-shadow:0 2px 10px rgba(0,0,0,.1);
}
.header nav .logo img{ width:90px; height:90px; display:block; object-fit:contain; }

.nav-links{ margin-left:200px; flex:1; text-align:right; display:flex; justify-content:flex-end; align-items:center; gap:25px; }
.nav-links > ul{ list-style:none; display:flex; align-items:center; gap:53px; margin:0; padding:0; flex:1; text-align:right; padding-right:25px; }
.nav-links ul li{ position:relative; list-style:none; }
.nav-links ul li > a{ color:#FCFCFD; font-size:16px; transition:color .3s ease; display:block; padding:10px 0; }
.nav-links ul li > a:hover{ color:#00E5FF; }

.dropdown-menu{
  display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%);
  min-width:200px; background-color:#1a1a36; border-radius:5px; box-shadow:0 5px 15px rgba(0,0,0,.3);
  padding:5px 20px; z-index:1001;
}
.nav-links ul li.has-dropdown:hover > .dropdown-menu{ display:block; }
.dropdown-menu li{ list-style:none; }
.dropdown-menu li a{
  font-weight:400; padding:20px 20px; display:block; font-size:16px; color:#19D2EA;
  transition:background-color .3s ease, color .3s ease;
}
.dropdown-menu li a:hover{ background-color:#0d0d21; color:#FCFCFD; }
.nav-links ul li.has-dropdown a{ position:relative; padding-right:15px; }
.nav-links ul li.has-dropdown > a::after{
  content:'\25BE'; font-size:.7em; margin-left:5px; position:absolute; right:0; top:50%;
  transform:translateY(-50%); color:#FCFCFD;
}

/* ========================================================== */
/* Shop Now Button Styles */
/* ========================================================== */
.shop-button{
  font-family:'Oxanium',sans-serif; font-size:16px; font-weight:700;
  color:#FCFCFD; background-color:#B425EC; padding:10px 25px; border-radius:5px;
  transition:background-color .3s ease;
}
.shop-button:hover{ background-color:#19D2EA; }

/* Desktop → Mobile collapse */
@media (max-width:1024px){
  .header nav{ display:flex; align-items:center; gap:10px; }
  .mobile-nav-toggle{ display:inline-flex !important; align-items:center; justify-content:center; }
  .header nav .logo{ margin-left:auto; }
  .header nav .logo img{ width:72px; height:72px; }
  .nav-links{ display:none !important; }
}

/* ========================================================== */
/* News Section (Home) */
/* ========================================================== */
.news-section{ padding:80px 75px; background-color:#0A0A1A; text-align:center; }
.news-heading{ font-size:48px; margin-bottom:50px; }
.news-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:30px; justify-content:center; }
.news-card{ background:transparent; padding:30px; border-radius:12px; text-align:left; transition:transform .3s ease, box-shadow .3s ease; }
.news-card:hover{ transform:translateY(-5px); box-shadow:0 8px 25px rgba(0,0,0,.3); }
.news-image-placeholder{ width:100%; height:180px; background:#333; border-radius:8px; margin-bottom:10px; }
.news-card-title{ font-size:24px; margin-bottom:5px; }
.news-card-text{ font-size:16px; line-height:1.6; color:rgba(252,252,253,.7); margin-bottom:10px; }
.news-card-date{ font-size:14px; color:#00E5FF; }
@media (max-width:992px){ .news-section{ padding:60px 30px; } .news-heading{ font-size:38px; } }
@media (max-width:768px){ .news-section{ padding:40px 15px; } .news-heading{ font-size:32px; } }

/* ========================================================== */
/* Footer (Common) */
/* ========================================================== */
footer{ background-color:#0A0A1A; padding:0; color:#FCFCFD; position:relative; }
.footer-content{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:40px; padding:80px 75px 40px; border-bottom:1px solid rgba(252,252,253,.1); }
.footer-column{ flex-basis:200px; flex-grow:1; text-align:left; }
.footer-column h4{ font-size:24px; margin-bottom:25px; }
.footer-column ul{ list-style:none; padding:0; }
.footer-column ul li{ margin-bottom:10px; }
.footer-column ul li a{ color:rgba(252,252,253,.7); font-size:16px; transition:color .3s ease; }
.footer-column ul li a:hover{ color:#00E5FF; }
.footer-logo-column{ flex-basis:280px; text-align:right; flex-grow:1; }
.footer-logo-column img{ width:100px; height:auto; display:block; margin-left:auto; margin-bottom:15px; }
.footer-logo-column p{ font-size:16px; line-height:1.5; color:rgba(252,252,253,.7); margin-bottom:5px; }
.footer-bottom{ text-align:left; margin-top:0; padding:30px 75px; width:100%; box-sizing:border-box; }
.copyright-text{ font-size:14px; color:rgba(252,252,253,.6); }

/* ========================================================== */
/* Newsletter (Shared)                                       */
/* ========================================================== */
.newsletter-outer{ background:#0A0A1A; padding:80px 75px; text-align:center; }
.newsletter-pre-heading{ font-size:18px; color:rgba(252,252,253,.8); margin-bottom:10px; }
.newsletter-main-heading{ font-size:48px; margin-bottom:50px; }
.newsletter-card{
  background:linear-gradient(135deg, var(--card-grad-start) 0%, var(--card-grad-mid) 55%, var(--card-grad-end) 100%);
  padding:40px; border-radius:16px; box-shadow:0 10px 30px rgba(0,0,0,.5); max-width:800px; margin:0 auto; color:#FCFCFD;
}
.newsletter-card h3{ font-size:24px; font-weight:700; margin-bottom:30px; }
.newsletter-form-container{ display:flex; justify-content:center; gap:15px; margin-bottom:25px; flex-wrap:wrap; }
.email-input{
  padding:15px 20px; width:60%; max-width:400px; border:none; border-radius:8px;
  background-color:rgba(255,255,255,.15); color:#FCFCFD; font-size:16px; outline:none; backdrop-filter:blur(5px);
}
.email-input::placeholder{ color:rgba(252,252,253,.6); }
.subscribe-button{
  padding:15px 30px; background-color:#be00e5; color:#FCFCFD; border:none; border-radius:8px;
  font-size:16px; font-weight:700; cursor:pointer; transition:background-color .3s ease, transform .2s ease;
}
.subscribe-button:hover{ background-color:#a000c0; transform:translateY(-2px); }
.newsletter-card-disclaimer{ font-size:14px; color:rgba(252,252,253,.7); line-height:1.5; max-width:600px; margin:20px auto 0; }
@media (max-width:768px){
  .newsletter-outer{ padding:40px 20px; }
  .newsletter-main-heading{ font-size:32px; margin-bottom:24px; }
  .newsletter-card{ padding:24px; }
  .newsletter-form-container{ flex-direction:column; align-items:stretch; gap:10px; }
  .email-input{ width:100%; max-width:none; }
  .subscribe-button{ width:100%; }
  .newsletter-card-disclaimer{ font-size:13px; margin-top:14px; }
}
@media (max-width:480px){ .newsletter-main-heading{ font-size:28px; } .newsletter-card h3{ font-size:20px; } }

/* ========================================================== */
/* Partners (Shared) — smooth, masked edges                   */
/* ========================================================== */
.partners-section{ background:#0A0A1A; padding:80px 0 0; text-align:center; }
.partners-section h2{ font-size:56px; margin-bottom:30px; padding:0 75px; }
.partners-rail{ overflow:hidden; position:relative; }
.partners-inner{ display:flex; width:max-content; will-change:transform; }
.partners-track{ display:flex; align-items:center; gap:clamp(14px,2vw,24px); padding-inline:0; }
.partner-logo{
  flex:0 0 auto;
  width:200px; height:120px;
  object-fit:contain; background:#0d0d21; border:1px solid #000; border-radius:6px; padding:8px;
}
/* Mobile sizes adjust down */
@media (max-width:992px){ .partners-section h2{ font-size:44px; } .partner-logo{ width:180px; height:108px; } }
@media (max-width:768px){ .partners-section h2{ font-size:38px; } .partner-logo{ width:160px; height:96px; padding:6px; } }
@media (max-width:480px){ .partners-section h2{ font-size:32px; } .partner-logo{ width:140px; height:88px; } }

/* ========================================================== */
/* Home Page Hero */
/* ========================================================== */
.home-hero-section{
  min-height:962px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/TunzaEsportsBackground.png);
  background-size:cover; background-position:center; position:relative;
}
.home-hero-section .hero-content{ position:absolute; left:438px; top:426px; max-width:700px; }
.home-hero-section .hero-content h1{ font-weight:bold; font-size:64px; line-height:1.2; }

/* ========================================================== */
/* About Us Page */
/* ========================================================== */
.about-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/About%20Us.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.about-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.about-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.about-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.about-hero-section .about-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
.about-hero-section .about-tagline{ font-size:20px; color:rgba(252,252,253,.8); max-width:800px; margin:0 auto; line-height:1.5; z-index:1; }

.about-intro-section{ padding:80px 75px 40px; text-align:center; }
.about-intro-section .intro-heading{ font-size:40px; margin-bottom:20px; }
.about-intro-section .intro-text{ font-size:16px; color:rgba(252,252,253,.7); max-width:700px; margin:0 auto 50px; line-height:1.5; }
.about-intro-section .intro-boxes-container{ display:flex; justify-content:center; gap:40px; flex-wrap:wrap; }
.about-intro-section .intro-box{ background:transparent; width:390px; min-height:540px; display:flex; flex-direction:column; align-items:center; }
.about-intro-section .box-image-placeholder{ width:350px; height:480px; background:#333; border-radius:8px; }

/* List section */
.list-section{ padding:40px 75px 80px; }
.list-section .list-container{ display:flex; justify-content:flex-start; flex-wrap:wrap; gap:40px; padding-left:120px; }
.list-section .list-column{ list-style:none; flex-basis:45%; max-width:500px; padding-left:0; }
.list-section .list-column:last-child{ margin-left:170px; }
.list-section .list-column li{ position:relative; padding-left:30px; margin-bottom:5px; font-size:20px; line-height:1.4; color:rgba(252,252,253,.7); }
.list-section .list-column li::before{ content:'\25B8'; position:absolute; left:0; top:5px; font-size:16px; color:#00E5FF; }
@media (max-width:768px){
  .list-section .list-column{ flex-basis:100%; max-width:none; }
  .list-section .list-container{ padding-left:20px; }
  .list-section .list-column:last-child{ margin-left:0; }
}

/* Directors */
.directors-section{ padding:50px 65px; text-align:center; }
.directors-section .directors-heading{ font-size:48px; margin-bottom:20px; }
.directors-section .directors-subheading{ font-size:16px; color:rgba(252,252,253,.7); line-height:1.5; margin-bottom:40px; }
.directors-section .director-cards-container{ display:flex; justify-content:center; gap:5px; flex-wrap:wrap; }
.directors-section .director-card{ background:transparent; padding:20px; border-radius:12px; text-align:center; width:224px; display:flex; flex-direction:column; align-items:center; }
.directors-section .director-image-wrapper{ position:relative; width:224px; height:458px; border-radius:8px; overflow:hidden; margin-bottom:15px; }
.directors-section .director-image-wrapper::after{ content:""; position:absolute; inset:0; background:linear-gradient(to bottom, rgba(51,51,51,.1), #333); pointer-events:none; }
.directors-section .director-image{ width:100%; height:100%; object-fit:cover; object-position:top; }
.directors-section .director-name{ font-size:20px; font-weight:bold; color:#9B8AFB; margin-bottom:5px; }
.directors-section .director-title{ font-size:14px; color:rgba(252,252,253,.6); }
@media (max-width:768px){
  .directors-section{ padding:60px 30px; }
  .directors-section .director-cards-container{ justify-content:space-around; gap:15px; }
  .directors-section .director-card{ width:180px; }
}

/* ========================================================== */
/* Mobile overlay menu — CANONICAL (matches coming-soon)      */
/* ========================================================== */
/* Hide the hamburger by default; show on <=1024px above */
.mobile-nav-toggle{
  display:none; background:transparent; border:0; color:#FCFCFD;
  font-size:28px; line-height:1; padding:8px; cursor:pointer;
}

/* Overlay uses transform-based slide-in for smoother feel */
.mobile-menu-overlay{
  position:fixed; inset:0; background:rgba(7,7,16,.96);
  color:#FCFCFD; z-index:3000; display:flex; flex-direction:column;
  transform:translateX(100%); transition:transform .3s ease;
  touch-action:manipulation;
}
.mobile-menu-overlay.open{ transform:translateX(0); }

.mobile-menu-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 20px; border-bottom:1px solid rgba(252,252,253,.08);
  font-family:'Syne',sans-serif;
}
.mobile-close{ background:transparent; border:0; color:#FCFCFD; font-size:30px; cursor:pointer; padding:8px; }
.mobile-menu-body{ padding:24px 20px 40px; overflow-y:auto; -webkit-overflow-scrolling:touch; flex:1; }
.mobile-menu-screen[hidden]{ display:none !important; }
.mobile-menu-title{ font-family:'Syne',sans-serif; font-size:36px; margin:8px 0 18px; }

/* Clean list with dividers (no tile backgrounds) */
.mobile-menu-list{ list-style:none; padding:0; margin:0; }
.mobile-menu-list li{ border-bottom:1px solid rgba(252,252,253,.08); }
.mobile-link{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 4px; color:#FCFCFD; font-size:22px; line-height:1.3;
}
.mobile-link .fa-chevron-right{ opacity:.85; }
.mobile-back{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 12px; margin:0 0 16px;
  background:#111224; border:1px solid #000; border-radius:10px; color:#FCFCFD; cursor:pointer;
  font-family:'Oxanium',sans-serif;
}
.mobile-menu-footer{ padding:12px 20px 20px; border-top:1px solid rgba(252,252,253,.08); }
.mobile-kicker{ font-size:12px; opacity:.7; }

/* ========================================================== */
/* Our Services - Tournament Organization                     */
/* ========================================================== */
.service-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/Esports\ Tournament\ Main.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.service-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.service-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.service-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.service-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .service-hero-section{ min-height:350px; padding:0 15px; }
  .service-hero-section .breadcrumb{ top:120px; }
  .service-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .service-hero-section{ min-height:300px; }
  .service-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .service-hero-section .service-main-heading{ font-size:28px; }
}

/* Tournament body */
.tournament-intro-section{ padding:80px 75px 40px; text-align:center; }
.tournament-intro-heading{ font-size:48px; margin-bottom:20px; }
.tournament-intro-text{ font-size:16px; color:rgba(252,252,253,.7); max-width:800px; margin:0 auto; line-height:1.5; }
.tournament-content-section{ padding:40px 75px 80px; }
.tournament-content-container{ display:flex; justify-content:space-between; gap:40px; }
.tournament-list-column{ flex-basis:50%; display:flex; flex-direction:column; align-items:center; }
.list-group{ margin-bottom:40px; width:80%; text-align:left; }
.list-group .list-heading{ font-size:24px; margin-bottom:15px; }
.list-group ul{ list-style:none; padding:0; }
.list-group li{ position:relative; padding-left:25px; margin-bottom:15px; font-size:17px; line-height:1.5; color:rgba(252,252,253,.7); }
.list-group li::before{ content:'\25B8'; position:absolute; left:0; top:5px; font-size:12px; color:#00E5FF; }
.tournament-image-column{ flex-basis:50%; display:flex; flex-direction:column; gap:20px; }
.image-placeholder{ background:#1a1a36; border-radius:12px; }
.main-tournament-image{ width:100%; height:380px; object-fit:cover; border-radius:12px; }
.image-placeholder.small{ flex-grow:1; height:250px; }
.small-image-container{ display:flex; gap:20px; }
.small-tournament-image{ flex-grow:1; height:250px; object-fit:cover; border-radius:12px; }
@media (max-width:992px){
  .tournament-intro-section, .tournament-content-section{ padding:60px 30px; }
  .tournament-intro-heading{ font-size:38px; }
  .tournament-content-container{ flex-direction:column; gap:30px; }
  .tournament-list-column, .tournament-image-column{ flex-basis:100%; }
}
@media (max-width:768px){
  .tournament-intro-section, .tournament-content-section{ padding:40px 15px; }
  .tournament-intro-heading{ font-size:32px; }
  .small-image-container{ flex-direction:column; gap:15px; }
  .image-placeholder.large{ height:250px; }
}

/* ========================================================== */
/* Esports Broadcasting Hero                                  */
/* ========================================================== */
.esports-broadcasting-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/Production\ Setup.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.esports-broadcasting-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.esports-broadcasting-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.esports-broadcasting-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.esports-broadcasting-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .esports-broadcasting-hero-section{ min-height:350px; padding:0 15px; }
  .esports-broadcasting-hero-section .breadcrumb{ top:120px; }
  .esports-broadcasting-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .esports-broadcasting-hero-section{ min-height:300px; }
  .esports-broadcasting-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .esports-broadcasting-hero-section .service-main-heading{ font-size:28px; }
}

/* ========================================================== */
/* Additional Spacing for Main Body Content                    */
/* ========================================================== */
.service-body{ margin-top:30px; }

/* ========================================================== */
/* Events & Bootcamps Hero                                    */
/* ========================================================== */
.events-bootcamps-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/events-bootcamps-hero.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.events-bootcamps-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.events-bootcamps-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.events-bootcamps-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.events-bootcamps-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .events-bootcamps-hero-section{ min-height:350px; padding:0 15px; }
  .events-bootcamps-hero-section .breadcrumb{ top:120px; }
  .events-bootcamps-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .events-bootcamps-hero-section{ min-height:300px; }
  .events-bootcamps-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .events-bootcamps-hero-section .service-main-heading{ font-size:28px; }
}

/* ========================================================== */
/* Video Gaming Events Hero                                   */
/* ========================================================== */
.video-gaming-events-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/Gaming\ Events.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.video-gaming-events-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.video-gaming-events-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.video-gaming-events-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.video-gaming-events-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .video-gaming-events-hero-section{ min-height:350px; padding:0 15px; }
  .video-gaming-events-hero-section .breadcrumb{ top:120px; }
  .video-gaming-events-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .video-gaming-events-hero-section{ min-height:300px; }
  .video-gaming-events-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .video-gaming-events-hero-section .service-main-heading{ font-size:28px; }
}

/* ========================================================== */
/* Upcoming Events Grid                                       */
/* ========================================================== */
.upcoming-events-grid-section{ padding:50px 75px; text-align:center; }
.upcoming-events-grid-section .section-heading{ font-size:3rem; margin-bottom:30px; }
.upcoming-events-grid-section .events-grid-container{ display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:30px; align-items:stretch; padding:20px 0; }
.upcoming-events-grid-section .event-card{
  background:#1a1a36; border-radius:12px; box-shadow:0 4px 8px rgba(0,0,0,.2); border:1px solid #3f3f6c; text-align:left; overflow:hidden; display:flex; flex-direction:column;
}
.upcoming-events-grid-section .event-image-wrapper{ width:100%; height:150px; overflow:hidden; }
.upcoming-events-grid-section .event-image{ width:100%; height:100%; object-fit:cover; }
.upcoming-events-grid-section .event-card-content{ padding:20px; flex-grow:1; display:flex; flex-direction:column; }
.upcoming-events-grid-section .event-card-content h3{ font-size:1.25rem; font-weight:bold; color:#00E5FF; margin-bottom:5px; }
.upcoming-events-grid-section .event-card-content .event-date,
.upcoming-events-grid-section .event-card-content .event-location{ font-size:.875rem; color:#FCFCFD; opacity:.7; margin-bottom:15px; }
.upcoming-events-grid-section .event-card-content .event-price{ font-size:1.1rem; font-weight:bold; color:#FCFCFD; margin-top:auto; }
@media (max-width:768px){ .upcoming-events-grid-section{ padding:50px 15px; } }

/* ========================================================== */
/* Consultation Page (incl. CTA)                              */
/* ========================================================== */
.consultation-hero-section{
  min-height:450px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/Consultation.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.consultation-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.consultation-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.consultation-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.consultation-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .consultation-hero-section{ min-height:350px; padding:0 15px; }
  .consultation-hero-section .breadcrumb{ top:120px; }
  .consultation-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .consultation-hero-section{ min-height:300px; }
  .consultation-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .consultation-hero-section .service-main-heading{ font-size:28px; }
}

.consultation-intro-section{ padding:50px 75px; text-align:center; }
.consultation-intro-section .consultation-intro-heading{ font-size:2.5rem; margin-bottom:15px; }
.consultation-intro-section .consultation-intro-text{ font-size:1.1rem; color:rgba(252,252,253,.8); max-width:800px; margin:0 auto; }

/* Reuse CTA gradient via .newsletter-card if desired */
.consultation-cta-section{ padding:50px 75px; text-align:center; }
.consultation-cta-section .cta-card{ border:0; max-width:860px; margin:0 auto; padding:28px 24px; border-radius:14px; }
.consultation-cta-section .cta-card h2{ font-size:2rem; margin-bottom:12px; }
.consultation-cta-section .cta-card p{ font-size:1.05rem; color:#f3f3f7; margin-bottom:16px; }

.cta-button{
  display:inline-block; padding:12px 20px; border-radius:10px;
  background:linear-gradient(90deg, var(--btn-grad-start) 0%, var(--btn-grad-end) 100%);
  color:#fff; font-weight:700; font-size:16px; transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  box-shadow:var(--btn-shadow);
}
.cta-button:hover{ transform:translateY(-1px); box-shadow:var(--btn-shadow-hover); filter:brightness(1.04); }
.cta-button:focus-visible{ outline:2px solid #FCFCFD; outline-offset:2px; }

/* ========================================================== */
/* Coming Soon Hero                                           */
/* ========================================================== */
.coming-soon-hero-section{ min-height:calc(100vh - 120px); width:100%; background:#0a0a1a; display:flex; justify-content:center; align-items:center; text-align:center; }
.coming-soon-hero-section h1{ font-family:'Syne',sans-serif; font-size:5rem; font-weight:bold; text-transform:uppercase; }
@media (max-width:768px){ .coming-soon-hero-section h1{ font-size:3rem; } }
@media (max-width:480px){ .coming-soon-hero-section h1{ font-size:2rem; } }

/* ========================================================== */
/* KUER Page                                                  */
/* ========================================================== */
.kuer-hero-section{
  min-height:550px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/KUER.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.kuer-hero-section .breadcrumb{ font-size:16px; color:rgba(252,252,253,.7); margin-bottom:20px; position:absolute; top:150px; }
.kuer-hero-section .breadcrumb a{ color:rgba(252,252,253,.7); }
.kuer-hero-section .breadcrumb a:hover{ color:#00E5FF; }
.kuer-hero-section .service-main-heading{ font-weight:bold; font-size:64px; margin-bottom:25px; z-index:1; }
@media (max-width:768px){
  .kuer-hero-section{ min-height:450px; padding:0 15px; }
  .kuer-hero-section .breadcrumb{ top:120px; }
  .kuer-hero-section .service-main-heading{ font-size:36px; }
}
@media (max-width:480px){
  .kuer-hero-section{ min-height:400px; }
  .kuer-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .kuer-hero-section .service-main-heading{ font-size:28px; }
}

.service-main-text-container{ padding:50px 75px; text-align:center; }
.service-main-text-container .service-body-heading{ font-weight:bold; font-size:48px; margin-bottom:15px; }
.service-main-text-container .service-body-text{ font-size:18px; color:rgba(252,252,253,.7); max-width:800px; margin:0 auto; }

.kuer-content-columns{ display:flex; justify-content:space-between; gap:75px; padding:0 75px 50px; }
.kuer-column-left{ flex:1; display:flex; flex-direction:column; gap:30px; }
.kuer-column-right{ flex:1; display:flex; flex-wrap:wrap; gap:20px; }
.kuer-faq-section h3{ font-size:24px; margin-bottom:15px; }
.placeholder-card{ width:calc(50% - 10px); height:150px; background:#3f3f6c; border-radius:8px; }
@media (max-width:1024px){
  .kuer-content-columns{ flex-direction:column; gap:40px; }
  .kuer-column-right{ justify-content:center; }
}
@media (max-width:768px){
  .service-main-text-container{ padding:50px 25px; }
  .service-main-text-container .service-body-heading{ font-size:36px; }
  .kuer-content-columns{ padding:0 25px 50px; }
}
@media (max-width:480px){
  .service-main-text-container .service-body-heading{ font-size:28px; }
  .kuer-column-right .placeholder-card{ width:100%; }
}

/* KUER CTA */
.cta-card-container{ padding:50px 75px; display:flex; justify-content:center; align-items:center; text-align:center; }
.cta-card{ background:#1a1a36; border:1px solid #3f3f6c; border-radius:12px; padding:40px; max-width:700px; }
.cta-card h3{ font-size:36px; font-weight:bold; margin-bottom:15px; }
.cta-card p{ font-size:18px; color:rgba(252,252,253,.8); margin-bottom:25px; }
@media (max-width:768px){ .cta-card h3{ font-size:28px; } .cta-card p{ font-size:16px; } }
@media (max-width:480px){ .cta-card-container{ padding:50px 25px; } .cta-card{ padding:30px 20px; } }

/* ========================================================== */
/* Products Coming Soon                                       */
/* ========================================================== */
.products-coming-soon-hero-section{ min-height:calc(100vh - 120px); width:100%; background:#111129; display:flex; justify-content:center; align-items:center; text-align:center; }
.products-coming-soon-hero-section .coming-soon-main-heading{ font-size:5rem; font-weight:bold; text-transform:uppercase; }
@media (max-width:768px){ .products-coming-soon-hero-section .coming-soon-main-heading{ font-size:3rem; } }
@media (max-width:480px){ .products-coming-soon-hero-section .coming-soon-main-heading{ font-size:2rem; } }

/* ========================================================== */
/* News Page                                                  */
/* ========================================================== */
.news-hero-section{
  min-height:550px; width:100%;
  background-image:linear-gradient(rgba(4,9,30,.7), rgba(4,9,30,.7)), url(../images/News.jpg);
  background-size:cover; background-position:center; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 75px; position:relative;
}
.news-hero-section .service-main-heading{ font-size:64px; }

.news-content-wrapper{ max-width:1200px; margin:50px auto; padding:0 75px; display:grid; grid-template-columns:1fr; gap:40px; }
.news-body{ padding:0; }
.news-sidebar{ padding-top:20px; color:#fcfcfd; }
.search-section{ margin-bottom:30px; text-align:center; }
.keyword-search{
  width:50%; padding:10px; border:1px solid #333; background:#1a1a2e; color:#fcfcfd; border-radius:8px; margin-top:10px;
}
.search-button{
  width:50%; padding:10px; background:#B425EC; color:#FCFCFD; border:none; border-radius:8px; margin-top:10px; cursor:pointer; font-weight:bold; transition:background-color .3s ease;
}
.search-button:hover{ background:#19D2EA; }

.filter-section{ margin-top:30px; margin-bottom:40px; text-align:center; }
.tag-list{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:10px; }
.tag{ background:#B425EC; padding:8px 15px; border-radius:20px; cursor:pointer; transition:background-color .3s ease; }
.tag:hover, .tag.active{ background:#19D2EA; }

.news-content-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:40px; }
.news-card{ background:#1a1a2e; border-radius:12px; overflow:hidden; box-shadow:0 4px 8px rgba(0,0,0,.2); transition:transform .3s ease; }
.news-card:hover{ transform:translateY(-10px); }
.news-image{ width:100%; height:200px; object-fit:cover; display:block; }
.news-content{ padding:20px; color:#fcfcfd; }
.news-title{ font-size:24px; font-weight:bold; margin-bottom:10px; }
.news-date{ font-size:14px; color:rgba(252,252,253,.6); margin-bottom:15px; }
.read-more-button{
  display:inline-block; padding:8px 15px; background:#B425EC; color:#FCFCFD; border-radius:8px; margin-top:15px; transition:background-color .3s ease;
}
.read-more-button:hover{ background:#19D2EA; }
.load-more-container{ text-align:center; margin-top:40px; }
.load-more-button{ padding:12px 30px; background:#B425EC; color:#FCFCFD; border:none; border-radius:8px; cursor:pointer; font-weight:bold; transition:background-color .3s ease; }
.load-more-button:hover{ background:#19D2EA; }

@media (max-width:992px){ .news-content-wrapper{ grid-template-columns:1fr; padding:0 30px; } }
@media (max-width:768px){
  .news-hero-section .service-main-heading{ font-size:48px; }
  .news-content-wrapper{ padding:0 15px; }
  .news-content-grid{ grid-template-columns:1fr; }
}

/* ========================================================== */
/* Contact Page                                               */
/* ========================================================== */
.contact-section-wrapper{
  max-width:900px; margin:50px auto; padding:100px; background:transparent; color:#fcfcfd; text-align:center; border-radius:12px;
}
.contact-header{ margin-bottom:40px; }
.contact-header h1{ font-size:48px; margin-bottom:10px; }
.contact-header p{ font-size:18px; color:rgba(252,252,253,.8); }
.contact-form{ display:flex; flex-direction:column; gap:20px; }
.form-row{ display:flex; justify-content:space-between; gap:20px; }
.form-group{ flex:1; display:flex; flex-direction:column; text-align:left; }
.form-group.full-width{ flex:100%; }
.form-group label{ font-size:16px; margin-bottom:8px; }
.form-group input, .form-group textarea{
  width:100%; padding:12px; background:#0c0c1b; border:1px solid #333; border-radius:8px; color:#fcfcfd; font-size:16px;
}
.form-group input::placeholder, .form-group textarea::placeholder{ color:rgba(252,252,253,.5); }
.form-group small{ margin-top:5px; color:#E71111; font-size:12px; text-align:right; }
.form-submit button{
  width:100%; padding:15px; border:none; border-radius:10px; font-size:18px; font-weight:bold; cursor:pointer; color:#fff;
  background:linear-gradient(90deg, var(--btn-grad-start) 0%, var(--btn-grad-end) 100%); box-shadow:var(--btn-shadow);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.form-submit button:hover{ transform:translateY(-1px); box-shadow:var(--btn-shadow-hover); filter:brightness(1.04); }
@media (max-width:768px){ .contact-section-wrapper{ padding:30px; } .form-row{ flex-direction:column; gap:15px; } }

/* ========================================================== */
/* Gallery Page                                               */
/* ========================================================== */
.gallery-container{ max-width:1200px; margin:50px auto; padding:95px; }
.gallery-section{ margin-bottom:60px; }
.gallery-section-heading{ font-size:32px; text-align:center; margin-bottom:30px; }
.gallery-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(350px, 1fr)); gap:20px; }
.gallery-card{ display:block; border-radius:12px; overflow:hidden; transition:transform .3s ease; background:#2b397b; }
.gallery-card:first-of-type{ background:#2b397b; }
.gallery-card:hover{ transform:translateY(-10px); }
.gallery-card-content{ padding:50px 20px; text-align:center; color:#FCFCFD; }
.gallery-card-content h3{ font-size:24px; font-weight:bold; text-transform:uppercase; }
@media (max-width:768px){ .gallery-container{ padding:0 30px; } }

/* ========================================================== */
/* Privacy Policy                                             */
/* ========================================================== */
.privacy-policy-container{ max-width:960px; margin:0 auto; padding:2rem 1rem; line-height:1.6; color:#ccc; }
.privacy-policy-container h1, .privacy-policy-container h2{ font-family:'Syne',sans-serif; color:#fff; margin-top:6rem; margin-bottom:1rem; }
.privacy-policy-container h1{ font-size:2.5rem; text-align:center; }
.privacy-policy-container h2{ font-size:1.75rem; }
.privacy-policy-container ul{ list-style:disc; margin-left:2rem; }

/* ========================================================== */
/* Responsive tweaks for hero text on mobile                  */
/* ========================================================== */
@media (max-width:768px){
  .home-hero-section .hero-content{ left:50%; transform:translateX(-50%); top:250px; text-align:center; }
  .home-hero-section .hero-content h1{ font-size:40px; }

  .about-hero-section{ padding:0 15px; min-height:350px; }
  .about-hero-section .breadcrumb{ top:120px; }
  .about-hero-section .about-main-heading{ font-size:36px; }
  .about-hero-section .about-tagline{ font-size:16px; }

  .about-intro-section, .list-section{ padding:40px 15px; }
  .about-intro-section .intro-heading{ font-size:32px; }
  .about-intro-section .intro-boxes-container{ flex-direction:column; align-items:center; gap:20px; }
  .about-intro-section .intro-box{ width:90%; }
  .about-intro-section .box-image-placeholder{ width:100%; height:350px; }
  .list-section .list-container{ flex-direction:column; align-items:center; }
  .list-section .list-column{ flex-basis:100%; }
}
@media (max-width:480px){
  .header nav .logo img{ width:70px; height:70px; }
  .about-hero-section{ min-height:300px; }
  .about-hero-section .breadcrumb{ font-size:14px; top:100px; }
  .about-hero-section .about-main-heading{ font-size:28px; }
  .about-intro-section .intro-heading{ font-size:28px; }
  .about-intro-section .intro-box{ padding:30px; }
}

/* ========================================================== */
/* Home news card images (scoped)                             */
/* ========================================================== */
.news-section .news-card .news-image{
  width:100%; height:180px; object-fit:cover; border-radius:8px; display:block; margin-bottom:10px;
}
