/* Applicazione del font Quicksand */

body {
    font-family: 'Quicksand' !important;
    line-height:30px !important;
    font-size: 20px !important;
}

/* Grassetto per tag b e strong */
b, strong {
    font-weight: 700 !important;
}

/* Stili per i link */
a {
    background-color: transparent !important;
    color: #c36 !important;
    text-decoration: none !important;
}

.titolo {
    font-weight: 800;
    margin-bottom: 48px !important;
    font-size: 45px !important;
}

/* Forza font-size per tutti i titoli */
h1, h2, h3, h4, h5, h6 {
    font-size: inherit !important;
}

/* Forza font-size per il testo base (esclude form, colonne e cookie banner) */
body p:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body div:not([style*="font-size"]):not(.wp-block-group):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body span:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body li:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body td:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body th:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *),
body label:not([style*="font-size"]):not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(.iubenda-cs-container *) {
    font-size: 20px !important;
}

/* Titoli specifici con font-size fisso */
.wp-block-heading,
.wp-block-post-title,
.wp-block-group h1,
.wp-block-group h2,
.wp-block-group h3 {
    font-size: 45px !important;
    font-weight: 800 !important;
}



/* Forza 24px per elementi con clamp che dovrebbero essere 24px (esclude form, footer e cookie banner) */
p:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
div:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.wp-block-site-footer *):not(.iubenda-cs-container *),
span:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
li:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
td:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
th:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
label:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
.wp-block-paragraph:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *),
.wp-block-group p:not(.forminator-field):not(.forminator-radio):not(.forminator-checkbox):not(.wp-block-columns *):not(footer *):not(.iubenda-cs-container *) {
    font-size: 24px !important;
}

/* Bordo contenitore form */
.forminator-custom-form {
    border: 1px solid #ddd !important;
    border-radius: 12px !important;
    padding: 30px !important;
    width: 647px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Responsive form container */
@media (max-width: 768px) {
    .forminator-custom-form {
        width: 100% !important;
        padding: 20px !important;
        margin: 0 10px !important;
    }
}

@media (max-width: 480px) {
    .forminator-custom-form {
        padding: 15px !important;
        margin: 0 5px !important;
    }
}

/* Aumenta la colonna del form */
.wp-block-column:has(.forminator-custom-form) {
    flex-basis: 708.5px !important;
    max-width: 708.5px !important;
}

/* Responsive column */
@media (max-width: 768px) {
    .wp-block-column:has(.forminator-custom-form) {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
}

/* Stili input e label form */
.forminator-input,
.forminator-field-name input,
.forminator-field-email input,
.forminator-field-phone input,
.forminator-field-text input {
    font-size: 16px !important;
    font-variant-ligatures: none !important;
    font-weight: 400 !important;
    border: 1px solid #ddd !important;
    border-radius: 8px !important;
    padding: 12px !important;
    color: #333 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Responsive inputs */
@media (max-width: 768px) {
    .forminator-input,
    .forminator-field-name input,
    .forminator-field-email input,
    .forminator-field-phone input,
    .forminator-field-text input {
        font-size: 16px !important; /* Previene zoom su iOS */
        padding: 10px !important;
    }
}

@media (max-width: 480px) {
    .forminator-input,
    .forminator-field-name input,
    .forminator-field-email input,
    .forminator-field-phone input,
    .forminator-field-text input {
        padding: 8px !important;
    }
}

/* Rimuove margin dalle label */
.forminator-ui.forminator-custom-form[data-design=default] .forminator-label,
.forminator-ui.forminator-custom-form[data-design=basic] .forminator-label {
    margin: 0 !important;
}

.forminator-radio-label {
    font-size: 14px !important;
    font-variant-ligatures: none !important;
    font-weight: 400 !important;
    color: #333 !important;
}

/* Stili pallini radio button */
.forminator-radio input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
}

.forminator-radio .forminator-radio-bullet,
.forminator-custom-form .forminator-radio .forminator-radio-bullet {
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
    border-width: 1px !important;
    border-style: solid !important;
    border-color: #777771 !important;
    background-color: #EDEDED !important;
    border-radius: 40px !important;
    position: relative !important;
    display: block !important;
}

.forminator-radio .forminator-radio-bullet:before,
.forminator-custom-form .forminator-radio .forminator-radio-bullet:before {
    content: " " !important;
    width: 10px !important;
    height: 10px !important;
    background-color: #17A8E3 !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease !important;
}

.forminator-radio input[type="radio"]:checked + .forminator-radio-bullet:before,
.forminator-custom-form .forminator-radio input[type="radio"]:checked + .forminator-radio-bullet:before {
    opacity: 1 !important;
}

/* Riduce lo spazio tra il testo privacy e i radio button */
.forminator-field.forminator-merge-tags p{
    margin-bottom: 0 !important;
}

/* Riduce spazio sopra i radio button della privacy */
.privacy [role="radiogroup"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Stili pulsante form */
.forminator-button-submit {
    background-color: #0A50D4 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    display: block !important;
    padding: 10px !important;
    max-width: 210px !important;
    width: 210px !important;
    line-height: 1em !important;
    border-radius: 8px !important;
    margin: 0 auto !important;
    color: #fff !important;
    text-decoration: none !important;
    border: none !important;
    outline: 0 !important;
    box-shadow: rgba(0, 0, 0, 0.6) 0px 1px 4px 0px !important;
    transition: all 0.3s ease !important;
}

.forminator-button-submit:hover {
    box-shadow: rgba(0, 0, 0, 0.8) 0px 2px 8px 0px !important;
    transform: translateY(-2px);
}

.forminator-button-submit:active {
    transform: translateY(0px);
    box-shadow: rgba(0, 0, 0, 0.6) 0px 1px 4px 0px !important;
}

/* Responsive button */
@media (max-width: 768px) {
    .forminator-button-submit {
        max-width: 100% !important;
        width: 100% !important;
        padding: 12px !important;
    }
}

@media (max-width: 480px) {
    .forminator-button-submit {
        padding: 10px !important;
    }
}

/* Responsive layout generale */
@media (max-width: 768px) {
    .wp-block-group.content-landing {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

@media (max-width: 480px) {
    .wp-block-group.content-landing {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
}