/* ===== Тема и переменные (в стиле админки/кабинета) ===== */
:root{
    --kpi-gap: 16px; 
    --hi-bg: #070b16;
    --hi-panel: rgba(255,255,255,.04);
    --hi-border: rgba(0, 255, 255, .18);
    --hi-cyan: #40e0ff;
    --hi-mag: #c43cff;
    --hi-green: #19ff95;
    --topbar-h: 60px;
}

body.loc-modal-open{overflow:hidden;}
.loc-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);opacity:0;pointer-events:none;transition:opacity .16s ease;z-index:100000;}
.loc-overlay.is-open{opacity:1;pointer-events:auto;}
.loc-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;opacity:0;pointer-events:none;transform:translateY(8px) scale(.985);transition:opacity .16s ease,transform .16s ease;z-index:100001;}
.loc-modal.is-open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
.loc-modal__panel{width:min(1100px,calc(100vw - 32px));max-height:min(82vh,820px);display:flex;flex-direction:column;overflow:hidden;background:rgba(7,11,22,.82);border:1px solid rgba(64,224,255,.22);border-radius:18px;box-shadow:0 0 0 1px rgba(64,224,255,.10) inset,0 18px 80px rgba(0,0,0,.60),0 0 60px rgba(64,224,255,.10);}
.loc-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid rgba(255,255,255,.07);}
.loc-modal__title{font-family:'Orbitron','Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.92);}
.loc-modal__close{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:rgba(255,255,255,.9);cursor:pointer;font-size:18px;font-weight:800;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease;}
.loc-modal__close:hover{background:rgba(64,224,255,.10);border-color:rgba(64,224,255,.25);color:#fff;}
.loc-modal__search{padding:12px 16px 14px;border-bottom:1px solid rgba(255,255,255,.06);}
.loc-modal__search-input{width:100%;height:46px;border-radius:14px;border:1px solid rgba(64,224,255,.18);background:rgba(0,0,0,.22);color:rgba(255,255,255,.92);padding:0 14px;outline:none;box-shadow:0 0 0 1px rgba(64,224,255,.08) inset;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;}
.loc-modal__search-input::placeholder{color:rgba(255,255,255,.55);}
.loc-modal__search-input:focus{border-color:rgba(64,224,255,.42);background:rgba(0,0,0,.28);box-shadow:0 0 0 3px rgba(64,224,255,.14),0 0 0 1px rgba(64,224,255,.10) inset;}
.loc-modal__body{padding:16px 16px 18px;overflow:auto;}
.loc-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.loc-modal__body{scrollbar-width:thin;scrollbar-color:rgba(64,224,255,.55) rgba(255,255,255,.06);}
.loc-modal__body::-webkit-scrollbar{width:10px;height:10px;}
.loc-modal__body::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);}
.loc-modal__body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(64,224,255,.85) 0%,rgba(196,60,255,.65) 100%);border-radius:999px;border:2px solid rgba(7,11,22,.82);box-shadow:0 0 0 1px rgba(64,224,255,.20),0 4px 16px rgba(64,224,255,.18);}
.loc-modal__body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(64,224,255,.95) 0%,rgba(196,60,255,.80) 100%);box-shadow:0 0 0 1px rgba(64,224,255,.30),0 6px 20px rgba(64,224,255,.25);}
.loc-modal__body::-webkit-scrollbar-corner{background:transparent;}
.loc-group{margin:0;padding:10px 10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03);}
.loc-letter{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:0 0 10px;padding:0 0 8px;border-bottom:1px solid rgba(255,255,255,.06);color:rgba(64,224,255,.85);font-weight:900;letter-spacing:1.2px;text-transform:uppercase;font-size:14px;}
.loc-items{display:flex;flex-direction:column;gap:6px;}
.loc-item{display:block;padding:10px 12px;border-radius:12px;text-decoration:none;color:rgba(232,240,255,.90);background:rgba(64,224,255,.05);border:1px solid rgba(64,224,255,.10);transition:background .15s ease,border-color .15s ease,transform .15s ease,color .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.loc-item:hover{background:linear-gradient(135deg,rgba(64,224,255,.22) 0%,rgba(196,60,255,.18) 100%);border-color:rgba(64,224,255,.28);transform:translateY(-1px);color:#fff;}
@media (max-width:1100px){.loc-groups{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:860px){.loc-groups{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.loc-modal{padding:14px;}.loc-modal__panel{max-height:86vh;}.loc-groups{grid-template-columns:1fr;}}
@media (prefers-reduced-motion:reduce){.loc-overlay,.loc-modal,.loc-item{transition:none !important;}.loc-modal{transform:none !important;}.loc-item:hover{transform:none !important;}}

/* =============================================================================
   FINAL FIX: фиксируем "крестик" в модалке при скролле (sticky)
   ============================================================================= */
@media (max-width: 991px) {
    .information-block.active .modal-close-btn,
    .information-block[style*="position: fixed"] .modal-close-btn {
        position: sticky !important;
        top: 8px !important;
        left: auto !important;
        float: none !important;
        right: auto !important;
        margin: 8px auto 12px auto !important;
        z-index: 100002 !important;
        transform: none !important;
    }
}

.information-block .location-modal {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px 18px 16px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    box-shadow:
        0 14px 60px rgba(0,0,0,.45),
        0 0 50px rgba(64,224,255,.12);
    backdrop-filter: blur(18px) saturate(170%);
}

.information-block .location-modal::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, rgba(64,224,255,.55) 40%, rgba(196,60,255,.45) 60%, transparent 100%);
    box-shadow: 0 0 22px rgba(64,224,255,.35);
    border-radius: 16px 16px 0 0;
}

.information-block .location-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.information-block .location-modal__title {
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,.85);
}

.information-block .location-modal__close {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.04);
    color: rgba(255,255,255,.85);
    cursor: pointer;
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.information-block .location-modal__close:hover {
    background: rgba(64,224,255,.10);
    border-color: rgba(64,224,255,.25);
    color: #fff;
}

.information-block .location-modal__search {
    position: relative;
}

.information-block .location-modal__search-input {
    width: 100%;
    height: 44px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.28);
    color: rgba(255,255,255,.9);
    padding: 0 14px;
    outline: none;
    font-size: 14px;
    letter-spacing: 0.2px;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}

.information-block .location-modal__search-input::placeholder {
    color: rgba(255,255,255,.45);
}

.information-block .location-modal__search-input:focus {
    border-color: rgba(64,224,255,.35);
    box-shadow: 0 0 0 3px rgba(64,224,255,.12);
    background: rgba(0,0,0,.34);
}

.information-block .location-modal__body {
    overflow: auto;
    max-height: calc(85vh - 140px);
    padding-right: 2px;
}

.information-block .city-letter,
.information-block .area-letter,
.information-block .prigorod-letter,
.information-block .metro-letter {
    margin: 14px 0 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255,255,255,.06);
    color: rgba(255,255,255,.45);
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    font-size: 11px;
}

.information-block .city-items,
.information-block .area-items,
.information-block .prigorod-items,
.information-block .metro-stations {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.information-block .city-items li,
.information-block .area-items li,
.information-block .prigorod-items li,
.information-block .metro-stations li {
    margin: 0;
}

.information-block .city-link,
.information-block .area-link,
.information-block .prigorod-link,
.information-block .metro-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.03);
    color: rgba(255,255,255,.8);
    text-decoration: none;
    transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
    white-space: nowrap;
}

.information-block .city-link:hover,
.information-block .area-link:hover,
.information-block .prigorod-link:hover,
.information-block .metro-link:hover {
    background: rgba(64,224,255,.10);
    border-color: rgba(64,224,255,.25);
    color: #fff;
    transform: translateY(-1px);
}

@media (max-width: 768px) {
    .information-block .location-modal {
        padding: 14px 14px 12px;
        border-radius: 14px;
    }
    .information-block .location-modal__title {
        font-size: 0.75rem;
    }
    .information-block .location-modal__body {
        max-height: calc(85vh - 150px);
    }
}

/* Кнопка "Закрыть окно" в модалке (вместо крестика) */
@media (max-width: 991px) {
    .information-block.active .modal-close-btn.modal-close-text,
    .information-block[style*="position: fixed"] .modal-close-btn.modal-close-text {
        width: fit-content !important;
        max-width: calc(100% - 24px) !important;
        height: auto !important;
        min-height: 40px !important;
        padding: 10px 14px !important;
        border-radius: 999px !important;
        background: rgba(255,255,255,0.06) !important;
        border: 1px solid rgba(255,255,255,0.10) !important;
        color: rgba(255,255,255,0.85) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.85) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        letter-spacing: 0.2px !important;
        box-shadow: none !important;
        cursor: pointer !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        transform: none !important;
        transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
    }

    .information-block.active .modal-close-btn.modal-close-text:hover,
    .information-block[style*="position: fixed"] .modal-close-btn.modal-close-text:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.22) !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
        transform: none !important;
    }

    /* если где-то остался <i> внутри — скрываем */
    .information-block .modal-close-btn.modal-close-text i {
        display: none !important;
    }
}

/* =============================================================================
   ABSOLUTE FINAL: модалки локаций (metro/area/prigorod/city) без “слоёв” + скролл
   (в гамме правого меню)
   ============================================================================= */
@media (max-width: 991px) {
    .information-block.active,
    .information-block[style*="position: fixed"] {
        background: #0a0d12 !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 14px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        overflow: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 14px !important;
    }

    /* убираем “карточные” слои на контейнерах/группах */
    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container,
    .information-block .metro-group,
    .information-block .area-group,
    .information-block .prigorod-group,
    .information-block .city-group,
    .information-block div {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    /* “сплющиваем” контейнеры, чтобы не ощущались как отдельный слой */
    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container {
        display: contents !important;
    }

    /* отключаем колонночные стили (которые делали “второй слой”) */
    .information-block div {
        display: block !important;
        width: 100% !important;
    }

    .information-block div ul {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        justify-content: flex-start !important;
        align-items: flex-start !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* буква-раздел — как секционный заголовок в меню */
    .information-block .metro-letter,
    .information-block .area-letter,
    .information-block .prigorod-letter,
    .information-block .city-letter {
        width: 100% !important;
        margin: 0 0 10px 0 !important;
        padding: 0 0 10px 0 !important;
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
        background: transparent !important;
        color: rgba(255,255,255,0.45) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: 1.6px !important;
        text-transform: uppercase !important;
        text-shadow: none !important;
        height: auto !important;
    }

    /* теги-ссылки — как в правом меню */
    .information-block div ul li a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 38px !important;
        padding: 10px 12px !important;
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.75) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
        text-decoration: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
        white-space: nowrap !important;
    }

    .information-block div ul li a:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.25) !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }

    /* крестик — в стиле меню, без вращений */
    .information-block .modal-close-btn,
    .information-block .modal-close-btn:hover,
    .information-block .modal-close-btn:active {
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
        transform: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* Кнопка "закрыть" всегда видима при скролле внутри модалки */
    .information-block .modal-close-btn {
        position: sticky !important;
        top: 10px !important;
        margin-left: auto !important;
        right: 10px !important;
        z-index: 100002 !important;
    }

    .information-block .modal-close-btn i {
        filter: none !important;
        transform: none !important;
    }
}

/* =============================================================================
   FINAL OVERRIDE: модалки локаций в гамме ПРАВОГО меню (минимализм)
   ============================================================================= */
@media (max-width: 991px) {
    /* контейнер модалки */
    .information-block.active,
    .information-block[style*="position: fixed"] {
        background: #0a0d12 !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 14px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
    }

    /* убираем любые “премиум” подложки/свечения внутри */
    .information-block.active *,
    .information-block[style*="position: fixed"] * {
        box-shadow: none !important;
        text-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    .information-block div,
    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container,
    .information-block .metro-group,
    .information-block .area-group,
    .information-block .prigorod-group,
    .information-block .city-group {
        background: transparent !important;
        border: none !important;
    }

    /* заголовок модалки — как заголовки секций в меню */
    .information-block > p {
        background: transparent !important;
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
        color: rgba(255,255,255,0.45) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
        text-shadow: none !important;
        filter: none !important;
    }

    /* буква-группа — как секционный заголовок */
    .information-block .metro-letter,
    .information-block .area-letter,
    .information-block .prigorod-letter,
    .information-block .city-letter {
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        color: rgba(255,255,255,0.45) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
    }

    /* ссылки — как кнопки/теги в правом меню */
    .information-block .metro-link,
    .information-block .area-link,
    .information-block .prigorod-link,
    .information-block .city-link {
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.75) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
    }

    .information-block .metro-link:hover,
    .information-block .area-link:hover,
    .information-block .prigorod-link:hover,
    .information-block .city-link:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.25) !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }
}

/* =============================================================================
   FINAL: Модалки локаций (metro/area/city/prigorod) — стиль как меню + скролл
   ============================================================================= */
@media (max-width: 991px) {
    .information-block.active,
    .information-block[style*="position: fixed"] {
        background: #0a0d12 !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 14px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
    }

    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .information-block .metro-group,
    .information-block .area-group,
    .information-block .prigorod-group,
    .information-block .city-group {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 0 14px 0 !important;
    }

    .information-block .metro-group::before,
    .information-block .metro-group::after,
    .information-block .area-group::before,
    .information-block .area-group::after,
    .information-block .prigorod-group::before,
    .information-block .prigorod-group::after,
    .information-block .city-group::before,
    .information-block .city-group::after {
        display: none !important;
        content: none !important;
    }

    .information-block .metro-letter,
    .information-block .area-letter,
    .information-block .prigorod-letter,
    .information-block .city-letter {
        display: block !important;
        width: 100% !important;
        margin: 0 0 10px 0 !important;
        padding: 0 0 10px 0 !important;
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: 1.6px !important;
        text-transform: uppercase !important;
        color: rgba(255,255,255,0.45) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
        text-align: left !important;
        height: auto !important;
    }

    .information-block .metro-stations,
    .information-block .area-items,
    .information-block .prigorod-items,
    .information-block .city-items {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .information-block .metro-stations li,
    .information-block .area-items li,
    .information-block .prigorod-items li,
    .information-block .city-items li {
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
    }

    .information-block .metro-link,
    .information-block .area-link,
    .information-block .prigorod-link,
    .information-block .city-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 10px 12px !important;
        min-height: 38px !important;
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.85) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.85) !important;
        text-decoration: none !important;
        text-shadow: none !important;
        box-shadow: none !important;
        white-space: nowrap !important;
    }

    .information-block .metro-link:hover,
    .information-block .area-link:hover,
    .information-block .prigorod-link:hover,
    .information-block .city-link:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.22) !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }

    .information-block .modal-close-btn,
    .information-block .modal-close-btn:hover,
    .information-block .modal-close-btn:active {
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
        transform: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .information-block .modal-close-btn i {
        filter: none !important;
        transform: none !important;
    }
}

html[data-bs-theme="dark"]{
    --bs-body-bg: var(--hi-bg);
    --bs-body-color: #e8f0ff;
    --bs-border-color: rgba(255,255,255,.08);
}

/* ===== Фон: виньетки + сетка + градиент (как в админке) ===== */
body{
    font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    background:
        radial-gradient(1200px 600px at 80% -10%, rgba(196,60,255,.12), transparent 60%),
        radial-gradient(900px 450px at -10% 110%, rgba(64,224,255,.12), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 30%),
        linear-gradient(135deg, 
            rgba(3, 5, 12, 1) 0%, 
            rgba(5, 8, 15, 1) 20%,
            rgba(8, 5, 15, 1) 40%,
            rgba(5, 8, 15, 1) 60%,
            rgba(3, 5, 12, 1) 80%,
            rgba(2, 4, 10, 1) 100%);
    background-attachment: fixed;
    min-height: 100vh;
    position: relative;
    color: var(--text-primary);
    overflow-x: hidden;
    transition: background 0.3s ease, color 0.3s ease;
}

html {
    overflow-x: hidden;
}

body:before{
    content:""; 
    position:fixed; 
    inset:0; 
    z-index:0; 
    pointer-events:none;
    background:
        linear-gradient(transparent 31px, rgba(255,255,255,.04) 32px),
        linear-gradient(90deg, transparent 31px, rgba(255,255,255,.04) 32px);
    background-size: 32px 32px;
    mask-image: radial-gradient(circle at 50% 35%, rgba(0,0,0,.7), rgba(0,0,0,0.12) 60%, rgba(0,0,0,0));
}

.burger-btn {
    width: 35px;
    height: 30px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

.burger-btn span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: var(--hi-cyan);
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.burger-btn span:nth-child(1) {
    top: 0;
}

.burger-btn span:nth-child(2) {
    top: 11px;
}

.burger-btn span:nth-child(3) {
    top: 11px;
}

.burger-btn span:nth-child(4) {
    top: 22px;
}

.open span:nth-child(1) {
    top: 11px;
    width: 0;
    left: 50%;
}

.open.burger-btn span:nth-child(2),
.burger-btn.open span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.open span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.open span:nth-child(4) {
    top: 11px;
    width: 0%;
    left: 50%;
}

.button-to-top {
    position: fixed;
    bottom: 70px;
    right: 50px;
    width: 55px;
    height: 55px;
    border-radius: 100%;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    display: none;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 11111111111111;
    box-shadow: 0 4px 15px rgba(64,224,255,.3);
}

.button-to-top:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(64,224,255,.5);
}

.button-to-top img {
    width: 37px;
    height: 22px;
    margin: auto;
}

/* ===== КОМПАКТНЫЕ ФИЛЬТРЫ ДЛЯ СТРАНИЦЫ АНКЕТЫ ===== */
.profile-filters-compact {
    width: 100%;
    margin-bottom: 20px;
    padding: 16px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.7) 0%, rgba(7, 11, 22, 0.5) 100%);
    border: 1px solid rgba(64,224,255,.2);
    border-radius: 12px;
    backdrop-filter: blur(15px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 4px 12px rgba(0,0,0,.3),
        0 0 20px rgba(64,224,255,.1);
    position: relative;
    overflow: visible;
}

.profile-top-panel {
    width: 100%;
    margin-bottom: 20px;
    padding: 14px 14px 10px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 18px;
    box-shadow:
        0 18px 60px rgba(0,0,0,.35),
        0 0 60px rgba(64,224,255,.10),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: hidden;
}

.profile-top-panel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(64,224,255,.40) 20%,
        rgba(64,224,255,.65) 50%,
        rgba(64,224,255,.40) 80%,
        transparent 100%);
    box-shadow:
        0 0 20px rgba(64,224,255,.35),
        0 0 40px rgba(64,224,255,.18);
    z-index: 1;
    pointer-events: none;
}

.profile-top-panel .profile-filters-compact {
    margin: 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    backdrop-filter: none;
    box-shadow: none;
}
.profile-top-panel .profile-filters-compact::before { display: none; }

.profile-top-panel .premium-h1-section {
    margin: 12px 0 0 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    backdrop-filter: none;
    box-shadow: none;
    overflow: visible;
    animation: none;
}
.profile-top-panel .premium-h1-section::before { display: none; }
.profile-top-panel > .bread-cramps {
    margin: 0;
    padding: 0 0 12px 0;
    border-bottom: none;
    position: relative;
}

.profile-top-panel > .bread-cramps::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255,255,255,.06) 35%,
        rgba(64,224,255,.10) 50%,
        rgba(255,255,255,.06) 65%,
        transparent 100%);
    pointer-events: none;
}

.profile-top-panel .bread-cramps {
    margin-bottom: 0 !important;
    padding: 0 0 12px 0 !important;
    font-size: 13px;
    line-height: 1.25;
    letter-spacing: 0.2px;
}

.profile-top-panel .bread-cramps span { gap: 6px; }

.profile-top-panel .bread-cramps a,
.profile-top-panel .bread-cramps .active-page,
.profile-top-panel .bread-cramps .active-page2 {
    font-size: 13px !important;
    padding: 2px 6px !important;
    border-radius: 8px;
}

.profile-top-panel .bread-cramps a {
    color: rgba(255,255,255,.70) !important;
    text-shadow: none !important;
    transform: none !important;
}

.profile-top-panel .bread-cramps a::after {
    left: 6px !important;
    right: 6px !important;
    opacity: 0;
    box-shadow: none !important;
}

.profile-top-panel .bread-cramps a:hover {
    color: rgba(255,255,255,.92) !important;
    text-shadow: none !important;
    transform: none !important;
}

.profile-top-panel .bread-cramps a:hover::after { opacity: 0.6; }

.profile-top-panel .bread-cramps span:not(:last-child)::after {
    margin: 0 6px;
    color: rgba(255,255,255,.22);
    font-size: 13px;
    font-weight: 400;
    text-shadow: none;
    transform: none;
}

.profile-top-panel .bread-cramps span:not(:last-child):hover::after {
    color: rgba(255,255,255,.30);
    text-shadow: none;
    transform: none;
}

.profile-top-panel .bread-cramps .active-page {
    color: rgba(255,255,255,.95) !important;
    text-shadow:
        0 1px 2px rgba(0,0,0,.75),
        0 0 12px rgba(64,224,255,.22) !important;
}

.profile-top-panel .bread-cramps .active-page2 {
    color: rgba(255,255,255,.78) !important;
    text-shadow: none !important;
}

.profile-top-panel .premium-h1-title { margin-top: -2px; }

.profile-top-panel .premium-h1-title::after { display: none !important; content: none !important; }

.profile-top-panel .profile-filters-compact { margin-top: 12px; }
.profile-top-panel .premium-h1-title { margin-top: -2px; }

.profile-top-panel .premium-h1-title { margin-top: -2px; }

.profile-top-panel .premium-h1-title { margin-top: -2px; }

.profile-top-panel .premium-h1-phone {
    position: relative;
    padding-left: 16px;
    margin-left: 12px;
}

.profile-top-panel .premium-h1-phone::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 32px;
    background: linear-gradient(180deg,
        transparent 0%,
        rgba(255,255,255,.10) 35%,
        rgba(64,224,255,.18) 50%,
        rgba(255,255,255,.10) 65%,
        transparent 100%);
    box-shadow: 0 0 16px rgba(64,224,255,.10);
    pointer-events: none;
}

@media (max-width: 768px) {
    .profile-top-panel .premium-h1-phone {
        margin-left: 0;
        padding-left: 0;
    }
    .profile-top-panel .premium-h1-phone::before {
        display: none;
    }
}

@media (max-width: 768px) {
    .profile-top-panel {
        padding: 12px 12px 10px;
        border-radius: 16px;
    }
}

@media (max-width: 1200px) {
    .profile-top-panel .premium-h1-wrapper {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 10px;
    }

    .profile-top-panel .premium-h1-title {
        text-align: center !important;
    }

    .profile-top-panel .premium-h1-phone {
        width: 100%;
        justify-content: center;
        margin-left: 0;
        padding-left: 0;
    }

    .profile-top-panel .premium-h1-phone::before {
        display: none;
    }

    .profile-top-panel .premium-h1-phone .phone-box {
        width: min(420px, 100%);
        justify-content: center;
    }

    .profile-top-panel .premium-h1-phone .phone-box::before {
        font-size: 20px;
    }
}

.profile-filters-compact::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(64,224,255,.4) 20%,
        rgba(196,60,255,.4) 50%,
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 0 0 15px rgba(64,224,255,.3);
}

/* Десктопная версия - все в одну строку */
@media (min-width: 1201px) {
    .profile-filters-compact {
        display: flex;
        align-items: center;
        gap: 20px;
        flex-wrap: nowrap;
    }
    
    .profile-filters-locations {
        margin-bottom: 0;
        flex: 0 0 auto;
    }
    
    .profile-filters-locations .changeArea {
        display: flex;
        flex-wrap: nowrap;
        gap: 10px;
        justify-content: flex-start;
    }
    
    .profile-filters-locations .changeArea a {
        flex: 0 0 auto;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        justify-content: flex-start;
        text-decoration: none;
        width: 150px;
        height: 40px;
        text-align: left;
        border: 2px solid rgba(64,224,255,.3);
        font-size: 14px;
        line-height: 40px;
        border-radius: 12px;
        position: relative;
        padding-left: 12px;
        padding-right: 10px;
        cursor: pointer;
        justify-self: center;
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.15) inset,
            0 4px 12px rgba(0,0,0,.4),
            0 0 20px rgba(64,224,255,.15),
            0 2px 4px rgba(0,0,0,.2);
        backdrop-filter: blur(12px) saturate(180%);
        font-weight: 600;
        overflow: hidden;
        background: transparent;
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        color: transparent;
        text-shadow: 0 0 20px rgba(64,224,255,.3);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    
    .profile-filters-locations .changeArea a > *:not(.piramyd):not(.piramyd *):not(.mobile-nav-icon):not(.mobile-nav-icon *) {
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        color: transparent;
        text-shadow: 0 0 20px rgba(64,224,255,.3);
    }
    
    .profile-filters-locations .changeArea a .piramyd,
    .profile-filters-locations .changeArea a .piramyd::after {
        background: none !important;
        -webkit-background-clip: unset !important;
        -webkit-text-fill-color: var(--hi-cyan) !important;
        background-clip: unset !important;
        color: var(--hi-cyan) !important;
        text-shadow: 0 0 8px rgba(64,224,255,.6) !important;
    }
    
    .profile-filters-locations .changeArea a > * {
        z-index: 2;
    }
    
    .profile-filters-locations .changeArea a:hover {
        border-color: rgba(64,224,255,.6);
        box-shadow: 
            0 0 0 2px rgba(64,224,255,.3) inset,
            0 6px 20px rgba(0,0,0,.5),
            0 0 30px rgba(64,224,255,.5),
            0 0 50px rgba(64,224,255,.4),
            0 0 70px rgba(196,60,255,.3),
            0 0 90px rgba(196,60,255,.2) !important;
        text-shadow: 
            0 0 10px rgba(64,224,255,.8),
            0 0 20px rgba(64,224,255,.6),
            0 0 30px rgba(196,60,255,.4);
    }
    
    .profile-filters-locations .changeArea a:hover > * {
        text-shadow: 
            0 0 10px rgba(64,224,255,.8),
            0 0 20px rgba(64,224,255,.6),
            0 0 30px rgba(196,60,255,.4);
    }
    
    /* Иконки в кнопках локаций на странице анкеты */
    .profile-filters-locations .changeArea a i {
        font-size: 16px;
        margin-right: 8px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
        z-index: 2;
        flex-shrink: 0;
    }
    
    .profile-filters-locations .changeArea a span:not(.image):not(.piramyd):not(.piramyd *) {
        position: relative;
        z-index: 2;
    }
    
    .profile-filters-locations .changeArea a .image {
        position: absolute;
        top: 50%;
        left: 12px;
        transform: translateY(-50%);
        height: 20px;
        width: 16px;
        background-image: url("../image/location.png");
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 2;
        filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
        display: none; /* Скрываем старую иконку, используем Bootstrap Icons */
    }
    
    .profile-filters-locations .changeArea a:hover .image {
        filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(64,224,255,1));
    }
    
    .profile-filters-locations .changeArea a .piramyd {
        position: absolute;
        top: 0;
        right: 8px;
        width: 20px;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 2;
    }
    
    .profile-filters-locations .changeArea a .piramyd img {
        width: 8px;
        height: auto;
        filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
        transition: all 0.3s ease;
    }
    
    .profile-filters-locations .changeArea a:hover .piramyd img {
        filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(64,224,255,1));
        transform: translateY(-2px);
    }
    
    .profile-filters-showonly {
        margin-top: 0;
        padding-top: 0;
        border-top: none;
        border-left: 1px solid rgba(64,224,255,.15);
        padding-left: 20px;
        flex: 1 1 auto;
    }
    
    .profile-filters-showonly .buttons {
        display: flex;
        flex-wrap: nowrap;
        gap: 8px;
        margin: 0;
        justify-content: flex-start;
    }
    
    .profile-filters-showonly .buttons a {
        padding: 0 12px !important;
        font-size: 12px;
        font-weight: 600;
        font-style: normal !important;
        border-radius: 6px;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        text-decoration: none;
        white-space: nowrap;
        flex: 0 0 auto;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        position: relative;
        overflow: hidden;
        background: linear-gradient(135deg, rgba(7, 11, 22, 0.8) 0%, rgba(7, 11, 22, 0.6) 100%);
        border: 1px solid rgba(64,224,255,.25);
        backdrop-filter: blur(10px) saturate(180%);
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.15) inset,
            0 2px 6px rgba(0,0,0,.4),
            0 0 12px rgba(64,224,255,.12);
        color: var(--hi-cyan);
        letter-spacing: 0.1px;
        height: 32px;
        line-height: 32px !important;
        text-align: center !important;
    }
    
    .profile-filters-showonly .buttons a::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, 
            transparent 0%,
            rgba(64,224,255,.2) 50%,
            transparent 100%);
        transition: left 0.6s ease;
        z-index: 0;
    }
    
    .profile-filters-showonly .buttons a:hover::before {
        left: 100%;
    }
    
    .profile-filters-showonly .buttons a span {
        position: relative;
        z-index: 1;
        display: inline-block !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap;
        line-height: 32px !important;
        font-style: normal !important;
        transform: none !important;
        vertical-align: middle;
    }
    
    .profile-filters-showonly .buttons a i {
        position: relative;
        z-index: 1;
        display: inline-block !important;
        font-size: 12px !important;
        line-height: 32px !important;
        margin: 0 !important;
        padding: 0 !important;
        vertical-align: middle;
        transition: all 0.3s ease;
        filter: drop-shadow(0 0 3px rgba(64,224,255,.5));
        flex-shrink: 0;
    }
    
    .profile-filters-showonly .buttons a:hover {
        background: linear-gradient(135deg, rgba(64,224,255,.2) 0%, rgba(196,60,255,.2) 100%);
        border-color: rgba(64,224,255,.5);
        color: #fff;
        transform: translateY(-3px) scale(1.02) !important;
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.3) inset,
            0 6px 20px rgba(0,0,0,.5),
            0 0 30px rgba(64,224,255,.25),
            0 0 40px rgba(196,60,255,.15);
        text-shadow: 0 0 15px rgba(64,224,255,1);
    }
    
    .profile-filters-showonly .buttons a:hover span {
        transform: none !important;
        font-style: normal !important;
    }
    
    .profile-filters-showonly .buttons a:hover i {
        transform: scale(1.2) rotate(5deg);
        filter: drop-shadow(0 0 8px rgba(64,224,255,.8));
    }
    
    .profile-filters-showonly .buttons a.active {
        background: linear-gradient(135deg, rgba(64,224,255,.3) 0%, rgba(196,60,255,.3) 100%);
        border-color: rgba(64,224,255,.6);
        color: #fff;
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.4) inset,
            0 6px 20px rgba(0,0,0,.5),
            0 0 35px rgba(64,224,255,.4),
            0 0 50px rgba(196,60,255,.2);
        font-weight: 700;
        text-shadow: 0 0 20px rgba(64,224,255,1);
        transform: translateY(-2px);
    }
    
    .profile-filters-showonly .buttons a.active i {
        transform: scale(1.15);
        filter: drop-shadow(0 0 10px rgba(64,224,255,.9));
    }
}

/* Мобилка/планшет + rotor: ровно 3 карточки без обрезков */
@media (max-width: 1200px) {
    header .medium-line.is-rotor {
        width: var(--ml-line-w, 100%) !important;
        max-width: var(--ml-line-w, 100%) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow: hidden !important;
        touch-action: pan-y !important; /* вертикальный скролл страницы ок, горизонталь ловим свайпом */
    }

    header .medium-line.is-rotor .wrapper-girls-item .mini-cart-girl {
        width: var(--ml-card-w, 33vw) !important;
        min-width: var(--ml-card-w, 33vw) !important;
        max-width: var(--ml-card-w, 33vw) !important;
        flex: 0 0 var(--ml-card-w, 33vw) !important;
        margin: 0 !important;
    }
}

/* Мобильная версия - скрываем, так как будет в бургер-меню */
@media (max-width: 1200px) {
    .profile-filters-compact {
        display: none !important;
    }
    
    /* Стили для компактных фильтров в мобильном меню */
    .slide-menu-filters .profile-filters-compact-mobile {
        display: block !important;
        padding: 0 !important;
        margin-bottom: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile::before {
        display: none !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-locations {
        margin-bottom: 1.5rem !important;
        width: 100% !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-locations .changeArea {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.5rem !important;
        padding: 0 1rem !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-locations .changeArea a {
        display: flex !important;
        align-items: center !important;
        gap: 0.75rem !important;
        padding: 0.75rem 1rem !important;
        margin: 0 !important;
        background: rgba(255,255,255,.03) !important;
        border: 1px solid rgba(64,224,255,.1) !important;
        border-radius: 8px !important;
        height: auto !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-showonly {
        margin-top: 0 !important;
        padding-top: 0 !important;
        border-top: none !important;
        border-left: none !important;
        padding-left: 0 !important;
        width: 100% !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-showonly .buttons {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 0.3rem !important;
        padding: 0 1rem !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-showonly .buttons a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.2rem !important;
        padding: 0.5rem 0.75rem !important;
        margin: 0 !important;
        background: rgba(64,224,255,.1) !important;
        border: 1px solid rgba(64,224,255,.2) !important;
        border-radius: 6px !important;
        height: auto !important;
        font-size: 0.85rem !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        transition: all 0.3s ease !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-showonly .buttons a:hover {
        background: rgba(64,224,255,.15) !important;
        border-color: rgba(64,224,255,.3) !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }
    
    .slide-menu-filters .profile-filters-compact-mobile .profile-filters-showonly .buttons a.active {
        background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%) !important;
        border-color: rgba(64,224,255,.4) !important;
        color: #fff !important;
        box-shadow: 0 4px 15px rgba(64,224,255,.3) !important;
    }
}

/* =============================================================================
   МОДАЛКИ (information-block: city/area/prigorod/metro) — в гамме меню (мобилка)
   ============================================================================= */
@media (max-width: 991px) {
    /* overlay без blur */
    .modal-overlay {
        background: rgba(0,0,0,0.72) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .information-block {
        background: #0a0d12 !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 14px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        overflow: hidden !important;
    }

    /* заголовок модалки (первый <p>) как заголовки секций меню */
    .information-block > p {
        padding: 0 0 10px 0 !important;
        margin: 0 0 12px 0 !important;
        background: transparent !important;
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: 1.6px !important;
        text-transform: uppercase !important;
        color: rgba(255,255,255,0.45) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
        text-shadow: none !important;
        filter: none !important;
        text-align: left !important;
    }

    /* контент без дополнительных подложек */
    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* буквы-группы */
    .information-block .metro-letter,
    .information-block .area-letter,
    .information-block .prigorod-letter,
    .information-block .city-letter {
        background: rgba(255,255,255,0.02) !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        color: rgba(255,255,255,0.7) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.7) !important;
        text-shadow: none !important;
    }

    /* ссылки внутри — как аккуратные теги меню */
    .information-block .metro-link,
    .information-block .area-link,
    .information-block .prigorod-link,
    .information-block .city-link {
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.85) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.85) !important;
        text-shadow: none !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .information-block .metro-link:hover,
    .information-block .area-link:hover,
    .information-block .prigorod-link:hover,
    .information-block .city-link:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.22) !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }

    /* закрыть — минимализм, без вращения/свечения */
    .information-block .modal-close-btn {
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        transform: none !important;
    }

    .information-block .modal-close-btn:hover,
    .information-block .modal-close-btn:active {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.22) !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .information-block .modal-close-btn i {
        filter: none !important;
        transform: none !important;
    }
}

/* TG-баннер над карточками (включен) */

/* Планшетная версия (если нужна отдельная) */
@media (min-width: 768px) and (max-width: 1200px) {
    .profile-filters-compact {
        display: none !important;
    }
}

/* ===== ПРЕМИУМ СТИЛИ ДЛЯ ХЛЕБНЫХ КРОШЕК ===== */
.bread-cramps {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: 20px;
    padding: 12px 0;
    background: transparent;
    border: none;
    border-radius: 0;
    backdrop-filter: none;
    box-shadow: none;
    position: relative;
    overflow: visible;
}

/* Хлебные крошки после блока фильтров */
.profile-filters-compact + .bread-cramps {
    margin-top: 0;
}

.bread-cramps::before {
    display: none;
}

.bread-cramps span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.bread-cramps a {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    color: rgba(184, 212, 255, 0.7);
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 4px 8px;
    position: relative;
    font-weight: 500;
    background: transparent;
    border: none;
    border-radius: 0;
}

.bread-cramps a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 8px;
    right: 8px;
    height: 1px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    box-shadow: 0 0 6px rgba(64,224,255,.5);
}

.bread-cramps a:hover {
    color: var(--hi-cyan);
    background: transparent;
    border: none;
    text-shadow: 0 0 8px rgba(64,224,255,.6);
    transform: translateX(2px);
    box-shadow: none;
}

.bread-cramps a:hover::after {
    opacity: 1;
}

/* Разделитель между элементами - стрелка */
.bread-cramps span:not(:last-child)::after {
    content: '›';
    display: inline-block;
    margin: 0 8px;
    color: rgba(64,224,255,.5);
    font-size: 16px;
    font-weight: 300;
    transition: all 0.3s ease;
    flex-shrink: 0;
    text-shadow: 0 0 6px rgba(64,224,255,.4);
    vertical-align: middle;
    line-height: 1;
}

.bread-cramps span:not(:last-child):hover::after {
    color: var(--hi-cyan);
    transform: translateX(2px);
    text-shadow: 0 0 10px rgba(64,224,255,.8);
}

/* Активная страница (текущая) */
.bread-cramps .active-page {
    display: inline-flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    position: relative;
    padding: 4px 8px;
    border-radius: 0;
    background: transparent;
    border: none;
    font-weight: 600;
    box-shadow: none;
    text-shadow: 0 0 12px rgba(64,224,255,.8);
}

.bread-cramps .active-page::after {
    opacity: 1;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    box-shadow: 0 0 8px rgba(64,224,255,.8);
}

.bread-cramps .active-page2 {
    display: inline-flex;
    align-items: center;
    position: relative;
    color: rgba(184, 212, 255, 0.9);
    padding: 4px 8px;
    border-radius: 0;
    background: transparent;
    border: none;
    font-weight: 500;
    box-shadow: none;
}

.bread-cramps .active-page2::after {
    opacity: 0.6;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    box-shadow: 0 0 6px rgba(64,224,255,.5);
}

.bread-cramps .active-page2:hover {
    color: var(--hi-cyan);
    text-shadow: 0 0 8px rgba(64,224,255,.6);
}

.bread-cramps .active-page2:hover::after {
    opacity: 1;
}

/* Мобильная версия хлебных крошек */
@media (max-width: 1200px) {
    .bread-cramps {
        padding: 10px 12px;
        margin-bottom: 15px;
        gap: 6px;
    }
    
    .bread-cramps a,
    .bread-cramps .active-page,
    .bread-cramps .active-page2 {
        font-size: 12px;
        padding: 5px 10px;
    }
    
    .bread-cramps span:not(:last-child)::after {
        margin: 0 3px;
        vertical-align: middle;
        line-height: 1;
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .bread-cramps {
        padding: 8px 10px;
        margin-bottom: 12px;
        gap: 4px;
    }
    
    .bread-cramps a,
    .bread-cramps .active-page,
    .bread-cramps .active-page2 {
        font-size: 11px;
        padding: 4px 8px;
    }
    
    .bread-cramps span:not(:last-child)::after {
        margin: 0 2px;
        vertical-align: middle;
        line-height: 1;
        font-size: 12px;
    }
}

/* ===== Премиум рекламный header (в стиле админки) ===== */
.premium-ad-header {
    padding: 1.5rem 0;
    margin: 20px 0 30px 0;
    position: relative;
    overflow: visible;
    animation: fadeInUp 1s ease-out;
}

/* ===== Премиум аватарка под header ===== */
/* Премиум H1 секция */
.premium-h1-section {
    margin: 20px 0 30px 0;
    position: relative;
    animation: fadeInUp 0.8s ease-out;
    width: 100%;
    padding: 18px 18px 16px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 18px;
    box-shadow:
        0 18px 60px rgba(0,0,0,.35),
        0 0 60px rgba(64,224,255,.10),
        inset 0 1px 0 rgba(255,255,255,.05);
    overflow: hidden;
}

.premium-h1-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(64,224,255,.40) 20%,
        rgba(64,224,255,.65) 50%,
        rgba(64,224,255,.40) 80%,
        transparent 100%);
    box-shadow:
        0 0 20px rgba(64,224,255,.35),
        0 0 40px rgba(64,224,255,.18);
    z-index: 1;
    pointer-events: none;
}

.premium-h1-section .bread-cramps {
    margin: 0 0 12px 0;
    padding: 0 0 12px 0;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.premium-h1-wrapper {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.premium-h1-title {
    font-size: clamp(24px, 2.2vw, 34px);
    font-weight: 600;
    margin: 0;
    padding: 0;
    line-height: 1.3;
    text-align: left !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 50%, #c43cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.3px;
    position: relative;
    display: block;
    flex: 1;
    min-width: 0;
    width: 100%;
}

.premium-h1-phone {
    flex-shrink: 0;
}

.premium-h1-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 60px;
    height: 1px;
    background: linear-gradient(90deg, 
        var(--hi-cyan) 0%, 
        rgba(64,224,255,.5) 50%,
        transparent 100%);
    box-shadow: 
        0 0 10px rgba(64,224,255,.6),
        0 0 20px rgba(64,224,255,.3);
    border-radius: 2px;
}

.premium-avatar-photo {
    margin: 20px 0 30px 0;
    position: relative;
    animation: fadeInUp 1.2s ease-out;
    width: 100%;
}

.avatar-data-wrapper {
    display: flex;
    gap: 30px;
    align-items: stretch;
    flex-wrap: wrap;
}

.avatar-data-wrapper > * {
    align-self: stretch;
}

.avatar-photo-container {
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    height: 550px !important;
    min-height: 550px !important;
    max-height: none !important;
    display: flex;
    flex-direction: column;
    align-self: stretch;
}

/* Премиум анимация свечения */
@keyframes premiumPhotoGlow {
    0% {
        box-shadow: 
            0 8px 32px rgba(0,0,0,.2),
            0 0 30px rgba(64,224,255,.15),
            0 0 40px rgba(196,60,255,.08),
            inset 0 1px 0 rgba(255,255,255,.1),
            inset 0 -1px 0 rgba(64,224,255,.1);
    }
    100% {
        box-shadow: 
            0 8px 32px rgba(0,0,0,.25),
            0 0 40px rgba(64,224,255,.2),
            0 0 50px rgba(196,60,255,.12),
            inset 0 1px 0 rgba(255,255,255,.15),
            inset 0 -1px 0 rgba(64,224,255,.2);
    }
}

.avatar-photo-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    opacity: 1;
    z-index: 1;
    border-radius: 16px 16px 0 0;
}

/* Анимация верхней подсветки */
@keyframes premiumTopGlow {
    0% {
        opacity: 0.8;
        box-shadow: 
            0 0 15px rgba(64,224,255,.6),
            0 0 25px rgba(196,60,255,.4);
    }
    100% {
        opacity: 1;
        box-shadow: 
            0 0 20px rgba(64,224,255,.8),
            0 0 35px rgba(196,60,255,.6);
    }
}

/* Премиум нижняя подсветка */
.avatar-photo-container::after {
    display: none; /* Убираем нижнюю линию, как в luxury-data-panel */
}

@keyframes premiumBottomGlow {
    0% {
        opacity: 0.8;
        box-shadow: 
            0 0 15px rgba(64,224,255,.6),
            0 0 25px rgba(196,60,255,.4);
    }
    100% {
        opacity: 1;
        box-shadow: 
            0 0 20px rgba(64,224,255,.8),
            0 0 35px rgba(196,60,255,.6);
    }
}

.avatar-photo-container:hover {
    border-color: rgba(255,255,255,.12);
    background: rgba(255,255,255,.03);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.15),
        0 0 50px rgba(64,224,255,.2),
        inset 0 1px 0 rgba(255,255,255,.08);
    transform: translateY(-2px);
    animation: none;
}

.avatar-photo-container:hover::before {
    height: 2px;
    opacity: 1;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.5) 20%,
        rgba(64,224,255,.7) 50%, 
        rgba(64,224,255,.5) 80%,
        transparent 100%);
}

.avatar-photo-container a {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 12px;
    overflow: visible;
    background: #000;
}

.avatar-photo-container img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover !important;
    object-position: center center !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.avatar-photo-container video.animated-photo {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.avatar-photo-container .truePhoto {
    position: absolute;
    bottom: 15px;
    left: 15px;
    background: linear-gradient(135deg, rgba(64,224,255,.25) 0%, rgba(196,60,255,.25) 100%);
    color: #fff;
    padding: 8px 15px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 700;
    backdrop-filter: blur(10px) saturate(180%);
    border: 1px solid rgba(64,224,255,.4);
    box-shadow: 
        0 2px 10px rgba(0,0,0,.4),
        0 0 15px rgba(64,224,255,.3),
        0 0 20px rgba(196,60,255,.2);
    z-index: 10;
    pointer-events: none;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
    letter-spacing: 0.3px;
}

/* Десктоп: размещаем "Фото проверено" как на мобилке (в углу) */
@media (min-width: 1201px) {
    .avatar-photo-container .truePhoto {
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        padding: 8px 14px !important;
        font-size: 14px !important;
        border-radius: 0 8px 0 0 !important;
        border-bottom: none !important;
        box-shadow:
            0 -2px 10px rgba(64,224,255,.4),
            0 0 15px rgba(64,224,255,.3),
            0 0 20px rgba(196,60,255,.2) !important;
        text-shadow: 0 0 10px rgba(64,224,255,.6) !important;
    }
}

/* ===== Премиальный минималистичный стиль для данных профиля ===== */
.avatar-profile-data {
    flex: 1;
    min-width: 300px;
    display: flex;
    align-items: stretch;
    width: 100%;
}

.luxury-data-panel {
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    padding: 20px 18px;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    height: 100%;
    min-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: visible;
    align-self: stretch;
    width: 100%;
}

.luxury-data-panel-title {
    font-size: 0.85rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    margin-bottom: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    padding-bottom: 8px;
}

.luxury-data-panel-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 1px;
    background: linear-gradient(90deg, 
        var(--hi-cyan) 0%, 
        transparent 100%);
}

.luxury-data-items-wrapper {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 16px;
    flex-shrink: 0;
}

.luxury-data-panel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

.luxury-data-item {
    display: flex;
    align-items: center;
    padding: 8px 0;
    position: relative;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.luxury-data-item:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(255,255,255,.06) 50%, 
        transparent 100%);
}

.luxury-data-item:hover {
    transform: translateY(-1px);
    transform: none;
    padding-left: 8px;
}

.luxury-label {
    font-size: 0.8rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 300;
    min-width: 100px;
    flex-shrink: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-divider {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, 
        rgba(255,255,255,.04) 0%, 
        rgba(255,255,255,.08) 50%, 
        rgba(255,255,255,.04) 100%);
    margin: 0 20px;
    position: relative;
    transition: all 0.4s ease;
}

.luxury-data-item:hover .luxury-divider {
    background: linear-gradient(90deg, 
        rgba(255,255,255,.08) 0%, 
        rgba(255,255,255,.15) 50%, 
        rgba(255,255,255,.08) 100%);
}

.luxury-divider::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(255,255,255,.2);
    transition: all 0.4s ease;
}

.luxury-data-item:hover .luxury-divider::before {
    width: 5px;
    height: 5px;
    background: rgba(255,255,255,.4);
    box-shadow: 0 0 8px rgba(255,255,255,.3);
}

.luxury-value {
    font-size: 1rem;
    color: rgba(255,255,255,.95);
    font-weight: 300;
    text-align: right;
    min-width: 90px;
    letter-spacing: 0.5px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    text-shadow: none;
}

.luxury-about-text {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,.06);
    font-size: 0.95rem;
    color: rgba(255,255,255,.8);
    line-height: 1.6;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-weight: 300;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 100%;
    text-align: justify;
}

.luxury-about-text::-webkit-scrollbar {
    width: 4px;
}

.luxury-about-text::-webkit-scrollbar-track {
    background: rgba(255,255,255,.02);
    border-radius: 2px;
}

.luxury-about-text::-webkit-scrollbar-thumb {
    background: rgba(64,224,255,.3);
    border-radius: 2px;
}

.luxury-about-text::-webkit-scrollbar-thumb:hover {
    background: rgba(64,224,255,.5);
}

.luxury-value a {
    color: rgba(255,255,255,.9);
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    border-bottom: 1px solid transparent;
    padding-bottom: 2px;
}

.luxury-value a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: rgba(255,255,255,.3);
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.luxury-value a:hover {
    color: #fff;
}

.luxury-value a:hover::after {
    transform: scaleX(1);
}

/* Премиум галерея фото и видео */
.luxury-gallery-section {
    margin: 30px 0;
    padding: 32px 28px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: visible;
}

.luxury-gallery-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

.luxury-gallery-title {
    font-size: 0.7rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    margin-bottom: 24px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Swiper слайдер для галереи в одну строку */
.luxury-gallery-slider {
    width: 100%;
    padding: 0 50px 50px 50px;
    position: relative;
}

.luxury-gallery-slider .swiper-wrapper {
    align-items: stretch;
}

.luxury-gallery-slider .swiper-slide {
    height: auto;
    display: flex;
    width: auto;
    flex-shrink: 0;
}

.luxury-gallery-slider .swiper-slide > * {
    width: 100%;
}

.luxury-gallery-item {
    position: relative;
    aspect-ratio: 3/4;
    overflow: visible;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(0,0,0,.3);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    width: 100%;
    max-width: 320px;
    min-height: 280px;
    height: 100%;
    border-radius: 12px;
}

.luxury-gallery-item:hover {
    border-color: rgba(255,255,255,.15);
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0,0,0,.2);
}

.luxury-gallery-item a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}

.luxury-gallery-image {
    width: 100%;
    height: 100%;
    overflow: visible;
    position: relative;
    border-radius: 12px;
}

.luxury-gallery-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 12px;
}

.luxury-gallery-item:hover .luxury-gallery-image img {
    transform: scale(1.1);
}

.luxury-gallery-video-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
}

.luxury-gallery-video-wrapper video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.luxury-gallery-overlay {
    display: none;
}

.luxury-gallery-video-wrapper video {
    position: relative;
    z-index: 2;
    border-radius: 12px;
}

/* Кнопки навигации слайдера */
.luxury-gallery-slider .swiper-button-next,
.luxury-gallery-slider .swiper-button-prev {
    color: rgba(255,255,255,.6) !important;
    width: 44px !important;
    height: 44px !important;
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 50% !important;
    backdrop-filter: blur(10px) !important;
    transition: all 0.3s ease !important;
    margin-top: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    position: absolute !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    cursor: pointer !important;
}

.luxury-gallery-slider .swiper-button-next:hover,
.luxury-gallery-slider .swiper-button-prev:hover {
    color: rgba(255,255,255,.9);
    background: rgba(255,255,255,.1);
    border-color: rgba(255,255,255,.2);
}

.luxury-gallery-slider .swiper-button-next::after,
.luxury-gallery-slider .swiper-button-prev::after {
    font-size: 18px;
    font-weight: 700;
}

.luxury-gallery-slider .swiper-button-next {
    right: 0 !important;
}

.luxury-gallery-slider .swiper-button-prev {
    left: 0 !important;
}

.luxury-gallery-slider .swiper-button-next.swiper-button-disabled,
.luxury-gallery-slider .swiper-button-prev.swiper-button-disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
    pointer-events: auto !important;
}

/* Пагинация */
.luxury-gallery-slider .swiper-pagination {
    bottom: 0 !important;
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 20px !important;
    margin-bottom: 10px !important;
    z-index: 10 !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: auto !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
}

.luxury-gallery-slider .swiper-pagination-bullet {
    background: rgba(255,255,255,.3) !important;
    opacity: 1 !important;
    width: 8px !important;
    height: 8px !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    margin: 0 4px !important;
    display: inline-block !important;
    border-radius: 50% !important;
}

.luxury-gallery-slider .swiper-pagination-bullet-active {
    background: rgba(255,255,255,.9) !important;
    width: 24px !important;
    border-radius: 4px !important;
    opacity: 1 !important;
}

@media (max-width: 768px) {
    .luxury-gallery-section {
        padding: 24px 20px;
        margin: 20px auto;
        width: 95%;
    }
    
    .luxury-gallery-slider {
        padding: 0 40px 40px 40px;
    }
    
    .luxury-gallery-item {
        width: calc((100% - 24px) / 2);
        max-width: 220px;
        min-height: 200px;
    }
    
    /* Кнопки навигации в мобильной версии */
    .luxury-gallery-slider .swiper-button-next,
    .luxury-gallery-slider .swiper-button-prev {
        width: 36px !important;
        height: 36px !important;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: absolute !important;
        z-index: 10 !important;
        cursor: pointer !important;
    }
    
    .luxury-gallery-slider .swiper-button-next::after,
    .luxury-gallery-slider .swiper-button-prev::after {
        font-size: 14px !important;
        font-weight: 700 !important;
    }
    
    /* Пагинация в мобильной версии */
    .luxury-gallery-slider .swiper-pagination {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        margin-top: 15px !important;
        margin-bottom: 5px !important;
        width: 100% !important;
        height: auto !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 6px !important;
    }
    
    .luxury-gallery-slider .swiper-pagination-bullet {
        width: 6px !important;
        height: 6px !important;
        margin: 0 3px !important;
        background: rgba(255,255,255,.3) !important;
        opacity: 1 !important;
        display: inline-block !important;
    }
    
    .luxury-gallery-slider .swiper-pagination-bullet-active {
        width: 20px !important;
        background: rgba(255,255,255,.9) !important;
        border-radius: 3px !important;
    }
    
    .luxury-gallery-title {
        margin-bottom: 20px;
    }
}

@media (max-width: 576px) {
    /* Кнопки навигации для очень маленьких экранов */
    .luxury-gallery-slider .swiper-button-next,
    .luxury-gallery-slider .swiper-button-prev {
        width: 32px !important;
        height: 32px !important;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    .luxury-gallery-slider .swiper-button-next::after,
    .luxury-gallery-slider .swiper-button-prev::after {
        font-size: 12px !important;
    }
    
    /* Пагинация для очень маленьких экранов */
    .luxury-gallery-slider .swiper-pagination {
        margin-top: 12px !important;
        gap: 5px !important;
    }
    
    .luxury-gallery-slider .swiper-pagination-bullet {
        width: 5px !important;
        height: 5px !important;
        margin: 0 2px !important;
    }
    
    .luxury-gallery-slider .swiper-pagination-bullet-active {
        width: 18px !important;
    }
}

/* Премиум блок "Стоимость услуг" */
.luxury-prices-section {
    margin: 30px 0;
    padding: 24px 20px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: visible;
}

.luxury-prices-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

.luxury-prices-title {
    font-size: 0.7rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    margin-bottom: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-prices-wrapper {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.luxury-price-block {
    flex: 1;
    min-width: 250px;
}

.luxury-price-block-title {
    font-size: 0.7rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 400;
    margin-bottom: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    padding-bottom: 12px;
}

.luxury-price-block-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 1px;
    background: linear-gradient(90deg, 
        rgba(64,224,255,.6) 0%, 
        transparent 100%);
}

.luxury-price-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.luxury-price-item {
    display: flex;
    align-items: center;
    padding: 12px 0;
    position: relative;
    transition: all 0.3s ease;
}

.luxury-price-item:hover {
    padding-left: 4px;
}

.luxury-price-item:not(:last-child)::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(255,255,255,.06) 50%, 
        transparent 100%);
}

.luxury-price-item:hover {
    padding-left: 8px;
}

.luxury-price-label {
    font-size: 0.7rem;
    color: rgba(255,255,255,.45);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    min-width: 90px;
    flex-shrink: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transition: color 0.3s ease;
}

.luxury-price-item:hover .luxury-price-label {
    color: rgba(255,255,255,.6);
}

.luxury-price-divider {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(255,255,255,.08) 20%,
        rgba(255,255,255,.12) 50%, 
        rgba(255,255,255,.08) 80%,
        transparent 100%);
    margin: 0 18px;
    position: relative;
    transition: all 0.3s ease;
}

.luxury-price-item:hover .luxury-price-divider {
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.15) 20%,
        rgba(64,224,255,.25) 50%, 
        rgba(64,224,255,.15) 80%,
        transparent 100%);
}

.luxury-price-value {
    font-size: 1rem;
    color: var(--hi-cyan) !important;
    font-weight: 600;
    min-width: 110px;
    text-align: right;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    letter-spacing: 0.5px;
    text-shadow: 0 0 8px rgba(64,224,255,.4);
}

.luxury-price-value *,
.luxury-price-value span,
.luxury-price-value span[itemprop="price"] {
    color: var(--hi-cyan) !important;
    text-shadow: 0 0 8px rgba(64,224,255,.4) !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    filter: none !important;
}

.luxury-price-value::after {
    content: ' ₽';
    font-size: 0.85em;
    color: var(--hi-cyan) !important;
    text-shadow: 0 0 8px rgba(64,224,255,.4);
    margin-left: 2px;
}

.luxury-price-item:hover .luxury-price-value,
.luxury-price-item:hover .luxury-price-value::after,
.luxury-price-item:hover .luxury-price-value *,
.luxury-price-item:hover .luxury-price-value span,
.luxury-price-item:hover .luxury-price-value span[itemprop="price"] {
    text-shadow: 0 0 12px rgba(64,224,255,.6);
    color: var(--hi-cyan) !important;
}

@media (max-width: 768px) {
    .luxury-prices-section {
        padding: 24px 20px;
        margin: 20px auto;
        width: 95%;
    }
    
    .luxury-prices-wrapper {
        flex-direction: column;
        gap: 30px;
    }
    
    .luxury-price-block {
        min-width: 100%;
    }
    
    .luxury-price-label {
        min-width: 80px;
        font-size: 0.65rem;
    }
    
    .luxury-price-value {
        min-width: 100px;
        font-size: 0.95rem;
    }
    
    .luxury-price-divider {
        margin: 0 15px;
    }
}

/* Премиум блок "Услуги" - НОВЫЙ ДИЗАЙН */
.luxury-services-section {
    margin: 32px 0;
    padding: 24px 20px;
    /* подсветка/рамка как в блоке "Стоимость услуг" */
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    box-shadow:
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: visible;
}

.luxury-services-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

.luxury-services-title {
    font-size: 0.75rem;
    color: rgba(255,255,255,.4);
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    margin-bottom: 20px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    text-align: center;
    position: relative;
    padding-bottom: 12px;
}

.luxury-services-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(64,224,255,.6) 50%,
        transparent 100%);
    box-shadow: 0 0 10px rgba(64,224,255,.5);
}

/* Простая и элегантная структура: все категории видны сразу */
.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.service-category {
    padding: 16px 20px;
    border-radius: 16px;
    background: rgba(0,0,0,.25);
    border: 1px solid rgba(255,255,255,.06);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.service-category::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        rgba(64,224,255,.6) 0%, 
        rgba(196,60,255,.6) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.service-category:hover {
    background: rgba(0,0,0,.3);
    border-color: rgba(64,224,255,.15);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.3);
}

.service-category:hover::before {
    opacity: 1;
}

.service-category__header {
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,.5);
    margin-bottom: 12px;
    font-weight: 600;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.service-category__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
}

.service-category__list li {
    margin: 0;
    padding: 5px 12px;
    border-radius: 8px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.06);
    font-size: 13px;
    line-height: 1.4;
    transition: all 0.2s ease;
}

.service-category__list li a {
    color: rgba(255,255,255,.8);
    text-decoration: none;
    display: block;
    transition: all 0.2s ease;
}

.service-category__list li:hover {
    background: rgba(64,224,255,.12);
    border-color: rgba(64,224,255,.25);
    transform: translateY(-1px);
}

.service-category__list li:hover a {
    color: var(--hi-cyan);
    text-shadow: 0 0 8px rgba(64,224,255,.4);
}

.service-category__list li.active-service {
    background: rgba(64,224,255,.15);
    border-color: rgba(64,224,255,.3);
}

.service-category__list li.active-service a {
    color: var(--hi-cyan);
    font-weight: 500;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

.service-card {
    padding: 20px;
    border-radius: 18px;
    background: 
        linear-gradient(135deg, rgba(64,224,255,.04) 0%, rgba(196,60,255,.04) 100%),
        rgba(0,0,0,.3);
    border: 1px solid rgba(255,255,255,.08);
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 
        0 4px 20px rgba(0,0,0,.2),
        inset 0 1px 0 rgba(255,255,255,.05);
}

.service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        rgba(64,224,255,.6) 0%, 
        rgba(196,60,255,.6) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.service-card:hover {
    transform: translateY(-2px);
    border-color: rgba(64,224,255,.2);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.3),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.1);
    background: 
        linear-gradient(135deg, rgba(64,224,255,.06) 0%, rgba(196,60,255,.06) 100%),
        rgba(0,0,0,.35);
}

.service-card:hover::before {
    opacity: 1;
}

.service-card__title {
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 14px;
    color: rgba(255,255,255,.5);
    font-weight: 600;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    padding-bottom: 10px;
}

.service-card__title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 1px;
    background: linear-gradient(90deg, 
        rgba(64,224,255,.5) 0%, 
        transparent 100%);
}

.service-card__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
}

.service-card__list li {
    margin: 0;
    padding: 5px 12px;
    border-radius: 12px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.06);
    font-size: 13px;
    line-height: 1.4;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.service-card__list li::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(64,224,255,.1) 50%,
        transparent 100%);
    transition: left 0.5s ease;
}

.service-card__list li:hover::before {
    left: 100%;
}

.service-card__list li a {
    color: rgba(255,255,255,.75);
    text-decoration: none;
    display: block;
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
}

.service-card__list li:hover {
    background: rgba(64,224,255,.12);
    border-color: rgba(64,224,255,.3);
    transform: translateY(-1px);
    box-shadow: 
        0 4px 12px rgba(64,224,255,.2),
        0 0 20px rgba(64,224,255,.1);
}

.service-card__list li:hover a {
    color: var(--hi-cyan);
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

.service-card__list li.active-service {
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.4);
    box-shadow: 
        0 2px 8px rgba(64,224,255,.25),
        inset 0 1px 0 rgba(255,255,255,.1);
}

.service-card__list li.active-service a {
    color: var(--hi-cyan);
    font-weight: 500;
    text-shadow: 0 0 12px rgba(64,224,255,.6);
}

/* Сворачивание длинных категорий */
.service-card__list.collapsed {
    max-height: 120px;
    overflow: hidden;
    position: relative;
    mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%,
        rgba(0,0,0,0) 100%);
    -webkit-mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%,
        rgba(0,0,0,0) 100%);
}

.service-card__list.collapsed::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(to top, 
        rgba(0,0,0,.9) 0%, 
        rgba(0,0,0,.5) 50%,
        transparent 100%);
    pointer-events: none;
    z-index: 1;
}

.service-card__toggle {
    margin-top: 12px;
    font-size: 12px;
    color: var(--hi-cyan);
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    opacity: .8;
    transition: all 0.3s ease;
    text-transform: lowercase;
    font-weight: 500;
    padding: 4px 8px;
    border-radius: 8px;
    background: rgba(64,224,255,.05);
    border: 1px solid rgba(64,224,255,.1);
}

.service-card__toggle::after {
    content: '↓';
    font-size: 10px;
    transition: transform 0.3s ease;
}

.service-card__list:not(.collapsed) + .service-card__toggle::after {
    transform: rotate(180deg);
}

.service-card__toggle:hover {
    opacity: 1;
    background: rgba(64,224,255,.1);
    border-color: rgba(64,224,255,.2);
    text-shadow: 0 0 10px rgba(64,224,255,.5);
    transform: translateY(-1px);
}

/* Старые классы для обратной совместимости (если где-то еще используются) */
.luxury-services-wrapper {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.luxury-service-block {
    padding: 14px 18px;
    border-radius: 16px;
    background: radial-gradient(120% 120% at 0% 0%, rgba(0,255,255,.05), transparent),
                rgba(0,0,0,.35);
    box-shadow: 0 0 40px rgba(0,0,0,.4);
}

.luxury-service-block-title {
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase;
    opacity: .6;
    margin-bottom: 8px;
    color: rgba(255,255,255,.6);
    font-weight: 500;
}

.luxury-service-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
}

.luxury-service-list li {
    margin: 0;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(0, 255, 255, .08);
    font-size: 12px;
    line-height: 1.3;
}

.luxury-service-list li a {
    font-size: 13px;
    color: rgba(255,255,255,.7);
    text-decoration: none;
    display: block;
}

.luxury-service-list li:hover a {
    color: var(--hi-cyan);
}

.luxury-service-list li.active-service a {
    color: var(--hi-cyan);
    font-weight: 500;
}


@media (max-width: 768px) {
    .luxury-services-section {
        padding: 20px 16px;
        margin: 24px auto;
        width: 95%;
        border-radius: 20px;
    }
    
    .luxury-services-title {
        margin-bottom: 16px;
        padding-bottom: 10px;
    }
    
    .services-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    
    .service-category {
        padding: 14px 16px;
    }
    
    .service-category__header {
        margin-bottom: 10px;
        font-size: 10px;
    }
    
    .service-category__list {
        gap: 5px 8px;
    }
    
    .service-category__list li {
        padding: 4px 10px;
        font-size: 12px;
    }
    
    .service-card {
        padding: 16px;
        border-radius: 16px;
    }
    
    .service-card__title {
        margin-bottom: 12px;
        padding-bottom: 8px;
    }
    
    .service-card__list {
        gap: 5px 6px;
    }
    
    .service-card__list li {
        padding: 4px 10px;
        font-size: 12px;
        border-radius: 10px;
    }
    
    .luxury-service-block {
        min-width: 100%;
        padding: 16px;
        border-radius: 16px;
    }
    
    .luxury-service-list li {
        padding: 4px 10px;
        font-size: 12px;
    }
}

@media (max-width: 576px) {
    .services-block {
        padding: 16px 14px;
    }
    
    .services-tabs {
        margin-bottom: 14px;
    }
    
    .services-tab {
        padding: 4px 10px;
        font-size: 11px;
    }
    
    .services-list li {
        font-size: 12px;
    }
}

/* Блок "Девушки поблизости" */
.nearby-girls-section {
    margin-bottom: 10px !important;
}

.nearby-girls-section > h2.title {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    letter-spacing: 0.3px !important;
}

/* Премиум блок "Локация" */
.luxury-services-section-before-reviews {
    margin-bottom: 20px;
}

.profile-reviews-section {
    margin: 20px 0;
    padding: 22px 20px;
    background:
        radial-gradient(700px 220px at 85% 0%, rgba(196,60,255,.08), transparent 60%),
        radial-gradient(600px 220px at 5% 100%, rgba(64,224,255,.08), transparent 58%),
        rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    box-shadow:
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: hidden;
}

.profile-reviews-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(64,224,255,.35) 18%,
        rgba(196,60,255,.55) 50%,
        rgba(64,224,255,.35) 82%,
        transparent 100%);
    box-shadow:
        0 0 20px rgba(64,224,255,.35),
        0 0 40px rgba(64,224,255,.25);
    z-index: 1;
}

.profile-reviews-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.profile-reviews-header-actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.profile-reviews-title {
    font-size: 0.75rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    padding-bottom: 10px;
}

.profile-reviews-title::after {
    content: none;
}

.profile-reviews-rating {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(0,0,0,.25);
    border: 1px solid rgba(64,224,255,.28);
    color: #ffc857;
    font-weight: 800;
    font-size: 18px;
    box-shadow: 0 0 24px rgba(64,224,255,.14);
}

.profile-reviews-rating span {
    color: #9bb7ff;
    font-size: 13px;
    font-weight: 600;
}

.profile-favorite-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 10px;
    border: 1px solid rgba(64,224,255,.24);
    background: rgba(255,255,255,.045);
    color: #9fefff;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.profile-favorite-btn:hover {
    color: #e8f0ff;
    background: rgba(64,224,255,.1);
    border-color: rgba(64,224,255,.42);
}

.profile-favorite-btn.is-active {
    color: #ffc857;
    border-color: rgba(255,200,87,.32);
    background: rgba(255,200,87,.08);
}

.profile-reviews-cta,
.profile-reviews-empty,
.profile-review-message {
    color: #9bb7ff;
    font-size: 16px;
    line-height: 1.45;
}

.profile-reviews-cta {
    margin-bottom: 18px;
    padding: 14px 16px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    background:
        radial-gradient(360px 140px at 100% 0%, rgba(196,60,255,.14), transparent 62%),
        radial-gradient(340px 140px at 0% 100%, rgba(64,224,255,.12), transparent 60%),
        rgba(0,0,0,.26);
    border: 1px solid rgba(64,224,255,.18);
    box-shadow:
        0 10px 28px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.05),
        0 0 28px rgba(64,224,255,.08);
    position: relative;
    overflow: hidden;
}

.profile-reviews-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.045) 45%, transparent 70%);
    pointer-events: none;
}

.profile-reviews-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-left: auto;
    min-height: 34px;
    padding: 7px 14px;
    border-radius: 10px;
    color: #9fefff;
    background: rgba(255,255,255,.045);
    border: 1px solid rgba(64,224,255,.22);
    font-weight: 700;
    font-size: 13px;
    line-height: 1.25;
    text-decoration: none;
    box-shadow: none;
    white-space: nowrap;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.profile-reviews-cta a::after {
    content: none;
}

.profile-reviews-cta a:hover {
    color: #e8f0ff;
    background: rgba(64,224,255,.1);
    border-color: rgba(64,224,255,.38);
}

@media (max-width: 560px) {
    .profile-reviews-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .profile-reviews-cta a {
        margin-left: 0;
    }
}

.profile-reviews-empty {
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(0,0,0,.18);
    border: 1px solid rgba(255,255,255,.06);
}

.profile-review-form {
    margin-bottom: 18px;
    padding: 16px;
    border-radius: 16px;
    background: rgba(0,0,0,.24);
    border: 1px solid rgba(64,224,255,.12);
}

.profile-review-form-grid {
    display: grid;
    gap: 12px;
}

.profile-review-label {
    color: #9bb7ff;
    font-weight: 700;
}

.profile-review-select,
.profile-review-textarea {
    background: rgba(255,255,255,.07);
    color: #e8f0ff;
    border: 1px solid rgba(64,224,255,.22);
    border-radius: 12px;
    outline: none;
}

.profile-review-select {
    margin-left: 8px;
    max-width: 120px;
    padding: 7px 10px;
}

.profile-review-textarea {
    width: 100%;
    padding: 12px 14px;
    resize: vertical;
}

.profile-review-select:focus,
.profile-review-textarea:focus {
    border-color: rgba(64,224,255,.6);
    box-shadow: 0 0 0 3px rgba(64,224,255,.12);
}

.profile-review-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.profile-review-submit,
.profile-review-delete {
    border: 0;
    border-radius: 999px;
    padding: 10px 18px;
    font-weight: 800;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.profile-review-submit {
    color: #04121e;
    background: linear-gradient(90deg, #40e0ff, #c43cff);
    box-shadow: 0 10px 26px rgba(64,224,255,.18);
}

.profile-review-delete {
    color: #ffb7c0;
    background: rgba(255,107,122,.12);
    border: 1px solid rgba(255,107,122,.3);
}

.profile-review-submit:hover,
.profile-review-delete:hover {
    transform: translateY(-1px);
    filter: brightness(1.08);
}

.profile-review-item {
    padding: 16px;
    margin-top: 12px;
    border-radius: 16px;
    background: rgba(0,0,0,.22);
    border: 1px solid rgba(255,255,255,.07);
}

.profile-review-item-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.profile-review-stars {
    color: #ffc857;
    letter-spacing: 1px;
}

.profile-review-item p {
    margin: 10px 0 4px;
    color: rgba(232,240,255,.9);
    line-height: 1.55;
}

.profile-review-item small {
    color: #9bb7ff;
}

.luxury-location-section {
    margin-top: 20px !important;
    margin-bottom: 30px;
    padding: 20px 18px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
    overflow: hidden;
}

.luxury-location-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

.luxury-location-title {
    font-size: 0.7rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    margin-bottom: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-location-content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.luxury-location-list {
    width: 100%;
}

.luxury-location-list-items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
}

.luxury-location-list-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 16px 18px;
    position: relative;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    border-radius: 16px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow:
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.12),
        inset 0 1px 0 rgba(255,255,255,.05);
    overflow: hidden;
    animation: none;
    cursor: pointer;
}

.luxury-location-list-item:nth-child(1) { animation-delay: 0.1s; }
.luxury-location-list-item:nth-child(2) { animation-delay: 0.2s; }
.luxury-location-list-item:nth-child(3) { animation-delay: 0.3s; }
.luxury-location-list-item:nth-child(4) { animation-delay: 0.4s; }

@keyframes locationSlideIn {
    from {
        opacity: 0;
        transform: translateY(20px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes locationPulse {
    0%, 100% {
        opacity: 0.6;
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(1.1);
    }
}

@keyframes locationRotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.luxury-location-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: radial-gradient(circle, 
        rgba(64,224,255,.4) 0%, 
        rgba(196,60,255,.3) 50%,
        transparent 70%);
    transform: translate(-50%, -50%);
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
    z-index: 0;
}

.luxury-location-list-item::before {
    display: none;
}

.luxury-location-list-item::after {
    display: none;
}

.luxury-location-list-item:hover {
    background: rgba(64,224,255,.04);
    border-color: rgba(64,224,255,.18);
    transform: none;
    box-shadow:
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.14),
        inset 0 1px 0 rgba(255,255,255,.05);
}

.luxury-location-list-item:hover::before {
    opacity: 1;
}

.luxury-location-list-item:hover::after {
    opacity: 1;
}

.luxury-location-list-item:hover .luxury-location-glow {
    width: 0;
    height: 0;
    animation: none;
}

.luxury-location-list-item:hover .luxury-location-icon {
    transform: none;
    filter: none;
}

.luxury-location-list-item:hover .luxury-location-list-value a {
    transform: none;
    text-shadow: 0 0 12px rgba(64,224,255,.35);
}

.luxury-location-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-right: 16px;
    position: relative;
    z-index: 2;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    background: linear-gradient(135deg, 
        rgba(64,224,255,.15) 0%, 
        rgba(196,60,255,.15) 100%);
    border: 1px solid rgba(64,224,255,.2);
    box-shadow: 
        0 4px 12px rgba(64,224,255,.1),
        inset 0 1px 0 rgba(255,255,255,.1);
}

.location-city .luxury-location-icon,
.location-district .luxury-location-icon,
.location-metro .luxury-location-icon,
.location-suburb .luxury-location-icon {
    display: none !important;
}

.luxury-location-content {
    flex: 1;
    position: relative;
    z-index: 2;
    min-width: 0;
}

.luxury-location-list-label {
    font-size: 0.65rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    margin-bottom: 8px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    text-shadow: none;
    transition: none;
}

.luxury-location-list-item:hover .luxury-location-list-label {
    color: rgba(255,255,255,.7);
    text-shadow: none;
}

.luxury-location-list-item .luxury-location-list-label {
    color: rgba(255,255,255,.5) !important;
    -webkit-text-fill-color: rgba(255,255,255,.5) !important;
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
}

.luxury-location-list-item:hover .luxury-location-list-label {
    color: rgba(255,255,255,.7) !important;
    -webkit-text-fill-color: rgba(255,255,255,.7) !important;
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
}

.luxury-location-list-divider {
    display: none;
}

.luxury-location-list-value {
    font-size: 1.05rem;
    color: var(--hi-cyan);
    -webkit-text-fill-color: var(--hi-cyan);
    font-weight: 600;
    text-align: left;
    width: 100%;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    position: relative;
    z-index: 2;
    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 14px rgba(64,224,255,.35);
    -webkit-text-stroke: 0.35px rgba(0,0,0,0.55);
}

.luxury-location-list-value a {
    color: var(--hi-cyan);
    -webkit-text-fill-color: var(--hi-cyan);
    text-decoration: none;
    transition: color 0.15s ease, text-shadow 0.15s ease;
    position: relative;
    display: inline-block;
    background: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 14px rgba(64,224,255,.35);
    -webkit-text-stroke: 0.35px rgba(0,0,0,0.55);
}

.luxury-location-list-value a::after {
    display: none;
}

.luxury-location-list-item:hover .luxury-location-list-value a::after {
    width: 0;
}

.luxury-location-list-value a:hover {
    transform: none;
    text-shadow: 0 0 12px rgba(64,224,255,.35);
}

.luxury-location-list-item.location-city,
.luxury-location-list-item.location-district,
.luxury-location-list-item.location-metro,
.luxury-location-list-item.location-suburb {
    color: rgba(255,255,255,.9);
    -webkit-text-fill-color: rgba(255,255,255,.9);
    font-weight: 600;
}

.luxury-location-map {
    position: relative;
    width: 100%;
    height: 450px !important;
    min-height: 450px !important;
    max-height: 450px !important;
    border-radius: 12px;
    overflow: hidden !important;
    background: transparent;
    transition: all 0.3s ease;
    box-shadow: none !important;
    border: none !important;
}

.luxury-location-map .maps {
    width: 100% !important;
    height: 450px !important;
    min-height: 450px !important;
    max-height: 450px !important;
    position: relative !important;
    box-shadow: none !important;
    overflow: visible !important;
    border-radius: 12px;
}

/* Убираем полосу подсветки с карты в блоке локации */
.luxury-location-map .maps::before,
.luxury-location-map .maps::after {
    display: none !important;
    content: none !important;
}

.luxury-location-map #map-location {
    width: 100% !important;
    height: 450px !important;
    min-height: 450px !important;
    max-height: 450px !important;
    border-radius: 12px;
    position: relative !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Устанавливаем высоту для основных элементов Yandex Maps */
.luxury-location-map #map-location,
.luxury-location-map #map-location .ymaps-2-1-79-map,
.luxury-location-map #map-location .ymaps-2-1-79-ground-pane,
.luxury-location-map .maps {
    height: 450px !important;
    min-height: 450px !important;
    max-height: 450px !important;
    overflow: visible !important;
    border-radius: 12px;
}

/* Скрываем только текстовые копирайты Яндекса */
.luxury-location-map .ymaps-2-1-79-copyright__wrap,
.luxury-location-map .ymaps-2-1-79-copyright {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Скрываем только ссылки на условия использования внизу карты */
.luxury-location-map .maps a[href*="yandex"],
.luxury-location-map .maps a[href*="Яндекс"],
.luxury-location-map .maps a[href*="terms"],
.luxury-location-map .maps a[href*="conditions"] {
    display: none !important;
    visibility: hidden !important;
}

.luxury-location-map .ymaps-2-1-79-ground-pane {
    border-radius: 12px;
    overflow: visible !important;
}

/* Дополнительно ограничиваем все элементы карты */
.luxury-location-map .ymaps-2-1-79-map,
.luxury-location-map .ymaps-2-1-79-inner-panes,
.luxury-location-map .ymaps-2-1-79-outer-panes {
    overflow: visible !important;
    border-radius: 12px;
}

/* Убираем затемнение с карты - всегда светлая */
.luxury-location-map,
.luxury-location-map *,
.luxury-location-map .maps,
.luxury-location-map .maps *,
.luxury-location-map #map-location,
.luxury-location-map #map-location *,
.luxury-location-map .ymaps-2-1-79-ground-pane,
.luxury-location-map .ymaps-2-1-79-ground-pane * {
    filter: brightness(1) !important;
    opacity: 1 !important;
}



.luxury-location-map:hover,
.luxury-location-map:hover *,
.luxury-location-map:hover .maps,
.luxury-location-map:hover .maps *,
.luxury-location-map:hover #map-location,
.luxury-location-map:hover #map-location *,
.luxury-location-map:hover .ymaps-2-1-79-ground-pane,
.luxury-location-map:hover .ymaps-2-1-79-ground-pane * {
    filter: brightness(1) !important;
    opacity: 1 !important;
}

@media (max-width: 768px) {
    .nearby-girls-section {
        margin-bottom: 10px !important;
    }
    
    .luxury-location-section {
        padding: 18px 16px;
        margin-top: 10px !important;
        margin-bottom: 20px;
        margin-left: auto;
        margin-right: auto;
        width: 95%;
    }
    
    .luxury-location-content-wrapper {
        gap: 20px;
    }
    
    .luxury-location-list-items {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .luxury-location-list-item {
        padding: 14px 16px;
        flex-direction: row;
    }
    
    .luxury-location-icon {
        width: 40px;
        height: 40px;
        min-width: 40px;
        margin-right: 12px;
    }
    
    
    .luxury-location-list-value {
        font-size: 0.95rem;
    }
    
    .luxury-location-map {
        height: 450px !important;
        min-height: 450px !important;
        max-height: 450px !important;
    }
    
    .luxury-location-map .maps {
        height: 450px !important;
        min-height: 450px !important;
        max-height: 450px !important;
    }
    
    .luxury-location-map #map-location {
        height: 450px !important;
        min-height: 450px !important;
        max-height: 450px !important;
    }
}

/* Секция цен */
.luxury-prices-section {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.08);
}

.luxury-section-title {
    font-size: 0.7rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 300;
    margin-bottom: 20px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-prices-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 16px;
}

.luxury-price-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 16px;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(255,255,255,.01);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.luxury-price-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid rgba(255,255,255,.1);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.luxury-price-item:hover {
    border-color: rgba(255,255,255,.15);
    background: rgba(255,255,255,.02);
    transform: translateY(-2px);
}

.luxury-price-item:hover::before {
    opacity: 1;
}

.luxury-price-label {
    font-size: 0.65rem;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 300;
    margin-bottom: 12px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-price-value {
    font-size: 1.1rem;
    color: rgba(255,255,255,.95);
    font-weight: 300;
    letter-spacing: 1px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.luxury-price-vyezd {
    border-color: rgba(255,255,255,.08);
}

.luxury-price-vyezd:hover {
    border-color: rgba(255,255,255,.18);
}

@media (max-width: 768px) {
    .premium-h1-section {
        margin: 15px 0 20px 0;
    }
    
    .premium-h1-wrapper {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    .premium-h1-title {
        font-size: 1.5rem;
        line-height: 1.4;
        width: 100%;
        text-align: center !important;
    }
    
    .premium-h1-title::after {
        display: none;
    }
    
    .premium-h1-phone {
        width: 100%;
    }
    
    .premium-h1-phone {
        width: 80%;
        margin: 0 auto;
    }
    
    .premium-h1-phone .phone-box {
        width: 100%;
        justify-content: center;
    }
    
    .premium-avatar-photo {
        margin: 15px 0 20px 0;
    }
    
    .avatar-data-wrapper {
        flex-direction: column;
        gap: 20px;
    }
    
    .avatar-photo-container {
        max-width: 95%;
        width: 95%;
        margin: 0 auto;
        border-radius: 12px;
        height: 600px !important;
        min-height: 600px !important;
    }
    
    .avatar-photo-container video.animated-photo {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }
    
    .avatar-photo-container .truePhoto {
        font-size: 14px !important;
        text-align: left !important;
        background: linear-gradient(135deg, rgba(64,224,255,.3) 0%, rgba(196,60,255,.3) 100%) !important;
        position: absolute !important;
        bottom: 0 !important;
        right: 0 !important;
        left: auto !important;
        padding: 8px 14px !important;
        color: #fff !important;
        font-weight: 700 !important;
        z-index: 1000 !important;
        border-radius: 8px 0 0 0 !important;
        border: 1px solid rgba(64,224,255,.5) !important;
        border-bottom: none !important;
        backdrop-filter: blur(10px) saturate(180%) !important;
        box-shadow: 
            0 -2px 10px rgba(64,224,255,.4),
            0 0 15px rgba(64,224,255,.3),
            0 0 20px rgba(196,60,255,.2) !important;
        text-shadow: 0 0 10px rgba(64,224,255,.6) !important;
        letter-spacing: 0.3px !important;
        pointer-events: none !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    .avatar-profile-data {
        min-width: 100%;
        width: 95%;
        margin: 0 auto;
    }
    
    .luxury-data-panel {
        padding: 16px 14px;
        width: 95%;
        margin: 0 auto;
    }
    
    .luxury-data-panel-title {
        font-size: 0.65rem;
        margin-bottom: 12px;
        padding-bottom: 6px;
    }
    
    .luxury-data-items-wrapper {
        margin-bottom: 12px;
    }
    
    .luxury-data-item {
        padding: 6px 0;
    }
    
    .luxury-label {
        min-width: 90px;
        font-size: 0.6rem;
    }
    
    .luxury-value {
        font-size: 0.85rem;
        min-width: 70px;
    }
    
    .luxury-about-text {
        margin-top: 12px;
        padding-top: 12px;
        font-size: 0.8rem;
        line-height: 1.5;
        text-align: justify;
    }
    
    .luxury-divider {
        margin: 0 15px;
    }
    
    .luxury-prices-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    
    .luxury-price-item {
        padding: 16px 12px;
    }
    
    .luxury-price-label {
        font-size: 0.6rem;
    }
    
    .luxury-price-value {
        font-size: 1rem;
    }
}


.premium-ad-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        radial-gradient(circle at 20% 20%, rgba(64,224,255,.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(196,60,255,.1) 0%, transparent 50%);
    z-index: -1;
}

.premium-ad-header .brand-title {
    font-size: 1.75rem;
    font-weight: 800;
    margin-bottom: 1rem;
    position: relative;
    animation: brandGlow 3s ease-in-out infinite alternate, slideInDown 1.2s ease-out;
    text-align: center;
    width: 100%;
}

.premium-ad-header .brand-text {
    background: linear-gradient(135deg, #fff 0%, #40e0ff 30%, #c43cff 70%, #fff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.5);
    letter-spacing: 1px;
    position: relative;
    display: inline-block;
    text-align: center;
    line-height: 1.4;
}

.premium-ad-header .brand-text::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 30%, #c43cff 70%, #fff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    filter: blur(1px);
    opacity: 0.7;
    z-index: -1;
}

.premium-ad-header .brand-subtitle {
    font-size: 1.1rem;
    color: #b8d4ff;
    font-weight: 400;
    letter-spacing: 0.5px;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
    animation: fadeInUp 1.4s ease-out;
}

/* Премиум кнопка телефона в header */
.premium-phone-button-wrapper {
    margin-top: 1.5rem;
    animation: fadeInUp 1.8s ease-out;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.premium-ad-header .premium-phone-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    min-height: 48px;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border: 1px solid rgba(64,224,255,.3);
    box-shadow: 
        0 4px 15px rgba(64,224,255,.2),
        inset 0 0 0 1px rgba(64,224,255,.2);
}

.premium-ad-header .premium-phone-btn:hover {
    background: linear-gradient(135deg, rgba(64,224,255,.25) 0%, rgba(196,60,255,.25) 100%);
    border-color: rgba(64,224,255,.5);
    transform: translateY(-3px) scale(1.05);
    box-shadow: 
        0 8px 25px rgba(0,0,0,.4),
        0 0 30px rgba(64,224,255,.4),
        0 0 40px rgba(196,60,255,.2),
        inset 0 0 0 1px rgba(64,224,255,.4);
}

.premium-ad-header .premium-phone-btn::after {
    content: 'Показать телефон';
    font-size: 1rem;
}

@media (max-width: 1200px) {
    .premium-ad-header .premium-phone-btn::after {
        content: 'Телефон';
        font-size: 0.9rem;
    }
}

/* Информация о локации в header */
.brand-location-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-top: 1.5rem;
    animation: fadeInUp 1.6s ease-out;
}

.location-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    background: rgba(64,224,255,.05);
    border: 1px solid rgba(64,224,255,.15);
    border-radius: 10px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.location-item:hover {
    background: rgba(64,224,255,.1);
    border-color: rgba(64,224,255,.25);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(64,224,255,.15);
}

.location-icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.location-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 0 6px rgba(255,193,7,.6));
}

.location-label {
    color: rgba(255,255,255,.8);
    font-size: 0.95rem;
    font-weight: 500;
    white-space: nowrap;
}

.location-link {
    color: var(--hi-cyan);
    text-decoration: underline;
    text-decoration-color: rgba(64,224,255,.5);
    text-underline-offset: 3px;
    font-size: 0.95rem;
    font-weight: 600;
    transition: all 0.3s ease;
    text-shadow: 0 0 10px rgba(64,224,255,.4);
}

.location-link:hover {
    color: #fff;
    text-decoration-color: var(--hi-cyan);
    text-shadow: 0 0 15px rgba(64,224,255,.7);
    transform: translateX(2px);
}

.location-city {
    color: rgba(255,255,255,.7);
    font-size: 0.9rem;
    font-weight: 400;
    white-space: nowrap;
}

@keyframes brandGlow {
    0% {
        filter: brightness(1) drop-shadow(0 0 10px rgba(64,224,255,.3));
    }
    100% {
        filter: brightness(1.2) drop-shadow(0 0 20px rgba(64,224,255,.6));
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        transform: translateY(-50px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes iconPulse {
    0%, 100% {
        transform: translateY(-50%) scale(1);
        opacity: 0.7;
    }
    50% {
        transform: translateY(-50%) scale(1.1);
        opacity: 1;
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Мобильная версия премиум header */
@media (max-width: 768px) {
    .premium-ad-header {
        padding: 1.25rem 0;
        margin: 15px 0 25px 0;
    }
    
    .premium-ad-header .brand-title {
        font-size: 2rem;
    }
    
    .premium-ad-header .brand-subtitle {
        font-size: 0.95rem;
        padding: 0 1rem;
    }
    
    .brand-location-info {
        gap: 10px;
        margin-top: 1.25rem;
    }
    
    .location-item {
        padding: 6px 12px;
        gap: 8px;
    }
    
    .location-icon {
        width: 20px;
        height: 20px;
    }
    
    .location-label,
    .location-link {
        font-size: 0.85rem;
    }
    
    .location-city {
        font-size: 0.8rem;
    }
}

@media (max-width: 576px) {
    .premium-ad-header {
        padding: 1rem 0;
        margin: 12px 0 20px 0;
    }
    
    .premium-ad-header .brand-title {
        font-size: 1.75rem;
    }
    
    .premium-ad-header .brand-subtitle {
        font-size: 0.85rem;
    }
    
    .brand-location-info {
        gap: 8px;
        margin-top: 1rem;
    }
    
    .location-item {
        padding: 5px 10px;
        gap: 6px;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .location-icon {
        width: 18px;
        height: 18px;
    }
    
    .location-label,
    .location-link {
        font-size: 0.8rem;
    }
    
    .location-city {
        font-size: 0.75rem;
    }
}


.cart {
    padding: 11px 11px 7px 8px;
    margin: 0 0 11px 17px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 0 10px 28px rgba(0,0,0,.42), 0 0 24px rgba(64,224,255,.07);
    border-radius: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    z-index: 1;
    overflow: visible;
    pointer-events: auto;
    cursor: pointer !important;
    /* Оптимизация для предотвращения мелькания при добавлении */
    will-change: transform, opacity;
}

/* Убираем will-change на мобильных, чтобы избежать проблем с рендерингом при скролле */
@media (max-width: 1200px) {
    .cart {
        will-change: auto !important;
        /* Упрощаем backdrop-filter на мобильных для лучшей производительности */
        backdrop-filter: blur(3px) saturate(110%) !important;
        /* Убираем свечение с рамки в мобильной версии */
        box-shadow: 0 10px 28px rgba(0,0,0,.42) !important;
        border: 1px solid rgba(255,255,255,.1) !important;
    }
    
    /* Убираем свечение из псевдоэлемента ::before в мобильной версии */
    .cart::before {
        display: none !important;
    }
    
    /* Убираем свечение из псевдоэлемента ::before на рамке фото в мобильной версии */
    .cart .left-block a::before,
    .cart .infMedium .left-block a::before {
        display: none !important;
    }
    
    /* Убираем сложные transform на изображениях и видео для лучшей производительности */
    .cart .infMedium div a img,
    .cart .infMedium div a video,
    .cart .infMedium div a .animated-photo {
        will-change: auto !important;
        /* Убираем transform: scale() на мобильных, если он есть */
        transform: none !important;
    }
}

/* Отключаем transitions на мобильных при добавлении новых карточек */
@media (max-width: 1200px) {
    .cart.loading {
        transition: none !important;
        animation: none !important;
    }
}

.cart .full-card-link {
    pointer-events: auto !important;
    position: relative;
    z-index: 10 !important;
    cursor: pointer !important;
    display: block;
}

/* Вложенные ссылки внутри .full-card-link не должны блокировать клики по карточке */
.cart .full-card-link .infTop .col .name a,
.cart .full-card-link .infTop .name a,
.cart .full-card-link .infTop a {
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Кнопка phone-box должна быть кликабельной поверх full-card-link */
.cart .full-card-link .phone-box {
    pointer-events: auto !important;
    z-index: 100 !important;
    position: relative !important;
}

.cart::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(64,224,255,.05) 0%, rgba(196,60,255,.05) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 0;
    pointer-events: none;
}

.cart:hover {
    border: 1px solid rgba(64,224,255,.3);
    transform: translateY(-4px);
    box-shadow: 
        0 20px 40px rgba(0,0,0,.4),
        0 0 30px rgba(64,224,255,.2),
        inset 0 0 0 1px rgba(64,224,255,.3);
    background: rgba(255,255,255,.04);
    backdrop-filter: blur(12px) saturate(180%);
    cursor: pointer !important;
}

.cart:hover::before {
    opacity: 1;
}

/* Убираем свечение при наведении в мобильной версии */
@media (max-width: 1200px) {
    .cart:hover {
        box-shadow: 0 20px 40px rgba(0,0,0,.4) !important;
        border: 1px solid rgba(255,255,255,.1) !important;
    }
    
    .cart:hover::before {
        display: none !important;
        opacity: 0 !important;
    }
}

.cart .left-block {
    width: 210px; /* Вертикальный формат 3:4 */
    height: 280px; /* Вертикальный формат 3:4 (210px × 280px) */
    color: var(--hi-cyan);
    position: relative;
    z-index: 2;
    border-radius: 10px;
    overflow: hidden; /* Обрезаем содержимое, выходящее за границы */
    background: rgba(64,224,255,.03);
    border: none; /* Убрана дублирующая рамка, так как уже есть рамка у .cart */
    display: block; /* Убираем flex, чтобы ссылка заполняла весь контейнер */
    flex-shrink: 0; /* Предотвращаем сжатие */
}

.cart .left-block a {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 210px;
    min-height: 280px;
    max-width: 210px;
    max-height: 280px;
    overflow: hidden; /* Обрезаем изображение, выходящее за границы */
    position: relative;
    box-sizing: border-box;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    border-radius: 10px;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
}

/* В мобильной версии переопределяем размеры для .cart .left-block a */
@media (max-width: 1200px) {
    .cart .left-block a {
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
    }
}

/* Стили для .cart .left-block в мобильной версии применяются в общем медиа-запросе ниже */

/* Добавляем верхнюю линию подсветки, как в luxury-data-panel */
.cart .left-block a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 2;
    border-radius: 10px 10px 0 0;
    pointer-events: none;
}

.cart .left-block a::after {
    display: none; /* Убираем нижнюю линию, как в luxury-data-panel */
}

.cart .left-block a:hover {
    border-color: rgba(255,255,255,.12);
    background: rgba(255,255,255,.03);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.15),
        0 0 50px rgba(64,224,255,.2),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.cart .left-block a:hover::before {
    height: 3px;
    box-shadow: 
        0 0 20px rgba(64,224,255,.8),
        0 0 35px rgba(196,60,255,.6);
}

.cart .left-block a img {
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    box-sizing: border-box;
}

/* Стили для изображений в мобильной версии применяются в общем медиа-запросе ниже */

.cart .infTop {
    position: relative;
    margin-bottom: 12px;
    flex-wrap: nowrap;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(64,224,255,.1);
}

.cart .infTop .col {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    gap: 10px;
}

/* Унифицированные стили для имени в карточках - одинаковые для главной и "Девушки поблизости" */
.cart .infTop .col {
    justify-content: flex-start !important;
    gap: 10px;
}

.cart .infTop .col .name {
    order: -1;
    flex: 0 1 auto;
    margin-right: auto;
    text-align: left !important;
}

/* Цвет текста имени - такой же, как в кнопке phone-box */
.cart .infTop .col,
.cart .infTop .col .name,
.cart .infTop .col .name a,
.cart .infTop .col .name span[itemprop="name"],
.cart .infTop .col a,
.cart .infTop .col span[itemprop="name"],
.cart .infTop div .col,
.cart .infTop div .col .name,
.cart .infTop div .col .name a,
.cart .infTop div .col .name span[itemprop="name"],
.cart .infTop div .col a,
.cart .infTop div .col span[itemprop="name"],
main .main-content .others .girls .cart .infTop .col,
main .main-content .others .girls .cart .infTop .col .name,
main .main-content .others .girls .cart .infTop .col .name a,
main .main-content .others .girls .cart .infTop .col .name span[itemprop="name"],
main .main-content .others .girls .cart .infTop .col a,
main .main-content .others .girls .cart .infTop .col span[itemprop="name"] {
    font-size: 18px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    transition: all 0.3s ease !important;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    letter-spacing: 0.3px !important;
    position: relative !important;
    display: inline-block !important;
    text-align: left !important;
    color: transparent !important;
}

/* Применяем градиент к прямым дочерним элементам .col */
.cart .infTop .col > *,
.cart .infTop div .col > *,
main .main-content .others .girls .cart .infTop .col > * {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    color: transparent !important;
}

/* Переопределяем старые стили для .cart .infTop div .name a */
.cart .infTop div .name a,
.cart .infTop .col .name a {
    color: transparent !important;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
}

main .main-content .others .girls .cart .infTop .col .name a::after,
main .main-content .others .girls .cart .infTop .col .name span[itemprop="name"]::after {
    content: '' !important;
    position: absolute !important;
    bottom: -2px !important;
    left: 0 !important;
    width: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, var(--hi-cyan), var(--hi-mag)) !important;
    transition: width 0.3s ease !important;
    border-radius: 2px !important;
}

main .main-content .others .girls .cart:hover .infTop .col .name a::after,
main .main-content .others .girls .cart:hover .infTop .col .name span[itemprop="name"]::after {
    width: 100% !important;
}

main .main-content .others .girls .cart .infTop .col .name a:hover,
main .main-content .others .girls .cart:hover .infTop .col .name span[itemprop="name"] {
    text-decoration: none !important;
    text-shadow: 0 0 20px rgba(64,224,255,.6) !important;
    transform: translateX(2px) !important;
}

main .main-content .others .girls .cart .infTop .col .phone-box {
    order: 1;
    flex: 0 0 auto;
    margin-left: auto;
}

.cart .infTop .metro {
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 6px;
    text-align: left;
    width: 100%;
    color: var(--hi-cyan);
    position: relative;
    z-index: 2;
    font-weight: 600;
    text-shadow: 0 0 8px rgba(64,224,255,.4);
}

.cart .infTop .metro img {
    /* светлый значок в цвет дизайна (и десктоп, и мобилка) */
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
    transition: all 0.3s ease;
}

.cart .infTop .metro p {
    margin: 0;
    padding: 0;
    background: none;
    -webkit-text-fill-color: var(--hi-cyan);
    text-shadow: 0 0 8px rgba(64,224,255,.4);
}

/* Уменьшаем шрифт метро в мобильной версии */
@media (max-width: 1200px) {
    .cart .infTop .metro {
        font-size: 13px !important;
    }
    
    .cart .infTop .metro p {
        font-size: 13px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
    }
}

.cart .infTop .metro p::after {
    display: none;
}

.cart .infTop .tel {
    display: block;
    color: var(--hi-green);
    line-height: 24px;
    font-weight: 700;
    white-space: nowrap;
    text-shadow: 0 0 12px rgba(25,255,149,.6);
    position: relative;
    z-index: 2;
    font-size: 15px;
    letter-spacing: 0.3px;
    transition: all 0.3s ease;
}

.cart .infTop .tel:hover {
    text-shadow: 0 0 16px rgba(25,255,149,.8);
    transform: scale(1.02);
}

/* Премиум стиль для кнопки "показать телефон" */
.cart .infTop .phone-box,
.phone-box {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
    z-index: 2;
    border-radius: 12px;
    padding: 10px 16px;
    min-height: 40px;
    gap: 10px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.25),
        0 0 40px rgba(64,224,255,.14),
        inset 0 1px 0 rgba(255,255,255,.05);
    overflow: visible;
}

.phone-box::before {
    content: "\260E\FE0E";
    position: relative;
    z-index: 2;
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    color: var(--hi-cyan);
    font-family: "Segoe UI Symbol", "Apple Symbols", "Noto Sans Symbols2", "Noto Sans Symbols", Arial, sans-serif;
    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 14px rgba(64,224,255,.35);
}

.phone-box:hover::before {
    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 18px rgba(64,224,255,.55);
}

.phone-box {
    transform-origin: center center;
}

.phone-box:hover {
    background: rgba(64,224,255,.04);
    border-color: rgba(64,224,255,.22);
    transform: none;
    box-shadow: 
        0 8px 32px rgba(0,0,0,.25),
        0 0 40px rgba(64,224,255,.18),
        inset 0 1px 0 rgba(255,255,255,.06);
}

/* Скрываем изображение и заменяем на текст */
.phone-box img {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

/* Добавляем текст "Показать телефон" через псевдоэлемент */
.phone-box::after {
    content: 'Показать телефон';
    position: relative;
    z-index: 2;
    display: inline-block;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 0.3px;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
    transition: all 0.3s ease;
    white-space: nowrap;
}

/* Изменяем текст кнопки на мобильных */
@media (max-width: 1200px) {
    .phone-box::after {
        content: 'Телефон';
    }

    .cart .phone-box {
        min-height: 44px;
        padding: 10px 16px;
    }
    .cart .phone-box::before { font-size: 18px; }
    .cart .phone-box::after { font-size: 16px; }
}

/* Переименовываем верхнюю кнопку телефона в "Позвонить девушке" */
.premium-h1-phone .phone-box::after {
    content: 'Позвонить девушке';
}

@media (max-width: 1200px) {
    .premium-h1-phone .phone-box::after {
        content: 'Позвонить девушке';
    }
}

.premium-h1-phone {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.premium-h1-phone .phone-box {
    min-height: 44px;
    padding: 12px 18px;
    border-radius: 14px;
    border-color: rgba(64,224,255,.18);
    box-shadow:
        0 10px 36px rgba(0,0,0,.28),
        0 0 46px rgba(64,224,255,.18),
        inset 0 1px 0 rgba(255,255,255,.06);
}

.premium-h1-phone .phone-box::before { font-size: 18px; }
.premium-h1-phone .phone-box::after { font-size: 16px; }

.phone-box:hover::after {
    text-shadow: 0 0 20px rgba(64,224,255,.6);
    transform: scale(1.02);
}

/* Стиль для активного состояния (после клика, когда показывается телефон) */
.phone-box .tel {
    position: relative;
    z-index: 2;
    display: inline-block;
    color: var(--hi-green);
    font-weight: 700;
    font-size: 16px;
    text-shadow: 0 0 12px rgba(25,255,149,.6);
    transition: all 0.3s ease;
    padding: 4px 8px;
}

.phone-box .tel:hover {
    text-shadow: 0 0 16px rgba(25,255,149,.8);
    transform: scale(1.05);
}

/* Скрываем псевдоэлемент, когда показывается телефон */
.phone-box:has(.tel)::after {
    display: none;
}

/* Премиум модальное окно для показа телефона */
.phone-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(10px);
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.phone-modal-overlay.active {
    display: flex;
    opacity: 1;
}

.phone-modal {
    background: linear-gradient(135deg, 
        rgba(7, 11, 22, 0.95) 0%, 
        rgba(7, 11, 22, 0.90) 100%);
    border: 1px solid rgba(64,224,255,.3);
    backdrop-filter: blur(25px) saturate(180%);
    border-radius: 20px;
    padding: 2rem;
    max-width: 400px;
    width: 90%;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 25px 50px rgba(0,0,0,.6),
        0 0 40px rgba(64,224,255,.3);
    transform: scale(0.9);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.phone-modal-overlay.active .phone-modal {
    transform: scale(1);
}

.phone-modal-content {
    text-align: center;
}

.phone-modal-question {
    font-size: 1.25rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 1.5rem;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
}

.phone-modal-number {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--hi-green);
    margin-bottom: 2rem;
    text-shadow: 0 0 15px rgba(25,255,149,.8);
    letter-spacing: 1px;
    min-height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.phone-modal-actions {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.phone-modal-call-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 2rem;
    background: linear-gradient(135deg, var(--hi-green) 0%, rgba(25,255,149,.8) 100%);
    border: 1px solid rgba(25,255,149,.4);
    border-radius: 12px;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 
        0 4px 15px rgba(25,255,149,.3),
        0 0 20px rgba(25,255,149,.2);
}

.phone-modal-call-btn:hover {
    background: linear-gradient(135deg, rgba(25,255,149,.9) 0%, var(--hi-green) 100%);
    transform: translateY(-2px) scale(1.05);
    box-shadow: 
        0 6px 20px rgba(25,255,149,.4),
        0 0 30px rgba(25,255,149,.3);
    color: #fff;
    text-decoration: none;
}

.phone-modal-close-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 2rem;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 12px;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.phone-modal-close-btn:hover {
    background: rgba(255,255,255,.15);
    border-color: rgba(255,255,255,.3);
    transform: translateY(-2px);
}

.cart .infTop div h4 {
    font-size: 18px;
    text-decoration: none;
    margin-bottom: 8px;
    color: #fff;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
    letter-spacing: 0.3px;
}

.cart .infTop div a {
    font-size: 16px;
    font-weight: 700;
    color: var(--hi-cyan);
    text-decoration: none;
    position: relative;
    z-index: 2;
    transition: all 0.3s ease;
    text-shadow: 0 0 8px rgba(64,224,255,.4);
    letter-spacing: 0.2px;
}

.cart .infTop div a:hover {
    color: #fff;
    text-shadow: 0 0 15px rgba(64,224,255,.7);
    transform: translateX(2px);
}

.cart .infTop div .name {
    text-align: left;
    position: relative;
    z-index: 2;
    flex: 1;
    min-width: 0;
}

.cart .infTop div .name a {
    font-size: 18px;
    text-decoration: none;
    color: transparent !important;
    font-weight: 700;
    transition: all 0.3s ease;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    letter-spacing: 0.3px;
    position: relative;
}

.cart .infTop div .name a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--hi-cyan), var(--hi-mag));
    transition: width 0.3s ease;
    border-radius: 2px;
}

.cart .infTop div .name a:hover {
    text-decoration: none;
    text-shadow: 0 0 20px rgba(64,224,255,.6);
    transform: translateX(2px);
}

.cart .infTop div .name a:hover::after {
    width: 100%;
}

.cart .infTop div img {
    display: block;
    margin-right: 5px;
    float: left;
    margin-top: -2px;
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
    transition: all 0.3s ease;
}

.cart .infTop div:hover img {
    filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(64,224,255,1));
    transform: scale(1.1);
}

.cart .infMedium {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    align-items: center;
}

.cart .infMedium.row {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    align-items: center;
    margin-left: 0;
    margin-right: 0;
}

.cart .infMedium .left-block {
    margin: 0 auto;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 210px !important;
    height: 280px !important;
    min-width: 210px !important;
    min-height: 280px !important;
    max-width: 210px !important;
    max-height: 280px !important;
}

.cart .infMedium div {
    position: relative;
    z-index: 2;
}

/* КРИТИЧНО: Вложенные ссылки внутри .full-card-link не должны блокировать клики */
.cart .full-card-link .infMedium div a {
    pointer-events: none !important;
}

/* Вложенные ссылки в .name внутри .full-card-link не должны блокировать клики по карточке */
.cart .full-card-link .infTop .col .name a,
.cart .full-card-link .infTop .name a,
.cart .full-card-link .infTop a {
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Кнопка phone-box должна быть кликабельной поверх full-card-link */
.cart .full-card-link .phone-box {
    pointer-events: auto !important;
    z-index: 100 !important;
    position: relative !important;
}

/* Если ссылка НЕ внутри .full-card-link, то она должна работать */
.cart .infMedium div a {
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: block;
    position: relative;
    overflow: visible;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.3s ease;
    border-radius: 10px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
}

/* Добавляем верхнюю линию подсветки, как в luxury-data-panel */
.cart .infMedium div a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    opacity: 1;
    z-index: 1;
    border-radius: 10px 10px 0 0;
}

.cart .infMedium div a:hover {
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.12);
    background: rgba(255,255,255,.03);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.15),
        0 0 50px rgba(64,224,255,.2),
        inset 0 1px 0 rgba(255,255,255,.08);
    border-radius: 10px;
}

.cart .infMedium div a:hover::before {
    height: 2px;
    opacity: 1;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.5) 20%,
        rgba(64,224,255,.7) 50%, 
        rgba(64,224,255,.5) 80%,
        transparent 100%);
}

.cart .infMedium div a:hover img {
    /* Оставляем те же стили, что и в обычном состоянии (уже применены) */
    transform: scale(1.05);
    filter: brightness(1.1) drop-shadow(0 0 10px rgba(64,224,255,.3));
    /* Убрали анимацию gentleSway (эффект дыхания) для обычных фото */
    animation: none !important;
}

/* Стили для анимированных фото (видео) - скрываем все controls */
/* Видео должно автоматически воспроизводиться без значков проигрывателя */

/* Базовые стили для анимированных видео */
.cart .infMedium div a .animated-photo,
.animated-photo,
video.animated-photo {
    /* Предотвращаем показ controls при hover и тапе */
    -webkit-tap-highlight-color: transparent !important;
    /* Отключаем контекстное меню */
    -webkit-user-select: none !important;
    user-select: none !important;
    /* Убираем дефолтную иконку play */
    object-fit: cover !important;
    display: block !important;
    background: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    border: none !important;
    /* КРИТИЧНО: Разрешаем клики проходить через видео к родительской ссылке */
    pointer-events: none !important;
}

/* Скрытие логотипа Grok в правом нижнем углу видео */
.animated-video-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Наложение элемента поверх правого нижнего угла для скрытия логотипа Grok */
.grok-logo-overlay {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 15%;
    height: 15%;
    background: inherit;
    pointer-events: none;
    z-index: 1;
    /* Используем градиент для плавного перехода, чтобы не было резкого края */
    background: linear-gradient(135deg, transparent 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.5) 100%);
}

/* Для карточек профилей - наложение поверх */
.cart .animated-video-wrapper .grok-logo-overlay,
.cart .infMedium .animated-video-wrapper .grok-logo-overlay {
    background: linear-gradient(135deg, transparent 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.5) 100%);
}

/* Для аватарок на странице анкеты */
.avatar-photo-container .animated-video-wrapper .grok-logo-overlay {
    background: linear-gradient(135deg, transparent 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.5) 100%);
}

/* Мобильная версия - убеждаемся, что наложение работает и на мобильных */
@media (max-width: 1200px) {
    /* Убеждаемся, что animated-video-wrapper имеет правильные стили, как в десктопной версии */
    .animated-video-wrapper {
        position: relative !important;
        display: inline-block !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
    }
    
    /* Специально для avatar-photo-container на странице анкеты */
    .avatar-photo-container .animated-video-wrapper {
        position: relative !important;
        display: inline-block !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
    }
    
    /* Убеждаемся, что видео имеет правильный z-index (ниже overlay) */
    .avatar-photo-container video.animated-photo {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        z-index: 1 !important;
    }
    
    .grok-logo-overlay {
        width: 15% !important;
        height: 15% !important;
        z-index: 100 !important;
        position: absolute !important;
        bottom: 0 !important;
        right: 0 !important;
        pointer-events: none !important;
        background: linear-gradient(135deg, transparent 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.5) 100%) !important;
    }
    
    .cart .animated-video-wrapper .grok-logo-overlay,
    .cart .infMedium .animated-video-wrapper .grok-logo-overlay,
    .avatar-photo-container .animated-video-wrapper .grok-logo-overlay {
        width: 15% !important;
        height: 15% !important;
        z-index: 100 !important;
        position: absolute !important;
        bottom: 0 !important;
        right: 0 !important;
        pointer-events: none !important;
        background: linear-gradient(135deg, transparent 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.5) 100%) !important;
    }
}

/* Для очень маленьких экранов - немного увеличиваем область наложения */
@media (max-width: 768px) {
    /* Убеждаемся, что animated-video-wrapper имеет правильные стили */
    .animated-video-wrapper {
        position: relative !important;
        display: inline-block !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
    }
    
    /* Специально для avatar-photo-container на странице анкеты */
    .avatar-photo-container .animated-video-wrapper {
        position: relative !important;
        display: inline-block !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
    }
    
    /* Убеждаемся, что видео имеет правильный z-index (ниже overlay) */
    .avatar-photo-container video.animated-photo {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        z-index: 1 !important;
    }
    
    .grok-logo-overlay {
        width: 18% !important;
        height: 18% !important;
        z-index: 100 !important;
    }
    
    .cart .animated-video-wrapper .grok-logo-overlay,
    .cart .infMedium .animated-video-wrapper .grok-logo-overlay,
    .avatar-photo-container .animated-video-wrapper .grok-logo-overlay {
        width: 18% !important;
        height: 18% !important;
        z-index: 100 !important;
    }
}

/* Убеждаемся, что видео не блокирует клики по карточке */
.cart .left-block video.animated-photo,
.cart .infMedium .left-block video.animated-photo,
.cart .left-block .animated-photo,
.cart .infMedium .left-block .animated-photo {
    pointer-events: none !important;
}

/* КРИТИЧНО: Убеждаемся, что ссылка .full-card-link получает все клики */
.cart .full-card-link {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative;
    z-index: 10 !important;
    display: block !important;
}

/* Подсветка при наведении на карточку */
.cart:hover .full-card-link {
    cursor: pointer !important;
}

/* Все элементы внутри .full-card-link должны пропускать клики к родительской ссылке */
.cart .full-card-link > * {
    pointer-events: none !important;
}

/* Исключение: animated-video-wrapper должен показывать подсказку при наведении */
.cart .full-card-link .animated-video-wrapper,
.cart .full-card-link .left-block .animated-video-wrapper,
.cart .full-card-link .infMedium .left-block .animated-video-wrapper {
    pointer-events: auto !important;
}

.cart .full-card-link .infTop,
.cart .full-card-link .infTop *,
.cart .full-card-link .infMedium,
.cart .full-card-link .infMedium *,
.cart .full-card-link .left-block,
.cart .full-card-link .left-block *,
.cart .full-card-link .infMedium div,
.cart .full-card-link .infMedium div *,
.cart .full-card-link .infMedium .col,
.cart .full-card-link .infMedium .col * {
    pointer-events: none !important;
}

/* КРИТИЧНО: Убеждаемся, что видео точно не блокирует клики */
.cart .full-card-link video.animated-photo,
.cart .full-card-link .animated-photo,
.cart .full-card-link .left-block video.animated-photo,
.cart .full-card-link .infMedium .left-block video.animated-photo,
.cart .full-card-link .left-block .animated-photo,
.cart .full-card-link .infMedium .left-block .animated-photo {
    pointer-events: none !important;
}

/* Но разрешаем клики для интерактивных элементов внутри карточки */
.cart .full-card-link .phone-box,
.cart .full-card-link .phone-box *,
.cart .full-card-link .phone-box img {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative;
    z-index: 20 !important;
}

/* КРИТИЧНО для мобильных: используем те же правила, что и на десктопе */
/* Никаких дополнительных правил - pointer-events работает одинаково */

/* Скрываем ВСЕ элементы управления видео для анимированных фото - WebKit/Chrome */
/* АГРЕССИВНОЕ скрытие контролов для ВСЕХ видео */
video.animated-photo::-webkit-media-controls,
.cart .infMedium div a .animated-photo::-webkit-media-controls,
.animated-photo::-webkit-media-controls,
video.animated-photo::-webkit-media-controls-enclosure,
.cart .infMedium div a .animated-photo::-webkit-media-controls-enclosure,
.animated-photo::-webkit-media-controls-enclosure,
video.animated-photo::-webkit-media-controls-panel,
.cart .infMedium div a .animated-photo::-webkit-media-controls-panel,
.animated-photo::-webkit-media-controls-panel,
video.animated-photo::-webkit-media-controls-play-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-play-button,
.animated-photo::-webkit-media-controls-play-button,
video.animated-photo::-webkit-media-controls-start-playback-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-start-playback-button,
.animated-photo::-webkit-media-controls-start-playback-button,
video.animated-photo::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-overlay-play-button,
.animated-photo::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-current-time-display,
.animated-photo::-webkit-media-controls-current-time-display,
.cart .infMedium div a .animated-photo::-webkit-media-controls-time-remaining-display,
.animated-photo::-webkit-media-controls-time-remaining-display,
.cart .infMedium div a .animated-photo::-webkit-media-controls-timeline,
.animated-photo::-webkit-media-controls-timeline,
.cart .infMedium div a .animated-photo::-webkit-media-controls-volume-slider,
.animated-photo::-webkit-media-controls-volume-slider,
.cart .infMedium div a .animated-photo::-webkit-media-controls-mute-button,
.animated-photo::-webkit-media-controls-mute-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-fullscreen-button,
.animated-photo::-webkit-media-controls-fullscreen-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-overlay-play-button,
.animated-photo::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-overlay-enclosure,
.animated-photo::-webkit-media-controls-overlay-enclosure,
/* Дополнительные элементы управления, которые могут появляться */
.cart .infMedium div a .animated-photo::-webkit-media-controls-rewind-button,
.animated-photo::-webkit-media-controls-rewind-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-return-to-realtime-button,
.animated-photo::-webkit-media-controls-return-to-realtime-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-toggle-closed-captions-button,
.animated-photo::-webkit-media-controls-toggle-closed-captions-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-seek-back-button,
.animated-photo::-webkit-media-controls-seek-back-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-seek-forward-button,
.animated-photo::-webkit-media-controls-seek-forward-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-enter-fullscreen-button,
.animated-photo::-webkit-media-controls-enter-fullscreen-button,
.cart .infMedium div a .animated-photo::-webkit-media-controls-exit-fullscreen-button,
.animated-photo::-webkit-media-controls-exit-fullscreen-button {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    z-index: -1 !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
}

/* Для Firefox */
.cart .infMedium div a .animated-photo::-moz-media-controls,
.animated-photo::-moz-media-controls {
    display: none !important;
}

/* Для Edge/IE */
.cart .infMedium div a .animated-photo::-ms-media-controls,
.animated-photo::-ms-media-controls {
    display: none !important;
}

/* Дополнительная защита - скрываем любые overlay элементы и псевдоэлементы */
.cart .infMedium div a .animated-photo::before,
.animated-photo::before,
.cart .infMedium div a .animated-photo::after,
.animated-photo::after {
    display: none !important;
    content: none !important;
}

/* Скрываем дочерние элементы внутри video, КРОМЕ source и img (fallback) */
.cart .infMedium div a .animated-photo > *:not(source):not(img),
.animated-photo > *:not(source):not(img) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* МАКСИМАЛЬНО АГРЕССИВНОЕ скрытие для мобильных устройств */
@media (max-width: 1200px) {
    /* Скрываем ВСЕ возможные проявления controls и play button */
    video.animated-photo[controls],
    video.animated-photo[controls="true"],
    .cart .infMedium div a video.animated-photo[controls],
    .cart .infMedium div a video.animated-photo[controls="true"],
    video.animated-photo[paused],
    .cart .infMedium div a video.animated-photo[paused] {
        display: block !important;
    }
    
    video.animated-photo[controls] *,
    video.animated-photo[controls="true"] *,
    .cart .infMedium div a video.animated-photo[controls] *,
    .cart .infMedium div a video.animated-photo[controls="true"] * {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        pointer-events: none !important;
        z-index: -9999 !important;
    }
    
    /* Скрываем loading panel */
    video.animated-photo::-webkit-media-controls-loading-panel,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-loading-panel {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Скрываем любые overlay элементы поверх видео */
    video.animated-photo::before,
    video.animated-photo::after,
    .cart .infMedium div a video.animated-photo::before,
    .cart .infMedium div a video.animated-photo::after {
        display: none !important;
        content: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    
    /* Скрываем все дочерние элементы внутри video, кроме source и img */
    video.animated-photo > *:not(source):not(img):not(video),
    .cart .infMedium div a video.animated-photo > *:not(source):not(img):not(video) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Принудительно скрываем appearance */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo {
        -webkit-appearance: none !important;
        appearance: none !important;
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* Скрываем любые кнопки или элементы управления, которые могут быть добавлены динамически */
.cart .infMedium div a .animated-photo button,
.animated-photo button,
.cart .infMedium div a .animated-photo .play-button,
.animated-photo .play-button,
.cart .infMedium div a .animated-photo .video-controls,
.animated-photo .video-controls,
.cart .infMedium div a .animated-photo .media-controls,
.animated-photo .media-controls {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
}

/* Универсальное правило - скрываем ВСЕ элементы с position: absolute внутри контейнера видео */
.cart .infMedium div a[href*="/"]:has(.animated-photo)::after,
.cart .infMedium div a:has(.animated-photo) > *:not(.animated-photo),
.cart .infMedium div a:has(.animated-photo)::before {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Скрываем все возможные overlay элементы, которые могут быть добавлены браузером */
.cart .infMedium div a .animated-photo + *,
.animated-photo + * {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* АГРЕССИВНОЕ СКРЫТИЕ - скрываем ВСЕ элементы внутри контейнера left-block, которые могут быть кнопками */
/* НО НЕ скрываем само видео (.animated-photo) и truePhoto */
.cart .infMedium .left-block a:has(.animated-photo)::after,
.cart .infMedium .left-block a:has(.animated-photo)::before,
.cart .infMedium .left-block:has(.animated-photo)::after,
.cart .infMedium .left-block:has(.animated-photo)::before {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    content: none !important;
}

/* Скрываем все элементы с position: absolute внутри left-block, где есть animated-photo */
/* НО НЕ скрываем само видео и truePhoto */
.cart .infMedium .left-block:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block:has(.animated-photo) [style*="position:absolute"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block a:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block a:has(.animated-photo) [style*="position:absolute"]:not(.animated-photo):not(.truePhoto) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Скрываем все круглые кнопки (возможно, это кастомные controls) */
/* НО НЕ скрываем само видео и truePhoto */
.cart .infMedium .left-block:has(.animated-photo) button:not(.animated-photo),
.cart .infMedium .left-block a:has(.animated-photo) button:not(.animated-photo),
.cart .infMedium .left-block:has(.animated-photo) [class*="button"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block:has(.animated-photo) [class*="control"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block:has(.animated-photo) [class*="play"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block:has(.animated-photo) [class*="icon"]:not(.animated-photo):not(.truePhoto) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Убрали wrapper - возвращаемся к простому решению без обёртки */

.cart .infMedium div a .animated-photo,
.cart .infMedium div a video.animated-photo {
    width: 100% !important;
    height: 100% !important;
    max-width: 210px !important; /* Ширина контейнера для вертикального формата 3:4 */
    max-height: 280px !important; /* Высота контейнера для вертикального формата 3:4 (210px × 280px) */
    min-height: 280px !important; /* Минимальная высота для вертикального формата */
    object-fit: contain !important; /* Сохраняем пропорции, вписываем в контейнер */
    object-position: center !important; /* Центрируем видео */
    background: transparent !important;
    border-radius: 8px !important;
    transition: transform 0.3s ease, filter 0.3s ease !important;
    /* ВАЖНО: Видео должно быть видимым */
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Мобильная версия - применяем те же стили, что и в десктопной версии */
@media (max-width: 1200px) {
    /* Контейнер для фото в карточке - для раздела "Девушки поблизости" */
    .cart .infMedium .left-block {
        width: 185px !important;
        height: 285px !important;
        min-width: 185px !important;
        min-height: 285px !important;
        max-width: 185px !important;
        max-height: 285px !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        position: relative !important;
        box-sizing: border-box !important;
        display: block !important;
        border: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 auto !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    /* Контейнер для фото в карточке - для главной страницы */
    .cart .left-block {
        width: 185px !important;
        height: 285px !important;
        min-width: 185px !important;
        min-height: 285px !important;
        max-width: 185px !important;
        max-height: 285px !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        position: relative !important;
        box-sizing: border-box !important;
        display: block !important;
        border: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
    }
    
    /* Ссылка внутри left-block - для раздела "Девушки поблизости" */
    .cart .infMedium .left-block a {
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        display: block !important;
        position: relative !important;
        box-sizing: border-box !important;
        background: rgba(255,255,255,.02) !important;
        border: 1px solid rgba(255,255,255,.08) !important;
        backdrop-filter: blur(20px) saturate(180%) !important;
        box-shadow: 
            0 8px 32px rgba(0,0,0,.12),
            inset 0 1px 0 rgba(255,255,255,.05) !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Ссылка внутри left-block - для главной страницы */
    .cart .left-block a {
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        display: block !important;
        position: relative !important;
        box-sizing: border-box !important;
        background: transparent !important;
        border: none !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Изображение в ссылке - для главной страницы, как в разделе "Девушки поблизости" */
    .cart .left-block a img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
    
    /* Изображения и видео в карточках - как в десктопе */
    .cart .infMedium div a .animated-photo,
    .cart .infMedium div a video.animated-photo,
    .cart .infMedium .left-block a .animated-photo,
    .cart .infMedium .left-block a video {
        display: block;
        margin: 0;
        padding: 0;
        border: 0;
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        box-sizing: border-box;
        border-radius: 10px !important;
    }
    
    /* Унифицированные стили для фото в карточках - одинаковые для главной и "Девушки поблизости" */
    .cart .infMedium div a img,
    .cart .infMedium .left-block a img,
    .cart .infMedium .left-block img,
    .cart .left-block img {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        box-sizing: border-box !important;
        border-radius: 10px !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
    }
    
    /* Убираем анимацию при наведении на фото в мобильной версии - для раздела "Девушки поблизости" */
    .cart .infMedium .left-block a:hover {
        transform: none !important;
        border-color: rgba(255,255,255,.08) !important;
        background: rgba(255,255,255,.02) !important;
        box-shadow: 
            0 8px 32px rgba(0,0,0,.12),
            0 0 40px rgba(64,224,255,.15),
            inset 0 1px 0 rgba(255,255,255,.05) !important;
    }
    
    .cart .infMedium .left-block a:hover::before {
        height: 2px !important;
        opacity: 1 !important;
    }
    
    .cart .infMedium .left-block a:hover img {
        transform: none !important;
        filter: none !important;
        animation: none !important;
    }
    
    /* Убираем анимацию при наведении на фото в мобильной версии - для главной страницы */
    .cart .left-block a:hover {
        transform: none !important;
        border: none !important;
        background: transparent !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
    }
    
    .cart .left-block a:hover::before {
        display: none !important;
    }
    
    .cart .left-block a:hover img {
        transform: none !important;
        filter: none !important;
        animation: none !important;
    }
    
    /* Аватарка на странице анкеты - применяем те же стили, что и в десктопе */
    .avatar-photo-container {
        overflow: hidden !important;
        position: relative !important;
    }
    
    /* Убеждаемся, что animated-video-wrapper внутри avatar-photo-container работает правильно */
    .avatar-photo-container .animated-video-wrapper {
        position: relative !important;
        overflow: hidden !important;
        z-index: 1 !important;
    }
    
    /* Убеждаемся, что overlay поверх видео */
    .avatar-photo-container .animated-video-wrapper .grok-logo-overlay {
        z-index: 1000 !important;
        position: absolute !important;
    }
    
    .avatar-photo-container img {
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
        height: 100% !important;
    }
    
    main .main-content .right-content .cart .left-block {
        width: 180px !important;
        height: 280px !important;
        overflow: hidden !important; /* Обрезаем фото по закругленным краям */
        border-radius: 10px !important; /* Закругленные края рамки */
    }
    
    main .main-content .right-content .cart .left-block a {
        width: 180px !important;
        height: 280px !important;
        overflow: hidden !important; /* Обрезаем фото по закругленным краям */
        border-radius: 10px !important; /* Закругленные края рамки */
    }
    
    main .main-content .right-content .cart .left-block a img,
    main .main-content .right-content .cart .left-block a video,
    main .main-content .right-content .cart .left-block a .animated-photo {
        display: block;
        margin: 0;
        padding: 0;
        border: 0;
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        box-sizing: border-box;
        border-radius: 10px !important;
    }
}

/* СПЕЦИФИЧНЫЕ ПРАВИЛА ДЛЯ OPERA - скрываем все возможные элементы управления */
/* Opera использует Blink движок, но имеет свои особенности */
_:-o-prefocus, .cart .infMedium .left-block:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto),
_:-o-prefocus, .cart .infMedium .left-block a:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Автозапуск видео на мобильных устройствах */
@media (max-width: 1200px) {
    /* Убеждаемся, что видео настроено для автозапуска */
    video.animated-photo,
    .animated-photo,
    .cart .infMedium div a .animated-photo,
    .cart .infMedium div a video.animated-photo {
        pointer-events: auto !important;
    }
    
    /* Принудительно включаем автозапуск через CSS (поддержка браузерами ограничена) */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo {
        -webkit-playsinline: 1 !important;
        playsinline: 1 !important;
    }
    
    /* АГРЕССИВНОЕ скрытие ВСЕХ элементов управления видео на мобильных */
    video.animated-photo::-webkit-media-controls,
    video.animated-photo::-webkit-media-controls-enclosure,
    video.animated-photo::-webkit-media-controls-panel,
    video.animated-photo::-webkit-media-controls-overlay-play-button,
    video.animated-photo::-webkit-media-controls-play-button,
    video.animated-photo::-webkit-media-controls-start-playback-button,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-enclosure,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-panel,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-play-button,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-play-button,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-start-playback-button {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        position: absolute !important;
        left: -9999px !important;
        top: -9999px !important;
        z-index: -9999 !important;
        background: none !important;
        border: none !important;
        outline: none !important;
    }
    
    /* Скрываем все возможные overlay элементы и псевдоэлементы */
    video.animated-photo::before,
    video.animated-photo::after,
    .cart .infMedium div a video.animated-photo::before,
    .cart .infMedium div a video.animated-photo::after {
        display: none !important;
        content: none !important;
        background: none !important;
    }
    
    /* Скрываем любые дочерние элементы, которые могут быть кнопками плей */
    video.animated-photo > *:not(source):not(img),
    .cart .infMedium div a video.animated-photo > *:not(source):not(img) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
    
    /* Дополнительное скрытие для всех возможных вариантов значка плей */
    video.animated-photo[controls]::-webkit-media-controls,
    video.animated-photo[controls]::-webkit-media-controls-play-button,
    video.animated-photo[controls]::-webkit-media-controls-overlay-play-button,
    .cart .infMedium div a video.animated-photo[controls]::-webkit-media-controls,
    .cart .infMedium div a video.animated-photo[controls]::-webkit-media-controls-play-button,
    .cart .infMedium div a video.animated-photo[controls]::-webkit-media-controls-overlay-play-button {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Скрываем значок плей даже когда видео на паузе */
    video.animated-photo[paused]::-webkit-media-controls-play-button,
    video.animated-photo[paused]::-webkit-media-controls-overlay-play-button,
    .cart .infMedium div a video.animated-photo[paused]::-webkit-media-controls-play-button,
    .cart .infMedium div a video.animated-photo[paused]::-webkit-media-controls-overlay-play-button {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Дополнительное правило: скрываем ВСЕ элементы внутри контейнера видео */
    .cart .infMedium .left-block:has(video.animated-photo) *:not(video):not(.truePhoto):not(source):not(img),
    .cart .infMedium div a:has(video.animated-photo) *:not(video):not(.truePhoto):not(source):not(img) {
        pointer-events: none !important;
    }
    
    /* Убеждаемся, что само видео выглядит как статичное изображение */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo {
        object-fit: cover !important;
        object-position: center !important;
        /* Скрываем любые индикаторы состояния */
        -webkit-appearance: none !important;
        appearance: none !important;
    }
    
    /* Скрываем любые возможные индикаторы загрузки или состояния */
    video.animated-photo::-webkit-media-controls-loading-panel,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-loading-panel {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }
    
    /* Убеждаемся, что само видео выглядит как статичное изображение */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo {
        object-fit: cover !important;
        object-position: center !important;
        /* Скрываем любые индикаторы состояния */
        -webkit-appearance: none !important;
        appearance: none !important;
    }
    
    /* Скрываем любые возможные индикаторы загрузки или состояния */
    video.animated-photo::-webkit-media-controls-loading-panel,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-loading-panel {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }
}

/* Дополнительные правила для Opera через user agent */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    /* Opera detection через CSS (работает для Blink-based Opera) */
    .cart .infMedium .left-block:has(.animated-photo) video.animated-photo::-webkit-media-controls,
    .cart .infMedium .left-block:has(.animated-photo) video.animated-photo::-webkit-media-controls-enclosure,
    .cart .infMedium .left-block:has(.animated-photo) video.animated-photo::-webkit-media-controls-panel,
    .cart .infMedium .left-block:has(.animated-photo) video.animated-photo::-webkit-media-controls-overlay-play-button,
    .cart .infMedium .left-block:has(.animated-photo) video.animated-photo::-webkit-media-controls-overlay-enclosure {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        z-index: -1 !important;
    }
}

/* ДОПОЛНИТЕЛЬНЫЕ ПРАВИЛА ДЛЯ ДЕСКТОПНОЙ ВЕРСИИ - скрываем все возможные элементы управления */
/* Убеждаемся, что выпадающие списки всегда поверх фотографий в десктопной версии */
@media (min-width: 769px) {
    .information-block {
        z-index: 10003 !important; /* Принудительно высокий z-index для десктопной версии */
        position: absolute !important; /* Убеждаемся, что позиционирование абсолютное */
    }
    
    /* Убеждаемся, что карточки профилей имеют низкий z-index */
    .cart {
        z-index: 1 !important;
        position: relative !important;
    }
    
    /* Убеждаемся, что header и меню всегда выше карточек */
    header .top-line {
        z-index: 100 !important;
        position: relative;
    }
    
    header .top-line .logo,
    header .top-line .menu,
    header .top-line .menu li,
    header .top-line .menu li a {
        z-index: 101 !important;
        position: relative;
    }
    
    .burger-left,
    .burger-right,
    .burger-btn {
        z-index: 102 !important;
        position: relative;
    }
    
    .slide-menu-left,
    .slide-menu-right {
        z-index: 103 !important;
    }
    
    /* Убеждаемся, что основной контент не перекрывает выпадающие списки */
    main {
        position: relative;
        z-index: 1 !important;
    }
    
    main .main-content {
        position: relative;
        z-index: 1 !important;
    }
    
    /* Убеждаемся, что выпадающие списки всегда поверх всего */
    header .bottom-line .information-block,
    .bottom-line .information-block {
        z-index: 10003 !important;
    }
    
    /* Скрываем все элементы с position: absolute, которые могут быть overlay кнопками */
    .cart .infMedium .left-block:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) [style*="position: absolute"]:not(.animated-photo):not(.truePhoto),
    .cart .infMedium .left-block:has(.animated-photo) [style*="position:absolute"]:not(.animated-photo):not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) [style*="position:absolute"]:not(.animated-photo):not(.truePhoto) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Скрываем все элементы с z-index > 0 (кроме видео и truePhoto) */
    .cart .infMedium .left-block:has(.animated-photo) [style*="z-index"]:not(.animated-photo):not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) [style*="z-index"]:not(.animated-photo):not(.truePhoto) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
    
    /* Скрываем все элементы с круглой формой и position absolute (вероятно, это кнопки) */
    .cart .infMedium .left-block:has(.animated-photo) [style*="border-radius"][style*="position"]:not(.animated-photo):not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) [style*="border-radius"][style*="position"]:not(.animated-photo):not(.truePhoto) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
    
    /* Скрываем все div элементы с position absolute внутри контейнера видео */
    .cart .infMedium .left-block:has(.animated-photo) div[style*="position: absolute"]:not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) div[style*="position: absolute"]:not(.truePhoto),
    .cart .infMedium .left-block:has(.animated-photo) div[style*="position:absolute"]:not(.truePhoto),
    .cart .infMedium .left-block a:has(.animated-photo) div[style*="position:absolute"]:not(.truePhoto) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
    
    /* Скрываем все span элементы с position absolute */
    .cart .infMedium .left-block:has(.animated-photo) span[style*="position: absolute"],
    .cart .infMedium .left-block a:has(.animated-photo) span[style*="position: absolute"],
    .cart .infMedium .left-block:has(.animated-photo) span[style*="position:absolute"],
    .cart .infMedium .left-block a:has(.animated-photo) span[style*="position:absolute"] {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Скрываем все элементы с круглой формой (возможно, это кнопки) */
/* НО НЕ скрываем само видео */
.cart .infMedium .left-block:has(.animated-photo) [style*="border-radius: 50%"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block:has(.animated-photo) [style*="border-radius:50%"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block a:has(.animated-photo) [style*="border-radius: 50%"]:not(.animated-photo):not(.truePhoto),
.cart .infMedium .left-block a:has(.animated-photo) [style*="border-radius:50%"]:not(.animated-photo):not(.truePhoto) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Скрываем все SVG элементы внутри кнопок (возможно, это иконки) */
/* НО НЕ скрываем SVG, которые могут быть частью видео */
.cart .infMedium .left-block:has(.animated-photo) button svg,
.cart .infMedium .left-block a:has(.animated-photo) button svg,
.cart .infMedium .left-block:has(.animated-photo) [class*="button"] svg,
.cart .infMedium .left-block:has(.animated-photo) [class*="control"] svg {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.cart .infMedium div a .animated-photo {
    /* Применяем стили hover к обычному состоянию для видео */
    transform: scale(1.05);
    filter: brightness(1.05);
    /* Убрали анимацию для видео */
    animation: none;
}

.cart .infMedium div a:hover .animated-photo {
    /* Оставляем те же стили, что и в обычном состоянии (уже применены) */
    transform: scale(1.05);
    filter: brightness(1.05);
    /* Убрали анимацию для видео */
    animation: none;
}

.cart .infMedium div a img {
    width: 100%;
    height: 100%;
    max-width: 210px; /* Ширина контейнера для вертикального формата 3:4 */
    max-height: 280px; /* Высота контейнера для вертикального формата 3:4 (210px × 280px) */
    min-height: 280px; /* Минимальная высота для вертикального формата */
    position: relative;
    object-fit: contain; /* Сохраняем пропорции, вписываем в контейнер */
    object-position: center; /* Центрируем изображение */
    background: transparent;
    z-index: 3;
    pointer-events: auto;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
                opacity 0.3s ease,
                filter 0.3s ease;
    /* Убрали анимацию breathe (эффект дыхания) для обычных фото */
    animation: none !important;
    will-change: auto;
    transform-origin: center center;
    /* Применяем стили hover к обычному состоянию */
    transform: scale(1.05);
    filter: brightness(1.1) drop-shadow(0 0 10px rgba(64,224,255,.3));
}

@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Анимация "дыхания" для фотографий */
@keyframes breathe {
    0%, 100% {
        transform: scale(1) translateY(0);
    }
    50% {
        transform: scale(1.02) translateY(-3px);
    }
}

/* Анимация легкого покачивания */
@keyframes gentleSway {
    0%, 100% {
        transform: translateX(0) translateY(0) rotate(0deg);
    }
    25% {
        transform: translateX(2px) translateY(-2px) rotate(0.5deg);
    }
    50% {
        transform: translateX(0) translateY(-3px) rotate(0deg);
    }
    75% {
        transform: translateX(-2px) translateY(-2px) rotate(-0.5deg);
    }
}

.cart .infMedium div a .blur-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

.cart .infMedium div a:hover::after {
    background: rgba(0, 0, 0, 0.3);
    transition: background 0.3s ease;
}

.cart .infMedium div a::after {
    display: none; /* Убираем нижнюю линию, как в luxury-data-panel */
}

.cart .infMedium .left-block .truePhoto {
    font-size: 12px;
    text-align: left;
    background: linear-gradient(135deg, rgba(64,224,255,.3) 0%, rgba(196,60,255,.3) 100%);
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    padding: 6px 12px;
    color: #fff !important;
    font-weight: 700;
    z-index: 1000 !important; /* Максимальный z-index, чтобы статус был поверх всего */
    border-radius: 0 8px 0 0;
    border: 1px solid rgba(64,224,255,.5);
    border-bottom: none;
    backdrop-filter: blur(10px) saturate(180%);
    box-shadow: 
        0 -2px 10px rgba(64,224,255,.4),
        0 0 15px rgba(64,224,255,.3),
        0 0 20px rgba(196,60,255,.2);
    text-shadow: 0 0 10px rgba(64,224,255,.6);
    letter-spacing: 0.3px;
    pointer-events: none; /* Чтобы не мешал кликам по фото */
    display: block !important; /* Убеждаемся, что статус отображается */
    visibility: visible !important;
    opacity: 1 !important;
}

/* Убеждаемся, что видео не перекрывает статус */
.cart .infMedium .left-block video.animated-photo,
.cart .infMedium .left-block .animated-photo {
    z-index: 1 !important;
    position: relative;
}

.cart .infMedium div .truePhoto:hover div a::after {
    background: rgba(0, 0, 0, 0.5);
}

.cart .infMedium div:last-child {
    padding-left: 0;
    text-align: left;
    position: relative;
    z-index: 2;
    margin-left: 0;
}

.cart .infMedium div:last-child .col {
    margin-left: 0;
    padding-left: 0;
}

.cart .infMedium div:last-child .phone-box {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 12px auto;
    width: 210px;
    box-sizing: border-box;
}

@media (max-width: 1200px) {
    .cart .infMedium div:last-child .phone-box {
        width: 185px;
    }
}

@media (max-width: 768px) {
    .cart .infMedium div:last-child .phone-box {
        width: 160px;
        padding: 6px 10px;
    }
    
    .cart .infMedium div:last-child .phone-box::after {
        font-size: 13px;
    }
    
    /* Перемещаем значок "Фото проверено" в правый нижний угол на главной странице */
    .cart .infMedium .left-block .truePhoto {
        left: auto !important;
        right: 0 !important;
        bottom: 0 !important;
        border-radius: 8px 0 0 0 !important;
    }
}

.cart .infMedium div h5 {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 12px;
    line-height: 1.2;
    color: #fff;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    position: relative;
    padding-bottom: 6px;
}

.cart .infMedium div h5::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background: linear-gradient(90deg, var(--hi-cyan), var(--hi-mag));
    border-radius: 2px;
}

.cart .infMedium div h5 span {
    text-transform: none;
}

.cart .infMedium div p {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 12px;
    line-height: 1.2;
    color: #fff;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    position: relative;
    padding-bottom: 6px;
    text-align: center;
    width: 100%;
}

.cart .infMedium div p::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--hi-cyan), var(--hi-mag));
    border-radius: 2px;
    box-shadow: 0 0 8px rgba(64,224,255,.5);
}

.cart .infMedium div p span {
    text-transform: none;
}

.cart .infMedium div table {
    font-size: 12px;
    width: 100%;
    border-collapse: separate;
    border-spacing: 4px;
    border-radius: 8px;
    overflow: visible;
    background: transparent;
    border: none;
    margin: 0;
}

.cart .infMedium div table tr {
    background: transparent;
    transition: all 0.3s ease;
}

.cart .infMedium div table tr:hover {
    background: transparent;
    transform: none;
}

.cart .infMedium div table tr:nth-of-type(odd) {
    background: transparent;
}

.cart .infMedium div table tr:nth-of-type(odd):hover {
    background: transparent;
}

.cart .infMedium div table tr td {
    padding: 6px 8px;
    width: 50%;
    vertical-align: middle;
    height: auto;
    min-height: 28px;
    color: rgba(255,255,255,.9);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 6px;
    background: rgba(0,0,0,.15);
    backdrop-filter: blur(10px) saturate(180%);
    transition: all 0.3s ease;
    text-align: center;
    position: relative;
    box-shadow: 
        0 2px 8px rgba(0,0,0,.2),
        inset 0 1px 0 rgba(255,255,255,.03);
}

.cart .infMedium div table tr td:hover {
    background: rgba(0,0,0,.25);
    border-color: rgba(64,224,255,.25);
    transform: translateY(-1px);
    box-shadow: 
        0 4px 12px rgba(0,0,0,.25),
        0 0 20px rgba(64,224,255,.2),
        inset 0 1px 0 rgba(255,255,255,.05);
}

.cart .infMedium div table tr:last-child td {
    border-bottom: none;
}

.cart .infMedium div table tr td:first-child {
    color: rgba(255,255,255,.45);
    font-weight: 300;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
    background: rgba(0,0,0,.2);
    border-color: rgba(255,255,255,.04);
}

.cart .infMedium div table tr td:first-child:hover {
    background: rgba(0,0,0,.3);
    border-color: rgba(196,60,255,.25);
    box-shadow: 
        0 4px 12px rgba(0,0,0,.25),
        0 0 20px rgba(196,60,255,.2),
        inset 0 1px 0 rgba(255,255,255,.05);
}

.cart .infMedium div table tr td:last-child {
    font-weight: 300;
    color: rgba(64,224,255,.7) !important;
    letter-spacing: 0.5px;
}

/* Подстраховка: если разметка/Bootstrap влияет, красим 2-ю колонку явно */
.cart .infMedium div table tr td:nth-child(2) {
    color: rgba(64,224,255,.7) !important;
}

.cart .infMedium div .moreText {
    font-size: 13px;
    color: rgba(64,224,255,.7) !important;
    font-weight: 600;
    text-shadow: 0 0 6px rgba(64,224,255,.3);
    display: inline-block;
}

.cart .infMedium div .price {
    color: var(--hi-green);
    font-weight: 700;
    font-size: 15px;
    text-shadow: 0 0 12px rgba(25,255,149,.5);
    background: linear-gradient(135deg, var(--hi-green) 0%, #40e0ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.cart .infMedium div .line {
    width: 100%;
    display: block;
    height: 1px;
    margin: 12px 0;
    background: linear-gradient(90deg, transparent, rgba(64,224,255,.4), transparent);
    border: none;
    border-radius: 1px;
}

.cart .infBottom {
    width: 100%;
    text-align: right;
    margin-top: 8px;
}

.cart .infBottom a {
    font-size: 13px;
    color: var(--hi-cyan);
    text-decoration: none;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 8px;
    background: rgba(64,224,255,.1);
    border: 1px solid rgba(64,224,255,.2);
    display: inline-block;
    transition: all 0.3s ease;
    text-shadow: 0 0 8px rgba(64,224,255,.4);
    letter-spacing: 0.3px;
}

.cart .infBottom a:hover {
    text-decoration: none;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.4);
    transform: translateY(-2px);
    text-shadow: 0 0 12px rgba(64,224,255,.6);
    box-shadow: 0 4px 12px rgba(64,224,255,.25);
}

ymaps .cart .infMedium div a::after {
    bottom: 2px;
}



.checkBox {
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    padding-left: 0;
    text-decoration: none;
    margin-right: 0;
    padding-top: 0;
}

.changeChose .checkBox {
    margin-right: 0;
}

.checkBox input {
    position: absolute;
    opacity: 0;
}

.checkBox .checkmark {
    position: absolute;
    top: -4px;
    left: 0;
    height: 25px;
    width: 25px;
    background: rgba(64,224,255,.1);
    border: 1px solid rgba(64,224,255,.3);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.checkBox .checkmark::after {
    content: "";
    position: absolute;
    display: none;
    left: 6px;
    top: 5px;
    width: 14px;
    height: 13px;
    background-image: url("../image/checked.png");
    background-size: cover;
}

.checkBox:hover {
    text-decoration: none;
}

.checkBox:hover .checkmark {
    background: rgba(64,224,255,.2);
    border-color: rgba(64,224,255,.5);
}

.checkBox:hover input ~ .checkmark {
    background: rgba(64,224,255,.2);
    border-color: rgba(64,224,255,.5);
}

.checkBox input:checked ~ .checkmark {
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border-color: rgba(64,224,255,.5);
    box-shadow: 0 0 10px rgba(64,224,255,.3);
}

.checkBox input:checked ~ .checkmark:after {
    display: block;
}

.checkBox:last-child {
    margin-right: 0;
}

.active-checkBox .checkmark {
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border-color: rgba(64,224,255,.5);
    box-shadow: 0 0 10px rgba(64,224,255,.3);
}

.information-block {
    z-index: 10000; /* Увеличен для десктопной версии, чтобы быть поверх всех фотографий и карточек */
    width: 100%;
    left: 0;
    right: 0;
    border: 1px solid rgba(64,224,255,.3);
    background: rgba(7, 11, 22, 0.75);
    backdrop-filter: blur(25px) saturate(180%);
    display: none;
    position: absolute;
    border-radius: 14px;
    top: 60px;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 25px 50px rgba(0,0,0,.5),
        0 0 40px rgba(64,224,255,.2);
    overflow: visible;
    opacity: 0;
    transform: translateY(-20px) scale(0.95);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    max-height: 85vh;
    overflow-y: auto;
    position: relative;
}

/* Кнопка закрытия для мобильной версии */
.information-block .modal-close-btn {
    position: absolute !important;
    top: 0.75rem !important;
    right: 0.75rem !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, 
        rgba(7, 11, 22, 0.9) 0%, 
        rgba(12, 18, 35, 0.85) 100%) !important;
    border: 1.5px solid rgba(64,224,255,.3) !important;
    color: #d0e4ff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 100001 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 
        0 2px 8px rgba(0,0,0,.3),
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 0 15px rgba(64,224,255,.15) !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 1.1rem !important;
    line-height: 1 !important;
    backdrop-filter: blur(10px) saturate(150%) !important;
}

.information-block .modal-close-btn:hover,
.information-block .modal-close-btn:active {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.15) 0%, 
        rgba(196,60,255,.1) 100%) !important;
    border-color: rgba(64,224,255,.5) !important;
    transform: scale(1.05) rotate(90deg) !important;
    box-shadow: 
        0 4px 12px rgba(0,0,0,.4),
        0 0 0 1px rgba(64,224,255,.2) inset,
        0 0 25px rgba(64,224,255,.25) !important;
    color: #fff !important;
}

.information-block .modal-close-btn i {
    font-size: 1.1rem !important;
    color: inherit !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.3)) !important;
}

.information-block .modal-close-btn:hover i,
.information-block .modal-close-btn:active i {
    filter: drop-shadow(0 0 6px rgba(64,224,255,.6)) !important;
    transform: scale(1.05) !important;
}

.information-block.active,
.information-block[style*="display: block"] {
    opacity: 1;
    transform: translateY(0) scale(1);
    animation: modalFadeIn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes modalFadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.information-block p {
    width: 100%;
    padding: 12px 20px;
    text-align: center;
    font-size: 20px;
    position: relative;
    color: #e8f0ff;
    background: linear-gradient(135deg, rgba(64,224,255,.1) 0%, rgba(196,60,255,.1) 100%);
    border-bottom: 1px solid rgba(64,224,255,.2);
    margin: 0;
    font-weight: 700;
    text-shadow: 0 0 12px rgba(64,224,255,.4);
}

.information-block p span {
    width: 32px;
    height: 32px;
    position: absolute;
    z-index: 8;
    border: 1px solid rgba(64,224,255,.4);
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    backdrop-filter: blur(10px);
    top: 15px;
    right: 15px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 
        0 4px 12px rgba(0,0,0,.3),
        0 0 10px rgba(64,224,255,.2);
}

.information-block p span:hover {
    background: linear-gradient(135deg, rgba(64,224,255,.3) 0%, rgba(196,60,255,.3) 100%);
    border-color: rgba(64,224,255,.6);
    transform: scale(1.1) rotate(90deg);
    box-shadow: 
        0 6px 20px rgba(0,0,0,.4),
        0 0 20px rgba(64,224,255,.4);
}

.information-block p span img {
    width: 13px;
    margin-bottom: 5px;
    height: 13px;
}

.information-block div {
    width: 100%;
    height: auto !important;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.information-block div ul {
    width: 20%;
    list-style-type: none;
    text-decoration: none;
    font-size: 12px;
    margin: 0;
    padding: 0;
}

.information-block div ul li {
    text-decoration: none;
    padding-left: 0;
}

.information-block div ul li a {
    width: 100%;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 28px;
    display: block;
    text-decoration: none;
    color: rgba(64,224,255,.7);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 5px;
    margin: 2px 0;
    position: relative;
    font-size: 13px;
    text-shadow: 0 1px 3px rgba(0,0,0,.3), 0 0 8px rgba(64,224,255,.15);
}

.information-block div ul li a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 0;
    background: linear-gradient(90deg, var(--hi-cyan), var(--hi-mag));
    transition: width 0.3s ease;
    border-radius: 6px 0 0 6px;
}

.information-block div ul li a:hover {
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    color: var(--hi-cyan);
    text-shadow: 0 0 10px rgba(64,224,255,.6);
    transform: translateX(2px);
    padding-left: 32px;
}

.information-block div ul li a:hover::before {
    width: 4px;
}

/* Overlay для модального окна (затемнение фона) */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(5px);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
}

.modal-overlay.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Стилизация скроллбара для модального окна */
.information-block::-webkit-scrollbar {
    width: 8px;
}

.information-block::-webkit-scrollbar-track {
    background: rgba(64,224,255,.05);
    border-radius: 10px;
}

.information-block::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border-radius: 10px;
    border: 1px solid rgba(64,224,255,.1);
}

.information-block::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    box-shadow: 0 0 8px rgba(64,224,255,.5);
}

/* Для Firefox */
.information-block {
    scrollbar-width: thin;
    scrollbar-color: rgba(64,224,255,.5) rgba(64,224,255,.05);
}

.wrapper-towns {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    z-index: 30;
    padding: 0 15px;
}

.wrapper-towns .towns {
    position: relative;
    width: 100%;
    border: 1px solid;
    max-width: 892px;
    padding-bottom: 10px;
    margin: 0 auto;
    top: 60px;
    display: block;
}

.wrapper-towns .towns div ul li {
    text-decoration: none;
    padding-left: 0;
}

.wrapper-towns .towns div ul li a {
    width: 100%;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-bottom: 12px;
    padding-left: 35px;
    display: block;
    text-decoration: none;
    color: #1e1e1e;
    transition: all .2s ease;
}

.wrapper-towns .towns div ul li a:hover {
    background: rgba(64,224,255,.15);
    text-decoration: underline;
    color: var(--hi-cyan);
    text-shadow: 0 0 8px rgba(64,224,255,.5);
}

.wrapper-video {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 30;
    padding: 0 15px;
}

.wrapper-video .towns {
    position: relative;
    width: 100%;
    height: 60vh;
    border: 1px solid;
    max-width: 892px;
    margin: 0 auto;
    top: 20vh;
    display: block;
}

.wrapper-video .towns span {
    width: 25px;
    height: 25px;
    position: absolute;
    z-index: 8;
    border: 1px solid rgba(64,224,255,.3);
    border-radius: 50%;
    background: rgba(64,224,255,.1);
    backdrop-filter: blur(10px);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-content: center;
    align-items: center;
    top: -30px;
    right: -30px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.wrapper-video .towns span:hover {
    background: rgba(64,224,255,.2);
    border-color: rgba(64,224,255,.5);
    transform: scale(1.1);
}

.wrapper-video .towns span img {
    width: 13px;
    height: 13px;
}

.wrapper-video .towns .video {
    width: 100%;
    height: 100%;
    }

    .information-block {
        width: auto;
        left: 10px !important;
        right: 10px;
        z-index: 100;
    }

    .information-block div {
        width: 100%;
    }

    .information-block div ul {
        width: 50%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .information-block div ul li a {
        padding-left: 20px;
        padding-right: 5px;
    }
    
    /* Улучшение компактности модального окна на маленьких мобильных */
    .information-block {
        padding: 8px;
        max-height: 75vh;
    }
    
    .information-block .metro-container,
    .information-block .area-container,
    .information-block .prigorod-container,
    .information-block .city-container {
        padding: 6px;
        margin-bottom: 8px;
    }
    
    .information-block .metro-group,
    .information-block .area-group,
    .information-block .prigorod-group,
    .information-block .city-group {
        padding: 4px;
        margin: 0 1px 3px 1px;
    }
    
    .information-block .metro-letter,
    .information-block .area-letter,
    .information-block .prigorod-letter,
    .information-block .city-letter {
        font-size: 13px;
        height: 28px;
        padding: 5px 0 3px 0;
    }
    
    .information-block .metro-link,
    .information-block .area-link,
    .information-block .prigorod-link,
    .information-block .city-link {
        padding: 3px 6px;
        font-size: 10px;
        margin: 1px;
    }
}

.activeHideWrapper::after {
    transform: rotate(180deg);
}

/* cyrillic-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OX-hpOqc.woff2) format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OVuhpOqc.woff2) format("woff2");
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OXuhpOqc.woff2) format("woff2");
    unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OUehpOqc.woff2) format("woff2");
    unicode-range: U+0370-03FF;
}

/* vietnamese */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OXehpOqc.woff2) format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OXOhpOqc.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local("Open Sans Light"), local("OpenSans-Light"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN_r8OUuhp.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFWJ0bbck.woff2) format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFUZ0bbck.woff2) format("woff2");
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFWZ0bbck.woff2) format("woff2");
    unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFVp0bbck.woff2) format("woff2");
    unicode-range: U+0370-03FF;
}

/* vietnamese */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFWp0bbck.woff2) format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFW50bbck.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local("Open Sans Regular"), local("OpenSans-Regular"), url(/vendor/fonts/opensans/mem8YaGs126MiZpBA-UFVZ0b.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOX-hpOqc.woff2) format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOVuhpOqc.woff2) format("woff2");
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOXuhpOqc.woff2) format("woff2");
    unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOUehpOqc.woff2) format("woff2");
    unicode-range: U+0370-03FF;
}

/* vietnamese */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOXehpOqc.woff2) format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOXOhpOqc.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UNirkOUuhp.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOX-hpOqc.woff2) format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOVuhpOqc.woff2) format("woff2");
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOXuhpOqc.woff2) format("woff2");
    unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOUehpOqc.woff2) format("woff2");
    unicode-range: U+0370-03FF;
}

/* vietnamese */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOXehpOqc.woff2) format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOXOhpOqc.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local("Open Sans Bold"), local("OpenSans-Bold"), url(/vendor/fonts/opensans/mem5YaGs126MiZpBA-UN7rgOUuhp.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

* {
    margin: 0;
    padding: 0;
    outline: none;
    box-sizing: border-box;
    font-family: "OpenSans", Arial;
}

/* body стили уже определены выше в блоке с фоном */

header {
    max-width: 1170px; /* Ограничиваем ширину как у контентной части */
    margin: 0 auto; /* Центрируем */
    width: 100%;
    box-sizing: border-box;
}

header .top-line {
    min-height: var(--topbar-h);
    background: linear-gradient(135deg, 
        rgba(255,255,255,.08) 0%, 
        rgba(255,255,255,.04) 50%, 
        rgba(255,255,255,.02) 100%) !important;
    border-bottom: 1px solid rgba(64,224,255,.15);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.08) inset,
        0 8px 32px rgba(0,0,0,.3),
        0 0 20px rgba(64,224,255,.05);
    box-sizing: initial;
    z-index: 4;
    position: relative;
    border-radius: 12px 12px 0 0; /* Закругляем верхние углы */
    overflow: visible; /* Чтобы содержимое не выходило за скругленные углы */
}

header .top-line::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    box-shadow: 0 0 15px rgba(64,224,255,.5);
    z-index: 1;
}

header .top-line .container {
    max-width: 1170px !important; /* Ограничиваем ширину как у контентной части */
    margin: 0 auto !important; /* Центрируем */
    padding: 0 15px !important; /* Отступы как у .container */
    box-sizing: border-box !important;
    width: 100% !important;
}

header .top-line .container.row,
header .top-line .container .row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    min-height: var(--topbar-h) !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* Десктопная версия - центрирование меню между логотипом и кнопкой */
@media (min-width: 992px) {
    header .top-line .top-line-inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        position: relative;
    }
    
    header .top-line .top-line-inner .logo {
        flex: 0 0 auto;
        margin-right: 0;
        margin-left: 15px !important;
    }
    
    header .top-line .top-line-inner .menu {
        position: absolute;
        left: 50%;
        transform: translateX(calc(-50% + 50px));
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        margin: 0;
        padding: 0;
        list-style: none;
        z-index: 1;
    }
    
    header .top-line .top-line-inner .menu li {
        list-style: none;
        margin-right: 0;
    }
    
    header .top-line .top-line-inner .add-profile-btn {
        flex: 0 0 auto;
        margin-left: auto;
        margin-right: 0;
        transform: translateX(-20px);
    }
}

/* Увеличиваем высоту контейнера в десктопной версии */
@media (min-width: 1201px) {
    header .top-line .container.row,
    header .top-line .container .row {
        min-height: 100px !important;
    }
    
    /* Увеличиваем элементы пропорционально высоте */
    header .top-line .top-line-inner .logo {
        margin-left: 15px !important;
    }
    
    header .top-line .top-line-inner .logo:hover {
        margin-left: 15px !important;
        transform: scale(1.05) !important;
    }
    
    header .top-line .top-line-inner .logo div p {
        font-size: 20px !important;
    }
    
    header .top-line .top-line-inner .logo .premium-logo-icon {
        width: 70px !important;
        height: 70px !important;
    }
    
    header .top-line .top-line-inner .menu li a {
        font-size: 14px !important;
        padding: 8px 14px !important;
    }
    
    header .top-line .top-line-inner .menu li .active-item {
        font-size: 14px !important;
        padding: 8px 14px !important;
    }
    
    header .top-line .top-line-inner .add-profile-btn {
        font-size: 14px !important;
        padding: 10px 16px !important;
    }
}

header .top-line .container.row::before,
header .top-line .container .row::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 1;
}

/* Убираем свечение сверху в десктопной версии */
@media (min-width: 1201px) {
    header .top-line::before {
        display: none !important;
    }
    
    header .top-line .container.row::before,
    header .top-line .container .row::before {
        display: none !important;
    }
}

header .top-line .container.row::after,
header .top-line .container .row::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 1;
    display: block;
    /* Переопределяем Bootstrap Grid стили */
    margin-left: 0 !important;
    margin-right: 0 !important;
}

header .top-line .container.row .logo, header .top-line .container .row .logo {
    color: white;
    text-decoration: none;
    vertical-align: middle;
    margin-right: 40px;
    margin-left: 30px;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    position: relative;
}

/* (удалено) Иконка рядом с текстовым логотипом */

header .top-line .container.row .logo:hover,
header .top-line .container .row .logo:hover {
    transform: scale(1.05) !important;
    margin-right: 40px !important;
    margin-left: 30px !important;
    left: auto !important;
    right: auto !important;
    position: relative !important;
}

/* Переопределяем hover для десктопной версии */
@media (min-width: 1201px) {
    header .top-line .top-line-inner .logo:hover,
    header .top-line .container.row .logo:hover,
    header .top-line .container .row .logo:hover {
        margin-left: 15px !important;
        transform: scale(1.05) !important;
    }
}

header .top-line .container.row .logo:active,
header .top-line .container .row .logo:active {
    transform: none !important;
    margin-right: 40px !important;
    margin-left: 30px !important;
    left: auto !important;
    right: auto !important;
    position: relative !important;
}

header .top-line .container.row .logo img,
header .top-line .container .row .logo img {
    margin: 5px 0;
    width: 62px;
    height: auto;
    display: inline-block;
}

header .top-line .container.row .logo .premium-logo-icon,
header .top-line .container .row .logo .premium-logo-icon {
    display: inline-block;
    margin: 5px 0;
    width: 50px;
    height: 50px;
    vertical-align: middle;
    transition: none;
    position: relative;
    transform: none !important;
}


header .top-line .container.row .logo:hover .premium-logo-icon,
header .top-line .container .row .logo:hover .premium-logo-icon {
    transform: none !important;
    filter: drop-shadow(0 0 15px rgba(64,224,255,.6));
}

header .top-line .container.row .logo:active .premium-logo-icon,
header .top-line .container .row .logo:active .premium-logo-icon {
    transform: none !important;
}

header .top-line .container.row .logo .premium-logo-icon svg,
header .top-line .container .row .logo .premium-logo-icon svg {
    width: 100%;
    height: 100%;
    animation: logoPulse 3s ease-in-out infinite;
}

@keyframes logoPulse {
    0%, 100% {
        filter: drop-shadow(0 0 8px rgba(64,224,255,.4));
    }
    50% {
        filter: drop-shadow(0 0 15px rgba(196,60,255,.6));
    }
}

header .top-line .container.row .logo div,
header .top-line .container .row .logo div {
    display: inline-block;
    text-align: left;
    margin-left: 10px;
    vertical-align: middle;
    margin-top: 0;
    position: relative;
}

header .top-line .container.row .logo:hover div,
header .top-line .container .row .logo:hover div {
    margin-left: 10px !important;
    position: relative !important;
    transform: none !important;
}

header .top-line .container.row .logo:active div,
header .top-line .container .row .logo:active div {
    margin-left: 10px !important;
    position: relative !important;
    transform: none !important;
}

header .top-line .container.row .logo div p,
header .top-line .container .row .logo div p {
    text-transform: uppercase;
    font-size: 18px;
    line-height: 1.2;
    margin: 0;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 50%, #c43cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
    letter-spacing: 1.5px;
    transition: none;
    white-space: nowrap;
    transform: none !important;
}

header .top-line .container.row .logo:hover div p,
header .top-line .container .row .logo:hover div p {
    text-shadow: 0 0 30px rgba(64,224,255,.5);
    transform: none !important;
}

header .top-line .container.row .logo:active div p,
header .top-line .container .row .logo:active div p {
    transform: none !important;
}

header .top-line .container.row .logo div p:last-child,
header .top-line .container .row .logo div p:last-child {
    margin: 0;
    font-size: 18px;
    letter-spacing: 1.5px;
    line-height: 1.2;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 30%, #c43cff 70%, #fff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.5);
    animation: textGlow 3s ease-in-out infinite alternate;
}

@keyframes textGlow {
    0% {
        filter: brightness(1) drop-shadow(0 0 5px rgba(64,224,255,.3));
    }
    100% {
        filter: brightness(1.2) drop-shadow(0 0 15px rgba(64,224,255,.6));
    }
}

header .top-line .container.row .burger,
header .top-line .container .row .burger {
    text-align: right;
    display: none;
    flex-direction: row;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

/* ===== МОБИЛЬНОЕ МЕНЮ - ПРОСТОЙ СТИЛЬ ===== */

/* Основное выдвижное меню (слева) */
.slide-menu {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 85% !important;
    max-width: 320px !important;
    height: 100vh !important;
    background: #0a0d12 !important;
    border-right: 1px solid rgba(255,255,255,0.06) !important;
    backdrop-filter: none !important;
    box-shadow: 4px 0 20px rgba(0,0,0,0.4) !important;
    z-index: 10000 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    transform: translateX(-100%);
    transition: transform 0.25s ease !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    scrollbar-width: none;
}

.slide-menu::before {
    display: none;
}

/* Правое меню фильтров */
.slide-menu-right {
    left: auto !important;
    right: 0 !important;
    border-right: none !important;
    border-left: 1px solid rgba(255,255,255,0.06) !important;
    transform: translateX(100%) !important;
    box-shadow: -4px 0 20px rgba(0,0,0,0.4) !important;
}

/* Открытое состояние меню */
.slide-menu.open {
    transform: translateX(0) !important;
}

.slide-menu-right.open {
    transform: translateX(0) !important;
}

/* Показываем бургер-кнопку фильтров при ширине до 1200px */
@media (max-width: 1200px) {
    header .top-line .container.row .burger.burger-right,
    header .top-line .container .row .burger.burger-right {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 10001 !important;
    }
    
    /* Скрываем кнопку "Добавить анкету" в header на мобильной версии */
    header .top-line .top-line-inner .add-profile-btn {
        display: none !important;
    }
}

/* Скрываем slide-menu на десктопе */
@media (min-width: 1201px) {
    .slide-menu {
        display: none !important;
    }
}

/* Оверлей для фильтров */
.menu-filters-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(5px);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.menu-filters-overlay.active {
    opacity: 1;
    visibility: visible;
}

.slide-menu::-webkit-scrollbar {
    width: 5px;
}

.slide-menu::-webkit-scrollbar-track {
    background: rgba(255,255,255,.05);
    border-radius: 3px;
    margin: 8px 0;
}

.slide-menu::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.4) 0%, 
        rgba(196,60,255,.3) 100%);
    border-radius: 3px;
    box-shadow: 0 0 10px rgba(64,224,255,.3);
}

.slide-menu::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.6) 0%, 
        rgba(196,60,255,.5) 100%);
    box-shadow: 0 0 15px rgba(64,224,255,.5);
}

/* Шапка меню - ПРОСТОЙ СТИЛЬ */
.slide-menu .row {
    padding: 0;
    margin: 0;
    background: transparent;
    width: 100%;
    overflow: visible;
    border: none;
    box-shadow: none;
    position: relative;
}

.slide-menu .row::after {
    display: none;
}

/* Стили для пунктов меню (как в админке) */
.slide-menu .menu {
    list-style: none;
    padding: 1.25rem 0;
    margin: 0;
    width: 100%;
    overflow: visible;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

.slide-menu .menu li {
    margin: 0.4rem 0.75rem;
    display: block;
    width: calc(100% - 1.5rem);
    max-width: calc(100% - 1.5rem);
    box-sizing: border-box;
}

.slide-menu .menu li a {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    color: #d0e4ff;
    text-decoration: none;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 12px;
    font-size: 0.95rem;
    font-weight: 600;
    position: relative;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    white-space: normal;
    word-wrap: break-word;
    min-width: 0;
    background: linear-gradient(135deg, 
        rgba(255,255,255,.04) 0%, 
        rgba(255,255,255,.02) 100%);
    border: 1.5px solid rgba(64,224,255,.1);
    backdrop-filter: blur(8px) saturate(150%);
    box-shadow: 
        0 2px 8px rgba(0,0,0,.2),
        0 0 0 1px rgba(64,224,255,.05) inset,
        0 0 20px rgba(64,224,255,.05);
}

.slide-menu .menu li a span {
    flex: 1;
    min-width: 0;
    overflow: visible;
    text-overflow: ellipsis;
    line-height: 1.5;
    text-shadow: 0 1px 3px rgba(0,0,0,.3);
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.slide-menu .menu li a:hover span {
    text-shadow: 
        0 0 8px rgba(64,224,255,.5),
        0 2px 4px rgba(0,0,0,.4);
}

.slide-menu .menu li a:hover {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.15) 0%, 
        rgba(196,60,255,.1) 100%);
    color: #fff;
    transform: translateX(6px) translateY(-1px);
    border-color: rgba(64,224,255,.35);
    box-shadow: 
        0 4px 16px rgba(0,0,0,.3),
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 0 30px rgba(64,224,255,.15),
        0 2px 8px rgba(0,0,0,.25);
}

.slide-menu .menu li a.active-item,
.slide-menu .menu li a.active {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.2) 0%, 
        rgba(196,60,255,.15) 100%);
    color: #fff;
    border-color: rgba(64,224,255,.5);
    box-shadow: 
        0 4px 20px rgba(64,224,255,.3),
        0 0 0 1px rgba(255,255,255,.1) inset,
        0 0 40px rgba(64,224,255,.2),
        0 2px 10px rgba(0,0,0,.4);
    transform: translateX(3px);
}

/* Убираем конфликтующие псевдоэлементы для ссылок в мобильном меню */
.slide-menu .menu li a::before {
    display: none;
}

/* Иконки для пунктов основного меню (как в админке) */
.slide-menu .menu li a .mobile-nav-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: linear-gradient(135deg, 
        rgba(255,255,255,.08) 0%, 
        rgba(255,255,255,.04) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1.5px solid rgba(64,224,255,.2);
    flex-shrink: 0;
    box-shadow: 
        0 2px 6px rgba(0,0,0,.2),
        0 0 15px rgba(64,224,255,.1);
}

.slide-menu .menu li a:hover .mobile-nav-icon {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.2) 0%, 
        rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.4);
    transform: scale(1.08) rotate(2deg);
    box-shadow: 
        0 4px 12px rgba(0,0,0,.3),
        0 0 25px rgba(64,224,255,.2);
}

.slide-menu .menu li a.active-item .mobile-nav-icon,
.slide-menu .menu li a.active .mobile-nav-icon {
    background: linear-gradient(135deg, 
        var(--hi-cyan) 0%, 
        var(--hi-mag) 50%,
        var(--hi-cyan) 100%);
    background-size: 200% 200%;
    border-color: rgba(64,224,255,.6);
    box-shadow: 
        0 4px 20px rgba(64,224,255,.4),
        0 0 0 1px rgba(255,255,255,.2) inset,
        0 0 40px rgba(64,224,255,.3);
    animation: gradientShift 3s ease infinite;
}

/* Премиум стили для кнопки "Добавить анкету" в мобильном меню */
.slide-menu .menu li a.add-profile-btn {
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.95) 0%, rgba(7, 11, 22, 0.85) 100%) !important;
    border: 2px solid rgba(64,224,255,.4) !important;
    border-left: 2px solid rgba(64,224,255,.4) !important;
    border-top: 2px solid rgba(64,224,255,.4) !important;
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    margin-top: 1rem !important;
    margin-bottom: 0.5rem !important;
    padding: 1rem 1.25rem !important;
    border-radius: 10px !important;
    position: relative !important;
    overflow: hidden !important;
    text-shadow: 
        0 0 8px rgba(64,224,255,.4),
        0 0 12px rgba(196,60,255,.3),
        0 2px 4px rgba(0,0,0,.3) !important;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.2) inset,
        0 4px 12px rgba(0,0,0,.5),
        0 0 25px rgba(64,224,255,.15),
        0 0 40px rgba(196,60,255,.1) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    animation: none !important;
    backdrop-filter: blur(10px) saturate(180%) !important;
}

.slide-menu .menu li a.add-profile-btn::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%,
        rgba(64,224,255,.6) 80%,
        transparent 100%) !important;
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3) !important;
    z-index: 1 !important;
    animation: none !important;
}

.slide-menu .menu li a.add-profile-btn::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(196,60,255,.4) 20%,
        rgba(64,224,255,.6) 50%,
        rgba(196,60,255,.4) 80%,
        transparent 100%) !important;
    box-shadow: 0 0 10px rgba(196,60,255,.4) !important;
    z-index: 1 !important;
}

.slide-menu .menu li a.add-profile-btn:hover::before {
    opacity: 1 !important;
}

.slide-menu .menu li a.add-profile-btn:hover {
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.98) 0%, rgba(7, 11, 22, 0.9) 100%) !important;
    border-color: rgba(64,224,255,.7) !important;
    border-left-color: rgba(64,224,255,.7) !important;
    border-top-color: rgba(64,224,255,.7) !important;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 6px 20px rgba(0,0,0,.5),
        0 0 35px rgba(64,224,255,.25),
        0 0 60px rgba(196,60,255,.2),
        0 0 80px rgba(64,224,255,.15),
        inset 0 0 30px rgba(64,224,255,.1) !important;
    transform: translateX(4px) translateY(-2px) scale(1.02) !important;
    text-shadow: 
        0 0 12px rgba(64,224,255,.6),
        0 0 18px rgba(196,60,255,.4),
        0 2px 4px rgba(0,0,0,.3) !important;
    overflow: hidden !important;
}

/* Премиум иконка для кнопки */
.slide-menu .menu li a.add-profile-btn .mobile-nav-icon {
    background: linear-gradient(135deg, 
        rgba(64,224,255,.3) 0%, 
        rgba(196,60,255,.3) 100%) !important;
    border: 2px solid rgba(64,224,255,.6) !important;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.4) inset,
        0 4px 15px rgba(64,224,255,.3),
        0 0 20px rgba(64,224,255,.2) !important;
    width: 42px !important;
    height: 42px !important;
    position: relative;
    z-index: 2;
}

.slide-menu .menu li a.add-profile-btn .mobile-nav-icon::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, 
        rgba(255,255,255,.3) 0%, 
        transparent 70%);
    border-radius: 10px;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.slide-menu .menu li a.add-profile-btn:hover .mobile-nav-icon {
    background: linear-gradient(135deg, 
        rgba(255,255,255,.25) 0%, 
        rgba(255,255,255,.15) 100%) !important;
    border-color: rgba(255,255,255,.5) !important;
    box-shadow: 
        0 0 0 2px rgba(255,255,255,.3) inset,
        0 6px 25px rgba(255,255,255,.4),
        0 0 35px rgba(64,224,255,.5),
        0 0 50px rgba(196,60,255,.4) !important;
    transform: scale(1.15) rotate(5deg) !important;
}

.slide-menu .menu li a.add-profile-btn:hover .mobile-nav-icon::before {
    opacity: 1;
}

/* Иконка внутри */
.slide-menu .menu li a.add-profile-btn .mobile-nav-icon i {
    color: #fff !important;
    font-size: 1.2rem !important;
    text-shadow: 0 0 10px rgba(64,224,255,.8) !important;
    position: relative;
    z-index: 3;
    transition: all 0.4s ease !important;
}

.slide-menu .menu li a.add-profile-btn:hover .mobile-nav-icon i {
    color: #fff !important;
    transform: scale(1.2) rotate(-5deg) !important;
    text-shadow: 0 0 15px rgba(255,255,255,1), 0 0 25px rgba(64,224,255,1) !important;
}

/* Текст кнопки */
.slide-menu .menu li a.add-profile-btn span {
    position: relative;
    z-index: 2;
}

/* === ПРОСТЫЕ СТИЛИ ДЛЯ МОБИЛЬНОГО МЕНЮ ФИЛЬТРОВ === */
.slide-menu-filters .mobile-filters-content {
    padding: 20px 16px 40px 16px;
    width: 100%;
    box-sizing: border-box;
    background: transparent;
}

.slide-menu-filters .mobile-filters-content::before {
    display: none;
}

/* Стили для блоков фильтров в мобильном меню */
.slide-menu-filters .mobile-filters-content .locationsWrapper,
.slide-menu-filters .mobile-filters-content .showOnlyWrapper,
.slide-menu-filters .mobile-filters-content .selectWrapper {
    width: 100% !important;
    margin: 0 !important;
    margin-bottom: 2.5rem !important;
    box-sizing: border-box;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    position: relative !important;
    z-index: 1;
}

.slide-menu-filters .mobile-filters-content .selectWrapper:last-child {
    margin-bottom: 0 !important;
}

/* Убираем псевдоэлементы ::before у блоков в меню */
.slide-menu-filters .mobile-filters-content .locationsWrapper::before,
.slide-menu-filters .mobile-filters-content .showOnlyWrapper::before,
.slide-menu-filters .mobile-filters-content .selectWrapper::before {
    display: none !important;
}

/* Заголовки секций - ПРОСТОЙ СТИЛЬ */
.slide-menu-filters .mobile-filters-content .mobile-nav-section-title,
.slide-menu-filters .mobile-filters-content .kindOfSelect .title {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    padding: 0 0 8px 0 !important;
    margin: 0 0 12px 0 !important;
    border-radius: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    height: auto !important;
    min-height: auto !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    position: relative !important;
    overflow: visible !important;
}

/* Скрываем псевдоэлементы заголовков */
.slide-menu-filters .mobile-filters-content .mobile-nav-section-title::before,
.slide-menu-filters .mobile-filters-content .kindOfSelect .title::before,
.slide-menu-filters .mobile-filters-content .mobile-nav-section-title::after,
.slide-menu-filters .mobile-filters-content .kindOfSelect .title::after {
    display: none !important;
}

/* Текст заголовков - ПРОСТОЙ */
.slide-menu-filters .mobile-filters-content .mobile-nav-section-title,
.slide-menu-filters .mobile-filters-content .kindOfSelect .title p {
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    color: rgba(255,255,255,0.45) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
    background: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-shadow: none !important;
    filter: none !important;
    animation: none !important;
}

/* Иконки в заголовках секций */
.slide-menu-filters .mobile-filters-content .mobile-nav-section-title i,
.slide-menu-filters .mobile-filters-content .kindOfSelect .title i {
    font-size: 0.8rem !important;
    color: #40e0ff !important;
    margin-right: 0.25rem !important;
    flex-shrink: 0 !important;
}

/* Кнопки локаций в меню */
/* ========== ЛОКАЦИИ - крупные кнопки в столбик ========== */
.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    padding: 16px 18px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 12px !important;
    min-height: 60px !important;
    width: 100% !important;
    color: rgba(255,255,255,0.9) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
}

.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a:hover {
    background: rgba(64,224,255,0.1) !important;
    border-color: rgba(64,224,255,0.3) !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Иконки локаций - напрямую <i> элементы */
.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a > i {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    background: rgba(64,224,255,0.12) !important;
    border: 1px solid rgba(64,224,255,0.2) !important;
    border-radius: 10px !important;
    flex-shrink: 0 !important;
    box-shadow: none !important;
    font-size: 20px !important;
    color: rgba(64,224,255,0.9) !important;
    -webkit-text-fill-color: rgba(64,224,255,0.9) !important;
}

.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a:hover > i {
    background: rgba(64,224,255,0.18) !important;
    border-color: rgba(64,224,255,0.35) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: none !important;
}

.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a span {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,0.9) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
    text-shadow: none !important;
    background: none !important;
}

.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a:hover span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-shadow: none !important;
}

/* Скрываем piramyd и image в локациях */
.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a .piramyd,
.slide-menu-filters .mobile-filters-content .locationsWrapper .changeArea a .image {
    display: none !important;
}

/* ========== ОСТАЛЬНЫЕ КНОПКИ (не локации) ========== */
.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons,
.slide-menu-filters .mobile-filters-content .selectWrapper .buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a,
.slide-menu-filters .mobile-filters-content .selectWrapper .buttons a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 8px !important;
    min-height: 40px !important;
    color: rgba(255,255,255,0.75) !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
}

/* Явно переопределяем все десктопные стили для мобильного меню */
.slide-menu-filters .mobile-filters-content .changeArea a .image,
.slide-menu-filters .mobile-filters-content .changeArea a .piramyd {
    display: none !important;
}

.slide-menu-filters .mobile-filters-content .changeArea a::after {
    display: none !important;
    content: none !important;
}

/* Стили span для остальных кнопок */
.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a span,
.slide-menu-filters .mobile-filters-content .selectWrapper .buttons a span {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,0.75) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
    text-shadow: none !important;
    background: none !important;
}

/* Hover для остальных кнопок (не локации) */
.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a:hover,
.slide-menu-filters .mobile-filters-content .selectWrapper .buttons a:hover {
    background: rgba(64,224,255,0.08) !important;
    border-color: rgba(64,224,255,0.25) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a:hover span,
.slide-menu-filters .mobile-filters-content .selectWrapper .buttons a:hover span {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-shadow: none !important;
}

/* Стили mobile-nav-icon уже определены выше для locationsWrapper */

/* Кнопки "Показать только" в меню */
.slide-menu-filters .mobile-filters-content .buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .buttons a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 8px !important;
    min-height: 40px !important;
    color: rgba(255,255,255,0.75) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}

.slide-menu-filters .mobile-filters-content .buttons a:last-child,
.slide-menu-filters .mobile-filters-content .buttons a[href*="samie-deshevie-prostitutki"],
.slide-menu-filters .mobile-filters-content .buttons a[href*="samie-vip-prostitutki"],
.slide-menu-filters .mobile-filters-content .buttons a[href*="individualki-studentki"],
.slide-menu-filters .mobile-filters-content .buttons a[href*="individualki-hudye"],
.slide-menu-filters .mobile-filters-content .buttons a[href*="grud-malenkaya"],
.slide-menu-filters .mobile-filters-content .buttons a[href*="spb_prostitutki-uzbechki"] {
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .buttons a:hover {
    background: rgba(64,224,255,0.08) !important;
    border-color: rgba(64,224,255,.25) !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.slide-menu-filters .mobile-filters-content .buttons a.active {
    background: rgba(64,224,255,0.12) !important;
    border-color: rgba(64,224,255,.35) !important;
    color: #fff !important;
    box-shadow: none !important;
    animation: none !important;
    transform: none !important;
}

/* Иконки в кнопках "Показать только" */
.slide-menu-filters .mobile-filters-content .buttons a i,
.slide-menu-filters .mobile-filters-content .buttons a .mobile-nav-icon i {
    font-size: 14px !important;
    color: rgba(64,224,255,.7) !important;
    transition: all 0.15s ease !important;
    filter: none !important;
}

.slide-menu-filters .mobile-filters-content .buttons a:hover i,
.slide-menu-filters .mobile-filters-content .buttons a:hover .mobile-nav-icon i {
    color: #fff !important;
    transform: none !important;
    filter: none !important;
}

.slide-menu-filters .mobile-filters-content .buttons a.active i,
.slide-menu-filters .mobile-filters-content .buttons a.active .mobile-nav-icon i {
    color: #fff !important;
    filter: none !important;
}

/* Блок "Цена за час" в меню */
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect {
    padding: 0 !important;
    margin: 0 !important;
    margin-bottom: 2.25rem !important;
    position: relative !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect:last-child {
    margin-bottom: 0 !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.3rem !important;
    padding: 0 1rem !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Кнопки в блоках "Возраст", "Телосложение", "Грудь", "Национальность" */
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 8px !important;
    min-height: 40px !important;
    color: rgba(255,255,255,0.75) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    flex: 1 1 calc(50% - 4px) !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a:last-child,
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="samie-deshevie-prostitutki"],
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="samie-vip-prostitutki"],
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="individualki-studentki"],
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="individualki-hudye"],
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="grud-malenkaya"],
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a[href*="spb_prostitutki-uzbechki"] {
    width: 100% !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a:hover {
    background: rgba(64,224,255,0.08) !important;
    border-color: rgba(64,224,255,0.25) !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a.active {
    background: rgba(64,224,255,0.12) !important;
    border-color: rgba(64,224,255,0.35) !important;
    color: #fff !important;
    box-shadow: none !important;
    animation: none !important;
    transform: none !important;
}

/* Иконки в кнопках selectWrapper - скрыты */
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a i,
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a .mobile-nav-icon i {
    display: none !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a:hover i,
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a:hover .mobile-nav-icon i {
    display: none !important;
}

.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a.active i,
.slide-menu-filters .mobile-filters-content .selectWrapper .kindOfSelect .buttons a.active .mobile-nav-icon i {
    display: none !important;
}

.slide-menu .menu li a .mobile-nav-icon i {
    font-size: 1.1rem;
    color: #9bb7ff;
    transition: all 0.15s ease;
    filter: none;
}

.slide-menu .menu li a:hover .mobile-nav-icon i {
    color: #fff;
    transform: none;
    filter: none;
}

.slide-menu .menu li a.active-item .mobile-nav-icon i,
.slide-menu .menu li a.active .mobile-nav-icon i {
    color: #fff;
    transform: none;
    filter: none;
}

/* Оверлей для мобильных меню */
.menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(5px);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

header .top-line .change-city {
    margin-right: 40px;
    display: flex;
    align-items: center;
}

header .top-line .change-city p {
    color: white;
    font-size: 14px;
    display: inline-block;
    margin: 0;
}

header .top-line .change-city a {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    position: relative;
    color: var(--hi-cyan);
    text-decoration: none;
    margin-left: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

header .top-line .change-city a:hover {
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

header .top-line .change-city a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -14px;
    z-index: 2;
    transform: translateY(-4px);
    width: 9px;
    height: 8px;
    background-image: url("../image/piramid.png");
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.8));
    transition: all 0.3s ease;
}

header .top-line .change-city a:hover::after {
    filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(64,224,255,1));
    transform: translateY(-4px) scale(1.1);
}

header .top-line .menu {
    list-style-type: none;
    display: flex;
    align-items: center;
    margin: 0 auto;
    padding: 0;
    flex-wrap: nowrap;
    flex: 1;
    justify-content: center;
}

header .top-line .menu li {
    display: inline-flex;
    align-items: center;
    margin-right: 5px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

header .top-line .menu li a {
    font-size: 12px;
    color: var(--hi-cyan);
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 8px;
    display: inline-block;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    letter-spacing: 0.3px;
    text-decoration: none;
    background: rgba(64,224,255,.08);
    border: 1px solid rgba(64,224,255,.2);
    backdrop-filter: blur(10px);
    overflow: visible;
}

header .top-line .menu li a::before {
    display: none !important;
}

header .top-line .menu li a:hover::before {
    display: none !important;
}

header .top-line .menu li .active-item {
    color: #fff;
    text-decoration: none;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.4);
    padding: 6px 12px;
    border-radius: 8px;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 16px rgba(64,224,255,.3),
        0 0 20px rgba(64,224,255,.2);
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0,0,0,.2);
    transform: translateY(-1px);
}

header .top-line .menu li .active-item::before {
    display: none;
}

header .top-line .menu li a:hover {
    text-decoration: none;
    color: #fff;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.4);
    transform: translateY(-2px);
    text-shadow: 0 0 12px rgba(64,224,255,.6);
    box-shadow: 
        0 4px 16px rgba(64,224,255,.25),
        0 0 20px rgba(64,224,255,.15);
}

/* Кнопка "Добавить анкету" - вынесена из меню */
header .top-line .add-profile-btn {
    font-size: 11px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 6px;
    display: inline-block;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    letter-spacing: 0.2px;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    /* Кнопка всегда в состоянии hover */
    background: rgba(7, 11, 22, 0.95);
    border: 1px solid rgba(64,224,255,.8);
    color: #40e0ff;
    box-shadow: 
        0 0 20px rgba(64,224,255,.6),
        0 0 40px rgba(196,60,255,.4),
        inset 0 0 15px rgba(64,224,255,.15);
    z-index: 1;
    text-shadow: 0 0 12px rgba(64,224,255,.8), 0 0 25px rgba(64,224,255,.6);
    transform: translateX(-20px) translateY(-2px) scale(1.05);
}

header .top-line .add-profile-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 6px;
    background: linear-gradient(135deg, rgba(64,224,255,.1) 0%, rgba(196,60,255,.1) 100%);
    opacity: 1;
    transition: opacity 0.3s ease;
    z-index: -1;
}

header .top-line .add-profile-btn:hover::before {
    opacity: 1;
}

header .top-line .add-profile-btn::after {
    display: none;
}

header .top-line .add-profile-btn:hover {
    text-decoration: none;
    color: #fff;
    transform: translateX(-20px) translateY(-2px) scale(1.05);
    border-color: rgba(64,224,255,.8);
    box-shadow: 
        0 0 25px rgba(64,224,255,.7),
        0 0 50px rgba(196,60,255,.5),
        inset 0 0 20px rgba(64,224,255,.2);
    text-shadow: 0 0 15px rgba(64,224,255,.9);
}

header .top-line .add-profile-btn span {
    position: relative;
    z-index: 3;
}

header .top-line .selectSlut {
    display: flex;
    align-items: center;
}

header .top-line .selectSlut a {
    color: white;
    font-size: 14px;
    padding: 6px 15px 6px 35px;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    border-radius: 8px;
    position: relative;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
    display: inline-flex;
    align-items: center;
}

header .top-line .selectSlut a:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(64,224,255,.35);
}

header .top-line .selectSlut a::before {
    content: '';
    position: absolute;
    top: 8px;
    left: 10px;
    width: 15px;
    height: 14px;
    background: url("../image/select.png");
    background-size: cover;
    z-index: 2;
    filter: brightness(0) invert(1);
    transition: all 0.3s ease;
}

header .top-line .selectSlut a:hover::before {
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(255,255,255,.8));
    transform: scale(1.1);
}

/* Устаревший стиль - удален, используется выше */

/* ===== СТИЛИ ФОТОЛИНЕЙКИ - БАЗОВЫЕ СТИЛИ БЕЗ ПРЕМИУМ ЭФФЕКТОВ ===== */
header .medium-line {
    background: var(--hi-panel) !important;
    border-bottom: 1px solid rgba(64,224,255,.15) !important;
    height: 200px !important;
    width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 2 !important;
    /* Скрываем scrollbar для всех браузеров */
    scrollbar-width: none !important; /* Firefox */
    -ms-overflow-style: none !important; /* IE и Edge */
}

/* Убираем премиум границы */
header .medium-line::before,
header .medium-line::after {
    display: none !important;
}

/* Анимация свечения для контейнера - ограничена фотолинейкой */
@keyframes premiumMediumLineGlow {
    0% {
        box-shadow: 
            0 4px 20px rgba(0,0,0,.25),
            0 0 15px rgba(64,224,255,.06),
            inset 0 1px 0 rgba(255,255,255,.05) !important;
    }
    100% {
        box-shadow: 
            0 4px 20px rgba(0,0,0,.3),
            0 0 20px rgba(64,224,255,.08),
            0 0 25px rgba(196,60,255,.04),
            inset 0 1px 0 rgba(255,255,255,.08) !important;
    }
}

/* Анимация верхней границы - ограничена фотолинейкой */
@keyframes premiumTopBorderGlow {
    0% {
        opacity: 0.8;
        box-shadow: 
            0 0 10px rgba(64,224,255,.4),
            0 0 15px rgba(196,60,255,.25) !important;
    }
    100% {
        opacity: 1;
        box-shadow: 
            0 0 15px rgba(64,224,255,.6),
            0 0 20px rgba(196,60,255,.35) !important;
    }
}

/* Анимация нижней границы - ограничена фотолинейкой */
@keyframes premiumBottomBorderGlow {
    0% {
        opacity: 0.8;
        box-shadow: 
            0 0 10px rgba(64,224,255,.4),
            0 0 15px rgba(196,60,255,.25) !important;
    }
    100% {
        opacity: 1;
        box-shadow: 
            0 0 15px rgba(64,224,255,.6),
            0 0 20px rgba(196,60,255,.35) !important;
    }
}

/* Обертка для фотолинейки - строгая изоляция */
header .medium-line-wrapper {
    width: 100%;
    position: relative;
    z-index: 2; /* Соответствует z-index medium-line */
    overflow: hidden !important;
    contain: layout style paint !important;
    isolation: isolate !important;
}


/* Скрываем scrollbar для WebKit браузеров (Chrome, Safari) */
header .medium-line::-webkit-scrollbar {
    display: none;
}

header .medium-line .wrapper-girls-item {
    height: 100%;
    text-align: center;
    margin: 0 auto;
}

/* ===== РЕЖИМ "БАРАБАН" ДЛЯ ФОТОЛИНЕЙКИ (DOM-rotation) ===== */
header .medium-line.is-rotor {
    overflow: hidden !important; /* отключаем scroll-режим */
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    scroll-snap-type: none !important;
    scroll-behavior: auto !important;
}

header .medium-line.is-rotor::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

header .medium-line.is-rotor .wrapper-girls-item {
    display: flex !important;
    white-space: normal !important;
    margin: 0 !important;
    width: 100% !important;
    justify-content: flex-start !important;
}

/* Десктопную точную подгонку (ровно 9) делаем JS-ом в px, чтобы не было subpixel-обрезков */

/* Ограничение ширины фотолинейки до ширины контента в десктопной версии */
/* Десктопная версия - убеждаемся, что меню видно */
@media (min-width: 1201px) {
    /* Показываем все элементы меню на десктопе */
    header .top-line .container.row .menu,
header .top-line .container .row .menu,
    header .top-line .container.row .change-city,
header .top-line .container .row .change-city,
    header .top-line .container.row .selectSlut,
header .top-line .container .row .selectSlut {
        display: flex !important;
    }
    
    /* Скрываем бургер-кнопки на десктопе */
    header .top-line .container.row .burger,
header .top-line .container .row .burger {
        display: none !important;
    }
    
    /* Убеждаемся, что меню правильно выровнено */
    header .top-line .menu {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    header .top-line .menu li {
        margin-right: 5px !important;
        flex-shrink: 0;
        display: inline-flex !important;
        align-items: center !important;
    }
    
    header .top-line .menu li a {
        white-space: nowrap;
        display: inline-block !important;
    }
    
    /* Убеждаемся, что change-city и selectSlut правильно отображаются */
    header .top-line .change-city {
        display: flex !important;
        align-items: center !important;
        margin-right: 20px !important;
    }
    
    header .top-line .selectSlut {
        display: flex !important;
        align-items: center !important;
        margin-left: 10px !important;
    }
    
    /* Правильное выравнивание row на десктопе - переопределяем Bootstrap Grid */
    header .top-line .container.row,
    header .top-line .container .row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        /* Переопределяем Bootstrap Grid flex-wrap: wrap */
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
    }
    
    /* Убеждаемся, что логотип не растягивается */
    header .top-line .container.row .logo, header .top-line .container .row .logo {
        flex-shrink: 0 !important;
        flex-grow: 0 !important;
    }
    
    /* Убеждаемся, что меню не растягивается и выравнивается справа */
    header .top-line .container.row .menu,
header .top-line .container .row .menu {
        flex-shrink: 0 !important;
        flex-grow: 0 !important;
        margin-left: auto !important;
    }
    
    /* Убеждаемся, что change-city и selectSlut правильно позиционируются */
    header .top-line .container.row .change-city,
header .top-line .container .row .change-city {
        flex-shrink: 0 !important;
        flex-grow: 0 !important;
    }
    
    header .top-line .container.row .selectSlut,
header .top-line .container .row .selectSlut {
        flex-shrink: 0 !important;
        flex-grow: 0 !important;
    }
}

/* ===== ПРЕМИУМ МОБИЛЬНАЯ ВЕРСИЯ HEADER ===== */
@media (max-width: 1200px) {
    /* Скрываем обычное меню на мобильных */
    header .top-line .container.row .menu,
    header .top-line .container .row .menu,
    header .top-line .top-line-inner .menu {
        display: none !important;
    }
    
    /* Показываем бургер-кнопки на мобильных */
    header .top-line .container.row .burger,
    header .top-line .container .row .burger,
    header .top-line .burger {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 10001 !important;
        position: relative !important;
        pointer-events: auto !important;
    }
    
    /* Улучшаем бургер-кнопку для мобильных */
    header .top-line .burger .burger-btn {
        width: 40px;
        height: 32px;
        cursor: pointer !important;
        position: relative;
        z-index: 10002 !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        pointer-events: auto !important;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }
    
    /* Убеждаемся, что бургер-кнопки кликабельны */
    header .top-line .burger {
        pointer-events: auto !important;
        z-index: 10001 !important;
    }
    
    /* Убеждаемся, что span внутри кнопки не блокирует клики */
    header .top-line .burger .burger-btn span {
        pointer-events: none !important;
    }
    
    header .top-line .burger .burger-btn span {
        background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
        box-shadow: 0 2px 6px rgba(64,224,255,.4);
    }
    
    /* Левая бургер-кнопка (основное меню) */
    header .top-line .burger.burger-left {
        order: 1;
        flex: 0 0 auto;
        width: 40px;
        margin-right: 10px;
    }
    
    /* Правая бургер-кнопка (фильтры) */
    header .top-line .burger.burger-right {
        order: 3;
        flex: 0 0 auto;
        width: 40px;
        margin-left: 10px;
    }
    
    /* Адаптируем top-line-inner для мобильных */
    header .top-line .top-line-inner {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        position: relative !important;
    }
    
    /* Логотип на мобильных */
    header .top-line .top-line-inner .logo {
        flex: 0 0 auto;
        margin-left: 10px !important;
        order: 2;
    }
    
    /* Скрываем блоки фильтров в основном контенте на мобильных */
    main .main-content .left-content .locationsWrapper,
    main .main-content .left-content .showOnlyWrapper,
    main .main-content .left-content .selectWrapper {
        display: none !important;
    }
    
    /* Скрываем весь left-content на мобильных, так как фильтры в меню */
    main .main-content .left-content {
        display: none !important;
    }
    
    /* Адаптируем header для мобильных */
    header .top-line {
        min-height: 56px;
        padding: 0.5rem 1rem;
    }
    
    header .top-line .container.row,
    header .top-line .container .row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        position: relative !important;
        flex-wrap: nowrap !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Логотип по центру на мобильных - строго между двумя меню */
    header .top-line .container.row .logo,
    header .top-line .container .row .logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%) !important;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 0 !important;
        margin-left: 0 !important;
        width: auto;
    }
    
    header .top-line .container.row .logo:hover,
    header .top-line .container .row .logo:hover {
        position: absolute !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    
    header .top-line .container.row .logo:active,
    header .top-line .container .row .logo:active {
        position: absolute !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    
    /* Увеличиваем размер иконки логотипа на мобильных */
    header .top-line .container.row .logo .premium-logo-icon,
    header .top-line .container .row .logo .premium-logo-icon {
        width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
    }
    
    /* Увеличиваем размер текста логотипа на мобильных */
    header .top-line .container.row .logo div,
    header .top-line .container .row .logo div {
        margin-left: 8px !important;
    }
    
    header .top-line .container.row .logo div p,
    header .top-line .container .row .logo div p {
        font-size: 16px !important;
        line-height: 1.2 !important;
        letter-spacing: 0.5px !important;
    }
    
    /* Скрываем change-city и selectSlut на мобильных (они будут в меню) */
    header .top-line .container.row .change-city,
    header .top-line .container .row .change-city,
    header .top-line .container.row .selectSlut,
    header .top-line .container .row .selectSlut {
        display: none !important;
    }
    
    /* Улучшаем slide-menu для мобильных */
    .slide-menu {
        width: 85% !important;
        max-width: 320px !important;
    }
    
    /* Улучшаем пункты меню в slide-menu */
    .slide-menu .menu li a {
        font-size: 0.95rem !important;
        padding: 1rem 1.25rem !important;
    }
    
    /* Улучшаем иконки в меню */
    .slide-menu .menu li a .mobile-nav-icon {
        width: 40px !important;
        height: 40px !important;
    }
}

@media (min-width: 1201px) {
    header .medium-line {
        display: flex;
        justify-content: flex-start; /* Выравниваем по левому краю для точного отображения 9 карточек */
        overflow-x: auto; /* Разрешаем горизонтальную прокрутку для программного управления */
        overflow-y: hidden;
        scroll-behavior: smooth; /* Плавная прокрутка */
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory; /* Snap прокрутка на карточки */
        /* Скрываем scrollbar */
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE и Edge */
        max-width: 1170px; /* Ограничиваем ширину как у .container */
        width: 100%; /* Полная ширина до max-width */
        margin: 0 auto; /* Центрируем */
        padding: 0 15px; /* Отступы как у .container */
        box-sizing: border-box; /* Учитываем padding в ширине */
        position: relative; /* Для позиционирования стрелок */
    }
    
    
    /* Скрываем scrollbar для WebKit браузеров (Chrome, Safari) */
    header .medium-line::-webkit-scrollbar {
        display: none;
        width: 0;
        height: 0;
    }
    
    header .medium-line .wrapper-girls-item {
        display: inline-block; /* Для правильной ширины контента */
        white-space: nowrap; /* Карточки в одну строку */
        /* Ширина будет установлена через JavaScript */
    }
}

/* Стили для карточек фотолинейки - базовые без премиум эффектов */
header .medium-line .wrapper-girls-item .mini-cart-girl {
    width: 126.67px !important;
    min-width: 126.67px !important;
    max-width: 126.67px !important;
    display: inline-block !important;
    height: 100% !important;
    background: var(--hi-panel) !important;
    border: 1px solid rgba(64,224,255,.15) !important;
    position: relative !important;
    margin: 0 !important;
    cursor: pointer !important;
    z-index: 1 !important;
    transition: all 0.3s ease !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    border-radius: 8px !important;
    scroll-snap-align: start; /* Snap к началу карточки */
    vertical-align: top !important;
}

/* Десктоп + rotor: ровно 9 карточек без subpixel и без "торчит" */
@media (min-width: 1201px) {
    header .medium-line.is-rotor {
        width: var(--ml-line-w, 1170px) !important;
        max-width: var(--ml-line-w, 1170px) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow: hidden !important;
    }

    header .medium-line.is-rotor .wrapper-girls-item .mini-cart-girl {
        width: var(--ml-card-w, 130px) !important;
        min-width: var(--ml-card-w, 130px) !important;
        max-width: var(--ml-card-w, 130px) !important;
        flex: 0 0 var(--ml-card-w, 130px) !important;
        margin: 0 !important;
    }
}

header .medium-line .wrapper-girls-item .mini-cart-girl::before {
    display: none !important;
}


header .medium-line .wrapper-girls-item .mini-cart-girl:hover {
    background: rgba(64,224,255,.1) !important;
    border-color: rgba(64,224,255,.3) !important;
    transform: translateY(-2px);
}

header .medium-line .wrapper-girls-item .mini-cart-girl:hover::before {
    display: none !important;
}

header .medium-line .wrapper-girls-item .mini-cart-girl:hover .girls-text .name {
    background: rgba(64,224,255,.1) !important;
    color: #40e0ff;
}

header .medium-line .wrapper-girls-item .mini-cart-girl img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    filter: brightness(0.9);
    transition: all 0.3s ease;
    border-radius: 10px;
    display: block;
}

header .medium-line .wrapper-girls-item .mini-cart-girl:hover img {
    filter: brightness(1.1) contrast(1.15);
}

header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 45px;
    z-index: 4;
}

header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .name {
    width: 100%;
    height: 23px;
    background: rgba(0, 0, 0, 0.6) !important;
    color: #fff !important;
    text-align: center;
    font-size: 13.45px;
    line-height: 25px;
    font-weight: 600;
    transition: all 0.3s ease;
}

header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .cost {
    width: 100%;
    color: #fff !important;
    text-align: center;
    height: 22px;
    font-size: 13.45px;
    line-height: 22px;
    background: rgba(0, 0, 0, 0.7) !important;
    transition: all 0.3s ease;
    font-weight: 500;
}

header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .cost span {
    display: inline-block;
    color: #40e0ff !important;
    font-weight: 700;
    font-size: 14px;
}

/* Фотолинейка: убираем ценник */
header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .cost {
    display: none !important;
}

/* Фотолинейка: имя прижимаем к самому низу карточки */
header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text {
    height: 30px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
}

header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .name {
    height: 30px !important;
    line-height: 30px !important;
    margin: 0 !important;
    border-radius: 0 0 8px 8px !important;
    /* читаемый текст поверх фото */
    position: relative !important;
    z-index: 0 !important; /* создаём stacking context для псевдо-элемента */
    isolation: isolate !important; /* гарантируем порядок слоёв внутри name */
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: var(--hi-cyan) !important;
    color: var(--hi-cyan) !important;
    /* делаем читаемее на фото */
    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 14px rgba(64,224,255,.35) !important;
    -webkit-text-stroke: 0.35px rgba(0,0,0,0.55);
}

/* Фотолинейка: возвращаем полупрозрачный фон под именем (как раньше) */
header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .name::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.72) !important;
    border-radius: 0 0 8px 8px !important;
    z-index: -1 !important; /* фон строго под текстом */
    pointer-events: none !important;
}

/* На hover не даём старым правилам "убивать" градиентный текст */
header .medium-line .wrapper-girls-item .mini-cart-girl:hover .girls-text .name {
    -webkit-text-fill-color: var(--hi-cyan) !important;
    color: var(--hi-cyan) !important;
}

header .medium-line .wrapper-girls-item .mini-cart-girl:hover .girls-text .cost span {
    color: #40e0ff !important;
}

header .medium-line .wrapper-girls-item .mini-cart-girl::after {
    display: none !important;
}

header .medium-line .wrapper-girls-item .mini-cart-girl:hover::after {
    display: none !important;
}

header .bottom-line {
    max-width: 1170px; /* Ограничиваем ширину как у контентной части */
    margin: 0 auto; /* Центрируем */
    padding: 0 15px; /* Отступы как у .container */
    box-sizing: border-box;
    width: 100%;
    background: var(--hi-panel);
    border-bottom: 1px solid rgba(64,224,255,.15);
    backdrop-filter: blur(10px) saturate(140%);
    box-shadow: 0 4px 20px rgba(0,0,0,.2);
    z-index: 10001; /* Выше чем карточки профилей, чтобы выпадающие списки были поверх */
    position: relative;
    border-radius: 0 0 12px 12px; /* Закругляем нижние углы */
    overflow: visible; /* Чтобы содержимое не выходило за скругленные углы */
}

/* На мобильных устройствах bottom-line должен быть ниже мобильных меню */
@media (max-width: 1200px) {
    header .bottom-line {
        z-index: 9998 !important; /* Ниже мобильных меню (z-index: 10000) */
    }
}


.container2 {
    display: flex;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    max-width: 1168px;
    padding-top: 13px;
    padding-bottom: 13px;
    z-index: 10002; /* Выше чем bottom-line, чтобы выпадающие списки были поверх */
}


/* Десктопные стили - применяются только вне мобильного меню */
main .left-content .changeArea,
header .changeArea {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    justify-content: center;
    gap: 15px;
}

/* Десктопные стили для кнопок локаций - только вне мобильного меню */
main .left-content .changeArea a,
header .changeArea a {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
    width: 150px;
    height: 40px;
    text-align: left;
    border: 2px solid rgba(64,224,255,.3);
    font-size: 14px;
    line-height: 40px;
    border-radius: 12px;
    position: relative;
    padding-left: 12px;
    padding-right: 10px;
    cursor: pointer;
    justify-self: center;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 20px rgba(64,224,255,.15),
        0 2px 4px rgba(0,0,0,.2);
    backdrop-filter: blur(12px) saturate(180%);
    font-weight: 600;
    overflow: hidden;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
}

/* Десктопные стили - только для main .left-content и header */
main .left-content .changeArea a > *:not(.piramyd):not(.piramyd *):not(.mobile-nav-icon):not(.mobile-nav-icon *),
header .changeArea a > *:not(.piramyd):not(.piramyd *):not(.mobile-nav-icon):not(.mobile-nav-icon *) {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
}

main .left-content .changeArea a .piramyd,
main .left-content .changeArea a .piramyd::after,
header .changeArea a .piramyd,
header .changeArea a .piramyd::after {
    background: none !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: var(--hi-cyan) !important;
    background-clip: unset !important;
    color: var(--hi-cyan) !important;
    text-shadow: 0 0 8px rgba(64,224,255,.6) !important;
}

/* Z-index для текста и элементов */
main .left-content .changeArea a > *,
header .changeArea a > * {
    position: relative;
    z-index: 2;
}

/* Нижняя полоска при наведении */
main .left-content .changeArea a:hover,
header .changeArea a:hover {
    border-color: rgba(64,224,255,.6);
    box-shadow: 
        0 0 0 2px rgba(64,224,255,.3) inset,
        0 6px 20px rgba(0,0,0,.5),
        0 0 30px rgba(64,224,255,.5),
        0 0 50px rgba(64,224,255,.4),
        0 0 70px rgba(196,60,255,.3),
        0 0 90px rgba(196,60,255,.2) !important;
    text-shadow: 
        0 0 10px rgba(64,224,255,.8),
        0 0 20px rgba(64,224,255,.6),
        0 0 30px rgba(196,60,255,.4);
}

main .left-content .changeArea a:hover > *,
header .changeArea a:hover > * {
    text-shadow: 
        0 0 10px rgba(64,224,255,.8),
        0 0 20px rgba(64,224,255,.6),
        0 0 30px rgba(196,60,255,.4);
}

/* Иконки в кнопках локаций */
main .left-content .changeArea a i,
header .changeArea a i {
    font-size: 16px;
    margin-right: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    flex-shrink: 0;
}

main .left-content .changeArea a span:not(.image):not(.piramyd):not(.piramyd *),
header .changeArea a span:not(.image):not(.piramyd):not(.piramyd *) {
    position: relative;
    z-index: 2;
}

main .left-content .changeArea a .image,
header .changeArea a .image {
    position: absolute;
    top: 50%;
    left: 12px;
    transform: translateY(-50%);
    height: 20px;
    width: 16px;
    background-image: url("../image/location.png");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 2;
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
    display: none; /* Скрываем старую иконку, используем Bootstrap Icons */
}

main .left-content .changeArea a:hover .image,
header .changeArea a:hover .image {
    filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(64,224,255,1));
}

main .left-content .changeArea a .piramyd,
header .changeArea a .piramyd {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 35px;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.1) 100%);
    backdrop-filter: blur(8px);
    z-index: 2;
    border-radius: 0 12px 12px 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}


main .left-content .changeArea a .piramyd img,
header .changeArea a .piramyd img {
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.8));
    width: 10px;
    height: 9px;
    position: relative;
    z-index: 1;
}

main .left-content .changeArea a:hover .piramyd,
header .changeArea a:hover .piramyd {
    background: linear-gradient(135deg, rgba(64,224,255,.25) 0%, rgba(196,60,255,.2) 100%);
    width: 40px;
}


main .left-content .changeArea a:hover .piramyd img,
header .changeArea a:hover .piramyd img {
    filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(64,224,255,1));
}

main .left-content .changeArea a:last-child,
header .changeArea a:last-child {
    margin-right: 0;
}

main .left-content .changeArea a:last-child .image,
header .changeArea a:last-child .image {
    left: 10px;
    height: 20px;
    width: 20px;
    background-image: url("../image/metro.png");
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.6));
}

main .left-content .changeArea a:last-child:hover .image,
header .changeArea a:last-child:hover .image {
    filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(64,224,255,1));
}

.changeChose {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-left: 30px;
    gap: 12px;
}

.changeChose label {
    padding-left: 0;
    margin-right: 0;
}

.changeChose label a {
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    padding: 8px 16px;
    padding-left: 40px;
    display: flex;
    align-items: center;
    color: rgba(255,255,255,.85);
    font-weight: 600;
    font-size: 14px;
    z-index: 2;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    letter-spacing: 0.4px;
    text-decoration: none;
    background: rgba(64,224,255,.08);
    border: 1px solid rgba(64,224,255,.2);
    border-radius: 10px;
    backdrop-filter: blur(10px);
    overflow: visible;
}

.changeChose label a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
    transition: left 0.6s ease;
}

.changeChose label a:hover::before {
    left: 100%;
}

.changeChose label a:hover {
    color: #fff;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.4);
    transform: translateY(-2px);
    text-shadow: 0 0 12px rgba(64,224,255,.6);
    box-shadow: 
        0 4px 16px rgba(64,224,255,.25),
        0 0 20px rgba(64,224,255,.15);
    text-decoration: none;
}

.changeChose .active-checkBox a {
    color: #fff;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.4);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 16px rgba(64,224,255,.3),
        0 0 20px rgba(64,224,255,.2);
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0,0,0,.2);
    transform: translateY(-1px);
}

@media (max-width: 1200px) {
    .changeArea {
        gap: 30px;
    }
    .container2 {
        display: flex;
        flex-wrap: wrap;
        max-width: 960px;
        align-items: center;
        justify-content: center;
        gap: 15px;
    }
}

main {
    height: 100%;
    position: relative;
    z-index: 1; /* Ниже medium-line (z-index: 2) и top-line (z-index: 4) */
}

main .main-content {
    padding-top: 8px;
    padding-bottom: 21px;
}

main .main-content .nowrap {
    flex-wrap: nowrap;
}

main .main-content .left-content {
    max-width: 269px;
}

main .main-content .left-content .hideWrapper {
    display: none;
    width: 100%;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    padding: 10px;
    text-align: center;
    color: white;
    font-size: 17px;
    font-weight: bold;
    border-radius: 8px;
    margin-bottom: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 1;
    position: relative;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
}

main .main-content .left-content .hideWrapper:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(64,224,255,.35);
}

main .main-content .left-content .hideWrapper::after {
    content: '';
    position: absolute;
    top: 42%;
    right: 14px;
    z-index: 1;
    width: 9px;
    height: 8px;
    background-image: url("../image/piramid.png");
    transition: all .2s ease;
}

main .main-content .left-content .locationsWrapper {
    width: 100%;
    height: auto;
    background: var(--hi-panel);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,.2);
    position: relative;
    overflow: visible;
}

main .main-content .left-content .locationsWrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 1;
}

main .main-content .left-content .locationsWrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 1;
    display: block;
}

main .main-content .left-content .locationsWrapper .kindOfSelect .title {
    width: 100%;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0 0 10px 0;
    text-align: left;
    margin: 0 0 14px 0;
    position: relative;
    overflow: visible;
    transition: none;
    animation: none;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

@keyframes titleGlow {
    0% {
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.2) inset,
            0 4px 12px rgba(0,0,0,.5),
            0 0 25px rgba(64,224,255,.15),
            0 0 40px rgba(196,60,255,.1);
        border-color: rgba(64,224,255,.4);
    }
    100% {
        box-shadow: 
            0 0 0 1px rgba(64,224,255,.3) inset,
            0 4px 12px rgba(0,0,0,.5),
            0 0 35px rgba(64,224,255,.25),
            0 0 60px rgba(196,60,255,.2);
        border-color: rgba(64,224,255,.6);
    }
}

main .main-content .left-content .locationsWrapper .kindOfSelect .title::before {
    display: none;
    content: none;
}

@keyframes topLineGlow {
    0% {
        opacity: 0.8;
        box-shadow: 
            0 0 15px rgba(64,224,255,.5),
            0 0 30px rgba(196,60,255,.3);
    }
    100% {
        opacity: 1;
        box-shadow: 
            0 0 20px rgba(64,224,255,.7),
            0 0 40px rgba(196,60,255,.5);
    }
}

main .main-content .left-content .locationsWrapper .kindOfSelect .title::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 1px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, rgba(64,224,255,.35) 55%, transparent 100%);
    box-shadow: 0 0 10px rgba(64,224,255,.25);
    border-radius: 2px;
    z-index: 2;
}

main .main-content .left-content .locationsWrapper .kindOfSelect .title p {
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    margin: 0;
    text-shadow: none;
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: none;
}

@keyframes textPulse {
    0% {
        filter: brightness(1) drop-shadow(0 0 4px rgba(64,224,255,.3));
    }
    100% {
        filter: brightness(1.1) drop-shadow(0 0 8px rgba(64,224,255,.5));
    }
}

@keyframes textGradientShift {
    0% {
        background-position: 0% 50%;
    }
    100% {
        background-position: 100% 50%;
    }
}

@keyframes gradientShift {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

main .main-content .left-content .locationsWrapper .changeArea {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
    gap: 8px;
}

/* ===== ИНДИВИДУАЛЬНЫЙ ПРЕМИУМ СТИЛЬ ДЛЯ КНОПОК ЛОКАЦИЙ ===== */
main .main-content .left-content .locationsWrapper .changeArea a {
    border-radius: 12px;
    border: 2px solid rgba(64,224,255,.3);
    height: 42px;
    text-decoration: none;
    line-height: 42px;
    text-align: left;
    font-size: 14px;
    width: 100%;
    margin: 0 0 10px 0;
    padding: 0 18px 0 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    position: relative;
    backdrop-filter: blur(15px) saturate(180%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 25px rgba(64,224,255,.18);
    font-weight: 600;
    overflow: visible;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
}

/* Иконки в кнопках локаций на главной странице */
main .main-content .left-content .locationsWrapper .changeArea a i {
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    flex-shrink: 0;
}

main .main-content .left-content .locationsWrapper .changeArea a span:not(.image):not(.piramyd):not(.piramyd *) {
    position: relative;
    z-index: 2;
}

main .main-content .left-content .locationsWrapper .changeArea a > *:not(.piramyd):not(.piramyd *):not(.mobile-nav-icon):not(.mobile-nav-icon *) {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 20px rgba(64,224,255,.3);
}

main .main-content .left-content .locationsWrapper .changeArea a .piramyd,
main .main-content .left-content .locationsWrapper .changeArea a .piramyd::after {
    background: none !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: var(--hi-cyan) !important;
    background-clip: unset !important;
    color: var(--hi-cyan) !important;
    text-shadow: 0 0 8px rgba(64,224,255,.6) !important;
    position: relative;
    z-index: 10;
}

/* Градиентная полоска слева */

/* Убираем блестящий эффект */
main .main-content .left-content .locationsWrapper .changeArea a::after {
    display: none;
}

/* Индикатор выпадающего списка (стрелка) - используем .piramyd для отображения стрелки */
main .main-content .left-content .locationsWrapper .changeArea a .piramyd {
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    height: auto;
    background: none;
    border: none;
    border-radius: 0;
    padding: 0;
    z-index: 2;
    margin-left: auto; /* Отталкиваем стрелочку вправо */
}

main .main-content .left-content .locationsWrapper .changeArea a .piramyd img {
    display: none;
}

main .main-content .left-content .locationsWrapper .changeArea a .piramyd::after {
    content: '▼';
    font-size: 12px;
    color: var(--hi-cyan) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: inline-block;
    text-shadow: 0 0 8px rgba(64,224,255,.6);
    background: none !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: var(--hi-cyan) !important;
    background-clip: unset !important;
    position: relative;
    z-index: 10;
}

main .main-content .left-content .locationsWrapper .changeArea a:hover {
    border-color: rgba(64,224,255,.5);
    transform: translateX(4px) translateY(-2px);
    box-shadow: 
        0 0 0 2px rgba(64,224,255,.3) inset,
        0 6px 18px rgba(0,0,0,.5),
        0 0 35px rgba(64,224,255,.3);
    text-shadow: 0 0 20px rgba(64,224,255,.6);
}

main .main-content .left-content .locationsWrapper .changeArea a:hover > * {
    text-shadow: 0 0 20px rgba(64,224,255,.6);
}


main .main-content .left-content .locationsWrapper .changeArea a:hover .piramyd::after {
    color: #fff;
    text-shadow: 0 0 12px rgba(64,224,255,1);
    transform: translateY(2px);
}

main .main-content .left-content .locationsWrapper .changeArea a .image {
    display: none; /* Скрываем иконки */
}

/* .piramyd используем для стрелки, поэтому не скрываем */
main .main-content .left-content .locationsWrapper .changeArea a .piramyd {
    display: flex !important; /* Показываем для стрелки */
}

/* Блок "Показать только" */
main .main-content .left-content .showOnlyWrapper {
    width: 100%;
    height: auto;
    background: var(--hi-panel);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,.2);
    position: relative;
    overflow: visible;
}

main .main-content .left-content .showOnlyWrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 1;
}

main .main-content .left-content .showOnlyWrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 1;
    display: block;
}

main .main-content .left-content .showOnlyWrapper .kindOfSelect .title {
    width: 100%;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0 0 10px 0;
    text-align: left;
    margin: 0 0 14px 0;
    position: relative;
    overflow: visible;
    transition: none;
    animation: none;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

main .main-content .left-content .showOnlyWrapper .kindOfSelect .title::before {
    display: none;
    content: none;
}

main .main-content .left-content .showOnlyWrapper .kindOfSelect .title::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 1px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, rgba(64,224,255,.35) 55%, transparent 100%);
    box-shadow: 0 0 10px rgba(64,224,255,.25);
    border-radius: 2px;
    z-index: 2;
}

main .main-content .left-content .showOnlyWrapper .kindOfSelect .title p {
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    margin: 0;
    text-shadow: none;
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: none;
}

main .main-content .left-content .showOnlyWrapper .buttons {
    width: 100%;
    margin-bottom: 16px;
}

main .main-content .left-content .showOnlyWrapper .buttons a {
    border-radius: 6px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.8) 0%, rgba(7, 11, 22, 0.6) 100%);
    border: 1px solid rgba(64,224,255,.25);
    height: 28px;
    color: var(--hi-cyan);
    text-decoration: none;
    line-height: 1 !important;
    text-align: center !important;
    font-size: 11px;
    width: calc(50% - 14px);
    margin: 3px 7px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    box-sizing: border-box;
    position: relative;
    backdrop-filter: blur(10px) saturate(180%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 2px 6px rgba(0,0,0,.4),
        0 0 12px rgba(64,224,255,.12);
    font-weight: 600;
    overflow: hidden;
    letter-spacing: 0.1px;
    padding: 0 !important;
}

/* Увеличенные кнопки для десктопной версии */
@media (min-width: 1201px) {
    main .main-content .left-content .showOnlyWrapper .buttons a {
        height: 36px;
        font-size: 13px;
        padding: 0 8px !important;
        gap: 8px !important;
    }
    
    main .main-content .left-content .showOnlyWrapper .buttons a i {
        font-size: 13px !important;
    }
}

/* Премиальный эффект свечения при наведении */
main .main-content .left-content .showOnlyWrapper .buttons a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(64,224,255,.2) 50%,
        transparent 100%);
    transition: left 0.6s ease;
    z-index: 0;
}

main .main-content .left-content .showOnlyWrapper .buttons a:hover::before {
    left: 100%;
}

main .main-content .left-content .showOnlyWrapper .buttons a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 0 0 10px 10px;
    box-shadow: 0 0 15px rgba(64,224,255,.6);
    z-index: 1;
}

main .main-content .left-content .showOnlyWrapper .buttons a span {
    position: relative;
    z-index: 1;
    display: inline-block !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap;
    line-height: 1 !important;
    flex: 0 1 auto !important;
}

main .main-content .left-content .showOnlyWrapper .buttons a span i {
    display: none !important; /* Иконка не должна быть внутри span */
}

/* Иконки для кнопок */
main .main-content .left-content .showOnlyWrapper .buttons a i {
    font-size: 11px;
    transition: all 0.3s ease;
    filter: drop-shadow(0 0 3px rgba(64,224,255,.5));
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

main .main-content .left-content .showOnlyWrapper .buttons a:hover {
    background: linear-gradient(135deg, rgba(64,224,255,.2) 0%, rgba(196,60,255,.2) 100%);
    border-color: rgba(64,224,255,.5);
    color: #fff;
    transform: translateY(-3px) scale(1.02);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 6px 20px rgba(0,0,0,.5),
        0 0 30px rgba(64,224,255,.25),
        0 0 40px rgba(196,60,255,.15) !important;
    text-shadow: 0 0 15px rgba(64,224,255,1);
}

main .main-content .left-content .showOnlyWrapper .buttons a:hover i {
    transform: scale(1.2) rotate(5deg);
    filter: drop-shadow(0 0 8px rgba(64,224,255,.8));
}

main .main-content .left-content .showOnlyWrapper .buttons a:hover::after {
    width: 0 !important; /* убираем подчеркивание на hover */
}

main .main-content .left-content .showOnlyWrapper .buttons a.active {
    background: linear-gradient(135deg, rgba(64,224,255,.3) 0%, rgba(196,60,255,.3) 100%);
    border-color: rgba(64,224,255,.6);
    color: #fff;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.4) inset,
        0 6px 20px rgba(0,0,0,.5),
        0 0 35px rgba(64,224,255,.4),
        0 0 50px rgba(196,60,255,.2);
    font-weight: 700;
    text-shadow: 0 0 20px rgba(64,224,255,1);
    transform: translateY(-2px);
}

main .main-content .left-content .showOnlyWrapper .buttons a.active i {
    transform: scale(1.15);
    filter: drop-shadow(0 0 10px rgba(64,224,255,.9));
}

main .main-content .left-content .showOnlyWrapper .buttons a.active::after {
    width: calc(100% - 14px);
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    box-shadow: 0 0 20px rgba(64,224,255,.8);
}

main .main-content .left-content .showOnlyWrapper .buttons a:last-child {
    width: calc(100% - 14px);
}

main .main-content .left-content .selectWrapper {
    width: 100%;
    height: auto;
    background: var(--hi-panel);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    position: relative;
    z-index: 1;
    box-shadow: 0 10px 28px rgba(0,0,0,.42), 0 0 24px rgba(64,224,255,.07);
    border-radius: 14px;
    padding: 12px;
    overflow: visible;
}

main .main-content .left-content .selectWrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 2;
}

main .main-content .left-content .selectWrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 2;
    display: block;
}

main .main-content .left-content .selectWrapper .kindOfSelect .title {
    width: 100%;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0 0 10px 0;
    text-align: left;
    margin: 0 0 14px 0;
    position: relative;
    overflow: visible;
    transition: none;
    animation: none;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

main .main-content .left-content .selectWrapper .kindOfSelect .title::before {
    display: none;
    content: none;
}

main .main-content .left-content .selectWrapper .kindOfSelect .title::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 1px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, rgba(64,224,255,.35) 55%, transparent 100%);
    box-shadow: 0 0 10px rgba(64,224,255,.25);
    border-radius: 2px;
    z-index: 2;
}

main .main-content .left-content .selectWrapper .kindOfSelect .title p {
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    margin: 0;
    text-shadow: none;
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: none;
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons {
    width: 100%;
    margin-bottom: 16px;
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons a {
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.6) 0%, rgba(7, 11, 22, 0.4) 100%);
    border: 1px solid rgba(64,224,255,.2);
    height: 33px;
    color: var(--hi-cyan);
    text-decoration: none;
    line-height: 33px;
    text-align: center;
    font-size: 14px;
    width: calc(50% - 14px);
    margin: 4px 7px;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 2px 8px rgba(0,0,0,.3),
        0 0 15px rgba(64,224,255,.1);
    font-weight: 500;
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons .active {
    background: linear-gradient(135deg, rgba(64,224,255,.2) 0%, rgba(196,60,255,.2) 100%);
    border-color: rgba(64,224,255,.4);
    color: #fff;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 15px rgba(0,0,0,.4),
        0 0 25px rgba(64,224,255,.3);
    font-weight: 600;
    text-shadow: 0 0 10px rgba(64,224,255,.8);
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons .active::after {
    width: calc(100% - 14px);
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    transition: width 0.3s ease;
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons a:hover {
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.15) 100%);
    border-color: rgba(64,224,255,.3);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.2) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 15px rgba(64,224,255,.15) !important;
    text-shadow: 0 0 10px rgba(64,224,255,.8);
}

main .main-content .left-content .selectWrapper .kindOfSelect .buttons a:hover::after {
    width: 0 !important; /* убираем подчеркивание на hover */
}


main .main-content .left-content .selectWrapper .kindOfSelect .buttons .line {
    width: 100%;
    height: auto;
    margin: 12px 9px 12px 7px;
    border-bottom: 1px dotted rgba(64,224,255,.3);
}

main .main-content .right-content {
    width: 100%;
    padding-left: 26px;
}

main .main-content .right-content .pagination {
    font-size: 14px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

main .main-content .right-content .pagination a {
    color: var(--hi-cyan);
    text-decoration: none;
    margin: 0 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 4px 8px;
    border-radius: 6px;
}

main .main-content .right-content .pagination a:hover {
    color: #fff;
    background: rgba(64,224,255,.1);
    text-shadow: 0 0 8px rgba(64,224,255,.5);
}

main .main-content .right-content .pagination span {
    cursor: pointer;
    color: #e8f0ff;
}

main .main-content .right-content .pagination span:hover {
    color: var(--hi-cyan);
}

main .main-content .right-content .pagination .currentPage {
    color: var(--hi-green);
    font-size: 16px;
    font-weight: bold;
    text-shadow: 0 0 8px rgba(25,255,149,.4);
}

main .main-content .right-content .pagination .currentPage:hover {
    color: var(--hi-green);
}

main .main-content .right-content .top-block {
    padding: 20px 25px;
    margin-bottom: 25px;
    background: linear-gradient(135deg, rgba(64,224,255,.08) 0%, rgba(196,60,255,.05) 100%);
    border: 1px solid rgba(64,224,255,.2);
    border-radius: 15px;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 24px rgba(0,0,0,.3),
        0 0 20px rgba(64,224,255,.1),
        inset 0 0 0 1px rgba(64,224,255,.15);
    position: relative;
    overflow: visible;
}

main .main-content .right-content .top-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 1;
}

main .main-content .right-content .top-block::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 1;
    display: block;
}

main .main-content .right-content .top-block h1 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
    line-height: 1.3;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    position: relative;
    z-index: 2;
    text-align: center;
}

/* Сворачивание/разворачивание текста в top-block на мобильных - стили перенесены в активный @media блок ниже */

main .main-content .right-content .top-block div {
    position: relative;
    z-index: 2;
}

    /* Премиум сворачивание текста в мобильной версии */
    @media (max-width: 1200px) {
        /* Уменьшаем padding у .top-block в мобильной версии */
        main .main-content .right-content .top-block {
            padding: 15px 20px !important;
        }
        
        /* Переопределяем стили H1 для мобильной версии - помещается в 3 строки */
        main .main-content .right-content .top-block h1 {
        font-size: 16px !important;
        text-align: center !important;
        margin: 0 auto !important;
        margin-bottom: 0 !important;
        margin-top: 0 !important;
        padding: 10px 15px 10px 15px !important;
        font-weight: 700 !important;
        line-height: 1.5 !important;
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
        text-shadow: 0 0 30px rgba(64,224,255,.3) !important;
        letter-spacing: 0.5px !important;
        position: relative !important;
        z-index: 2 !important;
        cursor: pointer !important;
        user-select: none !important;
        transition: all 0.3s ease !important;
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        word-wrap: break-word !important;
        word-break: break-word !important;
        hyphens: auto !important;
    }
    
    /* Стрелка убрана, чтобы не мешала тексту */
    main .main-content .right-content .top-block h1::after {
        display: none !important;
    }
    
    /* Премиум стили для сворачивания текста */
    main .main-content .right-content .top-block {
        position: relative;
        overflow: visible;
    }
    
    /* Градиент для скрытого текста */
    main .main-content .right-content .top-block:not(.expanded) .top-block-content::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 80px;
        background: linear-gradient(to top, 
            rgba(10,20,30,1) 0%, 
            rgba(10,20,30,.95) 20%, 
            rgba(10,20,30,.8) 40%,
            rgba(10,20,30,.5) 60%,
            rgba(10,20,30,.2) 80%,
            transparent 100%);
        pointer-events: none;
        z-index: 100;
    }
    
    /* Премиум анимация сворачивания */
    main .main-content .right-content .top-block .top-block-content {
        max-height: 0;
        opacity: 0;
        overflow: visible;
        transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                    opacity 0.4s ease, 
                    margin-top 0.4s ease;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        position: relative !important;
        z-index: 1 !important;
    }
    
    main .main-content .right-content .top-block.expanded .top-block-content {
        max-height: 2000px;
        opacity: 1;
        margin-top: 15px !important;
        overflow: visible !important;
    }
    
    main .main-content .right-content .top-block .top-block-content > div {
        margin-top: 0 !important;
        padding-top: 0 !important;
        position: relative !important;
        z-index: 1 !important;
    }
    
    main .main-content .right-content .top-block div {
        position: relative !important;
        z-index: 1 !important;
    }
    
    /* Убеждаемся, что top-block не имеет проблем с overflow */
    main .main-content .right-content .top-block.expanded {
        overflow: visible !important;
    }
}

main .main-content .right-content .top-block div p {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(64,224,255,.7);
    margin-top: 0;
    margin-bottom: 0;
    text-align: justify;
    text-shadow: 0 1px 3px rgba(0,0,0,.3), 0 0 8px rgba(64,224,255,.15);
    letter-spacing: 0.2px;
}

main .main-content .right-content .top-block div p:first-child {
    margin-top: 0;
}

main .main-content .right-content .top-block div p:last-child {
    margin-bottom: 0;
}

main .main-content .right-content .content-block {
    position: relative;
    padding: 10px 0 8px 0;
    margin: 15px 0 0 -18px;
}

main .main-content .right-content .cart {
    max-width: 280px;
}

/* ===== СТИЛИ ДЛЯ НИЖНЕГО БЛОКА (как у верхнего top-block) ===== */
main .main-content .right-content .bottom-content {
    padding: 20px 25px;
    margin-bottom: 25px;
    background: linear-gradient(135deg, rgba(64,224,255,.08) 0%, rgba(196,60,255,.05) 100%);
    border: 1px solid rgba(64,224,255,.2);
    border-radius: 15px;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 24px rgba(0,0,0,.3),
        0 0 20px rgba(64,224,255,.1),
        inset 0 0 0 1px rgba(64,224,255,.15);
    position: relative;
    overflow: visible;
}

main .main-content .right-content .bottom-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.6) 20%,
        rgba(196,60,255,.8) 50%, 
        rgba(64,224,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(64,224,255,.5),
        0 0 30px rgba(196,60,255,.3);
    z-index: 1;
}

main .main-content .right-content .bottom-content::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(196,60,255,.6) 20%,
        rgba(64,224,255,.8) 50%, 
        rgba(196,60,255,.6) 80%,
        transparent 100%);
    box-shadow: 
        0 0 15px rgba(196,60,255,.5),
        0 0 30px rgba(64,224,255,.3);
    z-index: 1;
    display: block;
}

main .main-content .right-content .bottom-content h2 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
    line-height: 1.3;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    position: relative;
    z-index: 2;
}

main .main-content .right-content .bottom-content .pagination {
    text-align: center;
    margin-bottom: 12px;
    position: relative;
    z-index: 2;
}

main .main-content .right-content .bottom-content p {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(64,224,255,.7);
    margin-top: 0;
    margin-bottom: 0;
    text-align: justify;
    text-shadow: 0 1px 3px rgba(0,0,0,.3), 0 0 8px rgba(64,224,255,.15);
    letter-spacing: 0.2px;
    position: relative;
    z-index: 2;
}

main .main-content .right-content .bottom-content p:first-child {
    margin-top: 0;
}

main .main-content .right-content .bottom-content p:last-child {
    margin-bottom: 0;
}

main .main-content .right-content .bottom-content p a {
    color: var(--hi-cyan);
    text-decoration: underline;
    transition: all 0.3s ease;
}

main .main-content .right-content .bottom-content p a:hover {
    text-decoration: none;
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

main .main-content .right-content .main-text-block {
    text-align: justify;
}

main .main-content .right-content .main-text-block h1 {
    font-size: 24px;
    margin-bottom: 20px;
    color: #e8f0ff;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 50%, #c43cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

main .main-content .right-content .main-text-block h2 {
    font-size: 22px;
    margin-bottom: 20px;
    color: #e8f0ff;
}

main .main-content .right-content .main-text-block h3 {
    font-size: 18px;
    margin-bottom: 20px;
    color: #b8d4ff;
}

main .main-content .right-content .main-text-block p {
    margin-bottom: 20px;
    font-size: 14px;
    color: #b8d4ff;
}

main .main-content .right-content .main-text-block a {
    color: var(--hi-cyan);
    text-decoration: underline;
    transition: all 0.3s ease;
}

main .main-content .right-content .main-text-block a:hover {
    text-decoration: none;
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

main .main-content .right-content .main-text-block .links {
    margin-top: 25px;
    margin-bottom: 25px;
}

main .main-content .right-content .main-text-block .links a {
    color: var(--hi-cyan);
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

main .main-content .right-content .main-text-block .links a:hover {
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

main .main-content .right-content .main-text-block ol {
    margin-top: 20px;
}

main .main-content .right-content .main-text-block ul {
    margin-top: 20px;
}

main .main-content .right-content .main-text-block li {
    font-size: 14px;
    margin-bottom: 20px;
    margin-left: 30px;
}

main .main-content .right-content .main-text-block li:last-child {
    margin-bottom: 25px;
}

main .main-content .right-content .main-text-block table {
    font-size: 16px;
    border-color: #8d8d8c;
    text-align: center;
}

main .main-content .right-content .main-text-block table .moreText {
    font-weight: bold;
    padding: 13px 8px;
}

main .main-content .right-content .main-text-block table tr {
    background: rgba(64,224,255,.08);
    transition: all 0.3s ease;
}

main .main-content .right-content .main-text-block table tr:hover {
    background: rgba(64,224,255,.12);
}

main .main-content .right-content .main-text-block table tr th {
    padding: 13px 8px;
    color: #9bb7ff;
    vertical-align: middle;
    text-align: center;
    border-color: rgba(64,224,255,.2);
}

main .main-content .right-content .main-text-block table tr td {
    padding: 13px 8px;
    color: #e8f0ff;
    vertical-align: middle;
    text-align: center;
    border-color: rgba(64,224,255,.2);
}

main .main-content .right-content .main-text-block table tr:nth-of-type(odd) {
    background: rgba(196,60,255,.05);
}

main .main-content .right-content .main-text-block table thead tr {
    background: rgba(64,224,255,.15) !important;
}

main .main-content .right-content .main-text-block table thead tr th {
    padding: 13px 8px;
    color: #9bb7ff;
    font-weight: bold;
    vertical-align: middle;
    text-align: center;
    border-bottom-width: 0;
    border-color: #8d8d8c;
}

main .main-content .right-content .main-form-block h1 {
    font-size: 24px;
    margin-bottom: 15px;
    text-align: justify;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
}

main .main-content .right-content .main-form-block h2 {
    font-size: 22px;
    margin-bottom: 20px;
    text-align: justify;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
}

main .main-content .right-content .main-form-block h3 {
    font-size: 24px;
    margin-bottom: 20px;
    text-align: justify;
    font-weight: 700;
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    line-height: 1.3;
}

main .main-content .right-content .main-form-block p {
    margin-bottom: 25px;
    font-size: 14px;
    text-align: justify;
}

/* ===== ПРЕМИУМ СТИЛИ ДЛЯ ФОРМЫ ===== */
main .main-content .right-content .main-form-block .form {
    width: 100%;
    max-width: 650px;
    padding: 25px 25px 30px 25px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.85) 0%, rgba(7, 11, 22, 0.75) 100%);
    border: 1px solid rgba(64,224,255,.3);
    backdrop-filter: blur(25px) saturate(180%);
    position: relative;
    z-index: 1;
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 25px 50px rgba(0,0,0,.5),
        0 0 40px rgba(64,224,255,.2);
    border-radius: 16px;
    overflow: visible;
}

main .main-content .right-content .main-form-block .form::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    box-shadow: 0 0 15px rgba(64,224,255,.5);
    z-index: 1;
}

main .main-content .right-content .main-form-block .form form {
    width: 100%;
    height: 100%;
}

main .main-content .right-content .main-form-block .form form .input-group {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 20px;
    position: relative;
    z-index: 2;
}

main .main-content .right-content .main-form-block .form form .input-group label {
    margin-top: 10px;
    font-size: 14px;
    color: var(--hi-cyan);
    font-weight: 600;
    letter-spacing: 0.3px;
    text-shadow: 0 0 8px rgba(64,224,255,.3);
    transition: all 0.3s ease;
}

main .main-content .right-content .main-form-block .form form .input-group:focus-within label {
    color: #fff;
    text-shadow: 0 0 12px rgba(64,224,255,.6);
}

main .main-content .right-content .main-form-block .form form .input-group label span {
    font-size: 18px;
    color: var(--hi-mag);
    text-shadow: 0 0 10px rgba(196,60,255,.5);
}

main .main-content .right-content .main-form-block .form form .input-group input {
    width: 100%;
    max-width: 470px;
    border: 1px solid rgba(64,224,255,.25);
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.6) 0%, rgba(7, 11, 22, 0.4) 100%);
    color: #fff;
    border-radius: 10px;
    height: 48px;
    padding: 0 16px;
    line-height: 48px;
    font-size: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 2px 8px rgba(0,0,0,.3),
        0 0 15px rgba(64,224,255,.1);
    font-weight: 500;
    position: relative;
}

main .main-content .right-content .main-form-block .form form .input-group input::placeholder {
    color: rgba(184,212,255,.5);
}

main .main-content .right-content .main-form-block .form form .input-group input:focus {
    border-color: rgba(64,224,255,.5);
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.1) 100%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 25px rgba(64,224,255,.3);
    outline: none;
    transform: translateY(-1px);
    color: #fff;
}

main .main-content .right-content .main-form-block .form form .input-group textarea {
    width: 100%;
    height: 175px;
    max-width: 470px;
    border: 1px solid rgba(64,224,255,.25);
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.6) 0%, rgba(7, 11, 22, 0.4) 100%);
    color: #fff;
    border-radius: 10px;
    resize: vertical;
    padding: 12px 16px;
    line-height: 1.6;
    font-size: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 2px 8px rgba(0,0,0,.3),
        0 0 15px rgba(64,224,255,.1);
    font-weight: 500;
    font-family: inherit;
}

main .main-content .right-content .main-form-block .form form .input-group textarea::placeholder {
    color: rgba(184,212,255,.5);
}

main .main-content .right-content .main-form-block .form form .input-group textarea:focus {
    border-color: rgba(64,224,255,.5);
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.1) 100%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 25px rgba(64,224,255,.3);
    outline: none;
    transform: translateY(-1px);
    color: #fff;
}

main .main-content .right-content .main-form-block .form form .buttons-group {
    width: 100%;
    max-width: 455px;
    margin-left: 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin-top: 15px;
    gap: 13px;
}

main .main-content .right-content .main-form-block .form form .buttons-group .inputs {
    border: 1px solid rgba(64,224,255,.25);
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.6) 0%, rgba(7, 11, 22, 0.4) 100%);
    color: var(--hi-cyan);
    font-size: 14px;
    padding: 10px 20px;
    margin-right: 13px;
    cursor: pointer;
    transition: all 0.3s ease;
    max-width: 140px;
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.1) inset,
        0 2px 8px rgba(0,0,0,.3),
        0 0 15px rgba(64,224,255,.1);
    font-weight: 500;
    text-align: center;
}

main .main-content .right-content .main-form-block .form form .buttons-group .inputs:hover {
    color: #fff;
    background: linear-gradient(135deg, rgba(64,224,255,.15) 0%, rgba(196,60,255,.1) 100%);
    border-color: rgba(64,224,255,.4);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 20px rgba(64,224,255,.2);
    transform: translateY(-1px);
}

main .main-content .right-content .main-form-block .form form .buttons-group input[type=file] {
    display: none;
}

main .main-content .right-content .main-form-block .form form .buttons-group span {
    font-size: 14px;
}

main .main-content .right-content .main-form-block .form form .buttons-group button {
    border-radius: 8px;
    cursor: pointer;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    color: white;
    font-size: 16px;
    padding: 12px;
    width: 100%;
    max-width: 275px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
    font-weight: 600;
}

main .main-content .right-content .main-form-block .form form .buttons-group button:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(64,224,255,.35);
}

/* ===== ПРЕМИУМ СТИЛИ ДЛЯ КАПЧИ ===== */
main .main-content .right-content .main-form-block .form form .input-group:has(label:has(img)) {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

main .main-content .right-content .main-form-block .form form .input-group:has(label:has(img)) label {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

main .main-content .right-content .main-form-block .form form .input-group label img {
    display: inline-block;
    margin: 8px 0 8px auto;
    padding: 6px;
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.8) 0%, rgba(7, 11, 22, 0.6) 100%);
    border: 1px solid rgba(64,224,255,.3);
    border-radius: 10px;
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.15) inset,
        0 4px 12px rgba(0,0,0,.4),
        0 0 20px rgba(64,224,255,.2);
    transition: all 0.3s ease;
    max-width: 120px;
    width: auto;
    height: auto;
    align-self: flex-end;
    margin-right: 0;
}

main .main-content .right-content .main-form-block .form form .input-group label img:hover {
    border-color: rgba(64,224,255,.5);
    box-shadow: 
        0 0 0 1px rgba(64,224,255,.3) inset,
        0 6px 16px rgba(0,0,0,.5),
        0 0 30px rgba(64,224,255,.3);
    transform: translateY(-2px);
}

/* Стили для поля ввода кода капчи */
main .main-content .right-content .main-form-block .form form .input-group:has(label:has(img)) input {
    margin-top: 8px;
    max-width: 120px;
    width: 120px;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    align-self: flex-end;
    margin-right: 0;
}

main .main-content .right-content .main-form-block .form form .input-group:has(label:has(img)) input:focus {
    letter-spacing: 3px;
}

main .main-content {
    padding-top: 18px;
    padding-bottom: 30px;
}

main .main-content .detail-wrapper {
    margin-bottom: 10px;
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
}

main .main-content .detail-wrapper.nowrap {
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
}

/* Гарантируем, что detail-wrapper не скрывает содержимое на любых размерах экрана */
@media (max-width: 2000px) {
    main .main-content .detail-wrapper {
        overflow: visible !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
    }
    
    main .main-content .detail-wrapper.nowrap {
        overflow: visible !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
    }
}

main .main-content .detail-wrapper .photo-content {
    width: 100%;
    max-width: 450px;
    overflow: visible !important;
    min-height: auto !important;
    height: auto !important;
}

/* Гарантируем, что photo-content не скрывает видео на любых размерах экрана */
@media (max-width: 2000px) {
    main .main-content .detail-wrapper .photo-content {
        overflow: visible !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
    }
}

main .main-content .detail-wrapper .photo-content .photo-gallery {
    width: 100%;
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo {
    width: 100%;
    margin-bottom: 20px;
    position: relative;
    border-radius: 16px;
    border: 2px solid transparent;
    transition: border .2s ease;
    overflow: visible;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo .photo-image-container {
    width: 100% !important;
    min-height: 300px;
    max-height: 600px !important;
    height: auto !important;
    aspect-ratio: auto !important;
    background: #000;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible;
    border-radius: 16px;
    position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 !important;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo a {
    width: 100% !important;
    height: 100% !important;
    min-height: 300px;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
    cursor: pointer;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo a img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 600px !important;
    object-fit: contain !important;
    display: block !important;
    background: #000 !important;
    vertical-align: middle;
    pointer-events: none;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo {
    display: flex;
    flex-flow: row wrap;
    margin: 0 -4px;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo {
    width: calc(33.33333333% - 8px);
    margin: 0 4px 8px 4px;
    height: 145px;
    max-width: 145px;
    border-radius: 16px;
    border: 2px solid transparent;
    transition: all .3s ease;
    position: relative;
    cursor: pointer;
    overflow: visible;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo:hover {
    border: 2px solid #8e723f;
}

/* Стили для секции видео */
main .main-content .detail-wrapper .photo-content .video-section {
    width: 100% !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    clear: both !important;
    box-sizing: border-box !important;
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 10 !important;
    overflow: visible !important;
}

main .main-content .detail-wrapper .photo-content .video-section h3 {
    color: #252525 !important;
    margin-bottom: 20px !important;
    font-size: 1.5rem !important;
    font-weight: bold !important;
    line-height: 1.2 !important;
    display: block !important;
    visibility: visible !important;
}

main .main-content .detail-wrapper .photo-content .video-section .row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin: 0 -4px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    visibility: visible !important;
}

main .main-content .detail-wrapper .photo-content .video-section .row > div {
    padding: 0 4px !important;
    margin-bottom: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    visibility: visible !important;
}

/* Универсальные стили для видео на всех размерах экрана - гарантируем видимость */
/* Эти стили должны применяться на ВСЕХ размерах экрана, включая промежуточные */
main .main-content .detail-wrapper .photo-content .video-section {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 100px !important;
}

main .main-content .detail-wrapper .photo-content .video-section h3 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

main .main-content .detail-wrapper .photo-content .video-section .row {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

main .main-content .detail-wrapper .photo-content .video-section .row > div {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

main .main-content .detail-wrapper .photo-content .video-section .video-item {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

main .main-content .detail-wrapper .photo-content .video-section .video-item video {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Медиа-запросы для всех размеров экрана - гарантируем видимость видео */
/* Охватываем все промежуточные размеры экрана */
@media (max-width: 2000px) {
    main .main-content .detail-wrapper .photo-content .video-section {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
    }
}

@media (max-width: 1200px) {
    main .main-content .detail-wrapper .photo-content .video-section {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}


@media (min-width: 768px) {
    main .main-content .detail-wrapper .photo-content .video-section .row > div.col-md-6 {
        width: 100% !important;
        display: block !important;
        visibility: visible !important;
    }
}

@media (min-width: 1201px) {
    main .main-content .detail-wrapper .photo-content .video-section .row > div.col-lg-4 {
        width: 100% !important;
        display: block !important;
        visibility: visible !important;
    }
}

main .main-content .detail-wrapper .photo-content .video-section .video-item {
    position: relative !important;
    padding-bottom: 65% !important;
    height: 0 !important;
    overflow: hidden !important;
    background: #000 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
    width: 100% !important;
    border: 2px solid rgba(142, 114, 63, 0.3) !important;
    display: block !important;
    visibility: visible !important;
}

main .main-content .detail-wrapper .photo-content .video-section .video-item video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block !important;
    visibility: visible !important;
    border-radius: 10px;
    background: transparent;
    z-index: 1;
}

/* Стилизация элементов управления видео-плеера */
main .main-content .detail-wrapper .photo-content .video-section .video-item video::-webkit-media-controls-current-time-display,
main .main-content .detail-wrapper .photo-content .video-section .video-item video::-webkit-media-controls-time-remaining-display {
    color: #fff;
    font-weight: bold;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo:hover:after {
    background-color: rgba(0, 0, 0, 0.5);
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo .photo-image-container {
    width: 100%;
    height: 100%;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    border-radius: 16px;
    position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
    pointer-events: none;
}

main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo:after {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: transparent;
    transition: background-color .2s ease;
    z-index: 1;
    pointer-events: none !important;
}

main .main-content .detail-wrapper .detail-content {
    width: 100%;
    padding-left: 20px;
}

main .main-content .detail-wrapper .detail-content h1 {
    font-size: 24px;
    margin-bottom: 25px;
    color: #e8f0ff;
    background: linear-gradient(135deg, #fff 0%, #40e0ff 50%, #c43cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

main .main-content .detail-wrapper .detail-content .details-card {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card {
    max-width: 337px;
    margin-bottom: 20px;
}

main .main-content .detail-wrapper .detail-content .details-card .photo-content {
    display: none !important;
    visibility: hidden !important;
}

/* Скрываем дублирующий блок фото в detail-content - перекрываем все существующие стили */
main .main-content .detail-wrapper .detail-content .details-card .photo-block,
main .main-content .detail-wrapper .detail-content .details-card .main-card.photo-block,
main .main-content .detail-wrapper .detail-content .details-card .main-card.photo-block .small-photo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card:nth-child(2) {
    max-width: 337px;
    margin-bottom: 20px;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin-bottom: 5px;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place .tel {
    font-weight: bold;
    font-size: 18px;
    color: var(--hi-green);
    text-decoration: none;
    text-shadow: 0 0 8px rgba(25,255,149,.4);
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place .img {
    width: 30px;
    display: inline-block;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place span {
    font-size: 14px;
    margin-top: 3px;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place span a {
    cursor: pointer;
    color: var(--hi-cyan);
    text-decoration: underline;
    font-weight: bold;
    transition: all 0.3s ease;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place span a:hover {
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .place span a:hover {
    text-decoration: none;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video {
    width: 100%;
    max-width: 125px;
    margin-right: 10px;
    position: relative;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video img {
    width: 100%;
    height: 100%;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video .play {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(255,255,255,.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(64,224,255,.3);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-21px, -21px, 0);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(64,224,255,.2);
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video .play .triangle {
    border: 10px solid transparent;
    border-left: 15px solid var(--hi-cyan);
    margin-left: 15px;
    transition: border-left-color 0.3s ease;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video .play:hover {
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border-color: rgba(64,224,255,.5);
    transform: translate3d(-21px, -21px, 0) scale(1.1);
    box-shadow: 0 6px 20px rgba(64,224,255,.4);
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-block .video .play:hover .triangle {
    border-left-color: white;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-text {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 5px 0;
    height: 90px;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-text span p {
    font-size: 16px;
    color: #252525;
    text-align: left;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-text span a {
    font-size: 14px;
    color: #fe0101;
    cursor: pointer;
    text-decoration: underline;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-text span a:hover {
    text-decoration: none;
}

main .main-content .detail-wrapper .detail-content .details-card .top-card .video-text p {
    font-size: 14px;
    color: #252525;
    text-align: left;
}

main .main-content .detail-wrapper .main-card {
    max-width: 337px;
    width: 100%;
    height: auto;
    background: var(--hi-panel);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    position: relative;
    z-index: 1;
    box-shadow: 0 10px 28px rgba(0,0,0,.42), 0 0 24px rgba(64,224,255,.07);
    border-radius: 14px;
    padding: 8px 8px 15px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

main .main-content .detail-wrapper .main-card:hover {
    border-color: rgba(64,224,255,.3);
    box-shadow: 
        0 20px 40px rgba(0,0,0,.4),
        0 0 30px rgba(64,224,255,.2);
}

main .main-content .detail-wrapper .main-card .title {
    width: 100%;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    padding: 10px 30px;
    text-align: left;
    color: white;
    font-size: 17px;
    font-weight: bold;
    border-radius: 8px;
    margin-bottom: 10px;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
    text-shadow: 0 1px 2px rgba(0,0,0,.2);
}

main .main-content .detail-wrapper .main-card .cost {
    margin-bottom: 13px;
}

main .main-content .detail-wrapper .main-card .inform {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

main .main-content .detail-wrapper .main-card .inform div {
    width: calc(50% - 6px);
    margin: 0 3px;
}

main .main-content .detail-wrapper .main-card .inform div p {
    font-size: 16px;
    line-height: 16px;
    color: #9bb7ff;
    font-weight: bold;
    margin-bottom: 7px;
}

main .main-content .detail-wrapper .main-card .inform div table {
    font-size: 15px;
}

main .main-content .detail-wrapper .main-card .inform div table td {
    padding: 3px 8px;
}

main .main-content .detail-wrapper .main-card .inform div .price {
    font-size: 17px;
    color: var(--hi-green);
    font-weight: bold;
    text-shadow: 0 0 8px rgba(25,255,149,.4);
}

main .main-content .detail-wrapper .main-card .inform .second {
    width: calc(100% - 6px);
    margin: -2px 3px;
}

main .main-content .detail-wrapper .main-card .inform .second table tr {
    background: rgba(64,224,255,.08);
    transition: all 0.3s ease;
}

main .main-content .detail-wrapper .main-card .inform .second table tr:hover {
    background: rgba(64,224,255,.12);
}

main .main-content .detail-wrapper .main-card .inform .second table tr td {
    padding: 4px 8px;
    width: 50%;
    color: #e8f0ff;
}

main .main-content .detail-wrapper .main-card .inform .second table tr:nth-of-type(odd) {
    background: rgba(196,60,255,.05);
}

main .main-content .detail-wrapper .detail-content .details-card .main-card.photo-block {
    display: none;
}

main .main-content .detail-wrapper .third {
    max-width: 100%;
}

/*main .main-content .detail-wrapper .third .inform {
          height: 110px; }*/
main .main-content .detail-wrapper .third .inform div {
    width: calc(50% - 6px);
    margin: -2px 3px;
}

main .main-content .detail-wrapper .third .inform div table tr {
    background: rgba(64,224,255,.08);
    transition: all 0.3s ease;
}

main .main-content .detail-wrapper .third .inform div table tr:hover {
    background: rgba(64,224,255,.12);
}

main .main-content .detail-wrapper .third .inform div table tr td {
    width: 45%;
    font-size: 15px;
    line-height: 1.286;
}

main .main-content .detail-wrapper .third .inform div table tr td {
    color: #e8f0ff;
}

main .main-content .detail-wrapper .third .inform div table tr td a {
    color: var(--hi-cyan);
    text-decoration: underline;
    cursor: pointer;
    font-weight: bold;
    transition: all 0.3s ease;
}

main .main-content .detail-wrapper .third .inform div table tr td a:hover {
    text-decoration: none;
    color: #fff;
    text-shadow: 0 0 10px rgba(64,224,255,.5);
}

main .main-content .detail-wrapper .third .inform div table tr:nth-of-type(odd) {
    background: rgba(196,60,255,.05);
}

main .main-content .detail-wrapper .third .inform div:last-child {
    font-size: 15px;
    color: #b8d4ff;
    padding-top: 5px;
}

main .main-content .detail-wrapper .third .inform .vertical-line {
    margin: 0 25px 0 12px;
    border-right: 1px solid rgba(64,224,255,.2);
}

main .main-content .detail-wrapper .fourth {
    padding: 8px;
    max-width: 100%;
    margin-bottom: 0;
}

main .main-content .detail-wrapper .fourth .maps {
    min-height: 320px;
    height: 320px;
}

main .main-content .detail-wrapper .fourth .maps #map {
    min-height: 320px;
    height: 320px;
}

/* Стили для карты на странице "Интим-карта" */
main .main-content .maps {
    width: 100%;
    min-height: 550px;
    height: calc(100vh - 370px);
    max-height: 100vh;
    margin-top: 20px;
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 
        0 8px 32px rgba(0,0,0,.12),
        0 0 40px rgba(64,224,255,.15),
        inset 0 1px 0 rgba(255,255,255,.05);
    padding: 0;
}

main .main-content .maps::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(64,224,255,.4) 20%,
        rgba(64,224,255,.6) 50%, 
        rgba(64,224,255,.4) 80%,
        transparent 100%);
    box-shadow: 
        0 0 20px rgba(64,224,255,.5),
        0 0 40px rgba(64,224,255,.3);
    z-index: 1;
}

main .main-content .maps #map {
    width: 100%;
    min-height: 550px;
    height: calc(100vh - 370px);
    max-height: 100vh;
    border-radius: 16px;
    position: relative;
    z-index: 0;
}

/* Центрируем заголовок на странице "Интим-карта" */
main .main-content h1:has(+ .maps),
main .main-content .maps + h1,
main .main-content h1 {
    text-align: center;
}

main .main-content .detail-wrapper .fourth .title {
    margin-bottom: 8px;
}

main .main-content .detail-wrapper .fourth .map {
    width: 100%;
    height: 100%;
    max-height: 299px;
    overflow: visible;
}

main .main-content .detail-wrapper .fourth .map img {
    width: 100%;
}

main .main-content .services {
    height: auto;
    background-color: white;
    position: relative;
    z-index: 1;
    box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.26);
    border-radius: 6px;
    padding: 8px 8px 15px;
    margin-bottom: 30px;
}

main .main-content .services .title {
    width: 100%;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    padding: 10px 30px;
    text-align: left;
    color: white;
    font-size: 17px;
    font-weight: bold;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
}

main .main-content .services .services-wrapper {
    padding: 0 25px;
}

main .main-content .services .services-wrapper p {
    font-size: 16px;
    color: #9bb7ff;
    font-weight: bold;
    margin-bottom: 13px;
}

main .main-content .services .services-wrapper ul li {
    font-size: 14px;
    margin-bottom: 6px;
    margin-left: 15px;
    list-style-type: none;
    position: relative;
}

main .main-content .services .services-wrapper ul li:hover a {
    color: var(--hi-cyan);
    text-shadow: 0 0 8px rgba(64,224,255,.5);
}

main .main-content .services .services-wrapper ul li a {
    color: #b8d4ff;
    text-decoration: none;
    transition: all 0.3s ease;
}

main .main-content .services .services-wrapper ul li:last-child {
    margin-bottom: 10px;
}

main .main-content .services .services-wrapper ul li:before {
    content: '';
    background: var(--hi-cyan);
    position: absolute;
    left: -15px;
    top: 9px;
    width: 10px;
    height: 2px;
    z-index: 2;
    box-shadow: 0 0 4px rgba(64,224,255,.5);
}

main .main-content .services .services-wrapper ul .active-service {
    font-weight: bold;
}

main .main-content .services .services-wrapper ul .active-service:hover a {
    text-decoration: underline;
}

main .main-content .services .services-wrapper ul .active-service a {
    color: #956a2c;
}

main .main-content .services .services-wrapper ul .active-service:before {
    content: '';
    background-color: #956a2c;
    position: absolute;
    left: -15px;
    top: 8px;
    width: 10px;
    height: 2px;
    z-index: 2;
}

main .main-content .services .services-wrapper ul .active-service:after {
    content: '';
    background-color: #956a2c;
    position: absolute;
    left: -11px;
    top: 4px;
    width: 2px;
    height: 10px;
    z-index: 2;
}

main .main-content .services .services-wrapper .lastUl li:last-child {
    margin-bottom: 0;
}

main .main-content .others .title,
main .main-content .others p.title {
    background: linear-gradient(135deg, #fff 0%, #40e0ff 50%, #c43cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-align: center !important;
    font-size: 24px;
    font-weight: 600;
    margin-top: 40px;
    margin-bottom: 30px;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block;
    text-shadow: 0 0 30px rgba(64,224,255,.3);
    letter-spacing: 0.5px;
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: 100% !important;
}

@media (max-width: 768px) {
    main .main-content .others .title,
    main .main-content .others p.title {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

main .main-content .others .girls {
    flex-wrap: nowrap;
    justify-content: space-between;
    margin-left: -5px;
    margin-right: -5px;
}

main .main-content .others .girls .cart {
    margin: 0 0 11px 17px;
    width: calc(25% - 17px) !important;
    max-width: calc(25% - 17px) !important;
    flex: 0 0 calc(25% - 17px) !important;
    padding: 11px 11px 7px 8px;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(64,224,255,.12);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 0 10px 28px rgba(0,0,0,.42), 0 0 24px rgba(64,224,255,.07);
    border-radius: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    z-index: 1;
    overflow: visible;
    box-sizing: border-box;
    cursor: pointer !important;
}

main .main-content .others .girls .cart::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(64,224,255,.05) 0%, rgba(196,60,255,.05) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 0;
    pointer-events: none;
}

main .main-content .others .girls .cart:hover {
    border: 1px solid rgba(64,224,255,.3);
    transform: translateY(-4px);
    box-shadow: 
        0 20px 40px rgba(0,0,0,.4),
        0 0 30px rgba(64,224,255,.2),
        inset 0 0 0 1px rgba(64,224,255,.3);
}

main .main-content .others .girls .cart:hover::before {
    opacity: 1;
}

main .main-content h1 {
    font-size: 24px;
    text-align: center;
}


main .search-container {
    padding-bottom: 20px;
}

main .main-content {
    padding-bottom: 20px;
}

main .main-content h1 {
    font-size: 24px;
}

main .main-content .search {
    margin-top: 20px;
}

main .main-content .search form {
    width: 100%;
}

main .main-content .search form .item {
    border: 1px solid rgba(64,224,255,.12);
    border-radius: 12px;
    background: var(--hi-panel);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 0 10px 28px rgba(0,0,0,.42), 0 0 24px rgba(64,224,255,.07);
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
}

main .main-content .search form .item .title {
    border-radius: 8px;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    border: 1px solid rgba(64,224,255,.3);
    width: 100%;
    font-weight: bold;
    padding: 10px 20px;
    color: white;
    cursor: pointer;
    font-size: 14px;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
    position: relative;
}

main .main-content .search form .item .title::after {
    content: '';
    position: absolute;
    top: 42%;
    display: none;
    right: 14px;
    z-index: 1;
    width: 9px;
    height: 8px;
    background-image: url("../image/piramid.png");
    transition: all .2s ease;
}

main .main-content .search form .item .item-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
}

main .main-content .search form .item .item-wrapper div {
    padding: 15px 5px 10px;
    width: 20%;
}

main .main-content .search form .item .item-wrapper div .checkBox {
    margin-bottom: 5px;
    padding-left: 20px;
    font-size: 12px;
    display: block;
    text-decoration: none;
    margin-right: 0;
}

main .main-content .search form .item .item-wrapper div .checkBox .checkmark {
    top: 0;
    height: 15px;
    width: 15px;
    border-radius: 1px;
}

main .main-content .search form .item .item-wrapper div .checkBox .checkmark::after {
    left: 3px;
    top: 2px;
    width: 10px;
    height: 9px;
}

main .main-content .search form .item-top {
    padding: 20px;
}


.changeChose .checkBox .checkmark {
    top: 50%;
    transform: translateY(-50%);
    left: 12px;
    height: 18px;
    width: 18px;
    border-radius: 4px;
    background: rgba(64,224,255,.15);
    border: 1px solid rgba(64,224,255,.3);
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
}

.changeChose .checkBox:hover .checkmark {
    background: rgba(64,224,255,.25);
    border-color: rgba(64,224,255,.5);
    box-shadow: 0 0 8px rgba(64,224,255,.3);
}

.changeChose .active-checkBox .checkmark {
    background: rgba(255,255,255,.3);
    border-color: rgba(255,255,255,.5);
    box-shadow: 0 0 10px rgba(255,255,255,.4);
}

.changeChose .checkBox .checkmark::after {
    left: 4px;
    top: 3px;
    width: 10px;
    height: 9px;
    filter: brightness(0) invert(1) drop-shadow(0 0 4px rgba(64,224,255,.8));
}

main .main-content .search form .buttons {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    padding: 0 10px;
}

main .main-content .search form .buttons button {
    font-size: 14px;
    color: white;
    line-height: 30px;
    text-align: center;
    width: 115px;
    height: 30px;
    border: 1px solid rgba(64,224,255,.3);
    border-radius: 8px;
    background: linear-gradient(135deg, var(--hi-cyan) 0%, var(--hi-mag) 100%);
    margin-right: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(64,224,255,.25);
    font-weight: 600;
}

main .main-content .search form .buttons button:hover {
    background: linear-gradient(135deg, var(--hi-mag) 0%, var(--hi-cyan) 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(64,224,255,.35);
}

main .main-content .search form .buttons button:hover:last-child {
    background: linear-gradient(135deg, rgba(196,60,255,.8) 0%, rgba(64,224,255,.8) 100%);
}

main .main-content .search form .buttons button:last-child {
    margin-right: 0;
    background: linear-gradient(135deg, rgba(107,81,44,.8) 0%, rgba(90,69,32,.8) 100%);
    border-color: rgba(64,224,255,.2);
}

/* ===== ПРЕМИУМ СТИЛИ ДЛЯ ФУТЕРА ===== */
footer {
    background: linear-gradient(135deg, rgba(7, 11, 22, 0.85) 0%, rgba(7, 11, 22, 0.75) 100%);
    backdrop-filter: blur(25px) saturate(180%);
    padding: 30px 0;
    box-shadow: 
        0 -25px 50px rgba(0,0,0,.5),
        0 0 40px rgba(64,224,255,.15);
    position: relative;
    overflow: visible;
}

/* Контейнер футера - такая же ширина, как основной контейнер */
footer .container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
    position: relative;
}

@media (min-width: 576px) {
    footer .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    footer .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    footer .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    footer .container {
        max-width: 1168px;
    }
}


footer .footer-block {
    font-size: 14px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    color: #b8d4ff;
    line-height: 1.6;
    position: relative;
    z-index: 1;
}

/* Верхняя часть футера - теперь объединена с нижней в одну строку */
footer .footer-block .footer-top {
    display: flex;
    align-items: center;
    gap: 20px;
    flex: 1;
}

footer .footer-block .footer-left {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

footer .footer-block .footer-center {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1;
    justify-content: center;
}

footer .footer-block .footer-text {
    color: rgba(64,224,255,.8);
    font-size: 14px;
    text-shadow: 0 0 8px rgba(64,224,255,.3);
    font-weight: 500;
    transition: all 0.3s ease;
}

/* Ссылки в футере */
footer .footer-block .footer-link {
    color: var(--hi-cyan);
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    padding: 4px 10px;
    border-radius: 6px;
    background: rgba(64,224,255,.08);
    border: 1px solid rgba(64,224,255,.2);
    font-size: 12px;
    display: inline-block;
    white-space: nowrap;
}

footer .footer-block .footer-link::before {
    display: none !important; /* убираем подчёркивание/линию */
    content: none !important;
}

footer .footer-block .footer-link:hover {
    color: #fff;
    background: rgba(64,224,255,.15);
    border-color: rgba(64,224,255,.4);
    text-shadow: 0 0 10px rgba(64,224,255,.8);
    transform: translateY(-1px);
    box-shadow: 0 2px 12px rgba(64,224,255,.3);
}

footer .footer-block .footer-link:hover::before {
    width: 0 !important;
}

/* Нижняя часть футера (копирайт) - теперь в одной строке */
footer .footer-block .footer-bottom {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

footer .footer-block .footer-copyright {
    margin: 0;
    padding: 0;
    font-size: 13px;
    color: rgba(64,224,255,.8);
    font-weight: 500;
    white-space: nowrap;
    text-shadow: 0 0 8px rgba(64,224,255,.3);
    transition: all 0.3s ease;
}

/* Мобильная версия футера */
@media (max-width: 1200px) {
    footer {
        padding: 18px 0;
        border-top-width: 1px;
    }
    
    footer .footer-block {
        font-size: 12px;
        gap: 10px;
        padding: 0 12px;
        flex-direction: column;
        align-items: center;
    }
    
    footer .footer-block .footer-top {
        flex-direction: row;
        align-items: center;
        gap: 6px;
        padding-bottom: 10px;
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    footer .footer-block .footer-left {
        width: auto;
        justify-content: center;
    }
    
    footer .footer-block .footer-center {
        width: auto;
        justify-content: center;
        flex-direction: row;
        text-align: center;
        gap: 3px;
        flex-wrap: wrap;
    }
    
    footer .footer-block .footer-link {
        width: auto;
        min-width: auto;
        text-align: center;
        padding: 3px 8px;
        font-size: 10px;
        white-space: nowrap;
    }
    
    footer .footer-block .footer-text {
        font-size: 10px;
        line-height: 1.2;
        white-space: nowrap;
    }
    
    footer .footer-block .footer-bottom {
        width: 100%;
        justify-content: center;
        padding-top: 8px;
        border-top: 1px solid rgba(64,224,255,.15);
    }
    
    footer .footer-block .footer-copyright {
        font-size: 11px;
        text-align: center;
    }
}

@media (max-width: 576px) {
    footer {
        padding: 14px 0;
    }
    
    footer .footer-block {
        font-size: 11px;
        gap: 8px;
        padding: 0 10px;
    }
    
    footer .footer-block .footer-top {
        gap: 3px;
        padding-bottom: 8px;
        flex-wrap: wrap;
    }
    
    footer .footer-block .footer-link {
        font-size: 9px;
        padding: 3px 6px;
        min-width: auto;
    }
    
    footer .footer-block .footer-text {
        font-size: 9px;
        line-height: 1.1;
    }
    
    footer .footer-block .footer-center {
        gap: 3px;
    }
    
    footer .footer-block .footer-bottom {
        padding-top: 6px;
    }
    
    footer .footer-block .footer-copyright {
        font-size: 10px;
    }
}

@media (max-width: 1200px) {
    header .top-line .container.row .logo, header .top-line .container .row .logo {
        margin-right: 0;
    }

    header .top-line .change-city {
        margin-right: 0;
        text-align: center;
    }

    header .top-line .menu {
        clear: both;
        width: 100%;
        text-align: center;
        padding: 0 0 15px;
    }

    header .top-line .selectSlut {
        text-align: right;
    }

    main .main-content {
        padding-top: 8px;
        padding-bottom: 21px;
    }

    main .main-content .left-content {
        max-width: 269px;
        min-width: 269px;
    }

    main .main-content .right-content {
        padding-left: 20px;
    }

    main .main-content .right-content .content-block {
        padding: 20px 0 8px 0;
        margin: 0 0 0 -18px;
    }

    main .main-content .right-content .cart {
        max-width: 100%;
        width: calc(50% - 17px);
        box-sizing: padding-box;
    }

    main .main-content {
        padding-top: 20px;
        padding-bottom: 30px;
    }

    main .main-content .detail-wrapper {
        margin-bottom: 10px;
    }

    main .main-content .detail-wrapper .photo-content {
        width: 100%;
        max-width: 450px;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery {
        width: 100%;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo {
        width: 100%;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo .photo-image-container img {
        object-fit: contain;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo {
        margin: 0 -4px;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo {
        width: calc(33.33333333% - 8px);
        margin: 0 4px 8px 4px;
        height: 145px;
        max-width: 145px;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo .photo-image-container img {
        object-fit: contain;
    }

    main .main-content .detail-wrapper .detail-content {
        padding-left: 20px;
        padding-right: 0;
    }

    main .main-content .detail-wrapper .detail-content h1 {
        font-size: 24px;
        margin-bottom: 25px;
    }

    main .main-content .detail-wrapper .detail-content .details-card .top-card {
        max-width: 100%;
        margin-bottom: 20px;
    }

    main .main-content .detail-wrapper .main-card {
        max-width: 100%;
    }

    main .main-content .detail-wrapper .main-card .title {
        padding: 10px 30px;
        font-size: 17px;
    }

    main .main-content .detail-wrapper .main-card .cost {
        margin-bottom: 13px;
    }

    main .main-content .detail-wrapper .main-card .inform div {
        width: calc(50% - 6px);
        margin: 0 3px;
    }

    main .main-content .detail-wrapper .main-card .inform div h6 {
        font-size: 16px;
        line-height: 16px;
        margin-bottom: 6px;
    }

    main .main-content .detail-wrapper .main-card .inform div table {
        font-size: 15px;
    }

    main .main-content .detail-wrapper .main-card .inform div table td {
        padding: 3px 8px;
    }

    main .main-content .detail-wrapper .main-card .inform div .price {
        font-size: 17px;
    }

    main .main-content .detail-wrapper .main-card .inform .second {
        width: calc(100% - 6px);
        margin: -2px 3px;
    }

    main .main-content .detail-wrapper .main-card .inform .second table tr td {
        padding: 4px 8px;
    }

    main .main-content .detail-wrapper .third {
        max-width: 100%;
    }

    main .main-content .detail-wrapper .third .inform div {
        width: calc(50% - 6px);
        margin: -2px 3px;
    }

    main .main-content .detail-wrapper .third .inform div table tr td {
        width: 45%;
        font-size: 14px;
    }

    main .main-content .detail-wrapper .third .inform div:last-child {
        font-size: 15px;
    }

    main .main-content .detail-wrapper .third .inform .vertical-line {
        margin: 0 25px 0 12px;
        border-right: 1px solid #bababa;
    }

    main .main-content .detail-wrapper .fourth {
        padding: 8px;
        max-width: 100%;
        margin-bottom: 0;
    }

    main .main-content .detail-wrapper .fourth .title {
        margin-bottom: 8px;
    }

    main .main-content .detail-wrapper .fourth .map {
        width: 100%;
        height: 100%;
        max-height: 299px;
    }

    main .main-content .detail-wrapper .fourth .map img {
        width: 100%;
    }

    main .main-content .others .girls {
        margin-left: -5px;
        margin-right: -5px;
    }

    main .main-content .others .girls .cart {
        margin: 0 5px;
        width: calc(33.333333333% - 10px);
    }
}

@media (max-width: 1200px) {

    .button-to-top {
        bottom: 30px;
        right: 30px;
        width: 50px;
        height: 50px;
    }

    .button-to-top img {
        width: 30px;
        height: 17px;
    }


    header .top-line {
        box-shadow: 0 0 5px 0;
    }

    /* Кнопка "Добавить анкету" на мобильных */
    header .top-line .menu li .add-profile-btn {
        font-size: 13px;
        padding: 8px 14px;
    }

    header .medium-line {
        display: block;
        height: 200px;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
        position: relative;
        z-index: 1;
        scroll-behavior: smooth;
        /* Скрываем scrollbar, но оставляем прокрутку */
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE и Edge */
    }
    
    /* Скрываем scrollbar для WebKit браузеров в мобильной версии */
    @media (max-width: 1200px) {
        header .medium-line::-webkit-scrollbar {
            display: none;
            width: 0;
            height: 0;
        }
    }
    
    header .medium-line .wrapper-girls-item {
        height: 100%;
        display: inline-block;
        white-space: nowrap;
        padding: 0;
        /* Убираем min-width: 100%, чтобы контент мог быть шире экрана */
        width: auto;
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl {
        display: inline-block;
        vertical-align: top;
        width: 126.67px;
        min-width: 126.67px;
        height: 100%;
        margin: 0;
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: brightness(0.95);
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl::before {
        background: rgba(0, 0, 0, 0.1);
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 45px;
        z-index: 4;
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .name {
        width: 100%;
        height: 23px;
        font-size: 13.45px;
        line-height: 25px;
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .cost {
        height: 22px;
        font-size: 13.45px;
        line-height: 22px;
    }
    
    header .medium-line .wrapper-girls-item .mini-cart-girl .girls-text .cost span {
        font-size: 11px;
    }


    .changeChose .checkBox .checkmark {
        position: absolute;
        top: -3px;
        left: 0;
        height: 25px;
        width: 25px;
        border-radius: 3px;
    }

    main .main-content {
        padding: 8px 0 21px;
        position: relative;
        z-index: 1;
    }

    main .main-content .nowrap {
        flex-wrap: wrap;
    }

    main .main-content .left-content {
        max-width: 100%;
        min-width: 100%;
    }
    
    /* Убеждаемся, что карточки анкет не перекрывают выпадающие списки */
    main .main-content .right-content .cart,
    main .main-content .others .girls .cart {
        position: relative;
        z-index: 1;
    }

    main .main-content .left-content .hideWrapper {
        display: block;
    }

    main .main-content .left-content .selectWrapper {
        border-radius: 6px;
        padding: 12px;
        display: none;
    }

    main .main-content .left-content .selectWrapper .kindOfSelect .buttons {
        width: 100%;
    }

    main .main-content .left-content .selectWrapper .kindOfSelect .buttons a {
        width: calc(50% - 14px);
    }

    main .main-content .right-content {
        padding-left: 0;
    }

    main .main-content .right-content .top-block div p {
        margin-top: 9px;
    }

    main .main-content .right-content .pagination {
        font-size: 14px;
    }

    main .main-content .right-content .pagination .currentPage {
        font-size: 16px;
    }

    main .main-content .right-content .top-block {
        padding-top: 15px;
    }

    main .main-content .right-content .top-block p {
        font-size: 24px;
    }

    main .main-content .right-content .content-block {
        padding: 20px 0 8px 0;
        margin: 15px 0 0 -16px;
    }

    main .main-content .right-content .cart {
        padding: 11px 11px 7px 8px;
        margin: 0 0 11px 16px;
        width: calc(50% - 16px);
        box-sizing: padding-box;
    }
    
    /* Убеждаемся, что контейнер для фото/видео имеет правильные размеры в мобильной версии */
    main .main-content .right-content .cart .left-block {
        width: 180px !important; /* Вертикальный формат 3:4 - уменьшено для мобильной версии */
        height: 280px !important; /* Вертикальный формат 3:4 (180px × 280px) */
        flex-shrink: 0 !important;
    }
    
    main .main-content .right-content .cart .left-block a {
        width: 100% !important;
        height: 100% !important;
        min-height: 280px !important; /* Вертикальный формат 3:4 */
        max-height: 280px !important; /* Вертикальный формат 3:4 */
    }
    
    main .main-content .right-content .cart .left-block a img,
    main .main-content .right-content .cart .left-block a video,
    main .main-content .right-content .cart .left-block a .animated-photo {
        width: 100% !important;
        height: 100% !important;
        max-width: 180px !important; /* Вертикальный формат 3:4 - уменьшено для мобильной версии */
        max-height: 280px !important; /* Вертикальный формат 3:4 */
        min-height: 280px !important; /* Вертикальный формат 3:4 */
        object-fit: contain !important;
        object-position: center !important;
    }

    main .main-content {
        padding-bottom: 20px;
    }

    main .main-content h2 {
        font-size: 24px;
        margin-bottom: 20px;
    }

    main .main-content .search form {
        width: 100%;
    }

    main .main-content .search form .item {
        margin-bottom: 10px;
    }

    main .main-content .search form .item .item-wrapper {
        margin-top: 10px;
    }

    main .main-content .search form .item .item-wrapper div {
        padding: 0 5px 0;
        width: 25%;
    }

    main .main-content .search form .item .item-wrapper div h5 {
        font-size: 14px;
        margin-left: 18px;
        margin-bottom: 10px;
        margin-top: 10px;
    }

    main .main-content .search form .buttons button {
        font-size: 14px;
        line-height: 30px;
        width: 115px;
        height: 30px;
    }

    main .main-content {
        padding-top: 20px;
        padding-bottom: 30px;
    }

    main .main-content .detail-wrapper {
        margin-bottom: 10px;
    }

    main .main-content .detail-wrapper .photo-content {
        width: 100%;
        max-width: 450px;
        margin: 0 auto 20px;
        display: none;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery {
        width: 100%;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo {
        width: 100%;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .big-photo .photo-image-container img {
        object-fit: contain;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo {
        margin: 0 -4px;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo {
        width: calc(33.33333333% - 8px);
        margin: 0 4px 8px 4px;
        height: 145px;
        max-width: 145px;
    }

    main .main-content .detail-wrapper .photo-content .photo-gallery .small-photo .photo .photo-image-container img {
        object-fit: contain;
    }

    main .main-content .detail-wrapper .detail-content {
        padding-left: 0;
        padding-right: 0;
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card.photo-block {
        display: none !important;
        visibility: hidden !important;
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card .small-photo {
        display: flex;
        flex-flow: row wrap;
        margin: 0 -4px;
        gap: 8px;
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card .small-photo a {
        width: calc(33.33333333% - 8px);
        margin: 0 4px 8px 4px;
        height: 145px;
        max-width: 145px;
        border-radius: 16px;
        border: 2px solid transparent;
        transition: all .3s ease;
        position: relative;
        cursor: pointer;
        overflow: visible;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
        display: block;
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card .small-photo a:hover {
        border: 2px solid #8e723f;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
        transform: scale(1.02);
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card .small-photo a .photo-image-container {
        width: 100%;
        height: 100%;
        background: #000;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: visible;
        border-radius: 16px;
        position: relative;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }

    main .main-content .detail-wrapper .detail-content .details-card .main-card .small-photo a img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
        display: block;
    }

    main .main-content .detail-wrapper .detail-content h1 {
        font-size: 24px;
        margin-bottom: 25px;
    }

    main .main-content .detail-wrapper .detail-content .details-card .top-card {
        max-width: 100%;
        margin-bottom: 20px;
    }

    main .main-content .detail-wrapper .main-card {
        max-width: 100%;
    }

    main .main-content .detail-wrapper .main-card .title {
        padding: 10px 30px;
        font-size: 17px;
    }

    main .main-content .detail-wrapper .main-card .cost {
        margin-bottom: 13px;
    }

    main .main-content .detail-wrapper .main-card .inform div {
        width: calc(50% - 6px);
        margin: 0 3px;
    }

    main .main-content .detail-wrapper .main-card .inform div h6 {
        font-size: 16px;
        line-height: 16px;
        margin-bottom: 6px;
    }

    main .main-content .detail-wrapper .main-card .inform div table {
        font-size: 15px;
    }

    main .main-content .detail-wrapper .main-card .inform div table td {
        padding: 3px 8px;
    }

    main .main-content .detail-wrapper .main-card .inform div .price {
        font-size: 17px;
    }

    main .main-content .detail-wrapper .main-card .inform .second {
        width: calc(100% - 6px);
        margin: -2px 3px;
    }

    main .main-content .detail-wrapper .main-card .inform .second table tr td {
        padding: 4px 8px;
    }

    main .main-content .detail-wrapper .third {
        max-width: 100%;
    }

    main .main-content .detail-wrapper .third .inform div {
        width: calc(50% - 6px);
        margin: -2px 3px;
    }

    main .main-content .detail-wrapper .third .inform div table tr td {
        width: 45%;
        font-size: 14px;
    }

    main .main-content .detail-wrapper .third .inform div:last-child {
        font-size: 15px;
    }

    main .main-content .detail-wrapper .third .inform .vertical-line {
        margin: 0 25px 0 12px;
        border-right: 1px solid #bababa;
    }

    main .main-content .detail-wrapper .fourth {
        padding: 8px;
        max-width: 100%;
        margin-bottom: 0;
    }

    main .main-content .detail-wrapper .fourth .title {
        margin-bottom: 8px;
    }

    main .main-content .detail-wrapper .fourth .map {
        width: 100%;
        height: 100%;
        min-height: 299px;
    }

    main .main-content .detail-wrapper .fourth .map img {
        width: 100%;
        min-height: 299px;
    }

    main .main-content .services {
        margin-right: 0;
    }

    main .main-content .services .services-wrapper .lastUl li:last-child {
        margin-bottom: 10px;
    }

    main .main-content .others .girls {
        flex-wrap: wrap;
        margin-left: -5px;
        margin-right: -5px;
        justify-content: flex-start;
    }

    main .main-content .others .girls .cart {
        margin: 0 0 11px 16px;
        width: calc(50% - 16px) !important;
        max-width: calc(50% - 16px) !important;
        flex: 0 0 calc(50% - 16px) !important;
        padding: 11px 11px 7px 8px;
        box-sizing: border-box;
    }
}

main .main-content .others .girls .cart .infMedium a {
    position: relative;
    overflow: visible;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.3s ease;
    border-radius: 8px;
    display: block;
    width: 210px !important; /* Вертикальный формат 3:4, как на главной */
    height: 280px !important; /* Вертикальный формат 3:4 (210px × 280px) */
    min-height: 280px !important; /* Минимальная высота */
    max-height: 280px !important; /* Ограничиваем максимальную высоту */
}

main .main-content .others .girls .cart .infMedium a:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

main .main-content .others .girls .cart .infMedium a img {
    object-fit: contain !important;
    object-position: center !important;
    background: transparent;
    position: relative;
    z-index: 3;
    pointer-events: auto;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
                opacity 0.3s ease,
                filter 0.3s ease;
    /* Убрали анимацию breathe (эффект дыхания) для обычных фото */
    animation: none !important;
    will-change: auto;
    transform-origin: center center;
    width: 100% !important;
    height: 100% !important;
    max-width: 210px !important; /* Ширина контейнера для вертикального формата 3:4 */
    max-height: 280px !important; /* Высота контейнера для вертикального формата 3:4 */
    min-height: 280px !important; /* Минимальная высота для вертикального формата */
    /* Применяем стили hover к обычному состоянию */
    transform: scale(1.05);
    filter: brightness(1.1) drop-shadow(0 0 10px rgba(64,224,255,.3));
}

main .main-content .others .girls .cart .infMedium a:hover img {
    /* Оставляем те же стили, что и в обычном состоянии (уже применены) */
    transform: scale(1.05);
    filter: brightness(1.1) drop-shadow(0 0 10px rgba(64,224,255,.3));
    /* Убрали анимацию gentleSway (эффект покачивания) для обычных фото */
    animation: none !important;
}

main .main-content .others .girls .cart .infMedium a {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
}

/* Стили для видео в разделе "Девушки поблизости" - такие же размеры, как на главной */
main .main-content .others .girls .cart .infMedium a video,
main .main-content .others .girls .cart .infMedium a .animated-photo,
main .main-content .others .girls .cart .infMedium .left-block a video,
main .main-content .others .girls .cart .infMedium .left-block .animated-photo {
    width: 100% !important;
    height: 100% !important;
    max-width: 210px !important;
    max-height: 280px !important;
    min-height: 280px !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Если в разделе "Девушки поблизости" используется .left-block, применяем те же размеры */
main .main-content .others .girls .cart .left-block,
main .main-content .others .girls .cart .infMedium .left-block {
    width: 210px !important;
    height: 280px !important;
    min-height: 280px !important;
    max-height: 280px !important;
}

main .main-content .others .girls .cart .left-block a,
main .main-content .others .girls .cart .infMedium .left-block a {
    width: 100% !important;
    height: 100% !important;
    min-height: 280px !important;
    max-height: 280px !important;
}

main .main-content .others .girls .cart .infMedium a .blur-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

/* Мобильная версия - унифицированные размеры для главной и "Девушки поблизости" */
@media (max-width: 1200px) {
    /* Контейнеры фото - одинаковые размеры */
    main .main-content .others .girls .cart .left-block,
    main .main-content .others .girls .cart .infMedium .left-block {
        width: 185px !important;
        height: 285px !important;
        min-width: 185px !important;
        min-height: 285px !important;
        max-width: 185px !important;
        max-height: 285px !important;
    }
    
    /* Фото - одинаковые размеры и стили */
    main .main-content .others .girls .cart .infMedium a img,
    main .main-content .others .girls .cart .infMedium .left-block img,
    main .main-content .others .girls .cart .left-block img {
        max-width: 185px !important;
        width: 185px !important;
        height: 285px !important;
        min-width: 185px !important;
        min-height: 285px !important;
        object-fit: cover !important;
        border-radius: 10px !important;
    }
    
    /* Видео и анимированные фото - одинаковые размеры */
    main .main-content .others .girls .cart .infMedium a video,
    main .main-content .others .girls .cart .infMedium a .animated-photo,
    main .main-content .others .girls .cart .infMedium .left-block video,
    main .main-content .others .girls .cart .infMedium .left-block .animated-photo,
    main .main-content .others .girls .cart .left-block video,
    main .main-content .others .girls .cart .left-block .animated-photo {
        max-width: 185px !important;
        width: 185px !important;
        height: 285px !important;
        min-width: 185px !important;
        min-height: 285px !important;
        object-fit: cover !important;
        border-radius: 10px !important;
        transform: scale(1.05) !important;
        transform-origin: center center !important;
    }
}



/*@media (max-width: 360px){
	main{
		padding-bottom: 117px;
	}
}*/
/* МАКСИМАЛЬНО АГРЕССИВНОЕ скрытие play button для мобильных */
@media (max-width: 1200px) {
    /* Скрываем ВСЕ дочерние элементы внутри video с controls или paused */
    video.animated-photo[controls] *,
    video.animated-photo[controls="true"] *,
    .cart .infMedium div a video.animated-photo[controls] *,
    .cart .infMedium div a video.animated-photo[controls="true"] *,
    video.animated-photo[paused] *,
    .cart .infMedium div a video.animated-photo[paused] * {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        pointer-events: none !important;
        z-index: -9999 !important;
        position: absolute !important;
        left: -9999px !important;
        top: -9999px !important;
    }
}

/* Убираем нативную кнопку Play и панель управления у превью-видео */
/* Высокая специфичность для гарантированного применения на всех устройствах */
/* КРИТИЧНО: Применяем ко ВСЕМ состояниям видео */
video.animated-photo::-webkit-media-controls,
.cart .infMedium div a video.animated-photo::-webkit-media-controls,
main .main-content .cart video.animated-photo::-webkit-media-controls,
video.animated-photo::-webkit-media-controls-enclosure,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-enclosure,
main .main-content .cart video.animated-photo::-webkit-media-controls-enclosure,
video.animated-photo::-webkit-media-controls-panel,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-panel,
main .main-content .cart video.animated-photo::-webkit-media-controls-panel,
video.animated-photo::-webkit-media-controls-play-button,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-play-button,
main .main-content .cart video.animated-photo::-webkit-media-controls-play-button,
video.animated-photo::-webkit-media-controls-start-playback-button,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-start-playback-button,
main .main-content .cart video.animated-photo::-webkit-media-controls-start-playback-button,
video.animated-photo::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-play-button,
main .main-content .cart video.animated-photo::-webkit-media-controls-overlay-play-button,
main .main-content .cart video.animated-photo::-webkit-media-controls-start-playback-button,
video.animated-photo::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-play-button,
main .main-content .cart video.animated-photo::-webkit-media-controls-overlay-play-button {
    display: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    z-index: -9999 !important;
}

/* На всякий случай убираем внутренний фокус у Firefox */
video.animated-photo::-moz-focus-inner,
.cart .infMedium div a video.animated-photo::-moz-focus-inner {
    border: 0 !important;
    outline: none !important;
}

/* Дополнительное скрытие для iOS Safari - скрываем все возможные overlay элементы */
@supports (-webkit-touch-callout: none) {
    video.animated-photo::-webkit-media-controls-overlay-enclosure,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-enclosure,
    main .main-content .cart video.animated-photo::-webkit-media-controls-overlay-enclosure {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    
    /* Скрываем все псевдоэлементы, которые могут быть кнопками */
    video.animated-photo::before,
    video.animated-photo::after,
    .cart .infMedium div a video.animated-photo::before,
    .cart .infMedium div a video.animated-photo::after {
        display: none !important;
        content: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
}

/* Дополнительный класс для принудительного скрытия контролов на мобильных */
video.animated-photo.no-controls,
.cart .infMedium div a video.animated-photo.no-controls,
main .main-content .cart video.animated-photo.no-controls {
    -webkit-appearance: none !important;
    appearance: none !important;
}

video.animated-photo.no-controls::-webkit-media-controls,
video.animated-photo.no-controls::-webkit-media-controls-enclosure,
video.animated-photo.no-controls::-webkit-media-controls-panel,
video.animated-photo.no-controls::-webkit-media-controls-play-button,
video.animated-photo.no-controls::-webkit-media-controls-start-playback-button,
video.animated-photo.no-controls::-webkit-media-controls-overlay-play-button,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls-enclosure,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls-panel,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls-play-button,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls-start-playback-button,
.cart .infMedium div a video.animated-photo.no-controls::-webkit-media-controls-overlay-play-button {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    z-index: -9999 !important;
}

/* КРИТИЧНО: УНИЧТОЖЕНИЕ кнопки Play на мобильных iOS Safari - МАКСИМАЛЬНО АГРЕССИВНО */
@media (max-width: 1200px) {
    /* НЕ скрываем контейнеры через CSS - это делает JS после загрузки */
    /* Показываем только после того, как видео запустилось (класс добавит JS) */
    .cart .infMedium .left-block.video-started:has(video.animated-photo),
    .cart .infMedium div a.video-started:has(video.animated-photo) {
        opacity: 1 !important;
        visibility: visible !important;
        height: auto !important;
        overflow: visible !important;
    }
    
    /* Скрываем ВСЕ возможные проявления кнопки Play */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo,
    main .main-content .cart video.animated-photo {
        -webkit-appearance: none !important;
        appearance: none !important;
        overflow: hidden !important;
        /* Используем clip-path для полного обрезания контролов */
        clip-path: inset(0) !important;
    }
    
    /* УНИЧТОЖАЕМ overlay кнопку Play - ВСЕ ВОЗМОЖНЫЕ СПОСОБЫ */
    video.animated-photo::-webkit-media-controls-overlay-enclosure,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-enclosure,
    main .main-content .cart video.animated-photo::-webkit-media-controls-overlay-enclosure,
    video.animated-photo::-webkit-media-controls-overlay-play-button,
    .cart .infMedium div a video.animated-photo::-webkit-media-controls-overlay-play-button,
    main .main-content .cart video.animated-photo::-webkit-media-controls-overlay-play-button {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        position: absolute !important;
        left: -9999px !important;
        top: -9999px !important;
        right: -9999px !important;
        bottom: -9999px !important;
        z-index: -9999 !important;
        transform: scale(0) !important;
        transform-origin: center !important;
        clip-path: inset(100%) !important;
        clip: rect(0, 0, 0, 0) !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        background: none !important;
        background-image: none !important;
        filter: opacity(0) !important;
    }
    
    /* УНИЧТОЖАЕМ все псевдоэлементы */
    video.animated-photo::before,
    video.animated-photo::after,
    .cart .infMedium div a video.animated-photo::before,
    .cart .infMedium div a video.animated-photo::after {
        display: none !important;
        content: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        transform: scale(0) !important;
        clip-path: inset(100%) !important;
    }
    
    /* УНИЧТОЖАЕМ все дочерние элементы внутри video */
    video.animated-photo > *:not(source):not(img),
    .cart .infMedium div a video.animated-photo > *:not(source):not(img) {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        transform: scale(0) !important;
        clip-path: inset(100%) !important;
    }
    
    /* ДОПОЛНИТЕЛЬНО: Перекрываем весь video прозрачным слоем для скрытия контролов */
    video.animated-photo,
    .cart .infMedium div a video.animated-photo {
        position: relative !important;
    }
    
    /* Создаем невидимый слой поверх видео, который перекрывает контролы */
    .cart .infMedium div a:has(video.animated-photo)::after {
        content: '' !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: transparent !important;
        z-index: 9998 !important;
        pointer-events: none !important;
    }
    
    /* УНИЧТОЖАЕМ все возможные SVG иконки */
    video.animated-photo svg,
    video.animated-photo path,
    video.animated-photo circle,
    video.animated-photo polygon,
    video.animated-photo rect,
    .cart .infMedium div a video.animated-photo svg,
    .cart .infMedium div a video.animated-photo path,
    .cart .infMedium div a video.animated-photo circle,
    .cart .infMedium div a video.animated-photo polygon,
    .cart .infMedium div a video.animated-photo rect {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        transform: scale(0) !important;
        clip-path: inset(100%) !important;
    }
}


/* ========== ФИНАЛЬНЫЕ СТИЛИ ЛОКАЦИЙ - МАКСИМАЛЬНЫЙ ПРИОРИТЕТ ========== */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    padding: 16px 18px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 12px !important;
    min-height: 60px !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    color: rgba(255,255,255,0.9) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a:hover {
    background: rgba(64,224,255,0.1) !important;
    border-color: rgba(64,224,255,0.3) !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Иконки локаций — как в десктопе: без квадратов */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a i.bi {
    font-size: 16px !important;
    margin-right: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    min-width: auto !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    position: relative !important;
    z-index: 2 !important;
    flex-shrink: 0 !important;
    /* цвет задаём на глифе ::before (bootstrap-icons) */
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    background: transparent !important;
    background-clip: unset !important;
    -webkit-background-clip: unset !important;
    text-shadow: none !important;
    filter: none !important;
    font-family: "bootstrap-icons" !important;
}

/* Градиент на глиф bootstrap-icons (как в десктопе) */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a i.bi::before {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
}

/* если где-то остался старый контейнер - выпиливаем его для локаций */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a .mobile-nav-icon {
    display: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a span:not(.image):not(.piramyd) {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,0.9) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
    text-shadow: none !important;
    background: none !important;
}

/* убрано: иконки через ::before (давали неправильные глифы) */

/* ========== ЭСТЕТИЧНОЕ ВЫДЕЛЕНИЕ БЛОКА "ЛОКАЦИИ" (моб. правое меню) ========== */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect {
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 14px !important;
    padding: 14px 14px 12px 14px !important;
    margin: 0 0 18px 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect::before,
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect::after {
    display: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .title {
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    padding: 0 0 10px 0 !important;
    margin: 0 0 12px 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .title p {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.6px !important;
    text-transform: uppercase !important;
    /* как в десктопе */
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    text-shadow:
        0 0 8px rgba(64,224,255,.4),
        0 0 12px rgba(196,60,255,.3),
        0 2px 4px rgba(0,0,0,.3) !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea {
    padding: 0 !important;
    margin: 0 !important;
    gap: 10px !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a {
    background: rgba(255,255,255,0.025) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .locationsWrapper .kindOfSelect .changeArea a:hover {
    background: rgba(64,224,255,0.08) !important;
    border-color: rgba(64,224,255,0.22) !important;
}

/* ========== "ПОКАЗАТЬ ТОЛЬКО" — компактно, на всю ширину (2 колонки) ========== */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a {
    flex: 1 1 calc(50% - 4px) !important;
    width: calc(50% - 4px) !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 10px 12px !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* если нечётное количество — последняя кнопка на всю ширину */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a:last-child {
    flex-basis: 100% !important;
    width: 100% !important;
}

/* ========== ЭСТЕТИЧНОЕ ВЫДЕЛЕНИЕ БЛОКА "ПОКАЗАТЬ ТОЛЬКО" (как "Локации") ========== */
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .kindOfSelect {
    /* без рамки/карточки — минимализм */
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 0 18px 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .kindOfSelect::before,
.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .kindOfSelect::after {
    display: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .kindOfSelect .title {
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    padding: 0 0 10px 0 !important;
    margin: 0 0 12px 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .kindOfSelect .title p {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.6px !important;
    text-transform: uppercase !important;
    /* как "Цена за час" (общий стиль заголовков меню) */
    color: rgba(255,255,255,0.45) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
    background: none !important;
    text-shadow: none !important;
    filter: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a i.bi {
    /* цвет глифа задаём через ::before */
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    background: transparent !important;
    background-clip: unset !important;
    -webkit-background-clip: unset !important;
    text-shadow: none !important;
    filter: none !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a i.bi::before {
    background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    text-shadow:
        0 0 8px rgba(64,224,255,.4),
        0 0 12px rgba(196,60,255,.3),
        0 2px 4px rgba(0,0,0,.3) !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a {
    background: rgba(255,255,255,0.025) !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: none !important;
    /* текст как в кнопках "Локации" */
    color: rgba(255,255,255,0.9) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a span {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

.slide-menu.slide-menu-right.slide-menu-filters .mobile-filters-content .showOnlyWrapper .buttons a:hover {
    background: rgba(64,224,255,0.08) !important;
    border-color: rgba(64,224,255,0.22) !important;
    box-shadow: none !important;
}

/* =============================================================================
   ЛЕВОЕ МОБИЛЬНОЕ МЕНЮ — МИНИМАЛИЗМ (в стиле правого)
   ============================================================================= */
@media (max-width: 1200px) {
    .slide-menu.slide-menu-left {
        background: #0a0d12 !important;
        border-right: 1px solid rgba(255,255,255,0.06) !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    /* Логотип над меню */
    .slide-menu.slide-menu-left .slide-menu-left-brand {
        padding: 18px 12px 10px 12px !important;
        margin: 0 !important;
    }

    .slide-menu.slide-menu-left .slide-menu-left-logo {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-decoration: none !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Если текст логотипа не обёрнут в <p>, стилизуем сам <a> */
    .slide-menu.slide-menu-left .slide-menu-left-logo {
        font-size: 16px !important;
        font-weight: 700 !important;
        letter-spacing: 1.8px !important;
        text-transform: uppercase !important;
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        color: transparent !important;
        text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    }

    .slide-menu.slide-menu-left .slide-menu-left-logo p {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        letter-spacing: 1.8px !important;
        text-transform: uppercase !important;
        /* цвет как у иконок (градиент на глифе) */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        color: transparent !important;
        text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    }

    /* на всякий случай, если в DOM где-то опечатка "lide-" */
    .lide-menu.lide-menu-left .lide-menu-left-logo p,
    .lide-menu-left-logo p {
        font-size: 16px !important;
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        color: transparent !important;
        text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    }

    .slide-menu.slide-menu-left::before,
    .slide-menu.slide-menu-left::after {
        display: none !important;
        content: none !important;
    }

    .slide-menu.slide-menu-left .row,
    .slide-menu.slide-menu-left .row::before,
    .slide-menu.slide-menu-left .row::after {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        display: block !important;
    }

    /* Карточка как у блока "Локации" справа */
    .slide-menu.slide-menu-left .menu-card {
        margin: 16px 12px 12px 12px !important;
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.06) !important;
        border-radius: 14px !important;
        padding: 12px !important;
        box-shadow: none !important;
    }

    .slide-menu.slide-menu-left .menu {
        padding: 0 !important;
        margin: 0 !important;
    }

    .slide-menu.slide-menu-left .menu li {
        margin: 0 0 10px 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .slide-menu.slide-menu-left .menu li a {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 14px 16px !important;
        border-radius: 10px !important;
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        transform: none !important;
        transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
        color: rgba(255,255,255,0.9) !important;
        text-decoration: none !important;
        overflow: hidden !important;
        min-height: 52px !important;
        font-size: 16px !important;
    }

    .slide-menu.slide-menu-left .menu li a::before,
    .slide-menu.slide-menu-left .menu li a::after {
        display: none !important;
        content: none !important;
    }

    .slide-menu.slide-menu-left .menu li a span {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        text-shadow: none !important;
    }

    .slide-menu.slide-menu-left .menu li a:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.25) !important;
        color: #fff !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .slide-menu.slide-menu-left .menu li a.active,
    .slide-menu.slide-menu-left .menu li a.active-item {
        background: rgba(64,224,255,0.12) !important;
        border-color: rgba(64,224,255,0.35) !important;
        color: #fff !important;
        box-shadow: none !important;
    }

    /* Иконка слева (добавляется JS) — без квадрата/свечения */
    .slide-menu.slide-menu-left .menu li a .mobile-nav-icon {
        width: auto !important;
        height: auto !important;
        min-width: auto !important;
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .slide-menu.slide-menu-left .menu li a .mobile-nav-icon i {
        font-size: 20px !important;
        /* цвет как в правом меню (Локации): градиентный глиф */
        color: transparent !important;
        -webkit-text-fill-color: transparent !important;
        background: transparent !important;
        background-clip: unset !important;
        -webkit-background-clip: unset !important;
        filter: none !important;
        transform: none !important;
    }

    .slide-menu.slide-menu-left .menu li a .mobile-nav-icon i.bi::before,
    .slide-menu.slide-menu-left .slide-menu-left-footer .add-profile-btn .mobile-nav-icon i.bi::before {
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        color: transparent !important;
        text-shadow: 0 0 20px rgba(64,224,255,.3) !important;
    }

    .slide-menu.slide-menu-left .menu li a:hover .mobile-nav-icon i.bi::before,
    .slide-menu.slide-menu-left .menu li a.active .mobile-nav-icon i.bi::before,
    .slide-menu.slide-menu-left .menu li a.active-item .mobile-nav-icon i.bi::before {
        filter: none !important;
    }

    /* PNG-иконки в левом меню (например /image/massage.png) */
    .slide-menu.slide-menu-left .menu li a .mobile-nav-icon img {
        width: 20px !important;
        height: 20px !important;
        display: block !important;
        object-fit: contain !important;
        filter: none !important;
        opacity: 1 !important;
    }

    /* Кнопка "Добавить анкету" — отдельный блок ниже */
    .slide-menu.slide-menu-left .slide-menu-left-footer {
        margin: 8px 12px 18px 12px !important;
        padding: 0 !important;
        position: relative !important;
    }

    /* Разделитель между карточкой меню и кнопкой */
    .slide-menu.slide-menu-left .slide-menu-left-footer::before {
        content: "" !important;
        display: block !important;
        height: 1px !important;
        width: 100% !important;
        margin: 6px 0 14px 0 !important;
        background: linear-gradient(90deg,
            transparent 0%,
            rgba(196,60,255,.35) 20%,
            rgba(64,224,255,.55) 50%,
            rgba(196,60,255,.35) 80%,
            transparent 100%) !important;
        box-shadow:
            0 0 10px rgba(64,224,255,.25),
            0 0 14px rgba(196,60,255,.15) !important;
        opacity: 0.95 !important;
        pointer-events: none !important;
    }

    .slide-menu.slide-menu-left .slide-menu-left-footer .add-profile-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        width: 100% !important;
        min-height: 54px !important;
        padding: 14px 16px !important;
        border-radius: 12px !important;
        /* тёмная кнопка, как остальные элементы меню */
        background: rgba(255,255,255,0.03) !important;
        border: 1px solid rgba(255,255,255,0.08) !important;
        color: rgba(255,255,255,0.9) !important;
        -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
        text-decoration: none !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .slide-menu.slide-menu-left .slide-menu-left-footer .add-profile-btn:hover {
        background: rgba(64,224,255,0.08) !important;
        border-color: rgba(64,224,255,0.22) !important;
    }
}

/* =============================================================================
   SITE BACKGROUND: фон из /fon2_media.jpg
   ============================================================================= */
html {
    background: #05060a !important;
}

body {
    /* shorthand, чтобы перебить ранний background: ... */
    background:
        linear-gradient(180deg,
            rgba(5,6,10,0.20) 0%,
            rgba(5,6,10,0.55) 100%),
        url('/fon2_media.jpg') !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: cover !important;
    background-attachment: scroll !important;
}

@media (min-width: 992px) {
    body {
        background-attachment: fixed !important;
    }
}

/* =============================================================================
   DESKTOP: тоньше линии в header .top-line (как у блока "Локации")
   ============================================================================= */
@media (min-width: 992px) {
    header .top-line .container.row::before,
    header .top-line .container .row::before,
    header .top-line .container.row::after,
    header .top-line .container .row::after {
        height: 1px !important;
    }
}

/* ЛЕВОЕ мобильное меню: кастомная PNG-иконка для "Стриптиз" */
@media (max-width: 1200px) {
    .slide-menu.slide-menu-left .menu li a[href*="intim-karta"] .mobile-nav-icon--intim-map {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/intim_map.png');
        mask-image: url('/image/intim_map.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }

    .slide-menu.slide-menu-left .menu li a[href*="prostitutki-individualki"] .mobile-nav-icon--indi {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/indi.png');
        mask-image: url('/image/indi.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }

    .slide-menu.slide-menu-left .menu li a[href*="shluha-klassicheskii-massaj"] .mobile-nav-icon--massage {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/massage2.png');
        mask-image: url('/image/massage2.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }

    .slide-menu.slide-menu-left .menu li a[href*="shluha-seks-analnii"] .mobile-nav-icon--anal {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/anal.png');
        mask-image: url('/image/anal.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }

    .slide-menu.slide-menu-left .menu li a[href*="shluha-bdsm"] .mobile-nav-icon--bdsm {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/bdsm.png');
        mask-image: url('/image/bdsm.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }

    .slide-menu.slide-menu-left .menu li a[href*="shluha-striptiz-profi"] .mobile-nav-icon--strip {
        width: 44px !important;
        height: 44px !important;
        flex: 0 0 44px !important;

        /* “покраска” через mask — можно делать градиентом как в дизайне */
        /* как у bi-иконок в меню */
        background: linear-gradient(135deg, #fff 0%, var(--hi-cyan) 50%, var(--hi-mag) 100%) !important;
        -webkit-mask-image: url('/image/strip_club.png');
        mask-image: url('/image/strip_club.png');
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;

        filter: drop-shadow(0 0 20px rgba(64,224,255,.30));
        opacity: 0.95 !important;
    }
}

/* Кнопка "Добавить анкету": возвращаем bi-иконку и делаем 44x44 */
@media (max-width: 1200px) {
    .slide-menu.slide-menu-left .slide-menu-left-footer .add-profile-btn .mobile-nav-icon {
        width: 25px !important;
        height: 25px !important;
        flex: 0 0 25px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .slide-menu.slide-menu-left .slide-menu-left-footer .add-profile-btn .mobile-nav-icon i {
        font-size: 25px !important;
        line-height: 1 !important;
    }
}

/* =============================================================================
   FIX: “мигающая” вертикальная линия (швы/CLS/скроллбар)
   ============================================================================= */
html {
    /* стабилизируем область под скроллбар, чтобы не было микросдвигов */
    scrollbar-gutter: stable;
}

@supports not (scrollbar-gutter: stable) {
    html {
        overflow-y: scroll;
    }
}

/* fixed-фон часто даёт вертикальные “швы” при скролле — отключаем */
@media (min-width: 992px) {
    body {
        background-attachment: scroll !important;
    }
}

/* форсируем композитинг сетки (уменьшает мерцание линий) */
body:before {
    transform: translateZ(0);
    will-change: transform;
}

/* если всё равно мерцает — виновата именно сетка (вертикальные линии каждые 32px) */
@media (min-width: 992px) {
    body:before {
        display: none !important;
    }
}

/* (banner height override removed) */
