/* ============================================================
   EXCEL TUITION — MODERN DESIGN OVERHAUL
   Injected via excel-tuition-custom plugin
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@600;700;800&display=swap');

:root {
  --et-navy:    #1B3A8C;
  --et-navy2:   #0f2560;
  --et-amber:   #F5A623;
  --et-amber2:  #e09410;
  --et-green:   #27AE60;
  --et-bg:      #F4F6F9;
  --et-text:    #1A1A2E;
  --et-muted:   #6b7280;
  --et-white:   #ffffff;
  --et-border:  #e2e8f0;
  --et-shadow:  0 4px 24px rgba(27,58,140,.10);
  --et-radius:  14px;
}

/* ── GLOBAL RESETS ── */
body { font-family: 'Inter', sans-serif !important; color: var(--et-text) !important; }
h1,h2,h3,h4,h5,h6 { font-family: 'Poppins', sans-serif !important; }

/* ── NAVBAR MODERNIZATION ── */
.elementor-nav-menu--main { gap: 4px !important; }
.elementor-nav-menu--main .elementor-item {
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 0.875rem !important;
  letter-spacing: 0.03em !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  transition: background .2s, color .2s !important;
  color: var(--et-text) !important;
}
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item.elementor-item-active {
  background: rgba(27,58,140,.08) !important;
  color: var(--et-navy) !important;
}
/* Enroll Now button in nav */
.elementor-nav-menu--main .elementor-item[href*="enroll"],
a.elementor-item[href*="enroll"] {
  background: var(--et-amber) !important;
  color: #1A1A2E !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  padding: 8px 18px !important;
}
.elementor-nav-menu--main .elementor-item[href*="enroll"]:hover {
  background: var(--et-amber2) !important;
  transform: translateY(-1px) !important;
}

/* ── HERO SECTION ENHANCEMENT ── */
.elementor-section.elementor-top-section:first-of-type,
section.elementor-section:has(h1),
.hero-section, [class*="hero"] {
  background: linear-gradient(135deg, var(--et-navy) 0%, var(--et-navy2) 100%) !important;
}
/* Modernize hero heading */
.elementor-widget-heading h1,
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
}

/* ── CARDS MODERNIZATION ── */
.elementor-widget-wrap,
.elementor-column-wrap {
  border-radius: var(--et-radius) !important;
}
/* Service cards */
.elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-widget-image-box .elementor-image-box-wrapper {
  background: var(--et-white) !important;
  border: 1.5px solid var(--et-border) !important;
  border-radius: var(--et-radius) !important;
  padding: 1.75rem !important;
  box-shadow: var(--et-shadow) !important;
  transition: transform .25s, box-shadow .25s, border-color .25s !important;
}
.elementor-widget-icon-box .elementor-icon-box-wrapper:hover,
.elementor-widget-image-box .elementor-image-box-wrapper:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(27,58,140,.16) !important;
  border-color: var(--et-navy) !important;
}
.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-icon-box h3 {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important;
  color: var(--et-navy) !important;
  font-size: 1.1rem !important;
}
.elementor-widget-icon-box .elementor-icon-box-description,
.elementor-widget-icon-box p {
  color: var(--et-muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.65 !important;
}

/* ── BUTTONS ── */
.elementor-button,
.elementor-widget-button .elementor-button {
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
  letter-spacing: 0.02em !important;
  transition: all .25s !important;
  box-shadow: 0 4px 16px rgba(27,58,140,.2) !important;
  text-transform: uppercase !important;
  font-size: 0.85rem !important;
}
.elementor-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(27,58,140,.3) !important;
}
/* Primary navy buttons */
.elementor-button.elementor-button-default,
.elementor-button[style*="background-color: #1b3a8c"],
.elementor-button[style*="background-color:#1B3A8C"] {
  background: var(--et-navy) !important;
}
/* Read More buttons — amber */
.elementor-button.elementor-size-sm {
  background: var(--et-amber) !important;
  color: var(--et-text) !important;
  box-shadow: 0 4px 16px rgba(245,166,35,.3) !important;
}

/* ── SECTION HEADINGS ── */
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important;
}
.elementor-widget-heading h2.elementor-heading-title {
  position: relative !important;
  padding-bottom: 0.75rem !important;
}
.elementor-widget-heading h2.elementor-heading-title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 0 !important;
  width: 52px !important; height: 3px !important;
  background: var(--et-amber) !important;
  border-radius: 2px !important;
}
.elementor-widget-text-editor p,
.elementor-widget-text-editor,
.elementor-widget-text-editor li {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.95rem !important;
  line-height: 1.75 !important;
  color: var(--et-muted) !important;
}

/* ── CURRICULUM CARDS READABILITY FIX ── */
.elementor-widget-image-box .elementor-image-box-content h3,
.elementor-widget-image-box .elementor-image-box-content p {
  text-shadow: 0 1px 4px rgba(0,0,0,.6) !important;
}

/* ── FOOTER ── */
footer.elementor-section,
.elementor-location-footer .elementor-section,
section[data-element_type="section"]:last-child {
  background: var(--et-navy) !important;
}
footer .elementor-widget-heading .elementor-heading-title,
.elementor-location-footer h2, .elementor-location-footer h3 {
  color: var(--et-amber) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
footer .elementor-widget-text-editor,
footer .elementor-widget-text-editor p,
footer .elementor-icon-list-item,
footer .elementor-icon-list-item span,
.elementor-location-footer p,
.elementor-location-footer li {
  color: rgba(255,255,255,.8) !important;
  font-size: 0.875rem !important;
}
footer a, .elementor-location-footer a { color: rgba(255,255,255,.8) !important; transition: color .2s !important; }
footer a:hover, .elementor-location-footer a:hover { color: var(--et-amber) !important; }

/* ── GALLERY ── */
.elementor-widget-gallery .gallery-item,
.elementor-widget-image .elementor-image img {
  border-radius: 10px !important;
  overflow: hidden !important;
  transition: transform .3s, box-shadow .3s !important;
}
.elementor-widget-gallery .gallery-item:hover img,
.elementor-widget-image:hover .elementor-image img {
  transform: scale(1.03) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.25) !important;
}

/* ── PAGE HERO BANNERS (About, Curriculum, Contact) ── */
.elementor-section.elementor-top-section .elementor-widget-heading h1 {
  font-size: clamp(2rem, 5vw, 3rem) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.3) !important;
}

/* ── CONTACT FORM MODERNIZATION ── */
.elementor-field-group input,
.elementor-field-group textarea,
.elementor-field-group select {
  border: 1.5px solid var(--et-border) !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  padding: 12px 16px !important;
  transition: border-color .2s, box-shadow .2s !important;
  background: var(--et-white) !important;
}
.elementor-field-group input:focus,
.elementor-field-group textarea:focus {
  border-color: var(--et-navy) !important;
  box-shadow: 0 0 0 3px rgba(27,58,140,.1) !important;
  outline: none !important;
}
.elementor-button[type="submit"] {
  background: var(--et-navy) !important;
  color: white !important;
  border: none !important;
}

/* ── SMOOTH SCROLL ── */
html { scroll-behavior: smooth !important; }

/* ── MOBILE RESPONSIVE FIXES ── */
@media (max-width: 767px) {
  .elementor-widget-heading .elementor-heading-title { font-size: clamp(1.5rem, 6vw, 2.2rem) !important; }
  .elementor-button { width: 100% !important; text-align: center !important; justify-content: center !important; }
  .elementor-widget-icon-box .elementor-icon-box-wrapper { padding: 1.25rem !important; }
}

/* ── ENROLL NOW HIGHLIGHT BANNER ── */
body::after {
  display: none !important; /* reserved for future use */
}

/* ── PROGRAMME CARDS ENHANCEMENT ── */
.elementor-posts--skin-cards .elementor-post__card,
.elementor-widget-posts .elementor-post {
  border-radius: var(--et-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--et-shadow) !important;
  transition: transform .25s, box-shadow .25s !important;
  border: none !important;
}
.elementor-posts--skin-cards .elementor-post__card:hover,
.elementor-widget-posts .elementor-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(27,58,140,.16) !important;
}

/* ── ANIMATED STATS (if elementor counter widget) ── */
.elementor-counter-number-wrapper {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  color: var(--et-amber) !important;
}
.elementor-counter-title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 0.8rem !important;
  opacity: .7 !important;
}

/* ── SOCIAL PROOF BANNER ── */
.et-social-bar {
  background: var(--et-navy) !important;
  color: rgba(255,255,255,.9) !important;
  padding: 10px 24px !important;
  text-align: center !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
}
.et-social-bar a { color: var(--et-amber) !important; text-decoration: none !important; font-weight: 700 !important; }
