:root{--ink:#171713;--paper:#f1efe9;--cream:#e7e0d5;--accent:#a75d3d;--line:rgba(23,23,19,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;height:88px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;color:#fff;mix-blend-mode:difference}.logo{font:400 25px/1 "Italiana",serif;letter-spacing:.02em}.logo span{font:400 10px/1 "DM Sans";letter-spacing:.22em;margin-left:5px}.nav{display:flex;gap:36px;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:currentColor;transition:.3s}.nav a:hover:after{width:100%}.menu-button{display:none;border:0;background:none;padding:10px}.menu-button i{display:block;width:24px;height:1px;background:#fff;margin:6px}.hero{height:100svh;min-height:680px;position:relative;color:#fff;overflow:hidden;background:#59574f}.hero-image{position:absolute;inset:0;background:linear-gradient(135deg,#8f7963,#343a34);background-size:cover;background-position:center;transform:scale(1.02);animation:breathe 14s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,11,.62),rgba(11,13,11,.04) 65%),linear-gradient(0deg,rgba(11,13,11,.35),transparent 45%)}.hero-content{position:absolute;left:8vw;bottom:15vh;max-width:750px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.26em;margin:0 0 28px}.eyebrow.dark{color:var(--accent)}h1,h2{font:400 1em/1.02 "Italiana",serif;letter-spacing:-.02em;margin:0}.hero h1{font-size:clamp(64px,8.8vw,138px);max-width:900px}.hero-copy{font-size:15px;line-height:1.65;max-width:420px;margin:30px 0}.text-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--ink);padding:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.14em}.text-link.light{border-color:#fff}.text-link span{font-size:18px}.scroll-mark{position:absolute;right:4vw;bottom:6vh;font-size:9px;text-transform:uppercase;letter-spacing:.2em;writing-mode:vertical-rl}.scroll-mark span{display:inline-block;height:48px;width:1px;background:#fff;margin-top:14px}.section{padding:130px 8vw}.section-index{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#777;margin:0}.intro{display:grid;grid-template-columns:1fr 3fr 1.2fr;gap:5vw;align-items:start}.intro h2{font-size:clamp(42px,5.4vw,84px);max-width:950px}.intro-aside{font-size:14px;line-height:1.8;margin-top:90px}.about{background:var(--cream);display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;align-items:center}.about-photo{aspect-ratio:4/5;background:#c7b5a2;overflow:hidden}.portrait-placeholder{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 58% 32%,#d8c5b3 0 14%,transparent 15%),linear-gradient(150deg,#827566,#cbb9a7 48%,#77665a);filter:saturate(.7)}.portrait-placeholder span{font:90px "Italiana";color:rgba(255,255,255,.35)}.about h2{font-size:clamp(50px,6vw,92px);margin:45px 0}.about-copy>p:not(.section-index){font-size:15px;line-height:1.9;max-width:540px}.about .text-link{margin-top:35px}.work-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:80px}.work-head h2{font-size:clamp(60px,7vw,108px);margin-top:38px}.work-head h2 em,.quote em{font-weight:400;color:var(--accent)}.work-head>p{max-width:310px;font-size:14px;line-height:1.7}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:5vw 2vw}.project{grid-column:span 7}.project:nth-child(even){grid-column:6/span 7;margin-top:100px}.project-image{aspect-ratio:4/3;background-size:cover;background-position:center;overflow:hidden;position:relative}.project-image:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,var(--c1),var(--c2));transition:transform .8s}.project:hover .project-image:before{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:18px}.project-meta h3{font:30px "Italiana";margin:0}.project-meta p{font-size:10px;text-transform:uppercase;letter-spacing:.17em}.quote{background:var(--ink);color:var(--paper);text-align:center;padding-top:170px;padding-bottom:170px}.quote p{font:400 clamp(38px,5.5vw,85px)/1.12 "Italiana";margin:0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact h2{font-size:clamp(62px,7vw,110px);margin:50px 0 35px}.contact-lead>p:not(.section-index){font-size:15px;line-height:1.8;max-width:440px}.mail-link{font:34px "Italiana";display:inline-block;margin-top:30px;border-bottom:1px solid}.contact-form{padding-top:55px}.contact-form label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.18em;margin-bottom:28px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:14px 0;font:300 16px "DM Sans";outline:none;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--accent)}.submit{border:0;background:var(--ink);color:#fff;padding:18px 26px;font:500 11px "DM Sans";text-transform:uppercase;letter-spacing:.16em;cursor:pointer}.submit span{margin-left:35px}.form-status{font-size:13px;color:var(--accent)}footer{padding:35px 4vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.15em}footer div{display:flex;gap:28px}.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s}.reveal.visible{opacity:1;transform:none}@keyframes breathe{from{transform:scale(1.08)}to{transform:scale(1.02)}}
@media(max-width:800px){.site-header{height:70px}.nav{position:fixed;inset:0;background:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;font:40px "Italiana";transform:translateY(-100%);transition:.5s}.nav.open{transform:none}.menu-button{display:block;z-index:2}.hero-content{left:7vw;right:7vw;bottom:13vh}.hero h1{font-size:17vw}.scroll-mark{display:none}.section{padding:85px 7vw}.intro{grid-template-columns:1fr}.intro-aside{margin-top:15px}.about{grid-template-columns:1fr}.about h2{margin:35px 0}.work-head{display:block}.work-head>p{margin-top:30px}.gallery{display:block}.project,.project:nth-child(even){margin:0 0 70px}.contact{grid-template-columns:1fr}.contact-form{padding-top:0}.mail-link{font-size:25px}footer{align-items:flex-start;gap:30px;flex-wrap:wrap}}
.project-image.has-image:before{background:linear-gradient(0deg,rgba(16,16,13,.14),transparent 55%)}
.project-image{box-shadow:0 18px 44px rgba(30,28,23,.12);isolation:isolate}
.project-image:after{content:"";position:absolute;inset:13px;border:1px solid rgba(247,244,237,.72);pointer-events:none;z-index:2;transition:inset .45s ease,border-color .45s ease}
.project:hover .project-image:after{inset:18px;border-color:rgba(247,244,237,.9)}
.project-meta{position:relative;padding-left:4px;padding-right:4px}
.project-meta:before{content:"";position:absolute;top:-19px;left:0;width:42px;height:1px;background:var(--accent)}
.about-photo{position:relative;box-shadow:0 22px 55px rgba(30,28,23,.12)}
.about-photo:after{content:"";position:absolute;inset:15px;border:1px solid rgba(247,244,237,.66);pointer-events:none}
.about-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.about-photo>img.loaded{display:block}.about-photo>img.loaded+.portrait-placeholder{display:none}
.hero-image{background-image:var(--hero-desktop)}
.logo{display:inline-flex;align-items:center}.logo>img{display:none;max-width:180px;max-height:54px;width:auto;height:auto;object-fit:contain}.logo>img.loaded{display:block}.logo>.logo-text.hidden{display:none}.logo>.logo-text{font:400 25px/1 "Italiana",serif;margin-left:0;letter-spacing:.02em}.logo>.logo-text small{font:400 10px/1 "DM Sans";letter-spacing:.22em;margin-left:5px}
@media(max-width:800px){.hero-image{background-image:var(--hero-mobile,var(--hero-desktop));background-size:contain;background-repeat:no-repeat;background-color:#292b27}.hero-image.has-mobile-image{background-size:cover}.logo>img{max-width:132px;max-height:40px}}
.privacy{display:flex!important;align-items:center;gap:10px;text-transform:none!important;letter-spacing:0!important}.privacy input{width:auto!important;margin:0!important}
.site-header.custom-logo{mix-blend-mode:normal}.site-header.custom-logo .logo>img{filter:brightness(0) invert(1) drop-shadow(0 2px 5px rgba(0,0,0,.32));opacity:1}.site-header.custom-logo .nav,.site-header.custom-logo .menu-button{filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}footer .logo>img{filter:brightness(0);opacity:.9}
