@font-face{font-family:Caviar;src:url("assets/CaviarDreams.woff2") format("woff2");font-display:swap}
*{box-sizing:border-box}
html{background:#020202}
body{margin:0;background:#020202;color:#eee7de;font-family:Georgia,serif}
.page-shell{min-height:100vh;overflow-x:hidden}
.page-artboard{width:min(60%,1497px);margin:0 auto;overflow:hidden;background:#050403;box-shadow:0 0 70px #000}
.site-nav{position:relative;z-index:20;display:flex;width:100%;height:4rem;min-height:4rem;align-items:center;justify-content:space-between;gap:clamp(1rem,2.4vw,2.6rem);padding:0 clamp(1rem,3.4vw,3.6rem);border-bottom:1px solid rgba(174,128,72,.22);background:#030303;font-family:Arial,Helvetica,sans-serif}
.site-brand{display:flex;flex:0 0 auto;align-items:center}
.site-brand img{display:block;width:clamp(8.5rem,14.5vw,10.5rem);height:auto;max-height:3.25rem;object-fit:contain}
.site-menu{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:clamp(.7rem,1.6vw,1.65rem)}
.site-menu a{position:relative;flex:0 0 auto;padding:.55rem 0 .48rem;color:#d8d0c4;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.56rem,.82vw,.7rem);font-weight:400;letter-spacing:.13em;text-decoration:none;text-transform:uppercase;white-space:nowrap}
.site-menu a::after{position:absolute;right:0;bottom:0;left:0;height:1px;background:#b1834d;content:"";opacity:0;transform:scaleX(.35);transition:.16s}
.site-menu a:hover::after,.site-menu a:focus-visible::after,.site-menu .is-current::after{opacity:1;transform:scaleX(1)}
.site-menu .is-current{color:#d6aa76}
.site-menu-group{position:relative;display:flex;align-items:center;align-self:stretch}
.site-menu-group>a{display:flex;align-items:center}
.site-submenu{position:absolute;z-index:50;top:calc(100% - .25rem);left:50%;min-width:15rem;padding:.65rem 0;border:1px solid rgba(177,119,50,.32);background:rgba(3,5,6,.97);box-shadow:0 1rem 2rem rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translate(-50%,-.4rem);transition:.25s}
.site-submenu a{display:block;padding:.8rem 1.2rem;text-align:center}
.site-menu-group:hover .site-submenu,.site-menu-group:focus-within .site-submenu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.hero{width:100%;aspect-ratio:1900/685;overflow:hidden;border-top:1px solid rgba(177,119,50,.38);border-bottom:1px solid rgba(177,119,50,.38)}
.hero img{display:block;width:100%;height:100%;object-fit:cover}
.gallery{padding:clamp(3.7rem,6vw,6rem) clamp(1.2rem,6.2vw,5.8rem) clamp(4.5rem,7vw,7rem);background:radial-gradient(circle at 50% 0,rgba(66,43,21,.32),transparent 44%),#080604}
.gallery-heading{margin:0 auto clamp(2.7rem,4vw,4rem);text-align:center}
.gallery-heading p:first-child{margin:0 0 .8rem;color:#c79a5d;font:400 clamp(.58rem,.78vw,.72rem)/1.4 Caviar,Arial,sans-serif;letter-spacing:.38em;text-transform:uppercase}
.gallery-heading h1{margin:0;font-size:clamp(2.2rem,4.2vw,4rem);font-weight:400;letter-spacing:.08em;text-transform:uppercase}
.gallery-heading span{display:block;width:4.2rem;height:1px;margin:1.25rem auto;background:#b27a3c}
.gallery-heading p:last-child{margin:0;color:#9e9993;font-size:clamp(.9rem,1.3vw,1.12rem);letter-spacing:.08em}
.portrait-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.3vw,1.2rem)}
.portrait{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;padding:0;border:1px solid rgba(199,154,93,.34);background:#090705;cursor:zoom-in}
.portrait[hidden]{display:none}
.portrait img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .6s ease}
.portrait:hover img{transform:scale(1.018);filter:brightness(1.06)}
.portrait span{position:absolute;right:1rem;bottom:1rem;display:grid;width:2.4rem;aspect-ratio:1;place-items:center;border:1px solid rgba(205,153,87,.52);background:rgba(1,3,5,.62);color:#c39155;font:400 .55rem Caviar,Arial,sans-serif}
.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:clamp(2.4rem,4.5vw,4rem) 0 0}
.pagination button{width:34px;height:34px;border:1px solid rgba(188,138,45,.42);border-radius:0;background:#050607;color:#aaa69e;font:11px Arial,sans-serif;cursor:pointer}
.pagination button:hover:not(:disabled),.pagination button:focus-visible,.pagination button.is-current{border-color:rgba(225,187,96,.92);background:rgba(188,138,45,.1);color:#e1bb60}
.pagination button:disabled{opacity:.28;cursor:default}
.footer-banner{position:relative;width:100%;height:auto;aspect-ratio:1900/300;overflow:hidden;border-top:1px solid rgba(177,119,50,.42);border-bottom:1px solid rgba(177,119,50,.38)}
.footer-banner img{display:block;width:100%;height:100%;object-fit:cover}
.footer-banner::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
.footer-banner p{position:absolute;z-index:1;inset:0;display:grid;place-items:center;margin:0;padding:0 2rem;color:#e6d8c7;font-size:clamp(1rem,2.1vw,1.75rem);font-style:italic;letter-spacing:.06em;text-align:center;text-shadow:0 2px 18px #000}
.copyright{display:grid;min-height:86px;place-items:center;padding:1.25rem;background:#020202;color:#756f68;font:400 .58rem Caviar,Arial,sans-serif;letter-spacing:.14em;text-align:center;text-transform:uppercase}
.lightbox{position:fixed;z-index:100;inset:0;display:none;place-items:center;padding:2rem;background:rgba(0,0,0,.94);cursor:zoom-out}
.lightbox.is-open{display:grid}
.lightbox img{max-width:94vw;max-height:92vh;object-fit:contain}
.lightbox button{position:absolute;top:1rem;right:1.5rem;width:3rem;height:3rem;border:1px solid #c7aa89;border-radius:50%;background:#080604;color:#eee;font-size:2rem;cursor:pointer}
@media(max-width:1000px){.page-artboard{width:100%}
.site-nav{height:3.5rem;min-height:3.5rem;gap:.8rem;padding:0 .75rem}
.site-brand img{width:7.4rem;max-height:2.8rem}
.site-menu{flex:1;justify-content:flex-start;gap:1rem;overflow-x:auto;scrollbar-width:none}
.site-submenu{display:none}
.portrait-grid{grid-template-columns:1fr}
.footer-banner p{font-size:1rem}
}
