﻿:root {
  --green:     #16A34A;
  --green-bg:  #DCFCE7;
  --blue:      #2563EB;
  --shadow-xl: 0 20px 60px rgba(0,0,0,0.12),0 8px 20px rgba(0,0,0,0.06);
  --radius-xl: 24px;
  --container-pad: 2rem;
  --wrapper-pad-x: 1.5rem;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{max-width:100%;overflow-x:hidden}
body{font-family:var(--font-sans);background:var(--surface-2);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
svg{max-width:100%}
.breadcrumb{max-width:1380px;margin:0 auto;padding:1rem var(--wrapper-pad-x) 0;display:flex;align-items:center;gap:0.4rem;font-size:0.8rem;color:var(--ink-muted);flex-wrap:wrap}
.breadcrumb a{color:var(--ink-muted);transition:color var(--transition)}
.breadcrumb a:hover{color:var(--primary)}
.breadcrumb svg{width:12px;height:12px;stroke:var(--ink-subtle);fill:none;flex-shrink:0}
.breadcrumb-current{color:var(--ink);font-weight:500}
.page-wrapper{max-width:1380px;margin:0 auto;padding:1.5rem var(--wrapper-pad-x) 5rem;display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start}
.left-col{min-width:0}
.gallery{border-radius:var(--radius-lg);overflow:hidden;margin-bottom:1.25rem;position:relative;background:#111}
.gallery-main{position:relative;aspect-ratio:16/9;overflow:hidden;cursor:grab}
.gallery-main:active{cursor:grabbing}
.gallery-track{display:flex;height:100%;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);will-change:transform}
.gallery-slide{flex:0 0 100%;height:100%;position:relative}
.gallery-slide img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.gallery-main::before{content:'';position:absolute;bottom:0;left:0;right:0;height:120px;background:linear-gradient(to top,rgba(0,0,0,0.55),transparent);z-index:1;pointer-events:none}
.gallery-main::after{content:'';position:absolute;top:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,rgba(0,0,0,0.3),transparent);z-index:1;pointer-events:none}
.slide-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;background:rgba(255,255,255,0.15);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.25);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background var(--transition),transform var(--transition)}
.slide-btn:hover{background:rgba(255,255,255,0.3);transform:translateY(-50%) scale(1.08)}
.slide-btn svg{width:20px;height:20px;stroke:#fff;stroke-width:2.5;fill:none}
.slide-prev{left:1rem}
.slide-next{right:1rem}
.slide-counter{position:absolute;bottom:1.1rem;right:1.1rem;z-index:5;background:rgba(0,0,0,0.5);backdrop-filter:blur(6px);color:#fff;font-size:0.78rem;font-weight:700;letter-spacing:0.05em;padding:0.3rem 0.8rem;border-radius:100px;pointer-events:none}
.slide-dots{position:absolute;bottom:1.1rem;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:0.4rem}
.slide-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.4);border:none;cursor:pointer;padding:0;transition:background var(--transition),transform var(--transition)}
.slide-dot.active{background:#fff;transform:scale(1.3)}
.gallery-badges{position:absolute;top:1rem;left:1rem;z-index:5;display:flex;gap:0.4rem;flex-wrap:wrap;max-width:calc(100% - 2rem - 44px)}
.g-badge{padding:0.3rem 0.75rem;border-radius:100px;font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;backdrop-filter:blur(6px)}
.g-badge-sale{background:var(--primary);color:#fff}
.g-badge-rent{background:var(--blue);color:#fff}
.g-badge-type{background:rgba(255,255,255,0.85);color:var(--ink)}
.gallery-fav{position:absolute;top:1rem;right:1rem;z-index:5;width:40px;height:40px;background:rgba(255,255,255,0.15);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.3);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background var(--transition),color var(--transition),transform var(--transition)}
.gallery-fav:hover{background:rgba(255,255,255,0.9);color:var(--error);transform:scale(1.08)}
.gallery-fav svg{width:16px;height:16px}
.gallery-fav.liked{background:rgba(220,38,38,0.9);color:#fff;border-color:transparent}
.gallery-thumbs{display:flex;gap:0.5rem;padding:0.6rem;background:#0a0a0a;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.15) transparent;-webkit-overflow-scrolling:touch}
.gallery-thumbs::-webkit-scrollbar{height:3px}
.gallery-thumbs::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.15);border-radius:3px}
.g-thumb{flex:0 0 76px;height:54px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition),opacity var(--transition);opacity:0.55}
.g-thumb img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.g-thumb.active{border-color:var(--primary);opacity:1}
.g-thumb:hover{opacity:0.85}
.no-image-box{aspect-ratio:16/9;background:var(--surface-3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.75rem;color:var(--ink-subtle);border-radius:var(--radius-lg);margin-bottom:1.25rem}
.no-image-box svg{width:48px;height:48px;stroke:var(--ink-subtle);fill:none;stroke-width:1.25}
.no-image-box span{font-size:0.85rem;font-weight:500}
.prop-header{margin-bottom:1.5rem}
.prop-meta-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:0.6rem;flex-wrap:wrap}
.prop-tags{display:flex;gap:0.4rem;flex-wrap:wrap}
.prop-tag{padding:0.28rem 0.7rem;border-radius:100px;font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em}
.tag-sale{background:var(--primary-soft);color:var(--primary)}
.tag-rent{background:#EFF6FF;color:var(--blue)}
.tag-type{background:var(--surface-3);color:var(--ink-muted)}
.prop-views{font-size:0.75rem;color:var(--ink-subtle);display:flex;align-items:center;gap:0.3rem}
.prop-views svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}
.prop-title{font-family:var(--font-serif);font-size:clamp(1.4rem,5vw,2.2rem);color:var(--ink);letter-spacing:-0.02em;line-height:1.2;margin-bottom:0.5rem;word-break:break-word}
.prop-location-row{display:flex;align-items:center;gap:0.4rem;font-size:0.9rem;color:var(--ink-muted);margin-bottom:0.75rem}
.prop-location-row svg{width:15px;height:15px;stroke:var(--primary);fill:none;stroke-width:2;flex-shrink:0}
.prop-date{font-size:0.75rem;color:var(--ink-subtle)}
.price-block{display:flex;align-items:baseline;gap:0.5rem;margin-bottom:1.25rem;flex-wrap:wrap}
.price-value{font-family:var(--font-serif);font-size:clamp(1.6rem,6vw,2.4rem);color:var(--primary);letter-spacing:-0.02em;line-height:1}
.price-unit{font-size:0.9rem;color:var(--ink-muted);font-family:var(--font-sans)}
.stats-bar{display:flex;align-items:stretch;gap:0;border:1.5px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:1.75rem;background:var(--surface)}
.stat-cell{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem 0.5rem;gap:0.3rem;border-right:1px solid var(--border);text-align:center;min-width:80px}
.stat-cell:last-child{border-right:none}
.stat-cell-icon{width:32px;height:32px;background:var(--primary-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:0.2rem}
.stat-cell-icon svg{width:15px;height:15px;stroke:var(--primary);fill:none;stroke-width:2}
.stat-cell-value{font-size:1rem;font-weight:800;color:var(--ink)}
.stat-cell-label{font-size:0.68rem;font-weight:600;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:0.06em}
.content-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;overflow:hidden}
.card-head{display:flex;align-items:center;gap:0.7rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface-2)}
.card-head-icon{width:34px;height:34px;background:var(--primary-soft);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.card-head-icon svg{width:17px;height:17px;stroke:var(--primary);fill:none;stroke-width:1.75}
.card-head-title{font-size:0.95rem;font-weight:700;color:var(--ink)}
.card-body{padding:1.5rem}
.description-text{font-size:0.95rem;line-height:1.85;color:var(--ink);white-space:pre-wrap;word-break:break-word}
.read-more-btn{display:inline-flex;align-items:center;gap:0.35rem;margin-top:0.75rem;font-size:0.82rem;font-weight:600;color:var(--primary);background:none;border:none;cursor:pointer;padding:0;transition:opacity var(--transition);min-height:36px}
.read-more-btn:hover{opacity:0.7}
.features-chips{display:flex;flex-wrap:wrap;gap:0.6rem}
.feat-chip{display:inline-flex;align-items:center;gap:0.45rem;padding:0.45rem 0.85rem;background:var(--surface-2);border:1.5px solid var(--border);border-radius:100px;font-size:0.8rem;font-weight:600;color:var(--ink);transition:border-color var(--transition),background var(--transition)}
.feat-chip:hover{border-color:var(--primary);background:var(--primary-soft)}
.overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1.1rem}
.ov-item{display:flex;flex-direction:column;gap:0.25rem;padding:0.85rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);min-width:0}
.ov-label{font-size:0.72rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--ink-subtle)}
.ov-value{font-size:0.95rem;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:0.4rem;word-break:break-word}
.ov-value svg{width:15px;height:15px;stroke:var(--primary);fill:none;stroke-width:2;flex-shrink:0}
#property-map{width:100%;height:320px;border-radius:0;background:#E8E6E0}
.map-no-coords{display:flex;align-items:center;justify-content:center;height:180px;color:var(--ink-subtle);font-size:0.85rem;gap:0.4rem}
.map-no-coords svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}
.similar-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.85rem}
.sim-card{border:1.5px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);display:flex;flex-direction:column}
.sim-card:hover{border-color:var(--primary);box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.sim-img{aspect-ratio:16/10;overflow:hidden;background:var(--surface-3);flex-shrink:0;position:relative}
.sim-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease}
.sim-card:hover .sim-img img{transform:scale(1.05)}
.sim-img .sim-no-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--ink-subtle)}
.sim-badge{position:absolute;top:0.4rem;left:0.4rem;padding:0.2rem 0.5rem;border-radius:100px;font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em}
.sim-body{padding:0.75rem;flex:1;display:flex;flex-direction:column;gap:0.25rem}
.sim-price{font-size:0.92rem;font-weight:800;color:var(--primary)}
.sim-title{font-size:0.78rem;font-weight:600;color:var(--ink);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sim-location{font-size:0.72rem;color:var(--ink-muted)}
.right-col{position:sticky;top:80px;display:flex;flex-direction:column;gap:1rem;min-width:0}
.price-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:1.5rem;text-align:center}
.price-card-amount{font-family:var(--font-serif);font-size:clamp(1.6rem,5vw,2.2rem);color:var(--primary);letter-spacing:-0.02em;line-height:1;margin-bottom:0.2rem;word-break:break-word}
.price-card-unit{font-size:0.82rem;color:var(--ink-muted);margin-bottom:0.15rem}
.price-card-op{display:inline-flex;align-items:center;gap:0.35rem;padding:0.3rem 0.85rem;border-radius:100px;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1rem}
.price-card-op.sale{background:var(--primary-soft);color:var(--primary)}
.price-card-op.rent{background:#EFF6FF;color:var(--blue)}
.seller-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}
.seller-top{padding:1.25rem 1.25rem 1rem;border-bottom:1px solid var(--border)}
.seller-row{display:flex;align-items:center;gap:0.85rem;margin-bottom:0.75rem}
.seller-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2.5px solid var(--primary-soft);flex-shrink:0;background:var(--surface-3)}
.seller-info{flex:1;min-width:0}
.seller-name{font-size:0.95rem;font-weight:700;color:var(--ink);margin-bottom:0.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seller-role{font-size:0.75rem;color:var(--ink-muted)}
.seller-joined{display:flex;align-items:center;gap:0.3rem;font-size:0.72rem;color:var(--ink-subtle)}
.seller-joined svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2}
.seller-actions{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:0.6rem}
.mkt-btn{display:flex;align-items:center;justify-content:center;gap:0.65rem;width:100%;padding:0.85rem 1rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:0.9rem;font-weight:700;cursor:pointer;border:none;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);letter-spacing:-0.01em;position:relative;overflow:hidden;min-height:44px}
.mkt-btn::after{content:'';position:absolute;top:-50%;left:-60%;width:40%;height:200%;background:rgba(255,255,255,0.15);transform:skewX(-20deg);transition:left 0.45s ease}
.mkt-btn:hover::after{left:130%}
.mkt-btn svg{width:20px;height:20px;flex-shrink:0}
.mkt-btn:hover{transform:translateY(-1px)}
.mkt-btn-wa{background:#25D366;color:#fff;box-shadow:0 4px 14px rgba(37,211,102,0.3)}
.mkt-btn-wa:hover{background:#1EBE5A;box-shadow:0 6px 20px rgba(37,211,102,0.4)}
.mkt-btn-phone{background:var(--surface-2);color:var(--ink);border:1.5px solid var(--border)}
.mkt-btn-phone:hover{background:var(--surface-3);border-color:var(--ink-muted)}
.mkt-btn-phone.revealed{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}
.mkt-btn-msg{background:var(--primary);color:#fff;box-shadow:0 4px 14px rgba(167,100,58,0.3)}
.mkt-btn-msg:hover{background:var(--primary-light);box-shadow:0 6px 20px rgba(167,100,58,0.4)}
.mkt-divider{display:flex;align-items:center;gap:0.5rem;font-size:0.72rem;color:var(--ink-subtle);padding:0 1.25rem}
.mkt-divider::before,.mkt-divider::after{content:'';flex:1;height:1px;background:var(--border)}
.phone-hidden-note{display:flex;align-items:center;gap:0.4rem;font-size:0.75rem;color:var(--ink-subtle);padding:0 1.25rem 1rem;text-align:center;justify-content:center}
.phone-hidden-note svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}
.seller-footer{display:flex;align-items:center;justify-content:center;gap:0.35rem;padding:0.85rem 1.25rem;border-top:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}
.strip-btn{display:inline-flex;align-items:center;gap:0.3rem;padding:0.55rem 0.7rem;font-size:0.75rem;font-weight:600;color:var(--ink-muted);border-radius:var(--radius-sm);border:none;background:none;cursor:pointer;transition:color var(--transition),background var(--transition);min-height:44px}
.strip-btn:hover{color:var(--ink);background:var(--border)}
.strip-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}
.strip-sep{width:1px;height:16px;background:var(--border)}
.pdp-quickbar{display:none}
.qb-btn{
  flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:0.2rem; min-height:48px; padding:0.4rem 0.25rem;
  border:none; background:none; cursor:pointer; text-decoration:none;
  color:var(--ink-muted); font-family:var(--font-sans); font-size:0.62rem; font-weight:600;
  border-radius:var(--radius-sm); transition:color var(--transition),background var(--transition);
}
.qb-btn:active{background:var(--border)}
.qb-btn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2}
.qb-btn.prop-fav.active{color:var(--error)}
.qb-btn.prop-fav.active svg{fill:currentColor}
.qb-wa{color:#25D366}
.qb-wa svg{fill:#25D366;stroke:none}
.qb-report{color:var(--error)}
.safety-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.25rem}
.safety-title{display:flex;align-items:center;gap:0.5rem;font-size:0.8rem;font-weight:700;color:var(--ink);margin-bottom:0.6rem}
.safety-title svg{width:16px;height:16px;stroke:var(--green);fill:none;stroke-width:2;flex-shrink:0}
.safety-list{display:flex;flex-direction:column;gap:0.35rem}
.safety-item{display:flex;align-items:flex-start;gap:0.4rem;font-size:0.76rem;color:var(--ink-muted);line-height:1.45}
.safety-item::before{content:'✓';font-size:0.7rem;font-weight:800;color:var(--green);margin-top:1px;flex-shrink:0}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.55);backdrop-filter:blur(4px);z-index:3000;display:none;align-items:center;justify-content:center;padding:1rem}
.modal-overlay.open{display:flex;animation:fadeIn 0.2s ease}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.modal-box{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:480px;overflow:hidden;animation:slideUp 0.25s ease;max-height:90vh;overflow-y:auto}
@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}
.modal-header h3{font-size:1rem;font-weight:700;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.modal-close{width:36px;height:36px;background:var(--surface-3);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink-muted);transition:background var(--transition),color var(--transition);flex-shrink:0}
.modal-close:hover{background:var(--border);color:var(--ink)}
.modal-close svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.5}
.modal-body{padding:1.5rem}
.modal-prop-preview{display:flex;align-items:center;gap:0.75rem;padding:0.85rem;background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);margin-bottom:1.25rem}
.modal-prop-img{width:56px;height:42px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--surface-3)}
.modal-prop-img img{width:100%;height:100%;object-fit:cover}
.modal-prop-info{min-width:0}
.modal-prop-price{font-size:0.92rem;font-weight:800;color:var(--primary)}
.modal-prop-title{font-size:0.78rem;color:var(--ink-muted);margin-top:1px}
.msg-templates{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.85rem}
.msg-tpl{padding:0.4rem 0.75rem;background:var(--surface-3);border:1.5px solid var(--border);border-radius:100px;font-size:0.75rem;font-weight:600;color:var(--ink-muted);cursor:pointer;transition:all var(--transition);min-height:32px}
.msg-tpl:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}
.msg-textarea{width:100%;min-height:110px;padding:0.85rem 1rem;font-family:var(--font-sans);font-size:0.9rem;color:var(--ink);border:1.5px solid var(--border);border-radius:var(--radius-md);outline:none;resize:vertical;transition:border-color var(--transition),box-shadow var(--transition);line-height:1.65}
.msg-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha)}
.msg-send-btn{display:flex;align-items:center;justify-content:center;gap:0.55rem;width:100%;margin-top:0.85rem;padding:0.85rem;background:#25D366;color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:0.95rem;font-weight:700;cursor:pointer;transition:background var(--transition),transform var(--transition);min-height:44px}
.msg-send-btn:hover{background:#1EBE5A;transform:translateY(-1px)}
.msg-send-btn svg{width:19px;height:19px}
.site-footer{background:var(--ink);color:rgba(255,255,255,0.55);text-align:center;padding:2rem 1.5rem;font-size:0.85rem}
.site-footer strong{color:#fff}
@media(min-width:1440px){
  :root{ --container-pad: 2.5rem; }
}
@media(max-width:1280px){
  :root{ --container-pad: 1.75rem; }
}
@media(max-width:1024px){
  :root{ --container-pad: 1.5rem; --wrapper-pad-x: 1.25rem; }
  .page-wrapper{grid-template-columns:1fr 320px}
}
@media(max-width:860px){
  .page-wrapper{grid-template-columns:1fr;gap:1.25rem}
  .right-col{position:static}
  .overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .similar-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .stats-bar{overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(max-width:768px){
  :root{ --container-pad: 1rem; --wrapper-pad-x: 1rem; }
  .gallery-thumbs{ padding:0.5rem; gap:0.4rem; }
  .g-thumb{ flex:0 0 64px; height:46px; }
  .pdp-quickbar{
    display:flex; align-items:stretch; gap:0.25rem;
    position:fixed; left:0; right:0;
    bottom:var(--sakan-bottom-nav-height, 72px);
    z-index:2050;
    background:var(--surface); border-top:1px solid var(--border);
    box-shadow:0 -4px 16px rgba(0,0,0,0.08);
    padding:0.4rem 0.5rem;
  }
  .page-wrapper{ padding-bottom:calc(5rem + 64px); }
}
@media(max-width:640px){
  .page-wrapper{padding:1rem 1rem calc(4rem + 64px)}
  .gallery-main{aspect-ratio:4/3}
  .overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .similar-grid{grid-template-columns:minmax(0,1fr)}
  .stat-cell{padding:0.75rem 0.25rem}
  .modal-box{max-width:100%}
  .modal-body{padding:1.25rem}
}
@media(max-width:480px){
  .breadcrumb{font-size:0.72rem;gap:0.3rem}
  .gallery-fav,.slide-btn{width:38px;height:38px}
  .slide-btn svg{width:17px;height:17px}
  .seller-actions{padding:0.85rem 1rem}
  .seller-top{padding:1rem 1rem 0.85rem}
  .seller-footer{gap:0.25rem;padding:0.7rem 1rem}
  .strip-btn{padding:0.35rem 0.5rem;font-size:0.7rem}
  .price-card{padding:1.25rem}
}
@media(max-width:320px){
  .prop-title{font-size:1.3rem}
  .ov-item{padding:0.7rem 0.8rem}
  .overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0.7rem}
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}
}
.leaflet-control-zoom{display:none!important}
.leaflet-control-attribution{font-size:0.55rem!important;max-width:60vw!important}
