/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0.1031
*/

:root {
    --color-black: #000;
    --color-white: #fff;
    --color-yellow: #FBBC04;

    --rd-1: 20px;
    --rd-2: 5px;
    --rd-3: 10px;
    --shadow: 0 0 50px 0 rgb(0 0 0 / .25);
    --shadow-1: 0px 4px 21px rgba(0, 0, 0, 0.09);
    --shadow-2: 0px 4px 48px 0px rgba(0, 0, 0, 0.29);
    --gradient: linear-gradient(180deg, #C2FFE5 0%, rgba(217, 255, 239, 0.00) 100%);

    --transition: .2s;
}

/* General */
blockquote, dl, figure, form, ol, p, pre, ul {margin-bottom: .75em;}
.h1, h1, .h2, h2 {line-height: 1.2;}
.h3, h3 {line-height: 1.2;}
ul li.bullet-checkmark {border: none;}
ul li.bullet-checkmark::before {color: var(--fs-color-primary);top: .6em;}
ul li.bullet-checkmark a {color: var(--fs-color-secondary);transition: var(--transition);}
ul li.bullet-checkmark a:hover {color: var(--color-black);}
.img-radius .img-inner {border-radius: var(--rd-1);}
.list-cols-4 {--items: 4;}
.list-cols-4 ul {display: grid;grid-template-columns: repeat(var(--items), 1fr);gap: 7px;}
.page-top p:last-of-type {margin-bottom: 0;}
.row-box-shadow-3 .col-inner {box-shadow: var(--shadow-2);}
.has-gradient {background: var(--gradient);}
@media (max-width: 849px) {
    .list-cols-4 {--items: 3;}
}
@media (max-width: 549px) {
    h3, h4 {font-size: 1.25em;}
    .list-cols-4 {--items: 2;}
}

/* Header */
.header-wrapper, .header-wrapper.stuck {box-shadow: var(--shadow);}
.nav-spacing-xlarge>li {margin-inline: 20px;}
.nav>li.html {font-size: 1em;}
.nav-dark .nav>li>a {color: var(--fs-color-primary);}
.nav-uppercase>li>a {letter-spacing: .1em;}
.stuck {backdrop-filter: blur(5px);}
.logo-left .logo {margin-right: 0;}
.header-nav-main {justify-content: center;}
.nav.header-contact>li>a {transition: var(--transition);color: var(--fs-color-primary);font-weight: 600;font-size: 1.125rem;}
.nav.header-contact>li>a>span {margin-top: 3px;}
.nav.header-contact>li>a:hover {color: var(--color-black);}
.nav.header-contact>li>a:hover .icon-phone {transform: scale(1.05);}
.nav.header-contact>li>a .icon-phone {display: inline-flex;align-items: center;justify-content: center;width: 34px;height: 34px;border: 1px solid var(--fs-color-primary);border-radius: 999px;background: var(--fs-color-primary);color: var(--color-white);margin-right: 8px;transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;}
.off-canvas .nav-vertical>li>a {color: var(--color-black);font-size: 1rem;}
.off-canvas .nav-vertical .header-contact li>a {padding-block: 20px;color: var(--color-black);}
.nav-vertical .header-contact li {padding-left: 0;}
.header-bottom:has(.sticky-buttons) {display: none;}
.stuck .header-bottom:has(.sticky-buttons) {display: block;}
.header-bottom:has(.sticky-buttons) .container {padding-inline: 0;} 
@media (max-width: 1199px) {    
    .header-main .hide-for-medium {display: none;}
    .header-main .show-for-medium {display: block !important;}
    .nav>li.html {font-size: 1.125em;}
}
@media (max-width: 1366px) {
    .nav-spacing-xlarge>li {margin-inline: 15px;}
    #logo {width: 240px !important;}
}
@media (max-width: 549px) {
    #logo {width: 260px !important;}
}

/* Hero unit */
.hero-unit .section-bg {width: 63%;left: auto;right: 0;}
.hero-unit .section-bg::before {content: '';display: block;position: absolute;left: 0;top: 0;z-index: 1;width: 50%;height: 100%;background: linear-gradient(to right,  rgba(235,247,242,1) 0%,rgba(255,255,255,0) 100%);}
@media (max-width: 549px) {
    .hero-unit .section-bg {width: 100%;height: 50%;top: auto;}
    .hero-unit .section-bg::before {background: linear-gradient(to bottom,  rgba(235,247,242,1) 0%,rgba(255,255,255,0) 100%);width: 100%;}
    .hero-unit .section-bg img {object-position: 100% 100% !important;object-fit: contain;}
}

/* Reviews */
.star-rating:before, .star-rating span:before, .woocommerce-page .star-rating:before {color: var(--color-yellow);}
.star-rating:before, .star-rating span:before {letter-spacing: 3px;}
.star-rating {width: calc(5.06em + 12px); /* increase width to prevent clipping */}
.testimonial-box {background-color: var(--color-white);padding: 1em;height: 100%;border-radius: var(--rd-1);box-shadow: var(--shadow-1);}
.testimonial-box .icon-box-text {display: flex;flex-direction: column;height: 100%;}
.testimonial-text {font-style: normal !important;font-size: 1.25rem;line-height: 1.5;}
.testimonial-meta {margin-top: auto;font-size: 1.125rem;}

/* Button */
.header-button .button, .btn {margin-bottom: 0;padding-inline: 1.125em;font-weight: 600;}
.header-button .button span, .btn span {position: relative;top: .085em;}
.header-button .button:not(.is-outline), .btn:not(.is-outline) {border: none;line-height: 2.75em;min-height: 2.75em;}
.btn.secondary {color: var(--color-white);}
.btn.white {color: var(--color-black) !important;}

/* Icon boxes */
.icon-box-img img, .icon-box-img svg {padding-top: 0;}
.icon-boxes p {margin-bottom: 0;}
.icon-box-1 .icon-box-img {margin-bottom: 1.2rem;}
.icon-box-1 .icon-box-img .icon {position: relative;padding-top: 100%;border-radius: 100%;background-color: var(--fs-color-primary);}
.icon-box-1 .icon-box-img .icon-inner {position: absolute;left: 0;top: 0;display: flex;align-items: center;justify-content: center;width: 100%;height: 100%;}
.icon-box-1 .icon-box-img svg {width: 40%;}
.icon-box-1 .icon-box-text h3 {transition: var(--transition);}
.plain:hover .icon-box-1 .icon-box-text h3 {color: var(--fs-color-primary);}
.icon-box-2 .icon {position: relative;padding-top: 100%;background-color: var(--fs-color-primary);border-radius: 100%;}
.icon-box-2>.col-inner {box-shadow: var(--shadow-1);border-radius: var(--rd-1);overflow: clip;background: var(--gradient);}
.icon-box-2 .icon-inner {position: absolute;left: 0;top: 0;width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;}
.icon-box-2 .icon-box-img svg {width: 40%;}

/* Accordion */
.accordion-item {background-color: var(--color-white);border-radius: var(--rd-1);box-shadow: var(--shadow-1);overflow: clip;border: 1px solid var(--fs-color-primary);}
.accordion-item+.accordion-item {margin-top: 20px;}
.accordion-title {border: none;padding-block: 1em;padding-left: 1.75em;line-height: 1.3;color: var(--color-black);}
.accordion-title span {position: relative;top: 2px;}
.accordion-title::before {content: '';display: block;position: absolute;left: 1rem;top: 50%;width: 6px;height: 6px;border-radius: 100%;background-color: var(--fs-color-primary);transform: translateY(-50%);transition: var(--transition);}
.accordion-title.active {background-color: var(--fs-color-primary);color: var(--color-white);font-weight: normal;}
.accordion-title.active::before {background-color: var(--color-white);}
.accordion .toggle {left: auto;right: 0;top: 0;bottom: 0;margin-block: auto;opacity: 1;font-size: 1rem;}
.accordion .toggle i {top: 0;}
.accordion-inner {padding-left: 1.75em;}
.accordion-inner>*:last-child {margin-bottom: 0;}

/* Blog */
.box-blog-post .box-text {font-size: 1em;}
.box-blog-post .box-image {border-radius: var(--rd-1);}
.box-blog-post .box-image a:hover img {transform: scale(1.1);}
.post-title a:hover {color: var(--fs-color-primary);}
.blog-single .entry-image img {border-radius: var(--rd-1);}
.navigation-post a {display: inline-flex;align-items: center;line-height: 1.4;font-size: 1.125rem;transition: var(--transition);color: var(--color-black);}
.navigation-post a:hover {color: var(--fs-color-primary);}
@media (max-width: 849px) {
    .post-item:last-child, .post-item:last-child .box-text {padding-bottom: 0;}
}

/* Footer */
.footer-title .uppercase {letter-spacing: 2px;margin-bottom: 1em;}
.footer-list ul {margin-bottom: 0;}
.footer-list li {list-style: none;margin-left: 0 !important;margin-bottom: 0;line-height: 1.4;}
.footer-list li+li {margin-top: 0.75em;}
.footer-list li.bullet-checkmark {padding-block: 0;}
.footer-list li a {transition: var(--transition);}
.abs-footer .col {padding-bottom: 0;}
.abs-footer p:last-of-type {margin-bottom: 0;}
.abs-footer a {color: inherit;transition: var(--transition);}
.abs-footer a:hover {color: var(--fs-color-primary);}
.absolute-footer {padding-block: 0;}

/* Form elements */
.input {box-shadow: none !important;border-radius: var(--rd-2) !important;}
.input:focus {border-color: var(--fs-color-primary) !important;}
.ninja-forms-form-wrap form {margin-bottom: 0;}
.label-above .nf-field-label {margin-bottom: 5px;}
.nf-field-element textarea {vertical-align: top !important;}
.nf-field-element:has(.nf-element[type="submit"]), .nf-error-field-errors {text-align: center;}
.nf-field-container:has(.nf-element[type="submit"]) {margin-bottom: 0;}
.nf-element[type="submit"] {border-radius: var(--rd-3);}
.nf-form-fields-required {display: none;}
.nf-error .ninja-forms-field, .nf-error.listimage-wrap .nf-field-element ul {border-color: var(--fs-color-alert) !important;}
.nf-error-msg, .ninja-forms-req-symbol {color: var(--fs-color-alert) !important;}
@media (max-width: 549px) {
    .content-area .nf-field-container {margin-bottom: 10px;}
    .nf-form-cont .one-half {width: 100% !important;margin-left: 0 !important;}
}

/* QLM Locations mega menu */
.qlm-mega{padding:28px 22px 22px}
.nav-dropdown .qlm-mega-h{display:block;font-weight:800;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#29b57a;margin:0 0 14px;padding-bottom:11px;border-bottom:2px solid rgba(41,181,122,.22)}
.nav-dropdown ul.qlm-mega-list,.nav-dropdown ul.qlm-mega-list li{list-style:none!important;margin:0!important;padding:0!important}
.nav-dropdown ul.qlm-mega-list li{margin:0 0 3px!important}
.nav-dropdown ul.qlm-mega-list li a{display:flex;align-items:center;gap:10px;padding:9px 13px;border-radius:10px;color:#22303a!important;font-size:.98rem;line-height:1.25;font-weight:500;transition:background .18s,color .18s,transform .18s}
.nav-dropdown ul.qlm-mega-list li a::before{content:'';flex:0 0 16px;width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329b57a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.6;transition:opacity .18s}
.nav-dropdown ul.qlm-mega-list li a:hover{background:rgba(41,181,122,.09);color:#29b57a!important;transform:translateX(3px)}
.nav-dropdown ul.qlm-mega-list li a:hover::before{opacity:1}
.nav-dropdown .qlm-mega-cta{background:rgba(41,181,122,.09);border:1px solid rgba(41,181,122,.22);border-radius:16px;padding:24px}
.nav-dropdown .qlm-mega-cta strong{display:block;font-size:1.05rem;color:#161616;margin-bottom:7px}
.nav-dropdown .qlm-mega-cta p{font-size:.92rem;color:#5b6472;margin:0 0 16px;line-height:1.5}
.nav-dropdown .qlm-mega-cta .qlm-mega-btn{display:inline-flex;align-items:center;gap:7px;background:#29b57a;color:#fff!important;padding:11px 20px;border-radius:999px;font-weight:700;font-size:.9rem;box-shadow:0 6px 16px -6px #29b57a}
.nav-dropdown .qlm-mega-cta .qlm-mega-btn::after{content:'\2192';font-size:1.05em}
.nav-dropdown .qlm-mega-cta .qlm-mega-btn:hover{filter:brightness(.94)}
@media (max-width:849px){.qlm-mega{padding:16px}.nav-dropdown .qlm-mega-cta{margin-top:14px}}
