/* Site-wide fixes from the October 2026 sweep. Loaded on every page after kg_custom.css.
   Named apa-* so WP Rocket serves it on its own (see apa_rocket_skip_own_files). */

/* The topbar's close cross is placed 30px outside the bar between 768 and 991px (overrides.css),
   which pushed the page 13px wider than a tablet screen and let it wobble sideways. */
.topbar { overflow: hidden; }
@media (min-width: 768px) and (max-width: 991px) { .topbar__close { right: 16px; } }

/* AOS slide-ins (fade-left / fade-right) start 100px off to the side; while they run,
   phones can scroll sideways. "clip" hides the overflow without creating a scroll box,
   so sticky elements keep working. */
.site-content { overflow-x: clip; }

/* The page is hidden until the hero's images are loaded, then faded in over 1.5s (main.css).
   The fade itself is cut to under half a second: the wait for the images is what mattered, not the fade. */
body:not(.wp-admin):not(.page-template-template-technology) .site-content,
body:not(.wp-admin):not(.page-template-template-technology).loaded .site-content { transition-duration: .45s; }

/* Product grids: the hover picture sits under the main one and showed through while the grid
   faded in (both pictures visible for a moment). It now stays hidden until the pointer is on the card. */
@media (hover: hover) {
	.product-grid__images img.hover { opacity: 0; }
	.product-grid__image-wrapper:hover .product-grid__images.active img.hover { opacity: 1; }
}
@media (hover: none) { .product-grid__images img.hover { display: none; } }

/* The cookie banner (GDPR Cookie Consent): a compact card in the lower left instead of a bar
   across the whole screen; on phones a slim sheet at the bottom. The plugin's settings
   (buttons, categories) stay in wp-admin; this is only its look. */
#cookie-law-info-bar { left: 20px !important; right: auto !important; bottom: 20px !important; width: 360px !important; max-width: calc(100vw - 40px); padding: 18px 20px !important; background: #fff !important; border: 1px solid rgba(33, 42, 64, .14) !important; box-shadow: 0 10px 30px rgba(17, 17, 17, .12) !important; font-family: "Work Sans", sans-serif !important; font-size: 12.5px !important; line-height: 1.55 !important; color: #5a6470 !important; text-align: left !important; }
#cookie-law-info-bar span { display: block; }
#cookie-law-info-bar span > a.cli_action_button, #cookie-law-info-bar span > .cli-plugin-button { display: block !important; width: max-content; margin-left: 0 !important; }
#cookie-law-info-bar a.cli-plugin-main-link { display: inline !important; margin: 0 !important; color: #212a40 !important; text-decoration: underline; text-underline-offset: 2px; }
#cookie-law-info-bar a.cli_action_button, #cookie-law-info-bar .cli-plugin-button { display: inline-block !important; margin: 14px 8px 0 0 !important; float: none !important; clear: both; padding: 10px 16px !important; font: 700 10px/1 "DIN Alternate", sans-serif !important; letter-spacing: .22em !important; text-transform: uppercase !important; border-radius: 0 !important; }
#cookie-law-info-bar a#cookie_action_close_header, #cookie-law-info-bar .wt-cli-accept-btn { background: #212a40 !important; color: #fff !important; }
#cookie-law-info-bar .cli_settings_button, #cookie-law-info-bar .wt-cli-reject-btn, #cookie-law-info-bar [data-cli_action="reject"] { background: transparent !important; color: #212a40 !important; border: 1px solid rgba(33, 42, 64, .35) !important; }
@media (max-width: 767px) { #cookie-law-info-bar { left: 0 !important; right: 0 !important; bottom: 0 !important; width: auto !important; max-width: none !important; border-left: 0 !important; border-right: 0 !important; border-bottom: 0 !important; box-shadow: 0 -6px 24px rgba(17, 17, 17, .1) !important; padding: 14px 16px !important; font-size: 12px !important; } }
