/* =========================
   ENEV HOLIDAY - MAIN COLORS
   ========================= */

:root {
    --color-background: #0a241f;
    --color-background-light: #123b33;
    --color-green: #185044;

    --color-gold: #e8bd55;
    --color-gold-light: #f0cd72;

    --color-cream: #f4f0e7;
    --color-gray: #bfc7c3;
    --color-turquoise: #59d3ca;
}


/* =========================
   RESET
   ========================= */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* =========================
   PAGE
   ========================= */

html {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;

    background:
        linear-gradient(
            135deg,
            #0a241f 0%,
            #123b33 50%,
            #071b17 100%
        );

    color: var(--color-cream);
    font-family: Arial, Helvetica, sans-serif;
}

/* =========================
   HEADER
   ========================= */

.site-header {
    width: 100%;
    height: 100px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 6%;

    border-bottom: 1px solid rgba(244, 240, 231, 0.12);
}


/* =========================
   LOGO
   ========================= */

.logo {
    color: var(--color-cream);

    text-decoration: none;

    font-size: 22px;
    font-weight: 700;

    letter-spacing: 5px;
}


/* =========================
   RIGHT SIDE
   ========================= */

.header-actions {
    display: flex;
    align-items: center;

    gap: 25px;
}


/* =========================
   ENQUIRE BUTTON
   ========================= */

.enquire-btn {
    background-color: var(--color-gold);
    color: #071b17;

    text-decoration: none;

    font-size: 14px;
    font-weight: 700;

    letter-spacing: 1px;

    padding: 17px 28px;

    border-radius: 50px;

    transition: 0.3s;
}


.enquire-btn:hover {
    background-color: var(--color-gold-light);

    transform: translateY(-2px);
}


/* =========================
   MENU BUTTON
   ========================= */

.menu-btn {
    width: 50px;
    height: 50px;

    background: transparent;

    border: 1px solid rgba(244, 240, 231, 0.4);
    border-radius: 50%;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 5px;

    cursor: pointer;
}


.menu-btn span {
    width: 20px;
    height: 2px;

    background-color: var(--color-cream);

    display: block;
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 700px) {

    .site-header {
        height: 80px;
        padding: 0 20px;
    }

    .logo {
        font-size: 16px;
        letter-spacing: 3px;
    }

    .enquire-btn {
        font-size: 11px;
        padding: 13px 17px;
    }

    .header-actions {
        gap: 12px;
    }

    .menu-btn {
        width: 44px;
        height: 44px;
    }

}

/* =========================
   SIDE MENU
   ========================= */

.side-menu {
    position: fixed;

    top: 0;
    right: -480px;

    width: 440px;
    height: 100vh;

    background-color: #071f1a;

    padding: 35px 40px;

    z-index: 1001;

    display: flex;
    flex-direction: column;

    transition: right 0.5s ease;
}


/* Когато менюто е отворено */

.side-menu.active {
    right: 0;
}


/* =========================
   MENU TOP
   ========================= */

.side-menu-top {
    display: flex;
    justify-content: space-between;
    align-items: center;

    margin-bottom: 60px;
}


.side-menu-title {
    color: var(--color-gold);

    font-size: 13px;

    letter-spacing: 4px;
}


.close-menu {
    background: none;
    border: none;

    color: var(--color-cream);

    font-size: 42px;

    cursor: pointer;
}


/* =========================
   MENU LINKS
   ========================= */

.side-menu-links {
    display: flex;
    flex-direction: column;

    gap: 22px;
}


.side-menu-links a {
    color: var(--color-cream);

    text-decoration: none;

    font-size: 27px;
    font-weight: 500;

    transition: 0.3s;
}


.side-menu-links a:hover {
    color: var(--color-gold);

    transform: translateX(8px);
}


/* =========================
   CONTACTS
   ========================= */

.side-menu-contact {
    margin-top: auto;

    display: flex;
    flex-direction: column;

    gap: 8px;
}


.side-menu-contact p {
    color: var(--color-gray);

    margin-bottom: 8px;

    font-size: 13px;

    text-transform: uppercase;

    letter-spacing: 2px;
}


.side-menu-contact a {
    color: var(--color-cream);

    text-decoration: none;

    font-size: 14px;
}


/* =========================
   ENQUIRE INSIDE MENU
   ========================= */

.side-enquire {
    margin-top: 25px;

    background-color: var(--color-gold);

    color: #071b17;

    text-decoration: none;

    text-align: center;

    font-weight: bold;

    padding: 18px;

    border-radius: 50px;
}


/* =========================
   DARK OVERLAY
   ========================= */

.menu-overlay {
    position: fixed;

    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-color: rgba(0, 0, 0, 0.6);

    opacity: 0;
    visibility: hidden;

    z-index: 1000;

    transition: 0.4s;
}


.menu-overlay.active {
    opacity: 1;
    visibility: visible;
}


/* =========================
   MOBILE MENU
   ========================= */

@media (max-width: 600px) {

    .side-menu {
        width: 100%;
        right: -100%;

        padding: 30px 25px;
    }

    .side-menu-links a {
        font-size: 23px;
    }

}

/* =========================
   HERO SECTION
   ========================= */

.hero {
    position: relative;

    min-height: calc(100vh - 100px);

    display: flex;
    align-items: center;

    padding: 80px 6%;

    overflow: hidden;

    background:
        linear-gradient(
            90deg,
            rgba(5, 28, 24, 0.95) 0%,
            rgba(5, 28, 24, 0.70) 50%,
            rgba(5, 28, 24, 0.35) 100%
        ),
        url("images/hero.jpg.png");

    background-size: cover;
    background-position: center;
}


/* =========================
   HERO CONTENT
   ========================= */

.hero-content {
    position: relative;

    z-index: 2;

    max-width: 850px;
}


/* Малкият златист текст */

.hero-small-text {
    color: var(--color-gold);

    font-size: 13px;
    font-weight: 600;

    letter-spacing: 5px;

    margin-bottom: 25px;
}


/* Голямото заглавие */

.hero h1 {
    color: var(--color-cream);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(60px, 8vw, 125px);

    font-weight: 400;

    line-height: 0.9;

    letter-spacing: -3px;

    margin-bottom: 35px;
}


/* Текст под заглавието */

.hero-description {
    color: var(--color-gray);

    font-size: 20px;

    line-height: 1.6;

    margin-bottom: 35px;
}


/* =========================
   DESTINATION BUTTONS
   ========================= */

.destination-buttons {
    display: flex;
    flex-wrap: wrap;

    gap: 12px;

    margin-bottom: 22px;
}


.destination-buttons a {
    padding: 13px 22px;

    background: transparent;

    border: 1px solid rgba(244, 240, 231, 0.45);

    border-radius: 50px;

    color: var(--color-cream);

    font-size: 12px;
    font-weight: 600;

    letter-spacing: 1px;

    cursor: pointer;

    transition: 0.3s;
}


.destination-buttons a:hover {
    background-color: var(--color-cream);

    color: var(--color-background);

    transform: translateY(-3px);
}


/* =========================
   SURPRISE BUTTON
   ========================= */

.surprise-btn {
    padding: 18px 32px;

    border: none;

    border-radius: 50px;

    background-color: var(--color-gold);

    color: #071b17;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: 1px;

    cursor: pointer;

    transition: 0.3s;
}


.surprise-btn:hover {
    background-color: var(--color-gold-light);

    transform: translateY(-3px);
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 700px) {

    .hero {
        min-height: calc(100vh - 80px);

        padding: 70px 22px;

        align-items: center;

        background-position: center;
    }


    .hero h1 {
        font-size: 55px;

        line-height: 0.95;
    }


    .hero-small-text {
        font-size: 10px;

        letter-spacing: 3px;
    }


    .hero-description {
        font-size: 17px;
    }


    .destination-buttons a {
        padding: 11px 15px;

        font-size: 10px;
    }

}

/* =========================
   MYSTERY SCREEN
   ========================= */

.mystery-screen {
    position: fixed;

    top: 0;
    left: 0;

    width: 100%;
    height: 100vh;

    background:
        radial-gradient(
            circle at center,
            #123b33 0%,
            #071b17 45%,
            #020b09 100%
        );

    z-index: 3000;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    opacity: 0;
    visibility: hidden;

    transition:
        opacity 0.8s ease,
        visibility 0.8s ease;
}


.mystery-screen.active {
    opacity: 1;
    visibility: visible;
}


/* =========================
   CLOSE BUTTON
   ========================= */

.mystery-close {
    position: absolute;

    top: 35px;
    right: 45px;

    width: 55px;
    height: 55px;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.4);

    background: rgba(0, 0, 0, 0.2);

    color: white;

    font-size: 35px;

    cursor: pointer;

    z-index: 10;
}


/* =========================
   HEADLIGHTS
   ========================= */

.headlights {
    position: absolute;

    bottom: 15%;

    left: 50%;

    transform: translateX(-50%);

    width: 600px;
    height: 200px;

    display: flex;

    justify-content: space-between;

    opacity: 0;

    transition: opacity 1s ease;
}


.mystery-screen.lights-on .headlights {
    opacity: 1;
}


.headlight {
    width: 160px;
    height: 70px;

    border-radius: 50%;

    background: #fff6c9;

    box-shadow:
        0 0 30px #ffe99a,
        0 0 80px #ffd76a,
        0 0 160px rgba(255, 215, 106, 0.8);

    filter: blur(2px);
}


/* =========================
   MYSTERY TEXT
   ========================= */

.mystery-content {
    position: relative;

    z-index: 5;

    text-align: center;

    max-width: 900px;

    padding: 30px;

    opacity: 0;

    transform: translateY(40px);

    transition:
        opacity 1s ease,
        transform 1s ease;
}


.mystery-screen.show-text .mystery-content {
    opacity: 1;

    transform: translateY(0);
}


.mystery-label {
    color: var(--color-gold);

    letter-spacing: 6px;

    font-size: 13px;

    margin-bottom: 25px;
}


.mystery-content h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 8vw, 120px);

    font-weight: 400;

    line-height: 0.9;

    color: var(--color-cream);

    margin-bottom: 30px;
}


.mystery-description {
    font-size: 22px;

    color: var(--color-gray);

    margin-bottom: 40px;
}


/* =========================
   MYSTERY BUTTON
   ========================= */

.mystery-start-btn {
    border: none;

    border-radius: 50px;

    padding: 18px 32px;

    background: var(--color-gold);

    color: #071b17;

    font-size: 14px;

    font-weight: 800;

    cursor: pointer;

    letter-spacing: 1px;

    transition: 0.3s;
}


.mystery-start-btn:hover {
    background: var(--color-gold-light);

    transform: translateY(-3px);
}


/* =========================
   MOBILE MYSTERY
   ========================= */

@media (max-width: 700px) {

    .headlights {
        width: 320px;
        height: 140px;
    }

    .headlight {
        width: 85px;
        height: 45px;
    }

    .mystery-content h2 {
        font-size: 55px;
    }

    .mystery-description {
        font-size: 17px;
    }

    .mystery-close {
        top: 20px;
        right: 20px;

        width: 45px;
        height: 45px;
    }

}

/* =========================
   JOURNEY SCENE
   ========================= */

.journey-scene {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;

    opacity: 0;
    visibility: hidden;

    transition: opacity 1s ease;
}


.mystery-screen.journey-active .journey-scene {
    opacity: 1;
    visibility: visible;
}


/* Когато пътуването започне,
   старият mystery текст изчезва */

.mystery-screen.journey-active .mystery-content,
.mystery-screen.journey-active .headlights {
    opacity: 0;
    pointer-events: none;
}


/* =========================
   SKY
   ========================= */

.journey-sky {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            #071b17 0%,
            #123b33 50%,
            #d29d4c 100%
        );
}


/* =========================
   ROAD
   ========================= */

.road {
    position: absolute;

    left: 50%;
    bottom: -10%;

    transform: translateX(-50%);

    width: 75%;
    height: 75%;

    background:
        linear-gradient(
            to right,
            #262626 0%,
            #363636 50%,
            #262626 100%
        );

    clip-path: polygon(
        42% 0%,
        58% 0%,
        100% 100%,
        0% 100%
    );
}


/* Средната линия на пътя */

.road-line {
    position: absolute;

    left: 50%;
    top: 0;

    transform: translateX(-50%);

    width: 12px;
    height: 150%;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0px,
            transparent 50px,
            #f4f0e7 50px,
            #f4f0e7 100px
        );

    animation: roadMove 0.55s linear infinite;
}


@keyframes roadMove {

    from {
        background-position-y: 0;
    }

    to {
        background-position-y: 100px;
    }

}


/* =========================
   BUS
   ========================= */

.bus {
    position: absolute;

    left: 50%;
    bottom: 8%;

    transform: translateX(-50%);

    width: 330px;
    height: 150px;

    background:
        linear-gradient(
            135deg,
            #071310,
            #16342d
        );

    border-radius: 25px 25px 12px 12px;

    border: 2px solid rgba(232, 189, 85, 0.7);

    box-shadow:
        0 20px 50px rgba(0, 0, 0, 0.55);

    animation: busDrive 1.5s ease-in-out infinite alternate;

    z-index: 5;
}


@keyframes busDrive {

    from {
        transform: translateX(-50%) translateY(0);
    }

    to {
        transform: translateX(-50%) translateY(-5px);
    }

}

/* =========================
   CINEMATIC BUS JOURNEY
   ========================= */

/* Нощно небе със звезди */

.journey-sky {
    background:
        radial-gradient(circle at 12% 18%, white 0 1px, transparent 2px),
        radial-gradient(circle at 28% 10%, white 0 1px, transparent 2px),
        radial-gradient(circle at 48% 22%, white 0 1px, transparent 2px),
        radial-gradient(circle at 67% 14%, white 0 1px, transparent 2px),
        radial-gradient(circle at 82% 25%, white 0 1px, transparent 2px),
        radial-gradient(circle at 92% 8%, white 0 1px, transparent 2px),
        linear-gradient(
            to bottom,
            #020a12 0%,
            #08211d 55%,
            #b07835 100%
        );
}


/* Луна */

.journey-sky::before {
    content: "";

    position: absolute;

    top: 9%;
    right: 12%;

    width: 85px;
    height: 85px;

    border-radius: 50%;

    background: #fff4c2;

    box-shadow:
        0 0 25px rgba(255, 244, 194, 0.8),
        0 0 70px rgba(255, 214, 106, 0.45);

    animation: moonGlow 2s ease-in-out infinite alternate;
}


@keyframes moonGlow {

    from {
        box-shadow:
            0 0 20px rgba(255, 244, 194, 0.7),
            0 0 55px rgba(255, 214, 106, 0.35);
    }

    to {
        box-shadow:
            0 0 35px rgba(255, 244, 194, 0.95),
            0 0 90px rgba(255, 214, 106, 0.55);
    }

}


/* Светлина на хоризонта */

.journey-sky::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 30%;

    transform: translateX(-50%);

    width: 350px;
    height: 150px;

    background:
        radial-gradient(
            ellipse,
            rgba(255, 205, 114, 0.65),
            transparent 68%
        );

    filter: blur(12px);

    animation: horizonGlow 3s ease-in-out infinite alternate;
}


@keyframes horizonGlow {

    from {
        opacity: 0.45;
        transform: translateX(-50%) scale(0.85);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) scale(1.15);
    }

}


/* Линии за скорост */

.journey-scene::before {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 3;

    pointer-events: none;

    opacity: 0;

    background:
        repeating-linear-gradient(
            115deg,
            transparent 0,
            transparent 70px,
            rgba(255, 255, 255, 0.12) 72px,
            transparent 75px,
            transparent 140px
        );
}


.mystery-screen.journey-active .journey-scene::before {
    opacity: 1;

    animation: speedLines 0.65s linear infinite;
}


@keyframes speedLines {

    from {
        background-position: 0 0;
    }

    to {
        background-position: -350px 500px;
    }

}


/* Автобусът потегля към хоризонта */

.mystery-screen.journey-active .bus {
    animation: cinematicBus 8s ease-in-out forwards;
}


@keyframes cinematicBus {

    0% {
        bottom: 6%;
        transform: translateX(-50%) scale(1.08);
        opacity: 1;
    }

    15% {
        bottom: 10%;
        transform: translateX(-52%) scale(1);
    }

    30% {
        bottom: 14%;
        transform: translateX(-48%) scale(0.88) rotate(1deg);
    }

    45% {
        bottom: 19%;
        transform: translateX(-52%) scale(0.75) rotate(-1deg);
    }

    60% {
        bottom: 25%;
        transform: translateX(-48%) scale(0.60) rotate(1deg);
    }

    75% {
        bottom: 32%;
        transform: translateX(-51%) scale(0.44);
    }

    90% {
        bottom: 40%;
        transform: translateX(-49%) scale(0.28);
        opacity: 0.9;
    }

    100% {
        bottom: 48%;
        transform: translateX(-50%) scale(0.12);
        opacity: 0;
        filter: blur(2px);
    }

}


/* Леко движение на камерата */

.mystery-screen.journey-active .journey-scene {
    animation: cameraShake 0.35s ease-in-out infinite alternate;
}


@keyframes cameraShake {

    from {
        transform: translateX(-1px) scale(1.005);
    }

    to {
        transform: translateX(1px) scale(1.01);
    }

}


/* Въртене на гумите */

.mystery-screen.journey-active .bus-wheel {
    animation: wheelSpin 0.35s linear infinite;
}


@keyframes wheelSpin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }

}


/* BUS WINDOWS */

.bus-window {
    position: absolute;

    top: 20px;

    width: 65px;
    height: 45px;

    background:
        linear-gradient(
            145deg,
            #254f48,
            #081714
        );

    border-radius: 6px;

    border: 1px solid rgba(255, 255, 255, 0.15);
}


.bus-window-1 {
    left: 35px;
}

.bus-window-2 {
    left: 130px;
}

.bus-window-3 {
    left: 225px;
}


/* BUS NAME */

.bus-name {
    position: absolute;

    left: 50%;
    top: 82px;

    transform: translateX(-50%);

    color: var(--color-gold);

    font-family: Georgia, serif;

    font-size: 15px;

    letter-spacing: 3px;

    white-space: nowrap;
}


/* BUS LIGHTS */

.bus-light {
    position: absolute;

    bottom: 25px;

    width: 20px;
    height: 10px;

    background: #ffcf6d;

    border-radius: 50%;

    box-shadow:
        0 0 20px #ffd879,
        0 0 50px rgba(255, 216, 121, 0.8);
}


.bus-light-left {
    left: 20px;
}


.bus-light-right {
    right: 20px;
}


/* BUS WHEELS */

.bus-wheel {
    position: absolute;

    bottom: -14px;

    width: 42px;
    height: 42px;

    background: #080808;

    border: 5px solid #1d1d1d;

    border-radius: 50%;
}


.wheel-left {
    left: 45px;
}


.wheel-right {
    right: 45px;
}


/* =========================
   ROAD SIGNS
   ========================= */

.road-signs {
    position: absolute;

    inset: 0;

    z-index: 4;

    pointer-events: none;
}


.road-sign {
    position: absolute;

    top: 30%;
    right: -250px;

    min-width: 190px;

    padding: 17px 25px;

    background: #09221d;

    color: var(--color-gold);

    border: 2px solid var(--color-gold);

    border-radius: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    text-align: center;

    opacity: 0;
}


/* Табелите минават една след друга */
.mystery-screen.journey-active .sign-1 {
    animation: signPass 1.6s ease 0.3s forwards;
}

.mystery-screen.journey-active .sign-2 {
    animation: signPass 1.6s ease 1.9s forwards;
}

.mystery-screen.journey-active .sign-3 {
    animation: signPass 1.6s ease 3.5s forwards;
}

.mystery-screen.journey-active .sign-4 {
    animation: signPass 1.6s ease 5.1s forwards;
}


@keyframes signPass {

    0% {
        right: -250px;
        opacity: 0;
        transform: scale(0.7);
    }

    25% {
        opacity: 1;
    }

    60% {
        right: 8%;
        opacity: 1;
        transform: scale(1);
    }

    100% {
        right: 45%;
        opacity: 0;
        transform: scale(1.5);
    }

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 700px) {

    .road {
        width: 130%;
    }

    .bus {
        width: 250px;
        height: 120px;
    }

    .bus-window {
        width: 48px;
        height: 35px;
    }

    .bus-window-1 {
        left: 28px;
    }

    .bus-window-2 {
        left: 101px;
    }

    .bus-window-3 {
        left: 174px;
    }

    .bus-name {
        top: 68px;

        font-size: 11px;
    }

    .road-sign {
        min-width: 150px;

        font-size: 12px;
    }

}

/* =========================
   FINAL MYSTERY REVEAL
   ========================= */

.journey-final {
    position: absolute;
    inset: 0;

    z-index: 20;

    display: flex;
    justify-content: center;
    align-items: center;

    text-align: center;

    padding: 30px;

    background:
        radial-gradient(
            circle at center,
            rgba(18, 59, 51, 0.95),
            rgba(3, 15, 12, 0.99)
        );

    opacity: 0;
    visibility: hidden;

    transition:
        opacity 1.5s ease,
        visibility 1.5s ease;
}


/* Показваме финалния екран */

.mystery-screen.journey-finished .journey-final {
    opacity: 1;
    visibility: visible;
}


/* Пътят изчезва плавно */

.mystery-screen.journey-finished .journey-scene {
    opacity: 0;
}


/* =========================
   FINAL CONTENT
   ========================= */

.journey-final-content {
    max-width: 950px;

    opacity: 0;

    transform: translateY(50px) scale(0.96);

    transition:
        opacity 1.2s ease 0.5s,
        transform 1.2s ease 0.5s;
}


.mystery-screen.journey-finished .journey-final-content {
    opacity: 1;

    transform: translateY(0) scale(1);
}


.journey-final-small {
    color: var(--color-gold);

    font-size: 13px;

    letter-spacing: 6px;

    margin-bottom: 30px;
}


/* ГОЛЯМОТО ЗАГЛАВИЕ */

.journey-final h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(60px, 9vw, 135px);

    font-weight: 400;

    line-height: 0.88;

    color: var(--color-cream);

    margin-bottom: 30px;
}


/* Текстът отдолу */

.journey-final-content > p:not(.journey-final-small) {
    font-size: 21px;

    color: var(--color-gray);

    margin-bottom: 40px;
}


/* =========================
   FINAL BUTTONS
   ========================= */

.journey-final-buttons {
    display: flex;

    justify-content: center;

    gap: 15px;

    flex-wrap: wrap;
}


.final-primary-btn,
.final-secondary-btn {
    text-decoration: none;

    padding: 18px 30px;

    border-radius: 50px;

    font-size: 13px;
    font-weight: 800;

    letter-spacing: 1px;

    transition: 0.3s;
}


/* Gold button */

.final-primary-btn {
    background: var(--color-gold);

    color: #071b17;
}


.final-primary-btn:hover {
    background: var(--color-gold-light);

    transform: translateY(-3px);
}


/* Outline button */

.final-secondary-btn {
    background: transparent;

    color: var(--color-cream);

    border: 1px solid rgba(244, 240, 231, 0.55);
}


.final-secondary-btn:hover {
    background: var(--color-cream);

    color: var(--color-background);

    transform: translateY(-3px);
}


/* MOBILE */

@media (max-width: 700px) {

    .journey-final h2 {
        font-size: 53px;
    }

    .journey-final-small {
        font-size: 10px;

        letter-spacing: 4px;
    }

    .journey-final-content > p:not(.journey-final-small) {
        font-size: 17px;
    }

    .journey-final-buttons {
        flex-direction: column;
    }

}

/* =========================
   DESTINATIONS SECTION
   ========================= */

.destinations {
    padding: 120px 6%;

    background-color: var(--color-cream);

    color: var(--color-background);
}


/* =========================
   DESTINATIONS HEADER
   ========================= */

.destinations-header {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 60px;

    margin-bottom: 65px;
}


.section-label {
    color: #8a6b27;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 4px;

    margin-bottom: 20px;
}


.destinations-header h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(45px, 6vw, 85px);

    font-weight: 400;

    line-height: 0.95;

    letter-spacing: -2px;
}


.destinations-header h2 em {
    color: #a77b24;

    font-weight: 400;
}


.destinations-intro {
    max-width: 420px;

    color: #53605c;

    font-size: 16px;

    line-height: 1.7;
}


/* =========================
   DESTINATION GRID
   ========================= */

.destination-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}


/* =========================
   DESTINATION CARD
   ========================= */

.destination-card {
    position: relative;

    height: 560px;

    overflow: hidden;

    border-radius: 6px;

    text-decoration: none;

    background-image:
        url("images/hero.jpg.png");

    background-size: cover;

    background-position: center;

    transition: 0.5s ease;
}


/*
По-късно всяка държава ще има
собствена снимка.
*/


.destination-bulgaria {
    background-image: url("images/Bulgaria.jpg");
    background-position: center;
}

.destination-greece {
    background-image: url("images/Greece.jpg");
    background-position: center;
}

.destination-turkey {
    background-image: url("images/istan.webp");
    background-position: center;
}

.destination-europe {
    background-image: url("images/Europe.jpg");
    background-position: center;
}


/* DARK OVERLAY */

.destination-card-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(3, 23, 19, 0.88) 0%,
            rgba(3, 23, 19, 0.2) 65%,
            rgba(3, 23, 19, 0.05) 100%
        );

    transition: 0.5s;
}


/* CONTENT */

.destination-card-content {
    position: absolute;

    left: 40px;
    right: 40px;
    bottom: 38px;

    z-index: 2;

    color: white;
}


.destination-card-content p {
    color: var(--color-gold);

    font-size: 10px;

    letter-spacing: 4px;

    margin-bottom: 12px;
}


.destination-card-content h3 {
    font-family: Georgia, serif;

    font-size: 52px;

    font-weight: 400;

    margin-bottom: 10px;
}


.destination-card-content span {
    font-size: 14px;

    color: rgba(255, 255, 255, 0.75);
}


/* ARROW */

.destination-arrow {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 55px;
    height: 55px;

    border: 1px solid rgba(255, 255, 255, 0.5);

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 25px;

    transition: 0.4s;
}


/* =========================
   CARD HOVER
   ========================= */

.destination-card:hover {
    transform: translateY(-8px);

    background-size: 108%;
}


.destination-card:hover .destination-card-overlay {
    background:
        linear-gradient(
            to top,
            rgba(3, 23, 19, 0.9),
            rgba(3, 23, 19, 0.05)
        );
}


.destination-card:hover .destination-arrow {
    background-color: var(--color-gold);

    border-color: var(--color-gold);

    color: var(--color-background);

    transform: rotate(-35deg);
}


/* =========================
   BOTTOM BUTTON
   ========================= */

.destinations-bottom {
    margin-top: 50px;

    text-align: center;
}


.all-destinations-btn {
    display: inline-block;

    padding: 17px 30px;

    border: 1px solid var(--color-background);

    border-radius: 50px;

    color: var(--color-background);

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2px;

    transition: 0.3s;
}


.all-destinations-btn:hover {
    background-color: var(--color-background);

    color: var(--color-cream);
}


/* =========================
   MOBILE DESTINATIONS
   ========================= */

@media (max-width: 850px) {

    .destinations {
        padding: 80px 22px;
    }


    .destinations-header {
        flex-direction: column;

        align-items: flex-start;

        gap: 30px;
    }


    .destination-grid {
        grid-template-columns: 1fr;
    }


    .destination-card {
        height: 480px;
    }

}


@media (max-width: 500px) {

    .destination-card {
        height: 420px;
    }


    .destination-card-content {
        left: 25px;
        right: 25px;
        bottom: 25px;
    }


    .destination-card-content h3 {
        font-size: 42px;
    }

}

/* =========================
   EXPERIENCES SECTION
   ========================= */

.experiences {
    padding: 130px 6%;

    background:
        linear-gradient(
            135deg,
            #071b17 0%,
            #0a2b24 55%,
            #071b17 100%
        );

    color: var(--color-cream);
}


/* =========================
   EXPERIENCES HEADER
   ========================= */

.experiences-header {
    max-width: 850px;

    margin-bottom: 70px;
}


.section-label-light {
    color: var(--color-gold);
}


.experiences-header h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 7vw, 100px);

    font-weight: 400;

    line-height: 0.9;

    margin-bottom: 30px;
}


.experiences-header h2 em {
    color: var(--color-gold);

    font-weight: 400;
}


.experiences-intro {
    max-width: 520px;

    color: var(--color-gray);

    font-size: 17px;

    line-height: 1.7;
}


/* =========================
   EXPERIENCES GRID
   ========================= */

.experiences-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top:
        1px solid rgba(244, 240, 231, 0.16);

    border-left:
        1px solid rgba(244, 240, 231, 0.16);
}


/* =========================
   EXPERIENCE CARD
   ========================= */

.experience-card {
    position: relative;

    min-height: 430px;

    padding: 35px;

    border-right:
        1px solid rgba(244, 240, 231, 0.16);

    border-bottom:
        1px solid rgba(244, 240, 231, 0.16);

    color: var(--color-cream);

    text-decoration: none;

    overflow: hidden;

    transition:
        background-color 0.4s ease,
        transform 0.4s ease;
}


/* NUMBER */

.experience-number {
    display: block;

    color: rgba(244, 240, 231, 0.35);

    font-size: 12px;

    letter-spacing: 3px;

    margin-bottom: 80px;
}


/* CONTENT */

.experience-content p {
    color: var(--color-gold);

    font-size: 10px;

    letter-spacing: 4px;

    margin-bottom: 15px;
}


.experience-content h3 {
    font-family: Georgia, serif;

    font-size: 42px;

    font-weight: 400;

    line-height: 1;

    margin-bottom: 22px;
}


.experience-content > span {
    display: block;

    max-width: 300px;

    color: var(--color-gray);

    font-size: 14px;

    line-height: 1.6;
}


/* ARROW */

.experience-arrow {
    position: absolute;

    right: 30px;
    bottom: 30px;

    width: 50px;
    height: 50px;

    border:
        1px solid rgba(244, 240, 231, 0.35);

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 23px;

    transition: 0.4s ease;
}


/* =========================
   HOVER
   ========================= */

.experience-card:hover {
    background-color: rgba(232, 189, 85, 0.08);

    transform: translateY(-5px);
}


.experience-card:hover .experience-arrow {
    background-color: var(--color-gold);

    color: var(--color-background);

    border-color: var(--color-gold);

    transform: rotate(-35deg);
}


/* MYSTERY CARD */

.mystery-card {
    background:
        radial-gradient(
            circle at top right,
            rgba(89, 211, 202, 0.12),
            transparent 45%
        );
}


.mystery-card:hover {
    background:
        radial-gradient(
            circle at top right,
            rgba(89, 211, 202, 0.22),
            rgba(232, 189, 85, 0.05)
        );
}


/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 1000px) {

    .experiences-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 650px) {

    .experiences {
        padding: 90px 22px;
    }


    .experiences-grid {
        grid-template-columns: 1fr;
    }


    .experience-card {
        min-height: 360px;
    }


    .experience-number {
        margin-bottom: 55px;
    }


    .experience-content h3 {
        font-size: 37px;
    }

}

/* =========================
   MYSTERY FEATURE
   ========================= */

.mystery-feature {
    position: relative;

    min-height: 760px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    padding: 100px 6%;

    background:
        radial-gradient(
            circle at 70% 40%,
            rgba(89, 211, 202, 0.14),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #031713 0%,
            #0a2b24 55%,
            #071b17 100%
        );
}


/* Големият въпросителен знак */

.mystery-feature-bg {
    position: absolute;

    right: 4%;
    top: 50%;

    transform: translateY(-50%);

    font-family: Georgia, serif;

    font-size: clamp(350px, 45vw, 700px);

    line-height: 1;

    color: rgba(232, 189, 85, 0.055);

    user-select: none;

    pointer-events: none;
}


/* Съдържание */

.mystery-feature-content {
    position: relative;

    z-index: 2;

    width: 100%;

    max-width: 1100px;
}


.mystery-feature-content h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(58px, 8vw, 115px);

    font-weight: 400;

    line-height: 0.92;

    color: var(--color-cream);

    margin-bottom: 35px;
}


.mystery-feature-content h2 em {
    color: var(--color-gold);

    font-weight: 400;
}


.mystery-feature-text {
    max-width: 590px;

    color: var(--color-gray);

    font-size: 18px;

    line-height: 1.8;

    margin-bottom: 40px;
}


/* BUTTON */

.mystery-feature-btn {
    display: inline-block;

    padding: 19px 32px;

    border-radius: 50px;

    background-color: var(--color-gold);

    color: #071b17;

    text-decoration: none;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1.5px;

    transition: 0.3s ease;
}


.mystery-feature-btn:hover {
    background-color: var(--color-gold-light);

    transform: translateY(-4px);
}


/* MOBILE */

@media (max-width: 700px) {

    .mystery-feature {
        min-height: 650px;

        padding: 80px 22px;
    }


    .mystery-feature-bg {
        right: -15%;

        font-size: 420px;
    }


    .mystery-feature-content h2 {
        font-size: 55px;
    }


    .mystery-feature-text {
        font-size: 16px;
    }

}

/* =========================
   WHY ENEV HOLIDAY
   ========================= */

.why-us {
    padding: 130px 6%;

    background-color: var(--color-cream);

    color: var(--color-background);
}


/* HEADER */

.why-us-header {
    display: grid;

    grid-template-columns: 1.5fr 1fr;

    gap: 60px;

    align-items: end;

    margin-bottom: 80px;
}


.why-us-header .section-label {
    grid-column: 1 / -1;
}


.why-us-header h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 7vw, 95px);

    font-weight: 400;

    line-height: 0.92;
}


.why-us-header h2 em {
    color: #a77b24;

    font-weight: 400;
}


.why-us-header > p {
    max-width: 500px;

    font-size: 17px;

    line-height: 1.8;

    color: #53605c;
}


/* =========================
   STATS
   ========================= */

.stats-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    border-top: 1px solid rgba(3, 23, 19, 0.18);

    border-left: 1px solid rgba(3, 23, 19, 0.18);
}


.stat-item {
    min-height: 250px;

    padding: 35px;

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    border-right: 1px solid rgba(3, 23, 19, 0.18);

    border-bottom: 1px solid rgba(3, 23, 19, 0.18);

    transition: 0.4s ease;
}


.stat-item:hover {
    background-color: #efe7d8;

    transform: translateY(-5px);
}


.stat-number {
    font-family: Georgia, serif;

    font-size: clamp(55px, 6vw, 85px);

    color: #a77b24;

    line-height: 1;

    margin-bottom: 18px;
}


.stat-item p {
    font-size: 14px;

    text-transform: uppercase;

    letter-spacing: 2px;

    color: #53605c;
}


/* MOBILE */

@media (max-width: 900px) {

    .why-us-header {
        grid-template-columns: 1fr;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 550px) {

    .why-us {
        padding: 85px 22px;
    }

    .stats-grid {
        grid-template-columns: 1fr;
    }

    .stat-item {
        min-height: 190px;
    }

}

/* =========================
   ENQUIRY PAGE
   ========================= */

.enquiry-page {
    min-height: calc(100vh - 100px);

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 80px;

    padding: 100px 6%;

    background:
        radial-gradient(
            circle at top left,
            rgba(89, 211, 202, 0.12),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #071b17,
            #0a2b24
        );
}


/* LEFT SIDE */

.enquiry-intro {
    max-width: 650px;
}


.enquiry-intro h1 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 6vw, 95px);

    font-weight: 400;

    line-height: 0.92;

    color: var(--color-cream);

    margin-bottom: 30px;
}


.enquiry-intro h1 em {
    color: var(--color-gold);

    font-weight: 400;
}


.enquiry-intro > p:last-child {
    max-width: 520px;

    color: var(--color-gray);

    font-size: 17px;

    line-height: 1.8;
}


/* =========================
   FORM
   ========================= */

.enquiry-form-wrapper {
    background-color: var(--color-cream);

    padding: 45px;

    border-radius: 8px;
}


.enquiry-form {
    display: flex;

    flex-direction: column;

    gap: 24px;
}


.form-row {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 20px;
}


.form-group {
    display: flex;

    flex-direction: column;

    gap: 9px;
}


.form-group label {
    color: #17332d;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;
}


.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;

    padding: 16px 15px;

    border: 1px solid #cbc8bd;

    background-color: transparent;

    color: #17332d;

    font-family: inherit;

    font-size: 15px;

    outline: none;

    transition: 0.3s;
}


.form-group textarea {
    resize: vertical;
}


.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #a77b24;

    box-shadow:
        0 0 0 2px rgba(167, 123, 36, 0.12);
}


/* SUBMIT BUTTON */

.form-submit-btn {
    margin-top: 10px;

    padding: 19px 30px;

    border: none;

    border-radius: 50px;

    background-color: var(--color-gold);

    color: #071b17;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 1.5px;

    cursor: pointer;

    transition: 0.3s;
}


.form-submit-btn:hover {
    background-color: var(--color-gold-light);

    transform: translateY(-3px);
}


/* BACK TO HOME */

.back-home {
    color: var(--color-cream);

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2px;
}


/* MOBILE */

@media (max-width: 900px) {

    .enquiry-page {
        grid-template-columns: 1fr;

        padding: 70px 25px;
    }

}


@media (max-width: 600px) {

    .form-row {
        grid-template-columns: 1fr;
    }


    .enquiry-form-wrapper {
        padding: 30px 20px;
    }


    .enquiry-intro h1 {
        font-size: 50px;
    }

}

/* =========================
   CONTACT PAGE
   ========================= */

.contact-page {
    min-height: calc(100vh - 100px);

    padding: 100px 6% 130px;

    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(89, 211, 202, 0.12),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #071b17,
            #0a2b24
        );

    color: var(--color-cream);
}


/* INTRO */

.contact-intro {
    max-width: 900px;

    margin-bottom: 80px;
}


.contact-intro h1 {
    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 7vw, 105px);

    font-weight: 400;

    line-height: 0.92;

    margin-bottom: 30px;
}


.contact-intro h1 em {
    color: var(--color-gold);

    font-weight: 400;
}


.contact-intro > p:last-child {
    max-width: 600px;

    color: var(--color-gray);

    font-size: 18px;

    line-height: 1.8;
}


/* =========================
   CONTACT LAYOUT
   ========================= */

.contact-layout {
    display: grid;

    grid-template-columns: 0.9fr 1.1fr;

    gap: 80px;
}


/* =========================
   CONTACT INFO
   ========================= */

.contact-info {
    border-top:
        1px solid rgba(244, 240, 231, 0.18);
}


.contact-info-item {
    padding: 28px 0;

    border-bottom:
        1px solid rgba(244, 240, 231, 0.18);
}


.contact-small {
    display: block;

    color: var(--color-gold);

    font-size: 10px;

    letter-spacing: 4px;

    margin-bottom: 12px;
}


.contact-info-item a,
.contact-info-item p {
    color: var(--color-cream);

    text-decoration: none;

    font-family: Georgia, serif;

    font-size: 27px;

    line-height: 1.4;
}


.contact-info-item a {
    transition: 0.3s;
}


.contact-info-item > a:hover {
    color: var(--color-gold);
}


/* SOCIAL LINKS */

.social-links {
    display: flex;

    flex-wrap: wrap;

    gap: 20px;
}


.social-links a {
    font-family: inherit;

    font-size: 14px;

    text-transform: uppercase;

    letter-spacing: 2px;
}


/* =========================
   CONTACT FORM
   ========================= */

.contact-form-wrapper {
    background-color: var(--color-cream);

    padding: 45px;

    border-radius: 8px;
}


.contact-form-title {
    color: #a77b24;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 4px;

    margin-bottom: 35px;
}


.contact-form {
    display: flex;

    flex-direction: column;

    gap: 24px;
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 900px) {

    .contact-layout {
        grid-template-columns: 1fr;

        gap: 50px;
    }

}


@media (max-width: 600px) {

    .contact-page {
        padding: 70px 22px 90px;
    }


    .contact-info-item a,
    .contact-info-item p {
        font-size: 22px;
    }


    .contact-form-wrapper {
        padding: 30px 20px;
    }

}

/* =========================
   FOOTER
   ========================= */

.site-footer {
    background-color: #031713;

    color: var(--color-cream);

    padding: 80px 6% 30px;

    border-top: 1px solid rgba(244, 240, 231, 0.12);
}


/* TOP PART */

.footer-top {
    display: grid;

    grid-template-columns: 2fr 1fr 1fr 1fr;

    gap: 60px;

    padding-bottom: 60px;
}


/* BRAND */

.footer-logo {
    display: inline-block;

    color: var(--color-cream);

    text-decoration: none;

    font-size: 22px;

    font-weight: 700;

    letter-spacing: 5px;

    margin-bottom: 20px;
}


.footer-brand p {
    max-width: 300px;

    color: var(--color-gray);

    line-height: 1.7;
}


/* COLUMNS */

.footer-column {
    display: flex;

    flex-direction: column;

    gap: 12px;
}


.footer-column h4 {
    color: var(--color-gold);

    font-size: 10px;

    letter-spacing: 4px;

    margin-bottom: 12px;
}


.footer-column a,
.footer-column p {
    color: var(--color-gray);

    text-decoration: none;

    font-size: 14px;

    line-height: 1.7;
}


.footer-column a {
    transition: 0.3s;
}


.footer-column a:hover {
    color: var(--color-gold);

    transform: translateX(4px);
}


/* BOTTOM */

.footer-bottom {
    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 20px;

    padding-top: 30px;

    border-top: 1px solid rgba(244, 240, 231, 0.12);
}


.footer-bottom p,
.footer-bottom a {
    color: rgba(244, 240, 231, 0.55);

    font-size: 11px;

    text-decoration: none;
}


.footer-bottom-links {
    display: flex;

    gap: 20px;
}


/* MOBILE */

@media (max-width: 900px) {

    .footer-top {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 600px) {

    .site-footer {
        padding: 60px 22px 25px;
    }


    .footer-top {
        grid-template-columns: 1fr;

        gap: 40px;
    }


    .footer-bottom {
        flex-direction: column;

        align-items: flex-start;
    }


    .footer-bottom-links {
        flex-direction: column;

        gap: 8px;
    }

}


/* =========================
   MYSTERY COMPASS INTRO
   Замества старите светлини
   ========================= */

.headlights {
    position: absolute;

    top: 50%;
    bottom: auto;
    left: 50%;

    transform: translate(-50%, -50%);

    width: 430px;
    height: 430px;

    display: block;

    opacity: 0;

    z-index: 1;

    pointer-events: none;

    transition: opacity 1.2s ease;
}


.mystery-screen.lights-on .headlights {
    opacity: 1;
}


/* Външен въртящ се кръг */

.headlight.left-light {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    border-radius: 50%;

    background:
        repeating-conic-gradient(
            from 0deg,
            rgba(232, 189, 85, 0.75) 0deg 1deg,
            transparent 1deg 14deg
        );

    -webkit-mask:
        radial-gradient(
            circle,
            transparent 0%,
            transparent 61%,
            black 62%,
            black 64%,
            transparent 65%
        );

    mask:
        radial-gradient(
            circle,
            transparent 0%,
            transparent 61%,
            black 62%,
            black 64%,
            transparent 65%
        );

    filter: none;

    box-shadow: none;

    animation: compassRotate 18s linear infinite;
}


/* Вътрешно сияние */

.headlight.right-light {
    position: absolute;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    width: 280px;
    height: 280px;

    border: 1px solid rgba(232, 189, 85, 0.28);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(232, 189, 85, 0.12) 0%,
            rgba(89, 211, 202, 0.05) 45%,
            transparent 72%
        );

    filter: none;

    box-shadow:
        0 0 60px rgba(232, 189, 85, 0.16),
        0 0 130px rgba(89, 211, 202, 0.08);

    animation: compassPulse 2.5s ease-in-out infinite alternate;
}


/* Голям загадъчен знак */

.headlight.right-light::before {
    content: "?";

    position: absolute;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    color: rgba(232, 189, 85, 0.11);

    font-family: Georgia, serif;

    font-size: 190px;

    font-weight: 400;
}


@keyframes compassRotate {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }

}


@keyframes compassPulse {

    from {
        transform: translate(-50%, -50%) scale(0.92);
        opacity: 0.55;
    }

    to {
        transform: translate(-50%, -50%) scale(1.08);
        opacity: 1;
    }

}


/* Телефон */

@media (max-width: 700px) {

    .headlights {
        width: 290px;
        height: 290px;
    }

    .headlight.right-light {
        width: 190px;
        height: 190px;
    }

    .headlight.right-light::before {
        font-size: 125px;
    }

}

/* =========================
   THANK YOU PAGE
   ========================= */

.thank-you-page {
    min-height: calc(100vh - 100px);

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 100px 6%;

    text-align: center;

    background:
        radial-gradient(
            circle at center,
            rgba(89, 211, 202, 0.13),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #071b17,
            #0a2b24
        );
}


.thank-you-content {
    max-width: 950px;
}


.thank-you-icon {
    width: 95px;
    height: 95px;

    margin: 0 auto 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(232, 189, 85, 0.65);
    border-radius: 50%;

    color: var(--color-gold);

    font-family: Georgia, serif;
    font-size: 45px;

    box-shadow:
        0 0 35px rgba(232, 189, 85, 0.15);

    animation: thankYouPulse 2s ease-in-out infinite alternate;
}


@keyframes thankYouPulse {

    from {
        transform: scale(0.95);

        box-shadow:
            0 0 25px rgba(232, 189, 85, 0.12);
    }

    to {
        transform: scale(1.05);

        box-shadow:
            0 0 55px rgba(232, 189, 85, 0.28);
    }

}


.thank-you-content h1 {
    margin-bottom: 30px;

    color: var(--color-cream);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 8vw, 110px);

    font-weight: 400;

    line-height: 0.92;
}


.thank-you-content h1 em {
    color: var(--color-gold);

    font-weight: 400;
}


.thank-you-text {
    max-width: 650px;

    margin: 0 auto 45px;

    color: var(--color-gray);

    font-size: 18px;

    line-height: 1.8;
}


.thank-you-actions {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 15px;
}


.thank-you-primary,
.thank-you-secondary {
    display: inline-block;

    padding: 18px 30px;

    border-radius: 50px;

    text-decoration: none;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 1.5px;

    transition: 0.3s ease;
}


.thank-you-primary {
    background-color: var(--color-gold);

    color: #071b17;
}


.thank-you-primary:hover {
    background-color: var(--color-gold-light);

    transform: translateY(-4px);
}


.thank-you-secondary {
    border: 1px solid rgba(244, 240, 231, 0.5);

    color: var(--color-cream);
}


.thank-you-secondary:hover {
    background-color: var(--color-cream);

    color: var(--color-background);

    transform: translateY(-4px);
}


@media (max-width: 700px) {

    .thank-you-page {
        min-height: calc(100vh - 80px);

        padding: 80px 22px;
    }


    .thank-you-icon {
        width: 75px;
        height: 75px;

        font-size: 35px;
    }


    .thank-you-content h1 {
        font-size: 52px;
    }


    .thank-you-text {
        font-size: 16px;
    }


    .thank-you-actions {
        flex-direction: column;
    }


    .thank-you-primary,
    .thank-you-secondary {
        width: 100%;
    }

}

/* =========================
   LEGAL PAGES
   ========================= */

.legal-page {
    min-height: calc(100vh - 100px);

    padding: 100px 6% 130px;

    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(89, 211, 202, 0.10),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #071b17,
            #0a2b24
        );
}


.legal-header {
    max-width: 1050px;

    margin-bottom: 80px;
}


.legal-header h1 {
    margin-bottom: 25px;

    color: var(--color-cream);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 8vw, 110px);

    font-weight: 400;

    line-height: 0.92;
}


.legal-header h1 em {
    color: var(--color-gold);

    font-weight: 400;
}


.legal-header > p:last-child {
    color: var(--color-gray);

    font-size: 14px;

    letter-spacing: 1px;
}


.legal-content {
    max-width: 950px;
}


.legal-section {
    padding: 40px 0;

    border-top:
        1px solid rgba(244, 240, 231, 0.14);
}


.legal-section:last-child {
    border-bottom:
        1px solid rgba(244, 240, 231, 0.14);
}


.legal-section h2 {
    margin-bottom: 22px;

    color: var(--color-gold);

    font-family: Georgia, "Times New Roman", serif;

    font-size: 30px;

    font-weight: 400;
}


.legal-section p,
.legal-section li {
    color: var(--color-gray);

    font-size: 16px;

    line-height: 1.8;
}


.legal-section p + p {
    margin-top: 16px;
}


.legal-section ul {
    margin: 18px 0 18px 22px;
}


.legal-section li {
    margin-bottom: 8px;
}


.legal-section a {
    color: var(--color-gold-light);

    text-decoration: none;
}


.legal-section a:hover {
    text-decoration: underline;
}


@media (max-width: 700px) {

    .legal-page {
        min-height: calc(100vh - 80px);

        padding: 75px 22px 95px;
    }


    .legal-header {
        margin-bottom: 50px;
    }


    .legal-header h1 {
        font-size: 50px;
    }


    .legal-section {
        padding: 32px 0;
    }


    .legal-section h2 {
        font-size: 25px;
    }


    .legal-section p,
    .legal-section li {
        font-size: 15px;
    }

}

/* =========================
   PRIVACY CHECKBOX
   ========================= */

.privacy-check {
    display: flex;
    align-items: flex-start;

    gap: 12px;

    margin-top: 5px;
}


.privacy-check input {
    width: 18px;
    height: 18px;

    margin-top: 2px;

    flex-shrink: 0;

    cursor: pointer;

    accent-color: var(--color-gold);
}


.privacy-check label {
    color: #53605c;

    font-size: 13px;

    line-height: 1.6;

    cursor: pointer;
}


.privacy-check a {
    color: #8a6b27;

    font-weight: 700;

    text-decoration: underline;
}


.privacy-check a:hover {
    color: #5f4718;
}

/* =========================
   MOBILE FIX — 430px и надолу
   ========================= */

@media (max-width: 430px) {

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .site-header {
        height: 78px;
        padding: 0 14px;
        gap: 10px;
    }

    .logo {
        font-size: 14px;
        letter-spacing: 2px;
        white-space: nowrap;
    }

    .header-actions {
        gap: 7px;
        margin-left: auto;
    }

    .enquire-btn {
        padding: 11px 10px;
        font-size: 9px;
        letter-spacing: 0.4px;
        line-height: 1.15;
        text-align: center;
        white-space: nowrap;
    }

    .menu-btn {
        width: 38px;
        height: 38px;
        min-width: 38px;
    }

    .hero {
        min-height: calc(100svh - 78px);
        padding: 55px 20px;
        background-position: center;
    }

    .hero-content {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .hero-small-text {
        max-width: 100%;
        font-size: 9px;
        line-height: 1.6;
        letter-spacing: 2px;
    }

    .hero h1 {
        max-width: 100%;
        font-size: clamp(43px, 13vw, 52px);
        line-height: 0.95;
        letter-spacing: -1px;
        overflow-wrap: break-word;
    }

    .hero-description {
        max-width: 100%;
        font-size: 15px;
        line-height: 1.5;
    }

    .destination-buttons {
        width: 100%;
        gap: 8px;
    }

    .destination-buttons a,
    .destination-buttons button {
        padding: 10px 12px;
        font-size: 9px;
    }

    .surprise-btn {
        max-width: 100%;
        padding: 15px 20px;
        font-size: 11px;
    }
}

/* Скрива компаса само по време на пътуването */
.mystery-screen.journey-active .headlights {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* ==================================
   ENEV GROUP — EXACT BLUE/GOLD THEME
   ================================== */

:root {
    --color-background: #014047;
    --color-background-light: #0b6b7c;
    --color-green: #0d7f98;

    --color-gold: #e1c285;
    --color-gold-light: #efdba4;

    --color-cream: #f8f4eb;
    --color-gray: #c6d0d2;
    --color-turquoise: #1693ac;
}


/* ОСНОВЕН ФОН */

body {
    background:
        linear-gradient(
            135deg,
            #013037 0%,
            #01535d 50%,
            #011e24 100%
        );
}


/* HEADER */

.site-header {
    background-color: #014047;
    border-bottom-color: rgba(225, 194, 133, 0.25);
}


/* СТРАНИЧНО МЕНЮ */

.side-menu {
    background-color: #013037;
}


/* HERO */

.hero {
    background:
        linear-gradient(
            90deg,
            rgba(1, 48, 55, 0.94) 0%,
            rgba(1, 83, 93, 0.68) 52%,
            rgba(22, 147, 172, 0.16) 100%
        ),
        url("images/hero.jpg.png");

    background-size: cover;
    background-position: center;
}


/* ТЪМНИ СЕКЦИИ */

.experiences,
.mystery-feature,
.enquiry-page,
.contact-page,
.thank-you-page,
.legal-page {
    background:
        radial-gradient(
            circle at top right,
            rgba(79, 173, 194, 0.18),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #013037 0%,
            #01535d 55%,
            #011e24 100%
        );
}


/* MYSTERY НАЧАЛЕН ЕКРАН */

.mystery-screen {
    background:
        radial-gradient(
            circle at center,
            #0b6b7c 0%,
            #014047 48%,
            #011e24 100%
        );
}


/* MYSTERY КАРТА */

.mystery-card {
    background:
        radial-gradient(
            circle at top right,
            rgba(79, 173, 194, 0.22),
            transparent 46%
        );
}


.mystery-card:hover {
    background:
        radial-gradient(
            circle at top right,
            rgba(79, 173, 194, 0.34),
            rgba(225, 194, 133, 0.08)
        );
}


/* НЕБЕТО ПРИ АВТОБУСА */

.journey-sky {
    background:
        radial-gradient(circle at 12% 18%, white 0 1px, transparent 2px),
        radial-gradient(circle at 28% 10%, white 0 1px, transparent 2px),
        radial-gradient(circle at 48% 22%, white 0 1px, transparent 2px),
        radial-gradient(circle at 67% 14%, white 0 1px, transparent 2px),
        radial-gradient(circle at 82% 25%, white 0 1px, transparent 2px),
        radial-gradient(circle at 92% 8%, white 0 1px, transparent 2px),
        linear-gradient(
            to bottom,
            #011e24 0%,
            #014047 55%,
            #b99d83 100%
        );
}


/* АВТОБУС */

.bus {
    background:
        linear-gradient(
            135deg,
            #013037,
            #0b6b7c
        );

    border-color: rgba(225, 194, 133, 0.85);
}


.bus-window {
    background:
        linear-gradient(
            145deg,
            #0d7f98,
            #011e24
        );
}


/* ТАБЕЛИ С ДЪРЖАВИТЕ */

.road-sign {
    background-color: #014047;
    border-color: var(--color-gold);
}


/* ФИНАЛЕН MYSTERY ЕКРАН */

.journey-final {
    background:
        radial-gradient(
            circle at center,
            rgba(11, 107, 124, 0.97),
            rgba(1, 30, 36, 0.99)
        );
}


/* СЛОЙ ВЪРХУ СНИМКИТЕ */

.destination-card-overlay {
    background:
        linear-gradient(
            to top,
            rgba(1, 30, 36, 0.95) 0%,
            rgba(1, 83, 93, 0.28) 65%,
            rgba(22, 147, 172, 0.06) 100%
        );
}


.destination-card:hover .destination-card-overlay {
    background:
        linear-gradient(
            to top,
            rgba(1, 30, 36, 0.96),
            rgba(22, 147, 172, 0.08)
        );
}


/* FOOTER */

.site-footer {
    background-color: #011e24;
    border-top-color: rgba(225, 194, 133, 0.25);
}


/* ЗЛАТНИ БУТОНИ */

.enquire-btn,
.side-enquire,
.surprise-btn,
.mystery-start-btn,
.final-primary-btn,
.mystery-feature-btn,
.form-submit-btn,
.thank-you-primary {
    background-color: var(--color-gold);
    color: #013037;
}


.enquire-btn:hover,
.surprise-btn:hover,
.mystery-start-btn:hover,
.final-primary-btn:hover,
.mystery-feature-btn:hover,
.form-submit-btn:hover,
.thank-you-primary:hover {
    background-color: var(--color-gold-light);
}


/* ФОРМИ */

.form-group label,
.form-group input,
.form-group select,
.form-group textarea {
    color: #014047;
}


.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: var(--color-gold);

    box-shadow:
        0 0 0 2px rgba(225, 194, 133, 0.20);
}

/* ==================================
   ENEV GROUP TEXT LOGO
   ================================== */

.brand-logo {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;

    color: var(--color-gold);

    text-decoration: none;
    white-space: nowrap;

    line-height: 1;
}


.brand-main {
    color: #e1c285;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 33px;
    font-weight: 500;

    letter-spacing: 2px;

    text-shadow:
        0 2px 12px rgba(225, 194, 133, 0.18);
}


.brand-tagline {
    margin-top: 7px;

    color: #efdba4;

    font-family: Arial, Helvetica, sans-serif;

    font-size: 7px;
    font-weight: 600;

    letter-spacing: 2.5px;
}


/* LOGО НА ТАБЛЕТ */

@media (max-width: 700px) {

    .brand-main {
        font-size: 22px;
        letter-spacing: 1.4px;
    }

    .brand-tagline {
        margin-top: 5px;

        font-size: 5.5px;
        letter-spacing: 1.4px;
    }
}


/* ЛОГО НА ТЕЛЕФОН */

@media (max-width: 430px) {

    .brand-main {
        font-size: 17px;
        letter-spacing: 0.8px;
    }

    .brand-tagline {
        margin-top: 4px;

        font-size: 4.5px;
        letter-spacing: 0.8px;
    }
}

/* ==================================
   ENEV GROUP HERO BRAND
   ================================== */

/* Малкото лого в header-а */

.logo {
    color: #e1c285;
}


/* Голямото лого върху началната снимка */

.hero-content {
    width: 100%;
    max-width: 1100px;
}


.hero-brand {
    margin-bottom: 35px;
}


.hero .hero-brand h1 {
    margin-bottom: 18px;

    color: #e1c285;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 9vw, 138px);
    font-weight: 400;

    line-height: 0.85;
    letter-spacing: 1px;

    white-space: nowrap;

    text-shadow:
        0 3px 18px rgba(0, 0, 0, 0.25),
        0 0 25px rgba(225, 194, 133, 0.10);
}


.hero-brand-tagline {
    color: #efdba4;

    font-size: clamp(9px, 1vw, 15px);
    font-weight: 600;

    letter-spacing: clamp(2px, 0.45vw, 6px);

    white-space: nowrap;
}


.hero-brand-tagline span {
    padding: 0 7px;

    color: #e1c285;
}


/* ТЕЛЕФОН */

@media (max-width: 700px) {

    .hero-brand {
        margin-bottom: 28px;
    }

    .hero .hero-brand h1 {
        margin-bottom: 12px;

        font-size: clamp(48px, 14vw, 62px);

        letter-spacing: -1px;
    }

    .hero-brand-tagline {
        font-size: 7px;
        letter-spacing: 1.2px;
    }

    .hero-brand-tagline span {
        padding: 0 3px;
    }
}

/* ==================================
   ENEV GROUP SERVICES
   ================================== */

.group-services {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 12px;

    padding: 14px;

    background-color: #014047;
}


.group-service-card {
    position: relative;

    min-height: 390px;

    overflow: hidden;

    border: 1px solid rgba(225, 194, 133, 0.45);
    border-radius: 5px;

    background-color: #013037;
    background-size: cover;
    background-position: center;

    color: #f8f4eb;

    text-decoration: none;

    transition:
        transform 0.4s ease,
        border-color 0.4s ease;
}


/* Снимки на четирите услуги */

.service-holiday {
    background-image: url("images/holiday.jpg");
}

.service-transfer {
    background-image: url("images/vip-transfer.jpg");
}

.service-transport {
    background-image: url("images/transport.jpg");
}

.service-events {
    background-image: url("images/populyarni_mesta_v_sofiya_1.webp");
     background-position: center center !important;
    background-size: cover !important;
}


/* Тъмен синкав слой */

.group-service-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(1, 30, 36, 0.97) 0%,
            rgba(1, 64, 71, 0.64) 55%,
            rgba(11, 107, 124, 0.12) 100%
        );

    transition: 0.4s ease;
}


/* Съдържание */

.group-service-content {
    position: absolute;

    inset: 0;

    z-index: 2;

    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    padding: 28px;
}


.group-service-number {
    position: absolute;

    top: 25px;
    left: 28px;

    color: #e1c285;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 3px;
}


.group-service-content h2 {
    margin-bottom: 14px;

    color: #e1c285;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 31px;
    font-weight: 400;

    line-height: 1.05;
}


.group-service-content p {
    max-width: 230px;

    padding-right: 35px;

    color: #f8f4eb;

    font-size: 12px;

    line-height: 1.5;
}


.group-service-arrow {
    position: absolute;

    right: 25px;
    bottom: 25px;

    color: #e1c285;

    font-size: 28px;

    transition: transform 0.4s ease;
}


/* Ефект при посочване */

.group-service-card:hover {
    transform: translateY(-7px);

    border-color: #e1c285;
}


.group-service-card:hover .group-service-overlay {
    background:
        linear-gradient(
            to top,
            rgba(1, 30, 36, 0.98) 0%,
            rgba(11, 107, 124, 0.52) 65%,
            rgba(22, 147, 172, 0.10) 100%
        );
}


.group-service-card:hover .group-service-arrow {
    transform: translateX(7px);
}


/* ТАБЛЕТ */

@media (max-width: 1000px) {

    .group-services {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ТЕЛЕФОН */

@media (max-width: 600px) {

    .group-services {
        grid-template-columns: 1fr;

        padding: 10px;
    }

    .group-service-card {
        min-height: 330px;
    }

    .group-service-content h2 {
        font-size: 29px;
    }
}

/* ==================================
   HERO + SERVICE CARDS – НОВО ПОДРЕЖДАНЕ
   ================================== */

.hero {
    min-height: 680px;
    padding-bottom: 150px;
}

.group-services {
    position: relative;
    z-index: 5;
    margin-top: -120px;
    padding: 0 4% 70px;
    background: linear-gradient(
        to bottom,
        transparent 0,
        #013037 120px,
        #013037 100%
    );
}

.group-services-grid {
    max-width: 1450px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.group-service-card {
    min-height: 390px;
    border: 1px solid rgba(225, 194, 133, 0.65);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.35);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.group-service-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 25px 55px rgba(0, 0, 0, 0.5);
}

/* Таблет */
@media (max-width: 1000px) {
    .hero {
        min-height: 650px;
        padding-bottom: 100px;
    }

    .group-services {
        margin-top: -70px;
    }

    .group-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .group-service-card {
        min-height: 360px;
    }
}

/* Телефон */
@media (max-width: 600px) {
    .hero {
        min-height: 620px;
        padding-bottom: 45px;
    }

    .group-services {
        margin-top: 0;
        padding: 20px 18px 50px;
        background: #013037;
    }

    .group-services-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .group-service-card {
        min-height: 330px;
    }
}

/* ==================================
   CINEMATIC HERO BACKGROUND
   ================================== */

.hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: none !important;
}

/* Анимираната снимка */
.hero::before {
    content: "";
    position: absolute;
    inset: -6%;
    z-index: -2;

    background-image: url("images/home-background.png.png") !important;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    animation: heroCinematic 16s ease-in-out infinite alternate;
}

/* Тъмен слой + лек златист отблясък */
.hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(22, 76, 88, 0.38) 0%,
            rgba(35, 92, 105, 0.15) 45%,
            rgba(228, 163, 102, 0.05) 75%,
            rgba(112, 74, 41, 0.10) 100%
        );

    background-size: 180% 100%;
    animation: heroLight 12s ease-in-out infinite alternate;
}
/* Бавно приближаване и движение */
@keyframes heroCinematic {
    0% {
        transform: scale(1);
        background-position: 45% center;
    }

    100% {
        transform: scale(1.1);
        background-position: 58% center;
    }
}

/* Движение на светлината */
@keyframes heroLight {
    0% {
        background-position: 0% center;
    }

    100% {
        background-position: 100% center;
    }
}

/* Съдържанието остава над снимката */
.hero-content {
    position: relative;
    z-index: 2;
}

/* По-лек ефект на телефон */
@media (max-width: 600px) {
    .hero::before {
        inset: -3%;
        animation-duration: 20s;
        background-position: 62% center;
    }

    @keyframes heroCinematic {
        0% {
            transform: scale(1);
            background-position: 60% center;
        }

        100% {
            transform: scale(1.07);
            background-position: 67% center;
        }
    }
}

/* Спира анимацията при настройка за намалено движение */
@media (prefers-reduced-motion: reduce) {
    .hero::before,
    .hero::after {
        animation: none;
    }
}

/* Снимка – Почивки и екскурзии */

.holiday-card {
    background:
        linear-gradient(
            rgba(1, 48, 55, 0.25),
            rgba(1, 48, 55, 0.82)
        ),
        url("images/holiday.jpg") center / cover no-repeat !important;
}

/* Отделна страница – Почивки и екскурзии */

.holiday-experiences {
    min-height: 100vh;
    padding-top: 160px;
}

.holiday-experiences h1 {
    color: var(--color-cream);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(55px, 7vw, 110px);
    line-height: 0.9;
}

.holiday-experiences h1 em {
    color: #e1c285;
    font-weight: normal;
}

@media (max-width: 700px) {
    .holiday-experiences {
        padding-top: 125px;
    }

    .holiday-experiences h1 {
        font-size: 52px;
    }
}

/* ==================================
   АВТОБУСЕН ТРАНСПОРТ
   ================================== */

.transport-page {
    background: #013037;
    color: #f4f0e7;
}

/* HERO */

.transport-hero {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    padding: 150px 7% 90px;
    overflow: hidden;

    background:
        url("images/transport.jpg")
        center / cover no-repeat;
}

.transport-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(1, 35, 40, 0.96) 0%,
            rgba(1, 48, 55, 0.78) 42%,
            rgba(1, 48, 55, 0.25) 100%
        );
}

.transport-hero-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
}

.transport-label {
    margin-bottom: 25px;
    color: #e1c285;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 5px;
}

.transport-hero h1 {
    margin: 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(65px, 9vw, 145px);
    font-weight: normal;
    line-height: 0.83;
}

.transport-hero h1 em {
    color: #e1c285;
    font-weight: normal;
}

.transport-description {
    max-width: 620px;
    margin: 35px 0;
    color: rgba(244, 240, 231, 0.85);
    font-size: 19px;
    line-height: 1.7;
}

.transport-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.transport-primary-btn,
.transport-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    padding: 0 30px;
    border-radius: 40px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.transport-primary-btn {
    background: #e1c285;
    color: #013037;
}

.transport-secondary-btn {
    border: 1px solid rgba(244, 240, 231, 0.55);
    color: #f4f0e7;
}

.transport-primary-btn:hover,
.transport-secondary-btn:hover {
    transform: translateY(-4px);
}

.transport-secondary-btn:hover {
    background: #f4f0e7;
    color: #013037;
}


/* SERVICES */

.transport-services {
    padding: 110px 5%;
    background:
        linear-gradient(
            135deg,
            #013037 0%,
            #014d58 55%,
            #0b6b7c 100%
        );
}

.transport-section-heading {
    max-width: 1400px;
    margin: 0 auto 65px;
}

.transport-section-heading > p {
    margin-bottom: 18px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.transport-section-heading h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 7vw, 100px);
    font-weight: normal;
    line-height: 0.95;
}

.transport-section-heading h2 em {
    color: #e1c285;
    font-weight: normal;
}

.transport-services-grid {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.transport-service-card {
    min-height: 480px;
    padding: 38px;
    border: 1px solid rgba(225, 194, 133, 0.25);
    color: #f4f0e7;
    text-decoration: none;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    transition:
        background 0.35s,
        transform 0.35s;
}

.transport-service-card:hover {
    position: relative;
    z-index: 2;
    background: rgba(225, 194, 133, 0.16);
    transform: translateY(-10px);
}

.transport-number {
    color: rgba(225, 194, 133, 0.65);
    font-size: 13px;
    letter-spacing: 4px;
}

.transport-small-title {
    margin-bottom: 18px;
    color: #e1c285;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.transport-service-card h3 {
    margin-bottom: 25px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: normal;
    line-height: 1;
}

.transport-service-card div > span {
    display: block;
    color: rgba(244, 240, 231, 0.78);
    font-size: 15px;
    line-height: 1.7;
}

.transport-service-card strong {
    align-self: flex-end;
    width: 52px;
    height: 52px;
    border: 1px solid rgba(225, 194, 133, 0.5);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #e1c285;
    font-size: 21px;
}


/* ADVANTAGES */

.transport-advantages {
    padding: 90px 6%;
    background: #f4f0e7;
    color: #013037;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
}

.transport-advantage {
    padding: 45px;
    border-left: 1px solid rgba(1, 48, 55, 0.2);
}

.transport-advantage span {
    color: #b18a3d;
    font-size: 13px;
    letter-spacing: 4px;
}

.transport-advantage h3 {
    margin: 25px 0 15px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: normal;
}

.transport-advantage p {
    max-width: 350px;
    line-height: 1.7;
}


/* FINAL CTA */

.transport-cta {
    padding: 120px 6%;
    text-align: center;
    background: #013037;
}

.transport-cta > p {
    margin-bottom: 22px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.transport-cta h2 {
    margin-bottom: 40px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 7vw, 100px);
    font-weight: normal;
    line-height: 1;
}

.transport-cta h2 em {
    color: #e1c285;
    font-weight: normal;
}

.transport-cta > a {
    display: inline-flex;
    padding: 20px 32px;
    border-radius: 40px;
    background: #e1c285;
    color: #013037;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.transport-cta > a:hover {
    transform: translateY(-4px);
    background: #efDBa4;
}


/* TABLET */

@media (max-width: 1000px) {
    .transport-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .transport-advantages {
        grid-template-columns: 1fr;
    }
}


/* TELEPHONE */

@media (max-width: 600px) {
    .transport-hero {
        min-height: 680px;
        padding: 135px 22px 70px;
        background-position: 60% center;
    }

    .transport-hero h1 {
        font-size: 53px;
    }

    .transport-description {
        font-size: 16px;
    }

    .transport-buttons {
        flex-direction: column;
        align-items: flex-start;
    }

    .transport-primary-btn,
    .transport-secondary-btn {
        width: 100%;
    }

    .transport-services {
        padding: 80px 18px;
    }

    .transport-services-grid {
        grid-template-columns: 1fr;
    }

    .transport-service-card {
        min-height: 390px;
        padding: 30px;
    }

    .transport-service-card h3 {
        font-size: 38px;
    }

    .transport-advantages {
        padding: 60px 18px;
    }

    .transport-advantage {
        padding: 38px 20px;
    }

    .transport-cta {
        padding: 85px 20px;
    }
}

/* Снимка на бутона VIP трансфери */

.group-services-grid .group-service-card:nth-child(2) {
    background:
        linear-gradient(
            to top,
            rgba(1, 48, 55, 0.92) 0%,
            rgba(1, 48, 55, 0.28) 65%,
            rgba(1, 48, 55, 0.1) 100%
        ),
        url("images/vip-transfer.jpg")
        center 75% / cover no-repeat !important;
}

/* ==================================
   VIP TRANSFER PAGE
   ================================== */

.vip-page {
    background: #013037;
    color: #f4f0e7;
}

/* HERO */

.vip-hero {
    position: relative;
    min-height: 800px;
    padding: 160px 7% 80px;

    display: flex;
    align-items: center;
    overflow: hidden;

    background:
        url("images/vip-transfer.jpg")
        center 76% / cover no-repeat;
}

.vip-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(1, 35, 40, 0.96) 0%,
            rgba(1, 48, 55, 0.75) 42%,
            rgba(1, 48, 55, 0.08) 78%
        );
}

.vip-hero-content {
    position: relative;
    z-index: 2;
    max-width: 850px;
}

.vip-label {
    margin-bottom: 24px;
    color: #e1c285;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 6px;
}

.vip-hero h1 {
    margin: 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(75px, 10vw, 155px);
    font-weight: normal;
    line-height: 0.8;
}

.vip-hero h1 em {
    color: #e1c285;
    font-weight: normal;
}

.vip-description {
    max-width: 580px;
    margin: 38px 0;
    color: rgba(244, 240, 231, 0.88);
    font-size: 19px;
    line-height: 1.7;
}

.vip-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.vip-primary-btn,
.vip-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
    padding: 0 32px;
    border-radius: 40px;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.vip-primary-btn {
    background: #e1c285;
    color: #013037;
}

.vip-secondary-btn {
    border: 1px solid rgba(244, 240, 231, 0.6);
    color: #f4f0e7;
}

.vip-primary-btn:hover,
.vip-secondary-btn:hover {
    transform: translateY(-4px);
}

.vip-secondary-btn:hover {
    background: #f4f0e7;
    color: #013037;
}

.vip-scroll-text {
    position: absolute;
    right: 35px;
    bottom: 35px;
    z-index: 2;

    color: rgba(244, 240, 231, 0.75);
    font-size: 10px;
    letter-spacing: 4px;
}


/* INTRO */

.vip-intro {
    max-width: 1450px;
    margin: 0 auto;
    padding: 120px 6%;

    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    gap: 100px;
    align-items: end;
}

.vip-intro-title > p,
.vip-services-heading > p {
    margin-bottom: 22px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.vip-intro-title h2,
.vip-services-heading h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(52px, 7vw, 100px);
    font-weight: normal;
    line-height: 0.95;
}

.vip-intro-title h2 em,
.vip-services-heading h2 em {
    color: #e1c285;
    font-weight: normal;
}

.vip-intro-text {
    color: rgba(244, 240, 231, 0.78);
    font-size: 17px;
    line-height: 1.8;
}

.vip-intro-text p + p {
    margin-top: 20px;
}


/* SERVICES */

.vip-services {
    padding: 110px 5%;
    background:
        linear-gradient(
            135deg,
            #014047 0%,
            #0b6b7c 100%
        );
}

.vip-services-heading {
    max-width: 1400px;
    margin: 0 auto 65px;
}

.vip-services-grid {
    max-width: 1400px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.vip-service-card {
    min-height: 480px;
    padding: 38px;
    border: 1px solid rgba(225, 194, 133, 0.28);
    color: #f4f0e7;
    text-decoration: none;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    transition:
        transform 0.35s,
        background 0.35s;
}

.vip-service-card:hover {
    position: relative;
    z-index: 2;
    background: rgba(225, 194, 133, 0.16);
    transform: translateY(-10px);
}

.vip-number {
    color: rgba(225, 194, 133, 0.7);
    font-size: 13px;
    letter-spacing: 4px;
}

.vip-card-label {
    margin-bottom: 18px;
    color: #e1c285;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.vip-service-card h3 {
    margin-bottom: 24px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: normal;
    line-height: 1;
}

.vip-service-card div > p:last-child {
    color: rgba(244, 240, 231, 0.78);
    font-size: 15px;
    line-height: 1.7;
}

.vip-service-card strong {
    align-self: flex-end;
    width: 52px;
    height: 52px;
    border: 1px solid rgba(225, 194, 133, 0.55);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #e1c285;
    font-size: 21px;
}


/* BENEFITS */

.vip-benefits {
    padding: 90px 6%;
    background: #f4f0e7;
    color: #013037;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.vip-benefit {
    padding: 45px;
    border-left: 1px solid rgba(1, 48, 55, 0.2);
}

.vip-benefit span {
    color: #b18a3d;
    font-size: 13px;
    letter-spacing: 4px;
}

.vip-benefit h3 {
    margin: 25px 0 15px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 39px;
    font-weight: normal;
}

.vip-benefit p {
    max-width: 340px;
    line-height: 1.7;
}


/* FINAL */

.vip-final {
    padding: 120px 6%;
    text-align: center;
    background: #013037;
}

.vip-final > p {
    margin-bottom: 22px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.vip-final h2 {
    margin-bottom: 40px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 7vw, 100px);
    font-weight: normal;
    line-height: 1;
}

.vip-final h2 em {
    color: #e1c285;
    font-weight: normal;
}

.vip-final > a {
    display: inline-flex;
    padding: 21px 34px;
    border-radius: 40px;
    background: #e1c285;
    color: #013037;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.vip-final > a:hover {
    transform: translateY(-4px);
    background: #efdba4;
}


/* TABLET */

@media (max-width: 1000px) {
    .vip-intro {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .vip-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .vip-benefits {
        grid-template-columns: 1fr;
    }
}


/* PHONE */

@media (max-width: 600px) {
    .vip-hero {
        min-height: 720px;
        padding: 140px 22px 70px;
        align-items: flex-start;
        background-position: 58% 80%;
    }

    .vip-hero-overlay {
        background:
            linear-gradient(
                to bottom,
                rgba(1, 35, 40, 0.94) 0%,
                rgba(1, 48, 55, 0.58) 55%,
                rgba(1, 48, 55, 0.22) 100%
            );
    }

    .vip-hero h1 {
        font-size: 58px;
    }

    .vip-description {
        font-size: 16px;
    }

    .vip-buttons {
        flex-direction: column;
    }

    .vip-primary-btn,
    .vip-secondary-btn {
        width: 100%;
    }

    .vip-scroll-text {
        display: none;
    }

    .vip-intro {
        padding: 80px 22px;
    }

    .vip-services {
        padding: 80px 18px;
    }

    .vip-services-grid {
        grid-template-columns: 1fr;
    }

    .vip-service-card {
        min-height: 390px;
        padding: 30px;
    }

    .vip-benefits {
        padding: 60px 18px;
    }

    .vip-benefit {
        padding: 38px 20px;
    }

    .vip-final {
        padding: 85px 20px;
    }
}

/* ==================================
   TRANSPORT GALLERY
   ================================== */

.transport-gallery {
    padding: 110px 5%;
    background: #013037;
}

.transport-gallery-heading {
    max-width: 1400px;
    margin: 0 auto 55px;
}

.transport-gallery-heading > p {
    margin-bottom: 20px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.transport-gallery-heading h2 {
    margin: 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 6vw, 90px);
    font-weight: normal;
    line-height: 0.95;
}

.transport-gallery-heading h2 em {
    color: #e1c285;
    font-weight: normal;
}

.transport-gallery-grid {
    max-width: 1400px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 1.15fr 1fr 1fr;
    gap: 18px;
}

.transport-gallery-item {
    position: relative;
    height: 580px;
    margin: 0;
    border: 1px solid rgba(225, 194, 133, 0.45);
    border-radius: 12px;
    overflow: hidden;
}

.transport-gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.transport-gallery-item:nth-child(1) img {
    object-position: center 68%;
}

.transport-gallery-item:nth-child(2) img {
    object-position: center 48%;
}

.transport-gallery-item:nth-child(3) img {
    object-position: center;
}

.transport-gallery-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(1, 35, 40, 0.95) 0%,
            rgba(1, 48, 55, 0.08) 60%
        );
    pointer-events: none;
}

.transport-gallery-item:hover img {
    transform: scale(1.07);
}

.transport-gallery-item figcaption {
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 28px;
    z-index: 2;

    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
}

.transport-gallery-item figcaption span {
    color: #e1c285;
    font-size: 12px;
    letter-spacing: 4px;
}

.transport-gallery-item figcaption p {
    max-width: 250px;
    margin: 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    line-height: 1.1;
    text-align: right;
}


/* TABLET */

@media (max-width: 1000px) {
    .transport-gallery-grid {
        grid-template-columns: 1fr 1fr;
    }

    .transport-gallery-item:first-child {
        grid-column: 1 / -1;
    }
}


/* PHONE */

@media (max-width: 600px) {
    .transport-gallery {
        padding: 80px 18px;
    }

    .transport-gallery-grid {
        grid-template-columns: 1fr;
    }

    .transport-gallery-item:first-child {
        grid-column: auto;
    }

    .transport-gallery-item {
        height: 470px;
    }

    .transport-gallery-item figcaption {
        left: 22px;
        right: 22px;
        bottom: 22px;
    }

    .transport-gallery-item figcaption p {
        font-size: 21px;
    }
}

/* ==================================
   EVENTS PAGE
   ================================== */

.events-page {
    background: #013037;
    color: #f4f0e7;
}

/* HERO */

.events-hero {
    position: relative;
    min-height: 760px;
    padding: 160px 7% 90px;
    overflow: hidden;

    display: flex;
    align-items: center;

   background:
    linear-gradient(
        90deg,
        rgba(1, 35, 40, 0.96) 0%,
        rgba(1, 48, 55, 0.75) 48%,
        rgba(1, 48, 55, 0.2) 100%
    ),
    url("images/back3.jpg") center / cover no-repeat;
}

.events-hero::before,
.events-hero::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(225, 194, 133, 0.25);
    border-radius: 50%;
}

.events-hero::before {
    width: 480px;
    height: 480px;
    right: 7%;
    top: 18%;
}

.events-hero::after {
    width: 680px;
    height: 680px;
    right: -6%;
    top: 5%;
}

.events-hero-decoration {
    position: absolute;
    right: 18%;
    top: 35%;

    color: #e1c285;
    font-size: 180px;
    opacity: 0.75;
    animation: eventsRotate 16s linear infinite;
}

@keyframes eventsRotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.events-hero-content {
    position: relative;
    z-index: 2;
    max-width: 1050px;
}

.events-label {
    margin-bottom: 25px;
    color: #e1c285;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 6px;
}

.events-hero h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(65px, 9vw, 140px);
    font-weight: normal;
    line-height: 0.82;
}

.events-hero h1 em {
    color: #e1c285;
    font-weight: normal;
}

.events-description {
    max-width: 620px;
    margin: 38px 0;
    color: rgba(244, 240, 231, 0.84);
    font-size: 19px;
    line-height: 1.7;
}

.events-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.events-primary-btn,
.events-secondary-btn {
    min-height: 60px;
    padding: 0 32px;
    border-radius: 40px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.events-primary-btn {
    background: #e1c285;
    color: #013037;
}

.events-secondary-btn {
    border: 1px solid rgba(244, 240, 231, 0.55);
    color: #f4f0e7;
}

.events-primary-btn:hover,
.events-secondary-btn:hover {
    transform: translateY(-4px);
}

.events-secondary-btn:hover {
    background: #f4f0e7;
    color: #013037;
}


/* SERVICES */

.events-services {
    padding: 115px 5%;
    background: #f4f0e7;
    color: #013037;
}

.events-section-heading {
    max-width: 1400px;
    margin: 0 auto 65px;
}

.events-section-heading > p {
    margin-bottom: 20px;
    color: #a77d2f;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.events-section-heading h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 7vw, 95px);
    font-weight: normal;
    line-height: 0.95;
}

.events-section-heading h2 em {
    color: #b18a3d;
    font-weight: normal;
}

.events-services-grid {
    max-width: 1400px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.events-service-card {
    min-height: 470px;
    padding: 38px;
    border: 1px solid rgba(1, 48, 55, 0.2);
    color: #013037;
    text-decoration: none;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    transition:
        background 0.35s,
        color 0.35s,
        transform 0.35s;
}

.events-service-card:hover {
    position: relative;
    z-index: 2;
    background: #014d58;
    color: #f4f0e7;
    transform: translateY(-10px);
}

.events-number {
    color: #b18a3d;
    font-size: 13px;
    letter-spacing: 4px;
}

.events-card-label {
    margin-bottom: 18px;
    color: #b18a3d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.events-service-card h3 {
    margin-bottom: 24px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 40px;
    font-weight: normal;
    line-height: 1;
}

.events-service-card div > p:last-child {
    font-size: 15px;
    line-height: 1.7;
    opacity: 0.8;
}

.events-service-card strong {
    align-self: flex-end;
    width: 52px;
    height: 52px;
    border: 1px solid rgba(177, 138, 61, 0.7);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #b18a3d;
    font-size: 21px;
}


/* PROCESS */

.events-process {
    padding: 90px 6%;
    background: #014d58;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.events-process-item {
    padding: 45px;
    border-left: 1px solid rgba(225, 194, 133, 0.3);
}

.events-process-item span {
    color: #e1c285;
    font-size: 13px;
    letter-spacing: 4px;
}

.events-process-item h3 {
    margin: 25px 0 15px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    font-weight: normal;
}

.events-process-item p {
    max-width: 340px;
    color: rgba(244, 240, 231, 0.75);
    line-height: 1.7;
}


/* FINAL */

.events-final {
    padding: 120px 6%;
    text-align: center;
    background: #013037;
}

.events-final > p {
    margin-bottom: 22px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.events-final h2 {
    margin-bottom: 42px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 7vw, 100px);
    font-weight: normal;
    line-height: 1;
}

.events-final h2 em {
    color: #e1c285;
    font-weight: normal;
}

.events-final > a {
    display: inline-flex;
    padding: 21px 34px;
    border-radius: 40px;
    background: #e1c285;
    color: #013037;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.3s;
}

.events-final > a:hover {
    transform: translateY(-4px);
    background: #efdba4;
}


/* TABLET */

@media (max-width: 1000px) {
    .events-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .events-process {
        grid-template-columns: 1fr;
    }
}


/* PHONE */

@media (max-width: 600px) {
    .events-hero {
        min-height: 720px;
        padding: 140px 22px 70px;
        align-items: flex-start;
    }

    .events-hero h1 {
        font-size: 49px;
        line-height: 0.9;
    }

    .events-description {
        font-size: 16px;
    }

    .events-buttons {
        flex-direction: column;
    }

    .events-primary-btn,
    .events-secondary-btn {
        width: 100%;
    }

    .events-hero-decoration {
        right: 5%;
        top: 60%;
        font-size: 120px;
    }

    .events-services {
        padding: 80px 18px;
    }

    .events-services-grid {
        grid-template-columns: 1fr;
    }

    .events-service-card {
        min-height: 390px;
        padding: 30px;
    }

    .events-process {
        padding: 60px 18px;
    }

    .events-process-item {
        padding: 38px 20px;
    }

    .events-final {
        padding: 85px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .events-hero-decoration {
        animation: none;
    }
}

/* ==================================
   EVENTS PHOTO GALLERY
   ================================== */

.events-gallery {
    padding: 110px 5%;
    background: #013037;
}

.events-gallery-heading {
    max-width: 1400px;
    margin: 0 auto 55px;
}

.events-gallery-heading > p {
    margin-bottom: 20px;
    color: #e1c285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 5px;
}

.events-gallery-heading h2 {
    margin: 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 6vw, 90px);
    font-weight: normal;
    line-height: 0.95;
}

.events-gallery-heading h2 em {
    color: #e1c285;
    font-weight: normal;
}

.events-gallery-grid {
    max-width: 1400px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 1.35fr 1fr;
    grid-template-rows: repeat(2, 360px);
    gap: 18px;
}

.events-gallery-photo {
    position: relative;
    margin: 0;
    border: 1px solid rgba(225, 194, 133, 0.5);
    border-radius: 12px;
    overflow: hidden;
}

.events-gallery-large {
    grid-row: 1 / 3;
}

.events-gallery-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.events-gallery-large img {
    object-position: center;
}

.events-gallery-photo:nth-child(2) img {
    object-position: center 65%;
}

.events-gallery-photo:nth-child(3) img {
    object-position: center 40%;
}

.events-gallery-photo::after {
    content: "";
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(1, 35, 40, 0.96) 0%,
            transparent 60%
        );

    pointer-events: none;
}

.events-gallery-photo:hover img {
    transform: scale(1.06);
}

.events-gallery-photo figcaption {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 26px;
    z-index: 2;
}

.events-gallery-photo figcaption span {
    color: #e1c285;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 4px;
}

.events-gallery-photo figcaption h3 {
    margin: 10px 0 0;
    color: #f4f0e7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: normal;
}


/* TABLET AND PHONE */

@media (max-width: 800px) {
    .events-gallery {
        padding: 80px 18px;
    }

    .events-gallery-grid {
        grid-template-columns: 1fr;
        grid-template-rows: none;
    }

    .events-gallery-large {
        grid-row: auto;
    }

    .events-gallery-photo {
        height: 470px;
    }

    .events-hero {
        background-position: 58% center;
    }
}

/* VIP HERO – показва цялата кола */

.vip-hero {
    background-color: #013037 !important;
    background-image: url("images/vip-transfer.jpg") !important;
    background-repeat: no-repeat !important;
    background-size: auto 100% !important;
    background-position: right center !important;
}

.vip-hero-overlay {
    background:
        linear-gradient(
            90deg,
            #013037 0%,
            rgba(1, 48, 55, 0.98) 35%,
            rgba(1, 48, 55, 0.75) 57%,
            rgba(1, 48, 55, 0.08) 100%
        ) !important;
}

/* TELEPHONE */

@media (max-width: 600px) {
    .vip-hero {
        min-height: 920px;
        padding: 125px 22px 60px;

        background-size: 100% auto !important;
        background-position: center bottom !important;
    }

    .vip-hero-overlay {
        background:
            linear-gradient(
                to bottom,
                #013037 0%,
                rgba(1, 48, 55, 0.96) 42%,
                rgba(1, 48, 55, 0.25) 72%,
                rgba(1, 48, 55, 0.05) 100%
            ) !important;
    }
}

/* VIP HERO – текстът остава вляво */

.vip-hero-content {
    width: 55%;
    max-width: 850px;
}

.vip-hero h1 {
    max-width: 100%;
    font-size: clamp(65px, 6vw, 112px) !important;
    line-height: 0.85;
    letter-spacing: -2px;
}

.vip-description {
    max-width: 620px;
}


/* ПО-МАЛЪК КОМПЮТЪР И ТАБЛЕТ */

@media (max-width: 1200px) {
    .vip-hero-content {
        width: 52%;
    }

    .vip-hero h1 {
        font-size: 72px !important;
    }

    .vip-description {
        font-size: 16px;
    }
}


/* ТЕЛЕФОН */

@media (max-width: 600px) {
    .vip-hero-content {
        width: 100%;
        max-width: 100%;
    }

    .vip-hero h1 {
        font-size: 52px !important;
        letter-spacing: -1px;
    }
}

/* ==================================
   VIP HERO – PROFESSIONAL LAYOUT
   ================================== */

.vip-hero.vip-hero-editorial {
    min-height: auto !important;
    padding: 150px 6% 90px !important;

    display: grid !important;
    grid-template-columns:
        minmax(0, 650px)
        minmax(380px, 540px);
    justify-content: center;
    align-items: center;
    gap: clamp(50px, 7vw, 120px);

    background: #013037 !important;
}

/* Текст */

.vip-hero-editorial .vip-hero-content {
    width: 100%;
    max-width: 650px;
}

.vip-hero-editorial .vip-label {
    margin-bottom: 25px;
}

.vip-hero-editorial h1 {
    margin: 0;
    max-width: 100%;

    font-size: clamp(68px, 6vw, 105px) !important;
    line-height: 0.86;
    letter-spacing: -2px;
}

.vip-hero-editorial .vip-description {
    max-width: 540px;
    margin: 34px 0;
    font-size: 18px;
    line-height: 1.7;
}

/* Снимка */

.vip-hero-photo {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 10px;

    border: 1px solid rgba(225, 194, 133, 0.55);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);

    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
    overflow: hidden;
}

.vip-hero-photo img {
    width: 100%;
    height: auto;
    max-height: 700px;

    display: block;
    object-fit: contain;
    border-radius: 4px;
}

.vip-hero-photo figcaption {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 25px;

    padding-top: 60px;

    background:
        linear-gradient(
            to top,
            rgba(1, 35, 40, 0.92),
            transparent
        );

    color: #f4f0e7;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
}

.vip-hero-photo figcaption span {
    display: block;
    margin-bottom: 7px;
    color: #e1c285;
}


/* TABLET */

@media (max-width: 1000px) {
    .vip-hero.vip-hero-editorial {
        grid-template-columns: 1fr 420px;
        gap: 40px;
        padding-left: 35px !important;
        padding-right: 35px !important;
    }

    .vip-hero-editorial h1 {
        font-size: 66px !important;
    }
}


/* PHONE */

@media (max-width: 700px) {
    .vip-hero.vip-hero-editorial {
        padding: 125px 20px 65px !important;
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .vip-hero-editorial h1 {
        font-size: 52px !important;
        letter-spacing: -1px;
    }

    .vip-hero-editorial .vip-description {
        font-size: 16px;
    }

    .vip-hero-photo {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
    }

    .vip-hero-photo img {
        max-height: none;
    }
}

/* VIP HERO – използва цялата ширина */

.vip-hero.vip-hero-editorial {
    width: 100%;

    padding:
        130px
        clamp(30px, 4vw, 80px)
        80px !important;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(460px, 620px);

    justify-content: stretch;
    gap: clamp(45px, 5vw, 90px);
}

.vip-hero-editorial .vip-hero-content {
    width: 100%;
    max-width: 760px;
    justify-self: start;
}

.vip-hero-photo {
    width: 100%;
    max-width: 620px;
    justify-self: end;
}


/* TABLET */

@media (max-width: 1100px) {
    .vip-hero.vip-hero-editorial {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(380px, 480px);

        gap: 35px;
    }
}


/* PHONE */

@media (max-width: 700px) {
    .vip-hero.vip-hero-editorial {
        padding:
            120px
            20px
            60px !important;

        grid-template-columns: 1fr;
    }

    .vip-hero-photo {
        width: 100%;
        max-width: 500px;
        justify-self: center;
    }
}

/* ==================================
   VIP HERO – ПО-БЛИЗКА ПОДРЕДБА
   И АНИМАЦИЯ
   ================================== */

.vip-hero.vip-hero-editorial {
    grid-template-columns:
        minmax(0, 1fr)
        minmax(480px, 620px);

    gap: 30px !important;
}

.vip-hero-editorial .vip-hero-content {
    width: 100%;
    max-width: 900px;
    justify-self: end;
}

.vip-hero-photo {
    justify-self: start;
    animation: vipPhotoFloat 6s ease-in-out infinite;

    box-shadow:
        0 30px 70px rgba(0, 0, 0, 0.38),
        0 0 35px rgba(225, 194, 133, 0.08);
}

@keyframes vipPhotoFloat {
    0%,
    100% {
        transform: translateY(0);
        box-shadow:
            0 30px 70px rgba(0, 0, 0, 0.38),
            0 0 30px rgba(225, 194, 133, 0.07);
    }

    50% {
        transform: translateY(-12px);
        box-shadow:
            0 42px 85px rgba(0, 0, 0, 0.48),
            0 0 45px rgba(225, 194, 133, 0.16);
    }
}


/* TABLET */

@media (max-width: 1100px) {
    .vip-hero.vip-hero-editorial {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(370px, 460px);

        gap: 25px !important;
    }
}


/* PHONE */

@media (max-width: 700px) {
    .vip-hero.vip-hero-editorial {
        grid-template-columns: 1fr;
        gap: 38px !important;
    }

    .vip-hero-editorial .vip-hero-content {
        justify-self: stretch;
    }

    .vip-hero-photo {
        justify-self: center;
    }
}


/* Спира движението при настройка за намалени анимации */

@media (prefers-reduced-motion: reduce) {
    .vip-hero-photo {
        animation: none;
    }
}

/* ==================================
   VIP СНИМКА – ПО-ВИДИМА АНИМАЦИЯ
   ================================== */

.vip-hero-photo {
    position: relative;
    overflow: hidden;

    animation:
        vipCardMove 5s ease-in-out infinite alternate !important;
}

/* Движение вътре в самата снимка */

.vip-hero-photo img {
    transform-origin: center 75%;

    animation:
        vipImageMove 5s ease-in-out infinite alternate;
}

/* Златист отблясък */

.vip-hero-photo::after {
    content: "";
    position: absolute;
    top: -40%;
    left: -80%;
    z-index: 2;

    width: 45%;
    height: 180%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(239, 219, 164, 0.28),
            transparent
        );

    transform: rotate(18deg);
    animation: vipGoldShine 6s ease-in-out infinite;
    pointer-events: none;
}

.vip-hero-photo figcaption {
    z-index: 3;
}


/* Движение на цялата рамка */

@keyframes vipCardMove {
    0% {
        transform:
            translate(0, 0)
            rotate(-0.4deg);

        box-shadow:
            0 25px 55px rgba(0, 0, 0, 0.38),
            0 0 20px rgba(225, 194, 133, 0.08);
    }

    100% {
        transform:
            translate(-14px, -18px)
            rotate(0.4deg);

        box-shadow:
            18px 45px 80px rgba(0, 0, 0, 0.5),
            0 0 45px rgba(225, 194, 133, 0.2);
    }
}


/* Приближаване на самата снимка */

@keyframes vipImageMove {
    0% {
        transform:
            scale(1)
            translate(0, 0);
    }

    100% {
        transform:
            scale(1.06)
            translate(-7px, -8px);
    }
}


/* Преминаваща светлина */

@keyframes vipGoldShine {
    0%,
    25% {
        left: -80%;
        opacity: 0;
    }

    40% {
        opacity: 1;
    }

    70%,
    100% {
        left: 140%;
        opacity: 0;
    }
}


/* При посочване с мишката */

.vip-hero-photo:hover {
    animation-play-state: paused !important;
    transform: translateY(-12px) scale(1.025);
}


/* Изключване при намалени анимации */

@media (prefers-reduced-motion: reduce) {
    .vip-hero-photo,
    .vip-hero-photo img,
    .vip-hero-photo::after {
        animation: none !important;
    }
}

/* ==================================
   VIP ROUTE – FINAL DESIGN
   ================================== */

.vip-hero-content .vip-route-card {
    width: 100% !important;
    max-width: 680px !important;
    margin: 38px 0 0 !important;
    padding: 20px 24px !important;

    display: block !important;

    border: 1px solid rgba(225, 194, 133, 0.4) !important;
    border-radius: 14px !important;

    background:
        linear-gradient(
            135deg,
            rgba(225, 194, 133, 0.1),
            rgba(255, 255, 255, 0.025)
        ) !important;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, 0.2) !important;
}


/* ГОРЕН РЕД */

.vip-route-card .vip-route-top {
    padding-bottom: 15px !important;

    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;

    border-bottom:
        1px solid rgba(225, 194, 133, 0.2) !important;
}

.vip-route-card .vip-route-top span {
    color: #e1c285 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
}

.vip-route-card .vip-route-top strong {
    color: #e1c285 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 19px !important;
    font-weight: normal !important;
}


/* МАРШРУТ */

.vip-route-card .vip-route {
    padding: 20px 0 !important;

    display: grid !important;
    grid-template-columns:
        minmax(130px, 1fr)
        minmax(80px, 130px)
        minmax(130px, 1fr) !important;

    align-items: center !important;
    gap: 18px !important;
}

.vip-route-card .vip-route-point {
    position: relative !important;
}

.vip-route-card .vip-route-destination {
    text-align: right !important;
}

.vip-route-card .vip-route-dot {
    width: 8px !important;
    height: 8px !important;
    margin-bottom: 9px !important;

    display: block !important;
    border-radius: 50% !important;

    background: #e1c285 !important;
    box-shadow:
        0 0 14px rgba(225, 194, 133, 0.8) !important;
}

.vip-route-card .vip-route-destination .vip-route-dot {
    margin-left: auto !important;
}

.vip-route-card .vip-route-point small {
    display: block !important;
    margin-bottom: 5px !important;

    color: rgba(244, 240, 231, 0.5) !important;
    font-size: 8px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
}

.vip-route-card .vip-route-point p {
    margin: 0 !important;

    color: #f4f0e7 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
}


/* ЛИНИЯ */

.vip-route-card .vip-route-line {
    position: relative !important;
    width: 100% !important;
    height: 1px !important;

    background:
        linear-gradient(
            90deg,
            rgba(225, 194, 133, 0.25),
            #e1c285,
            rgba(225, 194, 133, 0.25)
        ) !important;
}

.vip-route-card .vip-moving-dot {
    position: absolute !important;
    top: 50% !important;
    left: 0;

    width: 11px !important;
    height: 11px !important;

    display: block !important;
    border: 2px solid #013037 !important;
    border-radius: 50% !important;

    background: #e1c285 !important;
    box-shadow:
        0 0 16px rgba(225, 194, 133, 0.9) !important;

    transform: translate(-50%, -50%);
    animation: vipRouteFinal 4s ease-in-out infinite;
}

@keyframes vipRouteFinal {
    0% {
        left: 0;
    }

    50% {
        left: 100%;
    }

    100% {
        left: 0;
    }
}


/* ДОЛЕН РЕД */

.vip-route-card .vip-route-benefits {
    padding-top: 15px !important;

    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 12px !important;

    border-top:
        1px solid rgba(225, 194, 133, 0.2) !important;
}

.vip-route-card .vip-route-benefits span {
    color: rgba(244, 240, 231, 0.72) !important;
    font-size: 10px !important;
    line-height: 1.4 !important;
    text-align: center !important;
}


/* PHONE */

@media (max-width: 700px) {
    .vip-hero-content .vip-route-card {
        margin-top: 30px !important;
        padding: 18px !important;
    }

    .vip-route-card .vip-route {
        grid-template-columns:
            minmax(95px, 1fr)
            45px
            minmax(95px, 1fr) !important;

        gap: 10px !important;
    }

    .vip-route-card .vip-route-point p {
        font-size: 14px !important;
    }

    .vip-route-card .vip-route-benefits {
        grid-template-columns: 1fr !important;
    }
}

/* ========================================
   LIGHT ENEV GROUP DESIGN
   ======================================== */

:root {
    --color-background: #245b6a;
    --color-background-light: #3a759c;
    --color-green: #2f6878;

    --color-gold: #e4a366;
    --color-gold-light: #f2c58d;

    --color-cream: #fff5e8;
    --color-gray: #e1d4c5;
    --color-turquoise: #5a8dac;
}

/* ОСНОВЕН ФОН НА СТРАНИЦИТЕ */

body {
    background:
        linear-gradient(
            135deg,
            #245b6a 0%,
            #3a759c 55%,
            #5a8dac 100%
        );

    color: var(--color-cream);
}

/* HEADER */

.site-header {
    background:
        linear-gradient(
            90deg,
            rgba(20, 65, 77, 0.97),
            rgba(43, 104, 120, 0.94)
        );

    border-bottom: 1px solid rgba(242, 197, 141, 0.45);
}

.logo {
    color: var(--color-gold-light);
}

.menu-btn {
    border-color: rgba(255, 245, 232, 0.65);
}

.menu-btn span {
    background-color: var(--color-cream);
}

.enquire-btn {
    background:
        linear-gradient(
            135deg,
            #e4a366,
            #f2c58d
        );

    color: #173f49;

    box-shadow: 0 8px 25px rgba(95, 52, 20, 0.22);
}

.enquire-btn:hover {
    background: #ffd6a3;
    transform: translateY(-2px);
}

/* ========================================
   НОВ ФОН НА НАЧАЛНАТА СТРАНИЦА
   ======================================== */

.hero {
    position: relative;

    min-height: calc(100vh - 100px);

    background-image:
        linear-gradient(
            90deg,
            rgba(19, 70, 82, 0.58) 0%,
            rgba(19, 70, 82, 0.25) 43%,
            rgba(67, 76, 66, 0.06) 72%,
            rgba(93, 57, 25, 0.12) 100%
        ),
        url("images/home-background.png.png");

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

/* СЛОЙ ЗА ПО-ДОБРА ЧЕТИМОСТ */

.hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(22, 64, 74, 0.12),
            rgba(82, 49, 24, 0.08)
        );

    z-index: 1;
    pointer-events: none;
}

.hero-content {
    position: relative;
    z-index: 2;
}

/* ТЕКСТ В HERO */

.hero-small-text {
    color: #f2c58d;

    text-shadow: 0 2px 8px rgba(30, 23, 17, 0.35);
}

.hero h1 {
    color: #fff5e8;

    text-shadow:
        0 3px 12px rgba(24, 45, 49, 0.55),
        0 0 30px rgba(228, 163, 102, 0.20);
}

.hero-description {
    color: #fff5e8;

    text-shadow: 0 2px 8px rgba(24, 45, 49, 0.50);
}

/* ЗЛАТНИ БУТОНИ */

.surprise-btn,
.form-submit-btn,
.all-destinations-btn {
    background:
        linear-gradient(
            135deg,
            #e4a366,
            #f2c58d
        );

    color: #173f49;

    box-shadow: 0 10px 28px rgba(89, 50, 22, 0.20);
}

.surprise-btn:hover,
.form-submit-btn:hover,
.all-destinations-btn:hover {
    background: #ffd6a3;
    transform: translateY(-3px);
}

/* MOBILE */

@media (max-width: 700px) {
    .hero {
        min-height: calc(100vh - 80px);

        background-image:
            linear-gradient(
                90deg,
                rgba(20, 67, 78, 0.58),
                rgba(20, 67, 78, 0.14)
            ),
            url("images/home-background.png.png");

        background-size: cover;
        background-position: 58% center;
    }
}

/* ========================================
   HERO DECORATIONS
   ======================================== */

/* HERO трябва да държи елементите вътре */

.hero {
    position: relative;
}

/* ТЕКСТ ГОРЕ ВДЯСНО */

.hero-corner-text {
    position: absolute;

    top: 55px;
    right: 5%;

    z-index: 4;

    display: flex;
    flex-direction: column;
    align-items: center;

    color: #f2c58d;

    font-family:
        "Segoe Script",
        "Brush Script MT",
        cursive;

    font-size: clamp(25px, 2.4vw, 42px);
    font-style: italic;
    line-height: 1.05;

    text-align: center;

    text-shadow:
        0 2px 8px rgba(75, 42, 16, 0.38),
        0 0 18px rgba(242, 197, 141, 0.25);

    transform: rotate(-3deg);

    pointer-events: none;
}

.hero-corner-text span {
    display: block;
}

.hero-corner-text strong {
    margin-top: 8px;

    color: #fff5e8;

    font-family: Arial, sans-serif;
    font-size: 43px;
    font-weight: 300;

    animation: heroHeart 2.5s ease-in-out infinite;
}

@keyframes heroHeart {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.10);
    }
}

/* ENEV GROUP + САМОЛЕТ */

.hero-title-wrap {
    position: relative;

    display: inline-block;

    isolation: isolate;
}

.hero-title-wrap h1 {
    position: relative;
    z-index: 2;
}

/* ЗЛАТНАТА ИЗВИТА ЛИНИЯ */

.hero-flight-curve {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 115%;
    height: 145%;

    border: 2px solid rgba(242, 197, 141, 0.75);
    border-left-color: transparent;
    border-bottom-color: transparent;

    border-radius: 50%;

    transform:
        translate(-50%, -50%)
        rotate(-7deg);

    z-index: 1;

    pointer-events: none;
}

/* САМОЛЕТЧЕТО */

.hero-plane {
    position: absolute;

    top: -20px;
    right: 17%;

    display: block;

    color: #f2c58d;

    font-family: Arial, sans-serif;
    font-size: clamp(31px, 3vw, 49px);

    text-shadow:
        0 0 8px rgba(255, 221, 164, 0.70),
        0 0 20px rgba(228, 163, 102, 0.45);

    transform: rotate(19deg);

    animation: heroPlaneFloat 3s ease-in-out infinite;
}

@keyframes heroPlaneFloat {
    0%,
    100% {
        transform:
            translateY(0)
            rotate(19deg);
    }

    50% {
        transform:
            translateY(-7px)
            translateX(4px)
            rotate(23deg);
    }
}

/* НА ТЕЛЕФОН */

@media (max-width: 700px) {

    .hero-corner-text {
        top: 28px;
        right: 18px;

        font-size: 23px;
        line-height: 1;
    }

    .hero-corner-text strong {
        font-size: 31px;
    }

    .hero-title-wrap {
        max-width: 78%;
    }

    .hero-flight-curve {
        width: 120%;
        height: 135%;
    }

    .hero-plane {
        top: -15px;
        right: 12%;

        font-size: 28px;
    }
}

/* ========================================
   ПО-ЯРКИ СНИМКИ НА ЧЕТИРИТЕ УСЛУГИ
   ======================================== */

/* Премахва допълнителния филтър от първата снимка */

.group-service-card.holiday-card {
    background:
        url("images/holiday.jpg")
        center / cover
        no-repeat !important;
}

/* По-светъл слой върху всички снимки */

.group-service-overlay {
    background:
        linear-gradient(
            to top,
            rgba(7, 38, 43, 0.76) 0%,
            rgba(10, 60, 69, 0.30) 48%,
            rgba(28, 104, 120, 0.04) 100%
        ) !important;
}

/* При посочване снимката става още по-ясна */

.group-service-card:hover .group-service-overlay {
    background:
        linear-gradient(
            to top,
            rgba(7, 38, 43, 0.64) 0%,
            rgba(10, 60, 69, 0.18) 48%,
            rgba(28, 104, 120, 0) 100%
        ) !important;
}

/* Леко подсилване на цветовете */

.group-service-card {
    filter: saturate(1.12) contrast(1.06);
}

.group-service-card:hover {
    filter: saturate(1.22) contrast(1.08);
}

/* ========================================
   HERO СЪДЪРЖАНИЕ В ЦЕНТЪРА
   ======================================== */

.hero {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
}

.hero-content {
    width: 100% !important;
    max-width: 1400px !important;

    margin: 0 auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
}

.hero-small-text {
    width: 100% !important;
    text-align: center !important;
}

.hero-brand {
    width: 100% !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;

    text-align: center !important;
}

.hero-title-wrap {
    margin-left: auto !important;
    margin-right: auto !important;
}

.hero-title-wrap h1 {
    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;

    font-size: clamp(55px, 9vw, 155px) !important;
}

.hero-brand-tagline {
    width: 100% !important;

    text-align: center !important;
}

.surprise-btn {
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* TELEPHONE */

@media (max-width: 700px) {

    .hero-content {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .hero-title-wrap h1 {
        font-size: clamp(46px, 13vw, 70px) !important;
        line-height: 0.95 !important;
    }

    .hero-small-text {
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .hero-brand-tagline {
        font-size: 10px !important;
        letter-spacing: 2px !important;
    }
}

/* ========================================
   НОВ НЕПРЕКЪСНАТ МАРШРУТ
   ======================================== */

.hero-title-wrap {
    position: relative;
    isolation: isolate;
}

/* Заглавието */

.hero-title-wrap h1 {
    position: relative;
    z-index: 2;
}

/* Целият маршрут */

.hero-route {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 122%;
    height: 155%;

    overflow: visible;

    transform:
        translate(-50%, -50%)
        rotate(-2deg);

    z-index: 3;

    pointer-events: none;
}

/* Непрекъсната златна линия */

.hero-route-line {
    fill: none;

    stroke: #f2c58d;
    stroke-width: 2.2;
    stroke-linecap: round;

    opacity: 0.88;

    filter:
        drop-shadow(0 0 4px rgba(242, 197, 141, 0.50));
}

/* Самолетчето */

.hero-route-plane {
    fill: #f8d59d;

    font-family: Arial, sans-serif;
    font-size: 43px;

    filter:
        drop-shadow(0 0 5px rgba(255, 224, 173, 0.85))
        drop-shadow(0 0 12px rgba(228, 163, 102, 0.55));
}

/* ========================================
   РЪКОПИСЕН ТЕКСТ В ДОЛНАТА ДЯСНА ЧАСТ
   ======================================== */

.hero-corner-text {
    top: auto !important;
    bottom: 145px !important;
    right: 4.5% !important;

    color: #f3d39b !important;

    font-family: "Marck Script", cursive !important;
    font-size: clamp(28px, 2.5vw, 45px) !important;
    font-weight: 400 !important;
    font-style: normal !important;

    line-height: 0.98 !important;

    transform: rotate(-3deg) !important;

    text-shadow:
        0 2px 7px rgba(55, 32, 14, 0.65),
        0 0 15px rgba(242, 197, 141, 0.32) !important;
}

.hero-corner-text strong {
    color: #f8dba8 !important;

    font-size: 42px !important;

    text-shadow:
        0 2px 7px rgba(55, 32, 14, 0.55),
        0 0 12px rgba(248, 219, 168, 0.35) !important;
}

/* TELEPHONE */

@media (max-width: 700px) {

    .hero-route {
        width: 126%;
        height: 138%;
    }

    .hero-route-line {
        stroke-width: 2.8;
    }

    .hero-route-plane {
        font-size: 34px;
    }

    .hero-corner-text {
        top: auto !important;
        bottom: 85px !important;
        right: 18px !important;

        font-size: 25px !important;
    }

    .hero-corner-text strong {
        font-size: 31px !important;
    }
}

/* Спира движението при намалени анимации */

@media (prefers-reduced-motion: reduce) {

    .hero-route-plane animate {
        display: none;
    }
}

/* ========================================
   ИЗЧИСТЕН МАРШРУТ НАД ENEV GROUP
   ======================================== */

.hero-title-wrap {
    position: relative !important;
}

/* Скриваме стария маршрут, ако е останал */

.hero-route,
.hero-flight-curve {
    display: none !important;
}

/* Една елегантна извита линия */

.hero-route-minimal {
    position: absolute;

    top: -34px;
    left: 50%;

    width: 108%;
    height: 75px;

    transform:
        translateX(-50%)
        rotate(-2deg);

    border-top: 2px solid rgba(245, 205, 145, 0.92);
    border-radius: 50%;

    z-index: 3;
    pointer-events: none;

    filter:
        drop-shadow(0 0 4px rgba(245, 205, 145, 0.35));
}

/* Самолетчето */

.hero-plane-minimal {
    position: absolute;

    top: -25px;
    right: 19%;

    color: #f5cd91;

    font-family: Arial, sans-serif;
    font-size: 40px;

    transform: rotate(17deg);

    text-shadow:
        0 0 6px rgba(255, 226, 177, 0.80),
        0 0 15px rgba(228, 163, 102, 0.50);

    animation: minimalPlaneFloat 3.5s ease-in-out infinite;
}

@keyframes minimalPlaneFloat {
    0%,
    100% {
        transform:
            translate(0, 0)
            rotate(17deg);
    }

    50% {
        transform:
            translate(5px, -4px)
            rotate(20deg);
    }
}

/* Ръкописният текст вдясно */

.hero-corner-text {
    top: auto !important;
    bottom: 135px !important;
    right: 5% !important;

    color: #f3d39b !important;

    font-family: "Marck Script", cursive !important;
    font-size: clamp(27px, 2.3vw, 42px) !important;
    font-weight: 400 !important;
    font-style: normal !important;

    line-height: 1 !important;

    transform: rotate(-3deg) !important;

    text-shadow:
        0 2px 7px rgba(45, 27, 12, 0.62),
        0 0 13px rgba(243, 211, 155, 0.30) !important;
}

/* TELEPHONE */

@media (max-width: 700px) {

    .hero-route-minimal {
        top: -20px;

        width: 105%;
        height: 45px;
    }

    .hero-plane-minimal {
        top: -19px;
        right: 14%;

        font-size: 29px;
    }

    .hero-corner-text {
        bottom: 75px !important;
        right: 15px !important;

        font-size: 23px !important;
    }
}

/* ПОПРАВКА НА РАЗСТОЯНИЕТО НАД ENEV GROUP */

.hero-small-text {
    position: relative !important;
    z-index: 10 !important;

    margin-bottom: 55px !important;
}

.hero-route-minimal {
    top: -23px !important;
    z-index: 1 !important;
}

.hero-plane-minimal {
    top: -17px !important;
}

.hero-title-wrap h1 {
    position: relative !important;
    z-index: 3 !important;
}

/* TELEPHONE */

@media (max-width: 700px) {

    .hero-small-text {
        margin-bottom: 42px !important;
    }

    .hero-route-minimal {
        top: -18px !important;
    }

    .hero-plane-minimal {
        top: -14px !important;
    }
}

/* ========================================
   ПРЕКЪСНАТА САМОЛЕТНА СЛЕДА
   ======================================== */

/* Премахваме старата непрекъсната линия */

.hero-route-minimal {
    border: none !important;
    filter: none !important;
}

/* Нова прекъсната следа */

.hero-route-minimal::before {
    content: "";

    position: absolute;

    top: 0;
    left: 3%;

    width: 80%;
    height: 70px;

    border-top:
        2px dashed rgba(255, 242, 218, 0.85);

    border-radius: 50%;

    filter:
        drop-shadow(0 0 3px rgba(255, 239, 209, 0.65))
        drop-shadow(0 0 8px rgba(228, 163, 102, 0.35));

    -webkit-mask-image:
        linear-gradient(
            to right,
            transparent 0%,
            black 14%,
            black 82%,
            transparent 100%
        );

    mask-image:
        linear-gradient(
            to right,
            transparent 0%,
            black 14%,
            black 82%,
            transparent 100%
        );
}

/* Самолетчето стои в края на следата */

.hero-plane-minimal {
    right: 16% !important;

    color: #f8d59d !important;

    text-shadow:
        0 0 5px rgba(255, 240, 214, 0.90),
        0 0 13px rgba(228, 163, 102, 0.55) !important;
}

/* По-фина следа на телефон */

@media (max-width: 700px) {

    .hero-route-minimal::before {
        width: 82%;
        height: 45px;

        border-top-width: 1.5px;
    }

    .hero-plane-minimal {
        right: 13% !important;
    }
}

/* ========================================
   ДВИЖЕЩ СЕ САМОЛЕТ ПО МАРШРУТА
   ======================================== */

/* Скриваме всички стари варианти */

.hero-route,
.hero-flight-curve,
.hero-route-minimal {
    display: none !important;
}

/* Повече място между малкия текст и ENEV GROUP */

.hero-small-text {
    margin-bottom: 75px !important;
}

/* Новият маршрут */

.hero-flight-animation {
    position: absolute;

    top: -70px;
    left: 50%;

    width: 112%;
    height: 135px;

    transform: translateX(-50%);

    overflow: visible;

    z-index: 4;

    pointer-events: none;
}

/* Прекъсната следа */

.hero-moving-path {
    fill: none;

    stroke: rgba(255, 239, 210, 0.82);
    stroke-width: 2;

    stroke-dasharray: 12 15;
    stroke-linecap: round;

    filter:
        drop-shadow(0 0 3px rgba(255, 235, 198, 0.55))
        drop-shadow(0 0 7px rgba(228, 163, 102, 0.28));
}

/* Самолетът */

.hero-moving-plane {
    font-size: 38px !important;
    fill: #f8d59d;

    font-family: Arial, sans-serif;
    font-size: 42px;

    filter:
        drop-shadow(0 0 5px rgba(255, 242, 219, 0.90))
        drop-shadow(0 0 13px rgba(228, 163, 102, 0.55));
}

/* TELEPHONE */

@media (max-width: 700px) {

    .hero-small-text {
        margin-bottom: 55px !important;
    }

    .hero-flight-animation {
        top: -52px;

        width: 110%;
        height: 95px;
    }

    .hero-moving-path {
        stroke-width: 2.5;
        stroke-dasharray: 10 13;
    }

    .hero-moving-plane {
        font-size: 32px;
    }
}

/* За хора с изключени анимации */

@media (prefers-reduced-motion: reduce) {

    .hero-moving-plane {
        display: none;
    }
}

.hero-moving-path {
    fill: none !important;
    stroke: none !important;
}

.surprise-btn {
    margin-top: 35px !important;
}

@media (max-width: 700px) {
    .surprise-btn {
        margin-top: 25px !important;
    }
}

.hero-corner-text {
    font-family: "Bad Script", cursive !important;
    font-size: clamp(30px, 2.5vw, 45px) !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1.05 !important;
    color: #f1cf91 !important;
    letter-spacing: 0 !important;
}

.hero-corner-text span {
    font-family: "Bad Script", cursive !important;
    display: block;
}

.hero-flight-animation {
    display: none !important;
}

.hero-small-text {
    margin-bottom: 25px !important;
}

/* =========================================
   НОВО ДВИЖЕНИЕ И ДИЗАЙН НА АВТОБУСА
   ========================================= */

/* По-елегантен път */
.road {
    width: 82% !important;
    height: 78% !important;

    background:
        linear-gradient(
            90deg,
            #202628 0%,
            #343a3c 48%,
            #343a3c 52%,
            #202628 100%
        ) !important;

    clip-path: polygon(
        44% 0%,
        56% 0%,
        100% 100%,
        0% 100%
    ) !important;

    box-shadow:
        inset 18px 0 30px rgba(0, 0, 0, 0.32),
        inset -18px 0 30px rgba(0, 0, 0, 0.32) !important;
}

/* Пътната маркировка */
.road-line {
    width: 15px !important;
    height: 160% !important;

    clip-path: polygon(
        44% 0%,
        56% 0%,
        100% 100%,
        0% 100%
    ) !important;

    animation: roadMove 0.45s linear infinite !important;
}

/* По-професионален автобус */
.bus {
    width: 320px !important;
    height: 150px !important;

    background:
        linear-gradient(
            145deg,
            #062e35 0%,
            #075665 52%,
            #03272e 100%
        ) !important;

    border: 2px solid rgba(241, 199, 125, 0.9) !important;
    border-radius: 32px 32px 15px 15px !important;

    box-shadow:
        0 22px 35px rgba(0, 0, 0, 0.55),
        0 0 20px rgba(228, 163, 102, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.20) !important;

    transform-origin: center bottom !important;
}

/* Златен детайл върху автобуса */
.bus::before {
    content: "";
    position: absolute;
    left: 25px;
    right: 25px;
    bottom: 20px;
    height: 2px;
    border-radius: 10px;

    background: linear-gradient(
        90deg,
        transparent,
        #e4a366,
        #f2c58d,
        #e4a366,
        transparent
    );
}

/* По-естествени прозорци */
.bus-window {
    background:
        linear-gradient(
            145deg,
            rgba(90, 141, 172, 0.85),
            rgba(3, 33, 40, 0.96)
        ) !important;

    border: 1px solid rgba(242, 197, 141, 0.32) !important;

    box-shadow:
        inset 0 0 12px rgba(255, 255, 255, 0.08) !important;
}

/* Автобусът следва пътя към хоризонта */
.mystery-screen.journey-active .bus {
    left: 50% !important;
    animation: busAlongRoad 7s linear forwards !important;
}

@keyframes busAlongRoad {
    0% {
        bottom: 5%;
        transform: translateX(-50%) scale(1.08);
        opacity: 1;
    }

    25% {
        bottom: 15%;
        transform: translateX(-50%) scale(0.82);
        opacity: 1;
    }

    50% {
        bottom: 25%;
        transform: translateX(-50%) scale(0.56);
        opacity: 1;
    }

    75% {
        bottom: 35%;
        transform: translateX(-50%) scale(0.32);
        opacity: 1;
    }

    100% {
        bottom: 45%;
        transform: translateX(-50%) scale(0.12);
        opacity: 0;
    }
}

/* По-деликатен ефект за скорост */
.mystery-screen.journey-active .journey-scene::before {
    opacity: 0.22 !important;
}

/* Телефон */
@media (max-width: 700px) {
    .road {
        width: 135% !important;
    }

    .bus {
        width: 245px !important;
        height: 118px !important;
    }
}

/* =====================================
   АВТОБУС, НАСОЧЕН ПО ПОСОКАТА НА ПЪТЯ
   ===================================== */

.bus {
    width: 145px !important;
    height: 285px !important;

    left: 50% !important;
    bottom: 2%;

    border-radius: 48px 48px 22px 22px !important;

    background:
        linear-gradient(
            90deg,
            #03272e 0%,
            #087083 48%,
            #075a68 52%,
            #03272e 100%
        ) !important;

    border: 2px solid #e4a366 !important;

    box-shadow:
        0 25px 40px rgba(0, 0, 0, 0.55),
        inset 12px 0 18px rgba(0, 0, 0, 0.22),
        inset -12px 0 18px rgba(0, 0, 0, 0.22) !important;

    transform:
        translateX(-50%)
        rotate(0deg);

    transform-origin: center bottom !important;
}

/* Прозорците вече са един под друг */
.bus-window {
    left: 50% !important;
    transform: translateX(-50%) !important;

    width: 68% !important;
    height: 17% !important;

    border-radius: 12px !important;

    background:
        linear-gradient(
            145deg,
            rgba(88, 157, 183, 0.92),
            rgba(3, 31, 38, 0.97)
        ) !important;
}

.bus-window-1 {
    top: 12% !important;
}

.bus-window-2 {
    top: 34% !important;
}

.bus-window-3 {
    top: 56% !important;
}

/* Името върху задната част */
.bus-name {
    top: 78% !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
}

/* Червени задни светлини */
.bus-light {
    bottom: 7% !important;

    width: 16px !important;
    height: 10px !important;

    background: #e33b32 !important;

    box-shadow:
        0 0 10px rgba(255, 66, 55, 0.95),
        0 0 22px rgba(255, 66, 55, 0.55) !important;
}

.bus-light-left {
    left: 17px !important;
}

.bus-light-right {
    right: 17px !important;
}

/* Гумите са от двете страни */
.bus-wheel {
    top: 63% !important;
    bottom: auto !important;

    width: 15px !important;
    height: 58px !important;

    border: 3px solid #111 !important;
    border-radius: 6px !important;
}

.wheel-left {
    left: -10px !important;
}

.wheel-right {
    right: -10px !important;
}

/* Движение право по пътя */
.mystery-screen.journey-active .bus {
    animation: busStraightForward 9s ease-in-out forwards !important;
}

@keyframes busStraightForward {
    0% {
        bottom: 1%;
        transform: translateX(-50%) scale(1);
        opacity: 1;
    }

    20% {
        bottom: 6%;
        transform: translateX(-50%) scale(0.94);
        opacity: 1;
    }

    40% {
        bottom: 13%;
        transform: translateX(-50%) scale(0.82);
        opacity: 1;
    }

    60% {
        bottom: 22%;
        transform: translateX(-50%) scale(0.64);
        opacity: 1;
    }

    80% {
        bottom: 32%;
        transform: translateX(-50%) scale(0.42);
        opacity: 1;
    }

    92% {
        bottom: 40%;
        transform: translateX(-50%) scale(0.26);
        opacity: 0.95;
    }

    100% {
        bottom: 45%;
        transform: translateX(-50%) scale(0.16);
        opacity: 0;
    }
}
@media (max-width: 700px) {
    .bus {
        width: 105px !important;
        height: 210px !important;
    }

    .bus-name {
        font-size: 7px !important;
        letter-spacing: 1px !important;
    }

    .bus-wheel {
        width: 11px !important;
        height: 42px !important;
    }
}

/* Гумите остават неподвижни */
.mystery-screen.journey-active .bus-wheel,
.bus-wheel {
    animation: none !important;
    transform: none !important;
}
/* =====================================
   КИНЕМАТОГРАФИЧЕН ДИЗАЙН НА ПЪТУВАНЕТО
   ===================================== */

/* По-богато небе */
.journey-sky {
    background:
        radial-gradient(
            circle at 75% 22%,
            rgba(228, 163, 102, 0.16),
            transparent 25%
        ),
        radial-gradient(
            circle at 18% 25%,
            rgba(90, 141, 172, 0.20),
            transparent 30%
        ),
        linear-gradient(
            to bottom,
            #020c18 0%,
            #06343f 52%,
            #9f7251 100%
        ) !important;
}

/* По-реалистична луна */
.journey-sky::before {
    width: 95px !important;
    height: 95px !important;

    background:
        radial-gradient(
            circle at 35% 35%,
            rgba(255, 255, 255, 0.65) 0 5%,
            transparent 6%
        ),
        radial-gradient(
            circle at 67% 58%,
            rgba(206, 181, 128, 0.25) 0 8%,
            transparent 9%
        ),
        radial-gradient(
            circle at 40% 70%,
            rgba(206, 181, 128, 0.18) 0 6%,
            transparent 7%
        ),
        #fff0bd !important;

    box-shadow:
        0 0 20px rgba(255, 240, 189, 0.85),
        0 0 55px rgba(228, 163, 102, 0.48),
        0 0 100px rgba(228, 163, 102, 0.20) !important;
}

/* Облаци */
.journey-cloud {
    position: absolute;
    z-index: 1;

    width: 250px;
    height: 65px;

    border-radius: 50%;

    background:
        radial-gradient(
            ellipse at center,
            rgba(255, 237, 215, 0.20),
            rgba(255, 255, 255, 0.04) 55%,
            transparent 72%
        );

    filter: blur(4px);
    pointer-events: none;
}

.cloud-one {
    top: 17%;
    right: 4%;

    animation: cloudTravelOne 14s ease-in-out infinite alternate;
}

.cloud-two {
    top: 28%;
    left: 5%;

    width: 330px;
    opacity: 0.65;

    animation: cloudTravelTwo 18s ease-in-out infinite alternate;
}

@keyframes cloudTravelOne {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-80px);
    }
}

@keyframes cloudTravelTwo {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(100px);
    }
}

/* Задни планини */
.journey-mountains {
    position: absolute;
    left: 0;
    width: 100%;
    pointer-events: none;
}

.mountains-back {
    top: 25%;
    height: 22%;
    z-index: 1;

    background: #0b4650;
    opacity: 0.72;

    clip-path: polygon(
        0 76%,
        8% 45%,
        16% 67%,
        27% 24%,
        38% 70%,
        49% 35%,
        61% 68%,
        72% 20%,
        84% 62%,
        93% 38%,
        100% 70%,
        100% 100%,
        0 100%
    );
}

/* Предни планини */
.mountains-front {
    top: 31%;
    height: 19%;
    z-index: 2;

    background:
        linear-gradient(
            to bottom,
            #073039,
            #041f27
        );

    clip-path: polygon(
        0 65%,
        11% 35%,
        22% 71%,
        35% 30%,
        49% 73%,
        62% 40%,
        75% 70%,
        88% 27%,
        100% 63%,
        100% 100%,
        0 100%
    );

    filter: drop-shadow(
        0 -8px 18px rgba(228, 163, 102, 0.12)
    );
}

/* Падаща звезда */
.shooting-star {
    position: absolute;
    top: 16%;
    left: 22%;
    z-index: 3;

    width: 100px;
    height: 2px;

    opacity: 0;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 236, 198, 0.85),
            #ffffff
        );

    transform: rotate(-24deg);

    filter:
        drop-shadow(0 0 6px rgba(255, 232, 184, 0.9));

    animation: shootingStar 6s ease-in-out infinite;
}

.shooting-star::after {
    content: "";

    position: absolute;
    right: -2px;
    top: -3px;

    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: #fff6dc;

    box-shadow:
        0 0 8px #fff6dc,
        0 0 18px #e4a366;
}

@keyframes shootingStar {
    0%,
    66% {
        opacity: 0;
        transform:
            translate(0, 0)
            rotate(-24deg);
    }

    72% {
        opacity: 1;
    }

    88% {
        opacity: 0;
        transform:
            translate(480px, 210px)
            rotate(-24deg);
    }

    100% {
        opacity: 0;
    }
}

/* Златни кантове от двете страни на пътя */
.road::before,
.road::after {
    content: "";

    position: absolute;
    top: -4%;

    width: 3px;
    height: 120%;

    background:
        linear-gradient(
            to bottom,
            rgba(242, 197, 141, 0.25),
            rgba(228, 163, 102, 0.95)
        );

    box-shadow:
        0 0 12px rgba(228, 163, 102, 0.45);
}

.road::before {
    left: 44%;
    transform-origin: top;
    transform: rotate(25deg);
}

.road::after {
    right: 44%;
    transform-origin: top;
    transform: rotate(-25deg);
}

/* Диагоналните линии стават по-деликатни */
.mystery-screen.journey-active .journey-scene::before {
    opacity: 0.10 !important;
}

/* Правилно подреждане */
.road {
    z-index: 3 !important;
}

.bus {
    z-index: 6 !important;
}

.road-signs {
    z-index: 7 !important;
}

@media (max-width: 700px) {
    .journey-sky::before {
        width: 65px !important;
        height: 65px !important;
        right: 8% !important;
    }

    .journey-cloud {
        width: 170px;
    }

    .cloud-two {
        width: 210px;
    }

    .mountains-back {
        top: 27%;
    }

    .mountains-front {
        top: 33%;
    }

    .shooting-star {
        width: 65px;
    }
}

/* =====================================
   ТАБЕЛА НА МАРШРУТА
   ===================================== */

.journey-route-badge {
    position: absolute;
    top: 7%;
    left: 5%;
    z-index: 8;

    width: 240px;
    padding: 17px 20px;

    color: #fff5e8;

    background:
        linear-gradient(
            135deg,
            rgba(4, 45, 53, 0.80),
            rgba(5, 87, 101, 0.40)
        );

    border: 1px solid rgba(242, 197, 141, 0.48);
    border-left: 4px solid #e4a366;
    border-radius: 5px;

    box-shadow:
        0 15px 35px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);

    backdrop-filter: blur(9px);
}

.journey-route-badge span {
    display: block;
    margin-bottom: 6px;

    color: #e4a366;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 4px;
}

.journey-route-badge strong {
    display: block;

    font-family: Georgia, serif;
    font-size: 19px;
    letter-spacing: 1px;
}

.journey-route-badge small {
    display: block;
    margin-top: 8px;

    color: rgba(255, 245, 232, 0.70);
    font-size: 9px;
    letter-spacing: 2px;
}

/* =====================================
   ДВИЖЕЩИ СЕ КРАЙПЪТНИ СВЕТЛИНИ
   ===================================== */

.roadside-reflectors {
    position: absolute;
    inset: 0;
    z-index: 5;

    overflow: hidden;
    pointer-events: none;
}

.roadside-reflectors span {
    position: absolute;
    top: 34%;

    width: 6px;
    height: 25px;

    border-radius: 3px;

    background:
        linear-gradient(
            to bottom,
            #fff4cd 0 35%,
            #e4a366 35% 50%,
            #d8d4c9 50% 100%
        );

    box-shadow:
        0 0 8px rgba(255, 232, 175, 0.85),
        0 0 18px rgba(228, 163, 102, 0.48);

    opacity: 0;
}

.left-reflectors span {
    animation: reflectorMoveLeft 3.6s linear infinite;
}

.right-reflectors span {
    animation: reflectorMoveRight 3.6s linear infinite;
}

.roadside-reflectors span:nth-child(1) {
    animation-delay: 0s;
}

.roadside-reflectors span:nth-child(2) {
    animation-delay: -0.9s;
}

.roadside-reflectors span:nth-child(3) {
    animation-delay: -1.8s;
}

.roadside-reflectors span:nth-child(4) {
    animation-delay: -2.7s;
}

@keyframes reflectorMoveLeft {
    0% {
        left: 48%;
        top: 34%;
        transform: scale(0.20);
        opacity: 0;
    }

    18% {
        opacity: 0.9;
    }

    100% {
        left: 5%;
        top: 96%;
        transform: scale(1.65);
        opacity: 0;
    }
}

@keyframes reflectorMoveRight {
    0% {
        left: 52%;
        top: 34%;
        transform: scale(0.20);
        opacity: 0;
    }

    18% {
        opacity: 0.9;
    }

    100% {
        left: 95%;
        top: 96%;
        transform: scale(1.65);
        opacity: 0;
    }
}

/* Светлоотразителите се движат само при пътуването */
.mystery-screen:not(.journey-active) .roadside-reflectors {
    display: none;
}

@media (max-width: 700px) {
    .journey-route-badge {
        top: 9%;
        left: 5%;

        width: 185px;
        padding: 12px 14px;
    }

    .journey-route-badge strong {
        font-size: 15px;
    }

    .journey-route-badge small {
        font-size: 7px;
    }
}

/* ==================================
   ОКОНЧАТЕЛНА МОБИЛНА ВЕРСИЯ
   ================================== */

@media (max-width: 600px) {

    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* HEADER */

    .site-header {
        width: 100% !important;
        height: 72px !important;
        min-height: 72px !important;

        padding: 10px 12px !important;
        gap: 6px !important;

        align-items: center !important;
        box-sizing: border-box !important;
    }

    .site-header .logo {
        max-width: 95px !important;

        font-size: 11px !important;
        line-height: 1.1 !important;
        letter-spacing: 1.3px !important;
        white-space: normal !important;
    }

    .header-actions {
        margin-left: auto !important;
        gap: 6px !important;
    }

    .enquire-btn {
        max-width: 142px !important;
        padding: 11px 12px !important;

        font-size: 9px !important;
        line-height: 1.1 !important;
        letter-spacing: 0.3px !important;
        white-space: nowrap !important;
    }

    .menu-btn {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
    }

    /* НАЧАЛНА СНИМКА */

    .hero {
        width: 100% !important;
        min-height: calc(100dvh - 72px) !important;

        padding: 60px 14px 45px !important;
        box-sizing: border-box !important;

        background-position: 58% center !important;
        overflow: hidden !important;
    }

    .hero-content {
        width: 100% !important;
        max-width: 100% !important;

        padding: 0 8px !important;
        box-sizing: border-box !important;
    }

    .hero-brand,
    .hero-title-wrap {
        width: 100% !important;
        max-width: 100% !important;
    }

    .hero-small-text {
        width: 100% !important;
        max-width: 100% !important;

        font-size: 8px !important;
        line-height: 1.5 !important;
        letter-spacing: 1.5px !important;
        white-space: normal !important;
    }

    /* ENEV GROUP вече се събира */

    .hero .hero-brand h1,
    .hero-title-wrap h1 {
        width: 100% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        font-size: 11.5vw !important;
        line-height: 0.95 !important;
        letter-spacing: -1px !important;

        white-space: nowrap !important;
        text-align: center !important;
    }

    .hero-brand-tagline {
        width: 100% !important;

        font-size: 7px !important;
        letter-spacing: 0.8px !important;
        white-space: nowrap !important;
    }

    .hero-brand-tagline span {
        padding: 0 2px !important;
    }

    .surprise-btn {
        width: 86% !important;
        max-width: 325px !important;

        padding: 17px 15px !important;

        font-size: 13px !important;
        letter-spacing: 1.5px !important;
    }

    /* Самолетчето остава в рамките */

    .hero-flight-animation {
        width: 94% !important;
        max-width: 94% !important;
        top: -48px !important;
    }

    .hero-moving-plane {
        font-size: 27px !important;
    }

    /* MYSTERY ЕКРАН */

    .mystery-screen {
        width: 100vw !important;
        max-width: 100vw !important;

        height: 100dvh !important;
        min-height: 100dvh !important;

        overflow: hidden !important;
    }

    .mystery-content {
        width: 100% !important;
        max-width: 100% !important;

        padding: 70px 18px 25px !important;
        box-sizing: border-box !important;
    }

    .mystery-label {
        font-size: 9px !important;
        letter-spacing: 4px !important;
        margin-bottom: 22px !important;
    }

    .mystery-content h2 {
        width: 100% !important;
        max-width: 100% !important;

        font-size: clamp(34px, 10.5vw, 44px) !important;
        line-height: 0.95 !important;
        letter-spacing: -1px !important;

        margin-bottom: 25px !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    .mystery-description {
        font-size: 16px !important;
        line-height: 1.45 !important;
        margin-bottom: 30px !important;
    }

    .mystery-start-btn {
        width: 100% !important;
        max-width: 340px !important;

        padding: 18px 15px !important;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    .mystery-close {
        top: 16px !important;
        right: 16px !important;

        width: 46px !important;
        height: 46px !important;

        font-size: 28px !important;
    }

    /* ФИНАЛЕН MYSTERY ЕКРАН */

    .journey-final {
        width: 100% !important;
        max-width: 100% !important;

        padding: 70px 18px 30px !important;
        box-sizing: border-box !important;
    }

    .journey-final-content {
        width: 100% !important;
        max-width: 100% !important;
    }

    .journey-final-small {
        font-size: 9px !important;
        letter-spacing: 3px !important;
        margin-bottom: 22px !important;
    }

    .journey-final h2 {
        width: 100% !important;
        max-width: 100% !important;

        font-size: clamp(35px, 10.5vw, 45px) !important;
        line-height: 0.96 !important;
        letter-spacing: -1px !important;

        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    .journey-final-content > p:not(.journey-final-small) {
        font-size: 16px !important;
        line-height: 1.45 !important;
        margin-bottom: 28px !important;
    }

    .journey-final-buttons {
        width: 100% !important;
        gap: 10px !important;
    }

    .final-primary-btn,
    .final-secondary-btn {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        padding: 17px 12px !important;
        box-sizing: border-box !important;

        font-size: 12px !important;
    }
}

/* ==================================
   ОКОНЧАТЕЛНА МОБИЛНА ВЕРСИЯ
   ================================== */

@media (max-width: 600px) {

    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* HEADER */

    .site-header {
        width: 100% !important;
        height: 72px !important;
        min-height: 72px !important;

        padding: 10px 12px !important;
        gap: 6px !important;

        align-items: center !important;
        box-sizing: border-box !important;
    }

    .site-header .logo {
        max-width: 95px !important;

        font-size: 11px !important;
        line-height: 1.1 !important;
        letter-spacing: 1.3px !important;
        white-space: normal !important;
    }

    .header-actions {
        margin-left: auto !important;
        gap: 6px !important;
    }

    .enquire-btn {
        max-width: 142px !important;
        padding: 11px 12px !important;

        font-size: 9px !important;
        line-height: 1.1 !important;
        letter-spacing: 0.3px !important;
        white-space: nowrap !important;
    }

    .menu-btn {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
    }

    /* НАЧАЛНА СНИМКА */

    .hero {
        width: 100% !important;
        min-height: calc(100dvh - 72px) !important;

        padding: 60px 14px 45px !important;
        box-sizing: border-box !important;

        background-position: 58% center !important;
        overflow: hidden !important;
    }

    .hero-content {
        width: 100% !important;
        max-width: 100% !important;

        padding: 0 8px !important;
        box-sizing: border-box !important;
    }

    .hero-brand,
    .hero-title-wrap {
        width: 100% !important;
        max-width: 100% !important;
    }

    .hero-small-text {
        width: 100% !important;
        max-width: 100% !important;

        font-size: 8px !important;
        line-height: 1.5 !important;
        letter-spacing: 1.5px !important;
        white-space: normal !important;
    }

    /* ENEV GROUP вече се събира */

    .hero .hero-brand h1,
    .hero-title-wrap h1 {
        width: 100% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        font-size: 11.5vw !important;
        line-height: 0.95 !important;
        letter-spacing: -1px !important;

        white-space: nowrap !important;
        text-align: center !important;
    }

    .hero-brand-tagline {
        width: 100% !important;

        font-size: 7px !important;
        letter-spacing: 0.8px !important;
        white-space: nowrap !important;
    }

    .hero-brand-tagline span {
        padding: 0 2px !important;
    }

    .surprise-btn {
        width: 86% !important;
        max-width: 325px !important;

        padding: 17px 15px !important;

        font-size: 13px !important;
        letter-spacing: 1.5px !important;
    }

    /* Самолетчето остава в рамките */

    .hero-flight-animation {
        width: 94% !important;
        max-width: 94% !important;
        top: -48px !important;
    }

    .hero-moving-plane {
        font-size: 27px !important;
    }

    /* MYSTERY ЕКРАН */

    .mystery-screen {
        width: 100vw !important;
        max-width: 100vw !important;

        height: 100dvh !important;
        min-height: 100dvh !important;

        overflow: hidden !important;
    }

    .mystery-content {
        width: 100% !important;
        max-width: 100% !important;

        padding: 70px 18px 25px !important;
        box-sizing: border-box !important;
    }

    .mystery-label {
        font-size: 9px !important;
        letter-spacing: 4px !important;
        margin-bottom: 22px !important;
    }

    .mystery-content h2 {
        width: 100% !important;
        max-width: 100% !important;

        font-size: clamp(34px, 10.5vw, 44px) !important;
        line-height: 0.95 !important;
        letter-spacing: -1px !important;

        margin-bottom: 25px !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    .mystery-description {
        font-size: 16px !important;
        line-height: 1.45 !important;
        margin-bottom: 30px !important;
    }

    .mystery-start-btn {
        width: 100% !important;
        max-width: 340px !important;

        padding: 18px 15px !important;

        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    .mystery-close {
        top: 16px !important;
        right: 16px !important;

        width: 46px !important;
        height: 46px !important;

        font-size: 28px !important;
    }

    /* ФИНАЛЕН MYSTERY ЕКРАН */

    .journey-final {
        width: 100% !important;
        max-width: 100% !important;

        padding: 70px 18px 30px !important;
        box-sizing: border-box !important;
    }

    .journey-final-content {
        width: 100% !important;
        max-width: 100% !important;
    }

    .journey-final-small {
        font-size: 9px !important;
        letter-spacing: 3px !important;
        margin-bottom: 22px !important;
    }

    .journey-final h2 {
        width: 100% !important;
        max-width: 100% !important;

        font-size: clamp(35px, 10.5vw, 45px) !important;
        line-height: 0.96 !important;
        letter-spacing: -1px !important;

        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    .journey-final-content > p:not(.journey-final-small) {
        font-size: 16px !important;
        line-height: 1.45 !important;
        margin-bottom: 28px !important;
    }

    .journey-final-buttons {
        width: 100% !important;
        gap: 10px !important;
    }

    .final-primary-btn,
    .final-secondary-btn {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        padding: 17px 12px !important;
        box-sizing: border-box !important;

        font-size: 12px !important;
    }
}

/* ПО-СВЕТЪЛ ДВИЖЕЩ СЕ ЗЛАТЕН ЕФЕКТ */
.hero .hero-brand h1,
.hero-title-wrap h1 {
    color: transparent !important;

    background: linear-gradient(
        110deg,
        #d89b43 0%,
        #ffe4a3 20%,
        #c9822f 38%,
        #fff0bd 55%,
        #e8ad55 72%,
        #fff1c2 88%,
        #d6973e 100%
    ) !important;

    background-size: 260% 100% !important;
    background-position: 0% 50%;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;

    filter:
        drop-shadow(0 2px 2px rgba(66, 32, 4, 0.35))
        drop-shadow(0 0 8px rgba(255, 205, 112, 0.22));

    animation: enevGoldEffect 4.5s linear infinite !important;
}

@keyframes enevGoldEffect {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

/* НОВА ГАЛЕРИЯ – EVENTS */
.events-gallery-new {
    display: grid !important;
    grid-template-columns: repeat(12, 1fr) !important;
    grid-template-rows: 310px 310px 390px !important;
    gap: 20px !important;
}

.events-gallery-new .gallery-main {
    grid-column: 1 / 8 !important;
    grid-row: 1 / 3 !important;
}

.events-gallery-new .gallery-small {
    grid-column: 8 / 13 !important;
}
/* ДВЕТЕ ДОЛНИ СНИМКИ */
.events-gallery-new .gallery-bottom:nth-of-type(4) {
    grid-column: 1 / 7 !important;
    grid-row: 3 !important;
}

.events-gallery-new .gallery-bottom:nth-of-type(5) {
    grid-column: 7 / 13 !important;
    grid-row: 3 !important;
}

.events-gallery-new .gallery-bottom {
    width: 100% !important;
    height: 390px !important;
    min-width: 0 !important;
}

.events-gallery-new .gallery-bottom img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.events-gallery-new .gallery-bottom:nth-of-type(4) img {
    object-position: center center !important;
}

.events-gallery-new .gallery-bottom:nth-of-type(5) img {
    object-position: center 35% !important;
}


.events-gallery-new .events-gallery-photo {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid rgba(233, 184, 100, 0.55);
    background: #073f43;
}

.events-gallery-new .events-gallery-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: brightness(0.82) saturate(1.08);
    transition:
        transform 0.7s ease,
        filter 0.7s ease;
}

.events-gallery-new .gallery-main img {
    object-position: center center;
}

.events-gallery-new .gallery-small img {
    object-position: center center;
}

.events-gallery-new .gallery-bottom:last-of-type img {
    object-position: center 40%;
}

.events-gallery-new .events-gallery-photo::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0, 42, 45, 0.9) 0%,
        rgba(0, 42, 45, 0.15) 52%,
        transparent 75%
    );
    pointer-events: none;
}

.events-gallery-new .events-gallery-photo:hover img {
    transform: scale(1.045);
    filter: brightness(0.95) saturate(1.12);
}

.events-gallery-new figcaption {
    position: absolute;
    z-index: 2;
    left: 32px;
    right: 25px;
    bottom: 28px;
    color: #fff8e9;
}

.events-gallery-new figcaption span {
    display: block;
    margin-bottom: 10px;
    color: #efbd6d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.events-gallery-new figcaption h3 {
    margin: 0;
    color: #fff8e9;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(25px, 2.2vw, 39px);
    line-height: 1.05;
}

/* MOBILE */
@media (max-width: 700px) {
    .events-gallery-new {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: none !important;
        gap: 14px !important;
    }

    .events-gallery-new .gallery-main,
    .events-gallery-new .gallery-small,
    .events-gallery-new .gallery-bottom {
        grid-column: 1 !important;
        grid-row: auto !important;
        height: 360px !important;
    }

    .events-gallery-new .gallery-main {
        height: 430px !important;
    }

    .events-gallery-new figcaption {
        left: 20px;
        right: 18px;
        bottom: 22px;
    }

    .events-gallery-new figcaption span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .events-gallery-new figcaption h3 {
        font-size: 27px;
    }
}

/* EVENTS – ГЛАВЕН BACKGROUND */
.events-hero {
    position: relative !important;
    min-height: 82vh !important;

    background:
        linear-gradient(
            90deg,
            rgba(0, 45, 48, 0.90) 0%,
            rgba(0, 45, 48, 0.68) 45%,
            rgba(0, 45, 48, 0.25) 100%
        ),
        url("images/new4.jpg") center 55% / cover no-repeat !important;

    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
}

.events-hero-content {
    position: relative !important;
    z-index: 2 !important;
}

/* За да се вижда снимката добре на телефон */
@media (max-width: 700px) {
    .events-hero {
        min-height: 760px !important;

        background:
            linear-gradient(
                to bottom,
                rgba(0, 45, 48, 0.35) 0%,
                rgba(0, 45, 48, 0.60) 48%,
                rgba(0, 45, 48, 0.94) 100%
            ),
            url("images/new4.jpg") center center / cover no-repeat !important;

        align-items: flex-end !important;
        padding-bottom: 70px !important;
    }
}

/* =================================
   ОБЩА ЗАЩИТА ЗА МОБИЛНИ УСТРОЙСТВА
   ================================= */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

img,
video,
svg {
    max-width: 100%;
}

@media (max-width: 700px) {
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    main,
    header,
    footer,
    section {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }

    img,
    video {
        max-width: 100% !important;
    }

    h1,
    h2,
    h3,
    p {
        max-width: 100% !important;
    }

    h1,
    h2 {
        overflow-wrap: normal;
        word-break: normal;
    }

    a,
    button,
    input,
    select,
    textarea {
        max-width: 100% !important;
    }

    input,
    select,
    textarea {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* =================================
   ОБЩА ЗАЩИТА ЗА МОБИЛНИ УСТРОЙСТВА
   ================================= */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

img,
video,
svg {
    max-width: 100%;
}

@media (max-width: 700px) {
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    main,
    header,
    footer,
    section {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }

    img,
    video {
        max-width: 100% !important;
    }

    h1,
    h2,
    h3,
    p {
        max-width: 100% !important;
    }

    h1,
    h2 {
        overflow-wrap: normal;
        word-break: normal;
    }

    a,
    button,
    input,
    select,
    textarea {
        max-width: 100% !important;
    }

    input,
    select,
    textarea {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* =====================================
   EVENTS HERO – ОКОНЧАТЕЛНА MOBILE ВЕРСИЯ
   Този код трябва да бъде най-долу!
   ===================================== */

@media (max-width: 700px) {

    body .events-page .events-hero {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 760px !important;
        padding: 300px 22px 55px !important;
        align-items: flex-end !important;
        overflow: hidden !important;

        background:
            linear-gradient(
                to bottom,
                rgba(0, 45, 48, 0.05) 0%,
                rgba(0, 45, 48, 0.10) 25%,
                rgba(0, 45, 48, 0.90) 47%,
                #002f33 65%
            ),
            url("images/new4.jpg") center top / 100% auto no-repeat,
            #002f33 !important;
    }

    body .events-page .events-hero-content {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    body .events-page .events-hero-content h1 {
        width: 100% !important;
        max-width: 100% !important;
        font-size: clamp(42px, 12vw, 58px) !important;
        line-height: 0.95 !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
    }

    body .events-page .events-description {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    body .events-page .events-buttons {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        gap: 12px !important;
    }

    body .events-page .events-primary-btn,
    body .events-page .events-secondary-btn {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 17px 12px !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }
}

/* =====================================
   НОВ ПО-ГОЛЯМ И РЕАЛИСТИЧЕН АВТОБУС
   ===================================== */

/* Пътят става малко по-тесен */
.mystery-screen .journey-scene .road {
    width: 68% !important;
    height: 78% !important;

    clip-path: polygon(
        40% 0%,
        60% 0%,
        100% 100%,
        0% 100%
    ) !important;

    background:
        linear-gradient(
            90deg,
            #22282a 0%,
            #343b3d 48%,
            #343b3d 52%,
            #22282a 100%
        ) !important;

    box-shadow:
        inset 24px 0 40px rgba(0, 0, 0, 0.28),
        inset -24px 0 40px rgba(0, 0, 0, 0.28);
}

/* Основна форма на автобуса */
.mystery-screen .journey-scene .bus {
    width: clamp(190px, 18vw, 235px) !important;
    height: auto !important;
    aspect-ratio: 0.64 !important;

    left: 50%;
    bottom: 1%;

    background:
        linear-gradient(
            90deg,
            transparent 46%,
            rgba(227, 177, 91, 0.75) 47%,
            rgba(227, 177, 91, 0.75) 53%,
            transparent 54%
        ),
        linear-gradient(
            145deg,
            #063f49 0%,
            #087185 45%,
            #032f37 100%
        ) !important;

    border: 3px solid #dba85c !important;
    border-radius: 38px 38px 23px 23px !important;

    box-shadow:
        0 25px 45px rgba(0, 0, 0, 0.55),
        0 0 28px rgba(13, 124, 143, 0.35),
        inset 0 0 24px rgba(255, 255, 255, 0.12) !important;

    z-index: 7 !important;
}

/* Голямо предно стъкло отгоре */
.mystery-screen .journey-scene .bus::before {
    content: "";
    position: absolute;
    top: 5%;
    left: 10%;
    width: 80%;
    height: 18%;

    border-radius: 25px 25px 12px 12px;

    background:
        linear-gradient(
            145deg,
            rgba(116, 207, 232, 0.95),
            rgba(15, 75, 92, 0.95) 55%,
            rgba(1, 24, 30, 0.98)
        );

    border: 1px solid rgba(255, 255, 255, 0.35);

    box-shadow:
        inset 0 0 18px rgba(255, 255, 255, 0.18),
        0 5px 12px rgba(0, 0, 0, 0.25);
}

/* Задна броня */
.mystery-screen .journey-scene .bus::after {
    content: "";
    position: absolute;
    left: 14%;
    bottom: 3%;
    width: 72%;
    height: 3%;

    border-radius: 10px;

    background: linear-gradient(
        90deg,
        #c99145,
        #ffe0a0,
        #c99145
    );

    box-shadow: 0 0 10px rgba(244, 190, 99, 0.35);
}

/* Покривни панели */
.mystery-screen .journey-scene .bus-window {
    left: 18% !important;
    width: 64% !important;
    height: 12% !important;

    transform: none !important;

    border-radius: 13px !important;

    background:
        linear-gradient(
            145deg,
            #4dabc2,
            #155f72 48%,
            #062e38
        ) !important;

    border: 1px solid rgba(255, 255, 255, 0.26) !important;

    box-shadow:
        inset 0 0 14px rgba(255, 255, 255, 0.15),
        0 5px 10px rgba(0, 0, 0, 0.24) !important;
}

.mystery-screen .journey-scene .bus-window-1 {
    top: 28% !important;
}

.mystery-screen .journey-scene .bus-window-2 {
    top: 45% !important;
}

.mystery-screen .journey-scene .bus-window-3 {
    top: 62% !important;
}

/* Надпис */
.mystery-screen .journey-scene .bus-name {
    top: 79% !important;
    left: 50% !important;

    transform: translateX(-50%) !important;

    color: #f2c477 !important;
    font-size: clamp(8px, 0.75vw, 11px) !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    white-space: nowrap !important;

    text-shadow: 0 0 8px rgba(242, 196, 119, 0.45);
}

/* Червени задни светлини */
.mystery-screen .journey-scene .bus-light {
    bottom: 7% !important;
    width: 13% !important;
    height: 3.5% !important;

    background: #ff493f !important;
    border-radius: 20px !important;

    box-shadow:
        0 0 8px #ff493f,
        0 0 17px rgba(255, 73, 63, 0.7) !important;
}

.mystery-screen .journey-scene .bus-light-left {
    left: 12% !important;
}

.mystery-screen .journey-scene .bus-light-right {
    right: 12% !important;
}

/* Странични гуми */
.mystery-screen .journey-scene .bus-wheel {
    top: 40% !important;
    bottom: auto !important;

    width: 7% !important;
    height: 23% !important;

    background: linear-gradient(
        90deg,
        #050505,
        #252525,
        #050505
    ) !important;

    border: 2px solid #050505 !important;
    border-radius: 8px !important;

    animation: none !important;
    transform: none !important;
}

.mystery-screen .journey-scene .wheel-left {
    left: -6% !important;
}

.mystery-screen .journey-scene .wheel-right {
    right: -6% !important;
}

/* По-плавно движение – не се смалява прекалено бързо */
.mystery-screen.journey-active .bus {
    animation: premiumBusJourney 9s ease-in-out forwards !important;
}

@keyframes premiumBusJourney {
    0% {
        bottom: 0%;
        transform: translateX(-50%) scale(1.08);
        opacity: 1;
    }

    25% {
        bottom: 7%;
        transform: translateX(-50%) scale(1);
        opacity: 1;
    }

    45% {
        bottom: 15%;
        transform: translateX(-50%) scale(0.86);
        opacity: 1;
    }

    65% {
        bottom: 25%;
        transform: translateX(-50%) scale(0.68);
        opacity: 1;
    }

    82% {
        bottom: 35%;
        transform: translateX(-50%) scale(0.48);
        opacity: 1;
    }

    100% {
        bottom: 46%;
        transform: translateX(-50%) scale(0.28);
        opacity: 0;
    }
}

/* Размер на телефон */
@media (max-width: 600px) {
    .mystery-screen .journey-scene .road {
        width: 105% !important;
    }

    .mystery-screen .journey-scene .bus {
        width: 165px !important;
    }
}

/* =====================================
   СЯНКА ПОД ГЛАВНИЯ НАДПИС ENEV GROUP
   ===================================== */

.hero .hero-brand h1,
.hero .hero-title-wrap h1,
.hero h1 {
    filter:
        drop-shadow(0 5px 1px rgba(35, 21, 10, 0.65))
        drop-shadow(0 12px 14px rgba(0, 20, 24, 0.72))
        drop-shadow(0 0 10px rgba(255, 220, 150, 0.24)) !important;
}

/* =====================================
   ПОПРАВКА САМО ЗА ТЕЛЕФОН
   ===================================== */

@media (max-width: 700px) {

    /* Ръкописният текст отива под бутона */
    .hero .hero-side-words {
        position: absolute !important;
        top: auto !important;
        right: 22px !important;
        bottom: 65px !important;
        left: auto !important;

        width: 145px !important;
        max-width: 38vw !important;

        font-size: clamp(25px, 7.5vw, 34px) !important;
        line-height: 1.22 !important;
        text-align: center !important;

        color: #f5d391 !important;

        text-shadow:
            0 3px 3px rgba(44, 23, 8, 0.75),
            0 8px 16px rgba(0, 0, 0, 0.55),
            0 0 10px rgba(255, 214, 140, 0.22) !important;

        z-index: 3 !important;
    }

    /* Бутонът остава над другите елементи */
    .hero .surprise-btn {
        position: relative !important;
        z-index: 5 !important;
        margin-bottom: 40px !important;
    }

    /* Малко по-силна сянка на главния надпис на телефон */
    .hero .hero-brand h1,
    .hero .hero-title-wrap h1,
    .hero h1 {
        filter:
            drop-shadow(0 4px 1px rgba(38, 22, 9, 0.70))
            drop-shadow(0 9px 11px rgba(0, 18, 22, 0.78))
            drop-shadow(0 0 8px rgba(255, 220, 150, 0.25)) !important;
    }
}

/* =====================================
   SHADE ЕФЕКТ ВЪРХУ HERO ТЕКСТОВЕТЕ
   ===================================== */

/* Текстът над ENEV GROUP */
.hero-small-text {
    text-shadow:
        0 2px 1px rgba(38, 20, 7, 0.75),
        0 5px 8px rgba(0, 18, 22, 0.75),
        0 0 8px rgba(255, 216, 145, 0.30) !important;

    filter: drop-shadow(
        0 3px 3px rgba(0, 18, 22, 0.55)
    );
}

/* TRAVEL • TRANSPORT • EXPERIENCE */
.hero-brand-tagline {
    text-shadow:
        0 2px 1px rgba(38, 20, 7, 0.78),
        0 5px 8px rgba(0, 18, 22, 0.80),
        0 0 8px rgba(255, 216, 145, 0.28) !important;

    filter: drop-shadow(
        0 3px 3px rgba(0, 18, 22, 0.60)
    );
}

/* Ако думите са в отделни span елементи */
.hero-brand-tagline span {
    text-shadow:
        0 2px 1px rgba(38, 20, 7, 0.78),
        0 5px 8px rgba(0, 18, 22, 0.80),
        0 0 8px rgba(255, 216, 145, 0.28) !important;
}

/* Бутон ИЗНЕНАДАЙ МЕ */
.surprise-btn {
    text-shadow:
        0 1px 1px rgba(255, 255, 255, 0.20),
        0 2px 3px rgba(0, 25, 29, 0.28) !important;

    box-shadow:
        0 5px 0 rgba(116, 70, 28, 0.52),
        0 13px 25px rgba(0, 20, 24, 0.46),
        0 0 16px rgba(255, 205, 125, 0.20) !important;
}

/* При натискане */
.surprise-btn:active {
    transform: translateY(3px) !important;

    box-shadow:
        0 2px 0 rgba(116, 70, 28, 0.55),
        0 7px 15px rgba(0, 20, 24, 0.42) !important;
}

/* FINAL3 – ЦЕЛИЯТ АВТОБУС ДА СЕ ВИЖДА */
.events-gallery-new .gallery-bottom:nth-of-type(5) img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ЦЕЛИТЕ СНИМКИ В АВТОБУСЕН ТРАНСПОРТ */
.transport-gallery-item {
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    background: #013037 !important;
}

.transport-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Без увеличаване и повторно изрязване */
.transport-gallery-item:hover img {
    transform: none !important;
}

/* ТЕЛЕФОН */
@media (max-width: 600px) {
    .transport-gallery-item {
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
    }

    .transport-gallery-item img {
        object-fit: contain !important;
        object-position: center !important;
    }
}

/* НОВО ПОДРЕЖДАНЕ НА ТРАНСПОРТНИТЕ СНИМКИ */
.transport-gallery-grid {
    display: grid !important;
    grid-template-columns: 3fr 2fr !important;
    grid-template-rows: repeat(2, auto) !important;
    gap: 18px !important;
    align-items: start !important;
}

/* Голямата квадратна снимка */
.transport-gallery-item:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
}

/* Двете хоризонтални снимки */
.transport-gallery-item:nth-child(2),
.transport-gallery-item:nth-child(3) {
    grid-column: 2 !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
}

/* Снимките запълват правилната рамка */
.transport-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* Не ги увеличаваме при посочване */
.transport-gallery-item:hover img {
    transform: none !important;
}

/* ТЕЛЕФОН */
@media (max-width: 700px) {
    .transport-gallery-grid {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
        gap: 15px !important;
    }

    .transport-gallery-item:nth-child(1),
    .transport-gallery-item:nth-child(2),
    .transport-gallery-item:nth-child(3) {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
    }

    .transport-gallery-item img {
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* ОКОНЧАТЕЛНА МОБИЛНА ВЕРСИЯ – TRANSPORT GALLERY */
@media (max-width: 700px) {
    .transport-gallery {
        padding: 65px 16px !important;
    }

    .transport-gallery-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
        gap: 16px !important;
    }

    /* Първата снимка е квадратна */
    .transport-gallery-item:nth-child(1) {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }

    /* Другите две са хоризонтални */
    .transport-gallery-item:nth-child(2),
    .transport-gallery-item:nth-child(3) {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
    }

    .transport-gallery-item img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    .transport-gallery-item figcaption {
        left: 18px !important;
        right: 18px !important;
        bottom: 18px !important;
        gap: 10px !important;
    }

    .transport-gallery-item figcaption span {
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .transport-gallery-item figcaption p {
        max-width: 210px !important;
        font-size: 21px !important;
        line-height: 1.05 !important;
    }
}/* ОКОНЧАТЕЛНА МОБИЛНА ВЕРСИЯ – TRANSPORT GALLERY */
@media (max-width: 700px) {
    .transport-gallery {
        padding: 65px 16px !important;
    }

    .transport-gallery-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
        gap: 16px !important;
    }

    /* Първата снимка е квадратна */
    .transport-gallery-item:nth-child(1) {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }

    /* Другите две са хоризонтални */
    .transport-gallery-item:nth-child(2),
    .transport-gallery-item:nth-child(3) {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
    }

    .transport-gallery-item img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    .transport-gallery-item figcaption {
        left: 18px !important;
        right: 18px !important;
        bottom: 18px !important;
        gap: 10px !important;
    }

    .transport-gallery-item figcaption span {
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .transport-gallery-item figcaption p {
        max-width: 210px !important;
        font-size: 21px !important;
        line-height: 1.05 !important;
    }
}

/* ==================================
   LICENSES AND REGISTRATIONS
   ================================== */

.licenses-section {
    padding: 100px 6%;
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(232, 180, 94, 0.12),
            transparent 38%
        ),
        #003b40;
    border-top: 1px solid rgba(231, 183, 101, 0.32);
}

.licenses-heading {
    max-width: 1250px;
    margin: 0 auto 48px;
}

.licenses-heading > p {
    margin: 0 0 15px;
    color: #ecba6b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.licenses-heading h2 {
    max-width: 800px;
    margin: 0;
    color: #fff8e9;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(40px, 5vw, 70px);
    font-weight: normal;
    line-height: 1;
}

.licenses-heading h2 em {
    display: block;
    color: #ecba6b;
    font-weight: normal;
}

.licenses-grid {
    max-width: 1250px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.license-card {
    position: relative;
    min-height: 480px;
    padding: 42px;
    border: 1px solid rgba(231, 183, 101, 0.48);
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.06),
            rgba(255, 255, 255, 0.015)
        );
    color: #fff8e9;
    overflow: hidden;
}

.license-card::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -90px;
    width: 230px;
    height: 230px;
    border: 1px solid rgba(231, 183, 101, 0.18);
    border-radius: 50%;
}

.license-number {
    color: rgba(236, 186, 107, 0.65);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 4px;
}

.license-icon {
    margin: 35px 0 24px;
    color: #ecba6b;
    font-size: 34px;
}

.license-type {
    margin: 0 0 14px;
    color: #ecba6b;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
}

.license-card h3 {
    margin: 0 0 28px;
    color: #fff8e9;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(29px, 3vw, 42px);
    font-weight: normal;
    line-height: 1.05;
}

.license-information {
    position: relative;
    z-index: 2;
    display: grid;
    gap: 7px;
    color: rgba(255, 248, 233, 0.82);
    font-size: 14px;
    line-height: 1.5;
}

.license-information p {
    margin: 0;
}

.license-information strong {
    color: #fff8e9;
}

.license-link {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin-top: 25px;
    color: #ecba6b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-decoration: none;
}

.license-link:hover {
    color: #fff8e9;
}

/* PHONE */
@media (max-width: 700px) {
    .licenses-section {
        padding: 70px 18px;
    }

    .licenses-heading {
        margin-bottom: 32px;
    }

    .licenses-heading h2 {
        font-size: 40px;
    }

    .licenses-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .license-card {
        min-height: auto;
        padding: 30px 23px;
    }

    .license-card h3 {
        font-size: 30px;
    }

    .license-information {
        font-size: 13px;
    }
}

/* КОМПАКТНА СЕКЦИЯ С ЛИЦЕНЗИ */
.licenses-section {
    padding: 48px 6% !important;
    background: #003b40 !important;
}

.licenses-heading {
    max-width: 1250px !important;
    margin: 0 auto 22px !important;
}

.licenses-heading > p {
    margin-bottom: 8px !important;
    font-size: 9px !important;
    letter-spacing: 3px !important;
    opacity: 0.8 !important;
}

.licenses-heading h2 {
    margin: 0 !important;
    font-size: clamp(27px, 3vw, 38px) !important;
    line-height: 1.1 !important;
}

.licenses-grid {
    gap: 12px !important;
}

.license-card {
    min-height: 0 !important;
    padding: 24px 27px !important;
    border-color: rgba(231, 183, 101, 0.28) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.025) !important;
}

/* Премахваме големите декоративни елементи */
.license-number,
.license-icon,
.license-card::after {
    display: none !important;
}

.license-type {
    margin-bottom: 8px !important;
    font-size: 8px !important;
    letter-spacing: 2.3px !important;
    opacity: 0.78 !important;
}

.license-card h3 {
    margin-bottom: 17px !important;
    font-size: clamp(21px, 2vw, 27px) !important;
    line-height: 1.05 !important;
}

.license-information {
    gap: 3px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    opacity: 0.85 !important;
}

.license-link {
    margin-top: 14px !important;
    font-size: 9px !important;
    letter-spacing: 1.5px !important;
    opacity: 0.8 !important;
}

/* ТЕЛЕФОН */
@media (max-width: 700px) {
    .licenses-section {
        padding: 42px 18px !important;
    }

    .licenses-heading h2 {
        font-size: 28px !important;
    }

    .licenses-grid {
        grid-template-columns: 1fr !important;
    }

    .license-card {
        padding: 23px 20px !important;
    }

    .license-card h3 {
        font-size: 23px !important;
    }
}

/* ==================================
   FINAL MOBILE FIX – EVENTS GALLERY
   ================================== */

@media (max-width: 700px) {

    body .events-gallery {
        width: 100% !important;
        padding: 60px 16px !important;
        overflow: hidden !important;
    }

    body .events-gallery .events-gallery-new {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 16px !important;
    }

    body .events-gallery-new .events-gallery-photo,
    body .events-gallery-new .gallery-main,
    body .events-gallery-new .gallery-small,
    body .events-gallery-new .gallery-bottom,
    body .events-gallery-new .gallery-bottom:nth-of-type(4),
    body .events-gallery-new .gallery-bottom:nth-of-type(5) {
        display: block !important;
        position: relative !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        height: auto !important;
        aspect-ratio: auto !important;

        grid-column: auto !important;
        grid-row: auto !important;

        margin: 0 !important;
        overflow: hidden !important;
        border-radius: 17px !important;
    }

    /* Рамката следва истинския размер на снимката */
    body .events-gallery-new .events-gallery-photo img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;

        object-fit: contain !important;
        object-position: center !important;

        transform: none !important;
    }

    body .events-gallery-new figcaption {
        left: 20px !important;
        right: 20px !important;
        bottom: 20px !important;
        width: auto !important;
    }

    body .events-gallery-new figcaption span {
        font-size: 9px !important;
        letter-spacing: 2.5px !important;
    }

    body .events-gallery-new figcaption h3 {
        max-width: 100% !important;
        font-size: 27px !important;
        line-height: 1.05 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }
}

/* ОКОНЧАТЕЛЕН MOBILE FIX – EVENTS GALLERY */
@media screen and (max-width: 700px) {

    body .events-gallery {
        padding: 55px 16px !important;
        overflow: hidden !important;
    }

    body .events-gallery .events-gallery-new {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 16px !important;
    }

    body .events-gallery-new > .events-gallery-photo,
    body .events-gallery-new > .gallery-main,
    body .events-gallery-new > .gallery-small,
    body .events-gallery-new > .gallery-bottom,
    body .events-gallery-new > .gallery-bottom:nth-of-type(4),
    body .events-gallery-new > .gallery-bottom:nth-of-type(5) {
        display: block !important;
        position: relative !important;
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        grid-column: auto !important;
        grid-row: auto !important;
        margin: 0 !important;
        overflow: hidden !important;
        border-radius: 17px !important;
    }

    body .events-gallery-new .events-gallery-photo img,
    body .events-gallery-new .gallery-bottom:nth-of-type(4) img,
    body .events-gallery-new .gallery-bottom:nth-of-type(5) img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        transform: none !important;
    }

    body .events-gallery-new figcaption {
        left: 20px !important;
        right: 20px !important;
        bottom: 20px !important;
        width: auto !important;
    }

    body .events-gallery-new figcaption h3 {
        font-size: 27px !important;
        line-height: 1.05 !important;
        word-break: normal !important;

    }
}

/* =====================================
   PREMIUM ROAD LIGHT ANIMATION
   ===================================== */

/* Скриваме старите лампички */
.roadside-reflectors span {
    display: none !important;
}

/* Двата светлинни маршрута */
.roadside-reflectors {
    display: block;
    overflow: hidden;
    pointer-events: none;
}

.left-reflectors {
    --route-angle: 42deg;
}

.right-reflectors {
    --route-angle: -42deg;
}

.roadside-reflectors::before,
.roadside-reflectors::after {
    content: "";
    position: absolute;

    top: 33%;
    left: 50%;

    height: 100%;
    transform-origin: center top;
    transform:
        translateX(-50%)
        rotate(var(--route-angle));

    opacity: 0;
}

/* Основната движеща се златна следа */
.roadside-reflectors::before {
    width: 3px;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0 22px,
            rgba(255, 226, 164, 0.15) 22px 30px,
            #f2c477 30px 74px,
            transparent 74px 145px
        );

    background-size: 100% 145px;

    filter:
        drop-shadow(0 0 5px rgba(242, 196, 119, 0.9))
        drop-shadow(0 0 12px rgba(228, 163, 102, 0.45));
}

/* Мекото сияние около следата */
.roadside-reflectors::after {
    width: 16px;

    background:
        repeating-linear-gradient(
            to bottom,
            transparent 0 25px,
            rgba(228, 163, 102, 0.32) 25px 72px,
            transparent 72px 145px
        );

    background-size: 100% 145px;
    filter: blur(7px);
}

/* Светлините се движат само когато автобусът тръгне */
.mystery-screen.journey-active
.roadside-reflectors::before {
    opacity: 0.9;
    animation: premiumRouteFlow 0.85s linear infinite;
}

.mystery-screen.journey-active
.roadside-reflectors::after {
    opacity: 0.55;
    animation: premiumRouteFlow 0.85s linear infinite;
    animation-delay: -0.25s;
}

@keyframes premiumRouteFlow {
    from {
        background-position-y: -145px;
    }

    to {
        background-position-y: 145px;
    }
}

/* По-плавно движение на средната линия */
.mystery-screen.journey-active .road-line {
    animation: roadMove 0.65s linear infinite !important;

    filter:
        drop-shadow(0 0 4px rgba(255, 245, 220, 0.55));
}

/* Пулсиращи задни светлини на автобуса */
.mystery-screen.journey-active .bus-light {
    animation: premiumTailLights 0.8s ease-in-out infinite alternate !important;
}

@keyframes premiumTailLights {
    from {
        box-shadow:
            0 0 7px #ff493f,
            0 0 15px rgba(255, 73, 63, 0.55);
    }

    to {
        box-shadow:
            0 0 13px #ff493f,
            0 0 30px rgba(255, 73, 63, 0.9),
            0 12px 24px rgba(255, 60, 50, 0.35);
    }
}

/* Правилен ъгъл на светлинните следи на телефон */
@media screen and (max-width: 600px) {

    .left-reflectors {
        --route-angle: 19deg;
    }

    .right-reflectors {
        --route-angle: -19deg;
    }

    .roadside-reflectors::before,
    .roadside-reflectors::after {
        top: 34%;
        height: 90%;
    }

    .roadside-reflectors::before {
        width: 2px;
    }

    .roadside-reflectors::after {
        width: 11px;
    }
}