/*Disabled time field when date field no value*/
.jet-form-builder input:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
}
/* Ensure all form fields go full-width esp on responsive devices */
.book-a-service-form input,
.book-a-service-form select,
.book-a-service-form textarea {
    max-width: 100% !important;
}
/* Turn underline border and text into Denza blue when focused */
.book-a-service-form input:focus,
.book-a-service-form select:focus,
.book-a-service-form textarea:focus{
    outline: none;
    border-color: var(--e-global-color-primary) !important;
    color: var(--e-global-color-primary) !important;
}
/* Remove 5px default padding from JetFormBuilder */
.jet-form-builder-row{
    padding: 0px;
}
/* Car model choices wrapper: horizontal layout with spacing and section spacing */
.denza--model-of-interest{
    display: flex;
    gap: 16px;
    margin-top: 0px !important;
    margin-bottom: 32px;
}
/* Car model card: make it the positioning context for overlays (text + check icon) */
.denza--model-of-interest .denza--car-model-of-choice{
    position: relative;
}
/* Card image (default): rounded corners, reserve border space (no layout shift), animate border change */
.denza--model-of-interest .denza--car-model-of-choice .denza--car-model-image img{ /*Normal State*/
    border-radius: 10px;
    border: 3px solid transparent;
    transition: border 0.25s ease;
}
/* Card image (hover): show highlight border + shadow */
.denza--model-of-interest .denza--car-model-of-choice:hover .denza--car-model-image img{ /*Hover State*/
    border: 3px solid #C89B5A;
    box-shadow: 0 14px 30px 0 rgba(0, 0, 0, 0.25);
}
/* Card image (selected): keep the same highlight as hover */
.denza--model-of-interest .denza--car-model-of-choice.is-checked .denza--car-model-image img{ /*Checked State*/
    border: 3px solid #C89B5A;
    box-shadow: 0 14px 30px 0 rgba(0, 0, 0, 0.25);
}
/* Selected check icon overlay */
.denza--model-of-interest .denza--car-model-of-choice.is-checked .denza--car-model-image:before{ /*Checked State*/
    position: absolute;
    right: 14px;
    top: 12.992px;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url('/wp-content/uploads/2026/01/white-circle-check.svg'); 
    background-size: cover; 
    background-repeat: no-repeat;
}
/* Model text overlay position (bottom-left of image) */
.denza--model-of-interest .denza--car-model-of-choice .denza--model-content{
    position: absolute;
    bottom: 12px;
    left: 24px;
}
/* Model name typography (Elementor globals) */
.denza--model-of-interest .denza--car-model-of-choice .denza--model-content .denza--model-name{/*Car Model Name CSS*/
    font-family: var(--e-global-typography-db38a03-font-family), Sans-serif;
    font-size: var(--e-global-typography-db38a03-font-size) 1rem;
    font-weight: var(--e-global-typography-db38a03-font-weight);
    line-height: var(--e-global-typography-db38a03-line-height);
    color: var(--e-global-color-6a5c0c3);
}
/* Model description typography (Elementor globals) */
.denza--model-of-interest .denza--car-model-of-choice .denza--model-content .denza--model-descripton{/*Car Text Description CSS*/
    font-family: var(--e-global-typography-de45a19-font-family), Sans-serif;
    font-size: var(--e-global-typography-de45a19-font-size);
    font-weight: var(--e-global-typography-de45a19-font-weight);
    line-height: var(--e-global-typography-de45a19-line-height);
    color: #FFFFFFBF;
}
/* Submit button: smooth hover ring transition */
.denza--form-submit-btn{
    transition: box-shadow 0.25s ease, -webkit-box-shadow 0.25s ease, -moz-box-shadow 0.25s ease;
}
/* Submit button hover: subtle blue ring */
.denza--form-submit-btn:hover{ /*Submit button hover state*/
    box-shadow: 0px 0px 0px 1px rgba(0, 48, 135, 1);
    -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 48, 135, 1);
    -moz-box-shadow: 0px 0px 0px 1px rgba(0,48,135,1);
}
/* Checkbox/radio label: align to top for multi-line labels */
.book-a-service-form .jet-form-builder__field-wrap.checkradio-wrap span{
    display: flex;
    align-items: start;
}
/* Label links: underline and inherit color */
.book-a-service-form .agreement-link {
  text-decoration: underline;
  color: inherit;
  transition: color 200ms ease;
}
/* Label links hover: Elementor primary color */
.book-a-service-form .agreement-link:hover{
  color: var( --e-global-color-primary );
}
/* Remove WP dotted focus outline inside this form */
.book-a-service-form input:focus,
.book-a-service-form select:focus,
.book-a-service-form textarea:focus{
  outline: none !important;
}

/* Tablet and below: center the first wrapper inside text-field rows; keep car cards in one row */
@media (max-width: 1024px){
    .book-a-service-form .jet-form-builder-row.field-type-text-field div:nth-child(1){
        display: flex;
        justify-content: center;
    }
    .denza--model-of-interest{
        flex-direction: row;
        flex-wrap: nowrap;
    }
}
/* Small mobile: stack car cards vertically */
@media (min-width: 360px) and (max-width: 663px){
    .denza--model-of-interest{
        flex-direction: column;
    }
    .denza--model-of-interest .denza--car-model-of-choice{
        flex-basis: auto !important;
    }
}
/* Large mobile: car cards back to horizontal */
@media (min-width: 664px) and (max-width: 767px){
    .denza--model-of-interest{
        flex-direction: row;
    }
    .denza--model-of-interest .denza--car-model-of-choice{
        flex-basis: auto !important;
    }
}
/* Mobile / iPad portrait: tighten Gutenberg column row gaps and spacing between groups */
@media (max-width: 821px){
    /* Remove vertical gap inside these grouped columns and add consistent bottom spacing */
    .book-a-service-form .col-honorifics-name,
    .book-a-service-form .col-email-phone-number, .book-a-service-form .col-preffered-date-time, .book-a-service-form .col-vehicle-reg-num-preferred-date-time {
        row-gap: 0 !important;
        margin-bottom: 12px !important;
    }
    /* Add spacing between stacked columns (honorific/email/vehicle-reg/date/time) */
    .book-a-service-form .col-honorifics, .col-email, .col-preferred-date, .col-preferred-date {
        margin-bottom: 12px !important;
        align-items: center;
    }
    .book-a-service-form .col-vehicle-reg-num{
        margin-bottom: 0px !important;
    }
    /* Vehicle + preferred date/time group: full width and extra bottom spacing */
    .book-a-service-form .col-vehicle-reg-num-preferred-date-time {
        margin-bottom: 32px;
        flex-basis: 100% !important;
        max-width: 100% !important;
        row-gap: 0;
    }
}