/* Use the same title band and form rhythm on both inquiry pages. */
.pf-inquiry {
    background: #f8f4eb;
    color: #243e53;
}
.pf-inquiry .service-intro-band {
    background-image: linear-gradient(132deg, #182f42 15%, #203d55 100%);
}
.pf-inquiry .service-intro-band::before { opacity: .28; }
.pf-inquiry .pf-request-heading {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
    align-items: end;
    gap: clamp(8px, 2.6vw, 36px);
    padding-block: clamp(21px, 2.7vw, 38px);
}
.pf-inquiry .pf-request-heading h1 {
    color: #fff;
    font: 600 clamp(38px, 4.3vw, 62px)/1.02 "Barlow Condensed", Barlow, sans-serif;
    letter-spacing: -.5px;
    margin: 0;
    text-transform: none;
}
.pf-inquiry .pf-request-heading p {
    color: #f2eee4;
    font-size: clamp(1rem, 1.35vw, 1.16rem);
    line-height: 1.44;
    max-width: 42ch;
    margin: 0;
}

.pf-inquiry .p-request-section { background: transparent; }
.pf-inquiry .contact-grid:has(#anfrageformular),
.pf-inquiry .p-request-section .p-section {
    padding-block: clamp(18px, 2.6vw, 36px) clamp(28px, 4vw, 54px);
}
.pf-inquiry .contact-grid:has(#anfrageformular),
.pf-inquiry .p-request-grid:has(.pf-property-form-wrap) {
    grid-template-columns: minmax(0, 1.7fr) minmax(230px, 1fr);
    gap: clamp(20px, 4vw, 56px);
}
.pf-inquiry .contact-grid:has(#anfrageformular) .request-box,
.pf-inquiry .p-request-form {
    background: #fbf9f3;
    border: 1px solid #cbd0c9;
    border-top: 3px solid #2e4a66;
    padding: clamp(13px, 2.15vw, 28px);
}

.pf-inquiry .form-grid, .pf-inquiry .p-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
}
.pf-inquiry :is(.form-grid, .p-form-grid) > :is(.full, .p-full) { grid-column: 1/-1; }
.pf-inquiry :is(#request-form, #property-request) :is(.form-grid, .p-form-grid) label {
    min-width: 0;
    gap: 5px;
    font-size: .91rem;
    font-weight: 600;
}
.pf-inquiry :is(#request-form, #property-request) :is(.form-grid, .p-form-grid) :is(input, select, textarea) {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 8px 10px;
    background: white;
    border: 1px solid #a9b7bd;
    border-radius: 0;
    font-size: 1rem;
    font-weight: 400;
}
.pf-inquiry :is(#request-form, #property-request) :is(.form-grid, .p-form-grid) textarea { min-height: 82px; }
.pf-inquiry .pf-form-extra { border-color: #cbd0c9; }
.pf-inquiry .pf-form-extra summary, .pf-inquiry .pf-request-preview summary {
    min-height: 44px;
    padding-block: 10px;
    cursor: pointer;
}
.pf-inquiry .pf-form-extra > summary {
    display: flex;
    align-items: center;
    gap: .35rem;
}
.pf-inquiry .pf-form-extra > summary::after {
    content: "+" / "";
    margin-left: auto;
    font-size: 1.2em;
}
.pf-inquiry .pf-form-extra[open] > summary::after { content: "−" / ""; }
.pf-inquiry .p-form-grid .p-required { position: static; }
.pf-inquiry .pf-request-preview textarea { width: 100%; }
.pf-inquiry .pf-request-hint { margin: 0 0 12px; font-size: .83rem; line-height: 1.5; }
.pf-inquiry .pf-request-hint a { text-decoration: underline; text-underline-offset: 2px; }

.pf-inquiry .p-service-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 8px;
    margin-bottom: 12px;
}
.pf-inquiry .p-service-fields legend { margin-bottom: 6px; font-weight: 600; }
.pf-inquiry .p-service-fields legend span { display: inline; font-size: .82rem; font-weight: 400; }
.pf-inquiry .p-service-fields label { display: flex; align-items: center; }
.pf-inquiry .p-service-fields label > input {
    position: static;
    flex: none;
    width: 16px;
    height: 16px;
    margin: 0 7px 0 0;
    opacity: 1;
    accent-color: #2e4a66;
}
.pf-inquiry .p-service-fields label > span,
.pf-inquiry .p-service-fields input:checked + span {
    border: 0;
    padding: 4px 0;
    justify-content: start;
    min-height: 44px;
    background: transparent;
    color: #243e53;
    font-size: .92rem;
}
.pf-inquiry .p-service-fields input:checked + span { font-weight: 600; }
.pf-inquiry :is(#request-form, #property-request) > button {
    width: auto;
    min-height: 46px;
}
.pf-inquiry button[type=submit]:disabled {
    opacity: .68;
    cursor: default;
}
.pf-delivery-status {
    color: #243e53;
    background: #e8ede7;
    border-left: 3px solid #2e4a66;
    margin: 12px 0 0;
    padding: 10px 12px;
    font-size: .92rem;
}
.pf-delivery-status:focus-visible {
    outline: 2px solid #2e4a66;
    outline-offset: 3px;
}
.pf-inquiry .pf-request-contact {
    display: block;
    padding-top: 0;
}
.pf-inquiry .pf-request-contact h2 {
    color: #243e53;
    font: 600 clamp(28px, 2.8vw, 37px)/1.1 "Barlow Condensed", Barlow, sans-serif;
    text-transform: none;
    margin: 0 0 .45rem;
}
.pf-inquiry .pf-request-contact :is(.p-contact-mail, .contact-email) { overflow-wrap: anywhere; }
.pf-inquiry :is(#request-result, #p-request-result) h2 {
    font-size: 1.45rem;
    text-transform: none;
    margin: 0 0 .35rem;
}

@media (max-width: 820px) {
    .pf-inquiry .pf-request-heading { grid-template-columns: minmax(0, 1fr); }
    .pf-inquiry .contact-grid:has(#anfrageformular),
    .pf-inquiry .p-request-grid:has(.pf-property-form-wrap) {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 540px) {
    .pf-inquiry .form-grid, .pf-inquiry .p-form-grid { grid-template-columns: minmax(0, 1fr); }
}
