/* 
Theme Name: Enco Srl
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Attiva SpA
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

html { scroll-behavior: smooth; }

input.focus, select.focus, textarea.focus, .btn.focus,
input:focus, select:focus, textarea:focus, .btn:focus,
input:focus-visible, select:focus-visible, textarea:focus-visible, .btn:focus-visible,
input:focus-within, select:focus-within, textarea:focus-within, .btn:focus-within {
	outline: 0;
	-webkit-box-shadow: none;
    box-shadow: none;
}

.embed-responsive { position: relative; display: block; width: 100%; padding: 0; overflow: hidden; }
.embed-responsive::before { display: block; content: ""; }
.embed-responsive-21by9::before { padding-top: 42.857143%; }
.embed-responsive-16by9::before { padding-top: 56.25%; }
.embed-responsive-4by3::before { padding-top: 75%; }
.embed-responsive-1by1::before { padding-top: 100%; }

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video { position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0; }

.elementor-button-content-wrapper { align-items: center; }

/* ------------------------------------------- */
/* MAIN MENU --------------------------------- */
.elementor-nav-menu--main .elementor-nav-menu .elementor-item.has-submenu.elementor-item-active .sub-arrow,
.elementor-nav-menu--main .elementor-nav-menu .elementor-item.has-submenu.highlighted .sub-arrow {
    color: var( --e-global-color-accent );
    fill: var( --e-global-color-accent );
}

.elementor-nav-menu--main .elementor-nav-menu ul.sub-menu.elementor-nav-menu--dropdown {
    padding-top: 10px;
    padding-bottom: 10px;
}

/* ------------------------------------------ */
/* FORM CF7 --------------------------------- */
.wpcf7-form .elementor-form-fields-wrapper { margin-left: calc( -20px/2 ); margin-right: calc( -20px/2 ); }
.wpcf7-form .elementor-form-fields-wrapper:last-child { margin-bottom: -20px; }
.wpcf7-form .elementor-field-group .wpcf7-form-control-wrap { width: 100%; max-width: 100%; }
.wpcf7-form .elementor-field-group label { display: block; width: 100%; margin-bottom: 4px; }
.wpcf7-form .wpcf7-acceptance label { line-height: 1.5; }
.wpcf7-form .wpcf7-acceptance label a { text-decoration: none; border-bottom: 1px solid; }
.wpcf7-form .wpcf7-acceptance label .wpcf7-list-item-label,
.wpcf7-form .wpcf7-list-item label .wpcf7-list-item-label { margin-left: 6px; }
.wpcf7-form .wpcf7-list-item.first.last { margin: 0; }
.wpcf7-form ol { display: block; width: 100%; max-width: 100%; margin-top: .9rem; margin-bottom: .9rem; }
.wpcf7-form .elementor-field-group { padding-right: calc( 20px/2 ); padding-left: calc( 20px/2 ); margin-bottom: 1em; -webkit-box-align: start; -ms-flex-align: start; align-items: start; -webkit-align-content: start; align-content: start; }
.wpcf7-form .elementor-field-group.elementor-field-type-submit { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.wpcf7-form .elementor-field-group input.wpcf7-validates-as-required,
.wpcf7-form .elementor-field-group select.wpcf7-validates-as-required,
.wpcf7-form .elementor-field-group textarea.wpcf7-validates-as-required { border-left-width: 3px; }

.wpcf7-form .wpcf7-not-valid-tip { margin-left: 1rem; font-size: 0.9em; }
.wpcf7-form .wpcf7-not-valid {
    border-color: #dc3232;
    padding-right: calc(1.5em + 0.75rem)!important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.wpcf7-form .card { position: relative; padding: 15px 15px 0 15px; border: 1px solid #ddd; border-radius: 3px; background-color: #f5f5f5; margin-bottom: 15px; }
.wpcf7-form .elementor-form-fields-wrapper-label {
	position: relative;
	padding: 15px 15px 0 15px;
	margin-top: 30px;
	margin-bottom: 15px;
	border: 1px solid #ddd;
	border-radius: 3px;
	background-color: #f5f5f5;
}
.wpcf7-form .elementor-form-fields-wrapper-label .elementor-field-label {
	position: absolute;
	font-size: 0.8em;
	color: #999;
	top: -1.5em;
	left: 15px;
}

.wpcf7-form [data-class="wpcf7cf_group"] { width:100%; }


.wpcf7-form .elementor-field-group button,
.wpcf7-form .elementor-field-group input,
.wpcf7-form .elementor-field-group optgroup,
.wpcf7-form .elementor-field-group select,
.wpcf7-form .elementor-field-group textarea {
    font-size: 16px;
    line-height: 24px;padding: .5rem 1rem

}

.wpcf7-form select.wpcf7-select { background: inherit; }

.wpcf7-form .wpcf7-submit {
	color: #fff;
	background-color: var(--e-global-color-primary);
	border-radius: 3px;
	border: 1px solid var(--e-global-color-primary);
}

.wpcf7-form .wpcf7-submit:hover {
	color: #fff;
	background-color: var( --e-global-color-accent );
	border: 1px solid var( --e-global-color-accent );
}

/*
Modulo di contatto visualizzazione prodotto selezionato
*/

.product-selected {
    border: 2px solid var( --e-global-color-primary );
    padding: 15px;
    display: flex;
    align-items: center;
    margin-bottom: 2em;
}

.product-selected .product-selected__image { max-width: 100px; margin-right: 1em; }


.taxonomy_product_brand_list {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
}

.taxonomy_product_brand_list a {
    display: inline-block;
    line-height: 1;
    padding-left: 0.5em;
    padding-right: 0.5em;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
}

.taxonomy_product_brand_list a img {
    max-width: 120px;
    max-height: 30px;
    
}