@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');:root{--bg:#101010;--fg:#f4f2ee;--muted:#aaa;--accent:#d9fd57}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#101010;position:relative;z-index:2}.logo{font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;font-weight:900;letter-spacing:-.02em}.dot{color:var(--accent)}nav{display:flex;gap:32px}nav a,.eyebrow,.cta,.filters button,.text-link,.social,footer{font-size:11px;font-weight:700;letter-spacing:.16em}nav a:hover,.social a:hover{color:var(--accent)}.hero{height:min(760px,85vh);min-height:540px;position:relative;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:brightness(.7)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.13) 80%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 55%)}.hero-copy{position:absolute;left:7%;bottom:14%;max-width:850px}.eyebrow{color:var(--accent);margin:0 0 26px}.hero h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;line-height:.87;letter-spacing:-.025em;margin:0}.hero h1{font-size:clamp(76px,11vw,170px)}.hero-copy>p:not(.eyebrow){font-size:17px;color:#ddd;margin:25px 0 35px}.cta{display:inline-flex;gap:65px;background:var(--accent);color:#111;padding:19px 22px}.cta:hover{background:white}.hero-side{position:absolute;right:3%;bottom:10%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.22em}.intro,.about,.contact{padding:110px 7%}.intro-line{display:flex;justify-content:space-between;gap:30px;align-items:end}.intro h2,.about h2,.contact h2{font-size:clamp(65px,8vw,122px)}.intro-line p{max-width:350px;color:#bbb;line-height:1.8}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:55px 0 26px}.filters button{background:transparent;color:#aaa;border:1px solid #484848;padding:13px 17px;cursor:pointer}.filters button.active,.filters button:hover{background:var(--accent);color:#111;border-color:var(--accent)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.photo{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;background:#222}.photo:nth-child(4n+1){aspect-ratio:4/5}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo:hover img{transform:scale(1.045)}.photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75))}.photo span{position:absolute;z-index:1;bottom:18px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:end}.photo strong{font-family:'Barlow Condensed';font-size:28px;text-transform:uppercase}.photo small{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.photo.hidden{display:none}.about{background:#1b1b1b}.about>div{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-copy{max-width:490px;color:#ccc;line-height:1.9;font-size:16px}.about-copy p:first-child{margin-top:0}.text-link{display:inline-block;margin-top:22px;color:var(--accent)}.contact{padding-bottom:125px}.contact h2{font-size:clamp(70px,10vw,150px)}.contact em{font-style:normal;color:var(--accent)}.contact>p:not(.eyebrow){color:#aaa;margin:36px 0 15px}.mail{font-family:'Barlow Condensed';font-size:clamp(26px,4vw,55px);font-weight:700;overflow-wrap:anywhere}.mail:hover{color:var(--accent)}.social{display:flex;justify-content:space-between;gap:15px;margin-top:110px;color:#aaa}footer{border-top:1px solid #333;display:flex;justify-content:space-between;padding:25px 7%;gap:20px;color:#999}@media(max-width:760px){.nav{height:65px;padding:0 5%}.logo{font-size:25px}nav{gap:15px}nav a{font-size:9px}.hero{min-height:560px;height:78vh}.hero-copy{left:6%;bottom:12%}.hero h1{font-size:clamp(65px,15vw,100px)}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-side{display:none}.intro,.about,.contact{padding:70px 6%}.intro-line{display:block}.intro-line p{margin-top:24px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo,.photo:nth-child(4n+1){aspect-ratio:3/4}.photo span{bottom:10px;left:10px;right:10px}.photo strong{font-size:20px}.photo small{font-size:8px}.about>div{grid-template-columns:1fr;gap:35px}.social{margin-top:75px;flex-direction:column}footer{font-size:9px}}@media(max-width:430px){.gallery{grid-template-columns:1fr}.photo,.photo:nth-child(4n+1){aspect-ratio:4/3}}
.instagram-top{background:#171717;text-align:center;padding:12px 15px;font:700 15px Arial,sans-serif;letter-spacing:.06em}.instagram-top a{color:#fff;text-decoration:none}.instagram-top a:hover{text-decoration:underline}

/* Artistic gallery revision: consistent grid tracks prevent the empty row gaps. */
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(180px,20vw,310px);gap:12px;grid-auto-flow:dense;align-items:stretch}
.gallery .photo,.gallery .photo:nth-child(4n+1){aspect-ratio:auto;height:100%;min-height:0}
.gallery .photo:first-child:not(.hidden){grid-column:span 2;grid-row:span 2}
.gallery .photo img{display:block;width:100%;height:100%;object-fit:cover}
.gallery .photo:first-child img{object-position:center 35%}
@media(max-width:800px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(145px,30vw,260px);gap:8px}.gallery .photo:first-child:not(.hidden){grid-column:span 2;grid-row:span 2}}
@media(max-width:520px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px;gap:7px}.gallery .photo:first-child:not(.hidden){grid-column:span 2;grid-row:span 2}.gallery .photo strong{font-size:18px}}
