/* Шапка и подвал сайта (2026-09, новое оформление) — на всех страницах шаблона 89. Разметка — template/89/chrome/chrome.php.
   Токены — те же, что у страниц нового оформления (phones-v2.css): графит #1d232b, зелёный акцент #64d57a, Telegram #1877ab, MAX #6d2edd.
   Все правила — по классам sc-…, чтобы не задеть старые стили; старые стили темы (сброс, body 12px/1) перекрываются явными значениями. */

/* Сайт только светлый: браузеры с принудительной ночной темой (Chrome на Android, браузеры на его основе) иначе сами
   затемняют страницу — фон карточек становится чёрным, а фото устройств на белом фоне почти не видно. */
:root { color-scheme: only light; }

.sc-head, .sc-strip, .sc-drawer, .sc-foot {
    --sc-ink: #1d232b;
    --sc-ink-2: #161b21;
    --sc-ink-3: #262e37;
    --sc-text: #323a45;
    --sc-muted: #5b6670;
    --sc-line: #e4e8ea;
    --sc-accent: #64d57a;
    --sc-accent-hover: #52c46a;
    --sc-green: #23803f;
    --sc-tint: #f0fbf2;
    --sc-tg: #1877ab;
    --sc-tg-hover: #156fa0;
    --sc-max: #6d2edd;
    --sc-max-hover: #5d22c6;
    --sc-ease: cubic-bezier(.2, 0, 0, 1);
    --sc-shadow: 0 24px 60px -24px rgba(29, 35, 43, .45);
    font-family: 'Open Sans', Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-align: left;
}
.sc-head *, .sc-strip *, .sc-drawer *, .sc-foot * { box-sizing: border-box; }
.sc-head ul, .sc-drawer ul, .sc-foot ul { margin: 0; padding: 0; list-style: none; }
.sc-head li, .sc-drawer li, .sc-foot li { margin: 0; padding: 0; background: none; }
.sc-head li::before, .sc-drawer li::before, .sc-foot li::before { content: none; }
.sc-head p, .sc-drawer p, .sc-foot p { margin: 0; }
.sc-head a, .sc-strip a, .sc-drawer a, .sc-foot a { text-decoration: none; }
.sc-wrap { width: 100%; max-width: 1288px; margin: 0 auto; padding: 0 24px; }
.sc-ico { display: block; flex: 0 0 auto; }
html { scroll-padding-top: 96px; }

/* кнопки */
.sc-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 0 22px;
    border: 1.5px solid transparent; border-radius: 999px; font: 600 15px/1.1 'Open Sans', Arial, sans-serif; white-space: nowrap; cursor: pointer;
    transition: background-color 160ms var(--sc-ease), border-color 160ms var(--sc-ease), color 160ms var(--sc-ease), transform 160ms var(--sc-ease);
}
a.sc-btn--accent, a.sc-btn--accent:hover, a.sc-btn--accent:focus, .sc-btn--accent a { color: var(--sc-ink); }
.sc-btn--accent { background: var(--sc-accent); }
.sc-btn--accent:hover { background: var(--sc-accent-hover); }
a.sc-btn--line { border-color: #cdd6d1; background: #fff; color: var(--sc-ink); }
a.sc-btn--line:hover { border-color: var(--sc-green); color: var(--sc-green); }
.sc-btn--block { display: flex; width: 100%; }
.sc-iconbtn {
    display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px;
    background: rgba(255, 255, 255, .08); color: #fff; transition: background-color 160ms var(--sc-ease);
}
a.sc-iconbtn, a.sc-iconbtn:hover, a.sc-iconbtn:focus { color: #fff; }
.sc-iconbtn:hover { background: rgba(255, 255, 255, .16); }
.sc-msg { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; }
a.sc-msg--btn { justify-content: center; min-height: 44px; padding: 0 18px; border-radius: 999px; color: #fff; font-size: 15px; }
a.sc-msg--btn.sc-msg--tg { background: var(--sc-tg); }
a.sc-msg--btn.sc-msg--tg:hover { background: var(--sc-tg-hover); color: #fff; }
a.sc-msg--btn.sc-msg--max { background: var(--sc-max); }
a.sc-msg--btn.sc-msg--max:hover { background: var(--sc-max-hover); color: #fff; }
.sc-head a:focus-visible, .sc-head button:focus-visible, .sc-drawer a:focus-visible, .sc-drawer summary:focus-visible, .sc-foot a:focus-visible, .sc-strip a:focus-visible {
    outline: 3px solid rgba(100, 213, 122, .75); outline-offset: 2px; border-radius: 8px;
}

/* ================= шапка ================= */
/* липкая: при прокрутке строка над меню уезжает, основная строка остаётся сверху */
header.sc-head { position: -webkit-sticky; position: sticky; top: -41px; z-index: 900; height: auto; background: var(--sc-ink); color: #fff; }
.sc-head.is-stuck { box-shadow: 0 10px 30px -18px rgba(0, 0, 0, .7); }
.sc-head__bar { height: 41px; border-bottom: 1px solid rgba(255, 255, 255, .07); background: var(--sc-ink-2); font-size: 13px; line-height: 1.2; }
.sc-head__bar-in { display: flex; align-items: center; gap: 24px; height: 40px; }
.sc-head__bar a, .sc-head__bar span { color: rgba(255, 255, 255, .76); }
.sc-head__place, .sc-head__hours, .sc-head__courier { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.sc-head__place b { color: #fff; font-weight: 600; }
.sc-head__bar .sc-ico { color: var(--sc-accent); }
.sc-head__bar a:hover, .sc-head__bar a:hover span, .sc-head__bar a:hover b { color: #fff; }
.sc-head__sp { flex: 1 1 auto; }
.sc-head__place { min-width: 0; }   /* мало места — сокращается адрес (многоточие), а не переносится «Оформить заявку» */
.sc-head__place > span { overflow: hidden; text-overflow: ellipsis; }
.sc-head__order { display: none; font-weight: 600; white-space: nowrap; }
.sc-head .sc-head__bar a.sc-head__order { color: var(--sc-accent); }
.sc-head__msgs { display: inline-flex; align-items: center; gap: 16px; }
.sc-head .sc-head__bar a.sc-msg--sm span { color: rgba(255, 255, 255, .76); }
.sc-head .sc-head__bar a.sc-msg--tg .sc-ico { color: #4db4ea; }
.sc-head .sc-head__bar a.sc-msg--max .sc-ico { color: #a98bf0; }
.sc-head .sc-head__bar a.sc-msg--sm:hover span { color: #fff; }

.sc-head__main { position: relative; }
.sc-head__main-in { display: flex; align-items: center; gap: 28px; height: 76px; }
.sc-logo { display: block; flex: 0 0 auto; line-height: 0; }
.sc-logo img { display: block; width: 168px; height: auto; max-width: none; }

.sc-nav { flex: 1 1 auto; min-width: 0; }
.sc-nav__list { display: flex; align-items: center; gap: 2px; }
.sc-nav__item { position: static; display: flex; align-items: center; }
.sc-nav__link, .sc-nav__btn {
    display: inline-flex; align-items: center; gap: 4px; height: 44px; padding: 0 12px; border: 0; border-radius: 10px; background: none;
    color: rgba(255, 255, 255, .92); font: 600 15px/1 'Open Sans', Arial, sans-serif; white-space: nowrap; cursor: pointer;
    transition: background-color 160ms var(--sc-ease), color 160ms var(--sc-ease);
}
a.sc-nav__link, a.sc-nav__link:focus { color: rgba(255, 255, 255, .92); }
.sc-nav__link:hover, .sc-nav__btn:hover, .sc-nav__item.is-open > .sc-nav__btn, .sc-nav__item.is-open > .sc-nav__link { background: rgba(255, 255, 255, .08); color: #fff; }
.sc-nav__item--drop .sc-nav__link { padding-right: 4px; border-radius: 10px 0 0 10px; }
.sc-nav__toggle {
    display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 44px; margin: 0; padding: 0 6px 0 0;
    border: 0; border-radius: 0 10px 10px 0; background: none; color: rgba(255, 255, 255, .7); cursor: pointer;
}
.sc-nav__toggle:hover, .sc-nav__item--drop:hover .sc-nav__toggle, .sc-nav__item.is-open .sc-nav__toggle { background: rgba(255, 255, 255, .08); color: #fff; }
.sc-nav__btn .sc-ico, .sc-nav__toggle .sc-ico { transition: transform 200ms var(--sc-ease); }
.sc-nav__item.is-open .sc-nav__btn .sc-ico, .sc-nav__item.is-open .sc-nav__toggle .sc-ico { transform: rotate(180deg); }
.sc-nav__item.is-current > .sc-nav__link, .sc-nav__item.is-current > .sc-nav__btn { box-shadow: inset 0 -2px 0 var(--sc-accent); border-radius: 10px 10px 0 0; }
.sc-nav__item--drop.is-current > .sc-nav__toggle { box-shadow: inset 0 -2px 0 var(--sc-accent); border-radius: 0; }

/* выпадающие списки «О компании», «Сервисный центр» */
.sc-nav__item--drop { position: relative; }
.sc-drop {
    position: absolute; left: 0; top: calc(100% + 16px); z-index: 5; display: none; min-width: 250px; padding: 8px;
    background: #fff; border-radius: 16px; box-shadow: var(--sc-shadow);
}
.sc-drop::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }   /* мостик: указатель не теряет меню */
.sc-drop a { display: block; padding: 10px 14px; border-radius: 10px; color: var(--sc-ink); font-size: 15px; font-weight: 600; line-height: 1.3; white-space: nowrap; }
.sc-drop a:hover, .sc-drop a:focus { background: var(--sc-tint); color: var(--sc-green); }
.sc-nav__item.is-open > .sc-drop { display: block; animation: sc-in 200ms var(--sc-ease); }

/* большое меню «Услуги»: слева виды техники, справа марки выбранного вида */
.sc-mega { position: absolute; left: 0; right: 0; top: 100%; z-index: 5; display: none; padding: 0 0 24px; }
.sc-mega::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.sc-nav__item.is-open > .sc-mega { display: block; animation: sc-in 220ms var(--sc-ease); }
.sc-mega__in { position: relative; min-height: 440px; margin-top: 8px; padding: 18px; background: #fff; border-radius: 22px; box-shadow: var(--sc-shadow); }
.sc-mega__cats { width: 300px; }
.sc-mega__catlink {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-radius: 12px;
    color: var(--sc-ink); font-size: 16px; font-weight: 600; line-height: 1.25;
}
a.sc-mega__catlink, a.sc-mega__catlink:hover { color: var(--sc-ink); }
.sc-mega__catlink .sc-ico { color: #a3adb4; transition: transform 200ms var(--sc-ease), color 160ms; }
.sc-mega__cat.is-active > .sc-mega__catlink { background: var(--sc-tint); color: var(--sc-green); }
.sc-mega__cat.is-active > .sc-mega__catlink .sc-ico { color: var(--sc-green); transform: translateX(3px); }
.sc-mega__pane { position: absolute; left: 342px; right: 26px; top: 26px; bottom: 26px; display: flex; flex-direction: column; visibility: hidden; opacity: 0; }
.sc-mega__cat.is-active > .sc-mega__pane { visibility: visible; opacity: 1; transition: opacity 200ms var(--sc-ease); }
.sc-mega__head { margin: 0 0 14px; color: var(--sc-muted); font-size: 14px; line-height: 1.4; }
.sc-mega__brands { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: min-content; gap: 2px 16px; align-content: start; }
.sc-mega__brands--many { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sc-mega__brands a { display: block; padding: 7px 10px; border-radius: 8px; color: var(--sc-text); font-size: 15px; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sc-mega__brands a:hover, .sc-mega__brands a:focus { background: var(--sc-tint); color: var(--sc-green); }
a.sc-mega__all { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; margin-top: auto; padding: 12px 0 0; color: var(--sc-green); font-weight: 600; font-size: 15px; }
a.sc-mega__all:hover { color: #1a6d33; }
@keyframes sc-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
/* без скриптов меню открывается наведением и фокусом */
html:not(.sc-js) .sc-nav__item[data-sc-menu]:hover > .sc-mega, html:not(.sc-js) .sc-nav__item[data-sc-menu]:focus-within > .sc-mega,
html:not(.sc-js) .sc-nav__item[data-sc-menu]:hover > .sc-drop, html:not(.sc-js) .sc-nav__item[data-sc-menu]:focus-within > .sc-drop { display: block; }

/* телефон и заявка */
.sc-head__actions { display: flex; align-items: center; gap: 18px; flex: 0 0 auto; margin-left: auto; }
.sc-tel-wrap { display: inline-flex; }
a.sc-head__phone { color: #fff; font-size: 19px; font-weight: 700; letter-spacing: .01em; white-space: nowrap; }
a.sc-head__phone span { color: var(--sc-accent); font-weight: 600; }
a.sc-head__phone:hover { color: var(--sc-accent); }
.sc-head__cta { min-height: 46px; }
.sc-head__call, .sc-burger { display: none; }
/* «Узнать статус ремонта» — строкой под телефоном; на телефоне — кнопка «Статус» (см. адаптив) */
.sc-head__contact { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; }
a.sc-head__status { display: inline-flex; align-items: center; gap: 6px; color: rgba(255, 255, 255, .74); font: 600 13px/1.25 'Open Sans', Arial, sans-serif;
    white-space: nowrap; transition: color 160ms var(--sc-ease), border-color 160ms var(--sc-ease), background-color 160ms var(--sc-ease); }
a.sc-head__status .sc-ico { color: var(--sc-accent); }
a.sc-head__status:hover, a.sc-head__status:focus { color: #fff; }
a.sc-head__status:hover .sc-head__status-full { text-decoration: underline; text-underline-offset: 3px; }
.sc-head__status-short { display: none; }

/* строка под шапкой (телефон) */
.sc-strip { display: none; background: var(--sc-ink-2); color: rgba(255, 255, 255, .78); font-size: 13px; line-height: 1.3; }
.sc-strip__in { display: flex; align-items: center; gap: 14px; min-height: 36px; overflow: hidden; white-space: nowrap; }
.sc-strip a, .sc-strip span { display: inline-flex; align-items: center; gap: 6px; color: rgba(255, 255, 255, .82); }
.sc-strip .sc-ico { color: var(--sc-accent); }
.sc-strip span span { display: inline; overflow: hidden; text-overflow: ellipsis; }

/* ================= меню для телефона и планшета ================= */
.sc-drawer { position: fixed; inset: 0; z-index: 1000; display: none; }
.sc-drawer.is-open, .sc-drawer:target { display: block; }
.sc-drawer__overlay { position: absolute; inset: 0; background: rgba(13, 17, 22, .55); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
.sc-drawer__panel {
    position: absolute; top: 0; right: 0; bottom: 0; display: flex; flex-direction: column; gap: 18px; width: min(420px, 100%);
    padding: 12px 18px 28px; overflow-y: auto; overscroll-behavior: contain; background: #fff; color: var(--sc-text); outline: none;
    box-shadow: -20px 0 60px -20px rgba(0, 0, 0, .5);
}
.sc-drawer.is-open .sc-drawer__panel { animation: sc-slide 280ms var(--sc-ease); }
.sc-drawer.is-open .sc-drawer__overlay { animation: sc-fade 280ms var(--sc-ease); }
@keyframes sc-slide { from { transform: translateX(40px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes sc-fade { from { opacity: 0; } to { opacity: 1; } }
.sc-drawer__top { display: flex; align-items: center; justify-content: space-between; min-height: 48px; }
.sc-drawer__title { color: var(--sc-ink); font-size: 20px; font-weight: 700; }
.sc-drawer .sc-iconbtn { background: #f1f4f2; color: var(--sc-ink); }
a.sc-drawer__close, a.sc-drawer__close:hover { color: var(--sc-ink); }
.sc-drawer__contact { display: flex; flex-direction: column; gap: 10px; }
.sc-drawer__contact .sc-tel-wrap { display: block; }
.sc-drawer__contact .sc-btn { min-height: 52px; font-size: 17px; }
.sc-drawer__status .sc-ico { color: var(--sc-green); }
.sc-drawer__msgs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sc-drawer__nav { display: flex; flex-direction: column; border-top: 1px solid var(--sc-line); }
.sc-acc { border-bottom: 1px solid var(--sc-line); }
.sc-acc summary {
    display: flex; align-items: center; justify-content: space-between; min-height: 54px; padding: 0 4px; list-style: none; cursor: pointer;
    color: var(--sc-ink); font-size: 17px; font-weight: 700;
}
.sc-acc summary::-webkit-details-marker { display: none; }
.sc-acc summary .sc-ico { color: var(--sc-muted); transition: transform 200ms var(--sc-ease); }
.sc-acc[open] summary .sc-ico { transform: rotate(180deg); }
.sc-acc ul { padding: 0 0 12px; }
.sc-acc a { display: block; padding: 10px 12px; border-radius: 10px; color: var(--sc-text); font-size: 16px; line-height: 1.3; }
.sc-acc a:hover, .sc-acc a:focus { background: var(--sc-tint); color: var(--sc-green); }
a.sc-drawer__link { display: flex; align-items: center; min-height: 54px; padding: 0 4px; border-bottom: 1px solid var(--sc-line); color: var(--sc-ink); font-size: 17px; font-weight: 700; }
a.sc-drawer__link:hover { color: var(--sc-green); }
.sc-drawer__info { display: flex; flex-direction: column; gap: 12px; color: var(--sc-muted); font-size: 15px; line-height: 1.5; }
.sc-drawer__info p { display: flex; gap: 10px; }
.sc-drawer__info .sc-ico { margin-top: 2px; color: var(--sc-green); }
.sc-drawer__links { flex-wrap: wrap; gap: 8px 18px !important; padding-left: 28px; }
.sc-drawer__links a { color: var(--sc-green); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
html.sc-lock, html.sc-lock body { overflow: hidden; }

/* ================= блок «Оставьте заявку» над подвалом (компонент заявки на страницах ремонта, блога…) ================= */
#orderform__fos.orderform { margin: 72px 0 0; padding: 0 0 72px; }
#orderform__fos > .container {
    max-width: 1240px; width: auto; margin: 0 24px; padding: 44px 32px 48px;
    background: radial-gradient(ellipse 60% 90% at 0% 0%, rgba(100, 213, 122, .16), rgba(100, 213, 122, 0) 70%), #f0fbf2;
    border: 1px solid #d6efdd; border-radius: 28px; text-align: center;
}
@media (min-width: 1289px) { #orderform__fos > .container { margin: 0 auto; } }
#orderform__fos > .container > p { color: #1d232b; font-size: 30px; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; }
#orderform__fos .orderform__actions { margin-top: 24px; }
#orderform__fos a.orderform__btn { height: 52px; border-radius: 999px; font-size: 15px; letter-spacing: .01em; text-transform: none; }
#orderform__fos a.orderform__btn--call { background: #64d57a; color: #1d232b; }
#orderform__fos a.orderform__btn--call:hover { background: #52c46a; color: #1d232b; }
#orderform__fos a.orderform__btn--call .orderform__ico { fill: #1d232b; }
#orderform__fos a.orderform__btn--tg { background: #1877ab; }
#orderform__fos a.orderform__btn--tg:hover { background: #156fa0; }

/* ================= подвал ================= */
.sc-foot { position: relative; margin-top: 0; border-top: 1px solid rgba(255, 255, 255, .07); background: var(--sc-ink); color: rgba(255, 255, 255, .74); font-size: 15px; line-height: 1.55; }
.sc-foot__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr); gap: 40px 48px; padding-top: 64px; padding-bottom: 56px; }
.sc-foot__text { margin-top: 18px !important; max-width: 34ch; color: rgba(255, 255, 255, .7); }
.sc-foot__title { margin-bottom: 14px !important; color: rgba(255, 255, 255, .5); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.sc-foot__col ul { display: flex; flex-direction: column; gap: 4px; }
.sc-foot__col li a, .sc-foot__links a { color: rgba(255, 255, 255, .86); transition: color 160ms var(--sc-ease); }
.sc-foot__col li a:hover, .sc-foot__links a:hover { color: var(--sc-accent); }
.sc-foot__col li a { display: inline-block; padding: 3px 0; }
a.sc-foot__phone { color: #fff; font-size: 24px; font-weight: 700; line-height: 1.2; letter-spacing: .01em; }
a.sc-foot__phone:hover { color: var(--sc-accent); }
.sc-foot__msgs { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0 18px; }
.sc-foot__line { display: flex; gap: 10px; margin-top: 10px !important; }
.sc-foot__line .sc-ico { margin-top: 2px; color: var(--sc-accent); }
.sc-foot__links { display: flex; flex-direction: column; gap: 6px; margin-top: 16px !important; }
.sc-foot__links a { text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .3); text-underline-offset: 3px; }
.sc-foot__bottom { border-top: 1px solid rgba(255, 255, 255, .08); background: var(--sc-ink-2); color: rgba(255, 255, 255, .56); font-size: 13px; line-height: 1.5; }
.sc-foot__bottom-in { display: flex; align-items: center; gap: 8px 28px; flex-wrap: wrap; min-height: 64px; padding-top: 14px; padding-bottom: 14px; }
.sc-foot__bottom-in p:nth-child(2) { flex: 1 1 auto; }
a.sc-foot__top { display: inline-flex; align-items: center; gap: 6px; color: rgba(255, 255, 255, .8); font-weight: 600; }
a.sc-foot__top:hover { color: var(--sc-accent); }

/* ================= адаптив ================= */
@media (max-width: 1279px) {
    .sc-head__main-in { gap: 18px; }
    .sc-logo img { width: 150px; }
    .sc-nav__link, .sc-nav__btn { padding: 0 9px; font-size: 14.5px; }
    .sc-head__cta { display: none; }
    .sc-head__order { display: inline; }
    .sc-head__courier { display: none; }
    .sc-foot__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1150px) {
    .sc-head__bar-in, .sc-head__msgs { gap: 12px; }
}
@media (max-width: 1023px) {
    .sc-nav { display: none; }
    .sc-head__bar-in { gap: 18px; }
    .sc-head__hours { display: none; }
    .sc-head__order { display: none; }
    .sc-head__main-in { height: 68px; }
    .sc-burger { display: inline-flex; }
    .sc-head__actions { gap: 10px; }
}
@media (max-width: 767px) {
    .sc-wrap { padding: 0 16px; }
    html { scroll-padding-top: 72px; }
    /* на телефоне шапка прячется при прокрутке вниз и возвращается при прокрутке вверх */
    header.sc-head { top: 0; transition: transform 280ms var(--sc-ease); }
    header.sc-head.is-hidden { transform: translateY(-100%); }
    .sc-head__bar { display: none; }
    .sc-head__main-in { height: 60px; gap: 10px; }
    .sc-logo img { width: 128px; }
    .sc-head .sc-tel-wrap { display: none; }
    .sc-head__call { display: inline-flex; }
    a.sc-head__status { height: 38px; padding: 0 12px; border: 1.5px solid rgba(255, 255, 255, .24); border-radius: 999px; color: #fff; font-size: 14px; }
    a.sc-head__status:hover, a.sc-head__status:focus { border-color: var(--sc-accent); background: rgba(255, 255, 255, .06); }
    .sc-head__status-full { display: none; }
    .sc-head__status-short { display: inline; }
    .sc-strip { display: block; }
    #orderform__fos.orderform { margin-top: 48px; padding-bottom: 48px; }
    #orderform__fos > .container { margin: 0 16px; padding: 30px 18px 32px; border-radius: 22px; }
    #orderform__fos > .container > p { font-size: 22px; }
    .sc-foot__grid { grid-template-columns: 1fr; gap: 30px; padding-top: 44px; padding-bottom: 36px; }
    .sc-foot__about .sc-logo img { width: 150px; }
    .sc-foot__col ul { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 16px; }
    .sc-foot__contacts .sc-foot__links { display: flex; }
    .sc-foot__contacts .sc-foot__msgs .sc-msg--btn { flex: 1 1 0; }
    .sc-foot__bottom-in { flex-direction: column; align-items: flex-start; gap: 6px; padding-top: 18px; padding-bottom: 22px; }
}
@media (max-width: 399px) {
    a.sc-head__status .sc-ico { display: none; }   /* узкий телефон: в шапке логотип, «Статус», звонок и меню — без значка */
}
@media (max-width: 359px) {
    .sc-logo img { width: 112px; }
    .sc-iconbtn { width: 40px; height: 40px; }
    .sc-head__actions { gap: 8px; }
    a.sc-head__status { padding: 0 9px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
    .sc-head *, .sc-drawer *, .sc-foot * { animation: none !important; transition: none !important; }
    header.sc-head { transition: none; }
}
@media print {
    header.sc-head, .sc-strip, .sc-drawer { position: static; display: none; }
}

/* ---------- подвал: ссылка на политику обработки персональных данных ---------- */
.sc-foot__bottom a.sc-foot__legal { color: rgba(255, 255, 255, .72); text-decoration: underline; text-underline-offset: 3px; }
.sc-foot__bottom a.sc-foot__legal:hover { color: #fff; }

/* ---------- галочка «Даю согласие на обработку персональных данных» в формах (вставляет site.js) ----------
   Формы сайта старые и со своими глобальными стилями (label, input, a), поэтому здесь всё задано явно. */
.sc-consent { display: block; clear: both; box-sizing: border-box; width: auto; max-width: 100%; min-width: 0; margin: 14px 0 16px; padding: 0; text-align: left;
    font: 400 13px/1.45 'Open Sans', Arial, sans-serif; color: #4b5560; }
.sc-consent .sc-consent__label { position: relative; display: flex; align-items: flex-start; gap: 10px; float: none; width: auto; height: auto;
    margin: 0; padding: 0; border: 0; background: none; cursor: pointer; font: inherit; color: inherit; text-transform: none; letter-spacing: 0; }
.sc-consent input.sc-consent__input[type="checkbox"] {   /* старые формы растягивают input на всю ширину (#questionform input…) — фиксируем */
    position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1; display: block !important; box-sizing: border-box !important;
    width: 20px !important; min-width: 0 !important; max-width: 20px !important; height: 20px !important; min-height: 0 !important;
    margin: 0 !important; padding: 0 !important; border: 0 !important; opacity: 0 !important; cursor: pointer; }
.sc-consent .sc-consent__box { flex: 0 0 20px; box-sizing: border-box; width: 20px; height: 20px; border: 2px solid #9aa7b0; border-radius: 6px;
    background: #fff center / 14px 14px no-repeat; transition: background-color 160ms, border-color 160ms, box-shadow 160ms; }
.sc-consent input.sc-consent__input:checked + .sc-consent__box { border-color: #23803f; background-color: #23803f;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
.sc-consent input.sc-consent__input:focus-visible + .sc-consent__box { box-shadow: 0 0 0 3px rgba(35, 128, 63, .35); }
.sc-consent .sc-consent__text { flex: 1 1 auto; min-width: 0; padding-top: 1px; white-space: normal; overflow-wrap: break-word; font: 400 13px/1.45 'Open Sans', Arial, sans-serif; color: #4b5560; text-align: left; }
.sc-consent .sc-consent__text a { color: #23803f; text-decoration: underline; text-underline-offset: 2px; }
.sc-consent.is-error .sc-consent__box { border-color: #c62828; box-shadow: 0 0 0 3px rgba(198, 40, 40, .18); }
.sc-consent p.sc-consent__err {   /* у форм свои стили для p (#popup-request-form p…) — задаём жёстко */
    display: block; box-sizing: border-box !important; width: 100% !important; max-width: 100% !important; float: none !important;
    margin: 6px 0 0 !important; padding: 0 0 0 30px !important; background: none !important; text-align: left !important;
    white-space: normal !important; overflow-wrap: break-word;
    font: 600 12.5px/1.4 'Open Sans', Arial, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; color: #c62828 !important; }
.sc-consent p.sc-consent__err[hidden] { display: none !important; }
/* строка «Нажимая «Заказать», вы соглашаетесь с условиями обработки персональных данных» — заявка, курьер, письмо директору…
   (у старых форм свои стили для p — задаём жёстко) */
p.sc-consent-note {
    display: block !important; clear: both; box-sizing: border-box !important; width: auto !important; max-width: 100% !important; float: none !important;
    margin: 12px 0 14px !important; padding: 0 !important; border: 0 !important; background: none !important; text-align: left !important;
    white-space: normal !important; overflow-wrap: break-word; text-indent: 0 !important;
    font: 400 12.5px/1.45 'Open Sans', Arial, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; color: #5b6670 !important; }
p.sc-consent-note a { display: inline !important; float: none !important; margin: 0 !important; padding: 0 !important; background: none !important;
    font: inherit !important; color: #23803f !important; text-decoration: underline !important; text-underline-offset: 2px; }
p.sc-consent-note span { display: inline !important; float: none !important; margin: 0 !important; padding: 0 !important; font: inherit !important; color: inherit !important; }

/* ---------- страницы «Политика обработки персональных данных» и «Согласие» (текст из админки) ---------- */
.pd-doc { max-width: 820px; margin: 0 0 48px; font-size: 16px; line-height: 1.65; color: #323a45; }
.contentfield .pd-doc h2 { margin: 32px 0 10px; font-size: 21px; line-height: 1.3; font-weight: 700; color: #1d232b; text-transform: none; text-align: left; }
.contentfield .pd-doc p, .contentfield .pd-doc li { margin: 0 0 12px; text-align: left; color: #3d4650; }
.contentfield .pd-doc ul { margin: 0 0 16px; padding: 0 0 0 22px; list-style: disc; }
.contentfield .pd-doc ul li { margin: 0 0 6px !important; padding: 0; list-style: disc; text-align: left; }
.contentfield .pd-doc a { color: #23803f; text-decoration: underline; }
.pd-doc .pd-doc__date { color: #5b6670; font-size: 14px; }
.pd-doc .pd-fill { padding: 0 4px; border-radius: 4px; background: #fff3c4; }

/* ---------- окно «Бесплатный курьер» (разметка — sc_courier() в chrome.php, открывает site.js через fancybox) ----------
   Тарифы, шаги и тексты — из блока «Некогда ехать? Вызовите курьера» главной. Окно лежит в подвале каждой страницы скрытым. */
.sc-courier-holder[hidden] { display: none !important; }
.sc-courier {
    --sc-ink: #1d232b; --sc-text: #323a45; --sc-muted: #5b6670; --sc-line: #e4e8ea; --sc-green: #23803f; --sc-tint: #f0fbf2;
    --sc-accent: #64d57a; --sc-accent-hover: #52c46a; --sc-tg: #1877ab; --sc-tg-hover: #156fa0; --sc-max: #6d2edd; --sc-max-hover: #5d22c6;
    box-sizing: border-box; width: min(760px, calc(100vw - 40px)); padding: 30px 32px 24px; border-radius: 24px; background: #fff;
    color: var(--sc-text); font: 400 15px/1.55 'Open Sans', Arial, sans-serif; text-align: left; -webkit-font-smoothing: antialiased;
}
.sc-courier * { box-sizing: border-box; }
.sc-courier ul, .sc-courier ol { margin: 0; padding: 0; list-style: none; }
.sc-courier li { margin: 0 !important; padding: 0; background: none; list-style: none; text-align: left; }
.sc-courier li::before { content: none; }
.sc-courier p { margin: 0; }
.sc-courier .sc-ico, .sc-courier svg { flex: 0 0 auto; }
.sc-courier__head { display: flex; align-items: flex-start; gap: 16px; padding-right: 30px; }
.sc-courier__badge { display: flex; align-items: center; justify-content: center; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 16px;
    background: var(--sc-tint); color: var(--sc-green); }
.sc-courier .sc-courier__title { font: 800 24px/1.2 'Open Sans', Arial, sans-serif; letter-spacing: -.01em; color: var(--sc-ink); }
.sc-courier .sc-courier__lead { margin-top: 6px; font-size: 15px; line-height: 1.55; color: var(--sc-muted); }
.sc-courier__tariffs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 22px !important; }
.sc-courier li.sc-courier__tariff { display: flex; flex-direction: column; gap: 6px; padding: 16px 16px 18px; border: 1px solid var(--sc-line); border-radius: 18px; background: #fff; }
.sc-courier li.sc-courier__tariff--free { border-color: rgba(35, 128, 63, .28); background: var(--sc-tint); }
.sc-courier a, .sc-courier a:hover, .sc-courier a:focus { text-decoration: none !important; }
.sc-courier__ticon { display: inline-flex; color: var(--sc-green); }
.sc-courier__ticon svg { width: 24px; height: 24px; }
.sc-courier__price { font: 800 22px/1.15 'Open Sans', Arial, sans-serif; color: var(--sc-ink); }
.sc-courier__tariff--free .sc-courier__price { color: var(--sc-green); }
.sc-courier__cond { font-size: 14px; line-height: 1.45; color: var(--sc-muted); }
.sc-courier .sc-courier__subtitle { margin-top: 22px; font: 700 12px/1.3 'Open Sans', Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--sc-muted); }
.sc-courier__steps { display: grid; gap: 10px; margin-top: 10px !important; }
.sc-courier__steps li { display: flex; align-items: flex-start; gap: 12px; font-size: 14.5px; line-height: 1.5; }
.sc-courier__num { flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: var(--sc-ink); color: #fff;
    font: 700 13px/26px 'Open Sans', Arial, sans-serif; text-align: center; }
.sc-courier__steps b { font-weight: 700; color: var(--sc-ink); }
.sc-courier__cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.sc-courier .sc-tel-wrap { display: contents; }
.sc-courier .sc-courier__call, .sc-courier .sc-courier__order { flex: 1 1 240px; justify-content: center; gap: 8px; min-height: 52px; font-size: 16px; }
.sc-courier button.sc-courier__order { border: 1.5px solid #cdd6d1; background: #fff; color: var(--sc-ink); font-family: 'Open Sans', Arial, sans-serif;
    font-weight: 700; cursor: pointer; }
.sc-courier button.sc-courier__order:hover { border-color: var(--sc-green); color: var(--sc-green); }
.sc-courier__msgs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; font-size: 14px; color: var(--sc-muted); }
.sc-courier__msgs > span { margin-right: 4px; }
.sc-courier__msgs a.sc-msg--btn { min-height: 40px; padding: 0 16px; font-size: 14px; }
.sc-courier .sc-courier__note { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--sc-line); font-size: 13px; line-height: 1.5; color: var(--sc-muted); }
/* fancybox: окно без белой рамки вокруг, скруглённое; крестик — внутри окна */
.sc-fb .fancybox-skin { padding: 0 !important; border-radius: 24px; background: #fff; box-shadow: 0 30px 80px -20px rgba(29, 35, 43, .5); }
.sc-fb .fancybox-close { top: 14px; right: 14px; }
@media (max-width: 640px) {
    /* на телефоне кнопки сразу под тарифами — без прокрутки окна; «как это работает» ниже */
    .sc-courier { display: flex; flex-direction: column; padding: 22px 18px 18px; border-radius: 20px; }
    .sc-courier__head { order: 1; } .sc-courier__tariffs { order: 2; } .sc-courier__cta { order: 3; margin-top: 16px; }
    .sc-courier__msgs { order: 4; } .sc-courier__msgs > span { flex-basis: 100%; } .sc-courier__msgs a.sc-msg--btn { flex: 1 1 0; } .sc-courier .sc-courier__subtitle { order: 5; } .sc-courier__steps { order: 6; } .sc-courier .sc-courier__note { order: 7; }
    .sc-courier__head { gap: 12px; }
    .sc-courier__badge { flex-basis: 44px; width: 44px; height: 44px; border-radius: 14px; }
    .sc-courier .sc-courier__title { font-size: 20px; }
    .sc-courier .sc-courier__lead { font-size: 14px; }
    .sc-courier__tariffs { grid-template-columns: 1fr; gap: 8px; margin-top: 16px !important; }
    .sc-courier li.sc-courier__tariff { flex-direction: row; align-items: center; gap: 12px; padding: 12px 14px; }
    .sc-courier__price { flex: 0 0 auto; min-width: 92px; font-size: 18px; }
    .sc-courier__cond { font-size: 13.5px; }
    .sc-courier .sc-courier__call, .sc-courier .sc-courier__order { flex-basis: 100%; }
    .sc-fb .fancybox-skin { border-radius: 20px; }
}

/* ---------- окно «Узнать статус ремонта» (разметка — sc_status() в chrome.php; открывают ссылки в шапке, поиск — site.js) ----------
   Та же форма, что блок на главной (home.css, классы hm-status…); ответ — карточки заказов sc-order. */
.sc-status-holder[hidden] { display: none !important; }
.sc-status {
    --sc-ink: #1d232b; --sc-text: #323a45; --sc-muted: #5b6670; --sc-line: #e4e8ea; --sc-green: #23803f; --sc-tint: #f0fbf2;
    --sc-accent: #64d57a; --sc-accent-hover: #52c46a; --sc-ease: cubic-bezier(.2, 0, 0, 1);
    box-sizing: border-box; width: min(560px, calc(100vw - 40px)); padding: 30px 32px 26px; border-radius: 24px; background: #fff;
    color: var(--sc-text); font: 400 15px/1.55 'Open Sans', Arial, sans-serif; text-align: left; -webkit-font-smoothing: antialiased;
}
.sc-status * { box-sizing: border-box; }
.sc-status p { margin: 0; }
.sc-status ul { margin: 0; padding: 0; list-style: none; }
.sc-status li { margin: 0 !important; padding: 0; background: none; list-style: none; text-align: left; }
.sc-status li::before { content: none; }
.sc-status__head { display: flex; align-items: flex-start; gap: 16px; padding-right: 30px; }
.sc-status__badge { display: flex; align-items: center; justify-content: center; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 16px;
    background: var(--sc-tint); color: var(--sc-green); }
.sc-status .sc-status__title { font: 800 24px/1.2 'Open Sans', Arial, sans-serif; letter-spacing: -.01em; color: var(--sc-ink); }
.sc-status .sc-status__lead { margin-top: 6px; font-size: 15px; line-height: 1.55; color: var(--sc-muted); }
.sc-status .sc-status__lead p + p { margin-top: 6px; }
.sc-status form.sc-status__form { display: block; margin: 22px 0 0; padding: 0; border: 0; background: none; }
.sc-status__fields { display: grid; gap: 12px; }
.sc-status label.sc-status__field { display: flex; flex-direction: column; gap: 6px; float: none; width: auto; height: auto; margin: 0; padding: 0;
    background: none; font: inherit; color: inherit; text-transform: none; cursor: default; }
.sc-status .sc-status__label { font: 600 14px/1.3 'Open Sans', Arial, sans-serif; color: var(--sc-ink); }
.sc-status input.sc-status__input {
    display: block; float: none; width: 100%; max-width: none; height: 52px; margin: 0; padding: 0 16px;
    border: 1.5px solid #d5ddd9; border-radius: 14px; background: #fbfcfb; color: var(--sc-ink);
    font: 400 16px/1.2 'Open Sans', Arial, sans-serif; box-shadow: none; outline: none; -webkit-appearance: none; appearance: none;
    transition: border-color 120ms var(--sc-ease), box-shadow 200ms var(--sc-ease), background-color 120ms;
}
.sc-status input.sc-status__input::placeholder { color: #8a949c; opacity: 1; }
.sc-status input.sc-status__input:hover { border-color: #b9c5bf; }
.sc-status input.sc-status__input:focus { border-color: var(--sc-green); background: #fff; box-shadow: 0 0 0 4px rgba(100, 213, 122, .28); }
.sc-status input.sc-status__input[aria-invalid="true"] { border-color: #c2412d; box-shadow: 0 0 0 4px rgba(194, 65, 45, .14); }
.sc-status button.sc-status__btn { display: flex; width: 100%; min-height: 52px; margin: 14px 0 0; border: 0; color: var(--sc-ink); font-size: 16px; font-weight: 700; }
.sc-status button.sc-status__btn[disabled] { cursor: progress; opacity: .85; }
.sc-status button.sc-status__btn.is-busy svg { display: none; }
.sc-status button.sc-status__btn.is-busy::before {
    content: ""; width: 18px; height: 18px; border-radius: 50%; border: 2.5px solid rgba(29, 35, 43, .25); border-top-color: var(--sc-ink);
    animation: sc-spin .8s linear infinite;
}
@keyframes sc-spin { to { transform: rotate(360deg); } }
.sc-status .sc-status__note { margin-top: 12px; font-size: 13px; line-height: 1.5; color: var(--sc-muted); }
.sc-status .sc-status__note a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.sc-status .sc-status__err { color: #b23a26; }
.sc-status .sc-status__result { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--sc-line); font-size: 15px; line-height: 1.55; color: var(--sc-text); }
.sc-status .sc-status__result[hidden] { display: none; }
.sc-status .sc-status__result a { color: var(--sc-green); font-weight: 600; text-decoration: none; }
.sc-status .sc-status__msg + .sc-status__msg { margin-top: 6px; }
.sc-status .sc-status__msg b { color: var(--sc-ink); }
.sc-status .sc-status__wait { display: flex; align-items: center; gap: 12px; color: var(--sc-muted); }
.sc-status .sc-status__wait::before {
    content: ""; flex: none; width: 20px; height: 20px; border-radius: 50%; border: 2.5px solid var(--sc-line); border-top-color: var(--sc-green);
    animation: sc-spin .8s linear infinite;
}
.sc-status .sc-status__orders { display: grid; gap: 10px; margin-top: 12px; }
.sc-status li.sc-order { padding: 16px 18px; border: 1px solid var(--sc-line); border-radius: 16px; background: #f7f9f8; }
.sc-status .sc-order__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; }
.sc-status .sc-order__num { font-size: 17px; font-weight: 700; color: var(--sc-ink); }
.sc-status .sc-order__pill { display: inline-flex; align-items: center; gap: 7px; padding: 5px 12px; border-radius: 999px;
    background: #eaeef0; color: #262e37; font-size: 14px; font-weight: 600; line-height: 1.3; }
.sc-status .sc-order__pill::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; opacity: .8; }
.sc-status .sc-order.is-work .sc-order__pill { background: #e7f0fa; color: #1d5b96; }
.sc-status .sc-order.is-wait .sc-order__pill { background: #fff3dc; color: #8a5300; }
.sc-status .sc-order.is-ready .sc-order__pill { background: #dff5e5; color: var(--sc-green); }
.sc-status li.sc-order.is-ready { border-color: rgba(35, 128, 63, .35); background: var(--sc-tint); }
.sc-status .sc-order__dev { margin-top: 8px; }
.sc-status .sc-order__sum { margin-top: 4px; color: var(--sc-muted); }
.sc-status .sc-order__sum b { color: var(--sc-ink); }
.sc-status .sc-order__hint { margin-top: 8px; font-weight: 600; color: var(--sc-green); }
@media (max-width: 640px) {
    .sc-status { padding: 22px 18px 18px; border-radius: 20px; }
    .sc-status__head { gap: 12px; }
    .sc-status__badge { flex-basis: 44px; width: 44px; height: 44px; border-radius: 14px; }
    .sc-status .sc-status__title { font-size: 20px; }
    .sc-status .sc-status__lead { font-size: 14px; }
    .sc-status form.sc-status__form { margin-top: 18px; }
    .sc-status li.sc-order { padding: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .sc-status button.sc-status__btn.is-busy::before, .sc-status .sc-status__wait::before { animation-duration: 2.4s; }
}

/* ---------- отзывы с Яндекс Карт (официальный виджет; sc_yandex_reviews() в chrome.php) — главная и страницы «Отзывы» ----------
   Текст и виджет рядом, когда хватает ширины (главная); в узкой колонке (страница отзывов, телефон) текст встаёт над виджетом. */
.sc-yrev { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 24px 48px; box-sizing: border-box;
    margin: 48px 0 0; padding: 32px; border: 1px solid #e4e8ea; border-radius: 24px; background: #fff;
    font: 400 16px/1.6 'Open Sans', Arial, sans-serif; color: #323a45; text-align: left; }
.sc-yrev * { box-sizing: border-box; }
.sc-yrev__info { flex: 1 1 260px; min-width: 0; }
.sc-yrev .sc-yrev__title { margin: 0; font: 700 26px/1.25 'Open Sans', Arial, sans-serif; letter-spacing: -.01em; color: #1d232b; text-transform: none; text-align: left; }
.pv2 .sc-yrev .sc-yrev__title { font-family: var(--pv2-display, 'Open Sans'), Arial, sans-serif; }
.sc-yrev .sc-yrev__lead { margin-top: 12px; color: #5b6670; }
.sc-yrev .sc-yrev__lead p { margin: 0 0 8px; color: inherit; font-size: 16px; line-height: 1.6; text-align: left; }
.sc-yrev a.sc-yrev__link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 6px; color: #23803f; font-weight: 600;
    text-decoration: underline; text-underline-offset: 3px; }
.sc-yrev a.sc-yrev__link:hover { color: #1a6d33; }
.sc-yrev .sc-ico { display: block; flex: 0 0 auto; }
.sc-yrev__frame { flex: 1 1 560px; max-width: 640px; height: 760px; min-width: 0; }   /* рамка — у самого виджета */
.sc-yrev__frame iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (max-width: 640px) {
    .sc-yrev { margin-top: 36px; padding: 20px 14px 14px; border-radius: 20px; }
    .sc-yrev__info { padding: 0 2px; }
    .sc-yrev .sc-yrev__title { font-size: 22px; }
    .sc-yrev__frame { flex-basis: 100%; height: 680px; }
}
/* вкладка «Яндекс Карты» в отзывах главной: без своей рамки и заголовка (заголовок — вкладка), по высоте близко к ленте отзывов */
.sc-yrev.sc-yrev--panel { margin: 0; padding: 0; border: 0; border-radius: 0; background: none; gap: 16px 40px; }
.sc-yrev--panel .sc-yrev__info { flex-basis: 240px; padding-top: 4px; }
.sc-yrev--panel .sc-yrev__frame { height: 600px; }
@media (max-width: 640px) {
    .sc-yrev.sc-yrev--panel { margin: 0; padding: 0; }
    .sc-yrev--panel .sc-yrev__frame { height: 620px; }
}

/* ---------- «Яндекс Карты» в стиле карт: красная метка, название, оценка со звездой (sc_yandex_label() в chrome.php) ---------- */
.sc-ypin { display: block; flex: 0 0 auto; }
.sc-ypin__drop { fill: #fc3f1d; }
.sc-ypin__dot { fill: #fff; }
.sc-ylabel__name { white-space: nowrap; }
.sc-ylabel__rate { display: inline-flex; align-items: center; gap: 3px; padding: 3px 8px; border-radius: 999px; background: #fff3c4; color: #1d232b;
    font-size: 13px; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; white-space: nowrap; }
.sc-ylabel__rate i { font-style: normal; color: #f2a900; }

/* ---------- страницы «Отзывы»: переключатель «Отзывы на сайте / Яндекс Карты» ---------- */
.sc-yswitch { display: flex; flex-wrap: wrap; gap: 6px; width: fit-content; max-width: 100%; box-sizing: border-box; margin: 0 0 22px; padding: 5px;
    border-radius: 16px; background: #eef1ef; font-family: 'Open Sans', Arial, sans-serif; }
.sc-yswitch .sc-yswitch__btn { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; margin: 0; padding: 0 18px; border: 0; border-radius: 12px;
    background: transparent; color: #4b5560; font: 600 15px/1.2 'Open Sans', Arial, sans-serif; text-decoration: none; cursor: pointer;
    transition: background-color 160ms, color 160ms, box-shadow 160ms; }
.sc-yswitch .sc-yswitch__btn:hover { color: #1d232b; }
.sc-yswitch .sc-yswitch__btn[aria-selected="true"] { background: #fff; color: #1d232b; box-shadow: 0 4px 14px -6px rgba(29, 35, 43, .3); }
.sc-yswitch .sc-yswitch__btn--y { color: #1d232b; }
.sc-yswitch .sc-yswitch__btn--y[aria-selected="true"] { box-shadow: inset 0 0 0 2px #fc3f1d, 0 4px 14px -6px rgba(252, 63, 29, .45); }
.sc-yswitch .sc-yswitch__btn:focus-visible { outline: 3px solid rgba(100, 213, 122, .75); outline-offset: 2px; }
.sc-yswitch__n { padding: 3px 8px; border-radius: 999px; background: #dfe5e1; color: #4b5560; font-size: 13px; font-weight: 700; line-height: 1.1; }
.op-view[hidden] { display: none !important; }
.sc-yswitch .sc-yswitch__btn--y:not([aria-selected="true"]) { background: #fff; box-shadow: inset 0 0 0 1.5px rgba(252, 63, 29, .45); }
.sc-yswitch .sc-yswitch__btn--y:not([aria-selected="true"]):hover { box-shadow: inset 0 0 0 1.5px #fc3f1d; }
.sc-yswitch__short { display: none; }
@media (max-width: 640px) {   /* обе кнопки в одну строку */
    .sc-yswitch { flex-wrap: nowrap; width: 100%; }
    .sc-yswitch .sc-yswitch__btn { flex: 1 1 auto; justify-content: center; gap: 6px; min-width: 0; padding: 0 10px; font-size: 14px; }
    .sc-yswitch__long { display: none; }
    .sc-yswitch__short { display: inline; }
}

/* ---------- форма «Оформить заявку» (окно #popup-request-form; перестраивает site.js — orderUpgrade) ----------
   Одна колонка: заголовок с пояснением, подписи над полями, курьер переключателем, адрес — только при курьере,
   широкая кнопка, ниже — телефон и мессенджеры. Старые стили формы (.orderform …) перекрываются через #popup-request-form.sc-req. */
.fancybox-skin:has(#popup-request-form.sc-req) { padding: 0 !important; border-radius: 24px; background: #fff; box-shadow: 0 30px 80px -20px rgba(29, 35, 43, .5); }
#popup-request-form.sc-req {
    --o-ink: #1d232b; --o-text: #323a45; --o-muted: #5b6670; --o-line: #d5ddd9; --o-green: #23803f; --o-accent: #64d57a; --o-tint: #f0fbf2; --o-err: #c2412d;
    --sc-tg: #1877ab; --sc-tg-hover: #156fa0; --sc-max: #6d2edd; --sc-max-hover: #5d22c6;   /* цвета кнопок Telegram и MAX (как в шапке) */
    box-sizing: border-box; width: min(520px, calc(100vw - 40px)); min-width: 0 !important; max-width: 100%; margin: 0; padding: 30px 32px 24px;
    border-radius: 24px; background: #fff; color: var(--o-text); font: 400 15px/1.5 'Open Sans', Arial, sans-serif; text-align: left;
}
#popup-request-form.sc-req * { box-sizing: border-box; }
#popup-request-form.sc-req .container { width: auto; max-width: none; margin: 0; padding: 0; }
#popup-request-form.sc-req form { display: flex; flex-direction: column; gap: 14px; width: auto; margin: 0; padding: 0; float: none; }
#popup-request-form.sc-req .clearfix, #popup-request-form.sc-req .toolholder { display: none; }
#popup-request-form.sc-req #nc_moderate_form { display: contents; }
/* заголовок */
#popup-request-form.sc-req .sc-req__head { display: flex; align-items: flex-start; gap: 14px; padding-right: 26px; margin-bottom: 4px; }
#popup-request-form.sc-req .sc-req__badge { display: flex; align-items: center; justify-content: center; flex: 0 0 48px; width: 48px; height: 48px;
    border-radius: 15px; background: var(--o-tint); color: var(--o-green); }
#popup-request-form.sc-req p.sc-req__title { margin: 0 !important; padding: 0 !important; float: none; width: auto;
    font: 800 23px/1.2 'Open Sans', Arial, sans-serif !important; letter-spacing: -.01em; color: var(--o-ink) !important; text-align: left !important; text-transform: none; }
#popup-request-form.sc-req p.sc-req__lead { margin: 6px 0 0 !important; padding: 0 !important; font: 400 14.5px/1.5 'Open Sans', Arial, sans-serif !important;
    color: var(--o-muted) !important; text-align: left !important; text-transform: none; }
/* поля */
#popup-request-form.sc-req .inp_tg.sc-req__field { position: static; display: flex; flex-direction: column; gap: 6px; float: none; width: auto; height: auto;
    margin: 0; padding: 0; background: none; }
#popup-request-form.sc-req .inp_tg.sc-req__field::before { content: none; display: none; }
#popup-request-form.sc-req .sc-req__label { display: block; margin: 0; padding: 0; float: none; font: 600 14px/1.3 'Open Sans', Arial, sans-serif; color: var(--o-ink); cursor: pointer; }
#popup-request-form.sc-req .sc-req__label small { font-size: 12.5px; font-weight: 400; color: var(--o-muted); }
#popup-request-form.sc-req .sc-req__field input, #popup-request-form.sc-req .sc-req__field textarea {
    display: block; width: 100%; height: 50px; min-height: 0; margin: 0; padding: 0 15px; float: none;
    border: 1.5px solid var(--o-line); border-radius: 14px; background: #fbfcfb; color: var(--o-ink); box-shadow: none; outline: none;
    font: 400 16px/1.3 'Open Sans', Arial, sans-serif; text-align: left; -webkit-appearance: none; appearance: none;
    transition: border-color 120ms, box-shadow 200ms, background-color 120ms;
}
#popup-request-form.sc-req .sc-req__field textarea { height: auto; min-height: 76px; padding: 12px 15px; resize: vertical; }
#popup-request-form.sc-req .sc-req__field input::placeholder, #popup-request-form.sc-req .sc-req__field textarea::placeholder { color: #8a949c; opacity: 1; }
#popup-request-form.sc-req .sc-req__field input:hover, #popup-request-form.sc-req .sc-req__field textarea:hover { border-color: #b9c5bf; }
#popup-request-form.sc-req .sc-req__field input:focus, #popup-request-form.sc-req .sc-req__field textarea:focus {
    border-color: var(--o-green); background: #fff; box-shadow: 0 0 0 4px rgba(100, 213, 122, .28); }
#popup-request-form.sc-req .inp_tg.sc-req__field.wrong input { border-color: var(--o-err); background: #fff; box-shadow: 0 0 0 4px rgba(194, 65, 45, .12); }
#popup-request-form.sc-req .inp_tg.sc-req__field.wrong::after { content: attr(data-err); display: block; font: 600 13px/1.35 'Open Sans', Arial, sans-serif; color: var(--o-err); }
/* курьер: переключатель с тарифами, адрес — только при курьере */
#popup-request-form.sc-req .forcheckbox.sc-req__courier { position: relative; display: block; float: none; width: auto; height: auto; margin: 2px 0 0; padding: 0; }
#popup-request-form.sc-req .sc-req__courier input[type="checkbox"] { position: absolute; left: 18px; top: 18px; width: 1px; height: 1px; margin: 0; opacity: 0; }
#popup-request-form.sc-req .sc-req__courier label { position: static; display: flex; align-items: center; gap: 14px; width: auto; height: auto; margin: 0; padding: 13px 16px;
    border: 1.5px solid var(--o-line); border-radius: 14px; background: #fff; color: var(--o-text); font: 400 14px/1.4 'Open Sans', Arial, sans-serif;
    text-transform: none; letter-spacing: 0; cursor: pointer; transition: border-color 160ms, background-color 160ms; }
#popup-request-form.sc-req .sc-req__courier label::before, #popup-request-form.sc-req .sc-req__courier label::after { content: none !important; display: none !important; }
#popup-request-form.sc-req .sc-req__courier label:hover { border-color: #b9c5bf; }
#popup-request-form.sc-req .sc-req__ctext { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
#popup-request-form.sc-req .sc-req__ctext b { font-size: 15px; font-weight: 700; color: var(--o-ink); }
#popup-request-form.sc-req .sc-req__hint { color: var(--o-muted); font-size: 13px; }
#popup-request-form.sc-req .sc-req__switch { position: relative; flex: 0 0 44px; width: 44px; height: 26px; border-radius: 999px; background: #cfd8d3; transition: background-color 180ms; }
#popup-request-form.sc-req .sc-req__switch::after { content: ""; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25); transition: transform 200ms cubic-bezier(.2, 0, 0, 1); }
#popup-request-form.sc-req form.is-courier .sc-req__courier label { border-color: rgba(35, 128, 63, .45); background: var(--o-tint); }
#popup-request-form.sc-req form.is-courier .sc-req__switch { background: var(--o-green); }
#popup-request-form.sc-req form.is-courier .sc-req__switch::after { transform: translateX(18px); }
#popup-request-form.sc-req .sc-req__courier input:focus-visible + label { box-shadow: 0 0 0 4px rgba(100, 213, 122, .35); }
#popup-request-form.sc-req .inp_tg.sc-req__addr { display: none !important; }   /* у старых стилей .adresss.disab свой display с !important */
#popup-request-form.sc-req form.is-courier .inp_tg.sc-req__addr { display: flex !important; animation: sc-in 200ms cubic-bezier(.2, 0, 0, 1); }
#popup-request-form.sc-req .adresss input:disabled { opacity: 1; }
/* строка про условия и кнопка */
#popup-request-form.sc-req p.sc-consent-note { margin: 2px 0 0 !important; }
#popup-request-form.sc-req .send_m { float: none; width: auto; margin: 0; padding: 0; }
#popup-request-form.sc-req input.sc-req__submit { display: block; width: 100%; height: 54px; margin: 0; padding: 0 20px; float: none; border: 0; border-radius: 999px;
    background: var(--o-accent); color: var(--o-ink); font: 700 16px/1 'Open Sans', Arial, sans-serif; text-transform: none; letter-spacing: 0; cursor: pointer;
    box-shadow: none; transition: background-color 160ms; -webkit-appearance: none; appearance: none; }
#popup-request-form.sc-req input.sc-req__submit:hover { background: #52c46a; color: var(--o-ink); }
#popup-request-form.sc-req input.sc-req__submit:focus-visible { outline: 3px solid rgba(35, 128, 63, .45); outline-offset: 2px; }
#popup-request-form.sc-req.is-busy input.sc-req__submit { cursor: progress; opacity: .8; }
/* или свяжитесь сразу */
#popup-request-form.sc-req .sc-req__alt { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; padding-top: 16px; border-top: 1px solid #e4e8ea; }
#popup-request-form.sc-req .sc-req__or { flex-basis: 100%; color: var(--o-muted); font-size: 13px; }
#popup-request-form.sc-req .sc-tel-wrap { display: contents; }
#popup-request-form.sc-req a.sc-req__call { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; border: 1.5px solid var(--o-line);
    border-radius: 999px; color: var(--o-ink); font-weight: 700; font-size: 15px; text-decoration: none; }
#popup-request-form.sc-req a.sc-req__call:hover { border-color: var(--o-green); color: var(--o-green); }
#popup-request-form.sc-req a.sc-req__msg { min-height: 42px; padding: 0 16px; font-size: 14px; text-decoration: none; }
#popup-request-form.sc-req .sc-ico { display: block; flex: 0 0 auto; }
/* ответ сервера: «Спасибо за обращение» */
#popup-request-form.sc-req .form-message-text { margin: 0; padding: 0; }
#popup-request-form.sc-req #thanks-inline-popup { margin: 0; padding: 4px 0 0; text-align: center; background: none; }
#popup-request-form.sc-req #thanks-inline-popup::before { content: ""; display: block; width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%;
    background: var(--o-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2323803f' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 30px no-repeat;
    animation: sc-pop 360ms cubic-bezier(.175, .885, .32, 1.275); }
#popup-request-form.sc-req #thanks-inline-popup h1 { margin: 0 0 8px; font: 800 22px/1.25 'Open Sans', Arial, sans-serif; color: var(--o-ink); text-transform: none; text-align: center; }
#popup-request-form.sc-req #thanks-inline-popup p { margin: 0 !important; font: 400 15px/1.5 'Open Sans', Arial, sans-serif !important; color: var(--o-muted) !important; text-align: center !important; }
#popup-request-form.sc-req #thanks-inline-popup button { display: block; min-width: 160px; height: 46px; margin: 20px auto 0 !important; padding: 0 22px; border: 1.5px solid var(--o-line);
    border-radius: 999px; background: #fff; color: var(--o-ink); font: 700 15px/1 'Open Sans', Arial, sans-serif; text-transform: none; cursor: pointer; }
@keyframes sc-pop { from { transform: scale(.6); opacity: 0; } to { transform: none; opacity: 1; } }
@media (max-width: 640px) {
    #popup-request-form.sc-req { width: calc(100vw - 24px); padding: 22px 18px 18px; border-radius: 20px; }
    .fancybox-skin:has(#popup-request-form.sc-req) { border-radius: 20px; }
    #popup-request-form.sc-req p.sc-req__title { font-size: 20px !important; }
    #popup-request-form.sc-req .sc-req__badge { flex-basis: 42px; width: 42px; height: 42px; border-radius: 13px; }
    #popup-request-form.sc-req .sc-req__alt a { flex: 1 1 0; justify-content: center; }
    #popup-request-form.sc-req .sc-req__alt a.sc-req__call { flex-basis: 100%; }   /* телефон во всю ширину, Telegram и MAX — парой */
}
@media (prefers-reduced-motion: reduce) {
    #popup-request-form.sc-req *, #popup-request-form.sc-req *::before, #popup-request-form.sc-req *::after { animation: none !important; transition: none !important; }
}
