/* Дизайн «Діловий» (corporate): строгий банківський стиль — суцільна кольорова шапка, чіткі лінії, малі радіуси, Roboto.
   Фірмові кольори — лише з палітри (--ms-primary / --ms-accent / --ms-hero-*); тут задаються тільки нейтральні тони. */

/* ---------- токени: світла тема ---------- */
html[data-design="corporate"] {
  --ms-bg: #f2f4f7;
  --ms-surface: #ffffff;
  --ms-surface-2: #eef1f5;
  --ms-text: #111827;
  --ms-muted: #566070;
  --ms-border: #dce1e8;
  --ms-shadow: 0 1px 2px rgba(15, 23, 42, .08), 0 4px 12px rgba(15, 23, 42, .07);
  --ms-shadow-hover: 0 2px 4px rgba(15, 23, 42, .10), 0 12px 28px rgba(15, 23, 42, .14);
  --ms-footer: #0b1220;
  --ms-radius: 3px;
  --cp-bar: color-mix(in srgb, var(--ms-primary) 55%, #05080d);          /* верхня смуга — темніша за шапку */
  --cp-head: var(--ms-primary);                                          /* шапка */
  --cp-head-ink: var(--ms-on-primary);
  --cp-accent-ink: color-mix(in srgb, var(--ms-accent) 55%, #000);       /* акцент як текст на світлому */
  --cp-grid: rgba(255, 255, 255, .07);                                   /* лінії візерунка */
  --bs-body-font-family: "Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --bs-border-radius: 3px;
}
/* ---------- токени: темна тема ---------- */
html[data-design="corporate"][data-bs-theme="dark"] {
  --ms-bg: #0e131a;
  --ms-surface: #161d26;
  --ms-surface-2: #1d2631;
  --ms-text: #e6eaf0;
  --ms-muted: #9ba6b5;
  --ms-border: #2a3441;
  --ms-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 14px rgba(0, 0, 0, .3);
  --ms-shadow-hover: 0 2px 6px rgba(0, 0, 0, .5), 0 14px 32px rgba(0, 0, 0, .45);
  --ms-footer: #070b11;
  --cp-bar: color-mix(in srgb, var(--ms-hero-1) 45%, #03050a);
  --cp-head: var(--ms-hero-1);                                           /* шапка лишається фірмовою, але глибшою */
  --cp-head-ink: #ffffff;
  --cp-accent-ink: var(--ms-accent);
}

/* ---------- базове: шрифт, кнопки, поля ---------- */
html[data-design="corporate"] body.ms { letter-spacing: .005em; }
html[data-design="corporate"] .btn,
html[data-design="corporate"] .form-control,
html[data-design="corporate"] .form-select,
html[data-design="corporate"] .ms-chips .btn,
html[data-design="corporate"] .pagination .page-link { border-radius: 3px !important; }
html[data-design="corporate"] .btn { font-weight: 500; }
html[data-design="corporate"] .btn-ms {
  --bs-btn-color: var(--ms-on-primary); --bs-btn-hover-color: var(--ms-on-primary); --bs-btn-active-color: var(--ms-on-primary);
  border-radius: 3px; font-weight: 500; text-transform: uppercase; letter-spacing: .04em; font-size: .88rem; padding: .62rem 1.15rem; }
/* головний заклик (заявка, пошук, форми) — акцентна кнопка */
html[data-design="corporate"] .ms-header .btn-ms,
html[data-design="corporate"] .ms-search .btn-ms,
html[data-design="corporate"] .ms-formcard .btn-ms,
html[data-design="corporate"] .ms-cta .btn-light {
  --bs-btn-color: var(--ms-on-accent); --bs-btn-bg: var(--ms-accent); --bs-btn-border-color: var(--ms-accent);
  --bs-btn-hover-color: var(--ms-on-accent); --bs-btn-hover-bg: color-mix(in srgb, var(--ms-accent) 86%, #000);
  --bs-btn-hover-border-color: color-mix(in srgb, var(--ms-accent) 86%, #000);
  --bs-btn-active-color: var(--ms-on-accent); --bs-btn-active-bg: color-mix(in srgb, var(--ms-accent) 80%, #000);
  --bs-btn-active-border-color: color-mix(in srgb, var(--ms-accent) 80%, #000); }
html[data-design="corporate"] .ms-chips .btn-check:checked + .btn,
html[data-design="corporate"] .ms-mapf-toggle.active,
html[data-design="corporate"] .active > .page-link { color: var(--ms-on-primary); }
html[data-design="corporate"] .ms-fab { border-radius: 4px; color: var(--ms-on-accent); background: var(--ms-accent);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .25); }

/* ---------- верхня смуга і шапка ---------- */
html[data-design="corporate"] .ms-topbar { background: var(--cp-bar); color: rgba(255, 255, 255, .78); font-size: .8rem; padding: .35rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, .08); }
html[data-design="corporate"] .ms-topbar a, html[data-design="corporate"] .ms-topbar span { color: rgba(255, 255, 255, .8); }
html[data-design="corporate"] .ms-topbar a:hover { color: #fff; }
html[data-design="corporate"] .ms-header { background: var(--cp-head); backdrop-filter: none; border-bottom: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .18); }
html[data-design="corporate"] .ms-header .navbar { padding: .45rem 0; }
html[data-design="corporate"] .ms-header .ms-brand { color: var(--cp-head-ink) !important; font-weight: 700; letter-spacing: .01em; }
html[data-design="corporate"] .ms-logo { border-radius: 3px; background: var(--ms-accent); color: var(--ms-on-accent); }
/* кнопки в шапці: прозорі на кольоровому тлі */
html[data-design="corporate"] .ms-header .ms-icon-btn,
html[data-design="corporate"] .ms-header .ms-lang-btn,
html[data-design="corporate"] .ms-header .ms-cabinet {
  border-radius: 3px; background: transparent; color: var(--cp-head-ink); border: 1px solid color-mix(in srgb, var(--cp-head-ink) 30%, transparent); }
html[data-design="corporate"] .ms-header .ms-icon-btn:hover,
html[data-design="corporate"] .ms-header .ms-lang-btn:hover,
html[data-design="corporate"] .ms-header .ms-cabinet:hover { background: color-mix(in srgb, var(--cp-head-ink) 14%, transparent); color: var(--cp-head-ink); }
html[data-design="corporate"] .ms-header .ms-cabinet-ico { border-radius: 2px; background: var(--ms-accent); color: var(--ms-on-accent); }
html[data-design="corporate"] .ms-header .dropdown-menu { border-radius: 3px; padding: .3rem 0; border-top: 3px solid var(--ms-accent); }
html[data-design="corporate"] .ms-header .dropdown-item { border-radius: 0; padding: .5rem 1rem; }
@media (min-width: 992px) {
  html[data-design="corporate"] .ms-header .nav-link { color: var(--cp-head-ink); opacity: .92; font-weight: 500; border-radius: 0;
    padding: .9rem .85rem !important; margin: -.45rem 0; }
  html[data-design="corporate"] .ms-header .nav-link:hover,
  html[data-design="corporate"] .ms-header .nav-link.show { color: var(--cp-head-ink); opacity: 1; background: color-mix(in srgb, var(--cp-head-ink) 10%, transparent);
    box-shadow: inset 0 -3px 0 var(--ms-accent); }
}

/* ---------- перший екран ---------- */
html[data-design="corporate"] .ms-hero { position: relative; padding: 3.6rem 0 2.8rem; overflow: hidden;
  background-color: var(--ms-hero-2);
  background-image:
    linear-gradient(var(--cp-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--cp-grid) 1px, transparent 1px),
    repeating-linear-gradient(135deg, transparent 0 22px, rgba(255, 255, 255, .025) 22px 23px),
    linear-gradient(110deg, var(--ms-hero-1) 0%, var(--ms-hero-1) 45%, var(--ms-hero-2) 100%);
  background-size: 56px 56px, 56px 56px, auto, auto; }
html[data-design="corporate"] .ms-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--ms-accent); }
html[data-design="corporate"] .ms-hero-text { max-width: 720px; }
html[data-design="corporate"] .ms-hero h1 { font-weight: 700; font-size: clamp(1.7rem, 3.6vw, 2.6rem); letter-spacing: -.005em; }
html[data-design="corporate"] .ms-hero h1::after { content: ""; display: block; width: 72px; height: 4px; margin-top: 1rem; background: var(--ms-accent); }
html[data-design="corporate"] .ms-hero p { opacity: .88; font-size: 1.05rem; }
/* панель пошуку */
html[data-design="corporate"] .ms-search { border-radius: 3px; padding: 0 1.1rem 1.2rem; box-shadow: 0 18px 44px rgba(0, 0, 0, .28), 0 2px 6px rgba(0, 0, 0, .12); }
html[data-design="corporate"] .ms-search .form-label { text-transform: uppercase; font-size: .7rem; font-weight: 700; letter-spacing: .07em; color: var(--ms-muted); }
html[data-design="corporate"] .ms-search-tabs { display: flex; gap: 0; padding: 0; background: transparent; border-radius: 0; margin: 0 -1.1rem 1rem;
  border-bottom: 1px solid var(--ms-border); }
html[data-design="corporate"] .ms-search-tab { border-radius: 0; padding: .75rem 1.4rem; font-weight: 700; text-transform: uppercase; font-size: .8rem;
  letter-spacing: .06em; border-bottom: 3px solid transparent; margin-bottom: -1px; }
html[data-design="corporate"] .btn-check:checked + .ms-search-tab { background: transparent; box-shadow: none; color: var(--ms-primary); border-bottom-color: var(--ms-primary); }
/* цифри */
html[data-design="corporate"] .ms-stats { gap: 1rem 0; margin-top: 2rem; }
html[data-design="corporate"] .ms-stats div { padding: 0 2rem 0 1rem; border-left: 3px solid var(--ms-accent); margin-right: 1rem; }
html[data-design="corporate"] .ms-stats b { font-weight: 700; }
html[data-design="corporate"] .ms-stats span { text-transform: uppercase; font-size: .75rem; letter-spacing: .06em; }

/* ---------- заголовки секцій ---------- */
html[data-design="corporate"] .ms-section-head { align-items: center; }
html[data-design="corporate"] .ms-section-head h2,
html[data-design="corporate"] .ms-block h2 { position: relative; font-weight: 700; padding-left: .9rem; }
html[data-design="corporate"] .ms-section-head h2::before,
html[data-design="corporate"] .ms-block h2::before { content: ""; position: absolute; left: 0; top: .12em; bottom: .12em; width: 4px; background: var(--ms-accent); }
html[data-design="corporate"] .ms-h1 { font-weight: 700; }

/* ---------- плитки рубрик ---------- */
html[data-design="corporate"] .ms-tiles { gap: .5rem; }
html[data-design="corporate"] .ms-tile { border-radius: 3px; padding: .7rem .9rem; border-left: 3px solid var(--ms-border); transition: border-color .15s, box-shadow .15s; }
html[data-design="corporate"] .ms-tile:hover { transform: none; border-left-color: var(--ms-accent); box-shadow: var(--ms-shadow); }
html[data-design="corporate"] .ms-tile-icon { width: 38px; height: 38px; border-radius: 2px; font-size: 1rem; }
html[data-design="corporate"] .ms-tile-icon.ms-rent { background: rgba(var(--ms-accent-rgb), .16); color: var(--cp-accent-ink); }
html[data-design="corporate"] .ms-tile-text small { font-size: .68rem; font-weight: 500; letter-spacing: .07em; }
html[data-design="corporate"] .ms-tile-text b { font-weight: 500; }
html[data-design="corporate"] .ms-tile-count { font-weight: 700; font-size: .85rem; color: var(--ms-text); background: var(--ms-surface-2);
  padding: .1rem .5rem; border-radius: 2px; }

/* ---------- картки об'єктів ---------- */
html[data-design="corporate"] .ms-card { border-radius: 3px; box-shadow: var(--ms-shadow); }
html[data-design="corporate"] .ms-card:hover { transform: translateY(-2px); box-shadow: var(--ms-shadow-hover); }
html[data-design="corporate"] .ms-card-body { padding: .8rem .9rem .85rem; gap: .3rem; }
html[data-design="corporate"] .ms-card-price { font-weight: 700; font-size: 1.15rem; color: var(--ms-primary); }
html[data-design="corporate"] .ms-card-title { font-size: .93rem; font-weight: 500; }
html[data-design="corporate"] .ms-card-loc { font-size: .82rem; }
html[data-design="corporate"] .ms-card-facts { gap: .3rem 0; border-top: 1px solid var(--ms-border); padding-top: .55rem; font-size: .82rem; color: var(--ms-text); }
html[data-design="corporate"] .ms-card-facts > span { padding: 0 .55rem; border-left: 1px solid var(--ms-border); }
html[data-design="corporate"] .ms-card-facts > span:first-child { padding-left: 0; border-left: 0; }
html[data-design="corporate"] .ms-card-facts i { color: var(--ms-primary); opacity: .85; }
html[data-design="corporate"] .ms-card-facts .ms-card-code { border-left: 0; padding-right: 0; color: var(--ms-muted); }
html[data-design="corporate"] .ms-badge { border-radius: 2px; text-transform: uppercase; letter-spacing: .05em; font-size: .68rem; font-weight: 700; }
html[data-design="corporate"] .ms-badge-accent { background: var(--ms-accent); color: var(--ms-on-accent); }
html[data-design="corporate"] .ms-slide, html[data-design="corporate"] .ms-slide-count { border-radius: 2px; }

/* ---------- заклик (CTA) ---------- */
html[data-design="corporate"] .ms-cta { border-radius: 3px; padding: 1.8rem 2rem; border-left: 6px solid var(--ms-accent);
  background-color: var(--ms-hero-1);
  background-image: linear-gradient(var(--cp-grid) 1px, transparent 1px), linear-gradient(90deg, var(--cp-grid) 1px, transparent 1px),
    linear-gradient(110deg, var(--ms-hero-1), var(--ms-hero-2));
  background-size: 40px 40px, 40px 40px, auto; }
html[data-design="corporate"] .ms-cta h2 { font-weight: 700; }
html[data-design="corporate"] .ms-cta .btn { text-transform: uppercase; letter-spacing: .04em; font-size: .85rem; padding: .62rem 1.1rem; }

/* ---------- каталог, фільтр, карта ---------- */
html[data-design="corporate"] .ms-filter { border-radius: 3px; border-top: 3px solid var(--ms-primary); box-shadow: var(--ms-shadow); }
html[data-design="corporate"] .ms-filter .form-label,
html[data-design="corporate"] .ms-mapf-row .form-label { text-transform: uppercase; font-size: .72rem; letter-spacing: .06em; color: var(--ms-muted); }
html[data-design="corporate"] .ms-checklist,
html[data-design="corporate"] .ms-mapf,
html[data-design="corporate"] .ms-map,
html[data-design="corporate"] .ms-li,
html[data-design="corporate"] .ms-li-img,
html[data-design="corporate"] .ms-maplist-hint { border-radius: 3px; }
html[data-design="corporate"] .ms-li-price, html[data-design="corporate"] .ms-mc-price { color: var(--ms-primary); font-weight: 700; }
html[data-design="corporate"] .ms-mc-pop .leaflet-popup-content-wrapper { border-radius: 3px; }
html[data-design="corporate"] .ms-mapf-badge { background: var(--ms-accent); color: var(--ms-on-accent); }

/* ---------- сторінка об'єкта ---------- */
html[data-design="corporate"] .ms-obj-price b { font-weight: 700; }
html[data-design="corporate"] .ms-gallery, html[data-design="corporate"] .ms-cover { border-radius: 3px; }
html[data-design="corporate"] .ms-thumbs button { border-radius: 2px; }
html[data-design="corporate"] .ms-keyfacts { gap: 0; border: 1px solid var(--ms-border); background: var(--ms-surface); border-radius: 3px; box-shadow: var(--ms-shadow); }
html[data-design="corporate"] .ms-keyfacts > div { border: 0; border-left: 1px solid var(--ms-border); border-radius: 0; background: transparent; padding: .85rem 1rem; }
html[data-design="corporate"] .ms-keyfacts > div:first-child { border-left: 0; }
html[data-design="corporate"] .ms-keyfacts b { font-weight: 700; }
html[data-design="corporate"] .ms-keyfacts span { text-transform: uppercase; font-size: .68rem; letter-spacing: .06em; }
html[data-design="corporate"] .ms-block,
html[data-design="corporate"] .ms-content,
html[data-design="corporate"] .ms-params-1 { border-radius: 3px; box-shadow: var(--ms-shadow); }
html[data-design="corporate"] .ms-params > div { border-bottom-style: solid; }
html[data-design="corporate"] .ms-params dd { font-weight: 500; }
html[data-design="corporate"] .ms-features span { border-radius: 2px; font-weight: 500; background: var(--ms-surface-2); border: 1px solid var(--ms-border); }
html[data-design="corporate"] .ms-features .is-tag { background: rgba(var(--ms-accent-rgb), .14); border-color: rgba(var(--ms-accent-rgb), .35); }
html[data-design="corporate"] .ms-realtor,
html[data-design="corporate"] .ms-formcard { border-radius: 3px; border-top: 3px solid var(--ms-primary); }
html[data-design="corporate"] .ms-formcard { border-top-color: var(--ms-accent); }
html[data-design="corporate"] .ms-messengers a { border-radius: 3px; }
html[data-design="corporate"] .ms-avatar { border-radius: 3px; }
html[data-design="corporate"] .ms-person { border-radius: 3px; box-shadow: var(--ms-shadow); }

/* ---------- підвал ---------- */
html[data-design="corporate"] .ms-footer { margin-top: 2.5rem; padding-top: 3rem; border-top: 4px solid var(--ms-primary); color: #b6c0cc; }
html[data-design="corporate"] .ms-footer h6 { font-weight: 700; letter-spacing: .09em; padding-bottom: .6rem; position: relative; }
html[data-design="corporate"] .ms-footer h6::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 2px; background: var(--ms-accent); }
html[data-design="corporate"] .ms-footer a { color: #b6c0cc; }
html[data-design="corporate"] .ms-footer a:hover { color: #fff; }
html[data-design="corporate"] .ms-footer .ms-brand { font-weight: 700; }
html[data-design="corporate"] .ms-social a { border-radius: 2px; }
html[data-design="corporate"] .ms-social a:hover { background: var(--ms-accent); color: var(--ms-on-accent); }
html[data-design="corporate"] .ms-footer .btn-outline-light { border-radius: 3px; border-color: rgba(255, 255, 255, .35); }
html[data-design="corporate"] .ms-footer-bottom { border-top-color: rgba(255, 255, 255, .08); font-size: .8rem; }

/* ---------- телефон ---------- */
@media (max-width: 575.98px) {
  html[data-design="corporate"] .ms-hero { padding: 2rem 0 2rem; }
  html[data-design="corporate"] .ms-search { padding: 0 .8rem .9rem; }
  html[data-design="corporate"] .ms-search-tabs { margin: 0 -.8rem .8rem; }
  html[data-design="corporate"] .ms-search-tab { flex: 1; text-align: center; }
  html[data-design="corporate"] .ms-stats div { padding-right: .8rem; margin-right: .4rem; }
  html[data-design="corporate"] .ms-cta { padding: 1.3rem 1.2rem; }
}
