:root{--bg:#121524;--bg-deep:#0c0f19;--panel:#1c2033;--panel-soft:#23283d;--text:#f7f7fb;--muted:#a3a8bd;--accent:#ff4d61;--accent-soft:#ff4d6124;--line:#ffffff1c;color:var(--text);background:var(--bg-deep);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 78% 18%, #ff4d611f, transparent 25rem), linear-gradient(135deg, var(--bg), var(--bg-deep));min-width:320px;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.portfolio-shell{scroll-snap-type:y mandatory;scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg-deep);height:100vh;overflow-y:auto}.topbar{z-index:10;background:linear-gradient(#0c0f19f0,#0c0f19ad,#0000);justify-content:space-between;align-items:center;padding:1.25rem clamp(1.2rem,5vw,5.5rem);display:flex;position:fixed;top:0;left:0;right:0}.brand,.nav-links button,.section-rail button{color:var(--text);cursor:pointer;background:0 0;border:0}.brand{align-items:center;gap:.7rem;padding:0;display:inline-flex}.brand span{border:1px solid var(--accent);background:var(--accent-soft);width:2.25rem;height:2.25rem;color:var(--accent);place-items:center;font-weight:800;display:grid}.brand strong{font-size:1rem}.nav-links{align-items:center;gap:clamp(.4rem,1vw,1.1rem);display:flex}.nav-links button{color:var(--muted);padding:.55rem .7rem;font-size:.88rem;transition:color .18s}.nav-links button.active,.nav-links button:hover{color:var(--text)}.nav-links button.active{box-shadow:inset 0 -2px 0 var(--accent)}.section-rail{z-index:9;gap:1.45rem;display:grid;position:fixed;top:50%;right:clamp(1rem,4vw,4.5rem);transform:translateY(-50%)}.section-rail:before{content:"";background:var(--line);width:1px;position:absolute;top:.5rem;bottom:.5rem;left:50%;transform:translate(-50%)}.section-rail button{border:1px solid var(--accent);background:var(--bg);border-radius:999px;width:.9rem;height:.9rem;position:relative}.section-rail button.active{background:var(--accent);box-shadow:0 0 0 .42rem var(--accent-soft)}.section{scroll-snap-align:start;border-bottom:1px solid #ffffff0a;align-items:center;min-height:100vh;padding:6rem clamp(1.2rem,7vw,7rem) 4rem;display:flex}.section-inner{width:min(1120px,100%);margin:0 auto}.hero-grid,.split-layout,.contact-grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);align-items:center;gap:clamp(2rem,7vw,6rem);display:grid}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 1rem;font-size:.82rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;max-width:780px;margin-bottom:1.35rem;font-size:clamp(3.1rem,8vw,6.8rem);line-height:.92}h1 span{color:var(--accent);display:block}.hero-text,.content-block p,.contact-text{color:var(--muted);font-size:clamp(1rem,1.2vw,1.14rem);line-height:1.75}.hero-actions{flex-wrap:wrap;gap:.85rem;margin-top:2rem;display:flex}.primary-action,.secondary-action{border:1px solid var(--accent);cursor:pointer;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.82rem 1.15rem;text-decoration:none;transition:transform .18s,background .18s,color .18s;display:inline-flex}.primary-action{background:var(--accent);color:#180b10;font-weight:800}.secondary-action{color:var(--text);background:0 0}.primary-action:hover,.secondary-action:hover{transform:translateY(-2px)}.hero-panel{border:1px solid var(--line);background:linear-gradient(145deg,#23283de6,#121524e6);align-content:space-between;gap:1.6rem;min-height:440px;padding:clamp(1.4rem,3vw,2rem);display:grid;box-shadow:0 1.5rem 5rem #0000003b}.status-line,.about-meta span,.contact-links a{align-items:center;gap:.55rem;display:inline-flex}.status-line{color:var(--muted);font-size:.88rem}.status-line span{background:var(--accent);border-radius:999px;width:.55rem;height:.55rem}.profile-mark{aspect-ratio:1;width:min(15rem,70vw);color:var(--accent);background:radial-gradient(circle,#ff4d612e,#ff4d610a 62%,#0000);border:1px solid #ff4d6173;justify-self:center;place-items:center;font-size:7rem;font-weight:900;display:grid}.panel-kicker{color:var(--muted);margin-bottom:.4rem}.hero-panel h2{margin-bottom:0}.mini-stats{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.mini-stats span{color:var(--muted);background:#ffffff0a;padding:.9rem}.mini-stats strong{color:var(--text);font-size:1.35rem;display:block}.section-title{letter-spacing:0;max-width:720px;margin-bottom:0;font-size:clamp(2.2rem,5vw,4.5rem);line-height:1}.content-block{max-width:620px}.about-meta{flex-wrap:wrap;gap:.8rem;margin-top:1.6rem;display:flex}.about-meta span{border:1px solid var(--line);color:var(--text);background:#ffffff08;padding:.7rem .85rem}.section-heading{gap:.7rem;margin-bottom:clamp(2rem,4vw,3.2rem);display:grid}.skill-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.skill-card{border:1px solid var(--line);background:var(--panel);min-height:15.5rem;padding:1.45rem;transition:transform .18s,border-color .18s}.skill-card:hover{border-color:#ff4d618c;transform:translateY(-5px)}.skill-card svg{color:var(--accent);margin-bottom:1.6rem}.skill-card h3{margin-bottom:.8rem}.skill-card p,.project-row p{color:var(--muted);line-height:1.6}.project-list{gap:.9rem;display:grid}.project-row{border:1px solid var(--line);background:#1c2033b8;grid-template-columns:4rem minmax(12rem,.7fr) minmax(14rem,1fr) auto;align-items:center;gap:1.3rem;padding:1.35rem;display:grid}.project-row:hover{border-color:#ff4d618c}.project-number{color:var(--accent);font-weight:900}.project-row h3,.project-row p{margin-bottom:0}.project-row svg{color:var(--accent)}.project-tags{flex-wrap:wrap;gap:.38rem;margin-top:.8rem;display:flex}.project-tags span{background:var(--accent-soft);color:var(--text);border:1px solid #ff4d6159;padding:.24rem .48rem;font-size:.72rem;line-height:1.2}.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(300px,.65fr)}.contact-links{gap:.8rem;margin-top:2rem;display:grid}.contact-links a{color:var(--text);text-decoration:none}.contact-links svg{color:var(--accent)}.contact-form{border:1px solid var(--line);background:var(--panel);gap:1rem;padding:clamp(1.2rem,3vw,1.8rem);display:grid}.contact-form label{color:var(--text);gap:.45rem;font-size:.92rem;display:grid}.contact-form input,.contact-form textarea{background:var(--panel-soft);width:100%;color:var(--text);resize:vertical;border:1px solid #0000;outline:0;padding:.95rem 1rem}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}.contact-form .primary-action{width:100%}@media (width<=900px){.topbar{align-items:flex-start;gap:1rem}.nav-links{flex-wrap:wrap;justify-content:flex-end}.section-rail{right:.75rem}.hero-grid,.split-layout,.contact-grid{grid-template-columns:1fr}.hero-panel{min-height:auto}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-row{grid-template-columns:3rem 1fr auto}.project-row>p{grid-column:2/-1}}@media (width<=640px){.portfolio-shell{scroll-snap-type:y proximity}.topbar{padding:.85rem 1rem}.brand strong{display:none}.nav-links{gap:.1rem}.nav-links button{padding:.45rem;font-size:.78rem}.section{min-height:100svh;padding:6.6rem 1.15rem 3rem}.section-rail{display:none}h1{font-size:clamp(3rem,16vw,4.8rem)}.skill-grid,.mini-stats{grid-template-columns:1fr}.skill-card{min-height:auto}.project-row{grid-template-columns:1fr auto}.project-number,.project-row>p{grid-column:1/-1}}
