/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.2
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/



/* header */
/* topbar */
#hoh-topbar {padding-bottom: 5px;}
#hoh-topbar .elementor-widget-container {padding: 0;}
#hoh-topbar .elementor-widget-text-editor p {margin: 0;}
#hoh-topbar .elementor-widget-button {padding: 0;}

/* mainmenu */
#hoh_mainmenu li a {border-bottom: 10px solid transparent;padding-left: 0;padding-right: 0;margin-right: 20px;margin-left: 20px;}
#hoh_mainmenu li.menu-item-2221 a:hover {border-bottom: 10px solid #f4e1c6;} /* hotel */
#hoh_mainmenu li.menu-item-2975 a:hover {border-bottom: 10px solid #d9d9d9;} /* tagungen */
#hoh_mainmenu li.menu-item-387 a:hover {border-bottom: 10px solid #f9b1b0;} /* bankett */
#hoh_mainmenu .elementor-nav-menu--main > ul > li:first-child > a {margin-left: 0px;}
#hoh_mainmenu .elementor-nav-menu--main > ul > li:last-child > a {margin-right: 0px;}

/* submenu main */
#hoh_mainmenu li ul.sub-menu {z-index: 1000; border-top: 10px solid #f4e1c6;border-left: 0 none;border-right: 0 none;margin-top: -10px !important;margin-left: -10px !important;padding-bottom: 30px;}
#hoh_mainmenu li.menu-item-2975 ul.sub-menu {border-top: 10px solid #d9d9d9 !important;}
#hoh_mainmenu li.menu-item-387 ul.sub-menu {border-top: 10px solid #f9b1b0 !important;}
#hoh_mainmenu .elementor-nav-menu--dropdown li:first-child a {font-weight: bold !important;font-size: 20px;padding-top: 30px;padding-bottom: 30px;}
#hoh_mainmenu .elementor-nav-menu--dropdown li a {border-bottom: 1px solid #ddd;margin-right: 20px;margin-left: 20px; padding-left: 10px;padding-right: 10px;min-width: 350px;}
#hoh_mainmenu .elementor-nav-menu--dropdown li:hover a {border-bottom: 1px solid #d9d9d9;color: #719e8b;}

/* submenu main small devices */
/*#hoh_mainmenu_toggl ul .elementor-nav-menu--dropdown li:first-child {display: none !important;}*/
#hoh_mainmenu_toggl ul li.menu-item-2221 {border-left: 10px solid #719e8b;} /* hotel */
#hoh_mainmenu_toggl ul li.menu-item-2975 {border-left: 10px solid #d9d9d9;} /* tagungen */
#hoh_mainmenu_toggl ul li.menu-item-387 {border-left: 10px solid #f9b1b0;} /* bankett */
#hoh_mainmenu_toggl ul li.menu-item-has-children a {font-weight: bold !important;}
#hoh_mainmenu_toggl ul li {border-left: 0 none;}
#hoh_mainmenu_toggl ul li.menu-item-has-children li a {font-weight: normal !important;}
#hoh_mainmenu_toggl ul li.menu-item-has-children a.highlighted {color: #000 !important;}

/* breadcrumb */
/*#hoh-breadcrumb {display: none;background-color: transparent;}*/

/* footer */
#hoh_footer a:hover {color:#719e8b !important;}

/* footer bar */
#hoh_footer_bar .elementor-widget-button {display: block;}
#hoh_footer_bar .elementor-button-icon .e-font-icon-svg {height: 1.5em;width:1.5em;}

/* icon list */
.hoh_icon_list li {padding-left: 40px !important; padding-right: 40px !important;} 
@media only screen and (max-width: 767px) {
    .hoh_icon_list li {padding-left: 10px !important; padding-right: 10px !important;
    } 
}

.elementor-icon-list-item a {color: #2b3834! important;text-decoration: underline;}

/* headlines */
@media only screen and (max-width: 767px) {
    h1.elementor-heading-title,
    h2.elementor-heading-title,
    h3.elementor-heading-title {
        word-break: break-word !important;
    }
    .elementor_heading_title .hoh_h1_small {
        display:inline-block !important;
        font-size: 30px !important;
        line-height: 40px !important;
        letter-spacing: 3px !important;
    }
}

@media only screen and (max-width: 600px) {
    .elementor_heading_title .hoh_h1_small {font-size: 18px !important;line-height: 24px !important;letter-spacing: 2px !important;}
}

/* plain text */
.elementor-widget-text-editor a {
    color:#2b3834;text-decoration: underline;
}

/* rechtstexte (#hoh_legal, datenschutzerklärung), 29.10.2026
   Stufen unter der H1 der Seite (Lato 46 / 36 / 28 px): H2 > H3 > H4, jeweils kleiner als die Stufe darüber.
   Abstand vor jeder Überschrift, damit der lange Text luftiger wird. Kein !important nötig, die ID schlägt das Kit. */
#hoh_legal h2,
#hoh_legal h3 {
    font-family: 'Lato', Arial, sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #2B3834;
}
#hoh_legal h2 {
    font-size: 1.875rem;     /* 30px */
    line-height: 1.3;
    letter-spacing: 0.1em;
    margin: 3.5rem 0 1.25rem;
}
#hoh_legal h3 {
    font-size: 1.375rem;     /* 22px */
    line-height: 1.35;
    letter-spacing: 0.06em;
    margin: 2.5rem 0 0.75rem;
}
#hoh_legal h4 {
    font-size: 1.125rem;     /* 18px */
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: none;
    color: #2B3834;
    margin: 1.75rem 0 0.5rem;
}
/* direkt aufeinanderfolgende überschriften nicht doppelt auseinanderziehen */
#hoh_legal h2 + h3,
#hoh_legal h3 + h4 {
    margin-top: 1rem;
}
/* erste überschrift ohne abstand nach oben */
#hoh_legal .elementor-widget-container > :first-child,
#hoh_legal .elementor-widget-container > :first-child > :first-child {
    margin-top: 0;
}

@media only screen and (max-width: 1024px) {
    #hoh_legal h2 { font-size: 1.625rem; margin-top: 3rem; }   /* 26px */
    #hoh_legal h3 { font-size: 1.25rem;  margin-top: 2.25rem; } /* 20px */
    #hoh_legal h4 { font-size: 1.125rem; }                      /* 18px */
}

@media only screen and (max-width: 767px) {
    #hoh_legal h2 { font-size: 1.375rem; letter-spacing: 0.06em; margin-top: 2.5rem; } /* 22px */
    #hoh_legal h3 { font-size: 1.125rem; letter-spacing: 0.04em; margin-top: 2rem; }   /* 18px */
    #hoh_legal h4 { font-size: 1.0625rem; margin-top: 1.5rem; }                        /* 17px */
    #hoh_legal h2,
    #hoh_legal h3 { word-break: break-word; hyphens: auto; }
}


/* contact */
.elementor-field-type-acceptance #form-field-legal_notice {
    display:none;
}

.hoh_icon_box .elementor-widget-container {
    padding: 40px !important;
}

@media only screen and (max-width: 600px) {
    .hoh_icon_box .elementor-widget-container {
        padding: 20px !important;
    }
    .hoh_icon_box .elementor-icon-box-description {
        font-size: 16px !important;
        line-height: 24px !important;
        letter-spacing: 0.5px !important;
    }
}

.elementor-field-group .elementor-select-wrapper {
    display: block !important;
}

#hoh-contact label {
    font-size: 20px !important;
    line-height: 30px !important;
    letter-spacing: 0.5px !important;
    margin-top: 10px !important;
}

@media only screen and (max-width: 600px) {
    #hoh-contact label {
        font-size: 16px !important;
        line-height: 24px !important;
        letter-spacing: 0.5px !important;
        margin-top: 10px !important;
    }
}

#hoh-contact .elementor-button {
    border-radius: 0;
}


/* rooms */
.hoh_price {
    font-size: 40px;
    line-height: 50px;
    letter-spacing: 1px;
    font-weight:600 !important;
    color:#719e8b;
}

@media only screen and (max-width: 767px) {
    .hoh_room h3 {
        word-break: break-word !important;
        font-size: 1.2rem !important;
        line-height: 1.8rem !important;
        font-weight: bold !important;
    }
    .hoh_price {
        font-size: 30px !important;
        line-height: 40px !important;
        letter-spacing: 3px !important;
    }
}

@media only screen and (max-width: 600px) {
    .hoh_price {
        font-size: 36px !important;
        line-height: 42px !important;
        letter-spacing: 2px !important;
    }
}  

/* image carousel */
.e-eicon-chevron-left,
.e-eicon-chevron-right {
    border-radius: 30px;
    background-color: #2B3834;
    padding: 5px;
}
.swiper-pagination {
    z-index: 1 !important;
}

/* whatsapp */
 #wa .wa__btn_popup {
        right: 20px !important;
        bottom: 60px !important;
}

/* borlabs */
.brlbs-cmpnt-container .brlbs-bottom-0 {
    bottom: 35px !important;
}

/* speisekarte */
.ovh-karte{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:1140px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:56px 64px}
.ovh-karte *{box-sizing:border-box}
.ovh-karte table{width:100%;border-collapse:collapse;margin:0;border:0;background:transparent;font-size:inherit}
.ovh-karte caption{text-align:left;padding:0 0 14px;margin:0;border-bottom:2px solid var(--ovh-akzent);caption-side:top}
.ovh-karte .ovh-kat{display:block;font-weight:700;font-size:20px;letter-spacing:3px;text-transform:uppercase;line-height:1.3}
.ovh-karte .ovh-kat-en{display:block;font-family:"Kaushan Script",cursive;font-size:20px;color:var(--ovh-akzent);line-height:1.3;margin-top:2px}
.ovh-karte tr{border-bottom:1px solid var(--ovh-linie);background:transparent}
.ovh-karte tr:hover{background:transparent}
.ovh-karte th,.ovh-karte td{border:0;padding:16px 0;vertical-align:top;background:transparent!important}
.ovh-karte th{text-align:left;font-weight:700;font-size:18px;line-height:1.4;padding-right:24px}
.ovh-karte th .ovh-en{display:block;font-weight:400;font-style:italic;font-size:15px;color:var(--ovh-sekundaer);margin-top:3px;line-height:1.4}
.ovh-karte td{text-align:right;white-space:nowrap;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ovh-sekundaer)}
.ovh-karte .ovh-hinweis{font-size:15px;line-height:1.5;color:var(--ovh-sekundaer);margin:14px 0 0;padding:12px 16px;background:var(--ovh-flaeche);border-left:3px solid var(--ovh-akzent)}
.ovh-karte .ovh-hinweis span{display:block;font-style:italic}
@media (max-width:600px){
  .ovh-karte{gap:44px}
  .ovh-karte th,.ovh-karte td{font-size:17px;padding:14px 0}
  .ovh-karte th{padding-right:16px}
}

/* speisekarte: Gültigkeitshinweis über die volle Breite */
.ovh-karte > .ovh-gilt{grid-column:1/-1;margin:0;font-size:17px;font-weight:700;color:var(--ovh-dunkel);padding:14px 18px}
.ovh-karte > .ovh-gilt span{font-weight:400;font-size:15px;color:var(--ovh-sekundaer);margin-top:2px}
.ovh-karte > .ovh-gilt a{color:inherit;text-decoration:underline}

/* sonntagskarte: Hinweis voll breit, darunter Vorspeisen | Dessert, darunter Hauptgerichte zweispaltig */
@media (min-width:1000px){
  .ovh-karte--sonntag{grid-template-columns:1fr 1fr;grid-template-areas:"gilt gilt" "vor des" "haupt haupt";gap:40px 64px}
  .ovh-karte--sonntag > .ovh-gilt{grid-area:gilt}
  .ovh-karte--sonntag > section:nth-of-type(1){grid-area:vor}
  .ovh-karte--sonntag > section:nth-of-type(2){grid-area:haupt}
  .ovh-karte--sonntag > section:nth-of-type(3){grid-area:des}
  .ovh-karte--sonntag > section:nth-of-type(2) tbody{display:block;columns:2;column-gap:64px}
  .ovh-karte--sonntag > section:nth-of-type(2) tr{display:flex;justify-content:space-between;break-inside:avoid}
  .ovh-karte--sonntag > section:nth-of-type(2) th{flex:1}
}

/* gläser */
.ovh-glas{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:760px;margin:0 auto}
.ovh-glas *{box-sizing:border-box}
.ovh-glas table{width:100%;border-collapse:collapse;margin:0;border:0;font-size:inherit;background:#fff}
.ovh-glas caption{caption-side:top;text-align:center;background:var(--ovh-dunkel);color:#fff;padding:26px 20px 22px;margin:0}
.ovh-glas .ovh-titel{display:block;font-weight:700;font-size:22px;letter-spacing:4px;text-transform:uppercase;line-height:1.3}
.ovh-glas .ovh-unter{display:block;font-family:"Kaushan Script",cursive;font-size:21px;color:#A9CBBC;margin-top:6px;line-height:1.3}
.ovh-glas thead th{background:var(--ovh-sekundaer)!important;color:#fff;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;padding:14px 18px;border:0;line-height:1.3}
.ovh-glas thead th:first-child{text-align:left}
.ovh-glas thead th small{display:block;font-size:13px;letter-spacing:1px;text-transform:none;font-weight:400;opacity:.9;margin-top:2px}
.ovh-glas th,.ovh-glas td{border:0;border-bottom:1px solid var(--ovh-linie);padding:14px 18px;vertical-align:middle}
.ovh-glas tbody tr:nth-child(even) th,.ovh-glas tbody tr:nth-child(even) td{background:var(--ovh-flaeche)}
.ovh-glas tbody tr:nth-child(odd) th,.ovh-glas tbody tr:nth-child(odd) td{background:#fff}
.ovh-glas tbody th{text-align:left;font-weight:700;font-size:18px}
.ovh-glas td,.ovh-glas thead th.ovh-preis{text-align:right;white-space:nowrap;width:24%}
.ovh-glas td{font-size:18px;font-variant-numeric:tabular-nums;color:var(--ovh-sekundaer)}
.ovh-glas .ovh-leer{color:#AAB8B3}
.ovh-glas .ovh-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ovh-glas .ovh-fuss{margin:0;padding:16px 18px;font-size:15px;line-height:1.6;color:var(--ovh-sekundaer);border-bottom:3px solid var(--ovh-akzent);background:#fff}
@media (max-width:600px){
  .ovh-glas th,.ovh-glas td{padding:12px 10px}
  .ovh-glas tbody th,.ovh-glas td{font-size:16px}
  .ovh-glas thead th{font-size:12px;letter-spacing:1px;padding:12px 10px}
  .ovh-glas td,.ovh-glas thead th.ovh-preis{width:27%}
}

/* startseite: drei einstiegsboxen einheitlich hoch */
.elementor-385 .hoh_icon_box > .elementor-widget-container {
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.elementor-385 .hoh_icon_box .elementor-icon-box-wrapper {
    gap: 24px !important;
}
.elementor-385 .hoh_icon_box .elementor-icon-box-title,
.elementor-385 .hoh_icon_box .elementor-icon-box-title a {
    line-height: 1.5 !important;
}
/* desktop: boxen nebeneinander, auf die höchste strecken */
@media only screen and (min-width: 1025px) {
    .elementor-385 .e-con > .hoh_icon_box.elementor-element {
        --align-self: stretch;
        align-self: stretch !important;
        display: flex;
    }
    .elementor-385 .hoh_icon_box > .elementor-widget-container {
        flex: 1 1 auto;
    }
}
@media only screen and (max-width: 1024px) {
    .elementor-385 .hoh_icon_box > .elementor-widget-container {
        min-height: 180px;
    }
}
@media only screen and (max-width: 767px) {
    .elementor-385 .hoh_icon_box > .elementor-widget-container {
        min-height: 160px;
    }
}

/* Telefonnummer im mobilen Header: keine Unterstreichung, nur bei Hover/Fokus */
.elementor-element-d98b031 a {
    color: inherit;
    text-decoration: none;
}
.elementor-element-d98b031 a:hover,
.elementor-element-d98b031 a:focus-visible {
    text-decoration: underline;
}

.ovh-faq{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:880px;margin:0 auto}
.ovh-faq *{box-sizing:border-box}
.ovh-faq .ovh-faq__item{padding:1.5rem 0 1.5rem 1.5rem;border-left:3px solid var(--ovh-akzent);border-bottom:1px solid var(--ovh-linie);scroll-margin-top:120px}
.ovh-faq .ovh-faq__item + .ovh-faq__item{margin-top:0}
.ovh-faq h3{font-family:"Lato",sans-serif;font-weight:700;font-size:1.3125rem;line-height:1.4;letter-spacing:.01em;text-transform:none;color:var(--ovh-dunkel);margin:0 0 .5rem}
.ovh-faq p{font-size:1.125rem;line-height:1.6;margin:0}
.ovh-faq a{color:var(--ovh-dunkel);text-decoration:underline;text-underline-offset:3px}
.ovh-faq a:hover,.ovh-faq a:focus{color:var(--ovh-sekundaer);text-decoration-thickness:2px}
.ovh-faq a:focus-visible{outline:2px solid var(--ovh-dunkel);outline-offset:2px}
.ovh-faq .screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ovh-faq .ovh-faq__mehr{margin-top:.5rem;font-size:1rem;color:var(--ovh-sekundaer)}
@media (max-width:767px){
  .ovh-faq .ovh-faq__item{padding:1.25rem 0 1.25rem 1rem}
  .ovh-faq h3{font-size:1.1875rem}
  .ovh-faq p{font-size:1.0625rem}
}

/* ===== Ovelgönner Hof: Hochzeitsseite (26.10.2026) =====
   In die style.css des Child-Themes, unter das vorhandene .ovh-faq-CSS der FAQ-Seite.
   .ovh-faq selbst ist dort schon drin und wird für die Hochzeits-FAQ mitbenutzt. */

/* Hochzeit: Highlight-Farbe Rosa statt Grün. Nur für Linien und Kreise, nie für Text (1,76:1 auf Weiß). */
.ovh-faq.ovh-hochzeit,
.ovh-fakten.ovh-hochzeit,
.ovh-ablauf.ovh-hochzeit{--ovh-akzent:#F9B1B0}

/* Faktenblock „auf einen Blick“ */
.ovh-fakten{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:960px;margin:0 auto}
.ovh-fakten *{box-sizing:border-box}
.ovh-fakten dl{margin:0;border-top:2px solid var(--ovh-akzent)}
.ovh-fakten .ovh-zeile{display:grid;grid-template-columns:200px 1fr;gap:1.5rem;padding:1rem 0;border-bottom:1px solid var(--ovh-linie)}
.ovh-fakten dt{font-size:.9375rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.6;color:var(--ovh-sekundaer)}
.ovh-fakten dd{margin:0;font-size:1.125rem;line-height:1.6}
.ovh-fakten a{color:var(--ovh-dunkel);text-decoration:underline;text-underline-offset:3px}
.ovh-fakten a:hover,.ovh-fakten a:focus{color:var(--ovh-sekundaer);text-decoration-thickness:2px}
@media (max-width:767px){
  .ovh-fakten .ovh-zeile{grid-template-columns:1fr;gap:.25rem;padding:.875rem 0}
  .ovh-fakten dd{font-size:1.0625rem}
}

/* Ablauf Hochzeitswochenende */
.ovh-ablauf{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:880px;margin:0 auto}
.ovh-ablauf *{box-sizing:border-box}
.ovh-ablauf .ovh-intro{font-size:1.125rem;line-height:1.6;margin:0 0 2rem}
.ovh-ablauf .ovh-tag{position:relative;padding:0 0 2rem 2rem;border-left:3px solid var(--ovh-akzent)}
.ovh-ablauf .ovh-tag:last-child{padding-bottom:0}
.ovh-ablauf .ovh-tag::before{content:"";position:absolute;left:-10px;top:.35rem;width:17px;height:17px;border-radius:50%;background:#fff;border:3px solid var(--ovh-akzent)}
.ovh-ablauf h3{font-family:"Lato",sans-serif;font-weight:700;font-size:1.3125rem;line-height:1.4;letter-spacing:.01em;text-transform:none;color:var(--ovh-dunkel);margin:0 0 .75rem}
.ovh-ablauf h3 span{display:block;font-size:.9375rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ovh-sekundaer)}
.ovh-ablauf p{font-size:1.125rem;line-height:1.6;margin:0 0 .75rem}
.ovh-ablauf ol{margin:0;padding:0;list-style:none}
.ovh-ablauf li{font-size:1.125rem;line-height:1.6;padding:.625rem 0;border-bottom:1px solid var(--ovh-linie)}
.ovh-ablauf li:last-child{border-bottom:0}
.ovh-ablauf li strong{display:block;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ovh-sekundaer)}
@media (max-width:767px){
  .ovh-ablauf .ovh-tag{padding-left:1.25rem}
  .ovh-ablauf h3{font-size:1.1875rem}
  .ovh-ablauf p,.ovh-ablauf li,.ovh-ablauf .ovh-intro{font-size:1.0625rem}
}

/* footer: p-ueberschriften ohne absatzabstand aus dem kit */
#hoh_footer p.elementor-heading-title {
    margin-block-end: 0;
}

/* footer-leiste tablet/mobil: breite nach inhalt, nichts abgeschnitten */
#hoh_footer_bar > .e-con-inner {
    grid-template-columns: auto auto auto;
    justify-content: stretch;
}
#hoh_footer_bar .elementor-button {
    width: 100%;
    padding: 12px 10px;
    white-space: nowrap;
}
@media (max-width: 767px) {
    #hoh_footer_bar .elementor-button {
        padding: 12px 8px;
    }
    #hoh_footer_bar .elementor-button .elementor-button-content-wrapper {
        gap: 0.35em;
    }
    #hoh_footer_bar .elementor-button-icon .e-font-icon-svg {
        height: 1.25em;
        width: 1.25em;
    }
}

/* header tablet/mobil: burger links, logo mittig */
.elementor-4588 .elementor-element-e01eb77 > .e-con-inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}
.elementor-4588 .elementor-element-e01eb77 .elementor-widget-nav-menu {
    justify-self: start;
}
.elementor-4588 .elementor-element-e01eb77 .elementor-widget-image {
    justify-self: center;
    grid-column: 2;
}

/* startseite: cta gläser (1/3) + gänse essen (2/3), 27.10.2026 */
.ovh-cta{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;--ovh-sand:#F3E2C7;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:1570px;margin:0 auto;
  display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:stretch}
.ovh-cta *{box-sizing:border-box}
.ovh-cta .ovh-box{background:#fff;display:flex;flex-direction:column;min-width:0}
.ovh-cta .ovh-bild{display:block;width:100%;height:auto;margin:0;object-fit:cover}
.ovh-cta .ovh-box--glas{container-type:inline-size}
.ovh-cta .ovh-bildrahmen{flex:100 0 auto;aspect-ratio:3/2;max-height:105cqw;background:#0d0c08;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.ovh-cta .ovh-bildrahmen .ovh-bild{flex:none;width:140%;max-width:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 18%);mask-image:linear-gradient(to bottom,transparent 0,#000 18%)}
/* KI-Label im Glas-Bild (27.10.2026): Das Bild ist auf dem Desktop 140 % breit und wird vom Rahmen beschnitten.
   Das Label-Skript setzt left/top inline an die Ecke des Bildes, damit lag das Label im abgeschnittenen Teil.
   Hier an die Ecke des sichtbaren Rahmens binden. !important nötig wegen der Inline-Styles aus dem Skript. */
.ovh-cta .ovh-bildrahmen > .ki-label{left:auto!important;top:auto!important;right:var(--ki-label-inset,8px)!important;bottom:var(--ki-label-inset,8px)!important}
.ovh-cta .ovh-box--glas .ovh-inhalt{flex:1 0 auto;justify-content:center}
.ovh-cta .ovh-box--gans .ovh-bild{aspect-ratio:2/1;object-position:50% 60%}
.ovh-cta .ovh-inhalt{padding:44px 40px 48px;display:flex;flex-direction:column;flex:1}
.ovh-cta h2{font-family:"Lato",sans-serif;font-weight:700;font-size:30px;letter-spacing:1.5px;text-transform:uppercase;line-height:1.25;margin:0;color:var(--ovh-dunkel);text-align:center}
.ovh-cta .ovh-dach{display:block;font-family:"Kaushan Script",cursive;font-size:24px;letter-spacing:.06em;word-spacing:.12em;color:var(--ovh-akzent);text-align:center;margin:8px 0 0;line-height:1.3}
.ovh-cta p{margin:0;font-size:19px;line-height:1.6}
.ovh-cta .ovh-text{text-align:center;margin-top:22px}
.ovh-cta .ovh-fakten-glas{margin:26px 0 0;border-top:2px solid var(--ovh-akzent);text-align:center}
.ovh-cta .ovh-fakten-glas div{padding:12px 0;border-bottom:1px solid var(--ovh-linie)}
.ovh-cta .ovh-fakten-glas dt{font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;line-height:1.5;color:var(--ovh-sekundaer)}
.ovh-cta .ovh-fakten-glas dd{margin:2px 0 0;font-size:17px;line-height:1.5}
.ovh-cta .ovh-fuss-glas{padding-top:28px;text-align:center}
.ovh-cta .ovh-link{color:var(--ovh-dunkel);font-size:19px;text-decoration:underline;text-underline-offset:4px}
.ovh-cta .ovh-link:hover,.ovh-cta .ovh-link:focus{color:var(--ovh-akzent)}

/* Gänse-Box */
.ovh-cta .ovh-spalten{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}
.ovh-cta h3{font-family:"Lato",sans-serif;font-weight:700;font-size:17px;letter-spacing:3px;text-transform:uppercase;line-height:1.3;margin:0 0 14px;padding-bottom:12px;border-bottom:2px solid var(--ovh-akzent);color:var(--ovh-dunkel)}
.ovh-cta .ovh-menue{background:var(--ovh-flaeche);padding:22px 24px 20px;border-left:3px solid var(--ovh-akzent)}
.ovh-cta .ovh-menue h3{border:0;padding:0;margin:0 0 4px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px}
.ovh-cta .ovh-preis{font-size:24px;letter-spacing:0;white-space:nowrap;color:var(--ovh-sekundaer)}
.ovh-cta .ovh-preis small{font-size:14px;font-weight:400;letter-spacing:0;text-transform:none}
.ovh-cta .ovh-gang{margin:14px 0 0}
.ovh-cta .ovh-gang dt{font-family:"Kaushan Script",cursive;font-size:19px;letter-spacing:.06em;word-spacing:.12em;color:var(--ovh-akzent);line-height:1.4}
.ovh-cta .ovh-gang dd{margin:0 0 10px;font-size:18px;font-weight:700;line-height:1.4}
.ovh-cta .ovh-gang dd:last-child{margin-bottom:0}
.ovh-cta .ovh-klein{font-size:15px;line-height:1.5;color:var(--ovh-sekundaer)}
.ovh-cta .ovh-menue .ovh-klein{margin-top:12px;font-style:italic}
.ovh-cta .ovh-ganzegans{margin-top:28px}
.ovh-cta .ovh-ganzegans p{font-size:17px;line-height:1.55}

.ovh-cta .ovh-liste{list-style:none;margin:0;padding:0}
.ovh-cta .ovh-liste li{padding:11px 0;border-bottom:1px solid var(--ovh-linie);font-size:18px;font-weight:700;line-height:1.4}
.ovh-cta .ovh-liste li:first-child{padding-top:2px}
.ovh-cta .ovh-liste .ovh-klein{display:block;font-weight:400;margin-top:2px}
.ovh-cta .ovh-zeiten{margin-top:22px;font-size:17px;line-height:1.6}
.ovh-cta .ovh-zeiten strong{display:block;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--ovh-sekundaer)}
.ovh-cta .ovh-ganzegans a{color:var(--ovh-dunkel);text-decoration:none;border-bottom:1px solid var(--ovh-akzent)}
.ovh-cta .ovh-ganzegans a:hover,.ovh-cta .ovh-ganzegans a:focus{color:var(--ovh-akzent)}
.ovh-cta .ovh-aktionen{margin-top:auto;padding-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;justify-items:center;align-items:center}
.ovh-cta .ovh-btn{display:inline-flex;align-items:center;gap:10px;padding:20px 40px;font-size:17px;font-weight:700;letter-spacing:3px;text-transform:uppercase;text-decoration:none;line-height:1.2;transition:background .2s,color .2s}
.ovh-cta .ovh-btn--voll{background:var(--ovh-sand);color:var(--ovh-dunkel)}
.ovh-cta .ovh-btn--voll:hover,.ovh-cta .ovh-btn--voll:focus{background:var(--ovh-dunkel);color:#fff}
.ovh-cta .ovh-btn--rand{background:#fff;color:var(--ovh-dunkel);box-shadow:inset 0 0 0 2px var(--ovh-dunkel)}
.ovh-cta .ovh-btn--rand:hover,.ovh-cta .ovh-btn--rand:focus{background:var(--ovh-dunkel);color:#fff}
.ovh-cta .ovh-btn svg{width:18px;height:18px;flex:none}

@media (max-width:1500px){
  .ovh-cta .ovh-btn{padding:18px 24px;font-size:15px;letter-spacing:2px;white-space:nowrap}
}
@media (max-width:1300px){
  .ovh-cta .ovh-btn{padding:16px 18px;font-size:14px;letter-spacing:1.5px}
}
@media (max-width:1200px){
  .ovh-cta{gap:40px}
  .ovh-cta .ovh-inhalt{padding:36px 30px 40px}
  .ovh-cta .ovh-spalten{gap:30px}
  .ovh-cta .ovh-aktionen{column-gap:30px}
}
@media (max-width:1024px){
  .ovh-cta{grid-template-columns:1fr}
  .ovh-cta .ovh-box--glas{display:grid;grid-template-columns:1fr 1fr}
  .ovh-cta .ovh-box--glas{container-type:normal}
  .ovh-cta .ovh-bildrahmen{aspect-ratio:auto;max-height:none}
  .ovh-cta .ovh-bildrahmen .ovh-bild{width:100%;height:100%;object-position:55% 60%;-webkit-mask-image:none;mask-image:none}
}
@media (max-width:700px){
  .ovh-cta .ovh-box--glas{display:flex}
  .ovh-cta .ovh-bildrahmen{aspect-ratio:3/2;flex:none}
  .ovh-cta .ovh-bildrahmen .ovh-bild{width:100%}
  .ovh-cta .ovh-spalten{grid-template-columns:1fr;gap:32px}
  .ovh-cta .ovh-aktionen{grid-template-columns:1fr}
  .ovh-cta .ovh-box--gans .ovh-bild{aspect-ratio:4/3}
  .ovh-cta h2{font-size:24px}
  .ovh-cta .ovh-inhalt{padding:30px 20px 34px}
  .ovh-cta .ovh-btn{width:100%;justify-content:center;padding:18px 20px;letter-spacing:2px}
}

/* seite hausgemachte gläser: abschluss kontakt + restaurant, 27.10.2026 */
.ovh-abschluss{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;--ovh-sand:#F3E2C7;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ovh-abschluss *{box-sizing:border-box}
.ovh-abschluss .ovh-teil{padding:40px 40px 44px;display:flex;flex-direction:column;align-items:flex-start}
.ovh-abschluss .ovh-teil--kontakt{background:var(--ovh-flaeche);border-left:3px solid var(--ovh-akzent)}
.ovh-abschluss .ovh-teil--restaurant{background:var(--ovh-dunkel);color:#fff}
.ovh-abschluss h2{font-family:"Lato",sans-serif;font-weight:700;font-size:22px;letter-spacing:3px;text-transform:uppercase;line-height:1.3;margin:0;color:inherit}
.ovh-abschluss .ovh-dach{display:block;font-family:"Kaushan Script",cursive;font-size:21px;letter-spacing:.06em;word-spacing:.12em;color:var(--ovh-akzent);margin:6px 0 0;line-height:1.4}
.ovh-abschluss .ovh-teil--restaurant .ovh-dach{color:#A9CBBC}
.ovh-abschluss p{font-size:18px;line-height:1.6;margin:18px 0 0}
.ovh-abschluss .ovh-wege{list-style:none;margin:20px 0 0;padding:0;width:100%}
.ovh-abschluss .ovh-wege li{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--ovh-linie);font-size:18px}
.ovh-abschluss .ovh-wege li:first-child{border-top:1px solid var(--ovh-linie)}
.ovh-abschluss .ovh-wege svg{width:20px;height:20px;flex:none;color:var(--ovh-akzent)}
.ovh-abschluss .ovh-wege a{color:var(--ovh-dunkel);text-decoration:none;border-bottom:1px solid var(--ovh-akzent)}
.ovh-abschluss .ovh-wege a:hover,.ovh-abschluss .ovh-wege a:focus{color:var(--ovh-sekundaer)}
.ovh-abschluss .ovh-knoepfe{margin-top:auto;padding-top:28px;display:flex;flex-wrap:wrap;gap:14px}
.ovh-abschluss .ovh-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;font-size:15px;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-decoration:none;line-height:1.2;transition:background .2s,color .2s}
.ovh-abschluss .ovh-btn--voll{background:var(--ovh-sand);color:var(--ovh-dunkel)}
.ovh-abschluss .ovh-btn--voll:hover,.ovh-abschluss .ovh-btn--voll:focus{background:#fff;color:var(--ovh-dunkel)}
.ovh-abschluss .ovh-btn--rand{color:#fff;box-shadow:inset 0 0 0 2px #fff}
.ovh-abschluss .ovh-btn--rand:hover,.ovh-abschluss .ovh-btn--rand:focus{background:#fff;color:var(--ovh-dunkel)}
.ovh-abschluss .ovh-btn svg{width:16px;height:16px;flex:none}
@media (max-width:900px){
  .ovh-abschluss{grid-template-columns:1fr;gap:24px}
}
@media (max-width:600px){
  .ovh-abschluss .ovh-teil{padding:30px 22px 34px}
  .ovh-abschluss h2{font-size:19px;letter-spacing:2px}
  .ovh-abschluss p,.ovh-abschluss .ovh-wege li{font-size:17px}
  .ovh-abschluss .ovh-btn{width:100%;justify-content:center}
}

/* seite hausgemachte gläser (4954): alle blöcke gleich breit, abstand zum footer wie zur tabelle */
.elementor-4954 .ovh-fakten,
.elementor-4954 .ovh-glas,
.elementor-4954 .ovh-abschluss{max-width:960px}
.elementor-4954 .ovh-abschluss{margin-bottom:30px}
/* gläser-seite tablet/mobil: seitenabstand 20px wie auf den anderen seiten */
@media (max-width:1024px){
  .elementor-4954 .e-con > .e-con-inner{padding-left:20px;padding-right:20px}
}

/* hotelzimmer: teaser hochzeitsgäste am seitenende (27.10.2026) */
.ovh-teaser{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-flaeche:#F5F7F6;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:1140px;margin:0 auto;
  display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--ovh-flaeche);border-top:4px solid var(--ovh-akzent)}
.ovh-teaser.ovh-hochzeit{--ovh-akzent:#F9B1B0} /* rosa nur für linien und kreise */
.ovh-teaser *{box-sizing:border-box}
.ovh-teaser__bild{margin:0}
.ovh-teaser__bild img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover}
.ovh-teaser__inhalt{padding:48px 56px;align-self:center}
.ovh-teaser__dach{margin:0 0 .5rem;font-size:.9375rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ovh-sekundaer)}
.ovh-teaser h2{font-family:"Lato",sans-serif;font-weight:700;font-size:1.75rem;line-height:1.3;letter-spacing:3px;text-transform:uppercase;color:var(--ovh-dunkel);margin:0 0 1rem}
.ovh-teaser p{font-size:1.125rem;line-height:1.6;margin:0 0 1rem}
.ovh-teaser__punkte{list-style:none;margin:0 0 1.75rem;padding:0}
.ovh-teaser__punkte li{position:relative;padding:.375rem 0 .375rem 1.75rem;font-size:1.0625rem;line-height:1.5}
.ovh-teaser__punkte li::before{content:"";position:absolute;left:0;top:.8rem;width:11px;height:11px;border-radius:50%;border:3px solid var(--ovh-akzent)}
.ovh-teaser__aktionen{display:flex;flex-wrap:wrap;gap:12px}
.ovh-teaser .ovh-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;font-size:15px;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-decoration:none;line-height:1.2;transition:background .2s,color .2s}
.ovh-teaser .ovh-btn--voll{background:var(--ovh-dunkel);color:#fff}
.ovh-teaser .ovh-btn--voll:hover,.ovh-teaser .ovh-btn--voll:focus{background:var(--ovh-sekundaer);color:#fff}
.ovh-teaser .ovh-btn--rand{background:transparent;color:var(--ovh-dunkel);box-shadow:inset 0 0 0 2px var(--ovh-dunkel)}
.ovh-teaser .ovh-btn--rand:hover,.ovh-teaser .ovh-btn--rand:focus{background:var(--ovh-dunkel);color:#fff}
.ovh-teaser .ovh-btn:focus-visible{outline:3px solid var(--ovh-dunkel);outline-offset:3px}
.ovh-teaser .ovh-btn svg{width:16px;height:16px;flex:none}
@media (max-width:900px){
  .ovh-teaser{grid-template-columns:1fr}
  .ovh-teaser__bild img{min-height:0;aspect-ratio:3/2}
  .ovh-teaser__inhalt{padding:28px 20px 32px}
  .ovh-teaser h2{font-size:1.375rem;letter-spacing:2px}
  .ovh-teaser p{font-size:1.0625rem}
  .ovh-teaser .ovh-btn{width:100%;justify-content:center}
}

/* KI-Label (Plugin-Klassen) seitenweit dezent, 27.10.2026.
   Gesetzt werden nur die Variablen des Plugins, die Varianten dark/light und small/medium bleiben wirksam.
   Bei „mehr Kontrast“ im System greift weiter die Plugin-Regel (Schwarz auf Weiß bzw. umgekehrt). */
.ki-label{--ki-label-font-weight:200;--ki-label-padding:.2em .5em;--ki-label-radius:2px;--ki-label-inset:6px}
.ki-label--small{--ki-label-font-size:11px}
.ki-label--medium{--ki-label-font-size:13px}
.ki-label--dark{--ki-label-bg:rgba(0,0,0,.35);--ki-label-color:rgba(255,255,255,.92)}
.ki-label--light{--ki-label-bg:rgba(255,255,255,.35);--ki-label-color:rgba(0,0,0,.85)}

/* säle: raumtabelle /bankett-saal/ (26.10.2026, aus dem Baustein in die style.css verschoben 29.10.2026) */
.ovh-raeume{--ovh-dunkel:#2B3834;--ovh-sekundaer:#4B5E5B;--ovh-akzent:#719E8B;--ovh-linie:#DDE5E1;--ovh-flaeche:#F5F7F6;
  font-family:"Lato",sans-serif;color:var(--ovh-dunkel);max-width:1100px;margin:0 auto}
.ovh-raeume *{box-sizing:border-box}
.ovh-raeume table{width:100%;border-collapse:collapse;font-size:1.0625rem;line-height:1.5}
.ovh-raeume th,.ovh-raeume td{padding:.875rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--ovh-linie)}
.ovh-raeume thead th{background:var(--ovh-flaeche);font-size:.9375rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ovh-sekundaer);border-bottom:2px solid var(--ovh-akzent)}
.ovh-raeume tbody th{font-weight:700;white-space:nowrap}
.ovh-raeume td.ovh-zahl,.ovh-raeume thead th.ovh-zahl{text-align:right;white-space:nowrap}
.ovh-raeume td.ovh-zahl{font-variant-numeric:tabular-nums}
.ovh-raeume .ovh-klein{display:block;font-size:.9375rem;color:var(--ovh-sekundaer)}
.ovh-raeume .screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Mobil: jede Zeile als Karte, Spaltennamen aus data-label */
@media (max-width:767px){
  .ovh-raeume thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .ovh-raeume table,.ovh-raeume tbody,.ovh-raeume tr,.ovh-raeume th,.ovh-raeume td{display:block;width:100%}
  .ovh-raeume tr{border-left:3px solid var(--ovh-akzent);padding:.25rem 0 .5rem;margin-bottom:1.25rem;background:#fff}
  .ovh-raeume tbody th{font-size:1.1875rem;padding:.75rem 1rem .25rem;border:0;white-space:normal}
  .ovh-raeume td,.ovh-raeume td.ovh-zahl{display:flex;justify-content:space-between;gap:1rem;text-align:right;padding:.5rem 1rem;border-bottom:1px solid var(--ovh-linie);white-space:normal}
  .ovh-raeume td::before{content:attr(data-label);font-weight:700;text-align:left;flex:none}
  .ovh-raeume td:last-child{border-bottom:0}
  .ovh-raeume td:empty{display:none}
}
