/* Skyvora Custom Overrides */
:root {
  --sky-navy: #0d2340;
  --sky-gold: #c8a96e;
  --sky-light-gold: #e8c98e;
}

/* Override primary to navy, secondary to gold */
.bg-primary { background-color: var(--sky-navy) !important; }
.text-primary { color: var(--sky-navy) !important; }
.text-secondary { color: var(--sky-gold) !important; }
.bg-secondary { background-color: var(--sky-gold) !important; }
.border-secondary { border-color: var(--sky-gold) !important; }

.btn.btn-primary {
  background: var(--sky-gold) !important;
  color: #fff !important;
  border-color: var(--sky-gold) !important;
}
.btn.btn-primary:hover {
  background: var(--sky-navy) !important;
  color: var(--sky-gold) !important;
  border: 1px solid var(--sky-gold) !important;
}

.btn.btn-secondary {
  background: transparent;
  color: var(--sky-gold);
  border: none;
}

/* Navbar logo */
.navbar-brand img.skyvora-logo {
  height: 50px;
  width: auto;
}

/* Counter section */
.counter-facts {
  background: linear-gradient(135deg, var(--sky-navy) 0%, #1a3a5c 100%) !important;
}

/* Footer */
.container-fluid.footer {
  background: var(--sky-navy) !important;
}

.container-fluid.copyright {
  background: #081828 !important;
}

/* Carousel caption text shadow */
.carousel-caption h1, .carousel-caption h4, .carousel-caption h5 {
  text-shadow: 2px 2px 8px rgba(0,0,0,0.7);
}

/* Hero overlay for carousel */
.carousel-item::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(13,35,64,0.55) 0%, rgba(13,35,64,0.3) 100%);
}
.carousel-caption { z-index: 2; }

/* Section sub-title color */
.sub-title { color: var(--sky-navy) !important; }
.section-title .sub-style::before { border-color: var(--sky-gold) !important; }
.section-title .sub-style::after { border-color: var(--sky-navy) !important; }
.sub-title::before { border-color: var(--sky-gold) !important; }
.sub-title::after { border-color: var(--sky-navy) !important; }

/* Service card */
.service-item .service-title-name .bg-primary { background-color: var(--sky-navy) !important; }

/* Training card */
.training-content.bg-secondary { background-color: var(--sky-gold) !important; }

/* Country item flag overlay */
.country-name { background: linear-gradient(transparent, var(--sky-navy)); }

/* Contact form */
.contact-form .btn { background: var(--sky-gold) !important; color: #fff !important; }

/* Breadcrumb hero */
.breadcrumb-hero {
  background: linear-gradient(135deg, var(--sky-navy) 60%, #1a3a5c 100%);
  padding: 80px 0 40px;
}

/* WhatsApp float button */
.whatsapp-float {
  position: fixed;
  bottom: 100px;
  right: 30px;
  z-index: 9999;
  background: #25d366;
  color: #fff;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  box-shadow: 0 4px 16px rgba(37,211,102,0.4);
  text-decoration: none;
  transition: transform 0.3s;
}
.whatsapp-float:hover { transform: scale(1.15); color: #fff; }

/* Spinner override */
.spinner-border { color: var(--sky-gold) !important; }

/* Features section icons */
.feature-icon i { color: var(--sky-navy) !important; }
.feature-item:hover { border-color: var(--sky-gold) !important; }

/* Nav active */
.navbar-light .navbar-nav .nav-link.active { color: var(--sky-gold) !important; }
.navbar-light .navbar-nav .nav-link:hover { color: var(--sky-gold) !important; }

/* Office card */
.office-item { border-top: 3px solid var(--sky-gold) !important; }

/* Map iframe */
.map-frame {
  border: 0;
  width: 100%;
  height: 400px;
  border-radius: 12px;
}

/* About page team cards */
.team-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(13,35,64,0.1);
  transition: transform 0.3s;
}
.team-card:hover { transform: translateY(-6px); }
.team-card img { width: 100%; height: 250px; object-fit: cover; }
.team-info { padding: 1.2rem; background: var(--sky-navy); color: #fff; }
.team-info p { color: var(--sky-gold); margin-bottom: 0; }

/* Hero animated text */
@keyframes slideUp {
  from { opacity: 0; transform: translateY(40px); }
  to { opacity: 1; transform: translateY(0); }
}
.hero-animate { animation: slideUp 0.8s ease forwards; }

/* Counter */
.counter { background: rgba(255,255,255,0.1) !important; border: 1px solid rgba(200,169,110,0.3) !important; }
.counter .counter-icon i { color: var(--sky-gold) !important; }
.counter-content h3 { color: #fff !important; }
.counter-value { color: var(--sky-gold) !important; }

/* ── Elementor Compatibility ─────────────────────────────────── */

/* Remove default padding that fights Elementor sections */
.elementor-page .site-main,
.elementor-page #primary {
  padding: 0 !important;
  margin: 0 !important;
}

/* Elementor sections go full width */
.elementor-section.elementor-section-full_width {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Make Elementor image widgets respect the theme's border-radius */
.elementor-widget-image img {
  max-width: 100%;
  height: auto;
}

/* Elementor buttons — inherit Skyvora brand colors */
.elementor-button.elementor-button-default,
.elementor-widget-button .elementor-button {
  background-color: var(--sky-gold);
  border-color: var(--sky-gold);
  color: #fff;
  border-radius: 30px;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}

.elementor-button.elementor-button-default:hover,
.elementor-widget-button .elementor-button:hover {
  background-color: var(--sky-navy);
  border-color: var(--sky-gold);
  color: var(--sky-gold);
}

/* Elementor heading widget — use Skyvora fonts */
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Poppins', sans-serif;
}

/* Elementor text widget */
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
  font-family: 'Open Sans', sans-serif;
  line-height: 1.8;
}

/* Image overlay hover for Elementor image boxes */
.elementor-widget-image-box:hover img {
  transform: scale(1.05);
  transition: transform 0.4s ease;
}

/* Breadcrumb hero — only show on non-elementor pages */
.elementor-page .breadcrumb-hero {
  display: none;
}

/* ── Elementor CSS Variables (maps to theme tokens) ──────────── */
:root {
  --e-global-color-primary: var(--sky-navy);
  --e-global-color-secondary: var(--sky-gold);
  --e-global-color-text: #333333;
  --e-global-color-accent: var(--sky-light-gold);
  --e-global-typography-primary-font-family: 'Poppins';
  --e-global-typography-secondary-font-family: 'Open Sans';
}
