.enquiry-form .headline {
    grid-area: 1/2/1/span 12;
}

.enquiry-form .text-container {
    grid-area: 2/2/2/span 12;
    max-width: 56ch;
}

.enquiry-form .form-container {
    grid-area: 3/4/3/span 8;
}

.enquiry-form .form-container .wpcf7-form {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-column-gap: var(--grid-gap);
    grid-row-gap: 2em;
}

.wpcf7-form-control-wrap[data-name="firstname"],
.wpcf7-form-control-wrap[data-name="lastname"],
.wpcf7-form-control-wrap[data-name="email"],
.wpcf7-form-control-wrap[data-name="phone"],
.wpcf7-form-control-wrap[data-name="arrival"],
.wpcf7-form-control-wrap[data-name="departure"],
.wpcf7-form-control-wrap[data-name="privacy"],
.wpcf7-form button[type="submit"] {
	grid-column: span 6;
}

.wpcf7-form button[type="submit"] {
    justify-self: flex-end;
}

.wpcf7-form-control-wrap[data-name="street"],
.wpcf7-form-control-wrap[data-name="zip"],
.wpcf7-form-control-wrap[data-name="city"],
.wpcf7-form-control-wrap[data-name="country"]  {
	grid-column: span 3;
}

.wpcf7-form-control-wrap[data-name="number-of-people"],
.wpcf7-form-control-wrap[data-name="number-of-rooms"],
.wpcf7-form-control-wrap[data-name="board"] {
    grid-column: span 4;
}

.wpcf7-form-control-wrap[data-name="message"],
.wpcf7 form .wpcf7-response-output {
    grid-column: span 12;
}

/* General */
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
    line-height: 1.6;
    color: currentColor;
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 2px solid currentColor;
    border-radius: 0;
    padding: .4em 0;
    outline: 0 none !important
}

.wpcf7 select {
    min-height: calc(2.4em + 2px);
}

.wpcf7 textarea {
    border: 2px solid currentColor;
    padding: 1.25em;
    resize: none;
    min-height: 12.5em;
    overflow-y: clip;
}

.wpcf7 input::placeholder,
.wpcf7 select::placeholder,
.wpcf7 textarea::placeholder  {
    color: var(--black);
    opacity: 1;
}

.wpcf7-form input[type="date"] {
    display: block;
    appearance: textfield;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
}

.wpcf7-form .wpcf7-form-control-wrap[data-name="arrival"] label,
.wpcf7-form .wpcf7-form-control-wrap[data-name="departure"] label {
    position: absolute;
    top: 0;
    left: 0;
    width: 90%;
    height: 2.4em;
    z-index: 1;
    display: flex;
    align-items: center;
    background: var(--beige);
    pointer-events: none;
    border: none;
    border-radius: 0;
}

.wpcf7 input[type="checkbox"] {
    display: block;
    width: 1.25em;
    height: 1.25em;
    aspect-ratio: 1/1;
    margin-right: 1em;
    border: 2px solid currentColor;
    border-radius: 0;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -o-appearance: none;
	background: transparent;
    transition: var(--def-trans);
}

.wpcf7-form input[type="checkbox"]:checked {
    background: currentColor;
}

.wpcf7 .wpcf7-form-control-wrap[data-name="privacy"] .wpcf7-list-item {
    margin: 0;
}

.wpcf7 .wpcf7-form-control-wrap[data-name="privacy"] label {
	display: flex;
    font-size: var(--fs-20);
    font-weight: 500;
}

.wpcf7 .wpcf7-form-control-wrap[data-name="privacy"] label .wpcf7-list-item-label {
	margin-top: .1vw;
	height: fit-content;
    line-height: 1.25;
}

.wpcf7 .wpcf7-not-valid-tip {
    font-size: var(--fs-20);
    margin-top: .5em;
}

.wpcf7 form .wpcf7-response-output {
    margin: 0;
    margin-top: max(24px, 1.875vw);
    text-align: center;
}

@media (max-width: 1199.98px) {
    .enquiry-form .form-container {
        grid-area: 3/3/3/span 10;
    }
}

@media (max-width: 991.98px) {
    .enquiry-form .form-container {
        grid-area: 3/2/3/span 12;
    }
}

@media (max-width: 767.98px) {
    .enquiry-form .form-container {
        grid-area: 3/2/3/span 12;
    }
}

@media (max-width: 575.98px) {
    .enquiry-form .form-container .wpcf7-form {
        display: flex;
        flex-direction: column;
    }
}