/* ==========================================================
   Мини-сайт риэлтора ({поддомен}.rielt.su / свой домен)
   Акцент выбирается в кабинете: класс accent-* на <body>
   ========================================================== */
.accent-brick{--sf-accent:#B8431B;--sf-accent-hover:#9E3714;--sf-accent-soft:#F6E3DA}
.accent-green{--sf-accent:#1F6F5F;--sf-accent-hover:#185A4D;--sf-accent-soft:#DDEEEA}
.accent-blue{--sf-accent:#0079B0;--sf-accent-hover:#00619A;--sf-accent-soft:#DDF1FB}
.accent-ink{--sf-accent:#17191C;--sf-accent-hover:#000;--sf-accent-soft:#E8E5DE}
.accent-brick{--sf-on-accent:#fff}.accent-green{--sf-on-accent:#fff}

/* у мини-сайта главная кнопка — в цвет, выбранный риэлтором */
.ms .btn-primary{background:var(--sf-accent);color:var(--sf-on-accent)}
.ms .btn-primary:hover{background:var(--sf-accent-hover);color:var(--sf-on-accent)}
.ms{background:var(--sf-bg);overflow-x:hidden}
.ms-in{max-width:1160px;margin:0 auto;padding-left:20px;padding-right:20px}
@media (min-width:900px){.ms-in{padding-left:40px;padding-right:40px}}
.plan{width:100%;height:auto;color:var(--sf-ink)}
.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sf-bg-2);color:var(--sf-ink);font-weight:700;object-fit:cover;flex-shrink:0}
.avatar-44{width:44px;height:44px;font-size:15px}

.ms-preview{padding:10px 16px;background:var(--sf-ink);color:var(--sf-bg);font-size:14px;text-align:center}
.ms-preview a{color:var(--sf-bg);font-weight:600}

/* шапка */
.ms-nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--sf-bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--sf-line)}
.ms-nav-in{display:flex;align-items:center;gap:20px;min-height:68px}
.ms-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--sf-ink);margin-right:auto;min-width:0}
.ms-brand:hover{color:var(--sf-ink)}
.ms-brand span{display:flex;flex-direction:column;min-width:0}
.ms-brand b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-brand small{font-size:13px;color:var(--sf-muted)}
.ms-links{display:none;gap:28px;font-weight:500}
.ms-links a{text-decoration:none}
.ms-call{min-height:42px;padding:0 14px;font-size:14px}
.ms-call span{display:none}
@media (min-width:640px){.ms-call span{display:inline}}
@media (min-width:900px){.ms-links{display:flex}.ms-nav-in{min-height:80px}}
.ms-flashes{margin-top:16px;display:flex;flex-direction:column;gap:8px}

/* типографика */
.ms-eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--sf-font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--sf-muted)}
.ms-h1{font-family:var(--sf-font-display);font-weight:600;font-size:clamp(34px,5.6vw,58px);line-height:1.05;letter-spacing:-.035em;color:var(--sf-ink)}
.ms-h2{font-family:var(--sf-font-display);font-weight:600;font-size:clamp(26px,3.4vw,38px);line-height:1.1;letter-spacing:-.03em;color:var(--sf-ink)}
.ms-h3{font-size:20px;margin-bottom:12px}
.ms-lead{font-size:clamp(17px,1.7vw,20px);line-height:1.5;color:var(--sf-text-2)}
.ms-section{padding-top:clamp(56px,8vw,96px)}
.ms-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:28px}

/* первый экран */
.ms-hero{display:grid;gap:32px;padding-top:40px}
@media (min-width:900px){.ms-hero{grid-template-columns:minmax(0,1fr) 400px;align-items:center;padding-top:72px;gap:64px}}
.ms-hero-text{display:flex;flex-direction:column;gap:20px;min-width:0}
.ms-facts{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.ms-facts li{flex:1 1 140px;display:flex;flex-direction:column;gap:2px;padding:14px 18px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg);min-width:140px}
.ms-facts b{font-family:var(--sf-font-display);font-size:22px;letter-spacing:-.02em;color:var(--sf-ink)}
.ms-facts span{font-size:14px;color:var(--sf-muted)}
.ms-ctas{display:flex;gap:10px;flex-wrap:wrap}
.ms-hero-photo{order:-1;max-width:360px;width:100%}
.ms-hero-photo.is-empty{display:none}
@media (min-width:900px){.ms-hero-photo.is-empty{display:block}}
@media (max-width:560px){.ms-form .sf-row-2{grid-template-columns:minmax(0,1fr)}}
@media (min-width:900px){.ms-hero-photo{order:0;max-width:none}}
.ms-hero-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--sf-r-xl);background:var(--sf-bg-2)}
.ms-hero-plan{aspect-ratio:1;border-radius:var(--sf-r-xl);background:var(--sf-bg-2);display:flex;align-items:center;justify-content:center;padding:18%}

/* обо мне */
.ms-about{display:grid;gap:28px}
@media (min-width:900px){.ms-about{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:64px}}
.ms-about-text{margin-top:16px;font-size:18px;line-height:1.65;color:var(--sf-text)}
.ms-tags{display:flex;flex-direction:column;gap:10px}
.ms-chips{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ms-chips li{padding:8px 14px;border-radius:99px;background:var(--sf-surface);border:1px solid var(--sf-line);font-size:15px}

/* объекты */
.ms-tabs{display:flex;gap:6px;flex-wrap:wrap}
.ms-tabs a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:99px;border:1.5px solid var(--sf-line);text-decoration:none;font-weight:500;background:var(--sf-surface)}
.ms-tabs a.is-active{background:var(--sf-ink);border-color:var(--sf-ink);color:var(--sf-bg)}
.ms-tabs small{font-size:12px;opacity:.7}
.ms-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.ms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.ms-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
.ms-card{display:flex;flex-direction:column;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg);overflow:hidden;text-decoration:none;color:var(--sf-text);transition:border-color .15s var(--sf-ease),transform .15s var(--sf-ease)}
.ms-card:hover{border-color:var(--sf-line-strong);color:var(--sf-text)}
@media (hover:hover){.ms-card:hover{transform:translateY(-2px)}}
.ms-card-img{position:relative;aspect-ratio:4/3;background:var(--sf-bg-2);display:flex;align-items:center;justify-content:center}
.ms-card-img img{width:100%;height:100%;object-fit:cover}
.ms-card-img .plan{width:50%}
.ms-flag{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:99px;background:var(--sf-warn-soft);color:var(--sf-warn);font-size:12px;font-weight:700}
.ms-flag-rent{left:auto;right:10px;background:var(--sf-ink);color:var(--sf-bg)}
.ms-card-body{padding:16px;display:flex;flex-direction:column;gap:4px}
.ms-card-price{font-size:20px;font-weight:700;color:var(--sf-ink);font-variant-numeric:tabular-nums}
.ms-card-title{font-weight:500}
.ms-card-meta{font-size:14px;color:var(--sf-muted)}
.ms-empty{padding:32px;border:1.5px dashed var(--sf-line-strong);border-radius:var(--sf-r-lg);display:flex;flex-direction:column;gap:14px;align-items:flex-start;color:var(--sf-text-2)}

/* отзывы */
.ms-rating{font-family:var(--sf-font);font-size:18px;font-weight:600;color:var(--sf-accent);letter-spacing:0;margin-left:8px;vertical-align:middle}
.ms-reviews{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:800px){.ms-reviews{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ms-review{padding:22px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg);display:flex;flex-direction:column;gap:10px}
.ms-stars{color:var(--sf-accent);letter-spacing:2px;font-size:18px}
.ms-review-by{font-size:14px;color:var(--sf-muted)}
.ms-review-by b{color:var(--sf-ink)}
.ms-reply{padding:12px 14px;background:var(--sf-bg);border-radius:var(--sf-r);font-size:15px}
.ms-review-form{margin-top:24px}
.ms-review-form summary{list-style:none;display:inline-flex}
.ms-review-form summary::-webkit-details-marker{display:none}
.ms-review-form form{margin-top:16px;max-width:620px;padding:24px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg)}

/* заявка */
.ms-contact{display:grid;gap:28px;padding:clamp(24px,5vw,56px);background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-xl)}
@media (min-width:900px){.ms-contact{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start}}
.ms-contact-text{display:flex;flex-direction:column;gap:16px}
.ms-contact-btns{display:flex;flex-wrap:wrap;gap:8px}

/* страница объекта */
.crumbs{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:20px 0;font-size:14px;color:var(--sf-muted)}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--sf-line-strong)}
.crumbs a{color:var(--sf-muted);text-decoration:none}
.ms-gone{margin-bottom:16px}
.ms-obj{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1000px){.ms-obj{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:40px}}
.ms-obj-main{display:flex;flex-direction:column;gap:28px;min-width:0}
.ms-gallery{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:var(--sf-r-xl);scrollbar-width:thin}
.ms-gallery img{flex:0 0 100%;width:100%;aspect-ratio:4/3;object-fit:cover;scroll-snap-align:start;border-radius:var(--sf-r-xl);background:var(--sf-bg-2)}
@media (min-width:900px){.ms-gallery.is-multi img{flex-basis:88%}}
.ms-gallery-plan{flex:1;aspect-ratio:16/9;background:var(--sf-bg-2);display:flex;align-items:center;justify-content:center;padding:10%;border-radius:var(--sf-r-xl)}
.ms-gallery-plan .plan{max-width:280px}
.ms-obj-block{padding:24px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg)}
.ms-obj-block p{font-size:17px;line-height:1.65}
.ms-obj-side{order:-1}
@media (min-width:1000px){.ms-obj-side{order:0;position:sticky;top:100px}}
.ms-obj-card{padding:24px;background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-r-lg);display:flex;flex-direction:column;gap:10px}
.ms-obj-title{font-size:22px;line-height:1.25}
.ms-obj-price{font-family:var(--sf-font-display);font-size:30px;font-weight:600;letter-spacing:-.02em;color:var(--sf-ink)}
.ms-obj-addr{display:flex;gap:6px;color:var(--sf-muted);font-size:15px;margin-bottom:6px}
.ms-obj-addr .ic{margin-top:3px}

/* подвал */
.ms-foot{margin-top:clamp(56px,8vw,96px);padding:36px 0;border-top:1px solid var(--sf-line);color:var(--sf-muted)}
.ms-foot-in{display:flex;flex-direction:column;gap:16px}
@media (min-width:800px){.ms-foot-in{flex-direction:row;justify-content:space-between;align-items:center}}
.ms-foot-name{font-weight:600;color:var(--sf-ink)}
.ms-made a{color:var(--sf-text-2)}

/* ===== галерея объекта: большое фото, миниатюры, просмотр на весь экран ===== */
.ms-gal{display:flex;flex-direction:column;gap:10px;min-width:0}
.ms-gal-stage{position:relative;border-radius:var(--sf-r-xl);overflow:hidden;background:var(--sf-bg-2);box-shadow:0 24px 56px -34px rgba(26,27,30,.35)}
.ms-gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:4/3;-webkit-overflow-scrolling:touch;outline:none}
.ms-gal-track::-webkit-scrollbar{display:none}
.ms-gal-track:focus-visible{box-shadow:inset 0 0 0 3px var(--sf-focus)}
.ms-gal-slide{flex:0 0 100%;margin:0;scroll-snap-align:start;cursor:zoom-in}
.ms-gal-slide img{width:100%;height:100%;object-fit:cover;display:block}
@media (min-width:900px){.ms-gal-track{aspect-ratio:16/10}}
.ms-gal-plate{position:absolute;left:16px;bottom:16px;font-size:14px;pointer-events:none}
.ms-gal-count{position:absolute;right:14px;top:14px;padding:4px 11px;border-radius:999px;background:rgba(255,255,255,.88);color:#1A1B1E;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;pointer-events:none}
.ms-gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:#1A1B1E;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px -8px rgba(0,0,0,.4);transition:background .15s var(--sf-ease)}
.ms-gal-nav:hover{background:#fff}
.ms-gal-nav.is-prev{left:14px}.ms-gal-nav.is-next{right:14px}
.ms-gal-full{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:0;background:rgba(22,24,31,.72);color:#fff;font:inherit;font-size:13px;font-weight:500;cursor:pointer}
.ms-gal-full:hover{background:rgba(22,24,31,.9)}
@media (max-width:640px){.ms-gal-nav{display:none}.ms-gal-full span{display:none}.ms-gal-full{width:36px;padding:0;justify-content:center}}
.ms-gal-thumbs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:2px}
.ms-gal-thumb{flex:0 0 auto;width:96px;height:72px;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.62;background:var(--sf-bg-2);box-shadow:0 0 0 2px transparent;transition:opacity .15s var(--sf-ease),box-shadow .15s var(--sf-ease)}
.ms-gal-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ms-gal-thumb:hover{opacity:.9}
.ms-gal-thumb.is-active{opacity:1;box-shadow:0 0 0 2px var(--sf-accent)}
@media (min-width:900px){.ms-gal-thumb{width:112px;height:84px}}
/* весь экран */
.ms-lb{position:fixed;inset:0;z-index:1000;background:rgba(15,17,22,.96);display:flex;align-items:center;justify-content:center;padding:56px 12px}
.ms-lb[hidden]{display:none}
.ms-lb-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;user-select:none}
.ms-lb-count{position:absolute;left:50%;top:16px;transform:translateX(-50%);color:#CDD2DF;font-size:14px;font-variant-numeric:tabular-nums}
.ms-lb-close,.ms-lb-nav{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center;cursor:pointer}
.ms-lb-close:hover,.ms-lb-nav:hover{background:rgba(255,255,255,.22)}
.ms-lb-close{top:10px;right:10px}
.ms-lb-nav{top:50%;transform:translateY(-50%)}
.ms-lb-nav.is-prev{left:12px}.ms-lb-nav.is-next{right:12px}
@media (max-width:640px){.ms-lb-nav{top:auto;bottom:14px;transform:none}}
.ms-lb-open,.ms-lb-open body{overflow:hidden}
