/* /public_html/rmufoto2025/style/print.css */
/* RMU Foto – saubere Druckansicht für Rechtstexte, Preise, Warenkorb, Bestellungen und Inhaltsseiten. */

@media print {
  @page {
    size: A4 portrait;
    margin: 14mm;
  }

  *,
  *::before,
  *::after {
    box-shadow: none !important;
    text-shadow: none !important;
    background-image: none !important;
    animation: none !important;
    transition: none !important;
  }

  html,
  body {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10.5pt !important;
    line-height: 1.45 !important;
  }

  body::before,
  body::after {
    display: none !important;
    content: none !important;
  }

  .imHidden,
  .imBgStretcher,
  .imTip,
  .text-tabs,
  .site-header,
  .topbar,
  .header-spacer,
  .site-footer,
  .rmu-footer,
  .main-nav,
  .site-nav,
  .rmu-nav,
  .language-switch,
  .lang-switch,
  .rmu-lang,
  .actions,
  .about-actions,
  .camera-actions,
  .pricing-actions,
  .contact-actions,
  .cookie-actions,
  .imprint-actions,
  .privacy-actions,
  .terms-actions,
  .pricing-jump,
  .cookie-nav,
  .imprint-nav,
  .privacy-nav,
  .terms-nav,
  .pricing-result,
  .cookie-storage-panel,
  #imHeader,
  #imHeaderBg,
  #imFooter,
  #imFooterBg,
  #imSideBar,
  #imStickyBarContainer,
  #imPageToTop,
  button,
  input[type="button"],
  input[type="submit"],
  input[type="reset"] {
    display: none !important;
  }

  #imPageExtContainer,
  #imPageIntContainer,
  #imPage,
  #imContent,
  #imContentGraphics,
  main,
  .wrap,
  .rmu-wrap,
  .container,
  .page-wrap {
    display: block !important;
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #ffffff !important;
  }

  .text-tab-print-title {
    display: block !important;
    margin: 0 0 8pt !important;
    color: #000000 !important;
    font-weight: 700 !important;
  }

  .text-container,
  .text-container > div,
  .text-inner,
  .text-inner div,
  .text-tab-content {
    display: block !important;
    clear: both !important;
    position: static !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 0 10pt 0 !important;
    inset-inline-start: auto !important;
    top: auto !important;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    page-break-after: avoid;
    break-after: avoid;
    color: #000000 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
  }

  h1 {
    margin: 0 0 12pt !important;
    font-size: 22pt !important;
    line-height: 1.15 !important;
  }

  h2 {
    margin: 18pt 0 8pt !important;
    font-size: 16pt !important;
    line-height: 1.2 !important;
  }

  h3 {
    margin: 12pt 0 6pt !important;
    font-size: 12.5pt !important;
    line-height: 1.25 !important;
  }

  h4,
  h5,
  h6 {
    margin: 10pt 0 5pt !important;
    font-size: 11pt !important;
    line-height: 1.25 !important;
  }

  p,
  li,
  address,
  td,
  th,
  small,
  span,
  div {
    color: #000000 !important;
  }

  p,
  ul,
  ol,
  address {
    margin: 0 0 8pt !important;
  }

  ul,
  ol {
    padding-left: 18pt !important;
  }

  li {
    margin: 0 0 4pt !important;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  a {
    color: #000000 !important;
    text-decoration: underline !important;
    text-decoration-thickness: .5pt !important;
    text-underline-offset: 2pt !important;
  }

  a[href^="mailto:"]::after,
  a[href^="tel:"]::after,
  a[href^="#"]::after,
  a[href^="/"]::after,
  a[href^="./"]::after,
  a[href^="../"]::after,
  a[href=""]::after {
    content: "" !important;
  }

  img,
  picture,
  svg {
    position: static !important;
    max-width: 100% !important;
    height: auto !important;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  table {
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    page-break-inside: auto;
    break-inside: auto;
    color: #000000 !important;
    font-size: 9pt !important;
  }

  thead {
    display: table-header-group !important;
  }

  tfoot {
    display: table-footer-group !important;
  }

  tr {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  th,
  td {
    padding: 5pt 6pt !important;
    border: 1px solid #bfbfbf !important;
    color: #000000 !important;
    text-align: left !important;
    vertical-align: top !important;
  }

  th {
    background: #eeeeee !important;
    font-weight: 700 !important;
  }

  input,
  select,
  textarea {
    border: 1px solid #888888 !important;
    background: #ffffff !important;
    color: #000000 !important;
  }

  .hero,
  .page-hero,
  .panel,
  .rmu-panel,
  .content-card,
  .card,
  .rmu-card,
  .box,
  .about-hero,
  .about-card,
  .about-final,
  .camera-hero,
  .camera-card,
  .camera-final,
  .camera-highlight,
  .camera-highlight-inner,
  .pricing-hero,
  .pricing-panel,
  .pricing-final,
  .contact-hero,
  .contact-panel,
  .contact-card,
  .cookie-hero,
  .cookie-panel,
  .cookie-card,
  .imprint-hero,
  .imprint-panel,
  .imprint-card,
  .privacy-hero,
  .privacy-panel,
  .privacy-card,
  .terms-hero,
  .terms-panel,
  .terms-card,
  .portfolio-card,
  .series-card,
  .photo-card,
  .gallery-card {
    page-break-inside: avoid;
    break-inside: avoid;
    margin: 0 0 10pt !important;
    padding: 10pt !important;
    border: 1px solid #bfbfbf !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
  }

  .about-portrait {
    page-break-inside: avoid;
    break-inside: avoid;
    margin: 0 0 10pt !important;
    padding: 0 !important;
    border: 1px solid #bfbfbf !important;
    border-radius: 0 !important;
    background: #ffffff !important;
  }

  .about-portrait img {
    display: block !important;
    width: 100% !important;
    max-height: 110mm !important;
    object-fit: contain !important;
  }

  .about-portrait figcaption {
    position: static !important;
    display: block !important;
    padding: 6pt !important;
    border-top: 1px solid #bfbfbf !important;
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 9pt !important;
    font-weight: 700 !important;
  }

  .about-image-missing {
    display: none !important;
  }

  .kicker,
  .topline,
  .eyebrow,
  .section-kicker,
  .about-topline,
  .camera-topline,
  .camera-highlight-label,
  .pricing-topline,
  .contact-topline,
  .cookie-topline,
  .imprint-topline,
  .privacy-topline,
  .terms-topline {
    display: block !important;
    margin: 0 0 6pt !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #000000 !important;
    font-size: 8pt !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
  }

  .camera-highlight strong {
    display: block !important;
    margin: 0 0 6pt !important;
    color: #000000 !important;
    font-size: 14pt !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  .camera-features {
    display: block !important;
    margin: 4pt 0 8pt !important;
    padding-left: 18pt !important;
    list-style: disc !important;
  }

  .camera-features li {
    display: list-item !important;
    padding-left: 0 !important;
    color: #000000 !important;
  }

  .camera-features li::before {
    display: none !important;
    content: none !important;
  }

  .pricing-quickline,
  .contact-quickline,
  .cookie-quickline,
  .imprint-quickline,
  .privacy-quickline,
  .terms-quickline,
  .notice,
  .alert,
  .message,
  .rmu-notice {
    margin: 0 0 10pt !important;
    padding: 8pt !important;
    border: 1px solid #bfbfbf !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
  }

  .pricing-process,
  .pricing-examples,
  .pricing-buyout,
  .pricing-cards,
  .contact-process,
  .contact-cards,
  .cookie-fact-grid,
  .cookie-cards,
  .imprint-facts,
  .imprint-cards,
  .privacy-stats,
  .privacy-cards,
  .terms-cards,
  .about-page,
  .about-section,
  .camera-page,
  .camera-section,
  .camera-cards,
  .camera-cards-compact,
  .grid,
  .grid-2,
  .grid-3,
  .grid-4 {
    display: block !important;
  }

  .pricing-step,
  .pricing-example,
  .pricing-buyout-card,
  .pricing-card,
  .contact-process li,
  .contact-card,
  .cookie-fact,
  .cookie-card,
  .imprint-fact,
  .imprint-card,
  .privacy-stat,
  .privacy-card,
  .terms-card,
  .about-card,
  .camera-card {
    margin: 0 0 8pt !important;
    padding: 8pt !important;
    border: 1px solid #cccccc !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  .pricing-table-wrap,
  .cookie-table-wrap,
  .camera-table-wrap,
  .table-wrap {
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
  }

  .pricing-table,
  .cookie-table,
  .camera-table {
    min-width: 0 !important;
  }

  .portfolio-grid,
  .series-grid,
  .gallery-grid,
  .photo-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8pt !important;
  }

  .portfolio-card img,
  .series-card img,
  .photo-card img,
  .gallery-card img {
    max-height: 90mm !important;
    object-fit: contain !important;
  }

  .price,
  .total,
  .cart-total,
  .order-total,
  .pricing-result-total,
  .pricing-example-price,
  .pricing-buyout-price {
    color: #000000 !important;
    font-size: 14pt !important;
    font-weight: 700 !important;
  }

  .muted,
  .text-soft,
  .accent,
  .footer-copy,
  .rmu-footer-copy,
  .copyright {
    color: #000000 !important;
  }

  .no-print,
  [data-no-print] {
    display: none !important;
  }

  .print-only {
    display: block !important;
  }
}