/* =====================================================================
   Elementor Kit — heading mirror  (GENERATED FILE, DO NOT EDIT)
   =====================================================================
   Regenerate with:  python3 tools/build-heading-mirror.py

   Every heading rule in style.css, restated against the level classes
   the widgets stamp on their headings (.ek-h1 … .ek-h4), so the design
   survives an editor changing the heading tag.
   ===================================================================== */

.ek-h1 {
    color: #FFF;
    font-size: 65px;
    font-style: normal;
    font-weight: 600;
    line-height: 72px;
}
.ek-h1 .italic {
    font-family: 'Test Tiempos Fine', sans-serif;
    font-weight: 300;
}
.ek-h2 {
    color: #000;
    font-size: 45px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 15px;
}
.ek-h2 span {
    color: #EF6D2C;
    font-family: 'Test Tiempos Fine', sans-serif;
    font-style: italic;
    font-weight: 300;
    line-height: normal;
}
.ek-h3 {
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
    margin:0 0 8px;
    position:relative;
}
.hero-section .ek-h1 {
    padding-bottom: 10px;
}
.pool-search-component .ek-h3 {
    color: rgba(255, 255, 255, 0.70);
    font-size: 17px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 10px;
}
.model-info .ek-h3 {
    color: #FFF;
    font-family: 'Test Tiempos Fine', sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin: 0 0 20px;
}
.explore-pools .ek-h2 {
    color: #FFF;
}
.explore-pools .ek-h2 span {
    color: #71D8F0;
}
.quality-card .ek-h2 {
    margin: 0 0 20px;
    color: #000;
    font-size: 35px;
    font-style: normal;
    font-weight: 600;
    line-height: 47px;
}
.projects-section .ek-h2 {
    color: #FFF;
}
.projects-section .ek-h2 span {
    color: #71D8F0;
}
.projects-head .ek-h2 {
    max-width: 620px;
}
.project-card .ek-h3 {
    color: #FFF;
    font-family: "Test Tiempos Fine", sans-serif;
    font-size: 35px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin-top: 5px;
}
.project-card.is-active .ek-h3 {
    grid-column: 1;
}
.news-card .ek-h3 {
    color: #FFF;
    font-size: 20px;
    font-weight: 600;
    line-height: 27px;
}
.news-card-large .ek-h3 {
    font-size: 26px;
    line-height: 33px;
    max-width: 480px;
}
@media (max-width: 767px) {
    .news-card-large .ek-h3 {
        font-size: 22px;
        line-height: 29px;
    }
}

.cta-section .ek-h2 {
    max-width: 440px;
}
.footer-col .ek-h4 {
    color: #FFF;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 20px;
}
@media (max-width: 1440px) {
    .ek-h2 {
        font-size: 42px;
    }
    .ek-h1 {
        font-size: 52px;
        line-height: 1.3;
    }
    .pool-search-component .ek-h3 {
        font-size: 16px;
    }
    .model-info .ek-h3 {
        font-size: 28px;
        margin-bottom: 10px;
    }
    .project-card .ek-h3 {
        font-size: 28px;
    }
}

@media (max-width: 1200px) {
    .ek-h2 {
        font-size: 32px;
    }
    .ek-h3 {
        font-size: 20px;
        line-height: 1.2;
    }
}

@media (max-width: 991px) {
    .ek-h1 {
        font-size: 42px;
    }
    .quality-card .ek-h2 {
        font-size: 24px;
        line-height: 1.3;
    }
}

@media (max-width: 767px) {
    .ek-h1 {
        font-size: 34px;
    }
    .hero-section .ek-h1 .italic {
        display: block;
    }
    .quality-card .ek-h2 {
        font-size: 28px;
    }
    .explore-pools .ek-h2 span {
        display: block;
    }
    .ek-h2 {
        font-size: 28px;
        margin-bottom: 10px;
    }
    .ek-h3 {
        font-size: 18px;
    }
    .model-info .ek-h3 {
        margin-bottom: 8px;
    }
    .projects-head .ek-h2 {
        margin-top: 5px;
    }
    .projects-section .ek-h2 span {
        display: block;
    }
    .project-card .ek-h3 {
        font-size: 22px;
    }
    .footer-acc .ek-h4 {
        font-size: 16px;
        margin-bottom: 0;
    }
    .footer-contact .ek-h4 {
        display: none;
    }
    .about-section .ek-h2 span {
        display: block;
    }
}

.pool-slide .model-info .ek-h3 {
    opacity: 0;
    transform: translateY(14px);
    transition:
        opacity .45s var(--ease-out),
        transform .45s var(--ease-out);
}
.pool-slide.slick-center .model-info .ek-h3 {
    opacity: 1;
    transform: none;
}
.pool-slide.slick-center .model-info .ek-h3 {
    transition-delay: .34s;
}
.pool-slider:not(.slick-initialized) .model-info .ek-h3 {
    opacity: 1;
    transform: none;
}
@media (max-width: 767px) {
    .pool-search-component .ek-h3 {
        color: #000;
        font-size: 18px;
        font-weight: 600;
        line-height: 1.2;
        margin: 0 0 14px;
    }
}

.js-anim .pool-slider-wrap:not(.is-in) .pool-slide.slick-center .model-info .ek-h3 {
    opacity: 0;
    transform: translateY(14px);
    transition: none;
}
.model-hero-card .ek-h1 {
    color: #FFF;
    font-size: 65px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 8px;
}
@media (max-width: 1440px) {
    .model-hero-card .ek-h1 {
        font-size: 50px;
    }
}

@media (max-width: 767px) {
    .model-hero-card .ek-h1 {
        font-size: 32px;
    }
}

.about-hero-copy .ek-h1 {
    margin-bottom: 20px;
}
@media (max-width: 767px) {
    .about-hero-copy .ek-h1 {
        font-size: 34px;
        line-height: 42px;
    }
}

.split-copy .ek-h2 {
    color: #FFF;
}
.split-copy .ek-h2 span.teal {
    color: #21C0DA;
}
@media (max-width: 767px) {
    .split-copy .ek-h2 {
        font-size: 28px;
    }
}

.defines-item .ek-h3 {
    color: #000;
    font-size: 30px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 12px;
    transition: all 0.3s ease-in-out;
}
.defines-item.is-highlight .ek-h3, .defines-item:hover .ek-h3 {
    color: #EF6D2C;
}
@media (max-width: 1440px) {
    .defines-item .ek-h3 {
        font-size: 26px;
    }
}

@media (max-width: 767px) {
    .defines-item .ek-h3 {
        font-size: 18px;
    }
}

.listing-hero-inner .ek-h1 {
    margin-bottom: 14px;
}
@media (max-width: 1440px) {
    .listing-hero-inner .ek-h1 {
        font-size: 50px;
    }
}

@media (max-width: 767px) {
    .listing-hero-inner .ek-h1 {
        font-size: 32px;
        line-height: 40px;
    }
}

.finishes-copy .ek-h2 {
    color: #FFF;
}
.finishes-copy .ek-h2 span {
    color: #71D8F0;
}
.features-section .ek-h2 {
    color: #FFF;
}
.features-section .ek-h2 span {
    color: #71D8F0;
}
.feature-item .ek-h3 {
    color: #FFF;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 26px;
    max-width: 190px;
    margin: 0 auto 10px;
}
.similar-model-info .ek-h3 {
    color: #FFF;
    font-family: 'Test Tiempos Fine', sans-serif;
    font-size: 35px;
    font-weight: 300;
    line-height: normal;
    margin: 0 0 6px;
}
@media (max-width: 575px) {
    .similar-model-info .ek-h3 {
        font-size: 26px;
    }
}

.cta-section.on-blue .ek-h2 {
    color: #FFF;
}
.cta-section.on-blue .ek-h2 span {
    color: #FFF;
    font-family: 'Test Tiempos Fine', sans-serif;
    font-style: italic;
    font-weight: 300;
}
.project-hero-text .ek-h1 {
    margin-bottom: 16px;
}
.project-hero-text .ek-h1 span {
    font-family: 'Test Tiempos Fine', sans-serif;
    font-style: italic;
    font-weight: 300;
    color: #71D8F0;
}
@media (max-width: 767px) {
    .project-hero-text .ek-h1 {
        font-size: 32px;
    }
}

.before-after-section .ek-h2 {
    color: #FFF;
}
.before-after-section .ek-h2 span {
    color: #71D8F0;
}
.dealer-card-body .ek-h3 {
    color: #232227;
    font-size: 23px;
    font-style: normal;
    font-weight: 600;
    line-height: 123.22%;
    margin-bottom: 2px;
}
.project-form-inner .ek-h2 {
    color: #FFF;
}
.project-form-inner .ek-h2 span {
    font-family: 'Test Tiempos Fine', sans-serif;
    font-style: italic;
    font-weight: 300;
    color: #FFF;
}
@media (max-width: 575px) {
    .dealer-card-body .ek-h3 {
        font-size: 18px;
    }
}

.listing-intro .ek-h2 {
    color: #fff;
}
.listing-intro .ek-h2 span {
    color: #71D8F0;
}
.spa-card-body .ek-h3 {
    color: #FFF;
    font-family: "Test Tiempos Fine", sans-serif;
    font-size: 30px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    margin-bottom: 10px;
}
.listing-faq .sec-head .ek-h2 {
    max-width: 700px;
    width: 100%;
    margin: 0 auto 20px;
}
.builder-section .ek-h2 {
    text-align: center;
}
.builder-section .ek-h2 span {
    color: #71D8F0;
}
.builder-form-inner .ek-h2 {
    color: #FFF;
}
@media (max-width: 767px) {
    .spa-card-body .ek-h3 {
        font-size: 22px;
    }
}

.contact-media-inner .ek-h2 {
    color: #FFF;
    text-align: left;
}
.contact-form-section .ek-h2 span {
    color: #71D8F0;
}
.contact-form-section .builder-form-inner .ek-h2 {
    text-align: center;
}
.finish-palette-copy .ek-h2 {
    color: #FFF;
}
.finish-palette-copy .ek-h2 span {
    color: #71D8F0;
}
.finish-group-head .ek-h3 {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 18px;
}
