.property-pro{background:#f7f4ef;padding-bottom:70px}
.property-pro__hero{padding:30px 0 18px}
.property-pro__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}
.property-pro__eyebrow{font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:#7d7265;font-weight:900}
.property-pro__head h1{font-size:clamp(2rem,4vw,4.2rem);line-height:1.03;margin:8px 0 10px}
.property-pro__address{color:#766e64}
.property-pro__price{font-size:clamp(1.7rem,3vw,3rem);font-weight:950;white-space:nowrap}
.property-pro__badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.property-badge{display:inline-flex;padding:8px 11px;border-radius:999px;background:#ece5dc;font-size:.78rem;font-weight:900}
.property-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:250px 250px;gap:10px;margin-top:18px}
.property-gallery__item{display:block;overflow:hidden;border-radius:14px;background:#ddd;position:relative}
.property-gallery__item:first-child{grid-row:1/3}
.property-gallery__item img{width:100%;height:100%;object-fit:cover;transition:.25s}
.property-gallery__item:hover img{transform:scale(1.03)}
.property-gallery__more{position:absolute;right:12px;bottom:12px;background:rgba(0,0,0,.78);color:#fff;padding:9px 11px;border-radius:10px;font-weight:900}
.property-pro__layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:24px;margin-top:24px}
.property-panel{background:#fff;border:1px solid #e4ddd4;border-radius:18px;padding:22px}
.property-panel+.property-panel{margin-top:18px}
.property-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.property-stat{background:#f4efe8;border-radius:13px;padding:14px}
.property-stat span{display:block;color:#7a7064;font-size:.75rem}
.property-stat strong{display:block;font-size:1.12rem;margin-top:5px}
.property-description{line-height:1.85;color:#504a43}
.property-features{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.property-feature{padding:12px;border:1px solid #e4ddd4;border-radius:12px;background:#fff}
.property-feature small{display:block;color:#756b60;margin-bottom:4px}
.property-media-frame{position:relative;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#111}
.property-media-frame iframe,.property-media-frame video{position:absolute;inset:0;width:100%;height:100%;border:0}
.property-map{height:360px;border-radius:14px;overflow:hidden}
.property-sidebar{position:sticky;top:18px;height:max-content}
.property-agent{display:flex;gap:12px;align-items:center;margin-bottom:18px}
.property-agent__avatar{width:58px;height:58px;border-radius:50%;background:#171717;color:#fff;display:grid;place-items:center;font-weight:900;font-size:1.25rem}
.property-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.property-action{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;border-radius:10px;border:1px solid #d9d0c6;background:#fff;text-decoration:none;color:inherit;font-weight:800;cursor:pointer}
.property-action--primary{background:#171717;color:#fff;border-color:#171717}
.property-form{display:grid;gap:10px}
.property-form input,.property-form textarea,.property-form select{width:100%;padding:12px;border:1px solid #d9d0c6;border-radius:10px;box-sizing:border-box}
.property-tabs{display:flex;gap:8px;margin-bottom:12px}
.property-tab{border:0;border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:900}
.property-tab.is-active{background:#171717;color:#fff}
.property-tab-panel{display:none}
.property-tab-panel.is-active{display:block}
.mortgage-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mortgage-result{padding:16px;border-radius:13px;background:#171717;color:#fff;text-align:center;margin-top:12px}
.mortgage-result strong{font-size:1.5rem}
.similar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.similar-card{display:block;text-decoration:none;color:inherit;border:1px solid #e4ddd4;border-radius:14px;overflow:hidden;background:#fff}
.similar-card img{width:100%;height:170px;object-fit:cover}
.similar-card__body{padding:13px}
.similar-card h3{font-size:.98rem;margin:0 0 8px}
.similar-card__price{font-weight:900}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:9999;display:none;align-items:center;justify-content:center}
.lightbox.is-open{display:flex}
.lightbox__image{max-width:92vw;max-height:88vh;object-fit:contain}
.lightbox__close,.lightbox__prev,.lightbox__next{position:absolute;border:0;background:rgba(255,255,255,.13);color:#fff;width:48px;height:48px;border-radius:50%;font-size:1.4rem;cursor:pointer}
.lightbox__close{right:22px;top:22px}
.lightbox__prev{left:22px}
.lightbox__next{right:22px}
.lightbox__counter{position:absolute;bottom:22px;color:#fff}
@media(max-width:980px){
    .property-pro__layout{grid-template-columns:1fr}
    .property-sidebar{position:relative;top:auto}
    .property-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 180px}
    .property-gallery__item:first-child{grid-column:1/3;grid-row:auto}
    .property-stats{grid-template-columns:repeat(2,1fr)}
    .similar-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
    .property-pro__head{grid-template-columns:1fr}
    .property-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}
    .property-gallery__item{min-width:88%;height:280px;scroll-snap-align:start}
    .property-features{grid-template-columns:1fr 1fr}
    .similar-grid{grid-template-columns:1fr}
    .property-action-grid,.mortgage-grid{grid-template-columns:1fr}
}
@media print{
    .site-header,.site-footer,.property-sidebar,.property-action-grid,.lightbox{display:none!important}
    .property-pro{background:#fff}
    .property-pro__layout{display:block}
    .property-gallery{grid-template-columns:1fr 1fr;grid-template-rows:250px}
    .property-gallery__item:nth-child(n+3){display:none}
}
