/* Scoped hotel layout; preserve existing typefaces and colours. */
/* Keep the hero dimensions stable while mobile visitors choose whether to load video. */
#headerimage .hotel-hero-media { position: absolute; inset: 0; overflow: hidden; }
#headerimage .hotel-hero-poster { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
#headerimage .hotel-hero-media video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; border: 0; }
#headerimage .hotel-hero-toggle {
    position: absolute; left: 20px; bottom: 20px; z-index: 3;
    padding: 10px 16px; min-height: 44px;
    background: #353b2e; color: #fff; border: 1px solid #fff;
    border-radius: 3px; font: inherit; font-size: 14px; cursor: pointer;
}
#headerimage .hotel-hero-toggle[hidden] { display: none; }
#headerimage .hotel-hero-toggle:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.homeintro.hotel .hotel-copy { color: #353b2e; }
.homeintro.hotel .hotel-copy h2 { display: block; color: #353b2e; font-size: 28px; line-height: 1.2; margin: 1.4em 0 .4em; }
.hotel-copy p { margin-top: 0; margin-bottom: 1em; }
.hotel-copy p:empty { display: none; }
.homeintro.hotel .hotel-copy .handwritten_name { margin-top: 1em; }
#grid_container.kamers .hotel-section-title { margin-bottom: 40px; }
#grid_container.kamers .car-left h3 { font-size: 32px; }
.single-kamers .onz-andere-title h2 { text-align: center; color: #353b2e; }
.single-kamers .onz-andere-cell .card .content h3 { font-size: 50px; }
#grid_container.kamers .thumbnail img { width: 100%; height: 100%; display: block; }
#grid_container.kamers .thumbnail img:focus-visible { outline: 3px solid #fff; outline-offset: -4px; }
.single-kamers .carousel-cell .hotel-carousel-image { width: 100%; height: 100%; object-fit: cover; display: block; }
/* Keep the practical-information heading above the columns. */
#accordions > .standard_container > h2 { margin: 0 0 1.5rem; }
#accordions > .standard_container > .subtitel { margin: 0 0 1.5rem; }
#accordions > .standard_container > .subtitel:empty { display: none; }
@media (min-width: 601px) {
    #accordions .row-flex { align-items: stretch; }
    #accordions .row-flex > .inner-column:first-child { position: relative; }
    #accordions .row-flex > .inner-column:first-child > .accordion-foto {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        max-height: none;
        aspect-ratio: auto;
        object-fit: cover;
        object-position: center;
    }
}
@media (max-width: 768px) {
    #grid_container.kamers .car-left h3 { font-size: 26px; }
    #grid_container.kamers .hotel-section-title { font-size: 30px; }
    .single-kamers .onz-andere-title h2 { font-size: 40px; }
}
