*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--black: #0a0a0a;--white: #f5f2ed;--accent: #c8b89a;--mid: #888072;--nav-h: 64px}html{scroll-behavior:smooth}body{background:var(--black);color:var(--white);font-family:Lato,sans-serif;font-weight:300;cursor:crosshair;overflow-x:hidden}.section{padding:6rem 3rem}.section-label{font-size:.6rem;letter-spacing:.35em;text-transform:uppercase;color:var(--accent);margin-bottom:3rem;display:flex;align-items:center;gap:1.5rem}.section-label:after{content:"";flex:1;height:1px;background:#c8b89a33;max-width:80px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{0%,to{transform:scale(1) translateY(0);opacity:.6}50%{transform:scale(1.1) translateY(20px);opacity:1}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top;opacity:1}50%{transform:scaleY(1);transform-origin:top;opacity:1}51%{transform:scaleY(1);transform-origin:bottom;opacity:1}to{transform:scaleY(0);transform-origin:bottom;opacity:0}}@media (max-width: 768px){.section,.clients{padding:4rem 1.5rem}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.cursor-dot{width:5px;height:5px;background:var(--accent);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transition:transform .15s ease;mix-blend-mode:difference}.cursor-ring{width:30px;height:30px;border:1px solid rgba(200,184,154,.4);border-radius:50%;position:fixed;pointer-events:none;z-index:9998;transition:all .2s ease}@media (max-width: 768px){.cursor-dot,.cursor-ring{display:none}}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;height:var(--nav-h)}.nav-logo{font-family:Barlow Condensed,sans-serif;font-weight:700;font-size:1.25rem;letter-spacing:.38em;text-transform:uppercase;font-stretch:expanded;color:var(--white);text-decoration:none;opacity:0;animation:fadeIn 1.2s ease forwards .3s}.nav-links{display:flex;gap:2.5rem;list-style:none;opacity:0;animation:fadeIn 1.2s ease forwards .5s}.nav-links a{font-family:Lato,sans-serif;font-weight:300;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);text-decoration:none;transition:color .3s ease}.nav-links a:hover{color:var(--white)}@media (max-width: 768px){nav{padding:0 1.5rem}.nav-links{display:none}}.works{background:#080808;padding:6rem 3rem;padding-top:calc(var(--nav-h) + 2rem)}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff0d}.work-item{position:relative;overflow:hidden;cursor:pointer;background:#0a0a0a;text-decoration:none;display:block}.work-placeholder{width:100%;padding-bottom:65%;position:relative;overflow:hidden}.work-placeholder-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:#111;transition:transform .7s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center}.work-thumb{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease,transform .7s cubic-bezier(.16,1,.3,1)}.work-thumb.loaded{opacity:1}.work-item:hover .work-thumb{transform:scale(1.04)}.work-embed{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;border:none;opacity:0;transition:opacity .6s ease;pointer-events:none}.work-embed.visible{opacity:1}.work-thumb.faded{opacity:0}.work-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(10,10,10,.9) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;opacity:0;transition:opacity .4s ease}.work-item:hover .work-overlay{opacity:1}.work-title{font-family:Cormorant Garamond,serif;font-weight:300;font-size:1.3rem;color:var(--white);margin-bottom:.3rem}.work-meta{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.frame-deco{position:absolute;top:12px;left:12px;right:12px;bottom:12px;border:1px solid rgba(200,184,154,.08);pointer-events:none;transition:border-color .4s ease}.work-item:hover .frame-deco{border-color:#c8b89a2e}@media (max-width: 768px){.works{padding:4rem 1.5rem}.works-grid{grid-template-columns:1fr 1fr}.work-item{grid-column:span 1!important;grid-row:span 1!important}}.about{border-top:1px solid rgba(255,255,255,.05);padding:0 3rem}.about-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;cursor:pointer;padding:1rem 0;text-align:left}.about-icon{font-family:Lato,sans-serif;font-weight:300;font-size:1.2rem;color:var(--accent);transition:transform .4s cubic-bezier(.16,1,.3,1);line-height:1}.about-icon.open{transform:rotate(45deg)}.about-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.16,1,.3,1)}.about-body.open{grid-template-rows:1fr}.about-inner{overflow:hidden}.about-text{font-family:Cormorant Garamond,serif;font-weight:300;font-size:1.05rem;line-height:1.6;color:#e0d8c8d9;max-width:600px;margin:0 0 .75rem}.about-text:last-child{margin-bottom:1.5rem}@media (max-width: 768px){.about{padding:0 1.5rem}.about-text{font-size:1rem}}.clients{padding:2rem 3rem 4rem;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.clients-list{display:flex;flex-wrap:wrap;gap:3rem 5rem;align-items:center;margin-top:3rem}.logo-item{display:flex;align-items:center;opacity:.7;transition:opacity .3s ease;cursor:default}.logo-item:hover{opacity:1}.logo-item:hover img{opacity:.75!important}.logo-item:hover svg text,.logo-item:hover svg path,.logo-item:hover svg circle,.logo-item:hover svg rect,.logo-item:hover svg polygon,.logo-item:hover svg line{fill:#c8b89abf;stroke:#c8b89abf;transition:fill .3s ease,stroke .3s ease}.contact-row{border-top:1px solid rgba(255,255,255,.06);padding-top:1.5rem}.contact-row-label{font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--mid);margin-bottom:.6rem}.contact-row-val{font-family:Lato,sans-serif;font-weight:300;font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--white);text-decoration:none;transition:color .3s ease}.contact-row-val:hover{color:var(--accent)}footer{padding:2rem 3rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.05)}.footer-copy{font-size:.65rem;letter-spacing:.15em;color:#88807280}@media (max-width: 768px){footer{flex-direction:column;gap:1rem;padding:2rem 1.5rem}}
