@media print {
    @page {
        margin: 1in 0;
        size: A4;
    }

    @page :first {
        margin-top: 0;
        margin-bottom: 0;
    }

    /* _::-webkit-full-page-media, _:future, :root Only targets Safari browser*/
    _::-webkit-full-page-media, _:future, :root .print-safari-margin-top {
        padding-top: 1in;
    }

    _::-webkit-full-page-media, _:future, :root .safari-workaround-buffer {
        display: table !important;
        /*background-color: blue !important;*/
    }

    body {
        font-size: 10pt !important;
        line-height: 1.2 !important;
        background-color: white;
        margin: 0;
        padding: 1in !important;
        padding-bottom: 0 !important;
    }

    .print-order-0 {
        order: 0 !important;
    }

    .print-order-1 {
        order: 1 !important;
    }

    .print-order-2 {
        order: 2 !important;
    }

    .print-order-3 {
        order: 3 !important;
    }

    .print-image-top-left {
        position: absolute;
        top: 0;
        left: 0;
        width: 260px;
        margin-top: -65px;
        margin-left: -25px;
        z-index: 1000;
    }

    .print-image-top-right {
        position: absolute;
        top: 0;
        right: 0;
        width: 135px;
        margin-right: 1in;
        margin-top: 53pt;
        z-index: 1000;
    }

    .page-break-after-always {
        page-break-after: always;
    }

    /* Footer styles for Chrome or Safari */
    @supports not (-moz-appearance: none) {
        .print-footer {
            position: fixed;
            top: 19.25cm;
            left: 0;
            right: 0;
            border-top: 1px solid #B5B5C3;
        }
    }

    /* Firefox */
    @supports (-moz-appearance: none) {
        .print-footer {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            margin-bottom: 0.75in;
        }
    }

    /* Safari  */
    _::-webkit-full-page-media, _:future, :root .print-footer {
        position: fixed;
        top: 17.75cm;
        left: 0;
        right: 0;
        border-top: 1px solid #B5B5C3;
    }

    .print-footer img {
        width: 52px;
        height: 71px;
        margin-top: -1px;
    }

    .print-footer .footer-content {
        padding-top: 12px;
        margin-right: 50px
    }

    .footer-item {
        margin-right: 10px;
    }

    .footer-item > div:first-child {
        color: var(--bug-red);
        font-size: 14px;
        font-weight: bold;
        font-family: 'Calibri';
        text-transform: uppercase;
        letter-spacing: -0.5px;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    .footer-item > div:nth-child(2) > div {
        font-family: "BlenderPro";
        font-size: 13px;
        font-weight: 500;
        letter-spacing: -0.5px;
        line-height: 1;
    }

    input[type="checkbox"].addon-checkbox:checked + .addon-box h6 {
        color: var(--bug-lb) !important;
    }

    input[type="checkbox"].addon-checkbox:checked + .addon-box p {
        color: #8492a6 !important;
    }

    _::-webkit-full-page-media, _:future, :root .addon-bugshell-logo {
        width: 3vw;
        height: 3vw;
    }

    .addon-bugshell-logo {
        width: 6vw;
        height: 6vw;
    }

    .option-value-display {
        height: 30px;
        width: 30px;
        min-width: 30px;
    }

    .shadow {
        box-shadow: none !important;
    }

    .no-page-break {
        page-break-inside: avoid !important;
        break-inside: avoid !important;
    }

    _::-webkit-full-page-media, _:future, :root .no-page-break {
        display: table;
    }

    .container-fluid {
        max-width: none !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 1in 0 0 0 !important;
    }

    .print-mb-0 {
        margin-bottom: 0 !important;
    }

    .print-body-padding {
        padding-top: 0.75rem !important;
        padding-bottom: 0.5rem !important;
    }

    .lh-print-1 {
        line-height: 1 !important;
    }

    .lh-print-15 {
        line-height: 1.5 !important;
    }

    .flex-print-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .align-items-print-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .col-print-4 {
        flex: 0 0 auto !important;
        width: 33.33333333% !important;
    }

    .col-print-12 {
        flex: 0 0 auto !important;
        width: 100% !important;
    }

    .w-print-100 {
        width: 100% !important;
    }

    .option-value-display {
        background: white;
    }

    h1, .h1 {
        font-size: 24pt !important;
        margin-bottom: 6pt !important;
    }

    h1.bug-red {
        color: var(--bug-lb) !important;
    }

    h2, .h2 {
        font-size: 14pt !important;
        margin-top: 6pt !important;
        margin-bottom: 4pt !important;
    }

    h3, .h3 {
        font-size: 12pt !important;
        margin-top: 4pt !important;
        margin-bottom: 3pt !important;
    }

    h4, .h4 {
        font-size: 11pt !important;
        margin-top: 3pt !important;
        margin-bottom: 2pt !important;
    }

    h5, .h5 {
        font-size: 10pt !important;
        margin-top: 2pt !important;
        margin-bottom: 2pt !important;
    }

    h6, .h6 {
        font-size: 9pt !important;
        margin-top: 2pt !important;
        margin-bottom: 1pt !important;
    }

    .fs-1 {
        font-size: 16pt !important;
    }

    .fs-2 {
        font-size: 14pt !important;
    }

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

    .fs-4 {
        font-size: 11pt !important;
    }

    .fs-5 {
        font-size: 10pt !important;
    }

    .fs-6 {
        font-size: 9pt !important;
    }

    .fs-7 {
        font-size: 8pt !important;
    }

    p, .p {
        font-size: 10pt !important;
        margin-bottom: 4pt !important;
    }

    /* Display utilities override */
    .display-1 {
        font-size: 20pt !important;
    }

    .display-2 {
        font-size: 18pt !important;
    }

    .display-3 {
        font-size: 16pt !important;
    }

    .display-4 {
        font-size: 14pt !important;
    }

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

    .display-6 {
        font-size: 11pt !important;
    }

    /* Margin and padding overrides */
    .m-0 {
        margin: 0 !important;
    }

    .m-1 {
        margin: 2pt !important;
    }

    .m-2 {
        margin: 4pt !important;
    }

    .m-3 {
        margin: 6pt !important;
    }

    .m-4 {
        margin: 8pt !important;
    }

    .m-5 {
        margin: 12pt !important;
    }

    .mt-0, .my-0 {
        margin-top: 0 !important;
    }

    .mt-1, .my-1 {
        margin-top: 2pt !important;
    }

    .mt-2, .my-2 {
        margin-top: 4pt !important;
    }

    .mt-3, .my-3 {
        margin-top: 6pt !important;
    }

    .mt-4, .my-4 {
        margin-top: 8pt !important;
    }

    .mt-5, .my-5 {
        margin-top: 12pt !important;
    }

    .mb-0, .my-0 {
        margin-bottom: 0 !important;
    }

    .mb-1, .my-1 {
        margin-bottom: 2pt !important;
    }

    .mb-2, .my-2 {
        margin-bottom: 4pt !important;
    }

    .mb-3, .my-3 {
        margin-bottom: 6pt !important;
    }

    .mb-4, .my-4 {
        margin-bottom: 8pt !important;
    }

    .mb-5, .my-5 {
        margin-bottom: 12pt !important;
    }

    .ms-0, .mx-0 {
        margin-left: 0 !important;
    }

    .ms-1, .mx-1 {
        margin-left: 2pt !important;
    }

    .ms-2, .mx-2 {
        margin-left: 4pt !important;
    }

    .ms-3, .mx-3 {
        margin-left: 6pt !important;
    }

    .ms-4, .mx-4 {
        margin-left: 8pt !important;
    }

    .ms-5, .mx-5 {
        margin-left: 12pt !important;
    }

    .me-0, .mx-0 {
        margin-right: 0 !important;
    }

    .me-1, .mx-1 {
        margin-right: 2pt !important;
    }

    .me-2, .mx-2 {
        margin-right: 4pt !important;
    }

    .me-3, .mx-3 {
        margin-right: 6pt !important;
    }

    .me-4, .mx-4 {
        margin-right: 8pt !important;
    }

    .me-5, .mx-5 {
        margin-right: 12pt !important;
    }

    .p-0 {
        padding: 0 !important;
    }

    .p-1 {
        padding: 2pt !important;
    }

    .p-2 {
        padding: 4pt !important;
    }

    .p-3 {
        padding: 6pt !important;
    }

    .p-4 {
        padding: 8pt !important;
    }

    .p-5 {
        padding: 12pt !important;
    }

    .pt-0, .py-0 {
        padding-top: 0 !important;
    }

    .pt-1, .py-1 {
        padding-top: 2pt !important;
    }

    .pt-2, .py-2 {
        padding-top: 4pt !important;
    }

    .pt-3, .py-3 {
        padding-top: 6pt !important;
    }

    .pt-4, .py-4 {
        padding-top: 8pt !important;
    }

    .pt-5, .py-5 {
        padding-top: 12pt !important;
    }

    .pb-0, .py-0 {
        padding-bottom: 0 !important;
    }

    .pb-1, .py-1 {
        padding-bottom: 2pt !important;
    }

    .pb-2, .py-2 {
        padding-bottom: 4pt !important;
    }

    .pb-3, .py-3 {
        padding-bottom: 6pt !important;
    }

    .pb-4, .py-4 {
        padding-bottom: 8pt !important;
    }

    .pb-5, .py-5 {
        padding-bottom: 12pt !important;
    }

    .ps-0, .px-0 {
        padding-left: 0 !important;
    }

    .ps-1, .px-1 {
        padding-left: 2pt !important;
    }

    .ps-2, .px-2 {
        padding-left: 4pt !important;
    }

    .ps-3, .px-3 {
        padding-left: 6pt !important;
    }

    .ps-4, .px-4 {
        padding-left: 8pt !important;
    }

    .ps-5, .px-5 {
        padding-left: 12pt !important;
    }

    .pe-0, .px-0 {
        padding-right: 0 !important;
    }

    .pe-1, .px-1 {
        padding-right: 2pt !important;
    }

    .pe-2, .px-2 {
        padding-right: 4pt !important;
    }

    .pe-3, .px-3 {
        padding-right: 6pt !important;
    }

    .pe-4, .px-4 {
        padding-right: 8pt !important;
    }

    .pe-5, .px-5 {
        padding-right: 12pt !important;
    }

    /* Row and column adjustments */
    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .col, [class*="col-"] {
        padding-left: 3pt !important;
        padding-right: 3pt !important;
    }

    .print-ps-5.ps-5 {
        padding-left: 36pt !important;
    }

    .print-mb-5.mb-5 {
        margin-bottom: 36pt !important;
    }

    .print-mb-2.mb-2 {
        margin-bottom: 12pt !important;
    }

    .print-mt-2.mt-2 {
        margin-top: 12pt !important;
    }

    .print-mt-1.mt-5 {
        margin-top: 10pt !important;
    }

    .print-me-1 {
        margin-right: 6pt !important;
    }

    .print-mb-0.mb-3 {
        margin-bottom: 0 !important;
    }

    .print-w-50 {
        width: 50% !important;
    }

    .print-align-right {
        align-self: end !important;
    }

    .card {
        border: 1px solid #dee2e6 !important;
    }
}