:root{color-scheme:light;--bg-base: #ffffff;--bg-surface: #ffffff;--text-primary: #000000;--text-muted: rgba(0, 0, 0, .68);--accent-strong: #000000;--accent-soft: rgba(0, 0, 0, .08);--border-color: rgba(0, 0, 0, .14);--overlay-surface: rgba(255, 255, 255, .92);--overlay-border: rgba(0, 0, 0, .18);--shadow-soft: 0 18px 40px rgba(0, 0, 0, .08)}[data-theme=dark]{color-scheme:dark;--bg-base: #000000;--bg-surface: #000000;--text-primary: #ffffff;--text-muted: rgba(255, 255, 255, .72);--accent-strong: #ffffff;--accent-soft: rgba(255, 255, 255, .12);--border-color: rgba(255, 255, 255, .28);--overlay-surface: rgba(0, 0, 0, .85);--overlay-border: rgba(255, 255, 255, .24);--shadow-soft: 0 18px 40px rgba(255, 255, 255, .12)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:IBM Plex Mono,monospace;background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-strong)}button,input,textarea{font-family:IBM Plex Mono,monospace}.app{flex:1;display:flex;flex-direction:column}main{flex:1}.content-boundary{width:min(1100px,92%);margin:0 auto}.navbar{position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--overlay-surface);border-bottom:1px solid var(--overlay-border)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;position:relative}.navbar__brand{font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.95rem;color:var(--accent-strong)}.navbar__links{display:flex;align-items:center;gap:1.5rem}.navbar__link{font-size:.9rem;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;transition:color .2s ease,transform .2s ease}.navbar__link:hover{color:var(--accent-strong);transform:translateY(-1px)}.navbar__toggle{display:none;background:none;border:none;cursor:pointer;padding:.3rem}.navbar__toggle-bar{width:22px;height:2px;background:var(--text-primary);margin:5px 0;transition:transform .3s ease,opacity .3s ease}.navbar__mode-toggle{border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;padding:.6rem 1rem;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.navbar__mode-toggle:hover{background:var(--accent-soft);border-color:var(--accent-strong)}.hero{padding:7rem 0 6rem}.hero__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:3.5rem}.hero__content{display:flex;flex-direction:column;gap:1.5rem;max-width:620px}.hero__eyebrow{letter-spacing:.2em;text-transform:uppercase;font-size:.85rem;color:var(--accent-strong)}.hero__title{font-size:clamp(2.6rem,5vw,3.6rem);line-height:1.1;max-width:780px}.hero__tagline{font-size:1.05rem;line-height:1.7;max-width:640px;color:var(--text-muted)}.hero__actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.hero__portrait{position:relative;margin:0;max-width:min(360px,38vw)}.hero__portrait-frame{position:relative;border:1px solid var(--border-color);padding:1.25rem;background:linear-gradient(135deg,rgba(0,0,0,.08),transparent);display:flex;justify-content:center;align-items:center}[data-theme=dark] .hero__portrait-frame{background:linear-gradient(135deg,rgba(255,255,255,.08),transparent)}.hero__portrait-image{width:100%;border:1px solid var(--border-color);filter:saturate(0) contrast(1.1)}.hero__portrait-glow{position:absolute;inset:18% -10%;background:radial-gradient(ellipse at center,rgba(0,0,0,.14),transparent 62%);z-index:-1;pointer-events:none}[data-theme=dark] .hero__portrait-glow{background:radial-gradient(ellipse at center,rgba(255,255,255,.14),transparent 62%)}.hero__portrait-caption{margin-top:.75rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);text-align:center}.hero__link{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);transition:color .2s ease}.hero__link:hover{color:var(--accent-strong)}.button{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.8rem;border:1px solid transparent;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;cursor:pointer}.button--primary{background:var(--accent-strong);color:var(--bg-surface);box-shadow:var(--shadow-soft)}.button--primary:hover{transform:translateY(-2px)}.button--ghost{border-color:var(--border-color);color:var(--text-muted)}.button--ghost:hover{border-color:var(--accent-strong);color:var(--accent-strong)}section{padding:5.5rem 0}.section__header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2.5rem}.section__title{font-size:1.75rem;letter-spacing:.12em;text-transform:uppercase}.section__subtitle{color:var(--text-muted);max-width:640px;line-height:1.6}.about__content p{line-height:1.75;color:var(--text-muted);margin-bottom:1.2rem}.about__content p:last-child{margin-bottom:0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.skill-card{background:var(--bg-surface);border:1px solid var(--border-color);padding:1.5rem;transition:transform .2s ease,border-color .2s ease,background .2s ease}.skill-card:hover{transform:translateY(-4px);border-color:var(--accent-strong)}.skill-card h3{font-size:.95rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.9rem}.skill-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.skill-card li{color:var(--text-muted);font-size:.95rem}.companies-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.company-card{border:1px solid var(--border-color);background:var(--bg-surface);transition:transform .2s ease,border-color .2s ease,background .2s ease}.company-card a{display:flex;flex-direction:column;gap:.4rem;padding:1.5rem;color:inherit}.company-card:hover{transform:translateY(-4px);border-color:var(--accent-strong)}.company-card__name{font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}.company-card__url{font-size:.85rem;color:var(--text-muted);word-break:break-word}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.75rem}.projects-grid__status{grid-column:1 / -1;text-align:center;color:var(--text-muted);padding:2rem 1rem}.project-card{background:var(--bg-surface);border:1px solid var(--border-color);padding:1.75rem;display:flex;flex-direction:column;gap:1rem;transition:transform .2s ease,border-color .2s ease,background .2s ease}.project-card:hover{transform:translateY(-4px);border-color:var(--accent-strong)}.project-card h3{font-size:1.1rem;letter-spacing:.08em}.project-card p{color:var(--text-muted);line-height:1.6}.project-card__link{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.75rem}.blog-card{display:flex;flex-direction:column;gap:.9rem;background:var(--bg-surface);border:1px solid var(--border-color);padding:1.75rem;transition:border-color .2s ease,transform .2s ease,background .2s ease,box-shadow .2s ease;cursor:pointer;outline:none;text-align:left;font:inherit;color:inherit;width:100%}.blog-card:hover,.blog-card:focus-visible{transform:translateY(-4px);border-color:var(--accent-strong)}.blog-card:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.blog-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted)}.blog-card__meta span[aria-hidden=true]{letter-spacing:0}.blog-card__title{font-size:1.2rem;letter-spacing:.06em}.blog-card__excerpt{color:var(--text-muted);line-height:1.6;flex:1}.blog-card__highlight{font-size:.95rem;line-height:1.5;color:var(--text-primary)}.blog-card__cta{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong)}.blog-card.blog-card--link{text-decoration:none;color:inherit}.blog-card.blog-card--link:hover,.blog-card.blog-card--link:focus-visible{text-decoration:none}.blog-grid--page{margin-top:2rem}.blog-section__footer{margin-top:1.5rem;display:flex;justify-content:flex-end}.blog-section__all-posts{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong);text-decoration:none}.blog-section__all-posts:hover,.blog-section__all-posts:focus-visible{color:var(--text-primary);text-decoration:underline}.blog-detail{display:flex;flex-direction:column;gap:2.5rem}.blog-detail__header{display:flex;flex-direction:column;gap:1rem}.blog-detail__title{font-size:clamp(2rem,2.6vw + 1.4rem,2.75rem);letter-spacing:.04em}.blog-detail__highlight{font-size:1.05rem;color:var(--text-muted);line-height:1.7}.blog-detail__content{display:grid;gap:2.5rem}.blog-detail__section{display:grid;gap:.9rem}.blog-detail__section-title{font-size:1.4rem;letter-spacing:.03em}.blog-detail__paragraph{line-height:1.8;color:var(--text-primary)}.blog-detail__footer{display:flex;justify-content:flex-start}.blog-detail__back{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong);text-decoration:none}.blog-detail__back:hover,.blog-detail__back:focus-visible{color:var(--text-primary);text-decoration:underline}.contact{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.contact__info{display:flex;flex-direction:column;gap:1.5rem;color:var(--text-muted);line-height:1.6}.contact__form{background:var(--bg-surface);border:1px solid var(--border-color);padding:2rem;display:grid;gap:1.25rem}.contact__field{display:flex;flex-direction:column;gap:.55rem}.contact__label{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary)}.contact__input,.contact__textarea{padding:.85rem 1rem;border:1px solid var(--border-color);background:transparent;font-size:.95rem;color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}.contact__input:focus,.contact__textarea:focus{outline:none;border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.contact__textarea{min-height:140px;resize:vertical}.contact__status{display:inline-block;margin-top:1rem;font-size:.85rem;color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase}.contact__status--success{color:#0f8a4b}[data-theme=dark] .contact__status--success{color:#4ade80}.contact__status--error{color:#d92d20}.social-links{display:flex;flex-wrap:wrap;gap:.9rem 1.75rem;list-style:none;padding:0;margin:0}.social-links__item{list-style:none}.social-links__anchor{display:inline-flex;align-items:center;gap:.75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-primary);transition:color .2s ease}.social-links__icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;background:var(--accent-strong);color:var(--bg-base);border:1px solid var(--accent-strong);font-size:1.05rem;transition:transform .2s ease,background .2s ease,color .2s ease}.social-links__label{letter-spacing:.12em}.social-links__anchor:hover,.social-links__anchor:focus-visible{color:var(--accent-strong)}.social-links__anchor:hover .social-links__icon,.social-links__anchor:focus-visible .social-links__icon{transform:translateY(-2px) scale(1.03)}footer{padding:3rem 0;border-top:1px solid var(--border-color);margin-top:4rem}.footer__inner{display:flex;flex-direction:column;gap:.8rem;text-align:center;color:var(--text-muted);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}@media(max-width:900px){.hero{padding-top:6rem}.hero__inner{flex-direction:column;align-items:flex-start;gap:2.5rem}.hero__portrait{max-width:320px}}@media(max-width:768px){.navbar__toggle{display:block}.navbar__links{position:absolute;top:100%;right:0;background:var(--overlay-surface);flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem;border:1px solid var(--overlay-border);transform-origin:top right;transform:scaleY(0);opacity:0;transition:transform .2s ease,opacity .2s ease;width:min(280px,88vw);gap:1rem}.navbar__links--open{transform:scaleY(1);opacity:1}.navbar__link{padding:.35rem 0}.navbar__mode-toggle{width:100%;text-align:left}}@media(max-width:600px){.hero__title{font-size:clamp(2.2rem,8vw,3rem)}.hero__actions{flex-direction:column;align-items:flex-start}.hero__portrait-frame{padding:1rem}}
