/*
 * Print stylesheet — enqueued with media="print" (sazps_child_print_styles).
 *
 * Goal: a clean, useful printout — the page's real content plus the practice's
 * contact info — without site chrome (nav, search, buttons, consent banner,
 * embedded forms, sliders). Also fixes two things that made pages print blank:
 *   1) The hero title and footer contact are WHITE text on dark/image
 *      backgrounds; browsers drop backgrounds when printing, so they became
 *      white-on-white (invisible). We force dark text on white here.
 *   2) Scroll-in (WOW.js) content is left visibility:hidden until scrolled into
 *      view, so unscrolled sections printed blank. We reveal it.
 */

/* --- Hide site chrome that isn't useful on paper --------------------------- */
.header,                       /* fixed nav/search/buttons; logo + phone remain in footer */
.consent-banner,
.banner-video-wrap,            /* hero video panel */
.banner-video-play,
.breadcrumb,
.footer-menu,
.footer-links,
.footer-reviews,
.footer-btns,
.gallery-section .btn,
.reviews-section .btn,
.hl-form-embed, iframe,        /* embedded HighLevel/YouTube — not useful printed */
.slick-arrow, .slick-dots,
#global-search, .search-panel,
.menu-wrap, .desktop-nav-row, .menu-button {
    display: none !important;
}

/* --- Reveal scroll-animation content WOW.js leaves hidden ------------------ */
.wow, .animated, [class*="fadeIn"], [class*="wow"] {
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
}

/* --- Force dark text on white so nothing prints white-on-white ------------- */
body, #main, #main *,
.text-white, .footer, .footer *,
.page-banner, .page-banner * {
    color: #1a1a1a !important;
    background: transparent !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
body { background: #fff !important; }

/* --- Slim, image-free page banner: keep the title as dark text ------------- */
.page-banner,
.page-banner--slim {
    min-height: 0 !important;
    height: auto !important;
    padding: 0 0 10px !important;
    background: none !important;
}
.page-banner:before { display: none !important; }

/* --- Footer: keep the contact block (NAP), drop the dark background --------- */
.footer, .footer-top, .footer-bottom { background: #fff !important; }

/* --- Links print as plain underlined text ---------------------------------- */
a { color: #000 !important; text-decoration: underline; }

/* --- Layout safety: avoid clipping / fixed-positioning blank pages --------- */
html, body { overflow: visible !important; height: auto !important; }
.fixed-top { position: static !important; }
img { max-width: 100% !important; height: auto !important; }
h1, h2, h3 { page-break-after: avoid; }

/* --- Branded header at the top of the printout ----------------------------- */
/* Normal flow (first element in <body>), so it reliably prints at the top without
   the overlap/mis-positioning that position:fixed running headers suffer across
   pages in browsers. Readable size, with a rule beneath it. */
.print-running-header {
    display: block !important;
    text-align: center;
    font-size: 13pt;        /* readable — not the browser's tiny margin header */
    font-weight: 700;
    letter-spacing: 0.2px;
    color: #1a1a1a !important;
    padding-bottom: 8px;
    margin-bottom: 16px;
    border-bottom: 1px solid #bbb;
}
