:root{--ink:#172225;--paper:#f6f1e9;--muted:#6d7775;--line:#d9d2c8;--accent:#ef6c50;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans)}a{color:inherit;text-decoration:none}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(12px)}.brand{font-size:1.45rem;font-weight:700;letter-spacing:-.08em}.brand span{color:var(--accent)}.nav{display:flex;gap:2rem;align-items:center;font-size:.9rem}.nav a{transition:color .2s}.nav a:hover,.text-link:hover{color:var(--accent)}.nav-contact{border:1px solid var(--ink);border-radius:999px;padding:.5rem .9rem}.theme-button,.menu-button{border:0;background:none;color:inherit;font:inherit;cursor:pointer;font-size:1.35rem}.menu-button{display:none;font-size:.9rem}.hero{min-height:calc(100vh - 82px);padding:11vh 12vw 7vh;position:relative;overflow:hidden}.eyebrow,.section-label{font:12px var(--mono);letter-spacing:.02em;text-transform:uppercase}.hero h1{font-size:clamp(3.3rem,8.5vw,8.5rem);font-weight:500;letter-spacing:-.07em;line-height:.91;max-width:940px;margin:1.3rem 0 2rem}.hero em,h2 em,h3 em{font-family:var(--serif);font-weight:700}.hero-copy{font-size:1.13rem;max-width:405px;color:var(--muted)}.round-link{display:inline-flex;gap:2rem;align-items:center;margin-top:2.5rem;border-bottom:1px solid;padding-bottom:.3rem}.round-link span{font-size:1.4rem}.hero-doodle{position:absolute;right:11vw;bottom:10vh;width:150px;height:150px;border:2px solid var(--accent);border-radius:50%;transform:rotate(-13deg);display:grid;place-items:center;color:var(--accent);font-family:var(--serif);font-size:1.5rem}.hero-doodle i{position:absolute;width:178px;border-top:2px solid var(--accent);transform:rotate(40deg)}.hero-doodle b{position:absolute;top:-25px;right:0;font-size:1.7rem}.section{padding:9rem 9vw;border-top:1px solid var(--line)}.section-label{display:flex;gap:1rem;margin-bottom:4rem;color:var(--muted)}.section-label span{color:var(--accent)}.about-grid{display:grid;grid-template-columns:35% 1fr;gap:10%;align-items:center}.portrait{height:380px;background:#d7a07f;padding:1rem;position:relative;overflow:hidden}.portrait-face{width:250px;height:310px;border-radius:48% 48% 10% 10%;background:#2f3832;margin:45px auto 0;display:grid;place-items:center;color:#e9bd9f;font:11rem var(--serif)}.portrait span{position:absolute;bottom:1rem;left:1rem;color:#fff;font:11px var(--mono)}h2{font-size:clamp(2.2rem,4.3vw,4.6rem);line-height:1.02;letter-spacing:-.055em;font-weight:500;margin:0 0 2rem}.about p{max-width:580px;color:var(--muted);font-size:1.08rem}.text-link{display:inline-block;margin-top:1rem;border-bottom:1px solid;padding-bottom:.25rem}.text-link span{margin-left:.8rem}.project-list{display:grid;gap:1.5rem}.project{height:390px;padding:1.8rem;display:grid;grid-template-columns:110px 1fr 40%;position:relative;overflow:hidden}.project-number,.project-type{font:11px var(--mono);text-transform:uppercase}.project h3{font-weight:500;font-size:clamp(2.7rem,5vw,5.7rem);line-height:.82;letter-spacing:-.07em;margin:3.5rem 0 1.7rem}.project a{font-size:.9rem;border-bottom:1px solid}.project--coral{background:#ee806a}.project--blue{background:#91bec7}.project--lime{background:#b9ca70}.project-art{align-self:center;justify-self:end}.art-sun{width:210px;height:210px;background:#f8db64;border-radius:50%;display:grid;place-items:center;font:4rem var(--serif);transform:rotate(-9deg)}.art-lines{font:4.2rem/.55 var(--serif);transform:rotate(-14deg)}.art-flower{font-size:15rem;line-height:1;transform:rotate(20deg)}.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.note-grid p{border-top:1px solid var(--ink);padding-top:1rem;margin:0;color:var(--muted)}.note-grid strong{display:block;font-size:1.2rem;color:var(--ink);margin:.6rem 0}.contact{background:var(--ink);color:var(--paper);padding:9rem 12vw}.contact h2{font-size:clamp(3.5rem,8vw,8rem);margin:.8rem 0 2rem}.contact .eyebrow{color:#b9c1ba}.email{font:clamp(1.1rem,2vw,1.6rem) var(--mono);border-bottom:1px solid}.email span{color:var(--accent)}.contact-form{margin-top:4rem;max-width:550px;display:grid;gap:1.25rem}.contact-form label{display:grid;gap:.4rem;font-size:.9rem}.contact-form input,.contact-form textarea{background:transparent;border:0;border-bottom:1px solid #8b9690;padding:.6rem 0;color:inherit;font:1rem var(--sans);outline-color:var(--accent)}.contact-form button{width:max-content;border:1px solid var(--paper);border-radius:999px;background:transparent;color:inherit;padding:.7rem 1.1rem;font:inherit;cursor:pointer}.form-message{margin:0;color:#b9c1ba}footer{padding:1.6rem 5.5vw;display:flex;justify-content:space-between;font:11px var(--mono);text-transform:uppercase}body.dark{--paper:#162021;--ink:#f5f0e6;--muted:#b5bcb7;--line:#3b4644}body.dark .portrait-face{background:#e1af91;color:#26302d}@media(max-width:700px){.site-header{padding:0 6vw;height:68px}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:1.5rem 6vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-button{display:block;margin-left:auto;margin-right:1.2rem}.hero{min-height:690px;padding:12vh 7vw}.hero-doodle{right:10vw;bottom:6vh;width:110px;height:110px}.about-grid{grid-template-columns:1fr;gap:2.5rem}.portrait{height:310px}.portrait-face{height:250px;width:200px;margin-top:35px;font-size:8rem}.section{padding:5.5rem 7vw}.project{height:350px;grid-template-columns:1fr; padding:1.3rem}.project h3{margin:1.4rem 0}.project-art{position:absolute;right:1.5rem;bottom:1.5rem;transform:scale(.65)}.project-number{position:absolute;right:1.3rem;top:1.3rem}.note-grid{grid-template-columns:1fr;gap:2rem}.contact{padding:6rem 7vw}footer{padding:1.3rem 7vw;gap:1rem;flex-wrap:wrap}}
