.classified-detail-shell{
  padding:0;
}
.classified-detail-grid{
  display:grid;
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  grid-template-areas:
    "hero content"
    "contact content"
    "gallery content";
  gap:16px;
  align-items:start;
}
.classified-detail-sidebar{
  grid-area:sidebar;
  display:flex;
  flex-direction:column;
  gap:16px;
  min-height:100%;
  align-self:stretch;
}
.classified-detail-shell--no-gallery .classified-detail-grid{
  grid-template-areas:
    "hero content"
    "contact content";
}
.classified-detail-shell--balanced .classified-detail-grid{
  grid-template-areas:
    "sidebar content"
    "sidebar content";
  align-items:stretch;
}
.classified-detail-hero,
.classified-detail-card{
  background:#fffaf2;
  border:2px solid var(--line-soft, rgba(23,18,15,.92));
  border-radius:24px;
  box-shadow:var(--shadow, 0 14px 36px rgba(62,39,16,.08));
}
.classified-detail-hero{
  grid-area:hero;
  padding:16px 18px 14px;
}
.classified-detail-hero__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(223,124,86,.14);
  color:#cd6d49;
  font-size:12px;
  font-weight:900;
}
.classified-detail-hero__title{
  margin:14px 0 0;
  font-family:"Iowan Old Style","Palatino Linotype","Songti SC","STSong",Georgia,serif;
  font-size:clamp(26px,2.2vw,38px);
  line-height:1.08;
  letter-spacing:-.03em;
  color:#171411;
}
.classified-detail-hero__price{
  margin-top:12px;
  font-size:clamp(18px,1.8vw,26px);
  line-height:1.1;
  font-weight:900;
  color:#df7c56;
}
.classified-detail-hero__note{
  margin-top:8px;
  color:#8b6753;
  font-size:13px;
  line-height:1.55;
  font-weight:700;
}
.classified-detail-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.classified-detail-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  border:2px solid rgba(43,35,29,.9);
  background:#fffaf2;
  color:#4d463f;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.classified-detail-tag--city{
  background:rgba(34,197,94,.08);
  color:#2e7d32;
}
.classified-detail-tag--type{
  background:rgba(223,124,86,.1);
  color:#b85d34;
}
.classified-detail-tag--pending{
  background:#fff7ed;
  color:#f59e0b;
}
.classified-detail-card{
  padding:16px 16px 14px;
}
.classified-detail-card--gallery{
  grid-area:gallery;
}
.classified-detail-card--contact{
  grid-area:contact;
}
.classified-detail-card--desc{
  grid-area:content;
  min-height:100%;
}
.classified-detail-shell--no-gallery .classified-detail-card--desc{
  min-height:auto;
}
.classified-detail-shell--balanced .classified-detail-card--contact{
  margin-top:auto;
}
.classified-detail-shell--balanced .classified-detail-card--desc{
  min-height:100%;
}
.classified-detail-card__title,
.classified-detail-section-title{
  margin:0 0 10px;
  font-size:20px;
  line-height:1.2;
  font-weight:900;
  color:#171411;
}
.classified-detail-section-title{
  margin-top:18px;
  padding-top:10px;
  border-top:3px solid #df7c56;
  font-size:17px;
}
.classified-detail-gallery{
  display:grid;
  gap:12px;
}
.classified-detail-gallery--empty{
  min-height:200px;
  place-items:center;
}
.classified-detail-gallery__empty{
  display:grid;
  place-items:center;
  min-height:220px;
  border-radius:18px;
  background:linear-gradient(135deg,#f3ede3,#ebe4d7);
  color:#b8aea4;
  font-size:56px;
}
.classified-detail-gallery__stage{
  position:relative;
}
.classified-detail-gallery__stage-inner{
  min-height:250px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(135deg,#f3ede3,#ebe4d7);
}
.classified-detail-gallery__img{
  display:block;
  width:100%;
  height:min(34vw,320px);
  min-height:250px;
  object-fit:cover;
}
.classified-detail-gallery__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:36px;
  height:36px;
  border:none;
  border-radius:999px;
  background:rgba(255,250,242,.95);
  box-shadow:0 8px 20px rgba(0,0,0,.12);
  color:#3a2e24;
  font-size:22px;
  cursor:pointer;
  z-index:2;
}
.classified-detail-gallery__nav--prev{left:12px}
.classified-detail-gallery__nav--next{right:12px}
.classified-detail-gallery__count{
  position:absolute;
  right:12px;
  bottom:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(23,18,15,.76);
  color:#fffaf2;
  font-size:11px;
  font-weight:800;
}
.classified-detail-gallery__thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(70px,1fr));
  gap:8px;
}
.classified-detail-gallery__thumb{
  padding:0;
  border:2px solid rgba(43,35,29,.16);
  border-radius:14px;
  overflow:hidden;
  background:#fffaf2;
  cursor:pointer;
}
.classified-detail-gallery__thumb.is-active{
  border-color:#df7c56;
  box-shadow:0 0 0 2px rgba(223,124,86,.12);
}
.classified-detail-gallery__thumb img{
  display:block;
  width:100%;
  height:72px;
  object-fit:cover;
}
.classified-detail-contact{
  display:grid;
  gap:10px;
}
.classified-detail-contact__value{
  color:#cf6f4b;
  font-size:17px;
  line-height:1.5;
  font-weight:900;
  word-break:break-word;
}
.classified-detail-contact__note{
  margin:0;
  color:#8b6753;
  font-size:13px;
  line-height:1.6;
  font-weight:700;
}
.classified-detail-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
}
.classified-detail-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  border:2px solid rgba(43,35,29,.9);
  background:#fffaf2;
  color:#4d463f;
  font-size:14px;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
}
.classified-detail-action--primary{
  background:#df7c56;
  border-color:#df7c56;
  color:#fffaf2;
}
.classified-detail-desc-wrap{
  display:grid;
  gap:10px;
}
.classified-detail-desc{
  max-height:min(44vh,360px);
  overflow:auto;
  padding-right:4px;
}
.classified-detail-desc p{
  margin:0 0 10px;
  color:#3f382f;
  font-size:15px;
  line-height:1.8;
  font-weight:600;
  word-break:break-word;
}
.classified-detail-desc p:last-child{margin-bottom:0}
.classified-detail-desc:not(.is-expanded){
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
  line-clamp:5;
  overflow:hidden;
}
.classified-detail-desc__toggle{
  justify-self:start;
  min-height:34px;
  padding:0 14px;
  border:2px solid rgba(184,93,52,.6);
  border-radius:999px;
  background:rgba(223,124,86,.12);
  color:#b85d34;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 2px 0 rgba(184,93,52,.12);
}
.classified-detail-props{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.classified-detail-prop{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.75);
  border:1px solid rgba(43,35,29,.12);
}
.classified-detail-prop__label{
  color:#8b6753;
  font-size:11px;
  font-weight:800;
}
.classified-detail-prop__value{
  color:#171411;
  font-size:14px;
  line-height:1.55;
  font-weight:700;
  word-break:break-word;
}
.classified-detail-empty{
  color:#8b6753;
  font-size:14px;
  line-height:1.6;
  font-weight:700;
}
@media(max-width:1023px){
  .classified-detail-shell--balanced .classified-detail-grid,
  .classified-detail-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "sidebar"
      "content";
  }
  .classified-detail-sidebar{
    gap:12px;
  }
  .classified-detail-shell--balanced .classified-detail-card--contact{
    margin-top:0;
  }
  .classified-detail-gallery__img{
    height:min(58vw,340px);
    min-height:220px;
  }
}
@media(max-width:640px){
  .jp-modal--detail .jp-modal-box{
    width:min(100vw - 16px, 1000px);
    max-height:calc(100vh - 16px);
    border-radius:24px;
  }
  .jp-modal--detail .jp-detail-shell--modal{
    padding:14px 14px 12px;
    border-radius:24px;
  }
  .classified-detail-grid{
    gap:12px;
  }
  .classified-detail-hero,
  .classified-detail-card{
    border-radius:22px;
  }
  .classified-detail-hero{
    padding:14px 14px 12px;
  }
  .classified-detail-hero__status{
    min-height:28px;
    padding:0 12px;
    font-size:11px;
  }
  .classified-detail-hero__title{
    margin-top:12px;
    font-size:clamp(18px,7vw,24px);
    line-height:1.12;
  }
  .classified-detail-hero__price{
    margin-top:10px;
    font-size:clamp(16px,6vw,22px);
  }
  .classified-detail-hero__meta{
    gap:6px;
    margin-top:12px;
  }
  .classified-detail-tag{
    min-height:30px;
    padding:0 12px;
    font-size:11px;
  }
  .classified-detail-card{
    padding:14px 14px 12px;
  }
  .classified-detail-card__title,
  .classified-detail-section-title{
    font-size:16px;
  }
  .classified-detail-section-title{
    margin-top:14px;
    padding-top:8px;
  }
  .classified-detail-gallery__stage-inner{
    min-height:180px;
  }
  .classified-detail-gallery__img{
    height:52vw;
    min-height:180px;
  }
  .classified-detail-gallery__thumbs{
    grid-template-columns:repeat(auto-fill,minmax(56px,1fr));
    gap:6px;
  }
  .classified-detail-gallery__thumb img{
    height:56px;
  }
  .classified-detail-contact__value{
    font-size:15px;
  }
  .classified-detail-actions{
    grid-template-columns:1fr;
    gap:8px;
  }
  .classified-detail-action{
    min-height:38px;
    font-size:13px;
  }
  .classified-detail-desc{
    max-height:none;
  }
  .classified-detail-desc p{
    font-size:14px;
    line-height:1.72;
  }
  .classified-detail-props{
    grid-template-columns:1fr;
    gap:8px;
  }
  .classified-detail-prop{
    padding:10px 12px;
  }
  .classified-detail-prop__value{
    font-size:13px;
  }
}
