/* ==========================================================
   ФИРМЕННЫЕ ПЕРЕМЕННЫЕ — когда придёт брендбук от дизайнера,
   меняются только значения здесь, весь сайт перекрасится сам.
   ========================================================== */
:root {
    --color-primary: #3b3630;      /* основной тёмный (шапка, текст, кнопки) */
    --color-primary-hover: #554c40;
    --color-accent: #b8860b;       /* акцентный — золотисто-охристый */
    --color-bg: #f4f3f1;           /* фон страницы */
    --color-card-bg: #ffffff;
    --color-text: #2b2b2b;
    --color-text-muted: #6b6b6b;
    --color-border: #e2ded8;
    --font-main: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;

    --badge-standart-bg: #eef0f2;
    --badge-standart-text: #4a5568;
    --badge-premium-bg: #fff4d9;
    --badge-premium-text: #8a6300;
    --badge-lux-bg: #f3e5f5;
    --badge-lux-text: #6a1b9a;
}

* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: var(--font-main);
    background: var(--color-bg);
    color: var(--color-text);
}
a { color: inherit; }
img { max-width: 100%; display: block; }

.container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
.container.narrow { max-width: 720px; }

/* ===== Header — единая система адаптива для всей шапки сайта =====
   Раньше было четыре независимых, не согласованных набора правил для одних и тех
   же элементов на разных, перекрывающихся точках перелома — из-за этого текст в
   шапке непредсказуемо накладывался друг на друга на некоторых ширинах экрана.
   Теперь один набор правил, единая последовательность точек перелома:
   1239px → 999px (переход в мобильное меню-гамбургер) → 640px → 420px.
   Раньше на ширинах уже с 1000px навигация просто скрывалась ("nav{display:none}")
   БЕЗ какой-либо замены — на всех ноутбуках и телефонах посетители физически не
   могли открыть «Каталог»/«О компании» и т.д. через шапку. Теперь вместо этого
   появляется кнопка-гамбургер, открывающая то же меню выпадающей панелью. */
header.site-header {
    background: #241f1a;
    color: #fff;
    padding: 9px 0;
    position: relative;
    z-index: 100;
}
header.site-header .inner {
    max-width: 1240px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 16px;
}
header.site-header .logo { display: inline-flex; align-items: center; text-decoration: none; flex: 0 0 auto; }
header.site-header .logo img { height: 36px; width: auto; display: block; }

header.site-header nav {
    display: flex;
    align-items: center;
    gap: 16px;
    flex: 1 1 auto;
    justify-content: center;
    min-width: 0;
}
header.site-header nav a {
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
    opacity: 0.88;
}
header.site-header nav a:hover { opacity: 1; }
header.site-header .header-fav-link { white-space: nowrap; }

.header-right { display: flex; align-items: center; gap: 16px; flex: 0 0 auto; margin-left: auto; min-width: 0; }
.header-contact { display: flex; flex-direction: column; white-space: nowrap; text-align: right; padding-left: 12px; border-left: 1px solid rgba(255,255,255,.12); }
.header-contact a { font-weight: 800; text-decoration: none; font-size: 14px; color: #fff; }
.header-contact small { font-size: 9px; opacity: .72; color: #fff; display: block; }

.header-actions { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
/* .header-cta ("Получить расчёт") и .header-dom-cta ("Дом под ключ") специально имеют
   одинаковую высоту на каждой точке перелома — раньше первая считалась от padding+текст,
   вторая была с фиксированной шириной/высотой, и визуально они никогда не совпадали. */
/* Селектор специально составной (a.btn.header-cta), а не просто .header-cta — раз у
   ссылки уже есть класс .btn, а .btn объявлен НИЖЕ по файлу, при равной специфичности
   он побеждал бы в каскаде для padding/display, даже если .header-cta задан раньше.
   Так это правило гарантированно выигрывает независимо от порядка в файле — раньше
   именно из-за этого кнопка "Получить расчёт" не центрировалась и не совпадала по
   высоте с "Дом под ключ": реально применялись padding/display от .btn, а не отсюда. */
a.btn.header-cta {
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    font-size: 13px;
    white-space: nowrap;
    box-sizing: border-box;
    text-align: center;
    line-height: normal;
}
.header-dom-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 134px;
    height: 40px;
    pointer-events: none;
    flex: 0 0 auto;
    box-sizing: border-box;
}
.header-dom-cta img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 6px 12px rgba(0,0,0,.22)); }

/* Кнопка-гамбургер мобильного меню — скрыта, пока не нужна (см. медиа-запрос ниже) */
.mobile-nav-toggle {
    display: none;
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border: none;
    background: rgba(255,255,255,.08);
    border-radius: 9px;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    margin-right: 2px;
    padding: 0;
}
.mobile-nav-toggle span,
.mobile-nav-toggle span:before,
.mobile-nav-toggle span:after {
    display: block;
    width: 18px;
    height: 2px;
    background: #fff;
    border-radius: 1px;
}
.mobile-nav-toggle span { position: relative; }
.mobile-nav-toggle span:before { content: ""; position: absolute; top: -6px; left: 0; }
.mobile-nav-toggle span:after { content: ""; position: absolute; top: 6px; left: 0; }

@media (max-width: 1239px) {
    header.site-header .inner { gap: 12px; }
    header.site-header nav { gap: 12px; }
    header.site-header nav a { font-size: 12.5px; }
    .header-contact small { display: none; }
    .header-right { gap: 12px; }
    .header-actions { gap: 9px; }
    a.btn.header-cta { height: 38px; padding: 0 15px; font-size: 12.5px; }
    .header-dom-cta { width: 122px; height: 38px; }
}

@media (max-width: 999px) {
    header.site-header nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        flex-direction: column;
        align-items: stretch;
        background: #241f1a;
        padding: 6px 18px 14px;
        box-shadow: 0 10px 24px rgba(0,0,0,.28);
        gap: 0;
    }
    header.site-header nav.is-open { display: flex; }
    header.site-header nav a { padding: 11px 4px; font-size: 14px; border-top: 1px solid rgba(255,255,255,.08); opacity: 1; }
    header.site-header nav a:first-child { border-top: 0; }
    .mobile-nav-toggle { display: inline-flex; }
    .header-contact { display: none; }
    .header-right { gap: 10px; margin-left: auto; }
    .header-dom-cta { width: 112px; height: 36px; }
    a.btn.header-cta { height: 36px; padding: 0 13px; font-size: 12px; }
}

@media (max-width: 640px) {
    header.site-header .logo img { height: 30px; }
    header.site-header .inner { gap: 8px; }
    .header-actions { gap: 7px; }
    a.btn.header-cta { height: 33px; padding: 0 11px; font-size: 11px; }
    .header-dom-cta { width: 96px; height: 33px; }
}

@media (max-width: 420px) {
    a.btn.header-cta { height: 30px; padding: 0 9px; font-size: 10px; }
    .header-dom-cta { width: 84px; height: 30px; }
}

/* Hero — фото задаётся inline-стилем на странице (для версионирования), тут только базовые правила */
.hero {
    position: relative;
    color: #fff;
    padding: 70px 0 80px;
    text-align: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.hero h1 { font-size: 34px; margin: 0 0 12px; font-weight: 700; text-shadow: 0 2px 10px rgba(0,0,0,0.35); }
.hero p { font-size: 16px; opacity: 0.92; max-width: 520px; margin: 0 auto 24px; text-shadow: 0 1px 6px rgba(0,0,0,0.3); }

/* Buttons — скруглённые, "выпуклые" (мягкий объём через тень и блик) */
.btn {
    display: inline-block;
    background: linear-gradient(180deg, #c99a2e 0%, var(--color-accent) 55%, #9c6f08 100%);
    color: #fff;
    border: none;
    padding: 13px 26px;
    border-radius: 14px;
    font-size: 15px;
    cursor: pointer;
    text-decoration: none;
    font-weight: 600;
    box-shadow: 0 3px 0 rgba(80, 55, 5, 0.35), 0 5px 12px rgba(80, 55, 5, 0.22), inset 0 1px 0 rgba(255,255,255,0.35);
    transition: transform 0.08s ease, box-shadow 0.08s ease, opacity 0.15s ease;
}
.btn:hover { opacity: 0.96; }
.btn:active { transform: translateY(2px); box-shadow: 0 1px 0 rgba(80, 55, 5, 0.35), 0 2px 5px rgba(80, 55, 5, 0.18), inset 0 1px 0 rgba(255,255,255,0.25); }
.btn.secondary { background: rgba(255,255,255,0.15); box-shadow: none; }
.btn.dark {
    background: linear-gradient(180deg, #57503f 0%, var(--color-primary) 55%, #221f1a 100%);
    box-shadow: 0 3px 0 rgba(0,0,0,0.35), 0 5px 12px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.18);
}
.btn.dark:hover { opacity: 0.96; }
.btn.small { padding: 9px 16px; font-size: 13px; border-radius: 11px; }
.btn.danger {
    background: linear-gradient(180deg, #d64545 0%, #b71c1c 55%, #7a1010 100%);
    box-shadow: 0 3px 0 rgba(60,0,0,0.35), 0 5px 12px rgba(60,0,0,0.2), inset 0 1px 0 rgba(255,255,255,0.25);
}
.btn.outline {
    background: linear-gradient(180deg, #ffffff 0%, #f6f2ea 100%);
    border: 1px solid rgba(0,0,0,0.07);
    color: var(--color-text);
    box-shadow: 0 2px 0 rgba(0,0,0,0.06), 0 4px 8px rgba(0,0,0,0.05), inset 0 1px 0 #fff;
}
.btn.outline:active { transform: translateY(2px); box-shadow: 0 0 0 rgba(0,0,0,0.06), 0 1px 3px rgba(0,0,0,0.05); }

/* Sections */
section { padding: 50px 0; }
section h2 { font-size: 24px; margin: 0 0 24px; text-align: center; }

/* Catalog grid */
.filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 28px;
    justify-content: center;
}
.filters select {
    padding: 9px 14px;
    border-radius: 8px;
    border: 1px solid var(--color-border);
    background: #fff;
    font-size: 14px;
}
.grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 22px;
}
.card {
    background: var(--color-card-bg);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    text-decoration: none;
    color: inherit;
    display: block;
    transition: transform 0.15s ease;
}
.card:hover { transform: translateY(-3px); }
.card .photo {
    width: 100%;
    aspect-ratio: 4/3;
    background: #e9e6e1 center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a19b90;
    font-size: 13px;
}
.card .body { padding: 16px 18px 18px; }
.card .name { font-size: 17px; font-weight: 700; margin-bottom: 6px; }
.card .price { font-size: 14px; color: var(--color-text-muted); margin-bottom: 10px; }
.badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}
.badge.seg-Стандарт { background: var(--badge-standart-bg); color: var(--badge-standart-text); }
.badge.seg-Премиум { background: var(--badge-premium-bg); color: var(--badge-premium-text); }
.badge.seg-Люкс { background: var(--badge-lux-bg); color: var(--badge-lux-text); }

.empty-state { text-align: center; color: var(--color-text-muted); padding: 60px 20px; }

/* Item page */
.item-gallery { display: grid; grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr); gap: 10px; margin-bottom: 30px; height: 440px; }
.item-gallery.single { grid-template-columns: 1fr; }
.item-gallery .main-photo { background: #e9e6e1 center/cover no-repeat; border-radius: 14px; width: 100%; height: 100%; cursor: pointer; }
.item-gallery .thumbs { display: flex; flex-direction: column; gap: 10px; min-width: 0; height: 100%; }
.item-gallery .thumbs .photo { flex: 1; min-height: 0; background: #e9e6e1 center/cover no-repeat; border-radius: 10px; width: 100%; cursor: pointer; position: relative; }
.more-overlay {
    position: absolute;
    inset: 0;
    background: rgba(20, 18, 16, 0.55);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    border-radius: 10px;
}
.item-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 6px; flex-wrap: wrap; gap: 10px; }
.item-header h1 { margin: 0; font-size: 26px; }
.item-price { font-size: 20px; font-weight: 700; color: var(--color-accent); margin: 10px 0 20px; }
.specs-table { width: 100%; border-collapse: collapse; margin-top: 10px; }
.specs-table tr { border-bottom: 1px solid var(--color-border); }
.specs-table td { padding: 10px 6px; font-size: 14px; }
.specs-table td:first-child { color: var(--color-text-muted); width: 45%; }

/* Cards (admin/forms) */
.card-box {
    background: #fff;
    border-radius: 14px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    margin-bottom: 20px;
}
.card-box h2 { text-align: left; font-size: 18px; margin: 0 0 16px; }
.top-nav { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.top-nav .left { font-size: 14px; color: var(--color-text-muted); }

table.admin-table { width: 100%; border-collapse: collapse; margin-top: 12px; }
table.admin-table th, table.admin-table td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--color-border); font-size: 14px; }
table.admin-table th { color: var(--color-text-muted); font-weight: 600; font-size: 13px; }

.form-row { margin-bottom: 16px; }
.form-row label { display: block; font-size: 13px; color: var(--color-text-muted); margin-bottom: 5px; }
.form-row input, .form-row select, .form-row textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    font-size: 14px;
    font-family: inherit;
}
.form-row.half-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.spec-row { display: grid; grid-template-columns: auto 1fr 1fr auto; gap: 10px; margin-bottom: 10px; align-items: center; }
.drag-handle { cursor: grab; color: var(--color-text-muted); font-size: 18px; padding: 4px 6px; user-select: none; }
.drag-handle:active { cursor: grabbing; }
.photo-thumb-admin { position: relative; display: inline-block; margin: 0 10px 10px 0; cursor: grab; }
.photo-thumb-admin:active { cursor: grabbing; }
.photo-thumb-admin img { width: 110px; height: 90px; object-fit: cover; border-radius: 8px; }
.photo-thumb-admin .remove-link { display: block; text-align: center; font-size: 12px; color: #b71c1c; margin-top: 4px; text-decoration: none; }
.photo-drag-handle {
    position: absolute;
    top: 4px;
    left: 4px;
    background: rgba(0,0,0,0.55);
    color: #fff;
    border-radius: 5px;
    font-size: 13px;
    padding: 1px 5px;
    pointer-events: none;
}

.error { background: #fdecea; color: #b71c1c; padding: 10px 14px; border-radius: 8px; font-size: 14px; margin-bottom: 16px; }
.success { background: #e5f3e5; color: #2e7d32; padding: 10px 14px; border-radius: 8px; font-size: 14px; margin-bottom: 16px; }
.hint { font-size: 13px; color: var(--color-text-muted); margin-top: 4px; }

footer.site-footer {
    text-align: center;
    color: var(--color-text-muted);
    font-size: 13px;
    padding: 30px 0;
}

@media (max-width: 640px) {
    .item-gallery { grid-template-columns: 1fr; height: auto; }
    .item-gallery .main-photo { aspect-ratio: 4/3; height: auto; }
    .item-gallery .thumbs { flex-direction: row; overflow-x: auto; height: auto; }
    .item-gallery .thumbs .photo { flex: none; min-width: 100px; aspect-ratio: 4/3; height: auto; }
    .form-row.half-row { grid-template-columns: 1fr; }

    /* Логотип и меню шапки теперь целиком описаны в едином блоке "Header" в начале
       файла — здесь остаются только правила, не относящиеся к шапке. */

    /* Hero — меньше отступов и текста на маленьком экране */
    .hero { padding: 40px 0 46px; }
    .hero h1 { font-size: 24px; }
    .hero p { font-size: 14px; padding: 0 12px; }
}

@media (max-width: 400px) {
    .hero h1 { font-size: 21px; }
}

/* Лайтбокс — полноэкранный просмотр фото товара */
.lightbox-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(20, 18, 16, 0.92);
    z-index: 1000;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.lightbox-overlay.active { display: flex; }
.lightbox-overlay img {
    max-width: 88vw;
    max-height: 78vh;
    border-radius: 8px;
    object-fit: contain;
}
.lightbox-close {
    position: absolute;
    top: 18px;
    right: 24px;
    color: #fff;
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
    background: none;
    border: none;
}
.lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    color: #fff;
    font-size: 28px;
    cursor: pointer;
    background: rgba(255,255,255,0.15);
    border: none;
    border-radius: 50%;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.lightbox-nav:hover { background: rgba(255,255,255,0.28); }
.lightbox-nav.prev { left: 18px; }
.lightbox-nav.next { right: 18px; }
.lightbox-counter {
    color: #fff;
    margin-top: 14px;
    font-size: 13px;
    opacity: 0.75;
}
@media (max-width: 640px) {
    .lightbox-nav { width: 40px; height: 40px; font-size: 22px; }
    .lightbox-nav.prev { left: 8px; }
    .lightbox-nav.next { right: 8px; }
}

/* Видео на странице товара */
.video-embed {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 30px;
    background: #000;
}
.video-embed iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}
.video-link-btn {
    display: inline-block;
    margin-bottom: 30px;
}

/* Плашка "Новинка" */
.new-badge { background: #2e7d32; color: #fff; margin-left: 8px; }
.card-new-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    margin-left: 0;
}
.card .photo { position: relative; }

/* Счётчик интереса на странице товара */
.interest-note {
    font-size: 14px;
    color: var(--color-text-muted);
    margin: 8px 0 0;
}

/* Сердечко "избранное". Позиция, размер и цвет заливки/обводки заданы напрямую в
   HTML/SVG-атрибутах в render_fav_heart() (db.php) — это работает с самой первой
   отрисовки страницы независимо от того, успел ли подгрузиться этот файл. Здесь,
   в CSS, только то, чему нет атрибутного аналога: transition, hover-масштаб и
   анимация «пульса» при добавлении. Раньше здесь же задавались fill/stroke — но
   поскольку у path теперь всегда есть собственное значение через атрибут, значение
   с родителя-svg по CSS-наследованию всё равно никогда не применится, так что эти
   строки убраны, чтобы не вводить в заблуждение. */
.fav-heart {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 30px;
    height: 30px;
    background: none;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    z-index: 2;
    line-height: 0;
}
.fav-heart svg {
    width: 26px;
    height: 26px;
    transition: transform .15s ease;
}
.fav-heart svg path {
    transition: fill .15s ease, stroke .15s ease;
    fill: transparent !important;
    stroke: #fff !important;
    stroke-width: 1.8;
}
/* Не выбрано: пустое прозрачное сердце с белой обводкой.
   Лёгкая тень сохраняет видимость и на очень светлых фотографиях. */
.fav-heart:not(.active) svg {
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.45));
}
/* В избранном: фирменный бордовый цвет на всех устройствах. */
.fav-heart.active svg path {
    fill: #7A1F2B !important;
    stroke: #7A1F2B !important;
}
.fav-heart.active svg {
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.18));
    animation: fav-pop .32s ease;
}
.fav-heart:hover svg { transform: scale(1.14); }
.fav-heart:active svg { transform: scale(.88); }
@keyframes fav-pop {
    0% { transform: scale(1); }
    35% { transform: scale(1.35); }
    100% { transform: scale(1); }
}

/* Крупное сердечко на странице товара — там не поверх фото, а на светлом фоне рядом с ценой. */
.fav-heart-large {
    position: static;
    width: 40px;
    height: 40px;
    flex: none;
}
.fav-heart-large svg {
    width: 32px;
    height: 32px;
}

.item-fav-row { display: flex; align-items: center; gap: 10px; margin: 10px 0 0; }
.item-fav-row .fav-label { font-size: 14px; color: var(--color-text-muted); }

.header-fav-link { display: inline-flex; align-items: center; gap: 5px; }
.header-fav-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 999px;
    background: var(--color-accent);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

/* Блок доверия/цифр компании на главной */
.trust-stats {
    background: #fff;
    padding: 30px 0;
    border-bottom: 1px solid var(--color-border);
}
.trust-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    text-align: center;
}
.trust-stat-num {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-primary);
}
.trust-stat-label {
    font-size: 13px;
    color: var(--color-text-muted);
    margin-top: 4px;
}
@media (max-width: 640px) {
    .trust-stats-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* Отзывы */
.reviews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 18px;
}
.review-card {
    background: var(--color-card-bg);
    border-radius: 14px;
    padding: 18px 20px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    margin-bottom: 18px;
}
.reviews-grid .review-card { margin-bottom: 0; }
.review-author { font-weight: 700; font-size: 15px; }
.review-item-tag { font-size: 13px; color: var(--color-accent); margin-top: 2px; }
.review-date { font-size: 12px; color: var(--color-text-muted); margin-top: 2px; }
.review-text { font-size: 14px; margin: 10px 0 0; line-height: 1.5; }
.review-video {
    width: 100%;
    max-height: 320px;
    border-radius: 10px;
    margin-top: 12px;
    background: #000;
}
.review-photos {
    display: flex;
    gap: 8px;
    margin-top: 12px;
    flex-wrap: wrap;
}
.review-photos img {
    width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 8px;
}

/* ==========================================================
   Фон и адаптив для админ-панели
   ========================================================== */
body.admin-body {
    background:
        radial-gradient(circle at 94% 2%, rgba(196, 170, 138, 0.38) 0%, rgba(196, 170, 138, 0) 32%),
        radial-gradient(circle at 2% 62%, rgba(196, 170, 138, 0.30) 0%, rgba(196, 170, 138, 0) 30%),
        linear-gradient(160deg, #f4ede2 0%, #ede2d2 55%, #f1e7d9 100%);
    background-attachment: fixed;
    min-height: 100vh;
}

/* Кнопки в шапке админки — аккуратно переносятся на новую строку, без наплыва друг на друга */
.top-nav {
    flex-wrap: wrap;
    gap: 10px;
}
.top-nav > div:not(.left) {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* Карточки в админке — чуть мягче на фоне текстуры */
.card-box, .msg-list, .thread-box {
    box-shadow: 0 4px 16px rgba(80, 60, 30, 0.10), 0 1px 3px rgba(80, 60, 30, 0.06);
}

/* Таблицы — не ломаются на узких экранах, скроллятся горизонтально при необходимости */
.admin-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

@media (max-width: 640px) {
    .container { padding-left: 14px; padding-right: 14px; }
    .top-nav { flex-direction: column; align-items: stretch; }
    .top-nav .left { margin-bottom: 4px; }
    .top-nav > div:not(.left) a.btn,
    .top-nav > div:not(.left) button.btn { flex: 1 1 auto; text-align: center; }
    .card-box { padding: 16px; border-radius: 16px; }
    .btn { padding: 13px 18px; font-size: 15px; } /* крупнее — удобнее нажимать пальцем */
    table.admin-table { display: block; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
    .msg-layout { grid-template-columns: 1fr !important; }
    .form-row.half-row { grid-template-columns: 1fr; }
}

/* ==========================================================
   Боковое выпадающее меню админки (в духе OpenCart)
   ========================================================== */
.admin-sidebar {
    position: fixed;
    top: 0; left: 0; bottom: 0;
    width: 250px;
    background: linear-gradient(180deg, #2e2a22 0%, var(--color-primary) 100%);
    color: #fff;
    overflow-y: auto;
    z-index: 200;
    transform: translateX(0);
    transition: transform 0.25s ease;
    box-shadow: 2px 0 14px rgba(0,0,0,0.18);
}
.admin-sidebar.collapsed { transform: translateX(-100%); }

.sidebar-brand {
    padding: 18px;
    border-bottom: 1px solid rgba(255,255,255,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
}
.sidebar-brand img { height: 32px; width: auto; }

.sidebar-user {
    padding: 12px 18px;
    font-size: 13px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    line-height: 1.5;
}

.admin-sidebar nav { padding: 8px 0; }

/* Сворачиваемые разделы меню */
.sidebar-group { border-bottom: 1px solid rgba(255,255,255,0.06); }
.sidebar-group-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: none;
    border: none;
    padding: 14px 18px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: rgba(255,255,255,0.55);
    font-weight: 700;
    cursor: pointer;
    text-align: left;
}
.sidebar-group-toggle:hover { color: rgba(255,255,255,0.85); }
.sidebar-group-chevron { transition: transform 0.2s ease; font-size: 12px; }
.sidebar-group.open .sidebar-group-chevron { transform: rotate(90deg); }

.sidebar-group-items { max-height: 0; overflow: hidden; transition: max-height 0.25s ease; }
.sidebar-group.open .sidebar-group-items { max-height: 400px; }

.admin-sidebar nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px 12px 26px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    opacity: 0.82;
    border-left: 3px solid transparent;
}
.admin-sidebar nav a:hover { opacity: 1; background: rgba(255,255,255,0.06); }
.admin-sidebar nav a.active { opacity: 1; background: rgba(255,255,255,0.10); border-left-color: var(--color-accent); font-weight: 600; }

.sidebar-logout-link {
    display: block;
    padding: 14px 18px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    opacity: 0.7;
}
.sidebar-logout-link:hover { opacity: 1; }

.sidebar-badge {
    background: #e63946;
    color: #fff;
    border-radius: 10px;
    padding: 1px 8px;
    font-size: 11px;
    font-weight: 700;
}

.admin-overlay-backdrop {
    position: fixed; inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 150;
    display: none;
}
.admin-overlay-backdrop.show { display: block; }

.admin-main-wrap {
    margin-left: 250px;
    transition: margin-left 0.25s ease;
    min-height: 100vh;
}
.admin-main-wrap.full { margin-left: 0; }

/* Кнопка-стрелка сбоку панели — прикреплена к её краю, сдвигается вместе с ней */
.admin-toggle-tab {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    left: 250px;
    z-index: 250;
    width: 22px;
    height: 56px;
    background: var(--color-primary);
    color: #fff;
    border: none;
    border-radius: 0 10px 10px 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    box-shadow: 2px 0 8px rgba(0,0,0,0.15);
    transition: left 0.25s ease;
}
.admin-toggle-tab:hover { background: var(--color-primary-hover); }
.admin-toggle-tab.collapsed { left: 0; }

/* Постоянная кнопка "Смотреть сайт" — доступна на любой странице админки, в духе OpenCart */
.admin-view-site-btn {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 250;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fff;
    color: var(--color-primary);
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 10px;
    padding: 9px 14px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.admin-view-site-btn:hover { background: #f6f2ea; }

@media (max-width: 820px) {
    .admin-main-wrap { margin-left: 0 !important; }

    /* На телефоне ширина панели и положение стрелки используют ОДНО значение.
       Раньше панель ограничивалась max-width:290px, а стрелка оставалась на 82vw,
       поэтому на широких телефонах/эмуляции она визуально отрывалась от меню. */
    .admin-sidebar {
        width: min(82vw, 290px);
        max-width: none;
    }
    .admin-toggle-tab {
        left: min(82vw, 290px);
        max-width: none;
    }
    .admin-toggle-tab.collapsed { left: 0; }
    .admin-view-site-btn { padding: 8px 10px; font-size: 12px; }
}

/* Статистика на дашборде админки */
.admin-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 14px;
}
.admin-stat-item {
    background: #faf9f6;
    border-radius: 12px;
    padding: 14px 16px;
    text-align: center;
}
.admin-stat-num { font-size: 22px; font-weight: 700; color: var(--color-primary); }
.admin-stat-label { font-size: 12px; color: var(--color-text-muted); margin-top: 4px; }

/* Цветные плашки ключевых показателей на дашборде (в духе OpenCart) */
.dash-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.dash-tile {
    display: block;
    border-radius: 14px;
    padding: 20px;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    transition: transform 0.1s ease;
}
.dash-tile:hover { transform: translateY(-2px); }
.dash-tile-num { font-size: 30px; font-weight: 700; line-height: 1; }
.dash-tile-label { font-size: 13px; opacity: 0.9; margin-top: 8px; }
.dash-tile-a { background: linear-gradient(135deg, #3b3630 0%, #55503f 100%); }
.dash-tile-b { background: linear-gradient(135deg, #b8860b 0%, #d6a530 100%); }
.dash-tile-c { background: linear-gradient(135deg, #2e7d5f 0%, #45a37f 100%); }
.dash-tile-d { background: linear-gradient(135deg, #6a4fa0 0%, #8a6fc0 100%); }

/* Лента недавней активности */
.activity-feed { display: flex; flex-direction: column; }
.activity-feed-tall { max-height: 520px; overflow-y: auto; padding-right: 4px; }
.activity-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid var(--color-border);
    font-size: 14px;
    flex-wrap: wrap;
}
.activity-row:last-child { border-bottom: none; }
.activity-icon { font-size: 16px; flex-shrink: 0; }
.activity-text { flex: 1 1 auto; min-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.activity-time { font-size: 12px; color: var(--color-text-muted); flex-shrink: 0; margin-left: auto; }

/* Статус обращения (используется и в дашборде, и в разделе "Сообщения") */
.lead-badge { display: inline-block; font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 10px; flex-shrink: 0; }
.lead-badge.status-new { background: #eef0f2; color: #4a5568; }
.lead-badge.status-in_progress { background: #fff4d9; color: #8a6300; }
.lead-badge.status-measurement { background: #e0f2ea; color: #1f7a52; }
.lead-badge.status-contract_signed { background: #dbe9fb; color: #1d5aa8; }
.lead-badge.status-act_signed { background: #dcf3e3; color: #1b7a3d; font-weight: 700; }
.lead-badge.status-declined { background: #fbe0e0; color: #a3231f; }
.lead-badge.status-closed { background: #ece7f3; color: #5a4a80; }
.lead-assigned-tag { font-size: 11px; color: var(--color-text-muted); flex-shrink: 0; }

/* Логотип на публичной странице заявки менеджера — плавно уменьшается на маленьких экранах,
   чтобы не выглядеть громоздко на телефоне */
.apply-logo {
    height: 90px;
    width: auto;
    max-width: 100%;
    display: inline-block;
}
@media (max-width: 600px) {
    .apply-logo { height: 64px; }
}
@media (max-width: 380px) {
    .apply-logo { height: 48px; }
}

/* Внутренние новости компании — карточка новости (лента, дашборд), только для сотрудников */
.news-card { border:1px solid #e4ded2; border-radius:14px; padding:16px 18px; background:#fff; margin-bottom:12px; position:relative; }
.news-card.unread { border-color:#e0c68a; background:#fffdf6; box-shadow:0 0 0 1px rgba(224,198,138,.35); }
.news-card.important { border-left:4px solid #d92d20; }
.news-card.compact { padding:12px 14px; margin-bottom:8px; }
.news-card a.news-card-link { text-decoration:none; color:inherit; display:block; }
.news-important-badge { display:inline-flex; align-items:center; gap:4px; background:#fdecea; color:#b71c1c; border-radius:999px; padding:2px 10px; font-size:12px; font-weight:700; margin-bottom:6px; }
.news-unread-dot { display:inline-block; width:9px; height:9px; border-radius:50%; background:#e63946; margin-right:7px; vertical-align:middle; }
.news-meta { font-size:12px; color:var(--color-text-muted); margin:4px 0 8px; }
.news-excerpt { font-size:14px; color:#4a433a; line-height:1.5; }
.news-photo { width:100%; max-height:320px; object-fit:cover; border-radius:12px; margin:12px 0; }
.news-thumb { width:96px; height:72px; object-fit:cover; border-radius:8px; float:right; margin-left:12px; }
.news-read-stat { font-size:13px; color:var(--color-text-muted); margin-top:10px; }
.news-read-list { margin-top:8px; font-size:13px; line-height:1.9; }
.news-read-list .ok { color:#2e7d32; }
.news-read-list .no { color:#8a8274; }
.recipient-box { border:1px solid var(--color-border); border-radius:10px; padding:12px 14px; margin-top:8px; }
.recipient-box label { font-weight:400; display:flex; align-items:center; gap:8px; margin-bottom:6px; font-size:14px; color:#3d3427; }
.recipient-box label input { width:auto; }

/* ==========================================================
   Публичный раздел «Новое в Далай-Мебель»
   ========================================================== */
.public-news-kicker{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--color-accent);text-transform:uppercase;margin-bottom:8px}
.public-news-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.public-news-section-head h2{text-align:left;margin:0 0 6px}.public-news-section-head p{margin:0;color:var(--color-text-muted);font-size:14px}
.public-news-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;align-items:stretch}.public-news-home-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 3px 15px rgba(55,45,30,.08);min-width:0;display:flex;flex-direction:column;height:100%}.public-news-home-card.featured{grid-row:auto}.public-news-home-media,.public-news-home-card.featured .public-news-home-media{display:block;position:relative;aspect-ratio:4/3;background:#e8e4de;overflow:hidden;text-decoration:none}.public-news-home-media img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .25s ease;display:block}.public-news-home-card:hover img{transform:scale(1.025)}.public-news-home-media>span:not(.public-news-video-badge){position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#948c80;font-size:13px}.public-news-home-body{padding:15px 17px 17px;display:flex;flex-direction:column;flex:1}.public-news-home-body h3,.public-news-home-card.featured .public-news-home-body h3{font-size:18px;line-height:1.32;margin:7px 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.public-news-home-body h3 a{text-decoration:none}.public-news-home-body p{font-size:13px;line-height:1.52;color:#5b544a;margin:0 0 12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.public-news-home-body .public-news-card-meta{margin-top:auto}
.public-news-category{display:inline-flex;align-items:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a6300;background:#fff4d9;border-radius:999px;padding:4px 9px}.public-news-card-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--color-text-muted);font-size:11px}.public-news-video-badge{position:absolute!important;left:12px!important;bottom:12px!important;inset:auto!important;background:rgba(25,22,18,.78);color:#fff!important;border-radius:999px;padding:6px 10px!important;font-size:12px!important;font-weight:700;display:inline-flex!important;width:auto!important;height:auto!important}
.public-news-heading{padding:48px 0 30px;background:linear-gradient(180deg,#f1ede5 0%,var(--color-bg) 100%);text-align:center}.public-news-heading h1{font-size:34px;margin:0 0 10px}.public-news-heading p{color:var(--color-text-muted);margin:0 auto 24px;max-width:600px}.public-news-filters{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.public-news-filters a{text-decoration:none;background:#fff;border:1px solid var(--color-border);padding:8px 13px;border-radius:999px;font-size:13px}.public-news-filters a.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
.public-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.public-news-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 3px 15px rgba(55,45,30,.08);display:flex;flex-direction:column;min-width:0}.public-news-card-media{display:block;aspect-ratio:4/3;background:#e8e4de;position:relative;overflow:hidden;text-decoration:none}.public-news-card-media img{width:100%;height:100%;object-fit:cover}.public-news-card-media>span:not(.public-news-video-badge){position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#948c80;font-size:13px}.public-news-card-body{padding:17px;display:flex;flex-direction:column;flex:1}.public-news-card-body h2{font-size:19px;text-align:left;margin:8px 0}.public-news-card-body h2 a{text-decoration:none}.public-news-card-body p{font-size:14px;line-height:1.5;color:#5d554b;margin:0 0 14px}.public-news-card-body .public-news-card-meta{margin-top:auto}.public-news-more{display:inline-block;margin-top:13px;text-decoration:none;font-size:13px;font-weight:700;color:#8a6300}
.public-news-preview-banner{background:#fff4d9;color:#7a5a08;text-align:center;padding:10px 14px;font-size:13px}.public-news-article{padding:38px 0 60px}.public-news-back{text-decoration:none;font-size:13px;color:var(--color-text-muted)}.public-news-article h1{font-size:36px;line-height:1.15;margin:12px 0 12px}.public-news-article-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--color-text-muted);font-size:12px;margin-bottom:18px}.public-news-lead{font-size:19px;line-height:1.55;color:#4d463d;margin:0 0 24px}.public-news-main-media{margin:25px 0 30px}.public-news-main-media img,.public-news-main-media video,.public-news-media-stack img,.public-news-media-stack video{width:100%;border-radius:16px;background:#111;display:block;max-height:720px;object-fit:contain}.public-news-caption,.public-news-media-stack figcaption{font-size:12px;color:var(--color-text-muted);margin-top:7px;line-height:1.45}.public-news-content{font-size:16px;line-height:1.75}.public-news-content h2{font-size:25px;text-align:left;margin:32px 0 10px}.public-news-content h3{font-size:20px;margin:26px 0 8px}.public-news-content h4{font-size:17px;margin:22px 0 7px}.public-news-content p{margin:0 0 16px}.public-news-content a{color:#8a6300;text-decoration:underline;text-underline-offset:2px}.public-news-content mark{background:#fff0a8;color:inherit;padding:0 .14em;border-radius:2px}.public-news-content hr{border:0;border-top:1px solid rgba(138,99,0,.25);margin:28px 0}.public-news-content blockquote{margin:20px 0;padding:14px 18px;border-left:4px solid var(--color-accent);background:#fff9ec;border-radius:0 10px 10px 0}.public-news-media-stack{display:flex;flex-direction:column;gap:26px;margin:30px 0}.public-news-media-stack figure{margin:0}.public-news-cta{margin-top:44px;padding:26px;border-radius:18px;background:linear-gradient(135deg,#2e2a22,#4a4235);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}.public-news-cta span{font-size:11px;letter-spacing:.13em;color:#e0b95a;font-weight:800}.public-news-cta h2{text-align:left;font-size:24px;margin:7px 0}.public-news-cta p{margin:0;opacity:.84;line-height:1.5}.public-news-cta-actions{display:flex;flex-direction:column;gap:10px;min-width:190px}.public-news-cta .btn.outline{background:#fff}
@media(max-width:900px){.public-news-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-news-home-card.featured{grid-column:auto;grid-row:auto}.public-news-home-card.featured .public-news-home-media{aspect-ratio:4/3}.public-news-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.public-news-section-head{align-items:flex-start;flex-direction:column}.public-news-home-grid,.public-news-grid{grid-template-columns:1fr}.public-news-home-card.featured{grid-column:auto}.public-news-home-card.featured .public-news-home-media{aspect-ratio:4/3}.public-news-heading{padding:34px 0 22px}.public-news-heading h1{font-size:28px}.public-news-article h1{font-size:29px}.public-news-lead{font-size:17px}.public-news-cta{grid-template-columns:1fr;padding:20px}.public-news-cta-actions{min-width:0}.public-news-cta-actions .btn{text-align:center}.public-news-main-media img,.public-news-main-media video,.public-news-media-stack img,.public-news-media-stack video{border-radius:11px}}

/* ===== Внутренние новости сотрудников: расширенный редактор и лента ===== */
.cn-editor-card{max-width:1180px;margin-left:auto;margin-right:auto}.cn-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.cn-toolbar{display:flex;align-items:center;gap:6px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:7px;border:1px solid var(--color-border,#ddd5c8);border-bottom:0;border-radius:10px 10px 0 0;background:#f8f6f1;-webkit-overflow-scrolling:touch}.cn-toolbar button{flex:0 0 auto;border:1px solid #ddd5c8;background:#fff;color:#40372c;border-radius:7px;min-width:36px;height:34px;padding:0 9px;font-size:12px;font-weight:700;cursor:pointer}.cn-toolbar button:hover{background:#f0ece4}.cn-rich-editor{min-height:260px;border:1px solid var(--color-border,#ddd5c8);border-radius:0 0 10px 10px;background:#fff;padding:16px;font-size:15px;line-height:1.65;outline:none;overflow-wrap:anywhere}.cn-rich-editor:focus{border-color:#a28a68;box-shadow:0 0 0 2px rgba(162,138,104,.12)}.cn-rich-editor h2,.cn-rich-editor h3,.cn-rich-editor h4{margin:18px 0 8px}.cn-rich-editor blockquote{border-left:4px solid #b79d74;background:#f8f5ef;margin:16px 0;padding:10px 14px}.cn-rich-editor img{max-width:100%;height:auto;border-radius:10px}.cn-rich-editor figure{margin:18px 0}.cn-rich-editor figcaption{font-size:12px;color:#756d61;margin-top:6px}.cn-max-editor{min-height:190px}.cn-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cn-current-image{display:block;max-width:320px;max-height:220px;object-fit:cover;border-radius:12px;margin:8px 0}.cn-check{display:flex!important;align-items:center;gap:8px;font-weight:400!important;margin:7px 0}.cn-check input{width:auto!important}.cn-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.cn-setting{display:flex;align-items:flex-start;gap:10px;border:1px solid #e4ded2;border-radius:12px;padding:12px;background:#fff;font-weight:400!important}.cn-setting input{width:auto!important;margin-top:3px}.cn-setting span{display:flex;flex-direction:column;gap:3px}.cn-setting small{color:#746b60;line-height:1.35}.cn-max-box{background:#fbfaf7;border:1px solid #ded6c8;margin-top:18px}.cn-max-checks{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}.cn-form-actions,.cn-destructive-actions,.cn-manage-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}.cn-destructive-actions{padding-top:16px;border-top:1px solid #eee8de;justify-content:space-between}.btn.tiny{padding:5px 8px!important;font-size:11px!important;min-height:0!important}.cn-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.cn-media-item{border:1px solid #e4ded2;border-radius:12px;padding:8px;background:#fff}.cn-media-item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.cn-caption-input{margin-top:7px!important;font-size:12px!important;padding:7px!important}.cn-media-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.cn-inline-upload{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.cn-file-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.cn-file-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e4ded2;border-radius:10px;padding:9px 11px;background:#fff;font-size:13px}.cn-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(24,20,16,.62);z-index:9000;padding:18px}.cn-modal.open{display:flex}.cn-modal-card{position:relative;width:min(900px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.cn-modal-close{position:absolute;right:12px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#f0ece5;font-size:24px;cursor:pointer}.cn-modal textarea{width:100%;box-sizing:border-box;font-family:Consolas,Monaco,monospace;font-size:13px}.cn-preview-modal{width:min(980px,100%)}.cn-preview-summary,.cn-lead{font-size:17px;line-height:1.55;color:#5a5146;margin:8px 0 18px}.cn-news-view h1{font-size:clamp(25px,3vw,38px);line-height:1.15;margin:8px 0 10px}.cn-news-content{font-size:16px;line-height:1.72;overflow-wrap:anywhere}.cn-news-content h2{font-size:24px;margin:28px 0 10px}.cn-news-content h3{font-size:20px;margin:24px 0 9px}.cn-news-content h4{font-size:17px;margin:20px 0 8px}.cn-news-content blockquote{margin:20px 0;padding:13px 16px;border-left:4px solid #8b6a3f;background:#f8f5ef}.cn-news-content img{max-width:100%;height:auto;border-radius:12px}.cn-news-content figure{margin:22px 0}.cn-news-content figcaption{color:#776f64;font-size:12px;margin-top:6px}.cn-hero-photo{max-height:560px;object-fit:contain;background:#f4f1ec}.cn-news-labels,.cn-card-labels{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:7px}.cn-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:850;letter-spacing:.03em}.cn-badge.important{background:#fde8e7;color:#9f1e16}.cn-badge.pinned{background:#efe8ff;color:#63439a}.cn-badge.draft{background:#ece9e4;color:#625b52}.cn-badge.scheduled{background:#e7f0ff;color:#285d9a}.cn-badge.read{background:#e8f6eb;color:#23753b}.cn-public-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px}.cn-public-gallery figure{margin:0}.cn-public-gallery img{width:100%;height:auto;border-radius:12px;display:block}.cn-public-gallery figcaption{font-size:12px;color:#776f64;margin-top:6px}.cn-attachments{border-top:1px solid #eee7dc;margin-top:24px;padding-top:16px}.cn-attachments a{display:flex;justify-content:space-between;gap:12px;text-decoration:none;border:1px solid #e4ded2;border-radius:10px;padding:10px 12px;margin:7px 0;background:#fff;color:#40372c}.cn-attachments small{color:#7a7166}.cn-ack-box{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:22px;border:1px solid #e0c68a;background:#fffaf0;border-radius:14px;padding:15px}.cn-ack-box div,.cn-ack-box.done{display:flex;flex-direction:column;gap:3px}.cn-ack-box.done{border-color:#a8d7b4;background:#f1faf3;color:#226d37}.cn-stats{margin-top:22px;border-top:1px solid #eee7dc;padding-top:16px}.cn-stat-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.cn-read-detail{display:none;margin-top:12px;border:1px solid #e5ded3;border-radius:12px;overflow:hidden}.cn-read-detail.open{display:block}.cn-read-row{display:flex;justify-content:space-between;gap:16px;padding:9px 11px;border-bottom:1px solid #eee8df;font-size:12px}.cn-read-row:last-child{border-bottom:0}.ok-text{color:#24733b}.danger-text{color:#a62b22}.cn-history{margin-top:20px;border-top:1px solid #eee7dc;padding-top:14px}.cn-history summary{cursor:pointer;font-weight:700}.cn-history>div{display:grid;grid-template-columns:125px 150px 1fr;gap:10px;padding:7px 0;border-bottom:1px solid #f0ece6;font-size:12px}.cn-list-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.cn-filter-panel{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,.35fr));gap:8px;margin-bottom:10px;position:sticky;top:0;z-index:2}.cn-filter-panel input,.cn-filter-panel select{margin:0}.cn-news-scroll{max-height:650px;overflow-y:auto;padding-right:5px;overscroll-behavior:contain;scrollbar-gutter:stable}.cn-card-title{font-size:17px;font-weight:750}.news-card.read,.news-card:not(.unread):not(.draft):not(.scheduled){border-color:#b7d9bf;background:#f4faf5}.news-card.read:hover,.news-card:not(.unread):not(.draft):not(.scheduled):hover{border-color:#8dc79a}.news-card.pinned{box-shadow:inset 0 0 0 1px rgba(99,67,154,.12)}.news-card.draft{background:#faf9f7;border-style:dashed}.news-card.scheduled{background:#f5f8fd;border-color:#cbdcf3}.news-card .news-thumb{max-height:180px;object-fit:cover}.cn-card-labels{margin-bottom:5px}
@media(max-width:800px){.cn-grid-2,.cn-settings-grid{grid-template-columns:1fr}.cn-filter-panel{grid-template-columns:1fr 1fr}.cn-filter-panel input{grid-column:1/-1}.cn-news-scroll{max-height:calc(100vh - 260px);min-height:420px}.cn-read-row{flex-direction:column;gap:3px}.cn-history>div{grid-template-columns:1fr;gap:2px}.cn-file-row{align-items:flex-start;flex-direction:column}.cn-news-view h1{font-size:25px}.cn-news-content{font-size:15px}.cn-news-content h2{font-size:21px}.cn-public-gallery{grid-template-columns:1fr}.cn-modal{padding:8px}.cn-modal-card{padding:18px 13px}.cn-toolbar{margin-left:-1px;margin-right:-1px}}
@media(max-width:480px){.cn-filter-panel{grid-template-columns:1fr}.cn-filter-panel input{grid-column:auto}.cn-news-scroll{max-height:calc(100vh - 230px);min-height:390px}.cn-form-actions .btn,.cn-manage-actions .btn,.cn-manage-actions form{width:100%}.cn-manage-actions form .btn{width:100%}.cn-media-grid{grid-template-columns:1fr 1fr}.cn-attachments a{flex-direction:column;gap:3px}}
.cn-max-status{margin-top:10px;border:1px solid #cfe3d4;background:#f3faf4;color:#356343;border-radius:9px;padding:8px 10px;font-size:12px}.cn-filter-panel{grid-template-columns:minmax(220px,1.3fr) repeat(5,minmax(130px,.45fr))}.cn-filter-panel input[type=date]{min-width:135px}
@media(max-width:1100px){.cn-filter-panel{grid-template-columns:repeat(3,1fr)}.cn-filter-panel input[type=search]{grid-column:1/-1}}
@media(max-width:800px){.cn-filter-panel{grid-template-columns:1fr 1fr}.cn-filter-panel input[type=search]{grid-column:1/-1}}
@media(max-width:480px){.cn-filter-panel{grid-template-columns:1fr}.cn-filter-panel input[type=search]{grid-column:auto}}


/* Ключевой инструмент менеджера: визуальный проектировщик.
   Выделение намеренно спокойное, чтобы сохранить общий стиль CRM. */
.admin-sidebar nav a.sidebar-key-tool {
    margin: 5px 10px;
    padding-left: 15px;
    padding-right: 12px;
    border: 1px solid rgba(255,255,255,0.16);
    border-left: 3px solid rgba(255,255,255,0.42);
    border-radius: 9px;
    background: rgba(255,255,255,0.055);
    opacity: 0.96;
    font-weight: 700;
}
.admin-sidebar nav a.sidebar-key-tool:hover {
    background: rgba(255,255,255,0.10);
    border-color: rgba(255,255,255,0.24);
    border-left-color: var(--color-accent);
}
.admin-sidebar nav a.sidebar-key-tool.active {
    background: rgba(255,255,255,0.13);
    border-color: rgba(255,255,255,0.22);
    border-left-color: var(--color-accent);
}


/* Карточка товара кухни: расчёт конкретной модели.
   Внешняя ширина строго совпадает с остальными .card-box внутри .container.narrow.
   Для шкафов позже будет отдельный CTA. */
.item-kitchen-calc{
  width:100%;
  margin:0 0 20px;
  transform:none;
  padding:0;
}
.item-kitchen-calc .lp-calc-card{
  margin:0;
  width:100%;
  grid-template-columns:180px minmax(0,1fr);
  gap:18px;
  padding:18px;
}
.item-kitchen-calc .lp-calc-photo{display:block!important}
.item-kitchen-calc .lp-calc-photo img{min-height:0;height:100%;max-height:none;object-fit:cover}
.item-kitchen-calc .lp-calc-main{min-width:0;padding:4px 0}
.item-kitchen-calc .lp-calc-main h2{text-align:left;font-size:24px;line-height:1.16;margin-bottom:8px}
.item-kitchen-calc .lp-calc-main>p{text-align:left}
.item-kitchen-calc .lp-calc-points{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:4px 2px 0;
}
.item-kitchen-calc .lp-calc-points div{gap:8px}
.item-kitchen-calc .lp-calc-points b{font-size:21px;width:26px}
.item-kitchen-calc .lp-calc-points strong{font-size:11px}
.item-kitchen-calc .lp-calc-points span{font-size:10px}
@media(max-width:640px){
  .item-kitchen-calc .lp-calc-card{grid-template-columns:1fr;padding:16px}
  .item-kitchen-calc .lp-calc-photo{display:block!important}
  .item-kitchen-calc .lp-calc-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
  .item-kitchen-calc .lp-calc-points{grid-template-columns:1fr}
  .item-kitchen-calc .lp-calc-main h2{font-size:22px}
}


/* ===== Умная страница статьи: кратко, чек-лист, рекомендации, проекты ===== */
.public-news-quick{margin:26px 0 30px;padding:22px 24px;border:1px solid rgba(138,99,0,.16);border-radius:16px;background:linear-gradient(135deg,#fffaf0,#fff);box-shadow:0 4px 18px rgba(55,45,30,.05)}
.public-news-quick-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.public-news-quick-head>span,.public-news-section-kicker{display:inline-flex;align-items:center;width:max-content;border-radius:999px;background:#fff0c7;color:#8a6300;padding:5px 9px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.public-news-quick-head>strong{font-size:17px}
.public-news-quick ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}
.public-news-quick li{position:relative;padding-left:24px;line-height:1.5;color:#433c34}
.public-news-quick li:before{content:"✓";position:absolute;left:0;top:0;color:#4d7a39;font-weight:900}
.public-news-checklist{margin:38px 0;padding:26px;border-radius:18px;background:#fff;box-shadow:0 5px 22px rgba(55,45,30,.08);border:1px solid rgba(78,69,55,.08)}
.public-news-checklist h2,.public-news-related h2,.public-news-products h2{font-size:24px;text-align:left;margin:8px 0 18px}
.public-news-checklist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.public-news-check-item{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border-radius:12px;background:#faf9f6}
.public-news-check-item>span{flex:0 0 23px;width:23px;height:23px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e8f1e4;color:#3f7033;font-weight:900;font-size:13px}
.public-news-check-item p{margin:1px 0 0;line-height:1.45;font-size:14px;color:#433c34}
.public-news-related,.public-news-products{margin-top:48px}
.public-news-related-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:17px}
.public-news-related-head h2{margin-bottom:0}
.public-news-related-head>a{font-size:13px;text-decoration:none;color:#6c5b2d;font-weight:700;white-space:nowrap}
.public-news-related-grid,.public-news-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.public-news-related-card,.public-news-product-card{min-width:0;background:#fff;border:1px solid rgba(70,60,45,.08);border-radius:15px;overflow:hidden;box-shadow:0 4px 18px rgba(55,45,30,.07);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.public-news-related-card:hover,.public-news-product-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(55,45,30,.11)}
.public-news-related-media,.public-news-product-media{display:block;aspect-ratio:4/3;background:#e9e5dd;overflow:hidden;position:relative}
.public-news-related-media img,.public-news-product-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.public-news-related-card:hover .public-news-related-media img,.public-news-product-card:hover .public-news-product-media img{transform:scale(1.025)}
.public-news-related-media>span,.public-news-product-media>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#948c80;font-size:12px}
.public-news-related-body{padding:14px 14px 15px;display:flex;flex-direction:column;flex:1}
.public-news-related-body h3{font-size:16px;line-height:1.35;margin:8px 0}
.public-news-related-body h3 a{text-decoration:none;color:inherit}
.public-news-related-body p{font-size:12px;line-height:1.45;color:#665e54;margin:0 0 12px}
.public-news-related-meta{margin-top:auto;display:flex;justify-content:space-between;gap:8px;color:#8a8175;font-size:10px}
.public-news-product-body{padding:14px 15px 16px}
.public-news-product-segment{font-size:11px;color:#7b7165;margin-bottom:6px}
.public-news-product-body h3{font-size:16px;line-height:1.3;margin:0 0 8px}
.public-news-product-body strong{font-size:15px;color:#8a6300}
.public-news-trust{margin-top:34px;padding-top:18px;border-top:1px solid rgba(70,60,45,.12);display:flex;flex-wrap:wrap;gap:8px 18px;color:#7a7167;font-size:12px}
.public-news-trust strong{color:#3c352e}
@media(max-width:760px){
  .public-news-checklist-grid{grid-template-columns:1fr}
  .public-news-related-grid,.public-news-product-grid{grid-template-columns:1fr}
  .public-news-related-head{align-items:flex-start;flex-direction:column;gap:7px}
  .public-news-related-card,.public-news-product-card{display:grid;grid-template-columns:120px minmax(0,1fr)}
  .public-news-related-media,.public-news-product-media{aspect-ratio:auto;height:100%;min-height:126px}
}
@media(max-width:480px){
  .public-news-quick,.public-news-checklist{padding:18px}
  .public-news-related-card,.public-news-product-card{grid-template-columns:105px minmax(0,1fr)}
  .public-news-related-body,.public-news-product-body{padding:11px}
  .public-news-related-body p{display:none}
}


/* ===== Главная страница 2026: премиальная витрина ===== */
.home-v2{background:#f7f4ef}.home-v2 section{padding:0}.home-hero{min-height:420px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}.home-hero-inner{max-width:1240px;width:100%}.home-hero-copy{max-width:590px;padding:55px 0}.home-eyebrow,.home-section-head>div>span,.home-cta span{display:block;color:#d2a02e;font-size:12px;font-weight:850;letter-spacing:.09em;margin-bottom:10px}.home-hero h1{font-size:48px;line-height:1.05;margin:0 0 18px;letter-spacing:-.02em}.home-hero p{font-size:17px;line-height:1.55;max-width:560px;color:rgba(255,255,255,.9);margin:0 0 24px}.home-hero-actions{display:flex;gap:13px}.home-btn-ghost{background:rgba(35,29,23,.32);border:1px solid rgba(218,170,60,.55);box-shadow:none}.home-hero-points{display:grid;grid-template-columns:1fr 1fr 1fr 1.45fr;gap:10px;margin-top:28px;width:700px;max-width:calc(100vw - 44px)}.home-hero-points span{font-size:11px;border-top:1px solid rgba(255,255,255,.2);padding-top:10px;color:#eee}.home-hero-points .home-since{white-space:nowrap}.home-fast-benefits{position:relative;margin-top:-1px;background:#fff}.home-fast-grid{max-width:1180px;display:grid;grid-template-columns:repeat(4,1fr);padding:15px 20px}.home-fast-grid>div{padding:5px 22px;border-right:1px solid #e8e0d5}.home-fast-grid>div:last-child{border:0}.home-fast-grid b{display:block;font-size:13px;margin-bottom:4px}.home-fast-grid span{display:block;color:#81776d;font-size:11px;line-height:1.35}
.home-section{padding:42px 0!important}.home-section:nth-of-type(even){background:#fff}.home-section .container{max-width:1180px}.home-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.home-section-head h2{text-align:left;font-size:26px;margin:0}.home-section-head p{margin:5px 0 0;color:#756d64;font-size:13px}.home-section-head>a{color:#9b6d0a;text-decoration:none;font-size:12px;font-weight:750}
.home-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-product-card{background:#fff;border-radius:13px;overflow:hidden;text-decoration:none;box-shadow:0 5px 18px rgba(42,34,25,.07);border:1px solid rgba(71,57,42,.06);transition:.2s}.home-product-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(42,34,25,.12)}.home-product-photo{aspect-ratio:4/3;height:auto;background:#ded9d2 center/cover no-repeat;position:relative}.home-product-body{padding:12px 14px 14px}.home-product-body strong{display:block;font-size:15px;margin:7px 0 5px}.home-product-body small{color:#71695f}.home-new-badge{position:absolute;top:10px;left:10px}.home-product-card .fav-heart{top:9px;right:9px}
.home-why{background:#f2eee7!important}.home-feature-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.home-feature-grid>div{background:#fff;border:1px solid #e8e0d6;border-radius:12px;padding:16px 14px;min-height:150px}.home-feature-grid em{font-style:normal;color:#c79420;font-weight:900;font-size:12px}.home-feature-grid b{display:block;font-size:13px;margin:14px 0 6px}.home-feature-grid p{font-size:11px;color:#7a7167;line-height:1.45;margin:0}
.home-process{background:#fff!important}.home-process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}.home-process-grid>div{position:relative;padding-right:8px}.home-process-grid>div:not(:last-child):after{content:"";position:absolute;right:-12px;top:17px;width:26px;border-top:1px dashed #d2aa52}.home-process-grid i{display:flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:#c99317;color:#fff;font-style:normal;font-weight:850}.home-process-grid b{display:block;font-size:13px;margin:9px 0 5px}.home-process-grid p{font-size:11px;line-height:1.45;color:#7a7167;margin:0}
.home-materials{background:#f7f4ef!important}.home-material-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.mat{border-radius:11px;overflow:hidden;background:#fff;border:1px solid #e0d7cb;box-shadow:0 4px 14px rgba(42,34,25,.05)}.home-material-photo{aspect-ratio:4/3;background:#ece8e1;overflow:hidden}.home-material-photo img{width:100%;height:100%;object-fit:cover;display:block}.home-material-photo.split{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ddd}.home-material-copy{padding:12px 13px 13px}.mat b{display:block;font-size:12px;margin-bottom:4px}.mat span{font-size:10px;line-height:1.35;color:#776f66}
.home-projects{background:#fff!important}.home-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-project-card{background:#fff;border:1px solid #eee5d9;border-radius:13px;overflow:hidden;text-decoration:none}.home-project-card>div{aspect-ratio:4/3;height:auto;background:#ddd center/cover no-repeat}.home-project-card strong,.home-project-card span{display:block;padding:0 14px}.home-project-card strong{font-size:14px;padding-top:12px}.home-project-card span{font-size:11px;color:#81786e;padding-top:4px;padding-bottom:14px}
.home-news{background:#f7f4ef!important}.home-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-news-card{background:#fff;border-radius:13px;border:1px solid #eadfce;overflow:hidden}.home-news-media{display:block;aspect-ratio:4/3;height:auto;background:#ddd}.home-news-media img{width:100%;height:100%;object-fit:cover}.home-news-card>div{padding:14px}.home-news-card>div>span{color:#bb8511;font-weight:850;font-size:10px}.home-news-card h3{font-size:15px;line-height:1.35;margin:7px 0}.home-news-card h3 a{text-decoration:none}.home-news-card p{font-size:11px;line-height:1.5;color:#71685e}.home-news-card small{font-size:10px;color:#91877b}.home-recent{background:#fff!important}.home-product-grid.compact{grid-template-columns:repeat(3,1fr)}
.home-cta{background:linear-gradient(90deg,#29221c,#3b3128);color:#fff;padding:34px 0!important}.home-cta-inner{max-width:1180px;display:flex;align-items:center;justify-content:space-between;gap:30px}.home-cta h2{text-align:left;font-size:27px;margin:0 0 7px}.home-cta p{margin:0;color:#d7d0c9;font-size:13px}
footer.site-footer{background:#1f1b17;color:#ddd;text-align:left;padding:38px 0 18px}.footer-grid{max-width:1180px;display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:40px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid b{color:#fff;font-size:13px;margin-bottom:3px}.footer-grid a,.footer-grid span{font-size:11px;color:#bcb4aa;text-decoration:none}.footer-brand img{width:115px}.footer-brand p{font-size:11px;line-height:1.5;color:#aaa197;max-width:260px}.footer-bottom{max-width:1180px;margin-top:26px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}.footer-bottom>*{font-size:10px;color:#8f877f!important;text-decoration:none}
@media(max-width:1000px){.home-feature-grid,.home-material-grid{grid-template-columns:repeat(3,1fr)}.home-hero h1{font-size:42px}.home-fast-grid{grid-template-columns:repeat(2,1fr)}.home-fast-grid>div:nth-child(2){border-right:0}.home-process-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.site-header .logo span{font-size:15px}.home-hero{min-height:500px;background-position:64% center}.home-hero-copy{padding:45px 0}.home-hero h1{font-size:37px}.home-hero p{font-size:15px}.home-hero-points{grid-template-columns:repeat(2,1fr);width:100%;max-width:100%}.home-hero-points .home-since{white-space:normal}.home-fast-grid,.home-product-grid,.home-feature-grid,.home-process-grid,.home-material-grid,.home-project-grid,.home-news-grid,.home-product-grid.compact,.footer-grid{grid-template-columns:1fr}.home-fast-grid>div{border-right:0;border-bottom:1px solid #eee5d9;padding:12px 4px}.home-section{padding:34px 0!important}.home-section-head{align-items:flex-start}.home-section-head h2{font-size:23px}.home-section-head>a{display:none}.home-product-photo,.home-project-card>div,.home-news-media{height:auto;aspect-ratio:4/3}.home-process-grid>div:after{display:none}.home-feature-grid>div{min-height:auto}.home-cta-inner{align-items:flex-start;flex-direction:column}.home-cta h2{font-size:24px}.footer-grid{gap:24px}}


/* ===== Общий калькулятор мебели на главной ===== */
html{scroll-behavior:smooth}
.home-calc-section{background:linear-gradient(120deg,#211c17 0%,#332a22 58%,#46382b 100%);color:#fff;padding:54px 0!important;position:relative;overflow:hidden}
.home-calc-section:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-170px;top:-260px;background:radial-gradient(circle,rgba(210,160,46,.18),rgba(210,160,46,0) 68%);pointer-events:none}
.home-calc-shell{max-width:1180px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:48px;align-items:center;position:relative;z-index:1}
.home-calc-eyebrow{display:block;color:#d2a02e;font-size:12px;font-weight:850;letter-spacing:.09em;margin-bottom:10px}
.home-calc-intro h2{text-align:left;font-size:34px;line-height:1.12;margin:0 0 14px;letter-spacing:-.02em}
.home-calc-intro>p{max-width:520px;color:#ded7cf;font-size:15px;line-height:1.6;margin:0 0 25px}
.home-calc-steps{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-calc-steps>div{position:relative;padding:14px 13px 14px 48px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055);border-radius:12px;min-height:76px}
.home-calc-steps i{position:absolute;left:13px;top:15px;width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#c89118;color:#fff;font-style:normal;font-size:11px;font-weight:900}
.home-calc-steps b{display:block;font-size:12px;margin-bottom:4px}.home-calc-steps small{display:block;color:#bfb6ac;font-size:10px;line-height:1.35}
.home-calc-note{margin-top:17px;padding:12px 14px;border-left:2px solid #c99522;background:rgba(0,0,0,.14);color:#cfc7be;font-size:11px;line-height:1.5}
.home-calc-card{background:#fff;color:#29241f;border-radius:18px;padding:25px;box-shadow:0 22px 60px rgba(0,0,0,.23)}
.home-calc-card-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:18px}.home-calc-card-head strong{font-size:19px}.home-calc-card-head span{color:#8b8177;font-size:10px;text-align:right}
.home-calc-form{display:grid;gap:12px}.home-calc-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.home-calc-form label>span{display:block;font-size:11px;font-weight:750;color:#4d453d;margin-bottom:5px}
.home-calc-form input[type=text],.home-calc-form input[type=tel],.home-calc-form select,.home-calc-form textarea{width:100%;border:1px solid #ded7ce;background:#fbfaf8;border-radius:10px;padding:11px 12px;font:inherit;font-size:12px;color:#2f2924;outline:none;transition:border-color .15s,box-shadow .15s}.home-calc-form textarea{resize:vertical;min-height:78px}.home-calc-form input:focus,.home-calc-form select:focus,.home-calc-form textarea:focus{border-color:#c99a2e;box-shadow:0 0 0 3px rgba(201,154,46,.12)}
.home-calc-file{border:1px dashed #d7cdbf;border-radius:10px;padding:11px 12px;background:#fcfaf6}.home-calc-file>span{margin:0 0 7px!important}.home-calc-file small{font-weight:400;color:#8b8177}.home-calc-file input{font-size:11px;max-width:100%}
.home-calc-consent{display:flex!important;align-items:flex-start;gap:8px}.home-calc-consent input{margin-top:2px;flex:0 0 auto}.home-calc-consent>span{font-weight:400!important;color:#776e65!important;font-size:10px!important;line-height:1.4;margin:0!important}.home-calc-consent a{color:#82600d}
.home-calc-submit{width:100%;text-align:center;margin-top:2px;padding:14px 18px}.home-calc-under{text-align:center;color:#958a7e;font-size:9px;line-height:1.4}.home-calc-alert{border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:11px}.home-calc-alert.error{background:#fff1ef;color:#9f2f22}.home-calc-alert.success{background:#eef8ef;color:#26713a}.home-calc-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:1000px){.home-calc-shell{grid-template-columns:1fr;gap:28px}.home-calc-intro>p{max-width:none}.home-calc-card{max-width:720px;width:100%;margin:auto}}
@media(max-width:700px){.home-calc-section{padding:38px 0!important}.home-calc-intro h2{font-size:28px}.home-calc-steps,.home-calc-grid.two{grid-template-columns:1fr}.home-calc-card{padding:18px}.home-calc-card-head{align-items:flex-start;flex-direction:column}.home-calc-card-head span{text-align:left}}


/* ==========================================================
   PRODUCT PAGE V3 — широкая информативная карточка проекта
   ========================================================== */
.product-v3{background:#f7f5f1;padding:24px 0 0}.product-v3 section{padding:0}.product-shell{max-width:1280px}.product-breadcrumbs{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 18px;font-size:12px;color:#7c746b}.product-breadcrumbs a{text-decoration:none;color:#5f584f}.product-hero-v3{display:grid;grid-template-columns:minmax(0,1.52fr) minmax(360px,.83fr);gap:30px;align-items:start}.product-gallery-v3{min-width:0}.product-main-photo-v3{position:relative;display:block;width:100%;aspect-ratio:4/3;padding:0;border:0;border-radius:16px;overflow:hidden;background:#e8e4de;cursor:zoom-in}.product-main-photo-v3 img{width:100%;height:100%;object-fit:cover}.product-photo-placeholder{display:grid;place-items:center;color:#948b82}.product-zoom-badge{position:absolute;right:14px;top:14px;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.94);display:grid;place-items:center;font-size:20px;box-shadow:0 4px 14px rgba(0,0,0,.1)}.product-thumbs-v3{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:10px}.product-thumb-v3{padding:0;border:2px solid transparent;background:#eee;aspect-ratio:1/1;border-radius:10px;overflow:hidden;cursor:pointer}.product-thumb-v3.active{border-color:#c68b11}.product-thumb-v3 img{width:100%;height:100%;object-fit:cover}.product-summary-v3{position:sticky;top:84px}.product-badges-v3{display:flex;gap:8px;margin-bottom:12px}.product-summary-v3 h1{font-size:34px;line-height:1.08;margin:0 0 10px;letter-spacing:-.025em}.product-summary-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:12px;color:#777067}.product-inline-fav{position:static!important;width:auto!important;height:auto!important;border:0!important;background:transparent!important;padding:4px 0!important;display:inline-flex!important;gap:7px;align-items:center;color:#6d665e;box-shadow:none!important}.product-inline-fav svg{fill:none;stroke:currentColor;stroke-width:1.7}.product-inline-fav.active svg{fill:#a92032;stroke:#a92032}.product-price-v3{font-size:25px;font-weight:900;color:#b37b09;margin:18px 0}.product-lead-v3{font-size:14px;line-height:1.65;color:#4b463f;margin:0}.product-trust-v3{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.product-trust-v3>div{border:1px solid #e5dfd6;background:#fff;border-radius:11px;padding:11px 12px}.product-trust-v3 b,.product-trust-v3 span{display:block}.product-trust-v3 b{font-size:12px}.product-trust-v3 span{font-size:10px;color:#7b746d;margin-top:3px}.product-primary-action{display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;border-radius:10px;background:linear-gradient(180deg,#43803e,#2f6b34);color:#fff;text-decoration:none;font-weight:850;font-size:14px;box-shadow:0 7px 17px rgba(47,107,52,.2)}.product-pdf-action{display:flex;gap:11px;align-items:center;margin-top:10px;padding:12px 14px;border:1px solid #ded7ce;border-radius:10px;background:#fff;text-decoration:none}.product-pdf-action .pdf-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #c9c1b8;border-radius:7px;font-size:9px;font-weight:900;color:#38322d}.product-pdf-action b,.product-pdf-action small{display:block}.product-pdf-action b{font-size:13px}.product-pdf-action small{font-size:10px;color:#81786f;margin-top:2px}.product-video-v3{margin-top:22px}.product-section-v3{margin-top:28px;padding:26px 28px 28px;background:#fff;border:1px solid #e8e2d9;border-radius:16px;box-shadow:0 4px 16px rgba(35,29,23,.035)}.product-section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 20px;padding:0}.product-section-title h2{font-size:21px;text-align:left;margin:0}.product-section-title>a{font-size:12px;color:#a8740b;text-decoration:none;font-weight:800}.product-section-title>span{font-size:11px;color:#847c73}.product-scope-grid-v3{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.product-scope-grid-v3>div{border:1px solid #ebe4da;border-radius:11px;padding:15px 12px;min-height:120px}.product-scope-grid-v3 i{display:block;color:#bd850f;font-size:22px;font-style:normal;margin-bottom:8px}.product-scope-grid-v3 b,.product-scope-grid-v3 span{display:block}.product-scope-grid-v3 b{font-size:12px}.product-scope-grid-v3 span{font-size:10px;line-height:1.4;color:#7d756c;margin-top:4px}.product-material-grid-v3{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.product-material-grid-v3 article{border:1px solid #e6dfd7;border-radius:11px;overflow:hidden;background:#fff}.product-material-img{aspect-ratio:4/3;background:#f2efea;overflow:hidden}.product-material-img img{width:100%;height:100%;object-fit:cover}.product-material-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;background:linear-gradient(145deg,#f6f3ee,#ece7df);color:#978d80}.product-material-placeholder span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;border:1px solid #d8d0c5;background:rgba(255,255,255,.65);font-size:23px}.product-material-placeholder b{font-size:11px;font-weight:750;color:#877d70}.product-material-grid-v3 article.is-placeholder{border-style:dashed}.product-material-grid-v3 h3{font-size:12px;margin:9px 10px 3px}.product-material-grid-v3 p{font-size:10px;line-height:1.4;color:#7c746c;margin:0 10px 11px}.product-info-grid-v3{display:grid;grid-template-columns:1.1fr .72fr .95fr;gap:18px;margin-top:26px;align-items:stretch}.product-info-card-v3,.product-help-card-v3,.product-calc-card-v3{background:#fff;border:1px solid #e8e2d9;border-radius:16px;padding:22px;box-shadow:0 4px 16px rgba(35,29,23,.035)}.product-info-grid-v3 h2{font-size:20px;text-align:left;margin:0 0 13px}.product-spec-table-v3{width:100%;border-collapse:collapse}.product-spec-table-v3 td{border-bottom:1px solid #ece7e0;padding:9px 4px;font-size:12px;vertical-align:top}.product-spec-table-v3 td:first-child{width:44%;color:#777067}.product-help-card-v3 p,.product-calc-card-v3>p{font-size:11px;line-height:1.5;color:#746d65;margin:0 0 14px}.product-help-card-v3 ul{padding:0;margin:0 0 17px;list-style:none}.product-help-card-v3 li{font-size:11px;margin:8px 0;padding-left:18px;position:relative}.product-help-card-v3 li:before{content:'✓';position:absolute;left:0;color:#2f7537;font-weight:900}.max-outline-action{display:flex;align-items:center;gap:9px;text-decoration:none;border:1px solid #d9d4cd;border-radius:10px;padding:11px 12px;font-size:11px;font-weight:800;margin-top:9px}.max-outline-action span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:linear-gradient(145deg,#5470ff,#7257ef);color:#fff}.max-outline-action.secondary span{background:linear-gradient(145deg,#34a4ff,#5657ec)}.product-calc-form-v3{display:grid;gap:9px}.product-calc-form-v3 label>span{display:block;font-size:10px;font-weight:700;margin-bottom:4px}.product-calc-form-v3 input,.product-calc-form-v3 select,.product-calc-form-v3 textarea{width:100%;border:1px solid #ddd7cf;border-radius:8px;padding:10px 11px;font:inherit;font-size:11px;background:#fff}.product-file-v3{border:1px dashed #d9d1c7;border-radius:9px;padding:10px}.product-file-v3 input{border:0;padding:0}.product-consent-v3{display:flex!important;gap:8px;align-items:flex-start}.product-consent-v3 input{width:auto!important;margin-top:2px}.product-consent-v3>span{font-size:9px!important;font-weight:400!important;line-height:1.4}.product-submit-v3{border:0;border-radius:9px;background:linear-gradient(180deg,#43803e,#2f6b34);color:#fff;padding:12px 15px;font-weight:850;cursor:pointer}.product-calc-note-v3{font-size:9px;color:#8b837a;text-align:center}.product-hp-field{position:absolute!important;left:-9999px!important}.product-calc-alert{margin-bottom:9px;font-size:11px}.product-similar-grid-v3{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.product-similar-card-v3{display:block;text-decoration:none;border:1px solid #e5ded6;border-radius:12px;overflow:hidden;background:#fff}.product-similar-photo-v3{aspect-ratio:4/3;background:#eee}.product-similar-photo-v3 img{width:100%;height:100%;object-fit:cover}.product-similar-card-v3>div:last-child{padding:11px}.product-similar-card-v3 h3{font-size:13px;line-height:1.3;margin:7px 0}.product-similar-card-v3 b{font-size:12px;color:#b47d0a}.product-review-empty-v3{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;border:1px solid #eee7de;border-radius:12px;padding:16px}.review-empty-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f3eee7;font-size:24px}.product-review-empty-v3 b,.product-review-empty-v3 span{display:block}.product-review-empty-v3 b{font-size:13px}.product-review-empty-v3 span{font-size:10px;color:#7c746c;margin-top:3px}.product-review-grid-v3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.product-review-grid-v3 article{border:1px solid #ebe4dc;border-radius:12px;padding:14px;min-height:145px}.review-head-v3{display:flex;gap:9px;align-items:center}.review-avatar-v3{width:36px;height:36px;border-radius:50%;background:#d9d0c5;color:#443d36;display:grid;place-items:center;font-weight:900}.review-head-v3 b,.review-head-v3 small{display:block}.review-head-v3 b{font-size:12px}.review-head-v3 small{font-size:9px;color:#8c847b;margin-top:2px}.product-review-grid-v3 article p{font-size:11px;line-height:1.5;margin:12px 0 0}.review-add-card-v3{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.review-add-card-v3>span{font-size:10px;color:#7d756d}.muted-avatar{background:#f2eee8}.product-review-form-v3{display:none;grid-template-columns:1fr 2fr auto;gap:10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid #ece6de}.product-review-form-v3.open{display:grid}.product-review-form-v3 label>span{display:block;font-size:10px;margin-bottom:4px}.product-review-form-v3 input,.product-review-form-v3 textarea{width:100%;border:1px solid #dcd5cd;border-radius:8px;padding:9px;font:inherit}.product-review-form-v3 small{grid-column:1/-1;font-size:9px;color:#877f76}.product-not-found{padding:70px 0}.muted{color:#817970;font-size:12px}

/* Материалы в карточке товара — админка */
.catalog-material-admin-list{display:grid;gap:12px;margin-bottom:14px}.catalog-material-admin-row{display:grid;grid-template-columns:180px 1fr;gap:14px;padding:12px;border:1px solid var(--color-border);border-radius:12px;background:#faf9f6}.catalog-material-admin-preview{aspect-ratio:4/3;border-radius:9px;overflow:hidden;background:#eee;display:grid;place-items:center;color:#999}.catalog-material-admin-preview img{width:100%;height:100%;object-fit:cover}.catalog-material-admin-fields{display:grid;gap:9px;align-content:start}.catalog-material-admin-fields input[type=text],.catalog-material-admin-fields input[type=file]{width:100%}.catalog-material-delete{display:flex;align-items:center;gap:7px;font-size:12px;color:#9e2525}.catalog-material-delete input{width:auto!important}

/* Общий тёмный футер для всех страниц */
footer.site-footer{background:#1d1916;color:#ddd;text-align:left;padding:42px 0 18px;margin-top:44px}.footer-grid{max-width:1280px;grid-template-columns:1.55fr .85fr .9fr 1fr}.footer-brand img{width:115px;height:auto}.footer-brand p{max-width:310px}.footer-socials{display:flex!important;flex-direction:row!important;gap:9px!important;margin-top:6px}.footer-socials a,.footer-socials span{width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid!important;place-items:center!important;color:#fff!important;font-weight:800;font-size:10px!important}.footer-contacts .footer-phone{color:#fff;font-size:16px;font-weight:850}.footer-bottom{max-width:1280px}

@media(max-width:1050px){.product-hero-v3{grid-template-columns:1fr}.product-summary-v3{position:static}.product-scope-grid-v3{grid-template-columns:repeat(3,1fr)}.product-info-grid-v3{grid-template-columns:1fr 1fr}.product-calc-card-v3{grid-column:1/-1}.product-similar-grid-v3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.product-v3{padding-top:14px}.product-shell{padding:0 14px}.product-breadcrumbs{font-size:10px}.product-summary-v3 h1{font-size:27px}.product-trust-v3{grid-template-columns:1fr 1fr}.product-thumbs-v3{grid-template-columns:repeat(4,1fr)}.product-section-v3,.product-info-card-v3,.product-help-card-v3,.product-calc-card-v3{padding:16px;border-radius:12px}.product-scope-grid-v3{grid-template-columns:repeat(2,1fr)}.product-info-grid-v3{grid-template-columns:1fr}.product-calc-card-v3{grid-column:auto}.product-similar-grid-v3{grid-template-columns:1fr 1fr}.product-review-grid-v3{grid-template-columns:1fr}.product-review-empty-v3{grid-template-columns:auto 1fr}.product-review-empty-v3 .btn{grid-column:1/-1}.product-review-form-v3,.product-review-form-v3.open{grid-template-columns:1fr}.product-review-form-v3 small{grid-column:auto}.catalog-material-admin-row{grid-template-columns:1fr}.catalog-material-admin-preview{max-width:280px}.footer-grid{grid-template-columns:1fr!important}.footer-socials{flex-direction:row!important}}

/* Product page: related items — always true 4:3, never flattened */
.product-similar-card-v3 .product-similar-photo-v3{
    width:100%;
    height:auto !important;
    aspect-ratio:4 / 3 !important;
    overflow:hidden;
    background:#eee9e2;
}
.product-similar-card-v3 .product-similar-photo-v3 img{
    display:block;
    width:100%;
    height:100% !important;
    aspect-ratio:auto;
    object-fit:cover;
    object-position:center;
}

/* Product page spacing refinement */
.product-section-v3 + .product-section-v3{margin-top:24px}.product-materials-section-v3{padding-bottom:28px}.product-section-v3 .product-scope-grid-v3,.product-section-v3 .product-material-grid-v3{margin:0}.product-info-grid-v3{margin-top:28px}.product-similar-section-v3{margin-top:28px}
@media(max-width:700px){.product-section-v3{padding:20px 18px 20px}.product-section-title{margin-bottom:16px}.product-material-grid-v3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-material-placeholder b{font-size:10px}}


/* =========================================================
   Product page — symmetric section spacing
   Important: .product-v3 section { padding:0 } exists earlier,
   so these selectors intentionally have higher specificity.
   ========================================================= */
.product-v3 .product-section-v3{
    margin-top:28px;
    padding:24px;
    background:#fff;
    border:1px solid #e8e2d9;
    border-radius:16px;
    box-shadow:0 4px 16px rgba(35,29,23,.035);
}

.product-v3 .product-section-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 20px;
    padding:0;
}

.product-v3 .product-section-title h2{
    margin:0;
    padding:0;
    text-align:left;
    line-height:1.2;
}

.product-v3 .product-scope-grid-v3,
.product-v3 .product-material-grid-v3,
.product-v3 .product-similar-grid-v3,
.product-v3 .product-review-grid-v3,
.product-v3 .product-review-empty-v3{
    margin:0;
}

.product-v3 .product-scope-grid-v3{
    gap:12px;
}

.product-v3 .product-scope-grid-v3 > div{
    padding:16px;
}

.product-v3 .product-material-grid-v3{
    gap:14px;
}

.product-v3 .product-material-grid-v3 article{
    min-width:0;
}

.product-v3 .product-material-grid-v3 h3{
    margin:11px 12px 4px;
}

.product-v3 .product-material-grid-v3 p{
    margin:0 12px 12px;
}

.product-v3 .product-similar-grid-v3{
    gap:14px;
}

.product-v3 .product-similar-card-v3 > div:last-child{
    padding:12px;
}

.product-v3 .product-review-empty-v3{
    padding:18px;
}

.product-v3 .product-review-grid-v3 article{
    padding:16px;
}

/* Keep the lower information cards on the same visual rhythm */
.product-v3 .product-info-grid-v3{
    margin-top:28px;
    gap:18px;
}

.product-v3 .product-info-card-v3,
.product-v3 .product-help-card-v3,
.product-v3 .product-calc-card-v3{
    padding:24px;
}

/* Mobile: same inset on every side, just smaller */
@media(max-width:700px){
    .product-v3 .product-section-v3{
        padding:18px;
        border-radius:12px;
    }
    .product-v3 .product-section-title{
        margin-bottom:16px;
    }
    .product-v3 .product-scope-grid-v3,
    .product-v3 .product-material-grid-v3,
    .product-v3 .product-similar-grid-v3{
        gap:10px;
    }
    .product-v3 .product-scope-grid-v3 > div{
        padding:14px;
    }
    .product-v3 .product-info-card-v3,
    .product-v3 .product-help-card-v3,
    .product-v3 .product-calc-card-v3{
        padding:18px;
    }
}


/* Product characteristics: first product photo fills unused space.
   Photo stays 4:3 and becomes smaller as more characteristics are added.
   With 7+ characteristics it is not rendered at all in item.php. */
.product-v3 .product-spec-card-v3{
    display:flex;
    flex-direction:column;
    min-height:0;
}

.product-v3 .product-spec-photo-v3{
    aspect-ratio:4/3;
    margin-top:auto;
    padding-top:18px;
    align-self:center;
}

.product-v3 .product-spec-photo-v3 img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:11px;
    border:1px solid #e8e1d8;
}

/* 0–2 характеристики: фото максимально крупное */
.product-v3 .product-spec-photo-v3.spec-photo-large{
    width:100%;
}

/* 3–4 характеристики: фото чуть меньше */
.product-v3 .product-spec-photo-v3.spec-photo-medium{
    width:82%;
}

/* 5–6 характеристик: компактное фото */
.product-v3 .product-spec-photo-v3.spec-photo-small{
    width:64%;
}

@media(max-width:1050px){
    .product-v3 .product-spec-photo-v3.spec-photo-large{width:min(100%,560px)}
    .product-v3 .product-spec-photo-v3.spec-photo-medium{width:min(88%,500px)}
    .product-v3 .product-spec-photo-v3.spec-photo-small{width:min(72%,420px)}
}

@media(max-width:700px){
    .product-v3 .product-spec-photo-v3{
        margin-top:16px;
        padding-top:0;
    }
    .product-v3 .product-spec-photo-v3.spec-photo-large,
    .product-v3 .product-spec-photo-v3.spec-photo-medium,
    .product-v3 .product-spec-photo-v3.spec-photo-small{
        width:100%;
    }
}


/* =========================================================
   Characteristics photo v2:
   - always spans the full inner width of the characteristics card;
   - takes the remaining card height when possible;
   - image itself is never distorted (object-fit: cover);
   - the visible photo area may compress vertically by max 40%
     compared with a normal 4:3 frame.
   ========================================================= */
.product-v3 .product-spec-card-v3{
    display:flex;
    flex-direction:column;
    min-height:0;
    container-type:inline-size;
}

.product-v3 .product-spec-card-v3 .product-spec-table-v3{
    flex:0 0 auto;
}

.product-v3 .product-spec-photo-v3,
.product-v3 .product-spec-photo-v3.spec-photo-large,
.product-v3 .product-spec-photo-v3.spec-photo-medium,
.product-v3 .product-spec-photo-v3.spec-photo-small{
    width:100%;
    align-self:stretch;
    flex:1 1 auto;
    margin-top:20px;
    padding-top:0;

    /* 4:3 height = 75% of width.
       40% max compression => minimum = 45% of width. */
    min-height:45cqi;
    max-height:75cqi;
    aspect-ratio:auto;
    overflow:hidden;
    border-radius:12px;
}

.product-v3 .product-spec-photo-v3 img{
    display:block;
    width:100%;
    height:100%;
    min-height:inherit;
    max-height:inherit;
    object-fit:cover;
    object-position:center;
    border-radius:12px;
    border:1px solid #e8e1d8;
}

/* Fallback for browsers without cqi support */
@supports not (height: 1cqi){
    .product-v3 .product-spec-photo-v3{
        min-height:190px;
        max-height:320px;
    }
}

@media(max-width:700px){
    .product-v3 .product-spec-card-v3{
        container-type:normal;
    }
    .product-v3 .product-spec-photo-v3,
    .product-v3 .product-spec-photo-v3.spec-photo-large,
    .product-v3 .product-spec-photo-v3.spec-photo-medium,
    .product-v3 .product-spec-photo-v3.spec-photo-small{
        width:100%;
        min-height:0;
        max-height:none;
        height:auto;
        aspect-ratio:4/3;
        margin-top:16px;
    }
    .product-v3 .product-spec-photo-v3 img{
        min-height:0;
        max-height:none;
        height:100%;
    }
}


/* Product page — richer MAX help card */
.product-v3 .product-help-card-v3{
    display:flex;
    flex-direction:column;
    min-height:0;
}

.product-v3 .product-help-customize-v3{
    margin-top:18px;
    padding-top:17px;
    border-top:1px solid #ece6de;
}

.product-v3 .product-help-customize-v3 h3{
    margin:0 0 11px;
    font-size:13px;
    line-height:1.3;
}

.product-v3 .product-help-options-v3{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}

.product-v3 .product-help-options-v3 > div{
    min-width:0;
    padding:11px 10px;
    border:1px solid #e8e1d8;
    border-radius:10px;
    background:#faf8f5;
}

.product-v3 .product-help-options-v3 i{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    margin-bottom:7px;
    border-radius:7px;
    background:#f3ead7;
    color:#ac780b;
    font-size:14px;
    font-style:normal;
    font-weight:900;
}

.product-v3 .product-help-options-v3 b,
.product-v3 .product-help-options-v3 span{
    display:block;
}

.product-v3 .product-help-options-v3 b{
    font-size:10px;
    line-height:1.3;
}

.product-v3 .product-help-options-v3 span{
    margin-top:3px;
    color:#817970;
    font-size:9px;
    line-height:1.35;
}

.product-v3 .product-help-max-note-v3{
    margin-top:14px;
    padding:12px;
    border-radius:10px;
    background:#f6f3ee;
    border:1px solid #ebe4da;
}

.product-v3 .product-help-max-note-v3 b,
.product-v3 .product-help-max-note-v3 span{
    display:block;
}

.product-v3 .product-help-max-note-v3 b{
    font-size:10px;
}

.product-v3 .product-help-max-note-v3 span{
    margin-top:4px;
    color:#776f66;
    font-size:9px;
    line-height:1.45;
}

.product-v3 .product-help-actions-v3{
    margin-top:12px;
}

.product-v3 .product-help-actions-v3 .max-outline-action{
    margin-top:8px;
}

.product-v3 .product-help-hours-v3{
    margin-top:auto;
    padding-top:14px;
    color:#8a8177;
    font-size:9px;
    text-align:center;
}

@media(max-width:1050px){
    .product-v3 .product-help-options-v3{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:700px){
    .product-v3 .product-help-options-v3{
        grid-template-columns:1fr 1fr;
    }
    .product-v3 .product-help-hours-v3{
        margin-top:14px;
    }
}


/* =========================================================
   Official uploaded social icons — VK / MAX / OK
   Keep source artwork square, never stretch or crop.
   ========================================================= */
.footer-socials a,
.footer-socials span{
    width:42px!important;
    height:42px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    padding:0!important;
    overflow:visible!important;
}

.footer-socials a{
    transition:transform .16s ease, opacity .16s ease;
}

.footer-socials a:hover{
    transform:translateY(-2px) scale(1.04);
}

.footer-socials a img,
.footer-socials span img{
    display:block;
    width:42px;
    height:42px;
    object-fit:contain;
}

.footer-socials span.is-disabled{
    opacity:.48;
}

.max-outline-action .max-action-icon{
    flex:0 0 30px;
    display:block;
    width:30px;
    height:30px;
    object-fit:contain;
}

/* Disable old artificial M badge when the new image is used. */
.max-outline-action:has(.max-action-icon) span{
    display:none;
}

@media(max-width:700px){
    .footer-socials a,
    .footer-socials span,
    .footer-socials a img,
    .footer-socials span img{
        width:40px!important;
        height:40px!important;
    }

    .max-outline-action .max-action-icon{
        width:29px;
        height:29px;
        flex-basis:29px;
    }
}


/* =========================================================
   Product card additions — 02.09.2026
   IMPORTANT: additions only. Existing product v3 blocks remain.
   ========================================================= */
.product-v3 .product-summary-v3{
    padding:20px;
    border:1px solid #e9e2d9;
    border-radius:16px;
    background:rgba(255,255,255,.84);
    box-shadow:0 7px 24px rgba(42,35,28,.045);
}
.product-v3 .product-fav-proof-v4{
    display:inline-flex;
    align-items:center;
    gap:6px;
    max-width:100%;
    margin-top:9px;
    padding:7px 10px;
    border-radius:999px;
    background:#fff1eb;
    color:#8d3d2a;
    font-size:10px;
    line-height:1.2;
}
.product-v3 .product-fav-proof-v4.is-hidden{display:none}
.product-v3 .product-fav-proof-v4 b{font-size:12px;color:#a34831}

.product-v3 .product-payment-v4{
    margin:18px 0 2px;
    padding:16px;
    border:1px solid #eadfce;
    border-radius:14px;
    background:linear-gradient(145deg,#fffaf3,#fbf2e8);
}
.product-v3 .product-payment-head-v4{display:flex;align-items:center;justify-content:space-between;gap:10px}
.product-v3 .product-payment-head-v4 b{font-size:13px}
.product-v3 .product-payment-head-v4>span{display:grid;place-items:center;width:20px;height:20px;border:1px solid #cfc6ba;border-radius:50%;color:#867d72;font-size:10px;cursor:help}
.product-v3 .product-payment-grid-v4{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:13px}
.product-v3 .product-payment-grid-v4>div+div{padding-left:14px;border-left:1px solid #e1d6c8}
.product-v3 .product-payment-grid-v4 small,.product-v3 .product-payment-grid-v4 strong{display:block}
.product-v3 .product-payment-grid-v4 small{font-size:9px;color:#746d65;line-height:1.35}
.product-v3 .product-payment-grid-v4 strong{margin-top:5px;font-size:18px;line-height:1.15;color:#28231f}
.product-v3 .product-payment-note-v4{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px;color:#746d65;font-size:9px}
.product-v3 .product-payment-note-v4 i{font-style:normal;color:#b7aa9b}

/* The two former top actions (calculate/PDF) are intentionally not rendered now. */

.product-v3 .product-ai-adapt-v4{
    display:grid;
    grid-template-columns:minmax(0,1.06fr) minmax(0,1fr) minmax(0,.94fr);
    gap:22px;
    align-items:center;
    width:100%;
    margin-top:28px;
    padding:26px 28px;
    border:1px solid #e5ddd2;
    border-radius:18px;
    background:linear-gradient(135deg,#fffdf9 0%,#faf4ec 55%,#f5faf4 100%);
    box-shadow:0 8px 26px rgba(40,32,25,.05);
}
.product-v3 .product-ai-intro-v4,
.product-v3 .product-ai-result-v4{min-width:0}
.product-v3 .product-ai-kicker-v4,
.product-v3 .product-ai-result-kicker-v4{display:block;margin-bottom:8px;color:#7d766e;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.product-v3 .product-ai-intro-v4 h2{margin:0;font-size:22px;line-height:1.18;text-align:left;letter-spacing:-.02em}
.product-v3 .product-ai-intro-v4>p{margin:10px 0 0;color:#6f675f;font-size:11px;line-height:1.55}
.product-v3 .product-ai-checklist-v4{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.product-v3 .product-ai-checklist-v4 li{position:relative;padding-left:24px;font-size:11px;color:#4e4842;line-height:1.35}
.product-v3 .product-ai-checklist-v4 li:before{content:'✓';position:absolute;left:0;top:0;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#d9f0dc;color:#25713a;font-size:10px;font-weight:900}
.product-v3 .product-ai-start-row-v4{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.product-v3 .product-ai-start-v4{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:0 16px;border-radius:10px;background:#262321;color:#fff;text-decoration:none;font-size:11px;font-weight:900;box-shadow:0 7px 18px rgba(32,29,26,.11)}
.product-v3 .product-ai-start-v4:hover{background:#171513}
.product-v3 .product-ai-start-v4 span{font-size:15px}
.product-v3 .product-ai-start-row-v4 small{color:#776f66;font-size:9px;white-space:nowrap}

/* The AI preview uses the same visual language as product imagery: 4:3, no distortion. */
.product-v3 .product-ai-visual-v4{
    position:relative;
    width:100%;
    aspect-ratio:4/3;
    min-height:0;
    border-radius:15px;
    overflow:hidden;
    background:#eee9e2;
    align-self:center;
}
.product-v3 .product-ai-visual-v4 img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) brightness(1.02)}
.product-v3 .product-ai-no-photo-v4{display:grid;place-items:center;width:100%;height:100%;color:#998f83}
.product-v3 .product-ai-visual-v4:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(37,31,27,.05));pointer-events:none}
.product-v3 .product-ai-size-mark-v4{position:absolute;z-index:2;padding:5px 8px;border-radius:7px;background:rgba(255,255,255,.93);box-shadow:0 3px 10px rgba(0,0,0,.08);color:#5c554d;font-size:8px;font-weight:850}
.product-v3 .product-ai-size-mark-v4.top{top:12px;left:50%;transform:translateX(-50%)}
.product-v3 .product-ai-size-mark-v4.bottom{left:14px;bottom:12px}

.product-v3 .product-ai-result-v4{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:100%;
    padding:20px;
    border:1px solid #dce8d8;
    border-radius:15px;
    background:rgba(248,253,247,.95);
}
.product-v3 .product-ai-result-v4 h3{margin:0 0 7px;font-size:16px;line-height:1.25}
.product-v3 .product-ai-result-v4>p{margin:0 0 17px;color:#665f57;font-size:10px;line-height:1.5}
.product-v3 .product-ai-result-v4>small{display:block;color:#746d64;font-size:9px}
.product-v3 .product-ai-price-v4{display:block;margin-top:5px;color:#277239;font-size:23px;line-height:1.12}
.product-v3 .product-ai-payment-v4{margin-top:8px;color:#5e685d;font-size:9px}
.product-v3 .product-ai-max-v4{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;margin-top:18px;padding:8px 13px;border:1px solid #d7d4e4;border-radius:11px;background:#fff;color:#24211f;text-decoration:none;font-size:11px;font-weight:900;box-shadow:0 5px 15px rgba(44,37,59,.05)}
.product-v3 .product-ai-max-v4 img{display:block;width:30px;height:30px;min-width:30px;object-fit:contain}
.product-v3 .product-ai-max-v4:hover{background:#f8f7ff;border-color:#c8c2ed}

.product-v3 .product-share-delivery-v4{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:24px;
    align-items:center;
    width:100%;
    margin-top:12px;
    padding:14px 18px;
    border:1px solid #e6dfd6;
    border-radius:14px;
    background:#fff;
    box-shadow:0 4px 14px rgba(35,29,23,.025);
}
.product-v3 .product-share-v4{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.product-v3 .product-share-v4>b{margin-right:4px;font-size:11px;white-space:nowrap}
.product-v3 .product-share-btn-v4{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 12px;border:1px solid #e0d9d1;border-radius:10px;background:#fff;color:#3e3934;text-decoration:none;font:inherit;font-size:10px;cursor:pointer}
.product-v3 .product-share-btn-v4:hover{background:#f8f5f1}
.product-v3 .product-delivery-v4{display:flex;align-items:center;gap:11px;min-width:0;padding-left:20px;border-left:1px solid #ece5dc}
.product-v3 .product-delivery-icon-v4{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #e1dbd3;border-radius:50%;font-size:18px}
.product-v3 .product-delivery-v4 b,.product-v3 .product-delivery-v4 p{display:block;margin:0}
.product-v3 .product-delivery-v4 b{font-size:11px}
.product-v3 .product-delivery-v4 p{margin-top:3px;color:#776f66;font-size:9px;line-height:1.45}

.product-v3 .product-info-grid-v3.product-ai-highlight-v4 .product-calc-card-v3{animation:productAiPulseV4 1.45s ease}
@keyframes productAiPulseV4{0%,100%{box-shadow:0 4px 16px rgba(35,29,23,.035)}45%{box-shadow:0 0 0 4px rgba(102,88,223,.16),0 12px 32px rgba(73,59,156,.12)}}

@media(max-width:1050px){
    .product-v3 .product-ai-adapt-v4{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
    .product-v3 .product-ai-result-v4{grid-column:1/-1;min-height:0}
    .product-v3 .product-share-delivery-v4{grid-template-columns:1fr}
    .product-v3 .product-delivery-v4{padding-left:0;padding-top:12px;border-left:0;border-top:1px solid #ece5dc}
}
@media(max-width:700px){
    .product-v3 .product-summary-v3{padding:16px;border-radius:13px}
    .product-v3 .product-payment-grid-v4{grid-template-columns:1fr;gap:10px}
    .product-v3 .product-payment-grid-v4>div+div{padding-left:0;padding-top:10px;border-left:0;border-top:1px solid #e1d6c8}
    .product-v3 .product-payment-grid-v4 strong{font-size:16px}
    .product-v3 .product-ai-adapt-v4{grid-template-columns:1fr;gap:16px;padding:20px 18px;border-radius:14px}
    .product-v3 .product-ai-intro-v4 h2{font-size:20px}
    .product-v3 .product-ai-visual-v4{width:100%;aspect-ratio:4/3}
    .product-v3 .product-ai-result-v4{grid-column:auto;min-height:0}
    .product-v3 .product-ai-price-v4{font-size:21px}
    .product-v3 .product-share-delivery-v4{padding:14px}
    .product-v3 .product-share-v4>b{width:100%}
}


/* 2026-09-02: AI card cleanup — result/form blocks postponed. */
.product-v3 .product-ai-adapt-v4{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr) !important;
    gap:28px !important;
    align-items:center !important;
}
.product-v3 .product-ai-intro-v4,
.product-v3 .product-ai-visual-v4{
    min-width:0;
}
.product-v3 .product-ai-start-v4{
    border:0;
    cursor:pointer;
    font-family:inherit;
}
.product-v3 .product-ai-visual-v4{
    width:100%;
    aspect-ratio:4/3;
}
.product-v3 .product-info-grid-v3{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:22px !important;
    align-items:stretch !important;
}
.product-v3 .product-info-card-v3,
.product-v3 .product-help-card-v3{
    min-width:0;
    height:100%;
}
@media(max-width:900px){
    .product-v3 .product-ai-adapt-v4{
        grid-template-columns:1fr !important;
        gap:18px !important;
    }
    .product-v3 .product-info-grid-v3{
        grid-template-columns:1fr !important;
    }
}


/* 2026-09-02: AI adaptation block v5 — visual 4-step flow, no time promise. */
.product-v3 .product-ai-adapt-v5{
    display:grid;
    grid-template-columns:minmax(0,.84fr) minmax(0,1.56fr);
    gap:34px;
    align-items:center;
    width:100%;
    margin-top:28px;
    padding:34px 36px;
    border:1px solid #e6ded4;
    border-radius:20px;
    background:linear-gradient(135deg,#fffdf9 0%,#fbf7f1 54%,#f8fbf7 100%);
    box-shadow:0 9px 28px rgba(42,34,26,.045);
}
.product-v3 .product-ai-intro-v5,
.product-v3 .product-ai-process-v5{min-width:0}
.product-v3 .product-ai-kicker-v5{
    display:block;
    margin-bottom:12px;
    color:#85796e;
    font-size:10px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.product-v3 .product-ai-intro-v5 h2{
    max-width:560px;
    margin:0;
    font-size:25px;
    line-height:1.2;
    text-align:left;
    letter-spacing:-.025em;
}
.product-v3 .product-ai-intro-v5>p{
    max-width:560px;
    margin:14px 0 0;
    color:#6f675f;
    font-size:12px;
    line-height:1.65;
}
.product-v3 .product-ai-checklist-v5{
    display:grid;
    gap:10px;
    margin:22px 0 0;
    padding:0;
    list-style:none;
}
.product-v3 .product-ai-checklist-v5 li{
    position:relative;
    padding-left:28px;
    color:#4d4842;
    font-size:12px;
    line-height:1.35;
}
.product-v3 .product-ai-checklist-v5 li:before{
    content:'✓';
    position:absolute;
    left:0;
    top:-1px;
    display:grid;
    place-items:center;
    width:19px;
    height:19px;
    border-radius:50%;
    background:#dff2e2;
    color:#238445;
    font-size:11px;
    font-weight:900;
}
.product-v3 .product-ai-start-row-v5{margin-top:26px}
.product-v3 .product-ai-start-v5{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    padding:0 22px;
    border:0;
    border-radius:12px;
    background:#252220;
    color:#fff;
    font-family:inherit;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(32,29,26,.12);
}
.product-v3 .product-ai-start-v5:hover{background:#151311}
.product-v3 .product-ai-start-spark-v5{font-size:17px}

.product-v3 .product-ai-process-v5{
    padding-left:28px;
    border-left:1px solid rgba(220,211,201,.86);
}
.product-v3 .product-ai-process-v5>h3{
    margin:0 0 18px;
    font-size:18px;
    line-height:1.25;
    text-align:center;
    letter-spacing:-.01em;
}
.product-v3 .product-ai-steps-v5{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.product-v3 .product-ai-step-v5{
    position:relative;
    min-width:0;
    min-height:245px;
    padding:20px 18px 17px 54px;
    border:1px solid #e5ddd4;
    border-radius:15px;
    background:rgba(255,255,255,.78);
    box-shadow:0 4px 16px rgba(42,34,26,.025);
}
.product-v3 .product-ai-step-number-v5{
    position:absolute;
    left:18px;
    top:19px;
    display:grid;
    place-items:center;
    width:25px;
    height:25px;
    border-radius:50%;
    background:#54ad62;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.product-v3 .product-ai-step-copy-v5 h4{
    margin:0;
    font-size:13px;
    line-height:1.35;
}
.product-v3 .product-ai-step-copy-v5 p{
    margin:7px 0 0;
    color:#756d64;
    font-size:10px;
    line-height:1.5;
}

/* Step 1 */
.product-v3 .product-ai-upload-preview-v5{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:15px;
}
.product-v3 .product-ai-room-demo-v5,
.product-v3 .product-ai-reference-demo-v5{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-width:0;
    height:102px;
    padding:7px;
    overflow:hidden;
    border:1px dashed #d9d0c6;
    border-radius:10px;
    background:#f5f2ed;
}
.product-v3 .product-ai-room-demo-v5{
    background:linear-gradient(135deg,#f1eee8 0 62%,#ded8cf 62% 66%,#f8f6f2 66%);
}
.product-v3 .product-ai-room-window-v5{
    position:absolute;
    left:12px;
    top:12px;
    width:42px;
    height:52px;
    border:4px solid #fff;
    background:linear-gradient(#eef5f6,#dfe9eb);
    box-shadow:0 0 0 1px #cfc9c1;
}
.product-v3 .product-ai-reference-demo-v5 img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.9;
}
.product-v3 .product-ai-demo-kitchen-v5{
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,#6e6257,#2f2b28);
}
.product-v3 .product-ai-upload-icon-v5{
    position:absolute;
    right:8px;
    bottom:23px;
    z-index:2;
    display:grid;
    place-items:center;
    width:23px;
    height:23px;
    border-radius:50%;
    background:#fff;
    color:#3e9c55;
    font-size:15px;
    font-weight:900;
    box-shadow:0 2px 8px rgba(0,0,0,.09);
}
.product-v3 .product-ai-room-demo-v5 small,
.product-v3 .product-ai-reference-demo-v5 small{
    position:relative;
    z-index:2;
    display:block;
    overflow:hidden;
    color:#625b53;
    font-size:8px;
    font-weight:750;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.product-v3 .product-ai-reference-demo-v5 small{
    margin:-7px;
    padding:5px 7px;
    background:rgba(255,255,255,.88);
}

/* Step 2 */
.product-v3 .product-ai-measure-demo-v5{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:10px;
    align-items:center;
    margin-top:14px;
}
.product-v3 .product-ai-wall-sketch-v5{
    position:relative;
    height:100px;
    border-radius:9px;
    background:
        linear-gradient(30deg,transparent 48%,#c6c0b8 49% 51%,transparent 52%) 50% 58%/75% 48% no-repeat,
        linear-gradient(150deg,transparent 48%,#c6c0b8 49% 51%,transparent 52%) 50% 58%/75% 48% no-repeat,
        linear-gradient(#f8f6f2,#f8f6f2);
    box-shadow:inset 0 0 0 1px #e0dad2;
}
.product-v3 .product-ai-wall-sketch-v5:before{
    content:'';
    position:absolute;
    left:22%;
    top:24%;
    width:56%;
    height:52%;
    border-left:2px solid #9d968d;
    border-right:2px solid #9d968d;
    border-bottom:2px solid #9d968d;
}
.product-v3 .product-ai-wall-sketch-v5 .measure{
    position:absolute;
    color:#514c46;
    font-size:8px;
    font-weight:800;
}
.product-v3 .product-ai-wall-sketch-v5 .measure-top{left:43%;top:6%}
.product-v3 .product-ai-wall-sketch-v5 .measure-left{left:3%;top:46%}
.product-v3 .product-ai-wall-sketch-v5 .measure-right{right:2%;top:48%}
.product-v3 .product-ai-form-demo-v5{
    display:flex;
    flex-direction:column;
    gap:5px;
    min-width:0;
}
.product-v3 .product-ai-form-demo-v5 span{color:#7a7269;font-size:8px;line-height:1.25}
.product-v3 .product-ai-form-demo-v5 i{
    display:block;
    height:18px;
    border:1px solid #e1dad1;
    border-radius:6px;
    background:linear-gradient(90deg,#f1ede8 0 70%,transparent 70%);
}

/* Step 3 */
.product-v3 .product-ai-processing-demo-v5{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    margin-top:19px;
}
.product-v3 .product-ai-brain-v5{
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    border:2px solid #58ad67;
    border-radius:50%;
    background:#f3fbf4;
    color:#46a158;
    font-size:27px;
}
.product-v3 .product-ai-processing-dots-v5{display:flex;gap:5px}
.product-v3 .product-ai-processing-dots-v5 i{
    width:5px;
    height:5px;
    border-radius:50%;
    background:#8ba08e;
}
.product-v3 .product-ai-result-thumb-v5{
    width:92px;
    aspect-ratio:4/3;
    overflow:hidden;
    border:7px solid #fff;
    border-radius:9px;
    background:#efeae4;
    box-shadow:0 0 0 1px #ded6cc,0 4px 12px rgba(0,0,0,.06);
}
.product-v3 .product-ai-result-thumb-v5 img{display:block;width:100%;height:100%;object-fit:cover}

/* Step 4 */
.product-v3 .product-ai-download-demo-v5{
    display:flex;
    justify-content:center;
    gap:14px;
    margin-top:17px;
}
.product-v3 .product-ai-file-v5{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    width:82px;
    height:98px;
    padding:10px;
    border:1px solid #ddd6ce;
    border-radius:9px;
    background:linear-gradient(135deg,#fff 0 78%,#eee8e1 78%);
    box-shadow:0 3px 10px rgba(0,0,0,.035);
}
.product-v3 .product-ai-file-v5 b{
    display:grid;
    place-items:center;
    position:absolute;
    right:-7px;
    bottom:27px;
    width:32px;
    height:24px;
    border-radius:7px;
    background:#51ad62;
    color:#fff;
    font-size:9px;
}
.product-v3 .product-ai-file-v5.price b{
    width:28px;
    height:28px;
    border-radius:50%;
    font-size:14px;
}
.product-v3 .product-ai-file-v5 span{color:#6f675f;font-size:8px;line-height:1.25}

@media(max-width:1100px){
    .product-v3 .product-ai-adapt-v5{
        grid-template-columns:1fr;
        gap:28px;
    }
    .product-v3 .product-ai-process-v5{
        padding-left:0;
        padding-top:25px;
        border-left:0;
        border-top:1px solid rgba(220,211,201,.86);
    }
}
@media(max-width:760px){
    .product-v3 .product-ai-adapt-v5{
        padding:22px 18px;
        border-radius:15px;
    }
    .product-v3 .product-ai-intro-v5 h2{font-size:21px}
    .product-v3 .product-ai-process-v5>h3{text-align:left;font-size:17px}
    .product-v3 .product-ai-steps-v5{grid-template-columns:1fr}
    .product-v3 .product-ai-step-v5{min-height:0}
}


/* 2026-09-02: share + delivery map block v5. Existing wording kept unchanged. */
.product-v3 .product-share-delivery-v5{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
    gap:18px;
    align-items:stretch;
    width:100%;
    margin-top:12px;
    padding:14px;
    border:1px solid #e6dfd6;
    border-radius:16px;
    background:#fff;
    box-shadow:0 4px 14px rgba(35,29,23,.025);
}
.product-v3 .product-share-delivery-content-v5{
    display:grid;
    gap:13px;
    min-width:0;
    align-content:center;
}
.product-v3 .product-share-v5{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
}
.product-v3 .product-share-v5>b{
    flex:0 0 auto;
    font-size:11px;
    white-space:nowrap;
}
.product-v3 .product-share-socials-v5{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    min-width:0;
}
.product-v3 .product-social-share-v5{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:36px;
    overflow:hidden;
    border:1px solid #e3ddd5;
    border-radius:10px;
    background:#faf9f7;
    text-decoration:none;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.product-v3 .product-social-share-v5:hover{
    transform:translateY(-1px);
    border-color:#d4cbc1;
    box-shadow:0 5px 13px rgba(44,36,28,.08);
}
.product-v3 .product-social-share-v5 img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.product-v3 .product-share-btn-v5{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:36px;
    padding:0 11px;
    border:1px solid #e0d9d1;
    border-radius:10px;
    background:#fff;
    color:#3e3934;
    text-decoration:none;
    font:inherit;
    font-size:10px;
    cursor:pointer;
    white-space:nowrap;
}
.product-v3 .product-share-btn-v5:hover{background:#f8f5f1}
.product-v3 .product-copy-btn-v5 img{
    display:block;
    width:21px;
    height:21px;
    object-fit:cover;
    border-radius:6px;
}
.product-v3 .product-delivery-v5{
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
    padding-top:12px;
    border-top:1px solid #ece5dc;
}
.product-v3 .product-delivery-icon-v5{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border:1px solid #e1dbd3;
    border-radius:50%;
    font-size:18px;
}
.product-v3 .product-delivery-v5 b,.product-v3 .product-delivery-v5 p{display:block;margin:0}
.product-v3 .product-delivery-v5 b{font-size:11px}
.product-v3 .product-delivery-v5 p{margin-top:3px;color:#776f66;font-size:9px;line-height:1.45}
.product-v3 .product-delivery-map-v5{
    position:relative;
    min-height:150px;
    overflow:hidden;
    border:1px solid #e1dbd3;
    border-radius:12px;
    background:#f2f0ec;
}
.product-v3 .product-delivery-map-v5 iframe{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
}
@media(max-width:1050px){
    .product-v3 .product-share-delivery-v5{grid-template-columns:1fr}
    .product-v3 .product-delivery-map-v5{min-height:220px}
}
@media(max-width:700px){
    .product-v3 .product-share-delivery-v5{padding:12px}
    .product-v3 .product-share-v5{align-items:flex-start;flex-direction:column;gap:9px}
    .product-v3 .product-share-socials-v5{width:100%}
    .product-v3 .product-social-share-v5{width:48px;height:34px}
    .product-v3 .product-share-btn-v5{min-height:34px;padding:0 9px}
    .product-v3 .product-delivery-map-v5{min-height:190px}
}


/* 2026-09-02: share + map block v6 — capsule icons without extra frames, map caption below map. */
.product-v3 .product-share-delivery-v6{
    display:grid;
    grid-template-columns:minmax(370px,.78fr) minmax(460px,1.22fr);
    gap:24px;
    align-items:stretch;
    width:100%;
    margin-top:14px;
    padding:22px;
    border:1px solid #e5ddd4;
    border-radius:19px;
    background:
        radial-gradient(circle at 8% 18%,rgba(255,247,236,.95),transparent 34%),
        linear-gradient(135deg,#fffdf9 0%,#ffffff 52%,#f8faf7 100%);
    box-shadow:0 10px 28px rgba(45,36,28,.045);
}
.product-v3 .product-share-panel-v6{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    padding:24px 26px;
    border:1px solid rgba(228,220,211,.86);
    border-radius:16px;
    background:rgba(255,255,255,.72);
}
.product-v3 .product-share-panel-v6>b{
    display:block;
    margin:0 0 18px;
    font-size:15px;
    line-height:1.25;
    letter-spacing:-.01em;
}
.product-v3 .product-share-socials-v6{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    min-width:0;
}
.product-v3 .product-social-share-v6{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    height:auto;
    margin:0;
    padding:0;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-decoration:none;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    transition:transform .18s ease,filter .18s ease;
}
.product-v3 .product-social-share-v6:hover{
    transform:translateY(-2px) scale(1.025);
    filter:drop-shadow(0 7px 9px rgba(27,31,44,.16));
}
.product-v3 .product-social-share-v6:focus-visible{
    outline:2px solid rgba(74,113,255,.45);
    outline-offset:4px;
    border-radius:18px;
}
.product-v3 .product-social-share-v6 img{
    display:block;
    width:auto;
    height:42px;
    max-width:96px;
    object-fit:contain;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.product-v3 .product-copy-btn-v6.is-copied{
    transform:translateY(-2px) scale(1.04);
    filter:drop-shadow(0 7px 10px rgba(39,117,73,.22));
}

.product-v3 .product-map-column-v6{
    display:grid;
    grid-template-rows:minmax(190px,1fr) auto;
    gap:12px;
    min-width:0;
}
.product-v3 .product-delivery-map-v6{
    position:relative;
    min-height:190px;
    overflow:hidden;
    border:1px solid #ddd6ce;
    border-radius:16px;
    background:#f0efec;
    box-shadow:0 5px 16px rgba(45,36,28,.045);
}
.product-v3 .product-delivery-map-v6 iframe{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
}
.product-v3 .product-delivery-caption-v6{
    display:flex;
    align-items:flex-start;
    gap:12px;
    min-width:0;
    padding:13px 15px;
    border:1px solid #e7e0d8;
    border-radius:14px;
    background:rgba(255,255,255,.84);
}
.product-v3 .product-delivery-icon-v6{
    display:grid;
    place-items:center;
    flex:0 0 36px;
    width:36px;
    height:36px;
    border:1px solid #e0d8cf;
    border-radius:50%;
    background:#fff;
    color:#3f3a35;
    font-size:17px;
}
.product-v3 .product-delivery-caption-v6 b,
.product-v3 .product-delivery-caption-v6 p{
    display:block;
    margin:0;
}
.product-v3 .product-delivery-caption-v6 b{
    font-size:12px;
    line-height:1.3;
}
.product-v3 .product-delivery-caption-v6 p{
    margin-top:4px;
    color:#756d64;
    font-size:10px;
    line-height:1.5;
}

@media(max-width:1100px){
    .product-v3 .product-share-delivery-v6{
        grid-template-columns:1fr;
    }
    .product-v3 .product-share-panel-v6{
        padding:20px 22px;
    }
    .product-v3 .product-map-column-v6{
        grid-template-rows:240px auto;
    }
}
@media(max-width:700px){
    .product-v3 .product-share-delivery-v6{
        gap:16px;
        padding:14px;
        border-radius:15px;
    }
    .product-v3 .product-share-panel-v6{
        padding:16px;
        border-radius:13px;
    }
    .product-v3 .product-share-panel-v6>b{
        margin-bottom:14px;
        font-size:14px;
    }
    .product-v3 .product-share-socials-v6{
        gap:9px;
    }
    .product-v3 .product-social-share-v6 img{
        height:35px;
        max-width:80px;
    }
    .product-v3 .product-map-column-v6{
        grid-template-rows:200px auto;
    }
    .product-v3 .product-delivery-caption-v6{
        padding:12px;
    }
}
@media(max-width:430px){
    .product-v3 .product-share-socials-v6{
        gap:8px;
    }
    .product-v3 .product-social-share-v6 img{
        height:32px;
        max-width:73px;
    }
}


/* 2026-09-02: share + map block v7 — symmetric premium layout, site font inherited. */
.product-v3 .product-share-delivery-v7{
    display:grid;
    grid-template-columns:minmax(360px,.72fr) minmax(560px,1.28fr);
    gap:24px;
    align-items:stretch;
    width:100%;
    margin-top:16px;
    padding:22px;
    border:1px solid #e6ded5;
    border-radius:20px;
    background:linear-gradient(135deg,#fffdf9 0%,#fbf8f3 45%,#f8faf7 100%);
    box-shadow:0 10px 30px rgba(43,35,28,.05);
    font-family:inherit;
}
.product-v3 .product-share-card-v7,
.product-v3 .product-map-card-v7{
    min-width:0;
    border:1px solid #e3dbd2;
    border-radius:18px;
    background:rgba(255,255,255,.8);
    box-shadow:0 5px 16px rgba(45,36,28,.035);
}
.product-v3 .product-share-card-v7{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:26px 28px 28px;
}
.product-v3 .product-share-heading-v7{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}
.product-v3 .product-share-heading-icon-v7{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    margin-bottom:10px;
    border:1px solid #dbc6a6;
    border-radius:50%;
    color:#b18b53;
    font-size:24px;
    line-height:1;
    background:#fffdf9;
}
.product-v3 .product-share-heading-v7 b{
    margin:0;
    font-family:inherit;
    font-size:21px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.02em;
    color:#2d2925;
}
.product-v3 .product-share-heading-line-v7{
    position:relative;
    display:block;
    width:72%;
    height:1px;
    margin-top:15px;
    background:linear-gradient(90deg,transparent,#d5b988 18%,#d5b988 82%,transparent);
}
.product-v3 .product-share-heading-line-v7:after{
    content:'✦';
    position:absolute;
    left:50%;
    top:50%;
    padding:0 8px;
    transform:translate(-50%,-50%);
    background:#fffdf9;
    color:#c69b5b;
    font-size:11px;
}
.product-v3 .product-share-grid-v7{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px 16px;
    align-items:center;
    justify-items:center;
    width:100%;
    max-width:430px;
    margin:26px auto 0;
}
.product-v3 .product-social-share-v7{
    grid-column:span 2;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-decoration:none;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    transition:transform .18s ease,filter .18s ease;
}
.product-v3 .product-social-share-bottom-left-v7{
    grid-column:2 / span 2;
}
.product-v3 .product-social-share-bottom-right-v7{
    grid-column:4 / span 2;
}
.product-v3 .product-social-share-v7:hover{
    transform:translateY(-2px) scale(1.025);
    filter:drop-shadow(0 7px 10px rgba(27,31,44,.16));
}
.product-v3 .product-social-share-v7:focus-visible{
    outline:2px solid rgba(91,118,255,.4);
    outline-offset:4px;
    border-radius:20px;
}
.product-v3 .product-social-share-v7 img{
    display:block;
    width:auto;
    height:46px;
    max-width:112px;
    object-fit:contain;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.product-v3 .product-copy-btn-v7.is-copied{
    transform:translateY(-2px) scale(1.04);
    filter:drop-shadow(0 7px 10px rgba(39,117,73,.22));
}

.product-v3 .product-map-card-v7{
    display:grid;
    grid-template-rows:minmax(235px,1fr) auto;
    gap:0;
    overflow:hidden;
}
.product-v3 .product-delivery-map-v7{
    position:relative;
    min-height:235px;
    overflow:hidden;
    background:#eff0ed;
}
.product-v3 .product-delivery-map-v7 iframe{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
}
.product-v3 .product-delivery-caption-v7{
    display:flex;
    align-items:center;
    gap:16px;
    min-width:0;
    padding:17px 20px;
    border-top:1px solid #e8e1d8;
    background:linear-gradient(180deg,#fff 0%,#fffdf9 100%);
}
.product-v3 .product-delivery-pin-v7{
    position:relative;
    display:grid;
    place-items:center;
    flex:0 0 48px;
    width:48px;
    height:48px;
    border:1px solid #ddc8a5;
    border-radius:50%;
    background:#fffaf2;
    color:#c3985f;
    font-size:0;
    box-shadow:0 3px 10px rgba(74,53,29,.06);
}
.product-v3 .product-delivery-pin-v7:before{
    content:'';
    width:14px;
    height:14px;
    border-radius:50% 50% 50% 0;
    background:#c79b61;
    transform:rotate(-45deg);
}
.product-v3 .product-delivery-pin-v7:after{
    content:'';
    position:absolute;
    left:50%;
    top:17px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#fffaf2;
    transform:translateX(-50%);
}
.product-v3 .product-delivery-caption-v7 b{
    display:block;
    margin:0;
    font-family:inherit;
    font-size:14px;
    line-height:1.3;
    font-weight:800;
    color:#2d2925;
}
.product-v3 .product-delivery-caption-v7 p{
    display:block;
    margin:5px 0 0;
    font-family:inherit;
    color:#756d64;
    font-size:11px;
    line-height:1.5;
}

@media(max-width:1120px){
    .product-v3 .product-share-delivery-v7{
        grid-template-columns:1fr;
    }
    .product-v3 .product-share-card-v7{
        padding:24px;
    }
    .product-v3 .product-share-grid-v7{
        max-width:470px;
    }
    .product-v3 .product-map-card-v7{
        grid-template-rows:260px auto;
    }
}
@media(max-width:700px){
    .product-v3 .product-share-delivery-v7{
        gap:16px;
        padding:14px;
        border-radius:15px;
    }
    .product-v3 .product-share-card-v7{
        padding:20px 16px 22px;
        border-radius:14px;
    }
    .product-v3 .product-share-heading-v7 b{
        font-size:18px;
    }
    .product-v3 .product-share-grid-v7{
        gap:12px 10px;
        max-width:360px;
        margin-top:22px;
    }
    .product-v3 .product-social-share-v7 img{
        height:38px;
        max-width:92px;
    }
    .product-v3 .product-map-card-v7{
        grid-template-rows:210px auto;
        border-radius:14px;
    }
    .product-v3 .product-delivery-caption-v7{
        align-items:flex-start;
        gap:12px;
        padding:14px;
    }
    .product-v3 .product-delivery-pin-v7{
        flex-basis:40px;
        width:40px;
        height:40px;
    }
}
@media(max-width:430px){
    .product-v3 .product-share-grid-v7{
        gap:10px 7px;
    }
    .product-v3 .product-social-share-v7 img{
        height:34px;
        max-width:80px;
    }
}


/* 2026-09-02: Help block v8 — one MAX action, slightly larger typography. */
.product-v3 .product-help-card-v3 > p{
    font-size:12px;
    line-height:1.58;
    margin-bottom:16px;
}
.product-v3 .product-help-card-v3 li{
    font-size:12px;
    line-height:1.4;
    margin:9px 0;
}
.product-v3 .product-help-customize-v3{
    margin-top:19px;
    padding-top:18px;
}
.product-v3 .product-help-customize-v3 h3{
    margin-bottom:12px;
    font-size:14px;
    line-height:1.3;
}
.product-v3 .product-help-options-v3{
    gap:10px;
}
.product-v3 .product-help-options-v3 > div{
    padding:12px 11px;
}
.product-v3 .product-help-options-v3 b{
    font-size:11px;
    line-height:1.32;
}
.product-v3 .product-help-options-v3 span{
    margin-top:4px;
    font-size:10px;
    line-height:1.4;
}
.product-v3 .product-help-max-note-v3{
    margin-top:15px;
    padding:13px;
}
.product-v3 .product-help-max-note-v3 b{
    font-size:11px;
}
.product-v3 .product-help-max-note-v3 span{
    margin-top:5px;
    font-size:10px;
    line-height:1.5;
}
.product-v3 .product-help-actions-v3{
    margin-top:14px;
}
.product-v3 .product-help-actions-v3 .max-outline-action{
    width:100%;
    min-height:54px;
    margin-top:0;
    padding:11px 14px;
    font-size:12px;
    line-height:1.3;
}
.product-v3 .product-help-actions-v3 .max-action-icon{
    flex:0 0 32px;
}
.product-v3 .product-help-hours-v3{
    padding-top:16px;
    font-size:10px;
    line-height:1.4;
}

@media(max-width:700px){
    .product-v3 .product-help-card-v3 > p,
    .product-v3 .product-help-card-v3 li{
        font-size:11.5px;
    }
    .product-v3 .product-help-customize-v3 h3{
        font-size:13.5px;
    }
}


/* 2026-09-02: homepage AI project archive recovery */
.home-project-archive-section{
    padding:24px 0 8px;
}
.home-project-archive-shell{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);
    gap:30px;
    align-items:center;
    padding:30px 32px;
    border:1px solid #e1d8cd;
    border-radius:20px;
    background:
        radial-gradient(circle at 10% 20%,rgba(247,231,204,.34),transparent 34%),
        linear-gradient(120deg,#fffdf9 0%,#f9f6f1 52%,#f5f8f4 100%);
    box-shadow:0 10px 30px rgba(44,35,27,.045);
}
.home-project-archive-copy>span{
    display:block;
    margin-bottom:7px;
    color:#9d7a44;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
}
.home-project-archive-copy h2{
    margin:0;
    font-size:29px;
    line-height:1.18;
}
.home-project-archive-copy p{
    max-width:680px;
    margin:11px 0 0;
    color:#6f675f;
    font-size:13px;
    line-height:1.6;
}
.home-project-archive-links{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
    margin-top:16px;
}
.home-project-archive-links a{
    color:#4f483f;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}
.home-project-archive-links a:hover{text-decoration:underline}
.home-project-archive-form{
    display:grid;
    grid-template-columns:1fr 135px auto;
    gap:10px;
    align-items:end;
    padding:16px;
    border:1px solid #e5ddd4;
    border-radius:15px;
    background:rgba(255,255,255,.82);
}
.home-project-archive-form label span{
    display:block;
    margin:0 0 6px;
    color:#6f675f;
    font-size:10px;
    font-weight:800;
}
.home-project-archive-form input{
    width:100%;
    height:45px;
    padding:0 12px;
    border:1px solid #dcd4ca;
    border-radius:9px;
    background:#fff;
    font:inherit;
    font-size:12px;
}
.home-project-archive-form .btn{
    min-height:45px;
    padding:0 16px;
    white-space:nowrap;
}
@media(max-width:1050px){
    .home-project-archive-shell{grid-template-columns:1fr}
}
@media(max-width:700px){
    .home-project-archive-section{padding-top:16px}
    .home-project-archive-shell{gap:20px;padding:22px 18px;border-radius:16px}
    .home-project-archive-copy h2{font-size:24px}
    .home-project-archive-form{grid-template-columns:1fr}
    .home-project-archive-form .btn{width:100%}
}


/* 2026-09-02: prominent home AI feature block */
.home-ai-feature-section{padding:28px 0 12px}
.home-ai-feature-shell{padding:30px 32px;border:1px solid #e2d7ca;border-radius:26px;background:linear-gradient(135deg,#fffefb 0%,#f7f4ee 58%,#f2f7f2 100%);box-shadow:0 14px 40px rgba(43,34,25,.055);position:relative;overflow:hidden}
.home-ai-feature-shell:before{content:"";position:absolute;right:-120px;top:-150px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(210,160,46,.12),rgba(210,160,46,0) 70%);pointer-events:none}
.home-ai-feature-top{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:24px;align-items:start;position:relative;z-index:1}
.home-ai-feature-kicker,.home-ai-feature-steps-head span,.home-ai-feature-search-kicker{display:block;color:#9d7a44;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px}
.home-ai-feature-copy h2{margin:0;font-size:38px;line-height:1.1;max-width:760px;letter-spacing:-.02em}
.home-ai-feature-copy p{margin:16px 0 0;max-width:760px;font-size:15px;line-height:1.7;color:#655d54}
.home-ai-feature-list{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;max-width:860px}
.home-ai-feature-list li{position:relative;padding-left:29px;font-size:13px;line-height:1.55;color:#3f382f}
.home-ai-feature-list li:before{content:"✓";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#dff0df;color:#3d7a48;font-size:12px;font-weight:900}
.home-ai-feature-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.home-ai-feature-search{padding:20px 20px 18px;border:1px solid #e4dbcf;border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 8px 20px rgba(42,34,26,.04)}
.home-ai-feature-search h3{margin:0;font-size:26px;line-height:1.12}
.home-ai-feature-search p{margin:12px 0 0;font-size:13px;line-height:1.6;color:#6c635a}
.home-ai-project-find-form{display:grid;grid-template-columns:1fr 128px;gap:10px;margin-top:18px}
.home-ai-project-find-form label:nth-child(4){grid-column:1/-1}
.home-ai-project-find-form label span{display:block;margin:0 0 6px;color:#6f675f;font-size:10px;font-weight:800}
.home-ai-project-find-form input{width:100%;height:46px;padding:0 14px;border:1px solid #ddd4ca;border-radius:10px;background:#fff;font:inherit;font-size:12px}
.home-ai-project-find-form .btn{grid-column:1/-1;min-height:46px;padding:0 16px}
.home-ai-feature-search-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px}
.home-ai-feature-search-links a{color:#4d463e;font-size:12px;font-weight:800;text-decoration:none}
.home-ai-feature-search-links a:hover{text-decoration:underline}
.home-ai-feature-steps{margin-top:26px;position:relative;z-index:1}
.home-ai-feature-steps-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}
.home-ai-feature-steps-head b{display:block;font-size:23px;line-height:1.2;color:#2b241e}
.home-ai-feature-steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-ai-step-card{min-height:265px;padding:18px;border:1px solid #e6ddd1;border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(39,31,24,.035);display:flex;flex-direction:column}
.home-ai-step-number{width:34px;height:34px;border-radius:50%;background:linear-gradient(180deg,#59b15d,#43934a);color:#fff;font-size:16px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 12px rgba(67,147,74,.22)}
.home-ai-step-card h4{margin:14px 0 0;font-size:18px;line-height:1.24}
.home-ai-step-card p{margin:10px 0 0;font-size:12px;line-height:1.6;color:#6e655d;flex:1}
.home-ai-step-visual{margin-top:16px;min-height:96px}
.home-ai-visual-upload{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-ai-upload-thumb{position:relative;height:110px;border:1px dashed #dbcdbc;border-radius:14px;background:linear-gradient(180deg,#fbf8f3,#f2eee7);overflow:hidden;padding:10px;display:flex;align-items:flex-end;justify-content:center}
.home-ai-upload-thumb i{position:absolute;left:12px;right:12px;top:12px;bottom:32px;border-radius:10px;background:linear-gradient(180deg,#ffffff,#ede8de);display:block}
.home-ai-upload-thumb.room i:before{content:"";position:absolute;left:20%;top:18%;width:32%;height:44%;border:4px solid #d7d1c9;border-bottom-width:8px;background:linear-gradient(180deg,#f5f6f8,#fefefe);border-radius:2px}
.home-ai-upload-thumb.idea i:before{content:"";position:absolute;left:14%;right:14%;bottom:18%;height:30%;background:linear-gradient(180deg,#584132,#8f6d58);border-radius:9px;box-shadow:0 -20px 0 0 #806551,0 -38px 0 0 #9a7a62}
.home-ai-upload-thumb small{position:relative;z-index:1;font-size:11px;font-weight:700;color:#4e463d}
.home-ai-visual-measure{display:grid;grid-template-columns:1fr 108px;gap:12px;align-items:center}
.home-ai-wall-scheme{position:relative;height:110px;border-radius:16px;background:linear-gradient(180deg,#fdfcf9,#f4f0e8);border:1px solid #ebdfd0}
.home-ai-wall-scheme:before,.home-ai-wall-scheme:after{content:"";position:absolute;background:#bfb4a6}
.home-ai-wall-scheme:before{left:24px;right:28px;top:28px;height:2px;transform:skewY(-14deg)}
.home-ai-wall-scheme:after{left:34px;bottom:24px;width:2px;top:32px}
.home-ai-wall-scheme .top,.home-ai-wall-scheme .left,.home-ai-wall-scheme .right{position:absolute;font-size:10px;font-weight:800;color:#564d43}
.home-ai-wall-scheme .top{left:44px;top:8px}.home-ai-wall-scheme .left{left:4px;top:42px}.home-ai-wall-scheme .right{right:6px;top:48px}
.home-ai-mini-form{display:grid;gap:10px}.home-ai-mini-form span{display:block;height:26px;border-radius:9px;background:linear-gradient(180deg,#fff,#f1eee7);border:1px solid #e5dbcf}
.home-ai-visual-process{display:flex;align-items:center;justify-content:center;gap:16px;height:110px;border-radius:16px;background:linear-gradient(180deg,#fbf9f5,#f5f1ea);border:1px solid #ece2d5}
.home-ai-loader{width:56px;height:56px;border-radius:50%;border:4px solid rgba(89,177,93,.16);border-top-color:#53a457;display:flex;align-items:center;justify-content:center}
.home-ai-loader i{display:block;width:30px;height:30px;border-radius:50%;border:3px solid rgba(89,177,93,.2);border-left-color:#53a457}
.home-ai-process-lines{display:grid;gap:8px;min-width:90px}.home-ai-process-lines span{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#dfe8de,#eff4ee)}
.home-ai-process-lines span:nth-child(1){width:94px}.home-ai-process-lines span:nth-child(2){width:68px}.home-ai-process-lines span:nth-child(3){width:82px}
.home-ai-visual-result{display:flex;align-items:flex-end;gap:12px;height:110px}
.home-ai-doc{width:92px;height:108px;border-radius:16px 16px 12px 12px;border:1px solid #e5dbcf;background:linear-gradient(180deg,#fff,#f4efe7);padding:12px 10px;display:flex;flex-direction:column;justify-content:space-between;position:relative}
.home-ai-doc:before{content:"";position:absolute;right:0;top:0;width:22px;height:22px;background:linear-gradient(135deg,transparent 49%,#ede4d7 50%);border-radius:0 12px 0 12px}
.home-ai-doc b{display:inline-flex;align-items:center;justify-content:center;width:36px;height:22px;border-radius:999px;background:#e5f4e4;color:#3e8942;font-size:11px;font-weight:900}.home-ai-doc.price b{background:#eef0db;color:#8e7a25}
.home-ai-doc small{font-size:11px;line-height:1.35;color:#534c43;font-weight:800}
@media(max-width:1180px){.home-ai-feature-top{grid-template-columns:1fr}.home-ai-feature-list{grid-template-columns:1fr 1fr}.home-ai-feature-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home-ai-feature-section{padding-top:18px}.home-ai-feature-shell{padding:22px 18px;border-radius:20px}.home-ai-feature-copy h2{font-size:29px}.home-ai-feature-list{grid-template-columns:1fr}.home-ai-project-find-form{grid-template-columns:1fr}.home-ai-feature-steps-head{display:block}.home-ai-feature-steps-head b{font-size:20px;margin-top:4px}.home-ai-feature-steps-grid{grid-template-columns:1fr}.home-ai-step-card{min-height:auto}}


/* 2026-09-02: Homepage AI showcase v5 */
.home-ai-showcase-section{
    padding:28px 0 16px!important;
    background:#f7f4ef;
}
.home-ai-showcase-shell{
    position:relative;
    overflow:hidden;
    width:100%;
    padding:26px;
    border:1px solid #dfcba8;
    border-radius:24px;
    background:
        radial-gradient(circle at 50% -5%,rgba(219,184,121,.11),transparent 27%),
        linear-gradient(180deg,#fffdfa 0%,#fbf8f3 100%);
    box-shadow:0 12px 34px rgba(44,35,27,.055);
}
.home-ai-showcase-heading{
    max-width:1040px;
    margin:0 auto 22px;
    text-align:center;
}
.home-ai-showcase-heading h2{
    margin:0;
    color:#22272d;
    font-size:32px;
    line-height:1.18;
    letter-spacing:-.025em;
}
.home-ai-showcase-subtitle{
    margin-top:7px;
    color:#6d6b69;
    font-size:19px;
    line-height:1.3;
}
.home-ai-showcase-how{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-top:12px;
    color:#504b45;
}
.home-ai-showcase-how span{
    display:block;
    width:44px;
    height:1px;
    background:#cda15b;
}
.home-ai-showcase-how b{
    font-size:12px;
    font-weight:800;
}

.home-ai-showcase-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.home-ai-showcase-card{
    position:relative;
    min-width:0;
    min-height:330px;
    padding:20px;
    border:1px solid #eadfd1;
    border-radius:18px;
    background:rgba(255,255,255,.94);
    box-shadow:0 5px 18px rgba(44,34,24,.035);
}
.home-ai-showcase-card-title{
    display:flex;
    align-items:flex-start;
    gap:10px;
}
.home-ai-showcase-card-title>span{
    display:grid;
    place-items:center;
    flex:0 0 30px;
    width:30px;
    height:30px;
    border-radius:50%;
    background:linear-gradient(180deg,#60b660,#43974d);
    color:#fff;
    font-size:14px;
    font-weight:900;
    box-shadow:0 5px 11px rgba(68,151,77,.20);
}
.home-ai-showcase-card-title h3{
    margin:2px 0 0;
    color:#25282b;
    font-size:16px;
    line-height:1.3;
}
.home-ai-showcase-card>p{
    margin:9px 0 0 40px;
    color:#746b62;
    font-size:11px;
    line-height:1.55;
}

/* Step 1 */
.home-ai-photo-pair{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:11px;
    margin-top:15px;
}
.home-ai-photo-tile{
    position:relative;
    height:170px;
    overflow:hidden;
    border:1px solid #e2d7ca;
    border-radius:13px;
    background:#f0ece6;
}
.home-ai-photo-tile img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.home-ai-photo-tile small{
    position:absolute;
    left:50%;
    bottom:8px;
    transform:translateX(-50%);
    padding:5px 9px;
    border-radius:999px;
    background:rgba(255,255,255,.91);
    color:#4f4943;
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
}
.home-ai-generated-kitchen-placeholder{
    display:block;
    width:100%;
    height:100%;
    background:
      linear-gradient(180deg,transparent 0 58%,rgba(255,255,255,.16) 58%),
      linear-gradient(90deg,#dac9b9 0 22%,#e9dfd5 22% 45%,#c9b39f 45% 65%,#ece4dc 65% 100%);
}
.home-ai-card-hint{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-top:9px;
    color:#776d62;
    font-size:9px;
}
.home-ai-card-hint i{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border:1px solid #e1cfae;
    border-radius:50%;
    color:#bf8b35;
    font-style:normal;
    font-weight:900;
}

/* Step 2 */
.home-ai-measure-layout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(180px,.95fr);
    gap:20px;
    align-items:center;
    margin-top:15px;
}
.home-ai-corner-scheme{
    position:relative;
    height:190px;
    border-radius:13px;
    background:
        linear-gradient(180deg,#fdfcf9,#f8f5ef);
}
.home-ai-corner-line{
    position:absolute;
    background:#85817c;
}
.home-ai-corner-line.horizontal{
    left:22%;
    top:35%;
    width:58%;
    height:3px;
}
.home-ai-corner-line.vertical{
    left:22%;
    top:35%;
    width:3px;
    height:44%;
}
.home-ai-corner-line.horizontal:after{
    content:'';
    position:absolute;
    right:0;
    top:0;
    width:3px;
    height:86px;
    background:#85817c;
}
.home-ai-corner-line.vertical:after{
    content:'';
    position:absolute;
    left:0;
    bottom:0;
    width:58%;
    height:3px;
    background:#85817c;
}
.home-ai-corner-scheme:before{
    content:'';
    position:absolute;
    left:21%;
    top:20%;
    width:60%;
    height:1px;
    background:#c7bba9;
}
.home-ai-corner-scheme:after{
    content:'';
    position:absolute;
    left:10%;
    top:34%;
    width:1px;
    height:46%;
    background:#c7bba9;
}
.home-ai-dim{
    position:absolute;
    color:#47423d;
    font-size:11px;
    font-weight:900;
}
.home-ai-dim-top{left:47%;top:11%}
.home-ai-dim-left{left:1%;top:55%;transform:rotate(-90deg)}
.home-ai-corner-label{
    position:absolute;
    color:#b3843c;
    font-size:10px;
    font-weight:800;
}
.home-ai-corner-label.one{left:36%;top:2%}
.home-ai-corner-label.two{left:0;top:26%}
.home-ai-measure-fields{
    display:grid;
    gap:8px;
}
.home-ai-measure-fields label>span{
    display:block;
    margin-bottom:4px;
    color:#4e4944;
    font-size:9px;
    font-weight:800;
}
.home-ai-measure-fields label>div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:38px;
    padding:0 11px;
    border:1px solid #ded5cb;
    border-radius:8px;
    background:#fff;
}
.home-ai-measure-fields label>div b{
    font-size:11px;
    font-weight:700;
}
.home-ai-measure-fields label>div small{
    color:#6d655e;
    font-size:10px;
}
.home-ai-measure-fields label.wishes>div{
    align-items:flex-start;
    min-height:73px;
    padding-top:9px;
}
.home-ai-measure-fields label.wishes b{
    color:#655d55;
    font-size:9px;
    line-height:1.45;
    font-weight:600;
}

/* Step 3 */
.home-ai-processing-visual{
    margin-top:15px;
}
.home-ai-processing-image{
    position:relative;
    height:182px;
    overflow:hidden;
    border:1px solid #e3d9cd;
    border-radius:13px;
    background:#f6f2ec;
}
.home-ai-processing-image>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.home-ai-processing-sketch{
    position:absolute;
    inset:0 48% 0 0;
    backdrop-filter:grayscale(1) brightness(1.28);
    -webkit-backdrop-filter:grayscale(1) brightness(1.28);
    background:
        repeating-linear-gradient(0deg,rgba(255,255,255,.58) 0 1px,transparent 1px 13px),
        repeating-linear-gradient(90deg,rgba(255,255,255,.48) 0 1px,transparent 1px 18px);
    border-right:1px dashed rgba(255,255,255,.75);
}
.home-ai-processing-color{
    position:absolute;
    top:0;
    bottom:0;
    left:43%;
    width:13%;
    background:linear-gradient(90deg,rgba(250,247,242,.88),rgba(255,255,255,0));
}
.home-ai-processing-bottom{
    display:grid;
    grid-template-columns:32px 1fr auto;
    gap:10px;
    align-items:center;
    margin-top:10px;
}
.home-ai-processing-spinner{
    position:relative;
    width:29px;
    height:29px;
    border-radius:50%;
    border:3px solid #e6e0d8;
    border-top-color:#58a75b;
}
.home-ai-processing-spinner i{
    position:absolute;
    inset:7px;
    border-radius:50%;
    border:2px solid #e1dbd3;
    border-left-color:#58a75b;
}
.home-ai-processing-progress{
    height:6px;
    overflow:hidden;
    border-radius:999px;
    background:#eee9e1;
}
.home-ai-processing-progress span{
    display:block;
    width:75%;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#d9b270,#64a966);
}
.home-ai-processing-bottom>b{
    color:#4d4944;
    font-size:11px;
}
.home-ai-processing-visual>small{
    display:block;
    margin-top:6px;
    color:#81776e;
    font-size:8.5px;
    text-align:center;
}

/* Step 4 */
.home-ai-result-layout{
    display:grid;
    grid-template-columns:1.12fr .88fr;
    gap:12px;
    align-items:stretch;
    margin-top:15px;
}
.home-ai-result-project-sheet,
.home-ai-result-price-sheet{
    min-height:200px;
    padding:12px;
    border:1px solid #e5dcd1;
    border-radius:12px;
    background:linear-gradient(180deg,#fff,#faf7f2);
    box-shadow:0 4px 12px rgba(40,31,22,.035);
}
.home-ai-result-project-sheet>b,
.home-ai-result-price-sheet>b{
    display:block;
    margin-bottom:8px;
    color:#39342f;
    font-size:10px;
    text-align:center;
}
.home-ai-result-project-photo{
    height:125px;
    overflow:hidden;
    border-radius:8px;
    background:#eee9e2;
}
.home-ai-result-project-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.home-ai-result-mini-schemes{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    margin-top:8px;
}
.home-ai-result-mini-schemes i{
    display:block;
    height:24px;
    border:1px solid #ddd4ca;
    background:
        linear-gradient(90deg,transparent 20%,#c8c0b8 21% 23%,transparent 24% 48%,#c8c0b8 49% 51%,transparent 52%);
}
.home-ai-price-line,
.home-ai-price-total{
    display:flex;
    justify-content:space-between;
    gap:8px;
    padding:5px 0;
    border-bottom:1px solid #eee8e0;
    color:#5f5750;
    font-size:8.5px;
}
.home-ai-price-line strong{
    color:#49423b;
    font-weight:700;
}
.home-ai-price-total{
    margin-top:10px;
    border:0;
    color:#38322d;
    font-weight:900;
}
.home-ai-price-total strong{
    color:#b38433;
    font-size:11px;
}

/* Bottom CTA */
.home-ai-showcase-bottom{
    display:grid;
    grid-template-columns:1fr auto;
    gap:18px;
    align-items:center;
    margin-top:16px;
    padding:14px 16px;
    border:1px solid #e7ddd0;
    border-radius:14px;
    background:rgba(255,255,255,.82);
}
.home-ai-showcase-checks{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
}
.home-ai-showcase-checks span{
    padding:0 13px;
    border-right:1px solid #e8e1d8;
    color:#4c4640;
    font-size:10px;
    font-weight:800;
    white-space:nowrap;
}
.home-ai-showcase-checks span:last-child{border-right:0}
.home-ai-main-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:50px;
    padding:0 22px;
    border-radius:11px;
    background:#2b2723;
    color:#fff;
    font-size:12px;
    font-weight:900;
    text-decoration:none;
    box-shadow:0 7px 15px rgba(32,27,22,.13);
}
.home-ai-main-button:hover{background:#171411}
.home-ai-main-button i{
    color:#e6bd72;
    font-style:normal;
}

/* Compact archive inside AI block */
.home-ai-archive-strip{
    display:grid;
    grid-template-columns:minmax(230px,.9fr) minmax(430px,1.2fr) auto;
    gap:16px;
    align-items:end;
    margin-top:12px;
    padding:14px 16px;
    border:1px solid #e7ded2;
    border-radius:14px;
    background:linear-gradient(90deg,#faf7f2,#fff 50%,#f6f9f5);
}
.home-ai-archive-strip-copy>span{
    display:block;
    color:#403a34;
    font-size:12px;
    font-weight:900;
}
.home-ai-archive-strip-copy p{
    margin:4px 0 0;
    color:#7b7269;
    font-size:9px;
    line-height:1.45;
}
.home-ai-archive-strip-form{
    display:grid;
    grid-template-columns:1fr 120px auto;
    gap:8px;
    align-items:end;
}
.home-ai-archive-strip-form label>span{
    display:block;
    margin-bottom:4px;
    color:#726960;
    font-size:8px;
    font-weight:800;
}
.home-ai-archive-strip-form input{
    width:100%;
    height:37px;
    padding:0 10px;
    border:1px solid #ddd5cb;
    border-radius:8px;
    background:#fff;
    font:inherit;
    font-size:9px;
}
.home-ai-archive-strip-form button{
    height:37px;
    padding:0 13px;
    border:0;
    border-radius:8px;
    background:#b88720;
    color:#fff;
    font-family:inherit;
    font-size:9px;
    font-weight:900;
    cursor:pointer;
}
.home-ai-archive-strip-links{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding-bottom:4px;
}
.home-ai-archive-strip-links a{
    color:#4c463f;
    font-size:9px;
    font-weight:850;
    text-decoration:none;
    white-space:nowrap;
}
.home-ai-archive-strip-links a:hover{text-decoration:underline}

@media(max-width:1120px){
    .home-ai-showcase-heading h2{font-size:29px}
    .home-ai-showcase-grid{grid-template-columns:1fr}
    .home-ai-showcase-card{min-height:0}
    .home-ai-showcase-bottom{grid-template-columns:1fr}
    .home-ai-showcase-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .home-ai-showcase-checks span{border-right:0;padding:0}
    .home-ai-main-button{width:100%}
    .home-ai-archive-strip{grid-template-columns:1fr}
    .home-ai-archive-strip-links{flex-direction:row;flex-wrap:wrap}
}
@media(max-width:700px){
    .home-ai-showcase-section{padding-top:18px!important}
    .home-ai-showcase-shell{padding:18px;border-radius:18px}
    .home-ai-showcase-heading h2{font-size:24px}
    .home-ai-showcase-subtitle{font-size:16px}
    .home-ai-showcase-card{padding:15px}
    .home-ai-showcase-card>p{margin-left:0}
    .home-ai-photo-pair{grid-template-columns:1fr}
    .home-ai-photo-tile{height:190px}
    .home-ai-measure-layout{grid-template-columns:1fr}
    .home-ai-result-layout{grid-template-columns:1fr}
    .home-ai-showcase-checks{grid-template-columns:1fr}
    .home-ai-archive-strip-form{grid-template-columns:1fr}
    .home-ai-archive-strip-form button{width:100%}
}


/* 2026-09-02: Homepage AI showcase v5.1 — wider and larger typography */
.home-v2 .home-ai-showcase-container{
    width:min(100% - 40px, 1380px);
    max-width:1380px;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
}
.home-v2 .home-ai-showcase-shell{
    width:100%;
    padding:34px 36px 30px;
}
.home-v2 .home-ai-showcase-heading{
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:28px;
}
.home-v2 .home-ai-showcase-heading h2{
    font-size:38px;
    line-height:1.16;
}
.home-v2 .home-ai-showcase-subtitle{
    margin-top:10px;
    font-size:22px;
    line-height:1.28;
}
.home-v2 .home-ai-showcase-how{
    margin-top:13px;
}
.home-v2 .home-ai-showcase-how b{
    font-size:13px;
}
.home-v2 .home-ai-showcase-grid{
    gap:20px;
}
.home-v2 .home-ai-showcase-card{
    min-height:365px;
    padding:24px;
}
.home-v2 .home-ai-showcase-card-title{
    gap:12px;
}
.home-v2 .home-ai-showcase-card-title>span{
    flex-basis:36px;
    width:36px;
    height:36px;
    font-size:16px;
}
.home-v2 .home-ai-showcase-card-title h3{
    margin-top:3px;
    font-size:19px;
    line-height:1.3;
}
.home-v2 .home-ai-showcase-card>p{
    margin-top:11px;
    margin-left:48px;
    font-size:13px;
    line-height:1.58;
}
.home-v2 .home-ai-photo-tile{
    height:205px;
}
.home-v2 .home-ai-photo-tile small{
    bottom:10px;
    padding:6px 11px;
    font-size:10px;
}
.home-v2 .home-ai-card-hint{
    margin-top:11px;
    font-size:10px;
}
.home-v2 .home-ai-measure-layout{
    grid-template-columns:minmax(0,1.12fr) minmax(210px,.88fr);
    gap:24px;
    margin-top:18px;
}
.home-v2 .home-ai-corner-scheme{
    height:220px;
}
.home-v2 .home-ai-dim{
    font-size:13px;
}
.home-v2 .home-ai-corner-label{
    font-size:11px;
}
.home-v2 .home-ai-measure-fields{
    gap:10px;
}
.home-v2 .home-ai-measure-fields label>span{
    margin-bottom:5px;
    font-size:10px;
}
.home-v2 .home-ai-measure-fields label>div{
    min-height:44px;
    padding:0 13px;
}
.home-v2 .home-ai-measure-fields label>div b{
    font-size:13px;
}
.home-v2 .home-ai-measure-fields label>div small{
    font-size:11px;
}
.home-v2 .home-ai-measure-fields label.wishes>div{
    min-height:86px;
    padding-top:11px;
}
.home-v2 .home-ai-measure-fields label.wishes b{
    font-size:10.5px;
}
.home-v2 .home-ai-processing-image{
    height:220px;
}
.home-v2 .home-ai-processing-bottom>b{
    font-size:13px;
}
.home-v2 .home-ai-processing-visual>small{
    margin-top:8px;
    font-size:10px;
}
.home-v2 .home-ai-result-project-sheet,
.home-v2 .home-ai-result-price-sheet{
    min-height:238px;
    padding:14px;
}
.home-v2 .home-ai-result-project-sheet>b,
.home-v2 .home-ai-result-price-sheet>b{
    margin-bottom:10px;
    font-size:11px;
}
.home-v2 .home-ai-result-project-photo{
    height:153px;
}
.home-v2 .home-ai-price-line,
.home-v2 .home-ai-price-total{
    padding:7px 0;
    font-size:10px;
}
.home-v2 .home-ai-price-total strong{
    font-size:13px;
}
.home-v2 .home-ai-showcase-bottom{
    gap:22px;
    margin-top:20px;
    padding:17px 20px;
}
.home-v2 .home-ai-showcase-checks span{
    padding:0 16px;
    font-size:11px;
}
.home-v2 .home-ai-main-button{
    min-height:54px;
    padding:0 26px;
    font-size:13px;
}
.home-v2 .home-ai-archive-strip{
    gap:20px;
    margin-top:14px;
    padding:17px 20px;
}
.home-v2 .home-ai-archive-strip-copy>span{
    font-size:13px;
}
.home-v2 .home-ai-archive-strip-copy p{
    margin-top:5px;
    font-size:10px;
}
.home-v2 .home-ai-archive-strip-form{
    grid-template-columns:minmax(180px,1fr) 135px auto;
    gap:10px;
}
.home-v2 .home-ai-archive-strip-form label>span{
    font-size:9px;
}
.home-v2 .home-ai-archive-strip-form input{
    height:41px;
    font-size:10px;
}
.home-v2 .home-ai-archive-strip-form button{
    height:41px;
    padding:0 16px;
    font-size:10px;
}
.home-v2 .home-ai-archive-strip-links a{
    font-size:10px;
}

@media(max-width:1180px){
    .home-v2 .home-ai-showcase-container{
        width:min(100% - 32px, 1180px);
    }
    .home-v2 .home-ai-showcase-shell{
        padding:28px;
    }
    .home-v2 .home-ai-showcase-heading h2{
        font-size:33px;
    }
    .home-v2 .home-ai-showcase-subtitle{
        font-size:20px;
    }
    .home-v2 .home-ai-showcase-card-title h3{
        font-size:18px;
    }
    .home-v2 .home-ai-showcase-card>p{
        font-size:12.5px;
    }
}
@media(max-width:700px){
    .home-v2 .home-ai-showcase-container{
        width:calc(100% - 24px);
    }
    .home-v2 .home-ai-showcase-shell{
        padding:18px;
    }
    .home-v2 .home-ai-showcase-heading h2{
        font-size:25px;
    }
    .home-v2 .home-ai-showcase-subtitle{
        font-size:17px;
    }
    .home-v2 .home-ai-showcase-card{
        padding:17px;
    }
    .home-v2 .home-ai-showcase-card-title h3{
        font-size:17px;
    }
    .home-v2 .home-ai-showcase-card>p{
        margin-left:0;
        font-size:12px;
    }
    .home-v2 .home-ai-photo-tile{
        height:190px;
    }
}


/* 2026-09-02: Homepage AI showcase v5.2 — exact symmetric wide alignment */
.home-v2 .home-ai-showcase-section{
    width:100%;
    overflow:visible;
}
.home-v2 .home-ai-showcase-container{
    box-sizing:border-box;
    width:calc(100% - 72px) !important;
    max-width:1520px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
}
.home-v2 .home-ai-showcase-shell{
    box-sizing:border-box;
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

/* On very wide monitors keep equal, comfortable page gutters. */
@media(min-width:1600px){
    .home-v2 .home-ai-showcase-container{
        width:calc(100% - 80px) !important;
        max-width:1520px !important;
    }
}

/* Tablet / notebook: equal 24px side gutters. */
@media(max-width:1180px){
    .home-v2 .home-ai-showcase-container{
        width:calc(100% - 48px) !important;
        max-width:none !important;
    }
}

/* Mobile: equal 12px side gutters. */
@media(max-width:700px){
    .home-v2 .home-ai-showcase-container{
        width:calc(100% - 24px) !important;
        max-width:none !important;
    }
}

/* 2026-09-03: AI showcase inside public articles.
   Reuses the homepage AI block, adapted only to the narrow article column. */
.public-news-ai-showcase{
    margin-top:44px;
    padding:0!important;
    background:transparent;
}
.public-news-ai-showcase .home-ai-showcase-grid{grid-template-columns:1fr}
.public-news-ai-showcase .home-ai-showcase-card{min-height:0}
.public-news-ai-showcase .home-ai-showcase-bottom{grid-template-columns:1fr}
.public-news-ai-showcase .home-ai-showcase-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.public-news-ai-showcase .home-ai-showcase-checks span{padding:0;border-right:0}
.public-news-ai-showcase .home-ai-main-button{width:100%}
.public-news-ai-showcase .home-ai-archive-strip{grid-template-columns:1fr}
.public-news-ai-showcase .home-ai-archive-strip-links{flex-direction:row;flex-wrap:wrap}
@media(max-width:700px){
    .public-news-ai-showcase{margin-top:34px}
    .public-news-ai-showcase .home-ai-showcase-checks{grid-template-columns:1fr}
}


/* 2026-09-03: inline photos inside public news articles.
   Preserve the original aspect ratio for real photos of any orientation. */
.public-news-content figure{
    margin:28px 0 30px;
    text-align:center;
}
.public-news-content figure img{
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    max-height:850px;
    object-fit:contain;
    margin:0 auto;
    border-radius:14px;
    background:#f3f1ed;
}
.public-news-content figcaption{
    margin-top:8px;
    font-size:12px;
    line-height:1.45;
    color:var(--color-text-muted);
    text-align:center;
}
@media(max-width:700px){
    .public-news-content figure{margin:22px 0 24px}
    .public-news-content figure img{max-height:72vh;border-radius:11px}
}

/* Дом под ключ — группа компаний. Декоративный бейдж, пока без ссылки. */
.home-hero-inner{position:relative}
.home-group-badge{
  position:absolute;
  right:0;
  bottom:34px;
  width:360px;
  max-width:31vw;
  z-index:3;
  pointer-events:none;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.28));
}
.home-group-badge img{display:block;width:100%;height:auto}
.footer-group-badge{
  width:240px;
  max-width:100%;
  margin:5px 0 2px;
  pointer-events:none;
}
.footer-group-badge img{display:block;width:100%;height:auto}

@media(max-width:1000px){
  .home-group-badge{width:300px;max-width:34vw;right:4px;bottom:26px}
}
@media(max-width:700px){
  .home-group-badge{
    position:static;
    width:310px;
    max-width:100%;
    margin:22px 0 4px;
  }
  .home-hero-inner{display:block}
  .footer-group-badge{width:225px}
}


/* ===== Дом под ключ: значок остаётся в футере как раньше ===== */
.home-group-badge{display:none!important}
.footer-group-badge{width:210px}
.footer-group-badge img{filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))}
@media(max-width:700px){.footer-group-badge{width:190px}}

/* ===== ШАПКА: единая система адаптива =====
   Раньше здесь было четыре независимых, не согласованных друг с другом набора
   правил для одних и тех же элементов (.header-cta, .header-dom-cta, .header-right,
   nav) с разными и перекрывающимися точками перелома (1240/1180/1120/1060/1000×3/
   700×3/520×2/430) — это и приводило к непредсказуемому наложению текста на разных
   мониторах. Теперь один набор правил, полностью описанный в начале файла
   (см. блок "Header" в самом верху assets/style.css) — здесь ничего для шапки
   больше нет.
