.inquiry-hero {
    position: relative;
    isolation: isolate;
    padding: 32px 20px 48px;
    color: #fff;
    background: #233d37;
}
.inquiry-photo, .inquiry-photo::after, .inquiry-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.inquiry-photo { z-index: -1; }
.inquiry-photo img { object-fit: cover; object-position: center 42%; }
.inquiry-photo::after { content: ""; background: rgb(12 30 26 / 30%); }
.brand-hitta24 .inquiry-photo::after { background: rgb(12 30 50 / 32%); }
.inquiry-card {
    max-width: 576px;
    margin-inline: auto;
    padding: 28px 24px 16px;
    background: rgb(14 35 29 / 89%);
    border-radius: 18px;
    color-scheme: light;
    scroll-margin-top: 12px;
    --inquiry-accent: #d4edab;
    --inquiry-ink: #193725;
}
.brand-hitta24 .inquiry-card {
    background: rgb(15 33 52 / 91%);
    --inquiry-ink: #142e46;
    --inquiry-accent: #d2e998;
}
.inquiry-card h1 {
    margin: 0 auto;
    color: #fff;
    text-align: center;
    font-size: clamp(32px, 3.7vw, 48px);
    line-height: 1.06;
    letter-spacing: -.035em;
    text-wrap: balance;
}
.inquiry-card .inquiry-intro {
    color: #fff;
    max-width: 44ch;
    margin: 12px auto 24px;
    text-align: center;
    font-size: 15px;
    line-height: 1.5;
}
.inquiry-card [hidden] { display: none !important; }
.inquiry-card fieldset { border: 0; min-width: 0; margin: 0; padding: 0; }
.inquiry-card legend, .inquiry-field label {
    color: #fff;
    display: block;
    padding: 0;
    margin: 0 0 7px;
    font: 650 16px/1.35 Inter, sans-serif;
    letter-spacing: normal;
}
.inquiry-card.is-enhanced .step-title, .inquiry-card .form-step-announcement {
    position: absolute;
    width: 1px; height: 1px;
    margin: -1px; padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.inquiry-card:not(.is-enhanced) [data-step] + [data-step] { margin-top: 24px; }
.inquiry-choices { display: grid; gap: 2px; }
.inquiry-choices label {
    display: flex;
    gap: 11px;
    align-items: center;
    min-height: 43px;
    padding: 10px 14px;
    background: #fff;
    color: #22332d;
    font: 600 15px/1.35 Inter, sans-serif;
    cursor: pointer;
}
.inquiry-choices input, .inquiry-consent input {
    flex: none;
    width: 18px; height: 18px;
    margin: 0;
    accent-color: #315c40;
}
.inquiry-choices label:has(:checked) { background: #e9f4da; box-shadow: inset 0 0 0 2px var(--inquiry-accent); }
.inquiry-choices label:has(:focus-visible), .inquiry-card :is(input,select,textarea,button,a):focus-visible {
    outline: 3px solid #f4c85b;
    outline-offset: 2px;
    z-index: 1;
}
.inquiry-choices input:focus-visible { outline: 0; }
@media(hover:hover) {
    .inquiry-choices label:hover { background: #eff5e9; }
    .inquiry-primary:hover { filter: brightness(.94); }
}
.inquiry-details, .inquiry-address { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.inquiry-address { grid-template-columns: minmax(0, 3fr) minmax(100px, 1fr); }
.inquiry-field { min-width: 0; margin-bottom: 15px; }
.inquiry-field :is(input,select,textarea) {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 11px 12px;
    border: 1px solid #cad3cd;
    border-radius: 3px;
    background: #fff;
    color: #182c24;
    font: 400 16px/1.4 Inter, sans-serif;
}
.inquiry-field input::placeholder, .inquiry-field textarea::placeholder { color: #5b6761; opacity: 1; }
.inquiry-field textarea { resize: vertical; }
.inquiry-field:has(#request-postcode) { max-width: 220px; }
.inquiry-field small { font-size: .85em; font-weight: 400; }
.inquiry-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 1.55; }
.inquiry-consent input { margin-top: 2px; }
.inquiry-consent a, .inquiry-credit a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.inquiry-credit { display: block; color: #edf0ed; font-size: 11px; line-height: 1.5; }
.inquiry-results {
    background: #fff;
    color: #182c24;
    padding: 0; margin: -9px 0 14px;
    max-height: 184px; overflow-y: auto;
    list-style: none; border-radius: 3px;
}
.inquiry-results li { padding: 10px 12px; cursor: pointer; font: 500 14px/1.4 Inter, sans-serif; border-bottom: 1px solid #d7dfda; }
.inquiry-results li:is(:hover,[aria-selected="true"]) { background: #e9f4da; }
.inquiry-actions { display: flex; justify-content: center; margin: 18px 0 8px; }
.inquiry-primary {
    width: 55%; min-height: 48px;
    border: 0; border-radius: 5px; padding: 10px 16px;
    background: var(--inquiry-accent); color: var(--inquiry-ink);
    font: 700 17px/1.4 Inter, sans-serif; cursor: pointer;
}
.inquiry-primary:disabled { opacity: .75; cursor: wait; }
.inquiry-card .inquiry-privacy { color: #f3f6f4; margin: 0 auto; max-width: 52ch; text-align: center; font: 400 12px/1.5 Inter, sans-serif; }
.inquiry-footer { position: relative; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 34px; margin-top: 6px; }
.inquiry-footer button { grid-area: 1 / 1; justify-self: start; display: flex; align-items: center; gap: 6px; color: #fff; padding: 7px 0; border: 0; background: transparent; cursor: pointer; font: 600 13px/1.3 Inter, sans-serif; }
.inquiry-footer button .icon { width: 15px; height: 15px; transform: rotate(180deg); }
.inquiry-progress { grid-area: 1 / 2; display: flex; align-items: center; gap: 6px; list-style: none; margin: 0; padding: 0; }
.inquiry-progress li { width: 7px; height: 7px; border-radius: 100%; background: #a9b6b0; }
.inquiry-progress [aria-current="step"] { background: var(--inquiry-accent); outline: 1px solid #fff; outline-offset: 2px; }
.inquiry-error { display: block; margin-top: 5px; color: #ffe0cf; font-size: 14px; }
.inquiry-card .form-errors { background: #fff1e9; color: #652d20; padding: 14px; margin-block: 12px; }
@media(max-width: 600px) {
    .inquiry-hero { padding: 14px 12px 22px; }
    .inquiry-card { padding: 20px 14px 12px; border-radius: 12px; }
    .inquiry-card h1 { font-size: 32px; }
    .inquiry-card .inquiry-intro { font-size: 14px; margin-bottom: 20px; }
    .inquiry-primary { width: 74%; }
}
@media(max-width: 380px) {
    .inquiry-details { grid-template-columns: 1fr; gap: 0; }
    .inquiry-address { grid-template-columns: minmax(0, 1fr) 98px; gap: 7px; }
    .inquiry-field label { font-size: 15px; }
}
