@media(max-width:640px){
  body{padding-top:72px}
  :root{--header-h:72px;--header-h-shrink:60px}
  h1{font-size:2.1rem}
}
.page-with-sidebar{display:grid;gap:var(--space-lg)}
@media(min-width:960px){
  .page-with-sidebar{grid-template-columns:1fr 260px}
}
.page-with-sidebar--filters{
  grid-template-columns:1fr;
}
@media(min-width:960px){
  .page-with-sidebar--filters{grid-template-columns:260px 1fr}
}
.filters-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-md);height:fit-content}
.filters-panel summary{cursor:pointer;font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}
@media(min-width:960px){
  .filters-panel details{display:block}
  .filters-panel summary{display:none}
}
@media(max-width:959px){
  .filters-panel details:not([open]) + *{display:none}
}
.checkbox-list label{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--text-muted);margin-bottom:.35rem}
.pagination{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;margin-top:var(--space-lg)}
.pagination button,.pagination a{
  min-width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;
  border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.85rem;
}
.pagination .is-current{border-color:var(--accent-gold);color:var(--accent-gold)}
.gallery-grid{display:grid;gap:var(--space-sm);grid-template-columns:repeat(2,1fr)}
@media(min-width:768px){.gallery-grid{grid-template-columns:repeat(4,1fr)}}
.gallery-grid img{cursor:pointer;border-radius:8px;aspect-ratio:4/3;object-fit:cover;width:100%}
.lightbox{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;padding:var(--space-md)}
.lightbox.is-open{display:flex}
.lightbox img{max-width:min(960px,100%);max-height:90vh;border-radius:8px}
.lightbox button.close{position:absolute;top:1rem;right:1rem;font-size:2rem;color:#fff}
.reviews-list{display:flex;flex-direction:column;gap:var(--space-md)}
.review{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-md);display:flex;gap:var(--space-sm)}
.review img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.modal{position:fixed;inset:0;z-index:2500;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;padding:var(--space-md)}
.modal.is-open{display:flex}
.modal__box{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);max-width:480px;width:100%;padding:var(--space-lg);max-height:90vh;overflow:auto}
.timeline{border-left:2px solid var(--border);padding-left:var(--space-md);margin-top:var(--space-md)}
.timeline-item{margin-bottom:var(--space-md);position:relative}
.timeline-item::before{content:'';position:absolute;left:calc(-1 * var(--space-md) - 5px);top:.35rem;width:8px;height:8px;border-radius:50%;background:var(--accent-gold)}
.team-grid{display:grid;gap:var(--space-md);grid-template-columns:1fr}
@media(min-width:640px){.team-grid{grid-template-columns:repeat(2,1fr)}}
.team-card{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-md);text-align:center;background:var(--card)}
.team-card img{width:96px;height:96px;border-radius:50%;object-fit:cover;margin-inline:auto}
.accordion-item{border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem;overflow:hidden;background:var(--card)}
.accordion-trigger{width:100%;text-align:left;padding:var(--space-sm) var(--space-md);display:flex;justify-content:space-between;align-items:center;font-weight:600}
.accordion-panel{display:none;padding:0 var(--space-md) var(--space-md);color:var(--text-muted);font-size:.95rem}
.accordion-item.is-open .accordion-panel{display:block}
.bar-two-col{display:grid;gap:var(--space-lg);grid-template-columns:1fr}
@media(min-width:900px){.bar-two-col{grid-template-columns:1fr 1.12fr}}
.article-body{max-width:72ch;font-size:1.05rem;color:var(--text-muted)}
.article-body p{margin-bottom:var(--space-md)}
.tags-inline{display:flex;flex-wrap:wrap;gap:.35rem;margin:var(--space-sm) 0}
