/* CYBERDYNE-PRINT-PAGES-V1: clean black-and-white print of the Services, Remote Support, Remote Support Setup and Support Plans pages (Adam 2026-11-02).
   Loaded with media="print" from Magento_Theme/layout/default_head_blocks.xml; every rule is scoped to those 4 pages, so nothing else changes.
   The Print buttons come from Magento_Theme/templates/cyberdyne-print-pages.phtml. A button sets html[data-cyb-print] = the section id,
   so only that section prints. Ctrl+P with no button prints the whole page (Services: only the device tab that is open).
   Undo: remove the css line from default_head_blocks.xml and the block from Magento_Theme/layout/default.xml, then bin/magento cache:clean. */

@page { size: letter portrait; margin: 0.45in 0.5in; }

:is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) {
    background: #fff !important; color: #000 !important; font-size: 10pt !important; line-height: 1.35 !important; min-height: 0 !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) * {
    box-shadow: none !important; text-shadow: none !important; animation: none !important; transition: none !important;
}

/* ---------- site chrome that never prints ---------- */
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) :is(
    .header-top, .header-middle .action-content, .header-bottom, #cy-rs-strip, .breadcrumbs, .page-title-wrapper,
    .sidebar, footer, .page-footer, .cookie-status-message, .page.messages, .message.global, .modals-wrapper, .modal-popup, .modals-overlay,
    .back2top, #yt-totop, iframe, .cyb-print-btn, .toolbar, .products-grid, .products.wrapper, .category-image, .category-description
) { display: none !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .page-wrapper > *:not(.header-container):not(.page-main) { display: none !important; }

/* ---------- small store header: logo left, address, phone and hours right ---------- */
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) :is(.page-wrapper, .header-container, .header-middle) {
    position: static !important; padding: 0 !important; margin: 0 !important; border: 0 !important; min-height: 0 !important; height: auto !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .header-middle { border-bottom: 1.5pt solid #000 !important; padding-bottom: 6pt !important; margin-bottom: 10pt !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .header-middle .container { display: block !important; width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .header-middle .row {
    width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important;
    display: flex !important; align-items: center !important; justify-content: space-between !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .header-middle .row::before { display: none !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .header-middle .row::after {
    content: "Cyberdyne Systems\A 3475 Portage Rd, Niagara Falls, Ontario\A 905-357-9222  \2022  cyberdyne.ca\A Mon to Fri 10 to 6, Sat 12 to 6, Sun closed";
    white-space: pre; text-align: right; font-size: 9pt; line-height: 1.4; display: block !important; height: auto !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) :is(.logo-content, .logo-wrapper) { float: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .logo-wrapper h1.logo-content { margin: 0 !important; font-size: inherit !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .logo-wrapper img { width: 110px !important; height: auto !important; }

/* ---------- page body full width ---------- */
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) :is(.page-main, .columns, .columns .container, .columns .row, .columns .row > div, .column.main, .category-view, .category-cms) {
    width: 100% !important; max-width: none !important; float: none !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; height: auto !important; overflow: visible !important;
}

/* ---------- the page content (.cyt) in black and white ---------- */
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt { max-width: none !important; margin: 0 !important; padding: 0 !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt * {
    color: #000 !important; background: transparent !important; background-image: none !important; border-color: #999 !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt :is(svg, img) { filter: grayscale(1); }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt a { text-decoration: none !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt :is(.btns, .cta, .btn, .button, a.b, a.btn2) { display: none !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt :is(.grid, .two) { display: block !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt .sec {
    border: 0 !important; border-radius: 0 !important; margin: 0 0 10pt !important; padding: 0 !important; width: auto !important;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt .sec > h2 {
    font-size: 13pt !important; font-weight: 700 !important; margin: 0 0 5pt !important; padding: 0 0 2pt !important;
    border: 0 !important; border-bottom: 1pt solid #000 !important; border-radius: 0 !important; break-after: avoid;
}
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt .sec > h2 .n { display: none !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt :is(h3, h4) { break-after: avoid; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt :is(.card, .plan, li, tr, .r) { break-inside: avoid; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt p { margin: 0 0 4pt !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt .hero { padding: 0 0 6pt !important; margin: 0 0 8pt !important; border: 0 !important; border-radius: 0 !important; min-height: 0 !important; }
:is(.category-services, .cms-remote-support, .cms-remote, .cms-support-plans) .cyt .hero h2 { font-size: 15pt !important; margin: 0 0 4pt !important; }

/* ---------- Services page ---------- */
/* the opening blurb, "why choose us" and the step strip stay on the website */
.category-services .cyt :is(.top, .steps, #svc-why) { display: none !important; }
.category-services .cyt .svt-nav { display: none !important; }
.category-services .cyt .svt-panels { border: 0 !important; padding: 0 !important; }
.category-services .cyt .svh { font-size: 12pt !important; font-weight: 700 !important; margin: 0 0 3pt !important; padding: 0 !important; border: 0 !important; }
.category-services .cyt .svh::before { content: "Services and prices: "; }
.category-services .cyt #svc-prices > h2,
.category-services .cyt #svc-prices > p:first-of-type { display: none !important; }
.category-services .cyt .pl { margin: 0 0 6pt !important; padding: 0 !important; border: 0 !important; }
.category-services .cyt .pl h3 {
    font-size: 9pt !important; font-weight: 700 !important; letter-spacing: .03em; text-transform: uppercase;
    margin: 6pt 0 0 !important; padding: 2pt 0 !important; border: 0 !important; border-bottom: 1pt solid #000 !important; border-radius: 0 !important;
}
.category-services .cyt .r {
    display: flex !important; justify-content: space-between !important; align-items: flex-start !important; gap: 10pt;
    padding: 2.5pt 0 !important; margin: 0 !important; border: 0 !important; border-bottom: 0.5pt solid #ccc !important; border-radius: 0 !important;
}
.category-services .cyt .r b { font-size: 9.5pt !important; }
.category-services .cyt .r small { display: block !important; font-size: 8pt !important; line-height: 1.3 !important; }
.category-services .cyt .r .p {
    flex: 0 0 auto; white-space: nowrap; font-weight: 700 !important; font-size: 9.5pt !important;
    padding: 0 !important; border: 0 !important; border-radius: 0 !important; min-width: 0 !important;
}
/* most common repairs + fees side by side, contact at the end */
.category-services .cyt #svc-common, .category-services .cyt #svc-fees { font-size: 9pt !important; }
.category-services .cyt #svc-contact :is(.card, div) { border-radius: 0 !important; }

/* ---------- Support Plans: plan cards in a row ---------- */
.cms-support-plans .cyt .plans { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(1.6in, 1fr)); gap: 6pt !important; }
.cms-support-plans .cyt .plans > * { border: 0.75pt solid #999 !important; border-radius: 0 !important; padding: 5pt !important; margin: 0 !important; }

/* ---------- one section only (Print button on a section) ---------- */
html[data-cyb-print] .cyt > *:not(:has([data-cyb-print-on])):not([data-cyb-print-on]) { display: none !important; }
html[data-cyb-print] .cyt .grid > .sec:not([data-cyb-print-on]):not(:has([data-cyb-print-on])) { display: none !important; }
html[data-cyb-print] .cyt [data-cyb-print-on] { display: block !important; }

/* ---------- tighter type, and the longer device lists in two columns ---------- */
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(p, li, td, th, small, span, div) { font-size: 9.5pt !important; line-height: 1.35 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(h1, h2, h3, h4, b, strong, em) { color: #000 !important; }
html body.category-services .cyt .svp > p { font-size: 9pt !important; margin: 0 0 4pt !important; }
html body.category-services .cyt .svp .r small { font-size: 8pt !important; }
html body.category-services .cyt .svp .pl h3 { font-size: 8.5pt !important; color: #000 !important; }
html body.category-services .cyt .svp { columns: 2; column-gap: 0.3in; column-fill: balance; }
html body.category-services .cyt .svp > .svh,
html body.category-services .cyt .svp > p:first-of-type { column-span: all; }
html body.category-services .cyt .svp .pl { break-inside: auto; }
html body.category-services .cyt .svp .pl h3 { break-after: avoid; }

/* ---------- opening blurb: plain heading + text, the tick list as one compact line ---------- */
html :is(body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .top { display: block !important; margin: 0 0 8pt !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .hero h2 { font-size: 15pt !important; line-height: 1.25 !important; font-weight: 700 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .hero h2 em { font-style: normal !important; }
html :is(body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .ticks { display: flex !important; flex-wrap: wrap; gap: 2pt 14pt; list-style: none !important; margin: 4pt 0 0 !important; padding: 0 !important; }
html :is(body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .ticks li { display: flex !important; align-items: center; gap: 4pt; border: 0 !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; font-size: 9.5pt !important; font-weight: 700 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt svg.ck { width: 10pt !important; height: 10pt !important; flex: 0 0 auto; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt svg :is(circle, rect, path[fill]:not([fill=none])) { fill: #000 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .sec > h2 { text-transform: none !important; letter-spacing: 0 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(.card, .plans > *) { border-radius: 0 !important; padding: 5pt 7pt !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(h3, h4) { font-size: 11pt !important; margin: 4pt 0 2pt !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .hero p { font-size: 10pt !important; line-height: 1.4 !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .ticks li svg { position: static !important; margin: 0 !important; transform: none !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(.pl, .card, .plans > *, .box) { border-color: #999 !important; }
html body.category-services .cyt .pl.top4 { border: 0.75pt solid #999 !important; border-radius: 0 !important; padding: 2pt 6pt !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(.card, .pl) { border-top-width: 0.75pt !important; }
html :is(body.category-services, body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt :is(.svt-nav, .btn2, button) { display: none !important; }
html :is(body.cms-remote-support, body.cms-remote, body.cms-support-plans) .cyt .svt-panels { border: 0 !important; padding: 0 !important; }
