:root{--bg-main:#0b1220;--bg-soft:#0f172a;--text-main:#f8fafc;--text-muted:#94a3b8;--accent-blue:#38bdf8;--accent-warm:#fbbf24;--accent-rose:#fb7185;--radius-sm:6px;--radius-md:12px}:target{scroll-margin-top:96px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-main);color:var(--text-main);line-height:1.7;position:relative}body::before{content:"";position:fixed;inset:0;background: radial-gradient(
      900px 450px at 15% 10%,
      rgba(56, 189, 248, 0.1),
      transparent 60%
    ),
    radial-gradient(
      700px 350px at 85% 25%,
      rgba(251, 191, 36, 0.08),
      transparent 60%
    ),
    radial-gradient(
      600px 300px at 50% 90%,
      rgba(251, 113, 133, 0.06),
      transparent 60%
    );pointer-events:none;z-index:-1}.container{max-width:1000px;margin:0 auto;padding:0 1.25rem}h1{font-size:clamp(2.8rem,5vw,3.6rem);font-weight:700;letter-spacing:-.03em}.hero-role{font-size:1.1rem;font-weight:500;color:var(--accent-blue);margin-top:.75rem}h2{font-size:1.45rem;font-weight:600;margin-bottom:2rem}h3{font-size:1.1rem;font-weight:600;margin-bottom:.6rem}p{max-width:680px;color:var(--text-muted);margin-bottom:1rem}p:last-child{margin-bottom:0}@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}.hero{padding:7rem 0 6.5rem}.hero-content{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center}.hero h1,.hero-role,.hero p,.btn-primary{animation:fadeUp .6s ease forwards}.hero p{margin-top:1.5rem;margin-bottom:2.3rem}.hero-photo{position:relative}.hero-photo img{width:140px;height:140px;border-radius:50%;object-fit:cover}.hero-photo::after{content:"";position:absolute;inset:-16px;border-radius:50%;background: radial-gradient(
      circle at 30% 30%,
      rgba(56, 189, 248, 0.35),
      transparent 55%
    ),
    radial-gradient(
      circle at 70% 70%,
      rgba(251, 191, 36, 0.35),
      transparent 55%
    );filter:blur(24px);z-index:-1}.btn-primary{display:inline-flex;align-items:center;padding:.8rem 1.9rem;border-radius:999px;background:linear-gradient(135deg,var(--accent-blue),var(--accent-rose));color:#020617;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:transform .15s ease , box-shadow .15s ease}.btn-primary:hover,.btn-primary:focus-visible{transform:translateY(-2px);box-shadow:0 10px 30px rgba(56,189,248,.25);outline:none}.section{padding:5.5rem 0}.path-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.3rem;max-width:960px}.path-item{position:relative;padding:2.1rem 1.9rem;border-radius:var(--radius-md);background: linear-gradient(
    180deg,
    rgba(15, 23, 42, 0.7),
    rgba(15, 23, 42, 0.35)
  );border:1px solid rgba(148,163,184,.18);backdrop-filter:blur(6px);transition:transform .25s ease , border-color .25s ease}.path-item::before{content:"";position:absolute;inset:0;border-radius:inherit;background: radial-gradient(
    420px 220px at 15% 10%,
    rgba(56, 189, 248, 0.14),
    transparent 60%
  );opacity:0;transition:opacity .25s ease}.path-item:hover{transform:translateY(-7px);border-color:rgba(56,189,248,.45)}.path-item:hover::before{opacity:1}.skills-grid{display:grid;gap:2.3rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.skills-grid section h3{color:var(--text-main)}.skills-grid ul{list-style:none}.skills-grid ul li{color:var(--text-muted);margin-bottom:.45rem}.projects-grid{display:grid;gap:2.3rem}.card-link{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.6rem 0;text-decoration:none;color:inherit;border-bottom:1px solid rgba(148,163,184,.25);transition:transform .2s ease , border-color .2s ease}.card-link::after{content:"→";font-size:1.4rem;color:var(--accent-warm);opacity:0;transform:translateX(-6px);transition:opacity .2s ease , transform .2s ease}.card-link:hover,.card-link:focus-visible{transform:translateX(6px);border-color:var(--accent-warm);outline:none}.card-link:hover::after,.card-link:focus-visible::after{opacity:1;transform:translateX(0)}.contact-form{max-width:540px;margin-top:2.8rem}.form-group{margin-bottom:2rem}label{display:block;margin-bottom:.5rem;font-size:.85rem;color:var(--text-muted)}input,textarea{width:100%;padding:.95rem 1.05rem;border-radius:var(--radius-md);background-color:rgba(15,23,42,.6);border:1px solid rgba(148,163,184,.25);color:var(--text-main)}input:focus,textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 1px rgba(56,189,248,.35)}.form-error{margin-top:.4rem;font-size:.8rem;color:#f87171}input[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:#f87171}.contact-alt{margin-top:2.5rem;display:grid;gap:1.1rem;max-width:520px}.contact-item{display:inline-flex;align-items:center;gap:.85rem;color:var(--text-muted);text-decoration:none;font-size:.92rem;transition:color .2s ease , transform .2s ease}.contact-item svg{width:22px;height:22px;stroke:var(--accent-blue);fill:#fff;stroke-width:1.8;transition:stroke .2s ease , transform .2s ease}.contact-item:hover,.contact-item:focus-visible{color:var(--text-main);transform:translateX(5px);outline:none}.contact-item:hover svg,.contact-item:focus-visible svg{stroke:var(--accent-warm);transform:scale(1.05)}footer{padding:3.2rem 0;text-align:center;font-size:.85rem;color:var(--text-muted)}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.site-nav{position:fixed;top:0;width:100%;z-index:9999;background:rgba(11,18,32,.55);backdrop-filter:blur(10px);border-bottom:1px solid rgba(148,163,184,.15)}.nav-content{display:flex;justify-content:flex-end;align-items:center;height:64px}.nav-links{list-style:none;display:flex;gap:2rem}.nav-links a{position:relative;padding:.25rem .4rem;color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s ease}.nav-links a::before{content:"";position:absolute;inset:-6px -10px;border-radius:999px;background: radial-gradient(
    60% 60% at 50% 50%,
    rgba(251, 113, 133, 0.35),
    rgba(251, 191, 36, 0.15),
    transparent 70%
  );opacity:0;filter:blur(10px);transition:opacity .2s ease;z-index:-1}.nav-links a:hover::before,.nav-links a:focus-visible::before{opacity:1}.nav-links a:hover,.nav-links a:focus-visible{color:var(--text-main);outline:none}.nav-mobile{position:fixed;inset:0;z-index:999;background:rgba(11,18,32,.92);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;clip-path:circle(0% at 32px 32px);transition:clip-path .6s cubic-bezier(.77,0,.175,1)}.nav-mobile.open{clip-path:circle(150% at 32px 32px)}.nav-mobile-panel{text-align:center}.nav-mobile-panel ul{list-style:none;display:grid;gap:2rem}.nav-mobile-panel a{font-size:1.6rem;font-weight:500;text-decoration:none;color:var(--text-main)}.nav-mobile.open a{opacity:1;transform:translateY(0)}.nav-toggle{display:none;background:none;border:none;width:36px;height:36px;position:relative;z-index:9999;cursor:pointer}.nav-toggle span{position:absolute;left:6px;right:6px;height:2px;background:var(--text-main);border-radius:2px;transition:transform .3s ease , opacity .3s ease}.nav-toggle span:nth-child(1) {top:10px}.nav-toggle span:nth-child(2) {top:17px}.nav-toggle span:nth-child(3) {top:24px}.nav-toggle[aria-expanded="true"] span:nth-child(1) {transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2) {opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(3) {transform:translateY(-7px) rotate(-45deg)}.skip-link{position:absolute;left:-999px;top:0}.skip-link:focus{left:1rem;top:1rem;background:var(--bg-soft);color:var(--text-main);padding:.5rem 1rem;border-radius:var(--radius-sm);z-index:20}#thanks-title{animation:fadeUp .6s ease forwards}@media (max-width:768px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-photo{order:-1}p{margin-left:auto;margin-right:auto}.card-link{grid-template-columns:1fr}.card-link::after{display:none}.contact-alt{margin-left:auto;margin-right:auto}.nav-content{justify-content:center}.nav-links{gap:1.5rem}.nav-links{display:none}.nav-toggle{display:block}}