/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
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
*/

/* Add your custom styles here */

body, main{
	overflow-x: hidden;
}

/*fix for background images*/
.elementor-element, .elementor-motion-effects-layer{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

/*Glass effect*/
.maf-glass-effect{
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
}

/*Make assistenza map pin not clickable -> data not reachable by users but kind of "backuped"*/
.maf-assistenza-map div[role="button"] {
    pointer-events: none;
}


/*Buttons styling*/
.maf-btn span.elementor-button-icon {
    color: #64748B;
    fill: #64748B;
    font-size: 2vw;
    transition: transform 0.3s ease;
}

.maf-btn.white-icn span.elementor-button-icon {
    color: #fff;
    fill: #fff;
}

.maf-btn:hover span.elementor-button-icon {
    transform: rotate(45deg);
    
}

.maf-btn span.elementor-button-text{
    padding: 0.5vw 0vw 0.5vw 1vw;
}

.maf-btn .elementor-button-content-wrapper{
    align-items: center;
}

/*icons button*/
.maf-icn .elementor-icon{
    transition: transform 0.3s ease;
}

.maf-card:hover .maf-icn .elementor-icon{
    transform: rotate(45deg);
    
}

/*Header styling*/
.maf-header{
	transition: width 0.35s ease;
}

.maf-header.elementor-sticky--active{
	width: 85vw!important;
	top: 0.5vw!important;
}

/*Dotted bg*/
.maf-dark-dotted-bg{
    background:
    radial-gradient(circle, rgb(189 189 189 / 22%) 1px, transparent 1.5px) 0 0 / 25px 25px,
    linear-gradient(135deg, #0D4F9F, #0f172a);
  /*animation: dots-drift 12s linear infinite;*/
  background-attachment: fixed;
}

/* Video aspect ratio home page */
.video-cover-maf{
    overflow:hidden;
}

.video-cover-maf .elementor-background-video-container{
    overflow:hidden;
}

.video-cover-maf .elementor-background-video-container iframe{
    width:120%;
    height:120%;
    
    top:50% !important;
    left:50% !important;

    transform:translate(-50%, -50%) scale(1.2);
    transform-origin:center center;

    position:absolute;
}


/* Animazione titolo reveal */
.maf-title-anim .elementor-heading-title {
    overflow: hidden;
}

.maf-title-anim .maf-title-word {
    display: inline-block;
    white-space: nowrap;
    color: inherit;
}

.maf-title-anim .maf-title-char {
    display: inline-block;
    color: inherit !important;

    transform: translateY(110%);
    opacity: 0;

    animation: mafCharReveal 0.85s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    animation-delay: calc(var(--char-index) * 0.025s);
}

@keyframes mafCharReveal {
    from {
        transform: translateY(110%);
        opacity: 0;
    }

    to {
        transform: translateY(0%);
        opacity: 1;
    }
}


/* ANIMAZIONE TITOLI Variante default: titolo scuro su fondo chiaro */
/*.maf-scroll-highlight .elementor-heading-title,
.maf-scroll-highlight {
    color: rgba(7, 27, 52, 0.18);
}

.maf-word {
    color: rgba(7, 27, 52, 0.18);
    transition: color 0.15s linear;
}

.maf-word.is-active {
    color: #071B34;
}*/


/* Variante light: titolo bianco su fondo scuro */
/*.maf-scroll-highlight--light .elementor-heading-title,
.maf-scroll-highlight--light {
    color: rgba(255, 255, 255, 0.22);
}

.maf-scroll-highlight--light .maf-word {
    color: rgba(255, 255, 255, 0.22);
}

.maf-scroll-highlight--light .maf-word.is-active {
    color: #ffffff;
}*/


/* Variante bottoni news */

.maf-btn span.elementor-button-icon,
.maf-btn-news span.elementor-button-icon {
    color: #64748B;
    fill: #64748B;
    font-size: 2vw;
    transition: transform 0.3s ease;
}

.maf-btn.white-icn span.elementor-button-icon,
.maf-btn-news.white-icn span.elementor-button-icon {
    color: #fff;
    fill: #fff;
}

.maf-btn:hover span.elementor-button-icon,
.maf-btn-news:hover span.elementor-button-icon {
    transform: rotate(45deg);
}

.maf-btn span.elementor-button-text {
    padding: 0.5vw 0vw 0.5vw 1vw;
}

.maf-btn-news span.elementor-button-text {
    padding: 0.5vw 0vw 0.5vw 0vw; /* nessuno spazio a sinistra */
}

.maf-btn .elementor-button-content-wrapper,
.maf-btn-news .elementor-button-content-wrapper {
    align-items: center;
}


/* Hero immagine con effetto luminosity */
.maf-news-img {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-blend-mode: luminosity;
    background-color: #0c1e21;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
}

/* Overlay texture semitrasparente */
.maf-news-img::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://maf.dkrweb.it/wp-content/uploads/2026/06/MAF-sfumatura-news.jpg');
    background-size: auto;
    background-position: center center;
    opacity: 0.8;
    z-index: 0;
    pointer-events: none;
}

/* Assicura che il contenuto interno stia sopra l'overlay */
.maf-news-img > * {
    position: relative;
    z-index: 1;
}

.maf-smooth-slider .swiper-wrapper{
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important; 
}



/*Forminator forms styling*/
.maf-forminator-form form .forminator-label {
    font-family: var(--e-global-typography-text-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-text-font-size)!important;
    font-weight: var(--e-global-typography-text-font-weight)!important;
}

.maf-forminator-form form {
    font-family: var(--e-global-typography-text-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-text-font-size)!important;
    font-weight: var(--e-global-typography-text-font-weight)!important;
    color: var(--e-global-color-text);
}

.maf-forminator-form form input,
.maf-forminator-form form textarea{
    background-color: #ffffff;
    border-radius: 0px 0px 0px 0px!important;
	border-width: 0 0 1px 0 !important;
	font-family: var(--e-global-typography-text-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-text-font-size)!important;
    font-weight: var(--e-global-typography-text-font-weight)!important;
    letter-spacing: var(--e-global-typography-text-letter-spacing)!important;
}

.maf-forminator-form form span,
.maf-forminator-form form p{
	font-family: var(--e-global-typography-text-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-text-font-size)!important;
    font-weight: var(--e-global-typography-text-font-weight)!important;
    letter-spacing: var(--e-global-typography-text-letter-spacing)!important;
}


.maf-forminator-form form .forminator-checkbox-box{
	color: black!important;
}

.maf-forminator-form form .forminator-radio-bullet:before{
	background-color: black!important;
}

.maf-forminator-form form .forminator-row{
	margin-bottom: 2vw!important;
}

.maf-forminator-form form .forminator-col{
	padding: 0 1vw;!important;
}

.maf-forminator-form form button.forminator-button.forminator-button-submit {
    background-color: var(--e-global-color-accent);
    font-family: var(--e-global-typography-c1834fa-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-c1834fa-font-size)!important;
    font-weight: var(--e-global-typography-c1834fa-font-weight)!important;
    border-radius: 999px!important;
    padding: 0.65vw 1.5vw 0.65vw 1.5vw!important;
    color: white;
    box-shadow: none!important;
    float: right;
}

.maf-forminator-form form button.forminator-button.forminator-button-submit:hover{
   background-color: var( --e-global-color-primary );
}

/*.maf-forminator-form form h4 {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    color: var(--e-global-color-primary);
    margin-bottom: 0;
    margin-top: 2vw;
}

.maf-forminator-form form h5 {
    margin-bottom: 0;
    margin-top: 2vw;
    font-family: var(--e-global-typography-fd38a72-font-family), Sans-serif;
    font-size: var(--e-global-typography-fd38a72-font-size);
    font-weight: var(--e-global-typography-fd38a72-font-weight);
    text-transform: var(--e-global-typography-fd38a72-text-transform);
    letter-spacing: var(--e-global-typography-fd38a72-letter-spacing);
}

.av-forminator-form form p{
    margin-bottom: 0;
}*/

/* ============================================================
   FORMINATOR · SELECT MINIMAL
   I colori sono segnalati con un commento: cambiali a piacere.
   ============================================================ */

/* --- Casella della select (stato chiuso) --- */
span.select2-selection.select2-selection--single {
	border: none !important;
	border-bottom: 1px solid #222 !important;   /* SOLO bordo inferiore */
	border-radius: 0 !important;
	background: transparent !important;          /* via lo sfondo grigino */
	box-shadow: none !important;

	font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
	font-size: var(--e-global-typography-text-font-size) !important;
	font-weight: var(--e-global-typography-text-font-weight) !important;
}

/* Testo selezionato dentro la casella */
span.select2-selection.select2-selection--single .select2-selection__rendered {
	color: inherit !important;   /* niente grigino Select2, segue il tema */
	line-height: normal;
}

/* Freccina del dropdown (triangolo CSS) */
.select2-selection--single .select2-selection__arrow b {
	border-color: #222 transparent transparent transparent;   /* stesso colore del bordo */
}

/* --- Hover / focus / dropdown aperto sulla casella --- */
span.select2-selection.select2-selection--single:hover,
.select2-container--focus span.select2-selection.select2-selection--single,
.select2-container--open span.select2-selection.select2-selection--single {
	border-bottom-color: #000 !important;   /* accento all'apertura/hover */
	background: transparent !important;
	box-shadow: none !important;
}

/* --- Lista delle voci (dropdown aperto) --- */
.forminator-select.forminator-select-dropdown-container--open .forminator-select-dropdown .select2-results .select2-results__options {
	background: #fff;

	font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
	font-size: var(--e-global-typography-text-font-size) !important;
	font-weight: var(--e-global-typography-text-font-weight) !important;
}

/* Singola voce (stato neutro) */
.forminator-select-dropdown .select2-results__option {
	background: transparent !important;
	color: inherit !important;
}

/* Voce in hover / navigazione da tastiera → niente grigio pieno */
.forminator-select-dropdown .select2-results__option--highlighted,
.forminator-select-dropdown .select2-results__option--highlighted[aria-selected] {
	background: #f5f5f5 !important;   /* tint leggerissimo; metti 'transparent' per zero sfondo */
	color: inherit !important;
}

/* Voce già selezionata → evidenziata col peso, non col grigio */
.forminator-select-dropdown .select2-results__option[aria-selected="true"],
.forminator-select-dropdown .select2-results__option--selected {
	background: transparent !important;
	color: inherit !important;
	font-weight: 600 !important;
}

@media only screen and (max-width: 1023px) {
	.maf-btn span.elementor-button-icon {
		font-size: 3.5vw;
	}
	
	/*Header styling*/
	.maf-header.elementor-sticky--active{
		width: 90% !important;
        top: 2vw !important;
	}
	
	/*.maf-news-img::after {
		background-size: auto;
	}*/
	
	.maf-forminator-form form button.forminator-button.forminator-button-submit {
		min-height: 47px!important;
	}
	
	.maf-forminator-form form .forminator-col{
		margin-bottom: 5vw!important;
	}
}

@media only screen and (max-width: 767px) {
	.maf-btn span.elementor-button-icon {
        font-size: 7.5vw;
        margin-left: 1vw;
    }
}