/* Pelacart Product Detail V4 */
.pv4-page{background:#f6f8fb;min-height:100vh;padding:16px 0 108px;color:#071d59}
.pv4-shell{width:min(1180px,calc(100% - 30px));margin:auto}
.pv4-toolbar{display:flex;direction:ltr;justify-content:space-between;align-items:center;margin-bottom:12px}
.pv4-toolbar-actions{display:flex;gap:8px}.pv4-icon{width:42px;height:42px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;color:#071d59}
.pv4-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(335px,.8fr);gap:16px;direction:ltr}.pv4-gallery,.pv4-summary{direction:rtl}
.pv4-gallery,.pv4-summary,.pv4-card,.pv4-amenity-strip{background:#fff;border:1px solid #dfe5ec;border-radius:18px}
.pv4-gallery{padding:12px}.pv4-main{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#edf1f5}.pv4-main img{width:100%;height:100%;object-fit:cover;display:block}
.pv4-noimg{height:100%;display:grid;place-items:center;align-content:center;gap:8px;color:#8992a2}.pv4-noimg i{font-size:34px;color:#d99b00}
.pv4-sale,.pv4-photo-count{position:absolute;top:12px;padding:7px 11px;border-radius:999px;font-size:10px;font-weight:900}.pv4-sale{left:12px;background:#e7a80d;color:#071d59}.pv4-photo-count{right:12px;background:rgba(0,0,0,.72);color:#fff}
.pv4-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#071d59;font-size:22px}.pv4-arrow--right{right:12px}.pv4-arrow--left{left:12px}
.pv4-thumbs{display:flex;gap:8px;overflow:auto;margin-top:10px}.pv4-thumb,.pv4-more{width:92px;height:68px;flex:0 0 92px;border:2px solid transparent;border-radius:11px;padding:0;overflow:hidden;background:#eef1f5}.pv4-thumb.active{border-color:#d99b00}.pv4-thumb img{width:100%;height:100%;object-fit:cover}.pv4-more{display:grid;place-items:center;background:#2c3340;color:#fff}
.pv4-summary{padding:20px;display:flex;flex-direction:column}.pv4-location{display:flex;align-items:center;gap:7px}.pv4-location i{color:#d99b00}.pv4-location strong{font-size:18px}.pv4-address{margin-top:4px;color:#858e9e;font-size:9px}
.pv4-price{margin-top:16px;padding:16px;border:1px solid #e7ebf0;border-radius:14px;background:linear-gradient(135deg,#fbfcfe,#f6f8fb)}.pv4-price small{display:block;color:#8b94a3;font-size:9px}.pv4-price strong{display:inline-block;margin-top:4px;color:#17834f;font-size:26px;direction:ltr}.pv4-price>span{margin-right:4px;color:#17834f;font-size:9px;font-weight:800}.pv4-rent{margin-top:7px;color:#727b8b;font-size:10px}.pv4-rent b{color:#17834f}
.pv4-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.pv4-facts>div{min-height:88px;border:1px solid #e8ecf1;border-radius:12px;background:#fbfcfd;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "icon value";align-items:center;padding:10px 12px;column-gap:10px}.pv4-facts i{grid-area:icon;font-size:18px}.pv4-facts span{grid-area:label;color:#798293;font-size:8px}.pv4-facts strong{grid-area:value;font-size:15px}.pv4-facts small{font-size:8px}
.pv4-consultant{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:12px 14px;border:1px solid #e8ecf1;border-radius:13px;background:#fafbfc}.pv4-consultant small{display:block;color:#8b94a3;font-size:8px}.pv4-consultant strong{display:block;margin-top:2px;font-size:15px}.pv4-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#edf2f8}
.pv4-contact{margin-top:10px;min-height:50px;border:0;border-radius:11px;background:#071d59;color:#fff!important;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:900;text-decoration:none}.pv4-contact-hint{text-align:center;margin:7px 0 0;color:#8a93a2;font-size:8px}
.pv4-amenity-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:14px;padding:12px}.pv4-amenity-strip>div{min-height:72px;border:1px solid #edf0f4;border-radius:11px;background:#fbfcfd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.pv4-amenity-strip i{font-size:19px}.pv4-amenity-strip span{font-size:9px;font-weight:800}
.pv4-bottom-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:14px;margin-top:14px}.pv4-card{padding:18px}.pv4-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.pv4-card-title h2{margin:0;font-size:16px}.pv4-card-title p{margin:4px 0 0;color:#8b94a3;font-size:8px}.pv4-card-title>i{color:#d99b00;font-size:20px}
.pv4-description{margin-top:12px;color:#5f697a;font-size:10px;line-height:2}.pv4-detail-list{margin-top:12px}.pv4-detail-list>div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #edf0f4}.pv4-detail-list span{color:#7d8696;font-size:9px}.pv4-detail-list strong{font-size:10px}
#pv4-map{height:330px;margin-top:12px;border-radius:13px;overflow:hidden;background:#eef1f5}
.pv4-sticky-call{position:fixed;z-index:1000;left:50%;bottom:10px;transform:translateX(-50%);width:min(1090px,calc(100% - 24px));height:54px;border:0;border-radius:12px;background:#071d59;color:#fff!important;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:900;text-decoration:none;box-shadow:0 10px 30px rgba(7,29,89,.18)}
@media(max-width:900px){.pv4-top{grid-template-columns:minmax(0,1.3fr) minmax(300px,.85fr)}.pv4-amenity-strip{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.pv4-page{padding-top:6px}.pv4-shell{width:calc(100% - 18px)}.pv4-top{display:flex;flex-direction:column}.pv4-gallery{padding:0;border:0;background:transparent}.pv4-main{aspect-ratio:1.45/1;border-radius:15px}.pv4-thumb,.pv4-more{width:72px;height:54px;flex-basis:72px}.pv4-summary{padding:14px;border-radius:14px}.pv4-location strong{font-size:16px}.pv4-price strong{font-size:22px}.pv4-facts>div{min-height:72px}.pv4-amenity-strip{grid-template-columns:repeat(3,1fr);padding:9px}.pv4-bottom-grid{grid-template-columns:1fr}#pv4-map{height:260px}.pv4-sticky-call{height:50px;font-size:11px}}
@media(max-width:460px){.pv4-amenity-strip{grid-template-columns:repeat(2,1fr)}.pv4-facts{grid-template-columns:1fr 1fr}.pv4-sticky-call{bottom:8px}}



/* Pelacart Product Detail V4.1 — compact polish */
.pv4-summary{justify-content:flex-start}
.pv4-contact{margin-top:14px!important}
.pv4-contact-hint{margin-top:6px!important}

.pv4-amenity-strip{gap:6px!important;padding:9px!important}
.pv4-amenity-strip>div{min-height:62px!important;gap:5px!important}
.pv4-amenity-strip i{font-size:17px!important}
.pv4-amenity-strip span{font-size:8px!important}

.pv4-bottom-grid{align-items:start}
.pv4-card{padding:15px!important}
.pv4-description{margin-top:9px!important;line-height:1.9!important}
.pv4-detail-list{margin-top:9px!important}
.pv4-detail-list>div{padding:6px 0!important}

.pv4-page{padding-top:10px!important}
.pv4-toolbar{margin-bottom:8px!important}

@media(max-width:760px){
  .pv4-page{padding-bottom:88px!important}
  .pv4-toolbar{margin-bottom:6px!important}
  .pv4-main{aspect-ratio:1.38/1!important}
  .pv4-thumbs{margin-top:7px!important}
  .pv4-summary{padding:12px!important}
  .pv4-price{margin-top:11px!important;padding:12px!important}
  .pv4-facts{margin-top:9px!important;gap:6px!important}
  .pv4-facts>div{min-height:64px!important;padding:8px 9px!important}
  .pv4-contact{min-height:46px!important;margin-top:10px!important;font-size:10.5px!important}
  .pv4-contact-hint{font-size:7px!important;line-height:1.6!important}
  .pv4-amenity-strip{grid-template-columns:repeat(3,1fr)!important;margin-top:10px!important}
  .pv4-amenity-strip>div{min-height:58px!important}
  .pv4-bottom-grid{margin-top:10px!important;gap:10px!important}
  .pv4-card{padding:12px!important}
  .pv4-card-title h2{font-size:14px!important}
  .pv4-card-title p{font-size:7px!important}
  .pv4-description{font-size:9px!important;line-height:1.85!important}
  #pv4-map{height:230px!important}
  .pv4-sticky-call{width:calc(100% - 18px)!important;height:48px!important;font-size:10.5px!important}
}



/* Pelacart Product Detail V4.2 — core facts in one row */
.pv4-facts--core{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.pv4-facts--core>div{
  min-height:76px !important;
  grid-template-columns:auto 1fr !important;
  grid-template-areas:
    "icon label"
    "icon value" !important;
}

@media(max-width:760px){
  .pv4-facts--core{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }

  .pv4-facts--core>div{
    min-height:62px !important;
    padding:7px 8px !important;
  }

  .pv4-facts--core i{
    font-size:15px !important;
  }

  .pv4-facts--core span{
    font-size:7px !important;
  }

  .pv4-facts--core strong{
    font-size:13px !important;
  }

  .pv4-facts--core small{
    font-size:7px !important;
  }
}



/* Pelacart Product Detail V4.3 */

/* Core facts: ALWAYS one row on laptop + mobile */
.pv4-facts--core{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:12px !important;
}

.pv4-facts--core>div{
  min-width:0;
  min-height:74px !important;
  padding:9px 8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  text-align:center !important;
}

.pv4-facts--core i{
  font-size:16px !important;
  margin-bottom:2px;
}

.pv4-facts--core span{
  font-size:8px !important;
}

.pv4-facts--core strong{
  font-size:14px !important;
  white-space:nowrap;
}

.pv4-facts--core small{
  font-size:7px !important;
}

/* There is now only the fixed contact CTA at the bottom */
.pv4-contact,
.pv4-contact-hint,
.pv4-consultant,
.pv4-avatar{
  display:none !important;
}

/* Use the free space in summary better */
.pv4-summary{
  justify-content:flex-start !important;
}

@media(max-width:760px){
  .pv4-facts--core{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
  }

  .pv4-facts--core>div{
    min-height:60px !important;
    padding:6px 4px !important;
  }

  .pv4-facts--core i{
    font-size:14px !important;
  }

  .pv4-facts--core span{
    font-size:6.8px !important;
  }

  .pv4-facts--core strong{
    font-size:12px !important;
  }

  .pv4-facts--core small{
    font-size:6.5px !important;
  }
}



/* Pelacart Product Detail V4.4 */
.pv4-price strong{
  font-size:21px !important;
  line-height:1.35;
}

.pv4-price>span{
  font-size:8px !important;
}

.pv4-file-id{
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:max-content;
  margin-top:9px;
  padding:6px 9px;
  border:1px solid #e5e9ef;
  border-radius:9px;
  background:#f8fafc;
  color:#697386;
  font-size:8px;
}

.pv4-file-id i{
  color:#d99b00;
  font-size:10px;
}

.pv4-file-id strong{
  color:#071d59;
  font-size:11px;
  direction:ltr;
}

@media(max-width:760px){
  .pv4-price strong{
    font-size:18px !important;
  }

  .pv4-file-id{
    margin-top:7px;
    padding:5px 8px;
  }
}



/* Pelacart Product Detail V4.5 — custom real-estate SVG icon set */
.pv4-amenity-icon{
  width:22px;
  height:22px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  color:#071d59;
  flex:0 0 auto;
}

.pv4-amenity-strip>div{
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.pv4-amenity-strip>div:hover{
  transform:translateY(-1px);
  border-color:#d9dee6;
  background:#fff;
}

@media(max-width:760px){
  .pv4-amenity-icon{
    width:20px;
    height:20px;
    stroke-width:1.65;
  }
}



/* Pelacart Product Detail V4.6 — explicit amenity states */
.pv4-amenity-strip .pv4-amenity{
  position:relative;
}

.pv4-amenity-strip .pv4-amenity small{
  display:block;
  margin-top:-2px;
  color:#17834f;
  font-size:7px;
  font-weight:800;
}

.pv4-amenity-strip .pv4-amenity.is-missing{
  background:#f7f8fa !important;
  border-color:#eceff3 !important;
  color:#a1a8b3 !important;
}

.pv4-amenity-strip .pv4-amenity.is-missing .pv4-amenity-icon{
  color:#aeb4bd !important;
}

.pv4-amenity-strip .pv4-amenity.is-missing small{
  color:#9aa2ae !important;
}

.pv4-amenity-strip .pv4-amenity.is-unknown{
  opacity:.72;
}

.pv4-amenity-strip .pv4-amenity.is-unknown small{
  color:#8b94a3 !important;
}

@media(max-width:760px){
  .pv4-location strong{
    font-size:14px !important;
    line-height:1.65;
  }

  .pv4-amenity-strip .pv4-amenity small{
    font-size:6.5px;
  }
}


/* V4.7 — amenity state is visual only; no "دارد / ندارد" text */
.pv4-amenity-strip .pv4-amenity small{
  display:none !important;
}
.pv4-amenity-strip .pv4-amenity.is-missing{
  opacity:.38 !important;
  filter:grayscale(1);
}
.pv4-amenity-strip .pv4-amenity.is-unknown{
  opacity:.65 !important;
}

/* ========================================================
   PRODUCT FULLSCREEN GALLERY
   ======================================================== */

.pv4-main{
  cursor:zoom-in;
}

.pv4-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(5,12,28,.96);
  direction:rtl;
}

.pv4-lightbox.is-open{
  display:flex;
}

.pv4-lightbox__stage{
  position:absolute;
  inset:60px 70px 50px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.pv4-lightbox__stage img{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  user-select:none;
  -webkit-user-drag:none;
}

.pv4-lightbox__top{
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:60px;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#fff;
  z-index:4;
}

#pv4-lightbox-count{
  font-size:13px;
  font-weight:700;
  direction:ltr;
}

.pv4-lightbox__close{
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:20px;
  cursor:pointer;
}

.pv4-lightbox__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:5;
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}

.pv4-lightbox__arrow--right{
  right:15px;
}

.pv4-lightbox__arrow--left{
  left:15px;
}

body.pv4-gallery-open{
  overflow:hidden !important;
}

@media (max-width:767px){

  .pv4-lightbox__stage{
    inset:65px 8px 45px;
  }

  .pv4-lightbox__arrow{
    width:40px;
    height:40px;
    font-size:24px;
    background:rgba(0,0,0,.38);
  }

  .pv4-lightbox__arrow--right{
    right:8px;
  }

  .pv4-lightbox__arrow--left{
    left:8px;
  }

  .pv4-lightbox__top{
    padding:0 12px;
  }

}

/* ========================================================
   EXTRA PROPERTY ATTRIBUTES
   Compact line style
   ======================================================== */

.pv4-extra-specs{
  margin-top:18px;
  padding:18px 20px;
  border:1px solid #e7ebf2;
  border-radius:16px;
  background:#fff;
}

.pv4-extra-specs__title{
  margin-bottom:10px;
}

.pv4-extra-specs__title h2{
  margin:0;
  color:#071d59;
  font-size:16px;
  font-weight:900;
}

.pv4-extra-list{
  width:100%;
}

.pv4-extra-row{
  display:flex;
  align-items:center;
  width:100%;
  min-height:36px;
}

.pv4-extra-name{
  flex:0 0 auto;
  color:#697386;
  font-size:12px;
  font-weight:500;
  white-space:nowrap;
}

.pv4-extra-dots{
  flex:1 1 auto;
  height:1px;
  margin-right:10px;
  margin-left:10px;
  border-bottom:1px dotted #c8ced9;
}

.pv4-extra-value{
  flex:0 0 auto;
  color:#071d59;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}


/* ========================================================
   MOBILE AMENITIES
   Parking + Elevator + Warehouse + Balcony in ONE ROW
   ======================================================== */

@media (max-width:767px){

  .pv4-amenity-strip{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    width:100% !important;
    gap:4px !important;
    margin-top:10px !important;
    padding:6px !important;
    overflow:hidden !important;
  }

  .pv4-amenity-strip .pv4-amenity{
    flex:1 1 0 !important;
    width:0 !important;
    min-width:0 !important;
    min-height:58px !important;
    margin:0 !important;
    padding:7px 1px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    text-align:center !important;
  }

  .pv4-amenity-strip .pv4-amenity-icon{
    width:19px !important;
    height:19px !important;
    flex:0 0 auto !important;
  }

  .pv4-amenity-strip .pv4-amenity span{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:inherit;
    font-size:8px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
    text-align:center !important;
    white-space:nowrap !important;
  }


  /* -----------------------------------------
     Extra property specifications - Mobile
     ----------------------------------------- */

  .pv4-extra-specs{
    margin-top:10px;
    padding:12px 14px;
    border-radius:12px;
  }

  .pv4-extra-specs__title{
    margin-bottom:5px;
  }

  .pv4-extra-specs__title h2{
    font-size:14px;
  }

  .pv4-extra-row{
    min-height:31px;
  }

  .pv4-extra-name{
    font-size:10.5px;
  }

  .pv4-extra-value{
    font-size:10.5px;
  }

  .pv4-extra-dots{
    margin-right:7px;
    margin-left:7px;
  }

}


/* ========================================================
   VERY SMALL MOBILE
   ======================================================== */

@media (max-width:380px){

  .pv4-amenity-strip{
    gap:3px !important;
    padding:5px !important;
  }

  .pv4-amenity-strip .pv4-amenity{
    min-height:54px !important;
    padding:6px 0 !important;
  }

  .pv4-amenity-strip .pv4-amenity-icon{
    width:18px !important;
    height:18px !important;
  }

  .pv4-amenity-strip .pv4-amenity span{
    font-size:7.5px !important;
  }

  .pv4-extra-specs{
    padding:11px 12px;
  }

  .pv4-extra-name,
  .pv4-extra-value{
    font-size:10px;
  }

}

/* =========================================================
   PRODUCT DETAIL - EXTRA ATTRIBUTES DESKTOP 2-COLUMN LAYOUT
   Final production version
   Add this block to the END of:
   catalog/view/theme/default/stylesheet/product-detail-v4-7.css

   Mobile remains unchanged.
   ========================================================= */

@media (min-width: 768px) {

    .pv4-extra-specs .pv4-extra-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 50px !important;
        row-gap: 0 !important;
        width: 100% !important;
    }

    .pv4-extra-specs .pv4-extra-row {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 3px 0 !important;
        box-sizing: border-box !important;
    }

    .pv4-extra-specs .pv4-extra-name {
        flex: 0 0 auto !important;
        width: auto !important;
        white-space: nowrap !important;
    }

    .pv4-extra-specs .pv4-extra-dots {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 25px !important;
        margin: 0 10px !important;
        border-bottom: 1px dotted #c8ced9 !important;
    }

    .pv4-extra-specs .pv4-extra-value {
        flex: 0 0 auto !important;
        width: auto !important;
        white-space: nowrap !important;
    }
}

/* ========================================================
   V4.8 — DESKTOP DESCRIPTION + MAP
   Mobile remains unchanged
   ======================================================== */

@media (min-width: 768px){

  .pv4-bottom-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) !important;
    gap:18px !important;
    align-items:stretch !important;
    margin-top:18px !important;
  }

  .pv4-bottom-grid .pv4-card{
    display:flex !important;
    flex-direction:column !important;
    min-height:390px !important;
    padding:22px !important;
    border-radius:16px !important;
  }

  .pv4-bottom-grid .pv4-card-title{
    min-height:48px;
    padding-bottom:14px;
    border-bottom:1px solid #edf0f4;
  }

  .pv4-bottom-grid .pv4-card-title h2{
    margin:0 !important;
    font-size:17px !important;
    font-weight:900 !important;
    color:#071d59;
  }

  .pv4-bottom-grid .pv4-card-title p{
    margin:4px 0 0 !important;
    font-size:9px !important;
    line-height:1.7;
    color:#8b94a3;
  }

  .pv4-bottom-grid .pv4-card-title > i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 38px;
    border-radius:10px;
    background:#fff8e7;
    color:#d99b00;
    font-size:18px !important;
  }

  .pv4-bottom-grid .pv4-description{
    flex:1 1 auto;
    margin-top:16px !important;
    color:#505b6d !important;
    font-size:13px !important;
    line-height:2.15 !important;
    text-align:right;
  }

  .pv4-bottom-grid #pv4-map{
    flex:1 1 auto;
    width:100%;
    height:auto !important;
    min-height:300px !important;
    margin-top:16px !important;
    border-radius:13px !important;
  }
}


/* ========================================================
   PRODUCT DETAIL — DESCRIPTION + MAP VISUAL POLISH
   SAFE PATCH: does NOT change desktop/mobile columns
   Add to END of product-detail-v4-7.css
   Keep current stylesheet version:
   product-detail-v4-7.css?v=20260829
   ======================================================== */

/* cards */
.pv4-bottom-grid .pv4-card{
  overflow:hidden;
  border-color:#e4e9f0;
  box-shadow:0 8px 24px rgba(7,29,89,.045);
}

/* section header */
.pv4-bottom-grid .pv4-card-title{
  padding-bottom:12px;
  border-bottom:1px solid #eef1f5;
}

.pv4-bottom-grid .pv4-card-title h2{
  color:#071d59;
  font-size:16px;
  font-weight:900;
  line-height:1.6;
}

.pv4-bottom-grid .pv4-card-title p{
  margin-top:4px;
  color:#8b94a3;
  font-size:9px;
  line-height:1.8;
}

.pv4-bottom-grid .pv4-card-title>i{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:#fff8e8;
  color:#d99b00;
  font-size:18px;
}

/* description */
.pv4-bottom-grid .pv4-description{
  margin-top:14px !important;
  color:#4f5a6b !important;
  font-size:12.5px !important;
  line-height:2.15 !important;
  text-align:right;
}

.pv4-bottom-grid .pv4-description p{
  margin:0 0 10px;
}

.pv4-bottom-grid .pv4-description p:last-child{
  margin-bottom:0;
}

/* map */
.pv4-bottom-grid #pv4-map{
  margin-top:14px !important;
  border:1px solid #e5eaf0;
  border-radius:14px !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
}

/* desktop-only visual refinement; no grid/column changes */
@media (min-width:768px){
  .pv4-bottom-grid .pv4-card{
    padding:20px !important;
  }

  .pv4-bottom-grid .pv4-description{
    font-size:13px !important;
  }

  .pv4-bottom-grid #pv4-map{
    min-height:330px;
  }
}

/* mobile keeps its current one-column layout */
@media (max-width:767px){
  .pv4-bottom-grid .pv4-card{
    padding:13px !important;
    border-radius:13px;
  }

  .pv4-bottom-grid .pv4-card-title{
    padding-bottom:9px;
  }

  .pv4-bottom-grid .pv4-card-title h2{
    font-size:14px;
  }

  .pv4-bottom-grid .pv4-card-title>i{
    width:34px;
    height:34px;
    flex-basis:34px;
    border-radius:9px;
    font-size:16px;
  }

  .pv4-bottom-grid .pv4-description{
    margin-top:10px !important;
    font-size:10px !important;
    line-height:2 !important;
  }

  .pv4-bottom-grid #pv4-map{
    margin-top:10px !important;
  }
}

/* V4.9 — Bottom cards natural height on desktop */
@media (min-width:768px){

  .pv4-bottom-grid{
    align-items:start !important;
  }

  .pv4-bottom-grid .pv4-card{
    height:auto !important;
    min-height:0 !important;
  }

  .pv4-bottom-grid .pv4-description{
    min-height:0 !important;
  }

  .pv4-bottom-grid #pv4-map{
    height:370px !important;
    min-height:370px !important;
  }
}

@media (min-width:768px){

  .pv4-bottom-grid .pv4-card:first-child{
    padding-top:22px !important;
    padding-bottom:24px !important;
  }

  .pv4-bottom-grid .pv4-card:first-child .pv4-description{
    margin-top:18px !important;
    min-height:46px !important;
    display:flex;
    align-items:center;
  }

}

/* ========================================================
   V4.10 — STICKY CONTACT CTA
   Desktop compact / Mobile full width
   ======================================================== */

@media (min-width:768px){

  .pv4-sticky-call{
    left:32px !important;
    right:auto !important;
    bottom:22px !important;
    transform:none !important;

    width:auto !important;
    min-width:230px !important;
    max-width:360px !important;
    height:52px !important;

    padding:0 22px !important;

    border-radius:14px !important;
    background:#071d59 !important;

    box-shadow:
      0 12px 30px rgba(7,29,89,.18),
      0 2px 8px rgba(7,29,89,.10) !important;

    font-size:12.5px !important;
    font-weight:900 !important;

    transition:
      transform .18s ease,
      box-shadow .18s ease,
      background .18s ease !important;
  }

  .pv4-sticky-call:hover{
    transform:translateY(-2px) !important;
    box-shadow:
      0 16px 36px rgba(7,29,89,.22),
      0 3px 10px rgba(7,29,89,.12) !important;
    text-decoration:none !important;
  }

  .pv4-sticky-call i{
    width:30px;
    height:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 30px;

    border-radius:9px;
    background:rgba(255,255,255,.12);

    font-size:14px;
  }
}

/* Mobile stays as a strong full-width CTA */
@media (max-width:767px){

  .pv4-sticky-call{
    left:50% !important;
    right:auto !important;
    bottom:8px !important;

    transform:translateX(-50%) !important;

    width:calc(100% - 18px) !important;
    max-width:none !important;
    min-width:0 !important;

    height:50px !important;

    padding:0 14px !important;

    border-radius:12px !important;

    font-size:11px !important;
  }

  .pv4-sticky-call i{
    font-size:14px;
  }
}

/* ========================================================
   Pelacart Product Detail — Final Visual Polish
   SAFE PATCH:
   - no structural/grid changes
   - keeps approved desktop/mobile layouts
   - only refines spacing, typography, interaction
   Add to END of product-detail-v4-7.css
   ======================================================== */

/* overall page rhythm */
.pv4-page{
  padding-top:12px !important;
}

.pv4-shell{
  max-width:1180px;
}

/* toolbar */
.pv4-toolbar{
  margin-bottom:10px !important;
}

.pv4-icon{
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}

.pv4-icon:hover{
  background:#f8fafc;
  border-color:#cfd6df;
  transform:translateY(-1px);
}

/* gallery */
.pv4-gallery{
  box-shadow:0 8px 24px rgba(7,29,89,.035);
}

.pv4-main{
  background:#eef2f6;
}

.pv4-thumb,
.pv4-more{
  transition:border-color .18s ease,transform .18s ease,opacity .18s ease;
}

.pv4-thumb:hover,
.pv4-more:hover{
  transform:translateY(-1px);
}

.pv4-thumb:not(.active){
  opacity:.88;
}

/* summary */
.pv4-summary{
  box-shadow:0 8px 24px rgba(7,29,89,.035);
}

.pv4-location strong{
  line-height:1.65;
}

.pv4-file-id{
  margin-top:10px;
}

.pv4-price{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
}

/* core facts */
.pv4-facts--core>div{
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}

.pv4-facts--core>div:hover{
  border-color:#dfe4eb;
  background:#fff;
  transform:translateY(-1px);
}

/* amenities */
.pv4-amenity-strip{
  box-shadow:0 8px 24px rgba(7,29,89,.03);
}

.pv4-amenity-strip .pv4-amenity span{
  line-height:1.4;
}

/* extra attributes */
.pv4-extra-specs{
  box-shadow:0 8px 24px rgba(7,29,89,.03);
}

.pv4-extra-row{
  border-bottom:1px solid #f3f5f7;
}

.pv4-extra-row:last-child{
  border-bottom:0;
}

/* bottom cards */
.pv4-bottom-grid .pv4-card{
  box-shadow:0 8px 24px rgba(7,29,89,.04);
}

.pv4-bottom-grid .pv4-description{
  overflow-wrap:anywhere;
}

/* fixed call button */
.pv4-sticky-call{
  letter-spacing:0;
}

.pv4-sticky-call:focus-visible{
  outline:3px solid rgba(217,155,0,.35);
  outline-offset:3px;
}

/* desktop-only refinements */
@media (min-width:768px){

  .pv4-top{
    gap:18px;
  }

  .pv4-summary{
    padding:22px;
  }

  .pv4-amenity-strip{
    margin-top:16px;
  }

  .pv4-extra-specs{
    margin-top:16px;
  }

  .pv4-bottom-grid{
    margin-top:16px;
  }

  .pv4-extra-specs__title h2{
    font-size:16.5px;
  }
}

/* mobile-only refinements; no layout changes */
@media (max-width:767px){

  .pv4-page{
    padding-top:6px !important;
  }

  .pv4-toolbar{
    margin-bottom:6px !important;
  }

  .pv4-summary,
  .pv4-extra-specs,
  .pv4-bottom-grid .pv4-card{
    box-shadow:none;
  }

  .pv4-location strong{
    line-height:1.7;
  }

  .pv4-price{
    border-radius:12px;
  }

  .pv4-thumbs{
    scrollbar-width:none;
  }

  .pv4-thumbs::-webkit-scrollbar{
    display:none;
  }
}

/* ========================================================
   V4.11 — FINAL DESKTOP MICRO POLISH
   ======================================================== */

@media (min-width:768px){

  /* 1) کارت اطلاعات بالا کمی جمع‌وجورتر */
  .pv4-summary{
    align-self:start !important;
    min-height:0 !important;
    height:auto !important;
  }

  .pv4-price{
    margin-top:14px !important;
  }

  .pv4-facts--core{
    margin-top:10px !important;
  }

  .pv4-facts--core>div{
    min-height:68px !important;
  }


  /* 2) مشخصات بیشتر کمی فشرده‌تر */
  .pv4-extra-specs{
    padding:16px 20px !important;
  }

  .pv4-extra-specs__title{
    margin-bottom:6px !important;
  }

  .pv4-extra-row{
    min-height:34px !important;
    padding:1px 0 !important;
  }

  .pv4-extra-name,
  .pv4-extra-value{
    font-size:11.5px !important;
  }


  /* 3) دکمه بازگشت به بالا هماهنگ با برند */
  #scroll-top,
  .scroll-top,
  .back-to-top,
  #back-to-top{
    background:#071d59 !important;
    border-color:#071d59 !important;
    color:#fff !important;
    box-shadow:0 8px 22px rgba(7,29,89,.20) !important;
  }

  #scroll-top:hover,
  .scroll-top:hover,
  .back-to-top:hover,
  #back-to-top:hover{
    background:#d99b00 !important;
    border-color:#d99b00 !important;
    color:#071d59 !important;
  }
}

/* ========================================================
   Pelacart Back To Top
   ======================================================== */

#topcontrol{
  width:52px !important;
  height:52px !important;

  right:22px !important;
  bottom:22px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  background:#071d59 !important;
  border:2px solid rgba(255,255,255,.9) !important;
  border-radius:50% !important;

  box-shadow:0 8px 24px rgba(7,29,89,.22) !important;

  transition:
    transform .18s ease,
    background .18s ease,
    box-shadow .18s ease !important;
}

#topcontrol img{
  display:none !important;
}

#topcontrol::before{
  content:"";
  width:14px;
  height:14px;

  border-top:3px solid #fff;
  border-right:3px solid #fff;

  transform:rotate(-45deg) translate(-2px,2px);
}

#topcontrol:hover{
  background:#d99b00 !important;
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(7,29,89,.28) !important;
}

#topcontrol:hover::before{
  border-color:#071d59;
}

@media (max-width:767px){

  #topcontrol{
    width:44px !important;
    height:44px !important;

    right:12px !important;
    bottom:68px !important;
  }

  #topcontrol::before{
    width:12px;
    height:12px;
    border-width:3px 3px 0 0;
  }
}

/* =========================================
   Product Detail - SEO H1 FINAL
   ========================================= */

.pv4-title-shell{
    width: min(1418px, calc(100% - 48px));
    margin: 0 auto;
    padding-right: 40px;
    box-sizing: border-box;
}

.pv4-property-title{
    margin: 16px 0 24px !important;
    padding: 0 !important;
    font-size: 24px !important;
    line-height: 1.5 !important;
    font-weight: 800 !important;
    color: #071d59 !important;
    text-align: right !important;
}

/* Mobile */
@media (max-width: 767px){

    .pv4-title-shell{
        width: calc(100% - 20px);
        padding-right: 0;
    }

    .pv4-property-title{
        margin: 0 0 16px !important;
        font-size: 19px !important;
        line-height: 1.6 !important;
        font-weight: 700 !important;
    }
}