/* Minimal independent base styles replacing Welcart Basic's reset/layout. */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: #fff; overflow-wrap: break-word; }
img, svg, video { max-width: 100%; height: auto; }
img { vertical-align: bottom; }
input, textarea, select, button { font: inherit; }
button { cursor: pointer; }
[hidden] { display: none !important; }
.clear::after, .wrapper::after { clear: both; content: ''; display: table; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { clip: auto !important; width: auto; height: auto; background: #fff; padding: 12px; z-index: 999999; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
/* Slick carousel controls without bundling typeface files. */
.slick-prev, .slick-next { position: absolute; top: 50%; transform: translateY(-50%); border: 0; background: transparent; font-size: 0; z-index: 5; width: 30px; height: 30px; }
.slick-prev { left: 0; } .slick-next { right: 0; }
.slick-prev::before, .slick-next::before { display: block; font-size: 20px; line-height: 1; color: currentColor; }
.slick-prev::before { content: '❮'; } .slick-next::before { content: '❯'; }
