@charset "UTF-8";
:root{--paper:#f4f1e9;--ink:#202b26;--muted:#536359;--line:#d6dace;--green:#dfe9d5;--accent:#417054;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #9c661d;outline-offset:5px}p{line-height:1.75}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.055em;line-height:1.05;font-weight:600}h1{font-size:clamp(2.7rem,5.3vw,5.8rem);margin-bottom:2rem}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}h2{font-size:clamp(2rem,3.5vw,3.7rem);max-width:850px;margin-bottom:2.5rem}h3{font-size:1.3rem;letter-spacing:-.025em;line-height:1.25}ul{padding:0;list-style:none}.header,.hero,.section-nav,.section,.footer{max-width:1440px;margin:auto}.header{padding:1.7rem 5%;display:flex;align-items:center;gap:1.2rem}.brand{font-size:2.6rem;font-weight:700;letter-spacing:-.1em;text-decoration:none}.brand span{color:var(--accent)}.header-name{font-size:.85rem;font-weight:600}.header-name small{display:block;color:var(--muted);margin-top:.3rem;font-weight:400}.contact-link{margin-left:auto;font-size:.9rem;text-decoration:none}.hero{padding:5rem 5% 6rem;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:5%}.eyebrow,.section-label,.meta,.card-label{font-size:.75rem;letter-spacing:.07em;line-height:1.6}.eyebrow{text-transform:uppercase;margin-bottom:2rem;display:flex;align-items:center;gap:.7rem}.dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--accent)}.lead,.copy{font-size:1.1rem;max-width:730px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.7rem;margin-top:2rem;font-size:.9rem}.actions a{text-decoration:none}.button{background:var(--ink);color:white;padding:1.05rem 1.3rem;border-radius:4px}.hero-card{background:var(--green);padding:2rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;min-height:450px;border-radius:3px}.card-label{text-transform:uppercase}.monogram{font-family:Georgia,serif;font-size:clamp(6rem,10vw,10rem);letter-spacing:-.17em;line-height:1.2;align-self:center;font-style:italic;color:var(--accent)}.monogram span{color:var(--ink)}.hero-card p{font-size:1.5rem;letter-spacing:-.03em;line-height:1.3;max-width:250px}.hero-card small{color:var(--muted);font-size:.7rem}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}.tags li{font-size:.76rem;border:1px solid currentColor;border-color:#71807170;border-radius:3px;padding:.4rem .7rem;line-height:1.4}.section-nav{display:flex;flex-wrap:wrap;gap:1.2rem;padding:1.7rem 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-nav a{font-size:.8rem;text-decoration:none}.section{padding:6rem 5%;display:grid;grid-template-columns:180px minmax(0,1fr);gap:3%;border-bottom:1px solid var(--line)}.section-label{color:var(--muted);padding-top:.4rem}.green{background:var(--green)}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.skill p,.entry p,.project p{font-size:.93rem;color:var(--muted)}.skill h3{margin-top:1.4rem}.entry{padding:2rem 0;border-top:1px solid var(--line);max-width:800px}.entry p:last-child{margin-bottom:0}.entry .meta{font-size:.75rem}.role{font-weight:600}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.project{border:1px solid var(--line);border-radius:4px;overflow:hidden}.project-cover{min-height:200px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;background:#b2cbd7}.project-cover span{font-size:.7rem}.project-cover h3{font-size:2.4rem;margin:1.5rem 0 0}.ice .project-cover{background:#d8e5e8}.lime .project-cover{background:#dce8b9}.ink .project-cover{background:#253831;color:var(--paper)}.project-copy{padding:1.5rem}.note{font-size:.8rem;line-height:1.8;color:var(--muted);margin-top:2rem;max-width:800px}.dark{background:var(--ink);color:var(--paper)}.dark .copy,.dark .note,.dark .section-label{color:#c9d5c8}.contact{background:#dbe6ea}.email{font-size:clamp(1.1rem,2.7vw,2.8rem);letter-spacing:-.03em;overflow-wrap:anywhere}.footer{padding:2rem 5%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.7rem;color:var(--muted)}.skip{position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%);background:var(--ink);color:white;padding:1rem;z-index:5}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1050px){.section{grid-template-columns:130px minmax(0,1fr)}.skill-grid{grid-template-columns:1fr}.skill{border-top:1px solid #71807140;padding-top:1rem}.hero{gap:2rem}.hero-card{padding:1.5rem}}
@media(max-width:700px){.header{padding:1.2rem 6%}.hero{padding:3rem 6%;grid-template-columns:1fr}.hero-card{min-height:310px}.monogram{font-size:7rem}.section{padding:3.5rem 6%;grid-template-columns:1fr;gap:1rem}.section-label{margin-bottom:.8rem}.section-nav{padding:1.5rem 6%}.project-grid{grid-template-columns:1fr}.footer{padding:1.5rem 6%}h2{margin-bottom:2rem}.eyebrow{font-size:.65rem}.lead,.copy{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.header,.section-nav,.actions,.skip{display:none}.hero,.section{padding:1rem 0;display:block;break-inside:avoid}.hero-card{display:none}h1{font-size:2rem}h2{font-size:1.5rem}.project-grid{display:block}.dark,.green,.contact{background:white;color:black}.dark .copy,.dark .note{color:black}}
