:root{--bg:#101311;--panel:#151916;--ink:#f1f0e9;--muted:#9ca39d;--green:#9ac59d;--line:#2b312d;--mono:"DM Mono",monospace;--sans:"Manrope",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}.grain{pointer-events:none;opacity:.035;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.shell{width:min(1180px,100% - 56px);margin-inline:auto}.nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:100px;display:flex}.mark{letter-spacing:-.04em;font-size:20px;font-weight:600}.mark span{color:var(--green)}nav{align-items:center;gap:36px;font-size:13px;display:flex}nav a{color:var(--muted);transition:all .2s}nav a:hover{color:var(--ink)}.nav-cta{color:var(--ink);border:1px solid #414a43;border-radius:2px;padding:11px 17px}.nav-cta span,.button span,.email span{color:var(--green);margin-left:8px}.hero{grid-template-columns:1.25fr .75fr;align-items:center;gap:80px;min-height:calc(100vh - 100px);padding:80px 0 64px;display:grid;position:relative}.availability,.section-label,.eyebrow{font:500 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green)}.availability{align-items:center;gap:10px;margin:0 0 28px;display:flex}.availability i{background:var(--green);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 5px #9ac59d14}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.065em;margin-bottom:32px;font-size:clamp(54px,7.2vw,102px);font-weight:500;line-height:.98}h1 em,h2 em,.statement-copy em{color:var(--green);font-style:normal}.intro{color:#bdc2bd;max-width:660px;font-size:19px;line-height:1.7}.actions{gap:14px;margin-top:38px;display:flex}.button{border:1px solid var(--line);justify-content:center;align-items:center;padding:14px 20px;font-size:13px;transition:all .25s;display:inline-flex}.button.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.button.primary span{color:#58785d}.button:hover{border-color:var(--green);transform:translateY(-2px)}.portrait-wrap{justify-self:end;width:min(100%,390px);position:relative}.portrait-frame{aspect-ratio:4/5;background:#202620;overflow:hidden}.portrait-frame img{object-fit:cover;filter:saturate(.68)contrast(1.04);width:100%;height:100%;transform:scale(1.08)}.portrait-note{background:var(--ink);color:var(--bg);flex-direction:column;padding:13px 18px;font-size:11px;display:flex;position:absolute;bottom:30px;right:-20px;box-shadow:0 20px 50px #0006}.portrait-note span{font:9px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:#667069}.portrait-note strong{font-weight:600}.hero-index{font:10px var(--mono);color:#657068;letter-spacing:.1em;position:absolute;bottom:22px;right:0}.statement{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;padding:150px 0;display:grid}.statement-copy{letter-spacing:-.045em;max-width:950px;font-size:clamp(30px,4.5vw,61px);line-height:1.22}.work,.skills{border-top:1px solid var(--line);padding:130px 0}.section-head{justify-content:space-between;align-items:end;margin-bottom:70px;display:flex}.section-head h2{letter-spacing:-.055em;margin:18px 0 0;font-size:clamp(38px,5vw,68px);font-weight:500;line-height:1}.section-head>p{max-width:400px;color:var(--muted);margin-bottom:4px;font-size:14px}.work-list{border-top:1px solid var(--line)}.work-card{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr 300px;gap:40px;padding:56px 0;display:grid}.card-number{font:11px var(--mono);color:#687169}.card-main h3{letter-spacing:-.04em;margin:8px 0;font-size:34px;font-weight:500}.meta{font:11px var(--mono);color:var(--muted);margin-bottom:28px}.card-copy{color:#b8beb9;max-width:630px;font-size:15px}.work-card ul{margin:30px 0 0;padding:0;list-style:none}.work-card li{border-bottom:1px solid var(--line);font:11px var(--mono);color:#aeb5af;padding:10px 0}.work-card li:before{content:"+";color:var(--green);margin-right:12px}.skill-grid{border-top:1px solid var(--line)}.skill-row{border-bottom:1px solid var(--line);grid-template-columns:70px 220px 1fr 70px;align-items:center;padding:25px 0;transition:all .2s;display:grid}.skill-row:hover{background:#141815;padding-left:8px}.skill-row span{font:10px var(--mono);color:#687169}.skill-row h3{margin:0;font-size:16px;font-weight:500}.skill-row p{color:var(--muted);margin:0;font-size:14px}.skill-row b{font:10px var(--mono);color:var(--green);text-align:right}.cert{color:#b8beb9;font:12px var(--mono);margin-top:32px}.cert span{color:var(--green);text-transform:uppercase;letter-spacing:.08em;margin-right:24px}.cert i{color:#59615b;margin:0 12px}.contact{border-top:1px solid var(--line);padding:160px 0 180px}.contact h2{letter-spacing:-.06em;margin:25px 0 55px;font-size:clamp(45px,7vw,92px);font-weight:500;line-height:1.04}.email{border-bottom:1px solid var(--green);padding-bottom:8px;font-size:clamp(17px,2.5vw,28px)}.footer{border-top:1px solid var(--line);color:#6f7871;height:100px;font:10px var(--mono);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;display:flex}.footer div{gap:30px;display:flex}.footer a:hover{color:var(--ink)}.disabled{opacity:.42;cursor:not-allowed}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(18px)}.reveal.visible{opacity:1;transform:none}@media (width<=800px){.shell{width:min(100% - 32px,1180px)}.nav{height:78px}.nav nav>a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;gap:55px;min-height:auto;padding:65px 0 90px}.portrait-wrap{justify-self:start;width:min(80vw,380px)}.portrait-note{right:-12px}.statement{grid-template-columns:1fr;gap:28px;padding:100px 0}.work,.skills{padding:90px 0}.section-head{margin-bottom:45px;display:block}.section-head>p{margin-top:25px}.work-card{grid-template-columns:40px 1fr;gap:20px}.work-card ul{grid-column:2}.skill-row{grid-template-columns:35px 1fr 50px;padding:22px 0}.skill-row p{grid-column:2;margin-top:7px}.skill-row b{grid-area:1/3}.contact{padding:110px 0}.footer{align-items:flex-start;gap:25px;height:auto;padding:30px 0}.footer div{flex-wrap:wrap;justify-content:flex-end;gap:18px}.hero-index{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}}
