body {
}
.hero-reservation {
    background: radial-gradient(circle at top left, rgba(184,146,88,0.09), transparent 55%);
}
.hero-reservation-inner {
    align-items: center;
}
.hero-reservation-media {
    min-height: 260px;
}
.hero-reservation-detail {
    max-width: 280px;
}
.reservation-form {
    margin-top: 0;
}
.reservation-aside {
    align-self: flex-start;
}
.reservation-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-20);
}
.reservation-option {
    height: 100%;
}
.contact-card {
    margin-top: var(--space-16);
}
.contact-image-block {
    display: flex;
    flex-direction: column;
}
.contact-figure,
.map-figure {
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-soft);
    border: 1px solid rgba(228,212,191,0.9);
}
.contact-figure img,
.map-figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.consent-area {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-md);
    padding: var(--space-16);
    background: rgba(255,253,248,0.96);
}
.consent-group {
    margin-bottom: 0;
}
@media (min-width: 900px) {
    .reservation-options {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 767px) {
    .hero-reservation {
        padding-top: var(--space-48);
    }
}
