:root{
  --colore-anno-testo: #020202;
  --colore-anno-testo-hover: #f1eff0;
  --colore-anno:#a7c8d9;
  --colore-anno-hover: #29649e;
  --sfondo-grigio: #F5F5F5;
  /* --colore-anno:#9AD9B5;
  --colore-anno-hover: #7cbf96; */
  /* colore chiaro #8BD6A9 */
  /* #a7c8d9 azzurro */
  /* #29649e blu */
  /* #e83e59 rosa */
  /* #fee610 giallo */
}
/* Montserrat Thin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100;
  src: url('./custom-fonts/Montserrat-Thin.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100;
  src: url('./custom-fonts/Montserrat-ThinItalic.ttf') format('truetype');
  font-display: swap;
}



/* Montserrat Light */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('./custom-fonts/Montserrat-Light.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  src: url('./custom-fonts/Montserrat-LightItalic.ttf') format('truetype');
  font-display: swap;
}

/* Montserrat Regular */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('./custom-fonts/Montserrat-Regular.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: url('./custom-fonts/Montserrat-Italic.ttf') format('truetype');
  font-display: swap;
}

/* Montserrat Medium */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('./custom-fonts/Montserrat-Medium.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 500;
  src: url('./custom-fonts/Montserrat-MediumItalic.ttf') format('truetype');
  font-display: swap;
}

/* Montserrat SemiBold */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('./custom-fonts/Montserrat-SemiBold.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  src: url('./custom-fonts/Montserrat-SemiBoldItalic.ttf') format('truetype');
  font-display: swap;
}

/* Montserrat Bold */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('./custom-fonts/Montserrat-Bold.ttf') format('truetype');
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  src: url('./custom-fonts/Montserrat-BoldItalic.ttf') format('truetype');
  font-display: swap;
}


@font-face {
  font-family: 'Montserrat-Fallback';
  src: local('Arial');
  size-adjust: 104%;
  ascent-override: 95%;
  descent-override: 23%;
  line-gap-override: 0%;
}

body:not(.stile2020):not(.stile2021):not(.stile2022):not(.stile2023):not(.stile2024):not(.stile2025) {
  
  body, button, input, select, textarea, .ast-button, .ast-custom-button, p, li, del, ins, bdi, mark, div{
    font-size: clamp(16px, 2vw, 20px);
    font-family: 'Montserrat', 'Montserrat-Fallback', Arial, sans-serif;
    font-weight: 300;
  }
  h1 {
    /* Da un minimo di 36px su mobile a un massimo di 72px su desktop */
    font-size: clamp(2.25rem, 6vw, 4.5rem);
    text-transform: none !important;
    line-height: 1.2;
    margin: 2.5rem 0 0.625rem; /* Convertito: 40px 0 10px */
    text-align: center;
  }
  
  h2 {
    /* Da un minimo di 28px su mobile a un massimo di 48px su desktop */
    font-size: clamp(1.75rem, 4.5vw, 2rem);
    text-transform: none;
    line-height: 1;
    border-bottom: 0;
  } 
  
  h3 {
    margin-top: 1rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    /* Da un minimo di 22px su mobile a un massimo di 32px su desktop */
    font-size: clamp(1.375rem, 3.5vw, 1.8rem);
  }
  p + h3 {
    margin-top: 2rem !important;
  }
  h3:has(+ p) {
    margin-bottom: 0.5rem !important;
  }
  
  h1, h2, h3 {
    color: var(--colore-anno-hover) !important;
    text-shadow: none;
    font-weight: 400;
  }
  
  &.pagina-info-utili h2{
    font-weight: bold;
    margin-top: 1.5rem;
  }
  &.pagina-info-utili h3{
    text-transform: none!important;
    padding-top: 0;
  }
  &.pagina-focus  h3{
    text-transform: none!important;
    padding-top: 0.3rem;
  }
  
  h4 {
    /* Da un minimo di 20px su mobile a un massimo di 28px su desktop */
    font-size: clamp(1.25rem, 3vw, 1.6rem);
    font-weight: 400;
  }
  
  h5 {
    text-transform: uppercase;
    /* Da un minimo di 16px su mobile a un massimo di 20px su desktop */
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    font-weight: 300;
  }
  .testo-grande{
    font-size: clamp(1.375rem, 3.5vw, 1.8rem);
  }
  
  .menu-link{
    font-family: "din-2014";
  }
  
  .wp-block-separator {
    border-top: 15px solid;
    width: 60px;
    color: var(--colore-anno);
    text-align: left;
    margin: 30px 0 !important;
  }
  
  .wp-block-separator.is-style-wide {
    width: 100%;
    border-top: 3px solid;
    color: var(--colore-anno-hover);
  }
  
  
  .tutta-larghezza{
    margin-left: calc( -50vw + 50%);
    margin-right: calc( -50vw + 50%);
    max-width: 100vw;
    width: 100vw;
    padding: 0;
    
    p{
      padding-left: 1rem;
      padding-right: 1rem;
      max-width: 1200px;
      margin: 0 auto;
    }
    .wp-block-columns{
      max-width: 1200px;
      margin: 0 auto;
    }
    
  }
  .sfondo-grigio{
    background: var(--sfondo-grigio);
    padding: 3rem 0 5rem!important;
  }
  .sfondo-grigio .wp-block-column > h2:first-child {
    margin-top: 0;
  }
  .galleria-autori {
    filter: grayscale(100%);
  }
  .wp-block-embed-youtube {
    max-width: 740px !important;
    margin: 0 auto;
  }
  .woocommerce button.button,
  .woocommerce-js button.button,
  .wp-block-themeisle-blocks-accordion:not(.is-style-default) .wp-block-themeisle-blocks-accordion-item__title, a.wp-block-button__link.wp-element-button, a.button-ext, .button.add_to_cart_button {
    background-color: var(--colore-anno-hover);
    color:#fff;
  }
  .woocommerce button.button:hover,
  .wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus {
    color: #333333;
    background-color: var(--colore-anno);
  }
  
  .button-giallo a.wp-block-button__link.wp-element-button{
    background-color: var(--colore-anno-giallo) !important;
    font-family: "din-2014" !important;
    color: #000 !important;
    font-weight: 600 !important;
    font-size: 1.1rem;
  }
  
  
  
  .blocco-social {
    justify-content: center;
    width: 300px;
    padding: 1rem 0;
    flex-wrap: nowrap !important;
    
    img{
      width: 60px;
      pointer-events: none;
    }
    .wp-block-columns{
      flex-wrap: nowrap !important;
    }
    .wp-block-column{
      margin-bottom: 0;
    }
    
    
    @media (max-width: 640px) {
      img{width: 50px;
      }
    } 
    
  }
  
  &.pagina-altroillustrato .blocco-luogo,
  &.pagina-autori .blocco-luogo{
    background-color: var(--sfondo-grigio)!important;
    padding: 2rem!important
  }
  
  @media (max-width: 340px) {
    .blocco-social{
      width: 250px;
      
      img{width: 40px;
      }
    } 
  }
    @media (max-width: 781px) {
      .blocco-social{
        flex-wrap: nowrap !important;
      }
      
      &.pagina-focus .blocco-luogo{
        display: flex!important;
        flex-direction: column!important;
        justify-content: center;
        
        figure{
          max-width: 320px;
          margin-bottom: 1rem;
        }
        .wp-block-media-text__content{
          padding-left: 0;
        }
        
      }
    }
    
    
    .blocco-prenotazione{
      background-color: var(--colore-anno-hover);
      color: #fff;
      padding: 2rem;
    }
    
    
    
    
    
    /* autori dentro a prodotti */
    
    .woocommerce-loop-product__description .sfondo-grigio{
      padding: 2rem !important;
    }
    .woocommerce-loop-product__description  .wp-block-media-text{
      margin: 30px 0 15px !important;
      display: grid;
      grid-template-columns: 300px auto;
      img{
        filter: grayscale(100%);
      }
      .wp-block-paragraph{
        font-size: 18px;
      }
    }
    .wp-block-media-text__content h2,
    h2.woocommerce-loop-product__title{
      /* font-size: 32px; */
      border: 0;
    }
    .wp-block-media-text__content h3{
      font-size: 22px;
    }
    
    
    .site-primary-footer-wrap {
      display: none;
    }
    
    
    /* tag focus */
    
    .product_tag-nido::before,
    .product_tag-infanzia::before, 
    .product_tag-primaria::before, 
    .product_tag-secondaria_primo::before, 
    .product_tag-primaria_secondaria_primo::before, 
    .product_tag-secondaria_secondo::before {
      display: block;
      font-size: clamp(1.875rem, 4vw, 2.5rem);
      text-transform: uppercase;
      color: var(--colore-anno-hover);
      font-family: "din-2014";
      font-weight: 500;
      letter-spacing: -2px;
      line-height: 1;
      margin-bottom: 1rem;
    }
    
    .product_tag-nido::before {
      content: "nido";
    }
    .product_tag-infanzia::before {
      content: "scuola dell'infanzia";
    }
    .product_tag-primaria::before {
      content: "scuola primaria";
    }
    .product_tag-secondaria_primo::before {
      content: "scuola secondaria di primo grado";
    }
    .product_tag-primaria_secondaria_primo::before {
      content: "scuola primaria e secondaria di primo grado";
    }
    .product_tag-secondaria_secondo::before {
      content: "scuola secondaria di secondo grado";
    }
    
    
    
    
    .blocco-programma {
      
      .wp-block-columns {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 230px));
        justify-content: center;
      }
      
      .wp-block-column {
        margin-bottom: 10px !important;
      }
      img{
        pointer-events: none;
      }
      a{
        text-decoration: none;
      }
      
      @media (max-width: 600px) {
        
        .wp-block-columns {
          grid-template-columns: repeat(3, minmax(0, 150px));
          gap: 24px 0px;
        }
      }
      @media (max-width: 454px) {
        
        .wp-block-columns {
          grid-template-columns: repeat(2, minmax(0, 150px));
          gap: 0;
          
          p{
            margin-block-start: 5px!important;
          }
        }
      }
    }
    
    
    
  }