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

/*************** ADD CUSTOM CSS HERE.   ***************/
/*.row:not(.row-full-width), .container {
    padding-left: 8.5vw;
    padding-right: 8.5vw;
    max-width: none !important; 
}*/
body.boxed{
    left: 0;
    right: 0;
}
@media (max-width: 1900px) and (min-width: 850px) {
    html {
        font-size: .84vw;
    }
    .row:not(.row-full-width), .container {
        padding-left: 8.5vw;
        padding-right: 8.5vw;
        max-width: none !important; 
    }  
    .row:not(.row-full-width), .container {
        padding-left: 8.5vw;
        padding-right: 8.5vw;
        max-width: none !important; 
    }  
    .row:not(.row-full-width) .row {
        padding-left: 0;
        padding-right: 0;
    }
    .mfp-content .row{
        padding-left: 0 !important;
        padding-right: 0 !important;
    }    
    .blog-aero .grid-col-1 {
        height: 29.6875rem !important;
    }    
}

/*Second font*/
@font-face {
    font-family: 'GrtskTera-Semibold';
    src: url('fonts/GrtskTera-Semibold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}
h1, h2, h3, h5 {
    font-family: 'GrtskTera-Semibold', serif;
    line-height: 1.13;
}

#main, #wrapper {
    overflow: hidden;
}
.ux-menu-link__link {
    min-height: 2em;
}
.text-m-0 p{
    margin:0;
}
.m-0-a {
    margin: 0 auto !important;
}
.p-l-1 {
    padding-left: 1rem;
}
.m-w-610 {
    max-width: 38.125rem;
}
.m-w-410 {
    max-width: 25.625rem;
}
.col-b-0 > .col, .col-b-0 {
    padding-bottom: 0;
}
footer p{
    margin-bottom: .8em;
}

/*ul list*/
.col-inner ul {
    list-style: none;
}
.col-inner ul:not(.nav) > li:before{
    content: '';
    background-image: url('data:image/svg+xml,<svg width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.531448" y="1.39766" width="18.294" height="18.294" rx="9.14701" stroke="%231E4E69" stroke-width="1.0629"/><path d="M5.64648 10.3654L8.33494 13.0538L13.2638 8.125" stroke="%231E4E69" stroke-width="1.0629" stroke-linecap="round"/></svg>');
    width: 1.125em;
    height: 1.125em;
    background-size: 1.125em;
    background-repeat: no-repeat;
    display: inline-block;
    margin-right: .5em;
    margin-bottom: -0.2em;
    
}
.col-inner ul:not(.nav) li{
    margin-left: 0;
    margin-bottom: .85em;
}

/*input*/
.select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection, input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    background-color: #fff;
    border: 1px solid #cfe5f3;
    border-radius: 0;
    box-shadow: none;
    box-sizing: border-box;
    color: #333;
    font-size: .875em;
    height: 3.8125rem;
    max-width: 100%;
    padding: 0 .75em;
    transition: color .3s, border .3s, background .3s, opacity .3s;
    vertical-align: middle;
    width: 100%;
}
.wpcf7 input[type="tel"] {
    text-align: center;
}
.mfp-content .wpcf7 input[type="tel"] {
    text-align: left;
}
.wpcf7-spinner {
    display: none;
}
.wpcf7 form {
    margin-bottom: 0;
}
.wpcf7 .wpcf7-not-valid-tip {
    background-color: #f0f0f0;
    border-radius: 20px;
    color: var(--wp--preset--color--alert);
    line-height: 1.2em;
    margin-top: -5px;
    opacity: 1;
    padding: 4px 7px;
    position: absolute;
    bottom: 0.6rem;
    font-size: 75%;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
}
.wpcf7 .wpcf7-not-valid-tip:after {
    border: 6px solid rgb(255 255 255 / 0%);
    border-bottom-color: #f0f0f0;
    bottom: 100%;
    content: " ";
    height: 0;
    left: 30px;
    margin-left: -10px;
    pointer-events: none;
    position: absolute;
    width: 0;
}
.wpcf7 form .wpcf7-response-output {
    margin: 0;
    padding: 0.2em 1em;
    border: 1px solid #00a0d2;
    font-size: 74%;
    position: absolute;
    margin-top: 10px;
    background: #ffffff;
}
.primary, input[type=submit], input[type=submit].button {
    background-color: var(--wp--preset--color--primary);
    min-height: 3.8125rem;
    text-transform: none;
    font-weight: 500;
    margin: 0;
}

/*Header*/
.flex-col.hide-for-medium.flex-center {
    width: 100%;
}
.nav-center {
    justify-content: space-between !important;
}
.header-bottom {
    border-bottom: 1px solid #00000010;
    min-height: 5.3125rem !important;
}
.header-main {
    height: 7.5rem !important;
}
#logo a {
    max-width: 19rem !important;
}
#logo img {
    max-height: 7.5rem !important;
}
.logo-left .logo {
    margin-left: 0;
    margin-right: 1.875rem !important;
}
.logo-tagline {
    font-size: .875rem;
    font-style: normal;
    color: #7B7B7B;
    line-height: 1.4;
    margin: 0.85em 0;
    padding: 2px 0 2px 1.75rem;
    margin-left: 1.75rem;
    border-left: 1px solid #F6F6F6;
    max-width: 17rem;
    margin-top: 1.5rem;
}
.searchform .button.icon i {
    font-size: .85em;
    margin-top: 5px;
}

/*Search Form*/
.form-flat input:not([type=submit]), .form-flat select, .form-flat textarea {
  border: 1px solid #d9d9d9;
  border-radius: 999px;
  width: 23.3125rem;
  height: 3.75rem;
  background: #fff;
  padding: 0 1.875rem;
  align-items: center;
}
.form-flat .button.icon {
  background-color: rgba(207, 229, 243, 0.5) !important;
  border: none !important;
  border-radius: 100% !important;
  box-shadow: none !important;
  width: 2.875rem;
  height: 2.875rem;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4098C4 !important;
  font-size: 1.125rem;
  transition: background 0.3s ease;
}
.searchform-wrapper.form-flat .flex-col:last-of-type {
    margin-left: -4.3em;
}

/*title shortcode*/
.new-title-container {
    
}
.new-title-container .new-title {
    font-size: 4.25rem;
    margin-bottom: 0em;
    display: flex;
    align-items: center;    
    gap: 3rem
}
.new-title-container h5.new-title {
    font-size: 2rem;
}
.new-title-container .new-title .full-title:before {
    position: relative;
}
.new-title-container .new-title .divider-title {
    display: block;
    height: 1px;
    width: 100%;
    background-color: rgb(207 229 243 / 50%);
    flex: 1;
    position: relative;
    margin-top: .6rem;
    margin-right: -200rem;    
}
.new-title-container .new-title .divider-title:before {
    content: '';
    background-image: url('data:image/svg+xml,<svg width="19" height="33" viewBox="0 0 19 33" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19 0V22L0 33V11L19 0Z" fill="%23CFE5F3"/></svg>');   
    width: 1.1875rem;
    height: 2.0625rem;
    display: block;
    background-size: 1.1875rem;
    background-repeat: no-repeat;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);    
}
.new-title-container h5.new-title .divider-title:before {
    width: 0.875rem;
    height: 1.5rem;
    background-size: 0.875rem;
}
.new-title-container .short-title {
    font-size: 1.125rem;
    margin-bottom: 0em;
    color: #BFBFC3;
}
/*Elements button, patterns, deviders etc.*/
.btn-primary {
    display: inline-block;
    padding: 1.25em 3.456em;
    font-weight: 500;
}
.phone-number {
    display: flex;
    flex-direction: column;
}
.phone-number span:nth-child(1) {
    font-weight: 400;
    font-size: 0.87rem;
    color: #f5f5f5;
}

.phone-number span:nth-child(1):before {
    content: '';
    width: 0.6em;
    height: 0.6em;
    background: #3CB441;
    display: inline-block;
    border-radius: 99px;
    margin-right: 1.3em;
}
.phone-number p {
    margin-bottom: 0.2em;
}
.button.is-outline, input[type=button].is-outline, input[type=reset].is-outline, input[type=submit].is-outline {
    border-width: 1px;
}


/*icon section*/
.icon-row {
    
}
.icon-row p{
    margin-bottom: 0;
    font-size: .935rem;
    color: #7B7B7B;
}
.icon-row .icon-box-img {
    width: 8.1875rem !important;
}
.icon-row > .col:nth-child(even) {
    background-color: #CFE5F3;
    background-image: url(/wp-content/uploads/2025/04/pattern.svg);
    background-repeat: no-repeat;
    background-position-x: right;
    background-position-y: top;
    background-size: 85%;
}

.icon-row > .col:nth-child(odd){
    border: 1px solid #EAF7FF;
}
.icon-row > .col > .col-inner {
    padding: 3.2rem 2.5rem;
}
.icon-row .icon-box-right .icon-box-img+.icon-box-text {
    padding-right: 1.2em;
}
.icon-main-img .img, .icon-main-img .img-inner{
    height: 100%;    
}

/*tab section*/
.tabbed-content {
    gap: 1.5rem;
}
.tabbed-content .nav {
    border-bottom: 1px solid #D9D9D9;
}
.tabbed-content .nav {
    gap: 2.5rem
}
.tabbed-content .nav>li>a {
    font-size: 1rem;
    padding: 1em 0;
    font-weight: 500;
}

/*section blog*/
.blog-aero .blog-post-inner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .3em;
}
.blog-aero .blog-post-inner .post-meta{
    order: -1;
}
.blog-aero .is-divider{
    display:none;
}
.blog-aero > .col:first-child{
    padding-left: 0;
}
.blog-aero > .col:first-child h5{
    max-width: 585px;
    font-size: 2rem;
    margin: 0;
}
.blog-aero > .col:last-child{
    padding-right: 0;    
}
.blog-aero > .col{
    padding-bottom: 0;
}
.blog-aero > .col h5{
    font-size: 1.4rem;
    max-width: 350px;
}
.blog-aero .box-overlay .box-text { 
    padding-left: 2.5em;
    padding-right: 2.5em;
    padding-bottom: 2em;
}

/*section nned help*/
.col-need-bg > .col-inner{
    background-image: url(/wp-content/uploads/2025/04/pattern.svg);
    background-repeat: no-repeat;
    background-position-x: right;
    background-position-y: top;
    background-size: 85%;   
}
.need-help .phone-number span:nth-child(1) {
    font-size: 0.95rem;
    color: #7B7B7B;
}
.social-icons {
    display: flex;
    font-size: .85em;
    gap: .5rem;
}
.icon.primary.button.circle {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    min-height: auto;
    margin-bottom: 0;
}
.icon.primary.button i {
    top: 0;
}
.people-form-img {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30%;  
}

/*section sphere*/

.swiper-wrapper {
  counter-reset: slide;
}
.sphere-container .swiper-slide .sphere-thumb::before {
    content: counter(slide, decimal-leading-zero);
    counter-increment: slide;
    position: absolute;
    bottom: -1rem;
    right: -2.2rem;
    background: #fff;
    color: var(--primary-color);
    padding: 4px 2rem;
    border-radius: 0;
    font-size: 1.25rem;
    font-family: 'GrtskTera-Semibold', serif;
    transform: rotate(323deg);
}
.sphere-container {
    overflow: hidden;
    /*margin-right: -25vw;*/
    margin-right: -38rem;
}
.sphere-thumb {
    margin-bottom: 1.5rem;
    position: relative;
}
.swiper-slide.sphere-item {
    margin-left: 0 !important;
}
.sphere-item h3 {
    font-size: 2rem;
}
.swiper-sphere-button {
    display: flex;
    gap: .5rem;
}
.swiper-button-next, .swiper-button-prev {
    position: relative;
    top: 0;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 99px;
    margin-top: 0;
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    flex-direction: row;
    background: var(--primary-color);
    left: auto;
    right: 0;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 1.5rem;
}


.sphere-circle-container .swiper-slide {
    border-radius: 9999px;
    overflow: hidden;
    position: relative;
    height: 21.25rem;
    width: 21.25rem !important;
}
.sphere-circle-container .sphere-circle-item {
    border-radius: 999px;
    border: 1.5px solid var(--primary-color);
    margin-right: -1rem !important;
}
.sphere-circle-container .sphere-circle-item:hover{
    z-index: 99;
}
.sphere-circle-container .sphere-circle-item .sphere-thumb{
    opacity: 0;
}
.sphere-circle-container .sphere-circle-item:hover .sphere-thumb{
    opacity: 1;
}
.sphere-circle-container .sphere-circle-item .sphere-thumb:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    transition: 0s all !important;
}
.sphere-circle-container .sphere-circle-item:hover .sphere-thumb:before {
    background: #1111115c;
}
.sphere-circle-container .sphere-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    padding: 1rem 1.2rem;
    margin-bottom: 0;
    transition: .1s all;
}
.sphere-circle-container .sphere-circle-item:hover .sphere-title {
    color: #fff;
}

/*product*/
.color-product > .img{
    max-width: 2.8125rem;
}
.color-product > .text > *{
    margin: 0;
}

/*Table*/
.table-aero table {
    border-color: #ececec;
    border-spacing: 0;
    margin-bottom: 1em;
    width: 100%;
    border: solid 1px #f1f1f1;
    padding: 1em 1em 1em 1em;
}
.table-aero td, .table-aero th {
    border-bottom: 0px solid #ececec;
    font-size: 0.9em;
    padding: 1em 0.6em;
    text-align: left;
    vertical-align: middle;
}
.table-aero td:last-child, .table-aero th:last-child {
    padding: 1em 0.6em;
    font-weight: 600;
    color: #000;
    background: #F8F8F8;
    text-align: center;
    display: block;
    margin-bottom: .5em;
}
.table-aero tr {
    height: auto;
}
.tabbed-content .table-aero > .col {
    padding-bottom: 0;
}
.tabbed-content .table-aero table {
    border: solid 1px #d9d9d9;
}

.btn-primary-product {
    display: block;
    padding: 1.6rem 1rem;
    font-weight: 500;
}

/*blog*/
.entry-image img {
    width: 100%;
    height: 50vh;
    object-fit: cover;
}

.absolute-footer.dark, .absolute-footer.dark a {
    color: #fff;
}
@media only screen and (max-width: 849px) {
    .scroll-snap {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        display: flex !important;
        height: auto !important;
    } 
    .scroll-snap>.col {
        flex-grow: 1;
        flex-shrink: 0;
        scroll-snap-align: center;
        position: relative !important;
        height: auto !important;
        left: 0 !important;
        top: 0 !important;        
    }   
    .scroll-snap .grid-col-1 {
        height: 350px !important;
        width: 85% !important;
    }  
    .scroll-snap.stack  > * {
        --stack-gap: 1rem;
        width: 33% !important;
        flex-grow: 1;
        flex-shrink: 0;
    }    
    .logo-tagline{
        display:none;
    }
    #logo a {
        max-width: 13rem !important;
    } 
    .logo-left .logo {
        margin-right: 0 !important;
    }
    .header-main {
        height: 5.5rem !important;
    }
    .mfp-content .nav>li>a {
        color: #111;
        font-size: 1.1rem;
    }   
    .off-canvas-left .mfp-content, .off-canvas-right .mfp-content {
        background-color: #fff;
        width: width: 320px;
    } 
    .btn-primary {
        display: inline-block;
        padding: .95em 2em;
        font-weight: 500;
        font-size: .875rem;
    } 
    .new-title-container .new-title {
        font-size: 1.6rem;
        gap: 2rem;
        margin-bottom: .5rem;
    }    
    .new-title-container .new-title > span.full-title{
        width: fit-content;
    }      
    .new-title-container .short-title {
        font-size: 0.85rem;
    }  
    .new-title-container .new-title .divider-title:before {
        width: .85rem;
        height: 1.4rem;
        background-size: .85rem;;
    }  
    .icon-row .icon-box-img {
        width: 5rem !important;
    } 
    .icon-row p {
        font-size: .85rem;
    }  
    icon-row > .col > .col-inner {
        padding: 2.2rem 1.5rem;
    }  
    .sphere-container {
        margin-right: 0;
    }    
    .swiper-slide.sphere-item {
        margin-left: 0 !important;
        width: 80% !important;
        margin-right: 30px !important;
    } 
    .sphere-item h3 {
        font-size: 1rem;
    }  
    .sphere-thumb {
        margin-bottom: .5rem;
    }  
    .sphere-container .swiper-slide .sphere-thumb::before {
        bottom: -0.8rem;
        right: -2.2rem;
        font-size: .9rem;
    } 
    
    .blog-aero > .col:first-child h5 {
        font-size: 1.2rem;
    }    
    .blog-aero > .col h5 {
        font-size: 1rem;
    } 
    .new-title-container {
        line-height: 1;
    }
    .tabbed-content .nav {
        gap: 1rem;
        flex-wrap: nowrap;
        overflow: auto;
    }
    .tabbed-content .nav>li>a {
        font-size: .85rem;
        padding: .75em 0;
    } 
    
    .table-aero td, .table-aero th {
        font-size: 0.75em;
        padding: 1em 0.6em;
    }    
     .btn-primary-product {
        padding: 1rem 1rem;
        font-size: .85rem;
    }   
    .swiper-sphere-button {
        justify-content: flex-end;
    }
    .swiper-button-next, .swiper-button-prev {
        width: 3rem;
        height: 3rem;
    }    
     .swiper-button-next:after, .swiper-button-prev:after {
        font-size: 1rem;
    } 
    .need-help .phone-number span:nth-child(1) {
        font-size: 0.85rem;
    }    
    .phone-number span:nth-child(1):before {
        margin-right: .5em;
    }
    .new-title-container h5.new-title {
        font-size: 1.1rem;
    }  
    .table-aero > .col {
        padding-bottom: 15px;
    }
    .sphere-circle-container .swiper-slide {
        height: 15rem;
        width: 15rem !important;
    }   
    .sphere-circle-container .swiper-slide h3 {
        font-size: .85em;
    }
    .color-product > .img {
        max-width: 1.9rem;
    }    
}
@media only screen and (max-width: 549px) {

.img-350 img {
    height: 350px;
    object-fit: cover;
}

}