@font-face{font-family:Montserrat;src:url('assets/Montserrat-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('assets/Montserrat-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
:root{--paper:#f3efe6;--ink:#18352f;--copper:#9b593c;--muted:#57665e;--line:#c8ccc0;--white:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:500 14px/1.65 Montserrat,Arial,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--copper);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;line-height:1.04;letter-spacing:-.055em;margin:0;font-weight:800}h1{font-size:clamp(45px,6.5vw,94px)}h2{font-size:clamp(32px,4vw,56px)}h3{font-size:28px;letter-spacing:-.035em}p{margin:0 0 18px}strong,b{font-weight:600}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:600}.header{height:106px;padding:0 5%;display:flex;align-items:center;gap:30px;max-width:1600px;margin:auto}.logo{display:block;width:158px;flex-shrink:0}.logo img{width:100%;height:auto;mix-blend-mode:multiply}.header nav{display:flex;gap:32px;margin-left:auto}.header nav a{font-size:12px;padding:8px 0;border-bottom:1px solid transparent}.header nav a[aria-current],.header nav a:hover{border-color:var(--ink)}.header-contact{font-size:12px;display:flex;gap:30px;align-items:center;border:1px solid var(--line);padding:12px 18px}.header-contact span{font-size:20px}.skip{position:fixed;top:-60px;left:16px;z-index:30;background:white;padding:12px}.skip:focus{top:12px}.hero{background:var(--ink);color:var(--paper);padding:35px 5% 25px;overflow:hidden;min-height:700px}.hero-top,.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-side{font-size:10px;color:#b7c4b6}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:5%;align-items:center;padding:65px 0 55px}.hero h1{font-size:clamp(45px,6.5vw,100px);line-height:.99;letter-spacing:-.065em}.hero h1 span{color:#c79979}.hero-copy p{max-width:425px;font-size:13px;color:#e0e4da;margin:30px 0}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:49px;padding:14px 21px;border:1px solid transparent;font-size:11px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.light{background:var(--paper);color:var(--ink)}.button.dark{background:var(--ink);color:var(--paper)}.button.outline{border-color:var(--line)}.button.outline:hover{background:#e3e6da}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-collage{position:relative;height:385px;isolation:isolate}.collage-primary{margin:0;position:absolute;left:0;top:0;width:86%;transform:rotate(-5deg);z-index:2;background:var(--paper);padding:10px;box-shadow:0 12px 35px #061a1930}.collage-primary img{aspect-ratio:16/9;object-fit:cover}.hero-collage figcaption{font-size:8px;letter-spacing:.05em;color:var(--ink);padding:8px 2px 0}.collage-secondary{position:absolute;right:-5%;top:160px;width:65%;margin:0;transform:rotate(6deg);z-index:3;background:#fff;padding:8px;box-shadow:0 12px 35px #061a1940}.collage-secondary img{aspect-ratio:1.7;object-fit:cover;object-position:top}.collage-signature{position:absolute;left:-20px;bottom:5px;width:195px;filter:invert(1);opacity:.7;transform:rotate(-9deg)}.collage-line{position:absolute;inset:55px -30px 0 60px;border:1px solid #718378;border-radius:50%;transform:rotate(-26deg);z-index:-1}.hero-bottom{border-top:1px solid #435d52;padding-top:22px;color:#b7c4b6;font-size:10px}.hero-bottom p{margin:0}.hero-bottom a{color:var(--paper)}.section{max-width:1440px;padding:100px 5%;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px}.section-heading .eyebrow{display:block;margin-bottom:16px}.section-heading>p{max-width:340px;color:var(--muted);font-size:12px;margin:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 32px}.project-card{min-width:0}.project-image{position:relative;display:block;overflow:hidden;background:#e3e5db;aspect-ratio:1.48}.project-image>img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}.project-image:hover>img{transform:scale(1.035)}.image-arrow{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;background:var(--paper);width:38px;height:38px;font-size:24px;color:var(--ink)}.card-caption{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin:18px 0 10px}.card-caption .eyebrow{font-size:8px;color:var(--muted);display:block;margin-bottom:7px}.card-category{font-size:9px;border:1px solid var(--line);padding:4px 9px;white-space:nowrap}.project-card>p{font-size:11px;color:var(--muted);max-width:85%;margin:0}.featured{margin-bottom:40px}.featured .project-card:nth-child(2n){padding-top:65px}.featured .project-card:nth-child(2n) .project-image{aspect-ratio:1.7}.project-art{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:30px;color:var(--paper);position:relative;overflow:hidden}.project-art:after{content:'';position:absolute;inset:16%;border:1px solid currentColor;border-radius:50% 50% 0 0;opacity:.15;transform:rotate(-13deg)}.project-art strong{position:relative;z-index:1;font:italic 500 clamp(36px,5vw,76px)/1.05 Georgia,serif;letter-spacing:-.04em;max-width:90%}.art-kicker,.art-bottom{font-size:9px;letter-spacing:.08em}.plum{background:#442e40}.forest{background:#234b43}.copper{background:#9b593c}.sand{background:#d8c6a6;color:#263c31}.profile-bridge{background:#e4e7dc;display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:80px 8%}.profile-bridge h2{margin:20px 0}.profile-bridge p{max-width:370px;font-size:12px}.role-links a{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #b7c1b0;padding:17px 0;font-size:14px;transition:padding .2s}.role-links a:hover{padding-left:10px}.role-links a span:last-child{font-size:22px}.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%;align-items:center}.portrait-wrap{max-width:300px;background:#d2d7ca;padding:20px;transform:rotate(-3deg)}.portrait-wrap img{filter:grayscale(1);width:100%;height:auto}.portrait-wrap span{font-size:10px;display:block;padding-top:15px}.about h2{margin:18px 0 25px}.about p{font-size:12px;color:var(--muted);max-width:590px}.facts{display:flex;gap:30px;margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.facts strong{display:block;font:800 38px Arial,sans-serif;letter-spacing:-.05em}.facts span{display:block;max-width:130px;font-size:9px;color:var(--muted);margin-top:5px}.about-signature{width:180px;margin-top:30px;mix-blend-mode:multiply}.site-footer{background:var(--ink);color:var(--paper);padding:65px 5% 20px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:60px}.footer-top h2{font-size:clamp(45px,6vw,80px);margin-top:18px}.footer-contact{display:flex;flex-direction:column;gap:12px;justify-content:center;font-size:13px}.footer-contact a:hover{text-decoration:underline}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #435d52;padding-top:25px;font-size:9px}.footer-bottom .logo{filter:invert(1);width:130px}.footer-bottom p{margin:0;color:#b7c4b6}.page-heading{padding:65px 5% 65px;max-width:1440px;margin:auto}.page-heading .eyebrow{display:block;margin-bottom:22px}.page-heading h1{max-width:1000px;font-size:clamp(45px,6vw,86px)}.page-heading p{max-width:550px;font-size:13px;color:var(--muted);margin-top:25px}.catalog{padding-top:0}.filter-bar{display:flex;gap:25px;justify-content:space-between;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid transparent;background:transparent;padding:9px 14px;font-size:10px;color:var(--ink)}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}input[type=search]{width:210px;background:transparent;border:0;border-bottom:1px solid var(--muted);padding:9px 3px;color:var(--ink);font-size:12px}.result-count{font-size:10px;color:var(--muted);margin:20px 0 30px}.empty-state{padding:70px 0;font-size:18px}.back-link{display:block;font-size:11px;margin-bottom:40px}.project-heading{padding-bottom:35px}.project-detail{max-width:1440px;padding:0 5% 90px;margin:auto}.detail-visual{background:#e2e3d9;max-height:700px;overflow:hidden}.detail-visual>img{width:100%;max-height:650px;object-fit:contain;object-position:top}.detail-visual>.project-art{min-height:460px}.detail-visual .project-art strong{font-size:clamp(60px,10vw,150px)}.case-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:65px 0}.case-layout h2{font-size:38px;margin:15px 0 25px}.case-layout p{font-size:13px}.contribution{list-style:none;padding:0;margin:20px 0}.contribution li{padding:13px 0 13px 22px;position:relative;border-bottom:1px solid var(--line);font-size:12px}.contribution li:before{content:'↗';position:absolute;left:0;color:var(--copper)}.project-note{font-size:11px!important;color:var(--muted);margin-top:20px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px}.gallery button{border:0;background:#e3e5db;padding:0;position:relative}.gallery img{width:100%;aspect-ratio:1.6;object-fit:contain}.proof-links{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:35px}.case-footer{margin-top:55px;padding-top:25px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:11px}.case-footer>span{color:var(--muted);margin-right:auto}.resume-list{padding-top:0}.resume-list>a{display:flex;align-items:center;gap:35px;padding:32px 0;border-top:1px solid var(--line)}.resume-list>a:hover h2{color:var(--copper)}.resume-number{font-size:11px;align-self:flex-start;padding-top:10px}.resume-list h2{font-size:clamp(26px,3vw,44px);margin-bottom:12px}.resume-list p{font-size:12px;margin:0;color:var(--muted)}.resume-arrow{margin-left:auto;font-size:35px}.role-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:20px 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.role-tabs a{font-size:10px;padding:8px 12px}.role-tabs a[aria-current]{background:var(--ink);color:var(--paper)}.role-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;padding:65px 5%;max-width:1440px;margin:auto}.role-hero h1{font-size:clamp(40px,5vw,70px);margin:20px 0 25px}.role-hero p{max-width:590px;font-size:13px;color:var(--muted);margin-bottom:30px}.role-aside{border-left:1px solid var(--line);padding-left:30px}.role-aside dl{margin:20px 0}.role-aside dl>div{display:grid;grid-template-columns:80px 1fr;gap:14px;border-bottom:1px solid var(--line);padding:14px 0;font-size:11px}.role-aside dt{color:var(--muted)}.role-aside dd{margin:0}.role-content{background:#e4e7dc;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:60px;padding-bottom:60px}.role-content h2{font-size:36px;margin:18px 0 28px}.skill-list{list-style:none;padding:0;margin:0}.skill-list li{font-size:13px;margin-bottom:12px}.tools{font-size:11px;margin:30px 0 0;color:var(--muted)}.role-projects{padding-top:65px}.role-projects .project-grid{gap:40px 30px}.intro{display:none}.js .intro{display:flex;position:fixed;inset:0;background:var(--paper);z-index:99;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;transition:opacity .5s,visibility .5s;animation:intro-failsafe .1s 3.2s forwards}.intro svg{width:min(60vw,590px);height:auto}.intro p{font-size:10px;letter-spacing:.25em;margin-top:25px}.intro.finished{opacity:0;visibility:hidden}.ink-path{stroke-dasharray:100;stroke-dashoffset:100;animation:write 1.9s cubic-bezier(.35,.05,.3,1) .15s forwards}.lightbox{border:0;background:var(--paper);padding:35px 20px 20px;max-width:95vw;max-height:95vh}.lightbox::backdrop{background:#0b211fe8}.lightbox img{max-height:77vh;max-width:85vw;object-fit:contain}.lightbox p{font-size:11px;margin:15px 0 0}.close-lightbox{position:absolute;top:3px;right:10px;border:0;background:transparent;color:var(--ink);font-size:22px;width:36px;height:30px}.image-error{position:absolute;inset:20px;display:grid;place-items:center;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes write{to{stroke-dashoffset:0}}@keyframes intro-failsafe{to{opacity:0;visibility:hidden}}
img{height:auto}.hero h1{font-size:clamp(45px,5.7vw,88px)}.project-image>img{height:100%}.portrait-wrap img{height:auto}.collage-primary img,.collage-secondary img{width:100%;height:auto}.collage-signature img{width:100%;height:auto}
@media(min-width:1600px){.hero-grid,.hero-top,.hero-bottom{max-width:1440px;margin:auto}.hero h1{font-size:88px}.hero-collage{max-width:590px}}
@media(max-width:900px){.header{gap:20px}.header nav{gap:18px}.header-contact{gap:15px}.hero-grid{gap:4%;grid-template-columns:1.1fr 1fr}.hero{min-height:610px}.hero-collage{height:290px}.collage-secondary{top:140px}.hero-copy p{font-size:12px}.hero .actions{gap:18px}.hero h1{font-size:6.4vw}.section{padding:70px 5%}.profile-bridge{padding:60px 5%;gap:7%}.role-hero{gap:5%;grid-template-columns:1.4fr 1fr}.role-hero h1{font-size:45px}.facts{gap:15px}.role-aside{padding-left:18px}.role-aside dl>div{display:block}.role-aside dt{margin-bottom:5px}.header .logo{width:130px}}
@media(max-width:650px){.header{height:auto;min-height:98px;padding:16px 5%;flex-wrap:wrap;gap:14px}.header .logo{width:120px}.header-contact{margin-left:auto;padding:5px 10px;font-size:10px}.header nav{order:3;margin:0;justify-content:space-between;width:100%;gap:10px}.header nav a{font-size:11px}.hero{padding-top:26px;min-height:0}.hero-side{display:none}.hero-grid{grid-template-columns:1fr;padding:35px 0 20px;gap:45px}.hero h1{font-size:clamp(42px,10.8vw,68px)}.hero-copy p{max-width:90%;margin:25px 0}.hero-collage{height:340px;width:90%;max-width:430px;margin:5px auto 0}.collage-secondary{top:150px}.collage-signature{bottom:12px;width:140px}.hero-top .eyebrow{font-size:8px}.hero-bottom{align-items:flex-start;font-size:8px}.hero-bottom p{max-width:180px}.hero-bottom a{white-space:nowrap}.section{padding:60px 5%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.project-grid{grid-template-columns:1fr;gap:35px}.featured .project-card:nth-child(2n){padding-top:0}.project-image{aspect-ratio:1.5}.featured .project-card:nth-child(2n) .project-image{aspect-ratio:1.5}.project-art strong{font-size:52px}.profile-bridge{grid-template-columns:1fr;gap:25px;padding:50px 5%}.profile-bridge h2{font-size:36px}.about{grid-template-columns:1fr;gap:40px}.portrait-wrap{max-width:210px;margin:0 auto}.facts strong{font-size:34px}.facts span{font-size:8px}.footer-top{display:block;padding-bottom:35px}.footer-contact{margin-top:30px;font-size:11px}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom .logo{width:105px}.footer-bottom p{font-size:8px}.footer-bottom>a:last-child{margin-left:auto}.page-heading{padding:40px 5%}.page-heading h1{font-size:43px}.page-heading p{font-size:12px}.filter-bar{display:block}.filters{gap:3px}.filters button{font-size:9px;padding:8px 9px}.search-label{display:block;margin-top:15px}input[type=search]{width:100%}.catalog{padding-top:0}.card-caption h3{font-size:27px}.card-category{font-size:8px}.project-detail{padding-bottom:55px}.detail-visual>.project-art{min-height:310px}.detail-visual .project-art strong{font-size:65px}.case-layout{grid-template-columns:1fr;gap:25px;padding:40px 0}.gallery{grid-template-columns:1fr}.case-footer{align-items:flex-start}.case-footer>span{width:100%}.resume-list{padding-top:0}.resume-list>a{gap:17px;padding:25px 0}.resume-list h2{font-size:29px}.resume-list p{font-size:10px}.resume-arrow{font-size:26px}.role-tabs{padding:14px 5%;gap:4px}.role-tabs a{font-size:9px;padding:7px 8px}.role-hero{grid-template-columns:1fr;padding:35px 5%;gap:35px}.role-hero h1{font-size:43px}.role-aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.role-aside dl>div{display:grid;grid-template-columns:80px 1fr}.role-content{grid-template-columns:1fr;gap:35px}.role-projects .section-heading .text-link{display:inline-block;margin-top:20px}.intro svg{width:85vw}.lightbox img{max-width:84vw}.footer-contact a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .intro{display:none}.ink-path{stroke-dashoffset:0}.button:hover,.project-image:hover>img{transform:none}}
@media(max-width:650px){.page-heading h1{font-size:clamp(29px,8.3vw,43px)}.card-caption>div{min-width:0}.card-caption h3{overflow-wrap:anywhere}.card-category{white-space:normal;max-width:95px}.project-art strong{overflow-wrap:anywhere}}
