#wrapper, #core { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box; }
#core { clear: both; }
footer { box-sizing: border-box; }
section#main { float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box; }
#sub-header { background-image: url("/images/headline/headline-gallery.jpg") !important; background-position: center 42% !important; }
.gallery-content { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 42px 0 70px; box-sizing: border-box; }
#headline-album { position: relative; width: 100% !important; height: clamp(260px, 43vw, 500px); margin: 0 0 30px !important; overflow: hidden; border-radius: 14px; background: #17364a; box-shadow: 0 12px 36px rgba(8,43,67,.14); }
#headline-album[hidden] { display: none !important; }
#headline-album .headline-picture, #headline-album .headline-picture img { display: block; width: 100% !important; height: 100%; }
#headline-album .headline-picture img { object-fit: cover; object-position: center 45%; }
#headline-album > div:first-child { position: absolute !important; inset: auto 0 0 0 !important; z-index: 1; padding: 22px 26px !important; background: linear-gradient(0deg, rgba(4,25,39,.86), rgba(4,25,39,0)); box-sizing: border-box; }
#headline-album p { max-width: 780px; margin: 0 0 14px; color: #fff; font: 700 clamp(20px, 3vw, 32px)/1.25 "Segoe UI", Arial, sans-serif; text-shadow: 0 2px 10px rgba(0,0,0,.3); }
#headline-album .view-photo-button { display: inline-flex; padding: 11px 20px; align-items: center; border-radius: 8px; background: #e4b51e; color: #082b43; font: 700 14px "Segoe UI", Arial, sans-serif; text-decoration: none; }
#albums { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 18px; width: 100% !important; margin: 0 !important; padding: 0 !important; }
#albums .img { float: none !important; width: auto !important; height: auto !important; min-width: 0; margin: 0 !important; padding: 9px; overflow: hidden; border: 1px solid #e1e6e8; border-radius: 12px; background: #fff; box-shadow: 0 6px 20px rgba(8,43,67,.06); box-sizing: border-box; }
#albums .img a { display: block; overflow: hidden; border-radius: 8px; }
#albums .img img { display: block; width: 100% !important; height: 150px !important; object-fit: cover; }
#albums .img .desc { padding: 12px 4px 5px; color: #172b3a; font: 600 14px/1.45 "Segoe UI", Arial, sans-serif; }

@media (max-width: 760px) {
  .gallery-content { width: calc(100% - 32px); padding: 28px 0 48px; }
  #headline-album { height: 300px; margin-bottom: 22px !important; }
  #headline-album > div:first-child { padding: 18px !important; }
  #albums { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  #albums .img { padding: 7px; }
  #albums .img img { height: 120px !important; }
}

@media (max-width: 380px) {
  #albums { grid-template-columns: 1fr; }
}
