/* Site-wide changes from ABM's QA feedback (Oct 28, 2026; contract "20 New Pages Feedback #3").
   Loads after every page's own CSS and the shared header/footer CSS. Hand-written (not generated). */

/* The menu no longer floats while scrolling: it stays at the top of the page under the grey bar,
   so the accessibility button no longer sits over the logo. */
body:is(.abmrc-export,.abmrc-parts) .site-header{position:relative;top:auto}
/* Older (Elementor) pages with the shared header/footer (parts.php, owner Nov 5): the Hello theme's own rules
   for .site-header/.site-footer (centred 1140px box), headings and buttons must not reach them. */
body.abmrc-parts .site-header,body.abmrc-parts .site-footer{max-width:none;width:auto;margin-inline:0;padding-inline:0}
body.abmrc-parts :is(.site-header,.site-footer,.utility-bar) :is(h1,h2,h3,h4,h5,h6){line-height:inherit}
body.abmrc-parts .site-header .menu-toggle,body.abmrc-parts .site-header .menu-toggle:is(:hover,:focus){color:#000;background:none;border:0;border-radius:0;
 padding:0;font:13.3333px Arial;line-height:normal;text-align:center;white-space:normal;transition:none;user-select:auto}
body.abmrc-parts a.skip-link{color:#fff}
/* Top-level menu items are only dropdown labels (Contact & Support keeps its link). */
.main-nav>li>a[role=button]{cursor:default}

/* YouTube videos (WP YouTube Lyte): a thumbnail with ABM's privacy notice; YouTube loads only on click. */
.abm-yt{width:100%;max-width:880px;margin:0 auto}
.abm-yt .lyte-wrapper{width:100%!important;max-width:100%!important;margin:0!important;border-radius:18px;overflow:hidden}
.abm-yt .lyte-wrapper .lyMe,.abm-yt .lyte-wrapper .lyte{padding-bottom:56.25%!important}
.abm-yt .lL,.abm-yt .lyte-wrapper .ctrl,.abm-yt .lyte-wrapper .tC{display:none!important}
.abm-yt .lyte-wrapper .pL{background-size:cover!important;background-position:center!important}
.abm-yt .lyte-wrapper .play{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:rgba(0,0,0,.27)!important;border:0!important;margin:0!important;transform:none!important;display:flex!important;align-items:center;justify-content:center;cursor:pointer;padding:20px!important}
.abm-yt .lyte-wrapper .play:focus-visible{outline:3px solid #0588ad;outline-offset:-3px}
/* The pages' own .play styles (round play badge of the old video cards) must not reach Lyte's button. */
.abm-yt .lyte-wrapper .play{border-radius:0!important;box-shadow:none!important;opacity:1!important}
.abm-yt .lyte-wrapper .play::before,.abm-yt .lyte-wrapper .play::after{content:none!important;display:none!important}
.abm-video-consent{display:flex;align-items:center;gap:20px;max-width:560px;background:#fff;color:#303942;text-align:left;border:1px solid #57616e;border-radius:14px;padding:18px 20px;box-shadow:0 3px 0 rgba(0,0,0,.2);font:400 14px/1.6 Roboto,sans-serif}
.abm-consent-play{display:grid;place-items:center;flex:0 0 60px;width:60px;height:60px;border-radius:50%;background:#008eaf;color:#fff;font-size:26px}
.hiw-video .abm-yt,.arc .abm-yt{margin-top:28px;margin-bottom:28px}
/* Education & Training recordings: the player fills the card's thumbnail. */
.reccard .thumb.has-yt{padding:0;display:block;height:auto;background:#22313a}
.reccard .thumb.has-yt .abm-yt{max-width:none}
.reccard .thumb.has-yt .lyte-wrapper{border-radius:0}
.reccard .abm-video-consent{padding:10px 12px;font-size:11px;line-height:1.45;gap:10px}
.reccard .abm-consent-play{flex-basis:36px;width:36px;height:36px;font-size:16px}
@media (max-width:600px){.abm-video-consent{font-size:12px;padding:12px;gap:12px}.abm-consent-play{flex-basis:40px;width:40px;height:40px;font-size:18px}}

/* BiWaze Cough: circuit assembly videos play in a pop-up when the visitor asks for them. */
.abm-vid-open{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit}
.abm-vid-open img{display:block;width:100%;height:auto}
.abm-vid-label{display:inline-flex;align-items:center;gap:8px;margin:14px 24px 4px;padding:10px 20px;border-radius:999px;background:#F48440;color:#2B3138;font-weight:500;font-size:15px}
.abm-vid-open:hover .abm-vid-label,.abm-vid-open:focus-visible .abm-vid-label{background:#2B3138;color:#fff}
.abm-vid-open:focus-visible{outline:3px solid #0588ad;outline-offset:2px}
dialog.abm-vid-modal{padding:16px;background:#111;border:0;border-radius:18px;width:min(1100px,94vw);max-height:94vh}
dialog.abm-vid-modal::backdrop{background:rgba(16,32,42,.8)}
.abm-vid-bar{display:flex;justify-content:flex-end;margin-bottom:10px}
.abm-vid-close{border:0;border-radius:999px;padding:8px 16px;background:#fff;color:#303942;font-size:15px;cursor:pointer}
dialog.abm-vid-modal video{display:block;width:100%;max-height:80vh;background:#000}

/* Study references sit under the section that cites them (no longer in the footer). */
.abm-ref{max-width:900px;margin:28px auto 0;text-align:center;font-size:13px;line-height:1.6;color:#5b6470}

/* HubSpot forms use the full width of their card (Schedule a Demo, Careers). */
.form-card.hs-card{display:block}
.form-card.hs-card .hs-form-frame{width:100%}

/* Education & Training: "Request Training" is a white button again (dark orange label, 4.98:1 on white, WCAG AA).
   #main outranks the site-wide accent-button rule (CR-056), which is built from a long :not() chain. */
#main .train-band a.btn{background:#fff!important;color:#B35500!important;border-color:#fff!important}
#main .train-band a.btn:hover,#main .train-band a.btn:focus-visible{background:#2B3138!important;color:#fff!important;border-color:#2B3138!important}
