.elementor-kit-42{--e-global-color-primary:#FDFBF7;--e-global-color-secondary:#831B2A;--e-global-color-text:#F4F0EA;--e-global-color-accent:#120E0B;--e-global-color-b_walnuss:#1C1511;--e-global-color-b_nussbaum:#2A1F18;--e-global-color-b_karte:#17120E;--e-global-color-b_rauch:#E2DCD2;--e-global-color-b_cognac:#9A6A43;--e-global-color-b_basilikum:#7C8A63;--e-global-color-b_linie:#C4545F52;--e-global-color-b_weinrot:#831B2A;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:84px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:-0.01em;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-size:34px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-text-font-family:"Lato";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:1.75em;--e-global-typography-accent-font-family:"Lato";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:0.28em;--e-global-typography-b_h1-font-family:"Cormorant Garamond";--e-global-typography-b_h1-font-size:140px;--e-global-typography-b_h1-font-weight:500;--e-global-typography-b_h1-line-height:0.95em;--e-global-typography-b_h1-letter-spacing:-0.01em;--e-global-typography-b_h3-font-family:"Cormorant Garamond";--e-global-typography-b_h3-font-size:34px;--e-global-typography-b_h3-font-weight:500;--e-global-typography-b_h3-line-height:1.15em;--e-global-typography-b_button-font-family:"Lato";--e-global-typography-b_button-font-size:13px;--e-global-typography-b_button-font-weight:400;--e-global-typography-b_button-text-transform:uppercase;--e-global-typography-b_button-line-height:1.2em;--e-global-typography-b_button-letter-spacing:0.22em;--e-global-typography-b_status-font-family:"Lato";--e-global-typography-b_status-font-size:26px;--e-global-typography-b_status-font-weight:400;--e-global-typography-b_status-line-height:1.2em;--e-global-typography-b_listentitel-font-family:"Cormorant Garamond";--e-global-typography-b_listentitel-font-size:24px;--e-global-typography-b_listentitel-font-weight:600;--e-global-typography-b_listentitel-line-height:1.2em;--e-global-typography-b_klein-font-family:"Lato";--e-global-typography-b_klein-font-size:16px;--e-global-typography-b_klein-font-weight:300;--e-global-typography-b_klein-line-height:1.6em;--e-global-typography-b_navigation-font-family:"Lato";--e-global-typography-b_navigation-font-size:15px;--e-global-typography-b_navigation-font-weight:400;--e-global-typography-b_navigation-text-transform:uppercase;--e-global-typography-b_navigation-line-height:1.2em;--e-global-typography-b_navigation-letter-spacing:0.18em;background-color:#120E0B;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-42 p{margin-block-end:20px;}.elementor-kit-42 a{color:var( --e-global-color-primary );}.elementor-kit-42 a:hover{color:#FDFBF7;}.elementor-kit-42 h1{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 h2{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 h3{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 h4{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 h5{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 h6{color:#FDFBF7;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;line-height:1.3em;}.elementor-kit-42 button,.elementor-kit-42 input[type="button"],.elementor-kit-42 input[type="submit"],.elementor-kit-42 .elementor-button{border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1200px){.elementor-kit-42{--e-global-typography-primary-font-size:58px;--e-global-typography-secondary-font-size:28px;--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-size:13px;--e-global-typography-b_h1-font-size:96px;--e-global-typography-b_h3-font-size:30px;--e-global-typography-b_button-font-size:13px;--e-global-typography-b_status-font-size:24px;--e-global-typography-b_listentitel-font-size:23px;--e-global-typography-b_klein-font-size:16px;--e-global-typography-b_navigation-font-size:15px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}@media(max-width:767px){.elementor-kit-42{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:24px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:12px;--e-global-typography-b_h1-font-size:52px;--e-global-typography-b_h3-font-size:26px;--e-global-typography-b_button-font-size:13px;--e-global-typography-b_status-font-size:22px;--e-global-typography-b_listentitel-font-size:22px;--e-global-typography-b_klein-font-size:15px;--e-global-typography-b_navigation-font-size:15px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}/* Start custom CSS *//* =====================================================================
   Basilico – Ergänzungen, die Elementor nicht nativ abbildet (freigegeben)
   Alles andere ist mit Elementor-Einstellungen gebaut.
   ===================================================================== */

/* Kursive Akzentwörter in Überschriften (<em> im Titel) in Messing */
.elementor-heading-title em { font-style: italic; color: var(--e-global-color-secondary); }

/* Feine Körnung über der Seite */
body::after { content: ""; position: fixed; inset: -50%; pointer-events: none; z-index: 9999; opacity: .035;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* ---------- Header: liegt über dem Hero, Hintergrund beim Scrollen, blendet beim Runterscrollen aus ---------- */
.bas-kopf { top: 0; left: 0; right: 0; transition: background-color .5s ease, padding .5s ease, transform .6s cubic-bezier(.22,.61,.21,1), border-color .5s; border-bottom: 1px solid transparent; }
.admin-bar .bas-kopf { top: 32px; }
@media (max-width: 782px) { .admin-bar .bas-kopf { top: 46px; } }
.bas-kopf.ist-gescrollt { background-color: rgba(18,14,11,.94); backdrop-filter: blur(8px); padding-top: 16px !important; padding-bottom: 16px !important; border-bottom-color: rgba(131,27,42,.14); }
.bas-kopf.ist-versteckt { transform: translateY(-110%); }
.bas-kopf .bas-logo img { transform-origin: left center; transition: transform .5s ease; }
.bas-kopf.ist-gescrollt .bas-logo img { transform: scale(.84); }

/* ---------- Hero: Bild zoomt beim Laden dezent von 112 % auf 102 % (wie im Entwurf) ---------- */
.bas-hero .elementor-ken-burns { transition: none !important; animation: basHeroZoom 2.8s cubic-bezier(.22,.61,.21,1) both; }
@keyframes basHeroZoom { from { transform: scale(1.12); } to { transform: scale(1.02); } }

/* ---------- Hero: Zeilen gleiten von unten herein ---------- */
.bas-zeile { overflow: hidden; padding-bottom: .06em; }
.bas-zeile .elementor-heading-title { transform: translateY(110%); animation: basHoch 1.4s cubic-bezier(.22,.61,.21,1) .1s forwards; }
.bas-zeile-2 .elementor-heading-title { animation-delay: .25s; }
@keyframes basHoch { to { transform: none; } }

/* ---------- Heute-Box: Doppelrahmen und Status-Punkt ---------- */
.bas-heute { position: relative; backdrop-filter: blur(10px); }
.bas-heute::before { content: ""; position: absolute; inset: 6px; border: 1px solid rgba(131,27,42,.2); pointer-events: none; }
.bas-heute-label .elementor-heading-title { display: flex; align-items: center; }
.bas-heute-label .elementor-heading-title::before { content: ""; width: 9px; height: 9px; border-radius: 50%; margin-right: 10px; flex-shrink: 0;
  background: var(--e-global-color-secondary); animation: basPuls 2.6s infinite; }
.bas-heute.zu .bas-heute-label .elementor-heading-title::before { background: var(--e-global-color-b_rauch); animation: none; }
@keyframes basPuls { 0% { box-shadow: 0 0 0 0 rgba(131,27,42,.6); } 70% { box-shadow: 0 0 0 9px rgba(131,27,42,0); } 100% { box-shadow: 0 0 0 0 rgba(131,27,42,0); } }

/* ---------- Bilder öffnen sich wie ein Vorhang ---------- */
.bas-vorhang .elementor-widget-container { position: relative; overflow: hidden; }
.bas-vorhang img { transform: scale(1.18); transition: transform 2s cubic-bezier(.22,.61,.21,1); }
.bas-vorhang .elementor-widget-container::after { content: ""; position: absolute; inset: -1px; background: var(--bas-vorhang, var(--e-global-color-accent)); transform-origin: top; transition: transform 1.4s cubic-bezier(.22,.61,.21,1); }
.bas-vorhang.sichtbar .elementor-widget-container::after { transform: scaleY(0); }
.bas-vorhang.sichtbar img { transform: none; }
.elementor-editor-active .bas-vorhang .elementor-widget-container::after { display: none; }
.elementor-editor-active .bas-vorhang img { transform: none; }

/* ---------- Öffnungszeiten (Loop Grid aus dem Inhaltstyp): heutiger Tag und Ruhetag ---------- */
.bas-zeiten .ist-heute .bas-zeit-tag .elementor-heading-title, .bas-zeiten .ist-heute .bas-zeit-wert .elementor-heading-title { color: var(--e-global-color-secondary) !important; }
.bas-zeiten .ist-heute .bas-zeit-tag .elementor-heading-title::after { content: "heute"; margin-left: 12px; padding: 2px 8px; font-size: 11px; letter-spacing: .26em;
  text-transform: uppercase; border: 1px solid rgba(131,27,42,.32); vertical-align: middle; }
.bas-zeiten .ist-ruhetag .bas-zeit-wert .elementor-heading-title { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 20px; color: var(--e-global-color-b_rauch); }
/* ---------- Küche: dezenter Zoom und mitlaufende Linie beim Überfahren (wie im Entwurf) ---------- */
.bas-gericht { position: relative; }
.bas-gericht-bild { inset: 0; transition: transform 1.6s cubic-bezier(.22,.61,.21,1); }
.bas-gericht:hover .bas-gericht-bild { transform: scale(1.06); }
.bas-gericht-linie .elementor-divider-separator { transition: width .8s cubic-bezier(.22,.61,.21,1); }
.bas-gericht:hover .bas-gericht-linie .elementor-divider-separator { width: 90px !important; }

/* ---------- Feiern: Kacheln werden beim Überfahren breiter, der Text blendet ein (wie bei Travéa) ---------- */
.bas-kacheln > .bas-kachel { flex: 1 1 0; min-width: 0; transition: flex-grow .7s cubic-bezier(.22,.61,.21,1); cursor: pointer; }
.bas-kacheln > .bas-kachel .bas-kachel-text { max-height: 0; opacity: 0; overflow: hidden; margin-top: 0 !important;
  transition: max-height .7s cubic-bezier(.22,.61,.21,1), opacity .5s ease .1s, margin .5s ease; }
.bas-kacheln > .bas-kachel.auf { flex-grow: 1.8; }
.bas-kacheln > .bas-kachel.auf .bas-kachel-text { max-height: 220px; opacity: 1; margin-top: 16px !important; }
.bas-kacheln > .bas-kachel .bas-gericht-linie .elementor-divider-separator { transition: width .8s cubic-bezier(.22,.61,.21,1); }
.bas-kacheln > .bas-kachel.auf .bas-gericht-linie .elementor-divider-separator { width: 90px !important; }
@media (hover: hover) and (min-width: 768px) {
  .bas-kacheln:hover > .bas-kachel.auf:not(:hover) { flex-grow: 1; }
  .bas-kacheln:hover > .bas-kachel.auf:not(:hover) .bas-kachel-text { max-height: 0; opacity: 0; margin-top: 0 !important; }
  .bas-kacheln > .bas-kachel:hover { flex-grow: 1.8; }
  .bas-kacheln > .bas-kachel:hover .bas-kachel-text { max-height: 220px; opacity: 1; margin-top: 16px !important; }
  .bas-kacheln > .bas-kachel:hover .bas-gericht-linie .elementor-divider-separator { width: 90px !important; }
}
@media (max-width: 767px) { .bas-kacheln > .bas-kachel .bas-kachel-text { max-height: none; opacity: 1; margin-top: 14px !important; } }

.bas-fuss-unten p { margin: 0; }

.bas-kachel-icon .elementor-icon { display: block; line-height: 0; }
.bas-kachel-icon svg { height: auto; fill: none !important; }

/* ---------- Listen mit feinen Trennlinien (Feiern) ---------- */
.bas-linien ul { border-top: 1px solid rgba(131,27,42,.32); }
.bas-linien li { padding: 20px 0 !important; margin: 0 !important; border-bottom: 1px solid rgba(131,27,42,.32); }
.bas-linien .elementor-price-list-description { margin-top: 4px; }
.bas-skript { position: absolute; width: 0; height: 0; overflow: hidden; }

/* ---------- Rechtstexte: Überschriften und Abstände im Text-Widget ---------- */
.bas-rechtstext h2 { font-size: 34px; margin: 56px 0 16px; }
.bas-rechtstext h2:first-child { margin-top: 0; }
.bas-rechtstext h3 { font-size: 26px; margin: 44px 0 12px; }
.bas-rechtstext h4 { font-size: 21px; margin: 32px 0 10px; }
.bas-rechtstext ul { padding-left: 1.2em; }
.bas-rechtstext .platzhalter { color: var(--e-global-color-secondary); font-style: italic; }

/* ---------- Kontaktformular: dunkle Datums-/Auswahlfelder, Links im Zustimmungstext ---------- */
.bas-formular input, .bas-formular select, .bas-formular textarea { color-scheme: dark; }
.bas-formular .elementor-field-type-acceptance label { text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 300; color: var(--e-global-color-text); }
.bas-formular .elementor-field-type-acceptance a { color: var(--e-global-color-secondary); text-decoration: underline; text-underline-offset: 3px; }
.bas-formular .elementor-field-textual:focus { border-color: var(--e-global-color-secondary) !important; box-shadow: none; }
.bas-formular ::placeholder { color: rgba(240,230,214,.4); }

/* ---------- Buttons: schlanker Pfeil ---------- */
.elementor-button .elementor-button-icon svg { width: 1.9em; height: auto; }
.elementor-button .elementor-button-icon { transition: transform .4s cubic-bezier(.22,.61,.21,1); }
.elementor-button:hover .elementor-button-icon { transform: translateX(4px); }

/* ---------- Vorhang auch für Bild-Container (Gerichte, Feiern-Kacheln) ---------- */
.bas-vorhang-con::after { content: ""; position: absolute; inset: -1px; z-index: 5; background: var(--bas-vorhang, var(--e-global-color-accent)); pointer-events: none;
  transform-origin: top; transition: transform 1.4s cubic-bezier(.22,.61,.21,1); }
.bas-vorhang-con.sichtbar::after { transform: scaleY(0); }
.bas-gericht.bas-vorhang-con .bas-gericht-bild { transform: scale(1.18); transition: transform 2s cubic-bezier(.22,.61,.21,1); }
.bas-gericht.bas-vorhang-con.sichtbar .bas-gericht-bild { transform: none; }
.bas-gericht.bas-vorhang-con.sichtbar:hover .bas-gericht-bild { transform: scale(1.06); transition-duration: 1.6s; }
.elementor-editor-active .bas-vorhang-con::after { display: none; }

/* ---------- Mobiles Menü: animierter Hamburger (öffnet/schließt das Popup) ---------- */
.bas-burger .elementor-button { position: relative; width: 44px; height: 44px; padding: 0 !important; font-size: 0 !important; background: transparent !important; border: 0; }
.bas-burger .elementor-button::before, .bas-burger .elementor-button::after { content: ""; position: absolute; right: 8px; height: 1.5px;
  background: var(--e-global-color-primary); transition: transform .5s cubic-bezier(.77,0,.18,1), width .5s cubic-bezier(.77,0,.18,1), top .5s cubic-bezier(.77,0,.18,1), background-color .3s; }
.bas-burger .elementor-button::before { top: 17px; width: 28px; }
.bas-burger .elementor-button::after { top: 26px; width: 18px; }
.bas-burger .elementor-button:hover::after { width: 28px; }
.bas-burger.aktiv .elementor-button::before { top: 21.5px; transform: rotate(45deg); background-color: var(--e-global-color-secondary); }
.bas-burger.aktiv .elementor-button::after { top: 21.5px; width: 28px; transform: rotate(-45deg); background-color: var(--e-global-color-secondary); }

/* ---------- Popup „Menü mobil“: unter dem Header, Punkte blenden nacheinander ein ---------- */
#elementor-popup-modal-485 { z-index: 95 !important; }
#elementor-popup-modal-485 .dialog-widget-content { box-shadow: none; }
.bas-kopf.menue-offen { background-color: transparent !important; backdrop-filter: none !important; border-bottom-color: transparent !important; transform: none !important; }
.bas-menue-liste .elementor-nav-menu { border-top: 1px solid rgba(131,27,42,.25); }
.bas-menue-liste .elementor-nav-menu li { border-bottom: 1px solid rgba(131,27,42,.25); opacity: 0; transform: translateY(18px); animation: basMenuePunkt .7s cubic-bezier(.22,.61,.21,1) forwards; }
.bas-menue-liste .elementor-nav-menu li:nth-child(1) { animation-delay: .15s; } .bas-menue-liste .elementor-nav-menu li:nth-child(2) { animation-delay: .22s; }
.bas-menue-liste .elementor-nav-menu li:nth-child(3) { animation-delay: .29s; } .bas-menue-liste .elementor-nav-menu li:nth-child(4) { animation-delay: .36s; }
.bas-menue-liste .elementor-nav-menu li:nth-child(5) { animation-delay: .43s; } .bas-menue-liste .elementor-nav-menu li:nth-child(6) { animation-delay: .50s; }
.bas-menue-liste a.elementor-item { display: flex !important; width: 100%; align-items: center; justify-content: space-between; gap: 28px; }
.bas-menue-liste a.elementor-item::after { content: "" !important; display: block !important; position: static !important; flex-shrink: 0; margin-left: auto; width: 26px; height: 11px; opacity: .7 !important; transform: none !important; visibility: visible !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 12' fill='none' stroke='%23831B2A' stroke-width='1.2' stroke-linecap='round'%3E%3Cpath d='M1 6h27'/%3E%3Cpath d='M23 1.5L28 6l-5 4.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.bas-menue-fuss { opacity: 0; animation: basMenuePunkt .7s cubic-bezier(.22,.61,.21,1) .55s forwards; }
@keyframes basMenuePunkt { to { opacity: 1; transform: none; } }
html.bas-menue-offen, html.bas-menue-offen body { overflow: hidden; }

/* ---------- Lageplan (gezeichnet, ohne Google Maps) ---------- */
.bas-lageplan-widget, .bas-lageplan-widget .elementor-widget-container { width: 100%; }
.bas-lageplan figcaption { font-family: "Lato", sans-serif; font-weight: 300; }
.bas-lageplan { position: relative; margin: 0; border-top: 1px solid rgba(131,27,42,.32); background: #17120e; }
.bas-lageplan svg { display: block; width: 100%; height: clamp(340px, 34vw, 540px); }
.bas-lageplan .w { fill: url(#wellen); }
.bas-lageplan .insel { fill: url(#licht); stroke: #831B2A; stroke-width: 1.4; }
.bas-lageplan .str { fill: none; stroke: rgba(131,27,42,.38); stroke-width: 2.2; stroke-linecap: round; }
.bas-lageplan .str.h { stroke: rgba(131,27,42,.7); stroke-width: 3; }
.bas-lageplan .zeichne { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 2.4s cubic-bezier(.22,.61,.21,1); }
.bas-lageplan.sichtbar .zeichne { stroke-dashoffset: 0; }
.bas-lageplan .weg { fill: none; stroke: #E07A82; stroke-width: 3.2; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 3.2s cubic-bezier(.22,.61,.21,1) 1.2s; filter: drop-shadow(0 0 6px rgba(224,122,130,.45)); }
.bas-lageplan.sichtbar .weg { stroke-dashoffset: 0; }
.bas-lageplan .ort { paint-order: stroke; stroke: #17120e; stroke-width: 5px; stroke-linejoin: round; font-family: "Lato", sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; fill: #FDFBF7; }
.bas-lageplan .wasser-name { paint-order: stroke; stroke: #28231c; stroke-width: 6px; font-family: "Cormorant Garamond", serif; font-style: italic; font-weight: 500; font-size: 21px; fill: #a9b0a0; }
.bas-lageplan .bau { fill: #831B2A; }
.bas-lageplan .ziel { opacity: 0; transform: translateY(10px); transition: opacity .8s cubic-bezier(.22,.61,.21,1) 4s, transform .8s cubic-bezier(.22,.61,.21,1) 4s; }
.bas-lageplan.sichtbar .ziel { opacity: 1; transform: none; }
.bas-lageplan .ziel-ring { fill: none; stroke: #831B2A; stroke-width: 2; transform-box: fill-box; transform-origin: center; animation: basRing 2.6s cubic-bezier(.22,.61,.21,1) infinite; }
.bas-lageplan .schild { fill: #FDFBF7; }
.bas-lageplan .schild-titel { font-family: "Cormorant Garamond", serif; font-size: 28px; font-weight: 600; fill: #241a13; }
.bas-lageplan .schild-unter { font-family: "Lato", sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .12em; fill: #831B2A; text-transform: uppercase; }
@keyframes basRing { 0% { transform: scale(.5); opacity: 1; } 100% { transform: scale(2.6); opacity: 0; } }
.bas-lageplan figcaption { position: absolute; left: clamp(20px, 5vw, 72px); bottom: 28px; display: flex; flex-wrap: wrap; gap: 6px 28px; padding: 14px 22px; background: rgba(18,14,11,.88); border: 1px solid rgba(131,27,42,.32); font-size: 16px; color: #F4F0EA; }
.bas-lageplan .str.fern { stroke: rgba(131,27,42,.16); stroke-width: 1.6; }
.bas-lageplan .bahn { fill: none; stroke: rgba(240,230,214,.22); stroke-width: 1.2; stroke-dasharray: 3 7; }
.bas-lageplan .bezirk { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 24px; fill: rgba(240,230,214,.35); }
.bas-lageplan figcaption b { color: #FDFBF7; font-weight: 500; }

/* =====================================================================
   Seitenübergang „Blüte“ mit dem Basilico-Emblem (ersetzt die Elementor-Seitenübergänge)
   Laden: Emblem zeichnet sich im Uhrzeigersinn, feiner Ring zieht mit – dann öffnet sich die Seite
   kreisförmig aus der Mitte (Blende). Verlassen: Blende schließt sich zur Mitte, Emblem zeichnet sich neu.
   ===================================================================== */
/* Blende: ein Kreis in der Bildmitte, dessen dunkler „Rand“ den Bildschirm deckt – der Kreis wächst und öffnet die Seite */
html::before { content: ""; position: fixed; left: 50%; top: 50%; width: 0; height: 0; border-radius: 50%; transform: translate(-50%, -50%);
  z-index: 2147483000; pointer-events: none; box-shadow: 0 0 0 150vmax #120E0B, inset 0 0 6vmax 3vmax #120E0B;
  transition: width 1.3s cubic-bezier(.7,0,.2,1) .25s, height 1.3s cubic-bezier(.7,0,.2,1) .25s; }
body::before { content: ""; position: fixed; inset: 0; z-index: 2147483001; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cdefs%3E%3Cmask id='m'%3E%3Ccircle class='w' cx='300' cy='300' r='165' fill='none' stroke='%23fff' stroke-width='330' pathLength='100' stroke-dasharray='100' stroke-dashoffset='100' transform='rotate(-90 300 300)'/%3E%3C/mask%3E%3C/defs%3E%3Cstyle%3E.w%7Banimation:w 1.2s cubic-bezier(.65,0,.35,1) 0.00s forwards%7D.e%7Bfill:%23831B2A;transform-origin:300px 300px;transform:rotate(-35deg) scale(.9);animation:e 1.5s cubic-bezier(.22,.61,.21,1) 0.00s forwards%7D.r%7Bfill:none;stroke:%23831B2A;stroke-width:1.2;stroke-opacity:.45;animation:r 1.6s cubic-bezier(.65,0,.35,1) 0.05s forwards%7D%40keyframes w%7Bto%7Bstroke-dashoffset:0%7D%7D%40keyframes e%7Bto%7Btransform:none%7D%7D%40keyframes r%7B0%25%7Bstroke-dashoffset:100;opacity:1%7D70%25%7Bstroke-dashoffset:0;opacity:1%7D100%25%7Bstroke-dashoffset:0;opacity:0%7D%7D%3C/style%3E%3Ccircle class='r' cx='300' cy='300' r='232' pathLength='100' stroke-dasharray='100' stroke-dashoffset='100' transform='rotate(-90 300 300)'/%3E%3Cg mask='url(%23m)'%3E%3Cg class='e'%3E%3Cg transform='translate(140 140) scale(.625)'%3E%3Cpath d='M249.6,253.41c-2.36-2.36-4.69-4.72-7.03-7.06-7.52-7.6-14.98-15.09-22.39-22.33,7.25,7.41,14.73,14.84,22.33,22.39,2.33,2.31,4.69,4.64,7.06,7,.87.87,1.74,1.74,2.61,2.6v-.03c-.87-.87-1.74-1.74-2.58-2.58ZM269.43,246.35c-2.33,2.36-4.69,4.72-7.11,7.11h.05c2.39-2.36,4.75-4.72,7.11-7.06,7.6-7.54,15.09-14.98,22.33-22.39-7.41,7.25-14.87,14.73-22.39,22.33Z'/%3E%3Cpath d='M246.42,242.53c-7.54-7.6-14.98-15.11-22.41-22.36,7.25,7.41,14.73,14.87,22.33,22.39,1.17,1.17,2.36,2.33,3.55,3.5-1.17-1.19-2.31-2.36-3.47-3.53ZM249.92,246.08c1.17,1.17,2.33,2.36,3.53,3.55l.03-.03c-1.19-1.19-2.39-2.36-3.55-3.53ZM246.34,269.45c-7.6,7.54-15.09,14.98-22.33,22.39,7.44-7.25,14.87-14.76,22.41-22.36,2.31-2.33,4.64-4.67,7-7.03v-.05c-2.36,2.39-4.72,4.72-7.08,7.06Z'/%3E%3Cpath d='M510.34,254.17c-8.55-9.42-15.77-21.68-22.71-33.54-6.49-11.02-13.19-22.44-21.06-31.8-20.38-24.91-60.62-43.85-95.14-29.93-16.25,6.57-31.56,16.36-46.48,28.14,11.83-14.92,21.63-30.26,28.17-46.48,13.89-34.49-5.05-74.76-29.9-95.11-9.42-7.9-20.81-14.6-31.86-21.06-11.86-6.97-24.12-14.16-33.54-22.71l-1.82-1.66-1.82,1.66c-9.42,8.55-21.68,15.74-33.54,22.71-11.04,6.46-22.44,13.16-31.83,21.06-24.88,20.35-43.82,60.62-29.93,95.11,6.54,16.23,16.34,31.56,28.17,46.48-14.92-11.78-30.23-21.57-46.48-28.14-34.52-13.92-74.76,5.02-95.11,29.9-7.9,9.39-14.6,20.81-21.08,31.83-6.95,11.86-14.17,24.12-22.71,33.54l-1.66,1.82,1.66,1.85c8.55,9.39,15.77,21.68,22.71,33.54,6.49,11.02,13.19,22.44,21.06,31.8,15.6,19.08,42.87,34.65,70.28,34.65,8.39,0,16.77-1.47,24.86-4.72,16.25-6.54,31.59-16.36,46.54-28.22-11.83,14.95-21.65,30.28-28.22,46.57-13.89,34.49,5.05,74.76,29.9,95.11,9.42,7.9,20.81,14.6,31.86,21.06,11.86,6.97,24.12,14.16,33.54,22.71l1.82,1.66,1.82-1.66c9.42-8.55,21.68-15.74,33.54-22.71,11.04-6.46,22.44-13.16,31.83-21.06,24.88-20.35,43.82-60.62,29.93-95.11-6.57-16.28-16.39-31.61-28.22-46.57,14.95,11.86,30.28,21.68,46.54,28.22,8.09,3.26,16.47,4.72,24.86,4.72,27.41,0,54.68-15.58,70.25-34.63,7.9-9.39,14.6-20.81,21.08-31.83,6.95-11.86,14.17-24.15,22.71-33.54l1.66-1.85-1.66-1.82ZM163.93,138.52c-9.66-23.93-3.01-63.25,28.36-88.92,9.06-7.6,20.27-14.16,31.1-20.54,11.37-6.68,23.09-13.54,32.62-21.76,9.52,8.22,21.25,15.09,32.62,21.76,10.83,6.38,22.03,12.94,31.12,20.57,31.34,25.64,37.99,64.96,28.33,88.9-11.61,28.85-34.08,54.98-59.83,81.41-.08.08-.16.16-.24.24-7.25,7.41-14.73,14.87-22.33,22.39-2.36,2.33-4.72,4.67-7.08,7.06v-.05c.16-10.31.19-20.65.19-30.96-.03-4.72-.05-9.47-.08-14.19,2.63-24.07,18.67-49.01,37.34-63.85-14.52,8.82-29.96,25.97-37.58,44.07-.35-26.1-1.06-52.21-2.44-78.29-1.28,25.94-2.12,51.91-2.52,77.91-4.99-11.64-13.27-22.12-21.79-31.18-4.69-4.78-9.88-9.23-15.71-12.51,18.62,14.79,34.6,39.62,37.31,63.61-.11,15.14-.03,30.31.19,45.45l-.03.03c-1.19-1.19-2.36-2.39-3.53-3.55t-.03-.03c-1.19-1.17-2.39-2.33-3.55-3.5-7.6-7.52-15.09-14.98-22.33-22.39l-.24-.24c-25.75-26.43-48.22-52.56-59.83-81.41ZM138.53,348.09c-23.96,9.66-63.25,3.01-88.92-28.36-7.6-9.06-14.19-20.27-20.54-31.1-6.68-11.37-13.57-23.12-21.76-32.64,8.19-9.5,15.09-21.25,21.76-32.62,6.35-10.83,12.94-22.03,20.57-31.12,25.64-31.34,64.94-37.99,88.9-28.33,28.85,11.64,54.98,34.08,81.38,59.83.08.08.16.19.27.27,7.41,7.25,14.87,14.73,22.39,22.33,2.33,2.33,4.67,4.69,7.03,7.06.84.84,1.71,1.71,2.58,2.58v.03c-.87-.87-1.74-1.74-2.61-2.6-10.34-.16-20.65-.19-30.99-.19-4.72.03-9.44.05-14.17.08h-.03c-24.07-2.66-48.98-18.67-63.82-37.31,8.82,14.52,25.94,29.93,44.01,37.56-26.08.35-52.16,1.09-78.23,2.44,25.97,1.28,51.91,2.12,77.91,2.52-11.64,5.02-22.14,13.3-31.21,21.79-4.78,4.72-9.2,9.9-12.48,15.71,14.79-18.59,39.59-34.57,63.61-37.31,15.17.11,30.31.03,45.48-.19-.46.46-.92.92-1.36,1.36-1.9,1.93-3.83,3.85-5.73,5.78-7.35,7.41-14.63,14.71-21.87,21.82-.19.16-.35.35-.54.52-26.51,25.86-52.7,48.44-81.62,60.11ZM348.07,373.46c9.66,23.96,3.01,63.28-28.36,88.92-9.06,7.63-20.27,14.19-31.1,20.57-11.37,6.68-23.09,13.54-32.62,21.76-9.52-8.22-21.25-15.09-32.62-21.76-10.83-6.38-22.03-12.94-31.12-20.57-31.34-25.64-37.99-64.96-28.33-88.92,11.61-28.85,34.08-54.98,59.83-81.38l.24-.24c7.25-7.41,14.73-14.84,22.33-22.39,2.36-2.33,4.72-4.67,7.08-7.06v.05c-.16,10.34-.19,20.65-.19,30.96.03,4.72.05,9.47.08,14.19-2.63,24.07-18.67,49.01-37.34,63.85,14.52-8.82,29.96-25.97,37.58-44.07.35,26.1,1.06,52.21,2.44,78.29,1.28-25.94,2.12-51.91,2.52-77.91,4.99,11.64,13.27,22.12,21.79,31.18,4.69,4.78,9.88,9.2,15.71,12.51-18.62-14.82-34.6-39.62-37.31-63.61.11-15.14.03-30.31-.19-45.45-.84-.84-1.68-1.71-2.52-2.55.84.84,1.68,1.68,2.52,2.5,0,.03.03.03.03.03,2.39,2.42,4.75,4.75,7.11,7.08,7.6,7.54,15.09,14.98,22.33,22.39.11.08.19.16.24.24,25.75,26.4,48.22,52.54,59.83,81.38ZM482.94,288.63c-6.35,10.83-12.94,22.03-20.57,31.12-25.64,31.34-64.94,37.99-88.9,28.33-28.93-11.67-55.11-34.25-81.62-60.11-.19-.19-.38-.35-.54-.52-7.25-7.11-14.52-14.41-21.87-21.82-1.9-1.93-3.83-3.85-5.73-5.78-.46-.43-.9-.87-1.3-1.3,10.34.19,20.68.22,31.02.22,4.8-.03,9.58-.05,14.38-.08h.03c24.02,2.74,48.82,18.72,63.61,37.31-8.79-14.49-25.91-29.9-44.01-37.56,26.08-.38,52.16-1.09,78.23-2.47-25.97-1.28-51.97-2.09-77.96-2.47,11.67-5.02,22.17-13.3,31.23-21.82,4.8-4.72,9.23-9.9,12.51-15.71-14.84,18.64-39.75,34.65-63.82,37.31h-.03c-15.06-.11-30.12-.05-45.21.16h-.05c2.42-2.39,4.78-4.75,7.11-7.11,7.52-7.6,14.98-15.09,22.39-22.33.11-.08.19-.19.27-.27,26.4-25.75,52.54-48.19,81.38-59.83,23.96-9.66,63.25-3.01,88.92,28.36,7.6,9.06,14.19,20.27,20.54,31.1,6.68,11.37,13.57,23.12,21.76,32.62-8.2,9.52-15.09,21.27-21.76,32.64Z'/%3E%3Cpath d='M252.17,255.99v.03c-.87-.87-1.74-1.74-2.61-2.6h.03c.84.84,1.71,1.71,2.58,2.58Z'/%3E%3Cpath d='M269.49,265.59c-1.9-1.9-3.85-3.8-5.78-5.73,1.9,1.93,3.83,3.85,5.73,5.78,7.35,7.41,14.63,14.71,21.87,21.82-7.08-7.25-14.41-14.52-21.82-21.87ZM242.51,265.59c-7.41,7.35-14.73,14.63-21.82,21.87,7.25-7.11,14.52-14.41,21.87-21.82,1.9-1.93,3.83-3.85,5.73-5.78-1.93,1.93-3.88,3.83-5.78,5.73Z'/%3E%3Cpath d='M258.55,262.36s-.03,0-.03.03c-.84-.84-1.68-1.71-2.52-2.55.84.84,1.68,1.68,2.52,2.5,0,.03.03.03.03.03Z'/%3E%3Cpath d='M265.66,269.45c-2.36-2.33-4.72-4.67-7.11-7.08,0,0-.03,0-.03-.03-.84-.81-1.68-1.66-2.52-2.5.84.84,1.68,1.71,2.52,2.55,2.39,2.36,4.72,4.72,7.06,7.08,7.54,7.6,14.98,15.11,22.41,22.36-7.25-7.41-14.73-14.84-22.33-22.39ZM265.58,242.53c-2.31,2.33-4.64,4.67-7,7.03v.05c2.36-2.39,4.72-4.72,7.08-7.06,7.6-7.52,15.09-14.98,22.33-22.39-7.44,7.25-14.87,14.76-22.41,22.36Z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 50% 50% / 220px 220px no-repeat;
  animation: basGlanz 2.6s ease-in-out 1.3s infinite; transition: opacity .55s ease, transform .7s cubic-bezier(.22,.61,.21,1); }
@keyframes basGlanz { 0%, 100% { filter: drop-shadow(0 0 0 rgba(131,27,42,0)); } 50% { filter: drop-shadow(0 0 16px rgba(131,27,42,.4)); } }
/* Seite ist geladen: Emblem tritt zurück, Blende öffnet sich */
html.bas-bereit::before { width: 165vmax; height: 165vmax; }
html.bas-bereit body::before { opacity: 0; transform: scale(.86); animation: none; }
/* Seite wird verlassen: Blende schließt sich zur Mitte, Emblem zeichnet sich neu */
html.bas-vorbereiten::before { width: 165vmax; height: 165vmax; transition: none; }
html.bas-vorbereiten body::before { opacity: 0; transition: none; animation: none; }
html.bas-geht::before { width: 0; height: 0; transition: width .85s cubic-bezier(.7,0,.2,1), height .85s cubic-bezier(.7,0,.2,1); }
html.bas-geht body::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cdefs%3E%3Cmask id='m'%3E%3Ccircle class='w' cx='300' cy='300' r='165' fill='none' stroke='%23fff' stroke-width='330' pathLength='100' stroke-dasharray='100' stroke-dashoffset='100' transform='rotate(-90 300 300)'/%3E%3C/mask%3E%3C/defs%3E%3Cstyle%3E.w%7Banimation:w 1.2s cubic-bezier(.65,0,.35,1) 0.45s forwards%7D.e%7Bfill:%23831B2A;transform-origin:300px 300px;transform:rotate(-35deg) scale(.9);animation:e 1.5s cubic-bezier(.22,.61,.21,1) 0.45s forwards%7D.r%7Bfill:none;stroke:%23831B2A;stroke-width:1.2;stroke-opacity:.45;animation:r 1.6s cubic-bezier(.65,0,.35,1) 0.50s forwards%7D%40keyframes w%7Bto%7Bstroke-dashoffset:0%7D%7D%40keyframes e%7Bto%7Btransform:none%7D%7D%40keyframes r%7B0%25%7Bstroke-dashoffset:100;opacity:1%7D70%25%7Bstroke-dashoffset:0;opacity:1%7D100%25%7Bstroke-dashoffset:0;opacity:0%7D%7D%3C/style%3E%3Ccircle class='r' cx='300' cy='300' r='232' pathLength='100' stroke-dasharray='100' stroke-dashoffset='100' transform='rotate(-90 300 300)'/%3E%3Cg mask='url(%23m)'%3E%3Cg class='e'%3E%3Cg transform='translate(140 140) scale(.625)'%3E%3Cpath d='M249.6,253.41c-2.36-2.36-4.69-4.72-7.03-7.06-7.52-7.6-14.98-15.09-22.39-22.33,7.25,7.41,14.73,14.84,22.33,22.39,2.33,2.31,4.69,4.64,7.06,7,.87.87,1.74,1.74,2.61,2.6v-.03c-.87-.87-1.74-1.74-2.58-2.58ZM269.43,246.35c-2.33,2.36-4.69,4.72-7.11,7.11h.05c2.39-2.36,4.75-4.72,7.11-7.06,7.6-7.54,15.09-14.98,22.33-22.39-7.41,7.25-14.87,14.73-22.39,22.33Z'/%3E%3Cpath d='M246.42,242.53c-7.54-7.6-14.98-15.11-22.41-22.36,7.25,7.41,14.73,14.87,22.33,22.39,1.17,1.17,2.36,2.33,3.55,3.5-1.17-1.19-2.31-2.36-3.47-3.53ZM249.92,246.08c1.17,1.17,2.33,2.36,3.53,3.55l.03-.03c-1.19-1.19-2.39-2.36-3.55-3.53ZM246.34,269.45c-7.6,7.54-15.09,14.98-22.33,22.39,7.44-7.25,14.87-14.76,22.41-22.36,2.31-2.33,4.64-4.67,7-7.03v-.05c-2.36,2.39-4.72,4.72-7.08,7.06Z'/%3E%3Cpath d='M510.34,254.17c-8.55-9.42-15.77-21.68-22.71-33.54-6.49-11.02-13.19-22.44-21.06-31.8-20.38-24.91-60.62-43.85-95.14-29.93-16.25,6.57-31.56,16.36-46.48,28.14,11.83-14.92,21.63-30.26,28.17-46.48,13.89-34.49-5.05-74.76-29.9-95.11-9.42-7.9-20.81-14.6-31.86-21.06-11.86-6.97-24.12-14.16-33.54-22.71l-1.82-1.66-1.82,1.66c-9.42,8.55-21.68,15.74-33.54,22.71-11.04,6.46-22.44,13.16-31.83,21.06-24.88,20.35-43.82,60.62-29.93,95.11,6.54,16.23,16.34,31.56,28.17,46.48-14.92-11.78-30.23-21.57-46.48-28.14-34.52-13.92-74.76,5.02-95.11,29.9-7.9,9.39-14.6,20.81-21.08,31.83-6.95,11.86-14.17,24.12-22.71,33.54l-1.66,1.82,1.66,1.85c8.55,9.39,15.77,21.68,22.71,33.54,6.49,11.02,13.19,22.44,21.06,31.8,15.6,19.08,42.87,34.65,70.28,34.65,8.39,0,16.77-1.47,24.86-4.72,16.25-6.54,31.59-16.36,46.54-28.22-11.83,14.95-21.65,30.28-28.22,46.57-13.89,34.49,5.05,74.76,29.9,95.11,9.42,7.9,20.81,14.6,31.86,21.06,11.86,6.97,24.12,14.16,33.54,22.71l1.82,1.66,1.82-1.66c9.42-8.55,21.68-15.74,33.54-22.71,11.04-6.46,22.44-13.16,31.83-21.06,24.88-20.35,43.82-60.62,29.93-95.11-6.57-16.28-16.39-31.61-28.22-46.57,14.95,11.86,30.28,21.68,46.54,28.22,8.09,3.26,16.47,4.72,24.86,4.72,27.41,0,54.68-15.58,70.25-34.63,7.9-9.39,14.6-20.81,21.08-31.83,6.95-11.86,14.17-24.15,22.71-33.54l1.66-1.85-1.66-1.82ZM163.93,138.52c-9.66-23.93-3.01-63.25,28.36-88.92,9.06-7.6,20.27-14.16,31.1-20.54,11.37-6.68,23.09-13.54,32.62-21.76,9.52,8.22,21.25,15.09,32.62,21.76,10.83,6.38,22.03,12.94,31.12,20.57,31.34,25.64,37.99,64.96,28.33,88.9-11.61,28.85-34.08,54.98-59.83,81.41-.08.08-.16.16-.24.24-7.25,7.41-14.73,14.87-22.33,22.39-2.36,2.33-4.72,4.67-7.08,7.06v-.05c.16-10.31.19-20.65.19-30.96-.03-4.72-.05-9.47-.08-14.19,2.63-24.07,18.67-49.01,37.34-63.85-14.52,8.82-29.96,25.97-37.58,44.07-.35-26.1-1.06-52.21-2.44-78.29-1.28,25.94-2.12,51.91-2.52,77.91-4.99-11.64-13.27-22.12-21.79-31.18-4.69-4.78-9.88-9.23-15.71-12.51,18.62,14.79,34.6,39.62,37.31,63.61-.11,15.14-.03,30.31.19,45.45l-.03.03c-1.19-1.19-2.36-2.39-3.53-3.55t-.03-.03c-1.19-1.17-2.39-2.33-3.55-3.5-7.6-7.52-15.09-14.98-22.33-22.39l-.24-.24c-25.75-26.43-48.22-52.56-59.83-81.41ZM138.53,348.09c-23.96,9.66-63.25,3.01-88.92-28.36-7.6-9.06-14.19-20.27-20.54-31.1-6.68-11.37-13.57-23.12-21.76-32.64,8.19-9.5,15.09-21.25,21.76-32.62,6.35-10.83,12.94-22.03,20.57-31.12,25.64-31.34,64.94-37.99,88.9-28.33,28.85,11.64,54.98,34.08,81.38,59.83.08.08.16.19.27.27,7.41,7.25,14.87,14.73,22.39,22.33,2.33,2.33,4.67,4.69,7.03,7.06.84.84,1.71,1.71,2.58,2.58v.03c-.87-.87-1.74-1.74-2.61-2.6-10.34-.16-20.65-.19-30.99-.19-4.72.03-9.44.05-14.17.08h-.03c-24.07-2.66-48.98-18.67-63.82-37.31,8.82,14.52,25.94,29.93,44.01,37.56-26.08.35-52.16,1.09-78.23,2.44,25.97,1.28,51.91,2.12,77.91,2.52-11.64,5.02-22.14,13.3-31.21,21.79-4.78,4.72-9.2,9.9-12.48,15.71,14.79-18.59,39.59-34.57,63.61-37.31,15.17.11,30.31.03,45.48-.19-.46.46-.92.92-1.36,1.36-1.9,1.93-3.83,3.85-5.73,5.78-7.35,7.41-14.63,14.71-21.87,21.82-.19.16-.35.35-.54.52-26.51,25.86-52.7,48.44-81.62,60.11ZM348.07,373.46c9.66,23.96,3.01,63.28-28.36,88.92-9.06,7.63-20.27,14.19-31.1,20.57-11.37,6.68-23.09,13.54-32.62,21.76-9.52-8.22-21.25-15.09-32.62-21.76-10.83-6.38-22.03-12.94-31.12-20.57-31.34-25.64-37.99-64.96-28.33-88.92,11.61-28.85,34.08-54.98,59.83-81.38l.24-.24c7.25-7.41,14.73-14.84,22.33-22.39,2.36-2.33,4.72-4.67,7.08-7.06v.05c-.16,10.34-.19,20.65-.19,30.96.03,4.72.05,9.47.08,14.19-2.63,24.07-18.67,49.01-37.34,63.85,14.52-8.82,29.96-25.97,37.58-44.07.35,26.1,1.06,52.21,2.44,78.29,1.28-25.94,2.12-51.91,2.52-77.91,4.99,11.64,13.27,22.12,21.79,31.18,4.69,4.78,9.88,9.2,15.71,12.51-18.62-14.82-34.6-39.62-37.31-63.61.11-15.14.03-30.31-.19-45.45-.84-.84-1.68-1.71-2.52-2.55.84.84,1.68,1.68,2.52,2.5,0,.03.03.03.03.03,2.39,2.42,4.75,4.75,7.11,7.08,7.6,7.54,15.09,14.98,22.33,22.39.11.08.19.16.24.24,25.75,26.4,48.22,52.54,59.83,81.38ZM482.94,288.63c-6.35,10.83-12.94,22.03-20.57,31.12-25.64,31.34-64.94,37.99-88.9,28.33-28.93-11.67-55.11-34.25-81.62-60.11-.19-.19-.38-.35-.54-.52-7.25-7.11-14.52-14.41-21.87-21.82-1.9-1.93-3.83-3.85-5.73-5.78-.46-.43-.9-.87-1.3-1.3,10.34.19,20.68.22,31.02.22,4.8-.03,9.58-.05,14.38-.08h.03c24.02,2.74,48.82,18.72,63.61,37.31-8.79-14.49-25.91-29.9-44.01-37.56,26.08-.38,52.16-1.09,78.23-2.47-25.97-1.28-51.97-2.09-77.96-2.47,11.67-5.02,22.17-13.3,31.23-21.82,4.8-4.72,9.23-9.9,12.51-15.71-14.84,18.64-39.75,34.65-63.82,37.31h-.03c-15.06-.11-30.12-.05-45.21.16h-.05c2.42-2.39,4.78-4.75,7.11-7.11,7.52-7.6,14.98-15.09,22.39-22.33.11-.08.19-.19.27-.27,26.4-25.75,52.54-48.19,81.38-59.83,23.96-9.66,63.25-3.01,88.92,28.36,7.6,9.06,14.19,20.27,20.54,31.1,6.68,11.37,13.57,23.12,21.76,32.62-8.2,9.52-15.09,21.27-21.76,32.64Z'/%3E%3Cpath d='M252.17,255.99v.03c-.87-.87-1.74-1.74-2.61-2.6h.03c.84.84,1.71,1.71,2.58,2.58Z'/%3E%3Cpath d='M269.49,265.59c-1.9-1.9-3.85-3.8-5.78-5.73,1.9,1.93,3.83,3.85,5.73,5.78,7.35,7.41,14.63,14.71,21.87,21.82-7.08-7.25-14.41-14.52-21.82-21.87ZM242.51,265.59c-7.41,7.35-14.73,14.63-21.82,21.87,7.25-7.11,14.52-14.41,21.87-21.82,1.9-1.93,3.83-3.85,5.73-5.78-1.93,1.93-3.88,3.83-5.78,5.73Z'/%3E%3Cpath d='M258.55,262.36s-.03,0-.03.03c-.84-.84-1.68-1.71-2.52-2.55.84.84,1.68,1.68,2.52,2.5,0,.03.03.03.03.03Z'/%3E%3Cpath d='M265.66,269.45c-2.36-2.33-4.72-4.67-7.11-7.08,0,0-.03,0-.03-.03-.84-.81-1.68-1.66-2.52-2.5.84.84,1.68,1.71,2.52,2.55,2.39,2.36,4.72,4.72,7.06,7.08,7.54,7.6,14.98,15.11,22.41,22.36-7.25-7.41-14.73-14.84-22.33-22.39ZM265.58,242.53c-2.31,2.33-4.64,4.67-7,7.03v.05c2.36-2.39,4.72-4.72,7.08-7.06,7.6-7.52,15.09-14.98,22.33-22.39-7.44,7.25-14.87,14.76-22.41,22.36Z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); opacity: 1; transform: none; animation: none; transition: opacity .25s ease .4s; }
/* Sicherheitsnetz, falls das Skript nicht läuft */
html:not(.bas-js)::before, html:not(.bas-js) body::before { animation: basWeg .6s ease 3.5s forwards; }
@keyframes basWeg { to { opacity: 0; visibility: hidden; } }
/* Im Elementor-Editor nie anzeigen */
html:has(body.elementor-editor-active)::before, body.elementor-editor-active::before,
html:has(body.elementor-editor-preview)::before, body.elementor-editor-preview::before { display: none; }
@media (prefers-reduced-motion: reduce) {
  html::before, html.bas-geht::before { transition: opacity .3s ease !important; }
  html.bas-bereit::before { opacity: 0; width: 0; height: 0; }
  body::before { animation: none !important; }
}

/* Weniger Bewegung, wenn im System gewünscht */
@media (prefers-reduced-motion: reduce) {
  .bas-hero .elementor-ken-burns, .bas-zeile .elementor-heading-title, .bas-vorhang img { transform: none !important; animation: none !important; transition: none !important; }
  .bas-vorhang .elementor-widget-container::after { display: none; }
  .bas-lageplan * { transition: none !important; animation: none !important; stroke-dashoffset: 0 !important; opacity: 1 !important; }
}

/* Sprungziel Öffnungszeiten (Kontaktseite) – Abstand zum festen Kopf */
#oeffnungszeiten { scroll-margin-top: 130px; }

/* Lageplan mobil: Hinweis-Kasten oben, damit er das Basilico-Schild nicht verdeckt */
@media (max-width: 767px) { .bas-lageplan figcaption { top: 20px; bottom: auto; left: 20px; right: 20px; padding: 12px 16px; font-size: 14px; gap: 4px 18px; } }

/* Footer: letzter Absatz ohne Abstand nach unten – gleichmäßige Abstände zwischen den Spalten */
.bas-fuss-spalten .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Cocktails mobil: Name oben, Zutaten darunter – beide bündig links */
@media (max-width: 767px) {
  .bas-drinks .elementor-price-list-header { flex-direction: column !important; align-items: flex-start !important; gap: 4px; }
  .bas-drinks .elementor-price-list-separator { display: none; }
  .bas-drinks .elementor-price-list-price { text-align: left !important; padding-left: 0 !important; margin: 0 !important; }
}

/* Hamburger: ohne Textzeile drumherum – sitzt mittig auf Höhe des Logos */
.bas-burger .elementor-button-wrapper { display: flex; line-height: 0; }
.bas-burger .elementor-button { display: block; vertical-align: middle; }

/* Mobiles Menü: kein Fokus-Rahmen beim Öffnen (Elementor setzt den Fokus automatisch auf den ersten Link) */
#elementor-popup-modal-485 a:focus, #elementor-popup-modal-485 a:focus-visible,
#elementor-popup-modal-485 .dialog-widget-content:focus, .bas-burger .elementor-button:focus { outline: none !important; box-shadow: none !important; }

/* ---------- Speisekarte ---------- */
.bas-karte-zeile .elementor-widget-heading:has(.elementor-heading-title:empty) { display: none; }
.bas-gericht-titel { min-width: 0; }
.bas-gericht-preis { flex-shrink: 0; white-space: nowrap; }
.bas-karte-liste .e-loop-item { height: 100%; }
.bas-allergen-liste { list-style: none; padding: 0 !important; margin: 0 0 20px; columns: 2; column-gap: 48px; }
.bas-allergen-liste li { break-inside: avoid; padding: 3px 0; }
.bas-allergen-liste li span { display: inline-block; min-width: 26px; color: var(--e-global-color-secondary); }
@media (max-width: 767px) { .bas-allergen-liste { columns: 1; } }

/* ---------- Blickfänger „Tisch reservieren“: Lichtschimmer im Hero ---------- */
.bas-glanz .elementor-button { position: relative; overflow: hidden; }
.bas-glanz .elementor-button::after { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 45%; pointer-events: none;
  background: linear-gradient(100deg, transparent 0%, rgba(255,250,240,.0) 20%, rgba(255,250,240,.75) 50%, rgba(255,250,240,0) 80%, transparent 100%);
  transform: skewX(-18deg); animation: basSchimmer 7s cubic-bezier(.4,0,.2,1) 2.2s infinite; }
@keyframes basSchimmer { 0% { left: -60%; } 18% { left: 130%; } 100% { left: 130%; } }

/* ---------- Reservieren-Leiste mobil: fest am unteren Rand, erscheint nach dem Hero ---------- */
.bas-leiste { position: fixed !important; left: 0; right: 0; bottom: 0; padding-bottom: calc(12px + env(safe-area-inset-bottom)) !important;
  transform: translateY(110%); transition: transform .5s cubic-bezier(.22,.61,.21,1); }
html.bas-leiste-an .bas-leiste { transform: none; }
.bas-leiste { background-color: var(--e-global-color-accent) !important; }
html.bas-menue-offen .bas-leiste, body.page-id-208 .bas-leiste { display: none !important; }
@media (max-width: 767px) { html.bas-leiste-an body { padding-bottom: 76px; } body.page-id-208 { padding-bottom: 0 !important; } }
@media (prefers-reduced-motion: reduce) { .bas-glanz .elementor-button::after { animation: none; display: none; } }
/* Speisekarte – Reiter als Schriftzeile: fein gerahmt, aktiver Punkt in Messing mit wachsender Linie, bleibt beim Scrollen oben */
.bas-karte-reiter .e-n-tabs-heading { position: sticky; top: 0; z-index: 50; flex-wrap: wrap !important; justify-content: center !important; column-gap: 44px !important; row-gap: 0 !important;
  background: var(--e-global-color-accent); border-top: 1px solid rgba(131,27,42,.32); border-bottom: 1px solid rgba(131,27,42,.32); transition: top .45s cubic-bezier(.22,.61,.21,1); }
html:has(.bas-kopf.ist-gescrollt:not(.ist-versteckt)) .bas-karte-reiter .e-n-tabs-heading { top: 84px; }
.bas-karte-reiter .e-n-tabs-heading { --n-tabs-title-flex-grow: 0; --n-tabs-title-flex-basis: auto; --n-tabs-title-width: auto; }
.bas-karte-reiter .e-n-tab-title { position: relative; flex: 0 0 auto !important; width: auto !important; padding: 22px 0 20px !important; }
@media (max-width: 767px) { .bas-karte-reiter .e-n-tab-title { padding: 18px 0 16px !important; } }
.bas-karte-reiter .e-n-tab-title::after { content: ""; position: absolute; left: 50%; bottom: -1px; width: 0; height: 1px; background: var(--e-global-color-secondary);
  transform: translateX(-50%); transition: width .5s cubic-bezier(.22,.61,.21,1); }
.bas-karte-reiter .e-n-tab-title[aria-selected="true"]::after { width: 100%; }
.bas-karte-reiter .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text { font-style: italic; }
.bas-karte-reiter .e-n-tab-title:focus, .bas-karte-reiter .e-n-tab-title:focus-visible { outline: none; }
@media (max-width: 767px) {
  .bas-karte-reiter .e-n-tabs-heading { flex-wrap: nowrap !important; justify-content: flex-start !important; overflow-x: auto; scrollbar-width: none; margin: 0 -20px; padding: 0 20px;
    column-gap: 30px !important; }
  .bas-karte-reiter .e-n-tabs-heading::-webkit-scrollbar { display: none; }
  html:has(.bas-kopf.ist-gescrollt:not(.ist-versteckt)) .bas-karte-reiter .e-n-tabs-heading { top: 72px; }
}
.bas-karte-unter { padding-bottom: 14px; border-bottom: 1px solid rgba(131,27,42,.32); }
.bas-wein-preise .elementor-widget-heading { width: auto; }
.bas-wein-zeile .e-con.bas-wein-preise { flex: 0 0 auto !important; width: auto !important; --width: auto; text-align: right; }
.bas-wein-zeile .elementor-widget.bas-gericht-name { flex: 1 1 0 !important; min-width: 0; max-width: none !important; width: auto !important; }

/* ---------- Videos: spielen direkt an Ort und Stelle (Kachel bzw. Bild auf „Über uns“) ---------- */
.bas-gericht-mit-video .bas-gericht-video { position: absolute !important; inset: 0; z-index: 0; width: 100% !important; margin: 0 !important; }
.bas-gericht-video .elementor-widget-container, .bas-gericht-video .elementor-wrapper { height: 100%; }
.bas-gericht-video .elementor-wrapper, .bas-lage-video .elementor-wrapper { position: relative; aspect-ratio: auto !important; padding-bottom: 0 !important; overflow: hidden; background: var(--e-global-color-accent); }
.bas-lage-video .elementor-wrapper { aspect-ratio: 3 / 4 !important; }
.bas-gericht-video video, .bas-lage-video video { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; }
.bas-gericht-video .elementor-custom-embed-image-overlay, .bas-lage-video .elementor-custom-embed-image-overlay { position: absolute; inset: 0; z-index: 2;
  background-size: cover !important; background-position: center !important; transition: transform 1.6s cubic-bezier(.22,.61,.21,1); }
.bas-gericht-mit-video:hover .elementor-custom-embed-image-overlay, .bas-lage-video:hover .elementor-custom-embed-image-overlay { transform: scale(1.04); }
.bas-gericht-video .elementor-custom-embed-image-overlay::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(18,14,11,0) 38%, rgba(18,14,11,.92) 100%); }
/* Text liegt über dem Standbild und lässt Klicks durch; sobald das Video läuft (Standbild weg), blendet er aus */
.bas-gericht-mit-video > .elementor-element:not(.bas-gericht-video) { position: relative; z-index: 3; pointer-events: none; transition: opacity .5s ease; }
.bas-gericht-mit-video:not(:has(.elementor-custom-embed-image-overlay)) > .elementor-element:not(.bas-gericht-video) { opacity: 0; }
/* Play-Knopf: feiner Ring, klares Dreieck */
.bas-gericht-video .elementor-custom-embed-play, .bas-lage-video .elementor-custom-embed-play {
  top: 50%; width: 76px; height: 76px; border-radius: 50%; border: 1px solid rgba(253,251,247,.75); background: rgba(18,14,11,.18);
  backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); transition: transform .6s cubic-bezier(.22,.61,.21,1), background .4s ease, border-color .4s ease; }
.bas-gericht-video .elementor-custom-embed-play i, .bas-lage-video .elementor-custom-embed-play i,
.bas-gericht-video .elementor-custom-embed-play svg, .bas-lage-video .elementor-custom-embed-play svg { display: none !important; }
.bas-gericht-video .elementor-custom-embed-play::before, .bas-lage-video .elementor-custom-embed-play::before { content: ""; position: absolute; left: 50%; top: 50%;
  width: 0; height: 0; border-style: solid; border-width: 9px 0 9px 15px; border-color: transparent transparent transparent #FDFBF7; transform: translate(-36%, -50%); }
.bas-gericht-video .elementor-custom-embed-play::after, .bas-lage-video .elementor-custom-embed-play::after { content: ""; position: absolute; inset: -9px; border-radius: 50%;
  border: 1px solid rgba(253,251,247,.22); transition: inset .6s cubic-bezier(.22,.61,.21,1), opacity .6s ease; }
.bas-gericht-mit-video:hover .elementor-custom-embed-play, .bas-lage-video:hover .elementor-custom-embed-play { transform: translate(-50%, -50%) scale(1.06); background: rgba(131,27,42,.55); border-color: #FDFBF7; }
.bas-gericht-mit-video:hover .elementor-custom-embed-play::after, .bas-lage-video:hover .elementor-custom-embed-play::after { inset: -16px; opacity: 0; }
@media (max-width: 767px) { .bas-gericht-video .elementor-custom-embed-play, .bas-lage-video .elementor-custom-embed-play { width: 64px; height: 64px; } }

/* Vorhang (Bild-Aufdecken) in der Farbe des jeweiligen Abschnitts */
.bas-hg-nuss { --bas-vorhang: var(--e-global-color-b_walnuss); }

/* Astra-Layout „Box“ legt um Elementor-Listeneinträge (z. B. Öffnungszeiten im Footer) einen weißen Kasten – abschalten */
.e-loop-item.ast-article-single, .e-loop-item.ast-article-post { background: transparent !important; padding: 0 !important; margin: 0 !important; border: 0 !important; box-shadow: none !important; }

/* Weiß auf Bildern: kursives Wort in Überschriften (Hero, Das Haus) */
.bas-weiss .elementor-heading-title em, .elementor-heading-title.bas-weiss em, .bas-weiss.elementor-widget-heading em { color: var(--e-global-color-primary) !important; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Cormorant Garamond';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/CormorantGaramond-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Cormorant Garamond';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/CormorantGaramond-500.woff2') format('woff2');
}
@font-face {
	font-family: 'Cormorant Garamond';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/CormorantGaramond-600.woff2') format('woff2');
}
@font-face {
	font-family: 'Cormorant Garamond';
	font-style: italic;
	font-weight: 400;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/CormorantGaramond-400-italic.woff2') format('woff2');
}
@font-face {
	font-family: 'Cormorant Garamond';
	font-style: italic;
	font-weight: 500;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/CormorantGaramond-500-italic.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/Lato-300.woff2') format('woff2');
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/Lato-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://basilico.de/wp-content/uploads/basilico-fonts/Lato-700.woff2') format('woff2');
}
/* End Custom Fonts CSS */