/* 
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
*/

/* ----- GLOBAL ----- */

body p,
body a{font-kerning: none;}
body p:last-child{margin: 0;}
body ul, body ol{margin-bottom: 20px; padding: 0 0 0 25px;}
body ul li, body ol li{margin-bottom: 10px;}

/* BLOG HEADINGS  */

.block-text h1,
.block-text h2,
.block-text h3,
.block-text h4,
.block-text h5,
.block-text h6{margin: 40px 0px 20px; text-transform: unset !important; font-weight: 400 !important;}

.block-text h2{font-size: clamp(1.5rem, 2.5vw, 2rem);}
.block-text h3{font-size: clamp(1.25rem, 2vw, 1.5rem);}

.faq-accordion .e-n-accordion-item-title-text{color: var(--e-global-color-5bb844c);}

/*
CHARCOAL:           --e-global-color-primary
WARM GOLD:          --e-global-color-96b2e37
SOFT HONEY SAND:    --e-global-color-4c576fc
MUTED OLIVE GRAY:   --e-global-color-76609df
CONCRETE GRAY:      --e-global-color-0aec269
IVORY:              --e-global-color-98609e1
POCELAIN WHITE:     --e-global-color-00d1f51
PURE WHITE:         --e-global-color-5bb844c
WHITE 70            --e-global-color-c4d3a05
WHITE 50            --e-global-color-7bf0f40
CHARCOAL 70         --e-global-color-58df8c1

:root{
--display-2xl: clamp(4rem, 6vw, 6rem);
--display-xl: clamp(3rem, 5vw, 4.5rem);
--h1: clamp(2.25rem, 3.5vw, 3rem);
--h2: clamp(1.875rem, 3vw, 2.25rem);
--h3: clamp(1.375rem, 2.2vw, 1.5rem);
}
*/

/* ----- BUTTON STYLES ----- */

.btn .elementor-button .elementor-button-icon svg path{transition: stroke 0.3s ease;}
.btn .elementor-button .elementor-button-icon svg{transition: transform 0.3s ease;}
.btn .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-96b2e37);}
.btn .elementor-button:hover .elementor-button-icon svg{transform: translateX(6px);}

.btn.light .elementor-button{border-color: var(--e-global-color-5bb844c); color: var(--e-global-color-5bb844c);}
.btn.light .elementor-button .elementor-button-icon svg path{stroke: var(--e-global-color-5bb844c);}
.btn.light .elementor-button:hover{border-color: var(--e-global-color-4c576fc); color: var(--e-global-color-4c576fc);}
.btn.light .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-4c576fc);}

.btn.yellow .elementor-button{border-color: var(--e-global-color-4c576fc); color: var(--e-global-color-4c576fc);}
.btn.yellow .elementor-button .elementor-button-icon svg path{stroke: var(--e-global-color-4c576fc);}
.btn.yellow .elementor-button:hover{border-color: var(--e-global-color-5bb844c); color: var(--e-global-color-5bb844c);}
.btn.yellow .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-5bb844c);}

.btn.light.back-btn .elementor-button{border: none; text-transform: unset; padding: 0;}
.btn.light.back-btn .elementor-button .elementor-button-icon{transform: rotate(180deg);}


/* ----- LOOPS ----- */

.card.default{position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start;}
.card.default .card-title{margin: 0; opacity: 1; transition: transform 0.5s ease, opacity 0.25s ease;}
.card.default .card-desc{opacity: 0; max-height: 0; overflow: hidden; transform: translateY(16px); transition: opacity 0.5s ease, transform 0.5s ease, max-height 0.5s ease;}

.card.default:hover .card-desc{opacity: 1; max-height: 200px; transform: translateY(0);}
.card.default:hover .card-title{opacity: 0; transform: translateY(-4px);}


/* ----- CAROUSEL ----- */

.default-carousel .elementor-swiper-button{position: absolute !important; transform: translateY(-50%); height: 52px; width: 52px; display: flex; justify-content: center; align-items: center; border-radius: 6px; border: 1px solid var(--e-global-color-primary) !important; opacity: 0.5;}
.default-carousel .elementor-swiper-button svg{height: auto !important; width: auto !important;}
.default-carousel .elementor-swiper-button:hover{opacity: 1;}
.default-carousel .card > div{gap: 0;}
.default-carousel .card .card-desc{order: -1; transform: none;}
.default-carousel .card.default:hover .card-title{opacity: 1; transform: translateY(0);}

.about.logo-carousel .swiper-wrapper{-webkit-transition-timing-function: linear !important; -moz-transition-timing-function: linear !important; -o-transition-timing-function: linear !important; transition-timing-function: linear !important;}
.about.logo-carousel .swiper-slide-inner{border: 1px solid rgba(255,255,255, 0.1); height: 100px; display: flex; justify-content: center; align-items: center; border-radius: 13px; padding: 20px;}
.about.logo-carousel .swiper-slide-inner img{height: 42px; width: 100%; object-fit: contain; object-position: center center;}


/* ----- HEADER ----- */

.main-hd .menu-bar .close-popup{display: none;}
.main-hd .menu-bar .hd-logo img{filter: brightness(0) invert(1);}
.main-hd{position: relative; transition: background 0.5s ease, min-height 0.5s ease;}
.main-hd .hd-logo img{transition: all 0.3s ease;}

.main-hd .menu-bar .btn.book .elementor-button{color: var(--e-global-color-5bb844c); border-color: var(--e-global-color-5bb844c);}
.main-hd .menu-bar .btn.book .elementor-button svg path{stroke: var(--e-global-color-5bb844c);}
.main-hd .menu-bar .btn.book .elementor-button:hover{color: var(--e-global-color-4c576fc); border-color: var(--e-global-color-4c576fc);}
.main-hd .menu-bar .btn.book .elementor-button:hover svg path{stroke: var(--e-global-color-4c576fc);}
.main-hd .menu-bar .btn.open-popup .elementor-button{color: var(--e-global-color-5bb844c);}


.main-hd.elementor-sticky--effects{background: var(--e-global-color-primary); box-shadow: 0 8px 6px -6px rgba(0,0,0,0.1);}
.main-hd.elementor-sticky--effects .hd-logo img{max-width: 200px;}


/* DARK HEADER */

.home .main-hd .menu-bar .hd-logo img,
.page-id-370 .main-hd .menu-bar .hd-logo img,
.page-id-389 .main-hd .menu-bar .hd-logo img{filter: none;}

.home .main-hd .menu-bar .btn.book .elementor-button,
.page-id-370 .main-hd .menu-bar .btn.book .elementor-button,
.page-id-389 .main-hd .menu-bar .btn.book .elementor-button{color: var(--e-global-color-primary); border-color: var(--e-global-color-primary);}

.home .main-hd .menu-bar .btn.book .elementor-button svg path,
.page-id-370 .main-hd .menu-bar .btn.book .elementor-button svg path,
.page-id-389 .main-hd .menu-bar .btn.book .elementor-button svg path{stroke: var(--e-global-color-primary);}

.home .main-hd .menu-bar .btn.open-popup .elementor-button,
.page-id-370 .main-hd .menu-bar .btn.open-popup .elementor-button,
.page-id-389 .main-hd .menu-bar .btn.open-popup .elementor-button{color: var(--e-global-color-primary);}


.home .main-hd.elementor-sticky--effects,
.page-id-370 .main-hd.elementor-sticky--effects,
.page-id-389 .main-hd.elementor-sticky--effects{
  background: var(--e-global-color-5bb844c);
}
.home .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover,
.page-id-370 .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover,
.page-id-389 .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover{
  color: var(--e-global-color-96b2e37); border-color: var(--e-global-color-96b2e37);
}
.home .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover svg path,
.page-id-370 .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover svg path,
.page-id-389 .main-hd.elementor-sticky--effects .menu-bar .btn.book .elementor-button:hover svg path{
  stroke: var(--e-global-color-96b2e37);
}


/* ----- POPUP ----- */

.popup-menu .menu-bar .open-popup{display: none;}
.popup-menu .menu-bar .hd-logo img{filter: brightness(0) invert(1);}

.popup-menu .menu-bar .btn .elementor-button{color: var(--e-global-color-5bb844c) !important; border-color: var(--e-global-color-5bb844c) !important;}
.popup-menu .menu-bar .btn .elementor-button .elementor-button-icon svg path{stroke: var(--e-global-color-5bb844c);}
.popup-menu .menu-bar .btn .elementor-button:hover{color: var(--e-global-color-4c576fc) !important; border-color: var(--e-global-color-4c576fc) !important;}
.popup-menu .menu-bar .btn .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-4c576fc);}

.primary-menu .elementor-nav-menu{counter-reset: menu-counter;}
.primary-menu .menu-item{counter-increment: menu-counter;}
.primary-menu .menu-item > a{display: block; position: relative; padding-top: 16px; line-height: 1em !important;}
.primary-menu .menu-item > a::before{position: relative; content: counter(menu-counter, decimal-leading-zero); display: block; margin-bottom: 0; opacity: 1 !important; color: var(--e-global-color-c4d3a05); font-family: var(--e-global-typography-f5f8c53-font-family), Sans-serif !important; font-size: var(--e-global-typography-f5f8c53-font-size) !important; font-weight: var(--e-global-typography-f5f8c53-font-weight) !important; line-height: 1em; letter-spacing: 0.3px;}

.primary-menu .menu-item > a{color: var(--e-global-color-5bb844c); opacity: 1; transition: color .3s ease, opacity .3s ease;}
.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a,
.primary-menu .current-menu-ancestor > a{color: var(--e-global-color-4c576fc); opacity: 1;}
.primary-menu:hover .menu-item > a{opacity: .3;}
.primary-menu .menu-item > a:hover{color: var(--e-global-color-4c576fc); opacity: 1;}
.primary-menu:hover .current-menu-item > a,
.primary-menu:hover .current_page_item > a,
.primary-menu:hover .current-menu-ancestor > a{opacity: 1;}


/* ----- HOMEPAGE ----- */

.home-hero{position: relative;}
.home-hero .lead{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.home-hero .btn.cta .elementor-button:hover{color: var(--e-global-color-5bb844c); border-color: var(--e-global-color-5bb844c);}
.home-hero .btn.cta .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-5bb844c);}

.philosophy-list-items .elementor-icon-box-title span{margin-right: 20px;}


/* ----- ABOUT ----- */
.abt-difference .text-block ul, .abt-difference .text-block ol{margin: 0 0 20px; padding: 0; list-style-position: inside;}
.abt-cta .text-block ul, .abt-cta .text-block ol{margin: 0; padding: 0 0 0 10px; list-style-position: inside;}


/* ----- CONTACT ----- */

.page-id-370 .footer-contact .left-block .eyebrow .elementor-heading-title{color: var(--e-global-color-76609df);}


/* ----- CONCERNS TREATED ----- */

@media (max-width: 1024px){
  /* BACKGROUND POSITIONS */
  .page-id-389 .concerns-grid .post-1517 .cardv2{background-position: 75% 50% !important;}
  .page-id-389 .concerns-grid .post-1519 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1522 .cardv2{background-position: 20% 50% !important;}
  .page-id-389 .concerns-grid .post-1521 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1523 .cardv2{background-position: 80% 50% !important;}
  .page-id-389 .concerns-grid .post-1524 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1526 .cardv2{background-position: 70% 50% !important;}
  .page-id-389 .concerns-grid .post-1531 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1528 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1529 .cardv2{background-position: 100% 50% !important;}
  .page-id-389 .concerns-grid .post-1530 .cardv2{background-position: 80% 50% !important;}
  .page-id-389 .concerns-grid .post-1534 .cardv2{background-position: 90% 50% !important;}
  .page-id-389 .concerns-grid .post-1535 .cardv2{background-position: 100% 50% !important;}
}

@media (min-width: 1025px) {
  .concerns-grid .elementor-loop-container.elementor-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .concerns-grid .elementor-loop-container.elementor-grid .e-loop-item {
    width: calc((100% - 75px) / 4); 
  }
}

@media (min-width: 1025px) and (max-width: 1366px) {
  .concerns-grid .elementor-loop-container.elementor-grid .e-loop-item {
    width: calc((100% - 50px) / 3); 
  }
}

/* ----- PROGRAMS ----- */

.programs-cat-grid .cardv2{min-height: 480px;}


/* ----- MODALITIES ----- */

.modalities-grid .card.default:hover .card-title{opacity: 1; transform: translateY(0);}
.modalities-grid .card .card-desc{order: -1;}

.primary-menu.enrollment-path-menu .elementor-nav-menu--main .menu-item{pointer-events: none;}
.primary-menu.enrollment-path-menu:hover .menu-item  a{opacity: 1;}


/* ----- FOOTER ----- */

.contact-details-list .elementor-icon-list-text span{display: block !important;}

.form-default .elementor-button .elementor-button-text{text-transform: uppercase;}
.form-default .elementor-button .elementor-button-icon{transition: transform .3s ease;}
.form-default .elementor-button .elementor-button-icon svg path{stroke: var(--e-global-color-5bb844c);}
.form-default .elementor-field-type-textarea{margin-bottom: 35px !important;}
.form-default .elementor-button .elementor-button-icon svg{transition: transform 0.3s ease;}
.form-default .elementor-button:hover .elementor-button-icon svg{transform: translateX(6px);}

.footer-menu .elementor-nav-menu{display: grid; grid-template-columns: repeat(2, auto);}
.footer-menu .elementor-nav-menu a{position: relative; display: inline-block;}


/* ----- MEDIA QUERIES ----- */

@media (max-width: 1024px){

.card.default .card-desc{opacity: 1; max-height: none; transform: none;}
.card.default .card-title{opacity: 1; transform: none;}
.card.default:hover .card-desc{opacity: 1; max-height: none; transform: none;}
.card.default:hover .card-title{opacity: 1; transform: none;}

}

@media (max-width: 767px){

.home-hero .lead{position: relative; top: auto; left: auto; transform: none;}

.modalities.default-carousel .card{background-position: 50% 20% !important;}

.programs-cat-grid .cardv2{min-height: 400px;}

}

@media (max-width: 580px){

.home-programs-loop .elementor-grid{grid-template-columns: repeat(1,1fr) !important;}

}

@media (max-width: 480px){

.footer-menu .elementor-nav-menu{grid-template-columns: repeat(2, 1fr);}

}

@media (min-width: 1025px) {
  .concerns-grid .elementor-loop-container.elementor-grid,
  .modalities-grid .elementor-loop-container.elementor-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .concerns-grid .elementor-loop-container.elementor-grid .e-loop-item,
  .modalities-grid .elementor-loop-container.elementor-grid .e-loop-item {
    width: calc((100% - 75px) / 4); 
  }
}

@media (min-width: 1025px) and (max-width: 1366px) {
  .concerns-grid .elementor-loop-container.elementor-grid .e-loop-item,
  .modalities-grid .elementor-loop-container.elementor-grid .e-loop-item {
    width: calc((100% - 50px) / 3); 
  }
}