/* Font Definitions */
/* Creato da DISPLACE LAB - 2026 */

/* DIN Pro */
@font-face {
    font-family: 'DIN Pro';
    src: url('../fonts/DIN Pro/DINPro-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'DIN Pro';
    src: url('../fonts/DIN Pro/DINPro.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'DIN Pro';
    src: url('../fonts/DIN Pro/DINPro-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'DIN Pro';
    src: url('../fonts/DIN Pro/DINPro-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'DIN Pro';
    src: url('../fonts/DIN Pro/DINPro-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}

/* Glorynight */
@font-face {
    font-family: 'Glorynight';
    src: url('../fonts/Glorynight Font Family/Glorynight Reguler.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Glorynight';
    src: url('../fonts/Glorynight Font Family/Glorynight Italic.otf') format('opentype');
    font-weight: normal;
    font-style: italic;
}

/* Utilities */
.font-serif-custom {
    font-family: 'Glorynight', serif;
}


/* Hero Carousel Styles */
/* Hero Carousel Styles */
.hero-carousel-wrapper {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
    display: flex;
    /* Sliding */
    width: 500%;
    /* 5 Slides (White + 3 Images + Clone) */
    transition: transform 1.5s cubic-bezier(0.25, 1, 0.5, 1);
    /* Smooth Slide */
    will-change: transform;
}

.hero-carousel-slide {
    position: relative;
    width: 20%;
    /* 100% / 5 */
    height: 100%;
    flex-shrink: 0;
}

.hero-carousel-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    /* Above images (z-0), below content (z-10 defined in index.php) */
    background-color: black;
    opacity: 0.7;
    /* 70% Opacity */
    pointer-events: none;
}

/* Adaptive Text (Black by default, White when inverted) */
.adaptive-text {
    color: black;
    /* Pure Black requested */
    /* transition removed for instant blend mode switch */
}

.inverted-hero {
    mix-blend-mode: difference;
}

.inverted-hero .adaptive-text {
    color: white !important;
    /* Pure White */
    /* Blend mode moved to parent wrapper to ensure it blends with z-0 background */
}

/* Arrow: Invert + Difference Logic 
   Source Red -> Invert -> Cyan. 
   Cyan Diff White BG -> RED (Matches start).
   Cyan Diff Dark BG -> CYAN (Visible blend).
*/
#hero-next-slide img {
    filter: invert(1);
    mix-blend-mode: difference;
}

/* Proprieta esclusiva di DISPLACE LAB, tutti i diritti riservati. */