@media print {

    .top-icon-menu,
    .header-container,
    .navbar,
    .banderole,
    .breadcrumbArea,
    .seitennavigation,
    .gallery-container,
    #varianten,
    .perks-background,
    #bestellen,
    .button,
    button:not(.accordion-button),
    .downloadButton,
    figcaption,
    .productinfos li::marker,
    #anfrage,
    #moreproducts,
    .footer-container,
    #video,
    iframe,
    #usercentrics-root,
    .frame-type-news_newsselectedlist,
    .frame-type-news_pi1,
    .carousel-indicators,
    .frame-type-news_newsliststicky, .drucken, .thumbs-wrapper, .swiper-button-next, .swiper-button-prev, .infobox-wrapper, #downloads, #baumitbrink, .untereGalerieSwiper, #fixedBar {
        display: none !important;
    }

    .main-container{
        background: #fff;
    }

    .logoArea {
        position: absolute;
        right: 0;
        top: 0;
        width: 85px;
        height: 85px;
        margin-right: 0px !important;
        margin-top: 0!important;
        margin-bottom: 0!important;
    }

    .header .logo img {
        top: 0px;
        right: 0;
        left: 0;
        bottom: 0;
        transform: translate(0, 0);
    }

    .container-text {
        width: 50%;
    }


    .container-image {
        width: 50%;
        position: absolute;
        right: 0;
        top: 100px;
    }

    h1,
    h1 span,
    h2,
    h3,
    h4,
    p,
    li,
    a,
    h3 span,
    span,
    b,
    strong {
        color: black !important;
    }

    h1,
    h1 span {
        font-size: 20pt !important;
    }

    h2 {
        font-size: 14pt !important;
    }

    h3{
        font-size: 12pt !important;
    }

    h4{
        font-size: 10pt !important;
    }

    p,
    li, td {
        font-size: 10pt !important;
    }


    .productinfos{
        margin-top: 0px;
        margin-bottom: 0;
    }

    #carousel-example-generic{
        margin-bottom: 0px;
    }    

    .productinfos li {
        list-style-image: none !important;
        list-style: initial!important;
        list-style-position: inside;
        padding-left: 0;
        margin-left: 17px;
    }

    .productinfos li::marker {
        content: initial!important;
    }

    .news-list-item,
    .frame-layout-2 .ce-textpic,
    .categories figure,
    .thumbnailItem,
    .accordion,
    .accordion-button {
        box-shadow: none !important;
    }

    .accordion,
    .accordion-button,
    .accordion-body {
        padding: 0;
    }

    .accordion{
        max-width: 98%;
    }

    .accordion-header{
        padding-bottom: 5px;
    }

    #flush-headingTwo, h4{
        padding-top: 15px;
    }

    .collapse:not(.show){
        display: block!important;
    }

    #faq h3{
        margin-bottom: 0;
    }

    #technischedaten, .section#produktvergleich, #faq{
        break-before: page;
    }

    /* Produktvergleich Tabelle */
    .productinfos .produktvergleich table td a strong, .productinfos .produktvergleich table td a b, .productinfos .produktvergleich table td strong a, .productinfos .produktvergleich table td b a {
        font-size: 16px;
    }

    /* Wichtig: Box-Modell, damit Padding/Borders die Breite NICHT sprengen */
  *, *::before, *::after { box-sizing: border-box !important; }

  html, body {
    /* Keine zufälligen Mindestbreiten */
    max-width: none !important;
    overflow: visible !important;
  }

  /* 2) Tabelle zähmen */
  table {
    width: 100% !important;          /* füllt die Druckseite */
    max-width: 100% !important;
    table-layout: fixed !important;  /* Spalten werden gleichmäßig, nichts schiebt die Breite auf */
    border-collapse: collapse !important;
    border-spacing: 0 !important;    /* Abstand frisst sonst Breite */
  }

  th, td {
    /* Inhalt MUSS umbrechen dürfen */
    max-width: 0;                    /* wichtig in Kombi mit fixed layout */
    overflow-wrap: anywhere;         /* bricht lange Wörter/URLs */
    word-break: break-word;
    hyphens: auto;
    white-space: normal !important;
    padding: 6pt 8pt;                /* etwas knapper für Druck */
    vertical-align: top;
  }

  /* 3) Bilder innerhalb der Zellen begrenzen */
  td img, th img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
  }

  /* Typo3 / RTE / Mask-typische Klassen (falls vorhanden) */
  .ce-table, .table, .table-responsive, .tx-mask table {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  /* Häufige Breitenkiller neutralisieren */
  [style*="min-width"], th[width], td[width] {
    min-width: 0 !important;
    width: auto !important;
  }    
}

@page {
    size: A4 portrait;
    margin: 40pt 25pt 30pt 15pt!important;
}