/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


/* @link https://utopia.fyi/clamp/calculator?a=768,1240,60—140 */


@import url('https://fonts.cdnfonts.com/css/crista');

h1,h2,h3,h4,h5,.crista{
	font-family: 'Crista', sans-serif!important;
}
h1{
    font-size: var(--fluid-60-140)!important;
}
h2{
    font-size: var(--fluid-48-108)!important;
}
h3{
    font-size: var(--fluid-40-60)!important;
}
h4{
    font-size: var(--fluid-32-48)!important;
}
h5{
    font-size: var(--fluid-24-28)!important;
}

.antonio{
	font-family: 'Antonio', sans-serif!important;
}

.p24,
.p24 p{
    font-size: var(--fluid-18-24)!important;
}

.p28,
.p28 p{
    font-size: var(--fluid-18-28)!important;
}

.p32,
.p32 p{
    font-size: var(--fluid-28-32)!important;}

.p36,
.p36 p{
    font-size: var(--fluid-18-36)!important;}

:root {
  --fluid-60-140: clamp(60px, -70.1695px + 16.9492vw, 140px);
  --fluid-48-108: clamp(48px, -49.6271px + 12.7119vw, 107px);
  --fluid-40-60: clamp(40px, 7.4576px + 4.2373vw, 60px);
  --fluid-32-48: clamp(32px, 5.9661px + 3.3898vw, 48px);
  --fluid-24-28: clamp(24px, 17.4915px + 0.8475vw, 28px);
  --fluid-18-28: clamp(18px, 1.7288px + 2.1186vw, 28px);
  --fluid-18-36: clamp(18px, -11.2881px + 3.8136vw, 36px);
  --fluid-28-32: clamp(28px, 21.4915px + 0.8475vw, 32px);
  --fluid-18-24: clamp(18px, 8.2373px + 1.2712vw, 24px);
}


.ht--grid-testimonial-wrapper{
    background: #DEDFD8;
    box-shadow: 0 0 20px 0 #929292;
    padding: 48px;
}

.ht--form-wrapper{
    background: #DEDFD8;
    box-shadow: 0 0 40px 0 #929292;
    padding: 80px;
}

.gform_heading{
    display: none;
}

.gform_wrapper.gravity-theme .gfield {
    border-radius: 12px;
    background: #EDEEE9;
    padding: 24px 40px;
}

.gform-body.gform_body input{
    box-shadow: unset;
}

/* Applica queste regole solo su schermi piccoli (es. smartphone) */
@media (max-width: 768px) {
    .ht--carousel-item {
        display: flex !important; /* Forza l'affiancamento anche su mobile */
        flex-direction: row !important; 
        align-items: flex-start;
        gap: 15px;
    }

    .ht--carousel-item .w-image {
        flex: 0 0 40% !important;
        max-width: 40% !important;
    }

    .ht--carousel-item .wpb_text_column {
        flex: 1;
    }
    
    /* Ridimensiona il font se il testo risulta troppo compresso */
    .ht--carousel-item .wpb_wrapper p {
        font-size: 14px; 
        line-height: 1.2;
    }
    .ht--form-wrapper{
        padding: 16px 0px;
    }
}