@import "https://cdn.wpt-online.de/font-awesome/6.1.1/css/all.min.css";

@page {
    size: portrait;
}

@media print {

    *,
    *::before,
    *::after {
        box-sizing: border-box;
        box-shadow: none !important;
        text-shadow: none !important;
        animation: none !important;
        transition: none !important;
    }

    html,
    body {
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: #fff !important;
        color: #000 !important;
        font: 11pt/1.4 Arial, Helvetica, sans-serif !important;
    }

    body * {
        color: #000 !important;
        background-color: transparent !important;
        background-image: none !important;
    }

    .noprint,
    .d-print-none,
    .visually-hidden,
    .skip-link,
    #speisekarteTab,
    .topheader,
    .modal,
    .modal-backdrop,
    .offcanvas,
    .offcanvas-backdrop,
    .mfp-wrap,
    .mfp-bg,
    #totop,
    #accessibility-widget,
    .accessibility-widget-toggler,
    #cc-main,
    .wpt-cc,
    .wpt-cc-banner,
    .wpt-cc-iframe-placeholder,
    .wpt-cc-overlay,
    .map,
    form,
    img,
    picture,
    .square-image,
    .image-container,
    .gallery-item,
    .album,
    .carousel,
    iframe,
    video,
    audio,
    button,
    input[type="submit"],
    input[type="button"],
    input[type="reset"],
    .btn,
    .carousel-indicators,
    .carousel-control-prev,
    .carousel-control-next,
    .gallery-overlay,
    .trenner,
    .hero>picture,
    img[src=""] {
        display: none !important;
    }

    .fw-bold {
        font-weight: bold;
    }

    .btn-link,
    a[href^="tel:"],
    button[data-bs-target="#phoneModal"] {
        display: inline !important;
        padding: 0 !important;
        border: 0 !important;
        font: inherit !important;
        text-align: inherit !important;
        white-space: normal !important;
        text-decoration: underline !important;
    }

    body .noprint,
    body .d-print-none,
    body .visually-hidden {
        display: none !important;
    }

    .header-main {
        display: block !important;
        margin: 0 0 6mm !important;
        padding: 0 !important;
        page-break-inside: avoid;
        break-inside: avoid;
        page-break-after: avoid;
        break-after: avoid-page;
    }

    .header-main .navbar,
    .header-main .navbar>.container,
    .header-main .navbar>.container-fluid {
        display: block !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-main .navbar-brand {
        display: block !important;
        width: fit-content;
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-main .navbar-brand img {
        display: block !important;
        width: auto !important;
        height: 25mm !important;
        max-width: 60mm !important;
        max-height: 25mm !important;
    }

    .textur::before,
    .textur::after,
    .hero::before,
    .hero::after,
    .image-container::before {
        content: none !important;
    }

    main,
    .content-main,
    .lesbar,
    section,
    .hero,
    .hero.subpage,
    .container,
    .container-fluid,
    .container-jobdetails,
    .sticky-top,
    .fixed-top,
    .fixed-bottom {
        position: static !important;
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        transform: none !important;
    }

    section,
    .hero,
    .hero.subpage,
    .container,
    .container-fluid {
        margin: 0 !important;
        padding: 0 !important;
    }

    section+section,
    .hero.subpage+section {
        margin-top: 6mm !important;
    }

    .row {
        display: block !important;
        margin: 0 !important;
    }

    .row>* {
        flex: none !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 3mm !important;
        padding: 0 !important;
    }

    .row> :empty {
        display: none !important;
    }

    .h-100 {
        height: auto !important;
    }

    .overflow-hidden,
    .table-responsive {
        overflow: visible !important;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .lunch-menu__section-header {
        page-break-after: avoid;
        break-after: avoid-page;
        page-break-inside: avoid;
        break-inside: avoid;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .customFont {
        font-family: Arial, Helvetica, sans-serif !important;
        line-height: 1.2 !important;
    }

    h1 {
        font-size: 21pt !important;
    }

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

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

    h4,
    h5,
    h6 {
        font-size: 11pt !important;
    }

    p,
    li,
    dd {
        orphans: 3;
        widows: 3;
        overflow-wrap: anywhere;
    }

    p {
        margin-bottom: 3mm;
    }

    .lead {
        font-size: 12pt !important;
    }

    .small,
    small {
        font-size: 9pt !important;
    }

    .mt-5 {
        margin-top: 6mm !important;
    }

    .mb-5 {
        margin-bottom: 5mm !important;
    }

    a {
        text-decoration: underline;
        overflow-wrap: anywhere;
    }

    a[href]::after {
        content: none !important;
    }

    .card,
    #job-infos,
    .lunch-menu__dish,
    figure,
    .gallery-item,
    tr {
        page-break-inside: avoid !important;
        break-inside: avoid !important;
    }

    .card {
        display: block !important;
        position: static !important;
        height: auto !important;
        overflow: visible !important;
        margin-bottom: 4mm !important;
        border: 1px solid #999 !important;
        border-radius: 0 !important;
    }

    .card-body,
    .card-header,
    .card-footer {
        padding: 4mm !important;
    }

    #speisekarte,
    #speisekarteTabContent,
    #speisekarteTabContent>.tab-pane,
    #speisekarte .card {
        page-break-before: auto !important;
        break-before: auto !important;
        page-break-inside: auto !important;
        break-inside: auto !important;
    }

    #speisekarteTabContent>.tab-pane {
        display: block !important;
        opacity: 1 !important;
        transform: none !important;
    }

    .lunch-menu__dish,
    .lunch-menu__dish-content,
    .lunch-menu__dish h4 {
        page-break-after: auto !important;
        break-after: auto !important;
    }

    #speisekarte .lunch-menu__section,
    #speisekarte .lunch-menu__dishes {
        display: block !important;
        overflow: visible !important;
        page-break-inside: auto !important;
        break-inside: auto !important;
    }

    .lunch-menu__section {
        margin-bottom: 6mm !important;
    }

    .lunch-menu__dish {
        display: flex !important;
        gap: 5mm;
        padding: 3mm 0;
    }

    .lunch-menu__dish-content {
        flex: 1;
    }

    .lunch-menu__price {
        flex-shrink: 0;
        white-space: nowrap;
        font-size: 11pt !important;
    }

    .lunch-menu__valid,
    .lunch-menu__section-header span {
        opacity: 1;
    }

    table {
        max-width: 100%;
        border-collapse: collapse;
    }

    thead {
        display: table-header-group;
    }

    tfoot {
        display: table-footer-group;
    }

    th,
    td {
        vertical-align: top;
    }

    pre {
        white-space: pre-wrap;
        overflow-wrap: anywhere;
    }

    .footer-main {
        position: static !important;
        margin-top: 6mm !important;
        padding: 4mm 0 0 !important;
        border-top: 1px solid #999;
        font-size: 9pt;
    }

    .footer-main .text-center {
        text-align: left !important;
    }

    .footer-main .row .row {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 2mm;
    }

    .footer-main .row .row>* {
        width: auto !important;
        margin-bottom: 1mm !important;
    }
}