a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
outline: 2px solid var(--c-primary) !important;
outline-offset: 2px !important;
box-shadow: 0 0 0 4px var(--c-primary-glow) !important;
} a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
outline: none !important;
box-shadow: none !important;
} .menu-toggle:focus-visible {
outline: 2px solid var(--c-text-on-dark) !important;
outline-offset: 2px !important;
box-shadow: 0 0 0 4px rgba(28, 94, 168, 0.4) !important;
border-radius: var(--radius-sm);
} .v-icon-box a:focus-visible,
.v-icon-box div:focus-visible,
#search-icon:focus-visible {
outline: 2px solid var(--c-primary) !important;
outline-offset: 2px !important;
border-radius: var(--radius-sm);
} .woocommerce input[type="text"]:focus-visible,
.woocommerce input[type="email"]:focus-visible,
.woocommerce input[type="password"]:focus-visible,
.woocommerce input[type="number"]:focus-visible,
.woocommerce input[type="tel"]:focus-visible,
.woocommerce select:focus-visible,
.woocommerce textarea:focus-visible {
outline: 2px solid var(--c-primary) !important;
outline-offset: 0 !important;
border-color: var(--c-primary) !important;
} .woocommerce .button:focus-visible,
.woocommerce button[type="submit"]:focus-visible,
.woocommerce input[type="submit"]:focus-visible,
.single_add_to_cart_button:focus-visible,
#place_order:focus-visible {
outline: 2px solid var(--c-text-on-dark) !important;
outline-offset: 2px !important;
box-shadow: 0 0 0 4px rgba(28, 94, 168, 0.4) !important;
} .skip-link:focus-visible {
clip: auto !important;
clip-path: none !important;
width: auto !important;
height: auto !important;
position: fixed !important;
top: 10px !important;
left: 10px !important;
z-index: 100001 !important;
padding: var(--space-3) var(--space-6) !important;
background: var(--c-primary-darker) !important;
color: var(--c-text-on-dark) !important;
font-size: 1rem !important;
text-decoration: none !important;
border-radius: var(--radius-sm) !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
}  .v-icon-box {
min-width: 48px !important;
min-height: 48px !important;
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
}
.v-icon-box a,
.v-icon-box > div {
min-width: 48px;
min-height: 48px;
display: inline-flex;
align-items: center;
justify-content: center;
} .menu-toggle {
min-width: 48px !important;
min-height: 48px !important;
} .scrollToTopBtn {
display: none !important;
} @media screen and (max-width: 768px) {
.main-navigation a,
#primary-menu a {
min-height: 48px;
display: flex;
align-items: center;
padding: 10px 16px;
} .expand-menu-toggle {
min-width: 48px;
min-height: 48px;
display: inline-flex;
align-items: center;
justify-content: center;
}
}  @media screen and (max-width: 768px) {
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
input[type="url"],
input[type="date"],
input[type="datetime-local"],
select,
textarea {
font-size: 16px !important;
}
} a, button, [role="button"], .menu-toggle, .v-icon-box, .cookie-btn, .swiper-slide a {
-webkit-tap-highlight-color: transparent;
} button, a, [role="button"], input[type="submit"], input[type="button"], .button,
.cookie-btn, .menu-toggle, .v-icon-box {
touch-action: manipulation;
} @supports (padding: max(0px)) {
#cookieConsent.cookie-law-notification {
bottom: max(24px, env(safe-area-inset-bottom)) !important;
}
} @media screen and (max-width: 992px) {
@supports (padding: max(0px)) {
#cookieConsent.cookie-law-notification {
bottom: max(16px, env(safe-area-inset-bottom)) !important;
}
}
}
@media screen and (max-width: 576px) {
@supports (padding: max(0px)) {
#cookieConsent.cookie-law-notification {
bottom: max(8px, env(safe-area-inset-bottom)) !important;
width: calc(100% - max(16px, env(safe-area-inset-left) + env(safe-area-inset-right))) !important;
}
}
} .search-panel,
.mobile-menu-container {
min-height: 100vh;
min-height: 100dvh;
} @media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
} #pageLoader {
display: none !important;
}
}