/* Nieuws: normale content + rechterkolom met woningdemo en fotogalerij. */
body.news-sidebar-active .site-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.7fr) !important;
  gap:24px !important;
  align-items:start;
}

body.news-sidebar-active #pageContent{
  min-width:0;
  width:auto !important;
  max-width:none !important;
}

body.news-sidebar-active #workbench{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:14px;
  min-width:0;
  position:sticky;
  top:92px;
  align-self:start;
}

/* In de Nieuws-tab is alleen de compacte woningviewer nodig. */
body.news-sidebar-active #workbench > .sidebar,
body.news-sidebar-active #workbench > .info{
  display:none !important;
}

body.news-sidebar-active #workbench .viewer-column{
  width:100%;
  min-width:0;
}

body.news-sidebar-active #workbench .floorplan{
  width:100%;
}

.news-side-gallery{
  margin-top:14px;
  padding:14px;
  border:1px solid var(--line, rgba(128,160,140,.24));
  border-radius:18px;
  background:var(--panel, rgba(15,25,19,.88));
}
.news-side-gallery-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.news-side-gallery-head strong{
  display:block;
  font-size:15px;
}
.news-side-gallery-head small{
  display:block;
  color:var(--muted, #91a097);
  font-size:11px;
  margin-top:2px;
}
.news-side-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
}
.news-side-gallery-item{
  position:relative;
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  padding:0;
  border:0;
  border-radius:9px;
  background:#111;
  cursor:zoom-in;
}
.news-side-gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .22s ease,opacity .22s ease;
}
.news-side-gallery-item:hover img{
  transform:scale(1.055);
  opacity:.92;
}
.news-side-gallery-empty{
  grid-column:1/-1;
  padding:18px 8px;
  color:var(--muted, #91a097);
  text-align:center;
  font-size:12px;
}
.news-side-gallery-footer{
  margin-top:10px;
  display:flex;
  justify-content:flex-end;
}
.news-side-gallery-footer a{
  color:var(--accent, #80eea8);
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}

/* Eigen lightbox voor de galerij in de hoofdsite. */
.news-side-lightbox{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(0,0,0,.91);
}
.news-side-lightbox.open{display:flex}
.news-side-lightbox img{
  max-width:min(94vw,1500px);
  max-height:84vh;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 24px 80px rgba(0,0,0,.5);
}
.news-side-lightbox-close,
.news-side-lightbox-prev,
.news-side-lightbox-next{
  position:fixed;
  border:0;
  color:#fff;
  background:rgba(255,255,255,.13);
  backdrop-filter:blur(8px);
  cursor:pointer;
}
.news-side-lightbox-close{
  right:18px;top:18px;width:44px;height:44px;border-radius:50%;font-size:28px;
}
.news-side-lightbox-prev,.news-side-lightbox-next{
  top:50%;transform:translateY(-50%);width:50px;height:66px;border-radius:14px;font-size:32px;
}
.news-side-lightbox-prev{left:18px}.news-side-lightbox-next{right:18px}
.news-side-lightbox-caption{
  position:fixed;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  max-width:min(90vw,850px);
  padding:8px 12px;
  border-radius:10px;
  color:#eee;
  background:rgba(0,0,0,.55);
  text-align:center;
  font-size:12px;
}

@media(max-width:1050px){
  body.news-sidebar-active .site-grid{
    grid-template-columns:minmax(0,1fr) 300px !important;
    gap:16px !important;
  }
}
@media(max-width:820px){
  body.news-sidebar-active .site-grid{
    grid-template-columns:1fr !important;
  }
  body.news-sidebar-active #workbench{
    position:static;
  }
  .news-side-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:520px){
  .news-side-lightbox{padding:10px}
  .news-side-lightbox-prev{left:7px}.news-side-lightbox-next{right:7px}
  .news-side-lightbox-close{right:9px;top:9px}
}


/* v40: actieve Updates-galerij */
.news-side-gallery{padding:14px}
.news-side-gallery-head{align-items:center}
.news-side-gallery-controls{display:flex;gap:6px}
.news-side-gallery-controls button{width:34px;height:34px;border-radius:10px;border:1px solid var(--line,rgba(128,160,140,.24));background:var(--panel2,rgba(255,255,255,.04));color:inherit;font-size:22px;cursor:pointer}
.news-side-gallery-main{display:block;width:100%;aspect-ratio:16/10;padding:0;border:0;border-radius:13px;overflow:hidden;background:#0b0e0c;cursor:zoom-in}
.news-side-gallery-main img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.news-side-gallery-main:hover img{transform:scale(1.02)}
.news-side-gallery-meta{display:grid;gap:3px;padding:10px 2px 8px}
.news-side-gallery-meta small{color:var(--muted,#91a097);font-size:11px}
.news-side-gallery-meta strong{font-size:14px;line-height:1.25}
.news-side-gallery-meta a{width:max-content;color:var(--accent,#80eea8);font-size:12px;font-weight:700;text-decoration:none;margin-top:2px}
.news-side-gallery-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.news-side-gallery-thumb{aspect-ratio:4/3;padding:0;border:1px solid transparent;border-radius:8px;overflow:hidden;background:#111;opacity:.56;cursor:pointer}
.news-side-gallery-thumb.active{opacity:1;border-color:var(--accent,#80eea8)}
.news-side-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.news-side-lightbox-caption span{opacity:.65}
.news-side-lightbox-caption a{color:var(--accent,#80eea8);font-weight:700;text-decoration:none}
