/* Print: black on white, no chrome, URLs shown for key links */
@page { margin: 18mm 16mm; }
:root, :root[data-theme] {
  --bg: #fff; --bg-raised: #fff; --surface: #fff; --text: #000; --muted: #333;
  --line: #bbb; --line-strong: #888; --accent: #000; --accent-text: #000;
}
html, body { background: #fff !important; color: #000 !important; font-size: 11pt; }
*, *::before, *::after { box-shadow: none !important; text-shadow: none !important; animation: none !important; transition: none !important; }
.hero-wave, .final-wave, .hero-visual, .site-header, .skip-link, .scroll-progress, .fab-contact, .to-top, .toast, .showcase-bar, .viewer .frame,
.hero::before, .hero::after, .final-cta::before, .cta-row .btn-ghost, .faq-search, .theme-toggle,
.menu-toggle, .stepper, .step-nav, .turnstile-wrap, dialog, .toc, .noscript-note, .device-toggle { display: none !important; }
main a[href^="http"]::after, main a[href^="/"]:not(.btn)::after { content: " (" attr(href) ")"; font-size: 9pt; color: #444; }
a { color: #000 !important; }
.btn { border: 1px solid #000 !important; background: #fff !important; color: #000 !important; }
.section, .final-cta, .site-footer { padding-block: 10mm !important; border-color: #bbb !important; }
h1, h2, h3 { break-after: avoid; page-break-after: avoid; color: #000 !important; -webkit-text-stroke: 0 !important; }
.step-n, .status-mark { color: #000 !important; -webkit-text-stroke: 0 !important; }
.price-card, .custom-card, .security-card, .tile, .extras > div, .steps li, .reasons > div, details { break-inside: avoid; page-break-inside: avoid; }
.price-card { border: 2px solid #000 !important; }
.tl-paid span { background: #000 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.faq-list details > div { display: block !important; }
.faq-list details:not([open]) > div { display: block !important; }
.viewer figcaption::before { content: "Concept websites: see the live site to explore them."; display: block; font-weight: 700; }
.js .hero-title, .js .hero-copy > *, .js .hero-visual { opacity: 1 !important; transform: none !important; }
