/* =============================================
   THEME: Sotheby's (Light Only)
   Чёрно-белая строгость + синий hover
   Золото — только подчёркивание заголовков
   ============================================= */

.theme-sothebys {
    /* --- Основные токены (HSL) --- */
    --background: 0 0% 100%;           /* #FFFFFF */
    --foreground: 0 0% 10%;            /* #1A1A1A */

    --card: 0 0% 100%;
    --card-foreground: 0 0% 10%;

    --popover: 0 0% 100%;
    --popover-foreground: 0 0% 10%;

    /* Синий для hover/акцентов: #23448D → HSL 222 60% 35% */
    --primary: 222 60% 35%;            /* Sotheby's Blue */
    --primary-foreground: 0 0% 100%;

    --secondary: 0 0% 96%;             /* #F5F5F5 */
    --secondary-foreground: 0 0% 10%;

    --muted: 0 0% 93%;                 /* #EDEDED */
    --muted-foreground: 0 0% 45%;      /* #737373 */

    /* Акцент = синий (не золотой) */
    --accent: 222 60% 35%;
    --accent-foreground: 0 0% 100%;

    --destructive: 0 72% 51%;
    --destructive-foreground: 0 0% 100%;

    --border: 0 0% 88%;                /* #E0E0E0 */
    --input: 0 0% 88%;
    --ring: 222 60% 35%;

    --radius: 0px;

    /* --- Поверхность --- */
    --color-surface: #ffffffcc;
    --color-panel-solid: #ffffff;
    --color-panel-translucent: #ffffffb3;
    --color-background: #FFFFFF;

    /* --- Синяя палитра (1–12 градации) --- */
    --sothebys-1: #f8f9fd;
    --sothebys-2: #f0f3fa;
    --sothebys-3: #e2e7f5;
    --sothebys-4: #cdd4ed;
    --sothebys-5: #b3bde2;
    --sothebys-6: #94a1d4;
    --sothebys-7: #7182c3;
    --sothebys-8: #4c60b0;
    --sothebys-9: #23448d;             /* основной синий */
    --sothebys-10: #1d3875;
    --sothebys-11: #172c5c;
    --sothebys-12: #0e1a3a;

    --accent-1: var(--sothebys-1);
    --accent-2: var(--sothebys-2);
    --accent-3: var(--sothebys-3);
    --accent-4: var(--sothebys-4);
    --accent-5: var(--sothebys-5);
    --accent-6: var(--sothebys-6);
    --accent-7: var(--sothebys-7);
    --accent-8: var(--sothebys-8);
    --accent-9: var(--sothebys-9);
    --accent-10: var(--sothebys-10);
    --accent-11: var(--sothebys-11);
    --accent-12: var(--sothebys-12);

    /* Золото — отдельно, только для декора */
    --gold: 43 51% 48%;
    --font-display: 'Cormorant Garamond';
    --font-body: 'Inter';

    /* Размеры заголовков */
    --text-h1: clamp(2.5rem, 5vw, 4.5rem);     /* 40px → 72px */
    --text-h2: clamp(1.75rem, 3.5vw, 2.5rem);   /* 28px → 40px */
    --text-h3: clamp(1.25rem, 2.5vw, 1.75rem);   /* 20px → 28px */
    --text-h4: clamp(1rem, 2vw, 1.25rem);        /* 16px → 20px */
    --text-h5: 1rem;                             /* 16px */
    --text-h6: 0.875rem;                         /* 14px */

    /* Размеры тела */
    --text-body: 1rem;                           /* 16px */
    --text-body-sm: 0.875rem;                    /* 14px */
    --text-meta: 0.75rem;                        /* 12px */
    --text-caption: 0.6875rem;                   /* 11px */

    /* Тёмно-синий для кнопок: #00253E → HSL 209 100% 12% */
    --btn: 209 100% 12%;               /* #00253E */
    --btn-foreground: 0 0% 100%;
    --btn-hover: 222 60% 35%;          /* #23448D */
}

@layer base {
    body {
        font-family: var(--font-body), 'Times New Roman', serif;
    }

    h1, h2, h3, h4, .font-display, .heading-underline {
        font-family: var(--font-display), 'Helvetica Neue', 'Arial', sans-serif;
    }

    .theme-sothebys {
        h1, .h1 {
            font-size: var(--text-h1);
            font-weight: 700;
            line-height: 1.1;
            letter-spacing: -0.01em;
            color: hsl(var(--foreground));
        }

        h2, .h2 {
            font-size: var(--text-h2);
            font-weight: 600;
            line-height: 1.2;
            letter-spacing: -0.005em;
            color: hsl(var(--foreground));
        }

        h3, .h3 {
            font-size: var(--text-h3);
            font-weight: 500;
            line-height: 1.3;
            color: hsl(var(--foreground));
        }

        h4, .h4 {
            font-family: var(--font-body);
            font-size: var(--text-h4);
            font-weight: 500;
            line-height: 1.4;
            letter-spacing: 0.02em;
            text-transform: uppercase;
            color: hsl(var(--foreground));
        }

        h5, .h5 {
            font-family: var(--font-body);
            font-size: var(--text-h5);
            font-weight: 500;
            line-height: 1.4;
            letter-spacing: 0.03em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        h6, .h6 {
            font-family: var(--font-body);
            font-size: var(--text-h6);
            font-weight: 600;
            line-height: 1.4;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        p, .body {
            font-family: var(--font-body);
            font-size: var(--text-body);
            font-weight: 400;
            line-height: 1.6;
            color: hsl(var(--foreground));
        }

        .body-sm {
            font-size: var(--text-body-sm);
            line-height: 1.5;
        }

        .meta {
            font-family: var(--font-body);
            font-size: var(--text-meta);
            font-weight: 500;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        .caption {
            font-family: var(--font-body);
            font-size: var(--text-caption);
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }
    }
}


/* =============================================
   НАВИГАЦИЯ: hover → синий #23448D
   ============================================= */
.theme-sothebys .nav-link {
    text-decoration: none;
    color: hsl(var(--foreground));
    padding-bottom: 2px;
    transition: color 0.2s ease;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.8rem;
}

.theme-sothebys .nav-link:hover,
.theme-sothebys .nav-link.active {
    color: hsl(var(--primary));        /* #23448D */
}

/* =============================================
   ЗОЛОТОЕ ПОДЧЁРКИВАНИЕ ЗАГОЛОВКОВ
   ============================================= */
.theme-sothebys .heading-underline {
    position: relative;
    display: inline-block;
    padding-bottom: 0.75rem;
}

.theme-sothebys .heading-underline::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background-color: hsl(var(--gold)); /* золотой #B8973E */
}

/* Выравнивание по левому краю (для секций) */
.theme-sothebys .heading-underline-left::after {
    left: 0;
    transform: none;
}

/* =============================================
   КНОПКИ: Чёрные, строгие
   ============================================= */
/* Основная кнопка */
.theme-sothebys .btn-primary,
.theme-sothebys a[role="button"].btn-primary {
    background-color: hsl(var(--btn));            /* #00253E */
    color: hsl(var(--btn-foreground));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--btn));
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-primary:hover {
    background-color: hsl(var(--btn-hover));      /* #23448D */
    border-color: hsl(var(--btn-hover));
}

/* Вторичная кнопка (обводка) */
.theme-sothebys .btn-outline,
.theme-sothebys a[role="button"].btn-outline {
    background-color: transparent;
    color: hsl(var(--btn));
    border: 1px solid hsl(var(--btn));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-outline:hover {
    background-color: hsl(var(--btn));
    color: hsl(var(--btn-foreground));
}

/* Акцентная кнопка (редко) */
.theme-sothebys .btn-accent,
.theme-sothebys a[role="button"].btn-accent {
    background-color: hsl(var(--primary));         /* #23448D */
    color: hsl(var(--primary-foreground));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--primary));
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-accent:hover {
    background-color: transparent;
    color: hsl(var(--primary));
}

/* =============================================
   КОМПОНЕНТЫ
   ============================================= */

/* Хлебные крошки */
.theme-sothebys .breadcrumbs .home-crumb .icon-\[famicons--home-outline\] {
    color: hsl(var(--foreground));
}

.theme-sothebys .breadcrumbs .breadcrumb-link:hover {
    color: hsl(var(--primary));
}

/* Карточки */
.theme-sothebys .card {
    border-radius: var(--radius);
    border-color: hsl(var(--border));
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}
.theme-sothebys .card:hover {
    border-color: hsl(var(--border));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}

/* Бейдж */
.theme-sothebys .badge {
    background-color: hsl(var(--foreground));
    color: hsl(var(--card));
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.25rem 0.75rem;
    border-radius: var(--radius);
}

/* Разделительная линия */
.theme-sothebys .divider {
    border-color: hsl(var(--border));
}

/* Текст-мета */
.theme-sothebys .text-meta {
    color: hsl(var(--muted-foreground));
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Ссылки в контенте */
.theme-sothebys .content-link {
    color: hsl(var(--foreground));
    text-decoration: none;
    transition: color 0.2s ease;
}

.theme-sothebys .content-link:hover {
    color: hsl(var(--primary));        /* #23448D */
}

/* Алерты */
.theme-sothebys .alert-success {
    background-color: hsl(150 30% 96%);
    border-color: hsl(150 20% 82%);
    color: hsl(150 40% 25%);
}
.theme-sothebys .alert-danger,
.theme-sothebys .alert-error {
    background-color: hsl(0 30% 97%);
    border-color: hsl(0 20% 85%);
    color: hsl(0 60% 35%);
}
.theme-sothebys .alert-warning {
    background-color: hsl(40 40% 96%);
    border-color: hsl(40 30% 82%);
    color: hsl(40 50% 25%);
}

/* Пагинация */
.theme-sothebys .paginator a:hover {
    border-color: hsl(var(--primary));
    color: hsl(var(--primary));
}
.theme-sothebys .paginator span.active {
    background-color: hsl(var(--foreground));
    border-color: hsl(var(--foreground));
    color: hsl(var(--card));
}

/* Выделение текста */
.theme-sothebys ::selection {
    background-color: hsl(var(--primary) / 0.15);
    color: hsl(var(--foreground));
}
.page-gallery{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    width: 100%;
    flex-wrap: wrap;
    padding: 10px;
    gap: 1.2rem;
}

/* =============================================
   СПИСКИ В ТЕКСТЕ (ol, ul) — с переопределением
   ============================================= */

.theme-sothebys .prose ul,
.theme-sothebys .prose ol {
    margin: 1.25rem 0;
    padding-left: 1.5rem;
    font-family: var(--font-body);
    font-size: var(--text-body);
    line-height: 1.8;
    color: hsl(var(--foreground));
}

/* Принудительно убираем стандартные маркеры */
.theme-sothebys .prose ul,
.theme-sothebys .prose ul[style*="list-style-type"],
.theme-sothebys .prose ul[style*="list-style"],
.theme-sothebys .prose ol,
.theme-sothebys .prose ol[style*="list-style-type"],
.theme-sothebys .prose ol[style*="list-style"] {
    list-style: none !important;
    list-style-type: none !important;
}

/* =============================================
   МАРКИРОВАННЫЕ СПИСКИ (ul) — ПУСТОЙ КВАДРАТИК
   ============================================= */

.theme-sothebys .prose ul li,
.theme-sothebys .prose ul[style*="list-style-type"] li,
.theme-sothebys .prose ul[style*="list-style"] li {
    position: relative;
    padding-left: 1.5rem !important;
    margin-bottom: 0.5rem;
    list-style: none !important;
}

/* Основной маркер — пустой квадратик */
.theme-sothebys .prose ul li::before,
.theme-sothebys .prose ul[style*="list-style-type"] li::before,
.theme-sothebys .prose ul[style*="list-style"] li::before {
    content: '□';
    position: absolute;
    left: 0;
    top: 0;
    font-size: 1rem;
    color: hsl(var(--primary));
    flex-shrink: 0;
    font-weight: 300;
}

/* Square — пустой квадратик (без обводки) */
.theme-sothebys .prose ul[style*="square"] li::before,
.theme-sothebys .prose ul[style*="square"] li::before {
    content: '□';
    color: hsl(var(--primary));
}

/* Circle — тоже меняем на пустой квадратик */
.theme-sothebys .prose ul[style*="circle"] li::before,
.theme-sothebys .prose ul[style*="circle"] li::before {
    content: '□';
    color: hsl(var(--primary));
}

/* =============================================
   ВЛОЖЕННЫЕ МАРКИРОВАННЫЕ СПИСКИ — КРУЖОК
   ============================================= */

/* Второй уровень — кружок */
.theme-sothebys .prose ul ul li::before,
.theme-sothebys .prose ul[style*="list-style-type"] ul li::before {
    content: '○';
    font-size: 1.1rem;
    color: hsl(var(--muted-foreground));
    top: 0.05rem;
}

/* Третий уровень — маленькая точка */
.theme-sothebys .prose ul ul ul li::before,
.theme-sothebys .prose ul[style*="list-style-type"] ul ul li::before {
    content: '•';
    font-size: 1.2rem;
    color: hsl(var(--muted-foreground) / 0.5);
    top: 0.05rem;
}

/* =============================================
   НУМЕРОВАННЫЕ СПИСКИ (ol)
   ============================================= */

.theme-sothebys .prose ol li,
.theme-sothebys .prose ol[style*="list-style-type"] li,
.theme-sothebys .prose ol[style*="list-style"] li {
    position: relative;
    padding-left: 2rem !important;
    margin-bottom: 0.5rem;
    list-style: none !important;
    counter-increment: item;
}

.theme-sothebys .prose ol {
    counter-reset: item;
}

.theme-sothebys .prose ol li::before,
.theme-sothebys .prose ol[style*="list-style-type"] li::before,
.theme-sothebys .prose ol[style*="list-style"] li::before {
    content: counter(item) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 0.875rem;
    color: hsl(var(--primary));
    letter-spacing: 0.02em;
}

/* Вложенные нумерованные списки */
.theme-sothebys .prose ol ol li::before,
.theme-sothebys .prose ol[style*="list-style-type"] ol li::before {
    color: hsl(var(--muted-foreground)) !important;
    font-size: 0.75rem !important;
}

/* ВЛОЖЕННЫЕ СПИСКИ (отступы) */
.theme-sothebys .prose ul ul,
.theme-sothebys .prose ol ol,
.theme-sothebys .prose ul ol,
.theme-sothebys .prose ol ul,
.theme-sothebys .prose ul[style*="list-style-type"] ul,
.theme-sothebys .prose ul[style*="list-style"] ul,
.theme-sothebys .prose ol[style*="list-style-type"] ol,
.theme-sothebys .prose ol[style*="list-style"] ol {
    margin: 0.5rem 0 0.5rem 1rem;
}

/* =============================================
   АДАПТИВ
   ============================================= */

@media (max-width: 640px) {
    .theme-sothebys .prose ul,
    .theme-sothebys .prose ol,
    .theme-sothebys .prose ul[style*="list-style-type"],
    .theme-sothebys .prose ol[style*="list-style-type"] {
        padding-left: 1rem;
    }

    .theme-sothebys .prose ul li,
    .theme-sothebys .prose ul[style*="list-style-type"] li {
        padding-left: 1.25rem !important;
    }

    .theme-sothebys .prose ol li,
    .theme-sothebys .prose ol[style*="list-style-type"] li {
        padding-left: 1.75rem !important;
    }
}

/* =============================================
   АДАПТИВ
   ============================================= */

@media (max-width: 640px) {
    .theme-sothebys .prose ul,
    .theme-sothebys .prose ol,
    .theme-sothebys .prose ul[style*="list-style-type"],
    .theme-sothebys .prose ol[style*="list-style-type"] {
        padding-left: 1rem;
    }

    .theme-sothebys .prose ul li,
    .theme-sothebys .prose ul[style*="list-style-type"] li {
        padding-left: 1.25rem !important;
    }

    .theme-sothebys .prose ol li,
    .theme-sothebys .prose ol[style*="list-style-type"] li {
        padding-left: 1.75rem !important;
    }
}

.theme-sothebys .prose p {
    margin-top: 0 !important;
    margin-bottom: 1.25rem !important;
}

.theme-sothebys .prose p:last-child {
    margin-bottom: 0 !important;
}

.theme-sothebys .prose p:empty {
    display: none !important;
}


/* =============================================
   БАННЕР В СТИЛЕ CHRISTIE'S (2 блока)
   ============================================= */

/* Базовый контейнер */
.theme-sothebys .slider-hero {
    background: hsl(var(--background));
}

/* Слайд — сетка */
.theme-sothebys .slider-hero .slide {
    width: 100%;
}

/* Левая колонка с информацией */
.theme-sothebys .slider-hero .slide .info-column {
    background: hsl(var(--background));
}

/* Заголовок в левой колонке */
.theme-sothebys .slider-hero .slide .info-column h2 {
    color: hsl(var(--foreground));
}

/* Кнопка в стиле Christie's */
.theme-sothebys .slider-hero .slide .info-column .btn-christies {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: hsl(var(--foreground));
    border-bottom: 2px solid hsl(var(--primary) / 0.3);
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    transition: all 0.3s ease;
}

.theme-sothebys .slider-hero .slide .info-column .btn-christies:hover {
    color: hsl(var(--primary));
    border-bottom-color: hsl(var(--primary));
}

.theme-sothebys .slider-hero .slide .info-column .btn-christies .arrow {
    transition: transform 0.3s ease;
}

.theme-sothebys .slider-hero .slide .info-column .btn-christies:hover .arrow {
    transform: translateX(4px);
}

/* =============================================
   СТРЕЛКИ НАВИГАЦИИ
   ============================================= */

.theme-sothebys .slider-hero .slider-prev,
.theme-sothebys .slider-hero .slider-next {
    transition: all 0.3s ease;
}

.theme-sothebys .slider-hero .slider-prev:hover,
.theme-sothebys .slider-hero .slider-next:hover {
    transform: scale(1.05);
}

/* =============================================
   ПАГИНАЦИЯ (точки Christie's)
   ============================================= */

.theme-sothebys .slider-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.theme-sothebys .slider-pagination .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: hsl(var(--muted-foreground) / 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
}

.theme-sothebys .slider-pagination .dot:hover {
    background: hsl(var(--muted-foreground) / 0.7);
}

.theme-sothebys .slider-pagination .dot.active {
    background: hsl(var(--primary));
    transform: scale(1.2);
}

/* =============================================
   АДАПТИВ
   ============================================= */

/* Мобильные устройства */
@media (max-width: 767px) {
    .theme-sothebys .slider-hero .slide .info-column {
        padding: 2rem 1.5rem;
        min-height: auto;
    }

    .theme-sothebys .slider-hero .slide .info-column h2 {
        font-size: 1.75rem;
    }

    .theme-sothebys .slider-hero .slide .info-column p {
        font-size: 0.9rem;
    }

    .theme-sothebys .slider-hero .slide .image-column {
        min-height: 280px;
    }

    /* Стрелки на мобильных — всегда видны */
    .theme-sothebys .slider-hero .slider-prev,
    .theme-sothebys .slider-hero .slider-next {
        opacity: 0.8 !important;
        width: 32px;
        height: 32px;
    }

    .theme-sothebys .slider-hero .slider-prev {
        left: 8px;
    }

    .theme-sothebys .slider-hero .slider-next {
        right: 8px;
    }

    .theme-sothebys .slider-pagination .dot {
        width: 10px;
        height: 10px;
    }
}

/* Планшеты */
@media (min-width: 768px) and (max-width: 1023px) {
    .theme-sothebys .slider-hero .slide .info-column {
        padding: 2.5rem 2rem;
    }

    .theme-sothebys .slider-hero .slide .info-column h2 {
        font-size: 2.5rem;
    }

    .theme-sothebys .slider-hero .slide .image-column {
        min-height: 400px;
    }
}

/* Десктоп */
@media (min-width: 1024px) {
    .theme-sothebys .slider-hero .slide .info-column {
        padding: 3rem 3rem 3rem 4rem;
    }
}

@media (min-width: 1280px) {
    .theme-sothebys .slider-hero .slide .info-column {
        padding: 4rem 4rem 4rem 6rem;
    }
}

/* =============================================
   БАННЕР — 25% ИНФО / 75% КАРТИНКА
   ============================================= */

/* Левая колонка — фон и выравнивание */
.theme-sothebys .slider-hero .slide .info-column-25 {
    background: hsl(var(--secondary));
    display: flex;
    align-items: center;
}

/* Контент левой колонки */
.theme-sothebys .slider-hero .slide .info-column-25 .info-content {
    width: 100%;
    max-width: 20rem;
}

/* Адаптив для планшетов — если нужно показать больше инфо */
@media (min-width: 768px) and (max-width: 1023px) {
    .theme-sothebys .slider-hero .slide .info-column-25 h2 {
        font-size: 2rem;
    }
}

/* Очень маленькие экраны */
@media (max-width: 480px) {
    .theme-sothebys .slider-hero .slide .info-column-25 h2 {
        font-size: 1.25rem;
    }
    .theme-sothebys .slider-hero .slide .info-column-25 p {
        font-size: 0.75rem;
    }
}

/* =============================================
   БАННЕР — FULL WIDTH (без информации)
   ============================================= */

/* Для слайдов без информации — картинка на всю ширину */
.theme-sothebys .slider-hero .slide-full {
    min-height: 400px;
}

.theme-sothebys .slider-hero .slide-full picture,
.theme-sothebys .slider-hero .slide-full img {
    width: 100%;
    height: 100%;
    display: block;
}

@media (min-width: 768px) {
    .theme-sothebys .slider-hero .slide-full {
        min-height: 500px;
    }
}

@media (min-width: 1024px) {
    .theme-sothebys .slider-hero .slide-full {
        min-height: 600px;
    }
}

@media (min-width: 1280px) {
    .theme-sothebys .slider-hero .slide-full {
        min-height: 700px;
    }
}

/* =============================================
   БЫСТРЫЙ ПРОСМОТР (Quick View)
   ============================================= */

.quick-view-modal .modal-content {
    padding: 0 !important;
}

.quick-view-modal .modal-body {
    padding: 1.5rem !important;
}

.quick-view-modal .line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 768px) {
    .quick-view-modal .modal-body {
        padding: 1rem !important;
    }
}

.scrollbar-thin::-webkit-scrollbar {
    width: 3px;
}
.scrollbar-thin::-webkit-scrollbar-track {
    background: hsl(var(--border));
}
.scrollbar-thin::-webkit-scrollbar-thumb {
    background: hsl(var(--primary));
}
.scrollbar-thin {
    scrollbar-width: thin;
    scrollbar-color: hsl(var(--primary)) hsl(var(--border));
}

/* =============================================
   ДЕСКТОПНАЯ НАВИГАЦИЯ — БЕЗ СКРОЛЛА
   ============================================= */

/* Принудительно убираем скролл у навигации */
.theme-sothebys nav,
.theme-sothebys nav ul,
.theme-sothebys nav li {
    overflow: visible !important;
}

/* Выпадающие меню — не создают скролл */
.theme-sothebys .dropdown-menu,
.theme-sothebys .absolute {
    overflow: visible !important;
    max-height: none !important;
}

/* Ограничиваем высоту выпадающего меню, если нужно */
.theme-sothebys .absolute .bg-card {
    max-height: 70vh;
    overflow-y: auto;
}

/* =============================================
   ЗАПРЕТ СКРОЛЛА НА ДЕСКТОПЕ
   ============================================= */

@media (min-width: 1024px) {
    html, body {
        overflow: visible !important;
        height: auto !important;
    }

    /* Все дочерние элементы header не создают скролл */
    header * {
        overflow: visible !important;
    }

    /* Разрешаем скролл только внутри выпадающих меню */
    .absolute .bg-card {
        overflow-y: auto !important;
    }
}

/* =============================================
       SCROLL TO TOP — Sotheby's Style
       ============================================= */

.progress-wrap {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.06);
}

.progress-wrap.active-progress {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.progress-wrap:hover {
    box-shadow: inset 0 0 0 2px hsl(var(--primary));
}

/* Анимация для иконки при наведении */
.progress-wrap:hover .icon-\[lucide--arrow-up\] {
    transform: translateY(-2px);
    transition: transform 0.2s ease;
}

/* SVG пути */
.progress-wrap .progress-circle path.stroke-border {
    stroke: hsl(var(--border));
}

.progress-wrap .progress-circle path.stroke-primary {
    stroke: hsl(var(--primary));
    stroke-dasharray: 128.67;
    stroke-dashoffset: 128.67;
    transition: stroke-dashoffset 10ms linear;
}

/* Адаптив */
@media (max-width: 768px) {
    .progress-wrap {
        right: 16px;
        bottom: 80px;
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 480px) {
    .progress-wrap {
        right: 12px;
        bottom: 72px;
        width: 40px;
        height: 40px;
    }
}

/* =============================================
   QUOTE / BLOCKQUOTE — Sotheby's Style
   ============================================= */

.theme-sothebys blockquote,
.theme-sothebys .quote {
    position: relative;
    margin: 2rem 0;
    padding: 1.5rem 2rem 1.5rem 3.5rem;
    font-family: var(--font-display), 'Times New Roman', serif;
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 1.7;
    color: hsl(var(--foreground));
    background: hsl(var(--secondary));
    border-left: 3px solid hsl(var(--gold));
    border-radius: 0;
}

/* Кавычка-украшение (большая, типографская) */
.theme-sothebys blockquote::before,
.theme-sothebys .quote::before {
    content: '\201C';
    position: absolute;
    left: 1rem;
    top: 0.5rem;
    font-family: var(--font-display), 'Times New Roman', serif;
    font-size: 4rem;
    line-height: 1;
    color: hsl(var(--gold) / 0.3);
    font-weight: 700;
}

/* Автор цитаты */
.theme-sothebys blockquote footer,
.theme-sothebys blockquote cite,
.theme-sothebys .quote .quote-author {
    display: block;
    margin-top: 0.75rem;
    font-family: var(--font-body), 'Inter', sans-serif;
    font-size: 0.8rem;
    font-weight: 400;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: hsl(var(--muted-foreground));
}

.theme-sothebys blockquote footer::before,
.theme-sothebys .quote .quote-author::before {
    content: '\2014 ';
    color: hsl(var(--gold));
}

/* Вариант — без фона, только рамка */
.theme-sothebys .quote-simple {
    background: transparent;
    padding-left: 2rem;
    border-left-color: hsl(var(--gold));
}

.theme-sothebys .quote-simple::before {
    left: 0.5rem;
    font-size: 3rem;
    color: hsl(var(--gold) / 0.2);
}

/* Вариант — в центре (для крупных акцентов) */
.theme-sothebys .quote-center {
    text-align: center;
    padding: 2.5rem 2rem;
    border-left: none;
    border-top: 1px solid hsl(var(--gold) / 0.3);
    border-bottom: 1px solid hsl(var(--gold) / 0.3);
    background: transparent;
}

.theme-sothebys .quote-center::before {
    position: static;
    display: block;
    font-size: 3rem;
    color: hsl(var(--gold) / 0.2);
    margin-bottom: 0.25rem;
}

/* Адаптив */
@media (max-width: 640px) {
    .theme-sothebys blockquote,
    .theme-sothebys .quote {
        padding: 1.25rem 1rem 1.25rem 2.5rem;
        font-size: 1rem;
    }

    .theme-sothebys blockquote::before,
    .theme-sothebys .quote::before {
        font-size: 2.5rem;
        left: 0.5rem;
        top: 0.25rem;
    }

    .theme-sothebys .quote-center {
        padding: 1.5rem 1rem;
    }
}