@page { margin: 1.8cm; }
* { background: transparent !important; box-shadow: none !important; color: #000 !important; text-shadow: none !important; }
html { scroll-behavior: auto; }
body { background: #fff !important; font-family: Georgia, serif; font-size: 11pt; line-height: 1.45; }
.site-header, .site-footer, .skip-link, .nav-toggle, .page-hero::before, .page-hero::after, .page-hero__globe, .hero-photo, .hero-veil, .hero-memberships, .graticule, .resource-back { display: none !important; }
main, .section, .page-content, .resource-article { display: block; width: 100%; max-width: none; min-height: 0; margin: 0; padding: 0; }
.hero, .page-hero, .resource-hero { display: block; min-height: 0; margin: 0 0 1cm; padding: 0 0 0.5cm; border-bottom: 1px solid #777; }
.hero-inner, .page-hero__inner, .resource-hero__inner { width: 100%; max-width: none; margin: 0; padding: 0; transform: none; }
.hero-word, .page-hero h1, .resource-hero h1 { color: #000 !important; font-size: 26pt; white-space: normal; }
.hero-tag { justify-content: flex-start; }
.hero-tag span, .kicker { font-family: Arial, sans-serif; font-size: 9pt; letter-spacing: 0.08em; }
.profile-layout, .specialist-layout, .contact-directory, .contact-intro, .service-detail-list article, .resource-article { display: block; }
.profile-sidebar, .portrait-card, .location-card, .contact-secondary, .resource-facts { margin: 0 0 0.8cm; padding: 0 0 0.6cm; border: 0; border-bottom: 1px solid #bbb; }
.portrait-card, .location-card, .service-detail-list article, .resource-row, .resource-feature { break-inside: avoid; page-break-inside: avoid; }
.portrait-card img { width: 4.6cm; }
.location-card img, .contact-visual img { max-width: 8cm; }
h1, h2, h3 { break-after: avoid; page-break-after: avoid; }
p, li { orphans: 3; widows: 3; }
a { text-decoration: underline; }
a[href^='http']::after { content: ' (' attr(href) ')'; font-family: Arial, sans-serif; font-size: 8pt; overflow-wrap: anywhere; }
a[href^='mailto:']::after, a[href^='tel:']::after, .portrait-contact a::after { content: none; }
