/* ============================================================
   Kriminalogiya — Home page luxury theme
   Forensic Authority palette: deep navy, charcoal, antique bronze
   ============================================================ */

:root {
    --lx-navy: #0a0e1a;
    --lx-charcoal: #1a1f2e;
    --lx-charcoal-2: #232a3d;
    --lx-gold: #d4af37;
    --lx-gold-bright: #e7c455;
    --lx-bronze: #c9a961;
    --lx-bronze-soft: #d4b97a;
    --lx-bronze-dark: #8b7544;
    --lx-cream: #f5f3f0;
    --lx-paper: #ebe7df;
    --lx-crimson: #8b0000;
    --lx-text: #1a1f2e;
    --lx-text-soft: #5a6178;
    --lx-text-light: rgba(245, 243, 240, 0.86);
    --lx-shadow-luxury: 0 20px 60px -10px rgba(10, 14, 26, 0.35);
    --lx-shadow-card: 0 14px 40px -12px rgba(10, 14, 26, 0.18);
    --lx-shadow-gold: 0 12px 36px -10px rgba(212, 175, 55, 0.35);
}

.home-luxury {
    background: var(--lx-cream);
    color: var(--lx-text);
    font-family: 'Inter', system-ui, sans-serif;
    overflow-x: hidden;
}

.home-luxury h1,
.home-luxury h2,
.home-luxury h3,
.home-luxury h4,
.home-luxury .lx-serif {
    font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
    font-weight: 500;
    letter-spacing: 0.005em;
}

/* ─────── Hero ─────── */

.lx-hero {
    position: relative;
    height: 100vh;
    min-height: 640px;
    overflow: hidden;
    background: var(--lx-navy);
}

/* ─── Custom luxury slider track ─── */

.lx-hero-slider {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.lx-hero-slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transform: scale(1.08);
    transition: opacity 1.4s cubic-bezier(0.4, 0, 0.2, 1),
                transform 9s ease-out;
    z-index: 1;
}

.lx-hero-slide.is-active {
    opacity: 1;
    transform: scale(1);
    z-index: 2;
}

.lx-hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(10, 14, 26, 0.55) 0%, rgba(10, 14, 26, 0.35) 40%, rgba(10, 14, 26, 0.85) 100%),
        linear-gradient(90deg, rgba(10, 14, 26, 0.45) 0%, transparent 30%, transparent 70%, rgba(10, 14, 26, 0.45) 100%);
    z-index: 1;
}

/* Bronza dekorativ ramka */
.lx-hero::after {
    content: "";
    position: absolute;
    inset: 24px;
    border: 1px solid rgba(201, 169, 97, 0.15);
    pointer-events: none;
    z-index: 4;
}

/* ─── Slide counter (yuqori chap) ─── */

.lx-hero-counter {
    position: absolute;
    top: 48px;
    left: 56px;
    display: flex;
    align-items: center;
    gap: 14px;
    color: var(--lx-cream);
    z-index: 5;
    font-family: 'Cormorant Garamond', serif;
    opacity: 0;
    animation: lxFadeUp 1s ease-out 0.4s forwards;
}

.lx-hero-counter .num {
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
}

.lx-hero-counter .num.current {
    color: var(--lx-bronze-soft);
    font-size: 30.5px;
}

.lx-hero-counter .num.total {
    color: rgba(245, 243, 240, 0.55);
}

.lx-hero-counter .line {
    width: 32px;
    height: 1px;
    background: var(--lx-bronze);
    opacity: 0.7;
}

/* ─── Vertikal indikatorlar (o'ng tomon) ─── */

.lx-hero-indicators {
    position: absolute;
    top: 50%;
    right: 56px;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 14px;
    z-index: 5;
    opacity: 0;
    animation: lxFadeUp 1s ease-out 0.6s forwards;
}

.lx-hero-indicator {
    width: 1px;
    height: 28px;
    background: rgba(245, 243, 240, 0.3);
    border: none;
    padding: 0;
    cursor: pointer;
    transition: all 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
}

.lx-hero-indicator::after {
    content: "";
    position: absolute;
    inset: -8px;
}

.lx-hero-indicator:hover {
    background: var(--lx-bronze-soft);
    height: 36px;
}

.lx-hero-indicator.is-active {
    background: var(--lx-bronze);
    width: 2px;
    height: 56px;
}

/* ─── Prev / Next arrows ─── */

.lx-hero-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 1px solid rgba(201, 169, 97, 0.45);
    background: rgba(10, 14, 26, 0.35);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    color: var(--lx-bronze-soft);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s cubic-bezier(0.2, 0.7, 0.2, 1);
    z-index: 5;
    padding: 0;
    opacity: 0;
    animation: lxFadeUp 1s ease-out 0.7s forwards;
}

.lx-hero-arrow:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
    box-shadow: var(--lx-shadow-gold);
}

.lx-hero-arrow.prev { left: 56px; }
.lx-hero-arrow.next { right: 100px; }

.lx-hero-arrow svg {
    transition: transform 0.35s ease;
}

.lx-hero-arrow.prev:hover svg { transform: translateX(-3px); }
.lx-hero-arrow.next:hover svg { transform: translateX(3px); }

/* ─── Pastki progress bar ─── */

.lx-hero-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: rgba(201, 169, 97, 0.12);
    z-index: 5;
}

.lx-hero-progress .bar {
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform-origin: left;
    transform: scaleX(0);
}

.lx-hero-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--lx-cream);
    padding: 0 24px;
    z-index: 2;
}

.lx-hero-divider {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
    opacity: 0;
    animation: lxFadeUp 1s ease-out 0.2s forwards;
}

.lx-hero-divider::before,
.lx-hero-divider::after {
    content: "";
    height: 1px;
    width: 80px;
    background: var(--lx-bronze);
}

.lx-hero-divider span {
    color: var(--lx-bronze);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    letter-spacing: 0.4em;
    text-transform: uppercase;
}

.lx-hero-title {
    font-size: clamp(43.5px, 6.5vw, 91.5px);
    line-height: 1.05;
    color: var(--lx-cream);
    max-width: 1100px;
    margin: 0 0 22px;
    opacity: 0;
    animation: lxFadeUp 1.1s ease-out 0.5s forwards;
}

.lx-hero-title em {
    font-style: italic;
    color: var(--lx-bronze-soft);
    font-weight: 400;
}

.lx-typewriter-line.is-typing::after {
    content: "";
    display: inline-block;
    width: 3px;
    height: 0.85em;
    margin-left: 4px;
    background: currentColor;
    vertical-align: -0.1em;
    animation: lxCaretBlink 0.85s steps(1) infinite;
}

@keyframes lxCaretBlink {
    50% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-typewriter-line.is-typing::after { animation: none; }
}

.lx-hero-sub {
    font-size: clamp(16.5px, 1.4vw, 19.5px);
    color: var(--lx-text-light);
    max-width: 720px;
    margin: 0 auto 36px;
    line-height: 1.65;
    opacity: 0;
    animation: lxFadeUp 1.1s ease-out 0.8s forwards;
}

.lx-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 36px;
    background: transparent;
    color: var(--lx-cream);
    border: 1px solid var(--lx-bronze);
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.lx-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--lx-bronze);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: -1;
}

.lx-btn:hover {
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
}

.lx-btn:hover::before {
    transform: scaleX(1);
    transform-origin: left;
}

.lx-btn .arrow {
    transition: transform 0.4s ease;
}

.lx-btn:hover .arrow {
    transform: translateX(6px);
}

.lx-hero-cta {
    opacity: 0;
    animation: lxFadeUp 1.1s ease-out 1.05s forwards;
}

.lx-scroll-hint {
    position: absolute;
    bottom: 36px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--lx-bronze);
    font-size: 12px;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    text-align: center;
    z-index: 3;
    opacity: 0;
    animation: lxFadeUp 1.1s ease-out 1.4s forwards;
}

.lx-scroll-hint span {
    display: block;
    margin-bottom: 8px;
}

.lx-scroll-hint .lx-line {
    width: 1px;
    height: 50px;
    margin: 0 auto;
    background: linear-gradient(180deg, var(--lx-bronze) 0%, transparent 100%);
    position: relative;
    overflow: hidden;
}

.lx-scroll-hint .lx-line::after {
    content: "";
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%;
    height: 50px;
    background: var(--lx-cream);
    animation: lxScrollDown 2.2s ease-in-out infinite;
}

@keyframes lxScrollDown {
    0% { top: -50px; }
    100% { top: 50px; }
}

@keyframes lxFadeUp {
    from { opacity: 0; transform: translateY(28px); }
    to { opacity: 1; transform: translateY(0); }
}

/* (Eski owl-dots styles olib tashlandi — endi vertikal indikatorlar
   .lx-hero-indicators ishlatilmoqda) */
.lx-hero .owl-dots,
.lx-hero .owl-nav { display: none !important; }

/* ─────── Section heading ─────── */

.lx-section {
    padding: 110px 0;
    position: relative;
}

.lx-section.dark {
    background: var(--lx-navy);
    color: var(--lx-cream);
}

.lx-section.charcoal {
    background: linear-gradient(180deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
    color: var(--lx-cream);
}

.lx-section-head {
    text-align: center;
    margin-bottom: 64px;
}

.lx-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: var(--lx-bronze);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.45em;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.lx-eyebrow::before,
.lx-eyebrow::after {
    content: "";
    width: 28px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-section-title {
    font-size: clamp(37px, 4.6vw, 61px);
    margin: 0 0 16px;
    line-height: 1.15;
}

.lx-section.dark .lx-section-title,
.lx-section.charcoal .lx-section-title {
    color: var(--lx-cream);
}

.lx-section-sub {
    color: var(--lx-text-soft);
    max-width: 620px;
    margin: 0 auto;
    font-size: 16.5px;
    line-height: 1.7;
}

.lx-section.dark .lx-section-sub,
.lx-section.charcoal .lx-section-sub {
    color: var(--lx-text-light);
}

/* ─────── News (3-column equal grid) ─────── */

.lx-news-block {
    margin-bottom: 80px;
}

.lx-news-block:last-child {
    margin-bottom: 0;
}

.lx-news-block-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 40px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(26, 31, 46, 0.12);
}

.lx-news-block-head h3 {
    font-size: clamp(24px, 2.4vw, 32.5px);
    margin: 0;
    color: var(--lx-text);
    display: flex;
    align-items: center;
    gap: 18px;
}

.lx-news-block-head h3::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-news-link {
    color: var(--lx-bronze-dark);
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    transition: color 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.lx-news-link:hover {
    color: var(--lx-navy);
}

.lx-news-carousel {
    padding-bottom: 8px;
}

.lx-news-carousel .owl-stage-outer {
    overflow: visible;
    clip-path: inset(0);
}

.lx-news-carousel .owl-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 26px;
}

.lx-news-carousel .owl-dot span {
    display: block;
    width: 7px;
    height: 7px;
    margin: 0;
    border-radius: 50%;
    background: rgba(201, 169, 97, 0.32);
    transition: background 0.3s ease, width 0.3s ease, border-radius 0.3s ease;
}

.lx-news-carousel .owl-dot.active span {
    background: var(--lx-bronze-soft);
    width: 20px;
    border-radius: 4px;
}

.lx-news-card {
    background: #fff;
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    transition: transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
}

.lx-news-card::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--lx-bronze);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 3;
}

.lx-news-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--lx-shadow-luxury);
    color: inherit;
}

.lx-news-card:hover::after {
    transform: scaleX(1);
}

.lx-news-thumb {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-charcoal-2) 100%);
}

.lx-news-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-news-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 60%, rgba(10, 14, 26, 0.4) 100%);
    pointer-events: none;
    z-index: 1;
}

.lx-news-card:hover .lx-news-thumb img {
    transform: scale(1.08);
}

.lx-news-thumb-empty {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
}

.lx-news-thumb-empty::before {
    content: "";
    width: 38px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-news-thumb-empty::after {
    content: "";
    width: 38px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-news-thumb-empty span {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--lx-bronze);
    font-size: 17.5px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    opacity: 0.85;
}

.lx-news-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    color: var(--lx-bronze-dark);
    font-size: 12px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.lx-news-meta::before {
    content: "";
    width: 14px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-news-body {
    padding: 26px 26px 30px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.lx-news-card .lx-news-title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 500;
    color: var(--lx-text);
    margin: 0 0 16px;
    font-size: 23px;
    line-height: 1.35;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1;
}

.lx-news-card:hover .lx-news-title {
    color: var(--lx-navy);
}

.lx-news-readmore {
    color: var(--lx-bronze-dark);
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    transition: color 0.3s ease, gap 0.3s ease;
}

.lx-news-card:hover .lx-news-readmore {
    color: var(--lx-navy);
    gap: 14px;
}

/* ─────── News layout (news + announcements side panel) ─────── */

.lx-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    align-items: start;
    gap: 48px;
}

.lx-news-main {
    min-width: 0;
}

/* ─────── Announcements panel ─────── */

.lx-announce-panel {
    position: sticky;
    top: 110px;
    background: linear-gradient(160deg, var(--lx-navy) 0%, var(--lx-charcoal) 100%);
    box-shadow: var(--lx-shadow-luxury);
    overflow: hidden;
}

.lx-announce-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 26px 26px 20px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.22);
}

.lx-announce-bell {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(201, 169, 97, 0.14);
    color: var(--lx-bronze-soft);
    flex-shrink: 0;
}

.lx-announce-bell svg {
    width: 16px;
    height: 16px;
}

.lx-announce-head h3 {
    margin: 0;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 500;
    font-size: 23px;
    letter-spacing: 0.02em;
    color: var(--lx-cream);
}

.lx-announce-track {
    position: relative;
    min-height: 460px;
}

.lx-announce-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.7s cubic-bezier(0.4, 0, 0.2, 1),
                visibility 0s linear 0.7s;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}

.lx-announce-slide.is-active {
    position: relative;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.7s cubic-bezier(0.4, 0, 0.2, 1),
                visibility 0s linear 0s;
}

.lx-announce-media {
    position: relative;
    aspect-ratio: 16 / 11;
    overflow: hidden;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-charcoal-2) 100%);
}

.lx-announce-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.1s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-announce-slide:hover .lx-announce-media img {
    transform: scale(1.06);
}

.lx-announce-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(10, 14, 26, 0.55) 100%);
    pointer-events: none;
}

.lx-announce-media-empty {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-announce-media-empty span {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--lx-bronze);
    font-size: 16.5px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    opacity: 0.85;
}

.lx-announce-body {
    padding: 22px 26px 26px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.lx-announce-title {
    margin: 0 0 10px;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 500;
    color: var(--lx-cream);
    font-size: 20.5px;
    line-height: 1.35;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lx-announce-slide:hover .lx-announce-title {
    color: var(--lx-bronze-soft);
}

.lx-announce-text {
    margin: 0;
    color: var(--lx-text-light);
    font-size: 14.5px;
    line-height: 1.75;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lx-announce-readmore {
    margin-top: 16px;
    color: var(--lx-bronze-soft);
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: color 0.3s ease, gap 0.3s ease;
}

.lx-announce-slide:hover .lx-announce-readmore {
    color: var(--lx-gold-bright);
    gap: 14px;
}

.lx-announce-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 26px 24px;
}

.lx-announce-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: none;
    padding: 0;
    background: rgba(201, 169, 97, 0.32);
    cursor: pointer;
    transition: background 0.3s ease, transform 0.3s ease, width 0.3s ease;
}

.lx-announce-dot.is-active {
    background: var(--lx-bronze-soft);
    width: 20px;
    border-radius: 4px;
}

/* ─────── Yo'nalishlar (institut faoliyat yo'nalishlari) ─────── */

.lx-directions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.lx-direction-card {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 34px 28px 30px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(201, 169, 97, 0.18);
    border-radius: 4px;
    backdrop-filter: blur(8px);
    text-decoration: none;
    color: var(--lx-cream);
    overflow: hidden;
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1),
                border-color 0.5s ease,
                background 0.5s ease;
}

.lx-direction-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 85% -10%, rgba(201, 169, 97, 0.1) 0%, transparent 55%);
    pointer-events: none;
}

.lx-direction-card:hover {
    transform: translateY(-8px);
    border-color: var(--lx-bronze);
    background: rgba(201, 169, 97, 0.05);
}

.lx-direction-icon {
    position: relative;
    width: 52px;
    height: 52px;
    margin-bottom: 26px;
    border-radius: 50%;
    border: 1px solid var(--lx-bronze);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
}

.lx-direction-icon svg { width: 22px; height: 22px; }

.lx-direction-card:hover .lx-direction-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-direction-body {
    position: relative;
    flex: 1 1 auto;
    margin-bottom: 34px;
}

.lx-direction-num {
    display: block;
    color: var(--lx-bronze);
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 15.5px;
    margin-bottom: 8px;
}

.lx-direction-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 24px;
    line-height: 1.25;
    color: var(--lx-cream);
    margin: 0;
    transition: color 0.4s ease;
}

.lx-direction-card:hover .lx-direction-title {
    color: var(--lx-bronze-soft);
}

.lx-direction-arrow {
    position: relative;
    align-self: flex-start;
    width: 38px;
    height: 38px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
}

.lx-direction-card:hover .lx-direction-arrow {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    transform: rotate(-45deg);
}

/* ─────── Statistics ─────── */

.lx-stats-bg {
    position: relative;
}

.lx-stats-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(201, 169, 97, 0.06) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(201, 169, 97, 0.04) 0%, transparent 50%);
    pointer-events: none;
}

.lx-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    position: relative;
    z-index: 2;
}

.lx-stat {
    text-align: center;
    padding: 40px 24px;
    border: 1px solid rgba(201, 169, 97, 0.2);
    background: rgba(245, 243, 240, 0.02);
    backdrop-filter: blur(6px);
    transition: all 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-stat:hover {
    border-color: var(--lx-bronze);
    background: rgba(201, 169, 97, 0.04);
    transform: translateY(-6px);
}

.lx-stat-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 22px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
}

.lx-stat:hover .lx-stat-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-stat-number {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(43.5px, 4.4vw, 61px);
    color: var(--lx-bronze);
    line-height: 1;
    margin-bottom: 12px;
    font-weight: 500;
}

.lx-stat-label {
    color: var(--lx-text-light);
    font-size: 13px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}

.lx-stats-divider {
    width: 80px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 0 auto 18px;
    opacity: 0.5;
}

/* ─────── Loader (rings + logo) ─────── */

#spinner .lx-loader {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 0 24px;
    text-align: center;
}

.lx-loader-mark {
    position: relative;
    width: 220px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-loader-name {
    color: var(--lx-bronze-dark);
    font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
    font-size: clamp(16.5px, 1.7vw, 22px);
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    line-height: 1.5;
    max-width: 520px;
    position: relative;
}

.lx-loader-name::before,
.lx-loader-name::after {
    content: "";
    display: block;
    width: 56px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 14px auto;
}

.lx-loader-ring {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transform-origin: center;
}

.lx-loader-ring--outer {
    animation: lxRingSpin 2.4s linear infinite;
}

.lx-loader-ring--inner {
    animation: lxRingSpin 3.6s linear infinite reverse;
}

.lx-loader-logo {
    position: relative;
    width: 132px;
    height: 132px;
    object-fit: contain;
    z-index: 2;
    animation: lxLogoPulse 2.8s ease-in-out infinite;
    filter: drop-shadow(0 6px 18px rgba(201, 169, 97, 0.28));
}

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

@keyframes lxLogoPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50%      { transform: scale(1.04); opacity: 0.93; }
}

@media (max-width: 640px) {
    #spinner .lx-loader { gap: 24px; }
    .lx-loader-mark { width: 170px; height: 170px; }
    .lx-loader-logo { width: 100px; height: 100px; }
    .lx-loader-name { letter-spacing: 0.14em; }
    .lx-loader-name::before,
    .lx-loader-name::after { width: 40px; margin: 10px auto; }
}

/* ─────── Partners ─────── */

.lx-partners-wrap {
    position: relative;
    padding: 0 60px;
}

.lx-partner-card {
    display: block;
    text-decoration: none;
    color: inherit;
    background: #fff;
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
}

.lx-partner-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--lx-bronze);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-partner-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--lx-shadow-luxury);
    color: inherit;
}

.lx-partner-card:hover::after {
    transform: scaleX(1);
}

.lx-partner-logo {
    position: relative;
    height: 130px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    background: var(--lx-cream);
}

.lx-partner-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.78;
    transition: filter 0.45s ease, opacity 0.45s ease, transform 0.45s ease;
}

.lx-partner-card:hover .lx-partner-logo img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05);
}

.lx-partner-logo-fallback {
    display: none;
    width: 80px;
    height: 80px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    color: var(--lx-bronze);
    font-family: 'Cormorant Garamond', serif;
    font-size: 39px;
    font-weight: 500;
}

.lx-partner-name {
    background: var(--lx-navy);
    padding: 14px 16px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.lx-partner-name::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 0;
}

.lx-partner-card:hover .lx-partner-name::before {
    background: linear-gradient(135deg, var(--lx-bronze-dark) 0%, var(--lx-bronze) 100%);
}

.lx-partner-name span {
    position: relative;
    z-index: 1;
    color: var(--lx-cream);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    letter-spacing: 0.18em;
    text-transform: lowercase;
    transition: color 0.45s ease;
}

.lx-partner-card:hover .lx-partner-name span {
    color: var(--lx-navy);
}

.lx-partners-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid var(--lx-bronze);
    background: transparent;
    color: var(--lx-bronze);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.4s ease;
    z-index: 5;
}

.lx-partners-nav:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-partners-nav.prev { left: 0; }
.lx-partners-nav.next { right: 0; }

@media (max-width: 640px) {
    .lx-partners-wrap { padding: 0 36px; }
    .lx-partners-nav { width: 36px; height: 36px; }
    .lx-partner-logo { height: 100px; }
}

/* ═══════════════════════════════════════════════════════════
   About / Institut sahifasi
   ═══════════════════════════════════════════════════════════ */

/* ─────── Page hero ─────── */

.lx-page-hero {
    position: relative;
    padding: 130px 0 100px;
    background: linear-gradient(135deg, var(--lx-navy) 0%, var(--lx-charcoal) 60%, var(--lx-charcoal-2) 100%);
    color: var(--lx-cream);
    overflow: hidden;
}

.lx-page-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.lx-page-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.22;
    filter: grayscale(35%) contrast(1.05) brightness(0.95);
    transform: scale(1.06);
    animation: lxKenBurns 30s ease-in-out infinite alternate;
}

.lx-page-hero-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(10, 14, 26, 0.78) 0%, rgba(26, 31, 46, 0.62) 50%, rgba(10, 14, 26, 0.85) 100%);
}

@keyframes lxKenBurns {
    from { transform: scale(1.06) translate(0, 0); }
    to   { transform: scale(1.14) translate(-1.5%, -1.5%); }
}

.lx-page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image:
        radial-gradient(circle at 18% 30%, rgba(212, 175, 55, 0.12) 0%, transparent 45%),
        radial-gradient(circle at 82% 70%, rgba(201, 169, 97, 0.08) 0%, transparent 50%);
    pointer-events: none;
}

.lx-page-hero::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(180deg, transparent 0%, var(--lx-cream) 100%);
    pointer-events: none;
}

.lx-page-hero .container {
    position: relative;
    z-index: 2;
    max-width: 1100px;
}

.lx-page-hero-decor {
    position: absolute;
    right: -120px;
    top: 50%;
    transform: translateY(-50%);
    width: 520px;
    height: 520px;
    z-index: 1;
    opacity: 0.07;
    pointer-events: none;
    animation: lxRingSpin 60s linear infinite;
}

.lx-page-hero-decor img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 0 20px rgba(212, 175, 55, 0.4));
}

.lx-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(245, 243, 240, 0.6);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    margin-bottom: 28px;
}

.lx-breadcrumb a {
    color: var(--lx-bronze);
    text-decoration: none;
    transition: color 0.3s ease;
}

.lx-breadcrumb a:hover {
    color: var(--lx-gold-bright);
}

.lx-breadcrumb .sep {
    color: var(--lx-bronze);
    opacity: 0.5;
}

.lx-page-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(39px, 6vw, 74px);
    font-weight: 500;
    line-height: 1.1;
    margin: 0 0 20px;
    color: var(--lx-cream);
    max-width: 780px;
}

.lx-page-title em {
    font-style: italic;
    color: var(--lx-bronze-soft);
    font-weight: 400;
}

.lx-page-divider {
    width: 80px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 24px 0;
    position: relative;
}

.lx-page-divider::before {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--lx-gold);
    box-shadow: 0 0 12px var(--lx-gold);
}

.lx-page-meta {
    color: rgba(245, 243, 240, 0.55);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    margin: 0;
}

/* ─────── About grid (image + text) ─────── */

.lx-about-grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 80px;
    align-items: start;
}

.lx-about-image {
    position: relative;
    padding-bottom: 30px;
    padding-right: 30px;
}

.lx-image-frame {
    position: relative;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
}

.lx-image-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 8s ease-out;
}

.lx-about-image:hover .lx-image-frame img {
    transform: scale(1.04);
}

.lx-image-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 60%, rgba(10, 14, 26, 0.4) 100%);
    pointer-events: none;
}

.lx-about-image::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    border: 1px solid var(--lx-bronze);
    pointer-events: none;
    z-index: -1;
}

.lx-image-badge {
    position: absolute;
    bottom: -14px;
    left: -14px;
    padding: 22px 28px;
    background: var(--lx-navy);
    border: 1px solid var(--lx-bronze);
    color: var(--lx-cream);
    text-align: center;
    box-shadow: var(--lx-shadow-luxury);
}

.lx-image-badge .lx-eyebrow {
    margin-bottom: 8px;
    font-size: 10px;
    color: var(--lx-bronze);
}

.lx-image-badge .lx-eyebrow::before,
.lx-image-badge .lx-eyebrow::after {
    width: 16px;
}

.lx-badge-num {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 39px;
    color: var(--lx-gold-bright);
    line-height: 1;
    font-weight: 500;
}

.lx-about-text .lx-eyebrow {
    margin-bottom: 18px;
}

.lx-about-text .lx-eyebrow::before {
    display: inline-block;
}

.lx-about-text .lx-eyebrow::after {
    display: none;
}

.lx-about-text .lx-section-title {
    text-align: left !important;
    margin-bottom: 30px;
}

.lx-rich-text {
    color: var(--lx-text-soft);
    font-size: 17.5px;
    line-height: 1.85;
    font-family: 'Inter', sans-serif;
}

.lx-rich-text p {
    margin: 0 0 18px;
}

.lx-rich-text p:first-of-type::first-letter {
    font-family: 'Cormorant Garamond', serif;
    font-size: 70px;
    line-height: 0.85;
    float: left;
    margin: 6px 14px 0 0;
    color: var(--lx-bronze);
    font-weight: 500;
}

.lx-rich-text strong, .lx-rich-text b {
    color: var(--lx-text);
    font-weight: 600;
}

.lx-rich-text a {
    color: var(--lx-bronze-dark);
    text-decoration: underline;
    text-decoration-color: var(--lx-bronze);
    text-underline-offset: 4px;
    transition: color 0.3s ease;
}

.lx-rich-text a:hover {
    color: var(--lx-navy);
}

.lx-rich-text ul, .lx-rich-text ol {
    margin: 0 0 18px;
    padding-left: 24px;
}

.lx-rich-text li {
    margin-bottom: 8px;
}

/* ─────── Social strip ─────── */

.lx-social-strip {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid rgba(26, 31, 46, 0.12);
    flex-wrap: wrap;
}

.lx-social-strip-label {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    margin-right: 8px;
}

.lx-social-link {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(139, 117, 68, 0.4);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-dark);
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-social-link:hover {
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
    transform: translateY(-3px);
    box-shadow: var(--lx-shadow-gold);
}

/* ─────── Pillars ─────── */

.lx-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.lx-pillar {
    background: rgba(255, 255, 255, 0.025);
    border: 1px solid rgba(201, 169, 97, 0.18);
    padding: 44px 32px;
    text-align: center;
    transition: all 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.lx-pillar::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--lx-gold), transparent);
    transform: scaleX(0);
    transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-pillar:hover {
    transform: translateY(-8px);
    border-color: var(--lx-bronze);
    background: rgba(201, 169, 97, 0.04);
}

.lx-pillar:hover::before {
    transform: scaleX(1);
}

.lx-pillar-icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 24px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
    position: relative;
}

.lx-pillar-icon::before {
    content: "";
    position: absolute;
    inset: -8px;
    border: 1px dashed rgba(201, 169, 97, 0.25);
    border-radius: 50%;
    animation: lxRingSpin 20s linear infinite;
}

.lx-pillar:hover .lx-pillar-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    box-shadow: 0 0 0 6px rgba(201, 169, 97, 0.12);
}

.lx-pillar h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 26px;
    color: var(--lx-cream);
    margin: 0 0 14px;
    font-weight: 500;
}

.lx-pillar p {
    color: var(--lx-text-light);
    font-size: 15.5px;
    line-height: 1.7;
    margin: 0;
}

/* ─────── Quote ─────── */

.lx-quote-section {
    padding: 100px 0;
    background:
        linear-gradient(135deg, var(--lx-cream) 0%, var(--lx-paper) 100%);
}

.lx-quote {
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    padding: 0 40px;
}

.lx-quote-mark {
    font-family: 'Cormorant Garamond', serif;
    font-size: 152.5px;
    line-height: 0.9;
    color: var(--lx-bronze);
    opacity: 0.35;
    display: block;
    margin-bottom: -20px;
}

.lx-quote-text {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: clamp(24px, 2.6vw, 35px);
    color: var(--lx-text);
    line-height: 1.5;
    margin: 0 0 32px;
    font-weight: 400;
}

.lx-quote-author {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    letter-spacing: 0.35em;
    text-transform: uppercase;
}

.lx-quote-author::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    background: var(--lx-bronze);
    vertical-align: middle;
    margin-right: 14px;
    margin-bottom: 4px;
}

/* ─────── Back CTA ─────── */

.lx-back-wrap {
    text-align: center;
    padding-top: 50px;
}

.lx-btn-dark {
    color: var(--lx-navy);
    border-color: var(--lx-navy);
}

.lx-btn-dark::before {
    background: var(--lx-navy);
}

.lx-btn-dark:hover {
    color: var(--lx-cream);
}

.lx-btn .arrow-back {
    transition: transform 0.4s ease;
    margin-right: 12px;
}

.lx-btn-dark:hover .arrow-back {
    transform: translateX(-6px);
}

/* ═══════════════════════════════════════════════════════════
   Rahbariyat sahifasi
   ═══════════════════════════════════════════════════════════ */

.lx-leaders-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
}

.lx-leader-card {
    position: relative;
    display: block;
    background: #fff;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    cursor: pointer;
    box-shadow: var(--lx-shadow-card);
    transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-leader-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 5;
}

.lx-leader-card:hover {
    transform: translateY(-10px);
    box-shadow: var(--lx-shadow-luxury);
    color: inherit;
}

.lx-leader-card:hover::before {
    transform: scaleX(1);
}

.lx-leader-photo {
    position: relative;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
}

.lx-leader-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.4s cubic-bezier(0.2, 0.7, 0.2, 1),
                filter 0.6s ease;
    filter: grayscale(20%) contrast(1.02);
}

.lx-leader-card:hover .lx-leader-photo img {
    transform: scale(1.08);
    filter: grayscale(0%) contrast(1.05);
}

.lx-leader-photo-empty {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
    z-index: 0;
}

.lx-leader-photo-empty::before,
.lx-leader-photo-empty::after {
    content: "";
    width: 40px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-leader-photo-empty span {
    font-family: 'Cormorant Garamond', serif;
    font-size: 87px;
    color: var(--lx-bronze);
    line-height: 1;
    font-weight: 500;
    opacity: 0.85;
}

.lx-leader-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
        rgba(10, 14, 26, 0) 0%,
        rgba(10, 14, 26, 0) 55%,
        rgba(10, 14, 26, 0.85) 100%
    );
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 24px;
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 2;
}

.lx-leader-card:hover .lx-leader-overlay {
    opacity: 1;
}

.lx-leader-view {
    color: var(--lx-cream);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--lx-bronze);
    transform: translateY(8px);
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) 0.1s;
}

.lx-leader-card:hover .lx-leader-view {
    transform: translateY(0);
}

.lx-leader-info {
    padding: 28px 28px 32px;
    text-align: left;
    border-top: 1px solid rgba(26, 31, 46, 0.06);
    position: relative;
}

.lx-leader-info::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 28px;
    width: 36px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-leader-eyebrow {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    margin: 0;
    line-height: 1.5;
}

.lx-leader-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 26px;
    line-height: 1.25;
    font-weight: 500;
    color: var(--lx-text);
    margin: 0 0 8px;
    transition: color 0.3s ease;
}

.lx-leader-card:hover .lx-leader-name {
    color: var(--lx-navy);
}

/* ─────── Institut rahbari (chief, featured) ─────── */

.lx-leader-chief {
    position: relative;
    display: flex;
    align-items: stretch;
    background: linear-gradient(120deg, var(--lx-navy) 0%, var(--lx-charcoal) 100%);
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    box-shadow: var(--lx-shadow-luxury);
    border: 1px solid rgba(201, 169, 97, 0.25);
    margin-bottom: 56px;
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-leader-chief::before {
    content: "";
    position: absolute;
    inset: 10px;
    border: 1px solid rgba(201, 169, 97, 0.3);
    pointer-events: none;
    z-index: 3;
}

.lx-leader-chief:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 70px -20px rgba(10, 14, 26, 0.55);
    color: inherit;
}

.lx-leader-chief-photo {
    position: relative;
    flex: 0 0 38%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: linear-gradient(135deg, var(--lx-charcoal) 0%, var(--lx-navy) 100%);
}

.lx-leader-chief-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.4s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-leader-chief:hover .lx-leader-chief-photo img {
    transform: scale(1.06);
}

.lx-leader-chief-body {
    position: relative;
    z-index: 2;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 48px 56px;
}

.lx-leader-chief-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px;
    border: 1px solid var(--lx-bronze);
    color: var(--lx-bronze-soft);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    margin-bottom: 22px;
}

.lx-leader-chief-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(32.5px, 3.5vw, 46px);
    line-height: 1.15;
    font-weight: 500;
    color: var(--lx-cream);
    margin: 0 0 12px;
}

.lx-leader-chief-post {
    color: var(--lx-text-light);
    font-size: 15.5px;
    line-height: 1.6;
    max-width: 480px;
    margin-bottom: 28px;
}

.lx-leader-chief-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--lx-bronze-soft);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--lx-bronze);
    transition: gap 0.4s ease, color 0.4s ease;
}

.lx-leader-chief:hover .lx-leader-chief-cta {
    gap: 16px;
    color: var(--lx-gold);
}

/* ─────── O'rinbosar badge ─────── */

.lx-leader-tag {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    padding: 6px 14px;
    background: rgba(10, 14, 26, 0.55);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid var(--lx-bronze);
    color: var(--lx-bronze-soft);
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

@media (max-width: 767px) {
    .lx-leader-chief {
        flex-direction: column;
        margin-bottom: 40px;
    }
    .lx-leader-chief-photo {
        flex-basis: auto;
        aspect-ratio: 16 / 10;
    }
    .lx-leader-chief-body {
        padding: 32px 26px 36px;
        align-items: flex-start;
    }
    .lx-leader-chief-name {
        font-size: 28.5px;
    }
}

/* ─────── Luxury modal ─────── */

.lx-modal .modal-content {
    border: none;
    border-radius: 0;
    background: var(--lx-cream);
    box-shadow: 0 30px 80px -20px rgba(10, 14, 26, 0.45);
    overflow: hidden;
    position: relative;
}

.lx-modal .modal-content::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--lx-bronze-dark) 0%, var(--lx-gold) 50%, var(--lx-bronze-dark) 100%);
}

.lx-modal .modal-header {
    border-bottom: 1px solid rgba(139, 117, 68, 0.18);
    padding: 28px 32px 22px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.lx-modal .modal-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 28.5px;
    font-weight: 500;
    color: var(--lx-text);
    line-height: 1.3;
    margin: 0;
}

.lx-modal .btn-close {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid rgba(139, 117, 68, 0.3);
    background: transparent;
    opacity: 0.7;
    transition: all 0.3s ease;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-modal .btn-close:hover {
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
    opacity: 1;
}

.lx-modal .modal-body {
    padding: 28px 32px;
}

.lx-modal-row {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 18px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(139, 117, 68, 0.12);
    align-items: baseline;
}

.lx-modal-row:last-child {
    border-bottom: none;
}

.lx-modal-label {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}

.lx-modal-value {
    color: var(--lx-text);
    font-family: 'Inter', sans-serif;
    font-size: 16.5px;
    line-height: 1.6;
    word-break: break-word;
}

.lx-modal-value a {
    color: var(--lx-text);
    text-decoration: underline;
    text-decoration-color: var(--lx-bronze);
    text-underline-offset: 4px;
}

.lx-modal-value a:hover {
    color: var(--lx-navy);
}

.lx-modal .modal-footer {
    border-top: 1px solid rgba(139, 117, 68, 0.18);
    padding: 22px 32px;
    background: var(--lx-paper);
    justify-content: flex-end;
}

.lx-modal .modal-footer .lx-btn {
    color: var(--lx-navy);
    border-color: var(--lx-navy);
    padding: 12px 28px;
    font-size: 12px;
}

.lx-modal .modal-footer .lx-btn::before {
    background: var(--lx-navy);
}

.lx-modal .modal-footer .lx-btn:hover {
    color: var(--lx-cream);
}

/* ═══════════════════════════════════════════════════════════
   Topbar + Navbar + Mobile drawer
   ═══════════════════════════════════════════════════════════ */

/* Eski Bootstrap navbar'lar va topbar'larni yashirish (lyuks navbar bilan
   almashtirildi) */
body .topbar_address,
body nav.navbar-light:not(.lx-nav) {
    display: none !important;
}

/* ─── Topbar ─── */

.lx-topbar {
    background: var(--lx-navy);
    color: var(--lx-text-light);
    border-bottom: 1px solid rgba(201, 169, 97, 0.18);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    letter-spacing: 0.04em;
    position: relative;
    z-index: 30;
}

.lx-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    gap: 24px;
    flex-wrap: wrap;
}

.lx-topbar-left,
.lx-topbar-right {
    display: flex;
    align-items: center;
    gap: 22px;
    flex-wrap: wrap;
}

.lx-topbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(245, 243, 240, 0.78);
    text-decoration: none;
    transition: color 0.3s ease;
}

.lx-topbar-item svg {
    color: var(--lx-bronze);
    flex-shrink: 0;
}

.lx-topbar-item:hover {
    color: var(--lx-bronze-soft);
}

.lx-topbar-item:hover svg {
    color: var(--lx-gold-bright);
}

.lx-topbar-divider {
    width: 1px;
    height: 14px;
    background: rgba(201, 169, 97, 0.25);
}

@media (max-width: 768px) {
    .lx-topbar { display: none; }
}

/* ─── Main navbar ─── */

.lx-nav {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(26, 31, 46, 0.06);
    transition: background 0.4s ease, box-shadow 0.4s ease, padding 0.4s ease;
    font-family: 'Inter', sans-serif;
}

.lx-nav.is-scrolled {
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 8px 30px -12px rgba(10, 14, 26, 0.12);
}

.lx-nav-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px 24px;
    padding: 14px 0 0;
    transition: padding 0.4s ease, gap 0.4s ease;
}

.lx-nav.is-scrolled .lx-nav-inner {
    padding: 10px 0 0;
    gap: 12px 24px;
}

/* Brand */

.lx-nav-brand {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
    color: var(--lx-navy);
    flex-shrink: 0;
    order: 1;
    perspective: 600px;
}

.lx-nav-brand img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(212, 175, 55, 0.18));
    animation: lx-logo-spin 6s linear infinite;
    transform-style: preserve-3d;
    backface-visibility: visible;
}

.lx-nav-brand:hover img {
    animation-duration: 2s;
}

@keyframes lx-logo-spin {
    from { transform: rotateY(0deg); }
    to { transform: rotateY(360deg); }
}

.lx-nav-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.lx-nav-brand-small {
    color: var(--lx-bronze-dark);
    font-size: 10px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    margin-bottom: 3px;
}

.lx-nav-brand-big {
    color: var(--lx-navy);
    font-family: 'Cormorant Garamond', serif;
    font-size: 19.5px;
    font-weight: 600;
    letter-spacing: 0.005em;
}

@media (max-width: 480px) {
    .lx-nav-brand-text { display: none; }
}

/* Desktop menu */

.lx-nav-menu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px 0;
    list-style: none;
    margin: 0;
    padding: 10px 0 4px;
    order: 3;
    flex: 0 0 100%;
    justify-content: center;
    border-top: 1px solid rgba(201, 169, 97, 0.18);
    position: relative;
    transition: padding 0.4s ease;
}

.lx-nav-menu::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--lx-bronze) 35%, var(--lx-gold) 50%, var(--lx-bronze) 65%, transparent);
}

.lx-nav.is-scrolled .lx-nav-menu {
    padding: 6px 0 2px;
}

.lx-nav-item {
    position: relative;
}

.lx-nav-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 10px 9px;
    color: var(--lx-text);
    text-decoration: none;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1;
    cursor: pointer;
    transition: color 0.3s ease;
    position: relative;
    background: none;
    border: none;
    font-family: inherit;
    white-space: nowrap;
}

.lx-nav-link::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 6px;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: var(--lx-bronze);
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-nav-link:hover,
.lx-nav-item.is-open .lx-nav-link {
    color: var(--lx-bronze-dark);
}

.lx-nav-link:hover::after,
.lx-nav-item.is-open .lx-nav-link::after {
    width: calc(100% - 28px);
}

.lx-nav-link .caret {
    width: 9px;
    height: 9px;
    transition: transform 0.35s ease;
    color: var(--lx-bronze);
    flex-shrink: 0;
}

.lx-nav-item.is-open .lx-nav-link .caret {
    transform: rotate(180deg);
}

/* Dropdown */

.lx-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 240px;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.18);
    box-shadow: 0 24px 50px -12px rgba(10, 14, 26, 0.18);
    list-style: none;
    margin: 0;
    padding: 12px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px) scale(0.98);
    transform-origin: top left;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
    z-index: 60;
}

.lx-dropdown::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-nav-item:hover .lx-dropdown,
.lx-nav-item.is-open .lx-dropdown,
.lx-nav-item:focus-within .lx-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    transition: opacity 0.35s ease, transform 0.35s ease, visibility 0s linear 0s;
}

.lx-nav-item:last-child .lx-dropdown {
    left: auto;
    right: 0;
    transform-origin: top right;
}

.lx-dropdown a {
    display: block;
    padding: 11px 24px;
    color: var(--lx-text);
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    position: relative;
    transition: padding-left 0.3s ease, color 0.3s ease, background 0.3s ease;
}

.lx-dropdown a::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 50%;
    width: 0;
    height: 1px;
    background: var(--lx-bronze);
    transform: translateY(-50%);
    transition: width 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-dropdown a:hover {
    color: var(--lx-navy);
    background: rgba(201, 169, 97, 0.06);
    padding-left: 38px;
}

.lx-dropdown a:hover::before {
    width: 14px;
}

/* ── Sub-flyout (3-level desktop) ──────────────────────── */
.lx-dropdown-item.has-sub {
    position: relative;
}

.lx-dropdown-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 24px;
    color: var(--lx-text);
    font-size: 14px;
    line-height: 1.5;
    cursor: default;
    position: relative;
    transition: color 0.3s ease, background 0.3s ease, padding-left 0.3s ease;
}

.lx-dropdown-trigger::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 50%;
    width: 0;
    height: 1px;
    background: var(--lx-bronze);
    transform: translateY(-50%);
    transition: width 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-dropdown-trigger .caret {
    flex-shrink: 0;
    color: var(--lx-bronze);
    transition: transform 0.3s ease;
}

.lx-dropdown-item.has-sub:hover > .lx-dropdown-trigger,
.lx-dropdown-item.has-sub:focus-within > .lx-dropdown-trigger {
    color: var(--lx-navy);
    background: rgba(201, 169, 97, 0.06);
    padding-left: 38px;
}

.lx-dropdown-item.has-sub:hover > .lx-dropdown-trigger::before,
.lx-dropdown-item.has-sub:focus-within > .lx-dropdown-trigger::before {
    width: 14px;
}

.lx-dropdown-item.has-sub:hover > .lx-dropdown-trigger .caret,
.lx-dropdown-item.has-sub:focus-within > .lx-dropdown-trigger .caret {
    transform: translateX(3px);
}

.lx-dropdown-sub {
    position: absolute;
    top: -8px;
    left: calc(100% + 4px);
    min-width: 260px;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.18);
    box-shadow: 0 24px 50px -12px rgba(10, 14, 26, 0.18);
    list-style: none;
    margin: 0;
    padding: 12px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-8px) scale(0.98);
    transform-origin: top left;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
    z-index: 70;
}

.lx-dropdown-sub::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-dropdown-item.has-sub:hover > .lx-dropdown-sub,
.lx-dropdown-item.has-sub:focus-within > .lx-dropdown-sub {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
    transition: opacity 0.35s ease, transform 0.35s ease, visibility 0s linear 0s;
}

/* Right-aligned dropdowns flip the sub-flyout to the left */
.lx-nav-item:last-child .lx-dropdown .lx-dropdown-sub,
.lx-nav-item:nth-last-child(2) .lx-dropdown .lx-dropdown-sub {
    left: auto;
    right: calc(100% + 4px);
    transform-origin: top right;
    transform: translateX(8px) scale(0.98);
}

.lx-nav-item:last-child .lx-dropdown-item.has-sub:hover > .lx-dropdown-sub,
.lx-nav-item:nth-last-child(2) .lx-dropdown-item.has-sub:hover > .lx-dropdown-sub,
.lx-nav-item:last-child .lx-dropdown-item.has-sub:focus-within > .lx-dropdown-sub,
.lx-nav-item:nth-last-child(2) .lx-dropdown-item.has-sub:focus-within > .lx-dropdown-sub {
    transform: translateX(0) scale(1);
}

.lx-dropdown-sub a {
    display: block;
    padding: 11px 24px;
    color: var(--lx-text);
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    position: relative;
    transition: padding-left 0.3s ease, color 0.3s ease, background 0.3s ease;
}

.lx-dropdown-sub a::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 50%;
    width: 0;
    height: 1px;
    background: var(--lx-bronze);
    transform: translateY(-50%);
    transition: width 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-dropdown-sub a:hover {
    color: var(--lx-navy);
    background: rgba(201, 169, 97, 0.06);
    padding-left: 38px;
}

.lx-dropdown-sub a:hover::before {
    width: 14px;
}

/* Right actions */

.lx-nav-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    order: 2;
    margin-left: auto;
}

.lx-nav-icon-btn {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(201, 169, 97, 0.3);
    background: transparent;
    color: var(--lx-navy);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    transition: all 0.4s ease;
}

.lx-nav-icon-btn:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
    transform: translateY(-2px);
    box-shadow: var(--lx-shadow-gold);
}

/* Language selector — custom button group */

.lx-nav-lang {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 999px;
    padding: 4px;
    background: transparent;
    gap: 2px;
}

.lx-nav-lang a {
    padding: 6px 11px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lx-text-soft);
    text-decoration: none;
    border-radius: 999px;
    transition: all 0.3s ease;
}

.lx-nav-lang a:hover {
    color: var(--lx-navy);
}

.lx-nav-lang a.is-active {
    background: var(--lx-navy);
    color: var(--lx-bronze-soft);
}

@media (max-width: 1199px) {
    .lx-nav-menu,
    .lx-nav-lang { display: none; }
}

/* Hamburger */

.lx-nav-hamburger {
    width: 44px;
    height: 44px;
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 50%;
    background: transparent;
    color: var(--lx-navy);
    cursor: pointer;
    padding: 0;
    display: none;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
    position: relative;
}

.lx-nav-hamburger:hover {
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
}

.lx-nav-hamburger span {
    position: absolute;
    left: 12px;
    width: 20px;
    height: 1.5px;
    background: var(--lx-navy);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.3s ease,
                top 0.3s ease;
}

.lx-nav-hamburger span:nth-child(1) { top: 16px; }
.lx-nav-hamburger span:nth-child(2) { top: 21px; }
.lx-nav-hamburger span:nth-child(3) { top: 26px; }

.lx-nav-hamburger.is-open span:nth-child(1) {
    top: 21px;
    transform: rotate(45deg);
}
.lx-nav-hamburger.is-open span:nth-child(2) {
    opacity: 0;
}
.lx-nav-hamburger.is-open span:nth-child(3) {
    top: 21px;
    transform: rotate(-45deg);
}

@media (max-width: 1199px) {
    .lx-nav-hamburger { display: inline-flex; }
}

/* Search overlay */

.lx-nav-search-overlay {
    position: fixed;
    inset: 0;
    background: rgba(10, 14, 26, 0.92);
    backdrop-filter: blur(8px);
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0s linear 0.4s;
}

.lx-nav-search-overlay.is-open {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.4s ease, visibility 0s linear 0s;
}

.lx-nav-search-overlay form {
    width: min(720px, 90%);
    position: relative;
    transform: translateY(20px);
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-nav-search-overlay.is-open form {
    transform: translateY(0);
}

.lx-nav-search-overlay input {
    width: 100%;
    padding: 22px 0 22px 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--lx-bronze);
    color: var(--lx-cream);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(26px, 3.3vw, 39px);
    font-style: italic;
    outline: none;
}

.lx-nav-search-overlay input::placeholder {
    color: rgba(245, 243, 240, 0.4);
}

.lx-nav-search-overlay .submit {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: var(--lx-bronze);
    cursor: pointer;
    padding: 8px;
}

.lx-nav-search-close {
    position: fixed;
    top: 24px;
    right: 24px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid var(--lx-bronze);
    background: transparent;
    color: var(--lx-bronze);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.lx-nav-search-close:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    transform: rotate(90deg);
}

/* ─── Mobile drawer ─── */

.lx-drawer-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(10, 14, 26, 0.55);
    backdrop-filter: blur(4px);
    z-index: 90;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0s linear 0.4s;
}

.lx-drawer-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.4s ease, visibility 0s linear 0s;
}

.lx-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(420px, 86%);
    background: var(--lx-navy);
    color: var(--lx-cream);
    z-index: 95;
    transform: translateX(100%);
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: -20px 0 60px -10px rgba(10, 14, 26, 0.6);
}

.lx-drawer.is-open {
    transform: translateX(0);
}

.lx-drawer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.14);
    flex-shrink: 0;
}

.lx-drawer-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: var(--lx-cream);
}

.lx-drawer-brand img {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.lx-drawer-brand span {
    font-family: 'Cormorant Garamond', serif;
    font-size: 17.5px;
    line-height: 1.2;
}

.lx-drawer-close {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(201, 169, 97, 0.3);
    background: transparent;
    color: var(--lx-bronze);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.lx-drawer-close:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    transform: rotate(90deg);
}

.lx-drawer-body {
    flex: 1;
    overflow-y: auto;
    padding: 24px 0;
}

.lx-drawer-search {
    padding: 0 24px 22px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.14);
}

.lx-drawer-search form {
    position: relative;
}

.lx-drawer-search input {
    width: 100%;
    padding: 12px 44px 12px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(201, 169, 97, 0.25);
    border-radius: 999px;
    color: var(--lx-cream);
    font-family: 'Inter', sans-serif;
    font-size: 15.5px;
    outline: none;
    transition: border-color 0.3s ease;
}

.lx-drawer-search input:focus {
    border-color: var(--lx-bronze);
}

.lx-drawer-search input::placeholder {
    color: rgba(245, 243, 240, 0.4);
}

.lx-drawer-search button {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: none;
    background: var(--lx-bronze);
    color: var(--lx-navy);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-drawer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.lx-drawer-menu > li {
    border-bottom: 1px solid rgba(201, 169, 97, 0.08);
}

.lx-drawer-menu > li > a,
.lx-drawer-menu .lx-drawer-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 18px 24px;
    color: var(--lx-cream);
    text-decoration: none;
    font-size: 15.5px;
    font-weight: 500;
    letter-spacing: 0.04em;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: color 0.3s ease, padding-left 0.3s ease;
    font-family: inherit;
}

.lx-drawer-menu > li > a,
.lx-drawer-menu > li > .lx-drawer-toggle {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.lx-drawer-menu > li > a:hover,
.lx-drawer-menu .lx-drawer-toggle:hover,
.lx-drawer-menu > li.is-open > .lx-drawer-toggle {
    color: var(--lx-bronze-soft);
    padding-left: 32px;
}

.lx-drawer-menu .caret {
    color: var(--lx-bronze);
    transition: transform 0.35s ease;
}

.lx-drawer-menu > li.is-open .caret {
    transform: rotate(180deg);
}

.lx-drawer-submenu {
    list-style: none;
    margin: 0;
    padding: 0;
    background: rgba(0, 0, 0, 0.18);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-drawer-menu > li.is-open .lx-drawer-submenu {
    max-height: 400px;
}

.lx-drawer-submenu a {
    display: block;
    padding: 12px 24px 12px 44px;
    color: rgba(245, 243, 240, 0.7);
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    transition: color 0.3s ease, padding-left 0.3s ease;
    position: relative;
}

.lx-drawer-submenu a::before {
    content: "";
    position: absolute;
    left: 24px;
    top: 50%;
    width: 12px;
    height: 1px;
    background: var(--lx-bronze);
    opacity: 0.5;
    transform: translateY(-50%);
    transition: opacity 0.3s ease;
}

.lx-drawer-submenu a:hover {
    color: var(--lx-bronze-soft);
    padding-left: 52px;
}

.lx-drawer-submenu a:hover::before {
    opacity: 1;
}

/* ── Nested drawer submenu (3-level) ───────────────────── */
.lx-drawer-submenu li.has-sub {
    position: relative;
}

.lx-drawer-toggle-sub {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 24px 12px 44px;
    background: transparent;
    border: 0;
    color: rgba(245, 243, 240, 0.7);
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
    cursor: pointer;
    position: relative;
    transition: color 0.3s ease, background 0.3s ease, padding-left 0.3s ease;
}

.lx-drawer-toggle-sub::before {
    content: "";
    position: absolute;
    left: 24px;
    top: 50%;
    width: 12px;
    height: 1px;
    background: var(--lx-bronze);
    opacity: 0.5;
    transform: translateY(-50%);
    transition: opacity 0.3s ease;
}

.lx-drawer-toggle-sub .caret {
    flex-shrink: 0;
    color: var(--lx-bronze);
    transition: transform 0.3s ease;
}

.lx-drawer-submenu li.has-sub.is-open > .lx-drawer-toggle-sub,
.lx-drawer-toggle-sub:hover {
    color: var(--lx-bronze-soft);
    background: rgba(212, 175, 55, 0.05);
}

.lx-drawer-submenu li.has-sub.is-open > .lx-drawer-toggle-sub::before,
.lx-drawer-toggle-sub:hover::before {
    opacity: 1;
}

.lx-drawer-submenu li.has-sub.is-open > .lx-drawer-toggle-sub .caret {
    transform: rotate(180deg);
}

.lx-drawer-subsubmenu {
    list-style: none;
    margin: 0;
    padding: 0;
    background: rgba(0, 0, 0, 0.28);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-drawer-submenu li.has-sub.is-open > .lx-drawer-subsubmenu {
    max-height: 360px;
}

.lx-drawer-subsubmenu a {
    display: block;
    padding: 11px 24px 11px 64px;
    color: rgba(245, 243, 240, 0.6);
    text-decoration: none;
    font-size: 13.5px;
    line-height: 1.45;
    position: relative;
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.lx-drawer-subsubmenu a::before {
    content: "";
    position: absolute;
    left: 44px;
    top: 50%;
    width: 10px;
    height: 1px;
    background: var(--lx-gold);
    opacity: 0.45;
    transform: translateY(-50%);
    transition: opacity 0.3s ease, width 0.3s ease;
}

.lx-drawer-subsubmenu a:hover {
    color: var(--lx-gold-bright);
    padding-left: 72px;
}

.lx-drawer-subsubmenu a:hover::before {
    opacity: 1;
    width: 14px;
}

.lx-drawer-foot {
    padding: 22px 24px;
    border-top: 1px solid rgba(201, 169, 97, 0.14);
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex-shrink: 0;
    background: rgba(0, 0, 0, 0.2);
}

.lx-drawer-lang {
    display: flex;
    align-items: center;
    gap: 4px;
    border: 1px solid rgba(201, 169, 97, 0.25);
    border-radius: 999px;
    padding: 4px;
    background: transparent;
    align-self: flex-start;
}

.lx-drawer-lang a {
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(245, 243, 240, 0.7);
    text-decoration: none;
    border-radius: 999px;
    transition: all 0.3s ease;
}

.lx-drawer-lang a.is-active {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-drawer-contact {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: rgba(245, 243, 240, 0.7);
    font-size: 13px;
}

.lx-drawer-contact a {
    color: inherit;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.lx-drawer-contact a:hover {
    color: var(--lx-bronze-soft);
}

/* Body lock when drawer/overlay open */
body.lx-no-scroll {
    overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════
   Footer
   ═══════════════════════════════════════════════════════════ */

.lx-footer {
    position: relative;
    background: linear-gradient(180deg, var(--lx-navy) 0%, #060912 100%);
    color: var(--lx-text-light);
    overflow: hidden;
    margin-top: 0;
    font-family: 'Inter', sans-serif;
}

.lx-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 12% 0%, rgba(212, 175, 55, 0.08) 0%, transparent 45%),
        radial-gradient(circle at 88% 100%, rgba(201, 169, 97, 0.06) 0%, transparent 50%);
    pointer-events: none;
}

.lx-footer::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, var(--lx-bronze) 25%, var(--lx-gold) 50%, var(--lx-bronze) 75%, transparent 100%);
    opacity: 0.7;
}

.lx-footer-inner {
    position: relative;
    z-index: 2;
    padding: 90px 0 0;
}

.lx-footer-grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr 1.1fr;
    gap: 56px;
    padding-bottom: 72px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.14);
}

/* ─── Brand column ─── */

.lx-footer-brand {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.lx-footer-logo {
    display: flex;
    align-items: center;
    gap: 18px;
    text-decoration: none;
}

.lx-footer-logo img {
    width: 64px;
    height: 64px;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(212, 175, 55, 0.25));
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-footer-logo:hover img {
    transform: scale(1.05) rotate(-3deg);
}

.lx-footer-logo-text {
    color: var(--lx-cream);
}

.lx-footer-logo-text .small {
    display: block;
    color: var(--lx-bronze);
    font-size: 11px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.lx-footer-logo-text .big {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    color: var(--lx-cream);
}

.lx-footer-tagline {
    color: rgba(245, 243, 240, 0.6);
    font-size: 15.5px;
    line-height: 1.7;
    margin: 0;
    max-width: 380px;
}

.lx-footer-social {
    display: flex;
    gap: 12px;
    margin-top: 6px;
}

.lx-footer-social a {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(201, 169, 97, 0.35);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    text-decoration: none;
    transition: all 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.lx-footer-social a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--lx-bronze);
    transform: scale(0);
    border-radius: 50%;
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-footer-social a:hover {
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
    transform: translateY(-4px);
    box-shadow: var(--lx-shadow-gold);
}

.lx-footer-social a:hover::before {
    transform: scale(1);
}

.lx-footer-social a i {
    position: relative;
    z-index: 1;
    font-size: 15.5px;
}

/* ─── Title for each column ─── */

.lx-footer-title {
    color: var(--lx-bronze);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    margin: 0 0 26px;
    padding-bottom: 14px;
    position: relative;
    display: inline-block;
}

.lx-footer-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 36px;
    height: 1px;
    background: var(--lx-bronze);
}

/* ─── Link list ─── */

.lx-footer-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.lx-footer-links a {
    color: rgba(245, 243, 240, 0.7);
    text-decoration: none;
    font-size: 15.5px;
    line-height: 1.5;
    position: relative;
    padding-left: 0;
    transition: color 0.35s ease, padding-left 0.35s ease;
    display: inline-block;
}

.lx-footer-links a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 0;
    height: 1px;
    background: var(--lx-bronze);
    transition: width 0.4s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-footer-links a:hover {
    color: var(--lx-cream);
    padding-left: 22px;
}

.lx-footer-links a:hover::before {
    width: 14px;
}

/* ─── Contact column items ─── */

.lx-footer-contact {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.lx-footer-contact li {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    color: rgba(245, 243, 240, 0.78);
    font-size: 15.5px;
    line-height: 1.55;
}

.lx-footer-contact .icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
}

.lx-footer-contact li:hover .icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
}

.lx-footer-contact a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
    word-break: break-word;
}

.lx-footer-contact a:hover {
    color: var(--lx-bronze-soft);
}

.lx-footer-contact .label {
    display: block;
    color: var(--lx-bronze);
    font-size: 11px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

/* ─── Bottom bar ─── */

.lx-footer-bottom {
    padding: 28px 0 32px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    color: rgba(245, 243, 240, 0.45);
    font-size: 13px;
    letter-spacing: 0.06em;
}

.lx-footer-bottom a {
    color: var(--lx-bronze);
    text-decoration: none;
    transition: color 0.3s ease;
}

.lx-footer-bottom a:hover {
    color: var(--lx-gold-bright);
}

.lx-footer-bottom .lx-footer-credit {
    color: rgba(245, 243, 240, 0.45);
}

.lx-footer-bottom .lx-footer-credit strong {
    color: var(--lx-bronze);
    font-weight: 500;
}

.lx-footer-rating {
    opacity: 0.5;
    transition: opacity 0.35s ease;
}

.lx-footer-rating:hover {
    opacity: 1;
}

.lx-footer-rating img {
    border: none;
    display: block;
}

/* ─── Responsive footer ─── */

/* Tablet landscape (max 1200px) — 4 ustun → brand to'liq qator + 3 ustun */
@media (max-width: 1200px) {
    .lx-footer-inner { padding-top: 80px; }
    .lx-footer-grid {
        grid-template-columns: 1fr 1fr 1.2fr;
        gap: 44px;
        padding-bottom: 60px;
    }
    .lx-footer-brand {
        grid-column: 1 / -1;
        margin-bottom: 8px;
    }
    .lx-footer-tagline {
        max-width: 100%;
    }
}

/* Tablet portrait (max 900px) — 2 ustun, contact to'liq qator */
@media (max-width: 900px) {
    .lx-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 36px 32px;
    }
    .lx-footer-grid > *:nth-child(4) {
        grid-column: 1 / -1;
    }
}

/* Phone (max 640px) — 1 ustun */
@media (max-width: 640px) {
    .lx-footer-inner { padding-top: 64px; }
    .lx-footer-grid {
        grid-template-columns: 1fr;
        gap: 36px;
        padding-bottom: 44px;
    }
    .lx-footer-grid > *:nth-child(4) {
        grid-column: auto;
    }

    .lx-footer-logo {
        gap: 14px;
    }
    .lx-footer-logo img {
        width: 54px;
        height: 54px;
    }
    .lx-footer-logo-text .small {
        font-size: 10px;
        letter-spacing: 0.28em;
    }
    .lx-footer-logo-text .big {
        font-size: 19.5px;
    }
    .lx-footer-tagline {
        font-size: 14px;
        line-height: 1.65;
    }

    .lx-footer-title {
        font-size: 11px;
        letter-spacing: 0.28em;
        margin-bottom: 22px;
    }
    .lx-footer-title::after {
        width: 28px;
    }

    .lx-footer-links {
        gap: 12px;
    }
    .lx-footer-links a {
        font-size: 14px;
    }

    .lx-footer-contact {
        gap: 16px;
    }
    .lx-footer-contact li {
        font-size: 14px;
        gap: 12px;
    }
    .lx-footer-contact .icon {
        width: 32px;
        height: 32px;
    }
    .lx-footer-contact .icon svg {
        width: 12px;
        height: 12px;
    }
    .lx-footer-contact .label {
        font-size: 10px;
        letter-spacing: 0.22em;
        margin-bottom: 3px;
    }

    .lx-footer-social {
        gap: 10px;
    }
    .lx-footer-social a {
        width: 40px;
        height: 40px;
    }

    .lx-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        gap: 16px;
        padding: 24px 0 28px;
        font-size: 12px;
        line-height: 1.6;
    }
    .lx-footer-bottom > * {
        width: 100%;
    }
    .lx-footer-rating {
        opacity: 0.7;
    }
}

/* Very small phone (max 380px) */
@media (max-width: 380px) {
    .lx-footer-inner { padding-top: 50px; }
    .lx-footer-grid { gap: 30px; padding-bottom: 36px; }

    .lx-footer-logo {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    .lx-footer-logo img {
        width: 50px;
        height: 50px;
    }

    .lx-footer-social {
        flex-wrap: wrap;
    }
    .lx-footer-social a {
        width: 38px;
        height: 38px;
    }

    .lx-footer-contact li {
        flex-wrap: wrap;
    }

    .lx-footer-bottom {
        font-size: 11px;
        padding: 20px 0 24px;
    }
}

/* ═══════════════════════════════════════════════════════════
   About + Leaders — Responsive
   ═══════════════════════════════════════════════════════════ */

/* Tablet (max 992px) */
@media (max-width: 992px) {
    .lx-page-hero {
        padding: 110px 0 80px;
    }
    .lx-page-hero-decor {
        width: 380px;
        height: 380px;
        right: -150px;
        opacity: 0.05;
    }

    .lx-about-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }
    .lx-about-image {
        max-width: 480px;
        margin: 0 auto;
        padding-bottom: 24px;
        padding-right: 24px;
        width: 100%;
    }
    .lx-about-image::before {
        width: calc(100% - 24px);
        height: calc(100% - 24px);
    }

    .lx-pillars-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .lx-leaders-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .lx-modal .modal-dialog {
        max-width: calc(100% - 32px);
        margin: 1.5rem auto;
    }
}

/* Small tablet / large phone (max 768px) */
@media (max-width: 768px) {
    .lx-page-hero {
        padding: 100px 0 70px;
    }
    .lx-page-hero-decor {
        width: 320px;
        height: 320px;
        right: -180px;
        opacity: 0.04;
    }

    .lx-pillars-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lx-pillar {
        padding: 36px 28px;
    }
}

/* Phone (max 640px) */
@media (max-width: 640px) {
    .lx-page-hero {
        padding: 80px 0 60px;
    }
    .lx-page-title {
        font-size: clamp(28.5px, 8.2vw, 39px);
        line-height: 1.15;
    }
    .lx-page-hero-decor {
        display: none;
    }
    .lx-breadcrumb {
        font-size: 11px;
        letter-spacing: 0.22em;
        margin-bottom: 22px;
        flex-wrap: wrap;
        row-gap: 6px;
    }
    .lx-page-divider {
        margin: 18px 0;
    }
    .lx-page-meta {
        font-size: 12px;
        letter-spacing: 0.14em;
    }

    /* About */
    .lx-about-grid {
        gap: 40px;
    }
    .lx-about-image {
        padding-bottom: 16px;
        padding-right: 16px;
        max-width: 100%;
    }
    .lx-about-image::before {
        width: calc(100% - 16px);
        height: calc(100% - 16px);
    }
    .lx-image-frame {
        aspect-ratio: 4 / 4.5;
    }
    .lx-image-badge {
        padding: 14px 18px;
        bottom: -10px;
        left: -8px;
    }
    .lx-badge-num {
        font-size: 28.5px;
    }
    .lx-image-badge .lx-eyebrow {
        font-size: 8.5px;
    }

    .lx-rich-text {
        font-size: 16.5px;
        line-height: 1.75;
    }
    .lx-rich-text p:first-of-type::first-letter {
        font-size: 48px;
        margin: 4px 10px 0 0;
    }

    .lx-social-strip {
        gap: 10px;
        margin-top: 28px;
        padding-top: 22px;
    }
    .lx-social-strip-label {
        font-size: 11px;
        letter-spacing: 0.22em;
        margin-right: 4px;
        flex-basis: 100%;
        margin-bottom: 4px;
    }
    .lx-social-link {
        width: 38px;
        height: 38px;
    }

    /* Pillars */
    .lx-pillar {
        padding: 32px 24px;
    }
    .lx-pillar-icon {
        width: 64px;
        height: 64px;
        margin-bottom: 20px;
    }
    .lx-pillar h3 {
        font-size: 23px;
    }

    /* Quote */
    .lx-quote-section {
        padding: 70px 0;
    }
    .lx-quote {
        padding: 0 12px;
    }
    .lx-quote-mark {
        font-size: 109px;
        margin-bottom: -14px;
    }
    .lx-quote-text {
        font-size: clamp(19.5px, 5.5vw, 26px);
    }
    .lx-quote-author {
        font-size: 12px;
        letter-spacing: 0.25em;
    }
    .lx-quote-author::before {
        width: 20px;
        margin-right: 10px;
    }

    /* Leaders grid */
    .lx-leaders-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .lx-leader-photo {
        aspect-ratio: 4 / 4.2;
    }
    .lx-leader-photo-empty span {
        font-size: 70px;
    }
    .lx-leader-info {
        padding: 22px 22px 26px;
    }
    .lx-leader-info::before {
        left: 22px;
    }
    .lx-leader-name {
        font-size: 23px;
    }
    .lx-leader-eyebrow {
        font-size: 11px;
        letter-spacing: 0.22em;
    }
    .lx-leader-overlay {
        padding: 18px;
    }

    /* Modal */
    .lx-modal .modal-dialog {
        max-width: calc(100% - 24px);
        margin: 1rem auto;
    }
    .lx-modal .modal-content::before {
        height: 3px;
    }
    .lx-modal .modal-header {
        padding: 22px 22px 18px;
        gap: 14px;
    }
    .lx-modal .modal-title {
        font-size: 23px;
    }
    .lx-modal .modal-body {
        padding: 22px;
    }
    .lx-modal .modal-footer {
        padding: 18px 22px;
    }
    .lx-modal-row {
        grid-template-columns: 1fr;
        gap: 4px;
        padding: 12px 0;
    }
    .lx-modal-label {
        font-size: 11px;
        letter-spacing: 0.22em;
    }
    .lx-modal-value {
        font-size: 15.5px;
    }

    /* Back CTA */
    .lx-back-wrap {
        padding-top: 40px;
    }
    .lx-btn-dark {
        padding: 14px 28px;
        font-size: 12px;
    }
}

/* Very small phone (max 380px) */
@media (max-width: 380px) {
    .lx-page-title {
        font-size: 26px;
    }
    .lx-image-badge {
        padding: 12px 14px;
        left: -6px;
    }
    .lx-badge-num {
        font-size: 24px;
    }
}

/* ─────── Hero — to'liq viewport (sticky navbar tepasida turadi) ─────── */

body.home-page .lx-hero,
body.home-page .lx-hero .lx-hero-slide {
    height: 100vh;
    min-height: 600px;
}

/* ─────── Responsive ─────── */

@media (max-width: 992px) {
    .lx-news-layout {
        grid-template-columns: 1fr;
    }
    .lx-announce-panel {
        position: static;
        margin-top: 56px;
    }
    .lx-announce-track {
        min-height: 440px;
    }
    .lx-directions-grid {
        grid-template-columns: 1fr 1fr;
    }
    .lx-stats-grid {
        grid-template-columns: 1fr 1fr;
    }

    /* Hero slider — tablet */
    .lx-hero::after { inset: 16px; }
    .lx-hero-counter { top: 32px; left: 32px; }
    .lx-hero-counter .num.current { font-size: 26px; }
    .lx-hero-counter .num { font-size: 19.5px; }
    .lx-hero-indicators { right: 32px; gap: 11px; }
    .lx-hero-indicator { height: 22px; }
    .lx-hero-indicator.is-active { height: 44px; }
    .lx-hero-arrow { width: 48px; height: 48px; }
    .lx-hero-arrow.prev { left: 32px; }
    .lx-hero-arrow.next { right: 76px; }
}

@media (max-width: 640px) {
    .lx-section {
        padding: 70px 0;
    }
    .lx-directions-grid {
        grid-template-columns: 1fr;
    }
    .lx-stats-grid {
        grid-template-columns: 1fr;
    }
    .lx-hero {
        min-height: 540px;
    }

    /* Hero slider — mobile */
    .lx-hero::after { display: none; }
    .lx-hero-counter {
        top: 24px;
        left: 24px;
        gap: 10px;
    }
    .lx-hero-counter .num.current { font-size: 22px; }
    .lx-hero-counter .num { font-size: 16.5px; }
    .lx-hero-counter .line { width: 22px; }
    .lx-hero-indicators {
        right: auto;
        left: 50%;
        bottom: 36px;
        top: auto;
        transform: translateX(-50%);
        flex-direction: row;
        gap: 10px;
    }
    .lx-hero-indicator {
        width: 22px;
        height: 1px;
    }
    .lx-hero-indicator:hover {
        width: 28px;
        height: 1px;
    }
    .lx-hero-indicator.is-active {
        width: 44px;
        height: 2px;
    }
    .lx-hero-arrow { display: none; }
    .lx-scroll-hint { display: none; }
}

/* ═══════════════════════════════════════════════════════════
   Yangiliklar — listing + article single
   ═══════════════════════════════════════════════════════════ */

/* News listing — sahifaning asosiy gridi */
.lx-news-list-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* Excerpt qo'shimchasi */
.lx-news-card .lx-news-excerpt {
    color: var(--lx-text-soft);
    font-size: 14px;
    line-height: 1.65;
    margin: 0 0 18px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Empty state */
.lx-empty-state {
    text-align: center;
    padding: 80px 24px;
    color: var(--lx-text-soft);
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 22px;
}

.lx-empty-state::before {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 0 auto 22px;
}

/* Pagination — Bootstrap markup ustiga lyuks override */
.lx-pagination {
    margin-top: 60px;
    display: flex;
    justify-content: center;
}

.lx-pagination .pagination,
.lx-pagination ul {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.lx-pagination .page-item .page-link,
.lx-pagination li > a,
.lx-pagination li > span {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(201, 169, 97, 0.3);
    color: var(--lx-text);
    background: transparent;
    border-radius: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
    box-shadow: none;
    cursor: pointer;
}

.lx-pagination .page-item .page-link:hover,
.lx-pagination li > a:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
    transform: translateY(-2px);
    box-shadow: var(--lx-shadow-gold);
}

.lx-pagination .page-item.active .page-link,
.lx-pagination .active > span {
    background: var(--lx-navy);
    color: var(--lx-bronze-soft);
    border-color: var(--lx-navy);
}

.lx-pagination .page-item.disabled .page-link,
.lx-pagination .disabled > span {
    opacity: 0.35;
    pointer-events: none;
}

/* ─── Article single (news_show) ─── */

.lx-article {
    max-width: 880px;
    margin: 0 auto;
}

.lx-article-meta {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 22px;
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
}

.lx-article-meta .dot {
    width: 4px;
    height: 4px;
    background: var(--lx-bronze);
    border-radius: 50%;
}

.lx-article-meta .cat {
    color: var(--lx-bronze);
}

/* Photo gallery */
.lx-article-gallery {
    margin: 0 0 44px;
    position: relative;
    background: linear-gradient(135deg, var(--lx-charcoal), var(--lx-navy));
    overflow: hidden;
}

.lx-article-gallery .lx-gallery-track {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.lx-article-gallery .lx-gallery-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.04);
    transition: opacity 0.85s cubic-bezier(0.2, 0.7, 0.2, 1),
                transform 1.4s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-article-gallery .lx-gallery-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

.lx-article-gallery .lx-gallery-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.lx-article-gallery .lx-gallery-empty {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    color: var(--lx-bronze);
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 15.5px;
    opacity: 0.6;
}

.lx-article-gallery .lx-gallery-empty::before,
.lx-article-gallery .lx-gallery-empty::after {
    content: "";
    width: 50px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-gallery-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid rgba(201, 169, 97, 0.6);
    background: rgba(10, 14, 26, 0.4);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    color: var(--lx-bronze);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
    z-index: 5;
    padding: 0;
}

.lx-gallery-nav:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-gallery-nav.prev { left: 16px; }
.lx-gallery-nav.next { right: 16px; }

.lx-gallery-dots {
    position: absolute;
    bottom: 18px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
    z-index: 4;
}

.lx-gallery-dot {
    width: 26px;
    height: 2px;
    background: rgba(245, 243, 240, 0.35);
    border: none;
    cursor: pointer;
    padding: 0;
    transition: all 0.4s ease;
}

.lx-gallery-dot.is-active {
    background: var(--lx-bronze);
    width: 44px;
}

/* Article body */

.lx-article-lead {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: clamp(19.5px, 2vw, 24px);
    line-height: 1.6;
    color: var(--lx-text);
    margin: 0 0 32px;
    padding-left: 24px;
    border-left: 2px solid var(--lx-bronze);
}

.lx-article-body {
    color: var(--lx-text);
    font-family: 'Inter', sans-serif;
    font-size: 17.5px;
    line-height: 1.85;
}

.lx-article-body p { margin: 0 0 22px; }
.lx-article-body strong, .lx-article-body b { color: var(--lx-navy); font-weight: 600; }
.lx-article-body em, .lx-article-body i { color: var(--lx-bronze-dark); font-style: italic; }

.lx-article-body a {
    color: var(--lx-bronze-dark);
    text-decoration: underline;
    text-decoration-color: var(--lx-bronze);
    text-underline-offset: 4px;
    transition: color 0.3s ease;
}

.lx-article-body a:hover { color: var(--lx-navy); }

.lx-article-body h2,
.lx-article-body h3,
.lx-article-body h4 {
    font-family: 'Cormorant Garamond', serif;
    color: var(--lx-text);
    line-height: 1.3;
    margin: 36px 0 16px;
    font-weight: 500;
}

.lx-article-body h2 { font-size: 30.5px; }
.lx-article-body h3 { font-size: 26px; }
.lx-article-body h4 { font-size: 22px; }

.lx-article-body ul,
.lx-article-body ol { margin: 0 0 22px; padding-left: 24px; }

.lx-article-body li { margin-bottom: 8px; }

.lx-article-body blockquote {
    margin: 28px 0;
    padding: 18px 26px;
    border-left: 2px solid var(--lx-bronze);
    background: var(--lx-paper);
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--lx-text);
    font-size: 19.5px;
    line-height: 1.6;
}

.lx-article-body img {
    max-width: 100%;
    height: auto;
    margin: 20px 0;
    box-shadow: var(--lx-shadow-card);
}

.lx-article-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 22px 0;
}

.lx-article-body th,
.lx-article-body td {
    padding: 12px 14px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.2);
    text-align: left;
}

.lx-article-body th {
    font-weight: 600;
    color: var(--lx-navy);
    background: var(--lx-paper);
    font-size: 15.5px;
    letter-spacing: 0.05em;
}

/* Video frame */
.lx-article-video {
    margin: 36px 0;
    padding: 8px;
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-bronze-dark) 100%);
    box-shadow: var(--lx-shadow-card);
    transition: box-shadow 0.4s ease;
}

.lx-article-video:hover { box-shadow: var(--lx-shadow-luxury); }
.lx-article-video .ratio { background: var(--lx-navy); overflow: hidden; }
.lx-article-video iframe { width: 100%; height: 100%; display: block; border: 0; }

/* Share strip */
.lx-article-share {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 50px 0 0;
    padding-top: 32px;
    border-top: 1px solid rgba(201, 169, 97, 0.2);
    flex-wrap: wrap;
}

.lx-article-share-label {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}

.lx-article-foot {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 60px;
}

/* Responsive yangiliklar */
@media (max-width: 992px) {
    .lx-news-list-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
    .lx-article-gallery .lx-gallery-track {
        aspect-ratio: 16 / 10;
    }
}

@media (max-width: 640px) {
    .lx-news-list-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }
    .lx-article-gallery .lx-gallery-track {
        aspect-ratio: 4 / 3;
    }
    .lx-gallery-nav {
        width: 38px;
        height: 38px;
    }
    .lx-gallery-nav.prev { left: 10px; }
    .lx-gallery-nav.next { right: 10px; }
    .lx-article-lead {
        font-size: 18.5px;
        padding-left: 16px;
    }
    .lx-article-body { font-size: 16.5px; line-height: 1.75; }
    .lx-pagination .page-item .page-link,
    .lx-pagination li > a,
    .lx-pagination li > span {
        width: 38px;
        height: 38px;
        font-size: 13px;
    }
}

/* ═══════════════════════════════════════════════════════════
   Bog'lanish sahifasi
   ═══════════════════════════════════════════════════════════ */

/* ─── Quick contact cards (yuqori 3 ta kart) ─── */

.lx-contact-quick {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 64px;
}

.lx-contact-quick-card {
    background: #fff;
    padding: 36px 30px;
    text-align: center;
    box-shadow: var(--lx-shadow-card);
    position: relative;
    overflow: hidden;
    transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.5s ease;
    text-decoration: none;
    color: inherit;
    display: block;
}

.lx-contact-quick-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-contact-quick-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--lx-shadow-luxury);
    color: inherit;
}

.lx-contact-quick-card:hover::before {
    transform: scaleX(1);
}

.lx-contact-quick-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 20px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
    position: relative;
}

.lx-contact-quick-icon::before {
    content: "";
    position: absolute;
    inset: -7px;
    border: 1px dashed rgba(201, 169, 97, 0.3);
    border-radius: 50%;
    animation: lxRingSpin 24s linear infinite;
}

.lx-contact-quick-card:hover .lx-contact-quick-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-contact-quick-label {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    margin-bottom: 12px;
    display: block;
}

.lx-contact-quick-value {
    color: var(--lx-text);
    font-family: 'Cormorant Garamond', serif;
    font-size: 20.5px;
    line-height: 1.45;
    font-weight: 500;
    word-break: break-word;
}

/* ─── Map + info grid ─── */

.lx-contact-grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 40px;
    align-items: stretch;
}

.lx-contact-map {
    position: relative;
    padding: 8px;
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-bronze-dark) 100%);
    box-shadow: var(--lx-shadow-card);
    min-height: 480px;
    transition: box-shadow 0.4s ease;
}

.lx-contact-map:hover {
    box-shadow: var(--lx-shadow-luxury);
}

.lx-contact-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
    min-height: 464px;
}

/* ─── Info card (rasmiy kontakt ma'lumotlari) ─── */

.lx-contact-card {
    background: var(--lx-navy);
    color: var(--lx-cream);
    padding: 44px 36px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.lx-contact-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-contact-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 80%, rgba(212, 175, 55, 0.08) 0%, transparent 55%);
    pointer-events: none;
}

.lx-contact-card-head {
    margin-bottom: 28px;
    position: relative;
    z-index: 1;
}

.lx-contact-card-eyebrow {
    color: var(--lx-bronze);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.34em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.lx-contact-card-eyebrow::before {
    content: "";
    width: 22px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-contact-card-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 30.5px;
    font-weight: 500;
    line-height: 1.3;
    color: var(--lx-cream);
    margin: 0;
}

.lx-contact-card-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

.lx-contact-card-list li {
    padding: 18px 0;
    border-bottom: 1px solid rgba(201, 169, 97, 0.12);
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 16px;
    align-items: baseline;
}

.lx-contact-card-list li:last-child { border-bottom: none; }

.lx-contact-card-label {
    color: var(--lx-bronze);
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
}

.lx-contact-card-value {
    color: var(--lx-cream);
    font-family: 'Inter', sans-serif;
    font-size: 15.5px;
    line-height: 1.6;
    word-break: break-word;
}

.lx-contact-card-value a {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: rgba(201, 169, 97, 0.5);
    text-underline-offset: 4px;
    transition: color 0.3s ease, text-decoration-color 0.3s ease;
}

.lx-contact-card-value a:hover {
    color: var(--lx-bronze-soft);
    text-decoration-color: var(--lx-bronze);
}

/* ─── Contact form ─── */

.lx-contact-form-wrap {
    margin-top: 64px;
    background: #fff;
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr 1.4fr;
}

.lx-contact-form-side {
    background: var(--lx-navy);
    color: var(--lx-cream);
    padding: 50px 40px;
    position: relative;
    overflow: hidden;
}

.lx-contact-form-side::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 30% 100%, rgba(212, 175, 55, 0.15) 0%, transparent 55%);
    pointer-events: none;
}

.lx-contact-form-side > * {
    position: relative;
    z-index: 1;
}

.lx-contact-form-side .lx-eyebrow {
    color: var(--lx-bronze);
    margin-bottom: 18px;
}

.lx-contact-form-side .lx-eyebrow::before,
.lx-contact-form-side .lx-eyebrow::after {
    background: var(--lx-bronze);
}

.lx-contact-form-side h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 30.5px;
    line-height: 1.3;
    color: var(--lx-cream);
    margin: 0 0 18px;
    font-weight: 500;
}

.lx-contact-form-side p {
    color: rgba(245, 243, 240, 0.65);
    font-size: 15.5px;
    line-height: 1.7;
    margin: 0 0 30px;
}

.lx-contact-form-side .lx-side-divider {
    width: 50px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 0 0 30px;
}

.lx-contact-form-side ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.lx-contact-form-side ul li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    color: rgba(245, 243, 240, 0.78);
    font-size: 14px;
    line-height: 1.5;
}

.lx-contact-form-side ul li svg {
    color: var(--lx-bronze);
    flex-shrink: 0;
    margin-top: 2px;
}

.lx-contact-form-side ul li a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.lx-contact-form-side ul li a:hover { color: var(--lx-bronze-soft); }

.lx-contact-form { padding: 50px 44px; }

.lx-form-head { margin-bottom: 30px; }

.lx-form-head .lx-eyebrow {
    margin-bottom: 14px;
}

.lx-form-head .lx-eyebrow::before { display: inline-block; }
.lx-form-head .lx-eyebrow::after { display: none; }

.lx-form-head h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(28.5px, 3.3vw, 39px);
    color: var(--lx-text);
    margin: 0;
    line-height: 1.2;
    font-weight: 500;
}

.lx-form-success {
    background: rgba(201, 169, 97, 0.12);
    border-left: 2px solid var(--lx-bronze);
    color: var(--lx-text);
    padding: 16px 20px;
    margin: 0 0 24px;
    font-size: 15.5px;
    line-height: 1.55;
    font-family: 'Inter', sans-serif;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    animation: lxFormFadeIn 0.6s ease-out;
}

.lx-form-success svg {
    color: var(--lx-bronze-dark);
    flex-shrink: 0;
    margin-top: 2px;
}

@keyframes lxFormFadeIn {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}

.lx-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 20px;
}

.lx-form-field {
    position: relative;
    margin-bottom: 22px;
}

.lx-form-field--full {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.lx-form-field label {
    display: block;
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    margin-bottom: 10px;
    font-weight: 600;
}

.lx-form-field label .req {
    color: var(--lx-crimson);
    margin-left: 4px;
}

.lx-form-field input,
.lx-form-field textarea {
    width: 100%;
    padding: 14px 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(26, 31, 46, 0.18);
    color: var(--lx-text);
    font-family: 'Inter', sans-serif;
    font-size: 16.5px;
    line-height: 1.5;
    transition: border-color 0.35s ease;
    outline: none;
    border-radius: 0;
}

.lx-form-field textarea {
    resize: vertical;
    min-height: 130px;
    padding-top: 8px;
}

.lx-form-field input::placeholder,
.lx-form-field textarea::placeholder {
    color: rgba(26, 31, 46, 0.3);
    font-style: italic;
}

.lx-form-field input:focus,
.lx-form-field textarea:focus {
    border-color: var(--lx-bronze);
}

.lx-form-field.has-error input,
.lx-form-field.has-error textarea {
    border-color: var(--lx-crimson);
}

.lx-form-error {
    color: var(--lx-crimson);
    font-size: 13px;
    margin-top: 8px;
    font-family: 'Inter', sans-serif;
    line-height: 1.5;
}

.lx-form-actions {
    margin-top: 30px;
    display: flex;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
}

.lx-form-actions .lx-btn {
    cursor: pointer;
    background: transparent;
    font-family: inherit;
}

.lx-form-actions .lx-btn[type="submit"] {
    color: var(--lx-navy);
    border-color: var(--lx-navy);
}

.lx-form-actions .lx-btn[type="submit"]::before { background: var(--lx-navy); }
.lx-form-actions .lx-btn[type="submit"]:hover { color: var(--lx-cream); }

.lx-form-note {
    color: var(--lx-text-soft);
    font-size: 12px;
    line-height: 1.5;
}

/* ─── Social strip (contact pastida) ─── */

.lx-contact-social {
    margin-top: 64px;
    padding: 36px 32px;
    background: var(--lx-paper);
    text-align: center;
    position: relative;
}

.lx-contact-social-eyebrow {
    color: var(--lx-bronze-dark);
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    margin-bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 14px;
}

.lx-contact-social-eyebrow::before,
.lx-contact-social-eyebrow::after {
    content: "";
    width: 28px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-contact-social-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
}

.lx-contact-social-link {
    width: 52px;
    height: 52px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-dark);
    text-decoration: none;
    transition: all 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
    position: relative;
    overflow: hidden;
    font-size: 16.5px;
}

.lx-contact-social-link::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--lx-navy);
    transform: scale(0);
    border-radius: 50%;
    transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.lx-contact-social-link:hover {
    color: var(--lx-bronze-soft);
    transform: translateY(-4px);
    box-shadow: var(--lx-shadow-luxury);
}

.lx-contact-social-link:hover::before { transform: scale(1); }

.lx-contact-social-link i { position: relative; z-index: 1; }

/* ─── Responsive (contact) ─── */

@media (max-width: 992px) {
    .lx-contact-quick {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
    .lx-contact-quick-card:nth-child(3) { grid-column: 1 / -1; }
    .lx-contact-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .lx-contact-map { min-height: 380px; }
    .lx-contact-map iframe { min-height: 364px; }

    .lx-contact-form-wrap { grid-template-columns: 1fr; }
    .lx-contact-form-side { padding: 40px 32px; }
    .lx-contact-form { padding: 40px 32px; }
}

@media (max-width: 640px) {
    .lx-contact-quick {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-bottom: 44px;
    }
    .lx-contact-quick-card:nth-child(3) { grid-column: auto; }
    .lx-contact-quick-card { padding: 30px 24px; }
    .lx-contact-quick-icon { width: 56px; height: 56px; margin-bottom: 16px; }
    .lx-contact-quick-value { font-size: 18.5px; }

    .lx-contact-card { padding: 32px 24px; }
    .lx-contact-card-title { font-size: 26px; }
    .lx-contact-card-list li {
        grid-template-columns: 1fr;
        gap: 4px;
        padding: 14px 0;
    }
    .lx-contact-card-label { font-size: 10px; letter-spacing: 0.24em; }

    .lx-contact-form-wrap { margin-top: 44px; }
    .lx-contact-form-side { padding: 32px 22px; }
    .lx-contact-form { padding: 32px 22px; }
    .lx-form-row {
        grid-template-columns: 1fr;
        gap: 0;
        margin-bottom: 0;
    }

    .lx-contact-social { margin-top: 44px; padding: 28px 18px; }
    .lx-contact-social-link { width: 46px; height: 46px; font-size: 15.5px; }

    .lx-contact-map { min-height: 320px; }
    .lx-contact-map iframe { min-height: 304px; }
}

/* ═══════════════════════════════════════════════════════════
   Hamkorlar (Xalqaro / Mahalliy) — listing + single
   ═══════════════════════════════════════════════════════════ */

/* ─── Listing grid ─── */

.lx-partners-list-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
}

.lx-partner-tile {
    position: relative;
    background: #fff;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    box-shadow: var(--lx-shadow-card);
    transition: transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
    display: flex;
    flex-direction: column;
}

.lx-partner-tile::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 4;
}

.lx-partner-tile:hover {
    transform: translateY(-8px);
    box-shadow: var(--lx-shadow-luxury);
    color: inherit;
}

.lx-partner-tile:hover::before { transform: scaleX(1); }

.lx-partner-tile-logo {
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: var(--lx-cream);
    position: relative;
    overflow: hidden;
}

.lx-partner-tile-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(75%);
    opacity: 0.85;
    transition: filter 0.5s ease, opacity 0.5s ease, transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.lx-partner-tile:hover .lx-partner-tile-logo img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.04);
}

.lx-partner-tile-empty {
    width: 80px;
    height: 80px;
    border: 1px solid var(--lx-bronze);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Cormorant Garamond', serif;
    color: var(--lx-bronze);
    font-size: 41.5px;
    font-weight: 500;
    opacity: 0.85;
}

.lx-partner-tile-body {
    padding: 22px 22px 26px;
    border-top: 1px solid rgba(26, 31, 46, 0.05);
    text-align: center;
    position: relative;
}

.lx-partner-tile-body::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    width: 36px;
    height: 1px;
    background: var(--lx-bronze);
}

.lx-partner-tile-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 19.5px;
    font-weight: 500;
    line-height: 1.35;
    color: var(--lx-text);
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s ease;
}

.lx-partner-tile:hover .lx-partner-tile-name {
    color: var(--lx-navy);
}

.lx-partner-tile-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--lx-bronze-dark);
    font-size: 11px;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    transition: gap 0.35s ease, color 0.3s ease;
    margin-top: 4px;
}

.lx-partner-tile:hover .lx-partner-tile-cta {
    color: var(--lx-navy);
    gap: 14px;
}

/* ─── Single partner ─── */

.lx-partner-single {
    max-width: 1080px;
    margin: 0 auto;
}

.lx-partner-single-grid {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 56px;
    align-items: start;
    margin-bottom: 56px;
}

.lx-partner-single-logo {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #fff;
    box-shadow: var(--lx-shadow-card);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px;
    overflow: hidden;
}

.lx-partner-single-logo::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-partner-single-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 8px 24px rgba(10, 14, 26, 0.06));
}

.lx-partner-single-info > .lx-eyebrow {
    margin-bottom: 18px;
}

.lx-partner-single-info > .lx-eyebrow::before { display: inline-block; }
.lx-partner-single-info > .lx-eyebrow::after { display: none; }

.lx-partner-single-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(30.5px, 3.9vw, 46px);
    font-weight: 500;
    line-height: 1.18;
    color: var(--lx-text);
    margin: 0 0 16px;
}

.lx-partner-single-subtitle {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 19.5px;
    line-height: 1.55;
    color: var(--lx-text-soft);
    padding-left: 18px;
    border-left: 2px solid var(--lx-bronze);
    margin: 0 0 28px;
}

.lx-partner-single-divider {
    width: 60px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 0 0 28px;
    position: relative;
}

.lx-partner-single-divider::before {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--lx-gold);
    box-shadow: 0 0 12px var(--lx-gold);
}

.lx-partner-single-description {
    color: var(--lx-text);
    font-family: 'Inter', sans-serif;
    font-size: 16.5px;
    line-height: 1.85;
}

.lx-partner-single-description p { margin: 0 0 16px; }
.lx-partner-single-description strong { color: var(--lx-navy); font-weight: 600; }

.lx-partner-single-links {
    margin-top: 32px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.lx-partner-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 20px;
    border: 1px solid rgba(201, 169, 97, 0.4);
    color: var(--lx-text);
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    transition: all 0.35s ease;
}

.lx-partner-link:hover {
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-partner-link svg { color: var(--lx-bronze); transition: color 0.3s ease; }
.lx-partner-link:hover svg { color: var(--lx-navy); }

/* Filter tabs (kategoriya bo'yicha) */
.lx-partners-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-bottom: 48px;
}

.lx-partners-filter a {
    padding: 10px 22px;
    border: 1px solid rgba(201, 169, 97, 0.3);
    color: var(--lx-text);
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    transition: all 0.35s ease;
    border-radius: 999px;
}

.lx-partners-filter a:hover {
    background: rgba(201, 169, 97, 0.06);
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-partners-filter a.is-active {
    background: var(--lx-navy);
    border-color: var(--lx-navy);
    color: var(--lx-bronze-soft);
}

/* ─── Responsive (partners) ─── */

@media (max-width: 1100px) {
    .lx-partners-list-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
}

@media (max-width: 768px) {
    .lx-partners-list-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .lx-partner-single-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }
    .lx-partner-single-logo {
        max-width: 380px;
        margin: 0 auto;
        width: 100%;
    }
}

@media (max-width: 480px) {
    .lx-partners-list-grid {
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }
    .lx-partner-tile-logo { padding: 22px; }
    .lx-partner-tile-body { padding: 16px 14px 20px; }
    .lx-partner-tile-name { font-size: 16.5px; }
    .lx-partner-tile-cta { font-size: 10px; letter-spacing: 0.22em; }

    .lx-partners-filter a { padding: 8px 16px; font-size: 11px; letter-spacing: 0.22em; }

    .lx-partner-single-logo { padding: 28px; }
    .lx-partner-single-subtitle { font-size: 17.5px; padding-left: 14px; }
}

/* ─────────────────────────────────────────────────────────────
   Institut normativ hujjatlari — luxury document page
   ───────────────────────────────────────────────────────────── */

.lx-doc-section-head {
    margin-bottom: 44px;
}

/* ── Featured (Lex.uz) cards ───────────────────────────── */
.lx-doc-featured-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.lx-doc-featured-card {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 38px 32px 32px;
    background-color: var(--lx-navy);
    background-image:
        linear-gradient(135deg, rgba(10, 14, 26, 0.86) 0%, rgba(10, 14, 26, 0.74) 50%, rgba(10, 14, 26, 0.88) 100%),
        url('/assets/img/uzb-flag-emblem.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid rgba(201, 169, 97, 0.32);
    text-decoration: none;
    color: var(--lx-cream);
    overflow: hidden;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.45s ease,
                border-color 0.45s ease;
    box-shadow: 0 4px 20px rgba(10, 14, 26, 0.18);
}

.lx-doc-featured-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 2;
}

.lx-doc-featured-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(135deg, rgba(10, 14, 26, 0.7) 0%, rgba(10, 14, 26, 0.55) 50%, rgba(10, 14, 26, 0.74) 100%),
        url('/assets/img/uzb-flag-emblem.jpg');
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
    z-index: 0;
}

.lx-doc-featured-card > * { position: relative; z-index: 1; }

.lx-doc-featured-card:hover {
    transform: translateY(-6px);
    border-color: var(--lx-bronze);
    box-shadow: 0 22px 50px rgba(10, 14, 26, 0.32);
}

.lx-doc-featured-card:hover::before { transform: scaleX(1); }

.lx-doc-featured-card:hover::after { opacity: 1; }

.lx-doc-featured-num {
    position: absolute;
    top: 22px;
    right: 28px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 46px;
    font-weight: 300;
    color: rgba(212, 175, 55, 0.42);
    line-height: 1;
    letter-spacing: -1px;
    transition: color 0.4s ease, transform 0.4s ease;
    z-index: 1;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.lx-doc-featured-card:hover .lx-doc-featured-num {
    color: var(--lx-gold-bright);
    transform: scale(1.08);
}

.lx-doc-featured-icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    color: var(--lx-gold-bright);
    background: rgba(212, 175, 55, 0.12);
    border: 1px solid rgba(212, 175, 55, 0.45);
    border-radius: 50%;
    transition: background 0.4s ease, color 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
    position: relative;
    z-index: 1;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.lx-doc-featured-icon svg { width: 26px; height: 26px; }

.lx-doc-featured-card:hover .lx-doc-featured-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-gold-bright);
    transform: rotate(-6deg) scale(1.05);
}

.lx-doc-featured-kind {
    display: block;
    font-size: 11px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    color: var(--lx-bronze-soft);
    margin-bottom: 14px;
    font-weight: 600;
    position: relative;
    z-index: 1;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

.lx-doc-featured-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 20.5px;
    font-weight: 500;
    line-height: 1.45;
    color: #ffffff;
    margin: 0 0 28px;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
    z-index: 1;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

.lx-doc-featured-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-top: 18px;
    border-top: 1px solid rgba(212, 175, 55, 0.4);
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-cream);
    font-weight: 600;
    transition: gap 0.35s ease, color 0.35s ease;
    position: relative;
    z-index: 1;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

.lx-doc-featured-cta svg {
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-doc-featured-card:hover .lx-doc-featured-cta {
    gap: 16px;
    color: var(--lx-gold-bright);
    border-top-color: var(--lx-gold-bright);
}

.lx-doc-featured-card:hover .lx-doc-featured-cta svg {
    transform: translate(3px, -3px);
}

/* ── Document list (rows) ──────────────────────────────── */
.lx-doc-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 48px;
}

.lx-doc-row {
    position: relative;
    display: grid;
    grid-template-columns: 72px 1fr auto;
    align-items: center;
    gap: 24px;
    padding: 22px 28px;
    background: #ffffff;
    border: 1px solid rgba(10, 14, 26, 0.06);
    text-decoration: none;
    color: var(--lx-navy);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.4s ease,
                border-color 0.4s ease;
    overflow: hidden;
}

.lx-doc-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-doc-row:hover {
    transform: translateX(6px);
    border-color: rgba(201, 169, 97, 0.4);
    box-shadow: 0 10px 30px rgba(10, 14, 26, 0.08);
}

.lx-doc-row:hover::before { transform: scaleY(1); }

.lx-doc-row-icon {
    position: relative;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(10, 14, 26, 0.08);
    border-radius: 6px;
    transition: background 0.4s ease, border-color 0.4s ease, color 0.4s ease;
}

.lx-doc-row-icon svg {
    width: 28px;
    height: 28px;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-doc-row-icon.is-file {
    background: rgba(201, 169, 97, 0.06);
    color: var(--lx-bronze-dark);
}

.lx-doc-row-icon.is-link {
    background: rgba(10, 14, 26, 0.04);
    color: var(--lx-navy);
}

.lx-doc-row:hover .lx-doc-row-icon.is-file {
    background: var(--lx-bronze);
    color: #ffffff;
    border-color: var(--lx-bronze);
}

.lx-doc-row:hover .lx-doc-row-icon.is-link {
    background: var(--lx-navy);
    color: var(--lx-bronze);
    border-color: var(--lx-navy);
}

.lx-doc-row:hover .lx-doc-row-icon svg {
    transform: scale(1.08);
}

.lx-doc-row-ext {
    position: absolute;
    bottom: -6px;
    right: -6px;
    background: var(--lx-bronze);
    color: #ffffff;
    font-size: 8.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 3px 6px;
    border-radius: 3px;
    text-transform: uppercase;
    line-height: 1;
}

.lx-doc-row-body {
    min-width: 0;
}

.lx-doc-row-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 18.5px;
    font-weight: 500;
    line-height: 1.45;
    margin: 0 0 8px;
    color: var(--lx-navy);
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lx-doc-row:hover .lx-doc-row-title {
    color: var(--lx-bronze-dark);
}

.lx-doc-row-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.lx-doc-row-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(10, 14, 26, 0.55);
    letter-spacing: 0.04em;
}

.lx-doc-row-date svg {
    color: var(--lx-bronze);
}

.lx-doc-row-tag {
    display: inline-block;
    padding: 3px 10px;
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 2px;
}

.lx-doc-row-tag.is-file {
    background: rgba(201, 169, 97, 0.12);
    color: var(--lx-bronze-dark);
    border: 1px solid rgba(201, 169, 97, 0.3);
}

.lx-doc-row-tag.is-link {
    background: rgba(10, 14, 26, 0.06);
    color: var(--lx-navy);
    border: 1px solid rgba(10, 14, 26, 0.12);
}

.lx-doc-row-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: var(--lx-bronze);
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 50%;
    transition: background 0.4s ease, color 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-doc-row:hover .lx-doc-row-cta {
    background: var(--lx-bronze);
    color: #ffffff;
    border-color: var(--lx-bronze);
    transform: rotate(-45deg);
}

/* ── Share footer ─────────────────────────────────────── */
.lx-doc-share {
    margin-top: 64px;
    padding: 36px 0;
    text-align: center;
    border-top: 1px solid rgba(10, 14, 26, 0.08);
    border-bottom: 1px solid rgba(10, 14, 26, 0.08);
}

.lx-doc-share .lx-eyebrow {
    margin-bottom: 22px;
    display: inline-block;
}

.lx-doc-share-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.lx-doc-share-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: transparent;
    color: var(--lx-navy);
    border: 1px solid rgba(201, 169, 97, 0.3);
    transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease, border-color 0.35s ease;
}

.lx-doc-share-icons a:hover {
    background: var(--lx-bronze);
    color: #ffffff;
    border-color: var(--lx-bronze);
    transform: translateY(-3px);
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-doc-featured-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 22px;
    }
    .lx-doc-featured-card { padding: 32px 26px 26px; }
    .lx-doc-featured-num { font-size: 39px; top: 18px; right: 22px; }
    .lx-doc-featured-title { font-size: 19.5px; }
}

@media (max-width: 768px) {
    .lx-doc-section-head { margin-bottom: 32px; }

    .lx-doc-row {
        grid-template-columns: 56px 1fr;
        gap: 18px;
        padding: 18px 20px;
    }
    .lx-doc-row-cta {
        grid-column: 2 / 3;
        margin-left: auto;
        width: 38px;
        height: 38px;
    }
    .lx-doc-row-icon { width: 56px; height: 56px; }
    .lx-doc-row-icon svg { width: 24px; height: 24px; }
    .lx-doc-row-title { font-size: 16.5px; }
}

@media (max-width: 600px) {
    .lx-doc-featured-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .lx-doc-featured-card { padding: 28px 22px 22px; }
    .lx-doc-featured-icon { width: 50px; height: 50px; margin-bottom: 22px; }
    .lx-doc-featured-icon svg { width: 22px; height: 22px; }
    .lx-doc-featured-num { font-size: 35px; }
    .lx-doc-featured-title { font-size: 18.5px; -webkit-line-clamp: 5; }

    .lx-doc-row {
        padding: 16px;
        gap: 14px;
    }
    .lx-doc-row-icon { width: 48px; height: 48px; }
    .lx-doc-row-icon svg { width: 22px; height: 22px; }
    .lx-doc-row-title { font-size: 15.5px; margin-bottom: 6px; }
    .lx-doc-row-meta { gap: 10px; }
    .lx-doc-row-date { font-size: 12px; }
    .lx-doc-row-tag { font-size: 8.5px; padding: 2px 8px; letter-spacing: 0.18em; }

    .lx-doc-share { margin-top: 44px; padding: 28px 0; }
    .lx-doc-share-icons a { width: 40px; height: 40px; }
}

@media (max-width: 420px) {
    .lx-doc-row {
        grid-template-columns: 44px 1fr;
        gap: 12px;
        padding: 14px;
    }
    .lx-doc-row-icon { width: 44px; height: 44px; }
    .lx-doc-row-icon svg { width: 20px; height: 20px; }
    .lx-doc-row-ext { font-size: 7.5px; padding: 2px 5px; }
}

/* ─────────────────────────────────────────────────────────────
   Back to top — luxury floating button
   ───────────────────────────────────────────────────────────── */

.back-to-top.lx-back-to-top {
    position: fixed;
    right: 36px;
    bottom: 36px;
    z-index: 999;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(140deg, var(--lx-navy) 0%, #131a2c 60%, #1a2238 100%);
    color: var(--lx-bronze-soft);
    text-decoration: none;
    border: 1px solid rgba(212, 175, 55, 0.4);
    box-shadow:
        0 10px 28px rgba(10, 14, 26, 0.32),
        0 0 0 0 rgba(212, 175, 55, 0.45),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
                color 0.35s ease,
                background 0.45s ease,
                border-color 0.35s ease,
                box-shadow 0.45s ease,
                opacity 0.4s ease,
                visibility 0.4s ease;
    overflow: visible;
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px);
    pointer-events: none;
}

.back-to-top.lx-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
    animation: lxBackToTopPulse 2.6s ease-in-out infinite 0.4s;
}

.lx-back-to-top::before {
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: 50%;
    background: conic-gradient(from 220deg, transparent 0deg, var(--lx-bronze) 90deg, var(--lx-gold) 180deg, var(--lx-bronze) 270deg, transparent 360deg);
    opacity: 0;
    z-index: -1;
    transition: opacity 0.5s ease;
    -webkit-mask: radial-gradient(circle, transparent 26px, black 27px);
            mask: radial-gradient(circle, transparent 26px, black 27px);
    animation: lxBackToTopRotate 4s linear infinite;
}

.lx-back-to-top-ring {
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0);
    transition: inset 0.45s cubic-bezier(0.22, 1, 0.36, 1),
                border-color 0.45s ease,
                opacity 0.45s ease;
    pointer-events: none;
    opacity: 0;
}

.lx-back-to-top-icon {
    width: 22px;
    height: 22px;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
                color 0.35s ease;
    position: relative;
    z-index: 1;
}

.lx-back-to-top:hover {
    transform: translateY(-4px);
    color: var(--lx-navy);
    background: linear-gradient(140deg, var(--lx-bronze) 0%, var(--lx-gold-bright) 50%, var(--lx-bronze) 100%);
    border-color: var(--lx-gold-bright);
    box-shadow:
        0 18px 40px rgba(10, 14, 26, 0.4),
        0 0 28px rgba(212, 175, 55, 0.4);
    animation: none;
}

.lx-back-to-top:hover::before { opacity: 1; }

.lx-back-to-top:hover .lx-back-to-top-ring {
    inset: -12px;
    border-color: rgba(212, 175, 55, 0.5);
    opacity: 1;
}

.lx-back-to-top:hover .lx-back-to-top-icon {
    transform: translateY(-3px);
}

.lx-back-to-top:active {
    transform: translateY(-2px) scale(0.96);
}

.lx-back-to-top:focus-visible {
    outline: none;
    box-shadow:
        0 0 0 3px rgba(212, 175, 55, 0.45),
        0 18px 40px rgba(10, 14, 26, 0.4);
}

@keyframes lxBackToTopPulse {
    0%, 100% {
        box-shadow:
            0 10px 28px rgba(10, 14, 26, 0.32),
            0 0 0 0 rgba(212, 175, 55, 0.45),
            inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }
    60% {
        box-shadow:
            0 10px 28px rgba(10, 14, 26, 0.32),
            0 0 0 14px rgba(212, 175, 55, 0),
            inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }
}

@keyframes lxBackToTopRotate {
    to { transform: rotate(360deg); }
}

@media (max-width: 768px) {
    .lx-back-to-top {
        right: 20px;
        bottom: 20px;
        width: 48px;
        height: 48px;
    }
    .lx-back-to-top-icon { width: 20px; height: 20px; }
    .lx-back-to-top::before {
        -webkit-mask: radial-gradient(circle, transparent 22px, black 23px);
                mask: radial-gradient(circle, transparent 22px, black 23px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .lx-back-to-top,
    .lx-back-to-top::before { animation: none; }
}

/* ─────────────────────────────────────────────────────────────
   Mahalliy hamkorlar — intro card + static tile variant
   ───────────────────────────────────────────────────────────── */

.lx-partner-intro {
    padding-bottom: 0;
}

.lx-partner-intro-card {
    position: relative;
    max-width: 920px;
    margin: 0 auto;
    padding: 56px 64px 48px;
    background: linear-gradient(135deg, #ffffff 0%, var(--lx-cream) 100%);
    border: 1px solid rgba(201, 169, 97, 0.22);
    overflow: hidden;
    box-shadow: 0 6px 30px rgba(10, 14, 26, 0.06);
}

.lx-partner-intro-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-partner-intro-card::after {
    content: '';
    position: absolute;
    bottom: -90px;
    right: -70px;
    width: 260px;
    height: 260px;
    border: 1px solid rgba(201, 169, 97, 0.18);
    border-radius: 50%;
    pointer-events: none;
}

.lx-partner-intro-mark {
    position: absolute;
    top: 14px;
    left: 38px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 152.5px;
    line-height: 1;
    color: rgba(201, 169, 97, 0.18);
    pointer-events: none;
    user-select: none;
}

.lx-partner-intro-body {
    position: relative;
    z-index: 1;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 24px;
    line-height: 1.55;
    color: var(--lx-navy);
    text-align: center;
    font-weight: 400;
}

.lx-partner-intro-body p { margin: 0 0 16px; }
.lx-partner-intro-body p:last-child { margin-bottom: 0; }
.lx-partner-intro-body strong { color: var(--lx-bronze-dark); font-weight: 600; }

.lx-partner-intro-body::after {
    content: '';
    display: block;
    width: 60px;
    height: 1px;
    background: var(--lx-bronze);
    margin: 26px auto 0;
}

/* Static tile (partner without external link — visual only) */
.lx-partner-tile.is-static {
    cursor: default;
}

.lx-partner-tile.is-static:hover {
    transform: translateY(-3px);
    box-shadow: var(--lx-shadow-card);
}

.lx-partner-tile.is-static:hover::before {
    transform: scaleX(0.5);
}

@media (max-width: 992px) {
    .lx-partner-intro-card {
        padding: 48px 44px 40px;
    }
    .lx-partner-intro-mark { font-size: 120px; left: 28px; top: 8px; }
    .lx-partner-intro-body { font-size: 20.5px; }
}

@media (max-width: 600px) {
    .lx-partner-intro-card {
        padding: 40px 26px 32px;
    }
    .lx-partner-intro-mark { font-size: 98px; left: 18px; top: 4px; }
    .lx-partner-intro-body { font-size: 17.5px; line-height: 1.6; }
    .lx-partner-intro-card::after {
        bottom: -120px; right: -100px;
        width: 200px; height: 200px;
    }
}

/* ─────────────────────────────────────────────────────────────
   Ilmiy jurnallar — magazine-style cover cards
   ───────────────────────────────────────────────────────────── */

.lx-journals-section {
    background:
        radial-gradient(circle at 15% 20%, rgba(212, 175, 55, 0.06) 0%, transparent 45%),
        radial-gradient(circle at 85% 80%, rgba(10, 14, 26, 0.05) 0%, transparent 45%),
        var(--lx-cream);
}

.lx-journals-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 56px 36px;
    padding: 12px 0 48px;
    perspective: 1400px;
}

.lx-journal-card {
    position: relative;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    transform-style: preserve-3d;
}

.lx-journal-card:hover {
    transform: translateY(-10px);
    color: inherit;
}

/* ── Cover (magazine front) ──────────────────────────── */
.lx-journal-cover {
    position: relative;
    aspect-ratio: 3 / 4;
    width: 100%;
    background: linear-gradient(135deg, #1a2238 0%, var(--lx-navy) 100%);
    overflow: hidden;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.04) inset,
        0 22px 40px -18px rgba(10, 14, 26, 0.5),
        0 4px 14px rgba(10, 14, 26, 0.18);
    transform: rotateY(-1.2deg) rotateX(0deg);
    transform-origin: left center;
    transition:
        transform 0.6s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-journal-card:hover .lx-journal-cover {
    transform: rotateY(-3.5deg) rotateX(2deg) translateZ(8px);
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.08) inset,
        20px 28px 60px -22px rgba(10, 14, 26, 0.55),
        0 12px 24px rgba(10, 14, 26, 0.22);
}

/* Spine — left edge of bound journal */
.lx-journal-spine {
    position: absolute;
    top: 0; bottom: 0;
    left: 0;
    width: 14px;
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.18) 55%, transparent 100%),
        linear-gradient(180deg, var(--lx-bronze-dark) 0%, var(--lx-bronze) 50%, var(--lx-bronze-dark) 100%);
    z-index: 3;
    box-shadow:
        inset -1px 0 0 rgba(255, 255, 255, 0.08),
        inset 1px 0 0 rgba(0, 0, 0, 0.35);
}

.lx-journal-spine::before,
.lx-journal-spine::after {
    content: '';
    position: absolute;
    left: 4px;
    right: 4px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--lx-gold-bright), transparent);
    opacity: 0.7;
}

.lx-journal-spine::before { top: 18%; }
.lx-journal-spine::after  { bottom: 18%; }

/* Glossy shine sweep on hover */
.lx-journal-shine {
    position: absolute;
    top: 0; bottom: 0;
    left: -50%;
    width: 30%;
    background: linear-gradient(105deg, transparent 0%, rgba(255, 255, 255, 0.18) 50%, transparent 100%);
    z-index: 5;
    pointer-events: none;
    transform: skewX(-18deg);
    transition: left 0.85s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-journal-card:hover .lx-journal-shine {
    left: 130%;
}

.lx-journal-cover-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), filter 0.6s ease;
    filter: saturate(1.05);
}

.lx-journal-card:hover .lx-journal-cover-img {
    transform: scale(1.04);
    filter: saturate(1.15) contrast(1.04);
}

/* Fallback when no cover image */
.lx-journal-cover-fallback {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(circle at center, rgba(212, 175, 55, 0.22) 0%, transparent 60%),
        linear-gradient(135deg, #131a2c 0%, var(--lx-navy) 100%);
    border-left: 14px solid transparent;
    color: var(--lx-bronze-soft);
    text-align: center;
    padding: 20px 18px 18px;
}

.lx-journal-cover.no-cover .lx-journal-cover-fallback {
    z-index: 2;
}

.lx-journal-cover-mark {
    font-size: 12px;
    letter-spacing: 0.42em;
    text-transform: uppercase;
    color: var(--lx-bronze);
    font-weight: 600;
    margin-bottom: 22px;
}

.lx-journal-cover-letter {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 100.5px;
    font-weight: 300;
    line-height: 1;
    color: var(--lx-gold-bright);
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}

/* Bottom gradient overlay (only when image exists) */
.lx-journal-cover-overlay {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 55%;
    background: linear-gradient(180deg, transparent 0%, rgba(10, 14, 26, 0.4) 60%, rgba(10, 14, 26, 0.85) 100%);
    z-index: 2;
    pointer-events: none;
}

.lx-journal-cover.no-cover .lx-journal-cover-overlay {
    display: none;
}

/* ISSN ribbon */
.lx-journal-issn {
    position: absolute;
    top: 18px;
    right: 0;
    z-index: 4;
    background: var(--lx-bronze);
    color: var(--lx-navy);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    padding: 5px 14px 5px 12px;
    box-shadow: -2px 4px 8px rgba(0, 0, 0, 0.18);
}

.lx-journal-issn::before {
    content: '';
    position: absolute;
    left: -6px;
    top: 0;
    border-style: solid;
    border-width: 14px 6px 0 0;
    border-color: var(--lx-bronze-dark) transparent transparent transparent;
}

.lx-journal-issn::after {
    content: '';
    position: absolute;
    left: -6px;
    bottom: 0;
    border-style: solid;
    border-width: 0 6px 14px 0;
    border-color: transparent transparent var(--lx-bronze-dark) transparent;
}

/* Open-book icon badge bottom-right */
.lx-journal-cover-badge {
    position: absolute;
    bottom: 14px;
    right: 14px;
    z-index: 4;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(10, 14, 26, 0.6);
    color: var(--lx-bronze-soft);
    border: 1px solid rgba(212, 175, 55, 0.4);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: background 0.4s ease, color 0.4s ease, transform 0.4s ease;
}

.lx-journal-card:hover .lx-journal-cover-badge {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    transform: rotate(-8deg) scale(1.08);
}

/* ── Meta below cover ────────────────────────────────── */
.lx-journal-meta {
    padding: 28px 4px 0;
    position: relative;
}

.lx-journal-meta .lx-eyebrow {
    margin-bottom: 12px;
    display: inline-block;
}

.lx-journal-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--lx-navy);
    margin: 0 0 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.35s ease;
}

.lx-journal-card:hover .lx-journal-title {
    color: var(--lx-bronze-dark);
}

.lx-journal-desc {
    font-size: 14.5px;
    line-height: 1.6;
    color: rgba(10, 14, 26, 0.65);
    margin: 0 0 18px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lx-journal-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid rgba(201, 169, 97, 0.25);
    width: 100%;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-navy);
    font-weight: 600;
    transition: gap 0.35s ease, color 0.35s ease, border-top-color 0.35s ease;
}

.lx-journal-cta svg {
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-journal-card:hover .lx-journal-cta {
    gap: 16px;
    color: var(--lx-bronze-dark);
    border-top-color: var(--lx-bronze);
}

.lx-journal-card:hover .lx-journal-cta svg {
    transform: translateX(4px);
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-journals-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 48px 28px;
    }
    .lx-journal-title { font-size: 20.5px; }
}

@media (max-width: 600px) {
    .lx-journals-grid {
        grid-template-columns: 1fr;
        gap: 44px;
        padding-bottom: 32px;
    }
    .lx-journal-cover {
        aspect-ratio: 4 / 5;
        max-width: 320px;
        margin: 0 auto;
        transform: rotateY(0deg);
    }
    .lx-journal-card:hover .lx-journal-cover {
        transform: translateY(-4px) rotateY(0deg);
    }
    .lx-journal-meta {
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }
    .lx-journal-cta { justify-content: center; }
    .lx-journal-cover-letter { font-size: 83px; }
    .lx-journal-cover-mark { font-size: 11px; letter-spacing: 0.32em; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-journal-card,
    .lx-journal-cover,
    .lx-journal-cover-img,
    .lx-journal-shine,
    .lx-journal-cta svg,
    .lx-journal-cover-badge { transition: none; }
    .lx-journal-shine { display: none; }
}

/* ─────────────────────────────────────────────────────────────
   Journal detail pages — show / issue / paper
   ───────────────────────────────────────────────────────────── */

/* ── Outline button variant ──────────────────────────── */
.lx-btn-outline {
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
    background: transparent;
}

.lx-btn-outline::before { background: var(--lx-navy); }
.lx-btn-outline:hover { color: var(--lx-bronze-soft); border-color: var(--lx-navy); }

/* ── Journal detail (cover + info hero) ──────────────── */
.lx-journal-detail-section {
    background:
        linear-gradient(180deg, var(--lx-cream) 0%, #efeeea 100%);
}

.lx-journal-detail {
    display: grid;
    grid-template-columns: minmax(260px, 380px) 1fr;
    gap: 64px;
    align-items: start;
}

.lx-journal-detail-cover {
    perspective: 1400px;
}

.lx-journal-cover.is-detail {
    aspect-ratio: 3 / 4;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.04) inset,
        18px 28px 60px -18px rgba(10, 14, 26, 0.55),
        0 6px 18px rgba(10, 14, 26, 0.18);
    transform: rotateY(-2.5deg) rotateX(1deg);
}

.lx-journal-cover.is-detail .lx-journal-cover-letter {
    font-size: 126.5px;
}

.lx-journal-detail-info {
    padding-top: 8px;
}

.lx-journal-detail-info > .lx-eyebrow {
    margin-bottom: 14px;
    display: inline-block;
}

.lx-journal-detail-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 41.5px;
    font-weight: 500;
    line-height: 1.2;
    color: var(--lx-navy);
    margin: 0 0 22px;
    letter-spacing: -0.5px;
}

.lx-journal-detail-divider {
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze), transparent);
    margin: 0 0 26px;
}

.lx-journal-detail-desc {
    font-size: 17px;
    line-height: 1.75;
    color: rgba(10, 14, 26, 0.78);
    margin-bottom: 36px;
}

.lx-journal-detail-desc p { margin: 0 0 14px; }
.lx-journal-detail-desc p:last-child { margin-bottom: 0; }

.lx-journal-detail-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 48px;
    padding: 22px 0;
    margin-bottom: 30px;
    border-top: 1px solid rgba(201, 169, 97, 0.25);
    border-bottom: 1px solid rgba(201, 169, 97, 0.25);
}

.lx-journal-stat {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.lx-journal-stat-label {
    font-size: 11px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    color: var(--lx-bronze);
    font-weight: 600;
}

.lx-journal-stat-value {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 24px;
    font-weight: 500;
    color: var(--lx-navy);
    line-height: 1;
}

.lx-journal-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.lx-journal-detail-actions .lx-btn { padding: 14px 28px; }

/* ── Issues grid ─────────────────────────────────────── */
.lx-journal-issues-section {
    background: linear-gradient(180deg, #efeeea 0%, var(--lx-cream) 100%);
}

.lx-issue-grid2 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 30px 26px;
    margin-bottom: 8px;
}

.lx-issue-card2 {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 1px solid rgba(10, 14, 26, 0.08);
    box-shadow: 0 8px 24px rgba(10, 14, 26, 0.05);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;
}

.lx-issue-card2:hover {
    transform: translateY(-6px);
    border-color: rgba(201, 169, 97, 0.5);
    box-shadow: 0 20px 40px rgba(10, 14, 26, 0.12);
}

.lx-issue-card2-cover {
    position: relative;
    aspect-ratio: 3 / 4;
    width: 100%;
    background: linear-gradient(135deg, #1a2238 0%, var(--lx-navy) 100%);
    overflow: hidden;
}

.lx-issue-card2-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-issue-card2:hover .lx-issue-card2-img { transform: scale(1.05); }

.lx-issue-card2-fallback {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    background: radial-gradient(circle at center, rgba(212, 175, 55, 0.2) 0%, transparent 60%), linear-gradient(135deg, #131a2c 0%, var(--lx-navy) 100%);
    color: var(--lx-gold-bright);
    font-family: 'Playfair Display', Georgia, serif;
}

.lx-issue-card2-cover.no-cover .lx-issue-card2-fallback { z-index: 2; }

.lx-issue-card2-hash { font-size: 26px; opacity: 0.7; }
.lx-issue-card2-number { font-size: 61px; font-weight: 300; line-height: 1; }

.lx-issue-card2-year {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 3;
    font-size: 12px;
    letter-spacing: 0.08em;
    font-weight: 600;
    color: var(--lx-navy);
    background: rgba(245, 243, 240, 0.92);
    padding: 4px 10px;
}

.lx-issue-card2-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 20px 20px 22px;
}

.lx-issue-card2-meta {
    font-size: 11px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-bronze);
    font-weight: 600;
    margin-bottom: 8px;
}

.lx-issue-card2-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 17.5px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--lx-navy);
    margin: 0 0 18px;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lx-issue-card2-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lx-issue-card2-actions .lx-btn { flex: 1; justify-content: center; }

.lx-issue-card2-empty {
    font-size: 13px;
    color: rgba(10, 14, 26, 0.4);
    font-style: italic;
}

.lx-btn-sm {
    padding: 10px 14px;
    font-size: 11px;
    letter-spacing: 0.1em;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-journal-detail {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .lx-journal-detail-cover {
        max-width: 320px;
        margin: 0 auto;
        width: 100%;
    }
    .lx-journal-detail-title { font-size: 32.5px; }
    .lx-journal-detail-info { padding-top: 0; text-align: center; }
    .lx-journal-detail-divider { margin-left: auto; margin-right: auto; }
    .lx-journal-detail-stats { justify-content: center; }
    .lx-journal-detail-actions { justify-content: center; }
}

@media (max-width: 600px) {
    .lx-journal-detail-title { font-size: 26px; }
    .lx-journal-detail-stats { gap: 18px 30px; padding: 18px 0; }
    .lx-journal-stat-value { font-size: 19.5px; }
    .lx-journal-cover.is-detail { transform: rotateY(0deg); }

    .lx-issue-grid2 { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 22px 18px; }
    .lx-issue-card2-title { font-size: 15.5px; }
    .lx-issue-card2-number { font-size: 48px; }
}

/* ─────────────────────────────────────────────────────────────
   Luxury PDF viewer (PDF.js, view-only)
   ───────────────────────────────────────────────────────────── */

.lx-pdf-viewer {
    margin: 40px 0;
    background: var(--lx-navy);
    border: 1px solid rgba(212, 175, 55, 0.28);
    box-shadow:
        0 22px 50px -22px rgba(10, 14, 26, 0.45),
        0 4px 14px rgba(10, 14, 26, 0.18);
    overflow: hidden;
    position: relative;
    user-select: none;
    -webkit-user-select: none;
}

.lx-pdf-viewer.is-fullscreen {
    margin: 0;
    border: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    background: #0a0e1a;
}

/* ── Toolbar ─────────────────────────────────────────── */
.lx-pdf-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    padding: 14px 22px;
    background: linear-gradient(180deg, #131a2c 0%, var(--lx-navy) 100%);
    border-bottom: 1px solid rgba(212, 175, 55, 0.22);
    position: relative;
}

.lx-pdf-toolbar::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze), var(--lx-gold), var(--lx-bronze));
    opacity: 0.7;
}

.lx-pdf-toolbar-left {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--lx-bronze-soft);
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    font-weight: 600;
    min-width: 0;
}

.lx-pdf-toolbar-left svg { color: var(--lx-bronze); flex-shrink: 0; }

.lx-pdf-toolbar-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lx-pdf-toolbar-center,
.lx-pdf-toolbar-right {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.lx-pdf-toolbar-right { justify-content: flex-end; }

/* ── Toolbar buttons ─────────────────────────────────── */
.lx-pdf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: transparent;
    color: var(--lx-bronze-soft);
    border: 1px solid rgba(212, 175, 55, 0.28);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
    flex-shrink: 0;
}

.lx-pdf-btn:hover:not(:disabled) {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
}

.lx-pdf-btn:active:not(:disabled) { transform: scale(0.94); }

.lx-pdf-btn:disabled {
    opacity: 0.32;
    cursor: not-allowed;
}

.lx-pdf-btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.35);
}

/* ── Page info ───────────────────────────────────────── */
.lx-pdf-page-info {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 4px;
    color: var(--lx-cream);
    font-size: 14px;
    font-family: 'Playfair Display', Georgia, serif;
    font-weight: 500;
}

.lx-pdf-page-input {
    width: 48px;
    text-align: center;
    background: transparent;
    border: 1px solid rgba(212, 175, 55, 0.28);
    color: var(--lx-cream);
    font-size: 14px;
    font-family: inherit;
    padding: 4px 6px;
    -moz-appearance: textfield;
    transition: border-color 0.3s ease, background 0.3s ease;
}

.lx-pdf-page-input::-webkit-outer-spin-button,
.lx-pdf-page-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.lx-pdf-page-input:focus {
    outline: none;
    border-color: var(--lx-bronze);
    background: rgba(212, 175, 55, 0.08);
}

.lx-pdf-page-sep { color: var(--lx-bronze-soft); }
.lx-pdf-page-total { color: var(--lx-bronze-soft); min-width: 22px; text-align: left; }

.lx-pdf-zoom-level {
    font-size: 12px;
    letter-spacing: 0.16em;
    color: var(--lx-bronze-soft);
    font-weight: 600;
    min-width: 44px;
    text-align: center;
}

/* ── Canvas wrap ─────────────────────────────────────── */
.lx-pdf-canvas-wrap {
    position: relative;
    background:
        radial-gradient(circle at 30% 20%, rgba(212, 175, 55, 0.05) 0%, transparent 60%),
        repeating-linear-gradient(45deg, transparent 0 10px, rgba(255, 255, 255, 0.012) 10px 20px),
        #1a2238;
    padding: 36px 24px;
    min-height: 480px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    overflow: auto;
    max-height: 80vh;
}

.lx-pdf-viewer.is-fullscreen .lx-pdf-canvas-wrap {
    flex: 1;
    max-height: none;
    padding: 36px 24px;
}

.lx-pdf-canvas-wrap::-webkit-scrollbar { width: 10px; height: 10px; }
.lx-pdf-canvas-wrap::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.3); }
.lx-pdf-canvas-wrap::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--lx-bronze-dark), var(--lx-bronze));
    border-radius: 4px;
}
.lx-pdf-canvas-wrap::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, var(--lx-bronze), var(--lx-gold-bright));
}

.lx-pdf-canvas {
    display: block;
    max-width: 100%;
    height: auto;
    background: #fff;
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.35),
        0 4px 10px rgba(0, 0, 0, 0.18);
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.4s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events: none;
}

.lx-pdf-canvas.is-ready {
    opacity: 1;
    transform: translateY(0);
}

/* ── Watermark ──────────────────────────────────────── */
.lx-pdf-watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-30deg);
    pointer-events: none;
    opacity: 0.08;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 41.5px;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    color: var(--lx-bronze);
    white-space: nowrap;
    z-index: 1;
    user-select: none;
}

/* ── Loading / Error ─────────────────────────────────── */
.lx-pdf-loading,
.lx-pdf-error {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    color: var(--lx-bronze-soft);
    font-size: 13px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    background: linear-gradient(180deg, #131a2c 0%, #0a0e1a 100%);
    z-index: 3;
}

.lx-pdf-error svg { color: var(--lx-bronze); }
.lx-pdf-error p { margin: 0; max-width: 280px; text-align: center; }

.lx-pdf-spinner {
    width: 38px;
    height: 38px;
    border: 2px solid rgba(212, 175, 55, 0.2);
    border-top-color: var(--lx-bronze);
    border-radius: 50%;
    animation: lxPdfSpin 0.9s linear infinite;
}

@keyframes lxPdfSpin { to { transform: rotate(360deg); } }

/* ── Foot strip ──────────────────────────────────────── */
.lx-pdf-foot {
    background: linear-gradient(180deg, var(--lx-navy) 0%, #131a2c 100%);
    border-top: 1px solid rgba(212, 175, 55, 0.22);
    padding: 14px 22px;
    text-align: center;
}

.lx-pdf-foot-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--lx-bronze-soft);
    font-size: 12px;
    letter-spacing: 0.04em;
    font-style: italic;
}

.lx-pdf-foot-note svg { color: var(--lx-bronze); flex-shrink: 0; }

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 768px) {
    .lx-pdf-toolbar {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px 16px;
        text-align: center;
    }
    .lx-pdf-toolbar-left { justify-content: center; }
    .lx-pdf-toolbar-center { justify-content: center; }
    .lx-pdf-toolbar-right { justify-content: center; }

    .lx-pdf-canvas-wrap { padding: 22px 14px; min-height: 360px; }
    .lx-pdf-watermark { font-size: 28.5px; letter-spacing: 0.3em; }
    .lx-pdf-foot-note { font-size: 11px; }
}

@media (max-width: 480px) {
    .lx-pdf-btn { width: 30px; height: 30px; }
    .lx-pdf-btn-fs { display: none; }
    .lx-pdf-page-input { width: 40px; padding: 3px 4px; font-size: 13px; }
    .lx-pdf-zoom-level { min-width: 36px; font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-pdf-canvas { transition: none; }
    .lx-pdf-spinner { animation-duration: 1.6s; }
}

/* ─────────────────────────────────────────────────────────────
   Bosh sahifa — Ilmiy salohiyat statistika bloki
   ───────────────────────────────────────────────────────────── */

.lx-stats-section {
    position: relative;
    padding: 96px 0 104px;
    background: var(--lx-navy);
    overflow: hidden;
    isolation: isolate;
}

.lx-stats-bg {
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: 0.22;
}

.lx-stats-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(2px) saturate(0.6);
}

.lx-stats-section::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(180deg, rgba(10, 14, 26, 0.88) 0%, rgba(10, 14, 26, 0.95) 60%, rgba(10, 14, 26, 0.98) 100%),
        radial-gradient(circle at 18% 30%, rgba(212, 175, 55, 0.12) 0%, transparent 45%),
        radial-gradient(circle at 82% 78%, rgba(212, 175, 55, 0.08) 0%, transparent 50%);
}

.lx-stats-section::after {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, var(--lx-bronze) 20%, var(--lx-gold) 50%, var(--lx-bronze) 80%, transparent 100%);
    opacity: 0.55;
    z-index: 1;
}

.lx-stats-decor {
    position: absolute;
    top: 50%;
    right: -120px;
    transform: translateY(-50%);
    width: 480px;
    height: 480px;
    opacity: 0.04;
    pointer-events: none;
    z-index: 0;
}

.lx-stats-decor img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(2);
}

/* ── Head ────────────────────────────────────────────── */
.lx-stats-head {
    text-align: center;
    margin-bottom: 64px;
    position: relative;
    z-index: 1;
}

.lx-stats-head .lx-eyebrow {
    color: var(--lx-bronze);
    margin-bottom: 14px;
    display: inline-block;
}

.lx-stats-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 48px;
    font-weight: 500;
    line-height: 1.18;
    letter-spacing: -0.5px;
    color: var(--lx-cream);
    margin: 0 0 22px;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
}

.lx-stats-divider {
    width: 70px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--lx-bronze) 25%, var(--lx-gold) 50%, var(--lx-bronze) 75%, transparent);
    margin: 0 auto;
    position: relative;
}

.lx-stats-divider::before,
.lx-stats-divider::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    background: var(--lx-bronze);
    border-radius: 50%;
    transform: translateY(-50%) rotate(45deg);
}

.lx-stats-divider::before { left: -16px; }
.lx-stats-divider::after  { right: -16px; }

/* ── Grid ────────────────────────────────────────────── */
.lx-stats-section .lx-stats-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
    position: relative;
    z-index: 1;
}

/* ── Card ────────────────────────────────────────────── */
.lx-stat-card {
    position: relative;
    padding: 38px 22px 32px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.22);
    text-align: center;
    overflow: hidden;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition:
        transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.45s ease,
        box-shadow 0.45s ease,
        background 0.45s ease;
}

.lx-stat-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-stat-card::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.35), transparent);
    transform: scaleX(0.4);
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-stat-card:hover {
    transform: translateY(-8px);
    border-color: rgba(212, 175, 55, 0.55);
    box-shadow:
        0 24px 50px -22px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(212, 175, 55, 0.18) inset;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.03) 100%);
}

.lx-stat-card:hover::before { transform: scaleX(1); }
.lx-stat-card:hover::after  { transform: scaleX(1); }

/* Icon */
.lx-stat-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    margin-bottom: 22px;
    color: var(--lx-bronze);
    transition: color 0.4s ease, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    position: relative;
    z-index: 1;
}

.lx-stat-card-icon svg {
    width: 56px;
    height: 56px;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.25));
}

.lx-stat-card:hover .lx-stat-card-icon {
    color: var(--lx-gold-bright);
    transform: translateY(-2px) rotate(-3deg) scale(1.05);
}

/* Number */
.lx-stat-card-value {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 2px;
    font-family: 'Playfair Display', Georgia, serif;
    font-weight: 500;
    line-height: 1;
    color: var(--lx-cream);
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
}

.lx-stat-num {
    font-size: 59px;
    letter-spacing: -1.5px;
    background: linear-gradient(180deg, var(--lx-cream) 0%, var(--lx-bronze-soft) 100%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent;
    transition: filter 0.4s ease;
}

.lx-stat-suffix {
    font-size: 35px;
    color: var(--lx-bronze);
    margin-left: 2px;
}

.lx-stat-card:hover .lx-stat-num {
    filter: brightness(1.15);
}

/* Label */
.lx-stat-card-label {
    display: block;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-bronze-soft);
    font-weight: 600;
    line-height: 1.4;
    padding-top: 14px;
    border-top: 1px solid rgba(212, 175, 55, 0.18);
    transition: color 0.4s ease, border-top-color 0.4s ease;
    position: relative;
    z-index: 1;
}

.lx-stat-card:hover .lx-stat-card-label {
    color: var(--lx-gold-bright);
    border-top-color: rgba(212, 175, 55, 0.5);
}

/* Glow (corner accent) */
.lx-stat-card-glow {
    position: absolute;
    bottom: -50%;
    right: -30%;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.5s ease, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events: none;
    z-index: 0;
}

.lx-stat-card:hover .lx-stat-card-glow {
    opacity: 1;
    transform: translate(-20px, -20px);
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 1200px) {
    .lx-stats-section .lx-stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
    }
    .lx-stats-title { font-size: 41.5px; }
}

@media (max-width: 900px) {
    .lx-stats-section { padding: 80px 0 88px; }
    .lx-stats-section .lx-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .lx-stats-title { font-size: 35px; }
    .lx-stats-head { margin-bottom: 48px; }
}

@media (max-width: 600px) {
    .lx-stats-section { padding: 64px 0 72px; }
    .lx-stats-section .lx-stats-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .lx-stat-card { padding: 28px 22px 24px; }
    .lx-stat-card-icon { width: 52px; height: 52px; margin-bottom: 16px; }
    .lx-stat-card-icon svg { width: 46px; height: 46px; }
    .lx-stat-num { font-size: 50px; }
    .lx-stat-suffix { font-size: 28.5px; }
    .lx-stat-card-label { font-size: 11px; letter-spacing: 0.22em; padding-top: 12px; }
    .lx-stats-title { font-size: 28.5px; }
    .lx-stats-decor { width: 280px; height: 280px; right: -80px; opacity: 0.025; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-stat-card,
    .lx-stat-card-icon,
    .lx-stat-num,
    .lx-stat-card-glow,
    .lx-stat-card::before,
    .lx-stat-card::after { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Fotogaleriya — luxury grid + lightbox
   ───────────────────────────────────────────────────────────── */

.lx-gallery-section {
    background:
        radial-gradient(circle at 12% 20%, rgba(212, 175, 55, 0.05) 0%, transparent 45%),
        radial-gradient(circle at 88% 78%, rgba(10, 14, 26, 0.04) 0%, transparent 50%),
        var(--lx-cream);
}

.lx-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 56px;
}

/* ── Tile ────────────────────────────────────────────── */
.lx-gallery-tile {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #1a2238;
    border: 0;
    padding: 0;
    cursor: pointer;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 6px 22px -6px rgba(10, 14, 26, 0.18);
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-gallery-tile::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 4;
}

.lx-gallery-tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1),
                filter 0.55s ease;
    filter: saturate(0.95);
    z-index: 1;
}

.lx-gallery-tile:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 50px -16px rgba(10, 14, 26, 0.4);
}

.lx-gallery-tile:hover::before { transform: scaleX(1); }

.lx-gallery-tile:hover img {
    transform: scale(1.07);
    filter: saturate(1.1) contrast(1.04);
}

/* Overlay */
.lx-gallery-tile-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, transparent 40%, rgba(10, 14, 26, 0.55) 80%, rgba(10, 14, 26, 0.85) 100%);
    opacity: 0.55;
    transition: opacity 0.5s ease;
    z-index: 2;
    pointer-events: none;
}

.lx-gallery-tile:hover .lx-gallery-tile-overlay { opacity: 0.92; }

/* Zoom magnifier icon */
.lx-gallery-tile-zoom {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.6);
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--lx-navy);
    color: var(--lx-bronze-soft);
    border: 1px solid rgba(212, 175, 55, 0.45);
    opacity: 0;
    transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1),
                transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
                background 0.4s ease,
                color 0.4s ease;
    z-index: 3;
    pointer-events: none;
    box-shadow: 0 12px 28px -8px rgba(0, 0, 0, 0.55);
}

.lx-gallery-tile:hover .lx-gallery-tile-zoom {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.lx-gallery-tile:hover .lx-gallery-tile-zoom {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

/* Caption */
.lx-gallery-tile-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    padding: 22px 22px 18px;
    color: var(--lx-cream);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
    letter-spacing: 0.2px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    transform: translateY(8px);
    opacity: 0;
    transition: opacity 0.45s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    pointer-events: none;
}

.lx-gallery-tile:hover .lx-gallery-tile-caption {
    opacity: 1;
    transform: translateY(0);
}

.lx-gallery-tile.is-broken {
    background:
        radial-gradient(circle at center, rgba(212, 175, 55, 0.1) 0%, transparent 55%),
        var(--lx-navy);
}

.lx-gallery-tile.is-broken img { display: none; }

/* ── Lightbox ────────────────────────────────────────── */
.lx-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0s linear 0.35s;
}

.lx-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.4s ease, visibility 0s linear 0s;
}

.lx-lightbox-backdrop {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at center, rgba(10, 14, 26, 0.96) 0%, rgba(0, 0, 0, 0.98) 100%);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    cursor: zoom-out;
}

/* Counter */
.lx-lightbox-counter {
    position: absolute;
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: var(--lx-bronze-soft);
    font-family: 'Playfair Display', Georgia, serif;
    z-index: 3;
    pointer-events: none;
}

.lx-lightbox-counter .num {
    font-size: 17.5px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.lx-lightbox-counter .num.current { color: var(--lx-cream); font-size: 22px; }

.lx-lightbox-counter .line {
    display: block;
    width: 56px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--lx-bronze), transparent);
}

/* Close button */
.lx-lightbox-close {
    position: absolute;
    top: 22px;
    right: 28px;
    z-index: 4;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(212, 175, 55, 0.4);
    background: rgba(10, 14, 26, 0.6);
    color: var(--lx-bronze-soft);
    border-radius: 50%;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-lightbox-close:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-gold-bright);
    transform: rotate(90deg);
}

/* Nav arrows */
.lx-lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 4;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0.35);
    background: rgba(10, 14, 26, 0.55);
    color: var(--lx-bronze-soft);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: background 0.4s ease, color 0.4s ease, border-color 0.4s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-lightbox-nav.prev { left: 28px; }
.lx-lightbox-nav.next { right: 28px; }

.lx-lightbox-nav:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-gold-bright);
}

.lx-lightbox-nav.prev:hover { transform: translateY(-50%) translateX(-4px); }
.lx-lightbox-nav.next:hover { transform: translateY(-50%) translateX(4px); }

/* Stage */
.lx-lightbox-stage {
    position: relative;
    z-index: 2;
    max-width: 88vw;
    max-height: 78vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-lightbox-img {
    display: block;
    max-width: 88vw;
    max-height: 78vh;
    object-fit: contain;
    background: #0a0e1a;
    box-shadow:
        0 30px 60px -20px rgba(0, 0, 0, 0.75),
        0 0 0 1px rgba(212, 175, 55, 0.18);
    opacity: 0;
    transform: scale(0.92);
    transition: opacity 0.5s ease, transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-lightbox-img.is-ready {
    opacity: 1;
    transform: scale(1);
}

/* Spinner */
.lx-lightbox-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 44px;
    height: 44px;
    z-index: 3;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.lx-lightbox-spinner.is-on { opacity: 1; }

.lx-lightbox-spinner span {
    display: block;
    width: 100%;
    height: 100%;
    border: 2px solid rgba(212, 175, 55, 0.18);
    border-top-color: var(--lx-bronze);
    border-radius: 50%;
    animation: lxLightboxSpin 0.9s linear infinite;
}

@keyframes lxLightboxSpin { to { transform: rotate(360deg); } }

/* Foot caption */
.lx-lightbox-foot {
    position: absolute;
    left: 0; right: 0; bottom: 28px;
    text-align: center;
    z-index: 3;
    padding: 0 32px;
    pointer-events: none;
}

.lx-lightbox-caption {
    display: inline-block;
    max-width: 720px;
    color: var(--lx-cream);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 16.5px;
    line-height: 1.5;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6);
    padding: 10px 22px;
    background: rgba(10, 14, 26, 0.55);
    border: 1px solid rgba(212, 175, 55, 0.22);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.lx-lightbox-caption:empty { display: none; }

.lx-no-scroll { overflow: hidden; }

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
    .lx-lightbox-nav { width: 46px; height: 46px; }
    .lx-lightbox-nav.prev { left: 14px; }
    .lx-lightbox-nav.next { right: 14px; }
}

@media (max-width: 600px) {
    .lx-gallery-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .lx-gallery-tile { aspect-ratio: 1 / 1; }
    .lx-gallery-tile-zoom { width: 44px; height: 44px; }
    .lx-gallery-tile-zoom svg { width: 18px; height: 18px; }
    .lx-gallery-tile-caption { font-size: 13px; padding: 14px 12px 12px; }

    .lx-lightbox-counter { top: 16px; }
    .lx-lightbox-counter .num { font-size: 14px; }
    .lx-lightbox-counter .num.current { font-size: 17.5px; }
    .lx-lightbox-counter .line { width: 36px; }

    .lx-lightbox-close { top: 12px; right: 12px; width: 38px; height: 38px; }
    .lx-lightbox-nav { width: 38px; height: 38px; }
    .lx-lightbox-nav.prev { left: 8px; }
    .lx-lightbox-nav.next { right: 8px; }

    .lx-lightbox-stage,
    .lx-lightbox-img { max-width: 96vw; max-height: 72vh; }

    .lx-lightbox-foot { bottom: 14px; padding: 0 12px; }
    .lx-lightbox-caption { font-size: 13px; padding: 8px 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-gallery-tile,
    .lx-gallery-tile img,
    .lx-gallery-tile-zoom,
    .lx-gallery-tile-caption,
    .lx-lightbox-img,
    .lx-lightbox-close,
    .lx-lightbox-nav { transition: none; }
    .lx-lightbox-spinner span { animation-duration: 1.5s; }
}

/* ─────────────────────────────────────────────────────────────
   Qidiruv sahifasi — luxury search results
   ───────────────────────────────────────────────────────────── */

/* ── Re-search toolbar ──────────────────────────────── */
.lx-search-toolbar-section {
    padding: 40px 0 8px;
    background: var(--lx-cream);
}

.lx-search-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    max-width: 760px;
    margin: 0 auto;
    padding: 8px 8px 8px 22px;
    background: #ffffff;
    border: 1px solid rgba(201, 169, 97, 0.28);
    box-shadow: 0 14px 36px -18px rgba(10, 14, 26, 0.22);
    transition: border-color 0.35s ease, box-shadow 0.35s ease;
}

.lx-search-toolbar:focus-within {
    border-color: var(--lx-bronze);
    box-shadow: 0 18px 44px -16px rgba(10, 14, 26, 0.28),
                0 0 0 3px rgba(212, 175, 55, 0.12);
}

.lx-search-toolbar-icon {
    flex-shrink: 0;
    color: var(--lx-bronze);
}

.lx-search-toolbar-input {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--lx-navy);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 18.5px;
    line-height: 1.4;
    padding: 12px 6px;
}

.lx-search-toolbar-input::placeholder {
    color: rgba(10, 14, 26, 0.4);
    font-style: italic;
}

.lx-search-toolbar-submit {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 0;
    background: var(--lx-navy);
    color: var(--lx-cream);
    font-family: inherit;
    font-size: 12px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    font-weight: 600;
    padding: 14px 24px;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.35s ease, color 0.35s ease, gap 0.35s ease;
}

.lx-search-toolbar-submit:hover {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    gap: 14px;
}

/* ── Section background ──────────────────────────────── */
.lx-search-section {
    background: linear-gradient(180deg, var(--lx-cream) 0%, #efeeea 100%);
}

/* ── Filter chips ────────────────────────────────────── */
.lx-search-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 48px;
}

.lx-search-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 16px 9px 18px;
    background: #ffffff;
    border: 1px solid rgba(10, 14, 26, 0.08);
    color: var(--lx-navy);
    font-family: inherit;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    font-weight: 600;
    cursor: pointer;
    transition:
        background 0.35s ease,
        border-color 0.35s ease,
        color 0.35s ease,
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.35s ease;
}

.lx-search-chip:hover {
    transform: translateY(-2px);
    border-color: rgba(201, 169, 97, 0.45);
    box-shadow: 0 10px 22px -10px rgba(10, 14, 26, 0.18);
}

.lx-search-chip.is-active {
    background: var(--lx-navy);
    color: var(--lx-cream);
    border-color: var(--lx-navy);
}

.lx-search-chip-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 20px;
    padding: 0 6px;
    background: rgba(201, 169, 97, 0.12);
    color: var(--lx-bronze-dark);
    border-radius: 10px;
    font-size: 11px;
    letter-spacing: 0.04em;
    font-weight: 700;
    transition: background 0.35s ease, color 0.35s ease;
}

.lx-search-chip.is-active .lx-search-chip-count {
    background: var(--lx-bronze);
    color: var(--lx-navy);
}

/* ── Group ───────────────────────────────────────────── */
.lx-search-group {
    margin-bottom: 56px;
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.lx-search-group.is-hidden {
    display: none;
}

.lx-search-group-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.22);
}

.lx-search-group-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(201, 169, 97, 0.1);
    color: var(--lx-bronze);
    border: 1px solid rgba(201, 169, 97, 0.3);
    flex-shrink: 0;
}

.lx-search-group-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 24px;
    font-weight: 500;
    color: var(--lx-navy);
    margin: 0;
    flex: 1;
    line-height: 1.3;
}

.lx-search-group-count {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 28.5px;
    font-weight: 400;
    color: var(--lx-bronze);
    line-height: 1;
    letter-spacing: -1px;
}

/* ── Result rows ─────────────────────────────────────── */
.lx-search-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.lx-search-row {
    --d: 0ms;
    position: relative;
    display: grid;
    grid-template-columns: 64px 1fr auto;
    align-items: center;
    gap: 18px;
    padding: 14px 18px 14px 14px;
    background: #ffffff;
    border: 1px solid rgba(10, 14, 26, 0.06);
    text-decoration: none;
    color: var(--lx-navy);
    text-align: left;
    font-family: inherit;
    cursor: pointer;
    overflow: hidden;
    transition:
        transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) var(--d),
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.lx-search-row::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--lx-bronze), var(--lx-gold));
    transform: scaleY(0);
    transform-origin: top center;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-search-row:hover {
    transform: translateY(-2px);
    border-color: rgba(201, 169, 97, 0.5);
    box-shadow: 0 14px 30px -14px rgba(10, 14, 26, 0.18);
    color: var(--lx-navy);
}

.lx-search-row:hover::before { transform: scaleY(1); }

/* Thumb */
.lx-search-row-thumb {
    position: relative;
    width: 64px;
    height: 64px;
    overflow: hidden;
    background: rgba(10, 14, 26, 0.04);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lx-search-row-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-search-row:hover .lx-search-row-thumb img {
    transform: scale(1.08);
}

.lx-search-row-thumb-empty {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 28.5px;
    font-weight: 500;
    color: var(--lx-bronze);
    background:
        radial-gradient(circle at center, rgba(212, 175, 55, 0.08) 0%, transparent 70%),
        var(--lx-navy);
    color: var(--lx-bronze-soft);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Body */
.lx-search-row-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.lx-search-row-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 16.5px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--lx-navy);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.3s ease;
}

.lx-search-row:hover .lx-search-row-title {
    color: var(--lx-bronze-dark);
}

.lx-search-row-meta {
    font-size: 11px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--lx-bronze);
    font-weight: 600;
}

/* CTA */
.lx-search-row-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    color: var(--lx-bronze);
    border: 1px solid rgba(201, 169, 97, 0.3);
    transition:
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease,
        transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-search-row:hover .lx-search-row-cta {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
    transform: translateX(3px);
}

/* ── Empty state ─────────────────────────────────────── */
.lx-search-empty {
    background: #ffffff;
    border: 1px solid rgba(201, 169, 97, 0.22);
    padding: 64px 32px;
    text-align: center;
    max-width: 620px;
    margin: 0 auto 56px;
    position: relative;
    overflow: hidden;
}

.lx-search-empty::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze), var(--lx-gold), var(--lx-bronze));
}

.lx-search-empty-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    color: var(--lx-bronze);
    background: rgba(201, 169, 97, 0.08);
    border: 1px solid rgba(201, 169, 97, 0.28);
    margin-bottom: 22px;
}

.lx-search-empty-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 28.5px;
    font-weight: 500;
    color: var(--lx-navy);
    margin: 0 0 14px;
}

.lx-search-empty-text {
    font-size: 16px;
    line-height: 1.65;
    color: rgba(10, 14, 26, 0.65);
    margin: 0;
}

.lx-search-empty-text em {
    color: var(--lx-bronze-dark);
    font-style: italic;
    font-weight: 600;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-search-list {
        grid-template-columns: 1fr;
    }
    .lx-search-toolbar {
        padding: 6px 6px 6px 18px;
    }
    .lx-search-toolbar-input { font-size: 16.5px; }
    .lx-search-toolbar-submit { padding: 12px 18px; font-size: 11px; }
}

@media (max-width: 600px) {
    .lx-search-toolbar-section { padding-top: 28px; }
    .lx-search-toolbar {
        gap: 4px;
        padding: 5px 5px 5px 14px;
    }
    .lx-search-toolbar-icon { width: 16px; height: 16px; }
    .lx-search-toolbar-input { font-size: 15.5px; padding: 10px 4px; }
    .lx-search-toolbar-submit span { display: none; }
    .lx-search-toolbar-submit { padding: 11px 14px; }

    .lx-search-chips { gap: 8px; margin-bottom: 32px; }
    .lx-search-chip { padding: 7px 12px 7px 14px; font-size: 10.5px; letter-spacing: 0.16em; gap: 8px; }
    .lx-search-chip-count { min-width: 18px; height: 16px; font-size: 10px; }

    .lx-search-group { margin-bottom: 40px; }
    .lx-search-group-head { gap: 10px; margin-bottom: 16px; }
    .lx-search-group-icon { width: 32px; height: 32px; }
    .lx-search-group-title { font-size: 19.5px; }
    .lx-search-group-count { font-size: 24px; }

    .lx-search-row {
        grid-template-columns: 56px 1fr auto;
        gap: 12px;
        padding: 12px 14px 12px 10px;
    }
    .lx-search-row-thumb { width: 56px; height: 56px; }
    .lx-search-row-thumb-empty { font-size: 24px; }
    .lx-search-row-title { font-size: 15.5px; }
    .lx-search-row-meta { font-size: 10px; letter-spacing: 0.18em; }
    .lx-search-row-cta { width: 28px; height: 28px; }

    .lx-search-empty { padding: 44px 20px; }
    .lx-search-empty-icon { width: 64px; height: 64px; margin-bottom: 16px; }
    .lx-search-empty-icon svg { width: 32px; height: 32px; }
    .lx-search-empty-title { font-size: 24px; }
    .lx-search-empty-text { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-search-row,
    .lx-search-chip,
    .lx-search-row-thumb img,
    .lx-search-row-cta { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Tadqiqot natijalari raqamlarda — statistics/infographic page
   ───────────────────────────────────────────────────────────── */

.lx-rn-subhead {
    text-align: center;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    margin: 0 0 36px;
}

.lx-section.charcoal .lx-rn-subhead {
    color: var(--lx-bronze-soft);
}

/* ── Metric row (headline numbers) ─────────────────────── */
.lx-rn-metric-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 28px;
    margin: 0 0 56px;
}

.lx-rn-metric {
    text-align: center;
    padding: 30px 20px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(201, 169, 97, 0.22);
    position: relative;
}

.lx-rn-metric::before {
    content: '';
    position: absolute;
    top: 0; left: 50%;
    transform: translateX(-50%);
    width: 46px;
    height: 2px;
    background: linear-gradient(90deg, var(--lx-bronze) 0%, var(--lx-gold) 50%, var(--lx-bronze) 100%);
}

.lx-section.charcoal .lx-rn-metric,
.lx-section.dark .lx-rn-metric {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border-color: rgba(212, 175, 55, 0.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.lx-rn-metric-value {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    font-family: 'Playfair Display', Georgia, serif;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 12px;
}

.lx-rn-metric-num {
    font-size: 54.5px;
    letter-spacing: -1.5px;
    background: linear-gradient(180deg, var(--lx-navy) 0%, var(--lx-bronze-dark) 100%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent;
}

.lx-section.charcoal .lx-rn-metric-num,
.lx-section.dark .lx-rn-metric-num {
    background: linear-gradient(180deg, var(--lx-cream) 0%, var(--lx-bronze-soft) 100%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent;
}

.lx-rn-metric-prefix,
.lx-rn-metric-suffix {
    font-size: 30.5px;
    color: var(--lx-bronze);
    font-weight: 500;
}

.lx-rn-metric-label {
    display: block;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--lx-text-soft);
}

.lx-section.charcoal .lx-rn-metric-label,
.lx-section.dark .lx-rn-metric-label {
    color: var(--lx-bronze-soft);
}

.lx-rn-metric-note {
    display: block;
    margin-top: 8px;
    font-size: 13px;
    color: var(--lx-text-soft);
    letter-spacing: 0.01em;
    text-transform: none;
    font-weight: 400;
}

.lx-section.charcoal .lx-rn-metric-note,
.lx-section.dark .lx-rn-metric-note {
    color: rgba(245, 243, 240, 0.6);
}

/* ── Type / product card grid ──────────────────────────── */
.lx-rn-type-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 22px;
}

.lx-rn-type-card {
    padding: 30px 22px 26px;
    text-align: center;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.18);
    box-shadow: 0 10px 30px -18px rgba(10, 14, 26, 0.15);
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.45s ease;
}

.lx-rn-type-card:hover {
    transform: translateY(-6px);
    border-color: rgba(201, 169, 97, 0.45);
    box-shadow: 0 24px 44px -20px rgba(10, 14, 26, 0.22);
}

.lx-section.charcoal .lx-rn-type-card,
.lx-section.dark .lx-rn-type-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border-color: rgba(212, 175, 55, 0.2);
    box-shadow: none;
}

.lx-rn-type-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 16px;
    color: var(--lx-bronze);
}

.lx-rn-type-icon svg {
    width: 40px;
    height: 40px;
}

.lx-rn-type-card:hover .lx-rn-type-icon {
    color: var(--lx-gold-bright);
}

.lx-rn-type-num {
    display: block;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 37px;
    font-weight: 600;
    line-height: 1;
    color: var(--lx-navy);
    margin-bottom: 10px;
}

.lx-section.charcoal .lx-rn-type-num,
.lx-section.dark .lx-rn-type-num {
    color: var(--lx-cream);
}

.lx-rn-type-label {
    display: block;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--lx-text-soft);
    letter-spacing: 0.01em;
}

.lx-section.charcoal .lx-rn-type-label,
.lx-section.dark .lx-rn-type-label {
    color: var(--lx-text-light);
}

/* ── Chain flow (14 hudud → ... → manzilli yechim) ─────── */
.lx-rn-chain {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.lx-rn-chain-step {
    padding: 14px 22px;
    text-align: center;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(212, 175, 55, 0.28);
    color: var(--lx-cream);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.02em;
    min-width: 140px;
}

.lx-rn-chain-step:first-child {
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    color: var(--lx-navy);
    border-color: transparent;
}

.lx-rn-chain-arrow {
    flex-shrink: 0;
    color: var(--lx-bronze);
    opacity: 0.8;
}

.lx-rn-chain-caption {
    text-align: center;
    max-width: 560px;
    margin: 0 auto 56px;
    font-size: 15.5px;
    line-height: 1.7;
    color: var(--lx-text-light);
}

/* ── Chips (yo'nalishlar / davlatlar ro'yxati) ─────────── */
.lx-rn-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.lx-rn-chip {
    display: inline-flex;
    align-items: center;
    padding: 9px 18px;
    font-size: 13.5px;
    font-weight: 500;
    letter-spacing: 0.01em;
    color: var(--lx-navy);
    background: rgba(201, 169, 97, 0.08);
    border: 1px solid rgba(201, 169, 97, 0.3);
    transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.lx-rn-chip:hover {
    background: rgba(201, 169, 97, 0.16);
    border-color: var(--lx-bronze);
    transform: translateY(-2px);
}

.lx-rn-chips-block {
    margin-top: 44px;
    text-align: center;
}

.lx-rn-chips-head {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    margin-bottom: 16px;
    display: block;
}

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-rn-metric-num { font-size: 46px; }
    .lx-rn-metric-row { gap: 20px; margin-bottom: 44px; }
}

@media (max-width: 768px) {
    .lx-rn-chain-step { min-width: 120px; padding: 12px 16px; font-size: 13px; }
    .lx-rn-chain-arrow svg { width: 16px; height: 16px; }
}

@media (max-width: 480px) {
    .lx-rn-metric-row { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .lx-rn-metric { padding: 22px 14px; }
    .lx-rn-metric-num { font-size: 37px; }
    .lx-rn-metric-prefix, .lx-rn-metric-suffix { font-size: 22px; }
    .lx-rn-type-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .lx-rn-type-card { padding: 22px 14px 18px; }
    .lx-rn-chain { gap: 6px; }
    .lx-rn-chain-step { min-width: 0; flex: 1 1 42%; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-rn-type-card,
    .lx-rn-chip { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Institut faoliyati raqamlarda — Bento Grid stats page
   ───────────────────────────────────────────────────────────── */

.lx-bento-section { padding-top: 90px; }

.lx-bento-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(90px, auto);
    gap: 22px;
}

.lx-bento-card {
    position: relative;
    grid-column: span 1;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.16);
    border-radius: 20px;
    padding: 30px 26px;
    overflow: hidden;
    box-shadow: var(--lx-shadow-card);
    transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.45s ease, border-color 0.45s ease;
}

.lx-bento-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--lx-shadow-luxury);
    border-color: rgba(201, 169, 97, 0.35);
}

.lx-bento-decor {
    position: absolute;
    top: -40%;
    right: -20%;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201, 169, 97, 0.14) 0%, transparent 70%);
    pointer-events: none;
}

/* ── XL blocks: the two hero figures (2x2) ── */
.lx-bento-card.size-xl {
    grid-column: span 2;
    grid-row: span 2;
    padding: 40px 38px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.lx-bento-card.size-xl:nth-of-type(1) {
    background: linear-gradient(150deg, var(--lx-navy) 0%, var(--lx-charcoal) 60%, var(--lx-charcoal-2) 100%);
    color: var(--lx-text-light);
    border-color: rgba(201, 169, 97, 0.3);
}

.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-decor {
    background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, transparent 70%);
}

.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-icon {
    color: var(--lx-bronze-soft);
    background: rgba(212, 175, 55, 0.12);
}

.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-num,
.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-suffix {
    color: var(--lx-gold-bright);
}

.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-label { color: var(--lx-cream); }
.lx-bento-card.size-xl:nth-of-type(1) .lx-bento-text { color: var(--lx-text-light); }

/* Ring card (93%) */
.lx-bento-card.has-ring {
    align-items: center;
    text-align: center;
    background: linear-gradient(180deg, #fff 0%, var(--lx-paper) 100%);
}

.lx-bento-ring {
    width: 148px;
    height: 148px;
    margin: 4px auto 14px;
    transform: rotate(-90deg);
}

.lx-bento-ring-track,
.lx-bento-ring-fill {
    fill: none;
    stroke-width: 9;
}

.lx-bento-ring-track {
    stroke: rgba(201, 169, 97, 0.16);
}

.lx-bento-ring-fill {
    stroke: var(--lx-bronze);
    stroke-linecap: round;
}

.lx-bento-card.has-ring .lx-bento-value {
    position: relative;
    margin-top: -108px;
    margin-bottom: 24px;
    pointer-events: none;
}

.lx-bento-card.has-ring .lx-bento-icon {
    margin-left: auto;
    margin-right: auto;
}

/* ── Shared value / icon / text styles ── */

.lx-bento-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-dark);
    background: rgba(201, 169, 97, 0.1);
    margin-bottom: 18px;
    flex-shrink: 0;
}

.lx-bento-icon svg { width: 26px; height: 26px; }

.lx-bento-card.size-xl .lx-bento-icon { width: 60px; height: 60px; }
.lx-bento-card.size-xl .lx-bento-icon svg { width: 30px; height: 30px; }

.lx-bento-value {
    display: flex;
    align-items: baseline;
    gap: 4px;
    line-height: 1;
}

.lx-bento-num {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 43.5px;
    color: var(--lx-navy);
    font-variant-numeric: tabular-nums;
}

.lx-bento-card.size-xl .lx-bento-num { font-size: 74px; }
.lx-bento-card.has-ring .lx-bento-num { font-size: 48px; }

.lx-bento-suffix {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 28.5px;
    color: var(--lx-bronze);
}

.lx-bento-card.size-xl .lx-bento-suffix { font-size: 41.5px; }

.lx-bento-label {
    font-size: 16.5px;
    font-weight: 600;
    color: var(--lx-navy);
    margin: 10px 0 6px;
    line-height: 1.35;
}

.lx-bento-card.size-xl .lx-bento-label { font-size: 19.5px; }

.lx-bento-text {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--lx-text-soft);
    margin: 0;
}

.lx-bento-card.size-xl .lx-bento-text { font-size: 14.5px; max-width: 380px; }

/* ── Wide card (hamkorlar breakdown) ── */
.lx-bento-card.size-wide {
    grid-column: span 4;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 28px;
    padding: 34px 40px;
}

.lx-bento-card.size-wide .lx-bento-icon { margin-bottom: 0; }

.lx-bento-card.size-wide .lx-bento-value { margin: 0; }

.lx-bento-card.size-wide .lx-bento-label,
.lx-bento-card.size-wide .lx-bento-text { margin: 0; }

.lx-bento-card.size-wide .lx-bento-text { max-width: 460px; }

.lx-bento-breakdown {
    display: flex;
    gap: 22px;
    padding-left: 28px;
    border-left: 1px solid rgba(201, 169, 97, 0.25);
}

.lx-bento-breakdown-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 74px;
}

.lx-bento-breakdown-num {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 32.5px;
    color: var(--lx-bronze-dark);
    line-height: 1;
}

.lx-bento-breakdown-label {
    font-size: 11.5px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--lx-text-soft);
    margin-top: 6px;
}

/* ── Scientific output — product chips ── */

.lx-stats-products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.lx-stats-product {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(201, 169, 97, 0.2);
    border-radius: 16px;
    padding: 26px 18px;
    text-align: center;
    transition: transform 0.4s ease, background 0.4s ease, border-color 0.4s ease;
}

.lx-stats-product:hover {
    transform: translateY(-4px);
    background: rgba(212, 175, 55, 0.07);
    border-color: var(--lx-bronze);
}

.lx-stats-product-icon {
    width: 44px;
    height: 44px;
    margin: 0 auto 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
}

.lx-stats-product-icon svg { width: 26px; height: 26px; }

.lx-stats-product-value {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 35px;
    color: var(--lx-gold-bright);
    line-height: 1;
    margin-bottom: 8px;
}

.lx-stats-product-label {
    font-size: 13.5px;
    color: var(--lx-text-light);
    line-height: 1.4;
    display: block;
}

/* ── Footer quote ── */

.lx-stats-footer {
    padding: 90px 0 100px;
    background: var(--lx-cream);
    text-align: center;
}

.lx-stats-footer-quote {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 98px;
    line-height: 1;
    color: var(--lx-bronze);
    opacity: 0.5;
}

.lx-stats-footer-text {
    max-width: 720px;
    margin: 0 auto;
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: clamp(22px, 2.6vw, 30.5px);
    line-height: 1.6;
    color: var(--lx-navy);
}

/* ── Responsive ── */
@media (max-width: 1100px) {
    .lx-bento-grid { grid-template-columns: repeat(2, 1fr); }
    .lx-bento-card.size-xl { grid-row: span 1; }
    .lx-bento-card.size-wide { grid-column: span 2; }
}

@media (max-width: 860px) {
    .lx-stats-products { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
    .lx-bento-card.size-wide {
        grid-template-columns: 1fr;
        text-align: center;
        justify-items: center;
    }
    .lx-bento-breakdown {
        border-left: none;
        border-top: 1px solid rgba(201, 169, 97, 0.25);
        padding-left: 0;
        padding-top: 18px;
        justify-content: center;
        width: 100%;
    }
}

@media (max-width: 560px) {
    .lx-bento-section { padding-top: 60px; }
    .lx-bento-grid { grid-template-columns: 1fr; gap: 16px; }
    .lx-bento-card.size-xl,
    .lx-bento-card.size-wide,
    .lx-bento-card { grid-column: span 1; grid-row: auto; }
    .lx-bento-card.size-xl { padding: 32px 26px; }
    .lx-bento-card.size-xl .lx-bento-num { font-size: 56.5px; }
    .lx-bento-card.size-xl .lx-bento-suffix { font-size: 32.5px; }
    .lx-bento-ring { width: 128px; height: 128px; }
    .lx-bento-card.has-ring .lx-bento-value { margin-top: -94px; }
    .lx-stats-products { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .lx-stats-footer { padding: 64px 0 72px; }
    .lx-stats-footer-quote { font-size: 70px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-bento-card,
    .lx-stats-product { transition: none; }
    .lx-bento-ring-fill { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Missiya va vazifalar — mission hero, task grid, process flow
   ───────────────────────────────────────────────────────────── */

.lx-mission-hero-text {
    position: relative;
    max-width: 880px;
    margin: 0 auto;
    padding: 50px 56px 46px;
    background: linear-gradient(160deg, #fff 0%, var(--lx-paper) 100%);
    border: 1px solid rgba(201, 169, 97, 0.22);
    border-radius: 6px;
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
}

.lx-mission-hero-text::after {
    content: "";
    position: absolute;
    top: -30%;
    right: -10%;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.14) 0%, transparent 70%);
    pointer-events: none;
}

.lx-mission-hero-quote {
    position: absolute;
    top: -8px;
    left: 26px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 131px;
    line-height: 1;
    color: rgba(201, 169, 97, 0.16);
    pointer-events: none;
}

.lx-mission-hero-label {
    position: relative;
    display: block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    margin-bottom: 20px;
}

.lx-mission-hero-text p {
    position: relative;
    z-index: 1;
    font-family: 'Cormorant Garamond', serif;
    font-size: 20.5px;
    line-height: 1.75;
    color: var(--lx-text);
    margin: 0 0 18px;
}

.lx-mission-hero-text p:first-of-type {
    font-weight: 600;
    color: var(--lx-navy);
}

.lx-mission-hero-text p:last-child { margin-bottom: 0; }

/* ── Task grid cards ── */

.lx-mission-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.lx-mission-card {
    position: relative;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(201, 169, 97, 0.16);
    border-radius: 14px;
    padding: 30px 26px 26px;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, background 0.4s ease;
}

.lx-mission-card:hover {
    transform: translateY(-6px);
    border-color: var(--lx-bronze);
    background: rgba(212, 175, 55, 0.05);
}

.lx-mission-card-index {
    position: absolute;
    top: 22px;
    right: 24px;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 37px;
    line-height: 1;
    color: rgba(212, 175, 55, 0.2);
}

.lx-mission-card-icon {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-soft);
    background: rgba(212, 175, 55, 0.1);
    margin-bottom: 18px;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.4s ease;
}

.lx-mission-card:hover .lx-mission-card-icon {
    transform: scale(1.08) rotate(-4deg);
    background: rgba(212, 175, 55, 0.18);
}

.lx-mission-card-icon svg { width: 26px; height: 26px; }

.lx-mission-card-title {
    font-size: 17.5px;
    font-weight: 600;
    color: var(--lx-cream);
    margin: 0 0 10px;
    line-height: 1.35;
    padding-right: 30px;
}

.lx-mission-card-text {
    font-size: 14px;
    line-height: 1.7;
    color: var(--lx-text-light);
    margin: 0;
}

/* ── Responsive ── */
@media (max-width: 900px) {
    .lx-mission-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
    .lx-mission-hero-text { padding: 38px 24px 34px; }
    .lx-mission-hero-text p { font-size: 18.5px; }
    .lx-mission-hero-quote { font-size: 98px; }
    .lx-mission-grid { grid-template-columns: 1fr; gap: 16px; }
    .lx-mission-card { padding: 26px 22px 22px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-mission-card,
    .lx-mission-card-icon { transition: none; }
}

/* ── Task list (long stacked rows) — "Missiya va vazifalar" tasks ── */

.lx-mission-list {
    display: flex;
    flex-direction: column;
    border-top: 1px solid rgba(201, 169, 97, 0.16);
}

.lx-mission-row {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 26px;
    padding: 30px 6px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.16);
    transition: background 0.35s ease, padding-left 0.35s ease;
}

.lx-mission-row:hover {
    background: rgba(212, 175, 55, 0.05);
    padding-left: 16px;
}

.lx-mission-row-index {
    flex: 0 0 auto;
    width: 54px;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    font-size: 34px;
    line-height: 1;
    color: rgba(212, 175, 55, 0.28);
}

.lx-mission-row-icon {
    flex: 0 0 auto;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-soft);
    background: rgba(212, 175, 55, 0.1);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.4s ease;
}

.lx-mission-row:hover .lx-mission-row-icon {
    transform: scale(1.08) rotate(-4deg);
    background: rgba(212, 175, 55, 0.18);
}

.lx-mission-row-icon svg { width: 26px; height: 26px; }

.lx-mission-row-body {
    flex: 1 1 auto;
    min-width: 0;
    padding-top: 4px;
}

.lx-mission-row-title {
    font-size: 18.5px;
    font-weight: 600;
    color: var(--lx-cream);
    margin: 0 0 8px;
    line-height: 1.35;
}

.lx-mission-row-text {
    font-size: 14.5px;
    line-height: 1.75;
    color: var(--lx-text-light);
    margin: 0;
    max-width: 780px;
}

@media (max-width: 640px) {
    .lx-mission-row { gap: 16px; padding: 22px 4px; }
    .lx-mission-row:hover { padding-left: 4px; }
    .lx-mission-row-index { width: 30px; font-size: 22px; }
    .lx-mission-row-icon { width: 40px; height: 40px; }
    .lx-mission-row-icon svg { width: 20px; height: 20px; }
    .lx-mission-row-title { font-size: 16.5px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-mission-row,
    .lx-mission-row-icon { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Xalqaro hamkorlik haqida — international cooperation page
   ───────────────────────────────────────────────────────────── */

.lx-intl-legal-section { position: relative; overflow: hidden; }

.lx-intl-globe-decor {
    position: absolute;
    top: 50%;
    right: -70px;
    transform: translateY(-50%);
    width: 420px;
    height: 420px;
    color: var(--lx-bronze);
    opacity: 0.09;
    pointer-events: none;
    z-index: 0;
    animation: lxRingSpin 90s linear infinite;
}

.lx-mission-card-icon-emoji {
    font-size: 26px;
    line-height: 1;
}

.lx-intl-banner {
    position: relative;
    max-width: 860px;
    margin: 0 auto;
    padding: 46px 56px 42px;
    text-align: center;
    background: linear-gradient(160deg, #fff 0%, var(--lx-paper) 100%);
    border: 1px solid rgba(201, 169, 97, 0.28);
    border-radius: 6px;
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
}

.lx-intl-banner::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--lx-bronze), var(--lx-gold), var(--lx-bronze));
}

.lx-intl-banner-icon {
    display: inline-flex;
    font-size: 32.5px;
    line-height: 1;
    margin-bottom: 18px;
}

.lx-intl-banner-text {
    position: relative;
    font-family: 'Cormorant Garamond', serif;
    font-size: 23px;
    font-weight: 600;
    line-height: 1.65;
    color: var(--lx-navy);
    margin: 0;
}

@media (max-width: 900px) {
    .lx-intl-globe-decor { width: 320px; height: 320px; right: -100px; opacity: 0.07; }
}

@media (max-width: 640px) {
    .lx-intl-globe-decor { display: none; }
    .lx-intl-banner { padding: 34px 24px 30px; }
    .lx-intl-banner-text { font-size: 19.5px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-intl-globe-decor { animation: none; }
}

/* ─────────────────────────────────────────────────────────────
   Tashabbus asosidagi loyihalar — project list page
   ───────────────────────────────────────────────────────────── */

.lx-tl-intro {
    max-width: 840px;
    margin: 0 auto;
    text-align: center;
}

.lx-tl-intro p {
    font-size: 19.5px;
    line-height: 1.85;
    color: var(--lx-text-soft);
    margin: 0 0 22px;
}

.lx-tl-intro p:first-child {
    font-size: 22px;
    font-weight: 500;
    color: var(--lx-navy);
    font-family: 'Cormorant Garamond', serif;
    line-height: 1.7;
}

.lx-tl-intro p:last-child {
    margin-bottom: 0;
}

/* ── Tabs ───────────────────────────────────────────────── */
.lx-tl-tabs {
    display: flex;
    width: fit-content;
    justify-content: center;
    gap: 6px;
    margin: 0 auto 56px;
    padding: 8px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.25);
    border-radius: 999px;
    box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3), 0 16px 36px -20px rgba(0, 0, 0, 0.5);
}

.lx-tl-tab {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 28px;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--lx-text-light);
    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.35s ease, color 0.35s ease, box-shadow 0.35s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-tl-tab::before {
    flex-shrink: 0;
    font-size: 14px;
    line-height: 1;
    opacity: 0.85;
}

.lx-tl-tab[data-lx-tl-tab="completed"]::before { content: "\2713"; }
.lx-tl-tab[data-lx-tl-tab="ongoing"]::before { content: "\23F3"; }

.lx-tl-tab:hover {
    color: var(--lx-cream);
    background: rgba(212, 175, 55, 0.12);
}

.lx-tl-tab:focus-visible {
    outline: 2px solid var(--lx-gold);
    outline-offset: 2px;
}

.lx-tl-tab.is-active {
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    border-color: transparent;
    color: var(--lx-navy);
    box-shadow: 0 10px 26px -10px rgba(212, 175, 55, 0.6), 0 2px 8px rgba(0, 0, 0, 0.25);
    transform: translateY(-1px);
}

.lx-tl-tab.is-active:hover {
    color: var(--lx-navy);
}

.lx-tl-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 23px;
    height: 23px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.18);
    color: var(--lx-bronze-soft);
    font-size: 12px;
    font-weight: 700;
    transition: background 0.35s ease, color 0.35s ease;
}

.lx-tl-tab.is-active .lx-tl-tab-count {
    background: rgba(10, 14, 26, 0.18);
    color: var(--lx-navy);
}

/* ── Panels ─────────────────────────────────────────────── */
.lx-tl-panel {
    display: none;
    animation: lxTlFadeIn 0.45s ease;
}

.lx-tl-panel.is-active {
    display: block;
}

@keyframes lxTlFadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Grid / cards ───────────────────────────────────────── */
.lx-tl-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    gap: 18px;
    padding-bottom: 96px;
}

.lx-tl-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 22px 22px 22px 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.18);
    border-left: 2px solid rgba(212, 175, 55, 0.4);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, background 0.4s ease;
}

.lx-tl-card:hover {
    transform: translateY(-4px);
    border-color: rgba(212, 175, 55, 0.5);
    border-left-color: var(--lx-gold);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.03) 100%);
}

.lx-tl-icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    font-size: 23px;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 50%;
    line-height: 1;
}

.lx-tl-title {
    font-size: 14.5px;
    line-height: 1.55;
    color: var(--lx-text-light);
    letter-spacing: 0.005em;
    padding-top: 4px;
}

/* Card body wrapper (title + client badge stacked) */
.lx-tl-card-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1 1 auto;
    min-width: 0;
}

.lx-tl-card-body .lx-tl-title {
    padding-top: 0;
}

/* Buyurtmachi (client) badge */
.lx-tl-client {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    align-self: flex-start;
    max-width: 100%;
    padding: 6px 14px 6px 11px;
    background: rgba(212, 175, 55, 0.14);
    border: 1px solid rgba(212, 175, 55, 0.4);
    border-radius: 999px;
    color: var(--lx-bronze-soft);
    font-size: 11.5px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.4;
}

.lx-tl-client svg {
    flex-shrink: 0;
    color: var(--lx-gold-bright);
}

.lx-tl-client-label {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 10.5px;
    color: var(--lx-gold-bright);
}

.lx-tl-card:hover .lx-tl-client {
    border-color: rgba(212, 175, 55, 0.65);
    background: rgba(212, 175, 55, 0.2);
}

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 768px) {
    .lx-tl-tabs { width: 100%; gap: 6px; margin-bottom: 36px; }
    .lx-tl-tab { padding: 13px 16px; font-size: 12.5px; flex: 1 1 0; justify-content: center; }
    .lx-tl-grid { grid-template-columns: 1fr; gap: 12px; padding-bottom: 64px; }
    .lx-tl-intro p { font-size: 17.5px; line-height: 1.75; }
    .lx-tl-intro p:first-child { font-size: 19.5px; }
}

@media (max-width: 480px) {
    .lx-tl-card { padding: 18px 16px; gap: 12px; }
    .lx-tl-icon { width: 40px; height: 40px; font-size: 19.5px; }
    .lx-tl-title { font-size: 14px; }
    .lx-tl-tab { padding: 12px 10px; gap: 6px; }
    .lx-tl-tab-count { min-width: 20px; height: 20px; font-size: 11px; }
    .lx-tl-intro p { font-size: 16.5px; }
    .lx-tl-intro p:first-child { font-size: 18px; }
    .lx-tl-client { font-size: 11px; padding: 5px 10px 5px 9px; white-space: normal; }
    .lx-tl-client-label { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-tl-card,
    .lx-tl-tab { transition: none; }
    .lx-tl-panel { animation: none; }
}

/* ─────────────────────────────────────────────────────────────
   Davlat granti asosidagi loyihalar — high-tech / innovation page
   (scoped under .lx-dg-page; reuses .lx-tl-* grid/tab/card system)
   ───────────────────────────────────────────────────────────── */

/* Intro gradient panel */
.lx-dg-intro-panel {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding: 48px 44px;
    background: linear-gradient(135deg, rgba(10, 14, 26, 0.05) 0%, rgba(212, 175, 55, 0.09) 100%);
    border: 1px solid rgba(212, 175, 55, 0.25);
    overflow: hidden;
}

.lx-dg-intro-panel::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--lx-bronze) 20%, var(--lx-gold) 50%, var(--lx-bronze) 80%, transparent);
}

.lx-dg-intro-panel::after {
    content: '';
    position: absolute;
    top: -60px;
    right: -60px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.16) 0%, transparent 70%);
    pointer-events: none;
}

.lx-dg-intro-panel .lx-tl-intro {
    position: relative;
    z-index: 1;
}

/* Narrower, centered grid — this page only has a handful of cards */
.lx-dg-page .lx-tl-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 420px));
    justify-content: center;
}

/* High-tech icon badge: radar-style dashed ring + glow */
.lx-dg-page .lx-tl-icon {
    position: relative;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0.05) 70%);
    box-shadow: 0 0 0 1px rgba(212, 175, 55, 0.3), 0 0 20px -4px rgba(212, 175, 55, 0.55);
}

.lx-dg-page .lx-tl-icon::after {
    content: '';
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 1px dashed rgba(212, 175, 55, 0.4);
    animation: lxDgRadarSpin 14s linear infinite;
}

.lx-dg-page .lx-tl-icon::before {
    content: '';
    position: absolute;
    inset: -12px;
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0.16);
}

@keyframes lxDgRadarSpin {
    to { transform: rotate(360deg); }
}

@media (max-width: 768px) {
    .lx-dg-intro-panel { padding: 32px 24px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-dg-page .lx-tl-icon::after { animation: none; }
}

/* ─────────────────────────────────────────────────────────────
   Xalqaro qo'shma loyihalar — international partners page
   (scoped under .lx-iq-page; reuses .lx-tl-* / .lx-dg-intro-panel)
   ───────────────────────────────────────────────────────────── */

/* Flags strip inside the intro panel */
.lx-iq-flags {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 28px;
    padding-top: 26px;
    border-top: 1px solid rgba(212, 175, 55, 0.22);
}

.lx-iq-flag-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 999px;
    transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease;
}

.lx-iq-flag-chip:hover {
    transform: translateY(-2px);
    border-color: var(--lx-bronze);
}

.lx-iq-flag-chip .lx-flag-icon svg {
    width: 26px;
    height: 18px;
}

/* SVG flag icon (base) */
.lx-flag-icon {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    line-height: 0;
}

.lx-flag-icon svg {
    display: block;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(10, 14, 26, 0.12);
}

/* Flag group inside a project's partner badge (may hold 1-2 flags) */
.lx-iq-flag-group {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    flex-shrink: 0;
}

/* Narrower, centered grid so a lone "completed" card doesn't stretch full width */
.lx-iq-page .lx-tl-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 420px));
    justify-content: center;
}

@media (max-width: 480px) {
    .lx-iq-flag-chip { padding: 8px 14px; }
    .lx-iq-flag-chip .lx-flag-icon svg { width: 22px; height: 15px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-iq-flag-chip { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   KrimAI chatbot widget
   ───────────────────────────────────────────────────────────── */

.lx-chat-fab {
    position: fixed;
    right: 36px;
    bottom: 110px;
    z-index: 1001;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: linear-gradient(140deg, var(--lx-navy) 0%, #131a2c 60%, #1a2238 100%);
    border: 1px solid rgba(212, 175, 55, 0.45);
    box-shadow: 0 14px 34px -12px rgba(10, 14, 26, 0.55), 0 0 0 1px rgba(212, 175, 55, 0.1);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
    animation: lxChatFabPulse 3.2s ease-in-out infinite;
}

.lx-chat-fab:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 20px 42px -14px rgba(10, 14, 26, 0.6), 0 0 0 1px rgba(212, 175, 55, 0.25);
}

@keyframes lxChatFabPulse {
    0%, 100% { box-shadow: 0 14px 34px -12px rgba(10, 14, 26, 0.55), 0 0 0 1px rgba(212, 175, 55, 0.1); }
    50% { box-shadow: 0 14px 34px -12px rgba(10, 14, 26, 0.55), 0 0 0 7px rgba(212, 175, 55, 0.08); }
}

.lx-chat-fab-icon,
.lx-chat-fab-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lx-chat-fab-icon {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
}
.lx-chat-fab-icon svg,
.lx-chat-fab-icon video { width: 100%; height: 100%; }
.lx-chat-fab-close { display: none; color: var(--lx-bronze-soft); }

.lx-chat.is-open .lx-chat-fab-icon { display: none; }
.lx-chat.is-open .lx-chat-fab-close { display: inline-flex; }
.lx-chat.is-open .lx-chat-fab { animation: none; }

.lx-chat-logo svg { display: block; }
.lx-chat-logo video {
    display: block;
    border-radius: 50%;
    object-fit: cover;
    pointer-events: none;
}

/* Panel */
.lx-chat-panel {
    position: fixed;
    right: 36px;
    bottom: 244px;
    z-index: 1002;
    width: 380px;
    max-width: calc(100vw - 48px);
    height: 560px;
    max-height: calc(100vh - 220px);
    background: #fff;
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 16px;
    box-shadow: 0 30px 70px -20px rgba(10, 14, 26, 0.4);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px) scale(0.97);
    transform-origin: bottom right;
    transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 0.35s;
}

.lx-chat.is-open .lx-chat-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 0s;
}

.lx-chat-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 16px 16px 18px;
    background: linear-gradient(135deg, var(--lx-navy) 0%, var(--lx-charcoal) 100%);
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, var(--lx-bronze), var(--lx-gold), var(--lx-bronze)) 1;
    flex-shrink: 0;
}

.lx-chat-header-logo {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
}

.lx-chat-header-logo svg,
.lx-chat-header-logo video { width: 100%; height: 100%; }

.lx-chat-header-title {
    flex: 1;
    color: var(--lx-cream);
    font-family: 'Inter', sans-serif;
    font-size: 14.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.lx-chat-close {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0.3);
    background: transparent;
    color: var(--lx-bronze-soft);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.3s ease, color 0.3s ease;
}

.lx-chat-close:hover {
    background: rgba(212, 175, 55, 0.15);
    color: var(--lx-gold-bright);
}

/* Messages */
.lx-chat-messages {
    flex: 1;
    overflow-y: auto;
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: var(--lx-cream);
}

.lx-chat-msg {
    display: flex;
}

.lx-chat-msg.is-user { justify-content: flex-end; }
.lx-chat-msg.is-bot { justify-content: flex-start; }

.lx-chat-bubble {
    max-width: 84%;
    padding: 10px 14px;
    border-radius: 14px;
    font-size: 14.5px;
    line-height: 1.55;
    word-wrap: break-word;
}

.lx-chat-msg.is-user .lx-chat-bubble {
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    color: var(--lx-navy);
    border-bottom-right-radius: 4px;
    font-weight: 500;
}

.lx-chat-msg.is-bot .lx-chat-bubble {
    background: #fff;
    color: var(--lx-text);
    border: 1px solid rgba(201, 169, 97, 0.22);
    border-bottom-left-radius: 4px;
}

.lx-chat-bubble strong { color: var(--lx-bronze-dark); }
.lx-chat-msg.is-user .lx-chat-bubble strong { color: var(--lx-navy); }

/* Typing indicator */
.lx-chat-typing {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px 10px;
    background: var(--lx-cream);
    flex-shrink: 0;
}

.lx-chat-typing-logo { width: 22px; height: 22px; }
.lx-chat-typing-logo svg,
.lx-chat-typing-logo video { width: 100%; height: 100%; }

.lx-chat-typing-dots {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 8px 12px;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.22);
    border-radius: 14px;
}

.lx-chat-typing-dots span {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--lx-bronze);
    animation: lxChatDot 1.1s ease-in-out infinite;
}

.lx-chat-typing-dots span:nth-child(2) { animation-delay: 0.15s; }
.lx-chat-typing-dots span:nth-child(3) { animation-delay: 0.3s; }

@keyframes lxChatDot {
    0%, 60%, 100% { opacity: 0.3; transform: translateY(0); }
    30% { opacity: 1; transform: translateY(-3px); }
}

/* Input row */
.lx-chat-input-row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid rgba(201, 169, 97, 0.25);
    background: #fff;
    flex-shrink: 0;
}

.lx-chat-input {
    flex: 1;
    min-width: 0;
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 999px;
    padding: 10px 16px;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    color: var(--lx-text);
    background: var(--lx-cream);
    outline: none;
    transition: border-color 0.3s ease;
}

.lx-chat-input:focus {
    border-color: var(--lx-bronze);
}

.lx-chat-send {
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: none;
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    color: var(--lx-navy);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.lx-chat-send:hover {
    transform: scale(1.08);
    box-shadow: 0 6px 16px -4px rgba(212, 175, 55, 0.6);
}

.lx-chat-disclaimer {
    margin: 0;
    padding: 8px 16px 12px;
    font-size: 10.5px;
    line-height: 1.5;
    color: var(--lx-text-soft);
    text-align: center;
    background: #fff;
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 480px) {
    .lx-chat-fab {
        right: 16px;
        bottom: 84px;
        width: 96px;
        height: 96px;
    }

    .lx-chat-panel {
        right: 0;
        bottom: 0;
        left: 0;
        top: 0;
        width: 100%;
        max-width: 100%;
        height: 100%;
        max-height: 100%;
        border-radius: 0;
        border: none;
    }
}

@media (max-width: 992px) {
    .lx-chat-fab { bottom: 96px; }
}

body.lx-chat-open {
    overflow: hidden;
}

@media (min-width: 481px) {
    body.lx-chat-open { overflow: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-chat-fab { animation: none; }
    .lx-chat-typing-dots span { animation: none; opacity: 0.7; }
}

/* ─────────────────────────────────────────────────────────────
   Institut tarixi — vertical timeline
   ───────────────────────────────────────────────────────────── */

.lx-timeline {
    position: relative;
    max-width: 880px;
    margin: 0 auto;
    padding: 40px 0;
}

.lx-timeline::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, transparent, var(--lx-bronze) 6%, var(--lx-gold) 50%, var(--lx-bronze) 94%, transparent);
    transform: translateX(-50%);
}

.lx-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 64px 1fr;
    column-gap: 28px;
    align-items: start;
    margin-bottom: 44px;
}

.lx-timeline-item:last-child {
    margin-bottom: 0;
}

.lx-timeline-dot {
    grid-column: 2;
    justify-self: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: radial-gradient(circle, #fff 0%, var(--lx-cream) 100%);
    border: 2px solid var(--lx-bronze);
    box-shadow: 0 0 0 6px var(--lx-cream), 0 10px 24px -8px rgba(10, 14, 26, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    line-height: 1;
    color: var(--lx-bronze-dark);
    z-index: 1;
}

.lx-timeline-card {
    grid-column: 1;
    justify-self: end;
    text-align: right;
    max-width: 100%;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.22);
    box-shadow: 0 14px 34px -18px rgba(10, 14, 26, 0.2);
    padding: 22px 26px;
    position: relative;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;
}

.lx-timeline-card:hover {
    transform: translateY(-4px);
    border-color: rgba(201, 169, 97, 0.5);
    box-shadow: 0 22px 44px -18px rgba(10, 14, 26, 0.3);
}

.lx-timeline-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--lx-bronze), transparent);
}

.lx-timeline-item:nth-child(even) .lx-timeline-card {
    grid-column: 3;
    justify-self: start;
    text-align: left;
}

.lx-timeline-period {
    display: inline-block;
    padding: 4px 12px;
    margin-bottom: 10px;
    background: rgba(201, 169, 97, 0.12);
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 999px;
    color: var(--lx-bronze-dark);
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.lx-timeline-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 23px;
    font-weight: 600;
    color: var(--lx-navy);
    line-height: 1.3;
    margin: 0 0 10px;
}

.lx-timeline-text {
    font-size: 14.5px;
    line-height: 1.7;
    color: var(--lx-text-soft);
    margin: 0;
}

/* ── Responsive: single left-aligned column ────────────── */
@media (max-width: 768px) {
    .lx-timeline { padding: 16px 0 16px 8px; }

    .lx-timeline::before {
        left: 27px;
        transform: none;
    }

    .lx-timeline-item {
        grid-template-columns: 56px 1fr;
        column-gap: 16px;
        margin-bottom: 30px;
    }

    .lx-timeline-dot {
        grid-column: 1;
        justify-self: start;
        width: 44px;
        height: 44px;
        font-size: 20.5px;
        box-shadow: 0 0 0 5px var(--lx-cream), 0 8px 18px -6px rgba(10, 14, 26, 0.28);
    }

    .lx-timeline-card,
    .lx-timeline-item:nth-child(even) .lx-timeline-card {
        grid-column: 2;
        justify-self: stretch;
        text-align: left;
        padding: 18px 18px 18px 20px;
    }

    .lx-timeline-title { font-size: 19.5px; }
    .lx-timeline-text { font-size: 14px; }
}

@media (max-width: 420px) {
    .lx-timeline-card,
    .lx-timeline-item:nth-child(even) .lx-timeline-card {
        padding: 16px 14px 16px 16px;
    }
    .lx-timeline-period { font-size: 10.5px; padding: 3px 10px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-timeline-card { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Institut haqida — disciplines grid / highlights / process flow
   ───────────────────────────────────────────────────────────── */

/* Blok 2: Fanlararo yondashuv — disciplines grid */
.lx-ab-disc-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.lx-ab-disc-card {
    text-align: center;
    padding: 28px 14px 24px;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.2);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;
}

.lx-ab-disc-card:hover {
    transform: translateY(-5px);
    border-color: rgba(201, 169, 97, 0.5);
    box-shadow: 0 20px 40px -20px rgba(10, 14, 26, 0.25);
}

.lx-ab-disc-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 14px;
    border-radius: 50%;
    background: rgba(201, 169, 97, 0.08);
    border: 1px solid rgba(201, 169, 97, 0.28);
    font-size: 26px;
    color: var(--lx-bronze-dark);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.4s ease;
}

.lx-ab-disc-card:hover .lx-ab-disc-icon {
    transform: scale(1.08) rotate(-4deg);
    background: rgba(201, 169, 97, 0.16);
}

.lx-ab-disc-label {
    display: block;
    font-size: 13.5px;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: var(--lx-navy);
}

/* Blok 3: Strategik savollar — quote-style highlight cards */
.lx-ab-highlights-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}

.lx-ab-highlight-card {
    position: relative;
    padding: 30px 30px 26px 34px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-left: 3px solid var(--lx-bronze);
    overflow: hidden;
}

.lx-ab-highlight-quote {
    position: absolute;
    top: -18px;
    right: 14px;
    font-family: 'Playfair Display', 'Cormorant Garamond', serif;
    font-size: 100.5px;
    line-height: 1;
    color: rgba(212, 175, 55, 0.14);
    pointer-events: none;
}

.lx-ab-highlight-icon {
    display: inline-flex;
    font-size: 24px;
    margin-bottom: 12px;
}

.lx-ab-highlight-text {
    position: relative;
    z-index: 1;
    margin: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 20.5px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--lx-cream);
}

/* Blok 4: Bizning yondashuvimiz — process flow */
.lx-ab-process {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 8px 4px;
}

.lx-ab-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 148px;
    padding: 22px 12px;
    text-align: center;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.22);
    position: relative;
}

.lx-ab-step-num {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    color: var(--lx-navy);
    font-size: 12px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lx-ab-step-icon {
    font-size: 30.5px;
    line-height: 1;
    margin-top: 6px;
}

.lx-ab-step-label {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--lx-navy);
}

.lx-ab-step-arrow {
    flex-shrink: 0;
    align-self: center;
    color: var(--lx-bronze);
    opacity: 0.8;
}

/* ── Institut rasmlari: avvalgi / hozirgi holat ──────────── */

.lx-ab-gallery-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.lx-ab-gallery-title {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-bronze-soft);
    margin: 0 0 20px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.25);
}

.lx-ab-slideshow {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border: 1px solid rgba(201, 169, 97, 0.2);
    background: var(--lx-charcoal);
}

.lx-ab-slide {
    position: absolute;
    inset: 0;
    display: block;
    opacity: 0;
    z-index: 1;
    transition: opacity 1s ease;
}

.lx-ab-slide.is-active {
    opacity: 1;
    z-index: 2;
}

.lx-ab-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(15%);
}

.lx-ab-slideshow:hover .lx-ab-slide.is-active img {
    filter: grayscale(0%);
}

.lx-ab-slideshow-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 14px;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.lx-ab-slideshow-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid var(--lx-bronze);
    background: rgba(10, 14, 26, 0.4);
    padding: 0;
    cursor: pointer;
    transition: all 0.35s ease;
}

.lx-ab-slideshow-dot:hover {
    background: rgba(201, 169, 97, 0.5);
}

.lx-ab-slideshow-dot.is-active {
    width: 20px;
    border-radius: 4px;
    background: var(--lx-bronze);
}

.lx-ab-gallery-placeholder {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    aspect-ratio: 16 / 8;
    border: 1px dashed rgba(201, 169, 97, 0.35);
    color: var(--lx-text-light);
    text-align: center;
    padding: 24px;
}

.lx-ab-gallery-placeholder svg {
    width: 40px;
    height: 40px;
    color: var(--lx-bronze);
    opacity: 0.7;
}

.lx-ab-gallery-placeholder span {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    opacity: 0.85;
}

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-ab-disc-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
    .lx-ab-disc-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .lx-ab-highlights-grid { grid-template-columns: 1fr; gap: 16px; }
    .lx-ab-highlight-text { font-size: 18.5px; }

    .lx-ab-process { flex-direction: column; align-items: center; gap: 0; }
    .lx-ab-step { width: 100%; max-width: 280px; }
    .lx-ab-step-arrow { transform: rotate(90deg); margin: 6px 0; }

    .lx-ab-gallery-row { grid-template-columns: 1fr; gap: 32px; }
}

@media (max-width: 420px) {
    .lx-ab-disc-card { padding: 22px 10px 18px; }
    .lx-ab-disc-icon { width: 44px; height: 44px; font-size: 22px; }
    .lx-ab-highlight-card { padding: 24px 20px 22px 24px; }
    .lx-ab-highlight-text { font-size: 17.5px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-ab-disc-card,
    .lx-ab-disc-icon { transition: none; }
    .lx-ab-slide { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Xalqaro hamkorlar / Memorandumlar — tabs switcher + card grids
   (reuses .lx-tl-tabs / .lx-tl-tab / .lx-tl-intro from the
   "Tashabbus asosidagi loyihalar" block above)
   ───────────────────────────────────────────────────────────── */

.lx-intl-tabs {
    margin: 34px auto 0;
}

.lx-tl-tab-icon {
    font-size: 14px;
    line-height: 1;
    opacity: 0.9;
}

.lx-tl-tab[href] { text-decoration: none; }

/* ── Highlight cards (MDH kengashi, BMT) ───────────────────── */
.lx-partner-highlights-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}

.lx-partner-highlight-card {
    position: relative;
    display: flex;
    gap: 18px;
    padding: 28px 26px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-left: 3px solid var(--lx-bronze);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease;
}

.lx-partner-highlight-card:hover {
    transform: translateY(-4px);
    border-color: rgba(212, 175, 55, 0.5);
    border-left-color: var(--lx-gold);
}

.lx-partner-highlight-flag {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
}

.lx-partner-highlight-body { flex: 1; min-width: 0; }

.lx-partner-highlight-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 18.5px;
    font-weight: 600;
    color: var(--lx-cream);
    margin: 0 0 8px;
    line-height: 1.35;
}

.lx-partner-highlight-text {
    font-size: 14.5px;
    line-height: 1.7;
    color: var(--lx-text-light);
    margin: 0 0 14px;
}

.lx-partner-highlight-badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 14px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.16);
    border: 1px solid rgba(212, 175, 55, 0.4);
    color: var(--lx-bronze-soft);
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* ── Country / agency cards (specialized + agencies) ───────── */
.lx-partner-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.lx-partner-card {
    text-align: center;
    padding: 32px 22px 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.015) 100%);
    border: 1px solid rgba(212, 175, 55, 0.16);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, background 0.4s ease;
}

.lx-partner-card:hover {
    transform: translateY(-5px);
    border-color: rgba(212, 175, 55, 0.5);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.02) 100%);
}

.lx-partner-card-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.28);
}

.lx-partner-card-name {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 17.5px;
    font-weight: 600;
    color: var(--lx-cream);
    margin: 0 0 8px;
}

.lx-partner-card-text {
    font-size: 13.5px;
    line-height: 1.65;
    color: var(--lx-text-light);
    margin: 0;
}

.lx-partner-card-badge {
    display: inline-flex;
    align-items: center;
    margin-top: 16px;
    padding: 5px 14px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.14);
    border: 1px solid rgba(212, 175, 55, 0.36);
    color: var(--lx-bronze-soft);
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

/* ── Memorandum document cards ─────────────────────────────── */
.lx-memo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.lx-memo-card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 24px 24px 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(212, 175, 55, 0.18);
    border-left: 2px solid rgba(212, 175, 55, 0.4);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, background 0.4s ease;
}

.lx-memo-card:hover {
    transform: translateY(-4px);
    border-color: rgba(212, 175, 55, 0.5);
    border-left-color: var(--lx-gold);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.03) 100%);
}

.lx-memo-card-head {
    display: flex;
    align-items: center;
    gap: 10px;
}

.lx-memo-card-flag {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
}

.lx-memo-card-country {
    flex: 1;
    font-size: 11.5px;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--lx-bronze-soft);
    font-weight: 700;
    line-height: 1.4;
}

.lx-memo-card-gallery-btn {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid rgba(212, 175, 55, 0.3);
    color: var(--lx-bronze-soft);
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.lx-memo-card-gallery-btn:hover {
    background: var(--lx-gold);
    border-color: var(--lx-gold);
    color: var(--lx-navy);
}

.lx-memo-card-org {
    flex: 1;
    font-size: 15.5px;
    line-height: 1.55;
    color: var(--lx-text-light);
    margin: 0;
}

a.lx-memo-card-org-link {
    text-decoration: none;
    display: block;
    transition: color 0.3s ease;
}

a.lx-memo-card-org-link:hover {
    color: var(--lx-gold);
    text-decoration: underline;
}

.lx-memo-card-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px dashed rgba(212, 175, 55, 0.2);
}

.lx-memo-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.lx-memo-badge-type.is-memorandum {
    background: rgba(212, 175, 55, 0.16);
    border: 1px solid rgba(212, 175, 55, 0.4);
    color: var(--lx-bronze-soft);
}

.lx-memo-badge-type.is-protocol,
.lx-memo-badge-type.is-protocol-program {
    background: rgba(91, 146, 229, 0.16);
    border: 1px solid rgba(91, 146, 229, 0.4);
    color: #9ec2f5;
}

.lx-memo-badge-date {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: var(--lx-text-light);
}

.lx-memo-badge-date svg { flex-shrink: 0; color: var(--lx-gold-bright); }

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 900px) {
    .lx-partner-highlights-grid { grid-template-columns: 1fr; }
    .lx-partner-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .lx-intl-tabs { margin-top: 26px; }
}

@media (max-width: 560px) {
    .lx-partner-grid { grid-template-columns: 1fr; }
    .lx-partner-highlight-card { flex-direction: column; }
    .lx-memo-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-partner-highlight-card,
    .lx-partner-card,
    .lx-memo-card { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Xalqaro tadbirlar — forums, foreign trips, project banner
   (grid/badges reuse .lx-memo-grid / .lx-memo-card / .lx-memo-badge)
   ───────────────────────────────────────────────────────────── */

/* ── Forums (Blok 1) ────────────────────────────────────────── */
.lx-forum-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 26px;
}

.lx-forum-card {
    position: relative;
    padding: 40px 34px 34px;
    background: linear-gradient(160deg, #fff 0%, var(--lx-paper) 100%);
    border: 1px solid rgba(201, 169, 97, 0.24);
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;
}

.lx-forum-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 26px 50px -22px rgba(10, 14, 26, 0.22);
}

.lx-forum-card-num {
    position: absolute;
    top: 16px;
    right: 26px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 83px;
    font-weight: 300;
    line-height: 1;
    color: rgba(212, 175, 55, 0.16);
    pointer-events: none;
}

.lx-forum-card-label {
    position: relative;
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    margin-bottom: 16px;
}

.lx-forum-card-dates {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: var(--lx-navy);
    margin-bottom: 18px;
}

.lx-forum-card-dates svg { color: var(--lx-bronze); flex-shrink: 0; }

.lx-forum-card-theme {
    position: relative;
    font-family: 'Cormorant Garamond', serif;
    font-size: 23px;
    font-weight: 600;
    color: var(--lx-navy);
    line-height: 1.4;
    margin: 0 0 14px;
}

.lx-forum-card-text {
    position: relative;
    font-size: 15.5px;
    line-height: 1.75;
    color: var(--lx-text-soft);
    margin: 0;
}

.lx-forum-card-stats {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid rgba(201, 169, 97, 0.2);
}

.lx-forum-stat-num {
    display: block;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 28.5px;
    font-weight: 600;
    color: var(--lx-bronze-dark);
    line-height: 1;
}

.lx-forum-stat-label {
    display: block;
    font-size: 11.5px;
    color: var(--lx-text-soft);
    letter-spacing: 0.03em;
    margin-top: 5px;
}

.lx-forum-card-theme-btn {
    display: block;
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    text-align: left;
    cursor: pointer;
    transition: color 0.3s ease;
}

.lx-forum-card-theme-btn:hover,
.lx-forum-card-theme-btn:focus-visible {
    color: var(--lx-bronze-dark);
    text-decoration: underline;
    text-decoration-color: rgba(201, 169, 97, 0.5);
    text-underline-offset: 5px;
}

.lx-forum-card-photos-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
    padding: 9px 18px;
    background: none;
    border: 1px solid rgba(201, 169, 97, 0.4);
    border-radius: 999px;
    color: var(--lx-bronze-dark);
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.lx-forum-card-photos-cta:hover {
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-forum-card-photos-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--lx-bronze);
    color: var(--lx-navy);
    font-size: 10.5px;
    font-weight: 700;
}

.lx-forum-card-photos-cta:hover .lx-forum-card-photos-count {
    background: var(--lx-navy);
    color: var(--lx-cream);
}

.lx-forum-photo-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.lx-forum-photo-grid a {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 8px;
    background: var(--lx-paper);
}

.lx-forum-photo-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.lx-forum-photo-grid a:hover img {
    transform: scale(1.06);
}

@media (max-width: 560px) {
    .lx-forum-photo-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
    .lx-forum-card-theme-btn,
    .lx-forum-card-photos-cta,
    .lx-forum-photo-grid img { transition: none; }
}

/* ── Project VIP banner (Blok 3) ────────────────────────────── */
.lx-project-banner {
    position: relative;
    max-width: 920px;
    margin: 0 auto;
    padding: 48px 52px 44px;
    text-align: center;
    background: linear-gradient(155deg, #fff 0%, var(--lx-paper) 55%, rgba(212, 175, 55, 0.1) 100%);
    border: 1.5px solid rgba(212, 175, 55, 0.45);
    box-shadow: 0 24px 60px -24px rgba(212, 175, 55, 0.4), var(--lx-shadow-card);
    overflow: hidden;
}

.lx-project-banner::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--lx-bronze), var(--lx-gold-bright), var(--lx-bronze));
}

.lx-project-banner::after {
    content: "";
    position: absolute;
    top: -35%;
    right: -8%;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, transparent 70%);
    pointer-events: none;
}

.lx-project-badge-vip {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 18px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--lx-bronze) 0%, var(--lx-gold) 100%);
    color: var(--lx-navy);
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    margin-bottom: 20px;
    box-shadow: 0 8px 20px -8px rgba(212, 175, 55, 0.6);
}

.lx-project-title {
    position: relative;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(23px, 2.8vw, 30.5px);
    font-weight: 600;
    color: var(--lx-navy);
    line-height: 1.4;
    margin: 0 0 18px;
}

.lx-project-text {
    position: relative;
    max-width: 720px;
    margin: 0 auto 28px;
    font-size: 16.5px;
    line-height: 1.8;
    color: var(--lx-text);
}

.lx-project-meta-row {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
}

.lx-project-period,
.lx-project-partner {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: var(--lx-navy);
}

.lx-project-period {
    background: rgba(10, 14, 26, 0.05);
    border: 1px solid rgba(10, 14, 26, 0.12);
}

.lx-project-period svg { color: var(--lx-bronze-dark); }

.lx-project-partner {
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.35);
}

.lx-project-status {
    position: relative;
    margin: 0;
    padding-top: 22px;
    border-top: 1px dashed rgba(201, 169, 97, 0.3);
    font-family: 'Cormorant Garamond', serif;
    font-size: 18.5px;
    font-weight: 600;
    color: var(--lx-bronze-dark);
}

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 860px) {
    .lx-forum-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .lx-forum-card { padding: 32px 24px 28px; }
    .lx-forum-card-num { font-size: 63px; }
    .lx-project-banner { padding: 34px 24px 30px; }
    .lx-project-title { font-size: 22px; }
    .lx-project-meta-row { flex-direction: column; align-items: stretch; }
    .lx-project-period,
    .lx-project-partner { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-forum-card { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Hamkorlik uchun murojaat — contact card page
   ───────────────────────────────────────────────────────────── */

.lx-contact-org {
    display: flex;
    align-items: center;
    gap: 18px;
    max-width: 680px;
    margin: 0 auto 48px;
    padding: 22px 28px;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.22);
    box-shadow: var(--lx-shadow-card);
}

.lx-contact-org-icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.28);
    color: var(--lx-bronze-dark);
}

.lx-contact-org-body { min-width: 0; }

.lx-contact-org-name {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 18.5px;
    font-weight: 600;
    color: var(--lx-navy);
    margin: 0 0 4px;
    line-height: 1.4;
}

.lx-contact-org-dept {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
}

/* ── Contact channel cards ──────────────────────────────────── */
.lx-contact-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 26px;
}

.lx-contact-card {
    position: relative;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, 0.2);
    box-shadow: var(--lx-shadow-card);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, box-shadow 0.4s ease;
}

.lx-contact-card:hover {
    transform: translateY(-5px);
    border-color: rgba(201, 169, 97, 0.5);
    box-shadow: 0 22px 44px -20px rgba(10, 14, 26, 0.18);
}

.lx-contact-card-link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 26px 22px 24px;
    text-decoration: none;
    color: inherit;
}

.lx-contact-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.28);
    color: var(--lx-bronze-dark);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.4s ease;
}

.lx-contact-card-icon svg { width: 19px; height: 19px; }

.lx-contact-card:hover .lx-contact-card-icon {
    transform: scale(1.08) rotate(-4deg);
    background: rgba(212, 175, 55, 0.18);
}

.lx-contact-card-label {
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
}

.lx-contact-card-value {
    font-family: 'Cormorant Garamond', serif;
    font-size: 18.5px;
    font-weight: 600;
    color: var(--lx-navy);
    line-height: 1.4;
    word-break: break-word;
}

/* ── Copy to clipboard button ───────────────────────────────── */
.lx-contact-copy-btn {
    position: absolute;
    top: 14px;
    right: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid rgba(201, 169, 97, 0.3);
    color: var(--lx-bronze);
    cursor: pointer;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.lx-contact-card:hover .lx-contact-copy-btn,
.lx-contact-copy-btn:focus-visible {
    opacity: 1;
    transform: translateY(0);
}

.lx-contact-copy-btn:hover {
    background: var(--lx-bronze);
    color: #fff;
    border-color: var(--lx-bronze);
}

.lx-copy-icon-done { display: none; }

.lx-contact-copy-btn.is-copied {
    opacity: 1;
    transform: translateY(0);
    background: #2f8f5b;
    border-color: #2f8f5b;
    color: #fff;
}

.lx-contact-copy-btn.is-copied .lx-copy-icon-default { display: none; }
.lx-contact-copy-btn.is-copied .lx-copy-icon-done { display: inline-flex; }

/* ── Address / map banner ───────────────────────────────────── */
.lx-contact-address {
    position: relative;
    display: flex;
    align-items: center;
    gap: 30px;
    max-width: 880px;
    margin: 0 auto;
    padding: 34px 38px;
    text-decoration: none;
    color: inherit;
    background:
        radial-gradient(circle, rgba(10, 14, 26, 0.06) 1px, transparent 1.4px) 0 0 / 20px 20px,
        linear-gradient(160deg, #fff 0%, var(--lx-paper) 100%);
    border: 1px solid rgba(201, 169, 97, 0.24);
    box-shadow: var(--lx-shadow-card);
    overflow: hidden;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;
}

.lx-contact-address:hover {
    transform: translateY(-4px);
    box-shadow: 0 26px 52px -22px rgba(10, 14, 26, 0.22);
}

.lx-contact-address-map {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.28);
}

.lx-contact-address-pin { color: var(--lx-bronze-dark); }

.lx-contact-address-body { flex: 1; min-width: 0; }

.lx-contact-address-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    margin-bottom: 10px;
}

.lx-contact-address-label svg { color: var(--lx-bronze); }

.lx-contact-address-text {
    font-family: 'Cormorant Garamond', serif;
    font-size: 20.5px;
    font-weight: 600;
    color: var(--lx-navy);
    line-height: 1.5;
    margin: 0 0 14px;
}

.lx-contact-address-cta {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lx-bronze-dark);
    transition: gap 0.3s ease;
}

.lx-contact-address:hover .lx-contact-address-cta { gap: 11px; }

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 992px) {
    .lx-contact-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
    .lx-contact-grid { grid-template-columns: 1fr; }
    .lx-contact-org { flex-direction: column; text-align: center; padding: 26px 22px; }
    .lx-contact-address { flex-direction: column; text-align: center; padding: 30px 26px; }
    .lx-contact-address-body { width: 100%; }
    .lx-contact-address-label { justify-content: center; }
    .lx-contact-address-cta { justify-content: center; }
    /* Sensorli ekranlarda hover bo'lmagani uchun nusxalash tugmasi doim ko'rinadi */
    .lx-contact-copy-btn { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-contact-card,
    .lx-contact-card-icon,
    .lx-contact-address,
    .lx-contact-copy-btn { transition: none; }
}

/* ─────── Biz haqimizda (hero ichida: logo + zinapoya statistika, shaffof) ─────── */

.lx-hero-about {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 48px;
    text-align: left;
}

.lx-hero-about-left {
    flex: 1 1 50%;
    max-width: 520px;
    display: flex;
    flex-direction: column;
    text-align: left;
}

@media (max-width: 992px) {
    .lx-hero-about {
        flex-direction: column;
        gap: 44px;
        text-align: center;
    }
    .lx-hero-about-left {
        align-items: center;
        text-align: center;
        max-width: 100%;
    }
    .lx-hero-cards {
        margin-left: auto;
        margin-right: auto;
    }
}

/* Logo markazda, 4 ta statistik karta burchaklarda — avloniy.uz namunasi asosida */

.lx-hero-cards {
    position: relative;
    flex: 0 0 auto;
    width: 400px;
    max-width: 100%;
    aspect-ratio: 1 / 1;
    margin-left: auto;
}

/* Chizilib chiquvchi ramka (rounded square + krest) */
.lx-hero-cards-lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: visible;
}

.lx-hero-cards-lines .lx-frame-rect,
.lx-hero-cards-lines .lx-frame-h,
.lx-hero-cards-lines .lx-frame-v {
    fill: none;
    stroke: rgba(201, 169, 97, 0.4);
    stroke-width: 1.3;
}

.lx-hero-cards-lines .lx-frame-rect {
    stroke-dasharray: 1604;
    stroke-dashoffset: 1604;
    animation: lxDraw 1.3s cubic-bezier(0.3, 0.7, 0.2, 1) 0.05s forwards,
               lxLineGlow 3.6s ease-in-out 1.4s infinite;
}

.lx-hero-cards-lines .lx-frame-h {
    stroke-dasharray: 402;
    stroke-dashoffset: 402;
    animation: lxDraw 0.6s cubic-bezier(0.3, 0.7, 0.2, 1) 0.3s forwards,
               lxLineGlow 3.6s ease-in-out 0.9s infinite;
}

.lx-hero-cards-lines .lx-frame-v {
    stroke-dasharray: 401;
    stroke-dashoffset: 401;
    animation: lxDraw 0.6s cubic-bezier(0.3, 0.7, 0.2, 1) 0.42s forwards,
               lxLineGlow 3.6s ease-in-out 1.1s infinite;
}

@keyframes lxDraw {
    to { stroke-dashoffset: 0; }
}

@keyframes lxLineGlow {
    0%, 100% { stroke: rgba(201, 169, 97, 0.35); }
    50%      { stroke: rgba(231, 196, 85, 0.7); }
}

/* Logo orqasidagi yumshoq porlash */
.lx-hero-cards-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 62%;
    aspect-ratio: 1 / 1;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(231, 196, 85, 0.28) 0%, rgba(201, 169, 97, 0.08) 45%, transparent 72%);
    z-index: 1;
    opacity: 0;
    animation: lxGlowIn 1.2s ease-out 0.2s forwards, lxGlowPulse 4.5s ease-in-out 1.4s infinite;
    pointer-events: none;
}

@keyframes lxGlowIn { to { opacity: 1; } }
@keyframes lxGlowPulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.75; }
    50%      { transform: translate(-50%, -50%) scale(1.12); opacity: 1; }
}

.lx-hero-cards-center {
    width: 46%;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 22px;
    border: 1px solid rgba(201, 169, 97, 0.45);
    background: linear-gradient(155deg, rgba(26, 31, 46, 0.75) 0%, rgba(10, 14, 26, 0.6) 100%);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 22px 54px -18px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(201, 169, 97, 0.08) inset;
    z-index: 3;
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.55) rotate(-10deg);
    animation: lxCenterPop 0.85s cubic-bezier(0.22, 1, 0.36, 1) 0.55s forwards,
               lxCenterBreathe 5s ease-in-out 1.45s infinite;
}

@keyframes lxCenterPop {
    0%   { transform: translate(-50%, -50%) scale(0.55) rotate(-10deg); opacity: 0; }
    65%  { transform: translate(-50%, -50%) scale(1.07) rotate(2deg);   opacity: 1; }
    100% { transform: translate(-50%, -50%) scale(1) rotate(0deg);      opacity: 1; }
}

@keyframes lxCenterBreathe {
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
    50%      { transform: translate(-50%, -50%) scale(1.04); }
}

.lx-hero-cards-ring {
    position: absolute;
    inset: -7px;
    border-radius: 26px;
    background: conic-gradient(from 0deg, transparent 0%, rgba(231, 196, 85, 0.55) 12%, transparent 26%, transparent 100%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1.5px;
    animation: lxRingSpin 7s linear infinite;
    pointer-events: none;
}

@keyframes lxRingSpin { to { transform: rotate(360deg); } }

.lx-hero-cards-center img {
    position: relative;
    width: 62%;
    height: 62%;
    object-fit: contain;
    z-index: 1;
    filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.4));
}

.lx-hero-cards-item {
    width: 35%;
    aspect-ratio: 1 / 1;
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px;
    text-align: center;
    border-radius: 16px;
    border: 1px solid rgba(201, 169, 97, 0.3);
    background: linear-gradient(160deg, rgba(35, 42, 61, 0.5) 0%, rgba(10, 14, 26, 0.38) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 10px 26px -14px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(201, 169, 97, 0.05) inset;
    transition: border-color 0.4s ease, background 0.4s ease, box-shadow 0.4s ease;
    z-index: 4;
    opacity: 0;
}

.lx-hero-cards-item::after {
    content: "";
    position: absolute;
    top: 1px;
    left: 14%;
    right: 14%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(231, 196, 85, 0.5), transparent);
    border-radius: 999px;
}

.lx-hero-cards-item:hover {
    border-color: var(--lx-bronze);
    background: linear-gradient(160deg, rgba(201, 169, 97, 0.16) 0%, rgba(201, 169, 97, 0.06) 100%);
    box-shadow: 0 16px 34px -16px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(201, 169, 97, 0.15) inset;
}

.lx-hero-cards-item-1 { top: 0; left: 0;  animation: lxCorner1 0.75s cubic-bezier(0.22, 1, 0.36, 1) 0.75s forwards, lxFloat1 3.8s ease-in-out 1.6s infinite; }
.lx-hero-cards-item-2 { top: 0; right: 0; animation: lxCorner2 0.75s cubic-bezier(0.22, 1, 0.36, 1) 0.95s forwards, lxFloat2 4.2s ease-in-out 1.8s infinite; }
.lx-hero-cards-item-3 { bottom: 0; left: 0;  animation: lxCorner3 0.75s cubic-bezier(0.22, 1, 0.36, 1) 1.15s forwards, lxFloat3 4.0s ease-in-out 2.0s infinite; }
.lx-hero-cards-item-4 { bottom: 0; right: 0; animation: lxCorner4 0.75s cubic-bezier(0.22, 1, 0.36, 1) 1.35s forwards, lxFloat4 4.4s ease-in-out 2.2s infinite; }

.lx-hero-cards-item:hover { animation-play-state: paused; transform: translateY(-4px) !important; }

@keyframes lxCorner1 {
    0%   { top: 50%; left: 50%;  transform: translate(-50%, -50%) scale(0.25) rotate(-16deg); opacity: 0; }
    68%  { transform: translate(0, 0) scale(1.08) rotate(3deg); opacity: 1; }
    100% { top: 0;   left: 0;    transform: translate(0, 0) scale(1) rotate(0deg); opacity: 1; }
}
@keyframes lxCorner2 {
    0%   { top: 50%; right: 50%; transform: translate(50%, -50%) scale(0.25) rotate(16deg); opacity: 0; }
    68%  { transform: translate(0, 0) scale(1.08) rotate(-3deg); opacity: 1; }
    100% { top: 0;   right: 0;   transform: translate(0, 0) scale(1) rotate(0deg); opacity: 1; }
}
@keyframes lxCorner3 {
    0%   { bottom: 50%; left: 50%;  transform: translate(-50%, 50%) scale(0.25) rotate(16deg); opacity: 0; }
    68%  { transform: translate(0, 0) scale(1.08) rotate(-3deg); opacity: 1; }
    100% { bottom: 0;   left: 0;    transform: translate(0, 0) scale(1) rotate(0deg); opacity: 1; }
}
@keyframes lxCorner4 {
    0%   { bottom: 50%; right: 50%; transform: translate(50%, 50%) scale(0.25) rotate(-16deg); opacity: 0; }
    68%  { transform: translate(0, 0) scale(1.08) rotate(3deg); opacity: 1; }
    100% { bottom: 0;   right: 0;   transform: translate(0, 0) scale(1) rotate(0deg); opacity: 1; }
}

@keyframes lxFloat1 { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(0, -6px); } }
@keyframes lxFloat2 { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(0, -5px); } }
@keyframes lxFloat3 { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(0, -5px); } }
@keyframes lxFloat4 { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(0, -6px); } }

.lx-hero-card-icon {
    position: relative;
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1px solid var(--lx-bronze);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze);
    transition: all 0.4s ease;
}

.lx-hero-card-icon svg { width: 13px; height: 13px; }

.lx-hero-cards-item:hover .lx-hero-card-icon {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    box-shadow: 0 0 0 5px rgba(201, 169, 97, 0.14);
}

.lx-hero-card-value {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(19.5px, 2.6vw, 28.5px);
    color: var(--lx-bronze-soft);
    line-height: 1;
    font-weight: 500;
    font-variant-numeric: lining-nums tabular-nums;
    font-feature-settings: "lnum" 1, "onum" 0, "liga" 0, "dlig" 0;
    letter-spacing: 0.01em;
}

.lx-hero-card-label {
    color: var(--lx-text-light);
    font-size: 9.5px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    line-height: 1.3;
}

@media (max-width: 1200px) {
    .lx-hero-cards { width: 340px; }
}

@media (max-width: 992px) {
    .lx-hero-cards { width: 340px; }
}

@media (max-width: 640px) {
    .lx-hero-cards { width: 260px; }
    .lx-hero-card-value { font-size: 16.5px; }
    .lx-hero-card-label { font-size: 8px; }
    .lx-hero-cards-item { padding: 6px; gap: 2px; border-radius: 12px; }
    .lx-hero-cards-center { border-radius: 14px; }
}

@media (max-width: 420px) {
    .lx-hero-cards { width: 220px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-hero-cards-item,
    .lx-hero-cards-center,
    .lx-hero-cards-ring,
    .lx-hero-cards-glow,
    .lx-hero-cards-lines .lx-frame-rect,
    .lx-hero-cards-lines .lx-frame-h,
    .lx-hero-cards-lines .lx-frame-v {
        animation: none;
        opacity: 1;
        stroke-dashoffset: 0;
        transition: none;
    }
    .lx-hero-cards-center { transform: translate(-50%, -50%); }
}

/* ─────────────────────────────────────────────────────────────
   Shrift o'lchamini boshqarish (font-size control)
   ───────────────────────────────────────────────────────────── */

.lx-fontctl {
    position: fixed;
    left: 36px;
    bottom: 36px;
    z-index: 999;
}

.lx-fontctl-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(140deg, var(--lx-navy) 0%, #131a2c 60%, #1a2238 100%);
    border: 1px solid rgba(212, 175, 55, 0.4);
    color: var(--lx-bronze-soft);
    box-shadow: 0 14px 34px -12px rgba(10, 14, 26, 0.55), 0 0 0 1px rgba(212, 175, 55, 0.1);
    cursor: pointer;
    padding: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 0.01em;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}

.lx-fontctl-toggle:hover,
.lx-fontctl.is-open .lx-fontctl-toggle {
    transform: translateY(-3px);
    box-shadow: 0 20px 42px -14px rgba(10, 14, 26, 0.6), 0 0 0 1px rgba(212, 175, 55, 0.25);
}

.lx-fontctl-panel {
    position: absolute;
    left: 0;
    bottom: 68px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    background: linear-gradient(160deg, var(--lx-navy) 0%, var(--lx-charcoal) 100%);
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 14px;
    box-shadow: var(--lx-shadow-luxury);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px) scale(0.96);
    transform-origin: bottom left;
    transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.3s;
}

.lx-fontctl.is-open .lx-fontctl-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.lx-fontctl-opt {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 10px;
    border: 1px solid rgba(201, 169, 97, 0.25);
    background: rgba(245, 243, 240, 0.03);
    color: var(--lx-bronze-soft);
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    transition: all 0.3s ease;
}

.lx-fontctl-opt-sm { font-size: 14px; }
.lx-fontctl-opt-md { font-size: 19px; }
.lx-fontctl-opt-lg { font-size: 24px; }

.lx-fontctl-opt:hover,
.lx-fontctl-opt.is-active {
    background: var(--lx-bronze);
    color: var(--lx-navy);
    border-color: var(--lx-bronze);
}

@media (max-width: 767px) {
    .lx-fontctl { left: 16px; bottom: 16px; }
    .lx-fontctl-toggle { width: 48px; height: 48px; font-size: 16px; }
    .lx-fontctl-panel { bottom: 58px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-fontctl-toggle,
    .lx-fontctl-panel,
    .lx-fontctl-opt { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Institut tuzilmasi — organizational chart
   ───────────────────────────────────────────────────────────── */

.lx-org-chart { position: relative; }

.lx-org-top {
    display: flex;
    justify-content: center;
    position: relative;
    padding-bottom: 40px;
}

.lx-org-top::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 40px;
    background: linear-gradient(180deg, var(--lx-bronze), rgba(201, 169, 97, 0.16));
}

.lx-org-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(201, 169, 97, 0.16);
    border-radius: 14px;
    padding: 18px 22px;
    text-align: center;
}

.lx-org-card-top {
    border-color: var(--lx-bronze);
    background: rgba(212, 175, 55, 0.08);
    box-shadow: var(--lx-shadow-gold);
    min-width: 260px;
    padding: 22px 30px;
}

.lx-org-card-top h3 {
    margin: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: var(--lx-cream);
}

.lx-org-branches {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
    padding-top: 40px;
}

.lx-org-branches::before {
    content: "";
    position: absolute;
    top: 0;
    left: 10%;
    right: 10%;
    height: 1px;
    background: rgba(201, 169, 97, 0.35);
}

.lx-org-branch {
    position: relative;
    display: flex;
    flex-direction: column;
}

.lx-org-branch::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    width: 1px;
    height: 40px;
    background: rgba(201, 169, 97, 0.35);
}

.lx-org-card-head {
    border-color: rgba(201, 169, 97, 0.32);
    background: rgba(212, 175, 55, 0.05);
    margin-bottom: 14px;
    transition: border-color 0.4s ease, background 0.4s ease;
}

.lx-org-branch:hover .lx-org-card-head {
    border-color: var(--lx-bronze);
    background: rgba(212, 175, 55, 0.09);
}

.lx-org-card-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--lx-bronze-soft);
    background: rgba(212, 175, 55, 0.1);
    margin-bottom: 12px;
}

.lx-org-card-icon svg { width: 22px; height: 22px; }

.lx-org-card-name {
    margin: 0 0 6px;
    font-size: 15.5px;
    font-weight: 600;
    line-height: 1.35;
    color: var(--lx-cream);
}

.lx-org-card-role {
    display: block;
    font-size: 11.5px;
    letter-spacing: 0.02em;
    color: var(--lx-bronze-soft);
}

.lx-org-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lx-org-item {
    position: relative;
    padding: 10px 12px 10px 26px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    font-size: 12.5px;
    line-height: 1.55;
    color: var(--lx-text-light);
    transition: border-color 0.3s ease, background 0.3s ease;
}

.lx-org-item:hover {
    border-color: rgba(201, 169, 97, 0.4);
    background: rgba(212, 175, 55, 0.04);
}

.lx-org-item::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 16px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--lx-bronze);
}

@media (max-width: 1400px) {
    .lx-org-branches { grid-template-columns: repeat(3, 1fr); row-gap: 40px; }
    .lx-org-branches::before,
    .lx-org-branch::before { display: none; }
    .lx-org-branch { padding-top: 20px; border-top: 1px solid rgba(201, 169, 97, 0.2); }
}

@media (max-width: 1100px) {
    .lx-org-branches { grid-template-columns: repeat(2, 1fr); row-gap: 40px; }
    .lx-org-branches::before,
    .lx-org-branch::before { display: none; }
    .lx-org-branch { padding-top: 20px; border-top: 1px solid rgba(201, 169, 97, 0.2); }
}

@media (max-width: 640px) {
    .lx-org-branches { grid-template-columns: 1fr; }
    .lx-org-top::after { height: 24px; }
    .lx-org-top { padding-bottom: 24px; }
    .lx-org-branches { padding-top: 24px; }
    .lx-org-branch { padding-top: 16px; }
    .lx-org-card-top { min-width: 0; width: 100%; padding: 18px 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-org-card-head,
    .lx-org-item { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Hamkorlarimiz — local partners registry table
   ───────────────────────────────────────────────────────────── */

.lx-partner-table-head {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 20px;
}

.lx-partner-table-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 18px;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--lx-navy);
}

.lx-partner-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(201, 169, 97, 0.25);
    box-shadow: var(--lx-shadow-card);
    background: #fff;
    -webkit-overflow-scrolling: touch;
}

.lx-partner-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 820px;
}

.lx-partner-table thead th {
    background: linear-gradient(160deg, var(--lx-navy) 0%, var(--lx-charcoal) 100%);
    color: var(--lx-cream);
    text-align: left;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 16px 18px;
    white-space: nowrap;
}

.lx-partner-table thead th.lx-partner-table-num {
    text-align: center;
    width: 50px;
}

.lx-partner-table tbody td {
    padding: 16px 18px;
    font-size: 14px;
    line-height: 1.55;
    color: var(--lx-text-soft);
    border-bottom: 1px solid rgba(201, 169, 97, 0.16);
    vertical-align: top;
    transition: background 0.25s ease;
}

.lx-partner-table tbody tr:last-child td {
    border-bottom: none;
}

.lx-partner-table tbody tr:nth-child(even) td {
    background: rgba(212, 175, 55, 0.035);
}

.lx-partner-table tbody tr:hover td {
    background: rgba(212, 175, 55, 0.09);
}

.lx-partner-table-num {
    text-align: center;
    font-family: 'Playfair Display', Georgia, serif;
    color: var(--lx-bronze-dark);
    font-weight: 600;
}

.lx-partner-table-name {
    color: var(--lx-navy);
    font-weight: 600;
    min-width: 280px;
}

@media (max-width: 640px) {
    .lx-partner-table-head { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
    .lx-partner-table tbody td { transition: none; }
}

/* ─────────────────────────────────────────────────────────────
   Ilmiy kengashlar — councils under the institute
   ───────────────────────────────────────────────────────────── */

.lx-ab-disc-card {
    text-decoration: none;
    color: inherit;
    display: block;
}

.lx-partner-table-role {
    display: block;
    font-size: 12px;
    font-style: italic;
    color: var(--lx-bronze-dark);
    margin-top: 2px;
}

.lx-badge-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 18px 0;
}

.lx-hub-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 12px;
}

.lx-hub-grid .lx-mission-card-title { padding-right: 0; }

.lx-hub-grid .lx-btn {
    margin-top: 18px;
}

.lx-topics-grid {
    column-count: 2;
    column-gap: 48px;
}

.lx-topics-item {
    display: flex;
    gap: 10px;
    break-inside: avoid;
    padding: 11px 0;
    border-bottom: 1px solid rgba(201, 169, 97, 0.16);
    font-size: 14px;
    line-height: 1.55;
    color: var(--lx-text-soft);
}

.lx-topics-num {
    flex-shrink: 0;
    font-family: 'Playfair Display', Georgia, serif;
    color: var(--lx-bronze-dark);
    font-weight: 600;
    min-width: 26px;
}

.lx-section.charcoal .lx-topics-item {
    color: var(--lx-text-light);
    border-bottom-color: rgba(201, 169, 97, 0.22);
}

.lx-legal-note {
    font-size: 12.5px;
    color: var(--lx-text-soft);
    font-style: italic;
    margin: 18px 0 0;
}

.lx-section.charcoal .lx-legal-note {
    color: var(--lx-text-light);
}

@media (max-width: 1100px) {
    .lx-hub-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
    .lx-hub-grid { grid-template-columns: 1fr; }
    .lx-topics-grid { column-count: 1; }
}

/* ─────────────────────────────────────────────────────────────
   Videotasvirlar — YouTube video listing & player
   ───────────────────────────────────────────────────────────── */

.lx-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 14, 26, 0.55);
    border: 1.5px solid rgba(245, 243, 240, 0.7);
    color: var(--lx-cream);
    backdrop-filter: blur(2px);
    z-index: 2;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.3s ease, border-color 0.3s ease;
}

.lx-video-play svg { margin-left: 3px; }

.lx-news-card:hover .lx-video-play {
    transform: translate(-50%, -50%) scale(1.1);
    background: var(--lx-bronze);
    border-color: var(--lx-bronze);
    color: var(--lx-navy);
}

.lx-video-player {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    background: var(--lx-navy);
    box-shadow: var(--lx-shadow-luxury);
    overflow: hidden;
}

.lx-video-player iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 640px) {
    .lx-video-play { width: 48px; height: 48px; }
    .lx-video-play svg { width: 18px; height: 18px; }
}
