@font-face{font-family:Cormorant;src:url('assets/cormorant-garamond.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#f3eee5;--sand:#d7c5ad;--ink:#263f38;--muted:#5d665e;--rule:#c8c7b8;--serif:Cormorant,Georgia,serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}.skip-link{position:absolute;left:15px;top:-100px;z-index:10;padding:16px;background:var(--paper)}.skip-link:focus{top:10px}.header{height:124px;padding:0 6.2%;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:18px}.brand span{font-family:var(--serif);font-size:32px;letter-spacing:4px}.brand small{display:block;font-family:var(--sans);font-size:8px;letter-spacing:2.3px;text-align:center;margin-top:5px}.header nav{display:flex;align-items:center;gap:45px;font-size:12px}.header nav button{border-bottom:1px solid var(--ink);padding:9px 0}.header nav span{margin-left:25px}.hero{position:relative;isolation:isolate;min-height:640px;height:calc(100svh - 124px);max-height:900px;color:var(--paper);overflow:hidden;background:#53665a}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{background:url('assets/architecture.jpg') center 62%/cover}.hero-shade{background:linear-gradient(90deg,rgba(20,39,31,.67),rgba(24,39,30,.23) 70%),linear-gradient(0deg,rgba(12,30,26,.5),transparent 28%);z-index:1}.hero-content{position:relative;z-index:2;padding:100px 8% 90px;max-width:1000px}.eyebrow{font-size:10px;font-weight:400;line-height:1.7;letter-spacing:2.2px}.hero h1{font-family:var(--serif);font-size:clamp(76px,8.4vw,132px);font-weight:400;letter-spacing:-3px;line-height:.93;margin:46px 0 32px}.hero h1 em{font-style:normal}.hero-caption{font-size:13px;line-height:1.9;letter-spacing:.3px}.hero-bottom{position:absolute;z-index:2;bottom:36px;left:8%;right:6.2%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.4px}.hero-bottom a span{margin-left:55px}.philosophy{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding:110px 8% 100px;max-width:1560px;margin:auto}.section-label .line{display:block;width:45px;height:1px;background:var(--ink);margin:12px 0 26px}.aside-note{font:22px/1.3 var(--serif);margin-top:54px}.philosophy h2{font:400 clamp(42px,4vw,65px)/1.05 var(--serif);letter-spacing:-1px;margin:0 0 34px}.philosophy-copy>p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px;margin:0 0 18px}.interests{display:flex;flex-wrap:wrap;gap:16px 30px;border-top:1px solid var(--rule);padding-top:25px;margin-top:38px;font-size:11px}.interests span+span:before{content:'·';margin-right:30px;color:#857557}footer{background:var(--ink);color:var(--paper);padding:46px 6.2%;display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:24px}.footer-name{font:32px var(--serif)}footer p{font-size:12px;color:#d4d9d0}footer button{font-size:12px;border-bottom:1px solid #9ba99f;padding:9px 0}footer button span{margin-left:35px}footer small{grid-column:1/-1;font-size:9px;letter-spacing:.5px;color:#b9c5bc;margin-top:20px}dialog{border:0;background:var(--paper);color:var(--ink);padding:50px;max-width:480px;width:calc(100% - 32px)}dialog::backdrop{background:rgba(15,33,27,.7);backdrop-filter:blur(5px)}dialog .close{position:absolute;top:12px;right:15px;font-size:28px}dialog h2{font:48px var(--serif);margin:22px 0}dialog>p{font-size:13px;line-height:1.7}dialog #contact-status{margin:24px 0}dialog #email-link{font:25px var(--serif);text-decoration:underline;overflow-wrap:anywhere}dialog .fineprint{font-size:10px;color:var(--muted);margin-top:25px}#retry{text-decoration:underline}#challenge{margin-top:24px}[hidden]{display:none!important}
@media(min-width:1600px){.hero-content{padding-top:140px}}@media(max-width:700px){.header{height:100px;padding:0 6%}.brand{gap:10px}.brand img{width:31px;height:42px}.brand span{font-size:24px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:1.6px}.header nav{gap:0}.header nav>a{display:none}.header nav button{font-size:10px}.header nav span{margin-left:8px}.hero{height:calc(88svh - 100px);min-height:570px}.hero-content{padding:86px 7% 100px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero h1{font-size:80px;letter-spacing:-2px;margin-top:40px}.hero-caption{font-size:12px}.hero-shade{background:linear-gradient(90deg,#14271fb8,#18271e45),linear-gradient(0deg,#0c1e1a99,transparent 30%)}.hero-image{background-position:43% center}.hero-bottom{left:7%;right:7%;font-size:10px}.hero-bottom a span{margin-left:12px}.philosophy{display:block;padding:65px 7%}.section-label{margin-bottom:32px}.section-label .line{margin-bottom:16px}.aside-note{display:none}.philosophy h2{font-size:47px}.philosophy-copy>p{font-size:13px}.interests{gap:15px;font-size:10px}.interests span+span:before{margin-right:15px}footer{grid-template-columns:1fr auto;padding:35px 7%}footer p{grid-column:1/-1;grid-row:2;font-size:11px;margin:0}footer button{grid-column:2;grid-row:1}footer small{margin-top:5px}dialog{padding:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
