.elementor-3601 .elementor-element.elementor-element-f56a560{--display:flex;}.elementor-3601 .elementor-element.elementor-element-f56a560:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-f56a560 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-07ece43 );}.elementor-3601 .elementor-element.elementor-element-f56a560.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3601 .elementor-element.elementor-element-5fd5947{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-5fd5947:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-5fd5947 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0C1624;}.elementor-3601 .elementor-element.elementor-element-768986fa{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-768986fa:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-768986fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0C1624;}.elementor-3601 .elementor-element.elementor-element-a373fc8{--display:flex;}.elementor-3601 .elementor-element.elementor-element-a373fc8:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-a373fc8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A2937;}.elementor-3601 .elementor-element.elementor-element-0b051d2{--display:flex;}.elementor-3601 .elementor-element.elementor-element-d731ab6{--display:flex;}.elementor-3601 .elementor-element.elementor-element-d731ab6:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-d731ab6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cfd6274 );}.elementor-3601 .elementor-element.elementor-element-9775106{--display:flex;}.elementor-3601 .elementor-element.elementor-element-d933ab7{--display:flex;}.elementor-3601 .elementor-element.elementor-element-3c36e68{--display:flex;}.elementor-3601 .elementor-element.elementor-element-81fe441{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-81fe441:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-81fe441 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-07ece43 );}.elementor-3601 .elementor-element.elementor-element-eb97591{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-eb97591:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-eb97591 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cfd6274 );}.elementor-3601 .elementor-element.elementor-element-1bf62a3{width:100%;max-width:100%;}.elementor-3601 .elementor-element.elementor-element-2ef2c5a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-2ef2c5a:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-2ef2c5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cfd6274 );}.elementor-3601 .elementor-element.elementor-element-fe6200c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-fe6200c:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-fe6200c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cfd6274 );}.elementor-3601 .elementor-element.elementor-element-70e66c8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-70e66c8:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-70e66c8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A2937;}.elementor-3601 .elementor-element.elementor-element-f5309ff{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-f5309ff:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-f5309ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A2937;}.elementor-3601 .elementor-element.elementor-element-f19a158{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-f19a158:not(.elementor-motion-effects-element-type-background), .elementor-3601 .elementor-element.elementor-element-f19a158 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cfd6274 );}@media(max-width:767px){.elementor-3601 .elementor-element.elementor-element-f56a560{--width:100%;--justify-content:center;}.elementor-3601 .elementor-element.elementor-element-c4d5e5a.elementor-element{--align-self:center;--order:-99999 /* order start hack */;}.elementor-3601 .elementor-element.elementor-element-eb97591{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;}}/* Start custom CSS for html, class: .elementor-element-c4d5e5a */body {
  font-family: 'Inter', sans-serif; 
  width: 100%;
  margin: 0;
  padding: 0; 
  background-color: #ffff;
  color: #333; 
  line-height: 1.26; 
}

.flowright-section {
  text-align: left;
  padding: 1rem 0 1rem 15rem;
  max-width: fit-content;
  background-color: #fff;
  margin-bottom: 40px;
  margin-left:10%;
}

/* Target only "meet" (leave FlowRight unchanged) */
.flowright-section h2 .text-lowercase {
    text-transform: lowercase;
    display: inline;
}

.flowright-section h2 {
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 700;
  color: #f0904c;
  margin-top: 0;
  margin-bottom: 0.5rem;
  /* Removed text-transform from here */
}

.flowright-section .subheading {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 1rem;
}

.flowright-section .subheading .text-green {
  color: #389f5e;
}

.flowright-section .subheading .text-black {
  color: #000000;
}

.flowright-section .description {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  color: #389f5e;
  margin-top: 0;
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .flowright-section {
     padding: 2rem;
  }

  .flowright-section h2 {
     font-size: 5rem;
     line-height: 1;
  }

  .flowright-section .subheading {
     font-size: 3.25rem;
     line-height: 2.25rem;
  }

  .flowright-section .description {
     font-size: 1.75rem;
     line-height: 2.3rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f10e85b *//* Style the main container for the grid */
.features-grid-container {
  display: grid;
  /* Create 3 equal columns on larger screens */
  grid-template-columns: repeat(3, 1fr);
  gap: 25px; /* Adjust the space between boxes */
  padding: 20px 0; /* Optional padding above/below the grid */
  box-sizing: border-box; /* Include padding/border in element's total width/height */
}

/* Style each individual feature box */
.feature-box-item {
  background-color: #2ecc71; /* Green background (similar to image) */
  color: #ffffff; /* White text color */
  padding: 35px 25px; /* Space inside the boxes (top/bottom, left/right) */
  border-radius: 15px; /* Rounded corners */
  text-align: center; /* Center align text and icon */
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Optional subtle shadow */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover effect */
  display: flex; /* Use flexbox for content alignment */
  flex-direction: column; /* Stack content vertically */
  justify-content: flex-start; /* Align content to the top */
  align-items: center; /* Center content horizontally */
  box-sizing: border-box;
}

/* Optional hover effect */
.feature-box-item:hover {
  transform: translateY(-5px); /* Slightly raise the box on hover */
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* Style the icon container */
.feature-icon {
  margin-bottom: 20px; /* Space below the icon */
  line-height: 1; /* Prevent extra space around inline icons/svg */
}

/* Style the icon itself (target SVG or <i> if using Font Awesome) */
.feature-icon svg,
.feature-icon i {
  width: 45px; /* Adjust icon size */
  height: 45px;
  fill: #ffffff; /* Ensure SVG icon is white */
  color: #ffffff; /* Ensure Font Awesome icon is white */
  display: block; /* Center block elements */
  margin: 0 auto; /* Center block elements */
}

/* Style the heading */
.feature-box-item h3 {
  font-size: 1.5rem; /* Adjust heading size */
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 15px; /* Space below the heading */
  color: #ffffff; /* Ensure heading is white */
}

/* Style the paragraph text */
.feature-box-item p {
  font-size: 1rem; /* Adjust paragraph size */
  line-height: 1.6;
  margin-top: 0;
  margin-bottom: 0; /* No space needed after the last element */
  color: #ffffff; /* Ensure paragraph text is white */
  flex-grow: 1; /* Allow paragraph to take up remaining space if needed */
}

/* --- Responsive Adjustments --- */

/* Tablet view: 2 columns */
@media (max-width: 991px) {
  .features-grid-container {
    grid-template-columns: repeat(2, 1fr); /* Switch to 2 columns */
    gap: 20px; /* Slightly reduce gap */
  }
  .feature-box-item {
    padding: 30px 20px; /* Adjust padding */
  }
  .feature-box-item h3 {
    font-size: 1.4rem;
  }
  .feature-box-item p {
    font-size: 0.95rem;
  }
}

/* Mobile view: 1 column */
@media (max-width: 575px) {
  .features-grid-container {
    grid-template-columns: 1fr; /* Switch to 1 column */
    gap: 15px; /* Further reduce gap */
  }
   .feature-box-item {
    padding: 25px 20px; /* Adjust padding */
  }
   .feature-box-item h3 {
    font-size: 1.3rem;
  }
   .feature-box-item p {
    font-size: 0.9rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0364762 *//* Main container for the two-column section */
.cta-image-text-section {
  display: flex;
  align-items: center; /* Vertically align items in the center */
  gap: 40px; /* Space between the text and image columns */
  padding: 60px 20px; /* Add some padding around the section (adjust as needed) */
  background-color: #ffffff; /* Assuming a white background */
  box-sizing: border-box;
}

/* Style for both columns */
.cta-text-content,
.cta-image-content {
  flex: 1; /* Make both columns take up equal space */
  min-width: 0; /* Prevent flex items from overflowing */
  box-sizing: border-box;
}

/* Text column specific styles */
.cta-text-content {
  /* Add styles if needed, e.g., text alignment */
}

.cta-text-content h2 {
  font-size: 2.5rem; /* Adjust heading size */
  color: #333333; /* Dark text color */
  margin-top: 0;
  margin-bottom: 20px; /* Space below heading */
  line-height: 1.3;
  font-weight: 600;
}

.cta-text-content p {
  font-size: 1rem; /* Adjust paragraph size */
  color: #555555; /* Slightly lighter text color */
  line-height: 1.6;
  margin-top: 0;
  margin-bottom: 30px; /* Space below paragraph */
}

/* Button styles */
.cta-action-button {
  display: inline-flex; /* Use flex to align text and icon */
  align-items: center;
  gap: 8px; /* Space between text and icon */
  background-color: #2ecc71; /* Green background */
  color: #ffffff; /* White text */
  padding: 14px 28px; /* Button padding */
  border-radius: 25px; /* Rounded corners for pill shape */
  text-decoration: none; /* Remove underline from link */
  font-weight: 500;
  font-size: 1rem;
  transition: background-color 0.3s ease, transform 0.2s ease;
  border: none; /* Remove default border */
  cursor: pointer;
}

.cta-action-button:hover {
  background-color: #27ae60; /* Darker green on hover */
  transform: translateY(-2px); /* Slight lift on hover */
}

/* Icon container within the button */
.cta-button-icon {
  display: inline-flex; /* Helps with vertical alignment */
  align-items: center;
  line-height: 1; /* Prevent extra line height issues */
}

.cta-button-icon svg {
  display: block; /* Remove extra space below inline SVG */
}


/* Image column specific styles */
.cta-image-content img {
  display: block; /* Remove extra space below image */
  width: 100%; /* Make image responsive */
  max-width: 100%;
  height: auto; /* Maintain aspect ratio */
  border-radius: 15px; /* Rounded corners for the image */
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); /* Optional subtle shadow */
}

/* --- Responsive Adjustments --- */

/* Stack columns on smaller screens (e.g., tablets and mobiles) */
@media (max-width: 768px) {
  .cta-image-text-section {
    flex-direction: column; /* Stack columns vertically */
    text-align: center; /* Center text content when stacked */
    gap: 30px; /* Adjust gap for vertical stacking */
    padding: 40px 15px; /* Adjust padding for smaller screens */
  }

  /* Ensure text column comes first when stacked (default order) */
  /* If you need the image first, uncomment the order properties below */
  /*
  .cta-text-content {
      order: 2;
  }
  .cta-image-content {
      order: 1;
      margin-bottom: 30px; Add space below image when it's first
  }
  */

   .cta-text-content h2 {
    font-size: 2rem; /* Slightly smaller heading */
  }

   .cta-text-content p {
    font-size: 0.95rem; /* Slightly smaller text */
    margin-bottom: 25px;
  }

  /* Center the button when columns are stacked */
   .cta-action-button {
      margin: 0 auto; /* Center button */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6213c54 *//* Import several font weights of Montserrat to find the closest match */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800;900&display=swap');

.testimonial-section {
    background-color: #1c2630; /* Dark blue background color */
    padding: 100px 20px;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
}

.testimonial-heading {
    color: white !important; /* Added !important to override theme styles */
    font-size: 48px;
    font-weight: 800; /* Increased to extra-bold weight */
    text-transform: uppercase !important; /* Added !important to ensure uppercase */
    margin: 0;
    letter-spacing: 1px;
    line-height: 1.2;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .testimonial-heading {
        font-size: 36px;
    }
}

@media (max-width: 480px) {
    .testimonial-heading {
        font-size: 28px;
    }
    .testimonial-section {
        padding: 60px 15px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-393b9dc *//* Import fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap');

/* Container for all testimonials */
.testimonials-container {
    background-color: #1c2630;
    display: flex;
    justify-content: center;
    align-items: stretch;
    padding: 30px;
    gap: 20px;
    flex-wrap: wrap;
    width: 100%;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

/* Individual testimonial card */
.testimonial-card {
    background-color: white;
    border-radius: 20px;
    padding: 25px;
    width: calc(33.333% - 20px);
    min-width: 300px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

/* Header section with image and personal info */
.testimonial-header {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.profile-image {
    width: 80px;
    height: 80px;
    margin-right: 15px;
    overflow: hidden;
    border-radius: 10px;
}

.profile-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-info {
    flex-grow: 1;
}

.client-name {
    color: #00a651;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 5px 0;
    font-family: 'Montserrat', sans-serif;
}

.client-position {
    color: #333;
    font-size: 14px;
    margin: 0 0 5px 0;
    font-style: italic;
}

.rating {
    font-size: 14px;
    color: #333;
}

.stars {
    color: #ffc107;
}

/* Content section with the testimonial text */
.testimonial-content {
    flex-grow: 1;
    margin-bottom: 20px;
}

.testimonial-content p {
    font-size: 18px;
    line-height: 1.5;
    color: #333;
    margin: 0;
    font-weight: 500;
}

/* Footer section with additional info */
.testimonial-footer p {
    color: #777;
    font-size: 14px;
    margin: 0;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
    .testimonial-card {
        width: calc(50% - 20px);
    }
}

@media (max-width: 768px) {
    .testimonial-card {
        width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f882324 *//* Basic Reset / Setup */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    /* Improves scrolling behavior */
    scroll-behavior: smooth;
}

body {
    /* Body background can be fallback or different if needed */
    background-color: #1a2a3a;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    color: #f0f0f0; /* Default light text */
    min-height: 100vh;
    line-height: 1.5; /* Set a base line-height */
}

/* Shared Content Wrapper for Centering */
.content-wrapper {
    width: 100%;
    max-width: 700px; /* Max width of content */
    margin-left: auto;  /* Center the wrapper */
    margin-right: auto;
    padding-left: 20px; /* Side padding for content */
    padding-right: 20px;
}


/* --------------- FAQ Section Styles --------------- */
.faq-section {
    /* This section now provides the full-width background */
    background-color: #1a2a3a; /* Dark blue background */
    padding: 60px 0; /* Vertical padding for the section */
    width: 100%;
}

/* The faq-content-wrapper uses the .content-wrapper styles */
/* .faq-content-wrapper { } */

.faq-section h2 {
    text-align: center;
    color: #ffffff;
    margin-bottom: 35px;
    font-size: 2.5rem;
    font-weight: 600;
}

.faq-container {
    /* Holds the white FAQ items */
}

.faq-item {
    background-color: #ffffff;
    border-radius: 10px;
    margin-bottom: 15px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
    transition: margin-bottom 0.3s ease-out;
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 18px 25px;
    background: none;
    border: none;
    text-align: left;
    font-size: 1rem;
    font-weight: 500;
    color: #333;
    cursor: pointer;
    outline: none;
}

.faq-question span:first-child {
   padding-right: 15px;
}

.faq-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
    transition: background-color 0.3s ease, transform 0.3s ease, color 0.3s ease;
    position: relative;
    background-color: #f0f0f0;
    color: #777;
}

.faq-icon::before {
    content: '>';
    font-weight: bold;
    font-size: 1.1rem;
}

.faq-answer {
    padding: 0 25px;
    color: #555;
    font-size: 0.95rem;
    line-height: 1.6;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out, padding 0.4s ease-out;
}

.faq-answer p {
    padding-bottom: 20px; /* Space at the end of the answer text */
    margin-top: 10px; /* Add space between question and answer */
}

/* Active State Styling */
.faq-item.active .faq-icon {
    background-color: #28a745;
    color: #ffffff;
    transform: rotate(90deg);
}

.faq-item.active .faq-answer {
    max-height: 500px; /* Adjust if answers are very long */
    padding-top: 5px; /* Small space when opened */
    padding-bottom: 0; /* Rely on paragraph's bottom padding */
}
/* --------------- End FAQ Section Styles --------------- */


/* --------------- CTA Section Styles --------------- */
.cta-section {
    /* This section also has full-width background */
    background-color: #1a2a3a; /* Dark blue background */
    padding: 80px 20px 100px 20px; /* Vertical and horizontal padding */
    text-align: center; /* Center inner content */
    width: 100%;
}

/* Optional: If you want CTA text constrained like FAQ */
/* .cta-section .content-wrapper { } */

.cta-section h2 {
    color: #ffffff;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 45px;
    /* Apply max-width and margin auto here if NOT using content-wrapper */
    /* max-width: 700px; */
    /* margin-left: auto; */
    /* margin-right: auto; */
}

.cta-section .highlight {
    color: #f39c12; /* Orange color */
}

.cta-button {
    display: inline-block;
    background-color: #28a745; /* Green button */
    color: #ffffff;
    padding: 16px 40px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 1.05rem;
    font-weight: 600;
    transition: background-color 0.3s ease, transform 0.2s ease;
    border: none;
    cursor: pointer;
}

.cta-button:hover {
    background-color: #218838;
    transform: translateY(-2px);
}

.cta-button .icon-phone {
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
}
/* --------------- End CTA Section Styles --------------- *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-81fe441 */.elementor-3601 .elementor-element.elementor-element-d731ab6:not(.elementor-motion-effects-element-type-background), 
.elementor-3601 .elementor-element.elementor-element-d731ab6 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    display: none !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fc9d7d6 *//* Add these rules to fix the whitespace/overflow issue on mobile */

/* Fix for main container width */
body, html {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden; /* Prevent horizontal scrolling */
}

/* Fix for any potentially overflowing elements */
.elementor-section-wrap,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap,
.elementor-widget-container,
.elementor-element {
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

/* Fix for specific elements that might be causing issues */
.elementor-element.elementor-element-f56a46d,
.elementor-element.elementor-element-4c9f57,
.elementor-element.elementor-element-7669efe,
.elementor-element.elementor-element-a373fcd,
.elementor-element.elementor-element-808616d,
.elementor-element.elementor-element-d731a06,
.elementor-element.elementor-element-814e44f,
.elementor-element.elementor-element-6a9795f,
.elementor-element.elementor-element-3ef2cda,
.elementor-element.elementor-element-f4026bc {
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Check for any fixed-width images or elements */
img, video, iframe, object, embed {
  max-width: 100% !important;
  height: auto !important;
}

/* Media query for mobile devices */
@media (max-width: 767px) {
  /* Additional mobile-specific fixes */
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  
  /* Reset any margins that might be causing overflow */
  [class*="elementor-"] {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8b5a67b */@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@500;600;700&family=Inter:wght@400;500&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css');
.site-footer {
    background-color: ##18603C;
    color: white;
    font-family: 'Inter', sans-serif;
    padding: 60px 20px 20px;
}
.footer-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    justify-content: space-between;
}
.footer-column {
    flex: 1;
    min-width: 180px;
    margin-bottom: 30px;
    padding-right: 20px;
}
.subscribe-column {
    flex: 1.5;
    max-width: 400px;
}
.footer-heading {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    color: white;
}
.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-links li {
    margin-bottom: 12px;
}
.footer-links a {
    color: white;
    text-decoration: none;
    font-weight: 400;
    font-size: 14px;
    transition: opacity 0.2s;
}
.footer-text {
    font-size: 14px;
    color: white;
}
.footer-links a:hover {
    opacity: 0.8;
}
.subscribe-form {
    display: flex;
    margin: 15px 0;
}
.email-input {
    flex-grow: 1;
    padding: 12px 15px;
    border: none;
    border-radius: 30px 0 0 30px;
    font-size: 14px;
    outline: none;
}
.subscribe-button {
    background-color: #237a53;
    color: white;
    border: none;
    border-radius: 0 30px 30px 0;
    padding: 12px 25px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s;
    font-family: 'Inter', sans-serif;
}
.subscribe-button:hover {
    background-color: #1d6746;
}
.disclaimer {
    font-size: 14px;
    opacity: 0.8;
    margin-top: 15px;
}
.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 40px auto 0;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    flex-wrap: wrap;
}
.copyright {
    font-size: 14px;
    margin-bottom: 10px;
}
.bottom-links {
    display: flex;
    gap: 20px;
    margin-bottom: 10px;
}
.bottom-links a {
    color: white;
    text-decoration: none;
    font-size: 14px;
    transition: opacity 0.2s;
}
.bottom-links a:hover {
    opacity: 0.8;
}
.social-icons {
    display: flex;
    gap: 15px;
}
.social-icons a {
    color: white;
    font-size: 18px;
    transition: opacity 0.2s;
}
.social-icons a:hover {
    opacity: 0.8;
}
/* Responsive Design */
@media (max-width: 768px) {
    .footer-column {
        flex-basis: 50%;
    }
    
    .subscribe-column {
        flex-basis: 100%;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    
    .social-icons {
        margin-top: 15px;
        justify-content: center;
    }
}
@media (max-width: 576px) {
    .footer-column {
        flex-basis: 100%;
    }
    
    .subscribe-form {
        flex-direction: column;
    }
    
    .email-input {
        border-radius: 30px;
        margin-bottom: 10px;
    }
    
    .subscribe-button {
        border-radius: 30px;
    }
    
    .bottom-links {
        flex-direction: column;
        gap: 10px;
    }
}

/* Added specific override for Elementor headings */
.elementor-kit-1613 h3 {
    color: white !important;
}/* End custom CSS */