/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

html,
body {
    overflow-x: hidden;
}

:root {
    --brand-blue: #19468d;
    --white-color: #ffffff;
    --black-color: #000000;
    --hover-color: #cccccc;
    --light-blue: #3b6bb8;
    --text-color: #333333;
    --heading-font: 'Plus Jakarta Sans';
    --content-font: 'Heebo';
    --transition: all 0.5s ease;
}

h2 span {
    color: var(--light-blue) !important;
}

p:last-child {
    margin-bottom: 0px !important;
}

a,
p {
    transition: var(--transition);
}

.elementor-swiper-button {
    --size: 45px;
    width: var(--size) !important;
    height: var(--size) !important;
    border-radius: 50%;
    background: var(--white-color);
    fill: var(--brand-blue);
    border: 1px solid var(--white-color);
    display: flex;
    align-items: center;
    justify-content: center !important;
    overflow: hidden;
    font-size: 20px;
    transition: all 0.3s ease;
}

.elementor-swiper-button svg {
    fill: inherit !important;
}

.elementor-swiper-button:hover {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    fill: var(--white-color);
}

/* ===== Header Start ===== */

.sticky-menu-wrapper.elementor-sticky--effects {
    background-color: var(--brand-blue);
}

header.elementor.elementor-location-header {
    position: absolute;
    width: 100%;
}

header .elementor-nav-menu--dropdown a.highlighted .sub-arrow path,
header .elementor-nav-menu--dropdown a:hover .sub-arrow path {
    fill: var(--white-color) !important;
}

@media screen and (min-width: 1200px) {
    ul.elementor-nav-menu--dropdown a {
        border-inline-start: 0px !important;
    }
}

@media screen and (max-width: 1024px) {
    .elementor-nav-menu .sub-arrow {
        padding-top: 7px !important;
    }
}

@media screen and (min-width:991px) {
    li.hidden-desktop {
        display: none !important;
    }
}

/* ===== Header End ===== */

/* ===== Elementor Button Letter Animation ===== */

.elementor-widget-button[data-letter-anim="true"] .elementor-button {
    overflow: hidden;
}

.elementor-widget-button[data-letter-anim="true"] .elementor-button-text {
    display: inline-flex;
    align-items: center;
    overflow: hidden;
}

.elementor-widget-button[data-letter-anim="true"] .char {
    display: inline-block;
    line-height: 1;
    will-change: transform, opacity;
}

.elementor-widget-button[data-letter-anim="true"] .char-space {
    display: inline-block;
    width: 0.35em;
}

@keyframes letterUp {
    0% {
        transform: translateY(0);
        opacity: 1;
    }

    40% {
        transform: translateY(var(--anim-dist));
        opacity: 0;
    }

    60% {
        transform: translateY(calc(var(--anim-dist) * -1));
        opacity: 0;
    }

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

@keyframes letterDown {
    0% {
        transform: translateY(0);
        opacity: 1;
    }

    40% {
        transform: translateY(calc(var(--anim-dist) * -1));
        opacity: 0;
    }

    60% {
        transform: translateY(var(--anim-dist));
        opacity: 0;
    }

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

.elementor-widget-button[data-letter-anim="true"] .elementor-button:hover .char-up {
    animation: letterUp var(--anim-speed) cubic-bezier(0.4, 0, 0.2, 1) both;
}

.elementor-widget-button[data-letter-anim="true"] .elementor-button:hover .char-down {
    animation: letterDown var(--anim-speed) cubic-bezier(0.4, 0, 0.2, 1) both;
}

/* ===== Elementor Button Letter Animation End ===== */

/* ========== Home [Page] Start ========== */

/* ===== Hero Start ===== */
.product-card {
    position: unset;
}

.product-card-wrapper {
    position: relative;
}

.product-card-wrapper p.elementor-icon-box-description {
    text-align: left;
}

.product-img-wrapper {
    overflow: hidden;
    position: relative;
}

.product-img-wrapper img {
    transition: var(--transition);
}

.product-card-wrapper:hover .product-img-wrapper img {
    scale: 1.2;
}

.product-img-wrapper:before {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 1;
    background: linear-gradient(180deg, rgba(25, 70, 141, 0) 6%, var(--brand-blue) 100%);
    transition: all 0s ease;
}

.product-card-wrapper:hover .product-img-wrapper:before {
    background: var(--brand-blue) !important;
    z-index: 1 !important;
}

.product-card-wrapper .elementor-icon-box-title {
    position: absolute;
    bottom: 0%;
    left: 50%;
    transform: translate(-50%, 0%);
    text-align: center;
    z-index: 1;
    width: 100%;
    margin: 0;
    transition: var(--transition);
}

.product-card-wrapper:hover .elementor-icon-box-icon {
    z-index: 0 !important;
}

.product-card-wrapper .elementor-icon-box-icon {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0%;
    text-align: center;
    z-index: 2 !important;
    transform: translateY(-50%);
}

.product-card-wrapper:hover .elementor-icon-box-icon {
    z-index: 0 !important;
}

.product-detail-btn {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    transform: translateY(-50%);
    padding: 24px;
    transition: all 0.3s;
    opacity: 0;
    margin-top: 40px;
}

.product-card-wrapper:hover .product-detail-btn {
    opacity: 1;
    z-index: 2;
    margin-top: 0px;
    transition: var(--transition);
}

/* === Hero product Card v2 === */

.product-card-wrapper-v2 {
    position: relative;
    transition: var(--transition);
    background-size: 100% 100% !important;
}

.product-card-wrapper-v2:hover {
    background-size: 120% 120% !important;
}

.product-card-wrapper-v2 .product-img-wp {
    position: relative;
}

.product-card-wrapper-v2 .product-img-wp:before {
    position: absolute;
    bottom: 0;
    content: "";
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 1;
    background: linear-gradient(180deg, #ffffff 45%, rgba(25, 70, 141, 0) 100%);
    transition: all 0s ease;
}

.product-card-wrapper-v2:hover .product-img-wp:before,
.product-card-wrapper-v2:hover .product-detail-wp {
    opacity: 0;
    transition: var(--transition);
}

.product-detail-wp {
    opacity: 1;
    z-index: 2;
    transition: var(--transition);
}

.product-detail-btn-v2 {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    transform: translateY(-50%);
    padding: 24px;
    transition: all 0.3s;
    opacity: 0;
    margin-top: 40px;
}

.product-card-wrapper-v2:hover .product-detail-btn-v2 {
    opacity: 1;
    z-index: 2;
    margin-top: 0px;
    transition: var(--transition);
}

.logo-img {
    position: absolute;
    bottom: 0%;
    left: 0;
    width: 100%;
    text-align: center;
    padding: 0px;
    transition: all 0.3s;
}

.product-card-wrapper-v2:hover .logo-img {
    opacity: 0;
}

/* ===== Hero End ===== */

/* ===== Video Play Icon Start ===== */

.play-icon {
    --size: 120px;
    height: var(--size);
    width: var(--size);
    display: flex;
    align-items: center;
    justify-content: center;
}

.elementor-icon-wrapper {
    display: flex;
}

/* ===== Video Play Icon End ===== */

/* ===== Case Study Start ===== */

/* .case-study button.cs-popup-close-87a6 {
    padding: 0px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
} */

.cs-card-87a6 {
    border: 1px solid #c9c9c9;
}

.case-study .cs-popup-body-87a6 {
    height: 100% !important;
}

.case-study .cs-hover-content-87a6 {
    width: 100%;
}

.case-study .cs-glass-center-87a6 {
    flex-grow: 1;
}

.case-study .cs-glass-bar-87a6 {
    gap: 30px;
}

@media screen and (max-width: 767px) {
    .case-study .cs-glass-bar-87a6 {
        flex-direction: column !important;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 10px 25px;
    }

    .case-study .cs-glass-right-87a6 {
        position: absolute;
        right: 8px;
        bottom: 0px;
    }

    .case-study .cs-glass-bar-87a6 {
        padding-right: 45px;
    }
}

/* ----- Template 2 Savings Card Start ----- */

.cs-template-2-87a6 .cs-card-t2-87a6 {
    padding: 30px;
    border-radius: 10px;
}

.cs-template-2-87a6 .cs-card-t2-87a6 .cs-t2-title-87a6 {
    margin-bottom: auto !important;
}

.cs-t2-frame-87a6 {
    margin-top: 20px;
    border-radius: 10px;
}

.cs-popup-close-87a6 svg {
    width: 1em;
    height: 1em;
}

.cs-t2-btn-87a6 {
    transition: var(--transition);
}

.cs-has-letter-anim-87a6 .cs-btn-87a6:hover .char.char-up,
.cs-has-letter-anim-87a6 .cs-t2-btn-87a6:hover .char.char-up {
    animation: letterUp var(--anim-speed) cubic-bezier(0.4, 0, 0.2, 1) both;
}

.cs-has-letter-anim-87a6 .cs-btn-87a6:hover .char.char-down,
.cs-has-letter-anim-87a6 .cs-t2-btn-87a6:hover .char.char-down {
    animation: letterDown var(--anim-speed) cubic-bezier(0.4, 0, 0.2, 1) both;
}

@media (max-width: 767px) {
    .cs-template-2-87a6 .cs-card-t2-87a6 {
        padding: 20px;
    }
}

/* ----- Template 2 Savings Card End ----- */

/* ===== Case Study End ===== */

/* ========== Home [Page] End ========== */

/* ========== Team [Page] Start ========== */

.team-grid-wrapper .elementor-image-box-img img {
    width: 100%;
}

/* ========== Team [Page] Ends ========== */

/* ========== Blog [Page] Start ========== */

.blog-card-wrapper {
    box-shadow: 0px 4px 20px #00000020;
}

.page-numbers {
    width: var(--size);
    height: var(--size);
    --size: 40px;
    background: transparent;
    border-radius: 100%;
    color: var(--brand-blue);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.page-numbers.current,
a.page-numbers:hover {
    background: var(--brand-blue);
    color: var(--white-color) !important;
}

/* ========== Blog [Page] End ========== */

/* ========== Single Blog [Page] Start ========== */

.recent-post article.elementor-post:not(:last-child) {
    padding-bottom: 20px !important;
    border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.tag-box-wrapper:has(.tag-box) {
    display: flex;
}

.tag-box-wrapper {
    display: none;
}

.post-content h2 {
    font-size: 36px !important;
    line-height: 1.2em;
}

.tag-box span.elementor-post-info__terms-list {
    font-size: 0px;
}

.tag-box a.elementor-post-info__terms-list-item {
    font-size: 16px !important;
    line-height: normal;
    background-color: var(--brand-blue);
    color: var(--white-color) !important;
    padding: 3px 8px;
    border-radius: 3px;
    transition: 0.3s ease;
    text-transform: capitalize;
    margin-right: 5px;
    margin-bottom: 5px;
    display: inline-block !important;
}

.tag-box a.elementor-post-info__terms-list-item:hover {
    background-color: var(--light-blue);
}

@media screen and (max-width: 767px) {
    .post-content h2 {
        font-size: 28px !important;
    }
}

/* ========== Single Blog [Page] End ========== */

/* =========== FAQ [Page] Start ========== */

.faq-wrapper .e-n-accordion-item {
    box-shadow: 0px 4px 20px #00000010;
    border-radius: 8px;
    overflow: hidden;
}

/* ========== FAQ [Page] End ========== */

/* ========== FAQ V2 [Page] Start ========== */

.ot-youtube-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.ot-youtube-item.ot-hidden-video {
    display: none;
}

.ot-youtube-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.ot-youtube-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background: #000;
    aspect-ratio: 16 / 9;
}

.ot-youtube-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.ot-youtube-link:hover img {
    transform: scale(1.05);
}

.ot-play-button {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 68px;
    height: 48px;
    background: rgba(0, 0, 0, 0.75);
    border-radius: 12px;
    transform: translate(-50%, -50%);
}

.ot-play-button:before {
    content: "";
    position: absolute;
    left: 27px;
    top: 13px;
    border-left: 18px solid #fff;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
}

.ot-youtube-title {
    font-size: 18px;
    line-height: 1.35;
    margin: 14px 0 0;
    color: #111;
}

.ot-load-more-wrap {
    text-align: center;
    margin-top: 30px;
}

.ot-load-more-btn {
    background: #1f4f93;
    color: #fff;
    border: none;
    padding: 14px 34px;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.ot-load-more-btn:hover {
    opacity: 0.9;
}

@media (max-width: 991px) {
    .ot-youtube-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .ot-load-more-wrap {
        margin-top: 25px;
    }
}

@media (max-width: 767px) {
    .ot-youtube-grid {
        grid-template-columns: 1fr;
    }
}

/* ----- Youtube Pop-up Start ----- */

.ot-youtube-popup {
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.75);
}

.ot-youtube-popup[style*="display:none"] {
    display: none !important;
}

.ot-youtube-popup-content {
    background: #000;
    padding: 50px;
    border-radius: 8px;
    position: relative;
    max-width: 90vw;
    max-height: 80vh;
    width: 560px;
    box-sizing: border-box;
}

.ot-youtube-popup-iframe-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 8px;
}

.ot-youtube-popup-iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
}

.ot-youtube-popup-close {
    position: absolute;
    top: 10px;
    right: 14px;
    background: none;
    color: #fff;
    border: none;
    font-size: 2.2rem;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    z-index: 11;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
}

.ot-youtube-popup-close:hover,
.ot-youtube-popup-close:focus {
    background: rgba(255, 255, 255, 0.1);
    outline: none;
}

.ot-youtube-popup-title {
    color: #fff;
    margin-top: 12px;
    text-align: center;
}

.ot-youtube-popup-overlay {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    background: transparent;
    z-index: -1;
}

.ot-youtube-popup-close {
    background-color: transparent !important;
}

@media (max-width: 700px) {
    .ot-youtube-popup-content {
        width: 96vw;
        max-width: 98vw;
        min-width: 0;
        padding: 5px 0 8px 0;
        border-radius: 4px;
        max-height: 88vh;
    }

    .ot-youtube-popup-iframe-wrap {
        border-radius: 4px;
    }

    .ot-youtube-popup-iframe-wrap iframe {
        border-radius: 4px;
    }

    .ot-youtube-popup-close {
        top: 8px;
        right: 8px;
        width: 36px;
        height: 36px;
    }
}

/* ----- Youtube Pop-up End ----- */

/* ========== FAQ V2 [Page] End ========== */

/* ========== Videos [Page] Start ========== */

.video-faq-sec .sby_items_wrap {
    padding: 0 !important;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px 24px;
}

.video-faq-sec .sby_items_wrap .sby_item {
    width: 100% !important;
    overflow: hidden !important;
    border-radius: 10px !important;
}

.video-faq-sec .sby_footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 30px;
}

.video-faq-sec .sby_footer>* {
    margin: 0 !important;
}

.sby_load_btn,
.sby_follow_btn a {
    padding: 5px 25px 7px !important;
    margin: 0 !important;
    border-radius: 100px !important;
    color: var(--white-color) !important;
    font-size: 14px !important;
    line-height: 1.71em !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    transition: var(--transition) !important;
    background-color: var(--brand-blue) !important;
}

.sby_follow_btn a {
    background-color: #ff0000 !important;
}

.sby_load_btn:hover,
.sby_follow_btn a:hover,
body .video-faq-sec #sb_youtube_sbyUCFtSNl1VWX10UWh00EaM8Q9 .sby_follow_btn a:hover {
    opacity: 1 !important;
    box-shadow: 2px 2px 20px 0px rgba(0, 0, 0, 0.5) !important;
}

@media screen and (max-width: 991px) {
    .video-faq-sec .sby_items_wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 767px) {
    .video-faq-sec .sby_items_wrap {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .video-faq-sec .sby_footer {
        margin-top: 25px;
    }
}

/* ========== Videos [Page] End ========== */

/* ========== Cost Saving Calculator [Page] Start ========== */

/* Gravity Form design */

h2.gform_title {
    display: none;
}

.gform_wrapper {
    font-family: inherit;
}

.gform_wrapper .gfield_label {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-color);
    margin-bottom: 10px !important;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select {
    width: 100% !important;
    border: 1px solid #dcdcdc !important;
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-size: 16px !important;
    background: transparent !important;
    transition: all 0.3s ease;
    min-height: 44px;
}

.gform_wrapper textarea {
    min-height: 140px;
    resize: vertical;
}

.gform_wrapper input:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
    border-color: none !important;
    box-shadow: none !important;
    outline: none;
}

.gform_wrapper.gravity-theme .gfield_label {
    line-height: 1.3em;
}

.gform_wrapper ::placeholder {
    color: var(--text-color);
}

.gform_wrapper .gform_button,
#redirectButton {
    background: var(--brand-blue) !important;
    color: var(--white-color) !important;
    border: none !important;
    padding: 16px 32px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    line-height: 24px;
    font-weight: 600 !important;
    transition: all 0.3s ease;
    font-family: var(--heading-font);
    text-transform: uppercase !important;
    text-align: center !important;
    cursor: pointer !important;
}

.gform_wrapper .gform_button:hover,
#redirectButton:hover {
    background: var(--brand-blue) !important;
    box-shadow: 2px 2px 20px 0px rgba(0, 0, 0, 0.5);
}

.gform_wrapper .gfield {
    margin-bottom: 15px;
}

.gform_wrapper .ginput_container_select {
    position: relative;
    appearance: none !important;
}

.gform_wrapper .ginput_container_select::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    pointer-events: none;
    background: var(--text-color);
    --gf-arrow: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+PHBhdGggZD0iTTUuNSA3LjVMMTAgMTJsNC41LTQuNSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiLz48L3N2Zz4=");
    mask-image: var(--gf-arrow);
    -webkit-mask-image: var(--gf-arrow);
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: contain;
    -webkit-mask-size: contain;
    transition: transform 0.3s ease;
}

.ginput_container_select select {
    appearance: none;
}

.gform_wrapper #gform_1 .otr-result {
    opacity: .45;
    pointer-events: none;
}

.gform_wrapper #gform_1 .otr-result input {
    background: #f1f2f4;
    border-color: #d8dbdf;
    color: #6b7280;
    cursor: not-allowed;
}

.gform_wrapper #gform_1[action*="calculator=true"] .otr-result {
    opacity: 1;
    pointer-events: auto;
}

.gform_wrapper #gform_1[action*="calculator=true"] .otr-result input {
    background: #fff;
    border-color: #c8ccd0;
    color: inherit;
    cursor: default;
}

@media (max-width: 767px) {

    .gform_wrapper input[type="text"],
    .gform_wrapper input[type="email"],
    .gform_wrapper input[type="tel"],
    .gform_wrapper input[type="password"],
    .gform_wrapper input[type="number"],
    .gform_wrapper textarea,
    .gform_wrapper select {
        line-height: normal !important;
    }

    .gform_wrapper .gfield {
        margin-bottom: 5px !important;
    }
}

@media (max-width: 480px) {

    .gform_wrapper input[type="text"],
    .gform_wrapper input[type="email"],
    .gform_wrapper input[type="tel"],
    .gform_wrapper input[type="password"],
    .gform_wrapper input[type="number"],
    .gform_wrapper textarea,
    .gform_wrapper select {
        line-height: normal !important;
        padding: 10px 12px !important;
        font-size: 12px !important;
    }

    .gform_wrapper .gfield {
        margin-bottom: 5px !important;
    }
}

/* ========== Cost Saving Calculator [Page] End ========== */

/* ========== Single Blog Post Start ========== */

h2.ce-lesson-title {
    margin-block-end: 1.3rem;
}

.ce-lessons-wrapper .ce-sub-lesson-image,
.ce-lessons-wrapper .ce-sub-lesson-image img {
    width: 100%;
}

.ce-lessons-wrapper .ce-sub-lesson-image {
    display: block;
    line-height: 0;
    margin-bottom: 1rem;
}

.ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson:not(:last-child) {
    margin-bottom: 40px;
}

.ce-lessons-wrapper ol {
    list-style-position: inside;
    padding-left: 0;
    margin: 0.9rem 0;
}

.ce-lessons-wrapper ul {
    padding-inline-start: 0;
    list-style-position: inside;
    margin: 0.9rem 0;
}

.ce-lessons-wrapper ol:last-child,
.ce-lessons-wrapper ul:last-child {
    margin-bottom: 0;
}

.ce-lessons-wrapper ol li:not(:last-child),
.ce-lessons-wrapper ul li:not(:last-child) {
    margin-bottom: 12px;
}

.ce-lessons-wrapper .ce-sub-lesson-video {
    height: 500px;
}

.ce-lessons-wrapper .ce-sub-lesson-video iframe {
    width: 100%;
    height: 100%;
}

.ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson p a,
.ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson a {
    color: inherit;
    text-decoration: underline !important;
}

.ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson p a:hover,
.ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson a:hover {
    color: var(--e-global-color-primary);
}

.ce-sub-lesson-pdf {
    display: inline-flex;
    gap: 10px;
    margin-block: 1rem;
}

.ce-sub-lesson-pdf .ce-sub-lesson-pdf-icon {
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--e-global-color-primary);
    width: 18px;
    height: 24px;
    display: block;
}

@media screen and (max-width: 991px) {
    .ce-lessons-wrapper .ce-sub-lesson-video {
        height: auto;
        aspect-ratio: 1/1;
    }
}

@media screen and (max-width: 767px) {
    .ce-lessons-wrapper .ce-sub-lessons .ce-sub-lesson:not(:last-child) {
        margin-bottom: 30px;
    }
}

/* ========== Single Blog Post End ========== */

/* ========== EZ-TRAX™ Set Layout Library [Page] Start ========== */

/* .ez-trax-set-layout-library-slider .swiper-slide {
    height: auto !important;
}

.ez-trax-set-layout-library-slider .swiper-slide a {
    display: block;
    height: 100%;
}

.ez-trax-set-layout-library-slider .swiper-slide .swiper-slide-inner {
    height: 100%;
}

.ez-trax-set-layout-library-slider .swiper-slide .swiper-slide-inner .swiper-slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ez-trax-set-layout-library-slider .swiper {
    padding-bottom: 60px !important;
}

@media screen and (max-width: 767px) {
    .ez-trax-set-layout-library-slider .swiper {
        padding-bottom: 50px !important;
    }
} */

.before-after-Image-slider-sec .twentytwenty-wrapper,
.before-after-Image-slider-sec .twentytwenty-container,
.before-after-Image-slider-sec .twentytwenty-container>img {
    height: 300px !important;
}

/* ========== EZ-TRAX™ Set Layout Library [Page] End ========== */

/* ===== Youtube Series [Page] css Start ====== */
.youtube-playlist-section {
    padding-block: 50px;
    border-bottom: 2px solid #e7e7e7;
}

.youtube-playlist-section:first-child {
    padding-top: 0;
}

.youtube-playlist-section:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.youtube-playlist-section h2 {
    font-size: 28px;
    color: var(--e-global-color-cbb05ae);
}

.youtube-videos-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.youtube-videos-grid .video-item {
    padding: 20px;
    background-color: var(--brand-blue);
    border-radius: 20px;
    display: flex;
    flex-direction: column;
}

.video-item .video-img-wp img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 15px;
    display: block;
    line-height: 0;
    font-size: 0;
}

.video-item .video-img-wp {
    position: relative;
    line-height: 0;
    font-size: 0;
}

.video-item:has(.yt-content-wp) .video-img-wp {
    margin-bottom: 15px;
}

.popup-video-click {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    color: var(--white-color);
    fill: var(--white-color);
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 21px;
    z-index: 1;
    box-shadow: 0 0 15px var(--brand-blue);
    transition: var(--transition);
    cursor: pointer;
}

.popup-video-click:hover {
    background-color: var(--brand-blue);
}

.popup-video-click .popup-video-icon svg {
    fill: inherit;
    width: 1em;
    height: 1em;
    transition: var(--transition);
}

.video-item .video-img-wp:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--black-color);
    opacity: 0.1;
    border-radius: 15px;
}

.video-item h3 {
    font-size: 20px;
    flex: 0 0 auto;
    color: var(--white-color);
}

/* .yt-content-wp {
    flex: 1;
    display: inline-flex;
    flex-direction: column;
    justify-content: space-between;
} */

.yt-content-wp {
    flex: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.video-item .yt-content {
    color: var(--white-color);
    max-height: 3lh;
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
    transition: max-height 0.5s ease;
}

.yt-content::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 120px;
    bottom: 0;
    left: 0;
    background: linear-gradient(to top, var(--brand-blue), transparent);
    pointer-events: none;
}

.video-item .yt-content p {
    word-break: break-word;
}

.video-item .yt-content p:last-child {
    margin-bottom: 0;
}

.yt-content-wp .yt-content-more {
    padding: 4px 24px 6px;
    background-color: var(--white-color);
    color: var(--brand-blue);
    border: 1px solid var(--white-color) !important;
}

.yt-content-wp .yt-content-more:hover {
    background-color: transparent;
    color: var(--white-color) !important;
}

.yt-content-wp.active-tab .yt-content {
    max-height: unset;
}

.yt-content-wp.active-tab .yt-content::before {
    content: none;
}

.read-more-wrapper {
    margin-top: 25px;
    text-align: center;
    position: relative;
}

.youtube-video-wrap {
    line-height: 0;
}

.loader-active .read-more-btn {
    color: transparent !important;
}

.episodes-loader {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    transform: translate(-50%, -50%);
    line-height: 0;
}

.episodes-loader .spinner {
    font-size: 14px;
    color: var(--white-color);
    fill: var(--white-color);
}

.episodes-loader .spinner svg {
    width: 1em;
    height: 1em;
    fill: inherit;
    animation: spinnerRotate 2s linear infinite;
}

@keyframes spinnerRotate {
    0% {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(359deg);
    }
}

@media screen and (max-width: 991px) {
    .youtube-videos-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .youtube-playlist-section {
        padding-block: 40px;
    }
}

@media screen and (max-width: 767px) {
    .youtube-videos-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media screen and (max-width: 575px) {
    .youtube-playlist-section {
        padding-block: 30px;
    }

    .popup-video-click {
        width: 50px;
        height: 50px;
        font-size: 18px;
    }

    .youtube-videos-grid .video-item {
        padding: 15px;
    }
}

/* ===== Youtube Series [Page] css End ====== */

/* ===== Podcast Webinar [Page] css Start ====== */

.podcast-webinar-audio audio {
    width: 100%;
    display: block;
    border-radius: 40px;
    outline: none;
    background: #f5f8fc;
}

.podcast-webinar-wrapper {
    padding: 40px;
    border-radius: 24px;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.08);
}

.podcast-webinar-row {
    display: flex;
    gap: 50px;
}

.podcast-webinar-media {
    flex: 0 0 48%;
}

.podcast-webinar-media video {
    border-radius: 12px;
}

.podcast-webinar-media img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

.podcast-webinar-content {
    flex: 1;
}

.podcast-webinar-topbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    padding: 18px 22px;
    border: 1px solid #E6E6E6;
    border-radius: 14px;
    margin-bottom: 28px;
}

.podcast-label,
a.watch-video-link {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
    flex: 0 0 auto;
}

.podcast-icon svg {
    width: 20px;
    height: 20px;
}

.podcast-icon svg path {
    fill: var(--white-color);
}

.podcast-icon {
    border-radius: 50%;
    padding: 10px;
    background-color: var(--brand-blue);
    display: flex;
}

.podcast-webinar-post-content strong {
    font-weight: 700;
}

@media (min-width:1200px) {
    .podcast-webinar-row {
        align-items: center;
    }
}

@media(max-width:1024px) {
    .podcast-webinar-wrapper {
        padding: 25px;
    }

    .podcast-webinar-row {
        flex-direction: column;
        gap: 30px;
    }

    .podcast-webinar-media {
        flex: 100%;
        width: 100%;
    }

    .podcast-webinar-content {
        width: 100%;
    }
}

@media(max-width:767px) {
    .podcast-webinar-wrapper {
        border-radius: 18px;
    }

    .podcast-webinar-topbar.audio-topbar {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .podcast-webinar-topbar {
        padding: 16px;
    }

    .podcast-webinar-topbar audio {
        flex: 0 0 auto;
    }
}

/* ===== Podcast Webinar [Page] css End ====== */


/*===== Distributor [Page] css Start ====== */

.dl-wrap {
    max-width: 820px;
    margin: 0 auto;
}

.dl-field label {
    display: block;
    font-weight: 700;
    margin-bottom: 10px;
}

.dl-select {
    display: block;
    width: 100%;
    padding: .5rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: var(--text-color);
    border: 1px solid var(--text-color);
    border-radius: 6px;
}

.dl-select:focus {
    outline: 0;
    border: 1px solid var(--text-color) !important;
    box-shadow: none;
}

.dl-results {
    margin-top: 20px;
}

.dl-card {
    padding: 20px;
    border: 1px solid rgba(0, 0, 0, .125);
    border-radius: 15px;
    margin-bottom: -1px;
}

.dl-card h3 {
    margin: 0 0 .5rem;
}

.dl-card p {
    margin: 0 0 .25rem;
}

.dl-card p:last-child {
    margin-bottom: 0;
}

.dl-logo img {
    max-width: 220px;
    height: auto;
    margin-bottom: .75rem;
}

.dl-empty {
    padding: .75rem 1.25rem;
    border: 1px solid var(--brand-blue);
    border-radius: .25rem;
    background: var(--brand-blue);
    color: var(--white-color);
}

.dl-actions {
    display: flex;
    gap: 10px 20px;
    align-items: center;
    margin: 10px 0 0;
    flex-wrap: wrap;
}

button.dl-ifu {
    display: flex;
}

.dl-ifu span.dl-ifu-icon {
    margin-left: 5px;
    line-height: 1;
}

.dl-actions span.elementor-button-content-wrapper {
    display: flex;
    align-items: center;
}

select {
    -webkit-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23666%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: right 16px top 54%;
    background-size: 12px auto;
}

select::-ms-expand {
    display: none;
}

/*===== Distributor [Page] css Ends ====== */

.testimonial-popup {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: rgba(0, 0, 0, 0.6);
    align-items: center;
    justify-content: center;
}

.testimonial-popup-wp {
    width: 100%;
    position: relative;
    max-width: 720px;
}

.testimonial-popup-inr {
    background: #fff;
    width: 100%;
    max-height: 80vh;
    overflow: auto;
    padding: 24px;
    position: relative;
}

.testimonial-popup-close {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    width: 40px;
    height: 40px;
    padding: 0 !important;
    border: 0;
    border-radius: 50% !important;
    background: var(--e-global-color-primary) !important;
    color: var(--e-global-color-aa4b7c1) !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
}

.testimonial-popup-title {
    margin-top: 16px;
}

@media screen and (max-width:767px) {
    .testimonial-popup-wp {
        max-width: 80% !important;
    }
}


/* woocommrece Coming Soon [page] CSS Start */

@media (min-width:992px) {
    .woocommerce-coming-soon-store-only .wp-block-group {
        padding-block: 235px 100px !important;
    }
}

@media (min-width:767px) and (max-width:991px) {
    .woocommerce-coming-soon-store-only .wp-block-group {
        padding-block: 150px 80px;
    }
}

.woocommerce-coming-soon-store-only .wp-block-group {
    padding-block: 111px 40px;
    padding-inline: 15px;
    gap: 15px;
}

.woocommerce-coming-soon-store-only .wp-block-spacer {
    display: none;
}

.woocommerce-coming-soon-store-only h1.wp-block-heading {
    font-family: var(--heading-font) !important;
}

/* woocommrece Coming Soon [page] CSS End */