@import "_tokens-p-Y0W2T.css";
@import "_fonts-Ktui0fX.css";
@import "_base-Mn7-PjQ.css";
@import "layout/_navbar-i0oaUcI.css";
@import "pages/_hero-m1JYV9F.css";
@import "layout/_footer-6CWHLDY.css";
@import "components/_cta-wNowLko.css";
@import "components/_components-82z4HYx.css";
@import "_animations-Bns4_Cq.css";
@import "components/_badges-yr_hYl4.css";
@import "components/_card-grid-Qtwt3X3.css";
@import "components/_divider-DmBnA70.css";
@import "components/_flash-banner-LrsgCOQ.css";
@import "components/_logo-slider-3aCKi6g.css";
@import "layout/_sidebar-o22Iy5i.css";
@import "pages/_tables-WNyOK1Q.css";
@import "pages/_article-59lrpBI.css";
@import "pages/_timeline-ihEvnwF.css";

html {
    scroll-behavior: smooth;
}

[id] {
    scroll-margin-top: 9rem;
}

/* Reveal — greift Hand in Hand mit dem Stimulus-Controller und _animations.css */
.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.7s, transform 0.7s;
}

.reveal.reveal--visible,
.reveal.is-in {
    opacity: 1;
    transform: translateY(0);
}

/* GLightbox: white background for transparent product images */
.gslide-media img {
    background-color: #fff;
}

/* GLightbox: magnifying glass overlay on hover */
a.glightbox {
    position: relative;
    display: inline-block;
    cursor: zoom-in;
}

a.glightbox.cover-lightbox {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 2;
}

a.glightbox::after {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.35);
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2740%27%20height%3D%2740%27%20fill%3D%27white%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M6.5%2012a5.5%205.5%200%201%200%200-11%205.5%205.5%200%200%200%200%2011M13%206.5a6.5%206.5%200%201%201-13%200%206.5%206.5%200%200%201%2013%200%27%2F%3E%3Cpath%20d%3D%27M10.344%2011.742q.044.06.098.115l3.85%203.85a1%201%200%200%200%201.415-1.414l-3.85-3.85a1%201%200%200%200-.115-.1%206.5%206.5%200%200%201-1.398%201.4z%27%2F%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M6.5%203a.5.5%200%200%201%20.5.5V6h2.5a.5.5%200%200%201%200%201H7v2.5a.5.5%200%200%201-1%200V7H3.5a.5.5%200%200%201%200-1H6V3.5a.5.5%200%200%201%20.5-.5%27%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
    border-radius: inherit;
}

a.glightbox:hover::after {
    opacity: 1;
}

/* Mark required form fields with an asterisk */
label.required::after {
    content: ' *';
    color: var(--accent);
}
