/*
 * Skydive India Booking 2.34.0: website inquiry forms ([skydive_inquiry_form]).
 *
 * The form reuses the tandem checkout's markup and classes, so sdb-public.css
 * already styles it. The checkout's cross-theme hardening in sdb-public-compat.css
 * is scoped to #sdb-booking-app, an id the inquiry form must not use (the booking
 * script starts on it). Section 1 mirrors those rules for .sdb-inquiry-wrapper so
 * both forms look identical; section 2 holds the few inquiry-only pieces.
 *
 * 2.34.1: mobile-first field grid (one column on phones, two on wide
 * screens), Yes/No pills for radio questions, "(optional)" labels, 16px
 * inputs at every width, and a little more room around section headings.
 * The form can have any number of steps: the progress header shows every
 * label on wide screens and only the current one on phones.
 */

/* ─── 1. Parity with the tandem checkout ─── */

.sdb-inquiry-wrapper.sdb-booking-wrapper {
    max-width: 760px !important;
    padding-inline: 16px !important;
    container: sdb-inquiry / inline-size;
}

.sdb-inquiry-wrapper :where(button, input, select, textarea) {
    font-family: inherit !important;
    letter-spacing: normal !important;
    text-shadow: none !important;
    text-transform: none !important;
}

.sdb-inquiry-wrapper [hidden] { display: none !important; }
.sdb-inquiry-wrapper .sdb-inquiry-form { margin: 0; padding: 0; }

/* Progress: one circle and label per step, for any number of steps.
   Items sit at the top so each line meets the middle of the circles. */
.sdb-inquiry-wrapper .sdb-progress {
    align-items: flex-start !important;
    width: 100%;
    max-width: 600px;
    margin: 0 auto 16px !important;
    padding: 0 !important;
}
.sdb-inquiry-wrapper .sdb-progress-step {
    flex: 0 1 auto;
    min-width: 0;
}
.sdb-inquiry-wrapper .sdb-progress-step .sdb-step-label {
    max-width: 112px;
    text-align: center;
}
.sdb-inquiry-wrapper .sdb-step-number {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px;
    font-family: inherit !important;
    font-size: .8125rem !important;
    line-height: 1 !important;
}
.sdb-inquiry-wrapper .sdb-step-label {
    color: var(--sdb-text-2) !important;
    font-size: .75rem !important;
    line-height: 1.35 !important;
}
.sdb-inquiry-wrapper .sdb-progress-line {
    min-width: 16px;
    margin-top: 16px !important; /* half the 34px circle, less half the 2px line */
}
.sdb-inquiry-wrapper .sdb-progress-step.sdb-step-active .sdb-step-number {
    border-color: var(--sdb-brand) !important;
    background: var(--sdb-brand) !important;
    box-shadow: 0 0 0 5px #fff0d6 !important;
    color: var(--sdb-on-brand) !important;
}
.sdb-inquiry-wrapper .sdb-progress-step.sdb-step-done .sdb-step-number {
    border-color: var(--sdb-dark) !important;
    background: var(--sdb-dark) !important;
}
.sdb-inquiry-wrapper .sdb-progress-line.sdb-line-active { background: var(--sdb-brand) !important; }

/* Step card and headings */
.sdb-inquiry-wrapper .sdb-step-card {
    width: 100% !important;
    min-width: 0;
    padding: 24px 26px !important;
    overflow: visible;
    border-color: var(--sdb-border) !important;
    border-radius: var(--sdb-radius-lg) !important;
    background: var(--sdb-bg) !important;
    box-shadow: var(--sdb-shadow-sm) !important;
}
.sdb-inquiry-wrapper .sdb-step-card:focus-within { box-shadow: var(--sdb-shadow-md) !important; }
.sdb-inquiry-wrapper .sdb-form-title {
    margin: 0 0 8px !important;
    color: var(--sdb-text) !important;
    font-family: var(--sdb-display) !important;
    font-size: 1.75rem !important;
    font-weight: 750 !important;
    letter-spacing: -.025em !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere;
}
.sdb-inquiry-wrapper .sdb-form-subtitle {
    max-width: 60ch;
    margin: 0 0 18px !important;
    color: var(--sdb-text-2) !important;
    font-size: .9375rem !important;
    line-height: 1.55 !important;
}
.sdb-inquiry-wrapper .sdb-form-eyebrow {
    margin: 0 0 10px !important;
    color: var(--sdb-brand-ink) !important;
    font-size: .75rem !important;
    line-height: 1.3 !important;
}
.sdb-inquiry-wrapper .sdb-required { color: var(--sdb-brand-ink) !important; }

/* Fields */
.sdb-inquiry-wrapper .sdb-form-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: 12px !important;
    min-width: 0;
}
.sdb-inquiry-wrapper .sdb-field-group {
    min-width: 0;
    margin-bottom: 12px !important;
}
.sdb-inquiry-wrapper .sdb-label {
    margin: 0 0 6px !important;
    color: var(--sdb-text) !important;
    font-size: .8125rem !important;
    font-weight: 650 !important;
    line-height: 1.4 !important;
}
.sdb-inquiry-wrapper .sdb-field-hint {
    margin: 0 0 6px !important;
    color: var(--sdb-text-2) !important;
    font-size: .8125rem !important;
    line-height: 1.45 !important;
}
.sdb-inquiry-wrapper .sdb-input {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid var(--sdb-border) !important;
    border-radius: var(--sdb-radius-md) !important;
    background-color: var(--sdb-bg) !important;
    box-shadow: none !important;
    color: var(--sdb-text) !important;
    /* 16px at every width: easy to read, and iOS does not zoom on focus. */
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    text-indent: 0 !important;
}
.sdb-inquiry-wrapper .sdb-input::placeholder {
    color: #64748b !important;
    opacity: 1 !important;
}
.sdb-inquiry-wrapper .sdb-input:focus {
    border-color: var(--sdb-brand-ink) !important;
    background-color: #fff !important;
    box-shadow: 0 0 0 4px rgba(248, 159, 34, .24) !important;
}
.sdb-inquiry-wrapper input[type="date"].sdb-input {
    padding-right: 42px !important;
    color-scheme: light;
}
.sdb-inquiry-wrapper .sdb-input[aria-invalid="true"] {
    border-color: var(--sdb-error) !important;
    box-shadow: 0 0 0 3px rgba(185, 28, 28, .12) !important;
}
.sdb-inquiry-wrapper .sdb-checkbox-label {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: start !important;
    gap: 10px !important;
    margin: 0 !important;
    color: var(--sdb-text-2) !important;
    font-size: .8125rem !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}
.sdb-inquiry-wrapper .sdb-checkbox-label input[type="checkbox"] {
    appearance: auto !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
}

/* Section headings (same look as the checkout's "Jumper names" block) */
.sdb-inquiry-wrapper .sdb-inline-section-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}
.sdb-inquiry-wrapper .sdb-inline-section-heading h3,
.sdb-inquiry-wrapper .sdb-inline-section-heading p { margin: 0 !important; }
.sdb-inquiry-wrapper .sdb-inline-section-heading h3 {
    color: var(--sdb-text) !important;
    font-family: var(--sdb-display) !important;
    font-size: 1.0625rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}
.sdb-inquiry-wrapper .sdb-inline-section-heading p {
    color: var(--sdb-text-2) !important;
    font-size: .8125rem !important;
    line-height: 1.45 !important;
}

/* Buttons */
.sdb-inquiry-wrapper .sdb-form-actions { margin-top: 16px !important; }
.sdb-inquiry-wrapper .sdb-btn {
    appearance: none !important;
    min-height: 44px;
    border-radius: var(--sdb-radius-md) !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}
.sdb-inquiry-wrapper .sdb-btn-primary {
    border-color: var(--sdb-brand) !important;
    background: var(--sdb-brand) !important;
    box-shadow: 0 8px 20px rgba(154, 76, 0, .18) !important;
    color: var(--sdb-on-brand) !important;
}
.sdb-inquiry-wrapper .sdb-btn-secondary {
    border: 1px solid var(--sdb-border) !important;
    background: #fff !important;
    color: var(--sdb-text) !important;
}
.sdb-inquiry-wrapper .sdb-btn:disabled {
    opacity: .6;
    cursor: progress;
    box-shadow: none !important;
    transform: none !important;
}
@media (hover: hover) and (pointer: fine) {
    .sdb-inquiry-wrapper .sdb-btn-primary:hover:not(:disabled) {
        border-color: var(--sdb-primary-dark) !important;
        background: var(--sdb-primary-dark) !important;
        box-shadow: 0 10px 24px rgba(154, 76, 0, .22) !important;
        color: var(--sdb-on-brand) !important;
        transform: translateY(-1px) !important;
    }
    .sdb-inquiry-wrapper .sdb-btn-secondary:hover:not(:disabled) {
        border-color: var(--sdb-text-3) !important;
        background: var(--sdb-bg-soft) !important;
        color: var(--sdb-text) !important;
    }
}

/* ─── 2. Inquiry-only pieces ─── */

/* Each question group sits in a soft box, like the checkout's jumper-names block. */
.sdb-inquiry-wrapper .sdb-inquiry-section {
    min-width: 0;
    margin: 18px 0 14px;
    padding: 16px;
    border: 1px solid var(--sdb-border);
    border-radius: var(--sdb-radius-md);
    background: var(--sdb-bg-soft);
}
.sdb-inquiry-wrapper .sdb-inquiry-section > .sdb-form-row:last-child > .sdb-field-group,
.sdb-inquiry-wrapper .sdb-inquiry-section > .sdb-field-group:last-child { margin-bottom: 0 !important; }
.sdb-inquiry-wrapper .sdb-form-status:empty { min-height: 0; margin-top: 0; }

/* Field grid, mobile first: one column; two columns for short fields once
   the form is wide enough (see Responsive). Choices and uploads always take
   the full width. A field hidden by show_if leaves no gap: the grid closes up. */
.sdb-inquiry-wrapper .sdb-inquiry-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: end;
    column-gap: 14px;
    row-gap: 0;
    min-width: 0;
    margin-bottom: -12px; /* cancels the last row's field margin */
}
.sdb-inquiry-wrapper .sdb-inquiry-grid > .sdb-field-group { min-width: 0; }
.sdb-inquiry-wrapper .sdb-inquiry-grid > .sdb-inquiry-full { grid-column: 1 / -1; }

/* "(optional)" after the label, in place of the asterisk */
.sdb-inquiry-wrapper .sdb-inquiry-optional {
    margin-left: 2px;
    color: var(--sdb-text-2) !important;
    font-size: .75rem !important;
    font-weight: 400 !important;
}

/* Radio questions (e.g. Yes / No): a fieldset whose options are large pills */
.sdb-inquiry-wrapper fieldset.sdb-inquiry-radio-group {
    min-width: 0;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
}
.sdb-inquiry-wrapper .sdb-inquiry-radio-group > legend.sdb-label {
    display: block;
    float: left; /* lets the legend sit in normal flow in every browser */
    width: 100%;
    padding: 0 !important;
}
.sdb-inquiry-wrapper .sdb-inquiry-radio-group > :not(legend) { clear: both; }
.sdb-inquiry-wrapper .sdb-inquiry-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.sdb-inquiry-wrapper .sdb-inquiry-pill {
    display: inline-flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 110px;
    max-width: 200px;
    min-height: 48px;
    margin: 0 !important;
    padding: 10px 20px;
    border: 1.5px solid var(--sdb-border);
    border-radius: var(--sdb-radius-pill);
    background: var(--sdb-bg);
    color: var(--sdb-text) !important;
    font-size: 1rem !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: border-color .15s ease, background-color .15s ease;
}
.sdb-inquiry-wrapper .sdb-inquiry-pill input[type="radio"] {
    appearance: auto !important;
    flex-shrink: 0;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    accent-color: var(--sdb-brand);
    cursor: pointer;
}
.sdb-inquiry-wrapper .sdb-inquiry-pill:has(input:checked) {
    border-color: var(--sdb-brand);
    background: var(--sdb-primary-soft);
    box-shadow: inset 0 0 0 1px var(--sdb-brand);
}
.sdb-inquiry-wrapper .sdb-inquiry-pill:has(input:focus-visible) {
    outline: 3px solid rgba(248, 159, 34, .45);
    outline-offset: 2px;
}
.sdb-inquiry-wrapper .sdb-inquiry-invalid .sdb-inquiry-pill { border-color: var(--sdb-error); }
@media (hover: hover) and (pointer: fine) {
    .sdb-inquiry-wrapper .sdb-inquiry-pill:hover { border-color: var(--sdb-text-3); }
    .sdb-inquiry-wrapper .sdb-inquiry-pill:has(input:checked):hover { border-color: var(--sdb-brand); }
}

/* The step footer stays in the page flow (never sticky). */
.sdb-inquiry-wrapper .sdb-form-actions { position: static !important; }

/* License type: A / B / C / D as large tap targets */
.sdb-inquiry-wrapper .sdb-inquiry-choices {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.sdb-inquiry-wrapper .sdb-inquiry-choices .sdb-checkbox-label {
    align-items: center !important;
    gap: 8px !important;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid var(--sdb-border);
    border-radius: var(--sdb-radius-md);
    background: var(--sdb-bg);
    color: var(--sdb-text) !important;
    font-size: .9375rem !important;
    font-weight: 650 !important;
    cursor: pointer;
}
.sdb-inquiry-wrapper .sdb-inquiry-choices .sdb-checkbox-label input[type="checkbox"] { margin: 0 !important; }
.sdb-inquiry-wrapper .sdb-inquiry-choices .sdb-checkbox-label:has(input:checked) {
    border-color: var(--sdb-brand);
    background: var(--sdb-primary-soft);
}
.sdb-inquiry-wrapper .sdb-inquiry-invalid .sdb-inquiry-choices .sdb-checkbox-label { border-color: var(--sdb-error); }
.sdb-inquiry-wrapper .sdb-inquiry-other {
    max-width: 360px;
    margin-top: 10px;
}

/* Uploads */
.sdb-inquiry-wrapper input[type="file"].sdb-input {
    padding: 6px 8px !important;
    line-height: 2 !important;
    cursor: pointer;
}
.sdb-inquiry-wrapper input[type="file"].sdb-input::file-selector-button {
    margin: 0 12px 0 0;
    padding: 6px 14px;
    border: 1px solid var(--sdb-border);
    border-radius: var(--sdb-radius-sm);
    background: var(--sdb-bg-mute);
    color: var(--sdb-text);
    font: inherit;
    font-weight: 650;
    cursor: pointer;
}
.sdb-inquiry-wrapper input[type="file"].sdb-input::-webkit-file-upload-button {
    margin: 0 12px 0 0;
    padding: 6px 14px;
    border: 1px solid var(--sdb-border);
    border-radius: var(--sdb-radius-sm);
    background: var(--sdb-bg-mute);
    color: var(--sdb-text);
    font: inherit;
    font-weight: 650;
    cursor: pointer;
}
.sdb-inquiry-wrapper .sdb-inquiry-file-meta {
    margin: 6px 0 0 !important;
    overflow-wrap: anywhere;
}
.sdb-inquiry-wrapper .sdb-inquiry-has-file .sdb-inquiry-file-meta {
    color: var(--sdb-success) !important;
    font-weight: 600;
}

/* Review list (built by sdb-inquiry.js with the checkout's order-summary rows) */
.sdb-inquiry-wrapper .sdb-inquiry-review {
    margin: 0 !important;
    padding: 4px 14px 8px !important;
    border-color: var(--sdb-border) !important;
    background: var(--sdb-bg) !important;
}
.sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-label { margin-top: 10px; }
.sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-row {
    align-items: flex-start;
    gap: 16px;
    padding: 5px 0;
    font-size: .8125rem;
}
.sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-row strong {
    max-width: 60%;
    text-align: right;
    overflow-wrap: anywhere;
}
.sdb-inquiry-wrapper .sdb-inquiry-consent { margin: 14px 0 0 !important; }

/* Success */
.sdb-inquiry-wrapper .sdb-inquiry-success { text-align: center; }
.sdb-inquiry-wrapper .sdb-inquiry-success .sdb-form-subtitle { margin-inline: auto !important; }
.sdb-inquiry-wrapper .sdb-inquiry-ref {
    margin: 0;
    color: var(--sdb-text-2);
    font-size: .875rem;
}
.sdb-inquiry-wrapper .sdb-inquiry-ref strong {
    display: inline-block;
    margin-left: 4px;
    padding: 4px 10px;
    border: 1px solid var(--sdb-brand-border);
    border-radius: var(--sdb-radius-pill);
    background: var(--sdb-primary-soft);
    color: var(--sdb-brand-ink);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    letter-spacing: .02em;
}

/* Spam trap (also positioned inline, so it stays hidden even without this file) */
.sdb-inquiry-hp {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* ─── Responsive (same breakpoints as the checkout) ─── */
/* Two columns for short fields when the form itself is wide enough... */
@container sdb-inquiry (min-width: 621px) {
    .sdb-inquiry-wrapper .sdb-inquiry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* ...or, in browsers without container queries, when the screen is. */
@supports not (container-type: inline-size) {
    @media (min-width: 781px) {
        .sdb-inquiry-wrapper .sdb-inquiry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
}
/* Phones: a compact progress header, the step numbers plus the current label. */
@container sdb-inquiry (max-width: 560px) {
    .sdb-inquiry-wrapper .sdb-progress-step:not(.sdb-step-active) .sdb-step-label { display: none !important; }
    .sdb-inquiry-wrapper .sdb-progress-step.sdb-step-active .sdb-step-label {
        display: block !important;
        max-width: none;
        white-space: nowrap;
    }
}
@supports not (container-type: inline-size) {
    @media (max-width: 600px) {
        .sdb-inquiry-wrapper .sdb-progress-step:not(.sdb-step-active) .sdb-step-label { display: none !important; }
        .sdb-inquiry-wrapper .sdb-progress-step.sdb-step-active .sdb-step-label {
            display: block !important;
            max-width: none;
            white-space: nowrap;
        }
    }
}
@container sdb-inquiry (max-width: 620px) {
    .sdb-inquiry-wrapper .sdb-step-card { padding: 24px 20px !important; }
    .sdb-inquiry-wrapper .sdb-form-row { grid-template-columns: minmax(0, 1fr); }
    .sdb-inquiry-wrapper .sdb-inline-section-heading { display: grid; gap: 3px; }
    .sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-row { display: grid; gap: 2px; }
    .sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-row strong { max-width: none; text-align: left; }
}
@container sdb-inquiry (max-width: 440px) {
    .sdb-inquiry-wrapper .sdb-step-card { padding: 20px 16px !important; }
    .sdb-inquiry-wrapper .sdb-inquiry-section { padding: 12px; }
}

/* Fallbacks for browsers without container queries */
@media (max-width: 780px) {
    .sdb-inquiry-wrapper .sdb-form-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
    .sdb-inquiry-wrapper.sdb-booking-wrapper { padding-inline: 12px !important; }
}
/* Inputs are 16px at every width (see .sdb-input above), so iOS never zooms on focus. */

/* ─── 3. v2.34.3: top banner, flat sections, compact spacing ───
   Owner: "design this page beautiful, add a banner at the top, make it
   compact". The banner photo is the page's Featured Image (a real Skydive
   India photo); without one it is a plain dark panel. Sections are no longer
   boxes inside the card: a thin rule separates them, which also saves space. */

.sdb-inquiry-wrapper.sdb-booking-wrapper { max-width: 780px !important; }

/* Banner */
.sdb-inquiry-wrapper .sdb-inq-banner {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 0 0 16px;
    border-radius: var(--sdb-radius-lg, 18px);
    background: var(--sdb-dark, #171a1f);
    color: #fffdf8;
}
.sdb-inquiry-wrapper .sdb-inq-banner-photo {
    position: absolute !important;
    inset: 0;
    z-index: -2;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    object-fit: cover;
    object-position: center 35%;
}
/* A dark tint on the text side keeps the white text readable; the photo
   shows clearly on the right. Phones get an even tint (text runs full width). */
.sdb-inquiry-wrapper .sdb-inq-banner.has-photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(15, 17, 21, .82) 0%, rgba(15, 17, 21, .62) 48%, rgba(15, 17, 21, .18) 100%);
}
.sdb-inquiry-wrapper .sdb-inq-banner-inner {
    max-width: 620px;
    padding: 26px 28px 20px;
}
.sdb-inquiry-wrapper .sdb-inq-banner-kicker {
    margin: 0 0 6px !important;
    color: var(--sdb-brand, #f89f22) !important;
    font-size: .75rem !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    line-height: 1.3 !important;
    text-transform: uppercase !important;
}
.sdb-inquiry-wrapper .sdb-inq-banner-title {
    margin: 0 0 8px !important;
    color: #fffdf8 !important;
    font-family: var(--sdb-display, inherit) !important;
    font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.125rem) !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    line-height: 1.12 !important;
    text-wrap: balance;
}
.sdb-inquiry-wrapper .sdb-inq-banner-text {
    max-width: 58ch;
    margin: 0 0 14px !important;
    color: rgba(255, 253, 248, .86) !important;
    font-size: .9375rem !important;
    line-height: 1.55 !important;
}
.sdb-inquiry-wrapper .sdb-inq-banner-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
    margin: 0 !important;
    padding: 12px 0 0 !important;
    border-top: 1px solid rgba(255, 253, 248, .2);
    list-style: none !important;
    color: rgba(255, 253, 248, .92) !important;
    font-size: .8125rem !important;
    line-height: 1.4 !important;
}
.sdb-inquiry-wrapper .sdb-inq-banner-facts li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.sdb-inquiry-wrapper .sdb-inq-banner-facts li::before { content: none !important; }
.sdb-inquiry-wrapper .sdb-inq-banner-facts strong { color: var(--sdb-brand, #f89f22) !important; font-weight: 800 !important; }

/* Progress: a little smaller */
.sdb-inquiry-wrapper .sdb-progress { margin: 0 auto 14px !important; }
.sdb-inquiry-wrapper .sdb-step-number {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px;
    font-size: .75rem !important;
}
.sdb-inquiry-wrapper .sdb-progress-line { margin-top: 14px !important; }
.sdb-inquiry-wrapper .sdb-progress-step.sdb-step-active .sdb-step-number { box-shadow: 0 0 0 4px #fff0d6 !important; }

/* Step card: tighter, one heading per step */
.sdb-inquiry-wrapper .sdb-step-card { padding: 20px 24px !important; }
.sdb-inquiry-wrapper .sdb-form-eyebrow { margin: 0 0 2px !important; }
.sdb-inquiry-wrapper .sdb-form-title {
    margin: 0 0 12px !important;
    font-size: 1.375rem !important;
}
.sdb-inquiry-wrapper .sdb-form-subtitle { margin: -6px 0 12px !important; font-size: .875rem !important; }

/* Sections: no box in a box, a thin rule between groups */
.sdb-inquiry-wrapper .sdb-inquiry-section {
    margin: 0 !important;
    padding: 14px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--sdb-border-soft, #e8e2d8) !important;
    border-radius: 0 !important;
    background: transparent !important;
}
.sdb-inquiry-wrapper .sdb-form-title + .sdb-inquiry-section,
.sdb-inquiry-wrapper .sdb-form-subtitle + .sdb-inquiry-section {
    padding-top: 0 !important;
    border-top: 0 !important;
}
.sdb-inquiry-wrapper .sdb-inquiry-section + .sdb-inquiry-section { margin-top: 16px !important; }
.sdb-inquiry-wrapper .sdb-inline-section-heading { margin-bottom: 10px !important; }
.sdb-inquiry-wrapper .sdb-inline-section-heading.sdb-inq-heading-sr { display: block !important; }
.sdb-inquiry-wrapper .sdb-inline-section-heading.sdb-inq-heading-sr p { margin: -4px 0 12px !important; }
.sdb-inquiry-wrapper .sdb-inq-sr {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Fields: columns line up at the top; help text sits under the box */
.sdb-inquiry-wrapper .sdb-inquiry-grid { align-items: start !important; column-gap: 16px !important; }
.sdb-inquiry-wrapper div.sdb-field-group.sdb-inquiry-field {
    display: flex !important;
    flex-direction: column;
    margin-bottom: 12px !important;
}
.sdb-inquiry-wrapper div.sdb-field-group.sdb-inquiry-field > .sdb-field-hint {
    order: 3;
    margin: 4px 0 0 !important;
    font-size: .75rem !important;
}
.sdb-inquiry-wrapper div.sdb-field-group.sdb-inquiry-field > .sdb-field-error { order: 4; }
/* No empty gap under a field until there is an error to show. The element
   stays in place (height 0), so screen readers still hear the message. */
.sdb-inquiry-wrapper .sdb-field-error:empty { min-height: 0 !important; margin: 0 !important; padding: 0 !important; }
.sdb-inquiry-wrapper .sdb-label { margin: 0 0 4px !important; }
.sdb-inquiry-wrapper .sdb-input {
    min-height: 42px !important;
    padding: 8px 12px !important;
}
.sdb-inquiry-wrapper .sdb-form-actions { margin-top: 8px !important; }

@media (max-width: 640px) {
    .sdb-inquiry-wrapper .sdb-inq-banner { margin-bottom: 12px; border-radius: 14px; }
    .sdb-inquiry-wrapper .sdb-inq-banner.has-photo::after { background: rgba(15, 17, 21, .66); }
    .sdb-inquiry-wrapper .sdb-inq-banner-inner { padding: 20px 18px 16px; }
    .sdb-inquiry-wrapper .sdb-inq-banner-text { font-size: .875rem !important; }
    .sdb-inquiry-wrapper .sdb-inq-banner-facts { gap: 4px 14px; font-size: .75rem !important; }
    .sdb-inquiry-wrapper .sdb-step-card { padding: 16px !important; }
    .sdb-inquiry-wrapper .sdb-form-title { font-size: 1.25rem !important; }
}
/* The browser already says "No file chosen"; our line appears once a file is picked. */
.sdb-inquiry-wrapper .sdb-inquiry-file:not(.sdb-inquiry-has-file) .sdb-inquiry-file-meta { display: none !important; }

/* ─── 4. v2.35.0: "Long text" questions ───
   A textarea with the same box as the other inputs, four lines tall, full
   width in the grid (.sdb-inquiry-full). It grows only downwards. In the
   review list a long answer sits under its label and keeps its line breaks. */
.sdb-inquiry-wrapper textarea.sdb-input.sdb-inquiry-textarea {
    height: auto; /* not !important, so dragging the corner still resizes it */
    min-height: 96px !important;
    max-height: none !important;
    line-height: 1.5 !important;
    resize: vertical !important;
    overflow-wrap: break-word;
}
.sdb-inquiry-wrapper .sdb-inquiry-review .sdb-os-row.sdb-inquiry-review-long {
    display: grid;
    gap: 2px;
}
.sdb-inquiry-wrapper .sdb-inquiry-review .sdb-inquiry-review-long strong {
    max-width: none;
    text-align: left;
    font-weight: 500;
    white-space: pre-line;
}

/* A question hidden by "Show only when" stays hidden: the flex rule above must not override [hidden]. */
.sdb-inquiry-wrapper div.sdb-field-group.sdb-inquiry-field[hidden] { display: none !important; }
