/* v4: a clean, full-resolution facade photograph and 12 real tenant links. */
.home-masthead{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);background:var(--brand,#0074c8);isolation:auto;overflow:hidden}
.home-masthead::after,.home-masthead-photo::after{display:none!important;background:none!important}
.home-masthead-photo{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:auto;align-self:stretch;z-index:auto;order:initial}
.home-masthead-photo{min-height:0;overflow:hidden}
.home-masthead-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:center 24%;opacity:1;filter:none;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none;transform:none}
.home-masthead-inner.wrap{grid-column:1;grid-row:1;width:auto;max-width:none;margin:0;min-height:440px;padding:34px 36px 36px max(40px,calc((100vw - 1440px)/2));order:initial}
.home-masthead-copy{width:100%;max-width:580px}
.home-masthead-copy h1{font-size:clamp(37px,3.5vw,58px)}
.home-masthead-copy p{max-width:450px;font-size:16px;line-height:1.55}
.home-masthead-copy .eyebrow{max-width:380px;font-size:10px}
.home-masthead-copy .button{padding:12px 18px;font-size:13px}
.home-carousel{position:relative;z-index:2;margin-top:18px}
.home-carousel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px}
.home-carousel-title{font-size:14px;font-weight:600;color:var(--ink,#18394e)}
.home-carousel-controls{display:flex;align-items:center;gap:8px}
.home-carousel-count{font-size:12px;color:var(--muted,#566b7d);min-width:82px;text-align:right;margin-right:8px;font-variant-numeric:tabular-nums}
.carousel-arrow{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cfdee9;border-radius:50%;background:white;color:var(--brand,#0074c8);font-size:20px;line-height:1}
.carousel-arrow:not(:disabled):hover{background:#eaf4fc;border-color:var(--brand,#0074c8)}
.carousel-arrow:disabled{opacity:.32}
.home-tenant-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 24px)/3);gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:14px;touch-action:pan-x pan-y;padding:0;margin:0}
.home-tenant-track::-webkit-scrollbar{display:none}
.home-carousel .home-anchor{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;border:1px solid #dce7ef!important;min-height:143px;padding:15px 21px;gap:12px;scroll-snap-align:start;border-radius:14px;min-width:0;background:#fff;color:#18394e;transition:background .18s;flex-shrink:0}
.home-carousel .home-anchor:focus-visible{outline:3px solid var(--brand,#0074c8);outline-offset:-3px}
.home-carousel .home-anchor>img{width:210px;max-width:100%;height:39px;object-fit:contain;object-position:left center}
.home-anchor-benefit{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#5c7283;line-height:1.25}
.home-carousel .home-anchor-bottom{width:100%;text-align:left;display:flex;color:#435c70}
.home-carousel .home-anchor-description{font-size:13px;line-height:1.35}
.home-anchor-hours{display:inline-block;margin-left:9px;white-space:nowrap;color:#0074c8;font-variant-numeric:tabular-nums}
.home-carousel .home-anchor--brooklyn-bowl{background:#f6c157}
.home-carousel .home-anchor--cafe-soyuz{background:#3f4638;color:#fff}
.home-carousel .home-anchor--grafika{background:#202020;color:#fff}
.home-carousel .home-anchor--tochka-krasoty{background:#292929;color:#fff}
.home-carousel .home-anchor--azbuka-baleta{background:#473441;color:#fff}
.home-carousel .home-anchor:is(.home-anchor--cafe-soyuz,.home-anchor--grafika,.home-anchor--tochka-krasoty,.home-anchor--azbuka-baleta) :is(.home-anchor-benefit,.home-anchor-bottom){color:#f2f1ef}
.home-carousel .home-anchor:is(.home-anchor--cafe-soyuz,.home-anchor--grafika,.home-anchor--tochka-krasoty,.home-anchor--azbuka-baleta) .home-anchor-arrow{background:#ffffff26;color:#fff}
.home-anchor-name{font-size:26px;line-height:1.2}
.carousel-pagination{display:flex;gap:2px;justify-content:center;margin-top:2px}
.carousel-page{display:grid;place-items:center;width:34px;height:30px;border:0;background:transparent}
.carousel-page>span{display:block;width:7px;height:7px;background:#ccdae5;border-radius:8px;transition:width .18s,background .18s}
.carousel-page[aria-pressed=true]>span{width:24px;background:#0074c8}
.home-route{padding-top:4px}
.detail-hours{display:flex;align-items:baseline;gap:24px;padding:18px 0;margin:22px 0;border-top:1px solid #d6e3ed;border-bottom:1px solid #d6e3ed;flex-wrap:wrap}
.detail-hours dt{font-size:14px;color:var(--muted,#566b7d)}
.detail-hours dd{margin:0;font-weight:600;font-size:20px;font-variant-numeric:tabular-nums;color:#0074c8}
@media(hover:hover){.home-carousel .home-anchor:hover{box-shadow:inset 0 0 0 2px #0074c8}.home-carousel .home-anchor--brooklyn-bowl:hover{background:#f6c157}}
@media(max-width:1100px){
 .home-masthead-inner.wrap{padding-left:28px;padding-right:26px;min-height:418px}
 .home-masthead-photo img{min-height:0}
 .home-masthead-copy h1{font-size:38px}
 .home-masthead-copy p{font-size:15px}
 .home-masthead-copy .button-row{gap:8px}
 .home-masthead-copy .button{font-size:12px;padding:11px 13px;min-height:44px}
 .home-carousel .home-anchor{padding:15px;min-height:143px}
 .home-anchor-hours{display:block;margin-left:0;margin-top:3px}
}
@media(max-width:700px){
 .home-masthead{display:flex;flex-direction:column}
 .home-masthead-inner.wrap{width:100%;min-height:0;padding:26px 20px 27px;order:0}
 .home-masthead-photo{order:1;height:auto;width:100%}
 .home-masthead-photo img{position:static;inset:auto;width:100%;height:auto;min-height:0;object-fit:contain;aspect-ratio:3/2}
 .home-masthead-copy{max-width:540px}
 .home-masthead-copy h1{font-size:38px}
 .home-masthead-copy p{font-size:15px}
 .home-masthead-copy .button{font-size:13px;padding:11px 16px}
 .home-carousel{margin-top:15px}
 .home-carousel-title{font-size:12px}
 .home-carousel-count{font-size:11px;min-width:64px;margin-right:2px}
 .carousel-arrow{width:32px;height:32px}
 .home-carousel-heading{gap:8px;margin-bottom:8px}
 .home-tenant-track{grid-auto-columns:calc((100% - 14px)/3);gap:7px;border-radius:10px}
 .home-carousel .home-anchor{padding:12px 8px;gap:10px;min-height:132px;align-items:center;border-radius:10px}
 .home-anchor-benefit{font-size:8px;letter-spacing:0;text-align:center;min-height:20px}
 .home-carousel .home-anchor>img{height:28px;object-position:center}
 .home-carousel .home-anchor-description{font-size:10.5px;text-align:center}
 .home-carousel .home-anchor-bottom{display:block;text-align:center;min-height:32px}
 .home-carousel .home-anchor-arrow{display:none}
 .home-anchor-hours{font-size:10px}
 .home-anchor-name{font-size:16px}
 .detail-hours{gap:10px 20px}
}
@media(prefers-reduced-motion:reduce){.home-tenant-track{scroll-behavior:auto}.carousel-page>span{transition:none}}

/* Guard against whole-page horizontal overflow during first/cold load. */
html,body{max-width:100%;overflow-x:clip}
@supports not (overflow:clip){html,body{overflow-x:hidden}}

/* Yandex Business map */
.yandex-map-section{padding-top:42px}
.yandex-map-section .section-head{align-items:flex-end;margin-bottom:18px}
.yandex-map-section .section-head h2{font-size:clamp(28px,3vw,42px);margin:4px 0 0}
.yandex-map{width:100%;overflow:hidden;border-radius:24px;border:1px solid #dbe7ef;background:#eef4f8;box-shadow:0 12px 34px rgba(23,56,78,.08)}
.yandex-map iframe{display:block;width:100%;height:440px;border:0}
@media(max-width:800px){.yandex-map-section{padding-top:30px}.yandex-map-section .section-head{align-items:flex-start}.yandex-map-section .section-head .text-link{max-width:none}.yandex-map iframe{height:380px}}
@media(max-width:590px){.yandex-map{border-radius:18px}.yandex-map iframe{height:340px}.yandex-map-section .section-head h2{font-size:28px}}

/* Release 2026-11-01: ensure the “Схема ТРЦ” CTA is always legible. */
a.button[href^="/plan-tc/"],
a.button[href*="butovo.msk.ru/plan-tc/"]{
  background:#006fc9!important;
  border-color:#006fc9!important;
  color:#fff!important;
  text-shadow:none!important;
}
a.button[href^="/plan-tc/"]:hover,
a.button[href*="butovo.msk.ru/plan-tc/"]:hover{
  background:#005aa7!important;
  border-color:#005aa7!important;
  color:#fff!important;
}
