/* MKovrolin Theme v2 - main.css (loaded async) */

/* ===== Хлебные крошки ===== */
.rs-breadcrumbs{padding:14px 0;background:var(--c-surface);border-bottom:1px solid var(--c-border);font-size:13px;color:var(--c-muted)}
.rs-breadcrumbs__link{color:var(--c-link)}
.rs-breadcrumbs__current{color:var(--c-text);font-weight:600}
.rs-breadcrumbs__sep{margin:0 6px;color:var(--c-border)}

.rs-section-title{margin:0 0 12px;text-align:left;font-size:clamp(22px,2.6vw,30px)}
.rs-section-subtitle{color:var(--c-muted);max-width:680px;margin:0 0 28px}

/* ===== Категории плиткой ===== */
.rs-cattiles{padding:40px 0}
.rs-cattiles__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.rs-cattile{display:flex;flex-direction:column;align-items:center;padding:18px 12px;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
.rs-cattile:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,35,50,.08);border-color:var(--c-cta);text-decoration:none}
.rs-cattile img,.rs-cattile__placeholder{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;margin-bottom:10px}
.rs-cattile__placeholder{background:linear-gradient(135deg,#F1F5F9,#CBD5E1)}
.rs-cattile__name{margin:0;font-size:14px;font-weight:600;text-align:center;line-height:1.25;color:var(--c-text)}

/* ===== Полка с каруселью ===== */
.rs-shelf{padding:32px 0}
.rs-shelf--alt{background:#fff;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.rs-shelf--sale{padding-top:32px}
.rs-shelf--related{padding-top:32px}
.rs-shelf__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px;gap:16px;flex-wrap:wrap}
.rs-shelf__head h2{margin:0}
.rs-shelf__more{color:var(--c-link);font-weight:500;font-size:14px;flex-shrink:0}
.rs-shelf__viewport{position:relative}
.rs-shelf__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4*16px) / 5);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:8px;-webkit-overflow-scrolling:touch}
.rs-shelf__track::-webkit-scrollbar{height:6px}
.rs-shelf__track::-webkit-scrollbar-track{background:#F1F5F9;border-radius:3px}
.rs-shelf__track::-webkit-scrollbar-thumb{background:#CBD5E1;border-radius:3px}
.rs-shelf__track>*{scroll-snap-align:start}
.rs-shelf__arrow{position:absolute;top:42%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--c-border);color:var(--c-text);cursor:pointer;font-size:22px;line-height:1;box-shadow:0 4px 12px rgba(15,35,50,.1);z-index:10;display:flex;align-items:center;justify-content:center}
.rs-shelf__arrow:hover{background:var(--c-cta);color:#fff;border-color:var(--c-cta)}
.rs-shelf__arrow--prev{left:-12px}
.rs-shelf__arrow--next{right:-12px}

/* ===== Карточка товара ===== */
.rs-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;text-decoration:none;color:inherit;position:relative;list-style:none}
.rs-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,35,50,.08);border-color:var(--c-cta)}
.rs-card__media{display:block;position:relative;background:#F8FAFC;overflow:hidden}
.rs-card__media img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;transition:transform .25s}
.rs-card:hover .rs-card__media img{transform:scale(1.04)}
.rs-card__body{padding:14px;display:flex;flex-direction:column;flex:1;gap:8px}
.rs-card__title-link{text-decoration:none;color:inherit}
.rs-card__title{margin:0;font-family:var(--font-b);font-size:14px;font-weight:600;color:var(--c-text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.rs-card__title-link:hover .rs-card__title{color:var(--c-cta)}
.rs-card__price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.rs-card__price-now{font-family:var(--font-h);font-size:18px;font-weight:700;color:var(--c-text)}
.rs-card__price-old{color:var(--c-muted);text-decoration:line-through;font-size:13px}
.rs-card__sku{font-size:11px;color:var(--c-muted)}
.rs-card__cta{margin-top:auto}

.rs-badges{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:5px;z-index:2}
.rs-badge{display:inline-block;padding:3px 9px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#fff;line-height:1.4}
.rs-badge--sale{background:var(--c-cta)}
.rs-badge--hit{background:var(--c-warn);color:#1A1308}
.rs-badge--new{background:var(--c-new)}

/* ===== Опт-баннер ===== */
.rs-optbanner{padding:32px 0;background:linear-gradient(135deg,#1A2332,#0E1A29);color:#fff}
.rs-optbanner__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.rs-optbanner__text h2{color:#fff;margin:0 0 6px}
.rs-optbanner__text p{margin:0;color:#CBD5E1}

/* ===== Полоска цифр ===== */
.rs-strip{padding:28px 0;background:#fff;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.rs-strip__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;text-align:center}
.rs-strip__item strong{display:block;font-family:var(--font-h);font-size:24px;color:var(--c-cta);margin-bottom:4px}
.rs-strip__item span{display:block;color:var(--c-muted);font-size:13px}

/* ===== SEO-текст блок ===== */
.rs-seotext{padding:48px 0;background:#fff;border-top:1px solid var(--c-border)}
.rs-prose{max-width:880px;font-size:15px;color:var(--c-text);line-height:1.7}
.rs-prose h2{margin:0 0 .5em;font-size:22px}
.rs-prose h3{margin:1.5em 0 .4em;font-size:17px}
.rs-prose ul,.rs-prose ol{padding-left:22px;margin:0 0 1em}
.rs-prose li{margin-bottom:5px}
.rs-prose strong{color:var(--c-text)}

/* ===== Lead-форма ===== */
.rs-lead{padding:48px 0;background:linear-gradient(135deg,#F1F5F9,#E2E8F0)}
.rs-lead__title{text-align:center;margin:0 0 8px}
.rs-lead__desc{text-align:center;color:var(--c-muted);max-width:680px;margin:0 auto 24px}
.rs-lead__form{max-width:880px;margin:0 auto;background:#fff;padding:28px;border-radius:var(--r-lg);box-shadow:0 12px 32px rgba(15,35,50,.06)}
.rs-lead__fields{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:14px}
.rs-lead__field--full{grid-column:1/-1}
.rs-lead__field span{display:block;font-size:13px;color:var(--c-muted);margin-bottom:4px;font-weight:500}
.rs-lead__field input,.rs-lead__field textarea{width:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--r-sm);font-family:inherit;font-size:14px;color:var(--c-text);background:#fff;transition:border-color .15s}
.rs-lead__field input:focus,.rs-lead__field textarea:focus{outline:none;border-color:var(--c-cta)}
.rs-lead__field textarea{resize:vertical}
.rs-lead__consent{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--c-muted);margin-bottom:14px;line-height:1.5}
.rs-lead__consent input{margin-top:3px;flex-shrink:0}
.rs-lead__consent a{color:var(--c-link);text-decoration:underline}
.rs-lead__status{margin-top:12px;font-size:14px;font-weight:500}
.rs-lead__status.is-success{color:var(--c-success)}
.rs-lead__status.is-error{color:var(--c-cta)}

/* ===== Footer ===== */
.rs-footer{background:#0E1A29;color:#CBD5E1;padding:40px 0 0;margin-top:48px}
.rs-footer__inner{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:32px;padding-bottom:28px}
.rs-footer__heading{color:#fff;margin:0 0 12px;font-size:15px;text-transform:uppercase;letter-spacing:.04em}
.rs-footer__list{list-style:none;padding:0;margin:0}
.rs-footer__list li{margin-bottom:7px}
.rs-footer__list a{color:#94A3B8;text-decoration:none;font-size:14px}
.rs-footer__list a:hover{color:#fff}
.rs-footer__phone{display:block;color:#fff;text-decoration:none;font-family:var(--font-h);font-weight:700;font-size:18px;margin-bottom:2px}
.rs-footer__phone-2{display:block;color:#fff;text-decoration:none;font-size:15px;margin-bottom:8px}
.rs-footer__email{display:block;color:#94A3B8;margin-bottom:10px;font-size:14px}
.rs-footer__address,.rs-footer__hours{font-size:13px;color:#94A3B8;margin:0 0 6px;line-height:1.5}
.rs-footer__social{margin-top:12px;display:flex;gap:10px}
.rs-footer__social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#1E293B;border-radius:50%;color:#fff;transition:background .15s}
.rs-footer__social a:hover{background:var(--c-cta)}
.rs-footer__bottom{border-top:1px solid #1E293B;padding:16px 0;font-size:12px;color:#94A3B8}
.rs-footer__bottom-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px}
.rs-footer__bottom p{margin:0}

/* ===== Page / Single ===== */
.rs-page,.rs-single,.rs-archive{padding:32px 0}
.rs-page__title,.rs-single__title{margin:0 0 20px}

/* ===== 404 ===== */
.rs-404{padding:80px 0;text-align:center}

@media(max-width:1024px){
  .rs-cattiles__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rs-shelf__track{grid-auto-columns:calc((100% - 3*16px) / 4)}
  .rs-strip__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rs-footer__inner{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .rs-shelf__track{grid-auto-columns:calc((100% - 2*16px) / 3)}
  .rs-shelf__arrow{display:none}
}
@media(max-width:560px){
  .rs-cattiles__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rs-shelf__track{grid-auto-columns:calc((100% - 16px) / 2)}
  .rs-strip__grid{grid-template-columns:1fr}
  .rs-footer__inner{grid-template-columns:1fr;gap:24px}
  .rs-lead__fields{grid-template-columns:1fr}
  .rs-lead__form{padding:18px}
  .rs-card__title{font-size:13px}
  .rs-card__price-now{font-size:16px}
}

/* === MKOVROLIN typography & menu align-fix - 2026-05-01 === */
/* Цель: исправить слипшееся меню (WP nav_menu выводит .menu-item вместо .rs-menu__item),
   sidebar фильтров, SEO-блок, кнопки в карточке. Не ломаем существующее. */

/* === ШАПКА: МЕНЮ === */
/* Селекторы под РЕАЛЬНУЮ разметку wp_nav_menu (классы .menu-item, не .rs-menu__item) */
.rs-menu{background:#fff;border-top:1px solid var(--c-border)}
.rs-menu__inner{display:flex;align-items:center;min-height:52px;padding:0}
.rs-menu__list{
    list-style:none !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center;
    gap:0 2px;
    margin:0 !important;
    padding:0 !important;
    width:100%;
    white-space:nowrap;
}
@media (max-width:1100px){.rs-menu__list > li > a,.rs-menu__list > .menu-item > a{padding:14px 10px !important;font-size:13px !important;letter-spacing:0 !important}}
@media (max-width:900px){.rs-menu__list > li > a,.rs-menu__list > .menu-item > a{padding:14px 8px !important;font-size:12px !important}}
.rs-menu__list > li,
.rs-menu__list > .menu-item,
.rs-menu__list > .rs-menu__item{
    position:relative;
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}
.rs-menu__list > li > a,
.rs-menu__list > .menu-item > a,
.rs-menu__list > .rs-menu__item > a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:14px 16px;
    color:var(--c-text);
    font-family:var(--font-b);
    font-weight:600;
    font-size:14px;
    letter-spacing:.02em;
    text-transform:uppercase;
    text-decoration:none;
    border-bottom:2px solid transparent;
    transition:color .15s,border-color .15s;
    white-space:nowrap;
    line-height:1.2;
}
.rs-menu__list > li > a:hover,
.rs-menu__list > .menu-item > a:hover,
.rs-menu__list > .rs-menu__item > a:hover{
    color:var(--c-cta);
    border-bottom-color:var(--c-cta);
    text-decoration:none;
}
.rs-menu__list > .current-menu-item > a,
.rs-menu__list > .current_page_item > a{
    color:var(--c-cta);
    border-bottom-color:var(--c-cta);
}

/* Подменю (если есть .rs-submenu или sub-menu от WP) */
.rs-menu__list .rs-submenu,
.rs-menu__list .sub-menu{
    position:absolute;top:100%;left:0;
    background:#fff;
    border:1px solid var(--c-border);
    border-radius:var(--r-md);
    box-shadow:0 12px 28px rgba(15,35,50,.1);
    list-style:none;
    padding:8px 0;
    margin:0;
    min-width:240px;
    z-index:60;
    display:none;
}
.rs-menu__list > li:hover > .rs-submenu,
.rs-menu__list > li:hover > .sub-menu,
.rs-menu__list > li:focus-within > .rs-submenu,
.rs-menu__list > li:focus-within > .sub-menu{display:block}
.rs-menu__list .rs-submenu li > a,
.rs-menu__list .sub-menu li > a{
    display:block;
    padding:9px 16px;
    color:var(--c-text);
    font-size:14px;
    font-weight:500;
    text-transform:none;
    letter-spacing:0;
    white-space:nowrap;
}
.rs-menu__list .rs-submenu li > a:hover,
.rs-menu__list .sub-menu li > a:hover{
    background:#F1F5F9;
    color:var(--c-cta);
    text-decoration:none;
}

/* Top-bar - отступы и шрифт */
.rs-topbar{font-size:13px}
.rs-topbar__inner{min-height:36px;padding:6px 16px;gap:24px}
.rs-topbar__left{gap:18px;flex-wrap:wrap}
.rs-topbar__nav{gap:18px;flex-wrap:wrap}

/* Main-header высота и ровный layout */
.rs-mainhead{padding:14px 0}
.rs-mainhead__inner{gap:20px;align-items:center}
.rs-mainhead__search-input{padding:11px 14px;font-size:14px}
.rs-mainhead__search-btn{padding:0 18px;height:auto;min-height:44px;font-size:14px}


/* === MEGAMENU: пункт «Ковры» (3 колонки: по форме / по дизайну / по странам) === */
.rs-menu__list .rs-menu__item--has-mega { position: relative; }
.rs-megamenu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: var(--r-md);
    box-shadow: 0 12px 28px rgba(15,35,50,.10);
    padding: 24px 26px;
    min-width: 760px;
    max-width: 920px;
    z-index: 60;
    display: none;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 24px;
    align-items: start;
}
.rs-menu__list > .rs-menu__item--has-mega:hover > .rs-megamenu,
.rs-menu__list > .rs-menu__item--has-mega:focus-within > .rs-megamenu { display: grid; }
.rs-megamenu__col { min-width: 0; }
.rs-megamenu__title {
    display: block;
    font-family: var(--font-h);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--c-text);
    margin: 0 0 12px;
    padding: 0 0 10px;
    border-bottom: 1px solid var(--c-border);
    text-decoration: none;
    line-height: 1.3;
    min-height: 36px;
    box-sizing: border-box;
}
.rs-megamenu__title:hover { color: var(--c-cta); text-decoration: none; }
.rs-megamenu__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 2px; }
.rs-megamenu__list li { padding: 0; }
.rs-megamenu__list a {
    display: block;
    padding: 6px 8px;
    color: var(--c-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    border-radius: 6px;
    text-decoration: none;
    text-transform: none;
    letter-spacing: 0;
    white-space: nowrap;
}
.rs-megamenu__list a:hover { background: #F1F5F9; color: var(--c-cta); text-decoration: none; }

@media (max-width: 1024px) {
    .rs-megamenu { display: none !important; }
}

/* Hero-изображение страницы */
.rs-page__hero{margin:0 0 28px;border-radius:var(--r-lg,16px);overflow:hidden;aspect-ratio:16/9;background:#f0f0f0}
.rs-page__hero img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width: 768px){.rs-page__hero{margin:0 0 18px;border-radius:var(--r-md,10px)}}
