
.listing-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:24px;border-bottom:1px solid var(--line)}
.listing-brand{display:flex;align-items:center;gap:16px;font-weight:700;color:var(--purple);letter-spacing:2px}.listing-brand img{object-fit:contain}.listing-brand small{display:block;font-size:10px;letter-spacing:1px}
.listing-main{padding-top:35px}.listing-title{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:35px 0}.listing-title h1{font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(32px,4.3vw,60px);line-height:1.15;margin:12px 0 20px}.listing-title h1 em{color:var(--purple)}.listing-address{color:var(--muted);font-size:19px}.listing-price{flex-shrink:0;padding:24px;background:#f3effa;border-radius:14px;color:var(--purple)}.listing-price span{display:block;font-size:15px}.listing-price strong{display:block;font-size:40px;line-height:1.5}
.listing-cover{margin:0;overflow:hidden;border-radius:18px;background:#f6f3fa}.listing-cover button{display:block;width:100%;padding:0;border:0;background:#eee;cursor:zoom-in}.listing-cover img{display:block;width:100%;height:clamp(280px,48vw,620px);object-fit:cover}.listing-cover figcaption{padding:15px 22px;font-size:15px}.listing-cover a{color:var(--purple);text-decoration:underline}
.listing-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-bottom:1px solid var(--line);padding:30px 0}.listing-facts strong{display:block;color:var(--purple);font-size:25px}.listing-facts span{display:block;font-size:14px;line-height:1.6;color:var(--muted)}
.listing-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:55px;margin-top:50px;align-items:start}.listing-description section{margin-bottom:38px}.listing-page h2{font-size:clamp(27px,3vw,40px);line-height:1.25;margin-bottom:20px}.listing-description p{margin:18px 0;font-size:18px;line-height:1.8}.listing-contact{background:#f3effa;padding:28px;border-radius:16px;position:sticky;top:25px}.listing-contact h2{font-size:30px}.listing-contact p{font-size:16px;line-height:1.7}.listing-phone{display:block;margin:20px 0;font-size:24px;font-weight:600;color:var(--purple);white-space:nowrap}.listing-contact .button,.listing-contact .outline{display:flex;justify-content:center;margin:12px 0;padding:12px;font-size:15px}.listing-contact .text-link{display:block;margin-top:15px}
.area-table-wrap{overflow-x:auto}.area-table{border-collapse:collapse;width:100%;font-size:17px}.area-table caption{text-align:left;font-size:15px;color:var(--muted);padding-bottom:12px}.area-table th,.area-table td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line)}.area-table th{background:#f3effa;color:var(--purple)}.area-table td:last-child,.area-table th:last-child{text-align:right;white-space:nowrap}.listing-description .listing-note{padding:18px;background:#f6f3fa;border-left:3px solid var(--purple);font-size:16px}
.listing-section{margin:60px 0;scroll-margin-top:25px}.listing-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}.gallery-item{background:#f6f3fa;padding:0;border:0;border-radius:12px;overflow:hidden;cursor:zoom-in;text-align:left;color:var(--ink)}.gallery-item img{display:block;width:100%;height:230px;object-fit:cover}.gallery-item span{display:block;padding:12px 15px;font-family:'Montserrat',sans-serif;font-size:14px;line-height:1.5}.listing-video{display:block;width:100%;max-height:650px;background:#20162e;border-radius:15px;margin-top:25px}.listing-end{background:#f3effa;padding:40px;border-radius:16px;margin-bottom:60px}.listing-end p{margin:15px 0 25px}.listing-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-block:30px;font-size:14px;border-top:1px solid var(--line)}
.photo-viewer{max-width:1200px;width:calc(100% - 30px);background:#17111f;color:white;padding:55px 10px 18px}.photo-stage{display:grid;grid-template-columns:45px minmax(0,1fr) 45px;gap:8px;align-items:center}.photo-stage img{width:100%;height:calc(80vh - 100px);object-fit:contain}.photo-stage button{border:1px solid #ffffff60;border-radius:50%;width:42px;height:42px;background:transparent;color:white;font-size:24px;cursor:pointer}.photo-viewer p{text-align:center;font-size:15px;margin:15px 10px 0}.gallery-item:focus-visible,.listing-cover button:focus-visible{outline:4px solid #8364c8;outline-offset:3px}
@media(max-width:900px){.listing-columns{grid-template-columns:1fr;gap:20px}.listing-contact{position:static}.listing-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.listing-header{padding-block:16px}.listing-header .button{padding:10px;font-size:13px}.listing-brand{gap:8px;font-size:14px}.listing-brand img{width:55px;height:50px}.listing-brand small{font-size:8px;max-width:110px}.listing-title{display:block}.listing-price{margin-top:25px;display:inline-block}.listing-price strong{font-size:34px}.listing-address{font-size:17px}.listing-cover img{object-fit:contain;background:#21152e}.listing-gallery{gap:12px}.gallery-item img{height:160px}.gallery-item span{font-size:12px;padding:10px}.listing-end{padding:25px}.listing-facts strong{font-size:22px}.photo-stage{grid-template-columns:34px minmax(0,1fr) 34px;gap:3px}.photo-stage button{width:32px;height:32px;font-size:20px}.area-table{font-size:16px}.area-table th,.area-table td{padding:12px 8px}.listing-phone{font-size:25px}}
