*{margin:0;padding:0;box-sizing:border-box}
        :root{
            --olive:#56642B;
            --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{width:100%;min-height:100%;scroll-behavior:smooth;background:#3a4a18;}
        body{
            width:100%;min-height:100%;
            font-family:'Inter',sans-serif;
            background-image:
                url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.38'/%3E%3C/svg%3E"),
                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%);
            background-color:var(--olive);
            background-size:200px 200px, auto, auto;
            background-blend-mode:screen, normal, normal;
            color:#fff;
            overflow-x:hidden;
            border-bottom-left-radius:56px;
            border-bottom-right-radius:56px;
        }

        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;
    min-height:120px;
}

        /* 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);
    transition:background .3s ease, box-shadow .3s ease;
    min-height:86px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:nowrap;
    gap:20px;
    padding:10px 14px 10px 18px;
    position:fixed;
    top:16px;
    left:50%;
    transform:translateX(-50%);
    width:max-content;
    max-width:calc(100% - 20px);
    z-index:3100;
    overflow:visible;
}
.topbar.scrolled{
    background:linear-gradient(180deg, rgba(101,115,50,.92), rgba(85,99,35,.90));
    box-shadow:0 8px 32px rgba(36,48,12,.32);
}
        .topbar-left,.topbar-right{
            display:flex;
            align-items:center;
            flex-wrap:nowrap;
            gap:18px;
        }
        .topbar-left{
            flex-shrink:0;
        }
        .menu-toggle{
            display:none;
            width:46px;
            height:46px;
            border:1px solid rgba(255,255,255,.2);
            border-radius:50%;
            background:rgba(255,255,255,.14);
            color:#fff8e5;
            align-items:center;
            justify-content:center;
            flex-direction:column;
            gap:5px;
            cursor:pointer;
            box-shadow:0 10px 24px rgba(35,46,11,.18);
        }
        .menu-toggle span{
            width:20px;
            height:2px;
            border-radius:999px;
            background:currentColor;
            transition:transform .2s ease, opacity .2s ease;
        }
        .topbar.is-menu-open .menu-toggle span:nth-child(1){
            transform:translateY(7px) rotate(45deg);
        }
        .topbar.is-menu-open .menu-toggle span:nth-child(2){
            opacity:0;
        }
        .topbar.is-menu-open .menu-toggle span:nth-child(3){
            transform:translateY(-7px) rotate(-45deg);
        }
        .brand{
            display:flex;
            align-items:center;
            gap:14px;
            flex-shrink:0;
        }
        .brand-logo{
            width:clamp(190px, 20vw, 252px);
            height:auto;
            max-height:56px;
            object-fit:contain;
        }
        .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:26px;
            flex-wrap:nowrap;
        }
        .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{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            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;
            text-align:center;
            text-decoration:none;
            white-space:nowrap;
            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){
    .topbar{
        border-radius:28px;
        align-items:center;
        padding:16px;
        gap:14px;
    }

    .topbar-left{
        min-width:0;
    }

    .topbar-right{
        flex-wrap:nowrap;
    }

    .nav{
        gap:16px;
    }

    .lang-trigger{
        min-width:70px;
        height:42px;
    }
}

@media (max-width: 1400px){
    .topbar{
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:center;
        border-radius:24px;
        row-gap:0;
        width:calc(100% - 32px);
    }

    .topbar-left{
        display:contents;
    }

    .brand{
        grid-column:1;
        grid-row:1;
        min-width:0;
    }

    .brand-name{
        font-size:18px;
        white-space:normal;
        line-height:1.08;
    }

    .brand-logo{
        width:min(62vw, 212px);
        height:auto;
        max-height:48px;
    }

    .menu-toggle{
        display:flex;
        grid-column:2;
        grid-row:1;
    }

    .nav,
    .topbar-right{
        grid-column:1 / -1;
        width:100%;
        display:none;
    }

    .topbar.is-menu-open .nav,
    .topbar.is-menu-open .topbar-right{
        display:flex;
    }

    .nav{
        grid-row:2;
        margin-top:10px;
        padding-top:14px;
        border-top:1px solid rgba(255,255,255,.14);
        flex-direction:column;
        align-items:stretch;
        gap:4px;
    }

    .topbar-right{
        grid-row:3;
        flex-direction:column;
        align-items:stretch;
        gap:10px;
        padding-top:12px;
    }

    .nav a{
        font-size:15px;
        width:100%;
        padding:10px 12px;
        border-radius:14px;
        background:rgba(255,255,255,.07);
    }

    .nav a::after{
        display:none;
    }

    .phone{
        font-size:14px;
        width:100%;
        padding:10px 12px;
        border-radius:14px;
        background:rgba(255,255,255,.07);
        text-align:center;
    }

    .socials{
        width:100%;
        justify-content:center;
    }

    .social-btn{
        width:44px;
        height:44px;
        font-size:18px;
    }

    .lang-switcher{
        width:100%;
    }

    .lang-trigger{
        width:100%;
        height:44px;
    }

    .lang-menu{
        position:static;
        width:100%;
        min-width:0;
        margin-top:8px;
        transform:none;
    }

    .lang-switcher[open] .lang-menu{
        transform:none;
    }

    .reserve-btn{
        width:100%;
        min-width:0;
        height:46px;
        font-size:14px;
    }
}

/* ===== BOOKING MODAL ===== */
.book-modal-overlay{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:20px;align-items:flex-start;justify-content:center;overflow-y:auto;}
.book-modal-overlay.is-open{display:flex;}
.book-modal-inner{position:relative;width:100%;max-width:930px;margin:auto;}
@keyframes bmSlideIn{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.book-modal-close{position:absolute;top:14px;right:14px;z-index:10;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(6px);font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#f3efdf;box-shadow:0 4px 14px rgba(0,0,0,.2);transition:.2s ease;}
.book-modal-close:hover{background:rgba(255,255,255,.3);transform:scale(1.08);}
.book-modal-inner .contact-box{position:relative;background:#8d9a5f;animation:bmSlideIn .28s ease;border-radius:24px;padding:48px 48px 38px;border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 50px rgba(29,39,10,.2);transform:none;margin:0;}
.book-modal-inner .contact-top{display:flex;justify-content:space-between;gap:24px;margin-bottom:34px;}
.book-modal-inner .contact-title{font-family:'Oswald',sans-serif;font-size:51px;line-height:.95;font-weight:500;text-transform:uppercase;color:#f3efdf;margin-bottom:18px;}
.book-modal-inner .contact-desc{font-size:18px;line-height:1.45;color:#f3efdf;max-width:470px;}
.book-modal-inner .contact-socials{display:flex;gap:12px;align-self:flex-start;padding-top:6px;}
.book-modal-inner .contact-socials a{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.96);color:#7a8357;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 10px 22px rgba(58,67,23,.12);transition:.22s ease;}
.book-modal-inner .contact-socials a:hover{transform:translateY(-3px);background:#fff8e5;}
.book-modal-inner .contact-form{display:grid;grid-template-columns:1fr 1fr 188px;gap:14px;margin-bottom:14px;}
.book-modal-inner .bm-input{height:56px;border:none;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.14);color:#fff;padding:0 22px;font-size:18px;outline:none;transition:.2s ease;}
.book-modal-inner .bm-input:focus{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.28);}
.book-modal-inner .bm-input::placeholder{color:#eae3ca;}
.book-modal-inner .bm-comment{grid-column:1/3;height:92px;border-radius:28px;padding:18px 22px;resize:vertical;line-height:1.35;font-family:inherit;}
.book-modal-inner .bm-phone-wrap{display:flex;align-items:center;gap:10px;height:56px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.14);padding:0 18px;transition:.2s ease;}
.book-modal-inner .bm-phone-wrap:focus-within{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.28);}
.book-modal-inner .bm-phone-wrap input{width:100%;min-width:0;height:100%;border:none;background:transparent;color:#fff;font-size:18px;outline:none;}
.book-modal-inner .bm-phone-wrap input::placeholder{color:#eae3ca;}
.book-modal-inner .bm-flag{width:26px;height:18px;border-radius:2px;background:linear-gradient(to bottom,#fff 0 33%,#214dc6 33% 66%,#d73030 66% 100%);flex-shrink:0;}
.book-modal-inner .bm-send{height:56px;align-self:end;border:none;border-radius:999px;background:linear-gradient(180deg,#f8f3e6 0%,#ece2c7 100%);color:#7a8357;font-size:18px;font-weight:700;cursor:pointer;box-shadow:0 12px 26px rgba(63,71,22,.15);transition:.2s ease;}
.book-modal-inner .bm-send:hover{transform:translateY(-2px);}
.book-modal-inner .bm-message{min-height:26px;margin-bottom:12px;color:#f3efdf;font-size:15px;}
.book-modal-inner .bm-message.success{color:#f7f3cf;}
.book-modal-inner .bm-message.error{color:#ffe3e3;}
.book-modal-inner .bm-privacy{font-size:15px;color:rgba(243,239,223,.55);}
.book-modal-inner .bm-privacy a{color:rgba(243,239,223,.72);text-decoration:underline;}
@media(max-width:768px){
  .book-modal-inner .contact-box{padding:32px 20px 26px;}
  .book-modal-inner .contact-top{flex-direction:column;gap:16px;margin-bottom:22px;}
  .book-modal-inner .contact-socials{flex-wrap:wrap;}
  .book-modal-inner .contact-form{grid-template-columns:1fr;}
  .book-modal-inner .bm-comment{grid-column:1;}
}

/* ===== intl-tel-input inside booking modal ===== */
/* Wrapper fills the grid cell */
.book-modal-inner .bm-phone-field .iti { width: 100%; display: block; }

/* The tel input itself — match the bm-input look */
.book-modal-inner .iti__tel-input {
    height: 56px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.18) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: #fff !important;
    font-size: 18px !important;
    outline: none !important;
    transition: .2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.book-modal-inner .iti__tel-input:focus {
    background: rgba(255,255,255,.24) !important;
    border-color: rgba(255,255,255,.28) !important;
}
.book-modal-inner .iti__tel-input::placeholder { color: #eae3ca !important; }

/* Flag/dial-code button */
.book-modal-inner .iti__selected-flag {
    background: transparent !important;
    border-radius: 999px 0 0 999px;
}
.book-modal-inner .iti__selected-flag:hover { background: rgba(255,255,255,.12) !important; }
.book-modal-inner .iti__selected-dial-code { color: #f3efdf !important; }
.book-modal-inner .iti__arrow { border-top-color: rgba(255,255,255,.6) !important; }
.book-modal-inner .iti__arrow--up { border-bottom-color: rgba(255,255,255,.6) !important; border-top: none !important; }

/* Dropdown — olive design */
.book-modal-inner .iti__dropdown-content {
    background: #3b4a1e !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    border-radius: 14px !important;
    overflow: hidden;
    z-index: 100 !important;
}
.book-modal-inner .iti__search-input {
    background: rgba(255,255,255,.15) !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,.15) !important;
    color: #fff !important;
    font-size: 15px !important;
    padding: 10px 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.book-modal-inner .iti__search-input::placeholder { color: #c5d2a0 !important; }
.book-modal-inner .iti__country { color: #f3efdf !important; }
.book-modal-inner .iti__country.iti__highlight { background: rgba(255,255,255,.1) !important; }
.book-modal-inner .iti__country:hover { background: rgba(255,255,255,.08) !important; }
.book-modal-inner .iti__dial-code { color: #c5d2a0 !important; }
.book-modal-inner .iti__divider { border-color: rgba(255,255,255,.15) !important; }

/* ===== booking modal — responsive ===== */
@media(max-width:768px){
  .book-modal-inner .contact-box { padding:32px 20px 26px; }
  .book-modal-inner .contact-top { flex-direction:column; gap:16px; margin-bottom:22px; }
  .book-modal-inner .contact-socials { flex-wrap:wrap; }
  .book-modal-inner .contact-form { grid-template-columns:1fr; }
  .book-modal-inner .bm-comment { grid-column:1; }
}
@media(max-width:480px){
  .book-modal-overlay { padding:12px; }
  .book-modal-inner .contact-box { border-radius:18px; padding:48px 16px 22px; }
  .book-modal-inner .contact-title { font-size:28px; }
  .book-modal-inner .contact-desc { font-size:15px; }
  .book-modal-inner .contact-socials a { width:44px; height:44px; font-size:19px; }
  .book-modal-inner .iti__tel-input,
  .book-modal-inner .bm-input { height:50px !important; font-size:16px !important; }
  .book-modal-inner .bm-send { height:50px; font-size:16px; }
  .book-modal-inner .bm-comment { height:80px; }
}

/* Туры link — მხოლოდ მობილურ მენიუში (2026-07-03) */
@media (min-width: 1025px){
    .nav-only-mobile{ display:none !important; }
}

/* 📱 მობილურზე body-ს ქვედა მომრგვალება მოხსნილია — ფუტერის ქვეშ მუქი "ჭრილი" აღარ ჩანს (2026-07-04) */
@media (max-width:760px){
    body{ border-bottom-left-radius:0; border-bottom-right-radius:0; }
}
