/* Nightingale — preloader cinématique v2.
 * Une seule source textuelle réelle dans le DOM : aucun texte dupliqué en pseudo-élément. */

.preloader-kicker::after,
.preloader-title::after,
.preloader-meta span:first-child::after {
    content: none !important;
    display: none !important;
}

.preloader-kicker,
.preloader-title,
.preloader-meta span:first-child {
    font-size: revert !important;
}

.site-preloader.site-preloader--v2 {
    isolation: isolate;
    padding: clamp(1.25rem, 3vw, 2.75rem);
    color: #f0e2ca;
    background:
        linear-gradient(180deg, rgba(4, 3, 3, .74), rgba(7, 4, 4, .94)),
        radial-gradient(circle at 50% 42%, rgba(157, 61, 47, .22), transparent 34rem),
        url('/assets/vid/SChillnight.png') center 48% / cover no-repeat;
    transition: opacity .72s cubic-bezier(.22, .78, .2, 1), visibility .72s ease !important;
}

.site-preloader--v2::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .86;
    background:
        linear-gradient(90deg, rgba(0, 0, 0, .86), transparent 24%, transparent 76%, rgba(0, 0, 0, .86)),
        linear-gradient(180deg, rgba(0, 0, 0, .72), transparent 26%, transparent 68%, rgba(0, 0, 0, .88));
    mix-blend-mode: normal;
}

.site-preloader--v2::after {
    content: '';
    position: absolute;
    inset: -20%;
    z-index: -1;
    pointer-events: none;
    opacity: .16;
    background-image:
        repeating-radial-gradient(circle at 38% 26%, transparent 0, rgba(255, 255, 255, .11) .65px, transparent 1.25px, transparent 5px),
        linear-gradient(108deg, transparent 42%, rgba(236, 191, 127, .08) 50%, transparent 58%);
    transform: translate3d(-2%, -1%, 0);
    animation: nightingale-preloader-grain .46s steps(2, end) infinite;
}

.site-preloader--v2 .preloader-card {
    position: relative;
    width: min(760px, 94vw);
    padding: clamp(2.5rem, 7vw, 5.25rem) clamp(1.5rem, 6vw, 4.75rem) clamp(2.1rem, 5vw, 3.6rem);
    overflow: visible;
    text-align: center;
    border: 0;
    background: transparent;
    box-shadow: none;
    opacity: 0;
    transform: translateY(22px) scale(.985);
    animation: nightingale-preloader-enter .9s cubic-bezier(.16, .82, .2, 1) .08s forwards;
}

.site-preloader--v2 .preloader-card::before,
.site-preloader--v2 .preloader-card::after {
    content: '';
    position: absolute;
    left: 50%;
    width: min(88vw, 920px);
    height: 1px;
    opacity: .64;
    transform: translateX(-50%) scaleX(.18);
    background: linear-gradient(90deg, transparent, rgba(170, 132, 82, .72), #ef7856, rgba(170, 132, 82, .72), transparent);
    animation: nightingale-preloader-line 1.25s cubic-bezier(.18, .78, .2, 1) .2s forwards;
}

.site-preloader--v2 .preloader-card::before { top: 0; }
.site-preloader--v2 .preloader-card::after { bottom: 0; }

.preloader-ornaments {
    position: absolute;
    left: 50%;
    top: -7px;
    width: min(88vw, 920px);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: .75rem;
    transform: translateX(-50%);
    pointer-events: none;
}

.preloader-ornaments i {
    width: 13px;
    height: 13px;
    border: 1px solid rgba(239, 120, 86, .9);
    background: #090605;
    box-shadow: 0 0 22px rgba(239, 120, 86, .32);
    transform: rotate(45deg);
}

.preloader-ornament {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(210, 177, 127, .5));
}

.preloader-ornament--right { transform: rotate(180deg); }

.site-preloader--v2 .preloader-kicker {
    display: block;
    margin: 0 0 clamp(1.15rem, 2.7vh, 1.8rem);
    color: rgba(210, 177, 127, .88);
    font: 800 clamp(.58rem, .75vw, .7rem)/1.45 Arial, sans-serif !important;
    letter-spacing: .34em;
    text-transform: uppercase;
    opacity: 0;
    transform: translateY(8px);
    animation: nightingale-preloader-copy .7s ease .32s forwards;
}

.site-preloader--v2 .preloader-logo {
    width: min(430px, 76vw);
    max-height: 22vh;
    margin: 0 auto clamp(1.3rem, 3vh, 2rem);
    object-fit: contain;
    opacity: 0;
    transform: scale(.92);
    filter:
        drop-shadow(0 18px 30px rgba(0, 0, 0, .92))
        drop-shadow(0 0 26px rgba(137, 42, 36, .2));
    animation: nightingale-preloader-logo 1.05s cubic-bezier(.16, .82, .2, 1) .18s forwards;
}

.site-preloader--v2 .preloader-title {
    position: relative;
    margin: 0;
    color: #f0e2ca;
    font: 400 clamp(1.55rem, 4.2vw, 3rem)/1.05 'Nightingale Display', Impact, Georgia, serif !important;
    letter-spacing: .08em;
    text-wrap: balance;
    text-transform: uppercase;
    text-shadow: 0 8px 24px rgba(0, 0, 0, .72);
    opacity: 0;
    transform: translateY(12px);
    animation: nightingale-preloader-title .95s cubic-bezier(.18, .78, .2, 1) .48s forwards;
}

.site-preloader--v2 .preloader-title::before {
    content: '';
    position: absolute;
    left: 15%;
    right: 15%;
    bottom: -.85rem;
    height: 1px;
    opacity: .52;
    background: linear-gradient(90deg, transparent, #ef7856, transparent);
    transform: scaleX(0);
    animation: nightingale-preloader-accent .9s ease .72s forwards;
}

.site-preloader--v2 .preloader-meta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 1rem;
    margin-top: clamp(2rem, 4.6vh, 3rem);
    color: rgba(240, 226, 202, .55);
    font: 700 clamp(.52rem, .68vw, .64rem)/1.4 Arial, sans-serif !important;
    letter-spacing: .18em;
    text-transform: uppercase;
    opacity: 0;
    animation: nightingale-preloader-copy .65s ease .74s forwards;
}

.site-preloader--v2 .preloader-meta span:first-child {
    min-width: 0;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    font: inherit !important;
}

.site-preloader--v2 .preloader-meta [data-preloader-value] {
    color: rgba(239, 120, 86, .9);
    font-variant-numeric: tabular-nums;
}

.site-preloader--v2 .preloader-track {
    position: relative;
    height: 3px;
    margin-top: .7rem;
    overflow: visible;
    background: rgba(169, 134, 89, .17);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .025);
}

.site-preloader--v2 .preloader-track::before,
.site-preloader--v2 .preloader-track::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    border: 1px solid rgba(210, 177, 127, .48);
    background: #090605;
    transform: translateY(-50%) rotate(45deg);
}

.site-preloader--v2 .preloader-track::before { left: -3px; }
.site-preloader--v2 .preloader-track::after { right: -3px; }

.site-preloader--v2 .preloader-track > span {
    background: linear-gradient(90deg, #6f2e29, #ef7856 62%, #d2b17f);
    box-shadow: 0 0 18px rgba(239, 120, 86, .38);
    transition: transform .14s linear;
}

.site-preloader--v2.is-leaving .preloader-card {
    opacity: 0;
    transform: translateY(-15px) scale(.99);
    transition: opacity .48s ease, transform .62s cubic-bezier(.4, 0, 1, 1);
}

@keyframes nightingale-preloader-enter {
    to { opacity: 1; transform: none; }
}

@keyframes nightingale-preloader-line {
    to { opacity: .84; transform: translateX(-50%) scaleX(1); }
}

@keyframes nightingale-preloader-logo {
    to { opacity: 1; transform: scale(1); }
}

@keyframes nightingale-preloader-title {
    to { opacity: 1; transform: none; letter-spacing: .12em; }
}

@keyframes nightingale-preloader-copy {
    to { opacity: 1; transform: none; }
}

@keyframes nightingale-preloader-accent {
    to { transform: scaleX(1); }
}

@keyframes nightingale-preloader-grain {
    0% { transform: translate3d(-2%, -1%, 0); }
    50% { transform: translate3d(1%, 2%, 0); }
    100% { transform: translate3d(0, -2%, 0); }
}

@media (max-width: 620px) {
    .site-preloader--v2 .preloader-card {
        width: 100%;
        padding-inline: .4rem;
    }

    .site-preloader--v2 .preloader-meta {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: .45rem;
    }

    .site-preloader--v2 .preloader-meta span:first-child {
        max-width: 100%;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-preloader--v2,
    .site-preloader--v2 *,
    .site-preloader--v2 *::before,
    .site-preloader--v2 *::after {
        animation: none !important;
        transition-duration: .01ms !important;
    }

    .site-preloader--v2 .preloader-card,
    .site-preloader--v2 .preloader-kicker,
    .site-preloader--v2 .preloader-logo,
    .site-preloader--v2 .preloader-title,
    .site-preloader--v2 .preloader-meta {
        opacity: 1 !important;
        transform: none !important;
    }

    .site-preloader--v2 .preloader-title::before {
        transform: scaleX(1) !important;
    }
}
