.atmosphere { scroll-margin-top: 110px; max-width: 1240px; margin: 0 auto; padding: 0 32px 110px; }
.atmosphere h2 { margin: 0 0 34px; text-align: center; }
.atmosphere__viewport { height: clamp(420px, 52vw, 660px); aspect-ratio: auto; background: #0c0a09; }
.atmosphere__viewport .brunch-carousel__track { height: 100%; }
.atmosphere__viewport .brunch-carousel__slide { height: 100%; }
.atmosphere__viewport .brunch-carousel__slide img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; }
.atmosphere :focus-visible { outline: 2px solid #d4af37; outline-offset: 4px; }
@media (max-width: 640px) {
    .atmosphere { padding: 0 20px 70px; }
    .atmosphere h2 { margin-bottom: 24px; }
    .atmosphere__viewport { height: min(70vh, 540px); min-height: 320px; }
}
