/* Domaintechnik Print Styles */

/* Basic page settings */
@page {
  size: A4;
  margin: 16mm 14mm 18mm;
}
* {
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
}
html, body {
  color: #000 !important;
  font: 11pt/1.45 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Noto Sans", sans-serif;
}
div#trustbadge-container-98e3dadd90eb493088abdc5597a70810 {display:none;}
/* Hide navigation, UI chrome, promos, cookie bars, etc. */
header, nav, footer,
.site-header, .main-header, .topbar, .breadcrumbs,
.site-footer, .footer, .subfooter,
.sidebar, .aside, .offcanvas, .drawer, .mobile-nav, .menu,
.hero, .banner, .promo, .teaser, .cta, .newsletter,
.cookie, #cookie, [id*="cookie"], [class*="cookie"],
.share, .social, .search, .ads, .advert,
.sticky, .floating, .chat, .chat-widget, .modal, .popup {
  display: none !important;
}

/* Make the content fill the page width nicely */
main, article, .content, .page-content, .container, .wrap {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Headings for print */
h1 { font-size: 18pt; margin: 0 0 10pt; }
h2 { font-size: 14pt; margin: 16pt 0 6pt; }
h3 { font-size: 12pt; margin: 12pt 0 6pt; }
h1, h2, h3 { color: #000 !important; page-break-after: avoid; }

/* Prevent awkward breaks */
p, h2, h3, blockquote, ul, ol, table, pre, figure { orphans: 3; widows: 3; }
table, pre, blockquote, figure { page-break-inside: avoid; }
img { page-break-inside: avoid; max-width: 100% !important; height: auto !important; }

/* Links: show the URL after the text (but skip anchors, JS and mailto) */
a {
  color: #000 !important;
  text-decoration: none !important;
  word-wrap: break-word;
}
a[href^="#"],
a[href^="javascript:"],
a[href^="mailto:"] { /* don’t append */
  text-decoration: none !important;
}
a[href]:after {
  content: " <" attr(href) ">";
  font-size: 9pt;
  word-break: break-all;
}
sup a[href]:after { content: ""; }

/* Lists & paragraphs */
p, li { font-size: 11pt; }
ul, ol { margin: 0 0 8pt 22pt; }

/* Tables: readable borders for contracts/AGB */
table {
  border-collapse: collapse !important;
  width: 100% !important;
  table-layout: auto !important;
  margin: 8pt 0 12pt;
}
th, td {
  border: 1px solid #000 !important;
  padding: 6pt 8pt !important;
  vertical-align: top;
}
th { font-weight: 700; }

/* Code / preformatted blocks (if any) */
pre, code, kbd {
  font: 10pt/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  color: #000 !important;
}
pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  border: 1px solid #000;
  padding: 8pt 10pt;
}

/* Hide purely decorative items (icons, svgs) */
svg, [class*="icon"], [class*="Icon"], [aria-hidden="true"] {
  display: none !important;
}

/* Utilities: allow per-element control from markup */
.only-print { display: block !important; }
.no-print	{ display: none !important; }

/* Optional: insert page breaks before major sections if desired.
   If headings on your AGB are long lists, you can enable the next rule. */
/* h2 { break-before: page; } */

/* Forms/buttons shouldn’t appear in print */
form, button, .button, [role="button"], .btn { display: none !important; }

/* Make sure collapsible sections (if used) are expanded on print */
details { open: open; }
details > summary { font-weight: 700; }
