/* Screen reading layout; the eight Letter-sized print pages stay unchanged. */
.brochure-navigation { max-width: 816px; margin: 0 auto 24px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.brochure-navigation a { color: #075c6b; text-decoration: underline; text-underline-offset: 3px; padding: 10px 0; }
.brochure-navigation .brochure-project-link { background: #075c6b; color: #fff; padding: 12px 18px; border-radius: 8px; }
.brochure-navigation a:focus-visible { outline: 3px solid #075c6b; outline-offset: 4px; }
@media print { .brochure-navigation { display: none; } }
@media screen and (max-width: 850px) {
    body.brochure { padding: 16px; }
    .brochure .brochure-wrap { width: 100%; min-width: 0; }
    .brochure .page { width: 100%; height: auto; overflow: hidden; }
    .brochure .page .page-inner { height: auto; padding: 28px 24px; display: flex; flex-direction: column; }
    .brochure .page-inner > *, .brochure .card, .brochure .card > div { min-width: 0; }
    .brochure .cover-grid, .brochure .grid-2, .brochure .grid-3,
    .brochure .catalog-head, .brochure .steps, .brochure .contacts,
    .brochure [style*="grid-template-columns"] { grid-template-columns: minmax(0, 1fr) !important; }
    .brochure .card[style*="height:"] { height: auto !important; }
    .brochure .media {
        height: auto !important;
        max-height: none !important;
        min-height: 0;
        width: fit-content;
        max-width: 100%;
        justify-self: center;
        align-self: center;
        margin-inline: auto;
    }
    .brochure .page .media img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 380px;
        object-fit: contain;
    }
    .brochure .page-cover .brand { flex-wrap: wrap; }
    .brochure .page-cover .logo { max-width: 180px; height: auto; }
    .brochure .page-cover .cover-title h1 { font-size: clamp(32px, 6vw, 48px); }
    .brochure .footer { margin-top: 16px; }
}
@media screen and (max-width: 540px) {
    .brochure .mini-grid, .brochure .highlight-grid { grid-template-columns: minmax(0, 1fr); }
    .brochure .page .page-inner { padding: 24px 18px; }
    .brochure .card > div[style*="display: flex"] { flex-wrap: wrap; }
    .brochure .card p, .brochure .card li { font-size: 14px !important; }
    .brochure .footer { grid-template-columns: minmax(0, 1fr); }
    .brochure .pill { white-space: normal; }
}

@media screen and (max-width: 850px) {
    .brochure .brochure-customer-logos[style] { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
    .brochure .brochure-customer-logos img { max-width: 100%; }
}
@media screen and (max-width: 540px) {
    .brochure .brochure-customer-logos[style] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Match the website's restrained surfaces without changing print composition. */
@media screen {
    .brochure .page { background: #f4f7f9; box-shadow: 0 2px 12px rgba(4, 25, 37, .08); }
    .brochure .page::after { display: none; }
    .brochure .page.page-cover { background: #082a3d; }
    .brochure .page :is(.card, .product, .step, .category, .catalog-head, .media),
    .brochure .page-services header { box-shadow: none; border-color: #dce4e9; }
    .brochure .page :is(.hero, .solution, .solution-highlight, .cta, .panel-cyan) {
        background: #082a3d;
        box-shadow: none;
    }
    .brochure .page :is(.hero, .solution, .solution-highlight, .cta)::before,
    .brochure .page :is(.hero, .solution, .solution-highlight, .cta)::after { display: none; }
    .brochure .page .pill { box-shadow: none; }
    .brochure .page .cover-panel { background: rgba(255, 255, 255, .04); }
    .brochure .page .cover-panel .pill { background: transparent; }
}

/* Screen-only chapter navigation; native details works without JavaScript. */
.brochure-contents { max-width: 816px; margin: 0 auto 24px; color: #183347; }
.brochure-contents summary { cursor: pointer; padding: 12px 0; font-weight: 600; }
.brochure-contents nav { display: flex; flex-wrap: wrap; gap: 4px 24px; padding: 8px 0 12px; }
.brochure-contents a { color: #075c6b; padding: 10px 0; text-decoration: underline; text-underline-offset: 3px; }
.brochure-contents :is(summary, a):focus-visible { outline: 3px solid #075c6b; outline-offset: 3px; }
@media screen {
    .brochure h2[id^="brochure-"] { scroll-margin-top: 24px; }
    .brochure h2[id^="brochure-"]:focus-visible { outline: 3px solid #087e83; outline-offset: 5px; }
}
@media print { .brochure-contents { display: none; } }

/* Prevent mobile site-header positioning from overlapping the cover badge. */
@media screen and (max-width: 850px) {
    .brochure .page-cover .brand .logo {
        position: static;
        inset: auto;
        transform: none;
        margin: 0;
        height: 48px !important;
        width: auto;
        max-width: 140px;
        object-fit: contain;
        flex-shrink: 0;
    }
}

/* Product headings remain part of the printed catalogue and link to full specifications. */
.brochure .brochure-equipment-link { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.brochure .brochure-equipment-link:focus-visible { outline: 3px solid #00758b; outline-offset: 4px; }
