/* =====================================================================
   PRINT STYLESHEET – Leander von der Hagen
   Wird ausschließlich beim Drucken geladen (media="print")
   ===================================================================== */

@page { margin: 2cm; }

html, body {
  background: #fff !important;
  color: #000 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 11pt !important;
  line-height: 1.6 !important;
}

/* UI ausblenden */
.nav, .nav__mobile, .nav__pill, .nav__hamburger,
.page-loader, .cursor, .cursor-follower,
.hero__bg-slides, .hero__sharp-slides, .hero-lens, .hero__timeline, .hero__scroll,
.marquee-wrap, .ticker,
.contact, .contact-cta,
.footer__social, .footer__top,
.breadcrumbs,
.cookie-banner, .ccm-widget, #ccm-widget,
.btn, .btn--solid, .btn--outline, .btn--outline-white,
.lightbox,
.showcase__preview,
.portfolio__stack,
.faq__icon,
.locations__card-cta svg,
.journal__card-cta svg,
.post-related,
.location-hero__cta,
.error404 {
  display: none !important;
}

/* Typografie */
h1 { font-size: 22pt !important; margin: 0 0 12pt !important; }
h2 { font-size: 16pt !important; margin: 20pt 0 8pt !important; page-break-after: avoid; }
h3 { font-size: 13pt !important; margin: 14pt 0 6pt !important; page-break-after: avoid; }
p, li { font-size: 11pt !important; margin: 0 0 8pt !important; }

a { color: #000 !important; text-decoration: underline !important; }
a[href^="http"]::after,
a[href^="https"]::after {
  content: " (" attr(href) ")";
  font-size: 9pt;
  color: #444;
}
a[href^="#"]::after,
a[href^="tel:"]::after,
a[href^="mailto:"]::after { content: ""; }

img {
  max-width: 100% !important;
  height: auto !important;
  page-break-inside: avoid;
}

.container, .page-hero, section {
  padding: 0 !important;
  margin: 0 0 16pt !important;
  background: transparent !important;
}

.page-hero__label { font-size: 9pt !important; letter-spacing: 0.1em !important; }
.page-hero__title, .hero__name, .post__title { font-weight: 400 !important; }

.collage__grid { display: block !important; column-count: 2; column-gap: 10pt; }
.collage__item { display: inline-block; width: 100%; margin-bottom: 10pt; page-break-inside: avoid; }
.collage__item img { width: 100%; }

.faq__item { page-break-inside: avoid; margin-bottom: 10pt; border-bottom: 1px solid #999; padding-bottom: 6pt; }
.faq__item[open] .faq__a { display: block !important; }
.faq__q { font-weight: 600 !important; font-size: 12pt !important; }
.faq__a { margin-top: 4pt; }

.legal-page__content h2 { border-bottom: 1px solid #000; padding-bottom: 3pt; }

/* Footer */
.footer__bottom { border-top: 1px solid #000; padding-top: 10pt; margin-top: 20pt; }
.footer__copy { font-size: 9pt; }

/* Kontaktbox für Druck */
.print-contact-card {
  border: 1px solid #000;
  padding: 12pt;
  margin: 12pt 0;
}

/* Page breaks */
article, .post, .leistung { page-break-before: auto; }

/* URL beim Titel drucken */
body::after {
  content: "Stand: " attr(data-print-date);
}
