/* ВЕРСИИ САЙТА (демо для заказчика).
   Версия = «скин»: общий контент из панели, меняется подача и порядок блоков.
   A — «Справочник у дома» (базовая, без переопределений).
   B — «Витрина»  (крупный логотип, образы, имидж).
   C — «Аренда/бизнес» (свободные площади + карта + форма вперёд). */

.vmain{display:flex;flex-direction:column}
.hero-logo{display:none}
.hero-free{display:none}

/* ВЕРСИЯ A — «Справочник у дома»: только блоки из утверждённого списка.
   Порядок совпадает с DOM, поэтому достаточно убрать лишнее (новости, галерею). */
.v-a #news,.v-a #gallery,.v-a #feedback{display:none}

/* --- Переключатель версий в шапке --- */
.verswitch{display:flex;align-items:center;gap:4px;margin-left:2px;padding-left:14px;border-left:1px solid rgba(255,255,255,.18);flex-shrink:0}
.verswitch .vs-label{font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-right:2px}
.verswitch .vs-label:hover{color:var(--yellow)}
.verswitch .vs{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:7px;font-weight:800;font-size:.8rem;color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.22);transition:all .15s}
.verswitch .vs:hover{border-color:var(--yellow);color:var(--yellow)}
.verswitch .vs.on{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.verswitch .vs-i{margin-left:5px;border-color:rgba(255,255,255,.35);color:var(--lime)}
.verswitch .vs-i:hover{border-color:var(--lime);color:var(--lime)}
@media(max-width:1140px){.verswitch .vs-label{display:none}}
@media(max-width:560px){.verswitch{padding-left:8px}}

/* ======================= ВЕРСИЯ B — «Витрина» ======================= */
/* Мобильная: шапка скрыта, пока виден большой логотип; выезжает после прокрутки */
@media(max-width:880px){
  body.v-b header{position:fixed;top:0;left:0;right:0;transform:translateY(-110%);transition:transform .28s ease}
  body.v-b.bhead header{transform:none;box-shadow:0 6px 22px -12px rgba(0,0,0,.55)}
}
.v-b .hero{min-height:clamp(520px,84vh,760px);text-align:center;justify-content:center}
.v-b .hero .ov{background:linear-gradient(180deg,rgba(18,28,14,.5) 0%,rgba(18,28,14,.72) 60%,rgba(18,28,14,.9) 100%)}
.v-b .hero .wrap{display:flex;flex-direction:column;align-items:center;padding:70px 0}
.v-b .hero .hero-logo{display:block;width:min(560px,84vw);height:auto;margin-bottom:6px;filter:drop-shadow(0 10px 34px rgba(0,0,0,.45))}
.v-b .hero h1{display:none}
.v-b .hero .badge{margin-bottom:26px}
.v-b .hero p{margin-left:auto;margin-right:auto;font-size:1.22rem;max-width:600px}
.v-b .hero .btns{justify-content:center}
.v-b .hero .info{justify-content:center}
/* образный, спокойный тон: крупнее заголовки секций, по центру */
.v-b .sh{text-align:center}
.v-b .sh h2{font-size:clamp(2rem,4.4vw,3.1rem)}
.v-b .gal{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
/* SVG-иконки вместо эмодзи */
.v-b .svgico{display:inline-flex;align-items:center;justify-content:center}
.v-b .ac .ic.svgico svg{width:25px;height:25px;display:block}
.v-b .ci .e.svgico{color:var(--green-d)}
.v-b .ci .e.svgico svg{width:22px;height:22px;display:block}
/* убрать дубль-надписи над заголовками (Каталог/Афиша/О центре/Галерея и т.п.) */
.v-b .sh .k{display:none}
/* иконки сервисов — крупнее и по центру, в аккуратной плашке */
.v-b .svc .si .e.svgico{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 14px;border-radius:18px;background:#EAF3E0;color:var(--green-d)}
.v-b .svc .si .e.svgico svg{width:32px;height:32px;display:block}
/* услуги: убрать избыточные подписи, компактнее */
.v-b .svc .si span:not(.e){display:none}
.v-b .svc .si{padding:18px 14px}
@media(max-width:760px){
  .v-b .svc{grid-template-columns:1fr 1fr;gap:12px}
  .v-b .svc .si .e.svgico{width:54px;height:54px;margin-bottom:10px}
  .v-b .svc .si .e.svgico svg{width:28px;height:28px}
  .v-b .svc .si b{font-size:.96rem}
}
/* афиша: первая карточка полная, остальные — компактные (дата + название), раскрываются по тапу */
@media(max-width:760px){
  .v-b #events .events{display:block}
  .v-b #events .ev{margin-bottom:10px}
  .v-b .ev.compact{cursor:pointer;flex-direction:row;align-items:center}
  .v-b .ev.compact .im{display:none}
  .v-b .ev.compact .b{padding:13px 15px}
  .v-b .ev.compact .b p{display:none}
  .v-b .ev.compact .when{display:inline-block;background:var(--yellow);color:var(--ink);font-weight:800;border-radius:7px;padding:3px 9px;font-family:var(--sans);letter-spacing:0;text-transform:none;font-size:.78rem;margin-bottom:5px}
  .v-b .ev.compact.past{opacity:1}
  .v-b .ev.compact.past .when{background:#D7DCCF}
  .v-b .ev.compact h4{font-size:1rem;margin:0}
  .v-b .ev.compact.open{flex-direction:column;align-items:stretch}
  .v-b .ev.compact.open .im{display:block}
  .v-b .ev.compact.open .b{padding:16px 18px}
  .v-b .ev.compact.open .b p{display:block;margin-top:6px}
}
/* галерея и новости — горизонтальная «карусель» на мобильном (видно, что листается) */
@media(max-width:760px){
  .v-b .gal,.v-b .news{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 0 14px;-webkit-overflow-scrolling:touch}
  .v-b .gal>*,.v-b .news>*{scroll-snap-align:center;flex:0 0 82%}
  .v-b .gal .gi{aspect-ratio:4/3}
  .v-b .gal::-webkit-scrollbar,.v-b .news::-webkit-scrollbar{height:5px}
  .v-b .gal::-webkit-scrollbar-thumb,.v-b .news::-webkit-scrollbar-thumb{background:var(--green);border-radius:10px}
  .v-b .gal::-webkit-scrollbar-track,.v-b .news::-webkit-scrollbar-track{background:rgba(0,0,0,.06);border-radius:10px}
}
/* порядок: образы и события вперёд, аренда — ниже */
.v-b .hero{order:1}
.v-b #about{order:2}
.v-b #gallery{order:3}
.v-b #events{order:4}
.v-b #shops{order:5}
.v-b #plan{order:6}
.v-b #services{order:7}
.v-b #news{order:8}
.v-b #rent{order:9}
.v-b #vacancies{order:10}
.v-b #feedback{order:11}
.v-b #contacts{order:12}
/* чередование фона по новому порядку */
.v-b #about,.v-b #events,.v-b #plan,.v-b #news,.v-b #vacancies{background:var(--paper)!important}
.v-b #shops,.v-b #services,.v-b #rent,.v-b #feedback,.v-b #contacts{background:#EFF1EA!important}

/* ======================= ВЕРСИЯ C — «Бенто» (как у МЕГА) ======================= */
/* Бенто-сетка плиток заменяет обычный hero */
#cbento{display:none}
.v-c #cbento{display:block;padding:clamp(16px,3vw,30px) 0 0}
.v-c .hero{display:none}
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;grid-auto-rows:172px}
.bt{position:relative;border-radius:20px;overflow:hidden;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;transition:transform .2s,box-shadow .2s}
.bt:hover{transform:translateY(-4px);box-shadow:0 20px 44px -22px rgba(0,0,0,.4)}
.bt-arrow{position:absolute;top:17px;right:19px;font-size:1.15rem;opacity:.5}
.bt-arrow.light{color:#fff;opacity:.9}
.bt-num{font-weight:900;font-size:2.6rem;line-height:1;letter-spacing:-.02em}
.bt-lab{font-weight:700;font-size:1.04rem;line-height:1.15}
.bt-lab.big{font-size:1.4rem}
.bt-lab.light{color:#fff}
.bt-sub{font-size:.85rem;opacity:.72;margin-top:6px;line-height:1.3}
.bt-hero{grid-column:span 2;grid-row:span 2;background-size:cover;background-position:center;color:#fff}
.bt-hero .bt-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,28,14,.12),rgba(18,28,14,.86))}
.bt-hero .bt-in{position:relative;z-index:2}
.bt-hero .bt-k{display:inline-flex;align-items:center;gap:7px;background:var(--green);color:#fff;font-weight:700;font-size:clamp(.8rem,1.5vw,1rem);letter-spacing:.01em;padding:9px 16px;border-radius:100px;box-shadow:0 6px 16px -6px rgba(0,0,0,.55)}
.bt-hero h2{font-weight:900;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:.98;margin:10px 0}
.bt-hero .bt-logo{position:relative;z-index:2;display:block;width:min(440px,94%);height:auto;margin:0 0 10px;filter:drop-shadow(0 6px 20px rgba(0,0,0,.55))}
.bt-hero .bt-tag{position:relative;z-index:2;font-weight:900;font-size:clamp(1.5rem,3.4vw,2.3rem);line-height:1.04;color:#fff;margin:8px 0 16px;text-shadow:0 2px 16px rgba(0,0,0,.45)}
.bt-hero .bt-tag span{color:var(--yellow)}
/* акцент «Торговый центр в Ново-Ленино» на титульном экране версии B */
.hero-tag{display:none}
.v-b .hero-tag{display:block;font-weight:900;font-size:clamp(1.6rem,5.2vw,2.7rem);line-height:1.05;color:#fff;text-align:center;margin:2px auto 16px;max-width:640px;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.v-b .hero-tag span{color:var(--yellow)}
.bt-hero p{font-size:.95rem;color:rgba(255,255,255,.86);max-width:430px}
.bt-hero .bt-cta{display:inline-block;margin-top:16px;background:var(--yellow);color:var(--ink);font-weight:700;font-size:.9rem;padding:11px 18px;border-radius:10px}
.bt-wide{grid-column:span 2}
.bt-yellow{background:var(--yellow);color:var(--ink)}
.bt-green{background:var(--green);color:#fff}
.bt-green .bt-arrow{opacity:.85}
.bt-mint{background:#E6F2DA;color:var(--green-d)}
.bt-blue{background:#DBEAF2;color:#1d4d61}
.bt-light{background:#fff;border:1px solid var(--line);color:var(--ink)}
.bt-img{background-size:cover;background-position:center;color:#fff}
.bt-img .bt-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,28,14,.1),rgba(18,28,14,.72))}
.bt-img .bt-lab{position:relative;z-index:2}
@media(max-width:880px){.bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:148px;gap:11px}.bt-hero{grid-column:span 2;grid-row:span 2}.bt{padding:17px;border-radius:16px}.bt-num{font-size:2.1rem}}
@media(max-width:380px){.bento{gap:9px}.bt-lab{font-size:.95rem}}
/* В версии C обычный hero не нужен; секции скрыты — их содержимое живёт в плитках/шторке */
.v-c .hero{display:none}
.v-c.c-ready .vmain>section:not(#cbento):not(.hero){display:none}

/* ===== ВЕРСИЯ C — живой бенто: плитки разного размера, хаотичная сетка ===== */
.v-c #cbento{padding:16px 0 56px}
/* Фиксированное число колонок: 5 / 3 / 2 — все делят 30 ячеек композиции,
   поэтому нижний ряд всегда заполнен целиком, без белой пустоты. */
.v-c .bento{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:minmax(150px,auto);grid-auto-flow:dense;gap:12px}
@media(max-width:999px){.v-c .bento{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(160px,auto)}}
@media(max-width:619px){.v-c .bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:128px;gap:10px}
  /* на мобиле плитки-контент пакуются без пробелов — глазки-заглушки не нужны (иначе «висяк» внизу) */
  .v-c .ctile.cfun{display:none}}
/* размеры плиток */
.v-c .sz-hero{grid-column:span 3;grid-row:span 2}
.v-c .sz-2x2{grid-column:span 2;grid-row:span 2}
.v-c .sz-2x1{grid-column:span 2;grid-row:span 1}
.v-c .sz-1x2{grid-column:span 1;grid-row:span 2}
.v-c .sz-1x1{grid-column:span 1;grid-row:span 1}
@media(max-width:619px){
  .v-c .sz-hero{grid-column:span 2;grid-row:span 2}
  .v-c .sz-2x2{grid-column:span 2;grid-row:span 2}
  .v-c .sz-2x1{grid-column:span 2;grid-row:span 1}
  .v-c .sz-1x2{grid-column:span 1;grid-row:span 2}
  .v-c .sz-1x1{grid-column:span 1;grid-row:span 1}
}
/* плавная перестановка плиток при изменении ширины окна (FLIP) */
.v-c .bento>*{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
/* плитка: сплошной цвет или картинка + крупный текст */
.v-c .bt-hero{height:100%;min-height:0;border-radius:18px;grid-column:span 2;grid-row:span 2}
.v-c .ctile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;width:100%;height:100%;padding:20px 22px;border:0;border-radius:18px;overflow:hidden;cursor:pointer;font-family:inherit;text-align:left;background:#fff;color:var(--ink)}
.v-c .ctile .cnum{position:relative;z-index:2;font-weight:900;font-size:clamp(2.4rem,5vw,3.4rem);line-height:.9;letter-spacing:-.02em;margin-bottom:auto}
/* число + пояснение вплотную (плитки «Карта помещений», «Магазины»): число ~×2, подпись рядом */
.v-c .ctile .cnumb{position:relative;z-index:2;display:flex;align-items:center;gap:.34em;margin-bottom:auto;max-width:100%}
.v-c .ctile .cnumb .cnum{margin-bottom:0;font-size:clamp(3.8rem,9vw,5.8rem);flex-shrink:0}
.v-c .ctile .cnl{font-weight:800;font-size:clamp(.92rem,1.8vw,1.12rem);line-height:1.06;opacity:.92}
.v-c .ctile .ctt{position:relative;z-index:2;font-weight:800;font-size:clamp(1.12rem,2.1vw,1.5rem);line-height:1.1;overflow-wrap:break-word;hyphens:auto;max-width:100%}
.v-c .ctile .cts{position:relative;z-index:2;font-size:.9rem;opacity:.84;margin-top:6px;font-weight:600;overflow-wrap:break-word;max-width:100%}
/* узкие одно-колоночные плитки: заголовок мельче, чтобы длинные слова не упирались в край */
.v-c .sz-1x1 .ctt,.v-c .sz-1x2 .ctt{font-size:clamp(1.04rem,3.4vw,1.24rem)}
.v-c .sz-1x1 .cts,.v-c .sz-1x2 .cts{font-size:.82rem}
.v-c .ctile .carrow{position:absolute;top:16px;right:18px;z-index:2;font-size:1.15rem;opacity:.5}
.v-c .ctile:hover{filter:brightness(.97)}
.v-c .cc-yellow.ctile{background:var(--yellow);color:var(--ink)}
.v-c .cc-green.ctile{background:var(--green);color:#fff}
.v-c .cc-green.ctile .carrow{opacity:.85}
.v-c .cc-greend.ctile{background:var(--green-d);color:#fff}
.v-c .cc-mint.ctile{background:#E6F2DA;color:var(--green-d)}
.v-c .cc-blue.ctile{background:#1CA4E0;color:#fff}
.v-c .cc-light.ctile{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
/* яркие цвета логотипа — для контраста и настроения */
.v-c .cc-red.ctile{background:#E63A45;color:#fff}
.v-c .cc-orange.ctile{background:#F39200;color:#fff}
.v-c .cc-purple.ctile{background:#7A4F9E;color:#fff}
.v-c .cc-pink.ctile{background:#E5007D;color:#fff}
.v-c .cc-red.ctile .carrow,.v-c .cc-orange.ctile .carrow,.v-c .cc-purple.ctile .carrow,.v-c .cc-pink.ctile .carrow{opacity:.85}

/* ===== План помещений как у dsupport (версии B и C; версию A не трогаем) ===== */
.v-b #plan{background:var(--green)!important}
.v-b #plan .sh h2,.v-b #plan .maphint{color:#fff}
.v-b #plan .sh h2 b{color:var(--yellow)}
.v-b #plan .maplegend{color:rgba(255,255,255,.92)}
.v-b #plan .ftab{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.32)}
.v-b #plan .ftab.on{background:#fff;color:var(--green-d);border-color:#fff}
.csheet-body #plan{background:var(--green)!important;border-radius:16px;padding:14px!important;margin-top:2px}
.csheet-body #plan .maphint{color:rgba(255,255,255,.92)}
.csheet-body #plan .maplegend{color:#fff}
.csheet-body #plan .ftab{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.32)}
.csheet-body #plan .ftab.on{background:#fff;color:var(--green-d);border-color:#fff}
/* убрать окружение (дорога/парковка/вход) — как на dsupport */
.v-b #plan .ms-road,.v-b #plan .ms-parking,.v-b #plan .ms-entry,
.csheet-body #plan .ms-road,.csheet-body #plan .ms-parking,.csheet-body #plan .ms-entry{display:none}
.v-b #plan .ms-lawn,.csheet-body #plan .ms-lawn{padding:0;background:transparent}
.v-b #plan .mapsite,.csheet-body #plan .mapsite{border:0;background:transparent;overflow:visible}
.v-c .cc-img.ctile{background-size:cover;background-position:center;color:#fff}
.v-c .cc-img.ctile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,28,14,.1),rgba(18,28,14,.82))}
.v-c .cc-img.ctile .carrow{opacity:.9}

/* ===== Шторка с содержимым раздела (на весь экран) ===== */
.csheet{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-end;justify-content:center}
.csheet[hidden]{display:none}
.csheet-bg{position:absolute;inset:0;background:rgba(18,28,14,.55);opacity:0;transition:opacity .3s}
.csheet.show .csheet-bg{opacity:1}
.csheet-card{position:relative;z-index:2;background:var(--paper);width:100%;max-width:780px;max-height:94vh;border-radius:22px 22px 0 0;overflow:auto;-webkit-overflow-scrolling:touch;transform:translateY(101%);transition:transform .36s cubic-bezier(.2,.7,.2,1)}
.csheet.show .csheet-card{transform:none}
@media(min-width:760px){.csheet{align-items:center;padding:20px}.csheet-card{border-radius:22px;max-height:90vh}.csheet-card{transform:translateY(24px) scale(.98)}.csheet.show .csheet-card{transform:none}}
.csheet-grip{display:none}
@media(max-width:760px){.csheet-grip{display:block;width:42px;height:5px;border-radius:3px;background:rgba(0,0,0,.2);margin:9px auto 1px}}
.csheet-head{position:sticky;top:0;display:flex;align-items:center;gap:12px;padding:15px 18px;background:var(--paper);border-bottom:1px solid var(--line);z-index:5}
.csheet-head h2{font-size:1.25rem;font-weight:800;color:var(--ink)}
.csheet-x{margin-left:auto;flex-shrink:0;width:40px;height:40px;border-radius:50%;border:0;background:var(--green-d);font-size:1.45rem;line-height:1;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .15s}
.csheet-x:hover{background:var(--green)}
.csheet-x:active{transform:scale(.94)}
.csheet-body section{background:transparent!important;padding:16px 0 26px!important;min-height:0!important;display:block!important}
.csheet-body .wrap{max-width:none;margin:0;padding:0 20px;width:auto}
.csheet-body .sh{display:none}
.csheet-body .ac,.csheet-body .si,.csheet-body .vc{border-radius:12px}
/* В шторке заголовок раздела прижат влево. Блоки с собственным центрированием
   (форма обратной связи, экран «спасибо») иначе «уплывают» вправо и текст плавает —
   тянем их по всей ширине карточки и выравниваем влево. */
.csheet-body #feedback .fbform-wrap,
.csheet-body .fbok{max-width:none;margin:0}
.csheet-body .fbform-lead,
.csheet-body .fbnote{text-align:left}

/* ===== ВЕРСИЯ C — весёлые плитки-заглушки с глазами ===== */
/* Заполняют пустоту в бенто и оживляют сетку: глаза моргают и следят за курсором,
   по клику плитка подпрыгивает, а глаза «вылупляются». Цвета — из логотипа. */
.v-c .ctile.cfun{cursor:pointer;align-items:center;justify-content:center;padding:0}
.v-c .cf-red.ctile{background:#E63A45}
.v-c .cf-blue.ctile{background:#1CA4E0}
.v-c .cf-purple.ctile{background:#7A4F9E}
.v-c .cf-orange.ctile{background:#F39200}
.v-c .cf-green.ctile{background:var(--green)}
.v-c .cf-pink.ctile{background:#E5007D}
.cfun .eyes{display:flex;gap:clamp(8px,1.4vw,13px);position:relative;z-index:2}
.cfun .eye{position:relative;width:clamp(30px,4.4vw,42px);height:clamp(30px,4.4vw,42px);background:#fff;border-radius:50%;box-shadow:inset 0 -3px 7px rgba(0,0,0,.14)}
/* моргание задаётся из JS со случайными интервалами для каждой пары (и подмигиванием) */
.cfun .eye.blink{animation:vdblink .26s ease}
/* радужка (двигается за курсором) с тёмным зрачком-центром и бликом; цвет — по классу глаза */
.cfun .pupil{position:absolute;top:50%;left:50%;width:50%;height:50%;margin:-25% 0 0 -25%;border-radius:50%;transition:transform .12s ease-out;background:radial-gradient(circle at 50% 42%,#c49a68 0%,#8a5a2e 52%,#5a3618 100%)}
.cfun .eye.iris-blue .pupil{background:radial-gradient(circle at 50% 42%,#86c4ee 0%,#3f88c4 52%,#28639b 100%)}
.cfun .eye.iris-green .pupil{background:radial-gradient(circle at 50% 42%,#9bcf83 0%,#57a23f 52%,#3a7a2c 100%)}
.cfun .eye.iris-brown .pupil{background:radial-gradient(circle at 50% 42%,#c49a68 0%,#8a5a2e 52%,#5a3618 100%)}
.cfun .pupil::before{content:"";position:absolute;top:50%;left:50%;width:52%;height:52%;margin:-26% 0 0 -26%;background:#120f0a;border-radius:50%}
.cfun .pupil::after{content:"";position:absolute;top:10%;left:19%;width:30%;height:30%;background:rgba(255,255,255,.92);border-radius:50%;z-index:2}
@keyframes vdblink{0%{transform:scaleY(1)}45%{transform:scaleY(.08)}100%{transform:scaleY(1)}}
.cfun.pop{animation:vdfunpop .5s cubic-bezier(.2,1.4,.4,1)}
@keyframes vdfunpop{0%{transform:scale(1)}28%{transform:scale(1.13) rotate(-4deg)}55%{transform:scale(.94) rotate(3deg)}100%{transform:scale(1) rotate(0)}}
.cfun.pop .eye{animation:vdeyewide .5s}
@keyframes vdeyewide{0%,100%{transform:scale(1)}40%{transform:scale(1.22)}}
@media(prefers-reduced-motion:reduce){.cfun .eye.blink{animation:none}.cfun.pop,.cfun.pop .eye{animation:none}}

/* ===== ВЕРСИЯ C — карусель логотипов брендов на жёлтой плитке «Магазины» ===== */
/* Логотипы по очереди уплывают влево, новый въезжает справа. На белой подложке —
   чтобы любой логотип читался на жёлтом. */
/* логотип крутится прямо на жёлтом фоне, в центре плитки по обеим осям, крупно */
.v-c .shops-logos{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:86%;height:clamp(74px,13vw,124px);z-index:2}
.v-c .sl-stage{position:relative;width:100%;height:100%;overflow:hidden}
.v-c .sl-item{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateX(40px);transition:transform .55s cubic-bezier(.4,0,.2,1),opacity .55s}
.v-c .sl-item img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.v-c .sl-item.in{opacity:1;transform:translateX(0)}
.v-c .sl-item.out{opacity:0;transform:translateX(-44px)}
@media(prefers-reduced-motion:reduce){.v-c .sl-item{transition:opacity .3s}}

/* ===== ВЕРСИЯ C — карусель услуг/сервисов на оранжевой плитке ===== */
.v-c .has-svc .ctt,.v-c .has-svc .cts{max-width:52%}
.v-c .svc-rot{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:44%;height:86%;z-index:2;color:#fff}
.v-c .svc-stage{position:relative;width:100%;height:100%;overflow:hidden}
.v-c .svc-it{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;opacity:0;transform:translateX(34px);transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .5s}
.v-c .svc-it.in{opacity:1;transform:translateX(0)}
.v-c .svc-it.out{opacity:0;transform:translateX(-38px)}
.v-c .svc-ic{display:flex;align-items:center;justify-content:center}
.v-c .svc-ic svg{width:clamp(46px,7vw,68px);height:clamp(46px,7vw,68px);display:block}
.v-c .svc-ic img{width:clamp(50px,7.6vw,74px);height:clamp(50px,7.6vw,74px);object-fit:contain;display:block}
.v-c .svc-emo{font-size:clamp(42px,7vw,62px);line-height:1}
.v-c .svc-nm{font-weight:700;font-size:.84rem;text-align:center;line-height:1.15;color:#fff}
@media(prefers-reduced-motion:reduce){.v-c .svc-it{transition:opacity .3s}}

/* ===== ВЕРСИЯ C — бегущее превью ближайших событий на плитке «Афиша» ===== */
.v-c .ev-rot{position:absolute;left:22px;right:22px;top:18px;height:44%;z-index:2}
.v-c .ev-stage{position:relative;width:100%;height:100%;overflow:hidden}
.v-c .ev-it{position:absolute;left:0;right:0;top:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px;opacity:0;transform:translateX(34px);transition:transform .55s cubic-bezier(.4,0,.2,1),opacity .55s}
.v-c .ev-it.in{opacity:1;transform:translateX(0)}
.v-c .ev-it.out{opacity:0;transform:translateX(-38px)}
.v-c .ev-d{background:var(--yellow);color:#2a2300;font-weight:800;font-size:.78rem;padding:4px 11px;border-radius:100px;white-space:nowrap}
.v-c .nw-d{font-family:var(--mono);font-weight:700;font-size:.82rem;letter-spacing:.02em;color:#fff;opacity:.92;white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.v-c .ev-t{font-weight:700;font-size:.95rem;line-height:1.18;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 6px rgba(0,0,0,.4)}
@media(prefers-reduced-motion:reduce){.v-c .ev-it{transition:opacity .3s}}

/* SVG-иконки услуг в раскрытом списке (шторка версии C) */
.csheet-body .svc .si .e.svgico{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 12px;border-radius:16px;background:#EAF3E0;color:var(--green-d)}
.csheet-body .svc .si .e.svgico svg{width:30px;height:30px;display:block}
.csheet-body .svc .si .e.icimg img,.v-c .svc .si .e.icimg img{width:48px;height:48px;object-fit:contain;display:block;margin:0 auto 12px}

/* Кнопка «← К карте» в шапке шторки версии C (возврат из брони к плану помещений) */
.csheet-back{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--line);color:var(--green-d);font-family:inherit;font-weight:700;font-size:.82rem;padding:8px 14px;border-radius:100px;cursor:pointer;transition:all .15s}
.csheet-back:hover{border-color:var(--green);background:#F0F6E8}
.csheet-back[hidden]{display:none}

/* Блок «О центре» в шторке версии C — иконки и текст по центру карточки */
.csheet-body #about .ac{text-align:center}
.csheet-body #about .ac .ic{margin-left:auto;margin-right:auto}

/* Карточка магазина прямо в окне (версия C): открывается поверх списка */
.shop-open .catbar,.shop-open #grid{display:none}
.shopdt[hidden]{display:none}
.shopdt{padding-top:4px}
.shopdt .sd-back{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--line);color:var(--green-d);font-family:inherit;font-weight:700;font-size:.85rem;padding:8px 14px;border-radius:100px;cursor:pointer;transition:all .15s;margin-bottom:16px}
.shopdt .sd-back:hover{border-color:var(--green);background:#F0F6E8}
/* Компактная «шапка» карточки: логотип слева (читаемый, небольшой) + инфо справа */
.shopdt .sd-head{display:flex;align-items:center;gap:18px;margin-bottom:16px}
.shopdt .sd-badge{flex-shrink:0;width:96px;height:96px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:2.4rem;overflow:hidden}
.shopdt .sd-badge.has-logo{background:#fff;border:1px solid var(--line)}
.shopdt .sd-badge img{width:100%;height:100%;object-fit:contain;padding:12px}
.shopdt .sd-ttl{min-width:0}
.shopdt .sd-ttl h3{font-weight:800;font-size:clamp(1.3rem,3vw,1.6rem);line-height:1.08;color:var(--ink)}
.shopdt .sd-cat{font-size:.9rem;color:var(--muted);margin-top:5px}
.shopdt .sd-soon{display:inline-block;margin-top:8px;background:var(--yellow);color:#1A1A1A;font-size:.74rem;font-weight:800;padding:4px 11px;border-radius:100px}
.shopdt .sd-type{font-weight:700;color:var(--green-d);font-size:.95rem;margin-top:9px}
.shopdt .sd-desc{color:var(--ink);font-size:.95rem;line-height:1.55;margin-bottom:14px}
@media(max-width:520px){.shopdt .sd-badge{width:76px;height:76px;font-size:2rem}}
.shopdt .sd-promo{background:#FFF7D6;border:1px solid #F0DE8E;color:#7a5e0c;font-size:.9rem;padding:11px 14px;border-radius:11px;margin-bottom:16px}
.shopdt .sd-info{border-top:1px solid var(--line);margin-bottom:16px}
.shopdt .sd-row{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--line);font-size:.92rem}
.shopdt .sd-row span{color:var(--muted)}
.shopdt .sd-row b{color:var(--ink);font-weight:700;text-align:right}
.shopdt .sd-row a{color:var(--green-d);font-weight:700}
.shopdt .sd-links{display:flex;flex-wrap:wrap;gap:10px}
.shopdt .sd-links a{display:inline-block;background:#fff;border:1.5px solid var(--green);color:var(--green-d);font-weight:700;font-size:.88rem;padding:9px 16px;border-radius:100px;transition:background .15s}
.shopdt .sd-links a:hover{background:#F0F6E8}
.shopdt .sd-links a.sd-onmap{background:var(--green);border-color:var(--green);color:#fff}
.shopdt .sd-links a.sd-onmap:hover{background:#6aa033}

/* Новости версии C — горизонтальная галерея: 3 карточки видно, остальные листаются лентой.
   Стрелки полупрозрачны, при наведении заливаются цветом; на краях гаснут. Свайп — нативной прокруткой. */
.news-slider{position:relative}
.v-c .news.news-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:2px 2px 6px;margin:0;scrollbar-width:none}
.v-c .news.news-track::-webkit-scrollbar{display:none}
.v-c .news.news-track>.nc2{flex:0 0 calc((100% - 36px)/3);scroll-snap-align:start}
@media(max-width:760px){.v-c .news.news-track>.nc2{flex:0 0 84%}}
.news-slider .nn-btn{position:absolute;top:calc(50% - 18px);transform:translateY(-50%);z-index:4;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.55);color:var(--green-d);font-size:1.7rem;line-height:1;cursor:pointer;opacity:.55;backdrop-filter:blur(3px);box-shadow:0 6px 18px -8px rgba(0,0,0,.5);transition:opacity .2s,background .2s,color .2s,transform .12s}
.news-slider .nn-btn:hover{opacity:1;background:var(--green);color:#fff}
.news-slider .nn-btn:active{transform:translateY(-50%) scale(.92)}
.news-slider .nn-prev{left:-4px}
.news-slider .nn-next{right:-4px}
.news-slider .nn-btn.off{opacity:0;pointer-events:none}
