
.T5794 {
    margin: 0;
    overflow-y: visible;
}

.T5794 .wrap_inner {
    overflow: visible;
}

#metabooking {
    --color-price: #2F7FAF;
    --button-bg: #FF8000;
    --button-color: #FFFFFF;
    --color-gray: #999;
    --color-lightgray: #adadad;

    --font-weight-bold: 700;

    --bg-results: #FFF;
    
    --button_bgcolor_primary: var(--button-bg);
    --button_color_primary: var(--button-color);
    
    --button_bgcolor_secondary: #444;
    --button_color_secondary: #FFF;
    
    --basis-font-size: 14px;
    --size0-5: calc( 0.5 * var(--basis-font-size) );
    --size0-8: calc( 0.8 * var(--basis-font-size) );
    --size0-9: calc( 0.9 * var(--basis-font-size) );
    --size1-1: calc( 1.1 * var(--basis-font-size) );
    --size1-3: calc( 1.3 * var(--basis-font-size) );
    --size1-5: calc( 1.5 * var(--basis-font-size) );
    --size2: calc( 2 * var(--basis-font-size) );
    --margin-inline: var(--basis-font-size);
    --margin-inline2: calc( 2 * var(--basis-font-size) );

    --details-items-background: rgb(242, 245, 225);
}

/*
 *
 * Lightbox
 *
 */

#simpleLightbox {
    width: min(1200px, calc(100vw - 2rem));
    max-width: none;
    max-height: calc(100vh - 2rem);
    padding: 0;
    border: 0;
    background: transparent;
}

#simpleLightbox::backdrop {
    background: rgba(0, 0, 0, 0.8);
}

#simpleLightbox .simple_lightbox_inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

#simpleLightbox .simple_lightbox_image {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 2rem);
    width: auto;
    height: auto;
}

#simpleLightbox .simple_lightbox_close,
#simpleLightbox .simple_lightbox_button {
    all: unset;
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 1.5rem;
    line-height: 1;
    backdrop-filter: blur(2px);
}

#simpleLightbox .simple_lightbox_close {
    top: 1rem;
    right: 1rem;
}

#simpleLightbox .simple_lightbox_button.prev {
    left: 1rem;
}

#simpleLightbox .simple_lightbox_button.next {
    right: 1rem;
}

/*
 *
 * Details Allgemein 
 *
 */

#metabooking details {
    position: relative;
}

#metabooking details summary {
    position: sticky;
    top: 0;
    font-size: var(--size1-5);
    font-weight: 700;
    background-color: #FFF;
    padding: var(--size0-5) var(--margin-inline2);
    z-index: 10;
    border-bottom: 1px solid #BBB;
}

#metabooking details.depth2 summary {
    font-size: var(--size1-3);
}

#metabooking details summary::marker {
    content: "";
}

#metabooking details summary::after {
    content: "+";
    float: right;
    transition: transform 0.3s ease;
    font-size: var(--size1-5);
}

#metabooking details[open] > summary::after {
    transform: rotate(45deg);
}


#metabooking details[open].details-items, #metabooking details[open].details-items summary {
    background-color: var(--details-items-background);
}



#metabooking .summary-headline {
    font-size: var(--size1-5);
    font-weight: 700;
    margin: 1rem 0;
}

#metabooking .meta-pos {
    padding: 0;
    border-top-width: 0px;
    border-bottom-width: 0px;
}

/*
 *
 * Button Handling
 *
 */

#metabooking .ibe_button {
    all: unset;
    background-color: var(--button_bgcolor_primary);
    border: 2px solid var(--button_bgcolor_primary);
    color: var(--button_color_primary);
    font-weight: var(--font-weight-bold);
    padding: 0.5em 1.2em;
    cursor: pointer;
    border-radius: 0.2em;
    white-space: nowrap;
}

#metabooking .ibe_button.outline {
    background-color: var(--button_color_primary);
    color: var(--button_bgcolor_primary); 
}

#metabooking .ibe_button.secondary {
    background-color: var(--button_bgcolor_secondary);
    border: 2px solid var(--button_bgcolor_secondary);
    color: var(--button_color_secondary);
}

#metabooking .ibe_button.outline.secondary {
    background-color: var(--button_color_secondary);
    color: var(--button_bgcolor_secondary); 
}

#metabooking .ibe_button.outline.small {
    font-size: 0.9em;
    padding: 0.2em .8em;
}

#metabooking .ibe_button.inline {
    all:unset;
    text-decoration: underline;
    opacity: 0.7;
    cursor: pointer;
}

/*
 *
 * Booking Arguments
 *
 */

 #booking-arguments {
    --gap: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
    background-color: #FFF;
    padding: 0.7em 1.2em;
 }

 #booking-arguments .booking-argument {
    display: flex;
    width: 100%;
    gap: 0.5rem;
    flex-grow: 0;
    flex-shrink: 0;
 }

#booking-arguments .booking-argument .booking-argument-icon {
    width: 1.5rem;
    flex-shrink: 0;
    flex-grow: 0;
}
#booking-arguments .booking-argument .booking-argument-icon svg {
    width: 100%;
    height: auto;
}

#booking-arguments .booking-argument .booking-argument-icon svg path {
    fill: #019003;
}

#booking-arguments .booking-argument .booking-argument-name {
    font-weight: bold;
}


@media (min-width: 567px) {
    #booking-arguments.size2 .booking-argument { width: calc( 50% - var(--gap) ); }
    #booking-arguments.size3 .booking-argument { width: calc( 33% - var(--gap) ); }
    #booking-arguments.size4 .booking-argument { width: calc( 50% - var(--gap) ); }
}

@media (min-width: 768px) {
    #booking-arguments.size4 .booking-argument { width: calc( 25% - var(--gap) ); }
}



/*
 *
 * Client Breadcrumb
 *
 */

#metabooking .client-breadcrumb {
    display: flex;
    justify-content: space-between;
    background-color: #F7F6F4;
    color: #000;
    padding: 0.3em 1.2em 0.3em 0.5em;
}

#metabooking .client-breadcrumb-location, #metabooking .client-breadcrumb-phone {
    display: flex;
    gap: 0.3em;
    flex-wrap: nowrap;
    align-items: center;
    color: currentColor;
    text-decoration: none;
}

#metabooking .client-breadcrumb .client-breadcrumb-icon {
    --icon-size: 1.2em;
    width: var(--icon-size);
    height: var(--icon-size);
    aspect-ratio: 1 / 1;
}

#metabooking .client-breadcrumb .client-breadcrumb-icon svg {
    width: 100%;
    height: auto;
}

/*
 *
 * Button Wrapper Results
 *
 */

#metabooking .button_wrapper {
    display: flex;
    margin-block: 0.5em;
    gap: 0.5em;
}

#metabooking .button_wrapper.padding {
    padding-inline: var(--margin-inline);
}

#metabooking .button_wrapper.end {
    justify-content: flex-end;
}

#metabooking .button_wrapper.spacebetween {
    justify-content: space-between;
}

#metabooking .button_wrapper button.simple {
    all: unset;
    font-weight: var(--font-weight-bold);
    font-size: 0.9em;
}

#metabooking .meta-pos > form {
    max-width: none;
}

#metabooking #metabookingselect {
    --remove_room_width: 2em;
}

#metabooking .guestselect_wrapper {
    margin-bottom: 1em;
}

#metabooking .guestselect {
    display: flex;
    align-items: flex-start;
    gap: 0.5em;
    margin-bottom: 1em;
}

#metabooking .guestselect .meta-pos-widget {
    flex: 1;
    margin-block: 0 !important;
    position: relative;
}

#metabooking .guestselect .meta-pos-widget .meta-pos-head {
    anchor-name: --guest-head;
}

#metabooking .room {

    border-top: 1px solid #aaa;
    padding-top: 0.5em;
}

#metabooking .room.hidden {
    display: none;
}

#metabooking .room .room_label {
    display: none;
    font-size: 0.9em;
    margin-bottom: 0.5em;
    color: #999;
    font-weight: var(--font-weight-bold);
}

#metabooking .guestselect.multi_room .room_label {
    display: flex;
    justify-content: space-between;
 }

/*
 *
 * Room Button Handling
 *
 */

#metabooking .room .simple.add_room {
    display: none;
    font-weight: normal;

}

#metabooking .room .simple.remove_room {
    display: none;
    background: transparent;
    border-width: 0;
    font-size: 18px;
    line-height: 0.5;
    padding: 0;
}

#metabooking .room.last-active-room .simple.remove_room {
    display: block;
}

#metabooking .room.first-active-room .simple.remove_room {
    display: none;
}

#metabooking .room.last-active-room .simple.add_room {
    display: block;
    padding-block: 0.6em;
}

#metabooking .person,
#metabooking .child {
    border-top: 0px solid #fff;
    display: flex;
    justify-content: space-between;
    margin-left: 0em;
    padding-left: 0.6em;
    padding-top: 0;
}

#metabooking .child .child_remove {
    display: none;
}

#metabooking .child.last-visible .child_remove {
    all: unset;
    display: block; 
    position: relative;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    font-size: 1.2em;
}

/* Klickbares Elmement vergrößern */
#metabooking .child.last-visible .child_remove::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
}

#metabooking .person .content,
#metabooking .child .content { 
    display: flex;
    align-items: center;
    gap: 0.5em;
    flex: 1;
}

#metabooking .person .content label,
#metabooking .child .content label {
    width: 6em;
    display: inline-block;
    margin-right: 1em;
}

#metabooking .person .change_count,
#metabooking .child .change_count {
    all: unset;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--color-price);
    color: #FFF;
    width: 1.25em;
    height: 1.25em;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    padding: 0;
    line-height: 1;
}

#metabooking .person .change_count::before,
#metabooking .child .change_count::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
}

#metabooking .person select,
#metabooking .child select {
    all: unset;
    text-align: center;
}

#metabooking .child.hidden {
    display: none;
}

#metabooking .add_child {
    display: flex;
    justify-content: flex-end;
    font-size: 0.9em;
    margin-left: 1em;
    background-color: transparent !important;
    border-width: 0 !important;
    padding-right: 0;
    flex: 5;

}

#metabooking .add_child span {
    font-weight: bold;
}

#metabooking .add_child.max-reached {
    opacity: 0.6;
    cursor: default;
    pointer-events: none;
}

#metabooking .search-button {
    all: unset;
    background-color: var(--button-bg);
    color: var(--button-color);
    font-weight: var(--font-weight-bold);
    border-radius: 0.5em;
    padding: 0.45em 2em;
    cursor: pointer;
    transition: background-color 150ms ease;
    color: #FFF;
    min-width: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#metabooking .search-button svg {
    animation: metabooking-spin 800ms linear infinite;
    transform-origin: center;
}

#metabooking .search-button svg path {
    fill: currentColor;
}

#metabooking .search-button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

#metabooking .search-button:not(:disabled):hover {
    background-color: #ff9a1a;
}

#metabooking .search-button:not(:disabled):active {
    background-color: #e67300;
}

#metabooking .maingroup .bild {
    width: 100px !important
}

#metabookingresults {
    margin-top: 2em;
}
#metabookingresults .hidden { display: none; }

/*
 *
 * Button Wrapper Results
 *
 */

#metabookingresults .button_wrapper { display: flex; }
#metabookingresults .button_wrapper.flex_end { justify-content: flex-end; }
#metabookingresults .button_wrapper.flex_center { justify-content: center; }
#metabookingresults .button_wrapper.align_center { align-items: center; }
#metabookingresults .client_wrapper { margin-bottom: 2em; }

#metabookingresults .client_wrapper_inner {
    background-color: var(--bg-results);
    margin-bottom: 1em;
    padding-bottom: 2em;
}

#metabookingresults .client_wrapper_inner .flex_wrapper {
    display: flex;
    flex-direction: column;
    gap: 1em;
    margin-bottom: 1em;
}

#metabookingresults .client_wrapper_inner .client_images img {
    width: 100%;
    height: auto;
}

#metabookingresults .client_wrapper_inner .client_flex_inner { 
    margin-inline: var(--margin-inline);
}

#metabookingresults .client_wrapper_inner .client_headline {
    font-size: var(--size2);
    font-weight: var(--font-weight-bold);
    margin-top: 0.5em;
}

#metabookingresults .client_wrapper_inner .client_info {
    font-size: 1.1em;
}

#metabookingresults .client_wrapper_inner .client_subinfos {
    margin-top: 1em;
    margin-bottom: 1em;
    display: flex;
    justify-content: space-between;
}

#metabookingresults .client_wrapper_inner .client_subinfos .price_info_wrapper { 
    display: flex;
    gap: 0.5em;
    align-items: center;
}

#metabookingresults .client_wrapper_inner .client_subinfos .price_info {
    white-space: nowrap;
    font-size: 1.1em;
}

#metabookingresults .client_wrapper_inner .client_subinfos .price_info .price {
    font-weight: var(--font-weight-bold);
    color: var(--color-price);
}

#metabookingresults .client_wrapper:after {
    display: flex;
    content: "";
    width: 50%;
    height: 3px;
    border-radius: 3px;
    background-color: var(--color-gray);
    margin-inline: auto;
}

#metabookingresults .room_wrapper { 
    display: none;
    padding-inline: var(--margin-inline2);
    margin-block: 1em;
}

#metabookingresults .room_wrapper .room_inner {
    margin-block: 1em;
    padding-block: 1em;
}

#metabookingresults .room_wrapper .class_images {
    flex-grow: 0;
    flex-shrink: 0;
    width: 100%;
}

#metabookingresults .room_wrapper .class_images img {
    width: 100%;
    height: auto;
}

#metabookingresults .room_wrapper .class_infos {
    flex-grow: 1;
    flex-shrink: 1;
}

#metabookingresults .room_wrapper .class_infos .class_name {
    font-size: var(--size1-5);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--size0-5);
}

#metabookingresults .room_wrapper .class_infos .class_info {
    font-size: var(--size1-1);
}

#metabookingresults .room_wrapper .class_infos .class_text {
    font-size: var(--size1-1);
    margin-block: 1em;
}

#metabookingresults .room_wrapper .class_infos .price_infos {
    font-size: 1em;
}

#metabookingresults .room_wrapper .class_infos .price_infos .price_info {
    color: #333;
}

#metabookingresults .room_wrapper .class_infos .price_infos .price {
    color: var(--color-price);
    font-size: var(--size1-1);
    font-weight: var(--font-weight-bold);
}

#metabookingresults .room_wrapper.show { 
    display: block;         
}

#metabookingextras {
    background-color: var(--bg-results);
    padding-block: var(--margin-inline);
}

#metabookingextras .extra_wrapper .headline-main {
    font-size: var(--size2);
    font-weight: var(--font-weight-bold);
    margin-bottom: 0.2em;
}

#metabookingextras .extra_wrapper .headline-intro {
    font-size: 1.1em;
    margin-bottom: var(--size0-5);
}

#metabookingextras .extra-subheadline {
    font-size: var(--size1-5);
    font-weight: var(--font-weight-bold);
    margin-block: 1em;
}

#metabookingextras .T5277 {
    padding-inline: var(--margin-inline2);
}

/*
 *
 * Teaser
 *
 */
#metabooking .T5277 .element {
    cursor: default;
}

#metabooking .T5277 .element .metateaser-content {
    cursor: pointer;
}

#metabooking .T5277 .element .metateaser-content .ibe-teaser {
    margin-bottom: 1em;
    font-size: 1em;
}

#metabooking .T5277 .element .metateaser-content .ibe-teaser .ibe-teaser-subheadline {
    font-weight: var(--font-weight-bold);
    font-size: var(--size0-8);
    margin-bottom: var(--size0-5);
}

#metabooking .T5277 .element .metateaser-content .ibe-teaser .ibe-teaser-headline {
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--size0-5);
}

#metabooking .T5277 .element .metateaser-content .ibe-teaser .ibe-teaser-info {
    font-size: 0.9em;
}

#metabooking .T5277 .element .metateaser-content .ibe-teaser .ibe-teaser-info span {
    text-decoration: underline;
}

#metabooking .T5277 .element .metateaser-footer {
    width: calc( 100% - var(--margin-inline) * 2 );
    margin-inline: var(--margin-inline);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price {
    font-size: 0.9em;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--basis-font-size);
    margin-block: 0.7em;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-info {
    width: auto;
    color: var(--color-gray);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-info .info {
    color: #000;
    font-weight: var(--font-weight-bold);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-info .discount-name {
    font-size: var(--size0-8);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button-wrapper {
    display: flex;
    gap: var(--basis-font-size);
    margin-left: auto;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: auto;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-price .discount-price {
    font-size: var(--size0-9);
    color: rgb(203, 49, 49);
    text-decoration: line-through;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-price .total-price {
    font-weight: var(--font-weight-bold);
    color: var(--color-price);
    font-size: var(--size1-1);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button {
    width: auto;
    display: flex;
    justify-content: flex-end;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button {
    all: unset;
    background-color: var(--button_bgcolor_primary);
    color: var(--button-color);
    border-radius: 10px;
    cursor: pointer;
    font-size: var(--basis-font-size);
    font-weight: var(--font-weight-bold);
    padding: 0.4em 1em;
    min-width: 9ch;
    text-align: center;
    line-height: 1;

    display: flex;
    align-items: center;
    gap: 0.5em;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button .button-icon svg {
    width: 20px;
    height: auto;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button .button-icon svg path {
    fill: currentColor;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button.adding .button-icon svg {
    animation: metabooking-spin 800ms linear infinite;
    transform-origin: center;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button[disabled] {
    cursor: not-allowed;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner .price-button button.add_bundle_to_cart {
    font-size: 0.95em;
    background: #fff;
    border: 2px solid #888;
    color: #888;
    border-radius: 0.2rem;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner.added {
    opacity: 0.5;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner.roomselect_bundle {
    padding-top: 0.5em;
    margin-top: 0.5em;
    border-top: 1px solid var(--color-gray);
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner.roomselect_bundle .price-info .info {
    color: var(--color-gray);
    font-weight: 400;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-inner.roomselect_bundle .total-price {
    color: #888;
}

#metabooking .T5277 .element .metateaser-footer .ibe-teaser-price .ibe-teaser-price-footer {
    display: flex;
    justify-content: flex-end;
    text-align: right;
    color: var(--color-gray);   
    font-size: var(--size0-8);
    margin-bottom: var(--size0-8);
}


#metabooking .T5277.layout_aside {
    --img-width: 40%;
}

#metabooking .T5277.layout_aside .element {
    flex-wrap: wrap;
}

#metabooking .T5277.layout_aside .element .bild {
    width: var(--img-width);
}

#metabooking .T5277.layout_aside .element .metateaser-content {
    width: calc(100% - var(--img-width));
}

#metabooking .room_wrapper.show:not(.room_size1) .room_inner {
    border-top: 1px solid var(--color-lightgray);
    padding-block: var(--margin-inline2);
    margin-block: var(--margin-inline2);
} 

#metabooking .room_wrapper.show:not(.room_size1) .room_inner:first-child {
    padding-top: 0;
    border-top-width: 0;
}

#metabooking.single_client .room_wrapper.show {
    margin-top: 0;
    padding-top: 0;

    padding-inline: var(--margin-inline2);
}

#metabooking .meta-pos-options .meta-pos-option { padding-left: 0.8em !important; }
#metabooking .meta-pos-options .meta-pos-option.no_checkbox:before { display: none; }



/*
 *
 * Tags
 *
 */

#metabooking .tagcloud {
    display: flex; 
    flex-wrap: wrap;
    gap: 0.5em;
    margin-bottom: var(--size0-9);
}
#metabooking .tagcloud.margin-top { margin-top: var(--size0-9); }

#metabooking .tagcloud .tag {
    --tag-color: #333;
    --tag-bordercolor: #333;
    --tag-bgcolor: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.3em;

    border: 1px solid var(--tag-bordercolor);
    color: var(--tag-color);
    background-color: var(--tag-bgcolor);
    border-radius: 0.2em;
    padding: 0.2em 0.3em;
    font-size: 0.80em;
    cursor: pointer;
}

#metabooking .tagcloud .tag .tag_icon { 
    width: 1.2em; height: 1.2em; aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
#metabooking .tagcloud .tag svg { width: 100%; height: auto; }

#metabooking .tagcloud .tag svg path {
    fill: currentColor;
}


/* Client Highlight */

 #metabooking .highlights_wrapper {
    display: flex;
    gap: 1em;
    margin-block: 1em;
 }
    

 #metabooking .highlights_wrapper .highlight {
    width: calc( ( 100% / 4 ) - 1em );
    max-width: 80px;
    cursor: pointer;
}
 #metabooking .highlights_wrapper .highlight .image { 
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%; 
    overflow: hidden;
    margin-bottom: 0.5em;
}

#metabooking .highlights_wrapper .highlight .headline {
    hyphens: auto;
    font-weight: bold;
    font-size: 0.8em
}




/*
 *
 * Hightlights / Features
 * (Muss ohne id definiert werden, da es in #sheet angewendet wird)
 *
 */

    
.highlight_inner {
    padding: 1em 2em;
}
.highlight_inner .hightlight_main_headline {
    font-size: 2em;
    font-weight: bold;
    margin-block: 1em;
}
.highlight_inner .elements .element .headline {
    hyphens: auto;
    font-weight: bold;
    font-size: 0.8em
}

.highlight_inner .elements .element .element-headline {
    font-weight: bold;
    font-size: 1.5em;
    margin-bottom: .15em;
    display: flex;
    gap: 0.5em;
    align-items: center;
}

.highlight_inner .elements {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
}

.highlight_inner .elements .element .element-info {
    font-size: 1.25em;
    margin-bottom: .2em;
}

.highlight_inner .elements .element .element-text {
    font-size: 1em
}


.highlight_inner .elements.row .element { width: 100%; }
.highlight_inner .elements.border .element { border-bottom: 1px solid #CCC; padding-bottom: 1em; }

.highlight_inner .elements.col2 .element {
    width: calc( 50% - 1em );
}
.highlight_inner .elements.col2 .element .image { 
    width: 100%;
    margin-bottom: 0.5em;

    
}
.highlight_inner .elements.col2 .element .image img { width: 100%; height: auto; }




 /*
 *
 * CSS Animationen 
 *
 */

@keyframes metabooking-spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/*
 *
 * Special Handling 
 *
 */

#metabooking .client-breadcrumb-special {
    padding-block: 0.5em;
    margin-inline: var(--margin-inline);
}

#metabooking .client-breadcrumb-special .breadcrumb-flag {
    display: inline-block;
    width: 20px;
    height: 12px;
    background-size: 20px auto;
    background-repeat: no-repeat;
    background-position: center left;
    margin: 0 7px 0 0;
    position: relative;
    top: 2px;
}

#metabooking .client-breadcrumb-special .breadcrumb-flag.flag_de {
    background-image: url(https://storage.tramino.net/explorer-hotels/1200667/germany-flag.svg);
}

#metabooking .client-breadcrumb-special .breadcrumb-flag.flag_at {
    background-image: url(https://storage.tramino.net/explorer-hotels/1200666/austria-flag.svg);
}

#metabooking .client-breadcrumb-special .breadcrumb-text {
    display: inline-block;
}



/*
 *
 * No Results
 *
 */

#metabooking .no_results {
    display: flex; 
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#metabooking .no_results .no_results-headline {
    font-size: var(--size2);
    margin-bottom: 0.5em;
    font-weight: bold;
}

#metabooking .no_results .no_results-headline {
    font-size: var(--size1.5);
}


/*
 *
 * Responsive 
 *
 */

@media (min-width: 567px) {
    #metabooking {
        --basis-font-size: 15px;
        padding-inline: auto;
    }

    #metabookingresults .client_wrapper .client_inner {
        box-shadow: 0px 10px 1rem rgba(0, 0, 0, 0.2);
    }

    #metabookingresults .client_wrapper .flex_wrapper {
        flex-direction: row;
    }

    #metabookingresults .client_wrapper .client_images {
        width: 200px;
        flex-grow: 0;
        flex-shrink: 0;
    }

    #metabookingresults .client_wrapper .room_wrapper .class_images {
        width: 200px;
    }
    #metabookingresults .client_wrapper details.details-items .room_wrapper .class_images {
        width: 300px;
    }
}

@media (min-width: 768px) {
    #metabooking {
        --basis-font-size: 16px;
    }

    #metabooking #metabookingselect {
        display: flex;
        gap: 1rem;
    }

    #metabooking #metabookingselect .guestselect_wrapper {
        flex: 4;
        margin-bottom: 0;
    }

    #metabooking #metabookingselect .guestselect_wrapper .guestselect {
        margin-bottom: 0;
    }

    #metabooking #metabookingselect .guestselect_wrapper .meta-pos-hidden {
        top: anchor(--guest-head bottom);
        left: anchor(--guest-head left);
        width: calc(anchor-size(--guest-head width) + 2px);
        margin-left: -1px;
    }

    #metabooking #metabookingselect .meta-pos-widget.open {
        border-radius: 0.3em 0.3em 0 0;
        border-bottom-width: 0px;
    }

    #metabooking #metabookingselect .meta-pos-widget.open .meta-pos-hidden {
        position: absolute;
        background-color: #FFF;
        z-index: 1000;
        border: 1px solid #777;
        border-radius: 0 0 0.3em 0.3em;
        border-top-width: 0px;
        margin-top: 0;
    }

    #metabooking #metabookingselect .periodselect {
        flex: 4;
        margin-bottom: 0;
    }

    #metabooking #metabookingselect .button_wrapper { 
        flex: 1;
        margin-block: 0;
        background-color: #f4f4f4;
    }
    

    #metabookingresults .client_wrapper .client_images {
        width: 300px;
    }

    #metabookingresults .client_wrapper .room_wrapper .class_images {
        width: 250px;
    }
    #metabookingresults .client_wrapper details.details-items .room_wrapper .class_images {
        width: 350px;
    }
}

@media (min-width: 1024px) {
    #metabooking {
        --basis-font-size: 17px;
    }

    #metabookingresults .client_wrapper .client_images {
        width: 400px;
    }

    #metabookingresults .client_wrapper .room_wrapper .class_images {
        width: 300px;
    }
    #metabookingresults .client_wrapper details.details-items .room_wrapper .class_images {
        width: 400px;
    }
}
