:root{--bg: #0b0f19;--surface: #111827;--surface-soft: #0f172a;--text: #e5e7eb;--text-soft: #d1d5db;--muted: #9ca3af;--border: #1f2937;--accent: #7c3aed;--nav-bg: rgba(11, 15, 25, .75);--section-alt: rgba(7, 10, 18, .75);--nav-offset: 88px}:root[data-theme=light]{--bg: #f7f8fc;--surface: #ffffff;--surface-soft: #f1f5f9;--text: #0f172a;--text-soft: #334155;--muted: #475569;--border: #cbd5e1;--accent: #6d28d9;--nav-bg: rgba(247, 248, 252, .85);--section-alt: rgba(226, 232, 240, .65)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}a:focus-visible,button:focus-visible{outline:2px solid rgba(124,58,237,.7);outline-offset:3px;border-radius:10px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}.container{width:min(980px,90%);margin:0 auto}.nav{position:sticky;top:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--nav-bg);border-bottom:1px solid var(--border);padding:8px 0;box-shadow:0 1px #7c3aed26}.nav__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;font-weight:700;font-size:22px;letter-spacing:.6px}.nav__left{grid-column:1;justify-self:start;display:flex;align-items:center;flex-direction:row-reverse;gap:8px}.lang-switch{position:relative;display:block;width:70px;height:38px;padding:5px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-soft) 88%,transparent);color:var(--text);border-radius:999px;cursor:pointer;box-shadow:0 4px 14px #0206171f;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.lang-switch__thumb{position:absolute;top:4px;left:4px;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--accent);box-shadow:0 6px 16px #7c3aed61;transition:transform .2s ease}.lang-switch.is-english .lang-switch__thumb{transform:translate(32px)}.lang-flag{width:26px;height:26px;display:inline-flex;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px #f8fafc5c}.lang-flag svg{width:100%;height:100%;display:block}.lang-switch:hover{transform:translateY(-2px);border-color:#8b5cf6;background:color-mix(in srgb,var(--surface-soft) 96%,transparent);box-shadow:0 0 0 2px #7c3aed40,0 0 18px #7c3aed73}.nav__brand{grid-column:2;justify-self:center;font-weight:700;font-size:22px;letter-spacing:.6px}.nav__links{grid-column:3;justify-self:end;display:flex;align-items:center;gap:18px;color:var(--muted);font-size:15px}.nav__links a:hover{color:var(--text)}.nav__links a.is-active{color:var(--text);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}.theme-switch{position:relative;display:block;width:70px;height:38px;padding:5px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-soft) 88%,transparent);color:var(--text);cursor:pointer;box-shadow:0 4px 14px #0206171f;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.theme-switch__thumb{position:absolute;top:4px;left:4px;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--accent);font-size:16px;line-height:1;box-shadow:0 6px 16px #7c3aed61;transition:transform .2s ease}.theme-switch.is-dark .theme-switch__thumb{transform:translate(32px)}.theme-switch:hover{transform:translateY(-2px);border-color:#8b5cf6;background:color-mix(in srgb,var(--surface-soft) 96%,transparent);box-shadow:0 0 0 2px #7c3aed40,0 0 18px #7c3aed73}.hero{padding:56px 0 30px}.hero,.section{scroll-margin-top:var(--nav-offset)}.hero__inner{display:grid;grid-template-columns:110px 1fr;gap:40px;align-items:center}.hero__right{padding-right:16px;max-width:72ch}.hero__avatar{width:100px;height:100px;border-radius:50%;border:2px solid var(--border);object-fit:cover}.hero h1{margin:0 0 14px;font-size:clamp(28px,4vw,36px);line-height:1.1}.hero__subtitle{margin:0 0 18px;color:var(--muted);font-size:15px}.hero__text{margin:0 0 22px;max-width:60ch;color:var(--text-soft);font-size:15px}.hero__availability{display:inline-flex;align-items:center;margin:0 0 24px;padding:6px 10px;border-radius:999px;font-size:14px;font-weight:600;color:#ddd6fe;background:#7c3aed1f;border:1px solid rgba(124,58,237,.28)}:root[data-theme=light] .hero__availability{color:#000}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.hero__actions .btn{font-size:15px}.btn--primary{background:linear-gradient(135deg,var(--accent),#8b5cf6);border-color:transparent;color:#fff;box-shadow:0 10px 24px #7c3aed59}.section{padding:48px 0}.section__title{margin:0 0 14px;font-size:clamp(24px,3.2vw,30px)}.card{border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 85%,transparent);border-radius:14px;padding:22px;transition:transform .2s ease,border .2s ease,background .2s ease}.grid{display:grid;gap:12px}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.card__preview{width:100%;aspect-ratio:16 / 9;object-fit:cover;object-position:top center;border:1px solid var(--border);border-radius:10px;margin-bottom:16px;background:var(--surface-soft)}.card h3{margin:0 0 8px;font-size:22px}.card__text{color:var(--muted);margin-bottom:12px;font-size:16px}.card__tech{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.card__tech span{font-size:13px;padding:7px 11px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);color:var(--text-soft)}.card__links{display:flex;flex-wrap:wrap;gap:12px;font-size:15px}.card__link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 14px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface-soft) 90%,transparent);color:var(--accent);font-weight:700;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.card__link--primary{border-color:transparent;background:linear-gradient(135deg,var(--accent),#8b5cf6);color:#fff;box-shadow:0 8px 18px #7c3aed47}.card__link:hover{transform:translateY(-2px);border-color:#8b5cf6;background:color-mix(in srgb,var(--surface-soft) 98%,transparent);color:var(--text)}.card__link--primary:hover{background:linear-gradient(135deg,#6d28d9,#7c3aed);color:#fff}.card__note{margin:10px 0 0;color:var(--text-soft);font-size:13px;line-height:1.4}.card:hover{transform:translateY(-4px);border-color:#2b3548;background:color-mix(in srgb,var(--surface) 92%,transparent)}.projects__more{margin-top:36px;text-align:center}.section--alt{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 0%,transparent) 0%,var(--section-alt) 12%,var(--section-alt) 88%,color-mix(in srgb,var(--bg) 0%,transparent) 100%)}.section--skills{margin-top:-24px;padding-top:36px}.card__title{margin:0 0 10px}.pill-list{display:flex;flex-wrap:wrap;gap:8px}.pill{font-size:13px;padding:7px 11px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft) 90%,transparent);border:1px solid var(--border);color:var(--text)}.contact{text-align:center}.contact__text{color:var(--muted);margin-bottom:10px;font-size:clamp(17px,2.4vw,22px)}.contact__subtext{margin:0 0 26px;color:var(--text-soft);font-size:16px}.contact__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}.contact__btn{align-items:center;gap:8px;min-width:150px;padding:15px 26px;font-size:19px;font-weight:600}.footer{border-top:1px solid var(--border);margin-top:26px;padding:14px 0;text-align:center;color:var(--muted);font-size:12px}.fade-in{opacity:0;transform:translateY(10px);animation:fadeIn .6s ease forwards}.reveal{opacity:0;transform:translateY(20px);transition:.6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-soft) 90%,transparent);box-shadow:0 6px 16px #0206171f;transition:transform .2s ease,border-color .2s ease,background .2s ease;font-size:14px;color:var(--text)}.btn:hover{transform:translateY(-2px);border-color:#8b5cf6;background:color-mix(in srgb,var(--surface-soft) 98%,transparent);box-shadow:0 0 0 2px #7c3aed33,0 0 20px #7c3aed73}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}@media(max-width:860px){:root{--nav-offset: 154px}.nav__inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:". brand controls" "links links links";gap:10px 14px;padding:8px 0;font-size:20px;align-items:center}.nav__left{grid-area:controls;justify-self:end;flex-direction:column;gap:8px}.nav__brand{grid-area:brand;justify-self:center;font-size:20px;min-width:0;white-space:nowrap}.nav__links{grid-area:links;justify-self:center;justify-content:center;flex-wrap:wrap;font-size:14px;gap:10px 16px;width:100%}.lang-switch,.theme-switch{width:58px;height:34px}.lang-switch__thumb,.theme-switch__thumb{width:26px;height:26px}.lang-switch.is-english .lang-switch__thumb,.theme-switch.is-dark .theme-switch__thumb{transform:translate(24px)}.lang-flag{width:22px;height:22px}.hero__inner{grid-template-columns:1fr;text-align:center;gap:20px}.hero__right{padding-right:0}.hero__left{display:flex;justify-content:center}.hero__actions{justify-content:center}.hero{padding-top:38px}}@media(max-width:720px){.grid{gap:22px}.grid--2{grid-template-columns:1fr}}@media(max-width:380px){.nav__inner{gap:10px}.nav__brand{font-size:18px}}
