:root{color-scheme:light dark;--bg: #f3f6fa;--surface-1: #ffffff;--surface-2: #eef2f7;--text: #0f1720;--muted: #475569;--border: #d0d7e2;--accent: #4f46e5;--primary: #4f46e5;--card: var(--surface-1);--surface-elevated: color-mix(in srgb, var(--surface-1) 85%, #ffffff);--surface-muted: color-mix(in srgb, var(--surface-2) 92%, #ffffff 8%);--nav-surface: color-mix(in srgb, var(--surface-2) 75%, transparent);--input-bg: #f8fafc;--input-border: #c4cede;--tag-text: #1f2937;--tag-bg: color-mix(in srgb, var(--surface-2) 88%, #ffffff 12%);--tag-border: #cbd5e1;--card-shadow: 0 18px 32px rgba(15, 23, 42, .08);--radius-lg: 18px;--py: clamp(6px, .8vh, 10px);--px: clamp(12px, 1.6vw, 16px);--gap: clamp(8px, 1.5vw, 16px);--hero-fs: clamp(28px, 6vw, 56px);--brand-logo-h: clamp(28px, 3.2vw, 44px);--brand-gap: clamp(8px, 1.2vw, 16px)}:root[data-theme=dark],html.dark{color-scheme:dark;--bg: #0f1216;--surface-1: #141920;--surface-2: #1b2230;--text: #e6edf3;--muted: #a0aaba;--border: #263040;--accent: #8b9dff;--primary: #8b9dff;--card: var(--surface-1);--surface-elevated: color-mix(in srgb, var(--surface-1) 85%, #1f2837);--surface-muted: color-mix(in srgb, var(--surface-2) 92%, #141920 8%);--nav-surface: color-mix(in srgb, var(--surface-1) 72%, rgba(20, 25, 32, .72));--input-bg: rgba(21, 28, 38, .9);--input-border: #323e52;--tag-text: #d4dbe6;--tag-bg: color-mix(in srgb, var(--surface-2) 80%, #0f1216 20%);--tag-border: #32405b;--card-shadow: 0 18px 36px rgba(6, 12, 24, .45)}@media (prefers-color-scheme: dark){:root:not([data-theme]){color-scheme:dark;--bg: #0f1216;--surface-1: #141920;--surface-2: #1b2230;--text: #e6edf3;--muted: #a0aaba;--border: #263040;--accent: #8b9dff;--primary: #8b9dff;--card: var(--surface-1);--surface-elevated: color-mix(in srgb, var(--surface-1) 85%, #1f2837);--surface-muted: color-mix(in srgb, var(--surface-2) 92%, #141920 8%);--nav-surface: color-mix(in srgb, var(--surface-1) 72%, rgba(20, 25, 32, .72));--input-bg: rgba(21, 28, 38, .9);--input-border: #323e52;--tag-text: #d4dbe6;--tag-bg: color-mix(in srgb, var(--surface-2) 80%, #0f1216 20%);--tag-border: #32405b;--card-shadow: 0 18px 36px rgba(6, 12, 24, .45)}:root:not([data-theme]) .brand-pill{background:#141920f2;border-color:var(--border)}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.65;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.18em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}main{max-width:1100px;margin:0 auto;padding:20px 20px 120px}.nav{position:sticky;top:0;inset-inline:0;backdrop-filter:blur(16px);display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--nav-surface);z-index:100}.nav .brand{font-weight:700;color:var(--text);letter-spacing:.02em;text-decoration:none}.nav-links{display:flex;align-items:center;gap:12px}.nav-links a{color:var(--muted);font-weight:500;padding:8px 14px;border-radius:999px;transition:all .3s ease;text-decoration:none;position:relative}.nav-links a:hover{color:var(--text);background:var(--surface-muted);transform:translateY(-1px)}.nav-links a:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--primary);transition:all .3s ease;transform:translate(-50%)}.nav-links a:hover:after{width:80%}.nav-links .cta{background:#67e8f929;color:var(--primary)}.nav-primary{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:999px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#0c0f14;font-weight:600;margin-left:0;text-decoration:none}.nav-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;cursor:pointer}.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);border-radius:999px}.nav-locales{display:inline-flex;gap:6px;align-items:center;margin-left:12px;padding-left:12px;border-left:1px solid var(--border);font-size:12px;color:var(--muted)}.nav-locales span{font-weight:600}.nav-locales a{color:var(--primary);font-weight:600}.nav-actions{display:inline-flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:18px;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.theme-toggle:hover{background:var(--surface-muted);border-color:var(--primary);transform:rotate(15deg)}.theme-toggle:active{transform:scale(.96) rotate(15deg)}@media (prefers-contrast: more){:root{--bg: #0b0f15;--surface-1: #10141a;--surface-2: #1a2330;--border: #3a4660;--text: #ffffff;--muted: #d1d9e8;--accent: #aebbff;--primary: #aebbff;--card-shadow: 0 0 0 rgba(0, 0, 0, 0)}a{text-decoration-thickness:.12em}.theme-toggle{border-color:color-mix(in srgb,var(--border) 88%,#ffffff 12%)}}@media (prefers-contrast: less){:root{--border: color-mix(in srgb, var(--border) 60%, transparent);--muted: color-mix(in srgb, var(--muted) 85%, var(--text) 15%);--accent: color-mix(in srgb, var(--accent) 88%, var(--surface-1) 12%)}a{text-decoration-thickness:.06em;text-underline-offset:.2em}}.hero{display:grid;place-items:center;text-align:center;padding-block:clamp(16px,6vh,56px);max-width:1100px;margin:0 auto;gap:clamp(12px,2vh,20px)}.brand{display:flex;align-items:center;justify-content:center;gap:var(--brand-gap);flex-wrap:wrap}.brand-logo{display:flex;align-items:center;text-decoration:none}.brand-logo img,.brand-logo svg{width:180px;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) contrast(1.2)}:root[data-theme=dark] .brand-logo img,html.dark .brand-logo img{filter:drop-shadow(0 0 3px rgba(255,255,255,.5)) contrast(1.3) brightness(1.1)}@media (prefers-color-scheme: dark){:root:not([data-theme]) .brand-logo img{filter:drop-shadow(0 0 3px rgba(255,255,255,.5)) contrast(1.3) brightness(1.1)}}.name-pill{display:inline-flex;align-items:center;justify-content:center;padding:var(--py) var(--px);border-radius:9999px;line-height:1;min-height:max(32px,calc(var(--brand-logo-h) * .9));height:auto;width:fit-content;max-width:100%;white-space:nowrap;box-sizing:border-box;overflow:visible;background:#fff;color:#1f2937;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 24px #0000000f;font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.name-pill:hover,.name-pill:focus-visible{filter:brightness(1.05);transition:filter .18s ease;outline:2px solid transparent}:root[data-theme=dark] .name-pill,html.dark .name-pill{background:#141920f2;color:var(--primary);border-color:var(--border)}@media (prefers-color-scheme: dark){:root:not([data-theme]) .name-pill{background:#141920f2;color:var(--primary);border-color:var(--border)}}.hero-grid{display:grid;gap:32px;grid-template-columns:1fr;align-items:center;grid-template-areas:"media" "copy";width:100%}.hero-copy{display:grid;gap:18px;grid-area:copy}.hero-role{font-size:14px;color:var(--muted)}.hero-title{font-size:var(--hero-fs);line-height:1.1;margin:clamp(8px,1.2vh,12px) 0 0 0;text-align:center}@media (min-width: 1024px){.hero-title{text-align:left}}.hero-sub{color:var(--muted);margin:0;font-size:18px}.hero-bullets{margin:0;padding-left:20px;color:var(--muted);display:grid;gap:8px}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.hero-primary{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border-radius:999px;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;font-weight:700;font-size:16px;text-decoration:none;box-shadow:0 4px 14px #ff6b3566;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.hero-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff6b3599;background:linear-gradient(135deg,#ff5722,#ff9800)}.hero-secondary{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;border:2px solid var(--primary);color:var(--primary);font-weight:600;background:transparent;text-decoration:none;transition:all .3s ease}.hero-secondary:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.hero-media{display:flex;justify-content:center;grid-area:media}.hero-media .carousel{width:min(320px,100%);margin:0 auto}.section{margin:100px 0 0}.section:first-of-type{margin-top:80px}.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:32px 0;padding:28px 24px;background:var(--surface-muted);border-radius:var(--radius-lg);border:1px solid var(--border);justify-items:center}.metric-item{text-align:center;display:flex;flex-direction:column;gap:8px;transition:all .3s ease;cursor:pointer}.metric-item:hover{transform:scale(1.05)}.metric-item:hover .metric-number{color:#ff6b35}.metric-number{font-size:36px;font-weight:700;color:var(--primary);line-height:1}.metric-label{font-size:14px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.h2{font-size:28px;margin:0 0 18px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:24px}.section-intro{color:var(--muted);margin:0;max-width:52ch}.grid{display:grid;gap:18px}.grid-3{grid-template-columns:1fr}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--card-shadow);transition:all .3s ease;cursor:pointer}.card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0f172a26;border-color:var(--primary)}.card h3{margin:0 0 8px}.about-content{display:grid;gap:14px}.about-content ul{margin:0;padding-left:20px;color:var(--muted);display:grid;gap:6px}.pill-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.pill-list li{background:var(--tag-bg);color:var(--tag-text);border:1px solid var(--tag-border);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:500;transition:all .2s ease;cursor:pointer}.pill-list li:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.05)}.project-grid{margin-top:24px}.project-card{display:flex;flex-direction:column;gap:16px;min-height:340px}.project-card img{width:100%;height:auto;border-radius:14px;border:1px solid rgba(99,102,241,.16)}.project-body{display:grid;gap:8px}.project-body h3,.report-body h3{margin:0}.project-body p{color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.tag{font-size:12px;color:var(--tag-text);border:1px solid var(--tag-border);border-radius:999px;padding:4px 10px;background:var(--tag-bg)}.project-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:12px}.project-actions a{font-weight:600;color:var(--primary)}.reports-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.report-card{display:flex;flex-direction:column;gap:16px;min-height:320px}.report-card img{width:100%;height:auto;border-radius:14px;border:1px solid rgba(99,102,241,.16);background:var(--card)}.report-body{display:grid;gap:8px}.report-body p{color:var(--muted);margin:0}.report-actions{margin-top:auto;display:flex;flex-direction:column;gap:12px}.report-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.report-platform{font-weight:600;color:var(--text)}.report-meta .tags{margin-top:4px}.report-button{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(135deg,#0ea5e91f,#6366f11f);color:var(--primary);font-weight:600;text-decoration:none;transition:transform .2s ease,background .2s ease}.report-button:hover{background:linear-gradient(135deg,#0ea5e933,#6366f133);transform:translateY(-1px)}.experience-timeline{display:grid;gap:20px}.timeline-item{display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:start;padding:16px;border-radius:var(--radius-lg);transition:all .3s ease;cursor:pointer}.timeline-item:hover{background:var(--surface-muted);transform:translate(8px)}.timeline-period{font-size:12px;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.5px;padding:6px 12px;background:var(--surface-muted);border-radius:999px;text-align:center;border:1px solid var(--border)}.timeline-content h3{margin:0 0 8px;font-size:16px}.timeline-content p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.experience-note{color:var(--muted);margin-bottom:12px}.cta{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:14px 28px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;box-shadow:0 4px 14px #ff6b3566;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.cta:hover,.cta:focus{transform:translateY(-2px);box-shadow:0 8px 25px #ff6b3599;background:linear-gradient(135deg,#ff5722,#ff9800)}.cta:active{transform:translateY(0);box-shadow:0 2px 8px #ff6b3566}.cta.loading{pointer-events:none;opacity:.8}.cta.loading:after{content:"";width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;margin-left:8px}@keyframes spin{to{transform:rotate(360deg)}}.contact-intro{color:var(--muted);margin-bottom:24px}.cv-highlight{display:flex;flex-direction:column;gap:1rem}.cv-highlight__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:0}.cta.secondary{background:transparent;border:1px solid var(--primary);color:var(--primary)}.cta.secondary:hover,.cta.secondary:focus{background:#67e8f929}.contact-form{display:grid;gap:18px;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-lg);padding:26px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-weight:500}.contact-form input,.contact-form textarea{padding:12px 14px;border-radius:12px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font:inherit}.contact-form textarea{resize:vertical}.contact-form .form-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form .cta{justify-self:start;padding:12px 20px;border-radius:999px;border:none;background:linear-gradient(135deg,var(--primary),var(--accent));color:#0c0f14;font-weight:600;cursor:pointer}.contact-form .cta[disabled]{opacity:.6;cursor:wait}.contact-form .form-footnote{color:var(--muted);font-size:13px;margin:0}.contact-form .form-status{min-height:20px;margin:0;font-size:14px;color:var(--primary)}.contact-form.is-error .form-status{color:#f87171}.contact-form .form-helper{color:var(--muted);margin:0}.contact-form .honeypot{display:none}.footer{border-top:1px solid var(--border);padding:40px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;color:var(--muted)}.footer-brand{display:flex;flex-direction:column;gap:12px}.footer-logo{width:180px;max-width:100%;height:auto;opacity:.95;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.2));transition:opacity .2s ease,filter .2s ease;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}:root[data-theme=dark] .footer-logo,html.dark .footer-logo{filter:drop-shadow(0 0 4px rgba(255,255,255,.4)) brightness(1.1)}@media (prefers-color-scheme: dark){:root:not([data-theme]) .footer-logo{filter:drop-shadow(0 0 4px rgba(255,255,255,.4)) brightness(1.1)}}.footer-logo:hover{opacity:1}:root[data-theme=dark] .footer-logo:hover,html.dark .footer-logo:hover{filter:drop-shadow(0 0 6px rgba(255,255,255,.6)) brightness(1.2)}@media (prefers-color-scheme: dark){:root:not([data-theme]) .footer-logo:hover{filter:drop-shadow(0 0 6px rgba(255,255,255,.6)) brightness(1.2)}}.footer a{color:var(--primary)}.social{display:flex;gap:12px}@media (min-width: 640px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{text-align:left}.hero .brand{justify-content:flex-start}.hero-grid{grid-template-columns:1.6fr 1fr;grid-template-areas:"copy media";align-items:center}.hero-media{justify-content:flex-end}.hero-media .carousel{width:320px}}@media (max-width: 1100px){main{padding-inline:24px}}@media (max-width: 900px){.nav{padding-inline:20px}.nav-links{position:absolute;top:64px;right:20px;flex-direction:column;align-items:flex-start;background:var(--nav-surface);border:1px solid var(--border);border-radius:16px;padding:16px;width:min(240px,calc(100vw - 40px));display:none}.nav-links.is-open,.nav-toggle{display:flex}.nav-links .cta{background:transparent;color:var(--primary)}.nav-locales{margin-top:8px;border-left:none;padding-left:0}.hero{padding:24px 16px;gap:12px}.brand{justify-content:center;width:100%}.brand-logo{justify-content:center}.brand-logo img{width:100px;height:auto}.name-pill{padding:6px 14px;font-size:11px;min-height:32px}.hero-role{font-size:11px;text-align:center;margin-bottom:16px}.hero-grid{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}.hero-copy{width:100%;text-align:center;padding:0 20px}.hero-title{font-size:22px;line-height:1.3;margin-bottom:16px;text-align:center}.hero-sub{font-size:14px;line-height:1.6;text-align:center;margin-bottom:20px}.hero-media{width:100%;display:flex;justify-content:center;margin:0 auto 24px}.hero-media .carousel{width:200px!important;height:200px!important;min-width:200px;min-height:200px;max-width:200px;max-height:200px;border-radius:16px;margin:0 auto}.hero-metrics{grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 10px;margin:24px auto}.metric-number{font-size:22px}.metric-label{font-size:10px}.hero-bullets{font-size:14px;gap:6px;text-align:left;padding:0 20px}.hero-actions{flex-direction:column;gap:12px;width:100%;padding:0 20px}.hero-primary,.hero-secondary{width:100%;padding:16px 24px;font-size:15px;justify-content:center}.contact-form .form-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:12px;text-align:center}.timeline-period{justify-self:center;width:fit-content}.footer{flex-direction:column;text-align:center;gap:16px}.footer-brand{align-items:center}.nav{gap:12px}}@media (max-width: 375px){.hero-title{font-size:20px}.hero-media .carousel{width:180px!important;height:180px!important;min-width:180px;min-height:180px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
