
.gallery-hero { padding: clamp(5rem,10vw,8rem) var(--spacing-xl); background: var(--color-surface-tint); }
.gallery-hero-inner, .gallery-section, .gallery-cta > div { max-width: var(--content-max-width); margin: 0 auto; }
.gallery-kicker { margin-bottom: var(--spacing-md); color: var(--color-primary); font-size: var(--font-size-sm); font-weight: 700; letter-spacing: .12em; }
.gallery-hero p:last-child { max-width: 48rem; margin-top: var(--spacing-lg); font-size: var(--font-size-lg); color: var(--color-on-surface-secondary); }
.gallery-section { padding: var(--spacing-4xl) var(--spacing-xl); display: grid; }
.gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--spacing-lg); }
.gallery-card { overflow: hidden; margin: 0; border-radius: var(--border-radius-lg); background: var(--color-surface-elevated); box-shadow: var(--shadow-level-1); }
.gallery-card img { width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
.gallery-card figcaption { padding: var(--spacing-md); font-weight: 600; }
.gallery-cta { padding: 0 var(--spacing-xl) var(--spacing-4xl); }
.gallery-cta > div { padding: var(--spacing-2xl); border-radius: var(--border-radius-lg); background: var(--color-surface-tint); }
.gallery-cta p { margin: var(--spacing-md) 0 var(--spacing-lg); }
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}.gallery-section,.gallery-hero,.gallery-cta{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}}
