:root{--ink:#101a2d;--paper:#f7f4ee;--warm:#ded3c2;--accent:#ed6d4b;--blue:#214c92;--line:#d8d3ca;--serif:'Playfair Display',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}.wrap{width:min(1160px,calc(100% - 64px));margin:auto}.page-glow{position:absolute;right:0;top:0;width:48vw;height:740px;background:radial-gradient(circle at 60% 30%,#e9daca 0,rgba(233,218,202,.55) 24%,transparent 64%);pointer-events:none}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{font-family:var(--mono);font-size:11px;letter-spacing:1.4px;text-decoration:none;color:var(--ink);font-weight:500}.brand span{background:var(--ink);color:white;padding:7px 6px;margin-right:9px;letter-spacing:0}.nav nav{display:flex;gap:30px}.nav nav a,.contact-links a{color:var(--ink);font-size:12px;font-weight:700;text-decoration:none;letter-spacing:.3px}.nav nav a:hover,.contact-links a:hover{color:var(--accent)}.menu-toggle{display:none}.hero{min-height:620px;display:grid;grid-template-columns:1.14fr .86fr;align-items:center;gap:30px;position:relative}.hero-copy{padding:65px 0 80px;z-index:1}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:1.2px;font-weight:500;margin:0 0 23px;color:#536072}.eyebrow span{display:inline-block;width:24px;height:1px;background:var(--accent);vertical-align:middle;margin-right:10px}.hero h1,.about h2,.skills h2,.projects h2,.credentials h2,.contact h2{font-size:clamp(43px,5.3vw,76px);line-height:1.08;letter-spacing:-3px;margin:0;font-weight:800;max-width:690px}.hero h1 em,h2 em{font-family:var(--serif);font-weight:600}.lead{font-size:17px;line-height:1.75;max-width:545px;margin:30px 0;color:#415067}.hero-actions{display:flex;align-items:center;gap:13px;margin:32px 0}.button{border-radius:0;padding:14px 18px;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.25px;transition:.2s}.button b{font-size:17px;margin-left:10px}.primary{background:var(--ink);color:white}.primary:hover{background:var(--accent)}.quiet{color:var(--ink);border-bottom:1px solid var(--ink);padding-left:4px;padding-right:4px}.availability{font-family:var(--mono);font-size:10px;letter-spacing:.7px;color:#516070}.availability i{display:inline-block;width:8px;height:8px;background:#57b887;border-radius:50%;margin-right:8px}.hero-visual{position:relative;align-self:end;height:535px;display:flex;justify-content:center;align-items:flex-end}.portrait-ring{position:relative;z-index:1;width:min(380px,100%);aspect-ratio:1;border-radius:50% 50% 0 0;overflow:hidden;background:#dbe0e4;border:1px solid #c0c4c9}.portrait-ring img{width:100%;height:100%;object-fit:cover;object-position:center top;mix-blend-mode:multiply}.orbit{border:1px solid rgba(33,76,146,.22);border-radius:50%;position:absolute}.orbit-one{width:462px;height:462px;right:-14px;bottom:21px}.orbit-two{width:520px;height:520px;right:-78px;bottom:-15px;border-style:dashed}.portrait-label{z-index:2;position:absolute;bottom:60px;left:0;background:#fff;padding:13px 16px;display:flex;gap:12px;align-items:center;font-family:var(--mono);font-size:10px;letter-spacing:.8px;line-height:1.5}.portrait-label span{color:var(--accent);font-size:17px}.portrait-label strong{font-family:var(--sans);font-size:11px}.ticker{overflow:hidden;background:var(--ink);color:#fff;height:55px;display:flex;align-items:center;white-space:nowrap}.ticker div{display:flex;gap:30px;align-items:center;animation:marquee 24s linear infinite}.ticker span{font-family:var(--mono);letter-spacing:1px;font-size:11px}.ticker b{color:var(--accent)}@keyframes marquee{to{transform:translateX(-35%)}}.section{padding:135px 0}.section-label{font-family:var(--mono);font-size:10px;letter-spacing:1.1px;color:var(--accent);font-weight:500}.about{display:grid;grid-template-columns:24% 1fr;gap:30px}.about-content h2{font-size:55px;max-width:650px}.about-content>p{margin:28px 0 42px;font-size:16px;line-height:1.8;color:#405068;max-width:725px}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.fact-grid div{padding:19px 18px 0 0}.fact-grid div+div{border-left:1px solid var(--line);padding-left:18px}.fact-grid span,.project-type{display:block;font-family:var(--mono);font-size:10px;color:#637085;letter-spacing:1px}.fact-grid strong{display:block;font-size:17px;margin:6px 0 1px}.fact-grid small{font-size:11px;color:#66758c}.skills{background:var(--ink);color:white}.skills .section-label{color:#f48d6d}.skills-heading{display:flex;justify-content:space-between;align-items:end;margin:28px 0 48px;gap:30px}.skills h2{font-size:54px}.skills-heading>p{margin:0;max-width:270px;font-size:13px;line-height:1.7;color:#b5bece}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#394256}.skill-card{background:var(--ink);padding:31px 28px}.icon{font-family:var(--mono);color:var(--accent);font-size:11px}.skill-card h3{font-size:19px;margin:32px 0 13px}.skill-card p{font-size:13px;color:#b5bece;line-height:1.75;margin:0}.skill-card ul{list-style:none;padding:18px 0 0;margin:20px 0 0;border-top:1px solid #364054}.skill-card li{font-size:11px;margin:8px 0;color:#e8eaf0}.skill-card li:before{content:'—';color:var(--accent);margin-right:8px}.projects-title{font-size:54px;margin:28px 0 52px}.project-list{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:86px 1fr 32px;gap:25px;align-items:start;padding:29px 0;border-bottom:1px solid var(--line);transition:.2s}.project:hover{padding-left:14px;background:#eee9df}.project-number{font-family:var(--mono);font-size:11px;color:var(--accent);padding-top:5px}.project h3{font-size:21px;margin:8px 0 8px}.project p:not(.project-type){margin:0;max-width:640px;font-size:13px;line-height:1.7;color:#526178}.project-arrow{font-size:23px;text-align:right;color:var(--blue)}.credentials{background:#e6ddd0;padding:93px 0}.credentials-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px}.credentials h2{font-size:46px}.credential-list{border-top:1px solid #b9ac9d}.credential-list div{padding:17px 0;border-bottom:1px solid #b9ac9d;display:flex;justify-content:space-between;gap:20px}.credential-list strong{font-size:13px}.credential-list span{font-size:11px;color:#657087;text-align:right}.contact{padding:135px 0 78px}.contact h2{font-size:clamp(38px,5vw,68px);margin-bottom:65px}.contact h2 a{color:var(--accent);text-decoration:none;border-bottom:2px solid var(--accent)}.contact h2 b{font-family:var(--sans);font-size:.7em}.contact-links{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:35px;flex-wrap:wrap}footer{height:65px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:9px;letter-spacing:1px;color:#637085}.reveal{animation:enter .7s both}@keyframes enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(max-width:760px){.wrap{width:min(100% - 36px,1160px)}.nav{height:70px}.nav nav{display:none}.menu-toggle{display:block;border:0;background:none;color:var(--ink);font:600 11px var(--mono);text-transform:uppercase}.nav.open nav{display:flex;position:absolute;top:62px;right:0;background:var(--ink);padding:18px;flex-direction:column;gap:13px}.nav.open nav a{color:white}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:55px 0 30px}.hero h1{letter-spacing:-2px}.hero-visual{height:400px;max-width:390px;width:100%;margin:auto}.portrait-ring{width:300px}.orbit-one{width:360px;height:360px;right:-8px}.orbit-two{display:none}.portrait-label{left:0;bottom:22px}.ticker{height:48px}.about{grid-template-columns:1fr;gap:26px}.section{padding:78px 0}.about-content h2,.skills h2,.projects-title{font-size:41px}.fact-grid{grid-template-columns:1fr}.fact-grid div,.fact-grid div+div{padding:15px 0;border-left:0;border-bottom:1px solid var(--line)}.skills-heading,.credentials-inner{display:block}.skills-heading>p{margin-top:20px}.skill-grid{grid-template-columns:1fr}.credentials{padding:70px 0}.credential-list{margin-top:38px}.credential-list div{display:block}.credential-list span{display:block;text-align:left;margin-top:5px}.project{grid-template-columns:34px 1fr 20px;gap:12px}.project h3{font-size:17px}.contact{padding:78px 0 50px}.contact h2{letter-spacing:-2px;margin-bottom:40px}footer{font-size:8px}.hero-actions{flex-wrap:wrap}}
