.gallery-page{display:block}

.gallery-hero{position:relative;height:80vh;display:flex;align-items:center}
.gallery-hero .hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gallery-hero::after{content:"";position:absolute;inset:0;}
.hero-panel{position:relative;max-width:520px;margin-left:clamp(16px,6vw,80px);display:flex;flex-direction:column;gap:16px}

.gallery-philosophy .text-block{max-width:680px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:24px}

.gallery-split .split-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.gallery-split .text-column{display:flex;flex-direction:column;gap:16px;max-width:520px}
.gallery-split .image-frame{width:100%;border:1px solid var(--color-accent-primary);box-shadow:0 0 12px var(--color-accent-primary)}
.gallery-split.reverse .split-layout{grid-template-columns:1fr 1fr}
.gallery-split.reverse .text-column{order:2}
.gallery-split.reverse .image-frame{order:1}

.gallery-detail .detail-inner{display:flex;flex-direction:column;gap:32px;align-items:center}
.gallery-detail .image-frame{max-width:420px;border:1px solid var(--color-accent-primary)}
.gallery-detail .text-block{max-width:640px;text-align:center;display:flex;flex-direction:column;gap:24px}

.gallery-summary .text-block{max-width:720px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:24px}

.gallery-cta .cta-panel{max-width:520px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:16px}

.gallery-footer-note .footer-text{text-align:center;max-width:900px;margin-inline:auto;color:var(--color-text-secondary)}

@media (max-width:900px){
.gallery-split .split-layout{grid-template-columns:1fr}
.gallery-split.reverse .text-column,
.gallery-split.reverse .image-frame{order:initial}
.hero-panel{margin:0 auto;padding:16px}
.gallery-hero{height:auto;min-height:70vh}
}
