:root{
  --bg:#0f1115;
  --panel:#171a21;
  --panel-2:#1d222b;
  --text:#eef2f7;
  --muted:#a5afbd;
  --line:rgba(255,255,255,.08);
  --shadow:0 16px 40px rgba(0,0,0,.35);
  --radius:24px;
  --max:1120px;
  --accent:#7ddc8b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(125,220,139,.16), transparent 26%),
    radial-gradient(circle at top right, rgba(231,129,181,.10), transparent 24%),
    linear-gradient(180deg,#0d1014 0%,#11151c 100%);
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(calc(100% - 2rem),var(--max));margin:0 auto}
.site-header{position:sticky;top:0;z-index:10;background:rgba(13,16,20,.8);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}
.brand{display:flex;align-items:center;gap:1rem}
.brand-mark{width:58px;height:58px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.03);padding:.35rem}
.brand-text strong{display:block;font-size:1rem;letter-spacing:.04em}
.brand-text span{display:block;color:var(--muted);font-size:.9rem}
.nav{display:flex;gap:.5rem;flex-wrap:wrap}
.nav a{padding:.7rem 1rem;border-radius:999px;color:var(--muted);transition:.2s ease}
.nav a:hover,.nav a[aria-current="page"]{background:rgba(255,255,255,.06);color:var(--text)}
.hero{padding:4.5rem 0 2rem}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1.5rem;align-items:stretch}
.card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-copy{padding:2rem}
.kicker{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:999px;background:rgba(125,220,139,.12);color:#b2f1bb;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}
h1{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.02;margin:1rem 0 1rem}
.lead{font-size:1.08rem;line-height:1.75;color:var(--muted);max-width:60ch}
.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}
.button{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.2rem;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04)}
.button.primary{background:var(--text);color:#12161c;border-color:transparent;font-weight:700}
.hero-media{overflow:hidden;min-height:100%}
.hero-media img{width:100%;height:100%;object-fit:cover;opacity:.92}
.section{padding:1rem 0 2rem}
.section-title{font-size:1.6rem;margin:0 0 1rem}
.section-copy{color:var(--muted);line-height:1.7}
.video-frame{aspect-ratio:16/9;width:100%;border:0;border-radius:20px;background:#000}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.panel{padding:1.4rem}
.panel h3,.panel h4{margin:.1rem 0 .6rem}
.muted{color:var(--muted)}
.logo-tile{display:block;padding:1rem;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid var(--line);transition:transform .2s ease, border-color .2s ease}
.logo-tile:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.16)}
.logo-tile img{width:100%;aspect-ratio:4/3;object-fit:contain}
.logo-tile span{display:block;text-align:center;margin-top:.75rem;color:var(--muted)}
.project{display:grid;grid-template-columns:.95fr 1.05fr;gap:1.25rem;align-items:start}
.project + .project{margin-top:1.25rem}
.project-art{padding:1.2rem}
.project-art img,.project-art .image-fill{width:100%;border-radius:18px;background:rgba(255,255,255,.03);object-fit:contain}
.project-art .image-fill{aspect-ratio:4/3;background-position:center;background-repeat:no-repeat;background-size:contain}
.project-body{padding:1.4rem}
.meta{display:flex;gap:.65rem;flex-wrap:wrap;margin:.6rem 0 1rem}
.tag{padding:.35rem .7rem;border-radius:999px;background:rgba(255,255,255,.05);color:var(--muted);font-size:.88rem}
ul.clean{margin:.8rem 0 0;padding-left:1.25rem;color:var(--muted);line-height:1.7}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.5rem}
.profile-photo{border-radius:24px;overflow:hidden;min-height:100%}
.profile-photo img{width:100%;height:100%;object-fit:contain;}
.skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}
.skill{padding:.8rem .9rem;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--muted)}
.socials{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.site-footer{padding:2rem 0 3rem;color:var(--muted)}
.footer-card{padding:1rem 1.25rem;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
@media (max-width: 900px){
  .hero-grid,.split,.project,.grid-2,.grid-3{grid-template-columns:1fr}
  .hero{padding-top:2.5rem}
  .header-inner{flex-direction:column;align-items:flex-start}
}
