@media print {
    body {
        font-family: "Times New Roman", serif;
        font-size: 12pt;
        line-height: 1.5;
        background: white !important;
        color: black !important;
    }

    header nav,
    footer,
    .carousel,
    video,
    iframe,
    .skip-link,
    button,
    .btn,
    .contrast-toggle,
    .navbar-toggler {
        display: none !important;
    }

    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid;
        page-break-inside: avoid;
        color: black !important;
    }

    h1 {
        font-size: 18pt;
        margin-bottom: 1cm;
    }

    h2 {
        font-size: 16pt;
        border-bottom: 1pt solid #000;
        padding-bottom: 0.3cm;
    }

    h3 {
        font-size: 14pt;
    }

    img {
        max-width: 100% !important;
        max-height: 10cm;
        page-break-inside: avoid;
    }

    table {
        page-break-inside: avoid;
        border-collapse: collapse;
        width: 100%;
    }

    table, th, td {
        border: 1pt solid #000;
    }

    th, td {
        padding: 5pt;
    }

    a {
        color: black !important;
        text-decoration: none !important;
    }

    a[href]:after {
        content: " (" attr(href) ")";
        font-size: 80%;
        color: #666;
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    .container, .container-fluid {
        width: 100%;
        margin: 0;
        padding: 0;
        max-width: 100%;
    }

    .row {
        display: block;
    }

    .col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
    .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
    .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
    .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
        width: 100%;
        float: none;
        max-width: 100%;
    }

    @page {
        margin: 1.5cm;
    }

    p, blockquote, ul, ol, dl, table {
        page-break-inside: avoid;
    }

    header {
        position: static;
        page-break-after: avoid;
    }

    header h1 {
        text-align: center;
    }

    input, textarea, select {
        border: 1pt solid #000;
        padding: 5pt;
    }

    .form-check-input {
        margin-right: 5pt;
    }
}
