@media print {
    /* ── Allgemein ─────────────────────────────────────────────── */
    *,
    *::before,
    *::after {
        box-shadow: none !important;
        text-shadow: none !important;
    }

    :is(h1, h2, h3, h4, h5, h6) {
        page-break-after: avoid;
    }

    :is(tr, img, svg, pre, blockquote) {
        page-break-inside: avoid;
    }

    :is(.columns, .container) {
        max-width: 100% !important;
    }

    .page-main {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
    }

    /* ── Navigation & Chrome ausblenden ────────────────────────── */
    .page-header,
    .page-footer,
    #shopalerts,
    .shopalerts-placeholder,
    .gotoform,
    dialog,
    .additional-header-brands {
        display: none !important;
    }

    /* Header global ausblenden — auf PDP wird Logo separat eingeblendet */
    #header {
        display: none !important;
    }

    /* ── PDP: HIRO-Logo oben ───────────────────────────────────── */
    .catalog-product-view .page-header,
    .catalog-product-view #header {
        display: block !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin-bottom: 0.5rem !important;
    }

    .catalog-product-view #header .container {
        padding: 0.25rem 0 !important;
        justify-content: flex-start !important;
    }

    .catalog-product-view #header .container > *:not(:first-child),
    .catalog-product-view #header #search-content,
    .catalog-product-view #header [id*="cart"],
    .catalog-product-view #header dialog {
        display: none !important;
    }

    .catalog-product-view #header .container > div:first-child,
    .catalog-product-view #header a {
        display: block !important;
        width: auto !important;
        height: auto !important;
    }

    .catalog-product-view #header img {
        display: block !important;
        max-height: 36px !important;
        height: 36px !important;
        width: auto !important;
        min-width: 74px !important;
    }

    .catalog-product-view #header a[href]::after {
        content: none !important;
    }

    /* ── PDP: Startext (WLTP) kompakt sichtbar ─────────────────── */
    .catalog-product-view .page-main .container.text-center {
        margin: 0.5rem 0 !important;
        padding: 0 !important;
    }

    .catalog-product-view .page-main .container.text-center p {
        font-size: 0.65rem !important;
        line-height: 1.3 !important;
        text-align: left !important;
        orphans: 2;
        widows: 2;
    }

    /* ── PDP: Upsell & Slider ausblenden ─────────────────────────── */
    .catalog-product-view .product-slider,
    .catalog-product-view [class*="product-slider"],
    .catalog-product-view section.snap-slider {
        display: none !important;
    }

    .catalog-product-view .product-info-main {
        margin-top: 0 !important;
    }

    /* ── Produktseite: Bild + Buybox zweispaltig ───────────────── */
    .catalog-product-view .product-info-main > section:first-child {
        display: grid !important;
        grid-template-columns: 240px minmax(0, 1fr) !important;
        grid-template-rows: auto !important;
        gap: 0.5rem 0.75rem !important;
        align-items: start !important;
        padding: 0 !important;
    }

    /* Inline-Skript zwischen Galerie und Buybox aus dem Gridfluss nehmen */
    .catalog-product-view .product-info-main > section:first-child > script {
        display: none !important;
    }

    .catalog-product-view .product-info-main > section:first-child > #gallery {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .catalog-product-view .product-info-main > section:first-child > div {
        grid-column: 2 !important;
        grid-row: 1 !important;
    }

    .catalog-product-view .product-info-main .card {
        border: 1px solid #d4d4d4 !important;
        box-shadow: none !important;
        margin-bottom: 0.5rem !important;
        padding: 0.5rem !important;
    }

    .catalog-product-view .product-info-main .grid.lg\:grid-cols-2 {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
    }

    .catalog-product-view .product-info-main h2,
    .catalog-product-view .product-info-main h3 {
        font-size: 1rem !important;
        margin-bottom: 0.35rem !important;
    }

    .catalog-product-view .product-info-main .price-box {
        --price-font-size: 1.5rem !important;
    }

    /* ── Galerie: nur Hauptbild, kompakt ──────────────────────── */
    .catalog-product-view #gallery {
        break-inside: avoid;
        margin-bottom: 20px;
    }

    .catalog-product-view #gallery-main {
        position: static !important;
        height: auto !important;
        max-height: none !important;
        margin-bottom: 0 !important;
    }

    .catalog-product-view #gallery-main img {
        visibility: visible !important;
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 auto !important;
        object-fit: contain !important;
    }

    .catalog-product-view #gallery-main img ~ img,
    .catalog-product-view #gallery-main template,
    .catalog-product-view #gallery-main button,
    .catalog-product-view #gallery [aria-label*="Thumbnails"],
    .catalog-product-view #gallery [aria-label*="Miniatur"],
    .catalog-product-view #gallery nav,
    .catalog-product-view .js_thumbs_slides,
    .catalog-product-view .js_thumbs_slide,
    .catalog-product-view .thumbs-wrapper {
        display: none !important;
    }

    /* ── Buybox: Aktionen ausblenden ───────────────────────────── */
    .catalog-product-view .product-info-main .btn,
    .catalog-product-view .product-info-main button,
    .catalog-product-view .product-info-main .flex.gap-8 {
        display: none !important;
    }

    .catalog-product-view .product-info-main a[href^="tel:"] {
        display: none !important;
    }

    .catalog-product-view .price-box {
        display: block !important;
    }

    /* ── Kontaktbox: kompakt, ohne Foto ─────────────────────────── */
    .catalog-product-view #contact-box {
        display: block !important;
        margin-top: 0 !important;
        break-inside: avoid;
        font-size: 0.8rem !important;
        line-height: 1.3 !important;
    }

    .catalog-product-view #contact-box img {
        display: none !important;
    }

    .catalog-product-view #contact-box h3 {
        font-size: 0.9rem !important;
        margin-bottom: 0.15rem !important;
    }

    /* ── Attribute & Inhalte ───────────────────────────────────── */
    .catalog-product-view .product-attributes section {
        padding-top: 0.35rem !important;
        padding-bottom: 0.35rem !important;
    }

    .catalog-product-view .product-attributes h3 {
        font-size: 0.9rem !important;
        margin-bottom: 0.25rem !important;
    }

    .catalog-product-view .product-attributes dl {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 0.25rem 0.75rem !important;
    }

    .catalog-product-view .product-attributes .product-attribute-label {
        font-size: 0.7rem !important;
        margin-bottom: 0 !important;
    }

    .catalog-product-view .product-attributes .product-attribute-value {
        font-size: 0.75rem !important;
    }

    .catalog-product-view #description ul {
        columns: 3 !important;
        column-gap: 1rem !important;
        font-size: 0.75rem !important;
        line-height: 1.25 !important;
    }

    /* ── Seitenumbrüche: gezielt, nicht ganze Blöcke ───────────── */
    .catalog-product-view #description li,
    .catalog-product-view .product-attributes section,
    .catalog-product-view .product-attributes dl > div,
    .catalog-product-view .table tr {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .catalog-product-view p,
    .catalog-product-view li,
    .catalog-product-view dd {
        orphans: 2;
        widows: 2;
    }

    /* ── Emissions & Energieeffizienz ─────────────────────────── */
    .catalog-product-view .grid.xl\:grid-cols-2 {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.75rem !important;
        align-items: start !important;
        margin-block: 0.5rem !important;
    }

    .catalog-product-view [aria-label="Verbrauchsangaben*"] {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .catalog-product-view [aria-label="Verbrauchsangaben*"] h3 {
        font-size: 0.9rem !important;
        margin-bottom: 0.35rem !important;
    }

    .catalog-product-view .table {
        font-size: 0.75rem !important;
    }

    .catalog-product-view .efficiency {
        --eff-notch: 0.55rem;
        --eff-marker-width: 3.25rem;
        display: block !important;
        width: 100% !important;
        break-inside: avoid;
    }

    .catalog-product-view .efficiency-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) var(--eff-marker-width) !important;
        gap: 0.35rem !important;
        align-items: center !important;
        margin-bottom: 2px !important;
    }

    .catalog-product-view .efficiency.efficiency--dual .efficiency-row {
        grid-template-columns: minmax(0, 1fr) var(--eff-marker-width) var(--eff-marker-width) !important;
    }

    .catalog-product-view .efficiency-row:first-child > * {
        font-size: 0.7rem !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

    .catalog-product-view .efficiency-color,
    .catalog-product-view .efficiency-current,
    .catalog-product-view .efficiency-empty-current {
        height: 1.25rem !important;
        min-height: 1.25rem !important;
    }

    .catalog-product-view .efficiency-color span,
    .catalog-product-view .efficiency-current span,
    .catalog-product-view .efficiency-empty-current span {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
        height: 1.25rem !important;
        line-height: 1.25rem !important;
        font-size: 0.7rem !important;
        font-weight: 700 !important;
        color: #fff !important;
        box-sizing: border-box !important;
    }

    .catalog-product-view .efficiency-color span {
        display: block !important;
        padding-left: 0.4rem !important;
        padding-right: 0.25rem !important;
        clip-path: polygon(
            0 0,
            calc(100% - var(--eff-notch)) 0,
            100% 50%,
            calc(100% - var(--eff-notch)) 100%,
            0 100%
        ) !important;
    }

    .catalog-product-view .efficiency-current span,
    .catalog-product-view .efficiency-empty-current span {
        width: 100% !important;
        padding-left: var(--eff-notch) !important;
        padding-right: 0.35rem !important;
        text-align: right !important;
        background-color: #000 !important;
        clip-path: polygon(
            var(--eff-notch) 0,
            100% 0,
            100% 100%,
            var(--eff-notch) 100%,
            0 50%
        ) !important;
    }

    .catalog-product-view .efficiency-current,
    .catalog-product-view .efficiency-empty-current {
        width: var(--eff-marker-width) !important;
        justify-self: end !important;
    }

    .catalog-product-view .efficiency-color.color-a span { width: 25% !important; background: #00a650 !important; }
    .catalog-product-view .efficiency-color.color-b span { width: 37.5% !important; background: #4db748 !important; }
    .catalog-product-view .efficiency-color.color-c span { width: 50% !important; background: #bfd630 !important; }
    .catalog-product-view .efficiency-color.color-d span { width: 62.5% !important; background: #fff200 !important; color: #000 !important; }
    .catalog-product-view .efficiency-color.color-e span { width: 75% !important; background: #ffb812 !important; }
    .catalog-product-view .efficiency-color.color-f span { width: 87.5% !important; background: #f27024 !important; }
    .catalog-product-view .efficiency-color.color-g span { width: 100% !important; background: #ed1b24 !important; }

    /* ── Footer-Bereiche der Seite ausblenden ──────────────────── */
    .catalog-product-view .product-info-main > section[aria-label*="Review"],
    .catalog-product-view .product-info-main > section[aria-label*="Bewertung"],
    .catalog-product-view [data-content-type="row"]:has(.gotoform),
    .catalog-product-view nav[aria-label*="Menu"],
    .catalog-product-view nav[aria-label*="Menü"] {
        display: none !important;
    }

    @page {
        margin: 8mm 8mm;
    }

    /* ── Bestellungen (bestehend) ──────────────────────────────── */
    .order-items .lg\:grid {
        display: grid !important;
    }

    .order-items .hidden.lg\:grid > div {
        border-bottom: 1px solid rgb(231, 231, 231);
    }

    .order-items .lg\:grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }

    .order-details-items .grid-cols-1 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .order-items .lg\:hidden {
        display: none !important;
    }

    .order-items div.flex.lg\:block {
        display: block !important;
    }

    .order-items div.text-right.lg\:text-left {
        text-align: left !important;
    }

    .actions-toolbar {
        display: none !important;
    }

    .order-title a {
        display: none !important;
    }
}

/* Firefox-Druck: Header erzeugt sonst eine leere erste Seite */
@-moz-document url-prefix() {
    @media print {
        .catalog-product-view .page-header,
        .catalog-product-view #header {
            display: none !important;
            height: 0 !important;
            min-height: 0 !important;
            margin: 0 !important;
            padding: 0 !important;
            border: none !important;
            overflow: hidden !important;
        }
    }
}
