/* Classic Showcase Contact Form - compact layout */

/* Applies only when this additional stylesheet is loaded */
#container {
    width: auto;
    max-width: 590px;
    padding: 12px 15px 0;
}

/* Preserve the original charcoal information panel */
#info {
    margin-bottom: 12px;
    padding: 12px 15px;
}

#info h5 {
    margin-bottom: 9px;
}

#info #hours {
    width: 46% !important;
}

#info #location {
    width: 48% !important;
    box-sizing: border-box;
    padding-left: 15px !important;
}

#info p {
    margin: 4px 0;
}

/* Compact form layout */
.cs-contact-form label {
    margin-bottom: 5px;
}

.cs-contact-form input,
.cs-contact-form textarea,
.cs-contact-form select {
    box-sizing: border-box;
    max-width: 100%;
    margin-bottom: 10px;
}

.cs-contact-row {
    display: flex;
    gap: 16px;
}

.cs-contact-row .cs-contact-field {
    flex: 1;
    min-width: 0;
}

.cs-contact-field input,
.cs-contact-field select,
.cs-contact-field textarea {
    width: 100%;
}

.cs-contact-field textarea {
    height: 85px;
    resize: vertical;
}

.cs-contact-verification {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.cs-contact-verification .captcha-verification {
    flex: 1;
    min-width: 210px;
}

.cs-contact-verification input[type="submit"] {
    margin-bottom: 10px;
}

/* Narrow windows and phones */
@media (max-width: 480px) {
    #container {
        padding: 10px;
    }

    .cs-contact-row {
        display: block;
    }

    #info #hours,
    #info #location {
        width: 100% !important;
        float: none !important;
    }

    #info #location {
        border-left: none !important;
        padding-left: 0 !important;
        margin-top: 10px;
    }
}
