:root{--bg:#07090d;--bg-2:#0b0f15;--surface:#10151d;--surface-2:#161d27;--border:#1e2732;--border-hi:#2c3746;--text:#e8eef4;--body:#b6c1cc;--muted:#8d9aa8;--dim:#5f6b78;--cyan:#22d3ee;--cyan-hi:#67e8f9;--cyan-dim:#22d3ee1f;--cyan-glow:#22d3ee59;--violet-glow:#8b5cf629;--radius:14px;--radius-lg:22px;--max:1200px;--head:"Space Grotesk", system-ui, sans-serif;--sans:"Inter", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--bg);color:var(--text);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:56px 56px;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4{font-family:var(--head);letter-spacing:-.02em;line-height:1.1}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:6px}.wrap{width:min(var(--max), 100% - 32px);margin-inline:auto}.cyan{color:var(--cyan)}.mono{font-family:var(--mono)}.skip{z-index:100;background:var(--cyan);color:#03161c;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.topbar{z-index:50;backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:#07090dbd;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:20px;height:66px;display:flex}.brand{font:700 16px var(--head);align-items:center;gap:10px;display:flex}.brand-mark{background:var(--cyan);color:#04141a;height:34px;font:800 15px var(--head);border-radius:9px;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.brand-mark span{animation:1.1s step-end infinite blink}.brand-mark.sm{border-radius:6px;height:24px;margin-right:6px;padding:0 6px;font-size:11px}@keyframes blink{50%{opacity:0}}.nav-links{color:var(--muted);gap:26px;font-size:14.5px;display:flex}.nav-links a:hover{color:var(--text)}.topbar-cta{align-items:center;gap:10px;display:flex}.menu{display:none;position:relative}.menu summary{border:1px solid var(--border-hi);cursor:pointer;border-radius:10px;place-content:center;gap:4px;width:40px;height:40px;list-style:none;display:grid}.menu summary::-webkit-details-marker{display:none}.menu summary span{background:var(--text);border-radius:2px;width:18px;height:2px}.menu nav{background:var(--surface);border:1px solid var(--border-hi);border-radius:14px;min-width:200px;padding:8px;display:grid;position:absolute;top:50px;right:0;box-shadow:0 20px 50px #00000080}.menu nav a{border-radius:8px;padding:10px 12px}.menu nav a:hover{background:var(--surface-2)}.btn{font:600 15px var(--sans);border:1px solid var(--border-hi);background:var(--surface);color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:12px 20px;transition:border-color .2s,transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn:hover{border-color:var(--cyan);transform:translateY(-1px)}.btn svg{width:17px;height:17px}.btn-primary{background:var(--cyan);border-color:var(--cyan);color:#03161c}.btn-primary:hover{background:var(--cyan-hi);box-shadow:0 8px 30px var(--cyan-glow)}.btn-ghost{background:0 0}.btn-sm{padding:8px 14px;font-size:14px}.label{font:500 12.5px var(--mono);color:var(--cyan);letter-spacing:.08em;text-transform:uppercase}.text-link{color:var(--cyan);align-items:center;gap:8px;font-size:15px;font-weight:600;display:inline-flex}.text-link svg{width:16px;height:16px;transition:transform .2s}.text-link:hover svg,a:hover>.card-body .text-link svg{transform:translate(4px)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:#c3cfda;background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;gap:6px;padding:5px 10px 5px 7px;font-size:12.5px}.chip-lg{padding:7px 13px 7px 9px;font-size:14px}.tags{flex-wrap:wrap;gap:7px;display:flex}.tag{color:#b9c6d2;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:12.5px}.tag.cyan{color:var(--cyan);background:var(--cyan-dim);border-color:#22d3ee59}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .25s,transform .25s}.hud{position:relative}.hud:before,.hud:after{content:"";border-color:var(--cyan);opacity:.55;pointer-events:none;width:14px;height:14px;transition:opacity .25s;position:absolute}.hud:before{border-top:2px solid;border-left:2px solid;border-top-left-radius:4px;top:8px;left:8px}.hud:after{border-bottom:2px solid;border-right:2px solid;border-bottom-right-radius:4px;bottom:8px;right:8px}.hud:hover:before,.hud:hover:after{opacity:1}.tile:hover{border-color:var(--border-hi)}.section{padding:104px 0}.section.alt{border-top:1px solid var(--border);background:linear-gradient(#10151d8c,#07090d00)}.section-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:44px;display:flex}.section-head h2,.about h2,.contact h2{margin-top:12px;font-size:clamp(32px,4.2vw,50px)}.section-head>p{color:var(--muted);max-width:440px}.hero{isolation:isolate;padding:96px 0 88px;position:relative;overflow:hidden}.hero-collage{z-index:-2;opacity:.32;filter:saturate(.9)blur(1.5px);grid-template-columns:repeat(5,1fr);gap:14px;display:grid;position:absolute;inset:-40px -40px 0;transform:rotate(-4deg)scale(1.08)}.hero-collage img{object-fit:cover;border-radius:16px;width:100%;height:100%}.hero:after{content:"";z-index:-1;background:radial-gradient(ellipse 60% 70% at 78% 40%, #22d3ee29, transparent 60%), radial-gradient(ellipse 50% 60% at 10% 90%, var(--violet-glow), transparent 60%), linear-gradient(90deg, #07090df7 0%, #07090ddb 48%, #07090d9e 100%), linear-gradient(0deg, var(--bg) 0%, transparent 30%);position:absolute;inset:0}.hero-grid{grid-template-columns:1.35fr .75fr;align-items:center;gap:48px;display:grid}.eyebrow{font:500 12.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);align-items:center;gap:10px;display:inline-flex}.status-dot{background:#34d399;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 0 4px #34d3992e}@keyframes pulse{50%{box-shadow:0 0 0 7px #34d3990d}}.hero h1{margin:18px 0 8px;font-size:clamp(48px,7.4vw,96px);font-weight:700}.role{font:500 clamp(21px, 2.5vw, 30px) var(--head)}.tagline{color:var(--muted);margin-top:8px;font-size:15px}.intro{color:var(--body);max-width:610px;margin-top:22px;font-size:17px}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero-social{align-items:center;gap:10px;margin-top:28px;display:flex}.hero-social a{border:1px solid var(--border-hi);background:#10151db3;border-radius:10px;place-items:center;width:40px;height:40px;transition:border-color .2s;display:grid}.hero-social a:hover{border-color:var(--cyan)}.hero-loc{color:var(--muted);margin-left:8px;font-size:14px}.portrait{justify-self:center;width:min(280px,100%);position:relative}.portrait img{aspect-ratio:1;object-fit:cover;border:3px solid var(--bg);width:100%;box-shadow:0 0 0 2px var(--cyan), 0 0 70px #22d3ee4d;border-radius:50%;position:relative}.portrait:before{content:"";border:1px dashed #22d3ee73;border-radius:50%;animation:40s linear infinite spin;position:absolute;inset:-18px}@keyframes spin{to{transform:rotate(360deg)}}.marquee{border-block:1px solid var(--border);background:var(--bg-2);padding:16px 0;overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.marquee-track{width:max-content;animation:48s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-set{gap:14px;padding-right:14px;display:flex}.pillar{background:var(--surface);border:1px solid var(--border-hi);font:500 15px var(--head);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:9px 16px;display:inline-flex}.pillar-logos{gap:6px;display:inline-flex}@keyframes marquee{to{transform:translate(-50%)}}.features{gap:28px;margin-bottom:28px;display:grid}.feature{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;padding:22px;display:grid}.feature.flip .feature-media{order:2}.feature-media{aspect-ratio:16/10;background:var(--bg-2);border-radius:16px;display:block;position:relative;overflow:hidden}.feature-media>img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.feature:hover .feature-media>img{transform:scale(1.04)}.phones{background:radial-gradient(at 50% 120%,#22d3ee3d,#0000 60%),linear-gradient(160deg,#101826,#0a0e14);justify-content:center;align-items:center;gap:14px;height:100%;padding:20px;display:flex}.phones img{aspect-ratio:9/16;object-fit:cover;border:3px solid #1d2531;border-radius:12px;width:auto;height:100%;transition:transform .4s;box-shadow:0 12px 30px #00000080}.phones img:nth-child(2){transform:translateY(-10px)}.feature:hover .phones img:first-child,.card-project:hover .phones img:first-child{transform:rotate(-3deg)}.feature:hover .phones img:nth-child(3),.card-project:hover .phones img:nth-child(3){transform:rotate(3deg)}.feature-copy{gap:14px;padding:6px 10px;display:grid}.feature-copy h3{margin-top:4px;font-size:clamp(24px,2.6vw,32px)}.feature-copy>p{color:var(--body)}.credit,.meta{color:var(--muted);font-size:14px}.project-id{align-items:center;gap:14px;display:flex}.project-id img{border:1px solid var(--border-hi);border-radius:14px;flex:none;width:56px;height:56px}.project-id.small img{border-radius:11px;width:44px;height:44px}.cards{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.card-project{border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.card-project:hover{border-color:#22d3ee80;transform:translateY(-4px);box-shadow:0 20px 50px #00000073}.card-media{aspect-ratio:4/3;background:var(--bg-2);overflow:hidden}.card-media>img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.card-project:hover .card-media>img{transform:scale(1.05)}.card-media .phones{gap:8px;padding:14px}.card-media .phones img{border-width:2px;border-radius:8px}.no-media{height:100%;color:var(--dim);background:repeating-linear-gradient(45deg,#ffffff05 0 12px,#0000 12px 24px),linear-gradient(160deg,#101826,#0a0e14);place-content:center;justify-items:center;gap:8px;font-size:14px;display:grid}.no-media svg{width:54px;height:54px;color:var(--cyan);opacity:.7}.card-body{flex-direction:column;flex:1;gap:12px;padding:18px;display:flex}.card-body h3{font-size:17px}.card-body>p{color:var(--body);font-size:14px}.card-body .text-link{margin-top:auto;font-size:14px}.services{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.service{flex-direction:column;gap:12px;padding:28px 24px 26px;display:flex}.service:hover{transform:translateY(-3px)}.ico{background:var(--cyan-dim);width:46px;height:46px;color:var(--cyan);border-radius:12px;place-items:center;display:grid}.ico svg{width:22px;height:22px}.service h3{margin-top:6px;font-size:20px}.service>p{color:var(--muted);font-size:14.5px}.service .chips{margin-top:auto;padding-top:8px}.timeline{gap:22px;padding-left:34px;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(var(--cyan), #22d3ee1a);width:2px;position:absolute;top:8px;bottom:8px;left:7px}.job{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);padding:26px 28px;position:relative}.job:before{content:"";background:var(--bg);border:3px solid var(--cyan);width:16px;height:16px;box-shadow:0 0 0 5px var(--cyan-dim);border-radius:50%;position:absolute;top:30px;left:-34px}.job-when{font:500 12.5px var(--mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.job h3{margin:8px 0 14px;font-size:22px}.job .at{color:var(--cyan);font-weight:500}.job ul{gap:8px;margin-bottom:18px;display:grid}.job li{color:var(--body);padding-left:20px;font-size:15px;position:relative}.job li:before{content:"";background:var(--cyan);width:9px;height:2px;position:absolute;top:11px;left:0}.about{grid-template-columns:.9fr 1.1fr;align-items:start;gap:56px;display:grid}.about p{color:var(--body);margin-bottom:16px;font-size:17px}.about .core{gap:8px;margin-top:22px}.bento{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.bento-tile{align-content:start;gap:14px;padding:24px 22px;display:grid}.bento-tile.wide{grid-column:span 2}.bento-tile h3{align-items:center;gap:10px;font-size:16px;display:flex}.bento-tile h3:before{content:"";background:var(--cyan);border-radius:2px;width:6px;height:6px}.edu-layout{gap:22px;display:grid}.edu-timeline{grid-template-columns:1fr 1fr;gap:16px;padding-top:22px;display:grid;position:relative}.edu-timeline:before{content:"";background:linear-gradient(90deg, var(--cyan), #22d3ee1a);height:2px;position:absolute;top:0;left:24px;right:24px}.edu-item{grid-template-columns:48px 1fr;gap:16px;padding:24px;display:grid;position:relative}.edu-item:before{content:"";background:var(--bg);border:2px solid var(--cyan);border-radius:50%;width:12px;height:12px;position:absolute;top:-28px;left:30px}.edu-logo .tech-badge{border-radius:12px}.edu-item h3{margin:6px 0 4px;font-size:18px}.grade{color:var(--cyan);background:var(--cyan-dim);border:1px solid #22d3ee59;border-radius:999px;margin-top:10px;padding:3px 10px;font-size:12.5px;display:inline-block}.certs{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.cert{flex-direction:column;gap:10px;padding:16px 18px;display:flex}.cert-top{justify-content:space-between;align-items:center;display:flex}.cert-issuer{color:var(--muted);font-size:13px}.cert h4{font-size:15px;font-weight:600;line-height:1.35}.cert-meta{color:var(--dim);justify-content:space-between;gap:8px;margin-top:auto;font-size:12px;display:flex}.contact{border:1px solid var(--border-hi);background:radial-gradient(ellipse at 0% 0%, #22d3ee26, transparent 55%), radial-gradient(ellipse at 100% 100%, var(--violet-glow), transparent 55%), var(--bg-2);border-radius:28px;grid-template-columns:1fr 1.1fr;gap:44px;padding:52px;display:grid}.contact-info>p:not(.label){color:var(--muted);margin-top:14px}.direct{gap:10px;margin-top:26px;display:grid}.direct a{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 14px;transition:border-color .2s;display:flex}.direct a:hover{border-color:var(--cyan)}.direct .tech{gap:12px;font-size:15px}.direct svg{width:18px;height:18px}.form-card{padding:30px 28px}.form-card h3{margin-bottom:18px;font-size:20px}.cform{gap:14px;display:grid}.cform-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.cform-field{color:var(--muted);gap:6px;font-size:13.5px;display:grid}.cform-field input,.cform-field select,.cform-field textarea{border:1px solid var(--border-hi);background:var(--bg-2);width:100%;color:var(--text);font:15px var(--sans);resize:vertical;border-radius:10px;padding:12px 14px}.cform-field input:focus,.cform-field select:focus,.cform-field textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim);outline:none}.cform-send{background:var(--cyan);color:#03161c;font:600 15px var(--sans);cursor:pointer;border:0;border-radius:10px;justify-self:start;padding:13px 24px}.cform-send:hover{background:var(--cyan-hi);box-shadow:0 8px 30px var(--cyan-glow)}.cform-send:disabled{opacity:.6;cursor:wait}.cform-status{min-height:1.2em;font-size:14px}.cform-status[data-kind=ok]{color:#34d399}.cform-status[data-kind=error]{color:#f87171}.footer{border-top:1px solid var(--border);color:var(--dim);padding:30px 0 40px;font-size:14px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer a:hover{color:var(--cyan)}@media (width<=1100px){.cards,.bento,.certs{grid-template-columns:repeat(2,1fr)}}@media (width<=960px){.nav-links{display:none}.menu{display:block}.hero{padding:48px 0 64px}.hero-grid,.feature,.about,.edu-layout,.contact{grid-template-columns:1fr}.portrait{order:-1;width:min(200px,60%)}.hero-collage{grid-template-columns:repeat(3,1fr)}.feature.flip .feature-media{order:0}.services{grid-template-columns:repeat(2,1fr)}.contact{padding:34px 24px}}@media (width<=640px){.section{padding:72px 0}.section-head{flex-direction:column;align-items:start}.cards,.services,.bento,.certs,.cform-row,.edu-timeline{grid-template-columns:1fr}.bento-tile.wide{grid-column:auto}.feature{gap:20px;padding:14px}.timeline{padding-left:26px}.job{padding:20px 18px}.job:before{width:14px;height:14px;left:-27px}.hero-loc{display:none}.contact{padding:26px 16px}.form-card{padding:22px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
