/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

:root { 
    --h1_typography-font-size:36px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:28px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:24px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:20px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:18px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:16px;
    --h6_typography-line-height:1.4;

    --body_typography-font-size: 15px;
    --body_typography-line-height: 1.65;
}


@media screen and (min-width:375px){
    :root { 
    --h1_typography-font-size:38px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:30px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:24px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:20px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:18px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:16px;
    --h6_typography-line-height:1.4;
    }
}
@media screen and (min-width:480px){
    :root { 
     --body_typography-font-size: 16px;
    --body_typography-line-height: 1.65;

    --h1_typography-font-size:42px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:32px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:24px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:20px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:18px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:16px;
    --h6_typography-line-height:1.4;
    }
}
@media screen and (min-width:768px){
    :root { 
    --h1_typography-font-size:46px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:36px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:26px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:22px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:20px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:18px;
    --h6_typography-line-height:1.4;
    }
}
@media screen and (min-width:1024px){
    :root { 
    --body_typography-font-size: 17px;
    --body_typography-line-height: 1.65;
    
    --h1_typography-font-size:50px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:38px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:28px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:22px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:20px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:18px;
    --h6_typography-line-height:1.4;
    }
}
@media screen and (min-width:1280px){
    :root { 
    --h1_typography-font-size:60px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:40px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:30px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:24px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:22px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:18px;
    --h6_typography-line-height:1.4;
    }
}
@media screen and (min-width: 1620px){
    :root { 
    --h1_typography-font-size:64px;
    --h1_typography-line-height:1.15;
    
    --h2_typography-font-size:44px;
    --h2_typography-line-height:1.20;

    --h3_typography-font-size:34px;
    --h3_typography-line-height:1.30;

    --h4_typography-font-size:26px;
    --h4_typography-line-height:1.30;

    --h5_typography-font-size:22px;
    --h5_typography-line-height:1.35;

    --h6_typography-font-size:18px;
    --h6_typography-line-height:1.4;

    }
}


/*------------Font------------*/
.p-big {
    line-height: var(--body_typography-line-height)!important;
    font-size:calc( var(--body_typography-font-size) + 4px)!important;
    font-weight:initial!important;
}
.p-small {
    line-height: var(--body_typography-line-height)!important;
    font-size: var(--body_typography-font-size)!important;
    font-weight:initial!important;
}


h1, .title-h1, .title-h1 *{
    font-size: var(--h1_typography-font-size)!important;
    font-family: var(--h1_typography-font-family)!important;
    font-weight: var(--h1_typography-font-weight)!important;
    line-height: var(--h1_typography-line-height)!important;
    letter-spacing: var(--h1_typography-letter-spacing)!important;
    font-style: var(--h1_typography-font-style,normal)!important;
}
h2, .title-h2, .title-h2 *{
    font-size: var(--h2_typography-font-size)!important;
    font-family: var(--h2_typography-font-family)!important;
    font-weight: var(--h2_typography-font-weight)!important;
    line-height: var(--h2_typography-line-height)!important;
    letter-spacing: var(--h2_typography-letter-spacing)!important;
    font-style: var(--h2_typography-font-style,normal)!important;
}
h3, .title-h3, .title-h3 *{
    font-size: var(--h3_typography-font-size)!important;
    font-family: var(--h3_typography-font-family)!important;
    font-weight: var(--h3_typography-font-weight)!important;
    line-height: var(--h3_typography-line-height)!important;
    letter-spacing: var(--h3_typography-letter-spacing)!important;
    font-style: var(--h3_typography-font-style,normal)!important;
}
h4, .title-h4,  .title-h4 *{
    font-size: var(--h4_typography-font-size)!important;
    font-family: var(--h4_typography-font-family)!important;
    font-weight: var(--h4_typography-font-weight)!important;
    line-height: var(--h4_typography-line-height)!important;
    letter-spacing: var(--h4_typography-letter-spacing)!important;
    font-style: var(--h4_typography-font-style,normal)!important;
}
h5, .title-h5,  .title-h5 *{
    font-size: var(--h5_typography-font-size)!important;
    font-family: var(--h5_typography-font-family)!important;
    font-weight: var(--h5_typography-font-weight)!important;
    line-height: var(--h5_typography-line-height)!important;
    letter-spacing: var(--h5_typography-letter-spacing)!important;
    font-style: var(--h5_typography-font-style,normal)!important;
}
h6, .title-h6,  .title-h6 *{
    font-size: var(--h6_typography-font-size)!important;
    font-family: var(--h6_typography-font-family)!important;
    font-weight: var(--h6_typography-font-weight)!important;
    line-height: var(--h6_typography-line-height)!important;
    letter-spacing: var(--h6_typography-letter-spacing)!important;
    font-style: var(--h6_typography-font-style,normal)!important;
}

/*------------Font------------*/

.font-secondario {font-family: var(--body_typography-font-family)!important;}
.font-principale {font-family: var(--h1_typography-font-family)!important;}



b, strong, .bold, .grassetto {font-weight: 700!important;}

.italic {font-style:italic!important;}
.maiuscolo, .uppercase {text-transform:uppercase!important;}
.minuscolo, .lowercase {text-transform:lowercase!important;}
.iniziali-maiuscole {text-transform:capitalize!important;}
.letter-spacing {letter-spacing:6px!important;}

.light, .light * {font-weight: 300!important;}
.regular, .regular *  {font-weight: 400!important;}
.medium, .medium *  {font-weight: 500!important;}
.semibold, .semibold *  {font-weight: 600!important;}

.underline{
  text-decoration-line:underline;
  text-decoration-style: solid;
  text-decoration-thickness:2px;
}


@media only screen and (max-width: 1280px) { }


/* menu mobile*/
@media only screen and (max-width: 1023px) { 
/* fine menu mobile*/
.fusion-secondary-header {
    display: none;
}
.fusion-header {
    top: 0!important;
}
header nav.fusion-mobile-nav-holder.fusion-flyout-menu.fusion-flyout-mobile-menu {
    margin-top: 0px!important;
    height:100%!important;
}
.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle:hover .fusion-toggle-icon-line {
    background-color:#af1917;
}

.fusion-header .fusion-row, .side-header-wrapper {
    padding-top:5px;
    padding-bottom:5px;
}
.fusion-logo img{ 
    max-height: 66px!important;
}
header ul.fusion-menu .wpml-ls-item ul.sub-menu {
    display:block!important;
    opacity:1;
    display:inline-flex!important;
}
header .fusion-header-has-flyout-menu-content .fusion-flyout-menu-bg {
    background: #100000c2 !important;
    backdrop-filter:blur(20px)
}
header .fusion-header-has-flyout-menu-content li {
   padding:0px!important;
   text-align:center;
}
	.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active  .fusion-flyout-menu-icons .fusion-icon:before {
    color: #ffffff !important;
}
.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-toggle-icon-line {
    background-color: #fff;
}

header ul.fusion-menu li a {
    color:#fff;
    font-size:22px!important;
    text-transform:uppercase;

}
header ul.fusion-menu li a:hover {
    color:#af1917;
}
header ul.fusion-menu .sub-menu li a {
    margin:5px 0;
    font-size: 16px!important;
    text-transform:initial;
    line-height:1.5;
    background-color: transparent;
    color:#ffffffd1;
}
header ul.fusion-menu .sub-menu {
margin-bottom: 20px;
}
header ul.fusion-menu .menu-item-has-children a{
    position:relative
}
header ul.fusion-menu .menu-item-has-children a:after {
    content:"+";
    font-weight:400;
    font-size:24px;
    right:-10px;
    position:absolute;
    display: inline-block;
    margin-left: 0px;
    }
header ul.fusion-menu .open a:after {
    transform: rotate(45deg);
    display: inline-block;
}
header ul.fusion-menu ul.sub-menu a:after {content:none!important;}
header ul.fusion-menu .menu-item-has-children a:after {
-webkit-transition: all 250ms ease-in-out;
-moz-transition: all 250ms ease-in-out;
-ms-transition: all 250ms ease-in-out;
-o-transition: all 250ms ease-in-out;
transition: all 250ms ease-in-out;
}
}

@media only screen and (max-width: 800px) { 
.fusion-header-has-flyout-menu-content li {
   padding:0px!important;
   text-align:left!important;
}
header ul.fusion-menu .sub-menu li a {
    margin-left: 15px;
}
}

@media screen and (max-width:1024px){

    /*colonne-flex + gap*/
    .col-20-flex,.col-30-flex,.col-40-flex,.col-50-flex {
        flex-grow: 1;
        flex-shrink: 0;
        flex-basis: 44%;
      }
    .col-60-flex,.col-80-flex {
        flex-grow: 1;
        flex-shrink: 0;
        flex-basis:100%;
      }
    .full-radius {
        overflow: hidden;
        max-width:calc(100% - 0px);
        border-radius: 0px;
    }
    .mobile-centrato *, .mobile-centrato{
        text-align:center!important;
    }
    .mobile-alternato .fusion-builder-row {
        flex-direction: column-reverse!important;
    }
    .fusion-slider-container ul.slides * {
        text-align: center!important;
    }
}

@media screen and (max-width:800px){}

@media screen and (max-width:768px){
    /*colonne-flex + gap*/
    .col-20-flex,.col-30-flex,.col-40-flex,.col-50-flex,.col-60-flex,.col-80-flex {
        flex-grow: 1;
        flex-shrink: 0;
        flex-basis:100%;
    }
    /*form*/
    .wpcf7 .form-colonna {
        display: block;
    }
    .wpcf7 .col-50 {
        width: calc(100% - 0px);
    }

}

@media screen and (max-width:480px){
.wpcf7 input,
.wpcf7 select {
    font-size:15px!important;
    line-height:1.4!important;
    height: auto!important;
}
.wpcf7 textarea {
    font-size:15px!important;
    line-height:1.4!important;
    height: 100px;
}
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
    padding: 10px 15px!important;
}
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
    padding: 10px 30px!important;
}
}
