@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@400;500&family=Inter:wght@400;500;600&display=swap");:root{--bg:#f7f7f4;--ink:#0c0c0d;--line:#e2e1db;--accent:#3a2ef0}[data-theme=dark]{--bg:#0c0c0d;--ink:#f2f2ef;--line:#262629;--accent:#7c5cff}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .4s ease,color .4s ease}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.5)}70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}to{box-shadow:0 0 0 0 rgba(22,163,74,0)}}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes lineUp{0%{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero-sec{min-height:100vh;min-height:100svh}.navlink{text-decoration:none}.row{transition:padding-left .35s cubic-bezier(.22,1,.36,1),color .3s}.row:hover{padding-left:18px}.chip{transition:background .2s,color .2s,border-color .2s}.chip:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn{transition:transform .2s,opacity .2s}.btn:hover{transform:translateY(-2px)}.mlink{transition:color .2s,padding-left .3s}.mlink:hover{padding-left:10px}.ctl{transition:transform .2s,opacity .2s}.ctl:hover{transform:translateY(-1px);opacity:.7}.field{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);color:var(--ink);font-family:Inter,sans-serif;font-size:1rem;padding:14px 0;outline:none;transition:border-color .3s}.field:focus{border-color:var(--accent)}.field::placeholder{color:#9a9a95}textarea.field{resize:vertical;min-height:110px}.field:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.show-sm{display:none}@media (max-width:1024px){.svc{grid-template-columns:1fr 1fr!important}}@media (max-width:840px){.hide-sm{display:none!important}.about{grid-template-columns:1fr!important}.show-sm{display:flex!important}}@media (max-width:600px){.svc{grid-template-columns:1fr!important}.portrait{max-width:320px;margin:0 auto}.tl{grid-template-columns:1fr!important;gap:6px!important}}