/*
    Template:       mantis
    Theme Name:     Mantis Child
    Theme URI:      http://themeforest.net/user/LA-Studio/portfolio?ref=LA-Studio
    Author:         LA Studio
    Author URI:     http://themeforest.net/user/LA-Studio?ref=LA-Studio
    Description:    Mantis - Minimal & Modern WooCommerce Theme
    Version:        1.0
    Tags:           one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, flexible-header, full-width-template, post-formats, sticky-post, theme-options, translation-ready
    License: 		    GNU General Public License
	  License URI: 	  licence/GPL.txt
    Text Domain:    mantis-child
    Domain Path:    /languages/
*/
/**
    * CH01 - BASIC RULES
    * CH02 - HEADER & MENU
    * CH03 - MAIN & CONTENT
    * CH04 - FOOTER
    * CH05 - MEDIA QUERIES
**/
/*CH01 - BASIC RULES*/
h1, h2, h3, h4, h5, h6 {
    margin-top:0;
    margin-bottom:0;
}
.mobile {
    display:none !important;
}
.px-std {
    padding-left: 18vW;
    padding-right: 18vW;
}
.px-min {
    padding-left: 6vW;
    padding-right: 6vW;
}
.py-std {
    padding-top: 4vW;
    padding-bottom: 4vW;
}
.py-mid {
    padding-top: 2vW;
    padding-bottom: 2vW;
}
.pt-std {
    padding-top: 4vW;
}
.pb-std {
    padding-bottom: 4vW;
}
.pb-0 {
    padding-bottom: 0 !important;
}
.text-size-0 {
    font-size: 46px;
}
.text-size-1 {
    font-size: 40px;
}
.text-size-2 {
    font-size: 24px;
}
.text-size-3 {
    font-size: 22px;
}
.text-size-4 {
    font-size: 20px;
}
.text-size-5 {
    font-size: 18px;
}
.text-size-6 {
    font-size: 16px;
}
.text-size-7 {
    font-size: 14px;
}
.fw-300 {
    font-weight: 300;
}
.fw-400 {
    font-weight: 400;
}
.fw-600 {
    font-weight: 600;
}
.fw-700 {
    font-weight: 700;
}
.font-italic {
    font-style: italic;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.uppercase {
    text-transform: uppercase;
}
.line1 {
    line-height: 1;
}
.line12 {
    line-height: 1.2;
}
.line14 {
    line-height: 1.4;
}
.yellow-text {
    color:#F9B727;
}
.white-text {
    color:#FFFFFF;
}
.green-text {
    color:#175651;
}
.block {
    display: block;
}
.margin-y-0 {
    margin-top:0 !important;
    margin-bottom:0 !important;
}
.underline {
    text-decoration: underline ;
}
main ul {
    padding-left:0;
}
main ul li::marker {
    content: "x ";
    color:#F9B727;
    font-weight: 600;
    font-size: 22px;
}
/*CH03 - HEADER & MENU*/
.body-loaded .site-header-outer .site-header-inner {
    position: static;
}
.enable-header-fullwidth:not(.body-boxed) .site-header .site-header-inner > .container {
    padding-top: 4vW;
}
.site-header .header-main {
    display: flex;
    justify-content: center;
}
.header-v3 .site-header .header-left,
.header-v3 .site-header .header-right,
.body-loaded .la-header-sticky-height {
    display: none;
}
header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.site-header .site-header-inner {
    background-color: transparent;
}
.header-v3 .site-header .header-middle, .header-v4 .site-header .header-middle {
    width: 320px;
}
/*CH04 - MAIN & CONTENT*/
.la-image-loading.spinner-custom .content {
    width: 200px;
    margin-top: -35px;
    height: 70px;
    margin-left: -100px;
}
/*Home*/
.header-row {
    padding-top:calc(100px + 6vW);
    padding-bottom: 4vW;
    background-image: url(/wp-content/uploads/2025/01/header_bg_pattern.webp);
    background-color: #F4F4F4;
    background-size: cover;
    background-repeat: no-repeat;
}
.header-row .subtitle {
    padding-top: 15px;
}
.header-row_subrow .col1 {
    padding-right: 4vW;
}
.header-row_subrow .col2 {
    padding-left: 2vW;
}
.greensep {
    display: none;
}
.form-bg-wrapper {
    background-color: #FFFFFF;
    padding: 50px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}
.wpcf7-form-control-wrap .wpcf7-select, .wpcf7-form-control-wrap .wpcf7-text, .wpcf7-form-control-wrap .wpcf7-textarea, .wpcf7-form-control-wrap .wpcf7-number {
    padding: 0;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    color: #b4b3b3;
    border-color: #b4b3b3;
    margin-bottom:10px;
    font-size: 18px;
}
.wpcf7-list-item {
    margin-left: 0;
}
.row-form.acceptance {
    color: #b4b3b3;
    font-size: 14px;
    line-height: 1.2;
}
.row-form.submit {
    margin-top: -32px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.row-form.submit input {
    max-width: 100%;
    border:0;
    line-height: 1.2;
    background-color: #175651;
    color: #ffffff;
    font-weight: 700;
    font-size: 18px;
    text-transform: uppercase;
    white-space: normal;
}
.row-form.submit p {
    text-align: center;
}
span[data-name=acceptance-check] {
    margin-bottom: 10px;
}
.wpcf7-spinner {
    margin-left: auto;
    margin-right: auto;
    margin-top:5px;
}
.title-row {
    background-color: #175651;
}
.benefici-row {
    background-image: url(/wp-content/uploads/2025/01/benefici_bg_pattern.webp);
    background-size: cover;
    background-repeat: no-repeat;
}
.benefici-row .benefici-row-icons {
    margin-left: -4vW;
    margin-right: -4vW;
}
.benefici-row-icons .wpb_column {
    padding: 0 5vW;
}
.benefici-icon {
    padding: 0 1vW;
}
.benefici-icon img {
    max-width: 88%;
}
.benefici-chisono {
    background-image: linear-gradient(to bottom, transparent 10%, #f4f4f4 10%, #f4f4f4 90%, transparent 90%);
}
.benefici-chisono .col1,
.value-row .col1,
.trattamento-row .col1 {
    padding-right:3vW;
}
.benefici-chisono .col2,
.value-row .col2,
.trattamento-row .col2 {
    padding-left:3vW;
}
.benefici-chisono p:not(:last-child),
.value-row p:not(:last-child),
.trattamento-row p:not(:last-child)   {
    padding-bottom:20px;
}
.value-row {
    background-color: #F4F4F4;
    background-image: url(/wp-content/uploads/2025/01/proposta_bg_pattern.webp);
    background-size: cover;
    background-repeat: no-repeat;
}
.buttonloforte {
    margin-top: 3vW;
    color: #ffffff;
    background-color: #175651;
    padding: 12px 20px;
    max-width: 330px;
    display: inline-block;
    text-align: center;
    text-transform: uppercase;
}
.buttonloforte:active,
.buttonloforte:focus,
.buttonloforte:visited,
.buttonloforte:hover {
    color: #ffffff;
}
.biblio-button {
    cursor: pointer;
}
.biblio-button:before {
    content: "+ ";
}
.biblio-button.opened:before {
    content: "- ";
}
.biblio-info {
    color: #b4b3b3;
}
.biblio-info p:not(:last-child)   {
    padding-bottom:5px;
}
.faq-section .title-row,
.team-row .title-row {
    background-color: transparent;
}
.faq-section {
    background-color: #175651;
    background-image: url(/wp-content/uploads/2025/01/faq_bg_pattern.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
}
.faq-button {
    display: flex;
    justify-content: space-between;
    cursor: pointer;
    padding-right:5px;
}
.faq-button::after {
    content: "+";
}
.faq-button.opened::after {
    content: "-";
}
.single-faq {
    border-bottom: 1px solid #FFFFFF;
}
.faq-text {
    padding-bottom: 20px;
    padding-right:20%;
}
.team-row {
    background-image: url(/wp-content/uploads/2025/01/team_bg_pattern.webp);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.location-box {
    margin: 10px auto;
    max-width: max-content;
    display: flex;
    text-align: center;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    background-color: #FFFFFF;
}
.location-box > div {
    padding:30px 60px;
    min-width: 350px;
}
.location-box p {
    margin-bottom: 5px;
}
.location-pin {
    max-width: 30px;
    margin-bottom: 10px;
}
.loc-separator {
    background-color: #F2F2F2;
    height: 100px;
    width: 2px;
    margin-top: auto;
    margin-bottom: auto;
}
.soluzione-row {
    background: linear-gradient(to bottom, transparent 60%, #F4F4F4 60%),
    url(/wp-content/uploads/2025/01/soluzione_bg_pattern.webp);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.soluzione-text {
    padding-top: 1vW;
    padding-bottom: 1vW;
}
.video-preview video {
    width: 100%;
    aspect-ratio: 9/16;
    object-fit: cover;
}
/*Credits*/
.header-row.credits {
    background-image: none !important;
    padding-bottom: 0 !important;
    border-bottom: 1px solid #175651;
}
.logo-credits a.vc_single_image-wrapper img {
    max-width: 220px;
    transform: none !important;
    -webkit-transform:  none !important;
}
.logo-credits a.vc_single_image-wrapper:hover:after {
    opacity: 0 !important;
}
/*CH05 - FOOTER*/
.grecaptcha-badge {
    z-index: 1;
}
.grecaptcha-badge {
    width: 70px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    left: 4px !important;
    bottom: 22px !important;
    z-index: 2;
}
.grecaptcha-badge:hover {
    width: 256px !important;
}
.site-footer .widget {
    margin-bottom: 0;
}
/*CH06 - MEDIA QUERIES*/
@media screen and (max-width:1850px) {
    .header-v3 .site-header .header-middle, .header-v4 .site-header .header-middle {
        width: 300px;
    }
    .text-size-0 {
        font-size: 40px;
    }
    .text-size-1 {
        font-size: 35px;
    }
    .text-size-2 {
        font-size: 22px;
    }
    .text-size-3 {
        font-size: 20px;
    }
    .text-size-4,
    main ul li::marker {
        font-size: 18px;
    }
    .text-size-5,
    .row-form.submit input,
    .wpcf7-form-control-wrap .wpcf7-select, .wpcf7-form-control-wrap .wpcf7-text, .wpcf7-form-control-wrap .wpcf7-textarea, .wpcf7-form-control-wrap .wpcf7-number {
        font-size: 16px;
    }
    .text-size-6 {
        font-size: 14px;
    }
    .text-size-7,
    .row-form.acceptance {
        font-size: 13px;
    }
    .benefici-chisono p:not(:last-child), .value-row p:not(:last-child), .trattamento-row p:not(:last-child) {
        padding-bottom: 15px;
    }
    .px-std {
        padding-left: 12vw;
        padding-right: 12vw;
    }
}
@media screen and (max-width:1440px) {   
    .px-std {
        padding-left: 8vw;
        padding-right: 8vw;
    }
}
@media screen and (max-width:1299px) {
    .grecaptcha-badge {
        bottom: 15px !important;
        transform: scale(0.9);
    }
}
@media screen and (max-width:1280px) {
    .header-v3 .site-header .header-middle, .header-v4 .site-header .header-middle {
        width: 280px;
    }
    .benefici-chisono p:not(:last-child), .value-row p:not(:last-child), .trattamento-row p:not(:last-child) {
        padding-bottom: 5px;
    }
}
@media screen and (max-width:1199px) {
    .text-size-0 {
        font-size: 33px;
    }
    .text-size-1 {
        font-size: 30px;
    }
    .text-size-2 {
        font-size: 20px;
    }
    .text-size-3 {
        font-size: 18px;
    }
    .text-size-4,
    main ul li::marker {
        font-size: 17px;
    }
    .text-size-5,
    .row-form.submit input,
    .wpcf7-form-control-wrap .wpcf7-select, .wpcf7-form-control-wrap .wpcf7-text, .wpcf7-form-control-wrap .wpcf7-textarea, .wpcf7-form-control-wrap .wpcf7-number {
        font-size: 16px;
    }
    .benefici-chisono p:not(:last-child), .value-row p:not(:last-child), .trattamento-row p:not(:last-child) {
        padding-bottom: 0;
    }
    .px-std {
        padding-left: 80px;
        padding-right: 80px;
    }
    .px-min {
        padding-left: 40px;
        padding-right: 40px;
    }
    .py-std {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .py-mid {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .pt-std {
        padding-top: 60px;
    }
    .pb-std {
        padding-bottom: 60px;
    }
    .team-members-row {
        padding-top:0;
    }
    .buttonloforte {
        margin-top:60px;
        max-width: 260px;
    }
}
@media screen and (max-width:991px) {
    .site-header-mobile {
        display: none;
    }
    #header_aside, 
    #masthead_aside, 
    header#masthead .site-header-outer {
        display: block;
    }
    .enable-header-fullwidth:not(.body-boxed) .site-header .site-header-inner > .container {
        padding-top: 20px;
    }
    .header-row {
        padding-top: 150px;
        padding-bottom: 50px;
    }
    .px-std {
        padding-left: 50px;
        padding-right: 50px;
    }
    .px-min,
    .la-carousel-wrapper {
        padding-left: 30px;
        padding-right: 30px;
    }
    .py-std {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .py-mid {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .pt-std {
        padding-top: 40px;
    }
    .pb-std {
        padding-bottom: 40px;
    }
    .header-row_subrow {
        flex-direction: column;
    }
    .header-row_subrow .col1,
    .header-row_subrow .col2 {
        padding-right: 0;
        padding-left:0;
        width: 100%;
    }
    .header-row_subrow .col1 {
        text-align: center;
    }
    .greensep {
        height: 2px;
        width: 200px;
        margin: 20px auto 0 auto;
        background-color: #175651;
        display: block;
    }
    .header-row_subrow {
        padding-top: 20px;
    }
    .header-row_subrow .col1 li {
        text-align: left;
    }
    .team-members-row {
        padding-top:0;
    }
    .buttonloforte {
        margin-top:20px;
        max-width: 260px;
    }
    .la-image-loading.spinner-custom .content {
        width: 160px;
        margin-top: -28px;
        height: 56px;
        margin-left: -80px;
    }
    .text-size-0 {
        font-size: 28px;
    }
    .text-size-1 {
        font-size: 26px;
    }
    .text-size-2 {
        font-size: 17px;
    }
    .text-size-3 {
        font-size: 15px;
    }
    .text-size-5, .row-form.submit input, .wpcf7-form-control-wrap .wpcf7-select, .wpcf7-form-control-wrap .wpcf7-text, .wpcf7-form-control-wrap .wpcf7-textarea, .wpcf7-form-control-wrap .wpcf7-number {
        font-size: 15px;
    }
    .text-size-0 .block {
        display: initial;
    }
    .text-size-4.block {
        display: block;
    }
    .header-row ul {
        width: max-content;
        margin: 0 auto;
    }
    .benefici-chisono {
        background-image: none;
        background-color: #f4f4f4;
    }
    .benefici-row {
        padding-bottom: 0;
    }
    .faq-text {
        padding-right: 10%;
    }
    .location-box > div {
        padding: 20px 40px;
        min-width: 250px;
    }
    .la-carousel-wrapper .la-item-wrap.la-item-wrap.slick-slide {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
    .slick-slider .slick-prev {
        left: -10px;
    }
    .slick-slider .slick-next {
        right: -10px;
    }
    .slick-slider .wpb_single_image {
        margin-bottom:20px;
    }
    .soluzione-row .team-members-row {
        margin-top:-20px;
    }
    .soluzione-row .team-members-row .la-carousel-wrapper {
        padding-bottom:30px;
    }
    .footer-top {
        padding-top: 30px;
    }
}
@media screen and (max-width:767px) {
    .desktop {
        display: none;
    }
    .mobile {
        display: block !important;
    }
    .text-size-0 {
        font-size: 25px;
    }
    .text-size-4, main ul li::marker {
        font-size: 16px;
    }
    .header-row ul {
        width: fit-content;
    }
    .text-size-1 {
        font-size: 20px;
    }
    .benefici-icon img {
        max-width: 60%;
    }
    .benefici-row .description {
        margin-bottom: 50px;
    }
    .benefici-chisono .col1, .value-row .col1, .trattamento-row .col1 {
        padding-right: 0;
    }
    .benefici-chisono .col2, .value-row .col2, .trattamento-row .col2 {
        padding-left: 0;
    }
    .benefici-chisono .col2 {
        padding-top: 30px;
        text-align: center;
    }
    .trattamento-row .col2 {
        text-align: center;
    }
    .biblio-info {
        padding-top:15px;
    }
    .single-faq {
        margin-bottom:20px;
    }
    .location-box {
        flex-direction: column;
    }
    .loc-separator {
        height: 2px;
        width: 100px;
        margin-left: auto;
        margin-right: auto;
    }
    .team-members-row {
        margin-top: 20px;
    }
    .team-members-row .la-carousel-wrapper {
        padding-bottom: 0;
    }
    .value-row {
        text-align: center;
    }
    .team-members-row .slick-slider .slick-next {
        right: -10px;
    }
    .team-members-row .slick-slider button.slick-prev {
        left: -10px;
    }
    .la-image-loading.spinner-custom .content {
        width: 140px;
        margin-top: -24.5px;
        height: 49px;
        margin-left: -70px;
    }
    .backtotop-container .btn-backtotop {
        right: 10px !important;
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
    .logo-credits a.vc_single_image-wrapper img {
        max-width: 180px;
    }
}
@media screen and (max-width:390px) {
    .px-std {
        padding-left: 30px;
        padding-right: 30px;
    }
    .px-min,
    .la-carousel-wrapper {
        padding-left: 30px;
        padding-right: 30px;
    }
    .py-std {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .py-mid {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .pt-std {
        padding-top: 30px;
    }
    .pb-std {
        padding-bottom: 30px;
    }
    .form-bg-wrapper {
        padding: 25px;
    }
    .row-form.submit {
        margin-top: -15px;
    }
    .benefici-row {
        padding-bottom: 0;
    }
    .value-row .text-size-0 {
        margin-bottom: 15px;
    }
    .value-row .text-size-5 {
        margin-bottom: 0;
    }
    .grecaptcha-badge {
        bottom: 15px !important;
        transform: scale(0.7);
    }
}
@media screen and (max-width:375px) {
    .row-form.submit input {
        padding-left: 10px;
        padding-right: 10px;
    }
    .buttonloforte {
        padding: 12px 10px;
        max-width: 100%;
    }
}