:root{--bg:#f4f1e9;--panel:#fffdf8;--soft:#ebe7dc;--text:#171a1d;--muted:#666c70;--line:#d3cec2;--accent:#365d55;--dark:#171b1e;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.nav{height:76px;position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;gap:36px;padding:0 max(24px,calc((100vw - var(--max))/2));background:rgba(244,241,233,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,26,29,.10)}.brand{font-weight:900;letter-spacing:.08em;margin-right:auto}.nav nav{display:flex;gap:28px}.nav nav a,.nav-cta{font-size:13px;color:var(--muted)}.nav a:hover{color:var(--text)}.nav-cta{border:1px solid var(--line);padding:9px 14px;border-radius:99px}.section{max-width:var(--max);margin:auto;padding:130px 24px;border-bottom:1px solid var(--line)}.hero{min-height:100vh;padding-top:160px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.eyebrow,.section-head>span,.contact>span,.story>span,.step span,.feature-top{font-size:12px;letter-spacing:.14em;color:var(--accent);font-weight:800}.hero h1{font-size:clamp(58px,8.7vw,132px);line-height:.86;letter-spacing:-.065em;margin:24px 0 20px;max-width:1100px}.hero h1 span,.section-head em,.journey em,.beyond em,.contact em,.story em{font-style:normal;color:var(--muted)}.hero-line{font-size:clamp(25px,3vw,42px);margin:10px 0}.lede{font-size:20px;color:var(--muted);max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.btn{padding:14px 19px;border:1px solid var(--line);border-radius:4px;font-weight:800;font-size:14px}.btn:hover{border-color:var(--text)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fffdf8}.signal{position:absolute;right:3%;bottom:10%;width:340px;height:340px;opacity:.2}.signal i{position:absolute;width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 24px rgba(54,93,85,.35)}.signal i:nth-child(1){left:10%;top:50%}.signal i:nth-child(2){left:50%;top:10%}.signal i:nth-child(3){left:80%;top:40%}.signal i:nth-child(4){left:45%;top:75%}.signal i:nth-child(5){left:90%;top:90%}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:70px}.section-head h2{font-size:clamp(42px,6vw,82px);line-height:.98;letter-spacing:-.05em;margin:0}.section-head p{grid-column:2;color:var(--muted);font-size:18px;max-width:650px}.stats{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats div{padding:38px 20px;border-right:1px solid var(--line)}.stats div:last-child{border:0}.stats b{display:block;font-size:clamp(36px,4vw,64px);letter-spacing:-.05em}.stats span{display:block;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.industries{margin:45px 0 0;font-size:20px;color:var(--muted)}.industries strong{color:var(--text)}.feature{background:var(--dark);color:#f5f2ea;padding:48px;margin:0 0 24px;border:1px solid var(--line);position:relative}.feature:before{content:"FEATURED";position:absolute;right:28px;top:100px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.2em;color:var(--muted)}.feature-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px}.feature h3{font-size:clamp(44px,6vw,86px);line-height:.95;letter-spacing:-.05em;margin:50px 0}.feature h3 em{font-style:normal;color:#aeb4b2}.feature .feature-top,.feature .cols p,.feature .mega small,.feature .tags span{color:#aeb4b2}.feature .cols strong{color:#f5f2ea}.feature{--line:#3a4042;--accent:#b9d9cf}.mega{font-size:clamp(25px,3.2vw,48px);font-weight:900;letter-spacing:-.035em;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0}.mega small{font-size:.32em;color:var(--muted);letter-spacing:.08em}.cols{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:35px 0}.cols p{color:var(--muted);font-size:17px}.cols strong{color:var(--text)}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{border:1px solid var(--line);padding:7px 10px;font-size:11px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin-top:24px}.project-grid article{background:var(--panel);padding:38px}.project-grid article>span{color:var(--accent);font-size:11px;letter-spacing:.12em}.project-grid h3{font-size:28px;margin:18px 0}.project-grid b{font-size:16px}.project-grid p{color:var(--muted)}.short{font-size:26px;margin:70px 0 12px}.text-link{color:var(--accent);font-weight:800}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px}.about-copy{font-size:20px}.about-copy p{color:var(--muted)}.about-copy strong,.manifesto{color:var(--text)}.traits>div{padding:24px 0;border-top:1px solid var(--line)}.traits b{font-size:12px;color:var(--accent);letter-spacing:.12em}.traits p{color:var(--muted)}blockquote{font-size:clamp(34px,5vw,68px);line-height:1.03;letter-spacing:-.045em;margin:100px 0 0}blockquote em{font-style:normal;color:var(--muted)}.timeline{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:1fr 3fr;gap:50px;padding:60px 0;border-bottom:1px solid var(--line)}.year{font-size:14px;color:var(--muted)}.step h3{font-size:clamp(30px,4vw,54px);line-height:1.02;letter-spacing:-.04em;margin:12px 0 20px}.step p{color:var(--muted);max-width:800px;font-size:17px}.step strong{font-size:18px}.mini-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);margin:35px 0}.mini-stats b{background:#fffdf8;padding:20px;font-size:26px}.mini-stats small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.step blockquote{font-size:38px;margin:50px 0}.current{background:linear-gradient(90deg,rgba(54,93,85,.07),transparent)}.next{padding-bottom:20px;border-bottom:0}.beyond{background:#e6ded0;color:#171a1d;max-width:none;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2))}.beyond .section-head>span,.story>span{color:#4c5f21}.beyond .section-head p,.beyond .section-head em{color:#686862}.stories{display:grid;grid-template-columns:1fr 1fr;gap:16px}.story{background:#f8f4eb;padding:44px;border:1px solid #d4d0c7}.story.wide{grid-column:1/-1}.story h3{font-size:clamp(32px,4vw,58px);line-height:1.02;letter-spacing:-.04em}.story h3 em{color:#74736d}.story p{font-size:17px;color:#55554f}.story strong{font-size:18px}.punch{font-size:26px!important;font-weight:900;color:#111!important}.story blockquote{font-size:48px;margin:70px 0 20px}.suit{font-weight:900!important;color:#111!important}.contact{text-align:center;padding-top:170px;padding-bottom:170px}.contact h2{font-size:clamp(64px,10vw,150px);line-height:.85;letter-spacing:-.065em;margin:30px 0}.contact p{font-size:24px;color:var(--muted)}.contact .actions{justify-content:center}footer{max-width:var(--max);margin:auto;padding:45px 24px;display:flex;justify-content:space-between;color:var(--muted);font-size:13px}footer div{display:flex;gap:18px}footer strong{color:var(--text)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}@media(max-width:800px){.nav nav{display:none}.nav{padding:0 18px}.section{padding:90px 18px}.hero{padding-top:130px}.signal{display:none}.section-head{display:block}.section-head>span{display:block;margin-bottom:20px}.section-head p{margin-top:25px}.stats{grid-template-columns:1fr 1fr}.stats div{border-bottom:1px solid var(--line)}.feature{padding:28px 20px}.feature-top{display:block}.feature-top span{display:block;margin-bottom:6px}.cols,.about-grid,.stories{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.story.wide{grid-column:auto}.step{grid-template-columns:1fr}.mini-stats{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(52px,17vw,82px)}.contact h2{font-size:20vw}footer,footer div{flex-direction:column}.nav-cta{display:block}.story{padding:30px 22px}}
.nav-links{display:flex;gap:8px}.contact-form{max-width:900px;margin:55px auto 0;text-align:left;border-top:1px solid var(--line);padding-top:34px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;margin-bottom:18px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:9px;padding:15px 16px;border:1px solid var(--line);border-radius:4px;background:#fffdf8;color:var(--text);font:inherit;outline:none}.contact-form textarea{resize:vertical;min-height:160px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}.contact-form .form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.contact-form button{cursor:pointer}.form-note{font-size:13px!important;margin:18px 0 0!important}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}@media(max-width:800px){.nav-links{gap:5px}.nav-links .nav-cta{padding:8px 9px;font-size:11px}.form-row{grid-template-columns:1fr}}
.form-status{margin:0 0 24px;padding:14px 16px;border:1px solid var(--accent);color:var(--text);font-weight:800}

/* V2.2 LIGHT — warm technical editorial */
body{background-image:linear-gradient(rgba(23,26,29,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,26,29,.025) 1px,transparent 1px);background-size:48px 48px}
.hero:before{content:"THAT'S USUALLY WHERE I COME IN.";position:absolute;left:24px;bottom:3%;font-size:clamp(52px,9vw,140px);font-weight:900;line-height:.82;letter-spacing:-.07em;color:rgba(23,26,29,.035);max-width:1200px;pointer-events:none;z-index:-1}
.hero h1 span{color:#858a89}.section{background:rgba(244,241,233,.74)}
#work .feature{box-shadow:0 18px 55px rgba(23,26,29,.08)}
.project-grid{box-shadow:0 12px 40px rgba(23,26,29,.04)}
.stats b,.mega,.mini-stats b{font-variant-numeric:tabular-nums}
.text-link{border-bottom:1px solid rgba(54,93,85,.35);padding-bottom:2px}
.beyond{box-shadow:inset 0 1px #cfc5b5,inset 0 -1px #cfc5b5}
.contact{background:#f8f5ed}
.contact .btn.primary{background:var(--dark);border-color:var(--dark);color:#fffdf8}
@media(max-width:800px){.hero:before{left:18px;bottom:2%;font-size:18vw}}

/* V2.3 LIGHT CONSULTANT — structured, senior, technical */
:root{--bg:#f5f3ed;--panel:#fbfaf6;--text:#15191c;--muted:#626a6d;--line:#cfd2cf;--accent:#234f49;--dark:#182024;--max:1240px}
html{scroll-padding-top:86px}.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:var(--dark);color:white;padding:12px 16px}.skip-link:focus{top:16px}
body{background-color:var(--bg);background-image:linear-gradient(rgba(21,25,28,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(21,25,28,.022) 1px,transparent 1px);background-size:64px 64px}
.nav{height:76px;background:rgba(245,243,237,.94);border-bottom:1px solid #c7cbc8;box-shadow:0 1px 0 rgba(255,255,255,.8)}
.brand{font-size:14px}.nav nav a{font-weight:650}.nav-cta{background:rgba(255,255,255,.45);border-color:#bcc2be}.nav-cta:hover{background:#fff}
.section{padding-top:120px;padding-bottom:120px;background:rgba(245,243,237,.88)}
.hero{min-height:92vh;padding-top:150px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.hero .eyebrow:before{content:"";width:42px;height:2px;background:var(--accent)}
.hero h1{max-width:1120px}.hero-line{font-weight:750;letter-spacing:-.025em}.lede{max-width:780px}
.btn{border-radius:2px;letter-spacing:.01em;background:rgba(255,255,255,.38)}.btn.primary{box-shadow:0 8px 24px rgba(35,79,73,.13)}
.hero:before{font-size:clamp(50px,8vw,120px);bottom:2%;color:rgba(21,25,28,.027)}
.section-head{grid-template-columns:240px minmax(0,1fr);gap:56px}.section-head>span{padding-top:12px;border-top:2px solid var(--accent);max-width:180px}.section-head h2{max-width:880px}
.proof{padding-top:96px}.stats{background:rgba(255,255,255,.3)}.stats div{padding:34px 24px}.stats b{color:var(--text)}.stats span{margin-top:8px;line-height:1.4}
.feature{padding:54px 58px;border:0;box-shadow:0 24px 70px rgba(21,25,28,.10)!important}.feature+.feature{margin-top:28px}.feature-top{font-weight:800}.feature h3{max-width:900px}.feature .mega{letter-spacing:-.025em}.feature:after{content:"CASE STUDY";position:absolute;right:58px;bottom:50px;font-size:10px;letter-spacing:.18em;color:#7f898b}.feature:before{display:none}
.project-grid{gap:0;border:1px solid var(--line);background:transparent;box-shadow:none}.project-grid article{background:rgba(251,250,246,.82);border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:250px}.project-grid article:nth-child(2n){border-right:0}.project-grid article:nth-last-child(-n+2){border-bottom:0}.project-grid h3{letter-spacing:-.025em}.project-grid b{display:block;padding-top:14px;border-top:1px solid var(--line)}
.about-grid{gap:110px}.about-copy p:first-child{font-size:24px;color:var(--text)}.traits{border-bottom:1px solid var(--line)}.traits>div{padding:28px 0}.traits b{display:block;margin-bottom:8px}
.timeline{position:relative;border-top:0}.timeline:before{content:"";position:absolute;left:239px;top:0;bottom:0;width:1px;background:var(--line)}.step{grid-template-columns:240px minmax(0,1fr);gap:56px;padding:62px 0}.year{font-weight:800;letter-spacing:.08em}.step>div:last-child{position:relative}.step>div:last-child:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);left:-61px;top:4px}.step.current{background:linear-gradient(90deg,transparent 19%,rgba(35,79,73,.065) 19%,rgba(35,79,73,.02) 100%)}.step.current>div:last-child:before{background:var(--accent)}.mini-stats{border:1px solid var(--line);background:transparent;gap:0}.mini-stats b{background:rgba(255,255,255,.45);border-right:1px solid var(--line)}.mini-stats b:last-child{border:0}
.beyond{background:#e8e3d9}.beyond .section-head>span{border-color:#4c5f21}.stories{gap:20px}.story{box-shadow:0 10px 34px rgba(21,25,28,.035)}
.contact{background:#faf9f5}.contact h2{font-size:clamp(60px,8vw,116px)}.contact-form{background:#fff;padding:42px;border:1px solid var(--line);box-shadow:0 18px 50px rgba(21,25,28,.055);max-width:960px}.contact-form input,.contact-form textarea{background:#faf9f5;border-radius:2px}.contact-form input:focus,.contact-form textarea:focus{box-shadow:0 0 0 3px rgba(35,79,73,.09)}
footer{border-top:1px solid var(--line);max-width:none;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2));background:#f0eee8}
@media(max-width:800px){.section-head{display:block}.section-head>span{max-width:150px}.feature{padding:30px 22px}.feature:after{display:none}.project-grid article,.project-grid article:nth-child(2n),.project-grid article:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.project-grid article:last-child{border-bottom:0}.timeline:before{left:5px}.step{grid-template-columns:1fr;padding-left:26px;gap:14px}.step>div:last-child:before{left:-25px;top:4px}.step.current{background:linear-gradient(90deg,rgba(35,79,73,.07),transparent)}.contact-form{padding:28px 20px}.nav{height:70px}.brand{font-size:12px}.nav-links .nav-cta:first-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* V2.3.1 — hero/header refinement */
@media (min-width:801px){
  .nav{height:72px;gap:32px}
  .nav nav{gap:25px}
  .nav-cta{padding:7px 12px;font-size:12px}
  .hero{min-height:calc(100vh - 18px);padding-top:118px;padding-bottom:72px;justify-content:center}
  .hero h1{font-size:clamp(54px,7.15vw,108px);line-height:.88;max-width:1040px;margin:20px 0 16px}
  .hero h1 span{color:#676e6d}
  .hero-line{font-size:clamp(24px,2.35vw,35px);margin:6px 0 10px}
  .lede{font-size:18px;line-height:1.5;max-width:760px;margin:8px 0}
  .actions{margin-top:24px}
  .hero:before{font-size:clamp(46px,6.8vw,102px);bottom:1.5%}
  .signal{bottom:7%;width:300px;height:300px}
}

/* V2.3.2 — hero lock */
.hero h1 span{color:#5f6665}
.hero-line{margin-bottom:4px}
.lede{margin-top:8px}

/* V2.3.4 — Proof lock: executive emphasis without breaking the five-column rhythm */
.stats div:nth-child(2) b{color:var(--accent);font-size:clamp(42px,4.65vw,74px)}
.stats span{font-size:12px;line-height:1.35;letter-spacing:.075em}
@media(max-width:800px){.stats div:nth-child(2) b{font-size:clamp(42px,14vw,68px)}}
/* v2.3.5 — Selected Work refinement */
.work .section-head{margin-bottom:58px}
.work .section-head p{margin-top:14px}
.work .feature{margin-bottom:28px}
.work .feature:first-of-type{background:#171b1e}
.work .feature.alt{background:var(--panel);color:var(--text);border:1px solid var(--line);box-shadow:none!important}
.work .feature.alt .feature-top{color:var(--accent);border-color:var(--line)}
.work .feature.alt h3 em{color:var(--accent)}
.work .feature.alt .mega{border-color:var(--line);color:var(--text)}
.work .feature.alt .mega small,.work .feature.alt .cols p,.work .feature.alt .tags span{color:var(--muted)}
.work .feature.alt .cols strong{color:var(--text)}
.work .feature.alt .tags span{border-color:var(--line)}
.work .feature.alt:after{color:var(--accent)}
.work .project-grid{margin-top:44px}
.work .short{margin-top:64px}
@media(max-width:800px){.work .section-head{margin-bottom:42px}.work .project-grid{margin-top:30px}}

/* V2.3.6 — Selected Work flagship lock */
.work .section-head{margin-bottom:18px}
.work .feature:first-of-type{margin-top:0}
.work .feature h3{margin:42px 0 30px}
.work .feature .mega{padding:22px 0}
.work .feature:first-of-type .mega{color:#f5f2ea}

.feature:after{display:none!important}
.feature-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:8px}
.case-link{flex:0 0 auto;font-size:10px;letter-spacing:.18em;color:var(--accent);font-weight:800;padding:8px 0;border-bottom:1px solid transparent}
.case-link:hover{border-bottom-color:currentColor}
.work .feature.alt{background:#fffdf8!important;color:#171a1d!important;border:1px solid #d3cec2!important;box-shadow:0 18px 50px rgba(21,25,28,.045)!important;--line:#d3cec2;--accent:#365d55}
.work .feature.alt .feature-top{color:#365d55!important;border-color:#d3cec2!important}
.work .feature.alt h3{color:#171a1d!important}
.work .feature.alt h3 em{color:#666c70!important}
.work .feature.alt .mega{color:#171a1d!important;border-color:#d3cec2!important}
.work .feature.alt .mega small{color:#666c70!important}
.work .feature.alt .cols p{color:#666c70!important}
.work .feature.alt .cols strong{color:#171a1d!important}
.work .feature.alt .tags span{color:#666c70!important;border-color:#d3cec2!important}
.work .feature.alt .case-link{color:#365d55!important}
@media(max-width:800px){.work .section-head{margin-bottom:34px}.feature-foot{display:block}.case-link{display:inline-block;margin-top:20px}}

.work .feature:first-of-type .money,.work .feature.alt .money{color:#365d55}
.work .feature:first-of-type .money{color:#b9d9cf}

/* v2.3.8 — Who is this guy? refinement */
.about-copy{font-size:18px;max-width:760px}
.about-copy p{max-width:690px}
.about-copy p:first-child{font-size:24px;line-height:1.65;max-width:760px}
.about-copy p:nth-child(4){max-width:760px;margin:34px 0;padding:20px 0 20px 22px;border-left:3px solid var(--accent);font-size:20px;line-height:1.5;color:var(--text)}
.about-copy p:nth-child(4) strong{font-weight:850}
.about-copy .manifesto{margin-top:30px}
.about>blockquote{margin-top:82px;margin-bottom:-55px}
@media(max-width:800px){.about-copy{font-size:17px}.about-copy p:first-child{font-size:21px}.about-copy p:nth-child(4){font-size:18px;padding-left:16px}.about>blockquote{margin-bottom:-25px}}

/* v2.3.9 final polish */
.beyond.section{padding-top:110px;padding-bottom:110px}
.beyond .section-head{margin-bottom:56px}
@media(max-width:800px){.beyond.section{padding-top:82px;padding-bottom:82px}.beyond .section-head{margin-bottom:42px}}

/* v2.5.2 — personal photography */
.suit-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:56px;align-items:end;margin-top:62px}
.suit-proof blockquote{margin:0}
.suit-proof .suit{margin:24px 0 0}
.suit-photo{margin:0;overflow:hidden;background:#171a1d;aspect-ratio:2/3;border:1px solid #d4d0c7}
.suit-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
@media(max-width:800px){.suit-proof{grid-template-columns:1fr;gap:32px;margin-top:48px}.suit-photo{max-width:420px;width:100%;aspect-ratio:2/3}.suit-proof blockquote{font-size:42px}}

/* v2.5.4 — wide personal brand image */
.suit-proof{grid-template-columns:minmax(0,1fr) minmax(520px,1.25fr);gap:48px;align-items:center}
.suit-photo{width:100%;max-width:none;aspect-ratio:3/2;background:#171a1d}
.suit-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:1050px) and (min-width:801px){.suit-proof{grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);gap:32px}.suit-proof blockquote{font-size:clamp(34px,4vw,48px)}}
@media(max-width:800px){.suit-proof{grid-template-columns:1fr;gap:28px}.suit-photo{max-width:none;width:100%;aspect-ratio:3/2}.suit-photo img{object-fit:contain;object-position:center}}
