*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f0e8;color:#111;font-family:"DM Sans",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}header{height:76px;position:fixed;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#f3f0e8d9;backdrop-filter:blur(15px);border-bottom:1px solid #1111}.logo{font-weight:700;letter-spacing:-.05em}.logo sup{font-size:8px}nav{display:flex;gap:30px;text-transform:uppercase;font-size:11px;letter-spacing:.1em}.talk{text-transform:uppercase;font-size:11px;letter-spacing:.1em}#menuBtn{display:none;background:none;border:0}.hero{min-height:100vh;padding:110px 5vw 25px;display:flex;flex-direction:column;justify-content:space-between}.meta,.bottom,.label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.heroGrid,.two{display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center;max-width:1500px;width:100%;margin:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;margin:0 0 22px}.hero h1,h2{font-weight:500;letter-spacing:-.075em;line-height:.85;margin:0}.hero h1{font-size:clamp(4.4rem,9vw,10rem)}em{font-family:"Instrument Serif",serif;font-weight:400}.intro{max-width:520px;color:#5d5d5d;line-height:1.6;margin:28px 0;font-size:16px}.actions{display:flex;align-items:center;gap:25px}.btn{background:#111;color:#fff;border-radius:100px;padding:15px 21px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;display:inline-block}.btn.light{background:#f3f0e8;color:#111}.under{font-size:11px;text-transform:uppercase;border-bottom:1px solid}.portrait{max-width:570px;margin-left:auto;position:relative;transition:transform .15s ease;perspective:900px}.portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.tag{position:absolute;left:-30px;bottom:28px;background:#111;color:#fff;padding:12px;font-size:9px;line-height:1.5;letter-spacing:.12em}.orb{position:absolute;right:-28px;top:18%;width:82px;height:82px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#d71920 18%,#65070b 60%,#111);box-shadow:0 20px 45px #70050a44;animation:float 5s ease-in-out infinite}.bottom{align-items:center}.bottom i{height:1px;background:#999;flex:1;margin:0 20px}.marquee{overflow:hidden;border-block:1px solid #111;padding:17px 0;white-space:nowrap;font-size:18px}.marquee div{display:inline-block;animation:scroll 30s linear infinite}.section{padding:8rem 5vw}.label{border-top:1px solid #aaa;padding-top:12px;margin-bottom:7rem}.two{max-width:none}.two h2,.workHead h2{font-size:clamp(3.3rem,6vw,7rem)}.lead{font-size:26px;line-height:1.2;letter-spacing:-.03em}.two>div>p:not(.eyebrow),.workHead p{color:#666;line-height:1.65}.facts{margin-top:45px;border-top:1px solid #aaa}.facts div{border-bottom:1px solid #aaa;padding:15px 0}.facts b{display:inline-block;width:45px;color:#999;font-weight:400}.dark{background:#111;color:#f3f0e8}.dark .label{border-color:#555}.workHead{display:flex;align-items:end;justify-content:space-between;gap:6vw;margin-bottom:65px}.workHead p{max-width:420px}.projects{display:grid;grid-template-columns:1.25fr .75fr;gap:25px}.project{margin-bottom:30px}.project.big{grid-row:span 2}.visual{min-height:390px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.big .visual{min-height:650px}.visual span{font-size:clamp(6rem,14vw,14rem);font-weight:700;letter-spacing:-.1em}.visual small{position:absolute;top:20px;left:20px;font-size:9px;letter-spacing:.14em}.ai{background:linear-gradient(135deg,#24171a,#c1121b,#f17a56)}.store{background:#ddd8cd}.seo{background:#2d2d2d}.project h3{font-size:26px;margin:16px 0 5px;font-weight:500}.project p{font-size:12px;color:#999;margin:0}.skills{background:#e5e1d7}.skillList{border-top:1px solid #aaa}.skillList>div{display:grid;grid-template-columns:40px 1fr 1fr;gap:15px;padding:23px 0;border-bottom:1px solid #aaa;align-items:center}.skillList b{color:#999;font-size:11px}.skillList strong{font-size:20px}.skillList small{color:#666}.certs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.certs article{border:1px solid #aaa;min-height:240px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.certs article:hover{transform:translateY(-6px);background:#fff}.certs b{font-size:10px;color:#999}.certs h3{font-size:21px;line-height:1.05;letter-spacing:-.04em;margin:15px 0}.certs p{font-size:12px;color:#777}.certs a{font-size:10px;text-transform:uppercase;letter-spacing:.1em;border-top:1px solid #aaa;padding-top:12px}.resumeCard{background:#1b1b1b;padding:6vw;display:flex;justify-content:space-between;align-items:end;gap:5vw}.resumeCard h2{font-size:clamp(3.5rem,7vw,8rem)}.resumeCard p:last-child{color:#aaa;max-width:500px;line-height:1.6}.contact{min-height:90vh;padding:9rem 5vw 30px;background:#c7131b;color:#fff;display:flex;flex-direction:column;justify-content:center}.contact h2{font-size:clamp(4rem,10vw,12rem);margin-bottom:60px}.email{font-size:clamp(1.3rem,3vw,3rem);border-bottom:1px solid #ffffff88;width:max-content;padding-bottom:12px}.footer{margin-top:auto;padding-top:80px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em}.glow{position:fixed;z-index:1;pointer-events:none;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#c7131b20,transparent 70%);transform:translate(-50%,-50%)}#mobile{display:none}@keyframes float{50%{transform:translateY(-20px) rotate(8deg)}}@keyframes scroll{to{transform:translateX(-50%)}}.reveal{opacity:0;transform:translateY(25px);transition:.9s}.reveal.on{opacity:1;transform:none}@media(max-width:900px){nav,.talk{display:none}#menuBtn{display:block}.heroGrid,.two{grid-template-columns:1fr}.hero h1{font-size:17vw}.portrait{margin-top:50px;margin-left:0}.tag{left:10px;bottom:10px}.workHead,.resumeCard{display:block}.projects{grid-template-columns:1fr}.big .visual{min-height:450px}.certs{grid-template-columns:1fr 1fr}.skillList>div{grid-template-columns:30px 1fr}.skillList small{grid-column:2}.resumeCard .btn{margin-top:35px}.footer{flex-wrap:wrap;gap:15px}}@media(max-width:520px){.section{padding:6rem 6vw}.section .label{margin-bottom:4rem}.certs{grid-template-columns:1fr}.hero{padding-left:6vw;padding-right:6vw}.meta span:last-child{display:none}.bottom span:last-child{display:none}.contact h2{font-size:18vw}.email{font-size:6vw}.glow{display:none}#mobile{position:fixed;inset:0;background:#111;color:#fff;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transform:translateY(-100%);transition:.5s}#mobile.open{transform:none}#mobile a{font-size:40px}#close{position:absolute;top:25px;right:25px;background:none;color:#fff;border:0}}

.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.contact-phone{font-size:clamp(1.05rem,2.2vw,2.1rem);letter-spacing:-.03em;opacity:.92}.contact-phone span{margin-left:18px}@media(max-width:520px){.contact-links{width:100%}.contact-email,.contact-phone{width:100%;word-break:break-word}}
