*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#101318;background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}#progress{position:fixed;top:0;left:0;height:3px;background:#0b67f0;width:0;z-index:999}header{position:fixed;top:0;left:0;right:0;height:76px;z-index:90;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-bottom:1px solid #edf0f3}header.scrolled{box-shadow:0 10px 30px #0000000b}.brand{display:flex;gap:10px;align-items:center;font-weight:800}.brand b{background:#080a0d;color:#fff;border-radius:11px;padding:8px 9px;font-size:12px}.brand span{font-family:Poppins,Inter;font-size:15px}nav{display:flex;gap:28px}nav a{font-size:12px;font-weight:700;color:#68717c}nav a:hover,nav a.active{color:#0b67f0}#menu{display:none;border:0;background:none;font-size:23px}.hero{min-height:100vh;padding:150px 7vw 80px;display:grid;grid-template-columns:1.08fr .92fr;gap:5vw;align-items:center;background:radial-gradient(circle at 80% 45%,#0b67f018,transparent 27%),linear-gradient(#fff,#f8fafc)}.eyebrow,section small{font-size:10px;letter-spacing:.15em;font-weight:800;color:#0b67f0}.eyebrow{color:#6b7480}.hero h1{font:800 clamp(46px,7vw,84px)/1.03 Poppins,Inter;letter-spacing:-.065em;margin:22px 0}.hero h1 em{font-style:normal;color:#0b67f0}.tagline{font-size:14px;font-weight:700}.tagline i{font-style:normal;color:#adb4bd;padding:0 4px}.intro{color:#68717c;max-width:590px;font-size:16px}.actions{display:flex;gap:11px;margin-top:28px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce1e7;background:#fff;border-radius:13px;padding:12px 18px;font-size:12px;font-weight:800;cursor:pointer}.btn.primary{background:#0b67f0;color:#fff;border-color:#0b67f0;box-shadow:0 12px 28px #0b67f029}.btn:hover{transform:translateY(-2px)}.social{display:flex;gap:21px;margin-top:26px}.social a{font-size:11px;font-weight:700;color:#69727d;border-bottom:1px solid #dfe3e7}.social a:hover{color:#0b67f0}.hero-photo{min-height:550px;display:grid;place-items:center;position:relative}.photo{width:min(430px,75vw);aspect-ratio:1;border-radius:50%;padding:11px;background:#fff;box-shadow:0 25px 75px #0a14201c;z-index:2}.photo img{width:100%;height:100%;border-radius:50%;object-fit:cover}.orbit{position:absolute;width:530px;height:530px;border:1px solid #0b67f027;border-radius:50%;animation:spin 22s linear infinite}.float{position:absolute;background:#ffffffdf;backdrop-filter:blur(12px);padding:11px 14px;border:1px solid #00000010;border-radius:13px;box-shadow:0 18px 40px #00000010;font-size:9px;font-weight:800;z-index:3}.float.one{top:16%;right:0}.float.two{bottom:14%;left:0}@keyframes spin{to{transform:rotate(360deg)}}.section{padding:120px 7vw}.light{background:#fff}.heading{max-width:1180px;margin:0 auto 58px}.heading h2{font:800 clamp(38px,5vw,64px)/1.08 Poppins,Inter;letter-spacing:-.055em;margin:12px 0 0}.heading h2 span{color:#9ba3ad}.about{max-width:1180px;margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.about-img img{width:min(410px,100%);aspect-ratio:4/5;object-fit:cover;border-radius:28px}.lead{font-size:clamp(21px,2.4vw,30px);font-weight:600;line-height:1.4;letter-spacing:-.03em}.about-copy>p:not(.lead){color:#68717c;max-width:680px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.chips span{border:1px solid #e3e7eb;border-radius:99px;padding:6px 10px;font-size:10px;font-weight:700}.stats{display:flex;gap:50px;margin-top:35px;border-top:1px solid #e8ebef;padding-top:23px}.stats b{display:block;font:700 21px Poppins}.stats small{display:block;color:#8b939c;letter-spacing:.06em;margin-top:2px}.projects{background:#f7f9fb}.split{display:flex;justify-content:space-between;align-items:end;gap:30px}.split>p{max-width:330px;color:#68717c;font-size:12px}.grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:16px}.project{min-height:380px;background:#fff;border:1px solid #e6e9ed;border-radius:24px;padding:27px;display:flex;justify-content:space-between;flex-direction:column;position:relative;overflow:hidden;transition:.3s}.project:hover{transform:translateY(-5px);box-shadow:0 25px 65px #0a142012}.project.featured{grid-column:span 2;min-height:410px}.project h3{font:700 28px/1.1 Poppins;margin:10px 0}.project p{color:#68717c;font-size:12px;max-width:570px}.project a{display:inline-block;margin-top:18px;font-size:11px;font-weight:800}.project a:hover{color:#0b67f0}.art{position:absolute;right:-40px;bottom:-65px;width:260px;height:260px;border-radius:50%;display:grid;place-items:center;font:800 38px Poppins;opacity:.95}.dark{background:#0a0d11;color:#fff}.blue{background:#eaf2ff;color:#0b67f0}.gray{background:#eff1f4;color:#171b20;font-size:24px}.pale{background:#e7f3ff;color:#0b67f0;font-size:23px}.skills{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skill{border:1px solid #e6e9ed;border-radius:18px;padding:24px;display:flex;gap:17px;min-height:155px;transition:.3s}.skill:hover{border-color:#b9d1f5;transform:translateY(-3px)}.skill>b{font-size:9px;color:#0b67f0}.skill h3{font:700 17px Poppins;margin:0}.skill p{font-size:11px;color:#68717c;margin-top:7px}.contact{background:#090c10;color:#fff;padding:120px 7vw}.contact-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr .9fr;gap:8vw}.contact h2{font:800 clamp(43px,6vw,70px)/1.05 Poppins;letter-spacing:-.06em;margin:13px 0}.contact h2 span{color:#6fa7ff}.contact-copy>p{color:#9ba4ae;max-width:510px;font-size:13px}.email{display:inline-block;margin-top:25px;font-weight:700;font-size:14px;border-bottom:1px solid #38414c;padding-bottom:8px}.darklinks a{color:#aab2bb}.darklinks a:hover{color:#fff}.formbox{background:#fff;color:#111;border-radius:24px;padding:28px}.contact-form,.formbox form{display:grid;gap:18px}.formbox label{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#68717c}.formbox input,.formbox textarea{display:block;width:100%;border:0;border-bottom:1px solid #dce1e6;padding:10px 2px;font:13px Inter;outline:none;margin-top:7px;background:#fff}.formbox textarea{resize:vertical}.formbox input:focus,.formbox textarea:focus{border-color:#0b67f0}.formbox .btn{width:100%;border:0}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#status{min-height:18px;text-align:center;font-size:11px}.ok{color:#168a4e}.err{color:#c72e3a}footer{background:#090c10;color:#9ba4ae;border-top:1px solid #1e242b;padding:32px 7vw;display:grid;grid-template-columns:1fr auto;gap:30px;max-width:none}footer strong{color:#fff;font-size:15px}footer p{font-size:10px}.footerlinks{display:flex;gap:20px;font-size:10px;align-items:center}.footerlinks a:hover{color:#fff}footer>small{grid-column:1/-1;border-top:1px solid #1e242b;padding-top:15px;font-size:9px}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.show{opacity:1;transform:none}@media(max-width:900px){.hero{grid-template-columns:1fr;text-align:center}.hero-photo{order:-1;min-height:430px}.hero-actions,.social{justify-content:center}.about{grid-template-columns:1fr}.about-img img{margin:auto}.skills{grid-template-columns:1fr 1fr}.contact-inner{grid-template-columns:1fr}}@media(max-width:680px){header{height:68px;padding:0 20px}#menu{display:block}nav{display:none;position:absolute;top:66px;left:15px;right:15px;flex-direction:column;gap:0;background:#fff;border:1px solid #e7ebef;border-radius:16px;padding:8px;box-shadow:0 20px 50px #00000012}nav.open{display:flex}nav a{padding:10px}.section,.contact{padding:90px 20px}.hero{padding:110px 20px 70px}.hero h1{font-size:45px}.hero-photo{min-height:360px}.photo{width:280px}.orbit{width:350px;height:350px}.float.one{top:5%;right:0}.float.two{bottom:4%;left:0}.split{display:block}.grid{grid-template-columns:1fr}.project.featured{grid-column:span 1}.skills{grid-template-columns:1fr}.stats{gap:24px}.footerlinks{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.orbit{animation:none}}