:root{--black:#050505;--ink:#f2f2f2;--muted:#898989;--line:#242424;--serif:"Cormorant Garamond",Georgia,serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--ink);font-family:var(--sans);font-weight:300;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.cursor-dot,.cursor-light{position:fixed;pointer-events:none;z-index:10000;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot{width:5px;height:5px;background:white}.cursor-light{width:220px;height:220px;background:radial-gradient(circle,rgba(255,255,255,.07),transparent 65%);transition:width .25s,height .25s;mix-blend-mode:screen}.nav{position:fixed;z-index:100;top:0;left:0;width:100%;height:82px;padding:20px 4vw;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#050505c7,transparent);opacity:0;transform:translateY(-20px);transition:.6s}.nav.visible{opacity:1;transform:none}.brand img{width:32px;height:40px;object-fit:cover;filter:grayscale(1) brightness(2)}.nav-links{display:flex;gap:38px}.nav-links a{font-size:10px;text-transform:uppercase;letter-spacing:.28em;color:#aaa;transition:.3s}.nav-links a:hover{color:#fff}.hero{position:relative;width:100%;height:100vh;min-height:650px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,transparent 22%,#050505 78%);pointer-events:none}.ambient{position:absolute;border-radius:50%;filter:blur(90px);opacity:.12}.ambient-one{width:500px;height:500px;background:#a46b1e;right:-180px;top:15%}.ambient-two{width:400px;height:400px;background:#68745d;left:-200px;bottom:0}.hero-copy{position:relative;z-index:10;text-align:center;text-shadow:0 4px 25px #000}.hero h1,.about h2,.gallery-head h2,.contact h2{font-family:var(--serif);font-weight:300;margin:0}.hero h1{font-size:clamp(4rem,8vw,8.6rem);letter-spacing:-.025em}.hero-copy p,.role{font-size:10px;text-transform:uppercase;letter-spacing:.55em;color:#aaa;margin-top:22px}.suspended{position:absolute;z-index:2;padding:9px;background:#0a0a0a;border:1px solid #292929;box-shadow:0 25px 70px #000;transform-origin:50% -80px;animation:sway 8s ease-in-out infinite}.suspended img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.78);transition:opacity 1.4s,filter .5s}.suspended .wire{position:absolute;width:1px;height:50vh;left:50%;bottom:100%;background:linear-gradient(transparent,#2d2d2d)}.frame-a{width:23vw;height:36vh;left:5vw;top:17%;transform:rotate(-2deg);animation-delay:-1s}.frame-b{width:19vw;height:31vh;left:19vw;bottom:7%;transform:rotate(2deg);animation-delay:-3s}.frame-c{width:20vw;height:32vh;right:18vw;top:9%;transform:rotate(1.5deg);animation-delay:-5s}.frame-d{width:25vw;height:41vh;right:3vw;bottom:4%;transform:rotate(-1deg);animation-delay:-7s}@keyframes sway{0%,100%{translate:0 0;rotate:-.5deg}50%{translate:0 10px;rotate:.65deg}}.scroll-cue{position:absolute;z-index:12;bottom:24px;display:flex;flex-direction:column;align-items:center;gap:10px}.scroll-cue span{font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:#777}.scroll-cue i{width:1px;height:52px;background:linear-gradient(#777,transparent)}.about,.gallery-section,.contact{padding:150px max(4vw,22px);position:relative}.about{text-align:center;min-height:1100px;display:flex;flex-direction:column;align-items:center;justify-content:center}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.45em;color:#777;margin-bottom:38px}.about h2{font-size:clamp(5rem,12vw,12rem);line-height:.75;letter-spacing:-.03em}.about-copy{max-width:800px;margin:65px auto 80px;color:#aaa;font-family:var(--serif);font-size:clamp(1.2rem,1.8vw,1.55rem);line-height:1.75}.about-copy p{margin:0 0 24px}.stats{display:grid;grid-template-columns:repeat(3,1fr);width:min(850px,100%);border-top:1px solid var(--line);padding-top:40px}.stats div{display:flex;flex-direction:column;gap:8px}.stats strong{font-family:var(--serif);font-weight:300;font-size:3.3rem}.stats span{font-size:9px;text-transform:uppercase;letter-spacing:.25em;color:#777}.gallery-head{text-align:center;max-width:800px;margin:0 auto 90px}.gallery-head h2,.contact h2{font-size:clamp(3.5rem,6vw,6rem)}.gallery-head p,.contact-title>p{font-family:var(--serif);color:#8d8d8d;font-size:1.2rem}.filters{margin-top:38px;display:flex;justify-content:center;gap:10px}.filters button{border:1px solid #333;background:transparent;color:#888;border-radius:30px;padding:10px 20px;cursor:pointer;font-size:10px;letter-spacing:.16em;text-transform:uppercase;transition:.35s}.filters button.active,.filters button:hover{background:#eee;color:#111;border-color:#eee}.gallery{columns:3;column-gap:30px;max-width:1200px;margin:auto}.gallery-card{display:block;position:relative;margin:0 0 30px;padding:12px;background:#0a0a0a;border:1px solid #222;box-shadow:0 28px 55px #000;overflow:hidden;cursor:pointer;break-inside:avoid;opacity:.2;filter:blur(7px);transform:scale(.97) translateY(30px);transition:opacity .9s,filter .9s,transform .9s,border-color .3s}.gallery-card.in-view{opacity:1;filter:none;transform:none}.gallery-card:hover{border-color:#555}.gallery-card:before{content:"";position:absolute;top:-90px;left:50%;width:1px;height:95px;background:#343434}.gallery-card img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;transition:transform 1s,filter .5s}.gallery-card:hover img{transform:scale(1.035)}.gallery.bw img{filter:grayscale(1) contrast(1.08)}.contact{min-height:900px}.contact-title{text-align:center;margin-bottom:95px}.contact-grid{max-width:1050px;margin:auto;display:grid;grid-template-columns:1fr 1.25fr;gap:12vw}.details{display:flex;flex-direction:column}.details small{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#666;margin:0 0 10px}.details strong{font-family:var(--serif);font-size:1.7rem;font-weight:300;margin-bottom:48px}.details ul{list-style:none;padding:0;margin:0 0 48px;color:#999;font-family:var(--serif);font-size:1.2rem;line-height:1.8}.contact-form label{display:block;color:#777;font-size:9px;text-transform:uppercase;letter-spacing:.25em;margin-bottom:28px}.contact-form input,.contact-form textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #303030;color:#eee;padding:14px 0;outline:none;letter-spacing:0;text-transform:none;font-size:15px;transition:border .3s}.contact-form textarea{height:110px;resize:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#aaa}.contact-form button{background:#eee;color:#111;border:0;padding:16px 24px;width:100%;text-transform:uppercase;letter-spacing:.2em;font-size:10px;cursor:pointer;display:flex;justify-content:space-between;transition:.3s}.contact-form button:hover{background:#fff;box-shadow:0 0 40px #ffffff32}.form-status{font-size:12px;color:#aaa;min-height:20px}.flash{position:absolute;inset:0;background:white;opacity:0;pointer-events:none;z-index:9}.flash.fire{animation:flash .8s}@keyframes flash{0%{opacity:0}12%{opacity:1}100%{opacity:0}}footer{padding:50px 4vw;border-top:1px solid #1b1b1b;display:flex;justify-content:space-between;align-items:center;color:#555;font-size:10px}.footer-brand{display:flex;align-items:center;gap:14px;color:#ddd;font-family:var(--serif);font-size:1.1rem}.footer-brand img{width:32px;height:40px;object-fit:cover;filter:grayscale(1) brightness(2)}.footer-brand span{display:flex;flex-direction:column}.footer-brand small{text-transform:uppercase;letter-spacing:.3em;font-family:var(--sans);font-size:7px;color:#666}.reveal{opacity:0;transform:translateY(35px);transition:opacity 1s,transform 1s}.reveal.in-view{opacity:1;transform:none}.lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:4vw;background:#020202eb;color:white;overflow:hidden}.lightbox[open]{display:flex;align-items:center;justify-content:center;animation:darkIn .45s}.lightbox::backdrop{background:#000}.lightbox img{max-width:82vw;max-height:80vh;object-fit:contain;box-shadow:0 0 80px #000}.lightbox button{position:absolute;background:none;border:0;color:#aaa;cursor:pointer;font-size:28px}.close{right:3vw;top:3vh}.prev{left:3vw;top:50%}.next{right:3vw;top:50%}.lightbox-cta{position:absolute;bottom:3vh;font-size:9px;letter-spacing:.25em;text-transform:uppercase;border-bottom:1px solid #777;padding-bottom:6px}@keyframes darkIn{from{opacity:0}to{opacity:1}}@media(max-width:800px){.cursor-dot,.cursor-light{display:none}.nav{height:68px}.nav-links{gap:18px}.hero{min-height:600px}.frame-a{width:42vw;height:30vh;left:-9vw}.frame-b{width:38vw;height:25vh;left:4vw;bottom:4%}.frame-c{width:36vw;height:25vh;right:-5vw}.frame-d{width:43vw;height:31vh;right:-8vw}.hero h1{font-size:clamp(3.6rem,18vw,6rem)}.about,.gallery-section,.contact{padding:110px 20px}.about{min-height:auto}.about h2{font-size:20vw}.about-copy{text-align:left}.stats{gap:6px}.stats strong{font-size:2.3rem}.gallery{columns:2;column-gap:14px}.gallery-card{margin-bottom:14px;padding:6px}.contact-grid{grid-template-columns:1fr;gap:60px}footer{align-items:flex-start;gap:25px;flex-direction:column}}@media(max-width:480px){.nav-links a{font-size:8px}.gallery{columns:1}.stats span{font-size:7px}.hero-copy p{letter-spacing:.32em}.lightbox img{max-width:92vw}}
