/* Index landing page polish — scoped overrides */

/* Solid header top bar — contact info readable over hero */
.main_menu_area_three .header_logo_area {
  background: #ffffff;
  border-bottom: 1px solid #e8e8e8;
}

.main_menu_area_three .header_logo_area .media-body h4 {
  color: #1a1a1a;
}

.main_menu_area_three .header_logo_area .media-body p {
  color: #444444;
}

/* High-contrast navigation */
.main_menu_bg .navbar .navbar-collapse .menu {
  background: #2d2d34;
}

.main_menu_bg .navbar .navbar-collapse .menu li a {
  color: #ffffff !important;
}

.main_menu_bg .navbar .navbar-collapse .menu li:hover a,
.main_menu_bg .navbar .navbar-collapse .menu li.active a {
  color: #e2a062 !important;
}

/* Hero spacing — clear fixed header (logo + nav + translate bar) */
.ab_menu_gap + section.main_slider_area_two {
  margin-top: 250px;
}

.main_slider_area_two {
  padding-top: 0;
  position: relative;
  overflow: hidden;
}

/* Dark gradient overlay on slide image only (not over text) */
.main_slider_area_two::after {
  display: none;
}

.main_slider_area_two .slotholder {
  position: relative;
}

.main_slider_area_two .slotholder::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.82) 0%,
    rgba(0, 0, 0, 0.65) 40%,
    rgba(0, 0, 0, 0.25) 70%,
    rgba(0, 0, 0, 0.1) 100%
  );
  pointer-events: none;
  z-index: 2;
}

.main_slider_area_two .rev_slider,
.main_slider_area_two #main_slider_two {
  position: relative;
  z-index: 1;
}

.main_slider_area_two .tp-parallax-wrap,
.main_slider_area_two .slider_text_box,
.main_slider_area_two .tp-caption {
  position: relative;
  z-index: 10;
}

/* Semi-transparent panel behind hero captions */
.main_slider_area_two .hero-text-panel {
  background: rgba(0, 0, 0, 0.45);
  padding: 30px 40px;
  border-radius: 6px;
  max-width: 720px;
}

/* Force white hero text — Rev Slider must not wash out captions */
.main_slider_area_two #slide-1586-layer-1,
.main_slider_area_two #slide-1587-layer-2,
.main_slider_area_two .tp-caption.first_text,
.main_slider_area_two .tp-caption.secand_text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9), 0 0 40px rgba(0, 0, 0, 0.5);
}

/* Hero CTA — bright red button, white label */
.main_slider_area_two a.learn_btn.slider_btn,
.main_slider_area_two .learn_btn.slider_btn {
  background: #c8102e !important;
  color: #ffffff !important;
  border: 2px solid #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  padding: 14px 32px !important;
  line-height: 1.4 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.main_slider_area_two a.learn_btn.slider_btn:hover,
.main_slider_area_two .learn_btn.slider_btn:hover {
  background: #ffffff !important;
  color: #c8102e !important;
  border-color: #ffffff !important;
}

/* Promo cards — dark theme harmonized with hero */
.h-promo-area .promo-item {
  background: #1a1a1a;
}

.h-promo-area .promo-item.promo2 {
  background: #2d2d2d;
  margin-top: 0;
}

.h-promo-area .promo-item.promo3 {
  background: #3a1014;
}

/* Nav Sign Up primary CTA */
.navbar-nav .signup-cta > a {
  background: #c8102e !important;
  color: #fff !important;
  border-radius: 4px;
  margin-top: 12px;
  padding: 10px 18px !important;
  transition: background 0.25s ease;
}

.navbar-nav .signup-cta > a:hover,
.navbar-nav .signup-cta > a:focus {
  background: #a00d24 !important;
  color: #fff !important;
}

/* Google Translate — below nav bar */
.translate-bar {
  background: #ffffff;
  color: #333333;
  border-bottom: 1px solid #e8e8e8;
  padding: 6px 0;
  text-align: right;
}

.translate-bar .container {
  padding-right: 15px;
}

.translate-bar #google_translate_element {
  display: inline-block;
}

/* Consistent image cropping in content sections */
.cases_item .cases_image img,
.practice_item .p_img_inner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.cases_item .cases_image {
  overflow: hidden;
}

@media (max-width: 767px) {
  .ab_menu_gap + section.main_slider_area_two {
    margin-top: 130px;
  }

  .navbar-nav .signup-cta > a {
    display: inline-block;
    margin: 8px 15px;
  }

  .main_slider_area_two .slotholder::after {
    background: linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.75) 0%,
      rgba(0, 0, 0, 0.55) 100%
    );
  }

  .main_slider_area_two .hero-text-panel {
    padding: 20px 24px;
    max-width: 100%;
  }
}
