.elementor-5035 .elementor-element.elementor-element-b61ad15{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-81d0ad1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-e6396ba{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-9d2ea1e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-80d53e5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-e7e1806{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-a517da1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-5035 .elementor-element.elementor-element-2b1ee05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-66256db *//* Base Variables & Setup */
.elementor-5035 .elementor-element.elementor-element-66256db .custom-dental-hero {
  --primary-blue: #1c355e;
  --text-dark: #122746;
  --text-muted: #5a6b82;
  --peach-btn: #F18F79;
  --red-btn: #DE5B5B;
  --dark-btn: #38485D;
  --bg-light: #F6F8FB;
  color: #333;
}

.elementor-5035 .elementor-element.elementor-element-66256db .custom-dental-hero * {
  box-sizing: border-box;
}

/* 1. Hero Background & Content */
.elementor-5035 .elementor-element.elementor-element-66256db .hero-background {
  /* Replace this URL with your clinic building image URL from WordPress Media Library */
  background: linear-gradient(135deg, rgba(28, 53, 94, 0.88) 0%, rgba(38, 73, 110, 0.8) 100%), url('https://images.unsplash.com/photo-1606811841689-23dfddce3e95?q=80&w=2000&auto=format&fit=crop') center/cover no-repeat;
  padding: 100px 20px 180px 20px;
  color: #fff;
}

.elementor-5035 .elementor-element.elementor-element-66256db .hero-content {
  max-width: 1200px;
  margin: 0 auto;
}

/* Trust Badge */
.elementor-5035 .elementor-element.elementor-element-66256db .trust-badge {
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 8px 18px;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 24px;
  backdrop-filter: blur(4px);
}

.elementor-5035 .elementor-element.elementor-element-66256db .trust-badge svg {
  width: 14px;
  height: 14px;
  margin-right: 8px;
  fill: var(--peach-btn);
}

/* Typography */
.elementor-5035 .elementor-element.elementor-element-66256db .hero-title {
  font-size: clamp(2.2rem, 4.5vw, 3.8rem);
  font-weight: 800;
  line-height: 1.15;
  margin: 0 0 20px 0;
  max-width: 950px;
  color: #fff;
}

.elementor-5035 .elementor-element.elementor-element-66256db .hero-subtitle {
  font-size: 1.1rem;
  line-height: 1.6;
  margin: 0 0 40px 0;
  max-width: 800px;
  color: rgba(255, 255, 255, 0.9);
}

/* Buttons */
.elementor-5035 .elementor-element.elementor-element-66256db .hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 40px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none;
  color: #fff;
  transition: all 0.3s ease;
  border: none;
}

.elementor-5035 .elementor-element.elementor-element-66256db .btn:hover {
  transform: translateY(-2px);
  opacity: 0.9;
}

.elementor-5035 .elementor-element.elementor-element-66256db .btn-peach { background-color: var(--peach-btn); }
.elementor-5035 .elementor-element.elementor-element-66256db .btn-red { background-color: var(--red-btn); }
.elementor-5035 .elementor-element.elementor-element-66256db .btn-dark { 
  background-color: var(--dark-btn); 
  border: 1px solid rgba(255,255,255,0.1); 
}

.elementor-5035 .elementor-element.elementor-element-66256db .btn-dark svg {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  fill: currentColor;
}

/* Features Grid */
.elementor-5035 .elementor-element.elementor-element-66256db .hero-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  max-width: 850px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .feature-item {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 12px 20px;
  border-radius: 50px;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.9);
  backdrop-filter: blur(5px);
}

.elementor-5035 .elementor-element.elementor-element-66256db .feature-item svg {
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin-right: 12px;
  fill: var(--peach-btn);
  background: rgba(241, 143, 121, 0.15);
  border-radius: 50%;
  padding: 3px;
}

/* 2. Overlapping Stats Section */
.elementor-5035 .elementor-element.elementor-element-66256db .stats-overlap-container {
  max-width: 1200px;
  margin: -80px auto 0;
  padding: 0 20px;
  position: relative;
  z-index: 10;
}

.elementor-5035 .elementor-element.elementor-element-66256db .stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .stat-card {
  background: #fff;
  border-radius: 30px;
  padding: 40px 20px;
  text-align: center;
  box-shadow: 0 10px 40px rgba(0,0,0,0.08);
}

/* Apply specific blue gradient to numbers */
.elementor-5035 .elementor-element.elementor-element-66256db .stat-number {
  background: linear-gradient(90deg, #185B9D 0%, #5AA5D7 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #185B9D; /* Fallback */
  font-size: 2.5rem;
  font-weight: 800;
  margin-bottom: 8px;
  display: inline-block;
}

.elementor-5035 .elementor-element.elementor-element-66256db .stat-text {
  color: var(--text-dark);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.4;
}

/* 3. Reviews Section */
.elementor-5035 .elementor-element.elementor-element-66256db .reviews-section {
  max-width: 1200px;
  margin: 40px auto 60px;
  padding: 0 20px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .reviews-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
  align-items: stretch;
}

.elementor-5035 .elementor-element.elementor-element-66256db .review-summary-card {
  display: flex;
  align-items: center;
  gap: 16px;
  background: #fff;
  border: 1px solid #eee;
  padding: 24px;
  border-radius: 30px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}

.elementor-5035 .elementor-element.elementor-element-66256db .review-card {
  background: var(--bg-light);
  padding: 24px;
  border-radius: 20px;
  font-size: 0.9rem;
  color: var(--text-muted);
  line-height: 1.5;
  font-style: italic;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.elementor-5035 .elementor-element.elementor-element-66256db .stars {
  color: #FBBC05;
  font-size: 1.2rem;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .reviewer-name {
  margin-top: 16px;
  font-weight: 700;
  color: var(--text-dark);
  font-style: normal;
}

.elementor-5035 .elementor-element.elementor-element-66256db .rating-number {
  font-size: 1.8rem;
  font-weight: 800;
  color: var(--text-dark);
  line-height: 1;
  margin-bottom: 4px;
}

.elementor-5035 .elementor-element.elementor-element-66256db .rating-text {
  font-size: 0.8rem;
  color: var(--text-muted);
}

/* 4. Bottom Info Bar */
.elementor-5035 .elementor-element.elementor-element-66256db .bottom-info-bar {
  display: flex;
  flex-wrap: nowrap; /* Forces one line on desktop */
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 0 20px 40px;
  max-width: 100%;
  margin: 0 auto;
}

.elementor-5035 .elementor-element.elementor-element-66256db .info-pill {
  display: inline-flex;
  align-items: center;
  background: var(--bg-light);
  color: var(--text-dark);
  padding: 10px 16px;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap; /* Prevents text inside the pill from wrapping */
}

.elementor-5035 .elementor-element.elementor-element-66256db .info-pill svg {
  width: 16px;
  height: 16px;
  min-width: 16px;
  margin-right: 8px;
  fill: var(--primary-blue);
}

/* 5. Mobile & Tablet Responsive Adjustments */
@media (max-width: 1100px) {
  /* Allows wrapping only on smaller screens so it doesn't overflow */
  .elementor-5035 .elementor-element.elementor-element-66256db .bottom-info-bar {
    flex-wrap: wrap; 
  }
}

@media (max-width: 1024px) {
  .elementor-5035 .elementor-element.elementor-element-66256db .stats-grid, 
  .elementor-5035 .elementor-element.elementor-element-66256db .reviews-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .stats-overlap-container {
    margin-top: -50px;
  }
}

@media (max-width: 768px) {
  .elementor-5035 .elementor-element.elementor-element-66256db .hero-background {
    padding: 60px 20px 140px 20px;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .hero-title {
    font-size: 2rem;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .hero-buttons {
    flex-direction: column;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .btn {
    width: 100%;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .stats-grid, 
  .elementor-5035 .elementor-element.elementor-element-66256db .reviews-grid {
    grid-template-columns: 1fr;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .stats-overlap-container {
    margin-top: -40px;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .bottom-info-bar {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .elementor-5035 .elementor-element.elementor-element-66256db .info-pill {
    justify-content: center;
    white-space: normal;
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a0c7216 *//* Layout via CSS Grid */
.elementor-5035 .elementor-element.elementor-element-a0c7216 .dental-about-section {
  display: grid;
  /* 1.3fr gives the text side more width than the image side (1fr) */
  grid-template-columns: 1.3fr 1fr; 
  grid-template-rows: auto auto 1fr;
  grid-template-areas: 
    "overline image"
    "title    image"
    "text     image";
  gap: 0px 60px; /* 60px gap between text and image */
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 20px;
  align-items: start;
}

/* Grid Area Assignments */
.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-overline {
  grid-area: overline;
  display: flex;
  align-items: center;
  font-size: 0.85rem;
  font-weight: 700;
  color: #185B9D;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 16px;
  margin-top: 10px;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-title {
  grid-area: title;
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 800;
  color: #122746;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 24px;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-text {
  grid-area: text;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-image {
  grid-area: image;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: center; /* Centers the image vertically against the entire text block */
  position: relative;
}

/* Text Element Styling */
.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-overline .line {
  display: inline-block;
  width: 30px;
  height: 2px;
  background-color: #185B9D;
  margin-right: 12px;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .section-paragraph {
  font-size: 1.05rem;
  color: #5a6b82;
  line-height: 1.7;
  margin-top: 0;
  margin-bottom: 24px;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .section-footer-text {
  font-size: 1rem;
  color: #5a6b82;
  line-height: 1.6;
  margin-top: 30px;
  margin-bottom: 0;
}

/* Link Styling */
.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-text a {
  color: #185B9D;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.3s ease;
  box-shadow: inset 0 -2px 0 rgba(24, 91, 157, 0.2);
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .about-text a:hover {
  color: #0F3A66;
  box-shadow: inset 0 -2px 0 #185B9D;
}

/* Image & Decorative Elements */
.elementor-5035 .elementor-element.elementor-element-a0c7216 .image-wrapper {
  position: relative;
  width: 100%;
  max-width: 500px;
  aspect-ratio: 1 / 1;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .decorative-ring-blue {
  position: absolute;
  top: -15px;
  left: -20px;
  right: 15px;
  bottom: 20px;
  border: 2px solid #E0EAF5;
  border-radius: 50%;
  z-index: 1;
}

.elementor-5035 .elementor-element.elementor-element-a0c7216 .decorative-ring-peach {
  position: absolute;
  bottom: 10%;
  left: -5%;
  width: 60px;
  height: 60px;
  border: 2px solid #F18F79;
  border-radius: 50%;
  z-index: 3;
  opacity: 0.6;
}

/* Mobile Responsiveness & Order Re-arrangement */
@media (max-width: 992px) {
  .elementor-5035 .elementor-element.elementor-element-a0c7216 .dental-about-section {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    /* Reorders elements explicitly for mobile: Title -> Image -> Text */
    grid-template-areas: 
      "overline"
      "title"
      "image"
      "text";
    gap: 20px;
    padding: 60px 20px;
    text-align: center;
  }

  .elementor-5035 .elementor-element.elementor-element-a0c7216 .about-overline {
    justify-content: center;
    margin-bottom: 8px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-a0c7216 .about-title {
    margin-bottom: 10px;
  }

  .elementor-5035 .elementor-element.elementor-element-a0c7216 .about-image {
    margin: 30px 0; /* Adds breathing room around the image on mobile */
  }
  
  .elementor-5035 .elementor-element.elementor-element-a0c7216 .image-wrapper {
    max-width: 400px; /* Slightly scales down the image on smaller tablets */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fed48c6 *//* Section Background & Layout */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .services-carousel-section {
  background-color: #F4F7FA;
  padding: 80px 0 100px 0;
  font-family: inherit;
  overflow: hidden;
}

/* Header Text */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .services-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 50px auto;
  padding: 0 20px;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .services-overline {
  font-size: 0.85rem;
  font-weight: 700;
  color: #185B9D;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 16px;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .services-title {
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 800;
  color: #122746;
  line-height: 1.2;
  margin-bottom: 20px;
  margin-top: 0;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .services-subtitle {
  font-size: 1.05rem;
  color: #7A899E;
  line-height: 1.6;
}

/* Carousel Track */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 20px;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-track {
  display: flex;
  gap: 30px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding-bottom: 40px; /* Space for box shadow on hover */
  
  /* Hides the default scrollbar for a cleaner look */
  scrollbar-width: none; 
  -ms-overflow-style: none;
}
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-track::-webkit-scrollbar {
  display: none;
}

/* Individual Cards & Animations */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .service-card {
  flex: 0 0 350px;
  scroll-snap-align: start;
  background: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(18, 39, 70, 0.04);
  display: flex;
  flex-direction: column;
  /* Premium Transition */
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease;
}

/* Premium Lift and Glow on Hover */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .service-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(18, 39, 70, 0.08);
}

/* Image with bottom fade gradient */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-img-wrapper {
  position: relative;
  width: 100%;
  height: 240px;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* The magic gradient that fades the image into the white background */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-img-wrapper::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
}

/* Card Text Content */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-content {
  padding: 0 30px 40px 30px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-content h3 {
  font-size: 1.3rem;
  font-weight: 700;
  color: #122746;
  margin: 0 0 16px 0;
  line-height: 1.3;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-content p {
  font-size: 0.95rem;
  color: #7A899E;
  line-height: 1.6;
  margin: 0 0 30px 0;
  flex: 1; /* Pushes the link to the bottom */
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-link {
  display: inline-flex;
  align-items: center;
  font-size: 0.95rem;
  font-weight: 700;
  color: #F18F79; /* Peach Color */
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-link:hover {
  opacity: 0.8;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-link svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  margin-left: 4px;
  transition: transform 0.2s ease;
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .card-link:hover svg {
  transform: translateX(4px);
}

/* --- Premium Navigation Controls Section --- */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-controls-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px; /* Space between components */
  margin-top: 20px;
  max-width: 1200px;
  margin: 20px auto 0;
}

/* Arrow Button Styling */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #ffffff;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  /* Premium Shadow */
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Interaction: scale slightly on hover */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn svg {
  width: 24px;
  height: 24px;
  fill: #D1D9E2; /* Light grey arrow icon */
  transition: fill 0.3s ease;
}

/* Highlight arrow on hover */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn:hover svg {
  fill: #185B9D;
}

/* Pagination Dots Section */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-dots {
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Inactive Dots */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #E2E8F0;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Active Dot - The Stretched Pill with Gradient */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .dot.active {
  width: 32px; /* Stretched width */
  height: 10px;
  border-radius: 20px; /* Maintains full pill shape */
  /* Premium Blue Gradient */
  background: linear-gradient(90deg, #185B9D 0%, #5AA5D7 100%);
  box-shadow: 0 2px 8px rgba(24, 91, 157, 0.3);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .service-card {
    /* Hint to user there are more cards to swipe */
    flex: 0 0 85vw; 
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-track {
    gap: 16px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .services-carousel-section {
    padding: 60px 0;
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-controls-container {
    gap: 15px;
  }
}

/* --- Premium Navigation Controls Section --- */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-controls-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px; 
  margin-top: 20px;
  max-width: 1200px;
  margin: 20px auto 0;
}

/* Arrow Button Styling - Strict Rules */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important; /* Forces it to stay a circle */
  flex-shrink: 0 !important; /* Stops flexbox from squishing it */
  padding: 0 !important;
  border-radius: 50% !important;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 15px rgba(0,0,0,0.08);
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  box-sizing: border-box;
}

/* Interaction: scale slightly on hover */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn svg {
  width: 22px;
  height: 22px;
  fill: #5a6b82; /* Darker grey so you can actually see it */
  transition: fill 0.3s ease;
  display: block;
}

/* Highlight arrow on hover */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .nav-btn:hover svg {
  fill: #185B9D;
}

/* Pagination Dots Section */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-dots {
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Inactive Dots */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #E2E8F0;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Active Dot - The Stretched Pill with Gradient */
.elementor-5035 .elementor-element.elementor-element-fed48c6 .dot.active {
  width: 32px; 
  height: 10px;
  border-radius: 20px; 
  background: linear-gradient(90deg, #185B9D 0%, #5AA5D7 100%);
  box-shadow: 0 2px 8px rgba(24, 91, 157, 0.3);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .service-card {
    flex: 0 0 85vw; 
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-track {
    gap: 16px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .services-carousel-section {
    padding: 60px 0;
  }
  
  .elementor-5035 .elementor-element.elementor-element-fed48c6 .carousel-controls-container {
    gap: 15px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f52d08d *//* Section Background & Base */
.elementor-5035 .elementor-element.elementor-element-f52d08d .why-choose-section {
  /* Using the specific light blue/grey from your mockup */
  background-color: #F0F4F8; 
  padding: 80px 20px;
  font-family: inherit;
}

/* Header Styling */
.elementor-5035 .elementor-element.elementor-element-f52d08d .section-header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px auto;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .overline {
  font-size: 0.85rem;
  font-weight: 700;
  color: #185B9D;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .section-title {
  font-size: clamp(2rem, 4vw, 2.6rem);
  font-weight: 800;
  color: #122746;
  margin: 0 0 16px 0;
  line-height: 1.2;
  text-wrap: balance;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .section-subtitle {
  font-size: 1.05rem;
  color: #718096;
  line-height: 1.6;
  margin: 0;
  text-wrap: balance;
}

/* 2-Column Grid */
.elementor-5035 .elementor-element.elementor-element-f52d08d .features-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
}

/* General Card Styling */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card {
  background-color: #ffffff;
  border-radius: 24px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(18, 39, 70, 0.06);
}

/* Highlighted Dark Blue Card */
.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card {
  background-color: #0A365C; /* Deep Navy from your mockup */
  color: #ffffff;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card:hover {
  box-shadow: 0 15px 35px rgba(10, 54, 92, 0.2);
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card .card-title {
  color: #ffffff;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card .card-text {
  color: #E2E8F0; /* Lighter grey/white for readability */
}

/* Base Icon Wrappers */
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-wrapper {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  /* Premium Transition on the icon background/scale */
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-wrapper svg {
  width: 24px;
  height: 24px;
  /* Premium Transition on the icon fill color */
  transition: fill 0.4s ease;
}

/* --- Default Icon Colors --- */
.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-icon { background-color: rgba(255, 255, 255, 0.1); }
.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-icon svg { fill: #ffffff; }

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-teal { background-color: #E6F6F8; }
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-teal svg { fill: #38B2AC; }

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-cyan { background-color: #EBF8FF; }
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-cyan svg { fill: #4FD1C5; }

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-slate { background-color: #EDF2F7; }
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-slate svg { fill: #4A5568; }

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-red { background-color: #FFF5F5; }
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-red svg { fill: #F56565; }

.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-blue { background-color: #EBF4FF; }
.elementor-5035 .elementor-element.elementor-element-f52d08d .icon-blue svg { fill: #3182CE; }


/* --- Premium Hover Animations (Inverted Colors + Scale + Glow) --- */

/* Highlight Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card:hover .highlight-icon { 
  background-color: #ffffff; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(255, 255, 255, 0.15); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .highlight-card:hover .highlight-icon svg { fill: #0A365C; }

/* Teal Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-teal { 
  background-color: #38B2AC; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(56, 178, 172, 0.25); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-teal svg { fill: #ffffff; }

/* Cyan Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-cyan { 
  background-color: #4FD1C5; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(79, 209, 197, 0.25); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-cyan svg { fill: #ffffff; }

/* Slate Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-slate { 
  background-color: #4A5568; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(74, 85, 104, 0.25); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-slate svg { fill: #ffffff; }

/* Red Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-red { 
  background-color: #F56565; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(245, 101, 101, 0.25); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-red svg { fill: #ffffff; }

/* Blue Card Hover */
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-blue { 
  background-color: #3182CE; 
  transform: scale(1.1); 
  box-shadow: 0 8px 20px rgba(49, 130, 206, 0.25); 
}
.elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card:hover .icon-blue svg { fill: #ffffff; }


/* Typography inside cards */
.elementor-5035 .elementor-element.elementor-element-f52d08d .card-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #122746;
  margin: 0 0 12px 0;
  line-height: 1.4;
  text-wrap: balance;
}

.elementor-5035 .elementor-element.elementor-element-f52d08d .card-text {
  font-size: 0.95rem;
  color: #718096;
  margin: 0;
  line-height: 1.6;
  font-weight: 400;
}

/* Mobile & Tablet Responsiveness */
@media (max-width: 900px) {
  .elementor-5035 .elementor-element.elementor-element-f52d08d .features-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .elementor-5035 .elementor-element.elementor-element-f52d08d .why-choose-section {
    padding: 60px 15px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-f52d08d .feature-card {
    padding: 30px 20px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-f52d08d .icon-wrapper {
    margin-bottom: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-08532d9 *//* Base Variables & Setup */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-section {
  --primary-blue: #185B9D;
  --dark-blue: #122746;
  --text-grey: #5a6b82;
  --border-color: #EAEFEF;
  --icon-bg: #EAF1F8;
  
  padding: 80px 20px;
  background-color: #ffffff;
  font-family: inherit;
}

/* Header Styling */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px auto;
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .help-overline {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--primary-blue);
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .help-title {
  font-size: clamp(2rem, 4vw, 2.6rem);
  font-weight: 800;
  color: var(--dark-blue);
  margin: 0 0 16px 0;
  line-height: 1.2;
  text-wrap: balance; /* Ensures the h2 title never has an orphan word */
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .help-subtitle {
  font-size: 1.05rem;
  color: var(--text-grey);
  line-height: 1.6;
  margin: 0;
  text-wrap: balance; 
}

/* Grid Layout */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Individual Card Styling */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 40px 24px;
  background: #ffffff;
  border: 1px solid var(--border-color);
  border-radius: 24px;
  text-decoration: none;
  /* Premium Transition */
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Icon Wrapper */
.elementor-5035 .elementor-element.elementor-element-08532d9 .icon-circle {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-color: var(--icon-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .icon-circle svg {
  width: 28px;
  height: 28px;
  fill: var(--dark-blue);
  transition: all 0.4s ease;
}

/* Card Typography - Tightened up! */
.elementor-5035 .elementor-element.elementor-element-08532d9 .card-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--dark-blue);
  margin: 0 0 8px 0; /* Reduced margin to bring text closer */
  line-height: 1.25; /* Tightened line height */
  text-wrap: balance; 
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .card-text {
  font-size: 0.9rem;
  font-weight: 400; 
  color: #718096; 
  margin: 0;
  line-height: 1.4; /* Tightened line height */
  text-wrap: pretty; /* Explicitly prevents single orphan words at the end of paragraphs */
}

/* --- The Premium Hover Effects --- */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-card:hover {
  transform: translateY(-8px);
  border-color: transparent;
  box-shadow: 0 15px 40px rgba(18, 39, 70, 0.08);
}

/* Invert colors and scale icon on hover */
.elementor-5035 .elementor-element.elementor-element-08532d9 .help-card:hover .icon-circle {
  background-color: var(--primary-blue);
  transform: scale(1.05);
  box-shadow: 0 8px 20px rgba(24, 91, 157, 0.3);
}

.elementor-5035 .elementor-element.elementor-element-08532d9 .help-card:hover .icon-circle svg {
  fill: #ffffff;
}

/* Mobile & Tablet Responsiveness */
@media (max-width: 1024px) {
  .elementor-5035 .elementor-element.elementor-element-08532d9 .help-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .elementor-5035 .elementor-element.elementor-element-08532d9 .help-section {
    padding: 60px 15px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-08532d9 .help-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-08532d9 .help-card {
    padding: 30px 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-41b7db6 *//* Container & Base */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-section {
  padding: 100px 20px;
  background-color: #ffffff;
  font-family: inherit;
  text-align: center;
}

/* --- Header Styling --- */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-header {
  max-width: 700px;
  margin: 0 auto 60px auto;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-eyebrow {
  font-size: 0.85rem;
  font-weight: 700;
  color: #185B9D;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-title {
  font-size: clamp(2rem, 4vw, 2.6rem);
  font-weight: 800;
  color: #122746;
  margin: 0 0 16px 0;
  line-height: 1.2;
  text-wrap: balance;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-subtitle {
  font-size: 1.05rem;
  color: #718096;
  line-height: 1.6;
  margin: 0 auto;
  text-wrap: balance;
}

/* --- Process Grid & Layout --- */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-wrapper {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  position: relative;
  z-index: 2; /* Keeps circles above the connecting line */
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  /* Premium Hover effect on the whole column */
  transition: transform 0.3s ease;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-step:hover {
  transform: translateY(-5px);
}

/* --- The Connecting Lines --- */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-line-horizontal {
  position: absolute;
  top: 45px; /* Centers the line vertically behind the 90px circles */
  left: 12.5%; /* Starts halfway through the first column */
  right: 12.5%; /* Ends halfway through the last column */
  height: 2px;
  /* Recreates the subtle gradient from the mockup */
  background: linear-gradient(90deg, #A4B8CC 0%, #D8C3C3 100%);
  z-index: 1;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-line-vertical {
  display: none; /* Hidden on desktop */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  background: linear-gradient(180deg, #A4B8CC 0%, #D8C3C3 100%);
  transform: translateX(-50%);
  z-index: 1;
}

/* --- Numbered Circles --- */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .step-number {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background-color: #EBF4F9; /* Very light blue */
  /* Extra thick white border creates the gap effect against the line */
  border: 8px solid #ffffff; 
  box-shadow: 0 10px 30px rgba(18, 39, 70, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-weight: 800;
  color: #0A365C; /* Deep navy blue */
  margin-bottom: 24px;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .process-step:hover .step-number {
  background-color: #185B9D;
  color: #ffffff;
  box-shadow: 0 15px 35px rgba(24, 91, 157, 0.2);
}

/* --- Text Content inside steps --- */
.elementor-5035 .elementor-element.elementor-element-41b7db6 .step-title {
  font-size: 1.15rem;
  font-weight: 700;
  color: #122746;
  margin: 0 0 12px 0;
  line-height: 1.3;
}

.elementor-5035 .elementor-element.elementor-element-41b7db6 .step-desc {
  font-size: 0.95rem;
  font-weight: 400;
  color: #718096;
  line-height: 1.6;
  margin: 0;
  max-width: 240px; /* Keeps text narrow like the mockup */
}

/* --- Mobile Responsiveness --- */

/* Tablet (2x2 Grid) */
@media (max-width: 992px) {
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .process-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 20px;
  }
  
  /* Hide the desktop horizontal line on tablet */
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .process-line-horizontal {
    display: none;
  }
  
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .step-desc {
    max-width: 300px;
  }
}

/* Mobile (Vertical Timeline) */
@media (max-width: 600px) {
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .process-section {
    padding: 60px 20px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .process-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  /* Show the vertical line connecting the circles on mobile */
  .elementor-5035 .elementor-element.elementor-element-41b7db6 .process-line-vertical {
    display: block; 
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5250d6c *//* Container Layout */
.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-section {
  padding: 100px 20px;
  background-color: #ffffff;
  font-family: inherit;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-container {
  display: flex;
  align-items: flex-start;
  gap: 80px;
  max-width: 1200px;
  margin: 0 auto;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-intro {
  flex: 0 0 35%; /* Left column takes 35% of space */
  position: sticky;
  top: 40px; /* Sticks to the top as user scrolls the FAQs */
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-list {
  flex: 1; /* Right column takes remaining space */
  display: flex;
  flex-direction: column;
  gap: 16px; /* Space between FAQ boxes */
}

/* --- Left Column: Intro Styling --- */
.elementor-5035 .elementor-element.elementor-element-5250d6c .section-eyebrow {
  display: flex;
  align-items: center;
  font-size: 0.8rem;
  font-weight: 700;
  color: #185B9D;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 16px;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .eyebrow-dash {
  width: 20px;
  height: 2px;
  background-color: #185B9D;
  margin-right: 12px;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-title {
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 800;
  color: #122746;
  line-height: 1.2;
  margin: 0 0 16px 0;
  text-wrap: balance;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-desc {
  font-size: 1rem;
  color: #5a6b82;
  line-height: 1.6;
  margin: 0 0 32px 0;
}

/* Button */
.elementor-5035 .elementor-element.elementor-element-5250d6c .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 36px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .btn-coral {
  background-color: #E28873;
  color: #ffffff;
  box-shadow: 0 4px 15px rgba(226, 136, 115, 0.3);
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .btn-coral:hover {
  background-color: #D3745E;
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(226, 136, 115, 0.4);
}


/* --- Right Column: Accordion Styling --- */
.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-item {
  border: 1px solid #EAEFEF;
  border-radius: 30px;
  background: #ffffff;
  overflow: hidden;
  transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-item:hover {
  border-color: #D3DCE6;
  box-shadow: 0 4px 15px rgba(0,0,0,0.02);
}

/* Question Button - Updated to block Elementor's ALL CAPS and heavy fonts */
.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-q {
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  padding: 24px 30px;
  font-size: 1rem !important; 
  font-weight: 600 !important; 
  color: #122746;
  text-transform: none !important; 
  letter-spacing: normal !important; 
  line-height: 1.4;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: inherit;
  transition: color 0.3s ease;
}

/* Gray Icon Circle */
.elementor-5035 .elementor-element.elementor-element-5250d6c .icon-wrap {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 50%;
  background-color: #F0F4F8; /* Light gray/blue */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 16px;
  transition: all 0.3s ease;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .icon-wrap svg {
  width: 18px;
  height: 18px;
  fill: #185B9D;
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Active State (When Opened) */
.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-q[aria-expanded="true"] {
  color: #185B9D;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-q[aria-expanded="true"] .icon-wrap {
  background-color: #185B9D;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-q[aria-expanded="true"] .icon-wrap svg {
  fill: #ffffff;
  transform: rotate(180deg);
}

/* Answer Container */
.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-a-inner {
  padding: 0 30px 24px 30px;
  color: #5a6b82;
  line-height: 1.7;
  font-size: 0.95rem;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-a-inner a {
  color: #185B9D;
  text-decoration: underline;
  text-decoration-color: rgba(24, 91, 157, 0.3);
  text-underline-offset: 4px;
  font-weight: 600;
  transition: text-decoration-color 0.3s ease;
}

.elementor-5035 .elementor-element.elementor-element-5250d6c .faq-a-inner a:hover {
  text-decoration-color: #185B9D;
}


/* --- Mobile Responsiveness --- */
@media (max-width: 992px) {
  .elementor-5035 .elementor-element.elementor-element-5250d6c .faq-container {
    flex-direction: column;
    gap: 40px;
  }

  .elementor-5035 .elementor-element.elementor-element-5250d6c .faq-intro {
    position: static; /* Removes sticky behavior on mobile */
    max-width: 100%;
    text-align: center;
  }
  
  .elementor-5035 .elementor-element.elementor-element-5250d6c .section-eyebrow {
    justify-content: center;
  }
}

@media (max-width: 600px) {
  .elementor-5035 .elementor-element.elementor-element-5250d6c .faq-section {
    padding: 60px 20px;
  }

  .elementor-5035 .elementor-element.elementor-element-5250d6c .faq-q {
    padding: 20px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-5250d6c .faq-a-inner {
    padding: 0 20px 20px 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6484fca *//* Section Background & Layout */
.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-section {
  /* Exact deep slate-blue gradient from the mockup */
  background: linear-gradient(135deg, #2A3B4C 0%, #1E2E3E 100%);
  padding: 100px 20px;
  font-family: inherit;
  text-align: center;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-container {
  max-width: 900px;
  margin: 0 auto;
}

/* Typography */
.elementor-5035 .elementor-element.elementor-element-6484fca .section-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 700;
  color: #5AA5D7; /* Bright light blue for contrast */
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 16px;
}

/* The Blue-to-Orange Gradient Dash */
.elementor-5035 .elementor-element.elementor-element-6484fca .eyebrow-dash {
  width: 32px; /* Slightly wider to show gradient */
  height: 2px;
  background: linear-gradient(90deg, #5AA5D7 0%, #E28873 100%);
  margin-right: 12px;
  border-radius: 2px;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-title {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  color: #ffffff;
  line-height: 1.2;
  margin: 0 0 20px 0;
  text-wrap: balance;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-desc {
  font-size: 1.1rem;
  color: #B0C4DE; /* Light steel blue text */
  line-height: 1.6;
  margin: 0 auto 40px auto;
  max-width: 600px;
  text-wrap: balance;
}

/* --- Buttons --- */
.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-bottom: 50px;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 36px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  margin-right: 10px;
}

/* Coral Button */
.elementor-5035 .elementor-element.elementor-element-6484fca .btn-coral {
  background-color: #E28873;
  color: #ffffff;
  border: none;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .btn-coral:hover {
  background-color: #D3745E;
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(226, 136, 115, 0.3);
}

/* Ghost Outline Button */
.elementor-5035 .elementor-element.elementor-element-6484fca .btn-ghost {
  background-color: rgba(255, 255, 255, 0.05); /* Very faint white fill */
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.elementor-5035 .elementor-element.elementor-element-6484fca .btn-ghost:hover {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.4);
  transform: translateY(-3px);
}

/* --- Bottom Info Pills --- */
.elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px;
  /* Restricting max-width forces the 3rd pill to naturally wrap and center perfectly underneath the first 2 */
  max-width: 850px; 
  margin: 0 auto;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .info-pill {
  display: inline-flex;
  align-items: center;
  /* Translucent pill background */
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.05);
  padding: 12px 24px;
  border-radius: 50px;
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: 600;
  transition: background-color 0.3s ease;
  white-space: nowrap; /* Prevents text from breaking awkwardly inside the pill */
}

.elementor-5035 .elementor-element.elementor-element-6484fca .info-pill:hover {
  background-color: rgba(255, 255, 255, 0.15);
}

.elementor-5035 .elementor-element.elementor-element-6484fca .info-pill svg {
  width: 16px;
  height: 16px;
  fill: #5AA5D7; /* Blue icon inside the pill */
  margin-right: 10px;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .info-pill a {
  color: inherit;
  text-decoration: none;
}

.elementor-5035 .elementor-element.elementor-element-6484fca .info-pill a:hover {
  text-decoration: underline;
}

/* --- Mobile Responsiveness --- */
@media (max-width: 768px) {
  .elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-section {
    padding: 80px 20px;
  }
  
  .elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-btns {
    flex-direction: column;
    align-items: stretch;
  }
  
  .elementor-5035 .elementor-element.elementor-element-6484fca .btn {
    width: 100%;
  }

  .elementor-5035 .elementor-element.elementor-element-6484fca .final-cta-info {
    flex-direction: column;
    align-items: stretch;
  }

  .elementor-5035 .elementor-element.elementor-element-6484fca .info-pill {
    justify-content: center;
    text-align: center;
    white-space: normal; /* Let it wrap naturally on tiny mobile screens if needed */
  }
}/* End custom CSS */