:root{--paper:#f5f2eb;--ink:#142c36;--accent:#126650;--muted:#58666b;--line:#d1d5ce;--mint:#bfdac9;--tint:#e8ece4;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #2875a0;outline-offset:5px;border-radius:3px}
::selection{background:#bfdac9;color:#142c36}
.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.skip{position:fixed;top:-80px;left:16px;z-index:100;background:var(--ink);color:white;padding:12px 18px}
.skip:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(245,242,235,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:15px;font-weight:650;letter-spacing:-.03em}
.monogram{font-size:34px;font-weight:750;letter-spacing:-.11em;line-height:1;padding-right:4px}
.monogram span{color:var(--accent)}
.brand-name{font-size:15px;letter-spacing:-.015em}
nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:600}
nav a:hover{color:var(--accent)}
.nav-contact{border:1px solid #aab7ac;padding:10px 15px;border-radius:3px}
.nav-contact span{margin-left:10px}
.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:64px;padding-block:88px 84px;align-items:center}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.5;color:var(--accent);margin:0 0 22px}
.hero .eyebrow{display:flex;align-items:center;gap:10px;letter-spacing:.13em}
.status-dot{height:7px;width:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #e3e8dc}
.intro-name{font-size:18px;font-weight:500;margin:0 0 12px}
h1{font-size:clamp(44px,5.3vw,72px);line-height:1.05;letter-spacing:-.055em;font-weight:650;margin:0}
h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;color:var(--accent)}
.hero-description{max-width:550px;color:var(--muted);font-size:17px;line-height:1.75;margin:26px 0 28px}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:14px 18px;border-radius:3px;font-size:14px;font-weight:600;transition:background .18s}
.primary{background:var(--ink);color:var(--paper)}
.primary:hover{background:#215148}
.text-link{font-size:14px;font-weight:600;padding-block:5px;border-bottom:1px solid #aab7ac;display:inline-flex;align-items:center;gap:14px}
.text-link:hover{color:var(--accent);border-color:var(--accent)}
.scope-card{background-color:var(--ink);background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:35px 35px;color:var(--paper);border-radius:6px;padding:26px 28px 0;overflow:hidden;box-shadow:0 18px 50px #142c3610}
.card-label{display:flex;justify-content:space-between;color:#c4d5d0;font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;letter-spacing:.06em}
.scope-head{display:flex;gap:18px;align-items:center;margin:34px 0 30px}
.scope-head p{font-family:Georgia,serif;font-size:28px;line-height:1.25;letter-spacing:-.02em;margin:0}
.scope-symbol{display:flex;align-items:center;justify-content:center;width:62px;height:62px;flex:none;border:1px solid #526861;border-radius:5px;color:var(--mint)}
.scope-symbol svg{width:40px;height:40px;stroke:currentColor;stroke-width:1.5}
.scope-stats{display:grid;grid-template-columns:1.3fr .8fr .9fr;gap:16px;border-block:1px solid #45605c;padding-block:23px}
.scope-stats div{display:flex;flex-direction:column}
.scope-stats strong{font-size:28px;font-weight:550;line-height:1.25;letter-spacing:-.04em}
.scope-stats span{font-size:11px;color:#c4d5d0;margin-top:5px}
.scope-bottom{padding:21px 0 23px}
.scope-bottom p{font-size:13px;font-weight:600;margin:0 0 4px}
.scope-bottom>span{display:block;font-size:12px;color:#bdcbc7;line-height:1.7}
.scope-note{background:var(--mint);color:var(--ink);margin:0 -28px;display:flex;align-items:center;gap:12px;font-size:11px;font-weight:500;padding:15px 22px}
.scope-note>span{font-size:22px}
.stack-strip{border-block:1px solid var(--line);background:#eeeee5}
.stack-inner{display:flex;align-items:center;gap:36px;padding-block:22px}
.strip-label{font:10px/1.6 "SFMono-Regular",Consolas,monospace;color:var(--muted);letter-spacing:.08em;white-space:nowrap}
.stack-items{display:flex;flex-wrap:wrap;gap:12px 27px;font-size:13px;font-weight:600}
.section{padding-block:88px}
.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;margin-bottom:44px}
.section-heading .eyebrow{margin-bottom:16px}
h2{font-size:clamp(31px,3.4vw,44px);line-height:1.15;letter-spacing:-.045em;font-weight:580;margin:0}
.section-aside{font-size:17px;color:var(--muted);line-height:1.75;margin:0;max-width:390px}
.project{border-top:1px solid #b9c1b7}
.project:last-child{border-bottom:1px solid #b9c1b7}
.project summary{display:grid;grid-template-columns:54px minmax(0,1fr) 164px;gap:25px;list-style:none;cursor:pointer;padding:36px 0}
.project summary::-webkit-details-marker{display:none}
.project summary:hover .project-title{color:var(--accent)}
.project-number{font:12px/1.5 "SFMono-Regular",Consolas,monospace;color:var(--accent);padding-top:4px}
.project-category{display:block;font-size:10px;font-weight:650;letter-spacing:.12em;color:var(--accent);margin-bottom:12px}
.project-title{font-size:30px;line-height:1.22;font-weight:580;letter-spacing:-.03em;display:block;transition:color .15s}
.project-description{display:block;font-size:15px;color:var(--muted);line-height:1.75;max-width:650px;margin-top:15px}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.tags>span{border:1px solid #cad1c5;color:#41534f;border-radius:2px;padding:3px 8px;font-size:10px;font-weight:550;line-height:1.6}
.project-result{display:flex;flex-direction:column;align-items:flex-end;padding-top:19px}
.project-result strong{font-family:Georgia,serif;font-size:49px;font-weight:400;letter-spacing:-.04em;line-height:1.15}
.project-result>span:not(.read-case){font-size:11px;color:var(--muted);margin-top:3px;text-align:right}
.read-case{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:600;color:var(--accent);margin-top:35px;white-space:nowrap}
.project-toggle{border:1px solid #a7b8a9;height:25px;width:25px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:19px;font-weight:400;line-height:1;transition:transform .2s}
.project[open] .project-toggle{transform:rotate(45deg)}
.project-body{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;margin:0 0 35px 79px;padding:27px;background:#e9ece2;border-radius:3px}
.project-body h3{margin:0 0 8px;font-size:15px;font-weight:650;color:var(--accent)}
.project-body p{font-size:13px;line-height:1.85;margin:0;color:#3c5051}
.experience-section{background:var(--tint);border-block:1px solid var(--line);padding-block:88px}
.experience-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:100px}
.experience-intro>p:not(.eyebrow){font-size:17px;color:var(--muted);line-height:1.8;margin:23px 0}
.experience-intro .eyebrow{margin-bottom:16px}
.role-date{font:10px/1.5 "SFMono-Regular",Consolas,monospace;letter-spacing:.07em;color:var(--accent)}
.role-heading h3{font-size:24px;letter-spacing:-.025em;line-height:1.35;font-weight:600;margin:10px 0 4px}
.role-heading p{margin:0;color:var(--muted);font-size:13px}
.experience-list{list-style:none;margin:22px 0 0;padding:0}
.experience-list li{padding:13px 0 13px 19px;border-bottom:1px solid #cdd5c9;font-size:14px;line-height:1.75;position:relative;color:#364c50}
.experience-list li:before{content:"—";position:absolute;left:0;top:14px;color:var(--accent)}
.experience-list strong{font-weight:650}
.credentials{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:21px;margin-top:28px}
.credential-kind{font-size:9px;letter-spacing:.1em;color:var(--accent);font-weight:700}
.credentials h4{font-size:14px;font-weight:650;line-height:1.45;margin:8px 0 5px}
.credentials p{font-size:11px;color:#52655d;line-height:1.7;margin:0}
.approach-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;margin-top:10px}
.approach-grid article{border-top:1px solid #aab9a8;padding-top:20px}
.approach-grid article>span{font:10px/1.5 "SFMono-Regular",Consolas,monospace;letter-spacing:.05em;color:var(--accent)}
.approach-grid h3{font-size:21px;line-height:1.35;letter-spacing:-.03em;font-weight:600;margin:13px 0 11px}
.approach-grid p{color:var(--muted);font-size:14px;line-height:1.8;margin:0}
.ai-note{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:22px;padding:26px 28px;background:#e8ece2;border-left:3px solid var(--accent);margin-top:46px}
.ai-mark{font-size:31px;color:var(--accent)}
.ai-note h3{font-size:17px;font-weight:600;margin:0 0 6px;letter-spacing:-.02em}
.ai-note p{font-size:13px;color:#4c605c;line-height:1.8;max-width:750px;margin:0}
.ai-label{font-size:9px;font-weight:700;letter-spacing:.09em;color:var(--accent);white-space:nowrap}
.contact-section{background:var(--ink);color:var(--paper);padding-top:76px}
.contact-top{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}
.contact-section .eyebrow{color:var(--mint);margin-bottom:18px}
.contact-section h2{font-size:clamp(32px,3.7vw,48px)}
.contact-top p:not(.eyebrow){font-size:16px;color:#becdc7;line-height:1.8;max-width:520px;margin:22px 0 0}
.contact-links{display:flex;flex-direction:column;align-items:stretch}
.contact-links>a,.contact-links>button{display:flex;align-items:center;justify-content:space-between;padding:15px 0;background:none;border:0;border-bottom:1px solid #49605c;color:var(--paper);font-size:17px;text-align:left;cursor:pointer}
.contact-links>a:hover,.contact-links>button:hover{color:var(--mint)}
.contact-links>a>span,.contact-links>button>span{font-size:23px}
.copy-status{font-size:12px;min-height:30px;color:var(--mint);padding-top:10px;overflow-wrap:anywhere}
footer{border-top:1px solid #49605c;margin-top:64px;padding-block:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:#becdc7}
footer a:hover{color:white}

@media(min-width:1350px){.hero{padding-top:100px;padding-bottom:100px}.scope-card{margin-top:20px}}
@media(max-width:1050px){
  .wrap{width:calc(100% - 56px)}
  .hero{grid-template-columns:minmax(0,1.2fr) minmax(295px,1fr);gap:36px;padding-block:65px}
  h1{font-size:52px}.hero-description{font-size:16px}
  .scope-card{padding:23px 24px 0}.scope-head{gap:13px}.scope-head p{font-size:25px}.scope-symbol{width:50px;height:55px}.scope-note{margin-inline:-24px;padding-inline:18px}
  .stack-inner{gap:25px}.stack-items{gap:10px 20px;font-size:12px}
  .section-heading{gap:40px}.experience-layout{gap:55px}.experience-intro h2{font-size:34px}
  .project summary{grid-template-columns:35px minmax(0,1fr) 134px;gap:19px}.project-title{font-size:27px}.project-description{font-size:14px}.project-body{margin-left:54px;gap:20px;padding:22px}
  .contact-top{gap:55px}.ai-note{grid-template-columns:28px 1fr}.ai-label{display:none}
}
@media(max-width:760px){
  html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}
  .header-inner{height:70px;gap:15px}.brand-name{display:none}.monogram{font-size:30px}
  nav{gap:18px;font-size:11px}.nav-contact{padding:8px 10px}.nav-contact span{margin-left:5px}
  .hero{grid-template-columns:1fr;gap:38px;padding-block:48px 50px}
  .hero .eyebrow{font-size:9px}.intro-name{font-size:16px}h1{font-size:clamp(39px,8.4vw,61px);letter-spacing:-.05em;line-height:1.07}
  .desktop-break{display:none}.hero-description{font-size:16px;max-width:540px;margin:23px 0}.hero-actions{gap:23px}.button{font-size:13px;gap:30px}
  .text-link{font-size:12px}.scope-card{max-width:560px;width:100%;margin-inline:auto}.scope-head{margin:26px 0 24px}.scope-head p{font-size:28px}.scope-note{font-size:11px}
  .stack-inner{display:block;padding-block:19px}.strip-label{display:block;font-size:9px;margin-bottom:12px}.stack-items{gap:10px 20px;font-size:12px}
  .section{padding-block:58px}.section-heading{grid-template-columns:1fr;gap:21px;margin-bottom:31px}h2{font-size:34px}.section-aside{font-size:15px;max-width:540px}.section-heading .eyebrow{font-size:10px;margin-bottom:13px}
  .project summary{grid-template-columns:25px minmax(0,1fr);gap:0 13px;padding-block:28px}.project-number{font-size:11px;padding-top:0}.project-category{font-size:8px;letter-spacing:.09em;margin-bottom:11px}.project-title{font-size:25px}.project-description{font-size:13px;line-height:1.8}.tags{gap:5px;margin-top:15px}.tags>span{font-size:9px;padding:3px 6px}
  .project-result{display:grid;grid-template-columns:auto 1fr auto;grid-column:2;align-items:center;gap:9px;padding-top:21px;text-align:left}.project-result strong{font-size:31px}.project-result>span:not(.read-case){font-size:9px;text-align:left;line-height:1.35;margin:0;max-width:70px}.read-case{font-size:10px;margin:0;gap:8px}.project-toggle{height:22px;width:22px;font-size:17px}
  .project-body{grid-template-columns:1fr;gap:24px;margin:0 0 27px;padding:23px}.project-body p{font-size:13px}
  .experience-section{padding-block:58px}.experience-layout{grid-template-columns:1fr;gap:38px}.experience-intro>p:not(.eyebrow){font-size:15px;max-width:560px}.experience-intro .eyebrow{font-size:10px}
  .role-heading h3{font-size:23px}.experience-list li{font-size:13px}.credentials{gap:19px}.credentials h4{font-size:13px}.credentials p{font-size:10px}
  .approach-grid{grid-template-columns:1fr;gap:30px}.approach-grid h3{font-size:21px}.approach-grid p{font-size:14px;max-width:550px}.ai-note{padding:22px 18px;gap:13px;margin-top:33px;align-items:start}.ai-note h3{font-size:16px}.ai-note p{font-size:12px}
  .contact-section{padding-top:56px}.contact-top{grid-template-columns:1fr;gap:27px}.contact-section h2{font-size:36px}.contact-top p:not(.eyebrow){font-size:14px}.contact-links>a,.contact-links>button{font-size:15px}
  footer{margin-top:36px;display:grid;grid-template-columns:1fr auto;gap:12px;font-size:9px}footer>span:nth-child(2){grid-row:2;grid-column:1/-1}footer>a{grid-column:2;grid-row:1}
}
@media(max-width:390px){.wrap{width:calc(100% - 32px)}nav{gap:13px}.nav-contact{padding:7px 8px}.nav-contact span{display:none}.credentials{grid-template-columns:1fr;gap:16px}.credentials>div{border-top:1px solid #cdd5c9;padding-top:15px}.credentials h4{margin-top:4px}.hero-actions{gap:18px}.button{padding:13px 14px;gap:21px}h1{font-size:38px}.project-title{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.hero-actions,.stack-strip,.contact-links,.project-result .read-case,.skip{display:none!important}body{background:white;font-size:11px}.wrap{width:100%}.hero,.section,.experience-section{padding-block:24px}.hero{grid-template-columns:1.4fr 1fr;gap:25px}h1{font-size:32px}h2{font-size:27px}.scope-card{box-shadow:none;print-color-adjust:exact}.project summary{padding-block:18px}.project-body{display:grid!important;margin-bottom:20px}.project-title{font-size:23px}.experience-layout{gap:30px}.contact-section{background:white;color:var(--ink);padding-top:20px}.contact-section .eyebrow,.contact-top p:not(.eyebrow),footer{color:var(--muted)}.contact-top{display:block}footer{margin-top:20px}.approach-grid article,.project{break-inside:avoid}}

