/* =================================================
   COLOR REVEAL
================================================= */

.lampintro2 {
    --reveal-x: 50%;
    --reveal-y: 50%;
    --reveal-size: 180px;
    --image-position-x: 50%;

    position: relative !important;

    width: 100% !important;
    max-width: none !important;

    height: 100vh !important;
    height: 100dvh !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    background: #000;

    /*
     * Telefonon vízszintes húzás engedélyezve,
     * függőleges irányban az oldal továbbra is
     * kezelheti a görgetést.
     */
    touch-action: pan-y;
}


/* =================================================
   KÉPEK
================================================= */

.lampintro2__image {
    position: absolute !important;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    max-width: none !important;

    height: 100% !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;

    /*
     * A kép függőlegesen mindig középen marad.
     * Csak az X pozíció változik.
     */
    object-position: var(--image-position-x, 50%) center !important;
}


/* =================================================
   FEKETE-FEHÉR ALAPKÉP
================================================= */

.lampintro2__image--bw {
    filter:
        grayscale(100%)
        brightness(35%);
}


/* =================================================
   SZÍNES KÉP / ZSEBLÁMPA
================================================= */

.lampintro2__image--color {
    pointer-events: none;

    -webkit-mask-image:
        radial-gradient(
            circle var(--reveal-size)
            at var(--reveal-x) var(--reveal-y),
            #000 0%,
            #000 55%,
            transparent 100%
        );

    mask-image:
        radial-gradient(
            circle var(--reveal-size)
            at var(--reveal-x) var(--reveal-y),
            #000 0%,
            #000 55%,
            transparent 100%
        );
}


/* =================================================
   HOTSPOTOK
================================================= */

.lampintro2__hotspot {
    position: absolute;

    left: 0;
    top: 0;

    width: var(--hotspot-width);
    height: var(--hotspot-height);

    transform:
        translate(-50%, -50%);

    z-index: 20;

    pointer-events: auto;

    text-decoration: none;

    opacity: 0;

    cursor: pointer;

    /*
     * ELTŰNÉS:
     * 2,7 másodperc
     */
    transition:
        opacity 2.7s ease,
        transform 0.25s ease;
}


/* =================================================
   AKTÍV HOTSPOT
   MEGJELENÉS: 0,2 MP
================================================= */

.lampintro2__hotspot.lampintro2-active {
    opacity: 1;

    /*
     * AMIKOR RÁKERÜL A ZSEBLÁMPA:
     * gyors megjelenés.
     */
    transition:
        opacity 0.2s ease,
        transform 0.25s ease;
}


/* =================================================
   HOTSPOT FELIRAT
   ALAP
================================================= */

.lampintro2__label {
    position: absolute;

    left: 50%;
    top: 50%;

    transform:
        translate(-50%, -50%);

    white-space: nowrap;

    padding:
        10px 22px 11px;

    color: #fff;

    font-family:
        "Helvetica Neue",
        Arial,
        sans-serif;

    font-size: 17px;

    font-weight: 500;

    letter-spacing: 0.18em;

    line-height: 1.2;

    text-transform: uppercase;

    border-radius: 0;

    border: 1px solid transparent;

    pointer-events: none;

    box-sizing: border-box;

    box-shadow:
        0 5px 20px rgba(0,0,0,.35);

    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease,
        transform .25s ease;
}


/* =================================================
   HOTSPOT 1 – OBJEKTÍVEK
   FEKETE / FEHÉR
================================================= */

.lampintro2__hotspot:nth-of-type(1)
.lampintro2__label {

    background:
        rgba(5,5,5,.92);

    color:
        #fff;

    border-color:
        rgba(255,255,255,.20);

    box-shadow:
        0 5px 20px rgba(0,0,0,.45);
}


/* =================================================
   HOTSPOT 2 – KAMERÁK
   ARANY / FEKETE
================================================= */

.lampintro2__hotspot:nth-of-type(2)
.lampintro2__label {

    background:
        #c6a15b;

    color:
        #111;

    border-color:
        #e0c078;

    box-shadow:
        0 5px 20px rgba(0,0,0,.35),
        0 0 16px rgba(198,161,91,.16);
}


/* =================================================
   HOTSPOT 3 – KÉPEK
   FEHÉR / FEKETE
================================================= */

.lampintro2__hotspot:nth-of-type(3)
.lampintro2__label {

    background:
        rgba(245,242,235,.96);

    color:
        #111;

    border-color:
        rgba(255,255,255,.90);

    box-shadow:
        0 5px 20px rgba(0,0,0,.30);
}


/* =================================================
   HOTSPOT 4 – KÖNYVEK
   SÖTÉTSZÜRKE / ARANY
================================================= */

.lampintro2__hotspot:nth-of-type(4)
.lampintro2__label {

    background:
        rgba(28,28,28,.94);

    color:
        #d8b56a;

    border-color:
        rgba(216,181,106,.48);

    box-shadow:
        0 5px 20px rgba(0,0,0,.45);
}


/* =================================================
   HOTSPOT ALSÓ VONAL
================================================= */

.lampintro2__label::after {

    content: "";

    position: absolute;

    left: 20px;
    right: 20px;

    bottom: 4px;

    height: 1px;

    background:
        currentColor;

    opacity:
        .65;

    pointer-events:
        none;
}


/* =================================================
   AKTÍV HOTSPOT – ÁLTALÁNOS
================================================= */

.lampintro2__hotspot.lampintro2-active
.lampintro2__label {

    transform:
        translate(-50%, -50%)
        scale(1.06);

    box-shadow:
        0 8px 26px rgba(0,0,0,.60);
}


/* =================================================
   AKTÍV – OBJEKTÍVEK
================================================= */

.lampintro2__hotspot:nth-of-type(1).lampintro2-active
.lampintro2__label {

    background:
        #111;

    color:
        #fff;

    border-color:
        rgba(255,255,255,.48);

    box-shadow:
        0 8px 26px rgba(0,0,0,.65),
        0 0 12px rgba(255,255,255,.08);
}


/* =================================================
   AKTÍV – KAMERÁK
================================================= */

.lampintro2__hotspot:nth-of-type(2).lampintro2-active
.lampintro2__label {

    background:
        #d8b56a;

    color:
        #000;

    border-color:
        #f1d28d;

    box-shadow:
        0 8px 28px rgba(0,0,0,.60),
        0 0 24px rgba(216,181,106,.28);
}


/* =================================================
   AKTÍV – KÉPEK
================================================= */

.lampintro2__hotspot:nth-of-type(3).lampintro2-active
.lampintro2__label {

    background:
        #fff;

    color:
        #000;

    border-color:
        #fff;

    box-shadow:
        0 8px 26px rgba(0,0,0,.60),
        0 0 12px rgba(255,255,255,.18);
}


/* =================================================
   AKTÍV – KÖNYVEK
================================================= */

.lampintro2__hotspot:nth-of-type(4).lampintro2-active
.lampintro2__label {

    background:
        #111;

    color:
        #e0bd70;

    border-color:
        rgba(224,189,112,.72);

    box-shadow:
        0 8px 28px rgba(0,0,0,.65),
        0 0 18px rgba(224,189,112,.16);
}


/* =================================================
   VIRTUÁLIS EGÉR
================================================= */

.lampintro2__touch-mouse {
    display: none;
}


/* =================================================
   ÁLLÓ NÉZET
================================================= */

@media (orientation: portrait) {

    .lampintro2__touch-mouse {

        position: absolute;

        left: 50%;

        bottom: 30px;

        transform:
            translateX(-50%);

        z-index: 100;

        display: flex;

        flex-direction: column;

        align-items: center;

        color: #fff;

        text-align: center;

        pointer-events: auto;

        touch-action: none;

        user-select: none;

        cursor: grab;

        animation:
            lampintro2TouchMouseHintFade
            4s
            ease
            forwards;
    }


    .lampintro2__touch-mouse:active {

        cursor: grabbing;
    }


    .lampintro2__touch-mouse-icon {

        font-size: 42px;

        line-height: 1;

        margin-bottom: 8px;

        pointer-events: none;
    }


    .lampintro2__touch-mouse-text {

        font-family:
            Arial,
            sans-serif;

        font-size: 16px;

        white-space: nowrap;

        text-shadow:
            0 2px 8px rgba(0,0,0,.8);

        pointer-events: none;
    }


    /* ---------------------------------------------
       HOTSPOTOK MOBILON
    --------------------------------------------- */

    .lampintro2__label {

        padding:
            8px 16px 9px;

        font-size:
            14px;

        letter-spacing:
            0.12em;
    }
}


/* =================================================
   VIRTUÁLIS EGÉR ELTŰNÉSE
================================================= */

@keyframes lampintro2TouchMouseHintFade {

    0% {
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    75% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}



/* =================================================
   =================================================
   ÚJ INTRO
   KÜLÖN NÉVTÉR: lampintro2-intro-*
   =================================================
   ================================================= */


/* =================================================
   INTRO SÖTÉTÍTŐ / BLACKOUT
================================================= */

.lampintro2-intro-blackout {

    position: absolute !important;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background:
        rgba(0,0,0,.96);

    z-index: 200 !important;

    pointer-events: none !important;

    opacity: 0;

    --lampintro2-intro-x: 50%;
    --lampintro2-intro-y: 50%;
    --lampintro2-intro-size: 180px;

    -webkit-mask-image:
        radial-gradient(
            circle var(--lampintro2-intro-size)
            at var(--lampintro2-intro-x) var(--lampintro2-intro-y),
            transparent 0%,
            transparent 52%,
            rgba(0,0,0,.15) 68%,
            #000 100%
        );

    mask-image:
        radial-gradient(
            circle var(--lampintro2-intro-size)
            at var(--lampintro2-intro-x) var(--lampintro2-intro-y),
            transparent 0%,
            transparent 52%,
            rgba(0,0,0,.15) 68%,
            #000 100%
        );

    transition:
        opacity .15s ease;
}


/* =================================================
   INTRO ZSEBLÁMPA FÉNYKÖR
================================================= */

.lampintro2-intro-light {

    position: absolute !important;

    left: 50%;
    top: 50%;

    width: 180px;
    height: 180px;

    transform:
        translate(-50%, -50%);

    z-index: 210 !important;

    pointer-events: none !important;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255,255,255,.10) 0%,
            rgba(255,255,255,.045) 42%,
            rgba(255,255,255,0) 72%
        );

    box-shadow:
        0 0 18px rgba(255,255,255,.18),
        0 0 45px rgba(255,255,255,.08);

    opacity: 0;
}


/* =================================================
   INTRO FÉNYKÖR PEREM
================================================= */

.lampintro2-intro-light__ring {

    position: absolute;

    left: 0;
    top: 0;

    width: 100%;
    height: 100%;

    border:
        2px solid rgba(255,255,255,.72);

    border-radius: 50%;

    box-sizing: border-box;

    box-shadow:
        0 0 12px rgba(255,255,255,.16);

    pointer-events: none;
}


/* =================================================
   INTRO ÜZENET
================================================= */

.lampintro2-intro-message {

    position: absolute !important;

    left: 50%;

    bottom: 54px;

    transform:
        translateX(-50%);

    z-index: 220 !important;

    display: flex;

    align-items: center;
    justify-content: center;

    width: auto;
    max-width: 90%;

    margin: 0;
    padding: 0;

    pointer-events: none;

    opacity: 0;

    color: #fff;

    text-align: center;

    text-shadow:
        0 2px 8px rgba(0,0,0,.9);

    transition:
        opacity .8s ease;
}


/* =================================================
   INTRO ÜZENET SZÖVEGE
================================================= */

.lampintro2-intro-message__text {

    display: block;

    margin: 0;
    padding: 0;

    color: #fff;

    font-family:
        "Helvetica Neue",
        Arial,
        sans-serif;

    font-size: 17px;

    font-weight: 400;

    letter-spacing: .08em;

    line-height: 1.2;

    white-space: nowrap;

    text-transform: uppercase;
}


/* =================================================
   INTRO ÁLLAPOTOK
================================================= */


/* -------------------------------------------------
   TELJESEN SZÍNES KEZDŐKÉP
------------------------------------------------- */

.lampintro2.lampintro2-intro-start
.lampintro2__image--color {

    -webkit-mask-image:
        none;

    mask-image:
        none;
}


/* -------------------------------------------------
   BLACKOUT
------------------------------------------------- */

.lampintro2.lampintro2-intro-blackout-active
.lampintro2-intro-blackout {

    opacity: 1;
}


/* -------------------------------------------------
   INTRO FÉNY
------------------------------------------------- */

.lampintro2.lampintro2-intro-light-active
.lampintro2-intro-light {

    opacity: 1;
}


/* -------------------------------------------------
   INTRO ÜZENET
------------------------------------------------- */

.lampintro2.lampintro2-intro-message-active
.lampintro2-intro-message {

    opacity: 1;
}


/* =================================================
   INTRO FÉNY FINOM PULZÁLÁS
================================================= */

@keyframes lampintro2LightPulse {

    0% {

        transform:
            translate(-50%, -50%)
            scale(1);

    }

    50% {

        transform:
            translate(-50%, -50%)
            scale(1.04);

    }

    100% {

        transform:
            translate(-50%, -50%)
            scale(1);

    }
}


/* =================================================
   INTRO KÖR PEREM PULZÁLÁSA
================================================= */

.lampintro2.lampintro2-intro-light-active
.lampintro2-intro-light__ring {

    animation:
        lampintro2LightPulse
        1.4s
        ease-in-out
        infinite;
}


/* =================================================
   INTRO ÁLLÓ NÉZET
================================================= */

@media (orientation: portrait) {

    .lampintro2-intro-message {

        bottom: 108px;
    }


    .lampintro2-intro-message__text {

        font-size: 15px;

        letter-spacing: .07em;
    }


    .lampintro2-intro-light {

        width: 150px;
        height: 150px;
    }


    .lampintro2-intro-blackout {

        --lampintro2-intro-size: 150px;
    }
}



/* =================================================
   =================================================
   ZSEBLÁMPA LOGÓ
   KÜLÖN NÉVTÉR: lampintro2-logo-*
   =================================================
   ================================================= */


/* -------------------------------------------------
   LOGÓ ALAP
------------------------------------------------- */

.lampintro2-logo {

    position: absolute !important;

    left:
        var(--reveal-x, 50%);

    top:
        var(--reveal-y, 50%);

    width: 145px !important;

    height: auto !important;

    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    transform:
        translate(-50%, -50%);

    z-index: 215 !important;

    display: block !important;

    pointer-events: none !important;

    user-select: none !important;

    opacity: .16;

    /*
     * A logó is ugyanabban a fénykörben marad,
     * mint a zseblámpa.
     */

    -webkit-mask-image:
        radial-gradient(
            circle var(--reveal-size)
            at 50% 50%,
            #000 0%,
            #000 55%,
            transparent 100%
        );

    mask-image:
        radial-gradient(
            circle var(--reveal-size)
            at 50% 50%,
            #000 0%,
            #000 55%,
            transparent 100%
        );

    /*
     * Nagyon enyhe "üvegre írt" megjelenés.
     */

    filter:
        grayscale(100%)
        brightness(1.65)
        blur(.15px);

    mix-blend-mode:
        screen;

    transition:
        opacity .25s ease;
}


/* -------------------------------------------------
   INTRO ALATT KICSIT ERŐSEBB LOGÓ
------------------------------------------------- */

.lampintro2.lampintro2-intro-light-active
.lampintro2-logo {

    opacity: .20;
}


/* -------------------------------------------------
   INTRO VÉGÉN VISSZA A NORMÁL HALVÁNY LOGÓRA
------------------------------------------------- */

.lampintro2.lampintro2-intro-message-active
.lampintro2-logo {

    opacity: .16;
}


/* -------------------------------------------------
   MOBIL
------------------------------------------------- */

@media (orientation: portrait) {

    .lampintro2-logo {

        width: 105px !important;

        opacity: .15;
    }


    .lampintro2.lampintro2-intro-light-active
    .lampintro2-logo {

        opacity: .19;
    }
}

/* =================================================
   INTRO FÉNY LEKAPCSOLÁSA – KÉTLÉPCSŐS

   1. jobb oldal: 1000 ms
   2. bal oldal: 1210 ms

   FONTOS:
   NINCS teljes fekete blackout.
   A két lépcső között csak a jobb oldali
   sötétítés látszik. 1210 ms-nál ez is
   eltűnik, és azonnal a sötét B/W kép marad.
================================================= */

.lampintro2.lampintro2-intro-blackout-active .lampintro2-intro-blackout.lampintro2-intro-cut-stage-1 {
    opacity: 1 !important;
    background: transparent !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.lampintro2-intro-blackout.lampintro2-intro-cut-stage-1::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            transparent 0%,
            transparent 48%,
            rgba(0,0,0,.12) 56%,
            rgba(0,0,0,.42) 68%,
            rgba(0,0,0,.78) 82%,
            rgba(0,0,0,.94) 100%
        );
}

/*
 * A második lépcsőnél NINCS fekete réteg.
 * A JS egyszerűen leveszi a színes képet, így
 * azonnal előtűnik a meglévő sötét B/W alapkép.
 */

.lampintro2-intro-blackout.lampintro2-intro-cut-stage-1::after {
    display: none;
}
