/* ==========================================================
   GLOBÁLIS ÉS ALAPBEÁLLÍTÁSOK
   ========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Lato:wght@300;400;700&display=swap');

html,
body {
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    background-color: #b8ad9d;
    overflow-x: hidden;
    position: relative;
}

/* ==========================================================
   VIDEÓ SÖTÉTÍTŐ RÉTEG
   ========================================================== */

body::before {
    content: "";

    position: fixed;
    inset: 0;

    background: rgba(0, 0, 0, 0.35);

    z-index: -1;
}

/* ==========================================================
   ALAP ELEMEK
   ========================================================== */

a {
    text-decoration: none;
    color: white;
    display: block;
}

p {
    font-family: 'Lato', Arial, Helvetica, sans-serif;
    text-align: justify;
}

/* ==========================================================
   VIDEÓK
   ========================================================== */

#video1,
#video2 {
    position: fixed;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center center;

    background-color: #1a1310;

    z-index: -2;
}

/* ==========================================================
   MENÜSOR
   ========================================================== */

.menusoroutline {
    width: 100%;

    position: sticky;
    top: 0;

    z-index: 1000;

    background: rgba(20,10,3, 0.4);


    box-shadow:
        0 4px 24px rgba(20,10,3,0.6);

    transform: translateZ(0);
}

.menufelsosor {

    /* FONTOS:
       nagyobb szélesség és kisebb padding,
       hogy kiférjen minden menüpont */

    width: 100%;
    max-width: 1920px;

    margin: 0 auto;

    display: flex;
    align-items: center;

    justify-content: flex-start;

    gap: 14px;

    padding: 4px 10px;

    box-sizing: border-box;
}

/* ==========================================================
   LOGÓ
   ========================================================== */

.logo-link {
    flex-shrink: 0;
}

.logo-img {
    height: 92px;
    width: auto;

    display: block;

    transition:
        transform 0.3s ease,
        filter 0.3s ease;

    filter:
        drop-shadow(0 2px 8px rgba(0,0,0,0.5));
}

.logo-link:hover .logo-img {
    transform: scale(1.05);

    filter:
        drop-shadow(
            0 4px 16px rgba(92, 92, 92, 0.5)
        );
}

/* ==========================================================
   MENÜ ELEMEK
   ========================================================== */

.menu-elemek {

    display: flex;

    align-items: center;

    justify-content: flex-start;

    flex-wrap: nowrap;

    flex: 1;

    min-width: 0;

    gap: 0;
}

.menu-checkbox,
.submenu-checkbox,
.hamburger-gomb {
    display: none;
}

/* ==========================================================
   GOMBOK
   ========================================================== */

.simagomb-link {
    display: block;
}

.simagomb {

    font-family:
        'Cinzel',
        'Times New Roman',
        serif;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 0.04em;

    text-transform: uppercase;

    color: #e8d9c4;

    padding: 11px 10px;

    cursor: pointer;

    position: relative;

    white-space: nowrap;

    transition:
        color 0.25s ease,
        background-color 0.25s ease;

    border-radius: 4px;
}

.simagomb::after {

    content: '';

    position: absolute;

    bottom: 4px;
    left: 9px;
    right: 9px;

    height: 1px;

    background:
        rgba(220,185,130,0.7);

    transform: scaleX(0);

    transform-origin: left;

    transition:
        transform 0.25s ease;
}

.simagomb:hover {

    color: #fff;

    background-color:
        rgba(200,160,90,0.15);
}

.simagomb:hover::after {
    transform: scaleX(1);
}

/* ==========================================================
   LENYÍLÓ MENÜ
   ========================================================== */

.lenyilo-blokk {
    position: relative;
    display: inline-block;
}

.lenyilospacer {

    font-family:
        'Cinzel',
        'Times New Roman',
        serif;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 0.04em;

    text-transform: uppercase;

    color: #e8d9c4;

    padding: 11px 10px;

    display: flex;
    align-items: center;

    gap: 4px;

    cursor: pointer;

    white-space: nowrap;

    border-radius: 4px;

    transition:
        color 0.25s ease,
        background-color 0.25s ease;

    position: relative;
}

.lenyilospacer::after {

    content: '▾';

    font-size: 9px;

    opacity: 0.7;

    transition:
        transform 0.25s ease;
}

.lenyilospacer::before {

    content: '';

    position: absolute;

    bottom: 4px;
    left: 9px;
    right: 16px;

    height: 1px;

    background:
        rgba(220,185,130,0.7);

    transform: scaleX(0);

    transform-origin: left;

    transition:
        transform 0.25s ease;
}

.lenyilo-blokk:hover .lenyilospacer {

    color: #fff;

    background-color:
        rgba(200,160,90,0.15);
}

.lenyilo-blokk:hover .lenyilospacer::before {
    transform: scaleX(1);
}

.lenyilo-blokk:hover .lenyilospacer::after {
    transform: rotate(180deg);
}

/* ==========================================================
   DESKTOP LENYÍLÓ
   ========================================================== */

/* FONTOS:
   hamarabb váltson mobil nézetre */

@media screen and (min-width: 1451px) {

    .lenyilorejtett {

        position: absolute;

        top: calc(100% + 4px);
        left: 0;

        background:
            rgba(0, 0, 0, 0.39);

        border:
            1px solid rgba(0, 0, 0, 0.2);

        border-top:
            2px solid rgba(0, 0, 0, 0.1);

        border-radius:
            0 0 8px 8px;

        min-width: 190px;

        max-height: 0;

        overflow: hidden;

        opacity: 0;

        transition:
            max-height 0.38s cubic-bezier(0.4,0,0.2,1),
            opacity 0.25s ease,
            box-shadow 0.25s ease;
    }

    .lenyilo-blokk:hover .lenyilorejtett {

        max-height: 500px;

        overflow-y: auto;

        opacity: 1;

        box-shadow:
            0 12px 40px rgba(20,10,5,0.55);
    }

    .lenyilorejtett a {

        padding: 9px 16px;

        color:
            rgba(235,220,195,0.88);

        font-family:
            'Lato',
            Arial,
            sans-serif;

        font-size: 13px;

        border-bottom:
            1px solid rgba(200,165,110,0.1);

        transition:
            color 0.18s ease,
            background-color 0.18s ease,
            padding-left 0.18s ease;
    }

    .lenyilorejtett a:hover {

        color: #fff;

        background-color:
            rgba(200,160,90,0.18);

        padding-left: 22px;
    }
}

/* ==========================================================
   MOBIL NÉZET
   ========================================================== */

/* FONTOS:
   1450px alatt már hamburger menü */

@media screen and (max-width: 1450px) {

    .menufelsosor {

        position: relative;

        justify-content: space-between;

        padding: 10px 16px;

        background:
          rgba(0, 0, 0, 0.39);
    }

    .logo-img {
        height: 72px;
    }

    .hamburger-gomb {

        display: flex;

        flex-direction: column;
        justify-content: space-between;

        width: 28px;
        height: 19px;

        cursor: pointer;

        z-index: 1001;
    }

    .hamburger-gomb span {

        display: block;

        width: 100%;
        height: 2px;

        background-color:
            rgba(235,215,180,0.9);

        border-radius: 2px;

        transition: 0.3s ease;
    }

    .menu-elemek {

        display: none;

        flex-direction: column;

        position: absolute;

        top: 100%;
        left: 0;

        width: 100%;

        background:
            rgba(0, 0, 0, 0.39);

        box-shadow:
            0 12px 30px rgba(20,10,5,0.6);

        border-top:
            1px solid rgba(200,165,110,0.2);

        max-height:
            calc(100vh - 92px);

        overflow-y: auto;
    }

    .lenyilo-blokk,
    .simagomb,
    .simagomb-link {
        width: 100%;
    }

    .lenyilospacer {

        padding: 14px 20px;

        width: 100%;

        box-sizing: border-box;

        justify-content: space-between;

        font-size: 13px;
    }

    .lenyilospacer::before {
        display: none;
    }

    .simagomb {

        padding: 14px 20px;

        text-align: left;

        font-size: 13px;

        border-radius: 0;
    }

    .simagomb::after {
        display: none;
    }

    .lenyilorejtett {

        display: none;

        background-color: rgba(0, 0, 0, 0.39);
    }

    .lenyilorejtett a {

        padding: 12px 32px;

        color:
            rgba(225,205,175,0.85);

        font-family:
            'Lato',
            Arial,
            sans-serif;

        font-size: 14px;

        border-bottom:
            1px solid rgba(200,165,110,0.08);
    }

    .menu-checkbox:checked ~ .menu-elemek {
        display: flex;
    }

    .submenu-checkbox:checked ~ .lenyilorejtett {
        display: block;
    }

    .submenu-checkbox:checked ~ .lenyilospacer {

        color: #fff;

        background-color:
            rgba(200,160,90,0.15);
    }

    .submenu-checkbox:checked ~ .lenyilospacer::after {
        transform: rotate(180deg);
    }

    .menu-checkbox:checked ~ .hamburger-gomb span:nth-child(1) {

        transform:
            translateY(8.5px)
            rotate(45deg);
    }

    .menu-checkbox:checked ~ .hamburger-gomb span:nth-child(2) {
        opacity: 0;
    }

    .menu-checkbox:checked ~ .hamburger-gomb span:nth-child(3) {

        transform:
            translateY(-8.5px)
            rotate(-45deg);
    }
}

/* ==========================================================
   FŐOLDALI FELIRAT
   ========================================================== */

.felirat {

    font-family:
        'Cinzel',
        'Times New Roman',
        serif;

    position: absolute;

    z-index: 5;

    /* FONTOS:
       lejebb került,
       hogy ne takarja a menüsor */

    top: 12cm;
    left: 50%;

    transform:
        translate(-50%, -50%)
        scale(1);

    width: 90%;
    max-width: 1200px;

    text-align: center;

    white-space: normal;

    line-height: 1.15;

    letter-spacing: 0.05em;

    text-transform: uppercase;

    color: #c4996a;

    font-size:
        clamp(34px, 8vw, 90px);

    text-shadow:
        0 4px 20px rgba(0,0,0,0.7),
        0 2px 8px rgba(0,0,0,0.5);

    animation:
        felcsuszik 1s ease-in-out 2.2s forwards;
}

/* ==========================================================
   FELIRAT ANIMÁCIÓ
   ========================================================== */

@keyframes felcsuszik {

    0% {

        top: 12cm;
        left: 50%;

        transform:
            translate(-50%, -50%)
            scale(1);

        opacity: 1;
    }

    100% {

        top: 1.5cm;
        left: 18%;

        transform:
            translate(-50%, 0)
            scale(0.42);

        opacity: 1;
    }
}

/* ==========================================================
   MOBIL FELIRAT
   ========================================================== */

@media screen and (max-width: 768px) {

    .felirat {

        font-size:
            clamp(26px, 9vw, 52px);

        width: 92%;

        line-height: 1.2;

        letter-spacing: 0.03em;

        position:fixed;
    }

    @keyframes felcsuszik {

        100% {

            top: 95px;

            transform:
                translate(-50%, 0)
                scale(0.5);
        }
    }
}
footer {
    position: fixed;
    bottom: 10px;
    right: 15px;
    z-index: 9999;
}

.footer-content p {
    margin: 0;
    color: white;
    font-size: 10px;
    font-family: Arial, sans-serif;
    text-align: right;
}

/* MOBIL NÉZET */
@media screen and (max-width: 768px) {
    footer {
        bottom: 8px;
        right: 10px;
    }

    .footer-content p {
        font-size: 9px;
    }
}