/* ======================================================
   NIGHTANGELS - LUXURE.CSS
   Univers : Naamah / Luxure
====================================================== */

body[data-universe="luxure"]{

    --accent-color:#c04a78;

    --header-border:
    rgba(216,107,147,0.18);

    --theme-bg:#050507;
    --theme-bg-secondary:#12070d;

    --theme-primary:#8f2c52;
    --theme-primary-light:#c04a78;

    --theme-gold:#c89a6c;

    --theme-text:#f4d7df;

    --theme-text-secondary:#b88999;

    --theme-title:#f7d7e0;

    --theme-border:
    rgba(216,107,147,0.14);

    --theme-glow:
    rgba(216,107,147,0.18);

    --hero-overlay:
    rgba(5,5,7,0.35);

    --hero-overlay-strong:
    rgba(5,5,7,0.92);

    --hero-image:url('/images/background/luxure.webp');

    background:
    radial-gradient(
    circle at top,
    rgba(143,44,82,0.16),
    transparent 40%
    ),

    linear-gradient(
    to bottom,
    #050507,
    #080508,
    #050507
    );

    color:var(--theme-text);

    overflow-x:hidden;
}

/* ======================================================
   PAGE TRANSITION
====================================================== */

body[data-universe="luxure"] #pageTransition{
    background:
    radial-gradient(
    circle at center,
    rgba(216,107,147,0.18),
    rgba(5,5,7,0.96)
    );

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    transition:
    opacity 0.8s ease,
    backdrop-filter 0.8s ease;
}

body[data-universe="luxure"] #pageTransition.active{
    opacity:1;
}

/* ======================================================
   AMBIENT BACKGROUND
====================================================== */

body[data-universe="luxure"]::before{

    content:'';
    position:fixed;
    inset:0;
    z-index:-10;
    pointer-events:none;
    background-image:
    linear-gradient(
    to bottom,
    rgba(5,5,7,0.45),
    rgba(5,5,7,0.82)
    ),

    var(--hero-image);

    background-size:cover;

    background-position:center top;

    background-repeat:no-repeat;

    opacity:0.95;

    animation:
    luxureBackgroundDrift 32s ease-in-out infinite;
}

body[data-universe="luxure"]::after{

    content:'';

    position:fixed;

    inset:0;

    z-index:-9;

    pointer-events:none;

    opacity:0.45;

    background:

    linear-gradient(
    to bottom,
    rgba(0,0,0,0.2),
    rgba(0,0,0,0.82)
    );
}

/* ======================================================
   GLOBAL SECTIONS
====================================================== */

body[data-universe="luxure"] section{

    position:relative;

    width:100%;

    z-index:2;
}

/* ======================================================
   HERO
====================================================== */

body[data-universe="luxure"] .theme-hero{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:90vh;

    padding:
    220px
    40px
    40px;

    overflow:hidden;
}

body[data-universe="luxure"] .theme-hero::before{

    content:'';

    position:absolute;

    inset:0;

    background:

    radial-gradient(
    circle at center,
    rgba(216,107,147,0.18),
    transparent 70%
    );

    animation:luxurePulse 8s ease-in-out infinite;
}

body[data-universe="luxure"] .theme-hero::after{

    content:'';

    position:absolute;

    inset:0;

    background:

    radial-gradient(
    circle,
    rgba(216,107,147,0.10),
    transparent 60%
    );

    pointer-events:none;
}

body[data-universe="luxure"] .hero-content{
    width:100%;
    max-width:1200px;
    text-align:center;
    position:relative;
    z-index:2;
}

body[data-universe="luxure"] .hero-title{
    font-size:clamp(4rem,9vw,8rem);
    line-height:0.9;
    letter-spacing:6px;
    text-transform:uppercase;
    color:var(--theme-title);
    text-shadow:
    0 0 12px rgba(201,154,108,0.10),
    0 0 30px rgba(216,107,147,0.18),
    0 0 80px rgba(216,107,147,0.08);
}

body[data-universe="luxure"] .hero-subtitle{
    margin-top:25px;
    letter-spacing:5px;
    text-transform:uppercase;
    color:var(--accent-color);
}

body[data-universe="luxure"] .hero-text{
    max-width:850px;
    margin: 40px auto 0;
    font-size:1.15rem;
    line-height:2;
    color:var(--theme-text-secondary);
}

/* ======================================================
   QUOTE
====================================================== */

body[data-universe="luxure"] .theme-quote{
    position:relative;
    padding:
    5px
    20px
    25px;
}

body[data-universe="luxure"] .quote-overlay{
    position:absolute;
    inset:0;
    background:
    radial-gradient(
    circle,
    rgba(216,107,147,0.08),
    transparent 65%
    );
    pointer-events:none;
}

body[data-universe="luxure"] .quote-content{
    position:relative;
    max-width:1000px;
    margin:0 auto;
    text-align:center;
    z-index:2;
}

body[data-universe="luxure"] .quote-symbol{
    display:block;
    margin-bottom:10px;
    font-size:2rem;
    color:var(--accent-color);
}

body[data-universe="luxure"] .quote-text{
    font-size:1.4rem;
    line-height:2;
    color:var(--theme-text);
}

/* ======================================================
   ATMOSPHERE
====================================================== */

body[data-universe="luxure"] .theme-atmosphere{

    padding:
    20px
    40px
    90px;
}

body[data-universe="luxure"] .atmosphere-grid{

    display:grid;

    grid-template-columns:
    repeat(3,minmax(0,1fr));

    gap:42px;

    max-width:1450px;

    margin:0 auto;
}

body[data-universe="luxure"] .atmosphere-card{

    position:relative;

    width:100%;

    min-width:0;

    padding:40px;

    border-radius:32px;

    overflow:hidden;

    background:

    linear-gradient(
    145deg,
    rgba(18,7,13,0.76),
    rgba(5,5,7,0.90)
    );

    border:
    1px solid rgba(216,107,147,0.12);

    box-shadow:
    0 0 18px rgba(216,107,147,0.06),
    0 0 40px rgba(216,107,147,0.04),
    0 0 90px rgba(201,154,108,0.04);

    backdrop-filter:blur(12px);

    -webkit-backdrop-filter:blur(12px);
}

body[data-universe="luxure"] .atmosphere-card::before{

    content:'';

    position:absolute;

    inset:-1px;

    border-radius:inherit;

    background:

    radial-gradient(
    circle at top,
    rgba(216,107,147,0.06),
    transparent 70%
    );

    pointer-events:none;
}

body[data-universe="luxure"] .atmosphere-card h3{

    margin-bottom:25px;

    font-size:2rem;

    line-height:1.1;

    color:var(--theme-title);

    word-break:break-word;
}

body[data-universe="luxure"] .atmosphere-card p{

    line-height:2;

    color:var(--theme-text-secondary);

    word-break:break-word;
}

/* ======================================================
   TRACKS
====================================================== */

body[data-universe="luxure"] .theme-tracks{

    position:relative;

    padding:
    0
    40px
    70px;
}

body[data-universe="luxure"] .tracks-grid{

    position:relative;

    display:grid;

    grid-template-columns:
    repeat(2,minmax(0,1fr));

    gap:60px;

    max-width:1450px;

    margin:0 auto;

    z-index:2;
}

/* ======================================================
   TRACK CARD
====================================================== */

body[data-universe="luxure"] .track-card{

    position:relative;

    display:flex;

    flex-direction:column;

    border-radius:34px;

    overflow:hidden;

    background:

    linear-gradient(
    145deg,
    rgba(20,10,15,0.78),
    rgba(8,5,7,0.88)
    );

    border:
    1px solid rgba(216,107,147,0.14);

    box-shadow:
    0 0 20px rgba(216,107,147,0.08),
    0 0 45px rgba(216,107,147,0.06),
    0 0 120px rgba(201,154,108,0.05);

    backdrop-filter:blur(12px);

    -webkit-backdrop-filter:blur(12px);

    transition:
    transform 0.45s ease,
    box-shadow 0.45s ease,
    border-color 0.45s ease;
}

body[data-universe="luxure"] .track-card::before{

    content:'';

    position:absolute;

    inset:-1px;

    border-radius:inherit;

    background:

    radial-gradient(
    circle at top,
    rgba(216,107,147,0.08),
    transparent 70%
    );

    pointer-events:none;
}

body[data-universe="luxure"] .track-card::after{

    content:'';

    position:absolute;

    inset:0;

    border-radius:inherit;

    opacity:0;

    pointer-events:none;

    background:

    radial-gradient(
    circle at center,
    rgba(216,107,147,0.10),
    transparent 70%
    );

    transition:
    opacity 0.45s ease;
}

body[data-universe="luxure"] .track-card:hover{

    transform:
    translateY(-10px)
    scale(1.015);

    border-color:
    rgba(216,107,147,0.28);

    box-shadow:
    0 0 30px rgba(216,107,147,0.18),
    0 0 80px rgba(216,107,147,0.10),
    0 0 140px rgba(201,154,108,0.08);
}

body[data-universe="luxure"] .track-card:hover::after{

    opacity:1;
}

/* ======================================================
   VIDEO SYSTEM
====================================================== */

body[data-universe="luxure"] .track-video-preview{

    position:relative;

    width:100%;

    aspect-ratio:16/9;

    overflow:hidden;

    cursor:pointer;

    background:#000000;

    border-top-left-radius:34px;
    border-top-right-radius:34px;
}

body[data-universe="luxure"] .track-video-preview img,
body[data-universe="luxure"] .track-video-preview iframe{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    border:none;

    display:block;
}

body[data-universe="luxure"] .track-video-preview img{

    transition:
    transform 0.8s ease,
    filter 0.8s ease;
}

body[data-universe="luxure"] .track-video-preview:hover img{

    transform:scale(1.04);

    filter:
    brightness(0.72)
    saturate(1.1);
}

body[data-universe="luxure"] .video-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(
    to top,
    rgba(0,0,0,0.72),
    transparent 50%
    ),

    radial-gradient(
    circle,
    rgba(216,107,147,0.08),
    transparent 70%
    );

    z-index:2;
}

/* ======================================================
   PLAY BUTTON
====================================================== */

body[data-universe="luxure"] .video-play{

    position:absolute;

    top:50%;
    left:50%;

    transform:
    translate(-50%, -50%);

    width:88px;
    height:88px;

    border:none;

    border-radius:50%;

    display:flex;

    justify-content:center;
    align-items:center;

    cursor:pointer;

    z-index:5;

    overflow:hidden;

    background:

    radial-gradient(
    circle at center,
    rgba(40,0,15,0.92),
    rgba(0,0,0,0.95)
    );

    box-shadow:
    0 0 25px rgba(216,107,147,0.18),
    0 0 80px rgba(216,107,147,0.08);

    backdrop-filter:blur(12px);

    -webkit-backdrop-filter:blur(12px);

    transition:
    transform 0.45s ease,
    box-shadow 0.45s ease;
}

body[data-universe="luxure"] .video-play span{

    position:relative;

    left:3px;

    font-size:1.9rem;

    color:#ffffff;

    z-index:3;
}

body[data-universe="luxure"] .track-video-preview:hover .video-play{

    transform:
    translate(-50%, -50%)
    scale(1.06);

    box-shadow:
    0 0 45px rgba(216,107,147,0.28),
    0 0 120px rgba(216,107,147,0.14);
}

/* ======================================================
   TRACK CONTENT
====================================================== */

body[data-universe="luxure"] .track-content{

    padding:34px;
}

body[data-universe="luxure"] .track-title{

    color:var(--theme-title);

    line-height:1.1;
}

body[data-universe="luxure"] .track-lore{

    margin-top:18px;

    line-height:2;

    color:var(--theme-text-secondary);
}

/* ======================================================
   FINAL SECTION
====================================================== */

body[data-universe="luxure"] .luxure-ending{

    position:relative;

    padding:
    40px
    20px
    20px;

    overflow:hidden;

    text-align:center;
}

body[data-universe="luxure"] .luxure-ending-overlay{

    position:absolute;

    inset:0;

    background:

    radial-gradient(
    circle at center,
    rgba(216,107,147,0.10),
    transparent 55%
    );

    pointer-events:none;
}

body[data-universe="luxure"] .luxure-ending-content{

    position:relative;

    z-index:2;

    width:min(900px,100%);

    margin:auto;

    padding:
    45px
    30px
    45px;

    border-radius:34px;

    background:

    linear-gradient(
    145deg,
    rgba(20,5,12,0.42),
    rgba(0,0,0,0.62)
    );

    border:
    1px solid rgba(216,107,147,0.08);

    box-shadow:
    0 0 50px rgba(216,107,147,0.05);

    backdrop-filter:blur(10px);

    -webkit-backdrop-filter:blur(10px);

    overflow:hidden;

    text-align:center;
}

body[data-universe="luxure"] .luxure-ending-symbol{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    font-size:4rem;

    color:var(--theme-gold);

    margin:
    0 auto 18px;

    text-align:center;

    text-shadow:
    0 0 25px rgba(216,107,147,0.25);
}

body[data-universe="luxure"] .luxure-ending h2{

    font-size:clamp(2.6rem,6vw,5rem);

    line-height:1.1;

    color:var(--theme-title);

    text-transform:uppercase;

    margin:
    0 auto 24px;

    text-align:center;

    text-shadow:
    0 0 12px rgba(201,154,108,0.10),
    0 0 25px rgba(216,107,147,0.12),
    0 0 60px rgba(216,107,147,0.06);
}

body[data-universe="luxure"] .luxure-ending p{

    font-size:1.15rem;

    line-height:2.1;

    color:var(--theme-text-secondary);

    max-width:700px;

    margin:auto;
}

body[data-universe="luxure"] .luxure-ending-buttons{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:18px;
    margin-top:38px;
}

body[data-universe="luxure"] .luxure-ending .theme-button{
    width:100%;
    max-width:320px;
    min-height:54px;
    border-radius:22px;
    border:
    1px solid rgba(216,107,147,0.16);
    background:
    linear-gradient(
    145deg,
    rgba(216,107,147,0.14),
    rgba(10,0,6,0.92)
    );
    color:var(--theme-title);
    display:flex;
    justify-content:center;
    align-items:center;
    letter-spacing:2px;
    text-transform:uppercase;
    transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
    position:relative;
    overflow:hidden;
}

body[data-universe="luxure"] .luxure-ending .theme-button::before{
    content:'';

    position:absolute;

    top:0;
    left:-120%;

    width:70%;
    height:100%;

    background:

    linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.12),
    transparent
    );

    transform:skewX(-25deg);

    transition:left 0.8s ease;
}

body[data-universe="luxure"] .luxure-ending .theme-button:hover{
    transform:
    translateY(-4px)
    scale(1.02);
    box-shadow:
    0 0 45px rgba(216,107,147,0.22),
    0 0 90px rgba(216,107,147,0.08);
}

body[data-universe="luxure"] .luxure-ending .theme-button:hover::before{
    left:140%;
}

/* ======================================================
   FOOTER
====================================================== */

body[data-universe="luxure"] footer{
    position:relative;
    margin-top:0;
    overflow:hidden;
}

/* ======================================================
   PARTICLES
====================================================== */

body[data-universe="luxure"] .particles{
    position:fixed;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
    pointer-events:none;
    z-index:-8;
}

body[data-universe="luxure"] .particles span{

    position:absolute;

    bottom:-40px;

    border-radius:50%;

    animation:
    luxureParticles linear infinite;

    will-change:
    transform,
    opacity;

    background:

    radial-gradient(
    circle,
    rgba(201,154,108,0.95),
    rgba(216,107,147,0.45)
    );

    box-shadow:
    0 0 10px rgba(201,154,108,0.35),
    0 0 24px rgba(216,107,147,0.18),
    0 0 40px rgba(201,154,108,0.12);
}

/* ======================================================
   ANIMATIONS
====================================================== */

@keyframes luxureBackgroundDrift{

    0%{

        transform:
        scale(1)
        translate3d(0,0,0);
    }

    50%{

        transform:
        scale(1.03)
        translate3d(-8px,-12px,0);
    }

    100%{

        transform:
        scale(1)
        translate3d(0,0,0);
    }
}

@keyframes luxureParticles{

    0%{

        transform:
        translateY(0)
        scale(0.6);

        opacity:0;
    }

    10%{
        opacity:1;
    }

    100%{

        transform:
        translateY(-120vh)
        scale(1.4);

        opacity:0;
    }
}

@keyframes luxurePulse{

    0%{
        opacity:0.35;
        transform:scale(1);
    }

    50%{
        opacity:0.55;
        transform:scale(1.04);
    }

    100%{
        opacity:0.35;
        transform:scale(1);
    }
}

/* ======================================================
NAAMAH CARDS
====================================================== */
body[data-universe="luxure"] .naamah-grid{
display:grid;
grid-template-columns:
repeat(3,minmax(0,1fr));
gap:30px;
max-width:1450px;
margin:auto;
}

body[data-universe="luxure"] .naamah-card{
background:
linear-gradient(
145deg,
rgba(20,5,15,.72),
rgba(5,0,5,.92)
);
border:
1px solid rgba(255,80,180,.08);
border-radius:32px;
overflow:hidden;
backdrop-filter:blur(8px);
}

body[data-universe="luxure"] .naamah-card img{
display:block;
width:100%;
height:auto;
}

body[data-universe="luxure"] .naamah-body{
padding:20px;
}

body[data-universe="luxure"] .naamah-body h3{
font-size:2rem;
margin-bottom:10px;
}

body[data-universe="luxure"] .naamah-body p{
line-height:1.9;
}

@media(max-width:1100px){
body[data-universe="luxure"] .naamah-grid{
display:flex;
flex-direction:column;
gap:20px;
}

}

/* ======================================================
   MOBILE
====================================================== */
@media(max-width:1100px){
body[data-universe="luxure"] .souvenir-image img{
height:220px;
}

    body[data-universe="luxure"]{
        --hero-image:url('/images/background/luxure-mobile.webp');
        background-attachment:scroll;
    }

    body[data-universe="luxure"]::before{
        background-size:cover;
        background-position:center top;
    }

body[data-universe="luxure"] .theme-hero{
    min-height:auto;
    padding:
    120px
    20px
    0;
    align-items:flex-start;
}

body[data-universe="luxure"] .hero-title{
    margin-top:8px;
    position:relative;
    left:-6px;
    font-size:clamp(3rem,16vw,5rem);
    line-height:0.92;
    letter-spacing:2px;
    text-align:center;
}

body[data-universe="luxure"] .hero-subtitle{
    margin-top:8px;
    font-size:0.72rem;
    letter-spacing:4px;
    line-height:1.4;
}

    body[data-universe="luxure"] .hero-text{
        margin-top:20px;
        font-size:1rem;
        line-height:1.9;
    }

body[data-universe="luxure"] .theme-quote{
    padding:
    0
    20px
    10px;
}

    body[data-universe="luxure"] .quote-text{
        font-size:1.08rem;
        line-height:1.9;
    }

body[data-universe="luxure"] .quote-symbol{
    margin-bottom:5px;
}

    body[data-universe="luxure"] .theme-atmosphere{
        padding:
        20px
        20px
        10px;
    }

    body[data-universe="luxure"] .atmosphere-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    body[data-universe="luxure"] .atmosphere-card{
        padding:34px 24px;
        border-radius:28px;
    }

    body[data-universe="luxure"] .tracks-grid{
        grid-template-columns:1fr;
        gap:24px;
    }

    body[data-universe="luxure"] .theme-tracks{

        padding:
        0
        20px
        30px;
    }

    body[data-universe="luxure"] .track-card{
        border-radius:28px;
    }

    body[data-universe="luxure"] .track-video-preview{

        border-top-left-radius:28px;
        border-top-right-radius:28px;
    }

    body[data-universe="luxure"] .video-play{
        width:72px;
        height:72px;
    }

    body[data-universe="luxure"] .video-play span{
        font-size:1.5rem;
    }

    body[data-universe="luxure"] .luxure-ending{
        padding:
        25px
        20px
        15px;
    }

body[data-universe="luxure"] .luxure-ending .theme-button{
    font-size:0.82rem;
    letter-spacing:1px;
    min-height:52px;

}

    body[data-universe="luxure"] .luxure-ending-content{
        padding:
        35px
        22px
        35px;
        border-radius:28px;
    }

    body[data-universe="luxure"] .luxure-ending h2{
    font-size:2.2rem;
    line-height:1.05;
    }

    body[data-universe="luxure"] .luxure-ending p{
        font-size:1rem;
        line-height:1.9;
    }

    body[data-universe="luxure"] .track-card,
    body[data-universe="luxure"] .atmosphere-card,
    body[data-universe="luxure"] .luxure-ending-content{
        backdrop-filter:none;
        -webkit-backdrop-filter:none;
    }
}