/* Maison Pourpre — pause page. Mirrors the home page of the Next.js site (logged-in variant), without navigation. */
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('archivo-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
        U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Archivo';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('archivo-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
        U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

*, *::before, *::after { box-sizing: border-box; }

html {
    height: 100%;
    font-feature-settings: 'case' 1, 'rlig' 1, 'calt' 0;
}

html, body {
    margin: 0;
    background-color: #010101;
    color: #ffffff;
    font-family: 'Archivo', ui-sans-serif, system-ui, sans-serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
    overflow-x: hidden;
}

main { flex: 1 0 auto; display: flex; justify-content: center; }
.frame { width: 100%; max-width: 910px; padding: 12px; }
.page { max-width: 610px; margin: 0 auto; }

.hero { position: relative; display: flex; justify-content: center; overflow: visible; padding-top: 48px; }
.background {
    position: absolute;
    top: 140px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
}
.background video { width: 100%; height: auto; object-fit: cover; user-select: none; pointer-events: none; }

.content { position: relative; z-index: 10; }
.logo { display: flex; justify-content: center; padding-bottom: 16px; }
.logo img { display: block; width: 115px; height: 115px; }
.text { margin-top: 40px; padding: 20px; font-size: 16px; line-height: 24px; }
.text p { margin: 0; }
.text p + p { margin-top: 24px; }

.legal h1 { font-size: 24px; line-height: 32px; font-weight: 800; margin: 0 0 24px; }
.legal h2 { font-size: 16px; line-height: 24px; font-weight: 700; margin: 32px 0 8px; }
.legal p, .legal li { font-size: 14px; line-height: 22px; color: #d4d4d8; margin: 0 0 8px; }
.legal ul { padding-left: 18px; margin: 0; }
.legal a { color: #ffffff; }

footer { padding: 24px 12px 32px; text-align: center; font-size: 12px; line-height: 16px; color: #71717a; }
footer a { color: inherit; text-decoration: none; }
footer a:hover { text-decoration: underline; }
footer .separator { margin: 0 8px; }

@media (min-width: 768px) {
    .frame { padding: 48px; }
    .logo { padding-top: 56px; }
}
