@import url("base/variables.css");
@import url("base/reset.css");
@import url("base/global.css?v=20260828-1");
@import url("base/typography.css");
@import url("components/header.css");
@import url("components/footer.css");
@import url("components/cookie-consent.css");
@import url("responsive.css?v=20260907-12");

.home-intro {
    min-height:100vh;
    min-height:100svh;
    padding:40px 24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:34px;
    text-align:center;
    background:var(--white);
}

.home-intro h1 {
    margin:0;
    font-family:"Poiret One",sans-serif;
    font-size:clamp(34px, 6vw, 78px);
    font-weight:700;
    line-height:1.12;
    letter-spacing:.04em;
}

.home-intro-copy {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:16px;
}

.home-intro-subtitle {
    max-width:760px;
    margin:0;
    font-family:"Poiret One",sans-serif;
    font-size:clamp(20px, 3vw, 32px);
    font-weight:700;
    line-height:1.3;
    letter-spacing:.03em;
}

.home-intro-scroll-hint {
    margin:0;
    font-size:13px;
}

.home-intro-arrow {
    width:56px;
    height:56px;
    border:0;
    display:grid;
    place-items:center;
    color:var(--black);
    background:transparent;
    cursor:pointer;
    animation:home-arrow-bounce 1.8s ease-in-out infinite;
}

.home-intro-arrow-icon {
    width:20px;
    height:20px;
    display:block;
    border-right:3px solid currentColor;
    border-bottom:3px solid currentColor;
    transform:rotate(45deg);
}

.home-intro-arrow:focus-visible {
    outline:2px solid currentColor;
    outline-offset:4px;
}

.home-intro-arrow:disabled {
    cursor:progress;
    opacity:.55;
}

.home-load-status {
    min-height:24px;
    margin:0;
    font-family:"Poiret One",sans-serif;
    font-size:18px;
    font-weight:700;
}

.home-intro--loading .home-intro-arrow {
    animation:home-arrow-pulse .8s ease-in-out infinite alternate;
}

#home-dynamic-content {
    scroll-margin-top:70px;
}

.home-dynamic-content--ready {
    animation:home-content-reveal .35s ease-out both;
}

.home-noscript {
    padding:24px;
    text-align:center;
}

@keyframes home-arrow-bounce {
    0%, 100% { transform:translateY(0); }
    50% { transform:translateY(9px); }
}

@keyframes home-arrow-pulse {
    from { opacity:.35; }
    to { opacity:1; }
}

@keyframes home-content-reveal {
    from { opacity:0; transform:translateY(12px); }
    to { opacity:1; transform:translateY(0); }
}

@media(prefers-reduced-motion:reduce) {
    .home-intro-arrow,
    .home-intro--loading .home-intro-arrow,
    .home-dynamic-content--ready {
        animation:none;
    }
}
