:root{--ink:#171512;--paper:#f1ede4;--accent:#b64a2e;--line:rgba(23,21,18,.22);--serif:"Italiana",Georgia,serif;--logo-serif:"DejaVu Serif",serif;--sans:"DM Sans",Arial,sans-serif}@font-face{font-family:"DejaVu Serif";src:url("assets/dejavu-serif.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 32px;color:white;mix-blend-mode:difference}.site-title{margin:0;font:inherit}.brand{display:flex;align-items:center;gap:12px;color:inherit}.brand-symbol{display:block;width:40px;height:40px;flex:0 0 40px;fill:currentColor}.brand-wordmark{display:flex;flex-direction:column;line-height:.88}.brand-wordmark>span{font:400 1.32rem/1 var(--logo-serif);letter-spacing:-.025em;text-transform:none;white-space:nowrap}.brand small{margin-top:7px;font:600 .48rem/1 var(--sans);letter-spacing:.38em;text-transform:uppercase}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.menu-toggle{display:none;border:0;background:none;color:inherit;font:inherit}.hero{height:100svh;min-height:620px;position:relative;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;animation:slowZoom 18s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 65%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 50%)}.hero-copy{position:absolute;left:7vw;bottom:9vh;z-index:1}.eyebrow,.section-index{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem}.hero-title,.intro h2,.section-heading h2,.about h2,.contact h2{font:400 clamp(3.1rem,8vw,8.4rem)/.87 var(--serif);letter-spacing:-.035em;margin:22px 0}.hero-title em,.intro h2 em,.about h2 em,.contact h2 em{font-weight:400}.circle-link{display:flex;align-items:center;justify-content:center;gap:11px;width:110px;height:110px;border:1px solid rgba(255,255,255,.6);border-radius:50%;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-top:34px;transition:.3s}.circle-link:hover{background:white;color:var(--ink);transform:rotate(-8deg)}.circle-link b{font-size:1.1rem}.hero-side{position:absolute;right:32px;bottom:32px;text-align:right;text-transform:uppercase;font-size:.68rem;letter-spacing:.15em;line-height:1.6}.intro{padding:12vw 7vw;display:grid;grid-template-columns:1fr 4fr;gap:4vw}.intro h2{grid-column:2;font-size:clamp(3rem,6vw,7rem);max-width:1100px}.intro-text{grid-column:2;display:grid;grid-template-columns:2fr 1fr;gap:8vw;max-width:900px;margin-left:auto}.intro-text p,.about-copy>p{font-size:clamp(1.08rem,1.55vw,1.4rem);line-height:1.7}.text-link{align-self:end;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;border-bottom:1px solid;padding-bottom:10px}.stories{background:var(--ink);color:var(--paper);padding:10vw 4vw}.section-heading{display:grid;grid-template-columns:1fr 3fr;margin:0 3vw 8vw}.section-heading h2{font-size:clamp(3rem,6.4vw,7rem);margin-top:0}.services{padding:11vw 7vw}.service-list{margin-top:7vw;border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:80px 1.1fr 1fr;align-items:start;gap:3vw;padding:34px 0;border-bottom:1px solid var(--line)}.service-list span{font-size:.72rem}.service-list h3{font:clamp(2.2rem,5vw,5.5rem)/.9 var(--serif);margin:0}.service-list p{max-width:460px;line-height:1.7;margin:0}.about{display:grid;grid-template-columns:1.1fr 1fr;min-height:90vh;background:#d8cfc0}.about-image img{min-height:760px;filter:saturate(.75)}.about-copy{padding:9vw 7vw}.about h2{font-size:clamp(4rem,7vw,7rem)}.contact{padding:11vw 7vw;background:#b64a2e;color:#f8f2e8}.contact h2{font-size:clamp(4rem,8vw,8rem)}.contact-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:10vw;margin-top:7vw}.contact form{display:grid;gap:28px}.contact label{display:grid;gap:10px;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.contact input,.contact textarea{border:0;border-bottom:1px solid rgba(255,255,255,.55);background:none;border-radius:0;padding:13px 0;color:white;font:1.08rem var(--sans);outline:none;resize:vertical}.contact ::placeholder{color:rgba(255,255,255,.58)}.contact form button{display:flex;justify-content:space-between;border:1px solid white;background:none;color:white;padding:19px 22px;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.contact form button:hover{background:white;color:var(--accent)}.contact aside{display:flex;flex-direction:column}.contact aside p{line-height:1.7;margin:0 0 28px}.contact aside a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.1em;font-size:.76rem}footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;padding:60px 7vw;background:var(--ink);color:var(--paper);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}footer .brand{justify-self:start}footer p{margin:0}@keyframes slowZoom{from{transform:scale(1)}to{transform:scale(1.06)}}@media(max-width:760px){.site-header{padding:16px 20px}.brand{gap:9px}.brand-symbol{width:34px;height:34px;flex-basis:34px}.brand-wordmark>span{font-size:1.06rem}.brand small{margin-top:6px;font-size:.4rem}.menu-toggle{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em}.site-header nav{display:none;position:absolute;top:66px;left:20px;right:20px;padding:24px;background:var(--ink);color:white;mix-blend-mode:normal;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.hero-copy{left:20px;bottom:8vh}.hero-title{font-size:clamp(3.2rem,15vw,5.2rem)}.hero-side{display:none}.circle-link{width:88px;height:88px}.intro{display:block;padding:110px 20px}.intro h2{font-size:3.4rem;margin:55px 0}.intro-text{display:block}.intro-text .text-link{display:inline-block;margin-top:35px}.stories{padding:100px 20px}.section-heading{display:block;margin:0 0 60px}.section-heading h2{font-size:3.4rem;margin-top:36px}.services{padding:100px 20px}.service-list article{grid-template-columns:40px 1fr}.service-list article p{grid-column:2}.about{display:block}.about-image img{min-height:0;aspect-ratio:4/5}.about-copy{padding:100px 20px}.contact{padding:100px 20px}.contact h2{font-size:3.7rem}.contact-layout{grid-template-columns:1fr;gap:70px}footer{grid-template-columns:1fr;gap:30px;padding:60px 20px}}
