/* ── Google Font Inter ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap');

/* ── Base typography ── */
body {
  font-family: 'Inter', sans-serif !important;
}

/* ── Navigation ── */
.elementor-4630 .elementor-element-7d4596f8:not(.elementor-motion-effects-element-type-background) {
  background-color: rgba(0,0,0,0.92) !important;
  backdrop-filter: blur(12px) !important;
}

/* Nav links */
.elementor-4630 .elementor-element-a751547 .elementor-nav-menu--main .elementor-item {
  color: rgba(255,255,255,0.65) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  transition: color 0.2s ease !important;
}
.elementor-4630 .elementor-element-a751547 .elementor-nav-menu--main .elementor-item:hover {
  color: #ffffff !important;
}

/* Schedule Now button */
.elementor-4630 .elementor-element-6252c934 .elementor-button {
  background-color: #ffffff !important;
  color: #0a0a0a !important;
  border-radius: 5px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  padding: 9px 20px !important;
  transition: background 0.2s ease !important;
}
.elementor-4630 .elementor-element-6252c934 .elementor-button:hover {
  background-color: #e8e8e8 !important;
  color: #0a0a0a !important;
}

/* ── Hero section ── */
.elementor-4561 .elementor-element-c963897 {
  --overlay-opacity: 0.75 !important;
}

/* Hero headings */
.elementor-4561 .elementor-element-785e82f .elementor-heading-title,
.elementor-4561 .elementor-element-f622cfb .elementor-heading-title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.05 !important;
  text-transform: none !important;
}

/* Hero subtext */
.elementor-4561 .elementor-element-b3cb4a1 .elementor-heading-title,
.elementor-4561 .elementor-element-5f16ee0 .elementor-heading-title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  opacity: 0.8 !important;
}

/* Hero buttons */
.elementor-4561 .elementor-element-18533f7 .elementor-button,
.elementor-4561 .elementor-element-d35d559 .elementor-button {
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  border-radius: 5px !important;
  letter-spacing: 0 !important;
  border: 1px solid rgba(255,255,255,0.4) !important;
  transition: all 0.2s ease !important;
}
.elementor-4561 .elementor-element-18533f7 .elementor-button:hover,
.elementor-4561 .elementor-element-d35d559 .elementor-button:hover {
  background-color: rgba(255,255,255,0.15) !important;
  border-color: rgba(255,255,255,0.8) !important;
}

/* ── Section titles ── */
.elementor-4561 .elementor-element-b577025 .elementor-heading-title,
.elementor-4561 .elementor-element-46312f2 .elementor-heading-title,
.elementor-4561 .elementor-element-00b81b6 .elementor-heading-title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.03em !important;
  font-size: 36px !important;
  text-transform: none !important;
}

/* ── Gallery cards ── */
.eael-gallery-grid-item {
  border-radius: 6px !important;
  overflow: hidden !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
.eael-gallery-grid-item:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,0.25) !important;
}

/* Gallery title */
.fg-item-title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: 14px !important;
}

/* ── Services section ── */
.elementor-4561 .elementor-element-14c428f:not(.elementor-motion-effects-element-type-background) {
  background-color: #f5f4f2 !important;
}

/* ── Contact section ── */
.elementor-4561 .elementor-element-aeb5203 {
  background-color: #0a0a0a !important;
}
.elementor-4561 .elementor-element-a458e16 {
  color: rgba(255,255,255,0.6) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.elementor-4561 .elementor-element-a458e16 a {
  color: #ffffff !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.3) !important;
  transition: border-color 0.2s ease !important;
}
.elementor-4561 .elementor-element-a458e16 a:hover {
  border-color: rgba(255,255,255,0.8) !important;
}

/* ── Filter controls ── */
.eael-filter-gallery-control ul li.control {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  border-radius: 4px !important;
}

/* Hero full frame */
.simo-hero-fullframe {
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.simo-hero-fullframe > .elementor-container {
  max-width: 100% !important;
  padding: 0 !important;
}
