/*
Theme Name: Salient Child Theme
    padding: 8px !important;
    min-height: 52px !important; 
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.1
*/
/* FIX SINGLE IMAGE POSITION COMPOSER */
.compose-mode .vc_element.vc_image_with_animation {
    position: relative !important;
}

/*  */

.sub-menu li.back a {
    display: none !important
}

.sub-menu li.back::after {
    content: '\2715';
    cursor: pointer;
    font-size: 30px
}

/*  */
#slide-out-widget-area .menuwrapper li {
    margin-bottom: 20px
}

.fix {
    display: block;
    clear: both;
}

.testo-info-home {
    margin-bottom: 0 !important
}

.testo-info-home table,
.testo-info-home tr,
.testo-info-home td {
    background: #fff !important;
    border: none !important
}

.testo-info-home td {
    padding: 10px 0 !important
}

.testo-info-home td {
    font-size: 13px !important;
    vertical-align: middle;
}

.testo-info-home p {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    line-height: 105%
}

.testo-info-home img {
    float: left;
}

.img-with-aniamtion-wrap .hover-wrap {
    margin-bottom: 0 !important
}

body .nectar-button.large.see-through-2 {
    margin-bottom: 0 !important
}

a,
a:hover {
    -webkit-transition: all .3s ease !important;
    -o-transition: all .3s ease !important;
}

.nectar-button span {
    white-space: nowrap;
}

.nectar-button.jumbo {
    font-size: 14px;
    font-weight: 400;
    padding-left: 40px !important;
    padding-right: 40px !important;
}

.nectar-button.extra-color-3:hover {
    opacity: 1 !important;
    background-color: #151617 !important;
    color: #fff !important
}

.size-60 h2 {
    font-size: 60px !important;
    line-height: 100%;
    font-weight: 200 !important
}

.size-80 h1 {
    font-size: 80px !important;
    line-height: 86px !important
}

.ruolo p {
    padding-bottom: 15px !important;
    line-height: 130% !important;
}

.ruolo {
    margin-top: 30px
}


.sf-menu li.lang-item img {
    margin-bottom: 0 !important
}

.sf-menu li.lang-item a {
    margin-left: 5px !important;
    /*    margin-right: 10px!important*/
}


.timeline-linea {
    position: absolute !important;
    z-index: 1 !important;
    top: 0 !important;
    left: 0;
    right: 0;
    margin-top: 0;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 1px !important;
    height: 100% !important;
    background: #151617 !important;
}

.timeline-linea::before {
    content: '';
    position: absolute;
    width: 9px;
    height: 9px;
    left: -4px;
    border-radius: 100%;
    top: 0;
    background: #151617;
}

.timeline-linea::after {
    content: '';
    position: absolute;
    width: 9px;
    height: 9px;
    left: -4px;
    border-radius: 100%;
    bottom: 0;
    background: #151617;
}


body[data-fancy-form-rcs="1"] .fancy-select-wrap {
    padding-top: 0
}

.select2-container--default .select2-selection--single {
    border-radius: 0 !important;
    border-color: #151617 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #151617
}


.dettagli-prodotto {
    border-top: 1px solid #151617;
    border-bottom: 1px solid #151617;
    padding: 30px 0
}

.dettagli-prodotto ul li {
    list-style-type: none;
    padding: 3px 0
}

.dettagli-prodotto ul {
    margin: 0 !important
}

.dettagli-prodotto ul li .testo-right {
    text-align: right;
    float: right;
}

.single-product .row > .product[data-gallery-style] .single-product-main-image,
.single-product .product[data-gallery-style] .single-product-main-image {
    margin-right: 15% !important
}

.link-back p {
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 130% !important
}

.link-back p a:hover {
    color: #253140 !important
}

.single-product .product_meta {
    display: none
}

.single-product.woocommerce div.product .summary p.price {
    padding-bottom: 10px !important
}



.material.woocommerce-page[data-form-style=default] input#coupon_code,
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 {
    border-radius: 0
}

@media only screen and (min-width: 999px) {

    form.woocommerce-form-register .clear {
        display: none
    }

    /* styles for browsers larger than 1440px; */
    .nectar-form-controls {
        display: none
    }

    .woocommerce form .form-row label {
        font-weight: bold;
    }

    .woocommerce-account .woocommerce-form.woocommerce-form-login.n-disable-reg,
    .woocommerce-account .woocommerce > #customer_login > .col-1,
    .woocommerce-account .woocommerce > #customer_login > .col-2 {
        width: 45% !important;
        max-width: inherit !important;
    }

    .woocommerce-account .woocommerce > #customer_login .col-1 h2,
    .woocommerce-account .woocommerce > #customer_login .col-2 h2,
    .woocommerce-account .woocommerce > #customer_login > .col-1,
    .woocommerce-account .woocommerce > #customer_login > .col-2 {
        display: block !important;
    }

    .woocommerce-account .woocommerce > #customer_login > .col-1 {
        float: left;
    }

    .woocommerce-account .woocommerce > #customer_login > .col-2 {
        float: right;
    }

    .woocommerce-account .woocommerce > #customer_login form {
        opacity: 1 !important
    }
}


.products li.product .nectar_quick_view {
    margin: 0 10px
}

.nectar-quick-view-box .single_add_to_cart_button_wrap a:hover span {
    background-size: 0 !important
}

li.product.no-trans * {
    visibility: visible !important;
}

.nectar-quick-view-box h1,
.nectar-quick-view-box .woocommerce-Price-amount {
    font-size: 30px !important;
    line-height: 38px !important;
}

.nectar-quick-view-box a.single_add_to_cart_button,
.nectar-quick-view-box .nectar-global-section {
    display: none !important
}

.nectar-quick-view-box .dettagli-prodotto {
    padding: 10px 0 !important;
    margin-bottom: 20px
}

.woocommerce .nectar-quick-view-box div.product form.cart div.quantity {
    float: left !important;
    padding: 13px 0
}

.woocommerce-page .nectar-quick-view-box button[type=submit].single_add_to_cart_button {
    margin-top: 0 !important;
    border-radius: 0 !important
}

/*  */

body #header-outer .widget_shopping_cart a.button {
    border: 1px solid transparent !important;
}

body #header-outer .widget_shopping_cart a.button:hover {
    border: 1px solid #151617 !important;
    background-color: #fff !important;
    color: #151617 !important;
}

.single-product ul.products li.product.classic .product-wrap img {
    width: 60%;
    margin: 0 auto;
}

.woocommerce-MyAccount-navigation-link--downloads {
    display: none !important
}

.widget_product_categories .select2-container--default.select2-container--open .select2-selection--single .select2-selection__placeholder {
    color: #fff !important;
}

.single_add_to_cart_button.loading::after {
    margin-top: 20px !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.added::after {
    position: absolute;
}

body[data-form-submit=regular] button[type=submit],
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    border: 1px solid transparent !important
}

body[data-form-submit=regular] button[type=submit]:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.single-product.woocommerce-page:not([data-form-submit=see-through]) div[data-project-style=classic] button[type=submit].single_add_to_cart_button:hover,
.woocommerce button.button:hover,
.woocommerce-page button.button:hover,
.woocommerce #order_review #payment #place_order:hover {
    opacity: 1 !important;
    background-color: #fff !important;
    color: #151617 !important;
    border: 1px solid #151617 !important
}

.woocommerce-page .woocommerce p.return-to-shop a.button.wc-backward {
    opacity: 1 !important;
    background-color: #fff !important;
    color: #151617 !important;
    border: 1px solid #151617 !important;
    text-transform: uppercase;
    border-radius: 0
}

.woocommerce-page .woocommerce p.return-to-shop a.button.wc-backward:hover {
    background: #151617 !important;
    color: #fff !important
}


body[data-form-submit=regular] .woocommerce-product-search button[type=submit] {
    border: 1px solid #151617 !important;
    padding: 0 22px !important
}

body[data-form-submit=regular] .woocommerce-product-search button[type=submit]:hover {
    border: 1px solid #151617 !important
}

body.search-no-results[data-header-resize] .container-wrap {
    padding: 40px 0 !important;
}

.single_add_to_cart_button,
.quantity,
li.yay-currency-dropdown {
    display: none !important;
}

.logged-in .single_add_to_cart_button,
.logged-in li.yay-currency-dropdown {
    display: block !important;
}

.logged-in .quantity {
    display: flex !important;
}


body.archive .nectar-global-section {
    /* margin: 0 0 0 15px !important; */
}

body.archive ul.products li.classic .price + .nectar-global-section {
    width: 8% !important;
    text-align: right;
    /* margin: 0 0 0 auto!important; */
}

body.archive ul.products li.classic .nectar-global-section {
    width: auto !important;
    /* margin: 0 0 0 auto!important; */
}

body.archive .nectar-global-section .container {
    padding: 0 !important
}

.codice-archivio {
    font-weight: 600;
    margin: 0 10px
}

.confezioni-archivio {
    margin: 0 10px
}

body.archive ul.products li.classic,
body.woocommerce.archive:not(.single-product) ul.products[data-n-desktop-columns="3"] li.product {
    width: 100% !important;
    border-top: 1px solid #151617 !important;
    padding: 20px 0 !important;
    margin: 0 !important
}

body.woocommerce.archive:not(.single-product) ul.products[data-n-desktop-columns="3"] li.product:last-child {
    border-bottom: 1px solid #151617 !important;
}

body.archive .product-wrap.contenitore-immagine {
    float: left;
  //  width: 8%;
   // border-radius: 100% !important;
}

.contenitore-titolo-archivio {
    flex-grow: 1;
    overflow: hidden;
    white-space: nowrap;
    width: 200px;
}

.contenitore-titolo-archivio h2 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.single-product .contenitore-titolo-archivio h2 {
    white-space: inherit;
    overflow: visible;
    text-overflow: inherit;
}

body.single-product .contenitore-titolo-archivio {
    white-space: inherit;
    overflow: visible;
    width: auto;
}

body.archive ul.products li.product .price {
    /* width: 8% */
}

body.archive ul.products li.product .woocommerce-placeholder {
    border: none !important
}

body.archive ul.products li.product .product-add-to-cart {
    float: right;
}

body.archive ul.products li.product {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

body.archive ul.products li.product form.cart {
    display: flex;
    margin-left: auto;
}

body.archive ul.products li.product form.cart .quantity {
    margin: 0 15px
}

body.archive ul.products li.product h2.woocommerce-loop-product__title {
    margin: 0 10px
}

body.archive ul.products li.product .woocommerce-loop-product__title {
    padding: 0 !important
}

body.archive ul.products li.product .price {
    margin-top: 0;
    margin-bottom: 0;
    /* margin-left: auto; */
}

.archive ul.products li .product-meta h2 {
    font-size: 18px
}

.woocommerce-result-count,
.woocommerce-ordering {
    display: none !important
}

#sidebar .widget {
    margin-bottom: 30px;
}

form.woocommerce-product-search input[type=search] {
    border-radius: 0 !important;
    border: 1px solid #151617 !important;
    color: #151617;
    background: #fff
}

form.woocommerce-product-search input[type=search]::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #151617 !important;
    opacity: 1 !important;
    /* Firefox */
}

form.woocommerce-product-search input[type=search]:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #151617 !important;
}

form.woocommerce-product-search input[type=search]::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #151617 !important;
}

.woocommerce-page .nectar-prod-wrap button.single_add_to_cart_button {
    margin-top: 0;
    flex: inherit;
}

.woocommerce-page button[type="submit"].single_add_to_cart_button,
body[data-form-submit="regular"].woocommerce-page .container-wrap button[type=submit].single_add_to_cart_button {
    padding-left: 30px !important;
    padding-right: 30px !important;
    text-transform: uppercase;
    font-size: 14px
}

button.button {
    text-transform: uppercase !important;
}

.woocommerce-checkout button.button {
    text-transform: uppercase !important;
    font-size: 16px !important
}

a.checkout-button {
    text-transform: uppercase !important;
    font-size: 16px !important
}

.woocommerce-page .nectar-prod-wrap button.single_add_to_cart_button {
    margin-top: 0;
    flex: inherit;
}

.cart div.quantity {
    border-radius: 0 !important
}

.woocommerce.single-product div.product_meta a,
.woocommerce .woocommerce-breadcrumb a,
.woocommerce-cart .product-name a,
.woocommerce-checkout-review-order-table .product-info h4 a {
    background-image: none !important
}

.single-product ul.products li.product.classic .product-wrap img {
    border-radius: 100%
}

.single-product ul.products li.product.classic .contenitore-titolo-archivio,
.single-product ul.products li.product.classic .price,
.single-product ul.products li.product {
    text-align: center;
    color: #fff
}

.single-product ul.products li.product .nectar_quick_view {
    display: none
}

.single-product ul.products li.product.classic .codice-archivio,
.single-product ul.products li.product.classic a.add_to_cart_button {
    display: none
}

.single-product ul.products li.product.classic .button {
    border-radius: 0 !important;
    padding: 20px 30px;
    text-transform: uppercase;
    font-size: 16px;
    background: #151617;
    border: 1px solid #151617;
    min-height: inherit !important;
}

.single-product ul.products li.product.classic .button:hover {
    background: #fff !important;
    color: #151617;
    border: 1px solid #151617
}

.nectar-button.see-through-2,
.nectar-button.see-through-3 {
    border: 1px solid !important
}

section.related {
    padding: 60px 0
}

section.related::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: 100vw;
    background: #253140;
}

section.related h2,
section.related span.amount {
    color: #fff !important;
    position: relative;
    text-align: center;
    z-index: 999;
}

.related-upsell-carousel.nectar-woo-flickity section > h2 {
    display: block;
    margin: 0 0 40px 0 !important;
    padding: 0 !important
}

body .woocommerce .nectar-woo-flickity[data-controls=arrows-overlaid] .nectar-woo-carousel-top {
    top: 120px !important;
    z-index: 9999
}

.single-product .flickity-prev-next-button:disabled {
    display: block !important;
}

section.related ul li a.button {
    background: transparent !important;
    border: 1px solid #fff !important
}

body .woocommerce .nectar-woo-flickity .flickity-slider .flickity-cell li {
    width: 100% !important
}

.single-product ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    padding-bottom: 0 !important
}

.single-product .confezioni-archivio {
    font-size: 15px;
    display: none;
}

.single-product .flickity-viewport a.button {
    margin-top: 15px !important;
    padding: 10px 20px !important;
    font-size: 14px !important;
    line-height: 100%
}


body.single-product .container-wrap {
    padding-bottom: 0 !important
}

.woo-flickity-count {
    display: none
}

ul.social-footer {
    float: right;
    position: relative;
    top: 30px
}

ul.social-footer li {
    display: inline-block;
    vertical-align: middle;
}

.ico-instagram {
    margin: 0 5px;
    width: 20px;
    height: 20px;
    background-image: url('images/instagram.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.ico-facebook {
    margin: 0 5px 0 20px;
    width: 20px;
    height: 20px;
    background-image: url('images/facebook.svg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.widget_media_image {
    float: left;
    margin-right: 20px;
    padding-top: 0
}

#footer-outer .widget.widget_media_image img {
    padding-top: 8px;
    width: 60px
}

#footer-outer .widget.widget_media_image img.newsletter-image {
    padding-top: 7px;
    width: 80px
}

.footer-block {
    float: left;
}

.line-footer {
    float: right;
    width: 1px;
    height: 90px;
    background: #151617;
    margin: 0 10px;
    display: flex;
}

.custom-footer {
    font-size: 13px !important;
    line-height: 20px !important
}

.custom-footer h2 {
    font-size: 13px;
    line-height: 20px !important;
    margin-bottom: 0 !important;
    font-weight: bold;
}

.custom-footer ul {
    list-style-type: none;
    margin: 0 !important
}

.custom-footer ul li {
    padding: 0;
    list-style-type: none;
}

#footer-outer[data-custom-color=true] #footer-widgets a:not(.nectar-button):hover {
    opacity: 1 !important;
    color: #253140 !important
}

#footer-outer .col {
    font-size: 13px !important;
    line-height: 20px !important
}

#footer-outer[data-full-width="1"] .container {
    padding: 0 90px;
}

body #footer-outer .row {
    padding: 35px 0 !important
}

#copyright p {
    font-size: 14px !important
}

.material #footer-outer #footer-widgets .col ul li {
    padding: 0 !important
}

#footer-outer .widget {
    margin-bottom: 0
}

#footer-widgets .row {
    display: flex;
    justify-content: space-between;
}

#footer-widgets .span_3 {
    width: 21%;
}

#footer-widgets .span_3:nth-child(2) {
    width: 40%;
}

#footer-widgets .span_3:nth-child(3) {
    width: 20%;
    padding-top: 8px
}

#footer-widgets .span_3:nth-child(4) {
    width: 20%;
    padding-top: 10px
}

#footer-widgets .span_3:nth-child(4) .textwidget {
    padding-top: 10px
}

#footer-widgets .span_3::after {
    content: "";
    width: 1px;
    height: 80px;
    background: #000;
    visibility: visible;
    position: absolute;
    right: 0;
    top: 0
}

#footer-widgets .span_3:nth-child(2)::after,
#footer-widgets .span_3:last-child::after {
    visibility: hidden !important;
}

#footer-widgets .span_3:last-child {
    border: none
}


.line-cf7 {
    width: 100%;
    height: 2px;
    background: #333333;
    margin: 40px 0
}

body.material .wpcf7-form input[type=text]:focus,
body.material .wpcf7-form input[type=email]:focus,
body.material .wpcf7-form textarea:focus {
    border-bottom: 1px solid #fff !important;
    border-top: none;
    border-left: none;
    border-right: none;
    box-shadow: 0 0 0 rgb(255 255 255 / 0%) !important;
}

.wpcf7-form {
    display: table;
    margin: 0 auto;
    padding: 15px 0
}

.wpcf7 p {
    padding: 0
}

.summary .wpcf7-form {
    text-align: left;
    margin: 0 0 10px 0
}

.wpcf7-form label span {
    text-align: left !important;
    font-size: 18px;
    font-weight: 400;
    color: #fff;
    display: flex;
}

body .light .wpcf7-form p span,
.wpcf7-form p span {
    font-size: 13px;
    line-height: 18px
}

.campo label,
.campo-area label {
    text-align: left !important;
    font-size: 18px !important;
    margin: 5px 0 0 0;
    display: table;
}

.campo {
    width: 100%;
    display: inline-block;
    margin: 10px 0
}

.campo-half {
    width: 48.5%
}

.campo-half-contatto {
    width: 49.7%
}

.campo-half.right,
.campo-half-contatto.right,
.float-right {
    float: right;
}

.campo-half.left,
.float-left {
    float: left;
}

.campo-area {
    display: inline-block;
    clear: both;
    width: 100%;
    margin: 10px 0
}

.last {
    margin-right: 0
}

.wpcf7-form ::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #fff !important;
    opacity: 1 !important;
    /* Firefox */
}

.wpcf7-form :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #fff !important;
}

.wpcf7-form ::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #fff !important;
}

input.wpcf7-date {
    color: #fff;
    font-size: 14px !important;
    font-weight: 400;
    border-bottom: 1px solid #fff !important;
    border-top: none;
    border-left: none;
    border-right: none;
    background: transparent !important;
    width: 100% !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    padding: 18px 15px !important
}

input.wpcf7-text,
input.wpcf7-quiz {
    color: #fff;
    font-size: 14px !important;
    text-transform: uppercase;
    font-weight: 400;
    border-bottom: 1px solid #fff !important;
    border-top: none;
    border-left: none;
    border-right: none;
    background: transparent !important;
    width: 100% !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    padding: 0 0 !important
}

.wpcf7-textarea {
    color: #fff;
    font-size: 14px !important;
    text-transform: uppercase;
    border-bottom: 1px solid #fff !important;
    border-top: none;
    border-left: none;
    border-right: none;
    background: transparent !important;
    resize: none !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    height: 90px !important;
    padding: 0 0 !important
}

.wpcf7 .ajax-loader {
    margin: -7px 64px !important;
}

p.invio {
    margin: 10px 0
}

body[data-form-submit="regular"] .container-wrap input[type=submit].wpcf7-submit {
    background: transparent;
    border: none;
    font-size: 14px !important;
    color: #fff;
    padding: 15px 40px !important;
    text-transform: uppercase;
    border: 1px solid #fff
}

body[data-form-submit="regular"] input.wpcf7-submit:hover {
    background: #fff !important;
    border: 1px solid #fff;
    opacity: 1 !important;
    color: #253140 !important
}

div.wpcf7-response-output {
    margin: 0 !important;
}

input.wpcf7-not-valid,
textarea.wpcf7-not-valid,
select.wpcf7-not-valid,
.fancy-select-wrap:has(select.wpcf7-not-valid) {
    border-bottom: 1px solid #ff2132 !important;
    border-top: none;
    border-left: none;
    border-right: none;
}

span.wpcf7-not-valid-tip {
    display: none !important;
}

.wpcf7-checkbox.wpcf7-not-valid {
    border: none !important;
}

.wpcf7-checkbox.wpcf7-not-valid span {
    color: #ff2132 !important;
}

span.wpcf7-list-item {
    margin: 0 !important
}

.Accetto span.wpcf7-not-valid-tip {
    display: inherit !important;
    font-size: 13px !important;
    margin-left: 5px !important;
    color: #ff2132 !important;
}

div.wpcf7-validation-errors,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    color: #ff2132 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    font-size: 13px
}

div.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output {
    color: #398F14 !important;
    padding: 0 !important;
    border: none !important;
    background: none
}

div.wpcf7 img.ajax-loader {
    margin-top: 0 !important;
}

.trattamento {
    font-size: 13px !important
}

span[data-name="trattamento-dati"] {
    display: inline-block !important;
    color: #fff;
}

.trattamento-dati span {
    font-size: 13px !important;
    margin-right: 5px;
}

a.trattamento-dati-link {
    color: #fff;
    font-size: 13px;
    font-weight: 400;
    text-decoration: underline;
    margin-left: 5px;
    -webkit-transition: all .3s ease !important;
    -o-transition: all .3s ease !important;
}

a.trattamento-dati-link:hover {
    color: #fff;
    opacity: .8;
    -webkit-transition: all .3s ease !important;
    -o-transition: all .3s ease !important;
}

a.link-trattamento {
    font-size: 13px !important;
    color: #fff;
}

a.link-trattamento:hover {
    color: #74CD7D !important;
}

.trattamento-content {
    width: 65%;
    float: left;
}

.bottone-invio {
    float: right;
}

.quiz {
    font-weight: bold;
}

input.wpcf7-quiz {
    border: 1px solid #c9c9c9;
    background: #fcfcfc;
    height: 45px;
    width: 65px !important;
    font-size: 16px;
    text-align: center;
}

.wpcf7-quiz.wpcf7-not-valid {
    border: 1px solid #ff2132;
}

.math-quiz {
    margin-top: 10px;
    display: table
}

.wpcf7-spinner {
    top: 10px;
    float: left;
}

.wpcf7-form [type="checkbox"]:not(:checked),
.wpcf7-form [type="checkbox"]:checked {
    position: absolute;
    left: -9999px;
}

.wpcf7-form [type="checkbox"]:not(:checked) + span,
.wpcf7-form [type="checkbox"]:checked + span {
    position: relative;
    padding-left: 1.95em;
    cursor: pointer;
}

.wpcf7-form [type="checkbox"]:not(:checked) + span:before,
.wpcf7-form [type="checkbox"]:checked + span:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 1.25em;
    height: 1.25em;
    border: 1px solid #fff;
    background: transparent;
    border-radius: 0;
}

.wpcf7-form [type="checkbox"]:not(:checked) + span:after,
.wpcf7-form [type="checkbox"]:checked + span:after {
    content: '\2714';
    position: absolute;
    top: 3px;
    left: 4px;
    font-size: 1em;
    line-height: 0.8;
    color: #fff;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.wpcf7-form [type="checkbox"]:not(:checked) + span:after {
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.wpcf7-form [type="checkbox"]:checked + span:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.wpcf7-form [type="checkbox"]:disabled:not(:checked) + span:before,
.wpcf7-form [type="checkbox"]:disabled:checked + span:before {
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: #bbb;
    background-color: #ddd;
}

.wpcf7-form [type="checkbox"]:disabled:checked + span:after {
    color: #999;
}

.wpcf7-form [type="checkbox"]:disabled + span {
    color: #aaa;
}

.wpcf7-form [type="checkbox"]:checked:focus + span:before,
.wpcf7-form [type="checkbox"]:not(:checked):focus + span:before {
    /*border: 2px dotted blue;*/
}

.wpcf7-form label:hover:before {
    border: 1px solid #4778d9 !important;
}

/* ========================================
   MOBILE-FIRST HEADER STYLES (#top)
   Mobile devices: 320px - 767px
   Tablets: 768px - 999px
   Desktop: 1000px+
   ======================================== */

/* Base Mobile Styles (320px+) */
@media only screen and (max-width: 999px) {
    /* Header container - ensure adequate height and spacing */
    #top #header-outer {
        min-height: 70px !important;
        padding: 12px 16px !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    
    /* Logo sizing for mobile */
    #top #header-outer #logo img {
        max-height: 45px !important;
        height: 45px !important;
        width: auto !important;
    }
    
    /* Hamburger menu - large touch target */
    #top .slide-out-widget-area-toggle,
    #top .slide-out-widget-area-toggle a {
        font-size: 28px !important;
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
        min-height: 56px !important;
        line-height: 56px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
    }
    
    /* Mobile icons container - proper spacing */
    #top #header-outer nav > ul.buttons {
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        margin: 0 !important;
    }
    
    /* Individual mobile icon items */
    #top #header-outer nav > ul.buttons li {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Mobile icon links - large touch targets */
    #top #header-outer nav > ul.buttons li a,
    #top .mobile-search,
    #top .mobile-user-account
    #top #mobile-cart-link {
        min-width: 56px !important;
        min-height: 56px !important;
        width: 56px !important;
        height: 56px !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        font-size: 24px !important;
    }
    
    /* Icon sizes - make them prominent and easy to tap */
    #top i,
    #top [class^="icon-"],
    #top [class*=" icon-"] {
        font-size: 32px !important;
        line-height: 1 !important;
        width: 32px !important;
        height: 32px !important;
    }
    
    #top svg,
    #top .svg-icon {
        width: 32px !important;
        height: 32px !important;
    }
    
    /* Cart count badge - ensure visibility */
    #top .cart-menu-wrap .cart-menu a span {
        font-size: 11px !important;
        min-width: 20px !important;
        height: 20px !important;
        line-height: 20px !important;
        padding: 0 4px !important;
    }
    
    /* Remove any conflicting margins */
    #top nav > ul > li {
        margin: 0 !important;
    }
    
    /* Ensure header doesn't collapse */
    #top {
        min-height: 70px !important;
    }
}

/* Tablet adjustments (768px - 999px) */
@media only screen and (min-width: 768px) and (max-width: 999px) {
    #top #header-outer {
        padding: 16px 24px !important;
        min-height: 90px !important;
    }
    
    #top #header-outer #logo img {
        max-height: 50px !important;
        height: 50px !important;
    }
    
    /* Slightly larger icons for tablets */
    #top .slide-out-widget-area-toggle,
    #top .slide-out-widget-area-toggle a,
    #top #header-outer nav > ul.buttons li a,
    #top .mobile-search,
    #top #mobile-cart-link {
        min-width: 60px !important;
        min-height: 60px !important;
        width: 60px !important;
        height: 60px !important;
        font-size: 26px !important;
    }
    
    #top .mobile-user-account {
        min-width: 60px !important;
        min-height: 60px !important;
        width: 60px !important;
        height: 60px !important;
        font-size: 26px !important;
    }
    
    #top i,
    #top [class^="icon-"],
    #top [class*=" icon-"] {
        font-size: 34px !important;
        width: 34px !important;
        height: 34px !important;
    }
    
    #top svg,
    #top .svg-icon {
        width: 34px !important;
        height: 34px !important;
    }
    
    /* Navigation menu items font size for tablets */
    #top nav > ul > li > a,
    #top nav > ul.buttons li a {
        font-size: 20px !important;
    }
    
    /* More spacing between icons on tablets */
    #top #header-outer nav > ul.buttons {
        gap: 20px !important;
    }
}

/* Small phones optimization (max 480px) */
@media only screen and (max-width: 480px) {
    #top #header-outer {
        padding: 10px 12px !important;
        min-height: 70px !important;
    }
    
    #top #header-outer #logo img {
        max-height: 40px !important;
        height: 40px !important;
    }
    
    /* Compact but still touchable */
    #top .slide-out-widget-area-toggle,
    #top .slide-out-widget-area-toggle a,
    #top #header-outer nav > ul.buttons li a,
    #top .mobile-search,
    #top #mobile-cart-link {
        min-width: 48px !important;
        min-height: 48px !important;
        width: 48px !important;
        height: 48px !important;
        font-size: 22px !important;
    }
    
    #top .mobile-user-account {
        min-width: 48px !important;
        min-height: 48px !important;
        width: 48px !important;
        height: 48px !important;
        font-size: 22px !important;
    }
    
    #top i,
    #top [class^="icon-"],
    #top [class*=" icon-"] {
        font-size: 28px !important;
        width: 28px !important;
        height: 28px !important;
    }
    
    #top svg,
    #top .svg-icon {
        width: 28px !important;
        height: 28px !important;
    }
    
    /* Navigation menu items font size for small phones */
    #top nav > ul > li > a,
    #top nav > ul.buttons li a {
        font-size: 16px !important;
    }
    
    /* Reduce gap slightly on small screens */
    #top #header-outer nav > ul.buttons {
        gap: 12px !important;
    }
    
    #top {
        min-height: 70px !important;
    }
}

/* Simple mobile layout fixes */
@media only screen and (max-width: 999px) {
    /* Reduce excessive padding on rows */
    .wpb_row.inner_row[style*="padding-bottom"] {
        padding-bottom: 40px !important;
    }
    
    /* Scale down large headings */
    .nectar-split-heading[data-custom-font-size="true"],
    .nectar-split-heading h1,
    .nectar-split-heading h2 {
        font-size: 48px !important;
        line-height: 1.2 !important;
    }
    
    /* Increase base font size in containers and rows */
    .container,
    .normal-container,
    .row,
    .wpb_row,
    .vc_row,
    p {
        font-size: 18px !important;
        line-height: 1.6 !important;
    }
    
    /* Ensure buttons are properly sized */
    .nectar-button.jumbo {
        font-size: 18px !important;
        padding: 14px 28px !important;
    }
}

@media only screen and (max-width: 767px) {
    /* Slightly smaller on phones */
    .nectar-split-heading[data-custom-font-size="true"],
    .nectar-split-heading h1,
    .nectar-split-heading h2 {
        font-size: 36px !important;
    }
    
    .container,
    .normal-container,
    .row,
    .wpb_row,
    .vc_row,
    p {
        font-size: 16px !important;
    }
    
    .nectar-button.jumbo {
        font-size: 16px !important;
        padding: 12px 24px !important;
    }
}

/* WooCommerce Shop Categories Grid */
.shop-categories-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 2rem 0;
}
.shop-categories-list .products {
  display: contents;
}
.shop-categories-list .product-category {
  list-style: none;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  text-align: center;
  padding: 2rem 1rem;
  transition: box-shadow 0.2s;
}
.shop-categories-list .product-category:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.10);
  border-color: #ddd;
}
.shop-categories-list .product-category img {
  max-width: 120px;
  height: auto;
  margin-bottom: 1rem;
}
.shop-categories-list .product-category h2 {
  font-size: 1.2rem;
  margin: 0.5rem 0 0 0;
  color: #151617;
}
@media (max-width: 690px) {
  .shop-categories-list {
    grid-template-columns: 1fr !important;
    display: grid !important;
  }
}

/* Fixed size and overflow for product categories */
.shop-categories-list .product-category {
  height: 320px;
  overflow: hidden;
}


/* Paginator center on its own row */
.shop-categories-list .woocommerce-pagination {
  clear: both;
  display: flex;
  align-items: center;
  width: 100%;
  margin: 3rem 0 1rem 0;
}

/* Limit main-content container to 90% of viewport width on desktop */
@media (min-width: 1024px) {
  .main-content {
    max-width: 90vw;
    width: 90vw;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Add more left/right space and center product grid on shop/category pages */
@media (min-width: 1024px) {
  .main-content {
    padding-left: 4vw;
    padding-right: 4vw;
    box-sizing: border-box;
  }
  .woocommerce .products {
    display: flex;
    flex-wrap: wrap;
    gap: 32px 24px;
  }
}

/* Center the shop-categories-list and add space on both sides */
@media (min-width: 1024px) {
  .shop-categories-list {
    max-width: 92vw;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2vw;
    padding-right: 2vw;
    box-sizing: border-box;
  }
}

/* One product per row in category listing, image left, info right (robust for default WooCommerce markup) */
@media (min-width: 900px) {
    .archive.woocommerce ul.products li.product {
        display: flex !important;
        flex-direction: row;
        align-items: flex-start;
        width: 100%;
        max-width: 900px;
        margin: 24px auto !important;
        box-shadow: 0 2px 12px rgba(0,0,0,0.04);
        border-radius: 12px;
        background: #fff;
        padding: 24px 32px;
        min-height: 180px;
        gap: 32px;
    }
    /* Force image left, info right for default WooCommerce markup */
    .archive.woocommerce ul.products li.product > a,
    .archive.woocommerce ul.products li.product > .woocommerce-LoopProduct-link {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        flex-shrink: 0;
        margin: 0;
        padding: 0;
        min-width: 0;
        max-width: 180px;
    }
    .archive.woocommerce ul.products li.product > a img,
    .archive.woocommerce ul.products li.product > .woocommerce-LoopProduct-link img {
        width: 160px;
        height: 160px;
        object-fit: contain;
        border-radius: 8px;
        background: #f7f7f7;
        flex-shrink: 0;
        margin: 0;
    }
    /* Info block: all siblings of the image link */
    .archive.woocommerce ul.products li.product > *:not(a):not(.woocommerce-LoopProduct-link) {
        display: flex;
        flex-direction: column;
        flex: 1 1 0%;
        min-width: 0;
        margin-left: 32px;
    }
    /* Remove default text centering */
    .archive.woocommerce ul.products li.product .product-meta,
    .archive.woocommerce ul.products li.product .woocommerce-loop-product__title,
    .archive.woocommerce ul.products li.product .price,
    .archive.woocommerce ul.products li.product .woocommerce-product-details__short-description {
        text-align: left;
        margin: 0;
        padding: 0;
    }
    .archive.woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 1.3em;
        margin-bottom: 8px;
        font-weight: 600;
    }
    .archive.woocommerce ul.products li.product .price {
        font-size: 1.1em;
        color: #1a1a1a;
        margin-bottom: 8px;
    }
    .archive.woocommerce ul.products li.product .woocommerce-product-details__short-description {
        color: #444;
        font-size: 1em;
        margin-bottom: 0;
    }
    .archive.woocommerce ul.products li.product .star-rating {
        margin-bottom: 8px;
    }
    .archive.woocommerce ul.products li.product .button {
        margin-top: 12px;
    }

    /* Product attributes styling for desktop */
    .archive.woocommerce ul.products li.product .product-attributes-loop {
        margin-top: 12px;
        line-height: 1.7;
    }

    .archive.woocommerce ul.products li.product .product-attributes-loop > div {
        margin-bottom: 6px;
        font-size: 0.9em;
        color: #555;
    }

    .archive.woocommerce ul.products li.product .product-attributes-loop .code_product {
        font-weight: 600;
        color: #000;
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px solid #e8e8e8;
    }
}

/* Small desktop adjustments - slightly smaller than full desktop */
@media (min-width: 900px) and (max-width: 1100px) {
  .archive.woocommerce ul.products li.product {
    padding: 20px 24px !important;
    gap: 24px !important;
  }

  .archive.woocommerce ul.products li.product > a img,
  .archive.woocommerce ul.products li.product > .woocommerce-LoopProduct-link img {
    width: 140px !important;
    height: 140px !important;
  }

  .archive.woocommerce ul.products li.product > *:not(a):not(.woocommerce-LoopProduct-link) {
    margin-left: 24px !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.2em !important;
  }

  .archive.woocommerce ul.products li.product .price {
    font-size: 1.05em !important;
  }
}

/* Medium desktop adjustments to prevent 3-column grid */
@media (min-width: 1000px) and (max-width: 1300px) {
  .archive.woocommerce ul.products li.product {
    width: 100% !important;
    margin: 24px auto !important;
  }
}

/* Stack on mobile and tablets */
@media (max-width: 899px) {
  .archive.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 20px !important;
    margin: 20px auto !important;
    gap: 20px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important;
    border-radius: 12px !important;
    background: #fff !important;
    max-width: 600px !important;
    width: 100% !important;
  }

  .archive.woocommerce ul.products li.product > a,
  .archive.woocommerce ul.products li.product > .woocommerce-LoopProduct-link {
    max-width: 100% !important;
    display: block !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
  .archive.woocommerce ul.products li.product > a img {
    width: 100% !important;
    height: auto !important;
    max-width: 400px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  .archive.woocommerce ul.products li.product > *:not(a):not(.woocommerce-LoopProduct-link) {
    margin-left: 0 !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.4em !important;
    text-align: center !important;
  }

  .archive.woocommerce ul.products li.product .price {
    font-size: 1.2em !important;
    text-align: center !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-product-details__short-description,
  .archive.woocommerce ul.products li.product .product-attributes-loop {
    text-align: center !important;
  }

  /* Improve product attributes styling on mobile/tablet */
  .archive.woocommerce ul.products li.product .product-attributes-loop {
    background: #f8f9fa !important;
    padding: 15px !important;
    border-radius: 8px !important;
    margin-top: 12px !important;
    line-height: 1.8 !important;
  }

  .archive.woocommerce ul.products li.product .product-attributes-loop > div {
    margin-bottom: 8px !important;
    font-size: 0.95em !important;
    color: #333 !important;
  }

  .archive.woocommerce ul.products li.product .product-attributes-loop > div:last-child {
    margin-bottom: 0 !important;
  }

  /* Style the Code field to stand out */
  .archive.woocommerce ul.products li.product .product-attributes-loop .code_product {
    font-weight: 600 !important;
    color: #000 !important;
    padding-top: 8px !important;
    border-top: 1px solid #e0e0e0 !important;
    margin-top: 12px !important;
  }
}

/* Extra small phones */
@media (max-width: 480px) {
  .archive.woocommerce ul.products li.product {
    padding: 12px 8px !important;
    margin: 12px auto !important;
    border-radius: 8px !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.1em !important;
  }

  .archive.woocommerce ul.products li.product .woocommerce-product-details__short-description {
    font-size: 0.9em !important;
    line-height: 1.4 !important;
  }

  .archive.woocommerce ul.products li.product .button {
    font-size: 0.9em !important;
    padding: 8px 16px !important;
  }

  /* Adjust product attributes for very small phones */
  .archive.woocommerce ul.products li.product .product-attributes-loop {
    padding: 12px !important;
    font-size: 0.9em !important;
  }

  .archive.woocommerce ul.products li.product .product-attributes-loop > div {
    font-size: 0.85em !important;
    margin-bottom: 6px !important;
  }
}

/* Override product li width to 100% for 4-column desktop layouts at 1300px+ */
@media only screen and (min-width: 1300px) {
  body.woocommerce:not(.single-product) ul.products[data-n-desktop-columns="4"] li.product {
    width: 100% !important;
    margin: 0 0 24px 0 !important;
  }
}


#top nav > ul > li > a, .span_3 .pull-left-wrap > ul > li > a, body.material #search-outer #search input[type="text"], #top ul .slide-out-widget-area-toggle a i.label, #top .span_9 > .slide-out-widget-area-toggle a.using-label .label, #header-secondary-outer .nectar-center-text, #slide-out-widget-area .secondary-header-text, #header-outer #mobile-menu ul li a, #header-outer #mobile-menu .secondary-header-text, .nectar-mobile-only.mobile-header a {
  font-family: Noto Sans !important;
  text-transform: uppercase !important;
}

/* Product custom fields styling */
.product-custom-fields {
  margin: 10px 0;
  font-size: 14px;
  line-height: 1.4;
  font-weight: bold;
  color: #333;
  clear: both;
  display: block;
}

.product-custom-fields > div {
  margin-bottom: 5px;
}

.product-custom-fields .code_product,
.product-custom-fields .origin,
.product-custom-fields .glazing,
.product-custom-fields .packing,
.product-custom-fields .box {
  font-weight: normal;
}

li.product {
    display: flex;
}

.product-wrap {
    width: 50%;
}

.product-info {
    flex: 1;
}

.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}



/* Override default grid for archive category pages */
.archive.woocommerce ul.products {
    display: block !important;
    grid-template-columns: none !important;
}

/* Force archive products to display as single column list regardless of Salient theme column settings */
body.archive.woocommerce ul.products[data-n-desktop-columns] li.product,
body.archive.woocommerce ul.products[data-n-desktop-small-columns] li.product,
body.archive.woocommerce ul.products[data-n-tablet-columns] li.product,
body.archive.woocommerce ul.products[data-n-phone-columns] li.product {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Override Salient's nth-child margin resets for archive pages */
body.archive.woocommerce ul.products li.product:nth-child(2n+2),
body.archive.woocommerce ul.products li.product:nth-child(3n+3),
body.archive.woocommerce ul.products li.product:nth-child(4n+4) {
    margin-right: auto !important;
}

/* ==============================================
   SHOP CATEGORIES — Gutenberg layout
   ============================================== */

/* Remove Salient content padding on the shop page */
.shop-categories-gutenberg {
    margin: 0 !important;
    padding: 0 !important;
}

/* Category cover cards */
.mf-cat-cover {
    position: relative;
    overflow: hidden;
}

.mf-cat-cover .wp-block-cover__inner-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 32px 20px;
    text-align: center;
}

.mf-cat-cover h2 {
    font-size: clamp(1.6rem, 5vw, 2.6rem);
    font-weight: 700;
    color: #ffffff;
    line-height: 1.1;
    margin-bottom: 8px;
    letter-spacing: -0.01em;
}

.mf-cat-cover .mf-cat-count {
    font-size: 12px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
    margin-bottom: 24px !important;
}

.mf-cat-cover .wp-block-button__link {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 12px 28px;
    background-color: #ffffff !important;
    color: #151617 !important;
    border: 2px solid #ffffff !important;
    text-decoration: none;
}

.mf-cat-cover .wp-block-button__link:hover {
    background-color: transparent !important;
    color: #ffffff !important;
}

/* 2-column grid gap */
.shop-categories-gutenberg .wp-block-columns {
    gap: 4px !important;
    margin-bottom: 4px !important;
}

@media (max-width: 599px) {
    .shop-categories-gutenberg .wp-block-columns {
        gap: 4px !important;
        flex-direction: column !important;
    }
    .shop-categories-gutenberg .wp-block-column {
        flex-basis: 100% !important;
    }
}

/* ==============================================
   HOMEPAGE — Mobile-first redesign (Gutenberg)
   ============================================== */

/* Remove default Salient page padding on the new homepage */
.mf-homepage .entry-content,
.mf-homepage #page-header-wrap {
    padding: 0 !important;
    margin: 0 !important;
}

/* ---- Hero ---- */
.mf-hero.wp-block-cover {
    min-height: 0 !important;
}

.mf-hero .wp-block-cover__inner-container {
    padding: 20px 20px 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 0;
    box-sizing: border-box;
}

.mf-hero-eyebrow {
    font-size: 11px !important;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.7) !important;
    margin-bottom: 12px !important;
}

.mf-hero h1 {
    font-size: clamp(2.2rem, 8vw, 4.5rem);
    font-weight: 700;
    line-height: 1.05;
    color: #ffffff;
    text-align: center;
    margin-bottom: 16px;
}

.mf-hero .mf-hero-sub {
    font-size: clamp(0.95rem, 2.5vw, 1.15rem);
    color: rgba(255,255,255,0.85);
    text-align: center;
    max-width: 540px;
    margin-bottom: 32px !important;
    line-height: 1.6;
}

/* Buttons in hero */
.mf-hero .wp-block-buttons {
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.mf-hero .wp-block-button__link {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 14px 28px;
}

.mf-btn-primary .wp-block-button__link {
    background-color: #ffffff !important;
    color: #151617 !important;
    border: 2px solid #ffffff !important;
}

.mf-btn-primary .wp-block-button__link:hover {
    background-color: transparent !important;
    color: #ffffff !important;
}

.mf-btn-outline .wp-block-button__link {
    background-color: transparent !important;
    color: #ffffff !important;
    border: 2px solid rgba(255,255,255,0.6) !important;
}

.mf-btn-outline .wp-block-button__link:hover {
    background-color: #ffffff !important;
    color: #151617 !important;
    border-color: #ffffff !important;
}

/* ---- Info strip ---- */
.mf-info-strip {
    background-color: #151617;
}

.mf-info-strip .wp-block-columns {
    margin: 0 !important;
}

.mf-info-item {
    padding: 28px 24px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.mf-info-item:last-child {
    border-bottom: none;
}

@media (min-width: 600px) {
    .mf-info-item {
        border-bottom: none;
        border-right: 1px solid rgba(255,255,255,0.08);
    }
    .mf-info-item:last-child {
        border-right: none;
    }
}

.mf-info-item .mf-label {
    display: block;
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 6px;
}

.mf-info-item strong {
    display: block;
    font-size: 15px;
    color: #ffffff;
    margin-bottom: 2px;
}

.mf-info-item span {
    font-size: 13px;
    color: rgba(255,255,255,0.6);
}

/* ---- Full-screen cover sections ---- */
.home .mf-cover-section.wp-block-cover {
    min-height: 0 !important;
    max-height: 250px;
    overflow: hidden;
}

.mf-cover-section .wp-block-cover__inner-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.mf-cover-section h2 {
    font-size: clamp(2rem, 7vw, 4rem);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.01em;
    line-height: 1.05;
    margin-bottom: 24px;
}

.mf-cover-section .wp-block-button__link {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 14px 32px;
    background-color: #ffffff !important;
    color: #151617 !important;
    border: 2px solid #ffffff !important;
}

.mf-cover-section .wp-block-button__link:hover {
    background-color: transparent !important;
    color: #ffffff !important;
}

/* ---- Final CTA ---- */
.mf-cta-section {
    padding: 64px 24px;
    text-align: center;
}

.mf-cta-section h2 {
    font-size: clamp(1.6rem, 5vw, 2.8rem);
    color: #ffffff;
    font-weight: 700;
    line-height: 1.15;
    margin-bottom: 16px;
}

.mf-cta-section p {
    font-size: 15px;
    color: rgba(255,255,255,0.7);
    max-width: 480px;
    margin: 0 auto 32px;
    line-height: 1.6;
}

.mf-cta-section .wp-block-button__link {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 16px 40px;
    background-color: #ffffff !important;
    color: #151617 !important;
}

/* ==============================================
   HOMEPAGE — Mobile: hide background images
   ============================================== */
@media (max-width: 768px) {

    /* Hero: reduce height, solid dark bg, bury image under opaque overlay */
    .mf-hero.wp-block-cover {
        min-height: 60vh !important;
        background-color: #151617 !important;
    }
    .mf-hero .wp-block-cover__image-background {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
    /* Solid overlay covers image even if JS re-shows it */
    .mf-hero .wp-block-cover__background {
        background-color: #151617 !important;
        opacity: 1 !important;
    }
    .mf-hero .wp-block-cover__inner-container {
        min-height: 0;
    }

    /* Product/cert cover sections */
    .mf-cover-section.wp-block-cover {
        min-height: 40vh !important;
        background-color: #1a1e20 !important;
    }
    .mf-cover-section .wp-block-cover__image-background {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
    .mf-cover-section .wp-block-cover__background {
        background-color: #1a1e20 !important;
        opacity: 1 !important;
    }
    .mf-cover-section .wp-block-cover__inner-container {
        min-height: 40vh;
    }
}