
  /* ===== Fonts: Arsenal (заголовки) + Inter (текст) — фирменные ===== */
  @font-face{font-family:'Arsenal';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/arsenal-regular-dfc72942210d.woff2) format('woff2');}
  @font-face{font-family:'Arsenal';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/arsenal-bold-cb558c619f13.woff2) format('woff2');}
  @font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-variable-954d1c1e22e1.woff2) format('woff2');}
  :root{
    --paper:#EFEBE2;--paper-2:#E7E1D5;--card:#FBF8F2;--ink:#1A1D1B;--ink-soft:#575C55;--ink-faint:#898D83;
    --green:#1F3329;--green-line:#3A5044;--bronze:#E06A1D;--bronze-2:#F2A24E;--bronze-deep:#A8481A;--line:#D9D3C7;
    --free:#1F9E93;--sold:#B7B2A6;--resv:#C08A2E;
    --radius:10px;--radius-sm:6px;--container:1180px;
    --shadow:0 1px 2px rgba(26,29,27,.04),0 14px 34px -22px rgba(26,29,27,.26);
    --shadow-lg:0 34px 70px -38px rgba(26,29,27,.5);
    --serif:'Arsenal', Georgia, serif;--sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  }
  *{box-sizing:border-box;}
  body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;}
  svg{display:block;max-width:100%;}a{color:inherit;text-decoration:none;}button{font-family:inherit;cursor:pointer;}
  h1,h2,h3,h4,p{margin:0;}
  :focus-visible{outline:2.5px solid var(--bronze);outline-offset:2px;border-radius:3px;}
  .tnum{font-variant-numeric:tabular-nums lining-nums;}
  .wrap{max-width:var(--container);margin-inline:auto;padding-inline:clamp(1.15rem,4vw,2.2rem);}

  .site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 80%,transparent);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s,background .2s;}
.site-header.scrolled{border-bottom-color:var(--line);background:color-mix(in srgb,var(--paper) 95%,transparent);}
  .nav{display:flex;align-items:center;gap:1.25rem;height:72px;}
.nav-links{display:flex;gap:1.5rem;align-items:center;}
.nav-links a{font-size:.94rem;color:var(--ink-soft);font-weight:500;transition:color .15s;white-space:nowrap;}
.nav-links a:hover{color:var(--bronze);}
.nav-cta{display:flex;align-items:center;gap:1.15rem;}
.burger{display:none;background:none;border:1px solid var(--line);border-radius:7px;width:44px;height:44px;cursor:pointer;}
.burger span{display:block;width:18px;height:1.6px;background:var(--ink);margin:3.5px auto;}
@media(max-width:820px){.nav-links{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--paper);border-bottom:1px solid var(--line);padding:1.1rem 1.2rem;gap:1.1rem;box-shadow:var(--shadow);}.burger{display:block;}.nav-cta{margin-left:auto;gap:.6rem;}.nav-cta .btn:not(.burger),.nav-phone{display:none!important;}}
  .brand{display:flex;align-items:center;gap:.72rem;margin-right:auto;}
  .brand-mark{width:38px;height:38px;flex:none;border:1px solid var(--bronze);border-radius:7px;display:grid;place-items:center;color:var(--bronze-deep);}
  .brand-mark svg{width:18px;height:18px;}
  .brand-name{display:block;font-family:var(--serif);font-weight:700;font-size:1.12rem;letter-spacing:-.01em;line-height:1;white-space:nowrap;}
  .brand-sub{display:block;font-family:var(--sans);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px;white-space:nowrap;}
  .back{margin-left:.6rem;color:var(--ink-soft);font-size:.9rem;}
  .back:hover{color:var(--ink);}
  .nav-right{margin-left:auto;display:flex;align-items:center;gap:1rem;}
  .nav-phone{font-family:var(--sans);font-weight:700;font-size:.98rem;letter-spacing:-.01em;white-space:nowrap;}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-weight:600;font-size:.95rem;padding:.8em 1.4em;border-radius:var(--radius-sm);border:1px solid transparent;transition:.15s;white-space:nowrap;}
  .btn-primary{background:var(--bronze);color:#fff;}.btn-primary:hover{background:var(--bronze-deep);}
  .btn-ghost{background:transparent;color:var(--ink);border-color:var(--line);}.btn-ghost:hover{border-color:var(--ink);}
  .btn-sm{padding:.62em 1.1em;font-size:.9rem;}

  .head{padding-block:clamp(1.8rem,4vw,3rem) 1.4rem;}
  .eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--bronze-deep);display:inline-flex;align-items:center;gap:.7em;}
  .eyebrow::before{content:"";width:28px;height:1px;background:var(--bronze);}
  .head h1{line-height:1.12;font-family:var(--serif);font-weight:700;font-size:clamp(2rem,4.6vw,3rem);letter-spacing:-.02em;margin:.8rem 0 .6rem;}
  .head p{color:var(--ink-soft);max-width:60ch;}

  .toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.4rem;}
  .modes{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--card);}
  .mode{padding:.6em 1.1em;background:transparent;color:var(--ink-soft);font-weight:600;font-size:.92rem;border:none;display:inline-flex;align-items:center;gap:.5em;}
  .mode.active{background:var(--ink);color:#fff;}
  .mode svg{width:16px;height:16px;}
  .stepper{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--ink-soft);flex-wrap:wrap;}
  .stepper .s{padding:.2em .1em;}
  .stepper b{color:var(--ink);font-weight:600;}
  .stepper .sep{color:var(--ink-faint);}
  .stepper .cur{color:var(--bronze-deep);font-weight:700;}

  .picker{display:grid;grid-template-columns:344px 1fr;gap:clamp(1.4rem,3vw,2.4rem);align-items:start;}
  .picker.list-mode{grid-template-columns:1fr;}
  .house{position:sticky;top:1rem;display:flex;flex-direction:column;gap:1rem;}
  .list-mode .house{display:none;}
  .house-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow);}
  .house-card .hc-h{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);font-weight:700;margin-bottom:.6rem;}
  .sec-hot{cursor:pointer;}
  .sec-hot:hover rect{fill:rgba(224,106,29,.06);}
  .house-render{position:relative;border-radius:12px;overflow:hidden;line-height:0;aspect-ratio:16/10;background:#e9e4da;}
  .house-render>img{width:100%;height:100%;object-fit:cover;display:block;}
  .sec-zone{position:absolute;top:0;bottom:0;display:flex;align-items:flex-end;justify-content:center;padding:0 0 16px;cursor:pointer;border:2px solid transparent;background:transparent;transition:background .16s,border-color .16s;}
  .sec-zone[data-sec="\0410"]{left:0;width:50%;}
  .sec-zone[data-sec="\0412"]{left:50%;width:50%;}
  .sec-zone:hover{background:rgba(224,106,29,.14);}
  .sec-zone.active{background:rgba(224,106,29,.20);border-color:#E06A1D;}
  .sec-zone>span{font-family:var(--sans);font-weight:700;font-size:.82rem;letter-spacing:.01em;color:#fff;background:rgba(20,30,25,.62);padding:.4rem .8rem;border-radius:999px;line-height:1.1;box-shadow:0 2px 8px rgba(0,0,0,.25);}
  .sec-zone.active>span{background:#E06A1D;}
  .hint{font-size:.8rem;color:var(--ink-faint);margin-top:.5rem;text-align:center;}

  .floors-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow);}
  .floors-card .hc-h{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);font-weight:700;margin-bottom:.7rem;}
  .floors{display:flex;flex-wrap:wrap;gap:.4rem;}
  .fl{width:38px;height:38px;border:1px solid var(--line);background:var(--paper);border-radius:8px;font-weight:600;font-size:.9rem;color:var(--ink-soft);transition:.12s;}
  .fl:hover{border-color:var(--bronze);color:var(--ink);}
  .fl.active{background:var(--bronze);border-color:var(--bronze);color:#fff;}

  .filters{display:flex;flex-direction:column;gap:.85rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:1.3rem;box-shadow:var(--shadow);}
.frow{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;}
.frow-2{gap:.85rem 1.1rem;padding-top:.85rem;border-top:1px solid var(--line);}
  .filters .grp{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;}
  .fchip{padding:.5em .9em;border:1px solid var(--line);background:var(--paper);border-radius:999px;font-size:.86rem;font-weight:600;color:var(--ink-soft);}
  .fchip.active{background:var(--ink);border-color:var(--ink);color:#fff;}
  .filters label{font-size:.82rem;color:var(--ink-soft);font-weight:600;display:flex;align-items:center;gap:.45rem;}
  .filters input[type=checkbox]{accent-color:var(--bronze);width:16px;height:16px;}
  .filters .divider{width:1px;height:26px;background:var(--line);}
  .picker:not(.list-mode) .filters{display:none;}

  .results-h{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;}
  .results-h h2{font-family:var(--serif);font-weight:700;font-size:1.3rem;letter-spacing:-.01em;}
  .results-h .avail{font-size:.86rem;color:var(--ink-soft);}
  .results-h .avail b{color:var(--free);}
  .units{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:.8rem;}
.units.plan-mode{display:block}
.fp{margin-bottom:.4rem}
.fp-stage{position:relative;line-height:0;border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.fp-img{display:block;width:100%;height:auto}
.fp-svg{position:absolute;inset:0;width:100%;height:100%}
.fp-a{stroke-width:2;vector-effect:non-scaling-stroke;transition:fill .12s,stroke .12s}
.fp-a.avail{fill:rgba(31,158,147,0);stroke:transparent;cursor:pointer}
.fp-a.avail:hover,.fp-a.avail.hl{fill:rgba(224,106,29,.34);stroke:#E06A1D}
.unit.unit-hl{border-color:var(--bronze);box-shadow:0 0 0 2px rgba(224,106,29,.28)}
.fp-a.sold{fill:rgba(35,38,35,.46);stroke:transparent}
.fp-legend{display:flex;gap:1.4rem;margin:.6rem 0 0;font-size:.8rem;color:var(--ink-faint)}
.fp-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:.4rem;vertical-align:-1px}
.fp-legend .lg-a{background:#E06A1D}.fp-legend .lg-s{background:rgba(35,38,35,.46)}
.fp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:.8rem;margin-top:1.1rem}
.fp-mini{margin:.2rem 0 .4rem}
.fpm-h{font-size:.76rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}
.fpm-a{fill:rgba(35,38,35,.06);stroke:rgba(35,38,35,.14);stroke-width:1;vector-effect:non-scaling-stroke}
.fpm-a.hit{fill:rgba(224,106,29,.42);stroke:#E06A1D;stroke-width:2}
  .unit{position:relative;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.9rem;display:flex;flex-direction:column;gap:.5rem;min-height:150px;transition:transform .15s,box-shadow .15s,border-color .15s;}
  .unit .rooms{font-family:var(--serif);font-weight:700;font-size:1.02rem;letter-spacing:-.01em;}
  .unit .area{font-size:.82rem;color:var(--ink-soft);}
  .unit .price{margin-top:auto;font-weight:700;font-size:.98rem;}
  .unit .price small{display:block;font-size:.66rem;color:var(--ink-faint);font-weight:600;text-transform:uppercase;letter-spacing:.06em;}
  .unit .pill{position:absolute;top:.7rem;right:.7rem;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2em .55em;border-radius:5px;}
  .unit.free{cursor:pointer;}
  .unit.free:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--bronze);}
  .unit.free .pill{background:rgba(31,158,147,.14);color:var(--free);}
  .unit.free{border-left:3px solid var(--free);}
  .unit.resv{cursor:pointer;border-left:3px solid var(--resv);}
  .unit.resv .pill{background:rgba(192,138,46,.16);color:var(--bronze-deep);}
  .unit.sold{opacity:.55;background:repeating-linear-gradient(135deg,#EFECE4,#EFECE4 7px,#E7E3D9 7px,#E7E3D9 14px);border-style:dashed;}
  .unit.sold .rooms,.unit.sold .area,.unit.sold .price{color:var(--ink-faint);}
  .unit.sold .pill{background:#E0DBCF;color:#8A8576;}
  .unit.sold .price small{display:none;}

  /* slide-over */
  .overlay{position:fixed;inset:0;background:rgba(20,25,20,.4);opacity:0;pointer-events:none;transition:opacity .3s;z-index:90;}
  .overlay.open{opacity:1;pointer-events:auto;}
  .sheet{position:fixed;top:0;right:0;height:100%;width:min(440px,92vw);background:var(--card);z-index:100;transform:translateX(100%);transition:transform .32s cubic-bezier(.3,.8,.3,1);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow-y:auto;}
  .sheet.open{transform:none;}
  .sheet-top{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.3rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--card);z-index:2;}
  .sheet-crumb{font-size:.76rem;color:var(--ink-faint);font-weight:600;text-transform:uppercase;letter-spacing:.05em;}
  .sheet-close{width:36px;height:36px;border:1px solid var(--line);background:var(--paper);border-radius:8px;font-size:1.1rem;color:var(--ink-soft);line-height:1;}
  .sheet-close:hover{border-color:var(--ink);color:var(--ink);}
  .sheet-body{padding:1.3rem;display:flex;flex-direction:column;gap:1.1rem;}
  .sheet-plan{background:#EFEBE2;border:1px solid var(--line);border-radius:var(--radius-sm);aspect-ratio:4/3;display:grid;place-items:center;}
  .sheet-plan svg{width:66%;height:66%;}
  .sheet h2{font-family:var(--serif);font-weight:700;font-size:1.5rem;letter-spacing:-.01em;}
  .sheet .facts{display:grid;grid-template-columns:1fr 1fr;gap:.1rem 1rem;}
  .sheet-otd{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.85rem 1rem;}
  .sheet-otd-h{font-family:'Arsenal',serif;font-weight:700;font-size:.98rem;color:var(--ink,#1A1D1B);margin-bottom:.5rem;}
  .sheet-otd-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;}
  .sheet-otd-l li{position:relative;padding-left:1.4rem;font-size:.88rem;color:var(--ink,#1A1D1B);line-height:1.35;}
  .sheet-otd-l li::before{content:'';position:absolute;left:.15rem;top:.28em;width:12px;height:7px;border-left:2px solid var(--bronze,#E06A1D);border-bottom:2px solid var(--bronze,#E06A1D);transform:rotate(-45deg);}
  .sheet-otd-n{margin-top:.6rem;font-size:.76rem;color:var(--ink-faint);line-height:1.4;}
  .sheet .fact{padding:.6rem 0;border-bottom:1px solid var(--line);}
  .sheet .fact span{font-size:.76rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;display:block;}
  .sheet .fact b{font-weight:600;font-size:1rem;}
  .sheet .finish{font-size:.88rem;color:var(--ink-soft);}
  .sheet .finish b{color:var(--ink);display:block;margin-bottom:.2rem;font-weight:600;}
  .sheet .price-big{font-family:var(--serif);font-weight:700;font-size:2rem;letter-spacing:-.02em;}
  .sheet .price-big span{font-size:.8rem;color:var(--ink-faint);font-family:var(--sans);font-weight:600;}
  .sheet-cta{display:flex;flex-direction:column;gap:.6rem;margin-top:.3rem;}
  .sheet-cta .btn{width:100%;}

  .footnote{margin-top:1.4rem;font-size:.8rem;color:var(--ink-faint);}

  @media (max-width:820px){
    .picker{grid-template-columns:1fr;}
    .house{position:static;}
    .filters{gap:.6rem;}
  }
  .unit{cursor:pointer;}
  .unit:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--bronze);}
  .unit-imgw{position:relative;margin-bottom:.55rem;}
.unit-img{width:100%;aspect-ratio:1/0.85;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:6px;display:block;}
.unit:focus-visible{outline:2px solid var(--bronze);outline-offset:2px;}
  .sheet-gallery{display:flex;flex-direction:column;gap:.55rem;}
  .sheet-main{width:100%;aspect-ratio:1/0.8;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);}
  .sheet-thumbs{display:flex;gap:.4rem;flex-wrap:wrap;}
  .sheet-thumb{width:50px;height:50px;object-fit:cover;border-radius:6px;border:1px solid var(--line);cursor:pointer;background:#fff;}
  .sheet-thumb.active{border-color:var(--bronze);border-width:2px;}
  #picker{margin-bottom:clamp(2.5rem,5vw,4rem)}
  .footer{background:#16241C;color:#A7B3AB;padding-block:clamp(2.8rem,5vw,4rem) 2rem;}
  .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2rem;padding-bottom:2.4rem;border-bottom:1px solid var(--green-line);}
  .footer h4{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;margin-bottom:1.1rem;font-weight:700;}
  .footer a,.footer p{color:#A7B3AB;font-size:.92rem;line-height:1.95;transition:color .15s;text-decoration:none;}
  .footer a:hover{color:#fff;}
  .footer .brand-name{color:#fff;}
  .footer .brand-sub{color:#8a978f;}
  .footer-phone{font-family:var(--sans);font-weight:700;font-size:1.3rem;color:#fff!important;letter-spacing:-.01em;}
  .footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:1.6rem;font-size:.79rem;color:#69766D;}
.footer-legal{margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid var(--green-line,#3A5044);font-size:.72rem;line-height:1.6;color:#69766D;max-width:none;}

  .socials{display:flex;gap:.6rem;margin-top:1.1rem;}
  .socials a{width:40px;height:40px;border-radius:8px;border:1px solid var(--green-line);display:grid;place-items:center;color:#A7B3AB;}
  .socials a:hover{color:#fff;border-color:#5a6f61;}
  .socials svg{width:19px;height:19px;}
  @media(max-width:860px){.footer-grid{grid-template-columns:1fr 1fr;gap:1.6rem 2rem;}}
  @media(max-width:560px){.footer-grid{grid-template-columns:1fr;}}
.tools-right{display:flex;gap:.5rem;margin-left:auto;flex-wrap:wrap}
.tool-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5em .8em;border:1px solid var(--line);background:var(--card);border-radius:999px;font-size:.85rem;font-weight:600;color:var(--ink);cursor:pointer}
.tool-btn svg{width:16px;height:16px;stroke:currentColor;fill:none}
.tool-btn.on{background:var(--bronze);border-color:var(--bronze);color:#fff}
.tool-btn .cnt{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--bronze);color:#fff;font-size:.72rem;line-height:1}
.tool-btn.on .cnt{background:#fff;color:var(--bronze)}
.rng{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--ink-soft);font-weight:600;white-space:nowrap}
.fsec-l{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--ink-soft);font-weight:600;white-space:nowrap}
.rng-io{display:flex;align-items:center;gap:.3rem}
.rng-io input{width:60px;border:1px solid var(--line);border-radius:6px;padding:.35em .45em;font-family:inherit;font-size:.85rem;background:var(--paper);color:var(--ink)}
.rng-io i{color:var(--ink-faint);font-style:normal}
.reset-btn{padding:.5em .9em;border:1px solid var(--line);background:var(--paper);border-radius:8px;font-size:.82rem;font-weight:600;color:var(--ink-soft);cursor:pointer}
.reset-btn:hover{border-color:var(--bronze);color:var(--bronze)}
.unit-w{position:relative;display:flex;flex-direction:column}
.fav-b{position:absolute;top:8px;right:8px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.94);border:1px solid var(--line);display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 2px 8px rgba(0,0,0,.09);}
.fav-b:hover{border-color:var(--bronze);}
.fav-b svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fav-b.on{background:var(--bronze);border-color:var(--bronze)}
.fav-b.on svg{fill:#fff;stroke:#fff}
.cmp-b{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--ink-soft);margin-top:.4rem;cursor:pointer;user-select:none}
.cmp-b input{accent-color:var(--bronze);cursor:pointer}
.empty-st{grid-column:1/-1;text-align:center;padding:2.6rem 1rem;color:var(--ink-faint);font-size:.9rem}
.empty-st b{display:block;font-family:'Arsenal',serif;font-size:1.2rem;color:var(--ink);margin-bottom:.4rem}
.more-note{grid-column:1/-1;color:var(--ink-faint);font-size:.82rem;text-align:center;padding:.6rem}
.skel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);min-height:196px;animation:skelp 1.2s ease-in-out infinite}
@keyframes skelp{0%,100%{opacity:.45}50%{opacity:.85}}
.cmp-modal{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:1rem}
.cmp-modal.open{display:flex}
.cmp-box{background:var(--card);border-radius:var(--radius);max-width:920px;width:100%;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden}
.cmp-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--line);font-family:'Arsenal',serif;font-size:1.1rem;font-weight:700}
.cmp-scroll{overflow:auto}
.cmp-t{border-collapse:collapse;width:100%;font-size:.86rem}
.cmp-t th,.cmp-t td{padding:.7rem .85rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:135px}
.cmp-t .cmp-lbl{color:var(--ink-soft);font-weight:600;white-space:nowrap;background:var(--paper);position:sticky;left:0;z-index:1}
.cmp-hdr th{font-family:'Arsenal',serif;font-weight:700}
.cmp-rm{border:none;background:none;color:var(--ink-faint);cursor:pointer;font-size:.95rem;margin-right:.3rem}
.cmp-t img{max-height:110px;border:1px solid var(--line);border-radius:6px;background:#fff}
.cmp-t .btn-sm{padding:.45em .8em;font-size:.8rem}
@media(max-width:560px){.tools-right{width:100%;margin-left:0}.rng-io input{width:52px}}
.ptimer{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--bronze,#E06A1D);color:#fff;box-shadow:0 -6px 22px rgba(0,0,0,.18);}
.ptimer[hidden]{display:none!important;}
.ptimer-in{max-width:var(--container);margin-inline:auto;padding:.55rem clamp(1.15rem,4vw,2.2rem);display:flex;align-items:center;justify-content:center;gap:1rem;position:relative;flex-wrap:wrap;}
.ptimer-lbl{font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;}
.ptimer-nums{display:flex;align-items:center;gap:.3rem;}
.pt-u{display:flex;flex-direction:column;align-items:center;background:rgba(255,255,255,.2);border-radius:8px;padding:.22rem .5rem;min-width:44px;}
.pt-u b{font-size:1.02rem;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;}
.pt-u i{font-style:normal;font-size:.54rem;letter-spacing:.07em;text-transform:uppercase;opacity:.85;margin-top:2px;}
.pt-sep{opacity:.55;font-weight:700;}
.ptimer-x{position:absolute;right:clamp(1.15rem,4vw,2.2rem);top:50%;transform:translateY(-50%);background:none;border:none;color:#fff;opacity:.75;font-size:1.05rem;line-height:1;cursor:pointer;padding:.3rem;}
.ptimer-x:hover{opacity:1;}
@media(max-width:600px){.ptimer-in{gap:.45rem;padding:.45rem 2rem .45rem .7rem;}.ptimer-lbl{font-size:.6rem;letter-spacing:.05em;}.ptimer-nums{gap:.22rem;}.pt-u{min-width:32px;padding:.16rem .28rem;}.pt-u b{font-size:.86rem;}.pt-u i{font-size:.45rem;letter-spacing:.02em;}.pt-sep{font-size:.78rem;}.ptimer-x{right:.35rem;font-size:.95rem;padding:.25rem;}}
.lmodal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:1rem;background:rgba(20,25,20,.55);}
.lmodal[hidden]{display:none!important;}
.lbox{background:var(--card);border-radius:16px;max-width:400px;width:100%;padding:1.6rem 1.5rem;position:relative;box-shadow:var(--shadow-lg);max-height:92vh;overflow-y:auto;}
.lbox h3{font-family:var(--serif);font-size:1.32rem;margin-bottom:.35rem;padding-right:1.6rem;}
.lm-flat{font-size:.85rem;color:var(--ink-soft);margin-bottom:1.1rem;line-height:1.5;}
.lm-x{position:absolute;top:.6rem;right:.7rem;background:none;border:none;font-size:1.05rem;color:var(--ink-faint);cursor:pointer;padding:.35rem;line-height:1;}
.lm-f{display:block;margin-bottom:.8rem;}
.lm-f span{display:block;font-size:.72rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.35rem;}
.lm-f input{width:100%;border:1px solid var(--line);border-radius:9px;padding:.7em .8em;font-family:inherit;font-size:.95rem;background:var(--paper);color:var(--ink);}
.lm-f input:focus{outline:none;border-color:var(--bronze);}
.lm-c{display:flex;gap:.5rem;align-items:flex-start;font-size:.76rem;color:var(--ink-soft);line-height:1.45;margin:.2rem 0 1rem;cursor:pointer;}
.lm-c input{accent-color:var(--bronze);margin-top:.15rem;flex:none;}
.lm-c a{color:var(--bronze);}
.lbox .btn{width:100%;}
.lm-msg{font-size:.8rem;color:var(--ink-faint);margin-top:.7rem;text-align:center;min-height:1.1em;line-height:1.4;}
.lm-msg.err{color:var(--bronze);}
.lm-f .req{color:var(--bronze);font-style:normal;font-weight:700;}
.lm-f input.inv{border-color:var(--bronze)!important;box-shadow:0 0 0 3px rgba(224,106,29,.18);}
.lm-c.inv{color:var(--bronze);}
.lm-c.inv input{outline:2px solid var(--bronze);outline-offset:2px;}

/* Server-rendered catalog and links to permanent apartment pages. */
.unit-details{display:block;font-size:.78rem;font-weight:600;color:var(--bronze-deep);text-decoration:underline;text-underline-offset:3px;margin-top:.65rem;}
.unit-w > .unit-details{padding:.1rem .2rem;}
.ys-ssr:not(.catalog-enhanced) .toolbar,.ys-ssr:not(.catalog-enhanced) #filters,.ys-ssr:not(.catalog-enhanced) .house{display:none!important;}
.ys-ssr:not(.catalog-enhanced) .picker{display:block;}
.ys-ssr:not(.catalog-enhanced) .units{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;}
.ys-ssr.catalog-enhanced .ys-server-controls{display:none;}
.ys-server-controls{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.2rem;margin:0 0 1.4rem;}
.ys-server-controls p{margin:0 0 1rem;color:var(--ink-soft);}
.ys-server-fields{display:flex;gap:.8rem;flex-wrap:wrap;align-items:flex-end;}
.ys-server-fields label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;}
.ys-server-fields input,.ys-server-fields select{max-width:160px;border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:.55rem;font:inherit;color:var(--ink);}
.ys-server-flat{text-decoration:none;color:inherit;display:block;height:100%;}
.ys-data-note{padding:1rem;border:1px solid var(--bronze);border-radius:10px;font-size:.9rem;margin-bottom:1rem;}
