.responsive-hero { display: block; }
.responsive-hero img { display: block; width: 100%; height: auto; }
.consent-embed { position: relative; }
.consent-embed__placeholder[hidden], iframe[data-consent-src][hidden] { display: none; }
.consent-embed__placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 28px; min-height: 240px; text-align: center; background: #f0f3ed; color: #163e2a; border-radius: 20px; }
.consent-embed__placeholder p { max-width: 36rem; line-height: 1.6; margin: 0; }
.consent-embed__placeholder button, .cookie-settings { min-height: 44px; padding: 10px 18px; border-radius: 999px; border: 1px solid #155b3a; background: #155b3a; color: #fff; cursor: pointer; }
.consent-embed__placeholder button:focus-visible, .cookie-settings:focus-visible { outline: 3px solid #61762e; outline-offset: 4px; }
.cookie-settings { background: transparent; color: #155b3a; margin-top: 8px; }
.form-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
header h1, main h1 { overflow-wrap: anywhere; }
.ratgeber-hero__inner > *, .guide-grid > *, .ratgeber-hero .max-w-3xl { min-width: 0; }
.ratgeber-hero h1, .ratgeber-hero p, .ratgeber-hero__box { overflow-wrap: anywhere; }
@media (max-width: 767px) {
  main h2, main h3 { overflow-wrap: anywhere; }
  .hero-mobile-photo { display: none; }
  .responsive-hero { position: absolute; inset: auto 0 0; z-index: 0; width: 100%; }
  .responsive-hero .hero-image-test__image { display: block; }
  header h1 { font-size: clamp(2rem, 8vw, 3.5rem); }
  .ratgeber-hero h1 { font-size: clamp(2rem, 8vw, 3.5rem); }
  #notfall-check .flex, #notdienst .flex { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .service-flip-card__inner { transition: none; }
}
@media (max-width: 767px) {
  main a[href="tel:01805843736"] > .flex { gap: 12px; min-width: 0; }
  main a[href="tel:01805843736"] > .flex > .w-16 { width: 44px; height: 44px; flex-shrink: 0; }
  main a[href="tel:01805843736"] > .flex > div:last-child { min-width: 0; }
  main a[href="tel:01805843736"] > .material-symbols-outlined { display: none; }
  main a[href="tel:01805843736"] .tracking-widest { letter-spacing: 0; font-size: 12px; }
}
.notice-strip { position: relative; padding-right: 168px; }
.notice-strip__control { position: absolute; z-index: 1; right: 12px; top: 50%; transform: translateY(-50%); min-height: 44px; padding: 6px 12px; border: 1px solid rgb(255 255 255 / 75%); border-radius: 999px; background: #fff; color: #8f1616; font-size: 12px; font-weight: 700; }
.notice-strip__control[hidden] { display: none; }
.notice-strip__control:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.booking-calendar { min-height: 700px; border: 1px solid #d5ddd5; border-radius: 24px; overflow: hidden; background: #fff; }
.booking-calendar__frame { display: block; width: 100%; height: 850px; border: 0; }
.booking-calendar .consent-embed__placeholder { min-height: 700px; }
.booking-help { margin: 20px 0 0; line-height: 1.65; }
.booking-help a { color: #155b3a; text-decoration: underline; }
.guide-card { text-decoration: none; }
.guide-page { padding: 140px 24px 80px; }
.guide-page__article { width: min(100%, 760px); margin: 0 auto; }
.guide-page__back { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 20px; color: #155b3a; text-decoration: underline; font-weight: 700; }
.guide-page h1 { font-family: Manrope, sans-serif; font-size: clamp(30px, 4.5vw, 52px); line-height: 1.15; font-weight: 800; margin: 18px 0 24px; overflow-wrap: anywhere; }
.guide-page__notice { padding: 18px 20px; margin-bottom: 30px; border-left: 3px solid #155b3a; background: #eaf0e6; color: #233d2d; line-height: 1.6; }
.guide-page .guide-article__content h2 { font-family: Manrope, sans-serif; margin: 32px 0 12px; font-size: 24px; font-weight: 800; line-height: 1.35; overflow-wrap: anywhere; }
.guide-page__contact { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 32px; }
.guide-page__contact a { display: inline-flex; align-items: center; min-height: 44px; color: #155b3a; font-weight: 700; text-decoration: underline; }
@media (max-width: 1199px) {
  [aria-label="Hauptnavigation"] .hidden.md\:flex { display: none !important; }
  [aria-label="Hauptnavigation"] button[data-menu-toggle] { display: inline-flex !important; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
  [aria-label="Hauptnavigation"] [data-mobile-menu]:not(.hidden) { display: block !important; }
}
@media (prefers-reduced-motion: reduce) {
  .notice-strip .animate-marquee { animation: none !important; transform: none; width: 100%; white-space: normal; }
  .notice-strip { padding-right: 0; }
  .notice-strip .animate-marquee > div { display: none; }
  .notice-strip .animate-marquee > div:first-child { display: flex; }
  .notice-strip .animate-marquee > div:first-child > span { display: none; }
  .notice-strip .animate-marquee > div:first-child > span:first-child { display: inline; margin-inline: 24px; font-size: clamp(14px, 3.5vw, 20px); }
}
