/* Menü 9.11.2026c: Menü-Knopf rechts aussen, Panel rechts, Akkordeon */
.kopf .szm{display:flex;align-items:center;gap:.35rem;font:inherit;flex:0 0 auto;order:5}
.kopf .szm ul{list-style:none;margin:0;padding:0}
/* Ausgeschriebene Hauptpunkte und altes Mehr: bewusst aus – nur Menü-Knopf */
.kopf .szm-haupt,.kopf .szm-mehr{display:none!important}
.kopf .marke{order:1;margin-right:auto;padding-right:.5rem}
.kopf .sprachen{order:3;margin-left:.45rem;flex:0 0 auto;display:flex;gap:.1rem;align-items:center}
.kopf__in>.szm-cta{order:4}
/* Einheitliche Schrift = CTA */
.kopf .szm-burger>button,
.kopf .sprachen a,
.kopf__in>.szm-cta{
  font-size:1.05rem!important;
  font-weight:700!important;
  font-family:inherit;
  line-height:1.35;
}
.kopf__in>.szm-cta{
  display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;
  padding:.5rem 1.1rem;border-radius:999px;background:#c97400;color:#fff!important;
  margin-left:.35rem;box-shadow:0 3px 10px rgba(201,116,0,.3);text-decoration:none!important
}
.kopf__in>.szm-cta:hover{background:#a85f00;color:#fff!important;text-decoration:none!important}
.kopf .sprachen a{
  padding:.35rem .45rem!important;border-radius:6px;color:var(--grau,#5b6670)!important;
  background:transparent;text-decoration:none!important
}
.kopf .sprachen a[aria-current]{color:var(--tinte,#1d2a33)!important;background:#efe9df!important}
/* Menü-Knopf ganz rechts */
.kopf .szm-burger{display:block!important;flex:0 0 auto;position:relative}
.kopf .szm-burger>button{
  border:1px solid var(--linie,#e4ded3);border-radius:999px;padding:.48rem .95rem;
  background:#fff;color:var(--tinte,#1d2a33);cursor:pointer;display:inline-flex;align-items:center;gap:.4rem
}
.kopf .szm-burger>button::after{display:none!important}
.kopf .szm-burger>button .szm-strich{display:inline-block;width:16px;height:2px;background:currentColor;position:relative;vertical-align:middle;box-shadow:0 -5px 0 currentColor,0 5px 0 currentColor}
.kopf .szm-burger.szm-open>button .szm-strich{background:transparent;box-shadow:none}
.kopf .szm-burger.szm-open>button .szm-strich::before,
.kopf .szm-burger.szm-open>button .szm-strich::after{content:"";position:absolute;left:0;top:0;width:16px;height:2px;background:currentColor;transform:rotate(45deg)}
.kopf .szm-burger.szm-open>button .szm-strich::after{transform:rotate(-45deg)}
/* Abdunklung */
.szm-dim{display:none;position:fixed;inset:0;top:64px;background:rgba(29,42,51,.35);z-index:998;border:0;padding:0;cursor:pointer}
.szm-dim.szm-dim-an{display:block}
/* Panel rechts, max ~480px Desktop / 85% Mobil */
.kopf .szm-burger .szm-panel,
.kopf .szm-panel#szm-mobil{
  display:none;position:fixed!important;top:64px;right:0;left:auto!important;
  width:min(460px,85vw);max-width:460px;height:calc(100vh - 64px);max-height:calc(100vh - 64px);
  margin:0;padding:0;border-radius:0;border:0;border-left:1px solid var(--linie,#e4ded3);
  background:#fff;box-shadow:-12px 0 40px rgba(0,0,0,.18);z-index:1000;
  overflow:auto;text-align:left;-webkit-overflow-scrolling:touch
}
.kopf .szm-burger.szm-open>.szm-panel{display:flex!important;flex-direction:column}
.kopf .szm-panel .szm-panel-kopf{
  display:flex;align-items:center;justify-content:space-between;gap:.75rem;
  padding:.85rem 1.1rem;border-bottom:1px solid var(--linie,#e4ded3);flex:0 0 auto;position:sticky;top:0;background:#fff;z-index:1
}
.kopf .szm-panel .szm-panel-kopf strong{font-size:1.05rem;font-weight:700}
.kopf .szm-panel .szm-x{
  border:0;background:#efe9df;border-radius:999px;width:2.1rem;height:2.1rem;cursor:pointer;
  font-size:1.25rem;line-height:1;color:var(--tinte,#1d2a33)
}
.kopf .szm-panel .szm-x:hover{background:#e4ded3}
.kopf .szm-panel .szm-haupt-m{padding:.4rem 1.1rem 1.5rem;flex:1 1 auto}
.kopf .szm-panel .szm-haupt-m>li>a{
  display:block;padding:.75rem 0;font-weight:700;font-size:1.05rem;color:var(--tinte,#1d2a33);
  border-bottom:1px solid var(--linie,#e4ded3);text-decoration:none!important
}
.kopf .szm-panel .szm-haupt-m>li>a:hover{color:var(--akzent,#c97400)}
.kopf .szm-panel details{border-bottom:1px solid var(--linie,#e4ded3)}
.kopf .szm-panel summary{
  list-style:none;cursor:pointer;padding:.75rem 0;font-weight:700;font-size:1.05rem;
  display:flex;justify-content:space-between;align-items:center;gap:.75rem;color:var(--tinte,#1d2a33)
}
.kopf .szm-panel summary::-webkit-details-marker{display:none}
.kopf .szm-panel summary::after{content:"";width:.45em;height:.45em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s;flex:0 0 auto}
.kopf .szm-panel details[open]>summary::after{transform:rotate(-135deg)}
.kopf .szm-panel details ul{padding:0 0 .7rem .15rem}
.kopf .szm-panel details li a{
  display:block;padding:.4rem 0;font-size:1rem;font-weight:400;color:var(--grau,#5b6670);text-decoration:none!important
}
.kopf .szm-panel details li a:hover{color:var(--akzent,#c97400)}
/* CTA im Panel nicht nötig – aussen sichtbar */
.kopf .szm>.szm-cta,.kopf .szm-cta-kopf,.kopf .szm-burger .szm-cta{display:none!important}
@media (max-width:520px){
  .kopf .marke__text{display:none}
  .kopf__in>.szm-cta{padding:.42rem .7rem}
  .kopf .sprachen a{padding:.3rem .28rem!important}
  .kopf .szm-burger .szm-panel{width:min(100vw,85vw);max-width:85vw}
}
/* Sticky Kopf */
body.ast-theme-transparent-header #masthead.kopf,.kopf{position:sticky!important;top:0!important;left:auto!important;right:auto!important;z-index:999}
.kopf .szm a,.kopf .szm a:hover{text-decoration:none!important}
/* Alte Astra-/Live-Menüs und aufgeklappte Unterpunkte zuverlässig ausblenden */
.main-header-menu,.ast-builder-menu,.ast-desktop-header-content,.ast-mobile-popup-drawer,
.ast-header-break-point .main-header-bar-navigation,.site-header .main-navigation,
.ast-above-header,.ast-below-header,.ast-main-header-wrap .main-header-bar-navigation,
#ast-mobile-popup,.ast-mobile-popup-inner,.menu-toggle,.ast-mobile-menu-buttons,
.site-header .sub-menu,.main-header-menu .sub-menu,.ast-nav-menu .sub-menu,
header .main-navigation,header .menu-item .sub-menu,
.ast-header-break-point .main-navigation{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;pointer-events:none!important}
details.nav,details.nav[open],.kopf details.nav{display:none!important}
/* Bilder unverändert */
body.single .post-thumb-img-content img,body.single .post-thumb img.wp-post-image{display:block;width:auto!important;max-width:100%!important;height:auto!important;max-height:62vh!important;object-fit:contain!important;margin:0 auto 1rem!important}
.entry-content img{max-height:85vh;object-fit:contain}
.entry-content .sz-bildblock img,.entry-content .szr-fig img,.entry-content .sz-k img{max-height:none}
.post-thumb-img-content img,.post-thumb img.wp-post-image{width:auto!important;max-width:100%!important;height:auto!important;max-height:62vh!important;object-fit:contain!important;margin-left:auto!important;margin-right:auto!important;display:block}
.elementor-widget-image img{max-height:85vh;object-fit:contain}

/* WordPress-Emojis nie bildschirmbreit */
img.emoji, img.wp-smiley{
  height:1em!important;width:1em!important;max-height:1em!important;max-width:1em!important;
  display:inline!important;margin:0 .07em!important;vertical-align:-0.1em!important;
  box-shadow:none!important;border:0!important;padding:0!important;
  background:none!important;object-fit:contain!important
}
.sz-bildblock img.emoji,.sz-bildblock img.wp-smiley,
.entry-content img.emoji,.entry-content img.wp-smiley{aspect-ratio:auto!important;max-height:1em!important}
/* Complianz-Banner ohne funktionierendes JS ausblenden */
.cmplz-cookiebanner, #cmplz-cookiebanner-container, .cmplz-manage-consent,
.cmplz-blocked-content-notice, #cmplz-manage-consent .cmplz-manage-consent,
button.cmplz-manage-consent, .cmplz-btn.cmplz-manage-consent{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* QA 20261109f: Header nie horizontal überstehen */
.kopf,.kopf__in{max-width:100%;overflow-x:clip}
.kopf__in{flex-wrap:nowrap;min-width:0}
.kopf .marke{min-width:0}
.kopf .marke__text{overflow:hidden;text-overflow:clip}
/* Bilder nie höher als 90vh ausser Lightbox */
img:not(#szlb img):not(.emoji):not(.wp-smiley){max-height:90vh!important}
.entry-content img,.elementor-widget-image img,.post-thumb img,
.wp-block-image img,.sz-bildblock img{max-height:90vh!important;object-fit:contain}
#szlb img,#szlb.on img{max-height:95vh!important}

/* QA: WP-Bilder mit fester width nie über Viewport */
img.aligncenter,img.alignleft,img.alignright,img.size-medium,img.size-large,img.size-full,
.wp-block-image img,figure img{
  max-width:100%!important;height:auto!important
}
body{overflow-x:clip}

/* Zweitprüfung 20261109 m */
/* Kopf mobil: Logo, Sprachen, Button und Menü passen immer auf eine Zeile, gleiche Schrift */
@media (max-width:520px){
  .kopf .wrap.kopf__in{width:calc(100% - 1.5rem)!important;gap:.3rem!important}
  .kopf .marke{flex:0 0 auto!important;padding-right:0!important;gap:0!important;min-width:32px}
  .kopf .marke img{width:32px!important;height:32px!important}
  .kopf .marke__text{display:none!important}
  .kopf .sprachen{margin-left:0!important;padding-left:0!important;border-left:0!important;gap:0!important}
  .kopf .szm-burger>button,.kopf .sprachen a,.kopf__in>.szm-cta{font-size:14px!important;line-height:1.3!important}
  .kopf .sprachen a{padding:.3rem .22rem!important}
  .kopf__in>.szm-cta{padding:.42rem .62rem!important;margin-left:.1rem!important}
  .kopf .szm-burger>button{padding:.42rem .6rem!important;gap:.32rem!important}
}
@media (max-width:360px){
  .kopf .sprachen a{padding:.3rem .14rem!important}
  .kopf__in>.szm-cta{padding:.42rem .5rem!important}
  .kopf .szm-burger>button{padding:.42rem .5rem!important}
}
/* Kein seitliches Verschieben auf dem Handy: lange Wörter und Buttons umbrechen */
html{overflow-x:clip}
h1,h2,h3,h4,.entry-title,.page-title,.ast-archive-title{overflow-wrap:break-word;hyphens:auto}
.entry-content p,.entry-content li,.entry-content td,.entry-content a,.ast-archive-description p{overflow-wrap:anywhere}
.elementor-button,.elementor-button-wrapper,.wp-block-button__link{max-width:100%;white-space:normal!important}
.elementor-widget-wrap,.elementor-widget-container,.e-con-inner,.ast-container,.site-content,.content-area{min-width:0;max-width:100%}
table{max-width:100%}
@media (max-width:520px){.ast-archive-title,.ast-archive-description .page-title{font-size:1.7rem!important;line-height:1.25!important}}
/* Elementor-Einblendungen ohne Elementor-Skript: Inhalt immer sichtbar (sonst leere Flächen) */
.elementor-invisible{visibility:visible!important;opacity:1!important;animation:none!important}
/* Über-mich-Abschnitt «Meine Leidenschaft» mit Fotos war auf Tablet/1024 px ausgeblendet, ohne Ersatz */
@media (min-width:768px) and (max-width:1024px){.elementor-section.elementor-element-ndfrc1r.elementor-hidden-tablet{display:block!important}}
/* Videos, Instagram-Einbettungen und Tabellen nie breiter als der Bildschirm */
video,iframe,embed,object{max-width:100%!important}
video{height:auto!important}
.wp-video,.wp-video-shortcode,.mejs-container{max-width:100%!important;width:100%!important}
blockquote.instagram-media{min-width:0!important;max-width:100%!important}
.entry-content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
.entry-content td,.entry-content th,.entry-content h4,.entry-content h5{overflow-wrap:anywhere;word-break:break-word}
/* Cookie-Richtlinie (Complianz-Tabellen) auf dem Handy umbrechen */
@media (max-width:767px){.cmplz-dropdown,.cmplz-dropdown *{max-width:100%!important;min-width:0!important;box-sizing:border-box;overflow-wrap:anywhere}
.cmplz-dropdown .cookies-per-purpose{display:block!important;grid-template-columns:1fr!important}}
/* Brotkrumen nicht direkt am Kopf kleben */
.sz-breadcrumb{margin-top:.9rem!important}
/* Leah-Seiten mobil: Foto mittig und volle Breite statt nach links verschoben */
@media (max-width:767px){
 .elementor-element-x2t57hd>.elementor-element-e8e4600{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
 .elementor-element-6060d91{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
 .elementor-element-6060d91>.elementor-widget-container{margin:0!important;padding:0!important}
 .sz-leah-hero{width:calc(100% - 10px)!important;margin-left:auto!important;margin-right:auto!important}
}
/* Sehr grosse H1 (fr/accueil: 65px, 13 Zeilen) begrenzen; lange Titel mobil etwas kleiner */
h1.elementor-heading-title{font-size:clamp(2rem,3.6vw,3rem)!important;line-height:1.15!important}
@media (max-width:520px){.entry-content>h1.wp-block-heading{font-size:1.6rem!important;line-height:1.2!important}}
/* Mobil: Elementor-Elemente mit fester Breite und negative Ränder nicht über den Rand */
@media (max-width:767px){
 .elementor-widget-wrap>.elementor-element{max-width:100%!important}
}
@media (max-width:1024px){.elementor-widget-wrap.elementor-element-populated:has(.elementor-widget-video,.elementor-custom-embed){margin-left:0!important;margin-right:0!important}}
/* E-Mail immer orange, WhatsApp immer gruen (auch in wp-block-button, z.B. /preise/) */
html body a.sz-b[href]{background:#fd9800!important;color:#fff!important;border:0!important}
html body a.sz-b.sz-b--wa[href],html body .sz-single-contact>a[href*="wa.me"]{background:#25d366!important;color:#fff!important}
/* Kopf deckend: kein Text scheint beim Scrollen durch */
.kopf{background:#faf8f4!important;-webkit-backdrop-filter:none;backdrop-filter:none}
/* Überschrift über dem Text zentriert, nicht nach links verschoben */
.entry-content>h1.wp-block-heading{margin-left:auto!important;margin-right:auto!important}
