:root{font-family:Inter,Arial,sans-serif;color:#222;--blue:#0044ff;--line:#e5e7eb;--muted:#6b7280;--surface:#f5f6f7;--white:#fff}*{box-sizing:border-box}body{margin:0;background:#fff}button,input,select{font:inherit}button{cursor:pointer}.site-header{height:74px;padding:0 max(24px,calc((100vw - 1440px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:18px;text-decoration:none;color:#252525;font-size:12px;font-weight:700;letter-spacing:.03em}.brand img{display:block;width:145px;height:auto}.brand span{padding-left:18px;border-left:1px solid var(--line);color:var(--blue)}.header-note{color:var(--muted);font-size:12px}.layout{max-width:1440px;margin:auto;padding:40px 32px 80px}.eyebrow{display:block;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}.intro h1{font-size:clamp(36px,4vw,58px);line-height:1.05;letter-spacing:-.04em;margin:12px 0}.intro p{color:var(--muted);margin:0 0 35px}.projects h2,.catalog-heading h2{font-size:20px;letter-spacing:-.025em;margin:0 0 18px}.project-list{display:flex;gap:10px;flex-wrap:wrap}.project-card{width:236px;min-height:112px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;padding:15px;border:1px solid var(--line);background:#fff}.project-card:hover,.project-card:focus-visible{border-color:var(--blue)}.project-card.active{background:var(--blue);border-color:var(--blue);color:#fff}.project-name{font-weight:700;font-size:16px}.project-city{font-size:12px;color:var(--muted)}.project-card.active .project-city{color:#e1e9ff}.catalog{margin-top:44px}.catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.catalog-heading h2{margin:5px 0 0;font-size:25px}.catalog-heading p{margin:0;color:var(--muted);font-size:13px}.catalog-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px}.filters{align-self:start;padding:20px;border:1px solid var(--line);display:grid;gap:17px}.filters h3{font-size:17px;margin:0}.filters label{display:grid;gap:7px;font-size:12px;font-weight:600}.filters input,.filters select{width:100%;height:40px;padding:0 10px;background:#fff;border:1px solid var(--line);border-radius:0}.filters fieldset{border:0;padding:0;margin:0}.filters legend{font-size:12px;font-weight:600;margin-bottom:9px}.room-options{display:flex;flex-wrap:wrap;gap:6px}.room-options label{display:block}.room-options input{position:absolute;opacity:0;width:1px;height:1px}.room-options span{display:grid;place-items:center;min-width:37px;height:37px;border:1px solid var(--line);font-size:12px}.room-options input:checked+span{border-color:var(--blue);color:var(--blue);background:#eef2ff}.room-options input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}.reset{height:40px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:600}.legend{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin:0 0 18px}.dot{display:inline-block;width:9px;height:9px;margin-right:7px}.dot.available{background:var(--blue)}.dot.empty{border:1px solid var(--line)}.building-groups{display:grid;gap:34px}.building-head{display:flex;align-items:baseline;gap:10px;margin:0 0 13px}.building-head h3{font-size:19px;margin:0}.building-head span{font-size:12px;color:var(--muted)}.floor-row{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:12px;margin:8px 0}.floor-number{padding-top:13px;font-size:12px;color:var(--muted)}.flat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:6px}.flat{min-height:79px;padding:9px 11px;border:1px solid var(--line);background:#fff;text-align:left}.flat:hover,.flat:focus-visible{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}.flat strong{display:block;font-size:14px}.flat span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.flat em{display:block;color:var(--blue);font-size:12px;font-weight:700;font-style:normal;margin-top:7px}.empty-state,.empty-projects{color:var(--muted);font-size:14px;padding:18px;border:1px solid var(--line)}.flat-dialog{width:min(480px,calc(100vw - 24px));border:0;padding:0;box-shadow:0 18px 60px #0003}.flat-dialog::backdrop{background:#0006}.dialog-close{position:absolute;top:14px;right:16px;background:none;border:0;font-size:30px;line-height:1}.dialog-content{padding:30px}.dialog-content h2{font-size:27px;margin:10px 0 3px}.dialog-meta{color:var(--muted);font-size:13px;margin:0 0 22px}.plan{width:100%;max-height:280px;object-fit:contain;background:var(--surface);border:1px solid var(--line);margin:6px 0 20px}.plan-placeholder{display:grid;place-items:center;height:180px;background:var(--surface);color:var(--muted);font-size:13px;margin:6px 0 20px}.details{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid var(--line);padding-top:20px}.details div{display:grid;gap:4px}.details small{color:var(--muted)}.details strong{font-size:15px}.dialog-note{color:var(--muted);font-size:12px;line-height:1.45;margin:24px 0 0}footer{border-top:1px solid var(--line);padding:22px 32px;color:var(--muted);font-size:12px;text-align:center}@media(max-width:700px){.site-header{height:60px;padding:0 16px}.brand img{width:118px}.brand span{font-size:10px;padding-left:10px}.header-note{display:none}.layout{padding:25px 16px 60px}.intro h1{font-size:38px}.intro p{font-size:14px}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.project-card{width:auto;min-height:100px}.catalog{margin-top:35px}.catalog-heading{display:block}.catalog-heading p{margin-top:7px}.catalog-layout{display:block}.filters{padding:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:25px}.filters h3,.filters fieldset,.filters .reset{grid-column:1/-1}.filters label{min-width:0}.filters input,.filters select{font-size:16px}.flat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-row{grid-template-columns:34px minmax(0,1fr);gap:7px}.floor-number{padding-top:10px}.flat{min-height:83px;padding:8px}.flat strong{font-size:13px}.flat em{font-size:11px}.legend{font-size:11px}.dialog-content{padding:24px 18px}.details{gap:10px}footer{padding:18px 16px}}@media(max-width:360px){.project-list,.flat-grid{grid-template-columns:1fr}}
