:root{--forest:#24352d;--forest-deep:#17241e;--moss:#7c8a62;--paper:#f3f0e8;--white:#fff;--ink:#1b2420;--muted:#667068;--line:rgba(27,36,32,.18);--display:"Newsreader",serif;--body:"Archivo",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 var(--body);overflow-x:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.skip{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.8rem 1rem}.skip:focus{top:1rem}.site-header{height:5.75rem;position:absolute;inset:0 0 auto;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,4vw,4.5rem);color:#fff}.brand{width:clamp(12rem,18vw,18rem);filter:brightness(0) invert(1)}nav{display:flex;align-items:center;gap:clamp(1rem,2.2vw,2.5rem);font-size:.82rem;font-weight:600}nav a{border-bottom:1px solid transparent}nav a:hover{border-color:currentColor}.nav-cta{padding:.8rem 1rem;border:1px solid rgba(255,255,255,.55)}.menu-toggle{display:none;background:none;border:0;color:#fff;min-width:44px;min-height:44px}.hero{height:100vh;height:100svh;min-height:43rem;position:relative;display:grid;grid-template-columns:minmax(28rem,48%) 1fr;background:var(--forest-deep);overflow:hidden}.hero-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;padding:8rem clamp(2rem,5vw,5.5rem) 7rem;color:#fff}.hero-copy:after{content:"";position:absolute;right:-4rem;top:0;width:8rem;height:100%;background:linear-gradient(90deg,var(--forest-deep),transparent);pointer-events:none}.eyebrow{margin:0 0 1rem;color:var(--moss);font-size:.7rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.hero .eyebrow{color:#c8d1b6}.hero h1{max-width:15ch;margin:0;font:500 clamp(3rem,4.35vw,5rem)/.93 var(--display);letter-spacing:-.045em;text-wrap:balance}.hero-deck{max-width:47ch;margin:1.4rem 0 1.75rem;color:rgba(255,255,255,.78);font-size:clamp(.96rem,1.15vw,1.13rem)}.hero-image{margin:0;min-width:0}.hero-image img{object-position:center}.hero-actions,.contact-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.85rem 1.2rem;font-size:.82rem;font-weight:700}.button-solid{background:#d7dfc7;color:var(--forest-deep)}.button-text{border-bottom:1px solid rgba(255,255,255,.55);padding-inline:.2rem}.button-outline{border:1px solid currentColor}.hero-band{position:absolute;z-index:4;left:0;right:0;bottom:0;min-height:4.5rem;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:rgba(23,36,30,.94);border-top:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.78);padding:0 clamp(1.25rem,4vw,4.5rem);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero-band span+span{border-left:1px solid rgba(255,255,255,.18);padding-left:clamp(1rem,3vw,3rem)}section:not(.hero){padding:clamp(5rem,9vw,9rem) clamp(1.25rem,5vw,5.5rem)}.section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.65fr);gap:clamp(2rem,7vw,8rem);align-items:end;margin-bottom:3rem}.section-head h2,.experience h2,.contact h2{margin:0;font:500 clamp(2.45rem,4.5vw,5rem)/.98 var(--display);letter-spacing:-.045em;text-wrap:balance}.section-head>p{margin:0;color:var(--muted);max-width:48ch}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.project-card{position:relative;min-height:34rem;overflow:hidden;background:var(--forest)}.project-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(18,30,24,.97))}.project-card img{transition:transform .6s ease}.project-card:hover img{transform:scale(1.025)}.project-card div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:2rem;color:#fff}.project-card div p{margin:0 0 .35rem;color:#c8d1b6;font-size:.67rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.project-card h3{margin:0 0 .5rem;font:500 clamp(1.7rem,2.6vw,2.7rem)/1 var(--display)}.project-card span{display:block;color:rgba(255,255,255,.72);font-size:.88rem}.experience{display:grid;grid-template-columns:1.08fr .92fr;padding:0!important;background:var(--forest);color:#fff}.experience-image{min-height:42rem}.experience-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,7rem)}.experience-copy h2{max-width:22ch;font-size:clamp(2.2rem,3.2vw,3.6rem)}.experience-copy>p:not(.eyebrow){max-width:46ch;color:rgba(255,255,255,.7);margin:1.4rem 0 1.7rem}.work{background:#e9e4da}.section-head.compact{grid-template-columns:minmax(0,48rem);margin-bottom:3rem}.work-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:repeat(2,minmax(18rem,25rem));gap:1rem}.work-grid figure{position:relative;margin:0;overflow:hidden}.work-tall{grid-row:1/3}.work-grid figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(23,36,30,.9);color:#fff;padding:.55rem .75rem;font-size:.72rem;font-weight:600}.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:clamp(3rem,8vw,9rem);background:#fff}.contact h2{max-width:12ch}.contact-copy>p{max-width:48ch;color:var(--muted);margin:0 0 1.7rem}.contact .button-solid{background:var(--forest);color:#fff}.phone{display:inline-flex;min-height:44px;align-items:center;font-weight:700;border-bottom:1px solid currentColor}.contact address{margin-top:1.5rem;color:var(--muted);font-style:normal;font-size:.85rem}footer{display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:center;padding:2rem clamp(1.25rem,5vw,5.5rem);background:var(--forest-deep);color:rgba(255,255,255,.68);font-size:.8rem}.footer-brand{color:#fff;font-weight:700}footer a{display:inline-flex;min-height:44px;align-items:center}.menu-toggle b{font:600 .7rem var(--body)}
@media(max-width:900px){.site-header{height:5rem}.menu-toggle{display:grid;place-content:center;gap:5px}.menu-toggle span{display:block;width:24px;height:2px;background:currentColor}.site-header nav{position:fixed;inset:0;display:none;z-index:-1;place-content:center;background:var(--forest-deep);font-size:1.2rem}.site-header nav.open{display:grid}.menu-toggle{position:relative;z-index:3}.hero{grid-template-columns:1fr}.hero-image{position:absolute;inset:0}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,36,30,.97),rgba(23,36,30,.45))}.hero-copy{max-width:44rem;padding-right:2rem}.hero-copy:after{display:none}.project-grid{grid-template-columns:1fr 1fr}.project-card:last-child{grid-column:1/-1}.experience{grid-template-columns:1fr}.experience-image{min-height:32rem}.section-head,.contact{grid-template-columns:1fr}.work-grid{grid-template-columns:1fr 1fr}.contact h2{max-width:16ch}}
@media(max-width:600px){.brand{width:12rem}.hero{min-height:100svh;height:auto}.hero-copy{min-height:100svh;padding:7rem 1.25rem 7rem}.hero h1{font-size:clamp(2.65rem,13vw,3.65rem);max-width:12ch}.hero-band{grid-template-columns:1fr 1fr;gap:.6rem;min-height:5.2rem}.hero-band span+span{border:0;padding-left:0}.project-grid{grid-template-columns:1fr}.project-card:last-child{grid-column:auto}.project-card{min-height:29rem}.experience-image{min-height:25rem}.work-grid{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,22rem)}.work-tall{grid-row:auto}.contact-links{align-items:stretch;flex-direction:column}.contact-links a{text-align:center}footer{grid-template-columns:1fr;gap:.5rem}}
.eyebrow{color:#3f503a}.hero .eyebrow,.experience .eyebrow{color:#d7dfc7}.site-header{text-shadow:none}.site-header nav{padding:.55rem .65rem .55rem 1rem;background:rgba(23,36,30,.9);border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 30px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.site-header nav a{color:#fff}.site-header .nav-cta{background:#d7dfc7;border-color:#d7dfc7;color:var(--forest-deep)}
@media(max-width:900px){.site-header nav{padding:0;background:var(--forest-deep);border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.site-header .nav-cta{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-card img{transition:none}}
