/* IHB V8.5 – SP Simple Portfolio presentation for the imported 41 houses.
   Scoped to the extension so Page Builder and standard Joomla views are unaffected.
   Respect the extension's Shuffle filter script: do not replace its float layout with CSS grid. */
.ihb-content #sp-simpleportfolio,
.ihb-content .sp-simpleportfolio.sp-simpleportfolio-view-items,
.ihb-content .sp-simpleportfolio.sp-simpleportfolio-view-item{
  width:min(100% - 48px,1280px);margin:0 auto;padding:clamp(32px,5vw,85px) 0 95px;
  color:var(--ihb-ink);font-family:var(--ihb-sans);
}
.ihb-content>.page-header,
.ihb-content>h1.page-header{
  max-width:1280px;width:calc(100% - 48px);margin:55px auto 0;
  font:400 clamp(34px,4.5vw,62px)/1.08 var(--ihb-serif);letter-spacing:-.04em;
}
/* The core list view is filtered by the original portfolio JavaScript. */
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter{
  text-align:left;margin:0 0 35px;border-bottom:1px solid var(--ihb-line);padding-bottom:17px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter>ul{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;
  list-style:none;padding:0;margin:0;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter>ul>li{float:none;margin:0;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter>ul>li>a{
  padding:10px 2px;border-radius:0;background:transparent!important;color:var(--ihb-muted);
  font-size:12px;font-weight:700;letter-spacing:.035em;border-bottom:2px solid transparent;
  transition:color .2s,border-color .2s;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter>ul>li.active>a,
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-filter>ul>li>a:hover{
  background:transparent!important;color:var(--ihb-navy)!important;border-color:var(--ihb-warm);
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-items{margin:-14px;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item{padding:14px;float:left;box-sizing:border-box;}
/* Sizing fallback if the extension's own stylesheet arrives late. */
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-columns-2>.sp-simpleportfolio-item{width:50%;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-columns-3>.sp-simpleportfolio-item{width:33.3333%;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-columns-4>.sp-simpleportfolio-item{width:25%;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-overlay-wrapper{
  background:#e4eaf2;overflow:hidden;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-overlay-wrapper .sp-simpleportfolio-img{
  float:none;width:100%;height:clamp(205px,22vw,325px);object-fit:cover;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-overlay{
  background:linear-gradient(180deg,#12263b35,#12263bbd);padding:16px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-info{
  background:#fff;padding:19px 18px 21px;line-height:1.4;border:1px solid var(--ihb-line);
  border-top:0;min-height:96px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-info:hover{
  background:#eff4f9;color:var(--ihb-navy);
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-info:hover h3>a{
  color:var(--ihb-navy);
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-info h3{
  font:400 clamp(20px,1.6vw,26px)/1.18 var(--ihb-serif);letter-spacing:-.025em;margin:0 0 8px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-item .sp-simpleportfolio-info h3>a{
  color:var(--ihb-navy);
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-tags{
  color:var(--ihb-muted);font-size:11px;line-height:1.7;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-btns a{
  border-radius:0;background:#f3f6fa;color:#172d45;border-color:#f3f6fa;
  font-weight:700;letter-spacing:.055em;padding:12px 17px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-btns a:hover{
  color:#fff;background:var(--ihb-navy);border-color:var(--ihb-navy);
}
/* Detail page: house image, description, gallery and original transparent plans. */
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-image{
  background:#eaf0f6;margin-bottom:38px;text-align:center;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-image .sp-simpleportfolio-img{
  display:block;width:100%;max-height:700px;object-fit:contain;margin-inline:auto;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-details{display:block;}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-description,
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-meta{
  float:none;width:100%;padding:0;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-description>h2{
  font:400 clamp(36px,4.2vw,66px)/1.1 var(--ihb-serif);
  letter-spacing:-.045em;color:var(--ihb-navy);margin:0 0 24px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-description>p:first-child{
  font-size:clamp(16px,1.35vw,20px);line-height:1.85;max-width:850px;color:#4b637b;margin:0 0 48px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-description>h3{
  font:400 clamp(29px,3vw,44px)/1.15 var(--ihb-serif);
  letter-spacing:-.035em;color:var(--ihb-navy);margin:0 0 28px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item{
  min-width:0;margin:0;border:1px solid var(--ihb-line);background:white;overflow:hidden;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item>a{display:block;background:#eef3f9;}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item img{
  display:block;width:100%;height:clamp(230px,34vw,440px);object-fit:cover;transition:transform .25s;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item:not(.ihb-floorplan) a:hover img{
  transform:scale(1.015);
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item.ihb-floorplan img{
  object-fit:contain!important;background:#edf3f9;padding:clamp(12px,2.5vw,32px);
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item figcaption{
  margin:0;padding:14px 18px;color:var(--ihb-slate);font-size:12px;line-height:1.5;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-hint{
  font-size:12px;color:var(--ihb-muted);line-height:1.7;margin:28px 0;
}
/* These are import timestamps, not actual construction dates; do not present them as project dates. */
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-created{display:none;}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-meta{
  border-top:1px solid var(--ihb-line);margin-top:45px;padding-top:24px;font-size:13px;
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-meta h4{
  font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--ihb-muted);
}
.sp-simpleportfolio.sp-simpleportfolio-view-item .sp-simpleportfolio-meta>div{border-bottom:0;}
.sp-simpleportfolio.sp-simpleportfolio-view-items .pagination{
  display:flex;justify-content:center;margin-top:65px;
}
@media(max-width:900px){
  .sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-items>.sp-simpleportfolio-item{width:50%;}
  .sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-overlay-wrapper .sp-simpleportfolio-img{height:260px;}
}
@media(max-width:650px){
  .ihb-content #sp-simpleportfolio,
  .ihb-content .sp-simpleportfolio.sp-simpleportfolio-view-items,
  .ihb-content .sp-simpleportfolio.sp-simpleportfolio-view-item{width:calc(100% - 32px);padding-top:40px;padding-bottom:65px;}
  .sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-items{margin:-8px;}
  .sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-items>.sp-simpleportfolio-item{width:100%;padding:8px;}
  .sp-simpleportfolio.sp-simpleportfolio-view-items .sp-simpleportfolio-overlay-wrapper .sp-simpleportfolio-img{height:240px;}
  .sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery{grid-template-columns:1fr;gap:15px;}
  .sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item img{height:clamp(250px,75vw,380px);}
}
@media(prefers-reduced-motion:reduce){
  .sp-simpleportfolio.sp-simpleportfolio-view-item .ihb-house-import-gallery__item img{transition:none;}
}
