:root {
    --mrc-bg: #0E0B09;
    --mrc-bg-alt: #17120E;
    --mrc-bg-card: #1E1712;
    --mrc-border: #2C2620;
    --mrc-text: #FFFFFF;
    --mrc-text-muted: #A8A29A;
    --mrc-accent: #FF6A00;
    --mrc-accent-2: #FF3D1A;
    --mrc-accent-gold: #FFB020;
    --mrc-gradient: linear-gradient(135deg, var(--mrc-accent) 0%, var(--mrc-accent-2) 100%);
    --mrc-font-head: 'Poppins', system-ui, sans-serif;
    --mrc-font-body: 'Inter', system-ui, sans-serif;
}

.mrc-header, .mrc-footer, .mrc-drawer, .mrc-home {
    font-family: var(--mrc-font-body);
    color: #fff;
}
.mrc-home { background: var(--mrc-bg); }
/* Тема сайта стилизует h1-h6/p/a напрямую (по типу тега) — раз эти правила
   попадают точно на элемент, они выигрывают у унаследованного цвета
   независимо от специфичности предка. Явно возвращаем наследование здесь,
   более специфичные mrc-*-классы ниже по файлу переопределяют его сами. */
.mrc-header *, .mrc-footer *, .mrc-drawer *, .mrc-home *,
.mrc-header *::before, .mrc-footer *::before, .mrc-drawer *::before, .mrc-home *::before,
.mrc-header *::after, .mrc-footer *::after, .mrc-drawer *::after, .mrc-home *::after {
    box-sizing: border-box;
    color: inherit;
}
.mrc-header a, .mrc-footer a, .mrc-drawer a, .mrc-home a { text-decoration: none; }
.mrc-header ul, .mrc-footer ul, .mrc-drawer ul, .mrc-home ul { list-style: none; margin: 0; padding: 0; }
.mrc-header button:not(.mrc-btn), .mrc-footer button:not(.mrc-btn),
.mrc-drawer button:not(.mrc-btn), .mrc-home button:not(.mrc-btn) {
    font-family: inherit; cursor: pointer; background: none; border: 0;
}
.mrc-home img { max-width: 100%; display: block; }

.mrc-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
}
@media (max-width: 768px) {
    .mrc-container { padding: 0 16px; }
}

/* ── Кнопки ─────────────────────────────────────────────── */
.mrc-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .3px;
    border-radius: 2px;
    white-space: nowrap;
    transition: opacity .15s ease, transform .15s ease;
}
.mrc-btn svg { width: 16px; height: 16px; flex-shrink: 0; }
.mrc-btn:hover { opacity: .92; }
.mrc-btn--primary { background: var(--mrc-gradient); color: #fff; }
.mrc-btn--outline { border: 1px solid var(--mrc-border); color: #fff; }
.mrc-btn--outline:hover { border-color: var(--mrc-accent); }
.mrc-btn--ghost { border: 1px solid var(--mrc-border); color: #fff; }
.mrc-btn--lg { padding: 16px 32px; font-size: 16px; }

/* ── Секции / заголовки ────────────────────────────────── */
.mrc-section { padding: 88px 0; background: var(--mrc-bg); color: #fff; }
.mrc-section--dark { background: var(--mrc-bg); }
.mrc-section--darker { background: var(--mrc-bg-alt); }
@media (max-width: 768px) {
    .mrc-section { padding: 56px 0; }
}

.mrc-section__head { margin-bottom: 40px; }
.mrc-section__head--center { text-align: center; }
.mrc-section__head--split {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    flex-wrap: wrap;
}

.mrc-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--mrc-accent);
    font-family: var(--mrc-font-body);
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.mrc-eyebrow svg { width: 14px; height: 14px; }

.mrc-title {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 40px;
    line-height: 1.15;
    color: #fff;
    margin: 0;
}
.mrc-section__lead { color: var(--mrc-text-muted); font-size: 15px; margin: 10px 0 0; }
.mrc-section__lead--right { max-width: 420px; text-align: right; }
.mrc-section__lead--center { max-width: 420px; margin-left: auto; margin-right: auto; text-align: center; }
@media (max-width: 768px) {
    .mrc-title { font-size: 28px; }
    .mrc-section__lead--right { text-align: left; max-width: none; }
}

/* ════════════════════════════════════════════════════════
   ШАПКА
   ════════════════════════════════════════════════════════ */
.mrc-header { position: relative; z-index: 50; }

.mrc-header__topbar {
    background: var(--mrc-bg);
    border-bottom: 1px solid var(--mrc-border);
}
.mrc-header__topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 8px 0;
    font-size: 12px;
    color: var(--mrc-text-muted);
}
.mrc-header__rating { display: flex; align-items: center; gap: 8px; font-weight: 600; white-space: nowrap; }
.mrc-header__stars { color: var(--mrc-accent); letter-spacing: 1px; }
.mrc-header__topbar-info { display: flex; align-items: center; gap: 24px; }
.mrc-header__topbar-item { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; color: var(--mrc-text-muted); }
.mrc-header__topbar-item svg { width: 12px; height: 12px; stroke: var(--mrc-accent); flex-shrink: 0; }
.mrc-header__topbar-item:hover { color: #fff; }
.mrc-header__topbar-hours { color: #fff; font-weight: 600; white-space: nowrap; }
@media (max-width: 1024px) {
    .mrc-header__topbar-info { display: none; }
}
@media (max-width: 640px) {
    .mrc-header__topbar-hours { display: none; }
    .mrc-header__topbar {
        padding: 0 10px;
    }
    .mrc-header__main {
        padding: 0 10px;
    }
}

.mrc-header__main {
    background: var(--mrc-bg-alt);
    border-bottom: 1px solid var(--mrc-border);
    overflow: visible;
}
.mrc-header__main-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 16px 0;
}
.mrc-header__logo {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 24px;
    color: #fff;
    flex-shrink: 0;
}

.mrc-nav__list { display: flex; align-items: center; gap: 32px; flex-wrap: wrap; }
.mrc-nav__item { position: relative; }
.mrc-nav__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--mrc-text-muted);
    letter-spacing: .3px;
    text-transform: uppercase;
    white-space: nowrap;
}
.mrc-nav__item--active > .mrc-nav__link,
.mrc-nav__link:hover { color: #fff; }
.mrc-nav__caret {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    opacity: .7;
    transition: transform .2s ease, opacity .15s ease;
}
.mrc-nav__item--has-sub:hover > .mrc-nav__link > .mrc-nav__caret,
.mrc-nav__item--has-sub:hover > .mrc-nav__sublink > .mrc-nav__caret,
.mrc-nav__item--has-sub.is-open > .mrc-nav__link > .mrc-nav__caret,
.mrc-nav__item--has-sub.is-open > .mrc-nav__sublink > .mrc-nav__caret {
    opacity: 1;
}
.mrc-nav__list > .mrc-nav__item--has-sub:hover > .mrc-nav__link > .mrc-nav__caret,
.mrc-nav__list > .mrc-nav__item--has-sub.is-open > .mrc-nav__link > .mrc-nav__caret {
    transform: rotate(180deg);
}

.mrc-nav__submenu {
    position: absolute;
    top: calc(100% + 14px);
    left: 50%;
    z-index: 60;
    min-width: 240px;
    margin: 0;
    padding: 10px 0;
    list-style: none;
    background: #1A1410;
    border: 1px solid var(--mrc-border);
    box-shadow: 0 18px 40px rgba(0,0,0,.45);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-50%) translateY(8px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.mrc-nav__submenu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 14px;
}
.mrc-nav__submenu .mrc-nav__item { width: 100%; }
.mrc-nav__sublink {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 11px 18px;
    color: var(--mrc-text-muted);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .2px;
    text-transform: none;
    white-space: nowrap;
    box-sizing: border-box;
    transition: color .15s ease, background .15s ease;
}
.mrc-nav__sublink:hover,
.mrc-nav__item--has-sub:hover > .mrc-nav__sublink {
    color: #fff;
    background: rgba(255,106,0,.1);
}
.mrc-nav__submenu .mrc-nav__caret {
    transform: rotate(-90deg);
}
.mrc-nav__submenu .mrc-nav__item--has-sub:hover > .mrc-nav__sublink > .mrc-nav__caret,
.mrc-nav__submenu .mrc-nav__item--has-sub.is-open > .mrc-nav__sublink > .mrc-nav__caret {
    transform: rotate(-90deg);
    opacity: 1;
}

/* 3-й уровень — выезд вправо */
.mrc-nav__submenu--lvl3 {
    top: -10px;
    left: calc(100% + 2px);
    right: auto;
    margin: 0;
    transform: translateX(8px);
    z-index: 70;
}
.mrc-nav__submenu--lvl3::before {
    top: 0;
    bottom: 0;
    left: -14px;
    right: auto;
    width: 14px;
    height: auto;
}

.mrc-header__nav .mrc-nav__item--has-sub:hover > .mrc-nav__submenu,
.mrc-header__nav .mrc-nav__item--has-sub.is-open > .mrc-nav__submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.mrc-header__nav .mrc-nav__list > .mrc-nav__item--has-sub:hover > .mrc-nav__submenu,
.mrc-header__nav .mrc-nav__list > .mrc-nav__item--has-sub.is-open > .mrc-nav__submenu {
    transform: translateX(-50%) translateY(0);
}
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub:hover > .mrc-nav__submenu,
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub.is-open > .mrc-nav__submenu {
    transform: translateX(0);
}

/* Если 3-й уровень у правого края — открываем влево */
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub.mrc-nav__item--flip > .mrc-nav__submenu--lvl3 {
    left: auto;
    right: calc(100% + 2px);
    transform: translateX(-8px);
}
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub.mrc-nav__item--flip:hover > .mrc-nav__submenu--lvl3,
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub.mrc-nav__item--flip.is-open > .mrc-nav__submenu--lvl3 {
    transform: translateX(0);
}
.mrc-header__nav .mrc-nav__submenu .mrc-nav__item--has-sub.mrc-nav__item--flip > .mrc-nav__sublink > .mrc-nav__caret {
    transform: rotate(90deg);
}

/* Drawer: аккордеон до 3 уровня */
.mrc-drawer__nav .mrc-nav__item--has-sub { width: 100%; }
.mrc-drawer__nav .mrc-nav__submenu,
.mrc-drawer__nav .mrc-nav__submenu--lvl3 {
    position: static;
    transform: none !important;
    left: auto;
    right: auto;
    top: auto;
    min-width: 0;
    width: 100%;
    margin: 4px 0 8px;
    padding: 0 0 0 14px;
    border: 0;
    border-left: 2px solid rgba(255,106,0,.45);
    background: transparent;
    box-shadow: none;
    display: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.mrc-drawer__nav .mrc-nav__submenu::before { display: none; }
.mrc-drawer__nav .mrc-nav__item--has-sub.is-open > .mrc-nav__submenu { display: block; }
.mrc-drawer__nav .mrc-nav__sublink {
    padding: 8px 0;
    font-size: 14px;
    background: transparent;
}
.mrc-drawer__nav .mrc-nav__sublink:hover {
    background: transparent;
    color: var(--mrc-accent);
}
.mrc-drawer__nav .mrc-nav__submenu .mrc-nav__caret {
    transform: none;
}
.mrc-drawer__nav .mrc-nav__item--has-sub.is-open > .mrc-nav__sublink > .mrc-nav__caret,
.mrc-drawer__nav .mrc-nav__item--has-sub.is-open > .mrc-nav__link > .mrc-nav__caret {
    transform: rotate(180deg);
}

/* Футер: подменю не показываем как дропдаун */
.mrc-footer__links .mrc-nav__submenu { display: none !important; }
.mrc-footer__links .mrc-nav__caret { display: none; }

.mrc-header__actions { display: flex; align-items: center; gap: 16px; flex-shrink: 0; }
.mrc-header__cta span { white-space: nowrap; }

.mrc-header__burger {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 32px;
    height: 32px;
}
.mrc-header__burger span { display: block; width: 100%; height: 2px; background: #fff; }

@media (max-width: 1024px) {
    .mrc-header__nav { display: none; }
    .mrc-header__cta span { display: none; }
    .mrc-header__cta { padding: 12px; }
    .mrc-header__burger { display: flex; }
}

/* ── Мобильное меню (drawer) ───────────────────────────── */
.mrc-drawer {
    position: fixed;
    top: 0; right: 0;
    width: min(340px, 86vw);
    height: 100vh;
    background: var(--mrc-bg-alt);
    border-left: 1px solid var(--mrc-border);
    z-index: 200;
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform .25s ease;
    padding: 20px;
}
body.mrc-menu-open .mrc-drawer { transform: translateX(0); }
.mrc-drawer__overlay {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.6);
    z-index: 199;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
}
body.mrc-menu-open .mrc-drawer__overlay { opacity: 1; pointer-events: auto; }
.mrc-drawer__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.mrc-drawer__logo { font-family: var(--mrc-font-head); font-weight: 800; font-size: 20px; color: #fff; }
.mrc-drawer__close { color: #fff; font-size: 18px; width: 32px; height: 32px; }
.mrc-drawer__nav .mrc-nav__list { flex-direction: column; align-items: flex-start; gap: 4px; }
.mrc-drawer__nav .mrc-nav__link { display: block; padding: 10px 0; font-size: 15px; }
.mrc-drawer__contacts { margin-top: auto; display: flex; flex-direction: column; gap: 12px; padding-top: 20px; border-top: 1px solid var(--mrc-border); }
.mrc-drawer__phone { color: #fff; font-weight: 700; font-family: var(--mrc-font-head); }
.mrc-drawer__cta { justify-content: center; }

/* ════════════════════════════════════════════════════════
   HERO
   ════════════════════════════════════════════════════════ */
.mrc-hero {
    position: relative;
    background: var(--mrc-bg) url('/images/hero.jpg') center / cover no-repeat;
    color: #fff;
    padding: 96px 0 72px;
    overflow: hidden;
    text-align: center;
}
.mrc-hero__glow {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(14,11,9,.88) 0%, rgba(14,11,9,.78) 45%, rgba(14,11,9,.92) 100%),
        radial-gradient(ellipse 50% 50% at 70% 20%, #FF6A0033 0%, #FF6A0000 100%);
    pointer-events: none;
}
.mrc-hero__content { position: relative; display: flex; flex-direction: column; align-items: center; gap: 24px; }
.mrc-hero__eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--mrc-accent); font-weight: 700; font-size: 13px; letter-spacing: 1.5px; text-transform: uppercase;
}
.mrc-hero__eyebrow svg { width: 14px; height: 14px; }
.mrc-hero__title {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 60px;
    line-height: 1.05;
    color: #fff;
    margin: 0;
}
.mrc-hero__title-accent {
    background: linear-gradient(0deg, var(--mrc-accent-gold) 0%, var(--mrc-accent-2) 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
}
.mrc-hero__sub { color: var(--mrc-text-muted); font-size: 16px; line-height: 1.6; max-width: 640px; }
.mrc-hero__badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.mrc-hero__badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 18px;
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
    font-size: 13px; font-weight: 600;
}
.mrc-hero__badge svg { width: 16px; height: 16px; stroke: var(--mrc-accent); }
.mrc-hero__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }

.mrc-hero__quickbar { border-top: 1px solid var(--mrc-border); margin-top: 56px; display: none;}
.mrc-hero__quickbar-inner { display: flex; align-items: center; justify-content: center; gap: 24px; flex-wrap: wrap; padding: 18px 0 0; }
.mrc-hero__quick-item { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--mrc-text-muted); }
.mrc-hero__quick-item svg { width: 14px; height: 14px; stroke: var(--mrc-accent); }
.mrc-hero__quick-item:hover { color: #fff; }
.mrc-hero__quick-divider { width: 1px; height: 16px; background: var(--mrc-border); }

@media (max-width: 640px) {
    .mrc-hero__title { font-size: 38px; }
}

/* ════════════════════════════════════════════════════════
   УСЛУГИ
   ════════════════════════════════════════════════════════ */
.mrc-services { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.mrc-service-card {
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
    padding: 28px;
    display: flex; flex-direction: column; gap: 16px; align-items: flex-start;
}
.mrc-service-card__icon {
    width: 52px; height: 52px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-gradient);
}
.mrc-service-card__icon svg { width: 24px; height: 24px; }
.mrc-service-card__title { font-family: var(--mrc-font-head); font-weight: 700; font-size: 19px; color: #fff; margin: 0; }
.mrc-service-card__text { color: var(--mrc-text-muted); font-size: 14px; line-height: 1.5; margin: 0; }
.mrc-service-card__link { display: inline-flex; align-items: center; gap: 6px; color: var(--mrc-accent); font-weight: 600; font-size: 13px; margin-top: auto; }
.mrc-service-card__link svg { width: 14px; height: 14px; }
@media (max-width: 900px) {
    .mrc-services { grid-template-columns: 1fr; }
}

/* ════════════════════════════════════════════════════════
   КАК МЫ РАБОТАЕМ
   ════════════════════════════════════════════════════════ */
.mrc-stages { display: flex; align-items: flex-start; }
.mrc-stage { flex: 1; display: flex; flex-direction: column; gap: 16px; }
.mrc-stage__icon {
    width: 56px; height: 56px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-gradient);
}
.mrc-stage__icon svg { width: 24px; height: 24px; }
.mrc-stage__head { display: flex; align-items: center; gap: 8px; }
.mrc-stage__num { font-family: var(--mrc-font-head); font-weight: 800; color: var(--mrc-accent); font-size: 16px; }
.mrc-stage__title { font-family: var(--mrc-font-head); font-weight: 700; color: #fff; font-size: 17px; }
.mrc-stage__text { color: var(--mrc-text-muted); font-size: 14px; line-height: 1.5; margin: 0; }
.mrc-stage__connector { width: 60px; height: 2px; background: var(--mrc-border); margin-top: 28px; flex-shrink: 0; }
@media (max-width: 900px) {
    .mrc-stages { flex-direction: column; gap: 32px; }
    .mrc-stage__connector { display: none; }
}

/* ════════════════════════════════════════════════════════
   ВИДЕО
   ════════════════════════════════════════════════════════ */
.mrc-video { border: 1px solid var(--mrc-border); }
.mrc-video__poster {
    position: relative;
    width: 100%; height: 480px;
    background-size: cover; background-position: center;
    display: flex; align-items: center; justify-content: center;
}
.mrc-video__overlay { position: absolute; inset: 0; background: rgba(14,11,9,.6); }
.mrc-video__tag {
    position: absolute; left: 24px; top: 24px;
    background: var(--mrc-gradient);
    color: #fff; font-weight: 700; font-size: 12px; letter-spacing: 1px; text-transform: uppercase;
    padding: 8px 16px;
}
.mrc-video__play {
    position: relative;
    width: 96px; height: 96px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-gradient);
    border-radius: 50%;
}
.mrc-video__play svg { width: 34px; height: 34px; margin-left: 4px; }
.mrc-video iframe { width: 100%; height: 480px; display: block; }
@media (max-width: 640px) {
    .mrc-video__poster, .mrc-video iframe { height: 260px; }
}

/* ════════════════════════════════════════════════════════
   ПРАЙС-ЛИСТ
   ════════════════════════════════════════════════════════ */
.mrc-price__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.mrc-price__tab {
    padding: 12px 22px;
    background: transparent;
    border: 1px solid var(--mrc-border);
    color: var(--mrc-text-muted);
    font-family: var(--mrc-font-head);
    font-weight: 700; font-size: 13px; letter-spacing: .4px;
    cursor: pointer;
    transition: color .15s ease, border-color .15s ease, background .15s ease;
}
.mrc-price__tab:hover { color: #fff; border-color: rgba(255,106,0,.45); }
.mrc-price__tab.is-active {
    background: var(--mrc-gradient);
    color: #fff;
    border-color: transparent;
}

.mrc-price__panel {
    display: none;
    border: 1px solid var(--mrc-border);
    background: var(--mrc-bg-card);
    overflow-x: auto;
    box-shadow: 0 18px 40px rgba(0,0,0,.28);
}
.mrc-price__panel.is-active { display: block; }

.mrc-price__table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 640px;
}
.mrc-price__table th {
    text-align: left;
    padding: 18px 24px;
    background: #0A0807;
    color: var(--mrc-text-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    border-bottom: 1px solid var(--mrc-border);
    white-space: nowrap;
}
.mrc-price__table th.mrc-price__th--accent {
    color: var(--mrc-accent);
    background: linear-gradient(180deg, #14100C 0%, #0A0807 100%);
}
.mrc-price__table td {
    padding: 18px 24px;
    font-size: 14px;
    color: #fff;
    border-bottom: 1px solid rgba(44,38,32,.85);
    vertical-align: middle;
    transition: background .15s ease;
}
.mrc-price__table tbody tr:last-child td { border-bottom: 0; }
.mrc-price__table tbody tr { background: transparent; }
.mrc-price__table tbody tr:hover td { background: rgba(255,106,0,.06); }
.mrc-price__table tbody tr:hover td:first-child {
    box-shadow: inset 3px 0 0 var(--mrc-accent);
}

.mrc-price__td--accent {
    background: rgba(255,106,0,.04);
}
.mrc-price__table tbody tr:hover .mrc-price__td--accent {
    background: rgba(255,106,0,.1);
}

.mrc-price__size {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border: 1px solid rgba(255,106,0,.35);
    background: rgba(255,106,0,.08);
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 14px;
    color: var(--mrc-accent);
    letter-spacing: .2px;
    white-space: nowrap;
}
.mrc-price__service {
    font-family: var(--mrc-font-head);
    font-weight: 600;
    font-size: 14px;
    color: #fff;
}
.mrc-price__num {
    font-family: var(--mrc-font-head);
    font-weight: 600;
    font-size: 15px;
    color: #fff;
    white-space: nowrap;
}
.mrc-price__num--accent {
    font-weight: 800;
    font-size: 17px;
    background: linear-gradient(0deg, var(--mrc-accent-gold) 0%, var(--mrc-accent) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.mrc-price__num--muted {
    font-weight: 600;
    font-size: 14px;
    font-style: italic;
    color: var(--mrc-text-muted);
}
.mrc-price__term {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid var(--mrc-border);
    background: rgba(14,11,9,.45);
    color: var(--mrc-text-muted);
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}
.mrc-price__row--special td {
    background: rgba(14,11,9,.35);
}
.mrc-price__row--special .mrc-price__size {
    border-style: dashed;
    color: var(--mrc-accent-gold);
    border-color: rgba(255,176,32,.4);
    background: rgba(255,176,32,.08);
}

.mrc-price__footer {
    display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
    margin-top: 20px; padding: 22px 24px;
    background: linear-gradient(135deg, var(--mrc-bg-card) 0%, #17120E 100%);
    border: 1px solid var(--mrc-border);
}
.mrc-price__note {
    display: flex; gap: 14px; align-items: flex-start;
    flex: 1; min-width: 260px;
    color: var(--mrc-text-muted); font-size: 14px; line-height: 1.55; margin: 0;
}
.mrc-price__note-icon {
    flex-shrink: 0; width: 22px; height: 22px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-accent); color: var(--mrc-bg);
    font-family: var(--mrc-font-head); font-weight: 800; font-size: 13px;
}

@media (max-width: 768px) {
    .mrc-price__tabs { gap: 6px; }
    .mrc-price__tab { padding: 10px 14px; font-size: 12px; }
    .mrc-price__table th,
    .mrc-price__table td { padding: 14px 16px; }
    .mrc-price__num--accent { font-size: 15px; }
}

/* ════════════════════════════════════════════════════════
   ДО / ПОСЛЕ (сравнение с перетаскиванием)
   ════════════════════════════════════════════════════════ */
.mrc-ba-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.mrc-ba-card {
    border: 1px solid var(--mrc-border);
    overflow: hidden;
    background: var(--mrc-bg-card);
}
.mrc-ba-compare {
    position: relative;
    height: 280px;
    overflow: hidden;
    background: #0A0807;
    user-select: none;
    touch-action: none;
    cursor: ew-resize;
}
.mrc-ba-compare__after,
.mrc-ba-compare__before {
    position: absolute;
    inset: 0;
}
.mrc-ba-compare__after img,
.mrc-ba-compare__before img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
}
.mrc-ba-compare__before {
    clip-path: inset(0 calc(100% - var(--ba-pos)) 0 0);
}
.mrc-ba-compare__before img { filter: grayscale(1) brightness(.65); }

.mrc-ba-card__label {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 2;
    background: rgba(14,11,9,.7);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 5px 12px;
    pointer-events: none;
}
.mrc-ba-card__label--after {
    left: auto;
    right: 12px;
    background: var(--mrc-gradient);
}

.mrc-ba-compare__handle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--ba-pos);
    z-index: 3;
    width: 0;
    transform: translateX(-50%);
    pointer-events: none;
}
.mrc-ba-compare__line {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 2px;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0,0,0,.35);
    transform: translateX(-50%);
}
.mrc-ba-compare__knob {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--mrc-gradient);
    color: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,.4);
    transform: translate(-50%, -50%);
}
.mrc-ba-compare__knob svg { width: 20px; height: 20px; }

.mrc-ba-compare__range {
    position: absolute;
    inset: 0;
    z-index: 4;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: ew-resize;
    -webkit-appearance: none;
    appearance: none;
}

.mrc-ba-card__caption {
    padding: 18px 20px;
    background: var(--mrc-bg-card);
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 15px;
    color: #fff;
}

@media (max-width: 900px) {
    .mrc-ba-grid { grid-template-columns: 1fr; }
    .mrc-ba-compare { height: 240px; }
}

/* ════════════════════════════════════════════════════════
   ГАЛЕРЕЯ
   ════════════════════════════════════════════════════════ */
.mrc-gallery .list-view { padding: 0; }
.mrc-gallery .list-view .summary { display: none; }
.mrc-gallery__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.mrc-gallery__item { margin: 0; min-width: 0; }
.mrc-gallery__link {
    position: relative;
    display: block;
    height: 280px;
    overflow: hidden;
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
}
.mrc-gallery__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.01);
    transition: transform .45s ease;
}
.mrc-gallery__shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(14,11,9,.08) 0%, rgba(14,11,9,.15) 45%, rgba(14,11,9,.55) 100%);
    opacity: .85;
    transition: opacity .3s ease;
    pointer-events: none;
}
.mrc-gallery__badge {
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 2;
    max-width: calc(100% - 72px);
    padding: 6px 14px;
    background: var(--mrc-accent-gold);
    color: var(--mrc-bg);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mrc-gallery__zoom {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 2;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(14,11,9,.72);
    border: 1px solid rgba(255,255,255,.18);
    color: #fff;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .25s ease, transform .25s ease, border-color .25s ease, background .25s ease;
}
.mrc-gallery__zoom svg { width: 18px; height: 18px; stroke: currentColor; }
.mrc-gallery__link:hover .mrc-gallery__img { transform: scale(1.08); }
.mrc-gallery__link:hover .mrc-gallery__shade { opacity: 1; }
.mrc-gallery__link:hover .mrc-gallery__zoom {
    opacity: 1;
    transform: translateY(0);
    border-color: rgba(255,106,0,.55);
    background: rgba(255,106,0,.9);
}

.mrc-gallery__pager,
.mrc-gallery-widget .pagination,
.mrc-gallery-widget .pager {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 32px 0 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
.mrc-gallery__pager > li,
.mrc-gallery-widget .pagination > li,
.mrc-gallery-widget .pager > li {
    display: inline-flex;
    float: none;
    margin: 0;
}
.mrc-gallery__pager a,
.mrc-gallery__pager span,
.mrc-gallery-widget .pagination a,
.mrc-gallery-widget .pagination span,
.mrc-gallery-widget .pager a,
.mrc-gallery-widget .pager span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 14px;
    color: #fff;
    border: 1px solid var(--mrc-border);
    background: var(--mrc-bg-card);
    font-family: var(--mrc-font-head);
    font-size: 13px;
    font-weight: 700;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.mrc-gallery__pager a:hover,
.mrc-gallery-widget .pagination a:hover,
.mrc-gallery-widget .pager a:hover {
    border-color: rgba(255,106,0,.55);
    color: #fff;
}
.mrc-gallery__pager .active a,
.mrc-gallery__pager .active span,
.mrc-gallery-widget .pagination .active a,
.mrc-gallery-widget .pagination .active span,
.mrc-gallery-widget .pager .active a,
.mrc-gallery-widget .pager .active span {
    background: var(--mrc-gradient);
    border-color: transparent;
    color: #fff;
}
.mrc-gallery__pager .disabled span,
.mrc-gallery-widget .pagination .disabled span,
.mrc-gallery-widget .pager .disabled span {
    opacity: .35;
    cursor: default;
}

@media (max-width: 900px) {
    .mrc-gallery__grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .mrc-gallery__link { height: 220px; }
}
@media (max-width: 560px) {
    .mrc-gallery__grid { grid-template-columns: 1fr; }
    .mrc-gallery__link { height: 240px; }
}

/* ════════════════════════════════════════════════════════
   ОПЫТ + СТАТИСТИКА
   ════════════════════════════════════════════════════════ */
.mrc-exp { display: flex; color: #fff; }
.mrc-exp__col { flex: 1; padding: 80px 56px; background: var(--mrc-bg-card); }
.mrc-exp__col--stats {
    background:
        radial-gradient(ellipse 80% 50% at 100% 0%, rgba(255,204,0,.08) 0%, transparent 55%),
        linear-gradient(180deg, #0A0A0A 0%, #12100C 50%, #0A0A0A 100%);
    position: relative;
}
.mrc-exp__col--stats::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 2px solid #FFCC00;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.85), 0 0 0 1px rgba(0,0,0,.55);
    pointer-events: none;
}
.mrc-exp__col:first-child { border-right: 1px solid var(--mrc-border); }
.mrc-exp__title { font-family: var(--mrc-font-head); font-weight: 800; font-size: 30px; color: #fff; margin: 0 0 24px; }
.mrc-exp__list { display: flex; flex-direction: column; gap: 20px; }
.mrc-exp__item { display: flex; align-items: center; gap: 16px; font-size: 15px; line-height: 1.4; }
.mrc-exp__item-icon {
    flex-shrink: 0; width: 44px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-bg);
}
.mrc-exp__item-icon svg { width: 20px; height: 20px; stroke: var(--mrc-accent); }

/* GTA SA stats panel */
.mrc-sa-panel { position: relative; z-index: 1; }
.mrc-sa-panel__head { margin-bottom: 28px; }
.mrc-sa-stars {
    display: flex;
    gap: 6px;
    margin-bottom: 14px;
}
.mrc-sa-stars span {
    width: 18px;
    height: 18px;
    background: #FFCC00;
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
    filter: drop-shadow(0 1px 0 #8A6A00);
}
.mrc-sa-panel__eyebrow {
    font-family: 'Oswald', var(--mrc-font-head), sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: #FFCC00;
    margin-bottom: 6px;
}
.mrc-sa-panel__title {
    font-family: 'Oswald', var(--mrc-font-head), sans-serif;
    font-weight: 700;
    font-size: 42px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #FFCC00;
    text-shadow: 2px 2px 0 #000, -1px 0 0 rgba(0,0,0,.6);
    margin: 0 0 8px;
    font-style: italic;
}
.mrc-sa-panel__sub {
    margin: 0;
    font-family: 'Oswald', var(--mrc-font-head), sans-serif;
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,.55);
}

.mrc-exp__stats { display: flex; flex-direction: column; gap: 18px; }
.mrc-exp__stat-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 16px;
    margin-bottom: 8px;
}
.mrc-exp__col--stats .mrc-exp__stat-label {
    font-family: 'Oswald', var(--mrc-font-head), sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-shadow: 1px 1px 0 #000;
}
.mrc-exp__col--stats .mrc-exp__stat-value {
    font-family: 'Oswald', var(--mrc-font-head), sans-serif;
    font-weight: 700;
    font-size: 20px;
    font-style: italic;
    color: #FFCC00;
    text-shadow: 2px 2px 0 #000;
    letter-spacing: .5px;
    white-space: nowrap;
}
.mrc-exp__col--stats .mrc-exp__stat-bar {
    width: 100%;
    height: 18px;
    background: #1A1A1A;
    border: 2px solid #000;
    box-shadow: inset 0 0 0 1px #3A3A3A, 0 1px 0 rgba(255,255,255,.06);
    overflow: hidden;
    position: relative;
}
.mrc-exp__col--stats .mrc-exp__stat-bar-fill {
    height: 100%;
    background:
        repeating-linear-gradient(
            90deg,
            #00C800 0,
            #00C800 10px,
            #00A800 10px,
            #00A800 12px
        ),
        linear-gradient(180deg, #4CFF4C 0%, #00C800 45%, #009600 100%);
    box-shadow: inset 0 2px 0 rgba(255,255,255,.25), inset 0 -2px 0 rgba(0,0,0,.25);
    transition: width .4s ease;
}
@media (max-width: 900px) {
    .mrc-exp { flex-direction: column; }
    .mrc-exp__col { padding: 48px 24px; }
    .mrc-exp__col:first-child { border-right: 0; border-bottom: 1px solid var(--mrc-border); }
    .mrc-exp__col--stats::before { inset: 12px; }
    .mrc-sa-panel__title { font-size: 34px; }
}

/* ════════════════════════════════════════════════════════
   CTA
   ════════════════════════════════════════════════════════ */
.mrc-cta { background: var(--mrc-gradient); padding: 80px 0; color: #fff; }
.mrc-cta__inner { display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.mrc-cta__title { font-family: var(--mrc-font-head); font-weight: 800; font-size: 40px; color: #fff; margin: 0; }
.mrc-cta__text { color: rgba(255,255,255,.85); font-size: 16px; margin: 0; }
.mrc-cta__phone {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--mrc-bg); color: #fff;
    padding: 16px 32px; font-family: var(--mrc-font-head); font-weight: 700; font-size: 18px;
}
.mrc-cta__phone svg { width: 17px; height: 17px; stroke: var(--mrc-accent); }
@media (max-width: 640px) {
    .mrc-cta__title { font-size: 28px; }
}

/* ════════════════════════════════════════════════════════
   ОТЗЫВЫ
   ════════════════════════════════════════════════════════ */
.mrc-reviews { text-align: center; }
.mrc-reviews__frame { max-width: 760px; width: 100%; height: 800px; border: 0; display: block; margin: 0 auto; }

/* ════════════════════════════════════════════════════════
   КОНТАКТЫ + КАРТА
   ════════════════════════════════════════════════════════ */
.mrc-contacts { display: flex; }
.mrc-contacts__info { flex: 1; max-width: 460px; padding: 0 24px 56px; display: flex; flex-direction: column; gap: 24px; }
.mrc-contacts__item { display: flex; gap: 16px; align-items: flex-start; }
.mrc-contacts__item-icon {
    flex-shrink: 0; width: 44px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-bg-card); border: 1px solid var(--mrc-border);
}
.mrc-contacts__item-icon svg { width: 18px; height: 18px; stroke: var(--mrc-accent); }
.mrc-contacts__item-label { font-size: 12px; color: var(--mrc-text-muted); text-transform: uppercase; letter-spacing: .5px; margin-bottom: 2px; }
.mrc-contacts__item-value { font-size: 15px; color: #fff; }
.mrc-contacts__item-value--link:hover { color: var(--mrc-accent); }
.mrc-contacts__map { flex: 1.4; min-height: 420px; }
.mrc-contacts__map iframe { width: 100%; height: 100%; min-height: 420px; border: 0; display: block; }
@media (max-width: 900px) {
    .mrc-contacts { flex-direction: column; }
    .mrc-contacts__info { max-width: none; padding: 0 24px 32px; }
}

/* ════════════════════════════════════════════════════════
   КАЛЬКУЛЯТОР (публичная страница /calc)
   ════════════════════════════════════════════════════════ */
.mrc-calc-page { padding-top: 40px; padding-bottom: 96px; }
.mrc-calc-shell {
    max-width: 860px;
    margin: 0 auto;
}

.mrc-calc-shell #calc {
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
    padding: 36px 40px 28px;
    box-shadow: 0 22px 50px rgba(0,0,0,.28);
}
.mrc-calc-shell #calc[v-cloak] { display: none; }

.mrc-calc-shell #calc .title {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 28px;
    color: #fff;
    margin: 0 0 28px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--mrc-border);
    letter-spacing: .2px;
}

.mrc-calc-shell #calc .form-group.row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0 0 18px;
}
.mrc-calc-shell #calc .form-group.row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
    float: none;
}
.mrc-calc-shell #calc .col-md-4 {
    width: 34%;
    max-width: 34%;
    flex: 0 0 34%;
    padding-top: 12px;
}
.mrc-calc-shell #calc .col-md-8 {
    width: 66%;
    max-width: 66%;
    flex: 0 0 66%;
}

.mrc-calc-shell #calc .col-md-4 > label {
    display: inline-block;
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--mrc-text-muted);
}

.mrc-calc-shell #calc .col-md-8 label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    margin: 0 0 8px;
    padding: 12px 14px;
    background: #0A0807;
    border: 1px solid var(--mrc-border);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    line-height: 1.35;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease;
}
.mrc-calc-shell #calc .col-md-8 label:hover {
    border-color: rgba(255,106,0,.45);
    background: rgba(255,106,0,.06);
}
.mrc-calc-shell #calc .col-md-8 br { display: none; }

.mrc-calc-shell #calc select,
.mrc-calc-shell #calc input[type="number"],
.mrc-calc-shell #calc input[type="text"] {
    width: 100%;
    max-width: 100%;
    height: 48px;
    padding: 0 14px;
    background: #0A0807;
    border: 1px solid var(--mrc-border);
    color: #fff;
    font-family: var(--mrc-font-body);
    font-size: 15px;
    line-height: 1.3;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.mrc-calc-shell #calc select {
    background-image:
        linear-gradient(45deg, transparent 50%, var(--mrc-accent) 50%),
        linear-gradient(135deg, var(--mrc-accent) 50%, transparent 50%);
    background-position:
        calc(100% - 18px) calc(50% - 3px),
        calc(100% - 12px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 36px;
    cursor: pointer;
}
.mrc-calc-shell #calc select:focus,
.mrc-calc-shell #calc input[type="number"]:focus,
.mrc-calc-shell #calc input[type="text"]:focus {
    border-color: var(--mrc-accent);
    box-shadow: 0 0 0 3px rgba(255,106,0,.15);
}
.mrc-calc-shell #calc select option {
    background: #17120E;
    color: #fff;
}

.mrc-calc-shell #calc input[type="radio"],
.mrc-calc-shell #calc input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    flex-shrink: 0;
    border: 1px solid var(--mrc-border);
    background: #17120E;
    cursor: pointer;
    position: relative;
}
.mrc-calc-shell #calc input[type="radio"] { border-radius: 50%; }
.mrc-calc-shell #calc input[type="checkbox"] { border-radius: 2px; }
.mrc-calc-shell #calc input[type="radio"]:checked,
.mrc-calc-shell #calc input[type="checkbox"]:checked {
    border-color: var(--mrc-accent);
    background: var(--mrc-gradient);
}
.mrc-calc-shell #calc input[type="radio"]:checked::after {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: #fff;
}
.mrc-calc-shell #calc input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 2px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.mrc-calc-shell #calc .note {
    margin: 8px 0 20px;
    padding: 16px 18px;
    background: rgba(255,106,0,.08);
    border: 1px solid rgba(255,106,0,.28);
    color: var(--mrc-text-muted);
    font-size: 13px;
    line-height: 1.55;
}
.mrc-calc-shell #calc .note b { color: var(--mrc-accent-gold); font-weight: 700; }

.mrc-calc-shell #calc .price {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 22px;
    background: linear-gradient(0deg, var(--mrc-accent-gold) 0%, var(--mrc-accent) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.mrc-calc-shell #calc .total-val {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 28px 0 0;
    padding: 20px 22px;
    background:
        linear-gradient(135deg, rgba(255,106,0,.16) 0%, rgba(255,61,26,.08) 100%),
        #0A0807;
    border: 1px solid rgba(255,106,0,.35);
    font-family: var(--mrc-font-head);
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}
.mrc-calc-shell #calc .total-val .price { font-size: 28px; }
.mrc-calc-shell #calc .total-val__label {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 13px;
    color: var(--mrc-text-muted);
}

.mrc-calc-shell #calc h2 {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 20px;
    color: #fff;
    margin: 24px 0 16px;
    padding-top: 20px;
    border-top: 1px solid var(--mrc-border);
}

.mrc-calc-shell #calc .mrc-calc__service {
    margin-bottom: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--mrc-border);
}

@media (max-width: 768px) {
    .mrc-calc-shell #calc { padding: 24px 18px 20px; }
    .mrc-calc-shell #calc .col-md-4,
    .mrc-calc-shell #calc .col-md-8 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
    .mrc-calc-shell #calc .col-md-4 {
        padding-top: 0;
        margin-bottom: 8px;
    }
    .mrc-calc-shell #calc .total-val {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ── Форма заявки под калькулятором ───────────────────── */
.mrc-calc-shell .mrc-order-form,
.mrc-calc-shell .form.mrc-order-form {
    color: #fff;
}
.mrc-calc-shell .mrc-order-form__calc {
    margin-bottom: 24px;
}
.mrc-calc-shell .mrc-order-form__panel {
    margin-top: 0;
    padding: 32px 36px;
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
}
.mrc-calc-shell .mrc-order-form__head {
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--mrc-border);
}
.mrc-calc-shell .mrc-order-form__title {
    margin: 0 0 8px;
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 24px;
    color: #fff;
}
.mrc-calc-shell .mrc-order-form__text {
    margin: 0;
    color: var(--mrc-text-muted);
    font-size: 14px;
    line-height: 1.5;
}
.mrc-calc-shell .mrc-order-form__row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0 0 18px;
}
.mrc-calc-shell .mrc-order-form__row > [class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0;
}
.mrc-calc-shell .mrc-order-form__label-col {
    width: 34%;
    max-width: 34%;
    flex: 0 0 34%;
    padding-top: 14px;
}
.mrc-calc-shell .mrc-order-form__field-col {
    width: 66%;
    max-width: 66%;
    flex: 0 0 66%;
}
.mrc-calc-shell .mrc-order-form__label-col label,
.mrc-calc-shell .mrc-order-form__label-col .required {
    display: inline-block;
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--mrc-text-muted);
}
.mrc-calc-shell .mrc-order-form__label-col .required .required {
    color: var(--mrc-accent);
    border: 0;
    padding: 0;
    margin-left: 2px;
}
.mrc-calc-shell .mrc-order-form .popover-button {
    display: none;
}
.mrc-calc-shell .mrc-order-form__input,
.mrc-calc-shell .mrc-order-form__textarea,
.mrc-calc-shell .mrc-order-form .form-control {
    width: 100%;
    max-width: 100%;
    height: 48px;
    padding: 0 16px;
    background: #0A0807 !important;
    border: 1px solid var(--mrc-border) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-family: var(--mrc-font-body);
    font-size: 15px;
    line-height: 1.3;
    box-shadow: none !important;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.mrc-calc-shell .mrc-order-form__textarea,
.mrc-calc-shell .mrc-order-form textarea.form-control {
    height: auto;
    min-height: 120px;
    padding: 14px 16px;
    resize: vertical;
}
.mrc-calc-shell .mrc-order-form__input::placeholder,
.mrc-calc-shell .mrc-order-form__textarea::placeholder,
.mrc-calc-shell .mrc-order-form .form-control::placeholder {
    color: #6F675E;
}
.mrc-calc-shell .mrc-order-form__input:focus,
.mrc-calc-shell .mrc-order-form__textarea:focus,
.mrc-calc-shell .mrc-order-form .form-control:focus {
    border-color: var(--mrc-accent) !important;
    box-shadow: 0 0 0 3px rgba(255,106,0,.15) !important;
}
.mrc-calc-shell .mrc-order-form .errorMessage,
.mrc-calc-shell .mrc-order-form .help-block {
    display: block;
    margin-top: 6px;
    color: #FF6B6B;
    font-size: 12px;
}
.mrc-calc-shell .mrc-order-form__check {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 12px 16px;
    background: #0A0807;
    border: 1px solid var(--mrc-border);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease;
}
.mrc-calc-shell .mrc-order-form__check:hover {
    border-color: rgba(255,106,0,.45);
    background: rgba(255,106,0,.06);
}
.mrc-calc-shell .mrc-order-form__check input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    margin: 0;
    flex-shrink: 0;
    border: 1px solid var(--mrc-border);
    border-radius: 2px;
    background: #17120E;
    cursor: pointer;
    position: relative;
}
.mrc-calc-shell .mrc-order-form__check input[type="checkbox"]:checked {
    border-color: var(--mrc-accent);
    background: var(--mrc-gradient);
}
.mrc-calc-shell .mrc-order-form__check input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 2px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.mrc-calc-shell .mrc-order-form__row--check .mrc-order-form__label-col {
    padding-top: 16px;
}
.mrc-calc-shell .mrc-order-form__actions {
    margin: 24px 0 0;
    padding: 0;
    float: none;
    text-align: center;
}
.mrc-calc-shell .mrc-order-form__submit,
.mrc-calc-shell .mrc-order-form .btn-primary,
.mrc-calc-shell .mrc-order-form button[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 240px;
    height: auto;
    padding: 16px 36px;
    background: var(--mrc-gradient) !important;
    border: 0 !important;
    border-radius: 2px !important;
    color: #fff !important;
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 16px;
    letter-spacing: .3px;
    cursor: pointer;
    box-shadow: none !important;
    transition: opacity .15s ease, transform .15s ease;
}
.mrc-calc-shell .mrc-order-form__submit:hover,
.mrc-calc-shell .mrc-order-form .btn-primary:hover,
.mrc-calc-shell .mrc-order-form button[type="submit"]:hover {
    opacity: .92;
    color: #fff !important;
}

@media (max-width: 768px) {
    .mrc-calc-shell .mrc-order-form__panel { padding: 24px 18px; }
    .mrc-calc-shell .mrc-order-form__label-col,
    .mrc-calc-shell .mrc-order-form__field-col {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
    .mrc-calc-shell .mrc-order-form__label-col,
    .mrc-calc-shell .mrc-order-form__row--check .mrc-order-form__label-col {
        padding-top: 0;
        margin-bottom: 8px;
    }
    .mrc-calc-shell .mrc-order-form__submit,
    .mrc-calc-shell .mrc-order-form .btn-primary,
    .mrc-calc-shell .mrc-order-form button[type="submit"] {
        width: 100%;
        min-width: 0;
    }
}

/* ════════════════════════════════════════════════════════
   ВНУТРЕННИЕ СТРАНИЦЫ (контакты и т.п.)
   ════════════════════════════════════════════════════════ */
.mrc-page-hero {
    position: relative;
    padding: 56px 0 40px;
    background:
        radial-gradient(ellipse 70% 80% at 90% 0%, rgba(255,106,0,.16) 0%, transparent 55%),
        linear-gradient(180deg, #17120E 0%, var(--mrc-bg) 100%);
    border-bottom: 1px solid var(--mrc-border);
    overflow: hidden;
}
.mrc-page-hero__title {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 52px;
    line-height: 1.05;
    color: #fff;
    margin: 0 0 14px;
}
.mrc-page-hero__lead {
    max-width: 560px;
    margin: 0;
    color: var(--mrc-text-muted);
    font-size: 16px;
    line-height: 1.6;
}
.mrc-breadcrumbs { margin-bottom: 20px; }
.mrc-breadcrumbs .breadcrumb {
    background: none;
    padding: 0;
    margin: 0;
    font-size: 13px;
    color: var(--mrc-text-muted);
}
.mrc-breadcrumbs .breadcrumb > li { display: inline; }
.mrc-breadcrumbs .breadcrumb > li + li::before {
    content: "/";
    padding: 0 8px;
    color: #5A544C;
}
.mrc-breadcrumbs .breadcrumb a { color: var(--mrc-text-muted); }
.mrc-breadcrumbs .breadcrumb a:hover { color: var(--mrc-accent); }
.mrc-breadcrumbs .breadcrumb > .active { color: #fff; }

.mrc-contacts-page { padding-top: 48px; }
.mrc-contact-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 32px;
}
.mrc-contact-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 22px 20px;
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
    transition: border-color .15s ease, transform .15s ease;
}
a.mrc-contact-card:hover {
    border-color: rgba(255,106,0,.55);
    transform: translateY(-2px);
}
.mrc-contact-card__icon {
    width: 42px; height: 42px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,106,0,.1);
    border: 1px solid rgba(255,106,0,.28);
}
.mrc-contact-card__icon svg { width: 18px; height: 18px; stroke: var(--mrc-accent); }
.mrc-contact-card__label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: var(--mrc-text-muted);
}
.mrc-contact-card__value {
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    line-height: 1.35;
}

.mrc-contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    gap: 24px;
    align-items: stretch;
}
.mrc-contact-form-panel {
    padding: 32px;
    background: var(--mrc-bg-card);
    border: 1px solid var(--mrc-border);
}
.mrc-contact-form-panel__head { margin-bottom: 24px; }
.mrc-contact-form-panel__title {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 26px;
    color: #fff;
    margin: 0 0 8px;
}
.mrc-contact-form-panel__text {
    margin: 0;
    color: var(--mrc-text-muted);
    font-size: 14px;
    line-height: 1.5;
}
.mrc-contact-map-panel {
    min-height: 520px;
    border: 1px solid var(--mrc-border);
    overflow: hidden;
    background: var(--mrc-bg-alt);
}
.mrc-contact-map-panel iframe {
    width: 100%;
    height: 100%;
    min-height: 520px;
    border: 0;
    display: block;
    filter: grayscale(.15) contrast(1.05);
}

.mrc-form { display: flex; flex-direction: column; gap: 14px; }
.mrc-form__group { margin: 0; }
.mrc-form__input,
.mrc-form__textarea {
    width: 100%;
    display: block;
    padding: 14px 16px;
    background: #0A0807;
    border: 1px solid var(--mrc-border);
    color: #fff;
    font-family: var(--mrc-font-body);
    font-size: 14px;
    line-height: 1.4;
    outline: none;
    transition: border-color .15s ease, box-shadow .15s ease;
    box-shadow: none;
    border-radius: 0;
    -webkit-appearance: none;
}
.mrc-form__textarea { min-height: 130px; resize: vertical; }
.mrc-form__input::placeholder,
.mrc-form__textarea::placeholder { color: #6F675E; }
.mrc-form__input:focus,
.mrc-form__textarea:focus {
    border-color: var(--mrc-accent);
    box-shadow: 0 0 0 3px rgba(255,106,0,.15);
}
.mrc-form .errorMessage,
.mrc-form .help-block {
    display: block;
    margin-top: 6px;
    color: #FF6B6B;
    font-size: 12px;
}
.mrc-form__submit {
    width: 100%;
    justify-content: center;
    margin-top: 4px;
}
.mrc-form__submit:disabled { opacity: .6; cursor: wait; }

.mrc-page__cms {
    margin-top: 48px;
    padding-top: 40px;
    border-top: 1px solid var(--mrc-border);
    color: var(--mrc-text-muted);
    font-size: 15px;
    line-height: 1.7;
}
.mrc-page__cms h1,
.mrc-page__cms h2,
.mrc-page__cms h3,
.mrc-page__cms h4 {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    color: #fff;
    margin: 0 0 14px;
}
.mrc-page__cms p { margin: 0 0 14px; }
.mrc-page__cms a { color: var(--mrc-accent); }
.mrc-page__cms a:hover { color: var(--mrc-accent-gold); }

@media (max-width: 1100px) {
    .mrc-contact-cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
    .mrc-page-hero { padding: 40px 0 32px; }
    .mrc-page-hero__title { font-size: 36px; }
    .mrc-contact-layout { grid-template-columns: 1fr; }
    .mrc-contact-map-panel,
    .mrc-contact-map-panel iframe { min-height: 320px; }
    .mrc-contact-form-panel { padding: 24px 20px; }
}
@media (max-width: 560px) {
    .mrc-contact-cards { grid-template-columns: 1fr; }
}

/* ════════════════════════════════════════════════════════
   ФУТЕР
   ════════════════════════════════════════════════════════ */
.mrc-footer { background: var(--mrc-bg-card); }
.mrc-footer__top { padding: 64px 0 40px; }
.mrc-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; }
.mrc-footer__logo { font-family: var(--mrc-font-head); font-weight: 800; font-size: 22px; color: #fff; display: inline-block; margin-bottom: 12px; }
.mrc-footer__about { color: var(--mrc-text-muted); font-size: 14px; line-height: 1.6; max-width: 360px; }
.mrc-footer__socials { display: flex; gap: 12px; margin-top: 20px; }
.mrc-footer__social-btn {
    width: 38px; height: 38px;
    display: flex; align-items: center; justify-content: center;
    background: var(--mrc-bg);
    color: var(--mrc-accent);
}
.mrc-footer__social-btn svg { width: 18px; height: 18px; }
.mrc-footer__social-btn:hover { color: #fff; background: rgba(255,106,0,.15); }
.mrc-footer__col-title { font-family: var(--mrc-font-head); font-weight: 700; font-size: 15px; color: #fff; margin: 0 0 16px; }
.mrc-footer__links .mrc-nav__list { flex-direction: column; align-items: flex-start; gap: 10px; }
.mrc-footer__links .mrc-nav__link { font-size: 14px; text-transform: none; color: var(--mrc-text-muted); font-weight: 400; }
.mrc-footer__links .mrc-nav__link:hover { color: #fff; }
.mrc-footer__contacts { display: flex; flex-direction: column; gap: 10px; font-size: 14px; color: var(--mrc-text-muted); }
.mrc-footer__contacts a { color: var(--mrc-text-muted); }
.mrc-footer__contacts a:hover { color: #fff; }
.mrc-footer__bottom { border-top: 1px solid var(--mrc-border); padding: 20px 0; }
.mrc-footer__bottom-inner { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 12px; color: var(--mrc-text-muted); }
@media (max-width: 900px) {
    .mrc-footer__grid { grid-template-columns: 1fr; gap: 32px; }
}

/* ════════════════════════════════════════════════════════
   LAYOUT SHELL (вместо Newspaper main.css)
   ════════════════════════════════════════════════════════ */
#td-outer-wrap {
    position: relative;
    overflow-x: hidden;
    min-height: 100%;
}
.td-content-wrap { position: relative; }
.td-main-content-wrap {
    background: #fff;
}
.td-main-page-wrap {
    padding-top: 48px;
}
.td-container {
    width: 1068px;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;
}
@media (max-width: 767px) {
    .td-main-page-wrap { padding-top: 32px; }
    .td-main-content-wrap { padding-bottom: 26px; }
}

/* Лёгкие стили для оставшихся виджетных страниц */
.news-list .items .item .title { font-size: 18px; }
.news-list .items .item .date { margin-top: 5px; font-size: 12px; }
.news-list .items .item + .item { margin-top: 30px; }
#show-more { margin-top: 20px; font-size: 30px; }
.gallery-block .items { display: flex; flex-wrap: wrap; }
.modal { z-index: 9999; }

/* ════════════════════════════════════════════════════════
   ТЕКСТ ВНУТРЕННИХ СТРАНИЦ (.td-container.text)
   Контент из админки (страницы, контакты, услуги и т.п.) —
   раньше рендерился почти без стилей поверх CSS-reset темы.
   ════════════════════════════════════════════════════════ */
.td-container.text {
    font-family: var(--mrc-font-body);
    font-size: 16px;
    line-height: 1.7;
    color: #3A342E;
    min-height: 400px;
    padding-bottom: 40px;
}
.td-container.text > *:first-child { margin-top: 0; }

.td-container.text h1 {
    font-family: var(--mrc-font-head);
    font-weight: 800;
    font-size: 36px;
    line-height: 1.2;
    color: #17120E;
    margin: 0 0 24px;
}
.td-container.text h2 {
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.25;
    color: #17120E;
    margin: 40px 0 16px;
}
.td-container.text h3 {
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    color: #17120E;
    margin: 32px 0 12px;
}
.td-container.text h4, .td-container.text h5, .td-container.text h6 {
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 16px;
    color: #17120E;
    margin: 24px 0 10px;
}
.td-container.text h1:first-child, .td-container.text h2:first-child, .td-container.text h3:first-child {
    margin-top: 0;
}

.td-container.text p { margin: 0 0 18px; }
.td-container.text p:last-child { margin-bottom: 0; }

.td-container.text strong, .td-container.text b { font-weight: 700; color: #17120E; }
.td-container.text em, .td-container.text i { font-style: italic; }

.td-container.text a {
    color: var(--mrc-accent);
    text-decoration: underline;
    text-decoration-color: rgba(255,106,0,.35);
    text-underline-offset: 2px;
    transition: color .15s ease;
}
.td-container.text a:hover { color: var(--mrc-accent-2); text-decoration-color: currentColor; }

.td-container.text ul, .td-container.text ol {
    margin: 0 0 18px;
    padding-left: 22px;
}
.td-container.text ul { list-style: disc; }
.td-container.text ol { list-style: decimal; }
.td-container.text li { margin-bottom: 8px; }
.td-container.text li > ul, .td-container.text li > ol { margin-top: 8px; margin-bottom: 0; }

.td-container.text blockquote {
    margin: 24px 0;
    padding: 4px 24px;
    border-left: 3px solid var(--mrc-accent);
    color: #5A544C;
    font-style: italic;
}

.td-container.text hr {
    border: 0;
    border-top: 1px solid #E7E2DA;
    margin: 32px 0;
}

.td-container.text img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 24px 0;
}

.td-container.text table {
    width: 100%;
    border-collapse: collapse;
    margin: 24px 0;
    font-size: 15px;
}
.td-container.text th, .td-container.text td {
    padding: 12px 16px;
    border: 1px solid #E7E2DA;
    text-align: left;
}
.td-container.text th {
    background: #17120E;
    color: #fff;
    font-family: var(--mrc-font-head);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .5px;
    text-transform: uppercase;
}
.td-container.text tbody tr:nth-child(even) { background: #FAF8F5; }

.td-container.text .breadcrumb {
    background: none;
    padding: 0 0 24px;
    margin: 0 0 24px;
    font-size: 13px;
    color: #9A9284;
    border-bottom: 1px solid #E7E2DA;
}
.td-container.text .breadcrumb a { color: #9A9284; text-decoration: none; }
.td-container.text .breadcrumb a:hover { color: var(--mrc-accent); }
.td-container.text .breadcrumb li + li::before { content: "/"; padding: 0 8px; color: #C8C0B4; }
