*{margin:0;padding:0;box-sizing:border-box}
        :root{
            --olive:#6b7c2e;
            --olive-2:#73853a;
            --olive-3:#86945a;
            --olive-4:#95a46c;
            --olive-deep:#566523;
            --cream:#ebe7d5;
            --cream-2:#f3efdf;
            --yellow:#efb80d;
            --yellow-2:#d8a106;
            --white:#fff;
            --text:#5f6f2d;
            --text-soft:#f3eedc;
            --shadow:0 14px 40px rgba(35,46,11,.18);
            --shadow-soft:0 10px 28px rgba(35,46,11,.11);
        }

        html,body{width:100%;min-height:100%;scroll-behavior:smooth}
        body{
            font-family:'Inter',sans-serif;
            background:
                radial-gradient(circle at 20% 20%, rgba(255,255,255,.03), transparent 28%),
                radial-gradient(circle at 78% 35%, rgba(255,255,255,.025), transparent 24%),
                var(--olive);
            color:#fff;
            overflow-x:hidden;
        }
        body::before{
            content:"";
            position:fixed;
            inset:0;
            pointer-events:none;
            opacity:.05;
            background-image:radial-gradient(rgba(255,255,255,.55) .7px, transparent .7px);
            background-size:6px 6px;
            mix-blend-mode:soft-light;
        }

        a{text-decoration:none;color:inherit}
        img{display:block;max-width:100%}
        button{font-family:inherit}

.container{
    width:min(100%, 1380px);
    margin:0 auto;
    padding:28px 24px 0;
    position:relative;
    z-index:3000;
}

        /* topbar */
.topbar{
    background:linear-gradient(180deg, rgba(151,165,95,.62), rgba(125,139,70,.54));
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 18px 36px rgba(36,48,12,.16);
    backdrop-filter:blur(14px);
            min-height:86px;
            border-radius:999px;
            display:flex;
            align-items:center;
    justify-content:space-between;
    flex-wrap:nowrap;
    gap:20px;
    padding:10px 16px 10px 24px;
    position:relative;
    z-index:3100;
    overflow:visible;
}
        .topbar-left,.topbar-right{
            display:flex;
            align-items:center;
            flex-wrap:nowrap;
            gap:18px;
        }
        .brand{
            display:flex;
            align-items:center;
            gap:14px;
            flex-shrink:0;
        }
        .brand-logo{
            width:64px;
            height:36px;
        }
        .brand-name{
            color:var(--yellow);
            font-family:'Oswald',sans-serif;
            font-size:22px;
            font-weight:500;
            line-height:1;
            text-transform:uppercase;
            white-space:nowrap;
        }
        .nav{
            display:flex;
            align-items:center;
            gap:34px;
            flex-wrap:wrap;
        }
        .nav a{
            font-size:15px;
            font-weight:500;
            color:#f3f0e3;
            opacity:.95;
            white-space:nowrap;
            position:relative;
            transition:.22s ease;
        }
        .nav a::after{
            content:"";
            position:absolute;
            left:0;
            bottom:-7px;
            width:100%;
            height:2px;
            border-radius:999px;
            background:var(--yellow);
            transform:scaleX(0);
            transform-origin:left;
            transition:transform .22s ease;
        }
        .nav a:hover{
            color:#fff7dc;
        }
        .nav a:hover::after{
            transform:scaleX(1);
        }

        .phone{
            font-size:16px;
            font-weight:500;
            white-space:nowrap;
            color:#fff;
        }

        .socials{
            display:flex;
            align-items:center;
            gap:9px;
        }
        .social-btn{
            width:38px;
            height:38px;
            border-radius:50%;
            background:rgba(255,255,255,.96);
            color:var(--olive);
            display:flex;
            align-items:center;
            justify-content:center;
            font-size:18px;
            box-shadow:0 10px 22px rgba(58,67,23,.14);
            transition:.22s ease;
        }
        .social-btn:hover{
            transform:translateY(-3px);
            background:#fff8e5;
            color:var(--olive-deep);
        }

.lang-switcher{
    position:relative;
    flex-shrink:0;
    z-index:3200;
}
.lang-switcher[open]{
    z-index:5200;
}
.lang-trigger{
    min-width:74px;
    height:46px;
    border-radius:999px;
    background:linear-gradient(180deg, rgba(255,255,255,.2), rgba(255,255,255,.11));
    color:#fff8e5;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 12px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 10px 24px rgba(35,46,11,.18), inset 0 1px 0 rgba(255,255,255,.12);
    transition:background .22s ease, transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    font-family:inherit;
    backdrop-filter:blur(12px);
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.lang-trigger::-webkit-details-marker{
    display:none;
}
.lang-trigger:hover{
    background:linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.14));
    border-color:rgba(255,255,255,.26);
    transform:translateY(-1px);
    box-shadow:0 12px 26px rgba(35,46,11,.22), inset 0 1px 0 rgba(255,255,255,.16);
}
        .lang-flag{
            width:24px;
            height:18px;
            border-radius:5px;
            display:inline-block;
            flex-shrink:0;
            box-shadow:inset 0 0 0 1px rgba(255,255,255,.22), 0 3px 8px rgba(0,0,0,.12);
            overflow:hidden;
        }
        .lang-flag svg{
            display:block;
            width:100%;
            height:100%;
        }
.lang-code{
    letter-spacing:.16em;
    font-size:10px;
    color:#fff9e8;
}
.lang-caret{
    font-size:10px;
    opacity:.62;
    pointer-events:none;
    transition:transform .18s ease, opacity .18s ease;
}
.lang-switcher[open] .lang-caret{
    transform:rotate(180deg);
    opacity:1;
}
.lang-menu{
    position:absolute;
    top:calc(100% + 12px);
    right:0;
    min-width:180px;
    padding:6px;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(24,36,17,.98), rgba(17,27,12,.97));
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 20px 44px rgba(16,24,9,.34);
    backdrop-filter:blur(16px);
    z-index:5000;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px) scale(.98);
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.lang-switcher[open] .lang-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}
.lang-option{
    width:100%;
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 11px;
    border-radius:14px;
    color:#f7f2e2;
    transition:background .18s ease, transform .18s ease, border-color .18s ease;
    background:transparent;
    border:1px solid transparent;
    text-align:left;
    cursor:pointer;
    font-family:inherit;
    box-shadow:none;
    text-decoration:none;
}
.lang-option:hover,
.lang-option.active{
    background:rgba(255,255,255,.07);
    border-color:rgba(255,255,255,.06);
}
.lang-option:hover{
    transform:none;
}
.lang-option-copy{
    display:flex;
    flex-direction:column;
    min-width:0;
    line-height:1.05;
    gap:3px;
}
.lang-option-code{
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
    color:#fff6d4;
}
.lang-option-name{
    font-size:11px;
    color:rgba(255,247,220,.68);
    white-space:nowrap;
}

        .reserve-btn{
            min-width:190px;
            height:58px;
            border:none;
            border-radius:999px;
            background:linear-gradient(180deg, #f3c42a 0%, #dca50c 100%);
            color:#fff;
            font-size:17px;
            font-weight:600;
            cursor:pointer;
            padding:0 26px;
            box-shadow:var(--shadow);
            transition:.2s ease;
        }
        .reserve-btn:hover{
            background:linear-gradient(180deg, #f0bf1c 0%, #c79200 100%);
            transform:translateY(-2px);
        }

@media (max-width: 1024px){
    .lang-trigger{
        min-width:70px;
        height:42px;
    }
}
