:root{
  /* ✅ NEW THEME (Clean): Blue + Maroon + Yellow + Pink (controlled usage) */
  --blue:        #1E4ED8;  /* primary */
  --blue-900:    #153A9E;  /* deep */
  --maroon:      #7B1636;  /* secondary */
  --yellow:      #FFC94A;  /* accent */
  --pink:        #FF4FA3;  /* micro-accent */

  --ink:   #0F172A;
  --muted: #64748B;

  --bg:    #FFFFFF;
  --soft:  #F6F8FF;

  --card:  rgba(255,255,255,.92);
  --glass: rgba(255,255,255,.78);

  --shadow:      0 18px 46px rgba(2,6,23,.12);
  --shadow-soft: 0 12px 28px rgba(2,6,23,.08);

  --r-xl: 26px;
  --r-lg: 18px;

  /* ✅ simple gradients (NO rainbow everywhere) */
  --grad-primary: linear-gradient(135deg, var(--blue), var(--blue-900));
  --grad-maroon:  linear-gradient(135deg, var(--maroon), #5B0F27);
  --grad-soft:    linear-gradient(180deg, rgba(30,78,216,.06), rgba(123,22,54,.03));
}

*{ box-sizing: border-box; }

html, body{ overflow-x: hidden; }
html{ scroll-behavior:smooth; }

body{
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(900px 520px at 10% 10%, rgba(30,78,216,.08), transparent 55%),
    radial-gradient(900px 520px at 90% 20%, rgba(123,22,54,.05), transparent 60%),
    var(--bg);
}

a{ text-decoration:none; }
code{ color: var(--maroon); }

/* Preloader */
#preloader{
  position: fixed;
  inset: 0;
  background: #ffffff;
  display: grid;
  place-items: center;
  z-index: 9999;
}
.loader{
  display:flex;
  gap: 8px;
  align-items:center;
  justify-content:center;
}
.dot{
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--grad-primary);
  animation: bounce 0.8s infinite alternate;
}
.dot:nth-child(2){ animation-delay: .15s; }
.dot:nth-child(3){ animation-delay: .3s; }
@keyframes bounce{
  from{ transform: translateY(0); opacity:.6; }
  to{ transform: translateY(-10px); opacity:1; }
}
.loader-text{
  margin-top: 14px;
  font-family: "Fredoka", cursive;
  font-weight: 700;
  color: rgba(15,23,42,.75);
}

/* Topbar (✅ solid premium blue like reference) */
.topbar{
  background: var(--grad-primary);
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.topbar-item{
  color: rgba(255,255,255,.92);
  font-weight: 600;
}
.btn-topbar{
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  color:#fff;
  border-radius: 999px;
  font-weight: 800;
}
.btn-topbar:hover{ background: rgba(255,255,255,.18); transform: translateY(-1px); }

.btn-topbar-outline{
  border: 1px solid rgba(255,255,255,.30);
  border-radius: 999px;
  font-weight: 800;
  color:#fff;
  background: transparent;
}
.btn-topbar-outline:hover{ background: rgba(255,255,255,.12); }

/* Header */
.navbar-logo{
  height: 65px;
  width: auto;
  transition: transform .3s ease;
}
.navbar-logo:hover{ transform: scale(1.05); }

/* Mobile adjustment */
@media (max-width: 576px){
  .navbar-logo{ height: 60px; }
}

.header-glass{
  backdrop-filter: blur(14px);
  background: rgba(255,255,255,.92);
  border-bottom: 1px solid rgba(15,23,42,.08);
}

.navbar-brand{ font-family: "Fredoka", cursive; }

.brand-mark{
  width: 42px; height: 42px;
  border-radius: 14px;
  display:grid; place-items:center;
  background: var(--grad-primary);
  color:#fff;
  box-shadow: 0 18px 34px rgba(30,78,216,.20);
}
.brand-text{ line-height: 1.05; }
.brand-title{
  display:block;
  font-weight: 900;
  letter-spacing:.2px;
  font-size: 1.25rem;
}
.brand-subtitle{
  display:block;
  font-weight: 700;
  font-size: .9rem;
  color: var(--muted);
  margin-top: -2px;
}

.navbar .nav-link{
  font-weight: 900;
  color: rgba(15,23,42,.90);
  border-radius: 999px;
  padding: .55rem .85rem;
}
.navbar .nav-link:hover{
  background: rgba(30,78,216,.08);
  color: rgba(15,23,42,.95);
}

/* Buttons */
.btn-brand{
  border: none;
  border-radius: 999px;
  font-weight: 900;
  color:#fff;
  background: var(--grad-primary);
  box-shadow: 0 18px 40px rgba(30,78,216,.22);
}
.btn-brand:hover{
  color:#fff;
  transform: translateY(-1px);
  box-shadow: 0 22px 52px rgba(21,58,158,.26);
}

.btn-outline-brand{
  border-radius: 999px;
  border: 1.6px solid rgba(30,78,216,.35);
  color: rgba(15,23,42,.92);
  font-weight: 900;
  background: rgba(255,255,255,.75);
}
.btn-outline-brand:hover{
  background: rgba(30,78,216,.08);
  border-color: rgba(30,78,216,.50);
}

.btn-ghost{
  border-radius: 999px;
  font-weight: 900;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.16);
  color: rgba(255,255,255,.95);
}
.btn-ghost:hover{
  color:#fff;
  background: rgba(255,255,255,.24);
}

/* Section */
.section-pad{ padding: 90px 0; }
.section-soft{ background: var(--grad-soft); }

.section-kicker{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding: .35rem .85rem;
  border-radius: 999px;
  font-family: "Fredoka", cursive;
  font-weight: 900;
  background: rgba(255,201,74,.20); /* ✅ yellow subtle */
  border: 1px solid rgba(255,201,74,.35);
  color: rgba(15,23,42,.92);
}
.section-title{
  font-family: "Fredoka", cursive;
  font-size: clamp(1.8rem, 2.6vw, 2.7rem);
  font-weight: 900;
  margin: .6rem 0 .4rem;
}
.section-text{ color: var(--muted); max-width: 62ch; }

/* Hero */
.hero-section{ position: relative; }
.hero-slide{
  min-height: 86vh;
  display:flex;
  align-items:center;
  padding: 70px 0 95px;
  position: relative;
}
.hero-wave{
  position:absolute;
  left:0; right:0; bottom:-1px;
  height: 86px;
  background: radial-gradient(160px 60px at 15% 50%, rgba(30,78,216,.16), transparent 70%);
}

/* Animated blobs (kept but more subtle + removed on mobile) */
.blob{
  position:absolute;
  opacity: .70;
  border-radius: 999px;
  z-index: 0;
  animation: floaty 10s ease-in-out infinite;
}
.blob-1{
  width: 300px; height: 300px;
  left: -120px; top: 70px;
  background: radial-gradient(circle at 30% 30%, rgba(30,78,216,.35), transparent 70%);
}
.blob-2{
  width: 240px; height: 240px;
  right: -120px; top: 160px;
  animation-duration: 12s;
  background: radial-gradient(circle at 30% 30%, rgba(123,22,54,.20), transparent 70%);
}
.blob-3{
  width: 240px; height: 240px;
  left: 50%; bottom: 40px;
  transform: translateX(-50%);
  animation-duration: 13s;
  background: radial-gradient(circle at 30% 30%, rgba(255,201,74,.18), transparent 70%);
}
@keyframes floaty{
  0%,100%{ transform: translate(0,0) scale(1); }
  50%{ transform: translate(12px,-14px) scale(1.02); }
}

.pill-badge{
  position: relative;
  z-index: 1;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.55rem .85rem;
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 900;
}
.hero-title{
  position: relative;
  z-index: 1;
  font-family: "Fredoka", cursive;
  font-weight: 900;
  line-height: 1.05;
  font-size: clamp(2.2rem, 3.2vw, 3.4rem);
}

/* ✅ controlled highlight (no 3-color gradient text) */
.grad-text{
  background: linear-gradient(90deg, var(--blue), var(--blue-900));
  -webkit-background-clip:text;
  background-clip:text;
  color: transparent;
}

.hero-lead{
  position: relative;
  z-index: 1;
  color: rgba(255,255,255,.80);
  font-size: 1.05rem;
  max-width: 62ch;
}

.mini-cards{
  display:flex;
  flex-wrap:wrap;
  gap: 10px;
  position: relative;
  z-index: 1;
}
.mini-card{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: .65rem .85rem;
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--shadow-soft);
}
.mini-card i{
  width: 40px; height: 40px;
  border-radius: 16px;
  display:grid; place-items:center;
  background: var(--grad-primary);
  color:#fff;
}
.mini-value{ font-weight: 900; }
.mini-label{ font-size:.82rem; color: var(--muted); margin-top:-4px; }

.hero-card{
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(15,23,42,.10);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow);
  padding: 22px;
  overflow:hidden;
}
.hero-card::after{
  content:"";
  position:absolute;
  width: 260px; height: 260px;
  right: -120px; top: -140px;
  background: radial-gradient(circle at 30% 30%, rgba(30,78,216,.28), transparent 70%);
}
.hero-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
  position: relative;
  z-index: 1;
}
.hero-kicker{ color: var(--muted); font-weight: 900; }
.hero-card-title{ font-family:"Fredoka", cursive; font-weight: 900; font-size: 1.15rem; }

.hero-badge-icon{
  width: 46px; height: 46px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: var(--grad-primary);
  color:#fff;
  box-shadow: 0 18px 40px rgba(30,78,216,.20);
}

/* hero slide bg helper */
.hero-slide-img{
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* ✅ Overlay: premium blue */
.hero-overlay{
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(2,6,23,.76) 0%, rgba(2,6,23,.34) 55%, rgba(2,6,23,.12) 100%),
    radial-gradient(900px 520px at 15% 20%, rgba(30,78,216,.20), transparent 58%),
    radial-gradient(900px 520px at 85% 35%, rgba(123,22,54,.12), transparent 58%);
  z-index: 0;
}
.hero-slide .container{ position: relative; z-index: 2; }

.chip{
  position: relative;
  z-index: 1;
  padding: .65rem .75rem;
  border-radius: 18px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(15,23,42,.08);
  font-weight: 800;
}

.hero-note{
  position: relative;
  z-index: 1;
  padding: 12px 14px;
  border-radius: 18px;
  background: rgba(30,78,216,.08);
  border: 1px solid rgba(30,78,216,.16);
  font-weight: 750;
  color: rgba(15,23,42,.88);
}

/* Tilt / Hover animation */
.tilt{ transition: transform .18s ease, box-shadow .18s ease; }
.tilt:hover{
  transform: translateY(-5px);
  box-shadow: 0 22px 56px rgba(2,6,23,.16);
}

/* Panels / Cards */
.glass-panel{
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,23,42,.10);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow-soft);
  padding: 22px;
}
.panel-title{
  font-family:"Fredoka", cursive;
  font-weight: 900;
}
.checklist{
  list-style:none;
  padding-left:0;
  display:grid;
  gap: 10px;
  color: rgba(15,23,42,.80);
}
.checklist i{ color: var(--blue); margin-right: 10px; }

/* About */
.info-card{
  border-radius: var(--r-lg);
  padding: 16px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--shadow-soft);
}
.info-card h6{
  font-family:"Fredoka", cursive;
  font-weight: 900;
  margin-bottom: 6px;
}
.info-card p{ color: var(--muted); margin-bottom:0; font-size: .95rem; }

.cta-strip{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: var(--r-lg);
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--shadow-soft);
}
.cta-ico{
  width: 46px; height: 46px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: rgba(255,201,74,.20);
  border: 1px solid rgba(255,201,74,.35);
}

.about-card{
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(15,23,42,.10);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow);
  padding: 20px;
}

.soft-badge{
  background: rgba(255,201,74,.18);
  border: 1px solid rgba(255,201,74,.30);
  color: rgba(15,23,42,.88);
  font-weight: 900;
  border-radius: 999px;
  padding: .5rem .75rem;
}

.about-image-wrapper{
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 25px 60px rgba(2,6,23,.16);
  background: #fff;
  padding: 10px;
}
.about-main-img{
  width: 100%;
  height: auto;
  border-radius: 18px;
  transition: transform .4s ease;
}
.about-image-wrapper:hover .about-main-img{ transform: scale(1.03); }

@media (max-width: 991.98px){
  .about-image-wrapper{ margin-top: 20px; }
}

/* Programs */
.program-card{
  height: 100%;
  border-radius: var(--r-xl);
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.program-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 26px 60px rgba(2,6,23,.16);
}

.program-thumb{
  position: relative;
  height: auto;
  overflow: hidden;
}
.program-thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform .45s ease;
}
.program-thumb-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2,6,23,.04), rgba(2,6,23,.62));
  opacity: .85;
}
.program-card:hover .program-thumb img{ transform: scale(1.08); }

.program-body{ padding: 18px 18px 20px; }

.program-card h5{
  font-family:"Fredoka", cursive;
  font-weight: 900;
  margin-top: 12px;
  margin-bottom: 6px;
}

.program-icon{
  width: 56px; height: 56px;
  border-radius: 22px;
  display: grid;
  place-items: center;
  background: var(--grad-primary);
  color:#fff;
  font-size: 1.3rem;
  margin-top: -18px;
  box-shadow: 0 18px 40px rgba(30,78,216,.20);
  transition: transform .65s ease, filter .35s ease;
}
.program-card:hover .program-icon{
  transform: rotate(360deg) scale(1.04);
  filter: drop-shadow(0 10px 16px rgba(30,78,216,.22));
}

.program-body p{ color: rgba(15,23,42,.72); }

@media (max-width: 991.98px){ .program-thumb{ height: 160px; } }
@media (max-width: 575.98px){ .program-thumb{ height: 150px; } }

.feature-panel{
  border-radius: var(--r-xl);
  padding: 20px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: var(--shadow-soft);
}

/* Why */
.why-list{ display:grid; gap: 14px; }
.why-item{
  display:flex;
  gap: 12px;
  padding: 14px 16px;
  border-radius: var(--r-lg);
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--shadow-soft);
}
.why-ico{
  width: 48px; height: 48px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: rgba(30,78,216,.10);
  border: 1px solid rgba(30,78,216,.18);
}
.why-title{ font-family:"Fredoka", cursive; font-weight: 900; }
.why-text{ color: var(--muted); font-size: .93rem; margin-top:-3px; }

.why-card{
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(15,23,42,.10);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow);
  padding: 22px;
}

.benefit-tile{
  display:flex;
  gap: 10px;
  align-items:center;
  padding: 14px;
  border-radius: var(--r-lg);
  background: rgba(255,201,74,.14);
  border: 1px solid rgba(255,201,74,.28);
  font-weight: 900;
}
.benefit-tile i{
  width: 44px; height: 44px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.08);
}

.franchise-strip{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 16px;
  border-radius: var(--r-lg);
  background: rgba(123,22,54,.08);
  border: 1px solid rgba(123,22,54,.16);
}

/* Achievements */
.stat-card{
  text-align:center;
  border-radius: var(--r-xl);
  padding: 22px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: var(--shadow-soft);
}
.stat-ico{
  width: 60px; height: 60px;
  border-radius: 24px;
  display:grid; place-items:center;
  background: var(--grad-primary);
  color:#fff;
  font-size: 1.35rem;
  margin: 0 auto 10px;
}
.stat-value{
  font-family:"Fredoka", cursive;
  font-weight: 900;
  font-size: 2rem;
}
.stat-label{ color: var(--muted); font-weight: 800; }

/* Gallery */
.gallery-item{
  border-radius: 22px;
  overflow:hidden;
  position:relative;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-soft);
}
.gallery-item img{
  width: 100%;
  height: 240px;
  object-fit: cover;
  display:block;
  transition: transform .25s ease;
}
.gallery-item:hover img{ transform: scale(1.05); }
.gallery-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  padding: 14px;
  background: linear-gradient(180deg, transparent, rgba(2,6,23,.60));
  opacity: 0;
  transition: opacity .22s ease;
}
.gallery-item:hover .gallery-overlay{ opacity: 1; }
.gallery-tag{
  color:#fff;
  font-weight: 900;
  font-family:"Fredoka", cursive;
}
.gallery-zoom{
  width: 42px; height: 42px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: rgba(255,255,255,.20);
  border: 1px solid rgba(255,255,255,.25);
  color:#fff;
}

/* Contact */
.contact-card, .form-card{
  border-radius: var(--r-xl);
  padding: 22px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: var(--shadow);
}
.form-label{ font-weight: 800; }
.form-control, .form-select{
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.12);
  padding: .85rem .95rem;
}
.form-control:focus, .form-select:focus{
  border-color: rgba(30,78,216,.55);
  box-shadow: 0 0 0 .25rem rgba(30,78,216,.12);
}

.contact-info{ display:grid; gap: 14px; }
.contact-line{
  display:flex;
  gap: 12px;
  align-items:flex-start;
  padding: 10px 5px;
  border-radius: var(--r-lg);
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--shadow-soft);
}

.contact-ico{
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display: grid;
  place-items: center;

  /* Clean Maroon + Yellow theme */
  background: rgba(255,201,74,.20);
  border: 1px solid rgba(255,201,74,.32);
  /* color: #fff; */

  box-shadow: 0 10px 24px rgba(123,22,54,.25);
  flex-shrink: 0;
}

.contact-ico i{
  font-size: 1.2rem;
}
.contact-line a{ font-weight: 900; color: rgba(15,23,42,.92); }

.tip{
  padding: 12px 14px;
  border-radius: var(--r-lg);
  background: rgba(30,78,216,.08);
  border: 1px solid rgba(30,78,216,.16);
  font-weight: 750;
}

/* Map */
.map-wrap{ padding: 0 0 90px; }
.map-card{
  border-radius: var(--r-xl);
  padding: 18px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.10);
  box-shadow: var(--shadow);
}
.map-head{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

/* Footer (✅ deep blue, not black) */
.footer{
  background: linear-gradient(180deg, rgba(21,58,158,.98), rgba(15,23,42,.98));
  color: rgba(255,255,255,.90);
}
.footer-title{
  font-family:"Fredoka", cursive;
  font-weight: 900;
}
.footer-text{ color: rgba(255,255,255,.74); }
.footer-links{
  list-style:none;
  padding-left:0;
  display:grid;
  gap: 8px;
}
.footer-links a{
  color: rgba(255,255,255,.80);
  font-weight: 800;
}
.footer-links a:hover{ color:#fff; text-decoration: underline; }

.social-btn{
  width: 42px; height: 42px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.16);
  color:#fff;
}
.social-btn:hover{ background: rgba(255,255,255,.18); }

.footer-bottom{ border-top: 1px solid rgba(255,255,255,.12); }
.footer-bottom-link{ color: rgba(255,255,255,.78); }
.footer-bottom-link:hover{ color:#fff; }

.footer-logo{
  height: 68px;
  width: auto;
  transition: transform .3s ease;
}
.footer-logo:hover{ transform: scale(1.05); }
@media (max-width: 576px){ .footer-logo{ height: 52px; } }

/* Floating Buttons */
.float-btn{
  position: fixed;
  right: 16px;
  z-index: 999;
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 999px;
  color:#fff;
  font-weight: 900;
  box-shadow: 0 22px 48px rgba(2,6,23,.25);
  max-width: calc(100vw - 32px);
  box-sizing: border-box;
  text-decoration: none;
  transition: all .3s ease;
}
.float-btn i{ font-size: 1.2rem; }

.float-whatsapp::after, .float-call::after{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255,255,255,.34), transparent 60%);
  filter: blur(8px);
  opacity: .6;
  z-index: -1;
  animation: pulseGlow 1.8s ease-in-out infinite;
  pointer-events: none;
}
@keyframes pulseGlow{
  0%,100%{ transform: scale(.98); opacity:.45; }
  50%{ transform: scale(1.04); opacity:.75; }
}

@media (max-width: 575.98px){
  .float-btn{
    right: 12px;
    width: 52px;
    height: 52px;
    padding: 0;
    justify-content: center;
    gap: 0;
    border-radius: 50%;
  }
  .float-btn .float-label{ display: none !important; }
  .float-whatsapp::after, .float-call::after{
    inset: -4px;
    filter: blur(6px);
  }
  .float-whatsapp{ bottom: 86px; }
  .float-call{ bottom: 24px; }
}

.float-actions{
  position: fixed;
  right: 16px;
  bottom: 24px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.float-actions .float-btn{
  position: relative;
  right: auto;
  bottom: auto;
}

/* WhatsApp stays green */
.float-whatsapp{
  background: linear-gradient(135deg, #25D366, #10b981);
  border: 1px solid rgba(255,255,255,.18);
}

/* ✅ Call button matches theme (clean blue) */
.float-call{
  background: var(--grad-primary);
  border: 1px solid rgba(255,255,255,.18);
}

.float-btn:hover{
  transform: translateY(-4px) scale(1.05);
  box-shadow: 0 28px 60px rgba(2,6,23,.32);
}

/* Back to top */
.back-top{
  position: fixed;
  left: 16px;
  bottom: 28px;
  z-index: 998;
  width: 46px; height: 46px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.12);
  background: rgba(255,255,255,.90);
  box-shadow: 0 18px 40px rgba(2,6,23,.16);
  display:none;
}
.back-top i{ font-size: 1.6rem; }

/* Safety grid */
.safety-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.safety-tile{
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.08);
  border-radius: var(--r-lg);
  padding: 16px 14px;
  display:flex;
  gap: 12px;
  align-items:center;
  box-shadow: var(--shadow-soft);
}
.safety-tile i{
  width: 46px; height: 46px;
  border-radius: 18px;
  display:grid; place-items:center;
  background: var(--grad-primary);
  color:#fff;
}
.safety-tile span{ font-weight: 900; font-family:"Fredoka", cursive; }

/* Responsive */
@media (max-width: 991.98px){
  .section-pad{ padding: 70px 0; }
  .hero-slide{ min-height:auto; padding: 54px 0 78px; }
  .gallery-item img{ height: 210px; }
  .blob{ display:none; }
}

@media (max-width: 575.98px){
  .brand-title{ font-size: 1.15rem; }
  .brand-subtitle{ font-size: .85rem; }
  .gallery-item img{ height: 190px; }
}

/* Page Banner */
.page-banner{
  position: relative;
  min-height: 420px;
  background: url('../img/banner.jpg') center center / cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.page-banner-overlay{
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(30,78,216,.78), rgba(21,58,158,.70)),
    radial-gradient(600px 260px at 80% 20%, rgba(123,22,54,.18), transparent 60%);
}
.page-banner .container{ z-index: 2; }
.page-banner h1{
  font-family: "Fredoka", cursive;
  font-size: 2.8rem;
}
@media (max-width: 768px){
  .page-banner{ min-height: 240px; }
  .page-banner h1{ font-size: 2rem; }
}



.text-para{
  text-align: justify;
}




.services-dropdown {
    position: relative;
}

.services-menu {
    min-width: 320px;
    max-height: 320px;
    overflow-y: auto;
    border: none;
    border-radius: 14px;
    padding: 10px 0;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    margin-top: 10px;
}

.services-menu::-webkit-scrollbar {
    width: 6px;
}

.services-menu::-webkit-scrollbar-thumb {
    background: #cfcfcf;
    border-radius: 10px;
}

.services-menu::-webkit-scrollbar-track {
    background: transparent;
}

.services-menu .dropdown-item {
    padding: 10px 18px;
    font-size: 15px;
    font-weight: 500;
    color: #222;
    transition: all 0.3s ease;
    white-space: normal;
}

.services-menu .dropdown-item:hover {
    background: #f4f7fb;
    color: #0d6efd;
    padding-left: 22px;
}




.img-fluiding{
  height: auto;
    width: 90%;
    margin-top: -30px;
}