:root {
    /* Colori */
    --rz-color-text: #272727;
    --rz-color-text-light: #fff;
    --rz-color-primary: #11880f;
    --rz-color-bg-light: #ffffffc9;
    
    /* Dimensioni testo */
    --rz-font-size-normal: 20px;
    --rz-font-size-large: 25px;
    --rz-font-size-xl: 30px;
    
    /* Spaziatura */
    --rz-padding-sm: 5px;
    --rz-padding-md: 10px;
    --rz-padding-lg: 20px;
    
    /* Bordi */
    --rz-border-radius: 25px;
    
    /* Layout */
    --rz-input-height: 50px;
    --rz-textarea-height: 100px;
    --rz-form-gap: 30px;
    
    /* Responsive breakpoints */
    --rz-tablet-landscape-min: 1025px;
    --rz-tablet-landscape-max: 1366px;
    --rz-tablet-portrait-min: 768px;
    --rz-tablet-portrait-max: 1024px;
    --rz-mobile-max: 767px;
}

/* Hidden fields */
#rz-contact-form-container .jet-form-row:has([type="hidden"]) {
    display: none !important;
}
#rz-contact-form-container .jet-form-col:has([type="hidden"]) {
    display: none !important;
}
#rz-contact-form-container .jet-form-col__end:has([type="hidden"]) {
    display: none !important;
}
#rz-bike-listing-section .jet-listing-grid__slider-icon {
    display: none !important;
}

/* Contact form */
#rz-contact-form-container .jet-form__label-text {
    line-height: 1.2em;
    padding-right: var(--rz-padding-md);
    padding-left: 10px;
}

.rz_submit_contact_form {
    transition: 1s;
}
.rz_submit_contact_form:hover{
    background-color: var(--rz-color-primary) !important;
    color: var(--rz-color-text-light) !important;
}

#rz-contact-form-topcontainer img {
    mix-blend-mode: unset;
}
#rz-contact-form-container input {
    font-size: var(--rz-font-size-normal);
    padding: var(--rz-padding-md);
    border-radius: var(--rz-border-radius);
    margin-bottom: 0px;
    background-color: var(--rz-color-bg-light);
}
#rz-contact-form-container input::placeholder {
    font-family: inherit;
    font-size: inherit;
    font-weight: 500;
    opacity: 0.3;
    color: var(--rz-color-text);
}
#rz-contact-form-container textarea {
    font-size: var(--rz-font-size-normal);
    min-height: var(--rz-textarea-height);
    border-radius: var(--rz-border-radius);
    padding: var(--rz-padding-md);
    margin-bottom: 0px;
    background-color: var(--rz-color-bg-light);
}
#rz-contact-form-container textarea::placeholder {
    font-family: inherit;
    font-size: inherit;
    font-weight: 500;
    opacity: 0.3;
    color: var(--rz-color-text);
}
#rz-contact-form-container .rz_privacy_check {
    display: flex !important;
    flex-direction: row;
    align-items: center !important;
    justify-content: flex-start;
    gap: 0px;
    align-content: center !important;
    flex-wrap: wrap !important;
}
.rz_privacy_check .jet-form-col__start{
    order: 2;
    flex: unset !important;
    max-width: unset !important;
}
.rz_privacy_check .jet-form-col__end{
    order: 1;
    flex: unset !important;
}
.rz_privacy_check .jet-form__label-text {
    color: var(--rz-color-text-light);
    font-family: inherit;
    font-size: var(--rz-font-size-large);
    font-weight: 500;
}
.rz_privacy_check input {
    width: 20px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0px;
    padding: 0px !important;
}
#rz-contact-form-container .jet-form {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: var(--rz-form-gap);
}
#rz-contact-form-container .jet-form-col {
    min-height: 0px;
    padding: unset !important;
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
    max-width: 100%;
    flex: unset !important;
    flex-grow: 1 !important;
}
#rz-contact-form-container .jet-form-row {
    display: flex;
    margin: unset !important;
    padding: unset !important;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: inherit;
}
#rz-contact-form-container .rz_privacy_check input {
    height: unset;
}
#rz-contact-form-container .jet-form-row--submit {
    display: flex;
    justify-content: center;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
}
.rz_submit_contact_form {
    background-color: var(--rz-color-bg-light);
    color: var(--rz-color-text);
    font-family: Arial;
    font-size: var(--rz-font-size-normal);
    font-weight: 500;
    padding: var(--rz-padding-lg);
    border-radius: var(--rz-border-radius);
    text-align: center;
}
.bricks-image-caption {
    display: none !important;
}
/** TABLET LANDSCAPE **/
@media only screen and (min-width: var(--rz-tablet-landscape-min)) and (max-width: var(--rz-tablet-landscape-max)) {
    :root {
        --rz-font-size-normal: 1.5vw;
        --rz-font-size-large: 1.5vw;
        --rz-font-size-xl: 16px;
        --rz-border-radius: 1vw;
        --rz-textarea-height: 15vw;
    }
    
    #rz-contact-form-container .rz_privacy_check input {
        transform: scale(1.5);
    }

    .rz_submit_contact_form {
        margin-top: 0px;
        padding-top: var(--rz-padding-sm);
        padding-bottom: var(--rz-padding-sm);
    }
}
/** TABLET PORTRAIT **/
@media only screen and (min-width: var(--rz-tablet-portrait-min)) and (max-width: var(--rz-tablet-portrait-max)) {
    :root {
        --rz-font-size-normal: 1.5vw;
        --rz-font-size-large: 1.5vw;
        --rz-font-size-xl: 16px;
        --rz-border-radius: 1vw;
        --rz-textarea-height: 15vw;
    }
    
    #rz-contact-form-container .rz_privacy_check input {
        transform: scale(1);
    }

    .rz_submit_contact_form {
        margin-top: 0px;
        padding-top: var(--rz-padding-sm);
        padding-bottom: var(--rz-padding-sm);
    }
}
/** MOBILE **/
@media only screen and (max-width: 767px) {
    :root {
        --rz-font-size-normal: 18px;
        --rz-font-size-large: 20px;
        --rz-font-size-xl: 16px;
        --rz-border-radius: 20px;
    }

    .rz_listing_box_text {
        display: none !important;
    }

    #rz-contact-form-container .jet-form-row--submit {
        flex-direction: column;
    }

    #rz-contact-form-container .jet-form-row--submit .jet-form-col {
        width: 100%;
    }

    #rz-bike-listing-section .jet-listing-grid__slider-icon {
        display: block !important;
        border-radius: 100%;
    }

    .rz_privacy_check .jet-form__label-text {
        font-size: var(--rz-font-size-small);
    }
}