:root{color-scheme:dark;--bg: #07111f;--bg-2: #091827;--surface: #0d2032;--surface-2: #102a42;--line: rgba(148, 216, 230, .2);--text: #eef8fb;--muted: #abc3ce;--cyan: #67e8f9;--blue: #60a5fa;--mint: #5eead4;--navy: #071a2c;--shadow: 0 24px 80px rgba(0, 0, 0, .28);--radius: 8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:radial-gradient(circle at 80% 0%,rgba(96,165,250,.18),transparent 28rem),radial-gradient(circle at 10% 16rem,rgba(94,234,212,.14),transparent 24rem),linear-gradient(180deg,var(--bg),#06101b 52%,#06131c);color:var(--text);line-height:1.6;min-width:320px}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,summary{font:inherit}.site-shell{overflow:clip}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.skip-link{position:fixed;top:12px;left:12px;z-index:100;transform:translateY(-150%);border-radius:var(--radius);background:var(--cyan);color:#03111d;padding:10px 14px;font-weight:800}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(148,216,230,.16);background:#07111fd1;backdrop-filter:blur(18px)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:72px}.brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;letter-spacing:0}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(103,232,249,.45);border-radius:var(--radius);background:linear-gradient(135deg,#67e8f92e,#5eead414);color:var(--cyan)}.brand small{display:block;color:var(--muted);font-size:.76rem;font-weight:600}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{border-radius:var(--radius);color:var(--muted);font-size:.94rem;font-weight:700;padding:10px 12px;transition:background .18s ease,color .18s ease}.nav-links a:hover,.nav-links a:focus-visible{background:#67e8f91a;color:var(--text)}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius);background:#102a42b3;color:var(--text);cursor:pointer}.menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:20px;height:2px;border-radius:999px;background:currentColor;content:"";transition:transform .18s ease,opacity .18s ease}.menu-icon:before{transform:translateY(-7px)}.menu-icon:after{transform:translateY(5px)}.menu-toggle[aria-expanded=true] .menu-icon{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon:before{opacity:0}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:translateY(-2px) rotate(90deg)}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr);gap:56px;align-items:center;min-height:calc(100svh - 72px);padding:72px 0 56px}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--cyan);font-size:.84rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.eyebrow:before{width:34px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--mint));content:""}h1,h2,h3,p{margin-top:0}h1{max-width:780px;margin-bottom:22px;font-size:clamp(2.55rem,6vw,5.55rem);line-height:.96;letter-spacing:0}h2{margin-bottom:14px;font-size:clamp(2rem,4vw,3.35rem);line-height:1.05;letter-spacing:0}h3{margin-bottom:10px;font-size:1.2rem;line-height:1.25}.lead{max-width:720px;color:var(--muted);font-size:clamp(1.04rem,2vw,1.25rem)}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid rgba(103,232,249,.42);border-radius:var(--radius);padding:12px 18px;background:#67e8f91f;color:var(--text);font-weight:800;transition:background .18s ease,border-color .18s ease,transform .18s ease}.button.primary{border-color:transparent;background:linear-gradient(135deg,var(--cyan),var(--mint));color:#03111d}.button:hover,.button:focus-visible{transform:translateY(-2px);border-color:var(--cyan);background:#67e8f92e}.button.primary:hover,.button.primary:focus-visible{background:linear-gradient(135deg,#93f1fb,#87f4df)}.hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:36px}.metric{border:1px solid var(--line);border-radius:var(--radius);background:#0d2032ad;padding:16px}.metric strong{display:block;color:var(--cyan);font-size:1.45rem;line-height:1}.metric span{color:var(--muted);font-size:.88rem}.profile-panel{display:grid;gap:12px;padding:12px;border:1px solid rgba(103,232,249,.32);border-radius:var(--radius);background:linear-gradient(180deg,rgba(103,232,249,.12),transparent),#0d2032c7;box-shadow:var(--shadow)}.profile-panel img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius)}.availability{border:1px solid rgba(94,234,212,.35);border-radius:var(--radius);background:#07111fe0;padding:14px;box-shadow:0 12px 34px #0000003d}.availability strong{display:block;color:var(--mint)}.section{padding:86px 0}.section.alt{background:#0918279e;border-block:1px solid rgba(148,216,230,.12)}.section-header{max-width:760px;margin-bottom:34px}.section-header p,.card p,.project-card p,.credential-card p,.about-copy p,.contact-panel p{color:var(--muted)}.grid{display:grid;gap:18px}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.project-card,.stack-group,.credential-card,.about-panel,.contact-panel{border:1px solid var(--line);border-radius:var(--radius);background:#0d2032b8;box-shadow:0 14px 38px #0000002e}.card,.stack-group,.credential-card,.about-panel,.contact-panel{padding:24px}.card{transition:border-color .18s ease,transform .18s ease,background .18s ease}.card:hover{transform:translateY(-4px);border-color:#67e8f980;background:#102a42d1}.card-icon{display:grid;width:46px;height:46px;margin-bottom:18px;place-items:center;border:1px solid rgba(103,232,249,.34);border-radius:var(--radius);color:var(--cyan);background:#67e8f917;font-weight:900}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-grid,.credential-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.project-card{overflow:hidden;transition:border-color .18s ease,transform .18s ease}.project-card:hover{transform:translateY(-3px);border-color:#5eead475}.project-card summary{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;cursor:pointer;list-style:none;padding:24px}.project-card summary::-webkit-details-marker{display:none}.project-card summary:after{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:var(--radius);color:var(--cyan);content:"+";font-size:1.4rem;line-height:1;transition:transform .18s ease,background .18s ease}.project-card[open] summary:after{transform:rotate(45deg);background:#67e8f91a}.project-card .details{padding:0 24px 24px}.tags,.stack-list{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:18px 0 0;list-style:none}.chip,.stack-list li{border:1px solid rgba(148,216,230,.2);border-radius:var(--radius);background:#07111f61;color:#d9f8fd;padding:7px 10px;font-size:.88rem;font-weight:700;transition:border-color .18s ease,background .18s ease,color .18s ease}.chip:hover,.stack-list li:hover{border-color:#67e8f980;background:#67e8f91a;color:var(--text)}.stack-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stack-group h3{color:var(--cyan)}.credential-card{transition:border-color .18s ease,transform .18s ease,background .18s ease}.credential-card:hover{transform:translateY(-3px);border-color:#67e8f980;background:#102a42d1}.credential-card span{display:inline-block;margin-bottom:12px;color:var(--mint);font-size:.84rem;font-weight:800}.about-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;align-items:start}.about-panel{background:linear-gradient(180deg,rgba(96,165,250,.12),transparent),#0d2032b8}.about-list{padding:0;margin:0;list-style:none}.about-list li{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid rgba(148,216,230,.13);color:var(--muted)}.about-list li:last-child{border-bottom:0}.about-list span{color:var(--mint);font-weight:900}.contact-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:28px;align-items:center;background:linear-gradient(135deg,#67e8f91f,#5eead40f),#0d2032d6}.contact-list{display:grid;gap:12px;padding:0;margin:0;list-style:none}.contact-list a{display:flex;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:var(--radius);padding:14px;color:var(--muted);transition:border-color .18s ease,color .18s ease,background .18s ease}.contact-list a:hover,.contact-list a:focus-visible{border-color:#67e8f98c;background:#67e8f914;color:var(--text)}.site-footer{border-top:1px solid rgba(148,216,230,.14);padding:26px 0;color:var(--muted)}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .52s ease,transform .52s ease}.js [data-reveal].is-visible,[data-reveal]{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal],[data-reveal]{opacity:1;transform:none}}@media(max-width:940px){.menu-toggle{display:inline-flex}.nav-links{position:fixed;inset:72px 0 auto;display:grid;grid-template-columns:1fr;gap:4px;border-bottom:1px solid rgba(148,216,230,.16);background:#07111ff7;padding:18px 20px 24px;transform:translateY(-120%);transition:transform .2s ease}.nav-links[data-open=true]{transform:translateY(0)}.nav-links a{padding:14px}.hero{grid-template-columns:1fr;min-height:auto;padding-top:54px}.profile-panel{max-width:430px}.services-grid,.help-grid,.credential-grid,.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.contact-panel{grid-template-columns:1fr}}@media(max-width:680px){.container{width:min(100% - 28px,1120px)}.brand small{display:none}h1{font-size:clamp(2.45rem,13vw,3.45rem)}.hero-meta,.services-grid,.projects-grid,.help-grid,.credential-grid,.stack-grid{grid-template-columns:1fr}.section{padding:64px 0}.project-card summary{grid-template-columns:1fr}.project-card summary:after{justify-self:start}}
