/* 
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{font-kerning: none;}
body p:last-child{margin: 0;}
.heading-highlight{color: var(--e-global-color-accent);}


/* ----- FAQ STYLES ----- */

.faq-style-1{position: relative;}
.faq-style-1 .list:not(:last-child){border-bottom: 1px solid rgba(0,0,0,0.10); padding-bottom: 24px;}
.faq-style-1 .list h3{margin: 0;}


/* ----- IMAGE LOOP ITEM ----- */

.image-loop-item .elementor-clickable{display: block;}


/* ----- BLOG HEADINGS ----- */

.block-text h1,
.block-text h2,
.block-text h3,
.block-text h4,
.block-text h5,
.block-text h6{margin: 40px 0px 20px; color: var(--e-global-color-6e579d0);}

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

.block-text ul,
.block-text ol{margin-bottom: 20px; padding-left: 15px;}

.block-text ul li{margin-bottom: 15px;}

.block-text ul li strong,
.block-text ol li strong,
.block-text ul li::marker{color: var(--e-global-color-6e579d0);}

/*
OLD GOLD:       --e-global-color-accent
BURNISHED OCHRE:    --e-global-color-6e579d0
IVORY CREAM:      --e-global-color-39ed77c
LIGHT GRAY:       --e-global-color-46fe293
PURE WHITE:       --e-global-color-30e6dea
WHITE:          --e-global-color-ccc0aac
RICH BLACK:       --e-global-color-primary

:root{
--display-2xl: clamp(3rem, 6vw, 6rem);
--display-xl: clamp(2.5rem, 5vw, 4.5rem);
--h1: clamp(2rem, 3.5vw, 3rem);
--h2: clamp(1.5rem, 2.5vw, 2rem);
--h3: clamp(1.25rem, 2vw, 1.5rem);
}
*/


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

.btn .elementor-button .elementor-button-icon{display: none;}
.btn .elementor-button:hover .elementor-button-icon{display: block;}

.btn.secondary .elementor-button{background: none; border-radius: 0;}

.btn.tertiary .elementor-button{background: none; border-radius: 0; text-transform: unset;}
.btn.tertiary .elementor-button .elementor-button-icon{display: block;}
.btn.tertiary .elementor-button .elementor-button-icon svg path{stroke: #6B7280;}
.btn.tertiary .elementor-button:hover .elementor-button-icon svg path{stroke: var(--e-global-color-6e579d0);}

.btn.tertiary.white .elementor-button .elementor-button-icon svg path{stroke: var(--e-global-color-ccc0aac);}

.btn.outline .elementor-button{border-radius: 8px; background: none;}

.btn.secondary.white .elementor-button:hover svg path,
.btn.secondary.dark .elementor-button:hover svg path{stroke: var(--e-global-color-6e579d0);}

.btn.secondary.white .elementor-button:hover,
.btn.secondary.dark .elementor-button:hover{color: var(--e-global-color-6e579d0); border-color: var(--e-global-color-6e579d0);}

.btn.secondary.light .elementor-button:hover svg path{stroke: var(--e-global-color-accent);}
.btn.secondary.light .elementor-button:hover{color: var(--e-global-color-accent); border-color: var(--e-global-color-accent);}

.hero-buttons .consultation-btn .elementor-button{color: var(--e-global-color-accent) !important; padding: 10px 0 !important; border-bottom: 1px solid var(--e-global-color-accent);}


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

.menu-bar{position: relative;}
.menu-bar::before{content:""; height: 100%; width: 100%; position:absolute; inset:0; backdrop-filter: blur(38.70000076293945px); -webkit-backdrop-filter: blur(38.70000076293945px); background: rgba(0, 0, 0, 0.55);}
.menu-bar .consultation-btn .elementor-button-icon{display: none !important;}

.hd-section .popup-canvas{backdrop-filter: blur(38.7px); -webkit-backdrop-filter: blur(38.7px); background: linear-gradient(135deg, rgba(20, 20, 20, 0.6) 0%, rgba(20, 20, 20, 0.3) 100%); border: 1px solid rgba(255, 255, 255, 0.08);}

.menu-bar .header-menu .hd-dropdown-wrap{position: relative; backdrop-filter: blur(38.70000076293945px); -webkit-backdrop-filter: blur(38.70000076293945px); background: rgba(0, 0, 0, 0.55); border-radius: 14px; transition: none !important;}
.menu-bar .header-menu .menu-list .elementor-item{text-transform: uppercase; letter-spacing: 1px;}

/* Top Level Menu */
.menu-bar .header-menu .e-n-menu-heading:hover .e-n-menu-item {opacity: 0.6; transition: opacity 0.3s ease;}
.menu-bar .header-menu .e-n-menu-heading .e-n-menu-item:hover {opacity: 1;}

/* Sub Menu */
.menu-bar .header-menu .menu-list .elementor-nav-menu:hover .elementor-item {opacity: 0.6; transition: all 0.25s ease;}
.menu-bar .header-menu .menu-list .elementor-nav-menu .elementor-item:hover,
.menu-bar .header-menu .menu-list .elementor-nav-menu .elementor-item.elementor-item-active {opacity: 1 !important; background-color: #000; color: #fff !important; border-radius: 8px;}

/* Mobile Menu */
.mobile-menu .elementor-nav-menu a,
.mobile-menu .elementor-nav-menu a:focus,
.mobile-menu .elementor-nav-menu a:hover{line-height: 1.43em !important;}

.mobile-menu .elementor-nav-menu:hover > .menu-item > .elementor-item {opacity: 0.6; transition: opacity 0.25s ease;}
.mobile-menu .elementor-nav-menu > .menu-item > .elementor-item:hover {opacity: 1;}

.mobile-menu .sub-menu:hover .elementor-sub-item {opacity: 0.6; transition: opacity 0.25s ease;}
.mobile-menu .sub-menu .elementor-sub-item:hover {opacity: 1;}

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

.location-section .embedded-map .map-container{position: relative; height: 280px; overflow: hidden;}
.location-section .embedded-map .map-container iframe{width: 100%; height: 100%; border: 0; display: block;}

.location-section .loc-business-hours .elementor-icon-list-text span{color: var(--e-global-color-ccc0aac);}

.location-section .e-n-tabs-heading{position: relative; border-top: 1px solid rgba(255,255,255, 0.1); margin: 0 40px; padding: 30px 0 0;}
.location-section .e-n-tabs-heading:before{content: "Locations"; position: absolute; top: calc(50% + 17px); transform: translateY(-50%); left: 0; color: var(--e-global-color-accent); font-family: var(--e-global-typography-fd260b4-font-family), Sans-serif; font-size: var(--e-global-typography-fd260b4-font-size); font-weight: var(--e-global-typography-fd260b4-font-weight); text-transform: var(--e-global-typography-fd260b4-text-transform); line-height: var(--e-global-typography-fd260b4-line-height); letter-spacing: var(--e-global-typography-fd260b4-letter-spacing);}

.contact-form input::placeholder,
.contact-form textarea::placeholder{color: var(--e-global-color-30e6dea); opacity: 0.2 !important;}

.contact-form a.form-links{color: var(--e-global-color-primary); font-size: 0.75rem; transition: all 0.3s ease;}
.contact-form a.form-links:hover{color: var(--e-global-color-accent);}
.contact-form button.elementor-button .elementor-button-icon{display: none;}
.contact-form button.elementor-button:hover .elementor-button-icon{display: block;}

.legacy-menu .elementor-icon-list-item a:hover .elementor-icon-list-text{color: var(--e-global-color-6e579d0);}
.mavan-logo .elementor-image-box-title a{display: inline-flex; align-items: center; font-size: 0.75rem;}
.mavan-logo .elementor-image-box-title a::after{content: "|"; margin: 15px; color: #FEFEFE80;}


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

.hero-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; letter-spacing: 3px;}

.membership-section{backdrop-filter: blur(38.70000076293945px);}

.service-tabs{position: relative;}
.service-tabs .e-n-tabs-heading{position:absolute; top: 0; z-index: 1;}

.featured-service-section:before{background-position: calc(50% + 300px) center !important;}


/* ----- MEMBERSHIP ----- */

.pricing span{font-family: "Teodor VF"; font-size: clamp(1.5rem, 2.5vw, 2rem); color: #111827; letter-spacing: -0.9px;}

.pricing-table{width: 100%; border-collapse: collapse; margin: 0;}
.pricing-table tr:not(:last-child){border-bottom: 1px solid #E5E7EB;}
.pricing-table tr td{border: none; background: none !important;}
.pricing-table td{padding: 16px 0; font-weight: 500; color: #1F2937;}
.pricing-table td:last-child{text-align: right; white-space: nowrap;}

.membership-wellness-box{display: flex;}

.option-box.gold:has(.btn.primary:hover) {border-top: 4px solid #C09665;}
.option-box.blue:has(.btn.primary:hover) {border-top: 4px solid #111827;}


/* ----- TESTIMONIAL SECTION ----- */

.home-testimonials .testimonials-block .video-widget{width:100%; flex:1 1 auto; max-width:100%;}
.home-testimonials .testimonials-block .video-widget img{border-radius: 10px;}

.home-testimonials .testimonials-block .video-widget .elementor-widget-container{width:100%; height:680px;}
.home-testimonials .testimonials-block .video-widget .elementor-wrapper{width:100%; height:680px; position:relative; padding-bottom:0!important; aspect-ratio:unset!important; overflow:hidden;}

.home-testimonials .testimonials-block .video-widget .elementor-custom-embed-image-overlay{width:100%; height:100%; display:block;}
.home-testimonials .testimonials-block .video-widget .elementor-custom-embed-image-overlay img{width:100%; height:100%; display:block; object-fit:cover;}

.home-testimonials .testimonials-btn .elementor-icon{display: block;}
.home-testimonials .testimonials-btn .elementor-icon svg path{stroke: var(--e-global-color-primary);}
.home-testimonials .testimonials-btn.prev .elementor-icon svg{transform: rotate(180deg);}
.home-testimonials .testimonials-btn .elementor-icon:hover{cursor: pointer;}
.home-testimonials .testimonials-btn.is-disabled .elementor-icon{opacity: 0.2; pointer-events: none;}

.video-testimonials .elementor-custom-embed-image-overlay{position: relative;}
.video-testimonials .elementor-custom-embed-image-overlay::after{content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0) 100%); pointer-events: none; opacity: 0.85; transition: opacity 0.4s ease;}
.video-testimonials .elementor-custom-embed-image-overlay:hover::after{opacity: 1;}
.video-testimonials .elementor-widget-video .elementor-wrapper{--video-aspect-ratio: 1.77777 !important;}
.video-testimonials .elementor-custom-embed-play{z-index: 1;}


/* ----- ABOUT ----- */

.credentials-logo .gallery{display: flex; flex-wrap: wrap; justify-content: center;}
.credentials-logo .gallery-item{float: none !important; display: inline-block;}

.credentials-logo .gallery-columns-1 .gallery-item{width: 100%;}
.credentials-logo .gallery-columns-2 .gallery-item{width: 50%;}
.credentials-logo .gallery-columns-3 .gallery-item{width: 33.333%;}
.credentials-logo .gallery-columns-4 .gallery-item{width: 25%;}
.credentials-logo .gallery-columns-5 .gallery-item{width: 20%;}
.credentials-logo .gallery-columns-6 .gallery-item{width: 16.666%;}
.credentials-logo .gallery-columns-7 .gallery-item{width: 14.285%;}
.credentials-logo .gallery-columns-8 .gallery-item{width: 12.5%;}

.credentials-logo .gallery-icon{height: 50px; display: flex; align-items: center; justify-content: center;}
.credentials-logo .gallery-icon img{width: 100px; height: 35px; object-fit: contain;}

.credentials-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;}


/* ----- NEWS AND PRESS ----- */

.news-press-loop .elementor-custom-embed-image-overlay{position: relative;}
.news-press-loop .elementor-custom-embed-image-overlay::after{content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0) 100%); pointer-events: none; opacity: 0.85; transition: opacity 0.4s ease;}
.news-press-loop .elementor-custom-embed-image-overlay:hover::after{opacity: 1;}
.news-press-loop .elementor-custom-embed-play{display: none;}


/* ----- PROVIDER REFERRAL ----- */

/* Header Section */
.referral-form .header-section{display: flex; align-items: center; gap: 14px; border-bottom: 1px solid #F3F4F6; padding-bottom: 24px; margin-bottom: 8px;}
.referral-form .header-section.v2{border-bottom: 0; padding-bottom: 0; margin-bottom: 0;}
.referral-form .header-section.first{margin-top: 0;}
.referral-form .header-section__icon{width: 48px; height: 48px; min-width: 48px; border-radius: 50%; background: rgba(192, 150, 101, 0.10); display: flex; align-items: center; justify-content: center;}
.referral-form .header-section__icon.v2{background: none;}
.referral-form .header-section__icon img{width: 20px; height: 20px; object-fit: contain;}
.referral-form .header-section__title{margin: 0; font-weight: 500;}

/* Section Dividers */
.referral-form .section-divider{height: 40px; background: #F6F6F6; margin: 20px -40px;}

/* Date Field */
.referral-form .elementor-date-field::placeholder{color: #141414; opacity: 1;}

/* Radio Field */
.referral-form .elementor-field-type-radio .elementor-subgroup-inline{display: flex; justify-content: space-between; align-items: center; gap: 16px;}
.referral-form .elementor-field-type-radio .elementor-subgroup-inline .elementor-field-option{width: calc((100% - 16px) * .5); border: 1px solid #E5E7EB; padding: 16px; border-radius: 12px;}
.referral-form .elementor-field-type-radio input[type="radio"]{accent-color: #c89b2b;}

/* Checkbox Field */
.referral-form .elementor-field-type-checkbox{background: #FAFAFA; padding: 20px !important; border-radius: 12px; margin-left: 15px; margin-right: 15px;}
.referral-form .elementor-field-type-checkbox .elementor-field-option{display: flex; justify-content: space-between; align-items: center; width: 100%;}
.referral-form .elementor-field-type-checkbox .elementor-field-label{color: #141414 !important; font-weight: 500 !important;}
.referral-form .elementor-field-type-checkbox .elementor-field-option .elementor-field-label{color: #6B7280 !important;}
.referral-form .elementor-field-type-checkbox input[type="checkbox"]{appearance: none; -webkit-appearance: none; width: 44px; height: 24px; background: #e5e7eb; border-radius: 999px; position: relative; cursor: pointer; transition: all 0.3s ease; order: 2;}
.referral-form .elementor-field-type-checkbox input[type="checkbox"]::after{content: ""; position: absolute; top: 3px; left: 4px; width: 18px; height: 18px; background: #fff; border-radius: 50%; transition: all 0.3s ease;}
.referral-form .elementor-field-type-checkbox input[type="checkbox"]:checked{background: #C89B2B;}
.referral-form .elementor-field-type-checkbox input[type="checkbox"]:checked::after{transform: translateX(18px);}

/* Notes */
.referral-form .notes{font-size: 0.875rem; font-weight: 300; color: #6B7280; line-height: 1.62em;}
.referral-form .notes.large{font-size: 1rem;}

/* Form Links */
.referral-form .form-links{color: rgba(0,0,0,0.1); display: flex; align-items: center; gap: 8px;}
.referral-form .form-links a{color: #141414; font-size: 12px; font-weight: 400; line-height: 1.66em;}
.referral-form .form-links a:hover{color: var(--e-global-color-accent);}

/* Upload Field */
.referral-form .elementor-field-group-custom_upload{position: relative; border: 2px dashed #D1D5DB; border-radius: 12px; background: #f9fafb; padding: 32px 20px; text-align: center; transition: all 0.3s ease; cursor: pointer; margin-left: 15px; margin-right: 15px;}
.referral-form .elementor-field-group-custom_upload #form-field-custom_upload{text-align: center;}

/* Acceptance Field */
.referral-form .elementor-field-type-acceptance .elementor-field-option label{font-size: 12px !important; font-weight: 400 !important; line-height: 1.66em !important;}
.referral-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]{accent-color: #c89b2b;}

.referral-form button.elementor-button{margin-top: 40px;}
.referral-form button.elementor-button .elementor-button-icon{display: none;}
.referral-form button.elementor-button:hover .elementor-button-icon{display: block;}


/* ----- BULLET STYLING ----- */

.old-gold-bullet ul li::marker{color: #B8943E !important;}
.old-gold-bullet ul li strong{color: #B8943E;}
.old-gold-bullet ul li{margin-bottom: 15px;}

.ochre-bullet ul li::marker{color: #976621 !important;}
.ochre-bullet ul li strong{color: #976621 !important;}
.ochre-bullet ul li{margin-bottom: 15px !important;}

.old-gold-bullet.no-pad ul{padding-left: 15px;}
.old-gold-bullet.no-pad ul li:last-child{margin-bottom: 0;}

.old-gold-bullet.no-pad.black ul li::marker,
.old-gold-bullet.no-pad.black ul li strong{color: #141414B3 !important;}


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

@media (max-width: 1200px){
  .menu-bar .consultation-btn{display: none;}
  .menu-bar .menu-group{width: 100%; justify-content: space-between;}
  .menu-bar .header-menu .e-n-menu-heading{justify-content: right;}
}

@media (max-width: 1024px){
  .service-tabs .e-n-tabs-heading{position: relative;}
  .featured-service-section:before{background-position: center right !important;}
  .home-testimonials .testimonials-block .video-widget .elementor-widget-container{height:500px;}
  .home-testimonials .testimonials-block .video-widget .elementor-wrapper{height:500px;}
  .page-id-3173 .old-gold-bullet ul{list-style-position: inside; text-align: center;}
}

@media (max-width: 767px){
  .btn .elementor-button .elementor-button-icon,
  .contact-form button.elementor-button .elementor-button-icon{display: none !important;}

  .home-testimonials .testimonials-block .video-widget .elementor-widget-container{height:400px;}
  .home-testimonials .testimonials-block .video-widget .elementor-wrapper{height:400px;}

  .location-section .e-n-tabs-heading{padding-top: 70px; margin: 0 20px;}
  .location-section .e-n-tabs-heading:before{left: 0; right: 0; text-align: center; top: 40px;}

  .legacy-menu .elementor-icon-list-item:first-child{display: block; width: 100%; margin-bottom: 10px;}
  .mavan-logo .elementor-image-box-wrapper{display: flex; flex-direction: column-reverse; gap: 20px;}
  .mavan-logo .elementor-image-box-title a::after{display: none;}

  .membership-wellness-box{justify-content: center;}
  .membership-wellness-box .elementor-icon svg{margin: 0 auto;}
  .membership-wellness-box .elementor-icon-box-title{text-align: center;}

  .referral-form .section-divider{margin: 20px -20px;}
}

@media (max-width: 480px){
  .hero-buttons{flex-direction: column !important;}
}