@media (max-width: 1199.98px) {
  .sec_gallery img { height: 380px; }
  .why_inner { padding-left: 65px; }
}

@media (max-width: 991.98px) {
  .site_header { height: 72px; }
  .sec_banner { min-height: 620px; background-position: 62% center; }
  .sec_banner::before { background: linear-gradient(90deg, rgba(0,0,0,.93), rgba(0,0,0,.55) 68%, rgba(0,0,0,.2)); }
  .strip_item { border-bottom: 1px solid #262626; }
  .sec_service_strip [class*='col-']:nth-child(2) .strip_item { border-right: 0; }
  .sec_gallery img { height: 390px; }
  .why_image { min-height: 560px; }
  .why_content { border-radius: 0;     margin-left: 0;}
  .why_inner { max-width: 760px; padding: 75px 40px; margin: 0 auto; }
  .sec_footer { padding-bottom: 90px; }
  .footer_contact { justify-content: flex-start !important; margin-top: 45px; }
  .footer_ribbons { opacity: .7; bottom: -25px; }
}

@media (max-width: 767.98px) {
  .sec_footer     .container {
        z-index: 999999;
    }
  .section_heading { margin-bottom: 42px; }
  .sec_process, .sec_testimonials, .sec_faq, .sec_services, .sec_steps { padding-top: 80px; padding-bottom: 85px; }
  .process_row::before { display: none; }
  .sec_stats strong { font-size: 40px; }
  .sec_gallery img { height: 330px; }
  .sec_home_cta { min-height: 540px; }
  .sec_banner_service { min-height: 600px; }
  .sec_banner_service::after { display: none; }
  .why_image { min-height: 470px; }
  .sec_cta { min-height: 360px; padding: 70px 0; }
  .sec_contact_banner { min-height: 420px; }
  .sec_contact_content { padding: 75px 0 90px; }
  .contact_details { padding-top: 0; }
  .contact_details h2:nth-of-type(2) { margin-top: 50px; }
  .quote_form { padding: 35px 28px; }
  .quote_form .btn_brand { min-width: 0; width: 100%; }
}

@media (max-width: 575.98px) {
  .container { padding-left: 22px; padding-right: 22px; }
  .sec_banner { min-height: 580px; background-position: 67% center; }
  .sec_banner h1 { font-size: 49px; letter-spacing: -1.5px; }
  .banner_eyebrow { font-size: 18px; }
  .banner_copy { font-size: 16px; max-width: 255px; }
  .strip_item { min-height: 165px; padding: 25px 20px; }
  .strip_item h2 { font-size: 18px; }
  .sec_gallery img { height: 250px; }
  .section_heading h2, .sec_testimonials > .container > h2, .sec_faq h2, .sec_steps h2 { font-size: 34px; }
  .sec_process { padding-bottom: 75px; }
  .process_item > span { margin-bottom: 20px; }
  .sec_stats { padding: 55px 0; }
  .sec_stats strong { font-size: 35px; }
  .sec_stats span { font-size: 12px; }
  .testimonial_card > p { min-height: auto; }
  .faq_list summary { padding: 18px; }
  .faq_list details p { padding: 0 18px 19px; }
  .sec_home_cta { min-height: 520px; background-position: 63% center; }
  .sec_home_cta h2 { font-size: 42px; }
  .sec_banner_service { min-height: 560px; background-position: 60% center; }
  .sec_banner_service h1 { font-size: 46px; }
  .banner_label { margin-bottom: 20px; }
  .service_card { padding: 34px 28px; }
  .why_image { min-height: 390px; }
  .why_inner { padding: 60px 25px; }
  .why_inner > h2 { font-size: 40px; }
  .step_number { width: 76px; height: 76px; font-size: 30px; }
  .sec_cta h2 { font-size: 35px; }
  .sec_contact_banner h1 { font-size: 48px; }
  .sec_contact_banner p { letter-spacing: 4px; font-size: 12px; }
  .sec_contact_banner span { font-size: 16px; }
  .quote_form { padding: 30px 20px; border-radius: 14px; }
  .sec_footer { min-height: 430px; padding-top: 65px; }
  .footer_nav { justify-content: flex-start !important; gap: 18px !important; }
  .footer_contact { display: grid !important; gap: 15px !important; }
  .footer_ribbons { left: -180px; opacity: .6; }
}
