    html {
        scrollbar-gutter: stable;
    }

    @font-face {
        font-family: 'ProximaNova';
        src: url('/fonts/proximanova_regular.ttf') format('truetype');
        font-weight: normal;
        font-style: normal;
    }

    @font-face {
        font-family: 'ProximaNova';
        src: url('/fonts/proximanova_bold.otf') format('opentype');
        font-weight: bold;
        font-style: normal;
    }

    .category-link {
        text-transform: uppercase;
        font-size: 14px;
    }

    .img-wrapper {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
    }

    .img-wrapper img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        user-select: none;
        -webkit-user-drag: none;
        transition: none;
        /* vypnuto, protože stmívání je přes overlay */
    }

    .overlay-block {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0);
        transition: background 0.3s ease;
        pointer-events: none;
        z-index: 10;
    }

    .square {
        aspect-ratio: 1 / 1;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        overflow: hidden;
        background: none;
        position: relative;
        cursor: pointer;
    }

    .square:hover .overlay-block,
    .square.hover-active .overlay-block {
        background: rgba(0, 0, 0, 0.3);
        /* Zde upravíte míru stmavení */
    }

    .img-alt {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        background: rgba(0, 0, 0, 0.3);
        opacity: 0;
        transition: opacity 0.3s ease;
        font-size: 1.2em;
        pointer-events: none;
        text-align: center;
        padding: 10px;
        font-size: 14px;
        z-index: 20;

    }

    .square:hover .img-alt,
    .square.hover-active .img-alt {
        opacity: 1;
    }

    body {
        background-color: #222222;
        color: #fff;
        font-family: 'ProximaNova', Arial, sans-serif;
    }

    h1 {
        font-family: 'ProximaNova', Arial, sans-serif;
        font-weight: bold;
    }

    p {
        font-size: 12px;
        color: #888888;
    }

    .footer {
        color: #484848;
        padding: 20px 0;
    }

    @media (max-width: 700px) {
        .info {
            margin-left: 10px;
            margin-right: 10px;
        }
    }

    .Gallery {
        max-width: 700px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .text-muted {
        color: #888888 !important;
    }

    .custom-container {
        max-width: 1600px;
    }

    .navbar,
    .navbar-nav .nav-link,
    .navbar-brand {
        color: #fff !important;
    }

    .navbar-nav .nav-link.active {
        color: #fff !important;
    }

    .navbar-toggler {
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
    }


    .logo-small {
        width: 165px;
        height: auto;
    }

    .glightbox-button-prev,
    .glightbox-button-next {
        width: 25% !important;
        height: 100% !important;
        top: 0 !important;
        transform: none !important;
        background: none !important;
    }

    /* Menší klikací plocha */
    .hamburger {
        padding: 6px;
        /* místo původních ~15px */
    }

    /* Zmenšený box pro čárky */
    .hamburger-box {
        width: 24px;
        /* původně 40px */
        height: 16px;
        /* původně 24px */
    }

    /* Kratší a tenčí čárky */
    .hamburger-inner,
    .hamburger-inner::before,
    .hamburger-inner::after {
        width: 24px;
        /* délka čárek */
        height: 2px;
        /* tloušťka čárek */
    }

    /* Úprava rozestupu čárek pro slider verzi */
    .hamburger-inner::before {
        top: -6px;
        /* místo -10px */
    }

    .hamburger-inner::after {
        top: 6px;
        /* místo 10px */
    }

    /* Barva čárek – normální stav */
    .hamburger-inner,
    .hamburger-inner::before,
    .hamburger-inner::after {
        background-color: #888888 !important;
    }

    /* Barva čárek – aktivní stav (po kliknutí) */
    .hamburger.is-active .hamburger-inner,
    .hamburger.is-active .hamburger-inner::before,
    .hamburger.is-active .hamburger-inner::after {
        background-color: #888888 !important;
    }


    .youtube-embed-wrap {
        position: relative;
        width: 100%;
        aspect-ratio: 16/9;
    }

    .youtube-embed-wrap iframe {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        border: 0 !important;
    }


    .center {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        margin: 0 auto;
        max-width: 600px;
        padding: 20px;
    }

    .center form {
        width: 100%;
        max-width: 400px;
        margin-bottom: 30px;
        text-align: left;
        /* Zarovnání obsahu formuláře vlevo */
    }

    .center form label {
        display: block;
        text-align: left;
        margin-bottom: 5px;
        font-size: 12px;
        /* Menší velikost písma pro labely */
        color: #888888;
        /* Šedá barva, stejná jako pro .text-muted */
    }

    .required {
        color: #ff4d4d;
        margin-left: 3px;
    }

    /* Přidejte na konec souboru */
    .button-error-container {
        display: flex;
        align-items: center;
        width: 100%;
        gap: 15px;
        /* Mezera mezi tlačítkem a chybovou hláškou */
    }

    .center .error-container {
        margin-bottom: 0;
        /* Odstraníme spodní margin, když bude vedle tlačítka */
    }

    .center .error-container .error {
        color: #ff4d4d;
        font-size: 14px;
        /* Stejná velikost jako text tlačítka */
        font-weight: bold;
        margin: 0;
        line-height: 1.4;
    }

    .center input,
    .center textarea {
        width: 100%;
        padding: 10px;
        margin-bottom: 15px;
        background-color: #ffffff;
        border: 1px solid #444;
        color: black;
        border-radius: 4px;
    }

    .center button {
        padding: 8px 20px;
        background-color: #333333;
        color: white;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-weight: bold;
        align-self: flex-start;
        /* Zarovnání tlačítka vlevo */
        margin-left: 0;
        /* Ujistíme se, že není žádný levý margin */
    }

    .center button:hover {
        background-color: #2a6f97;
    }

    .center svg {
        margin: 20px 0;
    }

    .mobile-spacer {
        height: 17px;
    }

    .mobile-spacer .nav-link {
        height: 100%;
    }

    .Gallery-items video,
    .Gallery-items iframe,
    .Gallery-items .img-wrapper,
    .Gallery-items a {
        display: block;
        margin: 0;
        padding: 0;
    }

    /* YouTube iframe jako blok */
    .youtube-embed-wrap iframe {
        display: block;
    }

    /* Pokud by mezera byla způsobena inline-whitespace, toto ji odstraní,
    ale zachová normální velikost potomků */
    .Gallery-items {
        font-size: 0;
    }

    .Gallery-items>* {
        font-size: initial;
    }