/* Новые блоки страницы Гюрджана, 18.09.2026. Цвета и шрифты — брендбук wse.am */

.ok { color: var(--green); }
.usd { color: var(--muted); font-weight: 500; font-size: .82em; white-space: nowrap; }

/* ── подбор от платежа ── */
.fit { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: clamp(20px, 3vw, 40px); align-items: start; }
.fit__form { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-xl); padding: 20px; display: grid; gap: 18px; box-shadow: var(--sh-1); }
.fit__form .field__label b { color: var(--ink); font-size: 17px; letter-spacing: 0; text-transform: none; }
.fit__form input[type=range] { width: 100%; accent-color: var(--ink); }
.fit__out { display: grid; gap: 16px; align-content: start; }
.fit__sum { margin: 0; font-size: clamp(16px, 1.6vw, 19px); line-height: 1.45; }
.fit__sum b { font-size: 1.25em; }
.fit__none { margin: 0; color: var(--ink-2); }
.fit__cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.fit__card { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 12px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 12px; }
.fit__card img { width: 84px; height: 84px; object-fit: contain; background: var(--paper-2); border-radius: var(--r-xs); }
.fit__card > div { display: grid; gap: 2px; align-content: start; min-width: 0; }
.fit__card b { font-size: 15px; }
.fit__card span { font-size: 13px; color: var(--muted); }
.fit__card .fit__pay { font: 700 16px/1.3 var(--font-body); color: var(--ink); font-variant-numeric: tabular-nums; margin-top: 4px; }
.fit__card .fit__total { font-size: 12.5px; }
.fit__card .link { justify-self: start; font-size: 13px; margin-top: 4px; }
@media (max-width: 860px) { .fit { grid-template-columns: 1fr; } }

.pulse { display: flex; align-items: baseline; gap: 8px; margin: 16px 0 0; padding: 10px 14px; border-radius: var(--r); background: var(--green-soft); font-size: 13.5px; color: var(--ink-2); }
.pulse b { color: var(--ink); }
.pulse__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); flex: 0 0 auto; transform: translateY(-1px); }

.last { position: absolute; left: 10px; top: 10px; z-index: 3; font: 700 11.5px/1 var(--font-body); letter-spacing: .03em; text-transform: uppercase; padding: 6px 9px; border-radius: var(--r-pill); background: var(--amber); color: var(--on-amber); }

/* ── террасы ── */
.terr { display: grid; grid-template-columns: repeat(auto-fill, minmax(255px, 1fr)); gap: 14px; }
.terr__c { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 16px 18px; display: grid; gap: 6px; align-content: start; }
.terr__top { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.terr__top b { font: 700 16px/1.2 var(--font-display); }
.terr__top span { font-size: 12.5px; color: var(--muted); }
.terr__area { margin: 4px 0 0; }
.terr__area b { font: 800 26px/1 var(--font-display); letter-spacing: -.03em; }
.terr__area span { font-size: 12.5px; color: var(--muted); }
.terr__t { margin: 0; font-size: 13.5px; color: var(--ink-2); }
.terr__p { margin: 6px 0 0; font: 700 17px/1.3 var(--font-body); font-variant-numeric: tabular-nums; }
.terr__n { margin: 0; font-size: 12px; color: var(--muted); min-height: 1em; }
.terr__c .btn { margin-top: 8px; justify-self: start; }

/* ── коммерция ── */
.comm { display: grid; gap: 16px; justify-items: start; }
.comm__stat { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px 28px; margin: 0; width: 100%; }
.comm__stat dt { font-size: 12.5px; color: var(--muted); }
.comm__stat dd { margin: 2px 0 0; font: 800 clamp(20px, 2vw, 26px)/1.1 var(--font-display); letter-spacing: -.03em; }
.comm__list { display: flex; flex-wrap: wrap; gap: 8px; }
.comm__it { font-size: 13px; font-weight: 600; padding: 7px 11px; border-radius: var(--r-pill); background: var(--card); border: 1px solid var(--line); }
.comm__it--more { background: none; border-style: dashed; color: var(--muted); }

/* ── условия покупки ── */
.terms { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.terms__c { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 18px; display: grid; gap: 8px; align-content: start; }
.terms__c.is-ask { background: var(--amber-soft); border-color: #F3DDBE; }
.terms__c h3 { margin: 0; font: 800 19px/1.15 var(--font-display); letter-spacing: -.02em; }
.terms__c p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--ink-2); }
.terms__no { color: var(--amber-text); font-weight: 600; }
.terms__q span { font-weight: 700; color: var(--ink); }
.terms__c .link { justify-self: start; font-size: 13.5px; }

/* ── инвестиции ── */
.inv__notes { display: grid; gap: 10px; margin-top: 16px; }
.inv__notes p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink-2); max-width: 80ch; }
.cmp small { display: block; font-weight: 400; color: var(--muted); font-size: 12px; }

/* ── другие ЖК ── */
.other { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.other__c { display: grid; gap: 10px; text-decoration: none; color: inherit; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); overflow: hidden; }
.other__c img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.other__c > div { display: grid; gap: 2px; padding: 0 14px 14px; }
.other__c b { font: 700 17px/1.2 var(--font-display); letter-spacing: -.02em; }
.other__c span { font-size: 13px; color: var(--muted); }
.other__p { font-weight: 700; color: var(--ink) !important; font-size: 14px !important; }
.other__f { color: var(--green) !important; font-weight: 600; }
.other__c:hover { box-shadow: var(--sh-2); }

/* ── запись на просмотр и агент ── */
.visit { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(18px, 3vw, 36px); align-items: start; }
.visit__form { display: grid; gap: 16px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-xl); padding: 20px; }
.visit__form .btn { justify-self: start; }
.agent { background: var(--ink-band); color: var(--on-dark); border-radius: var(--r-xl); padding: 22px; display: grid; gap: 14px; align-content: start; }
.agent__who { display: flex; align-items: center; gap: 14px; }
.agent__who img, .agent__ph { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; }
.agent__ph { display: grid; place-items: center; background: var(--amber); color: var(--on-amber); font: 800 15px/1 var(--font-display); }
.agent__who b { display: block; font: 700 17px/1.2 var(--font-display); color: #fff; }
.agent__who span { font-size: 13px; color: var(--on-dark-2); }
.agent__t { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--on-dark); }
.agent__btns { display: flex; gap: 8px; flex-wrap: wrap; }
.agent__btns .btn--line { background: transparent; border-color: rgba(255,255,255,.3); color: #fff; }
.agent__btns .btn--line:hover { background: rgba(255,255,255,.12); }
.agent__dev, .agent__soon { color: var(--on-dark-2) !important; font-size: 12.5px; }
@media (max-width: 860px) { .visit { grid-template-columns: 1fr; } }

/* ── карта ── */
.map { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 16px; margin-top: 24px; }
.map iframe { width: 100%; height: 340px; border: 0; border-radius: var(--r-lg); background: var(--paper-2); }
.map__side { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 18px; display: grid; gap: 10px; align-content: start; }
.map__t { margin: 0; font: 700 17px/1.2 var(--font-display); }
.map__l { margin: 0; padding-left: 18px; display: grid; gap: 6px; font-size: 14.5px; color: var(--ink-2); }
.map__side .btn { justify-self: start; }
@media (max-width: 860px) { .map { grid-template-columns: 1fr; } .map iframe { height: 260px; } }

/* ── сравнение планировок ── */
.fav { position: absolute; right: 10px; top: 10px; z-index: 3; font: 600 12px/1 var(--font-body); padding: 7px 10px; border-radius: var(--r-pill); background: rgba(255,255,255,.94); border: 1px solid var(--line-2); color: var(--ink-2); cursor: pointer; }
.fav:hover { border-color: var(--ink); color: var(--ink); }
.fav.is-on { background: var(--green); border-color: var(--green); color: #fff; }
.type { position: relative; }

.cbar { position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 60; display: flex; align-items: center; gap: 14px; padding: 10px 14px; border-radius: var(--r-pill); background: var(--ink-band); color: #fff; box-shadow: var(--sh-pop); }
.cbar[hidden] { display: none; }
.cbar__n { font-size: 14px; font-weight: 600; }
.cbar .link { color: var(--on-dark-2); font-size: 13px; }
.cbar .link:hover { color: #fff; }

.cpop { position: fixed; inset: 0; z-index: 80; background: rgba(18,19,26,.6); backdrop-filter: blur(4px); overflow-y: auto; padding: clamp(12px, 4vh, 40px) 16px; }
.cpop[hidden] { display: none; }
.cpop__in { max-width: 1100px; margin: 0 auto; background: var(--paper); border-radius: var(--r-xl); padding: clamp(18px, 3vw, 28px); }
.cpop__top { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
.cpop__top .h2 { margin: 0; }
.cpop__act { display: flex; align-items: center; gap: 10px; }
.cpop__act .viewer__x { border-color: var(--line-2); color: var(--ink); }
.cpop__act .viewer__x:hover { background: var(--paper-2); }
.cpop__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
.cpop__c { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px; display: grid; gap: 8px; align-content: start; }
.cpop__c img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; background: var(--paper-2); border-radius: var(--r-xs); }
.cpop__c b { font: 700 17px/1.2 var(--font-display); }
.cpop__c dl { display: grid; gap: 7px; margin: 0; }
.cpop__c dl div { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; }
.cpop__c dt { color: var(--muted); }
.cpop__c dd { margin: 0; font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; }
.cpop__c .link { justify-self: start; font-size: 13px; }

/* ── подписка на цену ── */
.watch { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; line-height: 1.4; color: var(--muted); cursor: pointer; }
.watch input { margin-top: 2px; accent-color: var(--amber); width: 17px; height: 17px; flex: 0 0 auto; }

/* ── читаемость и пальцы ── */
.badge, .type__tag { font-size: 12px !important; }
.eyebrow { font-size: 12px !important; letter-spacing: .12em; }
@media (max-width: 640px) {
  .chip-b, .seg button, .filters button, .pf button { min-height: 40px; }
  .link, .type__cta { min-height: 40px; display: inline-flex; align-items: center; }
  .fav { min-height: 36px; display: inline-flex; align-items: center; }
}

/* ── печать: подборка в PDF ── */
@media print {
  .hdr, .proto, .cbar, .foot, #lead, #visit, #media, #build, .map iframe, .btn, .fav { display: none !important; }
  body { background: #fff; }
  .cpop { position: static; background: none; backdrop-filter: none; padding: 0; overflow: visible; }
  .cpop[hidden] { display: block !important; }
  .cpop__in { max-width: none; background: none; padding: 0; }
  .cpop__grid { grid-template-columns: repeat(2, 1fr); }
  .cpop__c { break-inside: avoid; border-color: #ccc; }
  a[href]:after { content: ""; }
}

/* таблицы сроков и доходности (стили из каталога, на этой странице catalog.css не подключён) */
.cmp-wrap { overflow-x: auto; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); -webkit-overflow-scrolling: touch; }
.cmp { width: 100%; border-collapse: collapse; min-width: 720px; font-size: 14.5px; }
.cmp th, .cmp td { padding: 13px 16px; text-align: left; border-top: 1px solid var(--line); vertical-align: top; }
.cmp thead th { border-top: 0; font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); background: var(--paper-2); white-space: nowrap; }
.cmp tbody th { font: 700 15.5px/1.25 var(--font-display); letter-spacing: -.01em; white-space: nowrap; }
.cmp .num { font-variant-numeric: tabular-nums; white-space: nowrap; font-weight: 600; }
.cmp tbody tr:hover { background: var(--paper); }


/* ── контакты: док, строки действий, шапка, подвал ── */
.dock { position: fixed; right: 18px; bottom: 18px; z-index: 55; display: grid; gap: 8px; }
.dock__b { display: inline-flex; align-items: center; justify-content: center; min-width: 46px; height: 46px; padding: 0 14px; border-radius: var(--r-pill); text-decoration: none;
  font: 700 13px/1 var(--font-body); box-shadow: var(--sh-2); border: 1px solid transparent; transition: transform .2s var(--ease); }
.dock__b:hover { transform: translateY(-2px); }
.dock__b--wa { background: #25D366; color: #08301a; }
.dock__b--tg { background: #229ED9; color: #fff; }
.dock__b--tel { background: var(--card); color: var(--ink); border-color: var(--line-2); }
.dock__b--lead { background: var(--amber); color: var(--on-amber); }
@media (max-width: 860px) {
  .dock { right: 0; left: 0; bottom: 0; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 0; padding: 8px; background: rgba(247,246,243,.96); backdrop-filter: blur(10px); border-top: 1px solid var(--line); }
  .dock__b { height: 44px; border-radius: var(--r); box-shadow: none; margin: 0 3px; }
  body { padding-bottom: 64px; }
  .cbar { bottom: 74px; }
}

.cta-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; margin-top: 22px; padding: 16px 20px; border: 1px dashed var(--line-2); border-radius: var(--r-lg); background: var(--card); }
.cta-row b { display: block; font: 700 16px/1.25 var(--font-display); letter-spacing: -.01em; }
.cta-row span { font-size: 14px; color: var(--muted); }
.cta-row__b { display: flex; gap: 8px; flex-wrap: wrap; }
.band .cta-row, .sec--paper2 .cta-row { background: var(--card); }
.band .cta-row b { color: var(--ink); }

.c-soon { display: block; margin-top: 6px; font-size: 12.5px; color: var(--amber-text); }

.hdr__contacts { display: inline-flex; align-items: center; gap: 8px; margin-left: auto; }
.hdr__tel { font: 700 14px/1 var(--font-body); color: var(--ink); text-decoration: none; white-space: nowrap; }
.hdr__tel:hover { color: var(--amber-text); }
.hdr__ic { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; font: 700 11px/1 var(--font-body); text-decoration: none; }
.hdr__ic--wa { background: #25D366; color: #08301a; }
.hdr__ic--tg { background: #229ED9; color: #fff; }
@media (max-width: 900px) { .hdr__contacts .hdr__tel { display: none; } }

.foot__c { display: grid; gap: 6px; margin-bottom: 16px; }
.foot__c b { font: 700 18px/1.2 var(--font-display); color: #fff; }
.foot__c span { font-size: 13.5px; color: var(--on-dark-2); }
.foot__b { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
.foot__b .btn--line { background: transparent; border-color: rgba(255,255,255,.3); color: #fff; }
.foot__b .btn--line:hover { background: rgba(255,255,255,.12); }

@media print { .dock, .cta-row { display: none !important; } }

/* на телефоне в шапке остаётся главное: мессенджеры, заявка — в нижней панели */
@media (max-width: 640px) {
  .hdr__in { flex-wrap: wrap; row-gap: 6px; }
  .hdr__cta { display: none; }
  .hdr__contacts { margin-left: auto; }
}

/* ── вкладки «Посмотреть»: медиа, стройка, расположение ── */
.see { padding-block: clamp(28px, 4vw, 48px) 0; }
.see__tabs { display: flex; gap: 6px; flex-wrap: wrap; padding: 5px; border-radius: var(--r-pill); background: var(--paper-2); width: fit-content; max-width: 100%; }
.see__tab { border: 0; background: none; border-radius: var(--r-pill); padding: 10px 18px; font: 700 14.5px/1 var(--font-body); color: var(--ink-2); cursor: pointer; min-height: 40px; }
.see__tab:hover { color: var(--ink); }
.see__tab.is-on { background: var(--ink); color: #fff; }
.see__panel > section { padding-block: 22px 0; }
.see__panel > section.band { margin-top: 22px; border-radius: var(--r-xl); padding-block: 28px; }
.see__panel .sec-head { margin-bottom: 18px; }

/* ── рассрочка: лишние схемы по кнопке ── */
.pay__more { align-self: center; }
.sch--extra[hidden] { display: none; }

/* ── вопросы клиентов внутри условий покупки ── */
.terms__sub { margin: 30px 0 4px; font: 800 clamp(20px, 2vw, 26px)/1.15 var(--font-display); letter-spacing: -.02em; }

/* ── заявка и запись на просмотр одной формой ── */
.lead__forms { display: grid; align-content: start; gap: 0; min-width: 0; }
.lead__tabs { display: flex; gap: 6px; padding: 5px; border-radius: var(--r-pill); background: rgba(255,255,255,.1); margin-bottom: 14px; width: fit-content; max-width: 100%; }
.lead__tab { border: 0; background: none; border-radius: var(--r-pill); padding: 9px 14px; font: 700 13.5px/1 var(--font-body); color: rgba(255,255,255,.7); cursor: pointer; min-height: 38px; }
.lead__tab:hover { color: #fff; }
.lead__tab.is-on { background: #fff; color: var(--ink); }
.lead-box .agent { margin-top: 18px; background: rgba(255,255,255,.06); }
#visit-form { background: var(--card); border-radius: var(--r-xl); padding: 20px; display: grid; gap: 14px; }

.lead-form .is-filled { border-color: var(--amber); box-shadow: 0 0 0 3px rgba(232,133,12,.15); }
.lead-form__apt:empty { display: none; }

/* заявка не ушла: то же место, другой смысл */
.lead-form__ok.is-bad { color: #B03A2E; }
