/* Clear paths through the public portal on compact screens. */
.catalog-search{max-width:620px;margin:18px 0 8px}
.catalog-search label{display:block;margin-bottom:8px;color:#526659;font:600 12px/1.4 var(--sans)}
.catalog-search>div{display:flex;min-height:52px;border:1px solid #bfcabc;background:#faf9f4}
.catalog-search input{min-width:0;flex:1;border:0!important;background:transparent!important;margin:0!important;padding:0 16px!important;font:14px/1.4 var(--sans)!important;color:#173c34}
.catalog-search input:focus{outline:2px solid #6f8b73;outline-offset:-2px}
.catalog-search button{flex:none;border:0;background:#173c34;color:#fff;padding:0 20px;font:600 13px/1.2 var(--sans);cursor:pointer}
.catalog-search button:hover{background:#2a5144}
.catalog-search button:focus-visible{outline:3px solid #b18537;outline-offset:2px}
.catalog-mobile-hint,.mobile-section-links,.public-mobile-nav,.mobile-viewing-bar{display:none}

@media(max-width:767px){
  html{scroll-padding-top:18px}
  body:not(.staff-page){padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  body.inquiry-page,body.auth-page-body{padding-bottom:0}
  body:not(.staff-page) .header-row{min-height:68px}
  body:not(.staff-page) .site-name{font-size:1.42rem}
  .menu-toggle{min-height:44px;padding:6px 0 6px 12px;font-size:12px;cursor:pointer}
  .mobile-nav{position:absolute;top:100%;left:0;right:0;z-index:30;padding:8px 20px 18px;box-shadow:0 14px 25px #173c3426}
  .mobile-nav a{min-height:48px;display:flex;align-items:center;border-bottom:1px solid #d4d6ca;font-size:15px}
  .mobile-nav a[aria-current=page]{font-weight:700;color:#173c34}
  .public-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:25;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-height:70px;padding-bottom:env(safe-area-inset-bottom);background:#f8f6f0f5;border-top:1px solid #cbd2c6;box-shadow:0 -7px 24px #173c3414;backdrop-filter:blur(12px)}
  .public-mobile-nav a{min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#54675b;font:600 11px/1.2 var(--sans);text-decoration:none}
  .public-mobile-nav a+ a{border-left:1px solid #e0e4d9}
  .public-mobile-nav a span{font:400 23px/1 var(--serif);color:#30584a}
  .public-mobile-nav a[aria-current=page]{background:#e5ebdf;color:#173c34}
  .public-mobile-nav a[aria-current=page] span{color:#173c34}
  body.mobile-menu-open .public-mobile-nav,body.inquiry-page .public-mobile-nav,body.auth-page-body .public-mobile-nav,body.plot-detail-page .public-mobile-nav,body.commercial-detail-page .public-mobile-nav,body.staff-page .public-mobile-nav{display:none}

  body:not(.staff-page) .home-intro h1{font-size:clamp(2.8rem,9vw,3.6rem);line-height:1;margin:24px 0 18px;letter-spacing:-.035em}
  .home-intro-copy{padding-top:14px;padding-bottom:24px}
  .home-intro-lead{font-size:14px;line-height:1.5}
  .home-intro-actions{width:100%;padding-top:22px;gap:9px}
  .home-intro-actions .text-link{box-sizing:border-box;width:100%;min-height:50px;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#173c34;color:#fff;border:1px solid #173c34;font-size:14px}
  .home-intro-actions .text-link:after{display:none}
  .home-intro-viewing{box-sizing:border-box;width:100%;min-height:46px;display:flex;align-items:center;padding:10px 16px;border:1px solid #a9b8a7;color:#173c34;font-size:13px;text-decoration:none}
  .home-intro-visual{grid-template-rows:minmax(0,240px) minmax(0,110px)}
  .home-intro-benefits{margin-top:16px}

  .catalog-intro{padding-top:22px;padding-bottom:8px}
  .catalog-intro h1{font-size:clamp(2.75rem,9vw,3.4rem)!important;margin:8px 0 6px;line-height:1}
  .catalog-intro>p{margin-top:10px;font-size:12px;line-height:1.45}
  .catalog-search{margin:12px 0 14px}
  .catalog-search label{font-size:12px}
  .catalog-search>div{min-height:48px}
  .catalog-search input{font-size:13px!important;padding-inline:12px!important}
  .catalog-search button{padding-inline:15px}
  .catalog-experience.has-catalog-js .catalog-filter-toggle{min-height:46px}
  .catalog-toolbar{padding:11px 0}
  .catalog-toolbar p{font-size:12px}
  .catalog-mode button{min-width:64px;padding:8px 10px}
  .catalog-mobile-hint{display:block;margin:0 0 10px;color:#586a5e;font-size:12px;line-height:1.45}
  .has-catalog-js[data-view=list] .catalog-mobile-hint{display:none}
  .catalog-map-column .geo-map{height:62svh;min-height:430px}
  .catalog-map-column .map-position-note{font-size:11px;line-height:1.45}
  .catalog-results .card-media{height:195px}

  .mobile-section-links{display:flex;gap:0;max-width:100%;overflow-x:auto;scrollbar-width:thin;margin-top:20px;border-top:1px solid #d4d6ca;border-bottom:1px solid #d4d6ca}
  .mobile-section-links a{display:inline-flex;flex:none;align-items:center;justify-content:center;min-height:48px;padding:0 13px;color:#244638;font:600 12px/1.25 var(--sans);text-decoration:none;white-space:nowrap}
  .mobile-section-links a:first-child{padding-left:0}
  .mobile-section-links a+a{border-left:1px solid #d4d6ca}
  .mobile-section-links a:focus-visible{outline:3px solid #b18537;outline-offset:-3px}
  .mobile-viewing-bar{position:fixed;left:0;right:0;bottom:0;z-index:26;display:grid;grid-template-columns:1fr;gap:5px;padding:9px 16px calc(10px + env(safe-area-inset-bottom));background:#f8f6f0f7;border-top:1px solid #cbd2c6;box-shadow:0 -8px 25px #173c341a;backdrop-filter:blur(12px)}
  .mobile-viewing-bar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#647367;font:600 10px/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase}
  .mobile-viewing-bar a{min-height:46px;display:flex;align-items:center;justify-content:center;padding:6px 12px;background:#173c34;color:#fff;font:600 13px/1.2 var(--sans);text-decoration:none}
  .mobile-viewing-bar a:focus-visible{outline:3px solid #b18537;outline-offset:3px}
  body.mobile-menu-open .mobile-viewing-bar{display:none}
  .plot-detail-page .breadcrumbs{display:none}
  .commercial-detail-page .breadcrumbs{font-size:11px;line-height:1.4}
  .plot-detail-page .return-link{min-height:40px;display:inline-flex;align-items:center}
  .plot-detail-page .object-main .hero-actions,.commercial-detail-page .commercial-object-copy .hero-actions{display:none}
  .commercial-page .commercial-hero{padding-top:24px}
  .commercial-page .commercial-copy h1{font-size:clamp(2.9rem,10vw,3.8rem);margin:16px 0}
  .commercial-page .commercial-copy .page-lead{margin:18px 0 24px;font-size:14px;line-height:1.55}
  .commercial-page .architecture-panel{margin-top:28px;min-height:240px}
  .commercial-page .commercial-object-copy h1{font-size:clamp(2.8rem,9vw,3.5rem);line-height:1}
  .commercial-page .commercial-object-image{min-height:260px;margin-top:22px}
  .commercial-detail-page .commercial-object-hero{padding-top:20px}
  .commercial-detail-page .commercial-object-copy .page-lead{font-size:14px;line-height:1.5}
  .commercial-detail-page .commercial-price{margin-top:20px}
  .commercial-detail-page .commercial-price strong{font-size:2.9rem}
  .inquiry-page .form-page{padding-top:25px;gap:22px}
  .inquiry-page .form-intro h1{font-size:clamp(2.8rem,9vw,3.4rem);margin:14px 0}
  .inquiry-page .form-intro .page-lead{font-size:14px;line-height:1.5}
  .inquiry-page .form-panel{padding:18px}
}

@media(max-width:350px){
  body:not(.staff-page) .site-name{font-size:1.22rem}
  .catalog-search input{font-size:12px!important}
  .catalog-search button{padding-inline:10px}
  .mobile-section-links a{padding-inline:10px}
}
@media(max-width:650px){
  body.staff-page .menu-toggle,body.staff-page #mobile-nav{display:none!important}
  .staff-sidebar{padding:12px 16px}
  .staff-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;overflow:visible}
  .staff-sidebar nav a{min-width:0;min-height:44px;display:flex;align-items:center;padding:8px 10px;white-space:normal;font-size:12px;line-height:1.3}
  .staff-page .staff-main{padding-top:24px}
  .staff-page .staff-heading{margin-bottom:22px}
  .staff-page .staff-heading h1{font-size:3rem}
  .staff-page .staff-heading p:last-child{font-size:13px;line-height:1.45}
  .staff-table-wrap{overflow:visible}
  .staff-table{width:100%;min-width:0;border-collapse:separate}
  .staff-table thead{display:none}
  .staff-table tbody{display:grid;gap:12px}
  .staff-table tr{display:block;width:100%;padding:12px 14px;background:#fff;border:1px solid #d5ddd0}
  .staff-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;padding:7px 0;border:0;font-size:12px;line-height:1.4;text-align:right;overflow-wrap:anywhere}
  .staff-table td:first-child{display:block;padding:2px 0 12px;border-bottom:1px solid #e2e7df;text-align:left}
  .staff-table td:nth-child(2):before{content:'Объект'}
  .staff-table td:nth-child(3):before{content:'Этап'}
  .staff-table td:nth-child(4):before{content:'Ответственный'}
  .staff-table td:nth-child(5):before{content:'Следующий контакт'}
  .staff-table td:nth-child(n+2):before{flex:none;color:#65756a;font-weight:400;text-align:left}
  .staff-table td.table-empty{display:block;padding:20px!important;text-align:center;border:0}
  .staff-table td.table-empty:before{display:none}
}
@media(prefers-reduced-motion:reduce){.public-mobile-nav,.mobile-viewing-bar{scroll-behavior:auto}}

