/* Страница объекта (23.09.2026): по образцу страницы объекта из референса, в цветах Letur Group.
   Крошки · фото 1 + 2 · слева название, описание, параметры крупными цифрами, цена, действия,
   характеристики, особенности, галерея, видео, расположение · справа закреплённая форма.
   Логика прежняя: одна форма (переезжает между колонкой и телефоном), уточнение расположения,
   согласие, избранное, похожие объекты, липкая цена на телефоне. */
.pd{padding-bottom:40px;color:var(--ui-brand,#1F2A30)}
.pd-state{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px 16px}
.pd-top{padding-top:22px}

/* ---- Крошки ---- */
.pd-crumbs{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;font:400 14px/1.4 var(--sans)}
.pd-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none}
.pd-crumbs li{display:flex;align-items:center}
.pd-crumbs li + li::before{content:"";width:6px;height:6px;margin:0 11px 0 7px;border-top:1.2px solid currentColor;border-right:1.2px solid currentColor;transform:rotate(45deg);opacity:.55}
.pd-crumbs a,body.pg .pd-crumbs a{color:var(--ui-brand,#1F2A30);text-decoration:none}
.pd-crumbs a:hover,body.pg .pd-crumbs a:hover{color:var(--ui-gold-deep,#8F6D36)}
.pd-crumbs__back{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.pd-crumbs__back svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}

/* ---- Фото: большое + два справа ---- */
.pd-hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}
.pd-hero--1{grid-template-columns:1fr}
.pd-hero__stage{position:relative;min-width:0;aspect-ratio:16/10;border-radius:4px;overflow:hidden;background:#e9e7e2;cursor:zoom-in}
.pd-hero--1 .pd-hero__stage{aspect-ratio:21/9}
.pd-hero__stage img{width:100%;height:100%;object-fit:cover;display:block}
.pd-hero__side{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px;min-height:0}
.pd-hero--2 .pd-hero__side{grid-template-rows:minmax(0,1fr)}
.pd-hero__thumb{display:block;width:100%;height:100%;padding:0;border:0;border-radius:4px;overflow:hidden;background:#e9e7e2;cursor:zoom-in}
.pd-hero__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.pd-hero__thumb:hover img{transform:scale(1.02)}
.pd-hero__fav{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:rgba(31,42,48,.55);color:#fff;cursor:pointer}
.pd-hero__fav svg,.pd-save svg,.pd-mini__fav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}
.pd-hero__fav.is-active svg,.pd-save.is-active svg,.pd-mini__fav.is-active svg{fill:currentColor}
.pd-hero__nav{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-22px;border:0;background:none;color:#fff;font:300 40px/1 var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:center;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.pd-hero__nav--prev{left:6px}.pd-hero__nav--next{right:6px}
.pd-hero__chips{position:absolute;right:20px;bottom:20px;z-index:2;display:flex;align-items:center;gap:6px}
.pd-hero__count,.pd-hero__chip,body.pg a.pd-hero__chip{display:inline-flex;align-items:center;height:34px;padding:0 16px;border:0;border-radius:4px;background:rgba(31,42,48,.6);color:#fff;font:400 15px/1 var(--sans);text-decoration:none;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.pd-hero__count{cursor:default;font-size:13px}
.pd-hero__chip:hover{background:rgba(31,42,48,.85)}

/* ---- Две колонки ---- */
.pd-cols{display:block}
.pd-main{min-width:0;padding-top:28px}
.pd-head{padding-bottom:22px;border-bottom:1px solid #D9D4CB}
.pd-title{margin:0 0 10px;font:400 clamp(26px,3vw,36px)/1.2 var(--sans);letter-spacing:.005em;color:var(--ui-brand,#1F2A30);text-wrap:pretty}
.pd-head__row{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px 24px}
.pd-head .pd-sub{margin:0;font:400 15px/1.5 var(--sans);letter-spacing:.01em;color:var(--ui-brand,#1F2A30)}
.pd-sub__ref{white-space:nowrap}
.pd-save{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:var(--ui-brand,#1F2A30);font:400 15px/1 var(--sans);white-space:nowrap;cursor:pointer}
.pd-save svg{width:20px;height:20px}
.pd-save:hover{color:var(--ui-gold-deep,#8F6D36)}

.pd-about{margin-top:26px}
.pd-about .pd-text p,.pd-text p{margin:0 0 16px;font:300 14px/2.1 var(--sans);letter-spacing:.03em;text-align:justify;-webkit-hyphens:auto;hyphens:auto;color:var(--ui-brand,#1F2A30)}
.pd-text.is-clamped{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.pd-text.is-clamped[data-clamp="10"]{-webkit-line-clamp:10}
.pd-more{margin-top:2px;padding:0;border:0;background:none;color:var(--ui-brand,#1F2A30);font:400 15px/1.4 var(--sans);cursor:pointer}

/* Параметры крупными цифрами между тонкими линиями */
.pd-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 44px;margin:34px 0 0}
.pd-facts > div{padding:22px 0 30px;border-top:1px solid #D9D4CB}
.pd-facts dt{font:300 17px/1.3 var(--sans);color:var(--ui-brand,#1F2A30)}
.pd-facts dd{margin:22px 0 0;font:300 34px/1.15 var(--sans);letter-spacing:.01em;color:var(--ui-brand,#1F2A30)}
.pd-pricebox{display:flex;flex-direction:column;max-width:calc(66.667% + 15px);padding:22px 0 0;border-top:1px solid #D9D4CB}
.pd-pricebox span{font:300 17px/1.3 var(--sans)}
.pd-main .pd-price{margin:22px 0 0;font:300 36px/1.15 var(--sans);letter-spacing:.01em;color:var(--ui-brand,#1F2A30)}
.pd-main .pd-price--soft{font-size:28px}
.pd-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.pd-actions .ui-btn{min-width:0;height:40px;padding:0 24px;font-size:15px}

/* ---- Разделы ---- */
.pd-block{padding:64px 0 0}
.pd-block__head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px}
.pd-block__head .pd-h2{margin:0}
.pd-h2{margin:0 0 24px;font:400 clamp(26px,2.6vw,34px)/1.2 var(--sans);letter-spacing:.005em;color:var(--ui-brand,#1F2A30)}
.pd-link{background:none;border:0;padding:0;font:500 14px var(--sans);color:var(--ui-brand,#1F2A30);text-decoration:underline;text-underline-offset:3px;cursor:pointer;white-space:nowrap}
.pd-rows{border-top:1px solid #D9D4CB}
.pd-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #E6E1D8;font-size:15px}
.pd-row span{font-weight:300;color:var(--ui-brand,#1F2A30)}
.pd-row b{font-weight:500;text-align:right}
.pd-row a{color:var(--ui-brand,#1F2A30)}
/* Характеристики объекта (Details / Características / Характеристики): компактный блок
   у левого края основной колонки; линии заканчиваются вместе с блоком, значения справа. */
.pd-rows{max-width:680px}
.pd-row{padding:8px 0;line-height:1.5}
.pd-row span,.pd-row b{min-width:0;overflow-wrap:anywhere}
.pd-block--specs + .pd-block{padding-top:38px;margin-top:0}
@media(max-width:700px){.pd-row{padding:10px 0}}
.pd-chips{display:flex;flex-wrap:wrap;gap:14px 20px;margin:0;padding:0;list-style:none}
.pd-chips li{padding:8px 20px;border-radius:3px;background:#F3F3F3;font:400 14px/1.4 var(--sans);color:var(--ui-brand,#1F2A30)}
.pd-ggrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pd-gthumb{padding:0;border:0;border-radius:4px;overflow:hidden;aspect-ratio:1/1;background:#eee;cursor:zoom-in}
.pd-gthumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.pd-gthumb:hover img{transform:scale(1.03)}
.pd-gmore{display:flex;justify-content:center;margin-top:36px}
.pd-gmore .ui-btn{min-width:220px;height:40px}
.pd-video{position:relative;display:block;aspect-ratio:16/9;border-radius:4px;overflow:hidden;background:var(--ui-brand,#1F2A30)}
.pd-video img{width:100%;height:100%;object-fit:cover;display:block}
.pd-video__play{position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;width:86px;height:86px;margin:-43px 0 0 -43px;border-radius:6px;background:rgba(255,255,255,.3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff}
.pd-video__play svg{width:44px;height:44px;fill:currentColor}
.pd-note{margin:2px 0 10px;font-size:13px;color:var(--ui-ink-soft)}
/* Location: a compact card — approximate area only, the manager clarifies the point. */
.pd-locblock{width:100%;max-width:760px;min-width:0}
.pd-location-place{margin:8px 0 4px;font-size:clamp(18px,2.4vw,25px);line-height:1.4;color:var(--pg-muted)}
.pd-location-caption{margin:0 0 18px;font-size:14px;color:var(--pg-muted)}
.pd-mapcard{width:100%;min-width:0}
.pd-map{height:300px;border-radius:8px;overflow:hidden;background:var(--pg-grey);border:1px solid var(--pg-line)}
.pd-map[hidden]{display:none}
.pd-map .leaflet-control-attribution{font-size:9px;background:rgba(255,255,255,.7)}
.pd-mapcard__btn{margin-top:20px;height:40px}

/* Consent row: the whole line is the label, the link opens the policy. */
.pd-form label.pd-consent{display:flex;flex-direction:row;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--pg-line);border-radius:10px;background:#fff;cursor:pointer;font-size:13px;line-height:1.5;color:var(--pg-dark)}
.pd-form .pd-consent input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--pg-dark);cursor:pointer}
.pd-form .pd-consent a{color:var(--pg-dark);text-underline-offset:3px}
.pd-form .pd-consent__policy{display:block;margin-top:2px;font-size:12px;color:var(--pg-muted)}
.pd-form .pd-consent.is-invalid{border-color:#b3635c}


/* ---- Форма «Связаться» ---- */
.pd-form-block{padding-top:48px}
.pd-form-block .pd-h2{margin:0 0 8px;font-size:20px;text-align:center}
.pd-form-block .pd-sub{margin:0 0 20px;font:400 13px/1.5 var(--sans);text-align:center;color:var(--ui-ink-soft)}
.pd-form{gap:12px}
.pd-form label{gap:6px;font-size:13px;color:var(--ui-ink-soft)}
.pd-form input,.pd-form textarea{min-height:40px;padding:9px 16px;border:1px solid transparent;border-radius:6px;background:#F3F3F3;font-size:15px;color:var(--ui-brand,#1F2A30)}
.pd-form input:focus,.pd-form textarea:focus{outline:none;border-color:var(--ui-gold,#B08A4B);background:#fff}
.pd-form textarea{min-height:84px}
.pd-form .pg-btn{min-height:42px;border-radius:4px}
.pd-form-slot--desktop{display:none}

/* ---- Похожие объекты ---- */
.pd-similar{padding-bottom:28px}
.pd-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 0 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.pd-carousel::-webkit-scrollbar{display:none}
.pd-mini{flex:0 0 260px;scroll-snap-align:start;display:flex;flex-direction:column;gap:3px;text-decoration:none;color:var(--ui-brand,#1F2A30)}
body.pg a.pd-mini{color:var(--ui-brand,#1F2A30)}
.pd-mini__media{position:relative;display:block;aspect-ratio:3/2;border-radius:4px;overflow:hidden;background:#eee;margin-bottom:8px}
.pd-mini__media img{width:100%;height:100%;object-fit:cover;display:block}
.pd-mini__fav{position:absolute;top:10px;right:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:rgba(31,42,48,.55);color:#fff;cursor:pointer}
.pd-mini__ref{font-size:12px;letter-spacing:.04em;color:var(--ui-ink-soft)}
.pd-mini__loc{font:500 13px/1.4 var(--sans);color:var(--ui-gold-deep,#8F6D36)}
.pd-mini__price{font-size:18px;font-weight:400}

/* ---- Sticky price bar (phones) ---- */
.pd-sticky{position:fixed;left:0;right:0;bottom:0;z-index:85;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--pg-line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.pd-sticky[hidden]{display:none}
.pd-sticky__price{font-size:18px;font-weight:500;color:var(--pg-dark)}
.pd-sticky .pg-btn{min-height:44px;padding:0 22px}
body.pd-has-sticky .ai-launcher{bottom:calc(76px + env(safe-area-inset-bottom))!important}
body.pd-has-sticky .ai-hint{bottom:calc(90px + env(safe-area-inset-bottom))!important}
body.pd-has-sticky{padding-bottom:calc(64px + env(safe-area-inset-bottom))}

/* ---- Lightbox ---- */
.pd-lightbox{position:fixed;inset:0;z-index:120;background:rgba(15,16,18,.96);display:flex;align-items:center;justify-content:center}
.pd-lightbox[hidden]{display:none}
.pd-lightbox img{max-width:96vw;max-height:88vh;object-fit:contain}
.pd-lightbox__close,.pd-lightbox__prev,.pd-lightbox__next{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:44px;height:44px;border-radius:50%;font:300 28px/1 var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:center}
.pd-lightbox__close{top:calc(14px + env(safe-area-inset-top));right:14px}
.pd-lightbox__prev{left:10px;top:50%;margin-top:-22px}.pd-lightbox__next{right:10px;top:50%;margin-top:-22px}
.pd-lightbox__count{position:absolute;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);color:#fff;font-size:13px}

/* ---- Lightbox ---- */
.pd-lightbox{position:fixed;inset:0;z-index:120;background:rgba(15,16,18,.96);display:flex;align-items:center;justify-content:center}
.pd-lightbox[hidden]{display:none}
.pd-lightbox img{max-width:96vw;max-height:88vh;object-fit:contain}
.pd-lightbox__close,.pd-lightbox__prev,.pd-lightbox__next{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:44px;height:44px;border-radius:50%;font:300 28px/1 var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:center}
.pd-lightbox__close{top:calc(14px + env(safe-area-inset-top));right:14px}
.pd-lightbox__prev{left:10px;top:50%;margin-top:-22px}.pd-lightbox__next{right:10px;top:50%;margin-top:-22px}
.pd-lightbox__count{position:absolute;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);color:#fff;font-size:13px}

/* ---- Компьютер: форма в закреплённой правой колонке, выровненной с маленькими фото ---- */
@media(min-width:901px){
  .pd-cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0 16px;align-items:start}
  .pd-main{padding-right:64px;padding-top:40px}
  .pd-aside{position:sticky;top:92px;padding-top:40px}
  .pd-aside .pd-form-block{padding-top:0}
  .pd-form-slot--desktop{display:block}
  .pd-form-slot--mobile{display:none}
  .pd-sticky{display:none!important}
}
@media(max-width:1100px) and (min-width:901px){
  .pd-hero,.pd-cols{grid-template-columns:minmax(0,1fr) 280px}
  .pd-hero--1{grid-template-columns:1fr}
  .pd-main{padding-right:40px}
}
@media(max-width:900px){
  .pd-hero{grid-template-columns:1fr;gap:8px}
  .pd-hero__stage,.pd-hero--1 .pd-hero__stage{aspect-ratio:4/3}
  .pd-hero__side{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:8px}
  .pd-hero__thumb{height:auto;aspect-ratio:3/2}
  .pd-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
  .pd-pricebox{max-width:none}
  .pd-form-slot--mobile .pd-form-block{margin-top:48px;padding:32px 20px 24px;border-radius:6px;background:#F5F5F5}
  .pd-form-slot--mobile .pd-form input,.pd-form-slot--mobile .pd-form textarea{background:#fff}
}
@media(max-width:560px){
  .pd-crumbs{font-size:13px}
  .pd-hero__chips{right:12px;bottom:12px}
  .pd-hero__chip,.pd-hero__count{height:32px;padding:0 12px;font-size:14px}
  .pd-facts dd{margin-top:12px;font-size:26px}
  .pd-facts > div{padding:16px 0 20px}
  .pd-main .pd-price{margin-top:12px;font-size:28px}
  .pd-actions .ui-btn{flex:1 1 auto;padding:0 16px}
  .pd-block{padding-top:48px}
  .pd-ggrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
}
@media print{.pd-sticky,.pd-hero__nav,.pd-actions,.pd-form-block{display:none!important}}
/* «О жилом комплексе» на странице объекта новостройки (ТЗ 21.10.2026) — в тех же размерах, что блок расположения. */
.pd-project__name{margin:8px 0 4px;font-size:clamp(18px,2.4vw,25px);line-height:1.4}
.pd-project__name a{color:var(--ui-brand,#1F2A30);text-decoration:none;border-bottom:1px solid var(--pg-line,#e2ddd3)}
.pd-project__meta{margin:0 0 14px;font-size:14px;color:var(--pg-muted)}
.pd-project__text{margin:0 0 22px;max-width:720px;font-size:16px;line-height:1.65;color:var(--pg-muted)}
.pd-project__sub{margin:0 0 14px;font:400 18px/1.3 var(--sans);color:var(--ui-brand,#1F2A30)}
