:root {
    --c-primary: #095788;
    --c-primary-dark: #005488;
    --c-secondary: #BF2633;
    --c-accent: #00A3E0;
    --c-accent-light: #00d2ff;
    --c-text: #002670;
    --c-light: #59A8D9;
    --c-bg: #ffffff;
    --c-bg-light: #f0f7ff;
    --c-bg-soft: #f8fafd;
    --c-border: #e6e9f0;
}

p {
    margin: 20px 0 25px !important
}

body {
    font-family: "Roboto", Sans-serif !important;
    font-display: auto;
}

/* Force immediate background parsing before external sheets load */
@media (max-width: 767px) {
    .ads-h-main-wrapper {
        background-image: url('/wp-content/uploads/2026/04/debouchage-inspection-camera-canalisation-1-768x512.webp') !important;
    }
}

@media (min-width: 768px) {
    .ads-h-main-wrapper {
        background-image: url('/wp-content/uploads/2026/04/debouchage-inspection-camera-canalisation-1.webp') !important;
    }
}

#site-header,
.elementor-location-header {
    min-height: 80px
}

@media (max-width:767px) {

    #site-header,
    .elementor-location-header {
        min-height: 70px
    }

    .ads-h-main-wrapper {
        min-height: 400px !important;
        background-position: center
    }
}

@media (min-width:769px) {
    h1 {
        font-size: 45px !important;
        line-height: 50px !important
    }

    h2 {
        font-size: 36px !important;
        line-height: 45px !important
    }

    h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

@media (max-width:768px) {
    h1 {
        font-size: 35px !important;
        line-height: 40px !important
    }

    h2 {
        font-size: 24px !important;
        line-height: 35px !important
    }

    h3 {
        font-size: 15px !important;
        line-height: 20px !important
    }
}

@media (min-width:768px) {
    .left-column {
        position: sticky !important;
        top: 120px !important;
        align-self: flex-start !important;
        height: max-content !important
    }
}

@media (max-width:720px) {
    .hendy-page-title .page-title {
        font-size: 28px !important;
        line-height: 40px !important
    }

    .hendy-page-title .breadcrumb span {
        margin-left: 10px !important;
        font-size: 14px !important
    }
}

.ads-img-side {
    width: 100%;
    max-width: 600px !important
}

.ads-img-stack {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column
}

.ads-img-stack img {}

.img-lavabo {
    width: 100% !important;
    align-self: flex-start;
    z-index: 1
}

.img-lave-vaisselle {
    width: 100% !important;
    align-self: flex-end;
    margin-top: -100px;
    z-index: 2
}

.c-colmap-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 400px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid #e0e0e0;
    z-index: 1;
    background-color: #f0f0f0
}

#c-colmap-id {
    width: 100%;
    height: 100%;
    min-height: 400px;
    background: #f0f0f0;
    z-index: 0
}

.c-colmap-pin {
    background-color: #0A364E;
    width: 20px;
    height: 20px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    border: 2px solid #ffffff;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease
}

.c-colmap-pin::after {
    content: '';
    width: 6px;
    height: 6px;
    background-color: #5C9EBC;
    border-radius: 50%;
    transform: rotate(45deg)
}

.c-colmap-pin:hover {
    transform: rotate(-45deg) scale(1.3);
    background-color: #D32F2F;
    z-index: 1000 !important
}

.leaflet-popup-content-wrapper {
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3)
}

.leaflet-popup-content {
    margin: 0;
    width: 240px !important
}

.leaflet-popup-tip {
    background: #fff
}

.c-colmap-card-header {
    background-color: #0A364E;
    padding: 15px;
    color: #fff
}

.c-colmap-title {
    font-size: 16px;
    font-weight: 700;
    margin: 0;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px
}

.c-colmap-card-body {
    padding: 15px;
    text-align: left
}

.c-colmap-status {
    font-size: 11px;
    color: #5C9EBC;
    font-weight: 700;
    margin-bottom: 8px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px
}

.c-colmap-desc {
    font-size: 13px;
    color: #555;
    margin: 0 0 15px 0;
    line-height: 1.4
}

.c-colmap-btn {
    display: block;
    text-align: center;
    background: #5C9EBC;
    color: #ffffff !important;
    font-weight: 700;
    text-decoration: none;
    padding: 10px 0;
    border-radius: 4px;
    font-size: 11px;
    text-transform: uppercase;
    transition: 0.2s
}

.c-colmap-btn:hover {
    background: #0A364E
}

.ads-h-main-wrapper {
    --h-navy: #05324D;
    --h-blue: #67B1E1;
    --h-red: #D32F2F;
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    min-height: 700px
}

.ads-h-main-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(5, 50, 77, 0.98) 0%, rgba(5, 50, 77, 0.85) 45%, rgba(5, 50, 77, 0.2) 100%);
    z-index: 1
}

.ads-h-container {
    position: relative;
    z-index: 2;
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px 60px 20px;
    gap: 50px;
    align-items: center;
    width: 100%
}

.ads-h-col-left {
    flex: 1.1;
    color: white
}

.ads-h-title {
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
    background: linear-gradient(135deg, #ffffff 30%, var(--h-blue) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: inline-block;
    margin-bottom: 20px
}

.ads-h-title span {
    display: block
}

.ads-h-hero-desc {
    font-size: 19px;
    line-height: 1.5;
    margin: 15px 0;
    color: #ffffff;
    font-weight: 400;
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3)
}

.ads-h-services-box {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 20px 25px;
    border-radius: 12px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 30px;
    max-width: 550px;
    border: 1px solid rgba(255, 255, 255, 0.2)
}

.ads-h-google-chip {
    display: inline-flex;
    align-items: center;
    background: #E8ECEF;
    border: 1px solid #CFD8DC;
    padding: 10px 20px;
    border-radius: 14px;
    gap: 12px;
    margin-top: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1)
}

.ads-h-g-left {
    display: flex;
    align-items: center;
    gap: 8px
}

.ads-h-g-brand {
    font-weight: 800;
    font-size: 19px;
    color: #1A1F2C;
    letter-spacing: -0.5px
}

.ads-h-g-sep {
    width: 1px;
    height: 28px;
    background: #B0BEC5
}

.ads-h-g-right {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.ads-h-g-stars-row {
    color: #FFB300;
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1;
    margin-bottom: 2px
}

.ads-h-g-rating {
    color: #374151;
    font-size: 13px;
    font-weight: 600
}

.ads-h-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--h-red);
    color: white;
    padding: 18px 35px;
    border-radius: 8px;
    font-weight: 800;
    text-decoration: none;
    transition: 0.3s;
    box-shadow: 0 8px 20px rgba(211, 47, 47, 0.3);
    margin-top: 15px
}

.ads-h-cta-btn:hover {
    background: var(--h-blue) !important;
    color: #fff !important;
    transform: translateY(-2px)
}

.ads-h-col-right {
    flex: 0.9;
    max-width: 420px;
    width: 100%
}

.ads-h-diagnostic-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 35px 31px !important;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.2)
}

.ads-h-card-title {
    color: white;
    text-align: center;
    font-size: 20px !important;
    margin: 0 0 20px 0;
    font-weight: 800;
    line-height: 28px
}

.ads-cf7-wrapper .wpcf7 p {
    margin: 0 !important;
    padding: 0 !important
}

.ads-cf7-wrapper label {
    display: block !important;
    color: #fff !important;
    font-weight: 700;
    margin: 12px 0 6px !important;
    font-size: 13px
}

.ads-cf7-wrapper input:not([type="submit"]),
.ads-cf7-wrapper select {
    width: 100% !important;
    padding: 10px 12px !important;
    border-radius: 6px !important;
    border: 1.5px solid rgba(255, 255, 255, 0.3) !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    font-size: 14px !important;
    margin: 0 !important
}

.ads-cf7-wrapper input[type="submit"] {
    width: 100% !important;
    background: var(--h-red) !important;
    color: #fff !important;
    border: none !important;
    padding: 15px !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    cursor: pointer;
    margin-top: 25px !important
}

.ads-cf7-wrapper input[type="submit"]:hover {
    background: var(--h-blue) !important
}

.ads-h-bottom-bar {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    gap: 20px;
    width: 100%;
    max-width: 1200px;
    padding: 0 20px 50px 20px;
    flex-wrap: wrap
}

.ads-h-bar-item {
    display: flex;
    align-items: center;
    gap: 15px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 10px 25px;
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    transition: 0.3s ease
}

.ads-h-bar-item:hover {
    background: rgba(255, 255, 255, 0.15);
    transform: translateY(-3px)
}

.ads-h-bar-icon {
    width: 35px;
    height: 35px;
    background: var(--h-red);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    box-shadow: 0 4px 10px rgba(211, 47, 47, 0.3)
}

.ads-h-bar-item span {
    color: #ffffff;
    font-weight: 700;
    font-size: 14px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2)
}

.ads-h-main-wrapper .wpcf7-response-output {
    color: #ffffff !important
}

.ads-google-icon-fix {
    width: 30px;
    height: 30px;
    background-image: url('/wp-content/uploads/2026/03/google-icon-G-2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block
}

@media (max-width:968px) {
    .ads-h-container {
        flex-direction: column;
        text-align: left !important;
        align-items: flex-start !important;
        padding: 40px 20px
    }

    .ads-h-col-left,
    .ads-h-col-right {
        width: 100%;
        max-width: 100%;
        text-align: left !important
    }

    .ads-h-main-wrapper {
        min-height: auto;
        padding: 0
    }

    .ads-h-main-wrapper::before {
        background: rgba(5, 50, 77, 0.95)
    }

    .ads-h-services-box {
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 25px
    }

    .ads-h-google-chip {
        justify-content: flex-start !important;
        margin-left: 0 !important
    }

    .ads-h-cta-btn {
        align-self: flex-start
    }

    .ads-h-card-title {
        text-align: left !important
    }

    .ads-h-bottom-bar {
        padding: 20px;
        flex-direction: column;
        align-items: flex-start
    }

    .ads-h-bar-item {
        width: 100%
    }
}

body.elementor-panel-loading #elementor-panel-state-loading {
    visibility: hidden !important
}

.hkangles-blog-banner-content-wrap .read-more-link a:hover {
    background: #fff !important;
    color: #162b62
}

.hkangles-blog-banner-content-wrap .read-more-link a:hover {
    background: #fff !important;
    color: #162b62
}

.infobox-style-6 .hkangles-infobox-6-list li i,
.header-layout-3 .hkangles-header-right-side ul.social-info li a:hover,
.hkangles-footer-newsletter-email-inpul button i:hover,
.hkangles-static-text a:hover,
.services-style-5 .hkangles-list-wrapper ul li i,
.hkangles-blog-banner-content-wrap .hkangles-list-wrapper ul li i,
.hendy-page-title.title-color-dark .breadcrumb>a,
.infobox-style-2 .hkangles-list-wrapper ul li i,
.infobox-style-11 .hkangles-list-wrapper ul li i,
.footer_contact-info .contact-item i,
.hkangles-project-details .hkangles-project-icon i,
.widget_recent_services ul li a:hover,
.widget_recent_services ul li[aria-current="page"] a,
.hendy-copyright span.contact-label,
.hendy-copyright .contact-item i,
.projects-style-2 .hkangles-project-content-cover .hkangles-project-title-wrap span,
.hkangles-topbar-wrapper .hendy-topbar i,
.site-header .contact-list .contact-label,
.header-layout-2 .contact-item i,
.infobox-style-9 .hkangles-infobox-icon,
.infobox-style-11 .hkangles-infobox-icon,
.infobox-style-8 .hkangles-infobox-icon,
.hkangles_pricing_wrapper .pricing-table-line i,
.infobox-style-1 .hkangles-infobox-title,
.team-style-3 .hkangles-teammember-title span,
.infobox-style-5 .hkangles-infobox-icon i,
.counter-style-2 .hkangles-counter-title,
.services-style-6 .hkangles-service-wrapper:hover .hkangles-service-icon i,
.widget.widget_categories ul li>a:before,
.widget.widget_archive ul li a:before,
ul.wp-block-archives li>a:before,
.elementor-element .elementor-accordion-title span,
.hkangles-blog-banner-content .elementor-icon i,
.timeline-style-1 .hkangles-timeline-wrapper i,
.team-style-2 .hkangles-teammember-title-wrap h5,
.projects-style-2 .hkangles-project-icon a,
.projects-style-2 .hkangles-project-icon,
.infobox-style-4 .hkangles-infobox-icon,
.testimonials-style-4 span.hkangles-testimonial-designation,
.services-style-1 .hkangles-service-title-wrap h3 a:hover,
.services-style-1 .read-more-link a:hover,
.counter-style-1 .hkangles-counter-number,
.counter-style-2 .hkangles-counter-icon,
.team-style-1 .hkangles-teammember-designation,
.hendy-footer-widgets-wrapper .social-info-wrapper li a,
.projects-style-1 .hkangles-project-content-inner .hkangles-project-title-wrap .hkangles-project-category,
.services-style-5 span.hkangles-project-category,
.services-style-5 .hkangles-service-icon,
.services-style-2 .hkangles-service-icon,
.blog-style-2 .hkangles-post-wrapper .hkangles-post-title-wrap h3 a:hover,
.services-style-1 span.hkangles-project-category,
.services-style-3 .hkangles-service-icon,
.hkangles_pricing_wrapper .hkangles-pricing-table-featured-col .hkangles-pricing-table-icon-wrapper i,
.blog-style-3 .hkangles-post-wrapper .hkangles-post-title-wrap h3 a:hover,
.blog-style-3 .hkangles-post-meta .hkangles-post-meta-inner .post-author i,
.blog-style-3 .hkangles-post-meta .hkangles-post-meta-inner .post-comment i,
.hkangles-teammember-link-profiles li a:hover,
.testimonials-style-2 .hkangles-testimonial-content:after,
.infobox-style-3 .hkangles-infobox-title a:hover,
.projects-style-1 .hkangles-project-content-inner .hkangles-project-title-wrap h3 a:hover,
.projects-style-1-second .projects-style-1 .hkangles-project-content-inner .hkangles-project-title-wrap .hkangles-project-category,
.custom-heading-style-3 .hkangles-heading-subtitle-wrapper .heading-subtitle,
.single-team h5.hkangles-teammember-designation,
.hkangles-blog-classic .entry-meta-container>span>i,
.comment-list .comment-date a,
.sidebar .widget_hendy_recent_entries li .hkangles-post-date,
blockquote cite,
span.hkangles-download-text,
.infobox-style-12 .hkangles-infobox-text,
.site-header ul.social-info li a,
.header-layout-2 .site-header .contact-info .contact-item i,
.header-layout-5 .site-header .contact-info .contact-item i,
.slider-heading-subtitle,
.services-style-2 .hkangles-service-button i,
.infobox-style-7 .hkangles-infobox-icon:before,
.infobox-style-7 .hkangles-infobox-title span,
.infobox-style-7 .hkangles-infobox-icon i,
.testimonials-style-1 span.hkangles-testimonial-designation,
.infobox-style-6 .hkangles-infobox-button i,
.hkangles-ourhistory-content .hkangles-history-button a,
.custom-heading-style-1 .hkangles-heading-subtitle-wrapper .heading-subtitle,
.testimonials-style-2 span.hkangles-testimonial-designation,
.counter-style-3 .hkangles-counter-icon i,
.projects-style-4 .hkangles-project-content-cover .hkangles-project-title-wrap span,
.services-style-6 span.hkangles-project-category,
.hendy-page-title.title-color-white .breadcrumb a:hover,
blockquote span,
.hendy-copyright a:hover,
.hendy-footer-widgets-wrapper .widget.widget_nav_menu a:hover,
.hendy-footer-widgets-wrapper .widget_hendy_recent_entries li .hkangles-post-date,
.custom-heading-style-1 .hkangles-heading-subtitle-wrapper .heading-subtitle,
.header-layout-4 .social-info i:hover,
.hkangles-testimonial-rating span.fas.fa-star.checked,
.hkangles-blog-classic .entry-title a:hover,
.hkangles-single-contact-inner i,
.hkangles_pricing_wrapper .hkangles-hkangles-ptable-heading span,
.infobox-style-6 .hkangles-infobox-title span,
.infobox-style-12 .hkangles-infobox-title span,
.site-header .hkangles-textcolor-primary .main-navigation div>ul>li>a,
.services-style-3 .hkangles-service-content span,
.services-style-6 .hkangles-service-content span,
.hkangles-primary-color,
.coronia-woocommerce-product-slide.woocommerce .hkangles-product-price bdi,
.header-layout-3 .hendy-sticky-header span.hendy-woocommercec-cart i,
.header-layout-4 .hendy-sticky-header span.hendy-woocommercec-cart i,
.widget_hendy_recent_entries li .hkangles-post-date,
.header-layout-3 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-3 .site-header .hendy-sticky-header .main-navigation div>ul>li>a:hover,
.header-layout-3 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-item>a,
.header-layout-3 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-3 .hendy-header-button .infobox-style-5 .hkangles-infobox-title,
.header-layout-3 .hendy-footer-widgets-wrapper a.btn.btn-outline-light.footer-button:hover,
.header-layout-4 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-4 .site-header .hendy-sticky-header .main-navigation div>ul>li>a:hover,
.header-layout-4 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-item>a,
.header-layout-4 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-4 .hendy-header-button .infobox-style-5 .hkangles-infobox-title,
.header-layout-4 .hendy-footer-widgets-wrapper a.btn.btn-outline-light.footer-button:hover,
.site-footer .hkangles-infobox-icon,
.header-layout-3 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-4 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.sidebar-infobox .sidebar-infobox-button a,
.header-layout-3 .hkangles-header-right-side .hendy-header-icon,
.header-layout-3 .hkangles-header-right-side .hendy-header-icon,
.infobox-style-8 .hkangles-infobox-text a,
.cd-subscribe-form .subscribe-button,
.woocommerce ul.products li.product a:hover,
.woocommerce ul.product_list_widget li a:hover h2,
.woocommerce .star-rating span,
blockquote:before,
.woocommerce-info::before,
.woocommerce-message::before,
.counter-style-1 .hkangles-counter-icon,
.services-style-1 .hkangles-service-date,
.services-style-2 .hkangles-service-date i,
.services-style-5 .hkangles-service-date i,
.services-style-2 .service-title:hover,
.services-style-5 .service-title:hover,
.team-style-2 .hkangles-teammember-wrapper .teammember-title:hover a,
.blog-style-2 .hkangles-post-meta .hkangles-post-meta-inner .post-date i,
.blog-style-1 .hkangles-post-meta .hkangles-post-meta-inner i,
.blog-style-4 .hkangles-post-meta .hkangles-post-meta-inner i,
.site-header .main-navigation div>ul ul li.current-menu-item>a,
.hendy-copyright .social-icons li a:hover,
.hendy-action-box a,
.hkangles-blog-classic .social-share-button i,
.site-header .main-navigation div>ul>li.current-menu-parent>a,
.site-header .main-navigation div>ul>li>a:hover,
.site-header .main-navigation div>ul>li.current-menu-item>a,
.site-header .main-navigation div>ul ul li.current_page_item>a,
.site-header .main-navigation div>ul ul li a:hover,
.skincolor,
.elementor-text-editor .skincolor,
a:hover,
.hendy-footer-widgets-wrapper .menu li a:before {
    color: #ba1010
}

.hendy-footer-widgets-wrapper .widget.widget_nav_menu a {
    color: #ffffffc7;
    padding: 8px 0 2px 0
}

.infobox-style-6 .hkangles-infobox-icon,
.hkangles-social-contact-icon .social-info-wrapper ul.social-info li a:hover,
.header-layout-5 .site-header .main-navigation div>ul ul li.current_page_item>a,
.header-layout-5 .site-header .main-navigation div>ul ul li.current-menu-item>a,
.header-layout-5 .site-header .main-navigation div>ul ul li>a:hover,
.header-layout-5 .site-header .main-navigation div>ul>li.current-menu-parent,
.header-layout-5 .site-header .main-navigation div>ul>li.current_page_item,
.header-layout-5 .site-header .main-navigation div>ul>li:hover,
body button.hkangles-mfp-close,
.hkangles-bottom-button.hkangles-bottom-button-mainpage a:hover,
.header-layout-5 .hendy-topbar-content .hendy-header-button a:hover,
.hkangles-teammember-resume:hover,
.footer-layout-2 .footer-copyright .social-info-wrapper a:hover,
.hendy-page-title .breadcrumb:after,
.hendy-page-title .breadcrumb span.hendy-delimiter:after,
.hkangles-sortable-list a.hkangles-active,
.hkangles-static-text:after,
.infobox-style-11 .hkangles-infobox-button:hover,
.hkangles_pricing_wrapper.pricing-style-1 .ptable-btn a:hover,
.hkangles_pricing_wrapper.pricing-style-2 .ptable-btn a:hover,
.hendy-main-form2 input[type=submit]:hover,
.widget h2.widget-title,
.widget .wp-block-group h2,
.widget_search label.wp-block-search__label,
.widget_search .search-submit,
.site-footer-logo,
.single-team .hkangles-team-experience,
.single-team .hkangles-teammember-link-profiles li a:hover,
.hkangles-blog-banner-content-wrap .read-more-link a,
.hendy-main-form3 .hendy-main-form3-inner .input-group input[type=submit]:hover,
.hendy-main-form3 h3,
.header-layout-3 .site-header a.search-icon.search-popup-modal:hover,
.header-layout-3 .site-header .hendy-header-button a,
.slider-demo-icon:hover,
.blog-style-2 .hkangles-post-date,
.pricing-style-2 .hkangles-pricing-table-icon-wrapper,
.hkangles-custom-icon1 .elementor-icon i,
.hkangles-contact-after:after,
.hkangles-bottom-button a,
.hkangles-testimonial-3-second .testimonials-style-3 .hkangles-testimonial-slide:before,
.hkangles-testimonial-3-second .testimonials-style-3 .owl-nav button i:hover,
.infobox-style-2 .hkangles-infobox-button a,
.contact-item.contact-item-header-button,
.header-layout-5 .header-menu-area-inner.hkangles-bgcolor-primary:after,
.header-layout-5 .site-header ul.social-info li a:hover,
.header-layout-2 .site-header .hendy-header-button a:hover,
.services-style-5-arrow .owl-carousel .owl-nav button i:hover,
.testimonials-style-3 .owl-nav button i:hover,
.services-style-5 .read-more-link a:hover,
.hkangles-list-tab.cd-active-tab-link a,
.testimonials-style-4 .owl-carousel .owl-nav button i:hover,
.infobox-style-1 .hkangles-infobox-wrapper:after,
.team-style-3 .hkangles-teammember-social-profile,
.blog-style-1 .hkangles-post-slide .hkangles-post-meta .hkangles-post-meta-inner,
.services-style-3 .hkangles-service-wrapper:hover .hkangles-service-icon,
.infobox-style-14 .hkangles-infobox-wrapper,
.hkangles-contact-page-banner .elementor-widget-image:after,
.comment-navigation .nav-next a:after,
.posts-navigation .nav-next a:after,
.post-navigation .nav-next a:after,
.comment-navigation .nav-previous a:before,
.posts-navigation .nav-previous a:before,
.post-navigation .nav-previous a:before,
.comment-list a.comment-reply-link,
.single-service .widget.widget_recent_services h2.widget-title,
.about-us .elementor-image:after,
.hkangles-custom-icon .elementor-icon-wrapper,
.hendy-main-form input[type=submit],
.infobox-style-10 .hkangles-infobox-icon:hover,
.hkangles-infibox-style10-second .infobox-style-10 .hkangles-infobox-icon,
.infobox-style-8 .icon-count-number,
.team-style-2 .hkangles-teammember-wrapper:hover .hkangles-teammember-title-wrap,
.projects-style-2 .hkangles-project-slide:hover .hkangles-project-icon,
.hkangles_pricing_wrapper .ptable-btn a:hover,
.infobox-style-1 .hkangles-infobox-icon,
.header-layout-4 .site-header .search-wrapper a:hover,
.error404 .site-main input.search-submit:hover,
.hkangles_list_wrapper-style2 .hkangles-list-wrapper ul li i,
span.hkangles-infobox-all-wrap a:after,
.site-header .main-navigation div>ul>li>ul,
.site-header .main-navigation div>ul>li>ul ul,
.hendy-footer-widgets-wrapper .social-info-wrapper li a:hover,
.bottom-footer-right:after,
.bottom-footer-right,
.cd-bg-color-primary.hkangles-bg-white-50:after,
.single-service .item-download a span,
.hkangles-contact-form-submit .hendy-main-form2 input[type=submit],
.header-layout-3 .site-header .main-navigation div>ul li.current_page_item>a:after,
.services-style-1 .hkangles-service-icon,
.blog-style-2 .hkangles-post-meta .hkangles-post-meta-inner .post-author,
.owl-carousel .owl-nav button i,
.services-style-3 span.hkangles-project-category,
.services-style-3 .hkangles-service-slide:hover span.hkangles-project-category,
.hkangles_pricing_wrapper .hkangles-pricing-table-featured-col .hkangles-pricing-table-box:after,
.testimonials-style-2 .owl-carousel .owl-nav button i:hover,
.services-style-4 .owl-dots .owl-dot.active,
.infobox-style-13,
.hkangle-column-border-bottom:after,
.header-layout-2 .hkangles-bgcolor-primary .site-header-bottom:after,
.header-layout-5 .hkangles-bgcolor-primary .site-header-bottom:after,
.hkangles-project-thumbnail-border-top:before,
.hkangles-project-thumbnail-border-top:after,
.hkangles-project-thumbnail-border-right:before,
.hkangles-project-thumbnail-border-right:after,
.elementor-widget-button.cd-bg-color-secondary .elementor-button:hover,
.progress-bar-style-1 .hkangles-progress-bar-inner,
.counter-style-3 .hkangles-counter-title:after,
.counter-style-3 .hkangles-counter-title:before,
.elementor-section.cd-bg-color-primary.elementor-element.hkangles-background-overlay .elementor-background-overlay,
.elementor-column.elementor-element.hkangles-background-overlay.cd-bg-color-primary .elementor-background-overlay,
.widget.widget_pages ul li a:after,
.site-content .widget.widget_nav_menu ul li>a:after,
.widget.widget_meta ul li>a:after,
.widget.widget_archive ul li a:after,
ul.wp-block-archives li>a:after,
.slider-image-block:after,
.slider-heading-subtitle:after,
.slider-heading-subtitle:before,
.infobox-style-12 .hkangles-infobox-icon,
.progress-bar-style-2 .hkangles-progress-bar-inner,
.hkangle-about-img .elementor-image:after,
.hkangle-service-block .elementor-column-wrap:after,
.hkangle-about-img1 .elementor-image:after,
.testimonials-style-1 .hkangles-testimonial-wrapper:after,
.projects-style-2 .read-more-link,
.hkangles-ourhistory-content span.label,
.testimonials-style-2 .owl-dots .owl-dot.active,
.counter-style-3:after,
.infobox-style-12 .hkangles-infobox-button a:after,
table thead th,
#scroll-to-top a,
.hkangles-blog-classic-inner span.posted-on.entry-meta,
body.search input.search-submit:hover,
.projects-style-1 .owl-carousel .owl-nav button i:hover,
.hendy-page-title .breadcrumb span.hendy-delimiter,
.hkangles-blog-classic ul.social-share-icons a.icon-link i:hover,
ul.wp-block-archives li>a:before,
.site-footer .cd-subscribe-form .subscribe-button,
.hendy-footer-contact-wrapper i,
.team-style-1 .hkangles-teammember-social-profiles li a:hover,
.infobox-style-2 .hkangles-infobox-icon,
.infobox-style-1 .hkangles-infobox-content-icon,
.projects-style-2 .hkangles-project-details .hkangles-details-arrow a,
.projects-style-4 .hkangles-project-details .hkangles-details-arrow a,
.custom-heading-style-1 .heading-title:before,
.custom-heading-style-2 .heading-title:before,
.ui-slider-handle.ui-state-default.ui-corner-all,
.rtooltip,
.header-layout-4 .site-header .hendy-sticky-header .hendy-header-button a,
.projects-style-3 .hkangles-project-content-inner .hkangles-project-action-icons a,
.blog-style-1 .post-read-more-link a:hover::after,
.blog-style-4 .post-read-more-link a:hover::after,
.testimonials-style-4 .owl-prev:after,
.testimonials-style-4 .owl-next:after,
input[type=submit],
.services-style-4 .hkangles-service-icon,
.hkangles-single-contact-inner,
.header-layout-3 .site-header-top .hkangls-social-links i:hover,
.hkangles-project-details-see-all-projects,
.hkangles-project-details-title,
.team-form input[type=submit],
.hendy-copyright,
.hkangles-vertical-text .elementor-text-editor,
.hkangles-bgcolor-primary,
.widget_archive ul li span,
.cd-bg-color-primary.infobox-style-5-second .elementor-element-populated,
.services-style-1 .owl-carousel .owl-nav button i,
.blog-style-3 .hkangles-post-date,
.cd-bg-color-secondary.elementor-column.hkangles-testimonial-bg .elementor-column-wrap,
.hendy-play,
.site-header .hendy-header-button a,
.widget_product_search .woocommerce-product-search button,
.site-header .main-navigation div>ul ul a:hover:before,
.site-header .main-navigation div>ul ul a:before,
.services-style-2 .hkangles-service-wrapper:after,
.services-style-5 .hkangles-service-wrapper:after,
.elementor-widget-button.cd-bg-color-secondary .elementor-button:hover,
section.error-404 a.fof-back-buttton,
.hendy-footer-widgets-wrapper a.btn.btn-outline-light.footer-button,
.hkangles-blog-classic .read-more-link a,
.sidebar-infobox,
.hkangles-blog-classic .hkangles-single-meta-bottom .tags-links a:hover,
.widget_tag_cloud a:hover,
.hendy-topbar-content .hendy-topbar-button,
.hendy-topbar-content .hendy-topbar-button,
.thsb-bg-color.cd-bg-color-primary .elementor-column-wrap,
.woocommerce-pagination ul li a:hover,
.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current,
.hendy-woocommercec-cart span.number-cart,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt:disabled,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .woocommerce-message .button,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.services-style-2 .hkangles-service-slide:hover .hkangles-service-wrapper,
.blog-style-1 .hkangles-post-meta .hkangles-post-meta-inner .post-author:after,
.blog-style-4 .hkangles-post-meta .hkangles-post-meta-inner .post-author:after,
.blog-style-2 .hkangles-post-meta .hkangles-post-meta-inner .post-author:after,
.team-style-1 .hkangles-teammember-show-details,
.services-style-2 .hkangles-service-slide .hkangles-service-wrapper:hover .hkangles-service-date i,
.team-style-1 .hkangles-teammember-content-cover .hkangles-teammember-share,
.infobox-style-4:hover .hkangles-infobox-inner:after,
.blog-style-4 .hkangles-post-date,
.blog-style-2 .hkangles-post-meta .hkangles-post-meta-inner .post-date:after,
.blog-style-3 .hkangles-post-meta .hkangles-post-meta-inner .post-date:after,
.elementor-widget-button.cd-bg-color-primary .elementor-button,
.cd-bg-color-primary.elementor-column>.elementor-column-wrap,
.elementor-section.cd-bg-color-primary,
.cd-right-expand.cd-bg-color-primary .elementor-column-wrap:after,
.cd-left-expand.cd-bg-color-primary .elementor-column-wrap:after,
.cd-right-expand.elementor-top-section.cd-bg-color-primary:after,
.cd-left-expand.elementor-top-section.cd-bg-color-primary:after,
.wpb-js-composer .hendy-accordion-style-1 .vc_tta.vc_general .vc_tta-panel.vc_active .vc_tta-panel-title>a:before,
.owl-dots .owl-dot.active,
button.hendy-search-button,
.hendy-year,
.hendy-about-introbox:before,
.hkangles-blog-classic footer ul.social-share-icons a.icon-link,
.col-extend-right.extend-with-primary-bg:after,
.vc_row.hendy-bg-color-primary,
.wpb_column.hendy-bg-color-primary>.vc_column-inner,
.post.sticky .hkangles-blog-classic-inner:after,
.wp-block-tag-cloud a:hover,
.comment-respond .comment-form input[type=submit],
.wp-block-button__link:hover {
    background-color: #ba1010
}

.hkangles_pricing_wrapper.pricing-style-2 .hkangles-pricing-table-featured-col .hkangles-pricing-table-box,
.infobox-style-2 .hkangles-infobox-img-second,
.woocommerce-pagination ul li a:hover,
.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current,
.services-style-6 .hkangles-service-wrapper:hover .hkangles-service-icon i:after,
.post.sticky .hkangles-blog-classic-inner {
    border-color: #ba1010
}

.single-service .widget.widget_recent_services h2.widget-title:after,
.hkangles-project-details-title:after,
.woocommerce-info,
.woocommerce-message,
.oc_top::after,
.blog-style-1 .hkangles-post-date,
.infobox-style-13:after,
.site-header .main-navigation div>ul>li>ul,
.infobox-style-6 .hkangles-infobox-wrapper,
.site-header .main-navigation div>ul>li>ul ul {
    border-top-color: #ba1010
}

.hkangles-single-contact-inner:after {
    border-right-color: #ba1010
}

.projects-style-3 .hkangles-project-content-inner .hkangles-project-title-wrap,
.testimonials-style-3 .hkangles-testimonial-slide,
.infobox-bottm-border .infobox-style-6,
.infobox-bottm-border .infobox-style-12,
.team-style-1 .hkangles-teammember-wrapper,
.hendy-action-box a {
    border-bottom-color: #ba1010
}

.navigation .nav-links .nav-next a:before,
.infobox-style-10 .hkangles-infobox-img-second,
.navigation .nav-links .nav-previous a:after,
.sidebar input[type="search"] {
    border-color: #ba1010
}

.tsb-our-history,
.infobox-style-4,
blockquote p,
.hkangles-ourhistory-content .history-content,
.hkangles-blog-classic blockquote {
    border-left-color: #ba1010
}

.infobox-style-3 .hkangles-infobox-button a,
.infobox-style-3 .hkangles-infobox-title,
.infobox-style-5 .hkangles-list-wrapper ul li i,
.infobox-style-1 .hkangles-infobox-button a,
.team-style-2 .hkangles-teammember-social-profile a:hover,
.header-layout-4 .site-header ul.social-info li i:hover,
.hkangles-infobox-7-second .infobox-style-7 .hkangles-infobox-icon:before,
.custom-heading-style-2 .hkangles-heading-subtitle-wrapper .heading-subtitle,
.site-header .hkangles-textcolor-secondary .main-navigation div>ul>li>a,
.blog-style-1 .hkangles-post-category a,
.secondary,
.blog-style-4 .hkangles-post-category a {
    color: #162b62
}

.hkangles-blog-banner-content-wrap .read-more-link a:hover,
.hkangles-bottom-button.hkangles-bottom-button-mainpage a,
.header-layout-5 .hendy-topbar-content .hendy-header-button a,
.hkangles-footer-map a,
.hkangles-custom-icon1 .elementor-icon i:hover,
.hendy-main-form3 .input-group input[type=submit],
.header-layout-5 .header-menu-area-inner.hkangles-bgcolor-secondary:after,
.header-layout-2 .site-header .hendy-header-button a,
.infobox-style-3 .hkangles-infobox-button a:after,
.hkangles_pricing_wrapper.pricing-style-1 .hkangles-ptable-pricing:after,
.hkangles_pricing_wrapper.pricing-style-1 .hkangles-ptable-pricing,
.team-style-3 .hkangles-teammember-social-profiles-container,
.infobox-style-1 .hkangles-infobox-button a::after,
.services-style-6 .hkangles-service-style-wrap:nth-child(2) .hkangles-service-slide:after,
.services-style-6 .hkangles-service-style-wrap:nth-child(1) .hkangles-service-slide:after,
.hendy-main-form3 .input-group input[type=submit]:hover,
.site-header a.search-icon.search-popup-modal:hover,
.hkangles-about-after-color:after,
.header-layout-3 .header-stickable.hendy-sticky-header,
.hkangles-contact-form-submit .hendy-main-form2 input[type=submit]:hover,
.testimonials-style-3 .owl-dots .owl-dot.active,
.header-layout-4 .site-header .hkangles-bgcolor-white .hendy-header-button a:hover,
body .owl-dots .owl-dot,
.hendy-main-form input[type=submit]:hover,
.header-layout-2 .hkangles-bgcolor-secondary .site-header-bottom:after,
.header-layout-5 .hkangles-bgcolor-secondary .site-header-bottom:after,
.elementor-widget-button.cd-bg-color-primary .elementor-button:hover,
.projects-style-1 .owl-dots .owl-dot.active,
.elementor-section.cd-bg-color-secondary.elementor-element.hkangles-background-overlay .elementor-background-overlay,
.elementor-column.elementor-element.hkangles-background-overlay.cd-bg-color-secondary .elementor-background-overlay,
.projects-style-1 .hkangles-project-thumbnail-wrapper:hover .hkangles-project-image-container:after,
.team-form input[type=submit]:hover,
.header-layout-2 .site-header ul.social-info li a:hover,
.site-header .hendy-header-button a:hover,
.hkangle-about-img .elementor-image:before,
.testimonials-style-4 .owl-nav button i:hover,
.get-quote-form input[type=submit]:hover,
.infobox-style-5 span.icon-cound-number,
.hkangles-blog-classic .read-more-link a:hover,
.hkangles-single-contact-inner .elementor-button-wrapper a:hover,
.hendy-main-form2 input[type=submit],
.hkangles-bgcolor-secondary,
.cd-bg-color-secondary.infobox-style-5-second .elementor-element-populated,
.header-layout-3 .site-header-top .hkangls-social-links i,
.header-layout-4 .hkangls-social-links i,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover.elementor-widget-button.cd-bg-color-white .elementor-button:hover,
.thsb-bg-color.cd-bg-color-secondary .elementor-column-wrap,
.elementor-widget-button.cd-bg-color-secondary .elementor-button,
.cd-bg-color-secondary.elementor-column>.elementor-column-wrap,
.infobox-style-4 .hkangles-infobox-inner:after,
.elementor-section.cd-bg-color-secondary,
.cd-right-expand.cd-bg-color-secondary .elementor-column-wrap:after,
.cd-left-expand.cd-bg-color-secondary .elementor-column-wrap:after,
.cd-right-expand.elementor-top-section.cd-bg-color-secondary:after,
.cd-left-expand.elementor-top-section.cd-bg-color-secondary:after,
.widget_recent_services ul li:hover a:before,
.hendy-contact-info .wpcf7-submit:hover,
.site-header .hendy-bg-color-secondary,
.comment-respond .comment-form input[type=submit]:hover {
    background-color: #162b62
}

.footer_contact-info-inner,
.single-team .hkangles-teammember-link-profiles li a,
.header-layout-3 .site-header .hendy-header-button a:after,
.hkangles-columns-after>.elementor-column-wrap>.elementor-widget-wrap:after,
.hkangles-home-quoet,
.header-layout-2 .site-header ul.social-info li a,
.header-layout-4 .site-header .search-wrapper a,
.hkangles-blog-classic .hkangles-single-bottom-area,
.sidebar .widget,
.single-service .sidebar .widget,
.cd-bg-color-tertiary.hkangle-conter-expand:after,
.team-style-1 .hkangles-teammember-social-profiles li a,
#site-navigation-mobile .slicknav_menu .slicknav_btn,
.widget_recent_services .hkangles-service-content:after,
.cd-left-expand.hkangles-about-after-bg:after,
.header-layout-2 .site-header ul.social-info li,
.header-layout-5 .site-header ul.social-info li,
.hkangle-about-grey1-block.elementor-section:after,
.hkangle-about-grey-block.elementor-section:after,
.testimonials-style-2 .owl-stage-outer:after,
.widget_categories ul li span,
.team-style-1 .hkangles-teammember-wrapper,
.elementor-accordion .elementor-tab-title,
.cd-bg-color-tertiary.infobox-style-5-second .elementor-element-populated,
.header-layout-3 .hendy-sticky-header span.hendy-woocommercec-cart span.number-cart,
.header-layout-4 .hendy-sticky-header span.hendy-woocommercec-cart span.number-cart,
.blog-style-1 .hkangles-post-category a,
.blog-style-4 .hkangles-post-category a,
.comment-navigation .nav-next a:after,
.thsb-bg-color.cd-bg-color-tertiary .elementor-column-wrap,
.cd-bg-color-tertiary.elementor-column,
.cd-left-expand.elementor-top-section.cd-bg-color-tertiary:after,
.cd-right-expand.elementor-top-section.cd-bg-color-tertiary:after,
.cd-right-expand.cd-bg-color-tertiary .elementor-column-wrap:after,
.cd-left-expand.cd-bg-color-tertiary .elementor-column-wrap:after,
.elementor-section.cd-bg-color-tertiary,
.elementor-widget-button.cd-bg-color-tertiary .elementor-button,
.hendy-contact-info .infobox-style-3 i:after {
    background-color: #f6f6f6
}

.services-style-3 .hkangles-service-title-wrap,
.hkangles-bgcolor-white,
.thsb-bg-color.cd-bg-color-white .elementor-column-wrap,
.cd-bg-color-white.elementor-column,
.cd-left-expand.elementor-top-section.cd-bg-color-white:after,
.cd-right-expand.elementor-top-section.cd-bg-color-white:after,
.cd-right-expand.cd-bg-color-white .elementor-column-wrap:after,
.cd-left-expand.cd-bg-color-white .elementor-column-wrap:after,
.elementor-section.cd-bg-color-white,
.elementor-widget-button.cd-bg-color-white .elementor-button {
    background-color: #fff
}

.header-layout-3 .site-header .hendy-header-button a:hover,
.hkangles_list_wrapper-style2 .hkangles-list-wrapper ul li i,
.owl-carousel .owl-nav button i,
.services-style-3 .hkangles-service-slide:hover span.hkangles-project-category,
.testimonials-style-2 .owl-carousel .owl-nav button i:hover,
.header-layout-4 .site-header .search-wrapper:hover i,
.site-header .hkangles-textcolor-white .main-navigation div>ul>li>a {
    color: #fff
}

.hkangles-bgcolor-transparent {
    background-color: transparent
}

.header-layout-5 .site-header ul.social-info li a,
.hkangles-list-wrapper ul li i,
.header-layout-3 .site-header .contact-info .contact-item i,
.infobox-style-9 .hkangles-infobox-content .hkangles-infobox-text,
.hkangles_pricing_wrapper .hkangles-ptable-symbol,
.hkangles_pricing_wrapper .hkangles-ptable-price,
.infobox-style-2 .hkangles-infobox-icon,
.infobox-style-1 .icon-count-number,
.blog-style-1 .hkangles-post-date,
.hkangles-list-wrapper .list-item a,
.counter-style-1 .hkangles-counter-title,
.counter-style-2 .hkangles-counter-number,
.hkangles-infobox-all-wrap a:hover,
.hkangles-infobox-all-wrap a:hover:after,
.infobox-style-11 .hkangles-infobox-title,
.header-layout-4 .site-header .hendy-header-button a:hover,
.header-layout-4 .site-header .search-wrapper a,
.infobox-style-4 .hkangles-infobox-title,
.comment-list span.comment-author,
.hkangles-blog-classic .entry-meta-footer,
.single-service .item-download a .hkangles-download-title,
.cd-subscribe-form .subscribe-button:hover,
.services-style-2 h3.hkangles-service-title a,
.services-style-5 h3.hkangles-service-title a,
.testimonials-style-1 .hkangles-testimonial-content p,
.counter-style-3 .hkangles-counter-wrapper .hkangles-counter-number,
.counter-style-3,
.projects-style-2 .hkangles-project-detail-title,
.projects-style-4 .hkangles-project-detail-title,
.testimonials-style-2 .hkangles-testimonials-title-wrap .testimonial-designation,
.testimonials-style-2 .hkangles-testimonial-content p,
.blog-style-4 .hkangles-post-date,
.infobox-style-6 .hkangles-infobox-title,
.get-quote-form .get-quote-title,
.widget_tag_cloud a,
.testimonials-style-1 .testimonial-title,
.services-style-3 .service-title,
.testimonials-style-2 .testimonial-title,
.blog-style-2 .hkangles-post-wrapper .hkangles-post-title-wrap h3 a,
.coronia-woocommerce-product-slide.woocommerce h2.woocommerce-loop-product__title,
.custom-heading-style-1 .hkangles-heading-title-wrapper .heading-title,
a,
h1,
h2,
h3,
h4,
h5,
h6,
a:visited {
    color: #162b62
}

.hendy-copyright {
    background-color: #59a8d9 !important
}

.site-main input.search-submit,
.Contact-us-form input[type=submit]:hover,
.comment-list a.comment-reply-link:hover,
.hkangles-bottom-button a:hover,
.projects-style-2 .hkangles-project-slide:hover .hkangles-project-content-cover,
.hkangles_pricing_wrapper.pricing-style-1 .ptable-btn a i:hover,
.hkangles-teammember-resume,
.infobox-style-10 .hkangles-infobox-icon,
.hkangles-infibox-style10-second .infobox-style-10 .hkangles-infobox-icon:hover,
.hkangles-project-details:after,
.hkangles-blog-banner-content-wrap,
.infobox-style-5 .hkangles-infobox-more-icon i,
.infobox-style-11 .hkangles-infobox-button,
.services-style-5 .read-more-link a,
.hkangles_pricing_wrapper .ptable-btn a,
.cd-bg-color-quaternary.elementor-column>.elementor-column-wrap,
.elementor-section.cd-bg-color-quaternary,
.cd-right-expand.cd-bg-color-quaternary .elementor-column-wrap:after,
.cd-left-expand.cd-bg-color-quaternary .elementor-column-wrap:after,
.cd-right-expand.elementor-top-section.cd-bg-color-quaternary:after,
.cd-left-expand.elementor-top-section.cd-bg-color-quaternary:after,
#scroll-to-top a:hover,
section.error-404 a.fof-back-buttton:hover,
.infobox-style-9 .hkangles-infobox-content .hkangles-infobox-text i,
.services-style-3 .hkangles-service-action-icons,
.services-style-6 .hkangles-service-action-icons,
.coronia-woocommerce-product-slide.woocommerce .hkangles-add-to-cart-button {
    background-color: #162b62
}

.hkangles-topbar-wrapper {
    color: var(--c-light) !important;
    background-color: #f6f6f6
}

.hendy-page-title {
    height: 400px
}

.site-header .site-logo img {
    height: 75px
}

.site-header .sticky-site-logo img {
    height: 55px
}

.hkangles_custom_heading_wrapper .hkangles-heading-title-wrapper .heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    line-height: 50px;
    font-size: 45px
}

.hkangles_custom_heading_wrapper .hkangles-heading-subtitle-wrapper .heading-subtitle {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 600;
    letter-spacing: 0px;
    line-height: 25px;
    font-size: 16px
}

h1 {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    letter-spacing: 0px;
    line-height: 57px;
    font-size: 52px
}

h2,
.elementor-widget-heading h2.elementor-heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    letter-spacing: 0px;
    line-height: 50px;
    font-size: 32px
}

h3,
.elementor-widget-heading h3.elementor-heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    line-height: 44px;
}

h4,
.elementor-widget-heading h4.elementor-heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    line-height: 38px;
    font-size: 32px
}

h5,
.elementor-widget-heading h5.elementor-heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    line-height: 32px;
    font-size: 28px
}

h6,
.elementor-widget-heading h6.elementor-heading-title {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 400;
    line-height: 28px;
    font-size: 24px
}

.site-header .main-navigation div>ul>li>a {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 500;
    line-height: 24px;
    font-size: 15px
}

.site-header .hkangles-textcolor-custom .main-navigation div>ul>li>a {
    color: #000000
}

.site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a,
.site-header .main-navigation div>ul>li>a:hover,
.site-header .main-navigation div>ul>li.current-menu-item>a,
.site-header .main-navigation div>ul>li.current-menu-parent>a,
.header-layout-5 .site-header .hendy-sticky-header .main-navigation div>ul>li.current-menu-parent>a {
    color: #ffffff
}

.site-header .main-navigation div>ul ul a {
    font-family: "Roboto", Sans-serif !important;
    font-weight: 600;
    line-height: 24px;
    font-size: 14px
}

.site-header .main-navigation div>ul>li>ul,
.site-header .main-navigation div>ul>li>ul ul {
    background-color: #ffffff
}

.site-header .main-navigation div>ul ul a {
    color: #212553
}

.site-header .hendy-sticky-header .main-navigation div>ul ul li.current_page_item>a,
.site-header .main-navigation div>ul ul li a:hover,
.site-header .main-navigation div>ul ul li.current_page_item>a,
.site-header .main-navigation div>ul ul li.current-menu-item>a {
    color: #ffffff
}

.footer_contact-info .contact-list {
    padding-left: 6px
}

.site-footer-logo {
    background-color: #59a8d9 !important
}

.hendy-footer-widgets-wrapper .widget {
    margin: 15px 0 0 0
}

.service-footer a {
    color: white !important
}

.service-footer a:hover {
    color: var(--c-secondary) !important
}

.form-control {
    border: none !important;
    border-radius: 50px !important;
    transition: all 500ms ease !important;
    -webkit-transition: all 500ms ease !important;
    -ms-transition: all 500ms ease !important;
    -o-transition: all 500ms ease !important;
    background-color: #f6f6f6 !important;
    padding: 0px 15px 0 25px;
    height: 55px;
    color: #0f202d !important
}

.form-control .wpcf7-select {
    height: 55px !important
}

.form-control .wpcf7-textarea {
    display: block !important;
    width: 100% !important;
    min-height: 150px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    margin-bottom: 20px !important;
    line-height: normal !important;
    padding: 20px 15px 0 25px !important
}

.wpcf7-form select.wpcf7-form-control option {
    color: #0f202d !important
}

.sidebar .widget.widget_nav_menu ul>li a {
    color: #162b62 !important
}

.sidebar .widget.widget_nav_menu ul>li a:hover {
    color: var(--c-secondary) !important
}

.sidebar .widget.widget_nav_menu ul>li a::after {
    padding: 0px 5px
}

.hendy-copyright .footer-copyright {
    color: #ffffff !important
}

.hendy-copyright .footer-copyright a {
    color: #59a8d9 !important
}

@media (max-width:991px) {
    .hendy-footer-widgets-wrapper {
        padding-bottom: 4% !important
    }

    .widget_media_gallery {
        margin-left: 10% !important
    }

    .hendy-copyright .footer-copyright:first-child {
        text-align: center !important
    }

    .hendy-copyright .footer-right {
        text-align: center !important
    }
}

.post-comment {
    visibility: hidden !important
}

#h2-display-none {
    display: none
}

.dynamicCursor {
    display: none
}

.elementor-1335 .elementor-element.elementor-element-3f1fba1 .hkangles-infobox-text {
    color: var(--c-primary) !important
}

.elementor-1335 .elementor-element.elementor-element-e41db2b .hkangles-infobox-text {
    color: var(--c-primary) !important
}

.elementor-1335 .elementor-element.elementor-element-873f3d4 .hkangles-infobox-text {
    color: var(--c-primary) !important
}

.services-slider {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none
}

.autre-services-slider::-webkit-scrollbar {
    display: none
}

.service {
    flex: 0 0 31.5%;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    min-width: 280px;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin: 0 10px;
    position: relative;
    transition: background-color 0.3s
}

.service:hover {
    background-color: #f7f7f7
}

.service-icon {
    background-color: #59a8d96e;
    padding-top: 8%;
    padding-bottom: 2%;
    margin-bottom: 10%;
    border-radius: 10px
}

.service-icon img {
    width: 90px;
    height: 90px;
    margin-bottom: 20px
}

.service h3 {
    font-size: 20px;
    color: var(--c-primary);
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 24px
}

.service h3 a {
    font-size: 20px;
    color: var(--c-primary);
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 24px
}

.service h3 a:hover {
    color: var(--c-secondary);
}

.service p {
    font-size: 16px;
    color: #555;
    line-height: 1.5
}

.service-link {
    display: inline-block;
    margin-top: auto;
    background-color: var(--c-secondary);
    color: white !important;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 30px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, box-shadow 0.3s
}

.service-link:hover {
    background-color: #59a8d9;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3)
}

.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #59a8d9;
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    z-index: 10;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, box-shadow 0.3s;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center
}

.slider-arrow.left {
    left: -30px
}

.slider-arrow.right {
    right: -30px
}

.slider-arrow:hover {
    background-color: var(--c-secondary);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3)
}

.slider-arrow i {
    font-size: 16px;
    color: white
}

@media (max-width:1200px) {
    .service {
        flex: 0 0 48%;
        min-width: 250px
    }
}

@media (max-width:768px) {
    .header-layout-5 .site-header-top {
        margin-top: 10%
    }

    .service {
        flex: 0 0 100%;
        min-width: 100%;
        margin: 10px 0;
        box-sizing: border-box
    }

    .service-icon img {
        width: 40px;
        height: 40px
    }

    .service h3 {
        font-size: 15px;
        font-weight: 600;
        line-height: 20px
    }

    .service p {
        font-size: 12px;
        color: #555;
        line-height: 1.3
    }

    .service-link {
        font-size: 12px;
        padding: 5px 10px;
        line-height: 1.3;
        display: inline-block
    }

    .slider-arrow {
        width: 20px;
        height: 20px;
        padding: 8px
    }

    .slider-arrow i {
        font-size: 10px
    }
}

@media(min-width:1200px) {
    .autre-services-slider-wrapper .slider-controls {
        display: none
    }
}

.autre-services-slider {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none
}

.autre-services-slider::-webkit-scrollbar {
    display: none
}

.autre-service {
    flex: 0 0 31.5%;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    min-width: 280px;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin: 0 10px;
    position: relative;
    transition: background-color 0.3s
}

.autre-service:hover {
    background-color: #f7f7f7
}

.autre-service-icon {
    background-color: #59a8d96e;
    padding-top: 8%;
    padding-bottom: 2%;
    margin-bottom: 4%;
    border-radius: 10px
}

.autre-service-icon img {
    width: 90px;
    height: 90px;
    margin-bottom: 20px
}

.autre-service h3 {
    font-size: 20px;
    color: var(--c-primary);
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 24px
}

.autre-service p {
    font-size: 16px;
    color: #555;
    line-height: 1.5
}

.autre-service-link {
    display: inline-block;
    margin-top: auto;
    background-color: #6EC1E4;
    color: white !important;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 30px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, box-shadow 0.3s
}

.autre-service-link:hover {
    background-color: var(--c-primary);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3)
}

.autre-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #59a8d9;
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    z-index: 10;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, box-shadow 0.3s;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center
}

.autre-slider-arrow.left {
    left: -30px
}

.autre-slider-arrow.right {
    right: -30px
}

.autre-slider-arrow:hover {
    background-color: var(--c-secondary);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3)
}

.autre-slider-arrow i {
    font-size: 16px;
    color: white
}

@media (max-width:1200px) {
    .autre-service {
        flex: 0 0 48%;
        min-width: 250px
    }
}

@media (max-width:768px) {
    .autre-service {
        flex: 0 0 100%;
        min-width: 100%;
        margin: 10px 0;
        box-sizing: border-box
    }

    .autre-service-icon img {
        width: 40px;
        height: 40px;
        object-fit: contain
    }

    .autre-service h3 {
        font-size: 15px;
        font-weight: 600;
        line-height: 20px
    }

    .autre-service p {
        font-size: 12px;
        color: #555;
        line-height: 1.3
    }

    .service-link {
        display: inline-block;
        font-size: 12px;
        padding: 5px 10px;
        line-height: 1.3;
        text-align: center
    }

    .autre-slider-arrow {
        width: 20px;
        height: 20px;
        padding: 8px;
        display: flex;
        align-items: center;
        justify-content: center
    }

    .autre-slider-arrow i {
        font-size: 10px
    }
}

.seconde {
    top: 50% !important
}

@media (min-width:1201px) {
    .seconde {
        display: none
    }
}

.business-card {
    width: 300px;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: center
}

.business-name {
    font-size: 24px;
    margin-bottom: 8px
}

.rating {
    color: #f5b50a;
    margin-bottom: 12px
}

.rating i {
    margin-right: 2px
}

.icon-links {
    display: flex;
    justify-content: space-around;
    margin-top: 20px
}

.icon-links a {
    text-decoration: none;
    color: var(--c-primary);
    font-size: 20px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.icon-links a span {
    font-size: 12px
}

.h3-techniques {
    color: #000000;
    font-size: 1em;
    font-weight: bold;
    line-height: 20px
}

.h4-techniques {
    color: #000000;
    font-size: 0.8em;
    font-weight: bold;
    line-height: 20px
}

.help-card-container {
    width: 100%;
    max-width: 1200px;
    display: flex;
    gap: 20px;
    justify-content: space-around;
    flex-wrap: wrap;
    margin: 0 auto
}

.help-section-title {
    text-align: center;
    color: var(--c-primary);
    margin-bottom: 20px;
    font-size: 24px;
    width: 100%
}

.help-main-card {
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    width: 100%;
    max-width: 350px;
    display: flex;
    flex-direction: column
}

.help-card-header {
    background-color: var(--c-primary);
    color: #fff;
    text-align: center;
    padding: 10px;
    font-size: 18px;
    font-weight: bold
}

.help-main-card-image {
    position: relative;
    text-align: center;
    overflow: hidden;
    display: block;
    width: 100%
}

.help-main-card-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(9, 87, 136, 0.6);
    z-index: 1;
    pointer-events: none
}

.help-main-card-image img {
    width: 100%;
    height: auto;
    display: block;
    z-index: 0;
    position: relative;
    border: none
}

.help-main-card-text {
    position: absolute;
    width: 90%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    color: #fff;
    font-size: 1.2em;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7);
    text-align: center;
    padding: 10px;
    pointer-events: none
}

.help-sub-cards {
    border-top: 2px solid #59A8D9
}

.help-sub-card {
    display: flex;
    align-items: center;
    padding: 10px;
    border-top: 1px solid #e6e6e6;
    transition: background-color 0.3s
}

.help-sub-card:hover {
    background-color: #f9f9f9
}

.help-sub-card img {
    width: 60px;
    height: 60px;
    border-radius: 4px;
    margin-right: 10px;
    object-fit: cover
}

.help-sub-card a {
    text-decoration: none;
    font-size: 14px;
    color: #333
}

.help-sub-card a:hover {
    text-decoration: underline;
    color: var(--c-primary);
}

@media (max-width:768px) {
    .help-card-container {
        flex-direction: column;
        align-items: center
    }

    .help-main-card {
        max-width: 90%;
        margin-bottom: 20px
    }
}

.contact-label:hover {
    background-color: transparent !important
}

.rendezvous {
    background-color: var(--c-secondary) !important
}

.rendezvous:hover {
    background-color: #59a8d9 !important
}

.appeleznous .elementor-icon-box-wrapper {
    background-color: var(--c-secondary) !important;
    height: 6vh;
    border-radius: 50px;
    align-items: center !important;
    padding-left: 10px
}

.appeleznous .elementor-icon-box-wrapper:hover {
    background-color: #59a8d9 !important
}

.blog-style-3 .hkangles-post-meta {
    display: none
}

.eael-pricing {
    background-color: #fafafa
}

.eael-pricing.style-1 .eael-pricing-item .header {
    margin-bottom: 0
}

.eael-pricing.style-1 .eael-pricing-item .header h2 {
    font-size: 20px !important;
    line-height: 25px !important
}

.eael-pricing.style-1 .eael-pricing-item .eael-pricing-tag {
    position: relative;
    z-index: 0;
    margin-bottom: 15px;
    background-color: #59A8D9;
    padding: 40px 0 20px !important
}

.eael-pricing.style-1 .eael-pricing-item .body ul {
    text-align: left;
    padding-left: 15px
}

.eael-pricing.style-1 .eael-pricing-item .body ul li {
    justify-content: flex-start !important
}

@media only screen and (max-width:480px) {
    .eael-pricing.style-1 .eael-pricing-item .price-tag {
        display: inline !important;
        line-height: 1.3em
    }
}

.elementor-icon-list-item .elementor-icon-list-text {
    font-size: 17px
}

.elementor-icon-list-items .elementor-icon-list-item {
    margin-bottom: 10px
}

p a:hover {
    color: var(--c-secondary);
}

.original-price {
    font-size: 45px !important
}

.c-proc-section {
    font-family: "Roboto", Sans-serif !important;
    padding: 80px 20px;
    background-color: #ffffff;
    box-sizing: border-box
}

.c-proc-section *,
.c-proc-section *::before,
.c-proc-section *::after {
    box-sizing: border-box
}

.c-proc-header {
    max-width: 900px;
    margin: 0 auto 60px auto;
    text-align: center
}

.c-proc-title {
    font-size: 36px;
    font-weight: 800;
    color: var(--c-primary);
    margin: 0;
    line-height: 1.2
}

.c-proc-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto
}

.c-proc-card {
    background: #f9fbfd;
    padding: 40px 30px;
    border-radius: 8px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border-top: 4px solid #5C9EBC;
    box-shadow: 0 5px 15px rgba(10, 54, 78, 0.05);
    width: calc(50% - 20px);
    min-width: 400px
}

.c-proc-icon {
    width: 60px;
    height: 60px;
    background-color: rgba(92, 158, 188, 0.15);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0A364E;
    font-size: 24px;
    margin-bottom: 25px
}

.c-proc-h3 {
    font-size: 20px;
    font-weight: 700;
    color: #0A364E;
    margin: 0 0 15px 0;
    line-height: 1.3
}

.c-proc-text {
    font-size: 15px;
    color: #555;
    line-height: 1.6;
    margin: 0
}

@media (max-width:900px) {
    .c-proc-grid {
        flex-direction: column;
        align-items: center;
        max-width: 100%
    }

    .c-proc-card {
        width: 100%;
        min-width: 0;
        max-width: 100%
    }

    .c-proc-header {
        text-align: center;
        margin-bottom: 40px
    }

    .c-proc-title {
        font-size: 28px
    }
}

.sec-a-wrapper {
    position: relative;
    max-width: 100%
}

.sec-a-slider {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 20px
}

.sec-a-slider::-webkit-scrollbar {
    display: none
}

.sec-a-card {
    flex: 0 0 31.5%;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    min-width: 280px;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin: 0 10px;
    position: relative;
    transition: background-color 0.3s;
    display: flex;
    flex-direction: column
}

.sec-a-card:hover {
    background-color: #f7f7f7
}

.sec-a-icon {
    background-color: #59a8d96e;
    padding-top: 8%;
    padding-bottom: 2%;
    margin-bottom: 10%;
    border-radius: 10px
}

.sec-a-icon img {
    width: 90px;
    height: 90px;
    margin-bottom: 20px
}

.sec-a-card h3 {
    font-size: 20px;
    color: var(--c-primary);
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 24px
}

.sec-a-card h3 a {
    font-size: 20px;
    color: var(--c-primary);
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 24px;
    text-decoration: none;
    transition: color 0.3s ease
}

.sec-a-card h3 a:hover {
    color: var(--c-secondary);
}

.sec-a-card p {
    font-size: 16px;
    color: #555;
    line-height: 1.5;
    flex-grow: 1
}

.sec-a-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #59a8d9;
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    z-index: 10;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, box-shadow 0.3s;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center
}

.sec-a-arrow.left {
    left: -15px
}

.sec-a-arrow.right {
    right: -15px
}

.sec-a-arrow:hover {
    background-color: var(--c-secondary);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3)
}

.sec-a-arrow i {
    font-size: 16px;
    color: white
}

@media (max-width:1200px) {
    .sec-a-card {
        flex: 0 0 48%;
        min-width: 250px
    }
}

@media (max-width:768px) {
    .sec-a-card {
        flex: 0 0 100%;
        min-width: 100%;
        margin: 10px 0
    }

    .sec-a-icon img {
        width: 40px;
        height: 40px
    }

    .sec-a-card h3 {
        font-size: 15px;
        font-weight: 600;
        line-height: 20px
    }

    .sec-a-card h3 a {
        font-size: 15px;
        line-height: 20px
    }

    .sec-a-card p {
        font-size: 12px;
        color: #555;
        line-height: 1.3
    }

    .sec-a-arrow {
        width: 20px;
        height: 20px;
        padding: 8px
    }

    .sec-a-arrow i {
        font-size: 10px
    }
}

.c-exp-final-section {
    background-color: #0A364E;
    color: #ffffff;
    padding: 100px 20px;
    position: relative;
    overflow: hidden
}

.c-exp-final-section *,
.c-exp-final-section *::before,
.c-exp-final-section *::after {
    box-sizing: border-box
}

.c-exp-final-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    z-index: 0
}

.c-exp-final-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    max-width: 80%;
    margin: 0 auto;
    align-items: center;
    position: relative;
    z-index: 1
}

.c-exp-final-content {
    padding-right: 20px
}

.c-exp-final-eyebrow {
    font-size: 14px;
    font-weight: 700;
    color: #5C9EBC;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 15px;
    display: block
}

.c-exp-final-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 25px 0;
    color: #fff
}

.c-exp-final-desc {
    font-size: 18px;
    color: #dbe4e9;
    line-height: 1.7;
    margin-bottom: 40px
}

.c-exp-final-desc strong {
    color: #5C9EBC;
    font-weight: 700
}

.c-exp-final-btn {
    display: inline-block;
    background-color: #5C9EBC;
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none !important;
    padding: 18px 40px;
    border-radius: 8px;
    font-size: 14px;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
    border: 2px solid #5C9EBC
}

.c-exp-final-btn:hover {
    background-color: transparent;
    color: #5C9EBC;
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3)
}

.c-exp-final-image-wrapper {
    position: relative
}

.c-exp-final-img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
    display: block;
    transition: transform 0.5s ease;
    object-fit: cover
}

.c-exp-final-image-wrapper:hover .c-exp-final-img {
    transform: scale(1.02)
}

.c-exp-final-badge {
    position: absolute;
    bottom: -25px;
    left: -25px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 20px 30px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: center;
    gap: 15px
}

.c-badge-icon {
    font-size: 24px;
    color: #5C9EBC
}

.c-badge-text {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2
}

.c-badge-text span {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #dbe4e9
}

@media (max-width:960px) {
    .c-exp-final-section {
        padding: 60px 20px
    }

    .c-exp-final-container {
        grid-template-columns: 1fr;
        gap: 50px;
        text-align: center;
        max-width: 100%
    }

    .c-exp-final-content {
        padding-right: 0
    }

    .c-exp-final-title {
        font-size: 30px
    }

    .c-exp-final-desc {
        font-size: 16px
    }

    .c-exp-final-btn {
        padding: 14px 30px;
        font-size: 13px;
        width: 100%;
        max-width: 300px
    }

    .c-exp-final-badge {
        left: 50%;
        transform: translateX(-50%);
        bottom: -20px;
        width: 90%;
        justify-content: center;
        padding: 12px 20px;
        gap: 10px
    }

    .c-badge-icon {
        font-size: 20px
    }

    .c-badge-text {
        font-size: 13px;
        text-align: left
    }

    .c-badge-text span {
        font-size: 11px
    }
}

.c-blue-center-wrapper {
    font-family: "Roboto", Sans-serif !important;
    width: 100%;
    box-sizing: border-box
}

.c-blue-center-banner {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative
}

.c-blue-center-wrapper *,
.c-blue-center-wrapper *::before,
.c-blue-center-wrapper *::after {
    box-sizing: border-box
}

.c-blue-center-content {
    max-width: 800px;
    z-index: 2;
    margin-bottom: 35px
}

.c-blue-center-title {
    font-size: 38px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 20px 0;
    line-height: 1.2;
    letter-spacing: -0.5px
}

.c-blue-center-title span {
    background: linear-gradient(90deg, #ffffff 0%, #5C9EBC 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent
}

.c-blue-center-subtitle {
    font-size: 18px;
    color: #dbe4e9;
    margin: 0 auto !important;
    font-weight: 400;
    line-height: 1.6;
    max-width: 600px
}

.c-blue-center-action {
    z-index: 2
}

.c-blue-center-btn {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 16px 40px;
    border-radius: 50px;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #ffffff;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s ease
}

.c-blue-center-btn:hover {
    border-color: #5C9EBC;
    color: #FFFFFF;
    background-color: transparent;
    transform: translateY(-5px);
    box-shadow: 0 5px 20px rgba(92, 158, 188, 0.25)
}

.c-blue-center-arrow {
    transition: transform 0.3s ease
}

.c-blue-center-btn:hover .c-blue-center-arrow {
    transform: translateX(5px)
}

@media (max-width:900px) {
    .c-blue-center-banner {
        padding: 40px 20px
    }

    .c-blue-center-title {
        font-size: 26px
    }

    .c-blue-center-subtitle {
        font-size: 16px;
        line-height: 1.5
    }

    .c-blue-center-btn {
        width: 100%;
        max-width: 320px;
        justify-content: center;
        padding: 14px 30px;
        font-size: 14px
    }
}

.hendy-footer-widgets-wrapper {
    font-size: 14px;
    padding-top: 70px !important;
    padding-bottom: 70px !important
}

.image-logo-footer-ads {
    margin-top: -20px;
    position: relative;
    z-index: 10
}

.image-logo-footer-ads img {
    max-width: 350px;
    margin-left: -50px
}

.hendy-header-button a.devis {
    background-color: #D32F2F !important;
    color: #ffffff !important
}

.hendy-header-button a.devis:hover {
    background-color: #59a8d9 !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2)
}

html,
body,
div,
p,
h1,
h2,
h3,
h4,
h5,
h6,
span,
a,
li,
td,
th,
button,
input,
textarea {
    font-family: "Roboto", Sans-serif !important
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Roboto", Sans-serif !important
}

.ads-hero-section {
    position: relative;
    width: 100%;
    min-height: 600px;
    overflow: hidden
}

.ads-main-wrapper {
    display: flex;
    min-height: 600px;
    width: 100%;
    position: relative;
    align-items: stretch !important
}

.ads-side {
    width: 50%;
    position: relative;
    display: flex;
    align-items: center
}

.ads-left-side {
    justify-content: center;
    z-index: 2
}

.ads-text-container {
    width: 100%;
    max-width: 650px;
    text-align: left;
    padding: 40px 50px 40px 40px;
    color: white;
    box-sizing: border-box
}

.ads-title,
.ads-description,
.ads-subtext {
    max-width: 100%
}

.ads-title {
    font-size: 40px !important;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 22px;
    color: #ffffff;
    max-width: 100%
}

.ads-description {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 25px;
    margin-top: -5px;
    max-width: 85%
}

.ads-subtext {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 35px;
    max-width: 80%
}

.ads-right-side {
    z-index: 1;
    display: block !important;
    height: auto !important;
    align-self: stretch
}

.truck-img-full {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100% !important;
    min-height: 100%;
    object-fit: cover;
    display: block
}

.ads-google-badge {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    background: white;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
    text-align: center;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    border: 5px solid #0d3b51;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 10px
}

.badge-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%
}

.badge-excellent {
    font-weight: 900;
    font-size: 18px;
    color: #000;
    margin: 0 !important
}

.badge-stars {
    color: #ffb400;
    font-size: 24px;
    margin: 2px 0 !important;
    line-height: 1
}

.badge-reviews {
    font-size: 12px;
    color: #333;
    margin: 0px !important;
    display: block
}

.badge-logo {
    width: 70px;
    margin-top: 8px;
    display: block
}

.ads-button {
    display: inline-flex;
    align-items: center;
    background: linear-gradient(180deg, #e34c4c 0%, #d32f2f 100%);
    color: white;
    text-decoration: none;
    padding: 12px 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(211, 47, 47, 0.4);
    transition: 0.3s
}

.ads-button:hover {
    background: #59a8d9 !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(89, 168, 217, 0.4) !important
}

.ads-button:hover svg,
.ads-button:hover .ads-btn-text,
.ads-button:hover .btn-top {
    color: #ffffff !important;
    fill: #ffffff !important
}

.btn-top {
    font-weight: 500;
    font-size: 16px;
    display: block
}

.ads-icon {
    width: 22px;
    height: 22px;
    margin-right: 12px
}

@media (max-width:768px) {

    .ads-hero-section,
    .ads-main-wrapper {
        min-height: auto !important;
        height: auto !important;
        display: flex !important;
        flex-direction: column !important
    }

    .ads-side.ads-left-side {
        order: 1 !important;
        width: 100% !important;
        display: block !important;
        padding: 40px 20px 20px 20px !important
    }

    .ads-text-container {
        padding: 0 !important;
        text-align: left !important;
        max-width: 100% !important
    }

    .ads-title {
        font-size: 30px !important;
        line-height: 1.2 !important;
        max-width: 100% !important
    }

    .ads-description,
    .ads-subtext {
        max-width: 100% !important;
        width: 100% !important
    }

    .ads-main-wrapper>a {
        order: 2 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        z-index: 999 !important;
        height: 140px !important;
        margin-bottom: -70px !important;
        text-decoration: none !important;
        position: relative !important
    }

    .ads-google-badge {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 140px !important;
        height: 140px !important;
        border-radius: 50% !important;
        background: white !important;
        border: 4px solid #0d3b51 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
        margin: 0 auto !important
    }

    .ads-side.ads-right-side {
        order: 3 !important;
        width: 100% !important;
        height: 300px !important;
        margin-top: 0 !important;
        display: block !important
    }

    .truck-img-full {
        position: relative !important;
        height: 300px !important;
        width: 100% !important;
        object-fit: cover !important;
        display: block !important;
        top: auto !important;
        left: auto !important
    }

    .badge-excellent {
        font-size: 13px !important;
        line-height: 1 !important
    }

    .badge-stars {
        font-size: 20px !important;
        margin: 4px 0 !important
    }

    .badge-logo {
        width: 60px !important;
        height: auto !important
    }
}

.editeur-styl {
    background-color: #ffffff;
    border-left: 6px solid #002670;
    padding: 30px;
    margin: 20px 0;
    border-radius: 0 20px 20px 0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    color: #002670 !important;
    line-height: 1.8
}

.editeur-styl p {
    color: #002670 !important;
    font-size: 15px;
    margin-bottom: 15px
}

.editeur-styl strong,
.editeur-styl b {
    color: #D32F2F !important;
    font-weight: 700
}

.editeur-styl a {
    color: #D32F2F !important;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: all 0.3s ease
}

.editeur-styl a:hover {
    border-bottom-color: #D32F2F;
    opacity: 0.8
}

@media (max-width:768px) {
    .editeur-styl {
        margin: 20px 15px !important;
        padding: 20px !important;
        border-left-width: 5px !important;
        border-radius: 0 8px 8px 0 !important
    }

    .editeur-styl p {
        font-size: 14px !important;
        line-height: 1.6 !important;
        margin-bottom: 12px !important
    }
}

.ads-problem-section {
    position: relative;
    padding: 80px 20px;
    background: #ffffff;
    overflow: hidden
}

.ads-problem-bg {
    position: absolute;
    inset: 0;
    z-index: 1
}

.ads-problem-blob-1 {
    position: absolute;
    top: 25%;
    right: 33%;
    width: 288px;
    height: 288px;
    background: var(--c-secondary);
    filter: blur(80px);
    opacity: 0.05
}

.ads-problem-blob-2 {
    position: absolute;
    bottom: 25%;
    left: 33%;
    width: 288px;
    height: 288px;
    background: #59a8d9;
    filter: blur(80px);
    opacity: 0.05
}

.ads-problem-container {
    position: relative;
    z-index: 10;
    max-width: 1280px;
    margin: 0 auto
}

.ads-problem-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center
}

.ads-problem-text {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.ads-alert-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: rgba(191, 38, 51, 0.1);
    border: 1px solid rgba(191, 38, 51, 0.2);
    border-radius: 50px;
    padding: 10px 20px;
    width: fit-content
}

.ads-alert-icon-wrapper {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--c-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: ads-alert-pulse 2s ease-in-out infinite
}

@keyframes ads-alert-pulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 1
    }

    50% {
        transform: scale(1.1);
        opacity: 0.8
    }
}

.ads-alert-icon {
    width: 18px;
    height: 18px;
    color: white
}

.ads-alert-text {
    color: var(--c-secondary);
    font-weight: bold;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.05em
}

.ads-problem-title {
    font-size: 42px;
    font-weight: bold;
    color: #0f172a;
    line-height: 1.2;
    margin: 0
}

.ads-problem-description {
    font-size: 20px;
    color: #475569;
    line-height: 1.6
}

.ads-text-dark {
    color: #0f172a;
    font-weight: bold
}

.ads-text-red {
    color: var(--c-secondary);
    font-weight: bold
}

.ads-problem-cta {
    background: var(--c-secondary);
    color: white !important;
    padding: 18px 35px;
    border-radius: 8px;
    font-weight: bold;
    font-size: 18px;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    transition: all 0.3s ease;
    box-shadow: 0 20px 40px rgba(191, 38, 51, 0.3)
}

.ads-problem-cta:hover {
    background: #a01f2a;
    transform: translateY(-3px);
    box-shadow: 0 25px 50px rgba(191, 38, 51, 0.5)
}

.ads-cta-icon {
    width: 22px;
    height: 22px
}

.ads-problem-images {
    position: relative;
    height: 600px
}

.ads-images-bg-glow {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(89, 168, 217, 0.1), rgba(191, 38, 51, 0.1));
    filter: blur(80px)
}

.ads-image-wrapper {
    position: absolute;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
    border: 5px solid white;
    transition: all 0.5s ease
}

.ads-image-1-wrapper {
    top: 0;
    left: 0;
    width: 75%;
    height: 55%;
    z-index: 10
}

.ads-image-2-wrapper {
    bottom: 0;
    right: 0;
    width: 75%;
    height: 55%;
    z-index: 20
}

.ads-image-badge {
    position: absolute;
    background: var(--c-secondary);
    color: white;
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: bold;
    font-size: 14px;
    z-index: 30
}

.ads-badge-1 {
    top: 15px;
    left: 15px
}

.ads-badge-2 {
    bottom: 15px;
    right: 15px;
    background: #59a8d9
}

.ads-problem-image {
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (max-width:1024px) {
    .ads-problem-grid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .ads-problem-text {
        text-align: center;
        align-items: center
    }

    .ads-problem-images {
        height: 450px;
        max-width: 600px;
        margin: 0 auto;
        width: 100%
    }

    .ads-problem-title {
        font-size: 32px;
        text-align: start
    }
}

@media (max-width:600px) {
    .ads-problem-cta {
        font-size: 15px !important
    }

    .ads-problem-description {
        text-align: start
    }

    .ads-problem-images {
        height: 350px
    }

    .ads-problem-title {
        font-size: 25px;
        text-align: start
    }

    .ads-problem-cta {
        width: 100%;
        justify-content: center
    }
}

.ads-risk-section {
    position: relative;
    padding: 6rem 0;
    overflow: hidden
}

.ads-risk-bg-image {
    position: absolute;
    inset: 0;
    z-index: 1
}

.ads-risk-bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom !important;
    position: absolute;
    top: 0;
    left: 0
}

@media (min-width:1024px) {
    .ads-risk-bg-image {
        clip-path: inset(0 0 0 0)
    }

    .ads-risk-bg-img {
        position: fixed
    }
}

.ads-risk-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.75), rgba(15, 23, 42, 0.5));
    z-index: 2
}

.ads-risk-overlay-blue {
    position: absolute;
    inset: 0;
    background: rgba(0, 61, 107, 0.2);
    z-index: 3
}

.ads-risk-decorative {
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none
}

.ads-risk-deco-blob-1 {
    position: absolute;
    top: 10%;
    right: 15%;
    width: 300px;
    height: 300px;
    background: var(--c-secondary);
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.1
}

.ads-risk-deco-blob-2 {
    position: absolute;
    bottom: 10%;
    left: 10%;
    width: 300px;
    height: 300px;
    background: #59a8d9;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.1
}

.ads-risk-container {
    position: relative;
    z-index: 10;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 1.5rem
}

.ads-risk-content {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

.ads-risk-title {
    font-size: 2.5rem;
    font-weight: 800;
    color: white;
    text-align: left;
    margin: 0;
    text-shadow: 0 5px 15px rgba(0, 0, 0, 0.5)
}

@media (max-width:768px) {
    .ads-risk-title {
        font-size: 2rem
    }
}

.ads-risk-cards {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.ads-risk-card {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 1rem;
    padding: 1.5rem;
    transition: all 0.3s ease
}

.ads-risk-card-inner {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem
}

.ads-risk-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: var(--c-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.ads-risk-icon {
    width: 24px;
    height: 24px;
    color: white
}

.ads-risk-card-text h3 {
    font-weight: bold;
    color: white;
    font-size: 1.25rem;
    margin: 0 0 0.5rem 0
}

.ads-risk-card-text p {
    color: rgba(255, 255, 255, 0.95);
    line-height: 1.6;
    margin: 0;
    font-size: 14px
}

.ads-risk-highlight {
    color: #59a8d9;
    font-weight: bold
}

.ads-risk-warning {
    background: linear-gradient(90deg, var(--c-secondary), #59a8d9);
    border-radius: 8px;
    padding: 1.5rem;
    text-align: center
}

.ads-risk-warning p {
    color: white;
    font-weight: 700;
    font-size: 1.15rem;
    margin: 0;
    text-align: left
}

.ads-risk-cta-section {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    text-align: left !important
}

.ads-risk-cta-text {
    color: white;
    font-size: 1.1rem;
    margin-bottom: 50px;
    text-align: left
}

.ads-risk-cta-btn {
    background: var(--c-secondary);
    color: white !important;
    padding: 1.25rem 2.5rem;
    border-radius: 8px;
    font-weight: 800;
    font-size: 1.25rem;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    width: fit-content;
    margin: 0;
    transition: 0.3s ease;
    box-shadow: 0 10px 25px rgba(191, 38, 51, 0.4)
}

.ads-risk-cta-btn:hover {
    background: #ffffff;
    color: var(--c-secondary) !important;
    transform: translateY(-3px)
}

.ads-risk-btn-icon {
    width: 24px;
    height: 24px
}

@media (max-width:768px) {
    .ads-risk-cta-text {
        color: white;
        font-size: 1.1rem;
        margin-bottom: 30px;
        text-align: left
    }

    .ads-risk-cta-btn {
        font-size: 15px !important
    }
}

.ads-pricing-section {
    position: relative;
    padding: 40px 0;
    background: #ffffff;
    overflow: hidden;
    font-family: "Roboto", Sans-serif !important
}

.ads-pricing-bg {
    position: absolute;
    inset: 0;
    z-index: 1
}

.ads-pricing-blob-1 {
    position: absolute;
    top: 33%;
    left: 25%;
    width: 384px;
    height: 384px;
    background: #59a8d9;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.05
}

.ads-pricing-blob-2 {
    position: absolute;
    bottom: 33%;
    right: 25%;
    width: 384px;
    height: 384px;
    background: var(--c-secondary);
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.05
}

.ads-pricing-container {
    position: relative;
    z-index: 10;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1.5rem
}

.ads-pricing-header {
    text-align: center;
    margin-bottom: 4rem
}

.ads-pricing-title {
    font-size: 3rem;
    font-weight: bold;
    color: #003d6b;
    margin-bottom: 1.5rem
}

.ads-pricing-subtitle {
    font-size: 1.25rem;
    max-width: 64rem;
    margin: 0 auto;
    line-height: 1.6
}

.ads-subtitle-highlight {
    color: #59a8d9;
    font-weight: bold;
    display: block
}

.ads-subtitle-secondary {
    color: #003d6b;
    font-weight: 600;
    display: block
}

.ads-pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
    margin-bottom: 4rem
}

.ads-pricing-card {
    position: relative;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 1.5rem;
    padding: 2.5rem 2rem;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    transition: all 0.4s ease;
    display: flex;
    flex-direction: column
}

.ads-pricing-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
    border-color: #59a8d9
}

.ads-pricing-card.ads-featured {
    border-color: var(--c-secondary);
    transform: scale(1.05);
    box-shadow: 0 25px 50px rgba(191, 38, 51, 0.15)
}

.ads-featured-badge {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--c-secondary);
    color: white;
    padding: 6px 20px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 1px
}

.ads-card-content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    height: 100%
}

.ads-card-top {
    text-align: center
}

.ads-card-icon-wrapper {
    display: inline-flex;
    width: 70px;
    height: 70px;
    border-radius: 1rem;
    background: linear-gradient(135deg, #59a8d9, #003d6b);
    align-items: center;
    justify-content: center;
    color: white;
    margin-bottom: 1.5rem
}

.ads-card-title {
    color: #003d6b;
    font-weight: bold;
    font-size: 1.1rem;
    margin-bottom: 1rem;
    min-height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center
}

.ads-card-price {
    font-size: 3rem;
    font-weight: 900;
    color: #003d6b;
    margin-bottom: 5px
}

.ads-card-ttc {
    font-size: 14px;
    color: #64748b;
    font-weight: 600
}

.ads-card-divider {
    height: 1px;
    background: #e2e8f0;
    margin: 10px 0
}

.ads-card-features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.ads-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #475569;
    font-size: 14px;
    text-align: left
}

.ads-feature-icon-wrapper {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #59a8d9;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px
}

.ads-feature-icon {
    width: 10px;
    height: 10px;
    color: white
}

.ads-pricing-cta-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem
}

.ads-pricing-cta-btn {
    background: var(--c-secondary);
    color: white !important;
    padding: 16px 30px;
    border-radius: 12px;
    font-weight: bold;
    font-size: 16px;
    text-decoration: none !important;
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.3);
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 12px
}

.ads-pricing-cta-btn i {
    font-size: 18px
}

.ads-pricing-cta-btn:hover {
    background: #a01f2a;
    transform: translateY(-3px)
}

.ads-btn-secondary-style {
    background: #003d6b
}

@media (max-width:768px) {
    .ads-pricing-header {
        text-align: left !important
    }

    .ads-pricing-title {
        text-align: left !important;
        font-size: 2.2rem
    }

    .ads-pricing-subtitle {
        text-align: left !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        font-size: 1.1rem
    }

    .ads-pricing-grid {
        grid-template-columns: 1fr;
        gap: 2rem
    }

    .ads-pricing-cta-btn {
        width: 100%;
        justify-content: center
    }
}

.ads-glass-section {
    position: relative;
    padding: 80px 20px;
    background-image: url('/wp-content/uploads/2026/02/CTA-URGENCE-bouchons-cannalisation.png');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 500px
}

.ads-glass-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 20, 40, 0.4);
    z-index: 1
}

.ads-glass-container {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto
}

.ads-glass-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 30px;
    padding: 60px;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.2)
}

.ads-glass-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px
}

.ads-glass-left {
    flex: 1
}

.ads-glass-title {
    color: #ffffff;
    font-size: 32px;
    font-weight: 800;
    margin: 0 0 5px 0
}

.ads-glass-location {
    color: #FFFFFF;
    font-size: 32px !important;
    font-weight: 800;
    margin: 0 0 20px 0
}

.ads-glass-urgency {
    color: #FFFFFF;
    font-size: 25px !important;
    font-weight: 600;
    margin: 0 0 20px 0
}

.ads-glass-desc {
    color: #f0f0f0;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 25px;
    max-width: 500px
}

.ads-glass-list {
    list-style: none;
    padding: 0;
    margin: 0
}

.ads-glass-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 12px
}

.ads-glass-list i {
    color: #59a8d9;
    font-size: 18px
}

.ads-glass-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 380px
}

.ads-glass-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 18px 30px;
    border-radius: 15px;
    font-weight: 700;
    font-size: 16px;
    text-decoration: none !important;
    transition: all 0.3s ease
}

.ads-btn-red {
    background-color: #cc2a36;
    color: #ffffff !important
}

.ads-btn-red:hover {
    background-color: #e0323f;
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(204, 42, 54, 0.4)
}

.ads-btn-grey {
    background-color: rgba(255, 255, 255, 0.2);
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.4)
}

.ads-btn-grey:hover {
    background-color: rgba(255, 255, 255, 0.3);
    border-color: #ffffff;
    transform: translateY(-3px)
}

@media (max-width:991px) {
    .ads-glass-content {
        flex-direction: column;
        text-align: left !important
    }

    .ads-glass-left {
        display: flex;
        flex-direction: column;
        align-items: flex-start !important
    }

    .ads-glass-right {
        min-width: 100%;
        width: 100%
    }

    .ads-glass-card {
        padding: 40px 25px
    }

    .ads-glass-title,
    .ads-glass-location,
    .ads-glass-urgency,
    .ads-glass-desc,
    .ads-glass-list li {
        text-align: left !important;
        width: 100%
    }

    .ads-glass-list li {
        justify-content: flex-start !important
    }

    .ads-glass-title,
    .ads-glass-location {
        font-size: 26px;
        line-height: 1.2 !important
    }
}

.ads-how-section {
    position: relative;
    padding: 80px 30px;
    background-color: #ffffff;
    overflow: hidden
}

.ads-how-container {
    position: relative;
    z-index: 10;
    max-width: 1200px;
    margin: 0 auto
}

.ads-how-bg-blob {
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.1;
    z-index: 1
}

.ads-blob-left {
    top: 10%;
    left: -5%;
    background: #59a8d9
}

.ads-blob-right {
    bottom: 10%;
    right: -5%;
    background: var(--c-secondary)
}

.ads-how-header {
    text-align: center;
    margin-bottom: 80px
}

.ads-how-title {
    font-size: 42px;
    font-weight: 800;
    color: #003d6b;
    line-height: 1.2;
    margin: 0 0 20px 0
}

.ads-how-blue {
    color: #59a8d9
}

.ads-how-subtitle {
    font-size: 18px;
    color: #475569;
    font-weight: 500
}

.ads-how-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px
}

.ads-how-card {
    position: relative;
    background: #ffffff;
    border-radius: 20px;
    padding: 40px 25px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
    border: 2px solid #f1f5f9;
    transition: all 0.3s ease
}

.ads-how-card:hover {
    transform: translateY(-10px);
    border-color: #59a8d9
}

.ads-how-card:hover .ads-how-icon-box i {
    color: #59a8d9
}

.ads-how-number {
    position: absolute;
    top: -15px;
    left: -15px;
    width: 45px;
    height: 45px;
    background: linear-gradient(135deg, #2c6896, #003d6b);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 18px;
    box-shadow: 0 10px 20px rgba(0, 61, 107, 0.2)
}

.ads-how-icon-box {
    width: 60px;
    height: 60px;
    background-color: #f1f5f9;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px
}

.ads-how-icon-box i {
    font-size: 24px;
    color: #003d6b;
    transition: color 0.3s ease
}

.ads-how-card-title {
    font-size: 19px;
    font-weight: 800;
    color: #003d6b;
    margin: 0 0 15px 0;
    line-height: 1.4
}

.ads-how-card-text {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin: 0
}

@media (max-width:1024px) {
    .ads-how-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px
    }
}

@media (max-width:640px) {
    .ads-how-header {
        text-align: left !important;
        margin-bottom: 40px
    }

    .ads-how-grid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .ads-how-title {
        font-size: 26px
    }

    .ads-how-card {
        padding: 35px 25px
    }
}

.c-install-dark-section {
    font-family: "Roboto", Sans-serif !important;
    padding: 0px 20px
}

.c-install-dark-section *,
.c-install-dark-section *::before,
.c-install-dark-section *::after {
    box-sizing: border-box
}

.c-install-dark-header {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 50px auto
}

.c-install-dark-title {
    font-size: 38px;
    font-weight: 800;
    color: #0A364E;
    margin: 0;
    line-height: 1.2
}

.c-install-dark-title span {
    color: #5C9EBC
}

.c-install-dark-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1100px;
    margin: 0 auto
}

.c-install-dark-card {
    background: linear-gradient(145deg, #0A364E 0%, #062b3d 100%);
    border: 1px solid rgba(92, 158, 188, 0.2);
    border-radius: 20px;
    padding: 40px;
    position: relative;
    overflow: hidden;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: all 0.4s ease;
    box-shadow: 0 15px 40px rgba(10, 54, 78, 0.2)
}

.c-install-dark-card.full-width {
    grid-column: span 2
}

.c-install-dark-card:hover {
    transform: translateY(-5px);
    border-color: #5C9EBC;
    box-shadow: 0 25px 50px rgba(10, 54, 78, 0.3)
}

.c-install-bg-icon {
    position: absolute;
    top: -20px;
    right: -10px;
    font-size: 150px;
    color: rgba(255, 255, 255, 0.03);
    transform: rotate(10deg);
    transition: all 0.5s ease;
    z-index: 0
}

.c-install-dark-card:hover .c-install-bg-icon {
    color: rgba(92, 158, 188, 0.1);
    transform: rotate(0deg) scale(1.1)
}

.c-install-dark-content {
    position: relative;
    z-index: 1
}

.c-install-big-title {
    font-size: 42px;
    font-weight: 800;
    background: linear-gradient(90deg, #ffffff 0%, #5C9EBC 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 10px;
    display: block;
    line-height: 1.1
}

.c-install-h3 {
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 15px 0;
    text-transform: uppercase;
    letter-spacing: 1px
}

.c-install-dark-text {
    font-size: 15px;
    color: #dbe4e9;
    line-height: 1.6;
    margin: 0 0 20px 0;
    max-width: 90%
}

@media (max-width:900px) {
    .c-install-dark-grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .c-install-dark-card.full-width {
        grid-column: span 1
    }

    .c-install-dark-card {
        min-height: auto;
        padding: 30px 25px
    }

    .c-install-big-title {
        font-size: 28px
    }

    .c-install-h3 {
        font-size: 18px;
        margin-bottom: 10px
    }

    .c-install-dark-text {
        font-size: 14px;
        max-width: 100%;
        margin-bottom: 0
    }

    .c-install-bg-icon {
        font-size: 100px;
        top: -10px;
        right: -10px
    }

    .c-install-dark-section {
        padding: 40px 20px
    }
}

.ads-f-section {
    position: relative;
    padding: 80px 20px;
    background-color: #ffffff;
    font-family: "Roboto", Sans-serif !important;
    overflow: hidden
}

.ads-f-container {
    position: relative;
    z-index: 10;
    max-width: 900px;
    margin: 0 auto
}

.ads-f-bg-glow {
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.12;
    z-index: 1;
    pointer-events: none
}

.ads-f-glow-blue {
    top: 10%;
    left: -5%;
    background: #59a8d9
}

.ads-f-glow-red {
    bottom: 10%;
    right: -5%;
    background: var(--c-secondary)
}

.ads-f-header {
    text-align: center;
    margin-bottom: 60px
}

.ads-f-main-title {
    font-size: clamp(24px, 5vw, 42px);
    font-weight: 800;
    color: #003d6b;
    line-height: 1.2;
    margin: 0
}

.ads-f-blue-text {
    color: #59a8d9
}

.ads-f-list {
    display: flex;
    flex-direction: column;
    gap: 18px
}

.ads-f-item {
    background: #ffffff;
    border-radius: 20px;
    border: 1.5px solid #e2e8f0;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.03);
    transition: all 0.3s ease;
    cursor: pointer;
    overflow: hidden
}

.ads-f-item.ads-f-active {
    border-color: #59a8d9;
    background: linear-gradient(180deg, #ebf5fb 0%, #ffffff 100%);
    box-shadow: 0 15px 35px rgba(89, 168, 217, 0.15)
}

.ads-f-question {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 25px 30px;
    z-index: 2
}

.ads-f-icon-circle {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #cbd5e1 0%, #94a3b8 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.4s ease, background 0.3s ease
}

.ads-f-icon-circle i {
    color: #ffffff;
    font-size: 14px
}

.ads-f-text {
    font-size: 18px;
    font-weight: 700;
    color: #2c6896;
    margin: 0;
    flex: 1
}

.ads-f-item.ads-f-active .ads-f-icon-circle {
    background: linear-gradient(135deg, #2c6896 0%, #003d6b 100%)
}

.ads-f-item.ads-f-active .ads-f-icon-circle i {
    transform: rotate(-90deg)
}

.ads-f-answer-container {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1)
}

.ads-f-answer-content {
    padding: 0 30px 30px 90px
}

.ads-f-line {
    height: 1px;
    background-color: #e2e8f0;
    margin-bottom: 20px;
    width: 100%
}

.ads-f-description {
    font-size: 15px;
    color: #475569;
    line-height: 1.7;
    margin: 0
}

@media (max-width:640px) {
    .ads-f-main-title {
        font-weight: 800;
        color: #003d6b;
        line-height: 1.2;
        margin: 0;
        text-align: left;
        font-size: 26px !important
    }

    .ads-f-question {
        padding: 20px;
        gap: 15px
    }

    .ads-f-text {
        font-size: 16px
    }

    .ads-f-answer-content {
        padding: 0 20px 20px 75px
    }
}

.ads-v2-main-wrapper {
    --v2-navy: #05324D;
    --v2-blue: #67B1E1;
    --v2-red: #D32F2F;
    position: relative;
    width: 100%;
    min-height: 700px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-image: url('/wp-content/uploads/2025/12/debouchage-inspection-camera-canalisation.png');
    background-size: cover;
    background-position: center right
}

.ads-v2-main-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(5, 50, 77, 0.98) 0%, rgba(5, 50, 77, 0.85) 45%, rgba(5, 50, 77, 0.2) 100%);
    z-index: 1
}

.ads-v2-container {
    position: relative;
    z-index: 2;
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
    gap: 50px;
    align-items: center;
    width: 100%
}

.ads-v2-col-left {
    flex: 1.1;
    color: white
}

.ads-v2-title {
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
    background: linear-gradient(135deg, #ffffff 30%, var(--v2-blue) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.ads-v2-hero-desc {
    font-size: 19px;
    line-height: 1.5;
    margin: 15px 0;
    font-weight: 600;
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3)
}

.ads-v2-services-box {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 20px 25px;
    border-radius: 12px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 30px;
    max-width: 550px;
    border: 1px solid rgba(255, 255, 255, 0.2)
}

.ads-v2-google-chip {
    display: inline-flex;
    align-items: center;
    background: #E8ECEF;
    border: 1px solid #CFD8DC;
    padding: 8px 18px;
    border-radius: 14px;
    gap: 12px;
    margin-top: 30px
}

.ads-v2-g-left {
    display: flex;
    align-items: center;
    gap: 8px
}

.ads-v2-g-brand {
    font-weight: 800;
    font-size: 18px;
    color: #1A1F2C
}

.ads-v2-g-sep {
    width: 1px;
    height: 25px;
    background: #B0BEC5
}

.ads-v2-g-stars-row {
    color: #FFB300;
    font-size: 14px
}

.ads-v2-g-rating {
    color: #374151;
    font-size: 12px;
    font-weight: 600
}

.ads-v2-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--v2-red);
    color: white;
    padding: 14px 30px;
    border-radius: 8px;
    font-weight: 800;
    text-decoration: none;
    transition: 0.3s;
    margin-top: 25px
}

.ads-v2-cta-btn:hover {
    background: var(--v2-blue) !important;
    transform: translateY(-2px);
    color: #ffffff !important
}

.ads-v2-col-right {
    flex: 0.9;
    max-width: 420px;
    width: 100%
}

.ads-v2-quiz-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 30px;
    border-radius: 25px;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2)
}

.ads-v2-quiz-intro {
    text-align: center;
    font-size: 16px !important;
    color: #fff;
    margin: 0 0 15px;
    font-weight: 700
}

.ads-v2-progress-track {
    height: 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    margin-bottom: 25px;
    overflow: hidden
}

.ads-v2-progress-fill {
    height: 100%;
    width: 33%;
    background: linear-gradient(90deg, var(--v2-blue) 50%, var(--v2-red) 100%);
    transition: 0.4s
}

.ads-v2-step {
    display: none
}

.ads-v2-step.ads-v2-active {
    display: block;
    animation: adsV2Fade 0.3s ease
}

.ads-v2-step-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px
}

.ads-v2-step-num {
    background: var(--v2-red);
    color: white;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800
}

.ads-v2-step-title {
    font-size: 16px;
    font-weight: 800;
    color: #fff
}

.ads-v2-opt-list {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ads-v2-option {
    background: white;
    padding: 12px 15px;
    border-radius: 15px;
    border: none;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    transition: 0.2s;
    width: 100%;
    text-align: left;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04)
}

.ads-v2-option:hover {
    transform: translateX(5px)
}

.ads-v2-icon-circle {
    width: 48px;
    height: 48px;
    background: #e0f2fe;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center
}

.ads-v2-icon-circle img {
    width: 48px;
    height: 48px
}

.ads-v2-opt-label {
    flex: 1;
    font-weight: 700;
    font-size: 14px;
    color: #111
}

.ads-v2-chevron {
    color: #ccc;
    font-size: 12px
}

.ads-v2-cf7-container .wpcf7 p {
    margin: 0 !important;
    padding: 0 !important
}

.ads-v2-cf7-container label {
    display: block !important;
    color: #fff !important;
    font-weight: 700;
    margin: 10px 0 5px !important;
    font-size: 13px
}

.ads-v2-cf7-container input:not([type="submit"]),
.ads-v2-cf7-container select {
    width: 100% !important;
    padding: 10px !important;
    border-radius: 8px !important;
    border: 1.5px solid rgba(255, 255, 255, 0.3) !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    font-size: 14px !important
}

.ads-v2-cf7-container input[type="submit"] {
    width: 100% !important;
    background: var(--v2-red) !important;
    color: #fff !important;
    border: none !important;
    padding: 14px !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    cursor: pointer;
    margin-top: 15px !important;
    transition: 0.3s
}

.ads-v2-cf7-container input[type="submit"]:hover {
    background: var(--v2-blue) !important
}

.ads-v2-bottom-bar {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    gap: 20px;
    width: 100%;
    max-width: 1200px;
    padding: 0 20px 50px;
    flex-wrap: wrap
}

.ads-v2-bar-item {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.1);
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.2)
}

.ads-v2-bar-icon {
    width: 30px;
    height: 30px;
    background: var(--v2-red);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px
}

.ads-v2-bar-item span {
    color: #fff;
    font-weight: 800;
    font-size: 15px
}

@keyframes adsV2Fade {
    from {
        opacity: 0;
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@media (max-width:968px) {
    .ads-v2-container {
        flex-direction: column;
        text-align: left
    }

    .ads-v2-col-left,
    .ads-v2-col-right {
        width: 100%;
        max-width: 100%
    }

    .ads-v2-main-wrapper {
        min-height: auto;
        padding-top: 40px
    }

    .ads-v2-bottom-bar {
        flex-direction: column;
        align-items: flex-start;
        padding-bottom: 30px
    }

    .ads-v2-bar-item {
        width: 100%
    }
}

input.devis {
    border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important
}

button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button,
.btn {
    border-radius: 8px !important
}

.elementor-button,
.elementor-button-wrapper a {
    border-radius: 8px !important
}

.wpcf7-submit,
.wpcf7 input[type="submit"] {
    border-radius: 8px !important
}

.wp-block-button__link {
    border-radius: 8px !important
}

.ads-h-cta-btn,
.ads-glass-btn,
.ads-urg-btn,
.ads-pricing-cta-btn,
.ads-final-cta-button {
    border-radius: 8px !important
}

.wpcf7-form-control:not(.wpcf7-submit),
.wpcf7-text,
.wpcf7-tel,
.wpcf7-email,
.wpcf7-number,
.wpcf7-select,
.wpcf7-textarea {
    border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important
}

.wpcf7 input:not([type="submit"]),
.wpcf7 select,
.wpcf7 textarea {
    border-radius: 8px !important
}

.ads-split-compact {
    background-color: #ffffff
}

.ads-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center
}

.ads-text-side {
    display: flex;
    flex-direction: column;
    gap: 18px
}

.ads-intro-card {
    background-color: #fff5f5;
    border-left: 5px solid var(--c-secondary);
    padding: 20px;
    border-radius: 12px;
    display: flex;
    gap: 15px;
    box-shadow: 0 5px 15px rgba(191, 38, 51, 0.05)
}

.ads-intro-card i {
    color: var(--c-secondary);
    font-size: 20px;
    margin-top: 3px
}

.ads-intro-text {
    color: #002670;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    text-transform: none !important
}

.ads-h2-main {
    color: var(--c-primary);
    font-size: 35px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    margin: 5px 0 -10px 0 !important
}

.ads-info-card {
    background-color: #f0f7ff;
    padding: 25px 30px;
    border-radius: 20px;
    border: 1px solid rgba(9, 87, 136, 0.08)
}

.ads-p-text {
    color: #002670;
    font-size: 16px;
    line-height: 1.7;
    margin: 0
}

.ads-cta-row {
    display: flex;
    gap: 15px;
    margin-top: 5px
}

.ads-btn-red {
    background-color: var(--c-secondary);
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 800;
    font-size: 14px;
    padding: 18px 25px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    white-space: nowrap;
    flex: 1;
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2)
}

.ads-btn-red:hover {
    transform: translateY(-3px);
    filter: brightness(1.1);
    box-shadow: 0 15px 30px rgba(191, 38, 51, 0.3)
}

.ads-img-side {
    position: relative !important;
    display: block !important;
    height: 500px !important;
    width: 100% !important
}

.ads-img-stack {
    position: relative !important;
    width: 100% !important;
    height: 100% !important
}

.ads-img-stack img {}

.img-furet {
    width: 75% !important;
    height: 70% !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1 !important
}

.img-wc {
    width: 75% !important;
    height: 70% !important;
    bottom: 0 !important;
    right: 0 !important;
    z-index: 2 !important
}

.ads-img-stack img:hover {
    transform: scale(1.1);
    z-index: 10;
    box-shadow: 0 25px 60px rgba(0, 38, 112, 0.25)
}

@media (max-width:768px) {
    .ads-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important
    }

    .ads-img-side {
        order: -1 !important;
        height: auto !important;
        min-height: 280px !important
    }

    .ads-img-stack {
        height: 280px !important;
        display: flex !important;
        justify-content: center !important
    }

    .img-wc {
        display: none !important
    }

    .img-furet {
        position: relative !important;
        width: 100% !important;
        max-width: 450px !important;
        height: 100% !important;
        top: 0 !important;
        left: 0 !important;
        margin: 0 auto !important;
        display: block !important
    }

    .ads-cta-row {
        flex-direction: column !important;
        gap: 12px !important
    }

    .ads-btn-red {
        width: 100% !important;
        flex: none !important;
        white-space: normal !important
    }

    .ads-h2-main {
        font-size: 26px !important;
        text-align: left !important
    }

    .ads-info-card {
        padding: 20px !important
    }
}

.bento-ui-section {
    padding: 0px 0px;
    background-color: var(--c-bg)
}

.bento-ui-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    margin: 0 auto
}

.bento-ui-card {
    background-color: var(--c-bg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    border: 1px solid rgba(0, 84, 136, 0.08);
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.bento-ui-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2);
    border-color: rgba(191, 38, 51, 0.1)
}

.bento-ui-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--c-secondary);
    transition: width 0.4s ease
}

.bento-ui-card:hover::after {
    width: 100%
}

.bento-info-card {
    grid-column: 1 / -1;
    background-color: var(--c-bg-light);
    padding: 35px;
    flex-direction: row;
    align-items: center;
    gap: 30px;
    border: none
}

.info-icon-wrapper {
    min-width: 60px;
    height: 60px;
    background-color: var(--c-primary-dark);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease
}

.info-icon-wrapper i {
    font-size: 28px;
    color: #fff
}

.bento-info-card:hover .info-icon-wrapper {
    background-color: var(--c-secondary);
    transform: rotate(360deg) scale(1.1)
}

.bento-ui-visual {
    width: 100%;
    height: 230px;
    overflow: hidden
}

.bento-ui-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.bento-ui-card:hover .bento-ui-visual img {
    transform: scale(1.08)
}

.bento-ui-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.bento-ui-h3 {
    color: var(--c-primary-dark);
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 15px 0;
    line-height: 1.2
}

.bento-ui-text {
    color: var(--c-text);
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

.bento-link {
    color: var(--c-secondary);
    text-decoration: none;
    font-weight: 700;
    position: relative;
    transition: color 0.3s ease
}

.bento-link::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--c-secondary);
    transform: scaleX(0.2);
    transform-origin: left;
    transition: transform 0.3s ease
}

.bento-link:hover::after {
    transform: scaleX(1)
}

@media (max-width:768px) {
    .bento-ui-section {
        padding: 40px 15px !important
    }

    .bento-ui-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .bento-info-card {
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
        padding: 25px 20px !important;
        gap: 15px !important
    }

    .info-icon-wrapper {
        margin: 0 !important
    }

    .bento-ui-content {
        padding: 25px 20px !important;
        text-align: left !important
    }

    .bento-ui-h3 {
        font-size: 1.2rem !important;
        text-align: left !important;
        margin-bottom: 10px !important
    }

    .bento-ui-text {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .bento-ui-visual {
        height: 200px !important
    }
}

.bento-ads-section {
    padding: 0px 20px;
    background-color: var(--c-bg)
}

.bento-ads-container {
    max-width: 1200px;
    margin: 0 auto
}

.bento-ads-header {
    text-align: center;
    margin-bottom: 40px
}

.bento-ads-header h2 {
    color: var(--c-primary-dark);
    font-size: 34px;
    font-weight: 800;
    margin: 0;
    line-height: 1.2
}

.bento-ads-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px
}

.bento-ads-intro {
    grid-column: span 2;
    background-color: var(--c-bg-light);
    padding: 35px;
    border-radius: 24px;
    display: flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 10px
}

.bento-ads-intro-icon {
    min-width: 60px;
    height: 60px;
    background-color: var(--c-primary-dark);
    color: var(--c-bg);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    transition: all 0.5s ease
}

.bento-ads-intro:hover .bento-ads-intro-icon {
    background-color: var(--c-secondary);
    transform: rotate(360deg) scale(1.1)
}

.bento-ads-card {
    background-color: var(--c-bg);
    border-radius: 24px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 84, 136, 0.1);
    box-shadow: 0 10px 30px rgba(0, 38, 112, 0.05);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative
}

.bento-ads-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 38, 112, 0.12);
    border-color: var(--c-primary-dark)
}

.bento-ads-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--c-secondary);
    transition: width 0.4s ease
}

.bento-ads-card:hover::after {
    width: 100%
}

.bento-ads-visual {
    width: 100%;
    height: 250px;
    overflow: hidden
}

.bento-ads-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.bento-ads-card:hover .bento-ads-visual img {
    transform: scale(1.08)
}

.bento-ads-content {
    padding: 30px;
    flex-grow: 1
}

.bento-ads-content h3 {
    color: var(--c-primary-dark);
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 15px 0
}

.bento-ads-content p {
    color: var(--c-text);
    font-size: 15px;
    line-height: 1.6;
    margin: 0
}

@media (max-width:991px) {
    .bento-ads-grid {
        grid-template-columns: 1fr
    }

    .bento-ads-intro {
        grid-column: span 1;
        flex-direction: column;
        text-align: center
    }

    .bento-ads-content h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

@media (max-width:768px) {
    .bento-ads-header h2 {
        font-size: 26px;
        text-align: left
    }

    .bento-ads-header {
        text-align: left
    }

    .bento-ads-visual {
        height: 200px
    }
}

.ads-pricing-section {
    position: relative;
    padding: 40px 0px !important;
    background-color: #ffffff
}

.ads-pricing-container {
    max-width: 1200px;
    margin: 0 auto
}

.ads-pricing-header {
    text-align: center;
    margin-bottom: 30px
}

.ads-pricing-title {
    color: var(--c-primary);
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 10px
}

.ads-pricing-subtitle {
    color: var(--c-text);
    font-size: 15px;
    opacity: 0.9
}

.ads-pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 30px
}

.ads-pricing-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 20px 25px;
    border: 1px solid rgba(0, 38, 112, 0.08);
    box-shadow: 0 10px 30px rgba(0, 38, 112, 0.04);
    display: flex;
    flex-direction: column;
    transition: all 0.4s ease
}

.ads-pricing-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 38, 112, 0.08);
    border-color: var(--c-primary)
}

.ads-featured {
    border: 2px solid var(--c-primary);
    position: relative
}

.ads-featured-badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--c-secondary);
    color: #fff;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px
}

.ads-card-top {
    text-align: center;
    margin-bottom: 10px
}

.ads-card-icon-wrapper {
    width: 45px;
    height: 45px;
    background: rgba(9, 87, 136, 0.05);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-primary);
    margin: 0 auto 10px auto
}

.ads-card-title {
    color: var(--c-primary);
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 10px;
    min-height: auto;
    text-transform: uppercase
}

.ads-card-price-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center
}

.ads-card-price {
    font-size: 38px;
    font-weight: 900;
    color: var(--c-text);
    line-height: 1
}

.ads-card-ttc {
    font-size: 12px;
    font-weight: 700;
    color: var(--c-secondary);
    margin-top: 2px
}

.ads-card-divider {
    height: 1px;
    background: rgba(0, 38, 112, 0.1);
    margin: 15px 0
}

.ads-card-features {
    list-style: none;
    padding: 0;
    margin: 0
}

.ads-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 8px
}

.ads-feature-icon-wrapper {
    margin-top: 2px;
    color: #5ea8d9;
    font-size: 13px
}

.ads-feature-text {
    color: var(--c-text);
    font-size: 14px;
    line-height: 1.3
}

.ads-pricing-cta-section {
    display: flex;
    justify-content: center;
    gap: 15px
}

.ads-pricing-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    border-radius: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
    color: #fff;
    font-size: 14px;
    background: var(--c-primary)
}

.ads-pricing-cta-btn:last-child {
    background: var(--c-secondary)
}

@media (max-width:991px) {
    .ads-pricing-grid {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto 20px auto
    }
}

.ads-expert-v3 {
    padding: 0px 20px !important
}

.ads-container-v3 {
    max-width: 1100px;
    margin: 0 auto
}

.ads-h2-center {
    text-align: center;
    color: var(--c-primary);
    font-size: 34px;
    font-weight: 800;
    margin-bottom: 50px;
    letter-spacing: -0.5px
}

.ads-grid-v3 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px
}

.ads-card-v3 {
    background: var(--c-bg);
    padding: 35px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 38, 112, 0.05);
    display: flex;
    gap: 20px;
    border: 1px solid rgba(0, 38, 112, 0.05);
    transition: all 0.3s ease
}

.ads-card-v3:hover {
    transform: translateY(-8px);
    border-color: var(--c-primary)
}

.ads-icon-box-v3 {
    width: 60px;
    height: 60px;
    background: rgba(9, 87, 136, 0.08);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-primary);
    font-size: 26px;
    flex-shrink: 0;
    transition: all 0.4s ease
}

.ads-card-v3:hover .ads-icon-box-v3 {
    background: var(--c-primary);
    color: var(--c-bg);
    transform: rotateY(180deg)
}

.ads-h3-v3 {
    color: var(--c-primary);
    font-size: 19px;
    font-weight: 800;
    margin-bottom: 12px;
    line-height: 1.3
}

.ads-p-v3 {
    color: #4a5568;
    font-size: 14.5px;
    line-height: 1.6;
    margin: 0
}

.ads-banner-footer {
    grid-column: span 2;
    background: linear-gradient(135deg, var(--c-text) 0%, #001a4d 100%);
    border-radius: 20px;
    padding: 40px;
    text-align: center;
    box-shadow: 0 15px 45px rgba(0, 38, 112, 0.2);
    margin-top: 10px
}

.ads-footer-text {
    color: white;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
    margin: 0 auto;
    max-width: 850px
}

.ads-phone-blink {
    color: var(--c-accent);
    text-decoration: none;
    font-weight: 800;
    font-size: 22px;
    display: inline-block;
    margin: 0 5px;
    animation: ads-soft-pulse 2.5s infinite ease-in-out
}

@keyframes ads-soft-pulse {

    0%,
    100% {
        opacity: 1
    }

    50% {
        opacity: 0.5;
        transform: scale(1.05)
    }
}

@media (max-width:768px) {
    .ads-expert-v3 {
        padding: 40px 15px !important
    }

    .ads-grid-v3 {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .ads-card-v3 {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 30px 25px !important;
        border-left: 5px solid var(--c-primary) !important;
        border-radius: 15px !important;
        position: relative !important;
        overflow: hidden !important;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05) !important
    }

    .ads-card-v3:hover {
        transform: none !important
    }

    .ads-card-v3:hover .ads-icon-box-v3 {
        background: rgba(9, 87, 136, 0.08) !important;
        color: var(--c-primary) !important;
        transform: none !important
    }

    .ads-icon-box-v3 {
        width: 50px !important;
        height: 50px !important;
        background: rgba(9, 87, 136, 0.08) !important;
        color: var(--c-primary) !important;
        border-radius: 10px !important;
        margin-bottom: 20px !important;
        transform: none !important
    }

    .ads-h3-v3 {
        font-size: 20px !important;
        line-height: 25px !important;
        margin-bottom: 15px !important
    }

    .ads-p-v3 {
        font-size: 15px !important;
        color: #002670 !important;
        line-height: 1.6 !important
    }

    .ads-card-body {
        position: relative;
        z-index: 1
    }
}

.dm-dx-root {
    background-color: var(--c-bg);
    position: relative;
    overflow: hidden;
    padding: 0px 0px
}

.dm-dx-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

.dm-dx-root a:hover {
    color: var(--c-primary);
    border-color: var(--c-primary)
}

.dm-dx-wrap {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

.dm-dx-card {
    background: var(--c-bg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -5px rgba(9, 87, 136, 0.1);
    border: 1px solid var(--c-border);
    display: grid;
    grid-template-columns: 1fr;
    transition: transform .4s, box-shadow .4s
}

.dm-dx-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 50px -10px rgba(9, 87, 136, 0.15)
}

.dm-dx-img {
    position: relative;
    min-height: 280px;
    overflow: hidden
}

.dm-dx-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s cubic-bezier(.4, 0, .2, 1)
}

.dm-dx-card:hover .dm-dx-img img {
    transform: scale(1.05)
}

.dm-dx-img-pill {
    position: absolute;
    bottom: 16px;
    left: 16px;
    z-index: 2;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-radius: 50px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(9, 87, 136, 0.1)
}

.dm-dx-img-pill-dot {
    width: 8px;
    height: 8px;
    background: #22c55e;
    border-radius: 50%;
    animation: dm-dx-blink 2s infinite
}

@keyframes dm-dx-blink {

    0%,
    100% {
        opacity: 1
    }

    50% {
        opacity: .4
    }
}

.dm-dx-img-pill-txt {
    font-size: 12px;
    font-weight: 700;
    color: var(--c-primary);
    text-transform: uppercase
}

.dm-dx-body {
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.dm-dx-overline {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px
}

.dm-dx-overline-bar {
    width: 32px;
    height: 4px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--c-secondary), var(--c-primary))
}

.dm-dx-overline-txt {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--c-primary)
}

.dm-dx-title {
    color: var(--c-primary);
    font-size: 26px;
    font-weight: 900;
    line-height: 1.2;
    margin-bottom: 14px
}

.dm-dx-title em {
    font-style: normal;
    color: var(--c-secondary)
}

.dm-dx-desc {
    color: var(--c-text);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 28px;
    padding-bottom: 28px;
    border-bottom: 1px solid var(--c-border);
    font-weight: 400
}

.dm-dx-features {
    display: flex;
    flex-direction: column;
    gap: 0
}

.dm-dx-feat-row {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px 0;
    border-bottom: 1px solid var(--c-border);
    transition: all .3s
}

.dm-dx-feat-row:last-child {
    border-bottom: none;
    padding-bottom: 0
}

.dm-dx-feat-row:hover {
    padding-left: 6px
}

.dm-dx-feat-num {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 900;
    flex-shrink: 0;
    transition: all .35s
}

.dm-dx-feat-num-red {
    background: rgba(191, 38, 51, 0.08);
    color: var(--c-secondary);
    border: 1.5px solid rgba(191, 38, 51, 0.15)
}

.dm-dx-feat-row:hover .dm-dx-feat-num-red {
    background: var(--c-secondary);
    color: #fff;
    border-color: var(--c-secondary)
}

.dm-dx-feat-num-blue {
    background: rgba(9, 87, 136, 0.08);
    color: var(--c-primary);
    border: 1.5px solid rgba(9, 87, 136, 0.15)
}

.dm-dx-feat-row:hover .dm-dx-feat-num-blue {
    background: var(--c-primary);
    color: #fff;
    border-color: var(--c-primary)
}

.dm-dx-feat-info h3 {
    font-size: 20px !important;
    font-weight: 800;
    color: var(--c-primary);
    margin-bottom: 6px;
    line-height: 1.3;
    transition: color .3s
}

.dm-dx-feat-row:hover .dm-dx-feat-info h3 {
    color: var(--c-secondary)
}

.dm-dx-feat-info p {
    font-size: 13px;
    color: var(--c-text);
    line-height: 1.6
}

.dm-dx-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 24px
}

.dm-dx-stat {
    background: #f8fafc;
    border: 1px solid var(--c-border);
    border-radius: 16px;
    padding: 20px;
    text-align: center;
    transition: all .35s
}

.dm-dx-stat:hover {
    transform: translateY(-3px);
    background: #fff;
    box-shadow: 0 10px 30px rgba(9, 87, 136, 0.1);
    border-color: var(--c-primary)
}

.dm-dx-stat-num {
    font-size: 24px;
    font-weight: 900;
    color: var(--c-primary);
    margin-bottom: 4px
}

.dm-dx-stat-num span {
    color: var(--c-secondary)
}

.dm-dx-stat-label {
    font-size: 11px;
    font-weight: 700;
    color: var(--c-text);
    opacity: 0.8;
    text-transform: uppercase;
    letter-spacing: .8px
}

@media(min-width:768px) {
    .dm-dx-root {
        padding: 80px 30px
    }

    .dm-dx-card {
        grid-template-columns: 1fr 1.2fr
    }

    .dm-dx-img {
        min-height: auto
    }

    .dm-dx-body {
        padding: 40px 36px
    }

    .dm-dx-title {
        font-size: 30px
    }

    .dm-dx-desc {
        font-size: 15px
    }

    .dm-dx-feat-info h3 {
        font-size: 20px
    }

    .dm-dx-feat-info p {
        font-size: 14px
    }
}

@media(min-width:1024px) {
    .dm-dx-root {
        padding: 100px 40px
    }

    .dm-dx-body {
        padding: 48px 44px
    }

    .dm-dx-title {
        font-size: 34px
    }

    .dm-dx-desc {
        font-size: 16px
    }

    .dm-dx-stat-num {
        font-size: 28px
    }
}

@media(max-width:767px) {
    .dm-dx-root {
        padding: 40px 16px
    }

    .dm-dx-title {
        font-size: 24px
    }

    .dm-dx-body {
        padding: 24px 20px
    }

    .dm-dx-stats {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .dm-dx-stat {
        padding: 16px
    }
}

.ads-expert-cta-root {
    padding: 0px 0px;
    background-color: #ffffff
}

.ads-expert-cta-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

.ads-expert-cta-card {
    max-width: 1100px;
    margin: 0 auto;
    background-color: #0a364e;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 50px;
    border-radius: 24px;
    position: relative;
    box-shadow: 0 20px 50px rgba(10, 54, 78, 0.25);
    overflow: hidden
}

.ads-expert-cta-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 20%;
    bottom: 20%;
    width: 6px;
    background: var(--c-secondary);
    border-radius: 0 4px 4px 0
}

.ads-expert-cta-content {
    flex: 1;
    z-index: 2
}

.ads-expert-cta-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 20px;
    letter-spacing: 1px
}

.ads-expert-cta-badge span {
    width: 8px;
    height: 8px;
    background: var(--c-secondary);
    border-radius: 50%;
    display: inline-block;
    animation: ads-pulse-expert 1.5s infinite
}

@keyframes ads-pulse-expert {
    0% {
        transform: scale(1);
        opacity: 1
    }

    50% {
        transform: scale(1.5);
        opacity: 0.5
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.ads-expert-cta-h2 {
    color: #ffffff;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 15px;
    letter-spacing: -1px
}

.ads-expert-cta-h2 span {
    color: #5ea8d9
}

.ads-expert-cta-p {
    color: #d1dce5;
    font-size: 16px;
    line-height: 1.7;
    max-width: 650px
}

.ads-expert-cta-actions {
    display: flex;
    flex-direction: column;
    gap: 15px;
    min-width: 300px;
    z-index: 2
}

.ads-expert-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 20px 30px;
    border-radius: 14px;
    font-weight: 800;
    font-size: 15px;
    text-transform: uppercase;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    letter-spacing: 0.5px
}

.ads-expert-cta-btn-call {
    background: var(--c-secondary);
    color: #ffffff;
    box-shadow: 0 10px 25px rgba(191, 38, 51, 0.3)
}

.ads-expert-cta-btn-call:hover {
    transform: translateY(-5px);
    background: #ffffff;
    color: var(--c-secondary);
}

.ads-expert-cta-btn-quote {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.2)
}

.ads-expert-cta-btn-quote:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.15);
    border-color: #ffffff
}

@media (max-width:768px) {
    .ads-expert-cta-card {
        padding: 25px 20px !important;
        margin: 15px !important;
        flex-direction: column !important;
        border-radius: 20px !important
    }

    .ads-expert-cta-h2 {
        font-size: 24px !important;
        line-height: 1.2 !important;
        margin-bottom: 12px !important
    }

    .ads-expert-cta-p {
        font-size: 14px !important;
        line-height: 1.5 !important
    }

    .ads-expert-cta-actions {
        flex-direction: column !important;
        align-items: center;
        width: 100% !important;
        gap: 12px !important;
        margin-top: 20px !important
    }

    .ads-expert-cta-btn {
        width: 90% !important;
        padding: 14px 15px !important;
        font-size: 14px !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        margin: 0 !important
    }

    .ads-expert-cta-badge {
        font-size: 11px !important;
        padding: 6px 12px !important;
        display: inline-flex !important;
        align-items: center !important
    }
}

.bento-ui-section {
    padding: 0px 0px;
    background-color: var(--c-bg)
}

.bento-ui-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto
}

.bento-ui-card {
    background-color: var(--c-bg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    border: 1px solid rgba(0, 84, 136, 0.08);
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.bento-ui-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2);
    border-color: rgba(191, 38, 51, 0.1)
}

.bento-ui-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--c-secondary);
    transition: width 0.4s ease
}

.bento-ui-card:hover::after {
    width: 100%
}

.bento-info-card {
    grid-column: 1 / -1;
    background-color: var(--c-bg-light);
    padding: 35px;
    flex-direction: row;
    align-items: center;
    gap: 30px;
    border: none
}

.info-icon-wrapper {
    min-width: 60px;
    height: 60px;
    background-color: var(--c-primary-dark);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease
}

.info-icon-wrapper i {
    font-size: 28px;
    color: #fff
}

.bento-info-card:hover .info-icon-wrapper {
    background-color: var(--c-secondary);
    transform: rotate(360deg) scale(1.1)
}

.bento-ui-visual {
    width: 100%;
    height: 230px;
    overflow: hidden
}

.bento-ui-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.bento-ui-card:hover .bento-ui-visual img {
    transform: scale(1.08)
}

.bento-ui-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.bento-ui-h3 {
    color: var(--c-primary-dark);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 15px 0
}

.bento-ui-text {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0
}

.bento-link {
    color: var(--c-secondary);
    text-decoration: none;
    font-weight: 700;
    position: relative;
    transition: color 0.3s ease
}

.bento-link::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--c-secondary);
    transform: scaleX(0.2);
    transform-origin: left;
    transition: transform 0.3s ease
}

.bento-link:hover::after {
    transform: scaleX(1)
}

@media (max-width:768px) {
    .bento-ui-section {
        padding: 40px 15px !important
    }

    .bento-ui-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .bento-info-card {
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
        padding: 25px 20px !important;
        gap: 15px !important
    }

    .info-icon-wrapper {
        margin: 0 !important
    }

    .bento-ui-content {
        padding: 25px 20px !important;
        text-align: left !important
    }

    .bento-ui-h3 {
        font-size: 1.2rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        text-align: left !important;
        margin-bottom: 10px !important
    }

    .bento-ui-text {
        text-align: left !important;
        font-size: 0.95rem !important;
        line-height: 1.6 !important
    }

    .bento-ui-visual {
        height: 200px !important
    }
}

.ads-origin-container {
    max-width: 1150px;
    margin: 0px auto;
    padding: 0 15px
}

.ads-intro {
    color: var(--c-text);
    font-size: 1.05rem;
    line-height: 1.6;
    text-align: center;
    max-width: 900px;
    margin: 0 auto 50px auto !important;
    font-weight: 400
}

.ads-group-title {
    color: var(--c-primary);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.2;
    margin: 40px 0 25px 0;
    display: flex;
    align-items: center;
    gap: 15px
}

.ads-group-title i {
    color: var(--c-light)
}

.ads-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 20px
}

.ads-modern-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 30px;
    border: 1px solid rgba(9, 87, 136, 0.1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden
}

.ads-modern-card:hover {
    transform: translateY(-10px);
    border-color: var(--c-secondary);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2)
}

.ads-card-icon {
    width: 55px;
    height: 55px;
    background: rgba(89, 168, 217, 0.1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: all 0.5s ease
}

.ads-card-icon i {
    font-size: 24px;
    color: var(--c-primary)
}

.ads-modern-card:hover .ads-card-icon {
    background: var(--c-secondary)
}

.ads-modern-card:hover .ads-card-icon i {
    color: #ffffff;
    transform: rotateY(360deg)
}

.ads-text {
    color: var(--c-text);
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

.ads-text strong {
    display: block;
    color: var(--c-primary);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 8px;
    transition: color 0.3s
}

.ads-modern-card:hover {
    color: var(--c-secondary)
}

.ads-expert-banner {
    background: linear-gradient(135deg, var(--c-primary) 0%, #002670 100%);
    border-radius: 20px;
    padding: 35px;
    display: flex;
    align-items: center;
    gap: 25px;
    margin-top: 50px;
    box-shadow: 0 15px 35px rgba(0, 38, 112, 0.25);
    border-left: 8px solid var(--c-secondary)
}

.ads-expert-icon i {
    font-size: 45px;
    color: #ffffff;
    animation: ads-pulse-expert 2s infinite
}

.ads-text-expert {
    color: #ffffff;
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

.ads-text-expert strong {
    color: var(--c-light);
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase
}

@keyframes ads-pulse-expert {
    0% {
        transform: scale(1);
        opacity: 1
    }

    50% {
        transform: scale(1.1);
        opacity: 0.8
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@media (max-width:992px) {
    .ads-cards-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:768px) {
    .ads-origin-container {
        padding: 40px 15px !important;
        margin: 20px auto !important
    }

    .ads-intro {
        text-align: left !important;
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        margin-bottom: 30px !important
    }

    .ads-group-title {
        font-size: 1.2rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 10px !important
    }

    .ads-cards-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .ads-modern-card {
        padding: 25px 20px !important;
        align-items: flex-start !important;
        text-align: left !important
    }

    .ads-text {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: left !important
    }

    .ads-text strong {
        font-size: 1.2rem !important;
        line-height: 1.2 !important;
        text-align: left !important
    }

    .ads-expert-banner {
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
        padding: 25px !important;
        gap: 15px !important
    }

    .ads-text-expert {
        font-size: 0.95rem !important;
        text-align: left !important
    }

    .ads-text-expert strong {
        display: block !important;
        font-size: 1.2rem !important;
        margin-bottom: 5px !important
    }

    .ads-expert-icon i {
        font-size: 35px !important
    }
}

.ads-diy-list-container {
    max-width: 1000px;
    margin: 0px auto;
    padding: 0 0px;
    font-family: "Roboto", Sans-serif !important
}

.ads-diy-header {
    text-align: center;
    margin-bottom: 40px
}

.ads-diy-intro {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-diy-stack {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.ads-diy-long-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 30px;
    display: flex;
    gap: 30px;
    border: 1px solid rgba(9, 87, 136, 0.1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-diy-long-card:hover {
    transform: translateX(10px);
    border-color: var(--c-secondary);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2)
}

.ads-diy-side {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center
}

.ads-diy-icon-box {
    width: 65px;
    height: 65px;
    background: rgba(89, 168, 217, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    transition: all 0.4s ease
}

.ads-diy-icon-box i {
    font-size: 28px;
    color: var(--c-primary)
}

.ads-diy-step {
    font-weight: 800;
    color: var(--c-light);
    font-size: 14px;
    opacity: 0.6
}

.ads-diy-long-card:hover .ads-diy-icon-box {
    background: var(--c-secondary)
}

.ads-diy-long-card:hover .ads-diy-icon-box i {
    color: #ffffff;
    transform: scale(1.1)
}

.ads-diy-body {
    flex-grow: 1
}

.ads-diy-h4 {
    color: var(--c-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 20px 0;
    transition: color 0.3s ease
}

.ads-diy-long-card:hover .ads-diy-h4 {
    color: var(--c-secondary)
}

.ads-diy-info-row {
    margin-bottom: 15px
}

.ads-diy-label {
    display: block;
    color: var(--c-light);
    font-weight: 800;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 4px
}

.ads-diy-desc {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 400 !important
}

.ads-diy-footer {
    margin-top: 40px;
    padding: 25px;
    background: rgba(89, 168, 217, 0.05);
    border-radius: 12px;
    border-left: 5px solid var(--c-secondary);
    text-align: center
}

.ads-diy-footer p {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 500 !important
}

@media (max-width:768px) {
    .ads-diy-list-container {
        padding: 80px 15px !important
    }

    .ads-diy-header {
        text-align: left !important;
        margin-bottom: 30px
    }

    .ads-diy-intro {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-diy-long-card {
        flex-direction: column !important;
        gap: 20px !important;
        padding: 25px !important;
        align-items: flex-start !important
    }

    .ads-diy-long-card:hover {
        transform: translateY(-5px) !important;
        transform: translateX(0px) !important
    }

    .ads-diy-side {
        flex-direction: row !important;
        gap: 15px !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100%
    }

    .ads-diy-icon-box {
        margin-bottom: 0 !important;
        width: 55px !important;
        height: 55px !important
    }

    .ads-diy-body {
        width: 100%;
        text-align: left !important
    }

    .ads-diy-h4 {
        font-size: 1.2rem !important;
        text-align: left !important;
        margin-bottom: 15px !important
    }

    .ads-diy-desc {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-diy-label {
        text-align: left !important
    }

    .ads-diy-footer {
        text-align: left !important;
        padding: 20px !important;
        margin-top: 30px
    }

    .ads-diy-footer p {
        text-align: left !important;
        font-size: 0.95rem !important
    }
}

.ads-assainissement-section {
    padding: 0px 0px;
    background-color: #ffffff;
    font-family: "Roboto", Sans-serif !important
}

.ads-main-title {
    text-align: center;
    color: var(--c-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 50px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto
}

.ads-assainissement-section>p {
    text-align: center;
    color: #002670;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    max-width: 850px;
    margin: -30px auto 50px auto
}

.ads-grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto
}

.ads-card {
    background-color: #ffffff;
    border-left: 6px solid var(--c-primary);
    border-radius: 15px;
    padding: 40px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1)
}

.ads-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2);
    border-color: var(--c-secondary)
}

.ads-icon-box {
    width: 60px;
    height: 60px;
    background-color: rgba(89, 168, 217, 0.15);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
    transition: all 0.3s ease;
    z-index: 2
}

.ads-icon-box i {
    color: var(--c-primary);
    font-size: 26px
}

.ads-card:hover .ads-icon-box {
    background-color: var(--c-secondary)
}

.ads-card:hover .ads-icon-box i {
    color: #ffffff
}

.ads-h3 {
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: var(--c-primary);
    margin: 0 0 15px 0;
    transition: color 0.3s ease
}

.ads-card:hover .ads-h3 {
    color: var(--c-secondary)
}

.ads-text {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    color: #002670;
    margin: 0;
    z-index: 1
}

.ads-bg-icon {
    position: absolute;
    top: -15px;
    right: -15px;
    font-size: 120px;
    color: rgba(89, 168, 217, 0.04);
    transform: rotate(15deg);
    z-index: 0;
    transition: all 0.5s ease
}

.ads-card:hover .ads-bg-icon {
    color: rgba(191, 38, 51, 0.06);
    transform: rotate(0deg) scale(1.1)
}

@media (max-width:900px) {
    .ads-assainissement-section {
        padding: 40px 15px !important
    }

    .ads-grid-container {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .ads-main-title {
        font-size: 1.2rem !important;
        text-align: left !important;
        margin-left: 0 !important;
        margin-bottom: 25px !important
    }

    .ads-assainissement-section>p {
        text-align: left !important;
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 30px !important
    }

    .ads-card {
        padding: 30px 20px !important;
        align-items: flex-start !important;
        text-align: left !important
    }

    .ads-h3 {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-text {
        font-size: 0.95rem !important;
        text-align: left !important
    }
}

.dm-db-root {
    --dm-db-primary: var(--c-primary-dark);
    --dm-db-accent: var(--c-secondary);
    --dm-db-text: #002670;
    --dm-db-light-bg: #f8fafd;
    position: relative;
    padding: 0px 0px;
    background: #ffffff
}

.dm-db-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

.dm-db-wrap {
    max-width: 1200px;
    margin: 0 auto
}

.dm-db-top {
    display: flex;
    align-items: center;
    gap: 40px;
    margin-bottom: 40px
}

.dm-db-img-wrap {
    width: 42%;
    flex-shrink: 0;
    position: relative
}

.dm-db-img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 18px;
    display: block;
    box-shadow: 0 10px 30px rgba(0, 84, 136, 0.1)
}

.dm-db-img-badge {
    position: absolute;
    bottom: -12px;
    right: -12px;
    padding: 8px 16px;
    border-radius: 10px;
    background: var(--dm-db-primary);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    box-shadow: 0 4px 16px rgba(0, 84, 136, .3);
    display: flex;
    align-items: center;
    gap: 6px
}

.dm-db-img-badge svg {
    width: 14px;
    height: 14px
}

.dm-db-intro {
    flex: 1
}

.dm-db-eyebrow {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    background: #eef5f9;
    color: var(--dm-db-primary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .3px;
    margin-bottom: 16px
}

.dm-db-h2 {
    color: var(--dm-db-primary);
    font-size: 40px;
    font-weight: 500;
    line-height: 1.25;
    margin-bottom: 16px
}

.dm-db-h2 span {
    color: var(--dm-db-accent)
}

.dm-db-lead {
    color: var(--dm-db-text);
    font-size: 16px;
    line-height: 1.75;
    opacity: 0.9
}

.dm-db-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.dm-db-item {
    padding: 28px 24px;
    border-radius: 16px;
    background: var(--dm-db-light-bg);
    border: 1px solid #eef2f6;
    transition: all .3s ease;
    position: relative;
    overflow: hidden
}

.dm-db-item:hover {
    background: #ffffff;
    border-color: var(--dm-db-primary);
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 38, 112, 0.08)
}

.dm-db-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px
}

.dm-db-item-1::before,
.dm-db-item-3::before {
    background: var(--dm-db-primary)
}

.dm-db-item-2::before {
    background: var(--dm-db-accent)
}

.dm-db-item-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px
}

.dm-db-ico {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center
}

.dm-db-ico svg {
    width: 20px;
    height: 20px;
    stroke-width: 2
}

.dm-db-ico-1,
.dm-db-ico-3 {
    background: #e6f0f7
}

.dm-db-ico-1 svg,
.dm-db-ico-3 svg {
    stroke: var(--dm-db-primary)
}

.dm-db-ico-2 {
    background: #fdf2f2
}

.dm-db-ico-2 svg {
    stroke: var(--dm-db-accent)
}

.dm-db-num {
    font-size: 32px;
    font-weight: 800;
    color: #e5e7eb;
    line-height: 1
}

.dm-db-h3 {
    color: var(--dm-db-primary);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 12px
}

.dm-db-h3 span {
    color: var(--dm-db-primary)
}

.dm-db-item-2 .dm-db-h3 span {
    color: var(--dm-db-accent)
}

.dm-db-p {
    color: var(--dm-db-text);
    font-size: 15.5px;
    line-height: 1.7
}

@media(min-width:768px) {
    .dm-db-root {
        padding: 56px 30px
    }

    .dm-db-h2 {
        font-size: 32px
    }

    .dm-db-grid {
        gap: 24px
    }
}

@media(max-width:767px) {
    .dm-db-root {
        padding: 40px 16px
    }

    .dm-db-top {
        flex-direction: column;
        gap: 24px;
        text-align: left
    }

    .dm-db-img-wrap {
        width: 100%
    }

    .dm-db-h2 {
        font-size: 30px !important;
        text-align: left;
        font-weight: 500
    }

    .dm-db-lead {
        font-size: 14px;
        text-align: left
    }

    .dm-db-grid {
        grid-template-columns: 1fr !important;
        gap: 16px
    }

    .dm-db-item {
        text-align: left
    }

    .dm-db-h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

.dm-rk-root {
    --dm-rk-primary: var(--c-primary-dark);
    --dm-rk-accent: var(--c-secondary);
    --dm-rk-text: #002670;
    --dm-rk-light-bg: #f8fafd;
    position: relative;
    padding: 0px 0px !important;
    background: #ffffff
}

.dm-rk-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

.dm-rk-wrap {
    max-width: 1100px;
    margin: 0 auto
}

.dm-rk-header {
    text-align: center;
    margin-bottom: 38px
}

.dm-rk-h2 {
    color: var(--dm-rk-primary);
    font-size: 38px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 14px;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto
}

.dm-rk-h2 span {
    color: var(--dm-rk-accent)
}

.dm-rk-sub {
    color: var(--dm-rk-text);
    font-size: 16.5px;
    line-height: 1.8;
    max-width: 700px;
    margin: 0 auto;
    opacity: 0.9;
    font-weight: 400
}

.dm-rk-split {
    display: flex;
    gap: 36px;
    align-items: stretch
}

.dm-rk-content {
    flex: 1;
    display: flex;
    flex-direction: column
}

.dm-rk-item {
    padding: 26px 0;
    border-bottom: 1px solid #f4f4f5;
    display: flex;
    gap: 18px;
    align-items: flex-start;
    transition: all .3s ease
}

.dm-rk-item:first-child {
    padding-top: 0
}

.dm-rk-item:last-child {
    border-bottom: none;
    padding-bottom: 0
}

.dm-rk-item:hover {
    padding-left: 8px
}

.dm-rk-num {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
    transition: transform .3s ease
}

.dm-rk-item:hover .dm-rk-num {
    transform: scale(1.08)
}

.dm-rk-num-1 {
    background: #e6f0f7;
    color: var(--dm-rk-primary);
    border: 1px solid #d1e1ee
}

.dm-rk-num-2 {
    background: #fdf2f2;
    color: var(--dm-rk-accent);
    border: 1px solid #f9dcdc
}

.dm-rk-num-3 {
    background: #eef5f9;
    color: var(--dm-rk-primary);
    border: 1px solid #d1e1ee
}

.dm-rk-item-body {
    flex: 1;
    min-width: 0
}

.dm-rk-h3 {
    color: var(--dm-rk-primary);
    font-size: 15.5px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 8px
}

.dm-rk-p {
    color: var(--dm-rk-text);
    font-size: 15.5px;
    line-height: 1.75
}

.dm-rk-aside {
    width: 340px;
    flex-shrink: 0;
    position: relative
}

.dm-rk-img-container {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(0, 84, 136, .12);
    position: relative
}

.dm-rk-img-container img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    min-height: 400px
}

.dm-rk-img-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    background: linear-gradient(0deg, rgba(0, 38, 112, 0.8) 0%, transparent 100%)
}

.dm-rk-img-title {
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 4px
}

.dm-rk-img-desc {
    color: rgba(255, 255, 255, .85);
    font-size: 11px;
    line-height: 1.5
}

.dm-rk-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 24px;
    padding: 18px 24px;
    background-color: var(--dm-rk-accent);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 14px;
    font-weight: 700;
    font-size: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 8px 20px rgba(191, 38, 51, 0.25)
}

.dm-rk-btn:hover {
    background-color: var(--dm-rk-primary);
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(0, 84, 136, 0.2)
}

.dm-rk-btn i {
    font-size: 18px
}

@media(min-width:768px) {
    .dm-rk-root {
        padding: 56px 30px
    }

    .dm-rk-h2 {
        font-size: 30px
    }

    .dm-rk-h3 {
        font-size: 16.5px
    }
}

@media(min-width:1024px) {
    .dm-rk-root {
        padding: 64px 40px
    }

    .dm-rk-h2 {
        font-size: 30px
    }

    .dm-rk-aside {
        width: 380px
    }
}

@media(max-width:767px) {
    .dm-rk-root {
        padding: 36px 14px
    }

    .dm-rk-header {
        text-align: left
    }

    .dm-rk-h2 {
        font-size: 30px !important;
        font-weight: 500
    }

    .dm-rk-split {
        flex-direction: column;
        gap: 28px
    }

    .dm-rk-aside {
        width: 100%;
        order: -1
    }

    .dm-rk-btn {
        margin-top: 20px
    }

    .dm-rk-h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

.ads-diy-list-container {
    max-width: 1000px;
    margin: 40px auto;
    padding: 0 0px;
    font-family: "Roboto", Sans-serif !important
}

.ads-diy-header {
    text-align: center;
    margin-bottom: 40px
}

.ads-diy-intro {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-diy-stack {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.ads-diy-long-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 30px;
    display: flex;
    gap: 30px;
    border: 1px solid rgba(9, 87, 136, 0.1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-diy-long-card:hover {
    transform: translateX(10px);
    border-color: var(--c-secondary);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2)
}

.ads-diy-side {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center
}

.ads-diy-icon-box {
    width: 65px;
    height: 65px;
    background: rgba(89, 168, 217, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    transition: all 0.4s ease
}

.ads-diy-icon-box i {
    font-size: 28px;
    color: var(--c-primary)
}

.ads-diy-step {
    font-weight: 800;
    color: var(--c-light);
    font-size: 14px;
    opacity: 0.6
}

.ads-diy-long-card:hover .ads-diy-icon-box {
    background: var(--c-secondary)
}

.ads-diy-long-card:hover .ads-diy-icon-box i {
    color: #ffffff;
    transform: scale(1.1)
}

.ads-diy-body {
    flex-grow: 1
}

.ads-diy-h4 {
    color: var(--c-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 20px 0;
    transition: color 0.3s ease
}

.ads-diy-long-card:hover .ads-diy-h4 {
    color: var(--c-secondary)
}

.ads-diy-info-row {
    margin-bottom: 15px
}

.ads-diy-label {
    display: block;
    color: var(--c-light);
    font-weight: 800;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 4px
}

.ads-diy-desc {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 400 !important
}

.rk-p {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 400 !important;
    margin-bottom: 10px
}

.rk-p-2 {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 400 !important;
    margin-top: 15px
}

.ads-tip-footer {
    margin-top: 50px;
    padding: 35px;
    background: #002670;
    border-radius: 16px;
    border-left: 6px solid var(--c-secondary);
    text-align: left;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    box-shadow: 0 15px 35px rgba(0, 38, 112, 0.2);
    font-family: "Roboto", Sans-serif !important
}

.ads-tip-footer::before {
    content: '\f0eb';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    color: #ffffff;
    font-size: 24px;
    margin-top: 5px
}

.ads-tip-content {
    flex: 1
}

.ads-tip-title {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 12px 0 !important
}

.ads-tip-text {
    color: #ffffff !important;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0 !important;
    opacity: 0.95
}

@media (max-width:768px) {
    .ads-tip-footer {
        padding: 25px 20px !important;
        margin-top: 35px;
        flex-direction: column;
        gap: 15px
    }

    .ads-tip-title {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-tip-text {
        font-size: 0.95rem !important;
        text-align: left !important
    }
}

@media (max-width:768px) {
    .ads-diy-list-container {
        padding: 40px 15px !important
    }

    .ads-diy-header {
        text-align: left !important;
        margin-bottom: 30px
    }

    .ads-diy-intro {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-diy-long-card {
        flex-direction: column !important;
        gap: 20px !important;
        padding: 25px !important;
        align-items: flex-start !important
    }

    .ads-diy-long-card:hover {
        transform: translateY(-5px) !important;
        transform: translateX(0px) !important
    }

    .ads-diy-side {
        flex-direction: row !important;
        gap: 15px !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100%
    }

    .ads-diy-icon-box {
        margin-bottom: 0 !important;
        width: 55px !important;
        height: 55px !important
    }

    .ads-diy-body {
        width: 100%;
        text-align: left !important
    }

    .ads-diy-h4 {
        font-size: 1.2rem !important;
        text-align: left !important;
        margin-bottom: 15px !important
    }

    .ads-diy-desc {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-diy-label {
        text-align: left !important
    }

    .ads-diy-footer {
        text-align: left !important;
        padding: 20px !important;
        margin-top: 30px
    }

    .ads-diy-footer p {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-diy-intro {
        color: var(--c-text);
        font-size: 16.5px !important;
        line-height: 1.6 !important;
        font-weight: 400 !important
    }
}

.ads-bv2-section {
    --ads-bv2-primary: var(--c-primary-dark);
    --ads-bv2-secondary: var(--c-secondary);
    --ads-bv2-text: #002670;
    --ads-bv2-bg: #ffffff;
    --ads-bv2-card-bg: #ffffff;
    padding: 40px 20px;
    background-color: var(--ads-bv2-bg);
    font-family: "Roboto", Sans-serif !important
}

.ads-bv2-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto
}

.ads-bv2-card {
    background-color: var(--ads-bv2-card-bg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    border: 1px solid rgba(0, 84, 136, 0.08);
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-bv2-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(0, 84, 136, 0.15);
    border-color: var(--ads-bv2-secondary)
}

.ads-bv2-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 0%;
    background: var(--ads-bv2-secondary);
    transition: height 0.4s ease
}

.ads-bv2-card:hover::after {
    height: 100%
}

.ads-bv2-visual {
    width: 100%;
    height: 220px;
    overflow: hidden;
    position: relative
}

.ads-bv2-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.ads-bv2-card:hover .ads-bv2-visual img {
    transform: scale(1.1)
}

.ads-bv2-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.ads-bv2-h3 {
    color: var(--ads-bv2-primary);
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0 0 15px 0;
    line-height: 1.3
}

.ads-bv2-text {
    color: var(--ads-bv2-text);
    font-size: 1rem;
    line-height: 1.6;
    margin: 0
}

@media (max-width:1024px) {
    .ads-bv2-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .ads-bv2-content h3 {
        line-height: 30px !important
    }
}

@media (max-width:767px) {
    .ads-bv2-grid {
        grid-template-columns: 1fr
    }

    .ads-bv2-h3 {
        font-size: 20px !important
    }
}

.ads-sol-section {
    --ads-sol-primary: var(--c-primary-dark);
    --ads-sol-secondary: var(--c-secondary);
    --ads-sol-text: #002670;
    --ads-sol-bg: #ffffff;
    padding: 40px 0px;
    background-color: var(--ads-sol-bg);
    font-family: "Roboto", Sans-serif !important
}

.ads-sol-section * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Roboto", Sans-serif !important
}

.ads-sol-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1000px;
    margin: 0 auto
}

.ads-sol-card {
    background-color: #ffffff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    border: 1px solid rgba(0, 84, 136, 0.08);
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-sol-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(0, 84, 136, 0.15);
    border-color: var(--ads-sol-secondary)
}

.ads-sol-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 0%;
    background: var(--ads-sol-secondary);
    transition: height 0.4s ease
}

.ads-sol-card:hover::after {
    height: 100%
}

.ads-sol-visual {
    width: 100%;
    height: 220px;
    overflow: hidden;
    position: relative
}

.ads-sol-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.ads-sol-card:hover .ads-sol-visual img {
    transform: scale(1.1)
}

.ads-sol-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.ads-sol-h3 {
    color: var(--ads-sol-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 15px 0
}

.ads-sol-text {
    color: var(--ads-sol-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0
}

@media (max-width:767px) {
    .ads-sol-section {
        padding: 40px 15px !important
    }

    .ads-sol-grid {
        grid-template-columns: 1fr !important;
        gap: 25px
    }

    .ads-sol-content {
        padding: 25px 20px !important;
        text-align: left !important
    }

    .ads-sol-h3 {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-sol-text {
        font-size: 0.95rem !important;
        text-align: left !important
    }

    .ads-sol-visual {
        height: 200px
    }
}

.ads-dg-root {
    --ads-dg-primary: var(--c-primary-dark);
    --ads-dg-accent: var(--c-secondary);
    --ads-dg-text: #002670;
    --ads-dg-bg-light: #f8fafc;
    background-color: #ffffff;
    padding: 0px 0px;
    font-family: "Roboto", Sans-serif !important
}

.ads-dg-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Roboto", Sans-serif !important
}

.ads-dg-wrap {
    max-width: 1100px;
    margin: 0 auto
}

.ads-dg-header {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 50px auto
}

.ads-dg-h2 {
    font-size: 20px !important;
    color: var(--ads-dg-primary);
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 20px;
    text-transform: none
}

.ads-dg-h2 span {
    color: var(--ads-dg-accent)
}

.ads-dg-intro {
    font-size: 1.05rem !important;
    color: var(--ads-dg-text);
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-dg-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px
}

.ads-dg-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 30px;
    border-radius: 24px;
    background: var(--ads-dg-bg-light);
    border: 1px solid rgba(0, 84, 136, 0.08);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    overflow: hidden
}

.ads-dg-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(0, 38, 112, 0.1);
    background: #ffffff;
    border-color: var(--ads-dg-primary)
}

.ads-dg-item::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--ads-dg-accent);
    transition: width 0.4s ease
}

.ads-dg-item:hover::after {
    width: 100%
}

.ads-dg-item-num {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    background: var(--ads-dg-primary);
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    flex-shrink: 0
}

.ads-dg-h3 {
    font-size: 20px !important;
    color: var(--ads-dg-primary);
    font-weight: 800 !important;
    margin-bottom: 12px;
    line-height: 1.2 !important
}

.ads-dg-p {
    font-size: 1.05rem !important;
    color: var(--ads-dg-text);
    line-height: 1.6 !important;
    font-weight: 400 !important
}

@media(max-width:768px) {
    .ads-dg-root {
        padding: 40px 15px !important
    }

    .ads-dg-header {
        text-align: left !important;
        margin-bottom: 35px
    }

    .ads-dg-h2,
    .ads-dg-h3 {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-dg-intro,
    .ads-dg-p {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: left !important
    }

    .ads-dg-grid {
        grid-template-columns: 1fr !important;
        gap: 20px
    }

    .ads-dg-item {
        padding: 25px 20px !important;
        align-items: flex-start !important;
        text-align: left !important
    }
}

.ads-adv-container {
    max-width: 1000px;
    margin: 40px auto;
    padding: 0 0px;
    font-family: "Roboto", Sans-serif !important;
    --ads-adv-primary: var(--c-primary);
    --ads-adv-text: #002670;
    --ads-adv-accent: var(--c-secondary);
    --ads-adv-secondary: #59A8D9
}

.ads-adv-header {
    text-align: center;
    margin-bottom: 40px
}

.ads-adv-intro {
    color: var(--ads-adv-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-adv-stack {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.ads-adv-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 30px;
    display: flex;
    gap: 30px;
    border: 1px solid rgba(9, 87, 136, 0.1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-adv-card:hover {
    transform: translateX(10px);
    border-color: var(--ads-adv-accent);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2)
}

.ads-adv-side {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center
}

.ads-adv-icon-box {
    width: 65px;
    height: 65px;
    background: rgba(89, 168, 217, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    transition: all 0.4s ease
}

.ads-adv-icon-box i {
    font-size: 28px;
    color: var(--ads-adv-primary)
}

.ads-adv-step-num {
    font-weight: 800;
    color: var(--ads-adv-secondary);
    font-size: 14px;
    opacity: 0.6
}

.ads-adv-card:hover .ads-adv-icon-box {
    background: var(--ads-adv-accent)
}

.ads-adv-card:hover .ads-adv-icon-box i {
    color: #ffffff
}

.ads-adv-body {
    flex-grow: 1
}

.ads-adv-card-title {
    color: var(--ads-adv-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 15px 0;
    transition: color 0.3s ease
}

.ads-adv-card:hover .ads-adv-card-title {
    color: var(--ads-adv-accent)
}

.ads-adv-card-desc {
    color: var(--ads-adv-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin: 0;
    font-weight: 400 !important
}

.ads-adv-footer-box {
    margin-top: 50px;
    padding: 35px;
    background: #002670;
    border-radius: 16px;
    border-left: 6px solid var(--c-secondary);
    text-align: left;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    box-shadow: 0 15px 35px rgba(0, 38, 112, 0.2)
}

.ads-adv-footer-box::before {
    content: '\f0eb';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    color: #ffffff;
    font-size: 24px;
    margin-top: 5px
}

.ads-adv-footer-content {
    flex: 1
}

.ads-adv-footer-title {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 12px 0 !important
}

.hendy-footer .footer-title {
    color: #59a8d9 !important;
    font-weight: 500 !important;
    line-height: 28px !important;
    font-size: 24px !important
}

.hendy-footer ul li a {
    font-size: 16px !important;
    color: #ffffff !important
}

.ads-adv-footer-text {
    color: #ffffff !important;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0 !important
}

@media (max-width:768px) {
    .ads-adv-container {
        padding: 40px 15px !important
    }

    .ads-adv-header {
        text-align: left !important
    }

    .ads-adv-intro {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-adv-card {
        flex-direction: column !important;
        padding: 25px !important;
        align-items: flex-start !important
    }

    .ads-adv-card:hover {
        transform: translateY(-5px) !important;
        transform: translateX(0px) !important
    }

    .ads-adv-side {
        flex-direction: row !important;
        gap: 15px !important;
        justify-content: flex-start !important;
        width: 100%
    }

    .ads-adv-icon-box {
        margin-bottom: 0 !important;
        width: 55px !important;
        height: 55px !important
    }

    .ads-adv-body {
        text-align: left !important
    }

    .ads-adv-card-title {
        font-size: 1.2rem !important;
        text-align: left !important;
        margin-top: 15px
    }

    .ads-adv-card-desc {
        text-align: left !important;
        font-size: 0.95rem !important
    }

    .ads-adv-footer-box {
        padding: 25px 20px !important;
        flex-direction: column;
        gap: 15px
    }

    .ads-adv-footer-title {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-adv-footer-text {
        font-size: 0.95rem !important;
        text-align: left !important
    }
}

.ads-exp-root {
    --ads-exp-primary: var(--c-primary-dark);
    --ads-exp-accent: var(--c-secondary);
    --ads-exp-text: #002670;
    --ads-exp-bg-light: #f8fafd;
    position: relative;
    padding: 40px 0px;
    background: #ffffff;
    font-family: "Roboto", Sans-serif !important
}

.ads-exp-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Roboto", Sans-serif !important
}

.ads-exp-wrap {
    max-width: 1000px;
    margin: 0 auto
}

.ads-exp-module {
    margin-bottom: 60px
}

.ads-exp-module:last-child {
    margin-bottom: 0
}

.ads-exp-h2 {
    color: var(--ads-exp-primary);
    font-size: 35px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 12px
}

.ads-exp-h2 i {
    font-size: 24px;
    color: var(--ads-exp-accent)
}

.ads-exp-p {
    color: var(--ads-exp-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin-bottom: 25px
}

.ads-exp-box {
    background: var(--ads-exp-bg-light);
    border-radius: 16px;
    padding: 30px;
    border-left: 5px solid var(--ads-exp-primary);
    box-shadow: 0 10px 30px rgba(0, 84, 136, 0.05)
}

.ads-exp-warning-box {
    border-left-color: var(--ads-exp-accent);
    background: #fff5f5
}

.ads-exp-h3 {
    color: var(--ads-exp-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 15px
}

.ads-exp-warning-box .ads-exp-h3 {
    color: var(--ads-exp-accent)
}

.ads-text strong {
    display: inline;
    color: var(--c-primary);
    font-size: inherit;
    font-weight: 700 !important;
    line-height: inherit;
    margin-bottom: 0;
    transition: color 0.3s
}

@media (max-width:768px) {
    .ads-exp-root {
        padding: 40px 15px !important
    }

    .ads-exp-h2,
    .ads-exp-h3 {
        font-size: 1.2rem !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
        text-align: left !important
    }

    .ads-exp-p {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        font-weight: 400 !important;
        text-align: left !important
    }

    .ads-exp-box {
        padding: 20px !important
    }

    .ads-exp-h2 i {
        font-size: 20px
    }
}

.elementor-button,
.eael-creative-button {
    background-color: var(--c-secondary) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    text-align: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(191, 38, 51, 0.2) !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important
}

.elementor-button-text,
.cretive-button-text,
.eael-creative-button--default .creative-button-inner span {
    color: #ffffff !important
}

.section-vidange-fosse.moderne-tarif {
    margin-top: 30px;
    margin-bottom: 40px;
    padding: 25px 20px;
    background-color: #ffffff;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    text-align: center
}

.vidange-intro-paragraphe p {
    color: #002670;
    font-size: 1.05rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    margin-bottom: 30px
}

.section-vidange-fosse strong {
    color: #002670;
    font-weight: 800 !important
}

.vidange-tableau-container table {
    width: 100%;
    border-collapse: separate;
    margin-top: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    max-width: 960px
}

.vidange-tableau-container th {
    background-color: var(--c-primary);
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    padding: 15px 12px;
    text-align: center;
    border: none
}

.vidange-tableau-container td {
    padding: 15px 12px;
    border-top: 1px solid #e0e0e0;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    color: #002670;
    vertical-align: middle;
    text-align: center
}

.vidange-tableau-container tbody tr:hover {
    background-color: #f4f7f9
}

@media (max-width:768px) {
    .section-vidange-fosse.moderne-tarif {
        padding: 40px 15px !important
    }

    .vidange-intro-paragraphe p {
        text-align: left !important;
        font-size: 0.95rem !important;
        line-height: 1.6 !important
    }

    .responsive-table-section table {
        display: block;
        width: 100%;
        box-shadow: none
    }

    .responsive-table-section thead {
        display: none
    }

    .responsive-table-section tbody,
    .responsive-table-section tr,
    .responsive-table-section td {
        display: block;
        width: 100%
    }

    .responsive-table-section tr {
        margin-bottom: 20px;
        border: 1px solid #e0e0e0;
        border-radius: 12px;
        overflow: hidden
    }

    .responsive-table-section td {
        text-align: left !important;
        border-top: none;
        border-bottom: 1px solid #f0f0f0;
        font-size: 0.95rem !important;
        padding: 15px !important;
        display: flex;
        flex-direction: column;
        align-items: flex-start
    }

    .responsive-table-section td:first-child {
        background-color: #f8fafd;
        font-weight: 800 !important;
        color: var(--c-primary)
    }
}

.eb-bento-wrapper {
    --eb-primary: var(--c-primary-dark);
    --eb-secondary: var(--c-secondary);
    --eb-text: #002670;
    --eb-bg: #ffffff;
    --eb-card-bg: #ffffff;
    --eb-info-bg: #f0f7ff;
    background-color: var(--eb-bg);
    padding: 60px 20px;
    font-family: "Roboto", Sans-serif !important
}

.eb-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto
}

.eb-card {
    background-color: var(--eb-card-bg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    border: 1px solid rgba(0, 84, 136, 0.08);
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.eb-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2);
    border-color: rgba(191, 38, 51, 0.1)
}

.eb-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--eb-secondary);
    transition: width 0.4s ease
}

.eb-card:hover::after {
    width: 100%
}

.eb-info-card {
    grid-column: 1 / -1;
    background-color: var(--eb-info-bg);
    padding: 25px;
    flex-direction: row;
    align-items: center;
    gap: 30px;
    border: none
}

.eb-info-icon-wrapper {
    min-width: 60px;
    height: 60px;
    background-color: var(--eb-primary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease
}

.eb-info-icon-wrapper i {
    font-size: 28px;
    color: #fff
}

.eb-info-card:hover .eb-info-icon-wrapper {
    background-color: var(--eb-secondary);
    transform: rotate(360deg) scale(1.1)
}

.eb-visual {
    width: 100%;
    height: 230px;
    overflow: hidden
}

.eb-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.eb-card:hover .eb-visual img {
    transform: scale(1.08)
}

.eb-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.eb-h3 {
    color: var(--eb-primary);
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0 0 15px 0;
    line-height: 1.2
}

.eb-text {
    color: var(--eb-text);
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

.eb-link {
    color: var(--eb-secondary);
    text-decoration: none;
    font-weight: 700;
    position: relative;
    transition: color 0.3s ease;
    display: inline-block
}

.eb-link::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--eb-secondary);
    transform: scaleX(0.2);
    transform-origin: left;
    transition: transform 0.3s ease
}

.eb-link:hover::after {
    transform: scaleX(1)
}

@media (max-width:768px) {
    .eb-bento-wrapper {
        padding: 40px 15px
    }

    .eb-grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .eb-info-card {
        flex-direction: column;
        text-align: left !important;
        align-items: flex-start !important;
        padding: 25px
    }

    .eb-visual {
        height: 200px
    }

    .eb-content {
        padding: 20px;
        text-align: left !important
    }

    .eb-h3 {
        font-size: 1.2rem;
        text-align: left !important
    }

    .eb-text {
        text-align: left !important
    }
}

.wpcf7-not-valid-tip {
    color: #FFADAD
}

.ads-prc-root {
    --ads-prc-primary: var(--c-primary-dark);
    --ads-prc-accent: var(--c-secondary);
    --ads-prc-text: #002670;
    --ads-prc-light-blue: #f0f7ff;
    --ads-prc-border: #dbeafe;
    --ads-prc-header-bg: #59a8d9;
    padding: 0px 0;
    background-color: #ffffff
}

.ads-prc-container {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px
}

.ads-prc-wrapper {
    margin-bottom: 0px
}

.ads-prc-h2 {
    font-size: 35px !important;
    margin-bottom: 25px !important;
    text-align: center !important;
    padding: 0 10px;
    color: var(--c-primary) !important;
    font-weight: 500
}

.ads-prc-table {
    width: 100%;
    border-collapse: collapse;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 84, 136, 0.08);
    border: 1px solid var(--ads-prc-border)
}

.ads-prc-table thead {
    background-color: var(--ads-prc-header-bg) !important
}

.ads-prc-table th {
    padding: 18px 20px;
    text-align: left;
    font-size: 14px;
    font-weight: 800;
    color: #ffffff !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid var(--ads-prc-border)
}

.ads-prc-table td {
    padding: 20px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 15px !important;
    color: var(--ads-prc-text);
    line-height: 1.5 !important;
    background: #ffffff;
    vertical-align: middle
}

.ads-prc-table tr:last-child td {
    border-bottom: none
}

.ads-prc-table tbody tr:nth-child(even) td {
    background-color: #fafcfe
}

.ads-prc-main-title {
    font-weight: 900;
    color: var(--ads-prc-primary);
    font-size: 18px
}

.ads-prc-sub-title {
    font-size: 12px;
    color: #888;
    display: block;
    margin-top: 5px;
    font-weight: 400
}

.ads-prc-service-name {
    font-weight: 700;
    color: #555;
    text-transform: uppercase;
    font-size: 14px
}

.ads-prc-tech-desc {
    color: #666;
    font-size: 14px
}

.ads-prc-value {
    font-weight: 900;
    color: #444;
    font-size: 24px;
    white-space: nowrap
}

@media (max-width:768px) {
    .ads-prc-root {
        padding: 30px 0 !important
    }

    .ads-prc-h2 {
        font-size: 26px !important;
        margin-bottom: 25px !important;
        text-align: left !important;
        padding: 0 10px
    }

    .ads-prc-table,
    .ads-prc-table thead,
    .ads-prc-table tbody,
    .ads-prc-table th,
    .ads-prc-table td,
    .ads-prc-table tr {
        display: block !important;
        width: 100% !important
    }

    .ads-prc-table thead {
        display: none !important
    }

    .ads-prc-table tr {
        margin-bottom: 35px !important;
        border: 1px solid var(--ads-prc-border) !important;
        border-radius: 20px !important;
        box-shadow: 0 10px 25px rgba(0, 84, 136, 0.08) !important;
        overflow: hidden;
        background: #ffffff
    }

    .ads-prc-table td::before {
        content: attr(data-label);
        font-weight: 800 !important;
        color: var(--ads-prc-primary) !important;
        text-transform: uppercase !important;
        font-size: 13px !important;
        margin-bottom: 8px !important;
        display: block;
        opacity: 0.6;
        letter-spacing: 0.5px
    }

    .ads-prc-table td {
        text-align: left !important;
        padding: 20px 25px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        position: relative
    }

    .ads-prc-table tr:first-child td:first-child {
        background-color: var(--ads-prc-light-blue) !important;
        padding: 25px !important;
        border-bottom: 2px solid var(--ads-prc-border) !important
    }

    .ads-prc-table tr:nth-child(2) td:first-child {
        background-color: var(--ads-prc-light-blue) !important;
        padding: 25px !important;
        border-bottom: 2px solid var(--ads-prc-border) !important
    }

    .ads-prc-table tr:first-child td:first-child::before,
    .ads-prc-table tr:nth-child(2) td:first-child::before {
        display: none !important
    }

    .ads-prc-main-title,
    .ads-prc-service-name {
        font-size: 18px !important;
        display: block;
        margin-top: 0
    }

    .ads-prc-value {
        font-size: 24px !important;
        display: block;
        margin-top: 5px
    }

    .ads-prc-table td[data-label=""]::before {
        display: none !important
    }

    .ads-prc-table td:last-child {
        border-bottom: none !important
    }
}

.select-wrapper {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box
}

#zone-select {
    width: 100%;
    padding: 12px 20px 12px 8px;
    border-radius: 6px;
    border: 1px solid #ccc;
    color: #666;
    font-size: clamp(12px, 3.5vw, 16px);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: #fff;
    cursor: pointer;
    box-sizing: border-box;
    line-height: 1.5;
    white-space: nowrap
}

.select-wrapper::after {
    content: "▼";
    font-size: 10px;
    color: #666;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none
}

@media screen and (max-width:768px) {
    .text-firs-labell {
        font-size: 12px !important
    }

    #zone-select {
        font-size: 12px !important
    }
}

@media screen and (max-width:350px) {
    #zone-select {
        font-size: 11px;
        padding-left: 5px;
        padding-right: 20px
    }
}

#zone-select:focus {
    outline: none;
    border-color: #999
}

.text-firs-labell {
    font-size: 10px
}

.ads-merged-section {
    max-width: 1300px;
    margin: 0 auto;
    padding: 40px 20px
}

.ads-flex-container {
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: stretch
}

.ads-left-content {
    flex: 1.2
}

.ads-right-map {
    flex: 0.8;
    position: -webkit-sticky;
    position: sticky;
    top: 20px;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-self: stretch
}

.intervention-h2 {
    color: var(--c-primary);
    font-size: 32px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    margin-bottom: 24px;
    text-align: left
}

.intervention-intro {
    color: var(--c-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin-bottom: 35px
}

.geo-block-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.geo-block {
    padding: 25px;
    background-color: var(--c-bg-soft);
    border-radius: 12px;
    border-left: 4px solid var(--c-primary);
    transition: all 0.3s ease
}

.geo-block:hover {
    transform: translateX(5px);
    box-shadow: 0 10px 20px rgba(9, 87, 136, 0.08);
    border-left-color: var(--c-secondary)
}

.geo-text {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    color: var(--c-text);
    margin: 0
}

.btn-red {
    background-color: var(--c-secondary);
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 800;
    font-size: 14px;
    padding: 18px 25px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-transform: uppercase;
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2);
    width: 60%;
    margin-top: 20px;
    justify-content: center
}

.ads-v5-h3 {
    width: 100%;
    color: var(--c-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 5px
}

.c-unique-map-wrapper {
    width: 100%;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 600px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid #e0e0e0;
    background-color: #f0f0f0
}

#unique-map-id,
.unique-map-id {
    width: 100%;
    flex: 1;
    background: #f0f0f0
}

.c-unique-map-pin {
    background-color: #0A364E;
    width: 20px;
    height: 20px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    border: 2px solid #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center
}

.c-unique-map-pin::after {
    content: '';
    width: 6px;
    height: 6px;
    background-color: #5C9EBC;
    border-radius: 50%;
    transform: rotate(45deg)
}

.leaflet-popup-content-wrapper {
    padding: 0;
    border-radius: 8px;
    overflow: hidden
}

.leaflet-popup-content {
    margin: 0;
    width: 240px !important
}

.c-unique-map-header {
    background-color: #0A364E;
    padding: 15px;
    color: #fff
}

.c-unique-map-title {
    font-size: 16px;
    font-weight: 700;
    margin: 0;
    color: #fff
}

.c-unique-map-body {
    padding: 15px
}

.c-unique-map-status {
    font-size: 11px;
    color: #5C9EBC;
    font-weight: 700;
    display: block
}

.c-unique-map-desc {
    font-size: 13px;
    color: #555;
    margin: 5px 0 15px 0
}

.c-unique-map-btn {
    display: block;
    text-align: center;
    background: #5C9EBC;
    color: #fff !important;
    padding: 10px 0;
    border-radius: 4px;
    font-size: 11px;
    text-decoration: none
}

@media (max-width:1024px) {
    .ads-flex-container {
        flex-direction: column !important
    }

    .ads-left-content {
        width: 100% !important;
        order: 1 !important
    }

    .ads-right-map {
        order: 2 !important;
        position: relative !important;
        top: 0 !important;
        flex: none !important;
        width: 100% !important;
        margin-top: 30px !important;
        margin-bottom: 0 !important
    }

    .c-unique-map-wrapper {
        height: 400px !important
    }

    .btn-red {
        width: 100% !important
    }
}

.ads-diy-list-container {
    max-width: 1000px;
    margin: 0px auto;
    padding: 0 20px;
    font-family: "Roboto", Sans-serif !important
}

.ads-main-h2-title {
    color: var(--c-primary);
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 20px;
    line-height: 1.2
}

.ads-diy-intro {
    color: var(--c-text);
    font-size: 1.1rem;
    line-height: 1.7;
    margin-bottom: 40px
}

.ads-diy-stack {
    display: flex;
    flex-direction: column;
    gap: 30px
}

.ads-diy-long-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 35px;
    display: flex;
    gap: 30px;
    border: 1px solid rgba(9, 87, 136, 0.1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1);
    transition: all 0.4s ease;
    position: relative
}

.ads-diy-list {
    margin-bottom: 20px
}

.ads-diy-desc-item {
    color: var(--c-text);
    font-size: 1.05rem;
    line-height: 1.6;
    margin-bottom: 12px;
    padding-left: 25px;
    position: relative
}

.ads-diy-desc-item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 8px;
    height: 8px;
    background: var(--c-accent-light);
    border-radius: 50%;
    box-shadow: 0 0 10px var(--c-accent-light), 0 0 20px var(--c-accent-light);
    animation: signalPulse 2s infinite
}

@keyframes signalPulse {
    0% {
        transform: scale(1);
        opacity: 1
    }

    50% {
        transform: scale(1.5);
        opacity: 0.5
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

.pulse-glow i {
    animation: alertGlow 1.5s infinite ease-in-out
}

@keyframes alertGlow {
    0% {
        filter: drop-shadow(0 0 2px var(--c-secondary));
        transform: scale(1)
    }

    50% {
        filter: drop-shadow(0 0 15px var(--c-secondary));
        transform: scale(1.1)
    }

    100% {
        filter: drop-shadow(0 0 2px var(--c-secondary));
        transform: scale(1)
    }
}

.ads-diy-icon-box {
    width: 65px;
    height: 65px;
    background: rgba(89, 168, 217, 0.12);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-primary)
}

.ads-diy-side {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center
}

.ads-diy-step {
    font-weight: 800;
    color: var(--c-light);
    margin-top: 10px;
    font-size: 14px
}

.ads-diy-h4 {
    color: var(--c-primary);
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 15px
}

.rk-p {
    color: var(--c-text);
    margin-bottom: 15px;
    font-weight: 500
}

.ads-internal-note {
    margin-top: 20px;
    padding: 20px;
    background-color: #f0f7ff;
    border-radius: 12px;
    border-left: 4px solid var(--c-light)
}

.ads-important-alert-card {
    background: #fff5f5;
    border: 1px solid #f9dcdc;
    border-left: 6px solid var(--c-secondary);
    border-radius: 15px;
    padding: 25px;
    display: flex;
    align-items: center;
    gap: 20px
}

.ads-alert-icon {
    font-size: 30px;
    color: var(--c-secondary)
}

.ads-alert-text p {
    color: #741d24;
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

@media (max-width:768px) {
    .ads-diy-long-card {
        flex-direction: column;
        padding: 25px
    }

    .ads-diy-side {
        flex-direction: row;
        gap: 15px;
        margin-bottom: 15px
    }
}

.ads-insp-root {
    --ads-insp-primary: var(--c-primary-dark);
    --ads-insp-accent: var(--c-secondary);
    --ads-insp-text: #002670;
    --ads-insp-bg: #ffffff;
    padding: 30px 0px;
    background-color: var(--ads-insp-bg)
}

.ads-insp-root * {
    box-sizing: border-box
}

.ads-insp-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center
}

.ads-insp-content {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ads-insp-h2 {
    color: var(--ads-insp-primary) !important;
    font-size: 35px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    margin: 0 !important
}

.ads-insp-p {
    color: var(--ads-insp-text) !important;
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0 !important
}

.ads-insp-img-wrap {
    position: relative;
    width: 100%
}

.ads-insp-img-wrap::after {
    content: '';
    position: absolute;
    top: 20px;
    right: -20px;
    width: 100%;
    height: 100%;
    border: 2px solid var(--ads-insp-primary);
    border-radius: 20px;
    z-index: 1
}

.ads-insp-img-container {
    position: relative;
    z-index: 2;
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 38, 112, 0.15);
    aspect-ratio: 4 / 3;
    background-color: #f0f0f0
}

.ads-insp-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.ads-insp-badge {
    position: absolute;
    top: 20px;
    left: 20px;
    background: var(--ads-insp-accent);
    color: #ffffff;
    padding: 8px 15px;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 3
}

@media (max-width:991px) {
    .ads-insp-container {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .ads-insp-img-wrap {
        max-width: 500px;
        margin: 0 auto;
        order: -1
    }

    .ads-insp-img-wrap::after {
        display: none
    }
}

@media (max-width:768px) {
    .ads-insp-root {
        padding: 40px 15px !important
    }

    .ads-insp-h2 {
        font-size: 30px !important;
        text-align: left !important;
        font-weight: 500 !important
    }

    .ads-insp-p {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: left !important
    }

    .ads-insp-img-wrap {
        width: 100%
    }
}

.ads-insp-cta {
    margin-top: 10px
}

.ads-insp-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 22px;
    border-radius: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
    color: #fff;
    font-size: 14px;
    background: var(--ads-insp-accent)
}

.ads-insp-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2);
    color: #fff
}

.ads-tbl-root {
    --ads-tbl-primary: var(--c-primary-dark);
    --ads-tbl-accent: var(--c-secondary);
    --ads-tbl-text: #002670;
    --ads-tbl-light-blue: #f0f7ff;
    --ads-tbl-border: #dbeafe;
    padding: 0px 0;
    background-color: #ffffff
}

.ads-tbl-root * {
    box-sizing: border-box;
    font-family: "Roboto", Sans-serif !important
}

.ads-tbl-container {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px
}

.ads-tbl-h3 {
    color: var(--ads-tbl-primary);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    gap: 12px
}

.ads-tbl-wrapper {
    margin-bottom: 60px
}

.ads-tbl-content {
    width: 100%;
    border-collapse: collapse;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 84, 136, 0.08);
    border: 1px solid var(--ads-tbl-border)
}

.ads-tbl-content thead {
    background-color: #59a8d9 !important
}

.ads-tbl-content th {
    padding: 18px 20px;
    text-align: left;
    font-size: 15px;
    font-weight: 800;
    color: var(--ads-tbl-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid var(--ads-tbl-border)
}

.ads-tbl-content td {
    padding: 18px 20px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 1.05rem !important;
    color: var(--ads-tbl-text);
    line-height: 1.6 !important;
    background: #ffffff
}

.ads-tbl-content tr:last-child td {
    border-bottom: none
}

.ads-tbl-content tbody tr:nth-child(even) td {
    background-color: #fafcfe
}

.ads-tbl-price {
    font-weight: 900;
    color: var(--ads-tbl-primary);
    font-size: 18px
}

.ads-tbl-urgence .ads-tbl-price {
    color: var(--ads-tbl-accent)
}

.ads-tbl-bold {
    font-weight: 800;
    color: var(--ads-tbl-primary)
}

@media (max-width:768px) {
    .ads-tbl-root {
        padding: 30px 0 !important
    }

    .ads-tbl-h3 {
        font-size: 1.2rem !important;
        text-align: left
    }

    .ads-tbl-content,
    .ads-tbl-content thead,
    .ads-tbl-content tbody,
    .ads-tbl-content th,
    .ads-tbl-content td,
    .ads-tbl-content tr {
        display: block;
        width: 100%
    }

    .ads-tbl-content thead {
        display: none
    }

    .ads-tbl-content tr {
        margin-bottom: 20px;
        border: 1px solid var(--ads-tbl-border);
        border-radius: 12px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
        overflow: hidden
    }

    .ads-tbl-content td {
        text-align: left !important;
        padding: 12px 15px !important;
        border-bottom: 1px solid #f1f5f9;
        display: flex;
        flex-direction: column;
        align-items: flex-start
    }

    .ads-tbl-content td::before {
        content: attr(data-label);
        font-weight: 800;
        color: var(--ads-tbl-primary);
        text-transform: uppercase;
        font-size: 11px;
        margin-bottom: 4px
    }

    .ads-tbl-content td:last-child {
        border-bottom: none
    }

    .ads-tbl-urgence {
        border-left: 5px solid var(--ads-tbl-accent) !important
    }
}

.ads-pricing-cta-section {
    display: flex;
    justify-content: center;
    gap: 15px
}

.ads-pricing-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    border-radius: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.3s ease;
    color: #fff;
    font-size: 14px;
    background: var(--c-primary)
}

.ads-pricing-cta-btn:last-child {
    background: var(--c-secondary)
}

.ads-concl-root {
    --ads-concl-primary: var(--c-primary-dark);
    --ads-concl-accent: var(--c-secondary);
    --ads-concl-text: #002670;
    --ads-concl-bg: #ffffff;
    --ads-concl-light: #f8fafc;
    padding: 0px 0px;
    background-color: var(--ads-concl-bg)
}

.ads-concl-root * {
    box-sizing: border-box
}

.ads-concl-container {
    max-width: 900px;
    margin: 0 auto;
    position: relative
}

.ads-concl-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 50px;
    text-align: center;
    border: 1px solid #e2e8f0;
    box-shadow: 0 20px 40px rgba(0, 84, 136, 0.08);
    position: relative;
    overflow: hidden
}

.ads-concl-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
    background: linear-gradient(90deg, var(--ads-concl-primary), var(--ads-concl-accent))
}

.ads-concl-icon-wrap {
    width: 60px;
    height: 60px;
    background: var(--ads-concl-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 30px auto;
    color: var(--ads-concl-primary)
}

.ads-concl-icon-wrap svg {
    width: 32px;
    height: 32px
}

.ads-concl-h2 {
    color: var(--ads-concl-primary) !important;
    font-size: 35px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 25px 0 !important
}

.ads-concl-p {
    color: var(--ads-concl-text) !important;
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
    margin: 0 !important;
    opacity: 0.95
}

@media (max-width:768px) {
    .ads-concl-root {
        padding: 50px 15px !important
    }

    .ads-concl-card {
        padding: 35px 25px !important;
        text-align: left !important;
        border-radius: 20px
    }

    .ads-concl-icon-wrap {
        margin: 0 0 20px 0 !important;
        width: 50px;
        height: 50px
    }

    .ads-concl-h2 {
        font-size: 30px !important;
        text-align: left !important;
        font-weight: 800 !important
    }

    .ads-concl-p {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: left !important
    }
}

.ads-split-compact {
    background-color: #ffffff
}

.ads-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center
}

.ads-text-side {
    display: flex;
    flex-direction: column;
    gap: 18px
}

.ads-intro-card {
    background-color: #fff5f5;
    border-left: 5px solid var(--c-secondary);
    padding: 20px;
    border-radius: 12px;
    display: flex;
    gap: 15px;
    box-shadow: 0 5px 15px rgba(191, 38, 51, 0.05)
}

.ads-intro-card i {
    color: var(--c-secondary);
    font-size: 20px;
    margin-top: 3px
}

.ads-intro-text {
    color: #002670;
    font-size: 15px;
    line-height: 1.6;
    margin: 0
}

.ads-h2-main {
    color: var(--c-primary);
    font-size: 34px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 5px 0 -10px 0 !important
}

.ads-info-card {
    background-color: #f0f7ff;
    padding: 25px 30px;
    border-radius: 20px;
    border: 1px solid rgba(9, 87, 136, 0.08)
}

.ads-p-text {
    color: #002670;
    font-size: 16px;
    line-height: 1.7;
    margin: 0 0 15px 0
}

.ads-p-link {
    color: var(--c-secondary);
    text-decoration: none;
    font-weight: 700;
    border-bottom: 2px solid rgba(191, 38, 51, 0.2);
    transition: all 0.3s ease
}

.ads-p-link:hover {
    border-bottom-color: var(--c-secondary);
    background-color: rgba(191, 38, 51, 0.05)
}

.ads-bouchon-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.ads-bouchon-list li {
    color: #002670;
    font-size: 15px;
    line-height: 1.5;
    position: relative;
    padding-left: 25px
}

.ads-bouchon-list li::before {
    content: "\f111";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 8px;
    position: absolute;
    left: 0;
    top: 8px;
    color: var(--c-secondary)
}

@keyframes softBlink {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0.4
    }

    100% {
        opacity: 1
    }
}

.ads-bouchon-list li span {
    color: var(--c-secondary);
    font-weight: 700;
    animation: softBlink 2s infinite ease-in-out
}

.ads-cta-row {
    display: flex;
    gap: 15px;
    margin-top: 10px
}

.ads-btn-red {
    background-color: var(--c-secondary);
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 800;
    font-size: 14px;
    padding: 18px 25px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    flex: 1;
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2)
}

.ads-btn-red:hover {
    transform: translateY(-3px);
    filter: brightness(1.1)
}

.ads-img-side {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 600px
}

.ads-img-stack {
    position: relative;
    width: 100%;
    height: 100%
}

.ads-img-stack img {}

.img-lavabo {
    width: 70%;
    height: 55%;
    top: 10%;
    left: 0;
    z-index: 1
}

.img-lave-vaisselle {
    width: 70%;
    height: 55%;
    z-index: 2;
    right: -100px;
    bottom: -70px
}

.ads-img-stack img:hover {
    transform: scale(1.05);
    z-index: 10
}

@media (max-width:768px) {
    .ads-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important
    }

    .ads-cta-row {
        flex-direction: column !important;
        gap: 12px !important
    }

    .ads-btn-red {
        width: 100% !important;
        flex: none !important
    }

    .ads-h2-main {
        font-size: 26px !important;
        text-align: left !important
    }

    .ads-img-side {
        order: -1 !important;
        height: auto !important
    }

    .ads-img-stack {
        height: auto !important
    }

    .img-lave-vaisselle {
        display: none !important
    }

    .img-lavabo {
        position: relative !important;
        width: 100% !important;
        height: 300px !important;
        top: 0 !important;
        left: 0 !important;
        margin: 0 auto !important;
        display: block !important
    }
}

.ads-vfinal-section {
    --primary: var(--c-primary-dark);
    --accent: var(--c-secondary);
    --text: #002670;
    --bg: #f9fbfc;
    --white: #ffffff;
    padding: 40px 0px
}

.ads-vfinal-container {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 30px;
    max-width: 1250px;
    margin: 0 auto
}

.ads-vfinal-card {
    grid-column: span 2;
    background: var(--c-bg);
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 15px 35px rgba(0, 84, 136, 0.08);
    border: 1px solid rgba(0, 84, 136, 0.05);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    text-decoration: none
}

.ads-vfinal-card:nth-child(4),
.ads-vfinal-card:nth-child(5) {
    grid-column: span 3
}

.ads-vfinal-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 25px 50px rgba(0, 84, 136, 0.15);
    border-color: var(--accent)
}

.ads-vfinal-image {
    width: 100%;
    height: 240px;
    overflow: hidden;
    position: relative
}

.ads-vfinal-image img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    transition: transform 0.8s ease
}

.ads-vfinal-card:hover .ads-vfinal-image img {
    transform: scale(1.08)
}

.ads-vfinal-body {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

.ads-vfinal-h3 {
    color: var(--primary);
    font-size: 1.4rem;
    font-weight: 800;
    margin: 0 0 15px 0;
    line-height: 1.2
}

.ads-vfinal-p {
    color: var(--text);
    font-size: 0.98rem;
    line-height: 1.6;
    margin: 0;
    opacity: 0.9
}

@media (max-width:1024px) {

    .ads-vfinal-card,
    .ads-vfinal-card:nth-child(4),
    .ads-vfinal-card:nth-child(5) {
        grid-column: span 3
    }

    .ads-vfinal-card:nth-child(5) {
        grid-column: span 6
    }
}

@media (max-width:768px) {
    .ads-vfinal-container {
        grid-template-columns: 1fr
    }

    .ads-vfinal-card,
    .ads-vfinal-card:nth-child(4),
    .ads-vfinal-card:nth-child(5) {
        grid-column: span 1
    }

    .ads-vfinal-h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

@media (max-width:1024px) {
    .elementor-36540 .elementor-element.elementor-element-1a5340a {
        padding: 70px 15px 50px 15px !important
    }
}

.ads-split-compact {
    padding: 30px 20px;
    background-color: #ffffff
}

.ads-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center
}

.ads-text-side {
    display: flex;
    flex-direction: column;
    gap: 18px
}

.ads-intro-card {
    background-color: #fff5f5;
    border-left: 5px solid var(--c-secondary);
    padding: 20px;
    border-radius: 12px;
    display: flex;
    gap: 15px;
    box-shadow: 0 5px 15px rgba(191, 38, 51, 0.05)
}

.ads-intro-card i {
    color: var(--c-secondary);
    font-size: 20px;
    margin-top: 3px
}

.ads-intro-text {
    color: #002670;
    font-size: 15px;
    line-height: 1.6;
    margin: 0
}

.ads-h2-main {
    color: var(--c-primary);
    font-size: 34px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    margin: 5px 0 -10px 0 !important
}

.ads-info-card {
    background-color: #f0f7ff;
    padding: 25px 30px;
    border-radius: 20px;
    border: 1px solid rgba(9, 87, 136, 0.08)
}

.ads-p-text {
    color: #002670;
    font-size: 16px;
    line-height: 1.7;
    margin: 0 0 15px 0
}

.ads-p-link {
    color: var(--c-secondary);
    text-decoration: none;
    font-weight: 700;
    border-bottom: 2px solid rgba(191, 38, 51, 0.2);
    transition: all 0.3s ease
}

.ads-p-link:hover {
    border-bottom-color: var(--c-secondary);
    background-color: rgba(191, 38, 51, 0.05)
}

.ads-bouchon-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.ads-bouchon-list li {
    color: #002670;
    font-size: 15px;
    line-height: 1.5;
    position: relative;
    padding-left: 25px
}

.ads-bouchon-list li::before {
    content: "\f111";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 8px;
    position: absolute;
    left: 0;
    top: 8px;
    color: var(--c-secondary)
}

@keyframes softBlink {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0.4
    }

    100% {
        opacity: 1
    }
}

.ads-bouchon-list li span {
    color: var(--c-secondary);
    font-weight: 700;
    animation: softBlink 2s infinite ease-in-out
}

.ads-cta-row {
    display: flex;
    gap: 15px;
    margin-top: 10px
}

.ads-btn-red {
    background-color: var(--c-secondary);
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 800;
    font-size: 14px;
    padding: 18px 25px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    flex: 1;
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2)
}

.ads-btn-red:hover {
    transform: translateY(-3px);
    filter: brightness(1.1)
}

.ads-img-side {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 600px
}

.ads-img-stack {
    position: relative;
    width: 100%;
    height: 100%
}

.ads-img-stack img {
    position: absolute !important;
    width: 100%;
    height: auto;
    max-height: 360px;
    object-fit: cover;
    z-index: 1;
    border: 6px solid #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 15px 45px rgba(0, 38, 112, 0.15) !important;
    transition: transform 0.5s ease, z-index 0.3s
}

.img-lavabo {
    width: 70%;
    height: 55%;
    top: 10%;
    left: 0;
    z-index: 1
}

.img-lave-vaisselle {
    width: 70%;
    height: 55%;
    z-index: 2;
    right: -100px;
    bottom: -70px
}

.ads-img-stack img:hover {
    transform: scale(1.05);
    z-index: 10
}

@media (max-width:768px) {
    .ads-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important
    }

    .ads-cta-row {
        flex-direction: column !important;
        gap: 12px !important
    }

    .ads-btn-red {
        width: 100% !important;
        flex: none !important
    }

    .ads-h2-main {
        font-size: 26px !important;
        text-align: left !important
    }

    .ads-img-side {
        order: -1 !important;
        height: auto !important
    }

    .ads-img-stack {
        height: auto !important
    }

    .img-lave-vaisselle {
        display: none !important
    }

    .img-lavabo {
        position: relative !important;
        width: 100% !important;
        height: 300px !important;
        top: 0 !important;
        left: 0 !important;
        margin: 0 auto !important;
        display: block !important
    }
}

.hkangles-blog-banner-content-wrap .read-more-link a:hover {
    background: #fff !important;
    color: #162b62
}

.hkangles-tab-left-padding .elementor-element.elementor-element-3592970f>.elementor-widget-container {
    padding: 40px 15px 37px 22px;
    background-color: #162B62;
    border-radius: 50% 0% 50% 50%
}

.elementor-20488 .elementor-element.elementor-element-4fc06f65 {
    width: 53.419%
}

.elementor-20488 .elementor-element.elementor-element-4fc06f65>.elementor-element-populated {
    margin: 0px 0px 0px 0px;
    --e-column-margin-right: 0px;
    --e-column-margin-left: 0px
}

.elementor-20488 .elementor-element.elementor-element-4fc06f65>.elementor-element-populated>.elementor-widget-wrap {
    padding: 0px 60px 0px 0px
}

.elementor-20488 .elementor-element.elementor-element-10920035 {
    color: #6C7176;
    font-family: "Roboto", Sans-serif !important;
    font-size: 15px;
    font-weight: 400
}

.elementor-20488 .elementor-element.elementor-element-10920035>.elementor-widget-container {
    margin: -26px 0px 0px 0px;
    padding: 0px 0px 0px 0px
}

.elementor-20488 .elementor-element.elementor-element-6fe81a49>.elementor-widget-container {
    margin: -5px 0px 0px 0px;
    padding: 0px 0px 0px 0px
}

.elementor-20488 .elementor-element.elementor-element-34ea46c1 {
    width: 46.581%
}

.elementor-20488 .elementor-element.elementor-element-7577bbb img {
    border-radius: 50px 50px 50px 50px
}

.elementor-20488 .elementor-element.elementor-element-3592970f>.elementor-widget-container {
    padding: 40px 15px 37px 22px;
    background-color: #162B62;
    border-radius: 50% 0% 50% 50%
}

.elementor-20488 .elementor-element.elementor-element-3592970f {
    width: auto;
    width: auto;
    top: 0px
}

body:not(.rtl) .elementor-20488 .elementor-element.elementor-element-3592970f {
    right: 0px
}

body.rtl .elementor-20488 .elementor-element.elementor-element-3592970f {
    left: 0px
}

.hkangles-tab-left-padding .elementor-widget-wrap>.elementor-element.elementor-absolute {
    position: absolute;
    RIGHT: 0;
    width: auto;
    top: 0;
    display: inline-block
}

.hkangles-tab-left-padding img {
    border-radius: 50px;
    width: 545px;
    height: 355px;
    text-align: right;
    float: right
}

.elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-4fc06f65.cd-bg-color-transparent {
    padding: 0px 60px 0px 0px
}

.hkangles-tab-left-padding .elementor-text-editor.elementor-clearfix p {
    margin-top: -25px;
    font-family: "Roboto", Sans-serif !important;
    font-size: 15px
}

@media (max-width:1024px) {
    .hkangles-tab-left-padding img {
        height: 100%
    }

    .elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-4fc06f65.cd-bg-color-transparent {
        padding: 0
    }
}

.slider-demo-icon {
    width: 48px;
    height: 49px;
    line-height: 50px;
    font-size: 18px;
    display: inline-block;
    text-align: center !important;
    background-color: #162b62;
    color: #fff;
    border-radius: 50%
}

@media (max-width:991px) {
    .slider-demo-icon {
        width: 40px !important;
        height: 40px !important;
        line-height: 40px !important;
        font-size: 15px
    }
}

@media (max-width:767px) {
    .slider-demo-icon {
        width: 30px !important;
        height: 30px !important;
        line-height: 30px !important;
        font-size: 10px
    }

    .slider-heading-subtitle:before {
        width: 3px;
        height: 10px
    }

    .slider-heading-subtitle:after {
        width: 3px;
        height: 10px
    }
}

.hkangles-transparant-color {
    color: #00000000 !important;
    -webkit-text-stroke: 1px rgb(255 255 255 / 58%) !important
}

.dm-db-h2 {
    font-weight: 800
}

.dm-db-ico {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center
}

.dm-db-ico svg {
    width: 22px;
    height: 22px;
    stroke-width: 2
}

.dm-db-h3 {
    font-weight: 800
}

@media(max-width:991px) {
    .dm-db-top {
        flex-direction: column;
        gap: 30px
    }

    .dm-db-img-wrap {
        width: 100%
    }

    .dm-db-grid {
        grid-template-columns: 1fr
    }
}

@media(max-width:767px) {
    .dm-db-h2 {
        font-weight: 800
    }

    .dm-db-root {
        padding: 40px 16px
    }
}

.bento-ui-section {
    padding: 60px 0px;
    background-color: var(--c-bg)
}

.bento-ui-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px
}

.bento-header {
    text-align: center;
    margin-bottom: 45px
}

.bento-main-h2 {
    color: var(--c-primary-dark);
    font-weight: 800;
    margin: 0
}

.bento-ui-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px
}

.bento-info-card {
    grid-column: 1 / -1;
    background-color: var(--c-bg-light);
    padding: 35px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 30px;
    border-radius: 24px;
    margin-bottom: 10px
}

@media (max-width:991px) {
    .bento-ui-grid {
        grid-template-columns: 1fr
    }
}

@media (max-width:768px) {
    .bento-header {
        text-align: left
    }
}

.ads-srv2-root {
    --ads-srv2-primary: var(--c-primary-dark);
    --ads-srv2-accent: var(--c-secondary);
    --ads-srv2-text: #002670;
    --ads-srv2-bg-light: #f8fafc;
    background-color: #ffffff;
    padding: 40px 0px;
    font-family: "Roboto", Sans-serif !important
}

.ads-srv2-root * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

.ads-srv2-wrap {
    max-width: 1100px;
    margin: 0 auto
}

.ads-srv2-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px
}

.ads-srv2-item {
    background: var(--ads-srv2-bg-light);
    border-radius: 24px;
    border: 1px solid rgba(0, 84, 136, 0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative
}

.ads-srv2-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(0, 38, 112, 0.1);
    background: #ffffff;
    border-color: var(--ads-srv2-primary)
}

.ads-srv2-item::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background: var(--ads-srv2-accent);
    transition: width 0.4s ease
}

.ads-srv2-item:hover::after {
    width: 100%
}

.ads-srv2-img-box {
    position: relative;
    width: 100%;
    height: 220px;
    overflow: hidden
}

.ads-srv2-img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease
}

.ads-srv2-item:hover .ads-srv2-img-box img {
    transform: scale(1.1)
}

.ads-srv2-num {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 16px;
    font-weight: 800;
    color: #ffffff;
    background: var(--ads-srv2-primary);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    z-index: 2;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2)
}

.ads-srv2-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.ads-srv2-h3 {
    font-size: 20px !important;
    color: var(--ads-srv2-primary);
    font-weight: 800 !important;
    line-height: 1.2 !important
}

.ads-srv2-p {
    font-size: 1.05rem !important;
    color: var(--ads-srv2-text);
    line-height: 1.6 !important;
    font-weight: 400 !important
}

@media(max-width:768px) {
    .ads-srv2-root {
        padding: 40px 15px !important
    }

    .ads-srv2-grid {
        grid-template-columns: 1fr !important;
        gap: 25px
    }

    .ads-srv2-item {
        text-align: left !important
    }

    .ads-srv2-h3 {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-srv2-p {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: left !important
    }

    .ads-srv2-content {
        padding: 25px 20px !important
    }

    .ads-srv2-img-box {
        height: 180px
    }
}

.ads-v5-section {
    --p-blue: var(--c-primary);
    --p-red: var(--c-secondary);
    --p-text: #002670;
    --p-bg-light: #f4f7fa;
    margin: 40px auto;
    max-width: 1350px;
    padding: 0 20px
}

.ads-v5-wrapper {
    display: flex;
    gap: 50px;
    align-items: flex-start
}

.ads-v5-left {
    flex: 1.2
}

.ads-v5-h2 {
    color: var(--p-blue);
    font-size: 30px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    margin-bottom: 25px !important
}

.ads-v5-grid {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ads-v5-geo-card {
    background: var(--p-bg-light);
    padding: 30px;
    border-radius: 16px;
    border-left: 6px solid var(--p-blue);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
    gap: 15px
}

.ads-v5-geo-card:hover {
    background: #ffffff;
    box-shadow: 0 15px 35px rgba(9, 87, 136, 0.1);
    transform: translateX(10px);
    border-left-color: var(--p-red)
}

.ads-v5-h3 {
    width: 100%;
    color: var(--p-blue);
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    gap: 12px
}

.ads-v5-geo-card:hover .ads-v5-h3,
.ads-v5-geo-card:hover .ads-v5-h3 i {
    color: var(--p-red)
}

.ads-v5-p {
    margin: 0 !important;
    color: var(--p-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-v5-p-3 {
    margin: 20px 10px 20px 10px;
    color: var(--p-text);
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-v5-right {
    flex: 0.8;
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    z-index: 10
}

.ads-v5-map-container {
    width: 100%;
    height: 600px;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
    border: 5px solid #ffffff;
    background: #f0f0f0
}

#ads-v5-map-id {
    width: 100%;
    height: 100%
}

.leaflet-popup-content-wrapper {
    border-radius: 12px;
    padding: 0;
    overflow: hidden
}

.ads-v5-pop-header {
    background: var(--p-blue);
    color: white;
    padding: 12px;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 14px
}

.ads-v5-pop-body {
    padding: 15px
}

.ads-v5-pop-btn {
    display: block;
    background: var(--c-secondary);
    color: white !important;
    text-align: center;
    padding: 8px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 700;
    font-size: 11px;
    margin-top: 10px
}

.ads-v5-pin {
    background-color: var(--p-blue);
    width: 20px;
    height: 20px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    border: 2px solid #fff;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3)
}

@media (max-width:1100px) {
    .ads-v5-wrapper {
        flex-direction: column !important
    }

    .ads-v5-left {
        order: 1 !important
    }

    .ads-v5-right {
        position: relative !important;
        top: 0 !important;
        width: 100% !important;
        order: 2 !important;
        margin-top: 30px !important;
        margin-bottom: 0 !important
    }

    .ads-v5-map-container {
        height: 400px !important
    }
}

@media (max-width:768px) {
    .ads-v5-h3 {
        font-size: 20px !important;
        text-align: left !important
    }

    .ads-v5-p {
        font-size: 0.95rem !important;
        text-align: left !important
    }
}

.ads-geo-v3-section {
    padding: 20px 0;
    background-color: transparent;
    font-family: "Roboto", Sans-serif !important
}

.ads-geo-v3-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    max-width: 1200px;
    margin: 0 auto 30px auto
}

.ads-geo-v3-card {
    background-color: #ffffff;
    border-left: 6px solid var(--c-primary);
    border-radius: 15px;
    padding: 35px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.4s ease-in-out;
    box-shadow: 0 8px 25px rgba(0, 38, 112, 0.06);
    height: 100%
}

.ads-geo-v3-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 38, 112, 0.12);
    border-color: var(--c-secondary)
}

.ads-geo-v3-icon-box {
    width: 55px;
    height: 55px;
    background-color: rgba(89, 168, 217, 0.15);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: all 0.3s ease
}

.ads-geo-v3-icon-box i {
    color: var(--c-primary);
    font-size: 24px
}

.ads-geo-v3-card:hover .ads-geo-v3-icon-box {
    background-color: var(--c-secondary)
}

.ads-geo-v3-card:hover .ads-geo-v3-icon-box i {
    color: #ffffff
}

.ads-geo-v3-h3 {
    font-size: 20px;
    font-weight: 800;
    color: var(--c-primary);
    margin: 0 0 15px 0;
    line-height: 1.3;
    transition: color 0.3s ease;
    position: relative;
    z-index: 1
}

.ads-geo-v3-card:hover .ads-geo-v3-h3 {
    color: var(--c-secondary)
}

.ads-geo-v3-text {
    font-size: 15px;
    color: #002670;
    line-height: 1.6;
    margin: 0;
    position: relative;
    z-index: 1
}

.ads-geo-v3-bg-icon {
    position: absolute;
    top: -10px;
    right: -10px;
    font-size: 110px;
    color: rgba(89, 168, 217, 0.04);
    transform: rotate(15deg);
    z-index: 0;
    transition: all 0.5s ease
}

.ads-geo-v3-card:hover .ads-geo-v3-bg-icon {
    color: rgba(191, 38, 51, 0.06);
    transform: rotate(0deg) scale(1.1)
}

.ads-geo-v3-footer-note {
    max-width: 1200px;
    margin: 0 auto;
    padding: 25px;
    background: #f8fbff;
    border-radius: 15px;
    border: 1px dashed var(--c-primary);
    display: flex;
    justify-content: center;
    align-items: center
}

.ads-geo-v3-note-content {
    display: flex;
    align-items: center;
    gap: 20px;
    max-width: 900px
}

.ads-geo-v3-google-icon {
    font-size: 28px;
    color: #4285F4
}

.ads-geo-v3-note-content p {
    margin: 0;
    font-size: 16px;
    color: #002670;
    line-height: 1.5;
    text-align: center
}

@media (max-width:900px) {
    .ads-geo-v3-grid {
        grid-template-columns: 1fr
    }

    .ads-geo-v3-card {
        padding: 30px 20px
    }

    .ads-geo-v3-footer-note {
        margin: 0 15px
    }

    .ads-geo-v3-note-content {
        flex-direction: column;
        text-align: center;
        gap: 10px
    }

    .ads-geo-v3-h3 {
        font-size: 20px !important;
        line-height: 25px !important
    }
}

.ads-cn-section {
    padding: 60px 0px;
    background-color: #ffffff;
    font-family: "Roboto", Sans-serif !important
}

.ads-cn-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto
}

.ads-cn-card {
    background-color: #ffffff;
    border-left: 6px solid var(--c-primary);
    border-radius: 15px;
    padding: 40px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 10px 40px -10px rgba(0, 84, 136, 0.1)
}

.ads-cn-card-full {
    grid-column: 1 / -1
}

.ads-cn-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px -15px rgba(191, 38, 51, 0.2);
    border-color: var(--c-secondary)
}

.ads-cn-icon-box {
    width: 60px;
    height: 60px;
    background-color: rgba(89, 168, 217, 0.15);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
    transition: all 0.3s ease;
    z-index: 2
}

.ads-cn-icon-box i {
    color: var(--c-primary);
    font-size: 26px
}

.ads-cn-card:hover .ads-cn-icon-box {
    background-color: var(--c-secondary)
}

.ads-cn-card:hover .ads-cn-icon-box i {
    color: #ffffff
}

.ads-cn-h3 {
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: var(--c-primary);
    margin: 0 0 15px 0;
    transition: color 0.3s ease
}

.ads-cn-card:hover .ads-cn-h3 {
    color: var(--c-secondary)
}

.ads-cn-text {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    color: #002670;
    margin: 0;
    z-index: 1
}

.ads-cn-bg-icon {
    position: absolute;
    top: -15px;
    right: -15px;
    font-size: 120px;
    color: rgba(89, 168, 217, 0.04);
    transform: rotate(15deg);
    z-index: 0;
    transition: all 0.5s ease
}

.ads-cn-card:hover .ads-cn-bg-icon {
    color: rgba(191, 38, 51, 0.06);
    transform: rotate(0deg) scale(1.1)
}

@media (max-width:900px) {
    .ads-cn-section {
        padding: 40px 15px !important
    }

    .ads-cn-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important
    }

    .ads-cn-card-full {
        grid-column: auto
    }

    .ads-cn-h3 {
        font-size: 1.2rem !important;
        text-align: left !important
    }

    .ads-cn-text {
        font-size: 0.95rem !important;
        text-align: left !important
    }

    .ads-cn-card {
        padding: 30px 20px !important;
        align-items: flex-start !important
    }
}

.ads-srv2-note-box {
    margin: 20px auto 0 auto !important;
    width: 80% !important;
    padding: 20px 25px;
    background-color: var(--ads-srv2-bg-light);
    border-radius: 12px;
    border-left: 5px solid var(--ads-srv2-primary);
    box-shadow: 0 4px 12px rgba(0, 38, 112, 0.03)
}

.ads-srv2-note-box p {
    margin: 0 !important;
    color: #94a3b8 !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important
}

.ads-srv2-note-box strong {
    color: #64748b !important;
    font-weight: 700
}

@media (max-width:768px) {
    .ads-srv2-note-box {
        width: 100% !important;
        margin-top: 30px !important;
        padding: 15px 20px !important
    }
}

section.error-404 .page-content p {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    margin-left: 20% !important;
    margin-top: 40px !important;
    width: 60%;
    line-height: 34px;
    margin-bottom: 35px;
    text-align: center !important;
    align-items: center !important
}

.tx-merci-container {
    --navy-dark: #17234c;
    --blue-theme: #59A8D9;
    --red-btn: var(--c-secondary);
    --white: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    padding: 20px;
    font-family: "Roboto", Sans-serif !important;
    text-align: center;
    background-color: #fcfdfe
}

.tx-merci-card {
    max-width: 600px;
    width: 100%;
    position: relative
}

.tx-icon-visual {
    position: relative;
    width: 180px;
    height: 180px;
    margin: 0 auto 40px;
    display: flex;
    align-items: center;
    justify-content: center
}

.tx-main-circle {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, var(--blue-theme) 0%, #468db5 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    z-index: 2;
    box-shadow: 0 10px 25px rgba(89, 168, 217, 0.3);
    animation: txPop 0.6s cubic-bezier(0.17, 0.67, 0.83, 0.67)
}

.tx-dot {
    position: absolute;
    background-color: var(--blue-theme);
    border-radius: 50%;
    opacity: 0.6;
    animation: txFloat 3s infinite ease-in-out
}

.d1 {
    width: 12px;
    height: 12px;
    top: 10%;
    left: 20%;
    animation-delay: 0.2s
}

.d2 {
    width: 8px;
    height: 8px;
    top: 25%;
    right: 15%;
    animation-delay: 0.5s
}

.d3 {
    width: 14px;
    height: 14px;
    bottom: 15%;
    left: 10%;
    opacity: 0.8
}

.d4 {
    width: 6px;
    height: 6px;
    bottom: 10%;
    right: 25%
}

.d5 {
    width: 10px;
    height: 10px;
    top: 50%;
    right: 5%;
    animation-delay: 0.8s
}

.d6 {
    width: 5px;
    height: 5px;
    top: 5%;
    right: 40%
}

.d7 {
    width: 7px;
    height: 7px;
    bottom: 5%;
    left: 45%
}

.tx-merci-h1 {
    font-size: clamp(24px, 4vw, 36px);
    font-weight: 600;
    color: var(--navy-dark);
    margin-bottom: 20px;
    line-height: 1.2
}

.tx-merci-p {
    font-size: 18px;
    color: #5a6375;
    line-height: 1.6;
    margin-bottom: 40px !important;
    max-width: 500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 30px !important
}

.tx-btn-back {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background-color: var(--red-btn);
    color: var(--c-bg) !important;
    text-decoration: none !important;
    padding: 18px 40px;
    border-radius: 8px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 1px;
    transition: 0.3s all ease;
    box-shadow: 0 8px 20px rgba(191, 38, 51, 0.2)
}

.tx-btn-back:hover {
    background-color: var(--blue-theme);
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(89, 168, 217, 0.3)
}

@keyframes txPop {
    0% {
        transform: scale(0);
        opacity: 0
    }

    80% {
        transform: scale(1.1)
    }

    100% {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes txFloat {

    0%,
    100% {
        transform: translateY(0px)
    }

    50% {
        transform: translateY(-10px)
    }
}

@media (max-width:600px) {
    .tx-merci-h1 {
        font-size: 24px
    }

    .tx-merci-p {
        font-size: 16px
    }

    .tx-btn-back {
        width: 100%;
        justify-content: center
    }
}

.ads-stats-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    background: #ffffff;
    padding: 40px 20px;
    border-radius: 30px;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
    max-width: 1200px;
    margin: 40px auto
}

.ads-stat-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 15px;
    min-width: 250px
}

.ads-stat-icon i {
    font-size: 45px;
    color: var(--c-secondary);
    display: flex;
    align-items: center;
    justify-content: center
}

.ads-stat-content {
    display: flex;
    flex-direction: column
}

.ads-stat-number {
    font-family: "Roboto", Sans-serif !important;
    font-size: 32px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.1
}

.ads-stat-label {
    font-family: "Roboto", Sans-serif !important;
    font-size: 13px;
    font-weight: 700;
    color: #555555;
    letter-spacing: 0.5px;
    margin-top: 4px;
    text-transform: uppercase
}

@media (max-width:768px) {
    .ads-stats-container {
        flex-direction: column;
        align-items: flex-start;
        padding: 30px;
    }

    .ads-stat-item {
        margin-bottom: 18px;
        width: 100%
    }

    .ads-stat-icon i {
        font-size: 38px
    }

    .ads-stat-number {
        font-size: 30px;
        font-weight: 700;
    }

    .ads-stat-label {
        font-size: 10px;
        font-weight: 500;
    }
}

.c-succ-section {
    padding: 60px 20px;
    background-color: var(--c-bg);
    overflow: hidden
}

.c-succ-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 80px
}

.c-succ-block {
    display: flex;
    align-items: center;
    gap: 50px;
    opacity: 1
}

.c-succ-block.reverse {
    flex-direction: row-reverse
}

.c-succ-content {
    flex: 1
}

.c-succ-title {
    color: var(--c-primary-dark);
    margin-bottom: 20px
}

.c-succ-intro {
    color: #002670;
    margin-bottom: 25px
}

.c-succ-intro a {
    color: #59a8d9;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: var(--transition)
}

.c-succ-list {
    list-style: none;
    padding: 0;
    margin-bottom: 30px
}

.c-succ-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    color: var(--c-text);
    font-weight: 600
}

.c-succ-list i {
    color: var(--c-secondary);
    font-size: 1.2rem
}

.c-succ-box {
    background-color: var(--c-bg-light);
    padding: 20px;
    border-left: 4px solid var(--c-primary-dark);
    border-radius: 8px;
    margin-bottom: 30px
}

.c-succ-box h4 {
    color: var(--c-primary-dark);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1.15rem
}

.c-succ-box p {
    margin: 0;
    color: #002670 !important;
    font-size: 0.95rem
}

.c-succ-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: var(--c-secondary);
    color: #fff !important;
    padding: 15px 35px;
    border-radius: 8px !important;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: var(--transition);
    box-shadow: 0 10px 20px rgba(191, 38, 51, 0.2)
}

.c-succ-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 25px rgba(191, 38, 51, 0.3);
    background-color: #a31f2b
}

.c-succ-visual {
    flex: 1;
    position: relative
}

.c-succ-img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border: 6px solid #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 15px 45px rgba(0, 38, 112, 0.15) !important;
    transition: transform 0.5s ease
}

.c-succ-img:hover {
    transform: scale(1.02)
}

@media (max-width:992px) {

    .c-succ-block,
    .c-succ-block.reverse {
        flex-direction: column;
        gap: 40px
    }

    .c-succ-title {
        font-size: 1.8rem
    }

    .c-succ-visual {
        width: 100%
    }
}