.rocksy-coverage-lead {
  font-size:1.15em;
  font-weight:600;
  line-height:1.5;
  margin:0 0 18px;
}
.rocksy-coverage-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin:0 0 26px;
  padding:12px 0;
  border-top:1px solid rgba(20,78,61,.25);
  border-bottom:1px solid rgba(20,78,61,.25);
  font-size:.95em;
}
.rocksy-coverage-meta a { text-decoration:underline; }
.rocksy-coverage-section-heading {
  display:flex;
  align-items:center;
  gap:10px;
  margin:38px 0 16px;
}
.rocksy-coverage-section-heading h2 { margin:0; }
.rocksy-gallery-total { margin-left:auto; font-size:.9em; opacity:.7; }
.rocksy-gallery-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.rocksy-gallery-link {
  position:relative;
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#111;
}
.rocksy-gallery-link img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .2s ease;
}
.rocksy-gallery-link:hover img { transform:scale(1.035); }
.rocksy-lightbox[hidden] { display:none !important; }
.rocksy-lightbox {
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(5,12,9,.96);
  padding:48px 72px;
}
.rocksy-lightbox figure { margin:0; max-width:min(1200px,90vw); max-height:88vh; display:flex; flex-direction:column; align-items:center; }
.rocksy-lightbox img { max-width:100%; max-height:80vh; width:auto; height:auto; object-fit:contain; }
.rocksy-lightbox figcaption { color:#fff; margin-top:10px; text-align:center; }
.rocksy-lightbox button { position:absolute; border:0; background:transparent; color:#fff; cursor:pointer; z-index:2; }
.rocksy-lightbox-close { right:24px; top:14px; font-size:44px; }
.rocksy-lightbox-prev,.rocksy-lightbox-next { top:50%; transform:translateY(-50%); font-size:64px; padding:20px; }
.rocksy-lightbox-prev { left:8px; }
.rocksy-lightbox-next { right:8px; }
.rocksy-lightbox-counter { position:absolute; left:50%; bottom:14px; transform:translateX(-50%); color:#fff; }
.rocksy-lightbox-open { overflow:hidden; }
.rocksy-coverages-grid {
  display:grid;
  grid-template-columns:repeat(var(--rocksy-columns,3),minmax(0,1fr));
  gap:22px;
}
.rocksy-coverage-card { border:1px solid rgba(20,78,61,.28); background:#f5eedb; overflow:hidden; }
.rocksy-coverage-card-image { display:block; aspect-ratio:16/9; overflow:hidden; background:#143f32; }
.rocksy-coverage-card-image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .2s ease; }
.rocksy-coverage-card:hover .rocksy-coverage-card-image img { transform:scale(1.025); }
.rocksy-no-image { display:flex; height:100%; align-items:center; justify-content:center; color:#efe4bf; font-weight:800; letter-spacing:.08em; }
.rocksy-coverage-card-body { padding:15px; }
.rocksy-coverage-card h3 { margin:0 0 8px; line-height:1.15; }
.rocksy-coverage-card h3 a { text-decoration:none; }
.rocksy-coverage-card-short { margin:0 0 12px; }
.rocksy-coverage-card-meta { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:.86em; opacity:.8; margin-bottom:12px; }
.rocksy-coverage-card-link { font-weight:700; }
@media (max-width:900px) {
  .rocksy-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .rocksy-coverages-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .rocksy-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rocksy-coverages-grid { grid-template-columns:1fr; }
  .rocksy-lightbox { padding:46px 38px; }
  .rocksy-lightbox-prev,.rocksy-lightbox-next { font-size:48px; padding:8px; }
}
