.hero>img{left:auto;right:0;width:57%;object-position:center 48%}
.hero>.hero-logo{inset:auto;top:12%;right:4vw;width:clamp(170px,18vw,260px);height:auto;object-fit:contain;filter:drop-shadow(0 16px 28px rgba(0,0,0,.55));border-radius:22px}
.overlay{background:linear-gradient(90deg,#06000c 0%,rgba(6,0,12,.98) 35%,rgba(6,0,12,.45) 62%,rgba(6,0,12,.05) 100%),linear-gradient(0deg,rgba(6,0,12,.7),transparent 50%)}
.gallery{padding:8rem 7vw;background:#0d0614}
.gallery-head{display:flex;justify-content:space-between;align-items:end}
.gallery h2{font:400 clamp(3.8rem,7vw,7rem)/.78 'Archivo Black';letter-spacing:-.085em;margin:1.5rem 0;text-transform:uppercase;text-align:right}
.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:12px;margin-top:4rem}
.photo-grid figure{margin:0;overflow:hidden;background:#1b1024}
.photo-grid .tall{grid-row:span 2}
.photo-grid .wide{grid-column:span 2}
.photo-grid img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.95) contrast(1.05);transition:transform .45s,filter .45s}
.photo-grid figure:hover img{transform:scale(1.05);filter:saturate(1.2) contrast(1.08)}
.genres{grid-template-columns:repeat(5,1fr)}
.genres h3{font-size:clamp(1.15rem,1.55vw,1.7rem)}
.contact-buttons a{border:2px solid var(--black);background:var(--black);color:var(--white);padding:1rem 2rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s,transform .2s}
.contact-buttons a:hover{background:var(--lime);color:var(--black);transform:translateY(-3px)}
@media(max-width:850px){.hero>img{width:100%;object-position:center 42%}.hero>.hero-logo{top:10%;right:4vw;width:145px}.overlay{background:linear-gradient(90deg,rgba(6,0,12,.88),rgba(6,0,12,.25)),linear-gradient(0deg,rgba(6,0,12,.9),transparent 65%)}.gallery{padding:6rem 6vw}.gallery-head{display:block}.gallery h2{text-align:left}.genres{grid-template-columns:repeat(2,1fr)}.genres>div:nth-child(4){border-right:0}.genres>div:nth-child(5){border-top:1px solid #4a3f53}.photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.photo-grid .wide{grid-column:span 2}}
@media(max-width:540px){.hero>.hero-logo{width:118px;top:11%}.genres{grid-template-columns:1fr}.genres>div:nth-child(5){border-top:1px solid #4a3f53}.photo-grid{grid-auto-rows:180px}.contact-buttons a{width:100%}}
