/* Audit fixes — September 2026 */
:root { --action: #2c4034; }
a,button,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid #9c5c12 !important; outline-offset:4px; }
section[id] { scroll-margin-top:80px; }
.btn--primary,.mid-lead-form__submit { background:var(--action);color:#fff;border-color:var(--action); }
.btn--primary:hover,.mid-lead-form__submit:hover { background:#1d3025;color:#fff; }
.contact-form__submit { background:#e5eee7;color:#24392c;border-color:#e5eee7; }
.contact-form__submit:hover { background:#fff;color:#24392c; }
.hero .btn--primary { background:var(--action);color:#fff; }
button,a.btn { min-height:44px; }
.header-phone-icon { display:none; }
.site-header__burger { min-width:44px;min-height:44px;flex-shrink:0; }
.visual-caption { font-size:13px;line-height:1.5;color:#535e55;margin:10px 0; }
.hero-visual-caption { position:absolute;bottom:15px;right:20px;background:rgba(255,255,255,.9);padding:5px 10px;z-index:2; }
.now-grid { display:grid;grid-template-columns:1.55fr 1fr;gap:16px; }
.now-photo { display:block;position:relative;padding:0;border:0;background:#24392c;cursor:zoom-in;overflow:hidden; }
.now-photo img { display:block;width:100%;height:210px;object-fit:cover; }
.now-photo--main { grid-row:span 2; }
.now-photo--main img { height:100%;min-height:436px; }
.now-photo span { position:absolute;left:0;right:0;bottom:0;padding:28px 16px 14px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.78));font-size:15px;font-weight:600;text-align:left; }
#posyolok-seychas { padding:48px 20px; }
#posyolok-seychas .atmo__lead { margin-bottom:24px; }
#o-posyolke .about-grid { grid-template-columns:repeat(2,1fr); }
#o-posyolke { padding-top:40px;padding-bottom:40px; }
.plots-layout { display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start; }
.plots-layout img { width:100%;height:400px;object-fit:cover; }
.plots-layout figcaption { font-size:13px;color:#536056;line-height:1.6;padding-top:12px; }
.plot-steps { padding-left:24px;display:grid;gap:18px;margin-bottom:24px; }
.plot-steps strong,.plot-steps span { display:block;line-height:1.6; }
.plot-note { margin:20px 0;font-size:15px;line-height:1.6; }
.streets-origin summary { cursor:pointer;font-weight:600;padding:8px 0;min-height:44px; }
.streets-origin[open] summary { margin-bottom:20px; }
.house-quick-actions { display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 24px; }
.house-quick-actions .btn { min-width:0;font-size:14px; }
.pdl-modal__header { position:sticky;top:0;z-index:2;background:#fff; }
.pdl-modal__image.is-plan { object-fit:contain;background:#fafaf7; }
.pdl-gallery__thumb { flex-shrink:0; }
.pdl-gallery__thumb-label { overflow-wrap:normal;word-break:normal;font-size:10px;padding:4px 2px; }
.pdl-modal__description p { margin-bottom:14px; }
.pdl-modal__bullets { display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;list-style:none;padding:0;margin:24px 0; }
.pdl-modal__bullets li { border-bottom:1px solid #e2e7e2;padding-bottom:10px;font-size:14px; }
.image-action { display:block;border:0;padding:0;background:transparent;cursor:zoom-in;width:100%; }
.image-action img { display:block; }
.project-gallery__thumbs .image-action { min-width:0; }
.project-gallery__thumbs .project-gallery__thumb { width:100%;height:100%; }
.project-gallery__main { margin:0; }
.form-field-error { display:block;font-size:14px;line-height:1.5;color:#a62626;margin:8px 0; }
.contact .form-field-error { color:#ffd2cb; }
[aria-invalid="true"] { border-color:#af3b2d !important; }
.contact [aria-invalid="true"] { border-color:#ffb7a8 !important; }
.contact-interest-summary { color:#fff;font-weight:600;margin:0 0 18px;line-height:1.5; }
.contact-interest-summary:empty { display:none; }
.map-route { display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:24px 0; }
.map-route span { flex:1;min-width:220px;line-height:1.6; }
#proj-lb-img { max-height:88vh;max-width:94vw;object-fit:contain; }
@media(max-width:768px) {
 .site-header__inner { gap:8px;padding-left:16px;padding-right:16px; }
 .site-header__logo { margin-right:auto;min-width:0; }
 .site-header__phone { flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center; }
 .header-phone-text { display:none; }.header-phone-icon { display:block; }
 .site-header__logo-mark { width:30px;height:auto; }.site-header__logo-main { font-size:16px; }
 .hero { min-height:600px; }.hero-visual-caption { bottom:12px;right:12px;font-size:11px; }
 #posyolok-seychas { padding:32px 20px; }.now-grid { grid-template-columns:1fr 1fr;gap:10px; }
 .now-photo--main { grid-column:span 2;grid-row:auto; }.now-photo--main img { height:230px;min-height:0; }
 .now-photo img { height:145px; }.now-photo--main img { height:230px; }.now-photo span { font-size:12px;padding:20px 10px 10px; }
 .location-strip__inner { display:grid;grid-template-columns:1fr 1fr;gap:0; }.location-strip__item { padding:14px 10px; }.location-strip__value { font-size:13px; }
 .location-strip { padding:20px; }.plots-layout { grid-template-columns:1fr;gap:24px; }.plots-layout img { height:240px; }
 #o-posyolke .about-grid { grid-template-columns:1fr; }.pdl-modal__bullets { grid-template-columns:1fr; }
 .pdl-modal__content { display:flex;flex-direction:column; }.pdl-modal__text { display:contents; }
 .pdl-modal__title { order:-4; }.pdl-modal__price { order:-3; }.house-quick-actions { order:-2;margin:0; }
 .pdl-modal__media { order:-1;width:100%; }.pdl-modal__header { padding:8px 16px; }
 .house-quick-actions .btn { padding:12px;flex:1; }.pdl-modal__content { gap:18px; }
 .pdl-modal__panel { max-height:100dvh; }.hero__subtitle { font-size:17px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important;transition-duration:.01ms !important; } }

/* Promotion and expanded photo gallery — 14 September 2026 */
.house-promo { display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:14px 0 6px;line-height:1.5; }
.house-promo del { color:#59615a;font-size:15px; }
.promo-label { display:inline-block;background:#e7ede3;color:#2c4034;padding:5px 9px;font-size:13px;font-weight:600; }
.house-promo--modal { margin:8px 0; }
.now-more { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px; }
.now-more img { height:190px; }
.mid-lead__prices { margin-top:22px;font-weight:600; }
@media(max-width:768px) {
 .now-more { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px; }
 .now-more img { height:145px; }
 .house-promo--modal { order:-3;margin:0; }
}

/* Unified section composition and natural text wrapping — 14 September 2026 */
.hero__inner,
.atmo__inner,
.pdl-houses__inner,
.choice-intro__inner,
.section__inner,
.streets__inner,
.contact__inner,
.mid-lead__inner {
  width:100%;
  max-width:var(--max-w);
  margin-inline:auto;
  min-width:0;
}
.section__title,
.atmo__title,
.pdl-houses__title,
.choice-intro__title,
.offer__title,
.deal-path__title,
.home-design__title,
.realized__title,
.contact__title,
.mid-lead__title,
.hero__title {
  max-width:100%;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}
.section__lead,
.atmo__lead,
.pdl-houses__lead,
.choice-intro__lead,
.offer__subtitle,
.deal-path__lead,
.home-design__lead {
  width:100%;
  max-width:960px;
  text-wrap:pretty;
  overflow-wrap:normal;
  word-break:normal;
}
.section__title,
.atmo__title,
.pdl-houses__title { margin-bottom:16px; }
.section__lead,
.atmo__lead,
.pdl-houses__lead { margin:0 0 40px; }
.hero__subtitle {
  max-width:760px;
  text-wrap:pretty;
  overflow-wrap:normal;
  word-break:normal;
}
.mid-lead__inner { align-items:start; }
.mid-lead__inner {
  grid-template-columns:minmax(380px,.95fr) minmax(0,1.7fr);
  gap:40px;
}
.mid-lead__text,
.contact__subtitle,
.realized__lead {
  width:100%;
  max-width:100%;
  text-wrap:pretty;
  overflow-wrap:normal;
  word-break:normal;
}
.plots-layout > *,
.mid-lead__inner > *,
.contact__inner > * { min-width:0; }
.plots-layout .section__lead { max-width:100%; margin-bottom:32px; }
.mid-lead-form,
.mid-lead-form__row,
.mid-lead-form__field,
.mid-lead-form__input,
.mid-lead-form__select,
.mid-lead-form__submit {
  min-width:0;
  max-width:100%;
}
.mid-lead-form__row {
  grid-template-columns:minmax(140px,.8fr) minmax(145px,1fr) minmax(200px,1.15fr) minmax(235px,auto);
  gap:8px;
}
.mid-lead-form__submit {
  padding-inline:14px;
  line-height:1.25;
  white-space:normal;
}
.projects-panel,
.project-layout,
.project-layout > * { min-width:0; max-width:100%; }

@media(max-width:768px) {
  .section__lead,
  .atmo__lead,
  .pdl-houses__lead { margin-bottom:32px; }
  .hero__subtitle { max-width:100%; }
  .projects-tabs {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow:visible;
  }
  .projects-tab {
    min-width:0;
    padding-inline:8px;
    white-space:normal;
    line-height:1.35;
  }
}
@media(max-width:1080px) {
  .mid-lead__inner { grid-template-columns:minmax(0,1fr); gap:28px; }
}
@media(max-width:1240px) {
  .mid-lead-form__row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mid-lead-form__submit { width:100%; }
}
@media(max-width:900px) {
  .project-layout { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:560px) {
  .mid-lead-form__row { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:520px) {
  .projects-tabs { grid-template-columns:minmax(0,1fr); }
  .project-spec { flex-direction:column; align-items:flex-start; gap:4px; }
}
@media(max-width:360px) {
  .hero__title { font-size:21px; }
}
