:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0a0a;--surface:#141112;--surface-2:#1c1718;--line:#2b2425;--line-strong:#3d3435;--fg:#efeae8;--fg-muted:#a39896;--fg-faint:#6e6462;--red:#e3131b;--red-text:#ff4a4f;--red-panel:#c0101a;--on-red:#fff5f4;--focus:#ff4a4f;--paper:#ece6e3;--ink:#0b0a0a;--ink-muted:#5c5452;--red-ink:#b30e15;--line-paper:#cfc6c3;--font-display:"Archivo", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;--font-body:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--fs-mono:.75rem;--fs-small:.875rem;--fs-body:clamp(1rem, .92rem + .3vw, 1.25rem);--fs-lead:clamp(1.125rem, .98rem + .6vw, 1.5rem);--fs-h3:clamp(2rem, 1.2rem + 3.6vw, 4.5rem);--fs-h2:clamp(2.5rem, 1.2rem + 5.4vw, 7.5rem);--fs-hero:clamp(3.25rem, 15.5vw, 16rem);--fs-manifesto:clamp(1.75rem, 1rem + 3.4vw, 4.25rem);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--s-11:160px;--gutter:clamp(16px, 4vw, 56px);--section-gap:clamp(96px, 12vw, 160px);--max:1440px;--radius:2px;--radius-tile:20px;--line-w:2px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.2s;--dur-base:.6s}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-stretch:100%;line-height:1.6;overflow-x:clip}img,svg{max-width:100%;display:block}h1,h2,h3,p,dl,dd,figure{margin:0}button,input,textarea{font:inherit;color:inherit}::selection{background:var(--red);color:var(--on-red)}section[id],[id=manifiesto]{scroll-margin-top:0}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.mono{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.12em;text-transform:uppercase;line-height:1.5}.eyebrow{align-items:center;gap:var(--s-3);color:var(--red-text);display:inline-flex}.eyebrow:before{content:"";width:24px;height:var(--line-w);background:var(--red)}.section-head{gap:var(--s-4);padding-bottom:clamp(48px,6vw,96px);display:grid}.section-title{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.03em;text-wrap:balance;max-width:14ch;font-weight:760;font-stretch:112%;line-height:.95}.section-title--md{max-width:20ch;font-size:clamp(2rem,1.2rem + 3vw,4.25rem)}.section-sub{color:var(--fg-muted);font-size:var(--fs-lead);max-width:46ch;line-height:1.45}.split-line{margin-bottom:-.06em;padding-bottom:.06em}.ph{color:var(--red-text);outline-offset:-1px;border-radius:var(--radius);-webkit-box-decoration-break:clone;box-decoration-break:clone;background:repeating-linear-gradient(-45deg,#ff4a4f24 0 6px,#0000 6px 12px);outline:1px dashed #ff4a4f8c;padding-inline:.2em}.link{color:var(--fg);background-image:linear-gradient(var(--red), var(--red)), linear-gradient(var(--line-strong), var(--line-strong));transition:background-size .45s var(--ease-out), color var(--dur-micro);background-position:0 100%,0 100%;background-repeat:no-repeat;background-size:0 1px,100% 1px;padding-bottom:2px;text-decoration:none}.link:hover,.link:focus-visible{background-size:100% 1px,100% 1px}.btn{align-items:center;gap:var(--s-3);min-height:48px;padding:0 var(--s-5);border-radius:var(--radius);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-micro), border-color var(--dur-micro), color var(--dur-micro);border:1px solid #0000;font-size:.9375rem;font-weight:650;font-stretch:108%;text-decoration:none;display:inline-flex}.btn--primary{background:var(--red-panel);color:var(--on-red)}.btn--primary:hover{background:#a90d16}.btn--ghost{color:var(--fg);border-color:var(--line-strong);background:0 0}.btn--dark{background:var(--ink);color:var(--paper)}.btn--dark:hover{background:var(--red-ink)}.btn--light{background:var(--on-red);color:var(--red-panel)}.btn--light:hover{background:#fff}.btn--sm{min-height:40px;padding:0 var(--s-4);font-size:.8125rem}.btn--ghost:hover{border-color:var(--red)}.btn-label{transition:transform .15s var(--ease-out)}.btn:active .btn-label{transform:scale(.97)}.btn-arrow{transition:transform .35s var(--ease-out);display:inline-block}.btn:hover .btn-arrow{transform:translate(4px)}.btn[disabled]{opacity:.6;cursor:progress}.btn.is-pending{cursor:default;gap:var(--s-2);padding-block:var(--s-2);flex-wrap:wrap}:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:var(--radius)}.skip{left:var(--s-4);z-index:100;padding:var(--s-3) var(--s-4);background:var(--fg);color:var(--bg);font-weight:600;text-decoration:none;position:fixed;top:-100px}.skip:focus{top:calc(env(safe-area-inset-top,0px) + var(--s-4))}.grain{z-index:70;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar{z-index:50;padding-top:env(safe-area-inset-top,0px);transition:transform .5s var(--ease-out), background-color .3s, border-color .3s, color .3s;--bar-fg:var(--fg);--bar-muted:var(--fg-muted);color:var(--bar-fg);border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.topbar-inner{align-items:center;gap:var(--s-5);max-width:var(--max);padding:var(--s-3) var(--gutter);min-height:60px;margin-inline:auto;display:flex}.topbar.is-scrolled{-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);background:#0b0a0ab8;border-bottom-color:#ffffff0f}.topbar.is-hidden{transform:translateY(-110%)}.topbar:focus-within{transform:none}html[data-surface=light] .topbar{--bar-fg:var(--ink);--bar-muted:var(--ink-muted)}html[data-surface=light] .topbar.is-scrolled{background:#ece6e3c7;border-bottom-color:#00000014}.logo{align-items:center;gap:var(--s-2);color:var(--bar-fg);font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:1.25rem;font-weight:800;font-stretch:125%;line-height:1;text-decoration:none;display:inline-flex}.logo-line{width:28px;height:var(--line-w);background:var(--red);display:inline-block}.topnav{gap:var(--s-6);font-size:var(--fs-small);margin-inline:auto;display:flex}.topnav a{color:var(--bar-muted);padding-block:var(--s-2);transition:color var(--dur-micro);text-decoration:none}.topnav a:hover,.topnav a:focus-visible{color:var(--bar-fg)}.topbar-actions{align-items:center;gap:var(--s-3);margin-left:auto;display:flex}.topnav+.topbar-actions{margin-left:0}.lang{border:1px solid color-mix(in srgb, var(--bar-fg) 22%, transparent);border-radius:var(--radius);display:flex}.lang button{min-width:40px;min-height:40px;padding:0 var(--s-2);color:var(--bar-muted);font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.12em;cursor:pointer;background:0 0;border:0}.lang button[aria-pressed=true]{color:var(--bar-fg);background:color-mix(in srgb, var(--bar-fg) 12%, transparent)}.lang button:hover{color:var(--bar-fg)}@media (width<=899px){.topnav{display:none}}.hud{z-index:40;gap:var(--s-3);display:none;position:fixed;top:50%;right:18px;transform:translateY(-50%)}.hud ol{gap:18px;margin:0;padding:0;list-style:none;display:grid}.hud a{justify-content:flex-end;align-items:center;gap:var(--s-3);min-height:24px;color:var(--fg-faint);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px;text-decoration:none;display:flex}.hud-label{opacity:0;color:var(--fg-muted);white-space:nowrap;transition:opacity var(--dur-micro), transform var(--dur-micro) var(--ease-out);transform:translate(6px)}.hud a:hover .hud-label,.hud a:focus-visible .hud-label{opacity:1;transform:none}.hud a:hover,.hud a[aria-current]{color:var(--fg)}.hud-num{order:2}.hud-label{order:1}.hud-track{width:var(--line-w);background:var(--line);position:relative}.hud-zone{background:var(--red-panel);opacity:.5;height:15%;position:absolute;inset:auto 0 0}.hud-fill{background:var(--fg);transform-origin:top;position:absolute;inset:0;transform:scaleY(0)}.hud.is-redline .hud-fill{background:var(--red)}.progress{z-index:60;height:var(--line-w);pointer-events:none;position:fixed;inset:0 0 auto}.progress span{background:var(--fg);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.progress span.is-redline{background:var(--red)}@media (width>=1100px){.hud{display:flex}.progress{display:none}}html[data-surface=light] .hud,html[data-surface=light] .progress{--fg:var(--ink);--fg-muted:var(--ink-muted);--fg-faint:#8a807e;--line:var(--line-paper)}.intro{position:relative}.intro-stage{position:relative;overflow-x:clip}.hero{min-height:100svh;padding-block:96px var(--s-6);grid-template-rows:1fr auto auto;display:grid;position:relative}.hero-top,.hero-foot{z-index:1;position:relative}.hero-top{align-self:end;gap:var(--s-5);display:grid}.hero-glow{pointer-events:none;background:radial-gradient(60% 50% at 50% 55%,#e3131b33,#e3131b00 70%);animation:14s ease-in-out infinite alternate glow-breathe;position:absolute;inset:30% 3% 0}.intro.is-offscreen .hero-glow{animation-play-state:paused}@keyframes glow-breathe{0%{opacity:.55;transform:scale(1)}to{opacity:1;transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.hero-glow{animation:none}}.hero-meta{justify-content:space-between;gap:var(--s-2) var(--s-5);color:var(--fg-muted);flex-wrap:wrap;display:flex}.hero-clock time{color:var(--fg);font-variant-numeric:tabular-nums}.hero-title{font-family:var(--font-display);font-size:var(--fs-hero);letter-spacing:-.04em;text-transform:uppercase;font-weight:800;font-stretch:125%;line-height:.86;display:grid}.hero-line{padding-block:.02em .05em;display:block;overflow:hidden}.hero-line-inner{background:linear-gradient(176deg,#fffaf8 0%,#efe9e7 38%,#b9afad 62%,#e4dcda 78%,#8d8381 100%);color:#0000;-webkit-background-clip:text;background-clip:text;display:block}@media (forced-colors:active){.hero-line-inner{color:canvastext;background:0 0}}.hero-line:nth-child(2){text-align:right}.hero-dot{color:var(--red);-webkit-text-fill-color:var(--red)}.redline{height:var(--line-w);margin-block:clamp(20px,4vh,44px) clamp(28px,5vh,56px);position:relative}.redline-bar{background:var(--red);transform-origin:0;position:absolute;inset:0;box-shadow:0 0 24px #e3131b8c}.redline:before,.redline:after{content:"";background:repeating-linear-gradient(90deg, var(--line-strong) 0 1px, transparent 1px 48px);height:8px;position:absolute;top:10px}.redline:before{left:0;right:15%}.redline:after{background:repeating-linear-gradient(90deg, var(--red) 0 1px, transparent 1px 12px);width:15%;right:0}.hero-foot{align-items:end;gap:var(--s-5) var(--s-7);grid-template-columns:minmax(0,1fr) auto;display:grid}.hero-claim{font-size:var(--fs-lead);text-wrap:pretty;max-width:34ch;line-height:1.4}.hero-ctas{align-items:center;gap:var(--s-5);flex-wrap:wrap;display:flex}.hero-scroll{color:var(--fg-faint);grid-column:1/-1}@media (width<=720px){.hero-foot{grid-template-columns:minmax(0,1fr)}}html.intro-pending .hero [data-enter],html.intro-pending .hero-line-inner{opacity:0}html.intro-pending .redline-bar{transform:scaleX(0)}.manifesto{background:var(--red-panel);color:var(--on-red);padding-block:var(--section-gap)}.manifesto-inner{gap:var(--s-5);display:grid}.manifesto-label{opacity:.85}.manifesto-text{font-family:var(--font-display);font-size:var(--fs-manifesto);letter-spacing:-.02em;text-wrap:pretty;max-width:26ch;font-weight:640;font-stretch:108%;line-height:1.1}html.motion .intro{height:320svh}html.motion .intro-stage{height:100svh;position:sticky;top:0;overflow:hidden}html.motion .hero{height:100svh;min-height:0}html.motion .manifesto{z-index:2;clip-path:inset(50% 0);align-items:center;padding-block:0;display:grid;position:absolute;inset:0}@media (width<=899px){html.motion .intro{height:240svh}}.projects{padding-top:var(--section-gap);border-top:var(--line-w) solid var(--red)}.project-copy{gap:var(--s-5);align-content:center;min-width:0;display:grid}.project-meta{gap:var(--s-2) var(--s-5);color:var(--fg-muted);flex-wrap:wrap;display:flex}.project-count{color:var(--red-text);font-variant-numeric:tabular-nums}.project-title{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.75rem,1.4rem + 4.4vw,6.5rem);font-weight:800;font-stretch:118%;line-height:.92}.project-desc{font-size:var(--fs-lead);text-wrap:pretty;max-width:40ch;line-height:1.45}.project-specs{display:grid}.project-specs>div{gap:var(--s-4);border-top:1px solid var(--line);font-size:var(--fs-small);grid-template-columns:7.5rem minmax(0,1fr);padding-block:10px;display:grid}.project-specs>div:last-child{border-bottom:1px solid var(--line)}.project-specs dt{color:var(--fg-muted);padding-top:2px}.project-specs dd{color:var(--fg)}.project-links{align-items:center;gap:var(--s-3) var(--s-6);flex-wrap:wrap;display:flex}.agents-badge{align-items:center;gap:var(--s-2);color:var(--red-text);display:inline-flex}.agents-badge span{background:var(--red);width:6px;height:6px;box-shadow:0 0 10px var(--red);border-radius:50%}.device-wrap{perspective:1600px;min-width:0;padding:0 5.5% 28px;position:relative}.device-glow{pointer-events:none;background:radial-gradient(50% 50% at 50% 55%,#e3131b38,#e3131b00 70%);position:absolute;inset:10% 8% 0}.device{transform-origin:50% 100%;will-change:transform;position:relative}.device-lid{background:linear-gradient(165deg,#34302f 0%,#161314 38%,#0c0a0b 100%);border-radius:20px 20px 8px 8px;padding:1.7% 1.7% 2.4%;position:relative;box-shadow:inset 0 0 0 1px #ffffff17,inset 0 1px #ffffff2e,0 0 0 1px #000,0 -1px 18px #e3131b1f}.device-cam{background:#1f2a33;border-radius:50%;width:6px;height:6px;margin-left:-3px;position:absolute;top:.65%;left:50%;box-shadow:inset 0 0 0 1px #000}.device-screen{aspect-ratio:16/10;background:#000;border-radius:6px;max-width:100%;position:relative;overflow:hidden}.device-shot{object-fit:cover;object-position:top center;width:100%;height:100%;position:absolute;inset:0}.device-wipe{z-index:20;width:var(--line-w);background:var(--red);opacity:0;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 18px 2px #e3131bb3}.device-glare{z-index:21;pointer-events:none;background:linear-gradient(118deg,#ffffff14 0%,#fff0 36%);position:absolute;inset:0}.device-base{background:linear-gradient(#4a4445 0%,#26211f 45%,#121011 100%);border-radius:2px 2px 16px 16px/2px 2px 12px 12px;height:clamp(10px,1.3vw,18px);margin-inline:-6%;position:relative;box-shadow:inset 0 1px #ffffff38}.device-base:before{content:"";background:#181516;border-radius:0 0 8px 8px;width:14%;height:40%;position:absolute;top:0;left:50%;transform:translate(-50%)}.device-shadow{filter:blur(4px);z-index:-1;background:radial-gradient(closest-side,#000000d9,#0000);border-radius:50%;height:22px;position:absolute;bottom:6px;left:4%;right:4%}.project-list{display:grid}.project{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,5vw,96px);padding-block:clamp(56px,8vw,112px);display:grid}@media (width<=899px){.project{gap:var(--s-6);grid-template-columns:minmax(0,1fr)}.project .device-wrap{order:-1}}.showcase{display:none}.showcase-items{display:grid}.showcase-item{grid-area:1/1}.showcase-seg{grid-template-columns:repeat(var(--chapters), minmax(0, 1fr));gap:6px;max-width:260px;display:grid}.showcase-seg span{height:var(--line-w);background:var(--line-strong);position:relative}.showcase-seg span:after{content:"";background:var(--red);transform:scaleX(var(--p,0));transform-origin:0;position:absolute;inset:0}@media (width>=900px){html.motion .project-list{display:none}html.motion .showcase{height:calc((var(--chapters) * 110 + 70) * 1svh);display:block}html.motion .showcase-stage{height:100svh;padding-block:80px var(--s-6);align-items:center;display:flex;position:sticky;top:0;overflow:hidden}html.motion .showcase-grid{grid-template-columns:minmax(0,4.6fr) minmax(0,7.4fr);align-items:center;gap:clamp(40px,5vw,96px);display:grid}html.motion .showcase-copy{gap:var(--s-6);display:grid}html.motion .showcase .device-wrap{justify-self:end;width:100%;max-width:min(100%,155svh - 341px)}}.method{padding-block:var(--section-gap);border-top:1px solid var(--line)}.method .section-head{padding-bottom:var(--s-7)}.method-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,112px);display:grid}.method-graph{justify-self:center;width:100%;max-width:520px}.graph{width:100%;height:auto;overflow:visible}.graph-orbit{fill:none;stroke:var(--line-strong);stroke-width:1px;stroke-dasharray:2 8}.graph-link{stroke:var(--red);stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:0}.graph-node circle{fill:var(--surface);stroke:var(--line-strong);stroke-width:1.5px}.graph-node text{fill:var(--fg-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:14px}.graph-pulse{fill:var(--red);opacity:0}.graph-ring{fill:none;stroke:var(--red);stroke-width:2px;opacity:0}.graph-center circle{fill:var(--surface-2);stroke:var(--red);stroke-width:2px}.graph-center text{fill:var(--fg);font-family:var(--font-display);letter-spacing:.02em;font-size:22px;font-weight:800;font-stretch:125%}.method-steps{gap:var(--s-7);margin:0;padding:0;list-style:none;display:grid}.method-step{gap:var(--s-3);max-width:40ch;display:grid}.method-num{color:var(--red-text);font-variant-numeric:tabular-nums}.method-step-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.75rem,1rem + 2vw,3rem);font-weight:760;font-stretch:112%;line-height:1}.method-step p{color:var(--fg-muted);font-size:var(--fs-lead);line-height:1.45}@media (width<=899px){.method-body{grid-template-columns:minmax(0,1fr)}.method-graph{max-width:360px}}@media (width>=900px){html.motion .method{height:300svh;padding-block:0}html.motion .method-stage{height:100svh;padding-block:72px var(--s-6);flex-direction:column;justify-content:center;display:flex;position:sticky;top:0;overflow:hidden}html.motion .method-graph{width:min(100%,54svh)}html.motion .method-steps{gap:0;display:grid}html.motion .method-step{grid-area:1/1}}.services{background:var(--bg)}.services-panel{--fg:var(--ink);--fg-muted:var(--ink-muted);--line:var(--line-paper);--line-strong:#a89e9b;--red-text:var(--red-ink);--focus:var(--red-ink);background:var(--paper);color:var(--fg);padding-block:var(--section-gap)}.services-panel ::selection{background:var(--ink);color:var(--paper)}.service-list{margin:0 auto;list-style:none}.service-row{gap:var(--s-3) var(--s-6);padding-block:var(--s-6);border-top:1px solid var(--line);grid-template-columns:8rem minmax(0,1.4fr) minmax(0,1fr);align-items:baseline;display:grid;position:relative}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:after{content:"";height:var(--line-w);background:var(--red);transform-origin:0;transition:transform .6s var(--ease-out);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}@media (hover:hover){.service-row:hover:after{transform:scaleX(1)}}.service-tag{color:var(--fg-muted)}.service-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.5rem,1rem + 2.4vw,3.25rem);font-weight:720;font-stretch:112%;line-height:1}.service-text{color:var(--fg-muted);max-width:40ch}.services-cta{margin-top:var(--s-7)}@media (width<=760px){.service-row{grid-template-columns:minmax(0,1fr)}}.about{padding-block:var(--section-gap)}.bento{gap:var(--s-4);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.tile{align-content:start;gap:var(--s-3);border-radius:var(--radius-tile);background:var(--surface);border:1px solid var(--line);min-width:0;padding:clamp(24px,2.6vw,40px);display:grid}.tile--intro{align-content:space-between;gap:var(--s-6);grid-column:span 8}.tile--photo{grid-area:span 2/span 4;align-content:space-between;margin:0}.tile--exp,.tile--edu{grid-column:span 4}.tile--stack{grid-column:span 7}.tile--ai{background:linear-gradient(160deg, var(--surface-2), var(--surface));grid-column:span 5}.tile--lang{grid-column:span 6}.tile--cv{background:var(--red-panel);color:var(--on-red);border-color:#0000;grid-column:span 6;align-content:space-between}.tile-label{color:var(--fg-muted);font-weight:400}.tile-label--gap{margin-top:var(--s-4)}.tile--cv .tile-label{color:var(--on-red);opacity:.85}.tile-lead{letter-spacing:-.01em;text-wrap:pretty;max-width:34ch;font-size:clamp(1.25rem,1rem + 1vw,2rem);line-height:1.3}.tile-muted{color:var(--fg-muted)}.tile-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.5rem,1.1rem + 1.4vw,2.25rem);font-weight:760;font-stretch:112%;line-height:1.02}.tile-org{align-items:baseline;gap:var(--s-1) var(--s-3);flex-wrap:wrap;display:flex}.tile-list{gap:var(--s-4);margin:0;padding:0;list-style:none;display:grid}.tile-list li{gap:var(--s-1);display:grid}.tile-item-title{font-weight:600;line-height:1.3}.tile-dl{display:grid}.tile-dl>div{gap:var(--s-4);border-top:1px solid var(--line);grid-template-columns:8.5rem minmax(0,1fr);padding-block:10px;display:grid}.tile-dl dt{color:var(--fg-muted);padding-top:3px}.tile-dl--compact>div{grid-template-columns:6rem minmax(0,1fr)}.photo-frame{aspect-ratio:137/199;background:var(--bg);border-radius:14px;width:100%;max-width:220px;position:relative;overflow:hidden}.photo-frame img{object-fit:cover;filter:grayscale()contrast(1.08)brightness(.95);width:100%;height:100%}.photo-frame:after{content:"";mix-blend-mode:multiply;background:linear-gradient(#c0101a00 45%,#c0101a73);position:absolute;inset:0}.tile--photo figcaption{gap:var(--s-1);display:grid}.tile-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.02em;font-size:1.5rem;font-weight:800;font-stretch:125%}.tile-cv-title{font-family:var(--font-display);letter-spacing:-.04em;text-transform:uppercase;font-size:clamp(2.5rem,1.6rem + 3vw,4.5rem);font-weight:800;font-stretch:125%;line-height:.9}.tile-cv-foot{align-items:center;gap:var(--s-3) var(--s-5);flex-wrap:wrap;display:flex}@media (width<=1099px){.tile--intro{grid-column:span 12}.tile--photo{grid-area:auto/span 5}.tile--exp{grid-column:span 7}.tile--edu,.tile--ai{grid-column:span 6}.tile--stack{grid-column:span 12}.tile--lang,.tile--cv{grid-column:span 6}}@media (width<=680px){.bento>.tile{grid-column:span 12}.tile-dl>div{gap:var(--s-1);grid-template-columns:minmax(0,1fr)}}.contact{padding-block:var(--section-gap);background:radial-gradient(80% 60% at 20% 0%, #c0101a29, #c0101a00 70%), var(--bg);position:relative}.contact-line{height:var(--line-w);background:var(--red);position:absolute;inset:0 0 auto;box-shadow:0 0 24px #e3131b8c}.contact-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:end;gap:clamp(48px,6vw,112px);display:grid}.contact-copy{gap:var(--s-5);min-width:0;display:grid}.contact-title{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.03em;text-wrap:balance;max-width:14ch;font-weight:800;font-stretch:112%;line-height:.95}.contact-sub{color:var(--fg-muted);font-size:var(--fs-lead);max-width:40ch}.contact-elsewhere{color:var(--fg-muted)}.form{gap:var(--s-5);min-width:0;display:grid}.field{gap:var(--s-2);display:grid}.field label{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted)}.field input,.field textarea{width:100%;padding:var(--s-3) 0;border:0;border-bottom:1px solid var(--line-strong);color:var(--fg);resize:vertical;transition:border-color var(--dur-micro), box-shadow var(--dur-micro);background:0 0;border-radius:0;font-size:1.125rem}.field input:focus-visible,.field textarea:focus-visible{border-bottom-color:var(--red);box-shadow:0 1px 0 0 var(--red);outline:none}.form-foot{align-items:center;gap:var(--s-4) var(--s-5);flex-wrap:wrap;display:flex}.form-status{min-height:1.6em;color:var(--fg-muted);font-size:var(--fs-small);flex:16rem}.form-status.is-ok{color:var(--fg)}.form-status.is-warn,.form-status.is-error{color:var(--red-text)}@media (width<=899px){.contact-grid{grid-template-columns:minmax(0,1fr)}}.footer{justify-content:space-between;align-items:center;gap:var(--s-4) var(--s-6);padding-block:var(--s-6) var(--s-7);border-top:1px solid var(--line);color:var(--fg-muted);flex-wrap:wrap;display:flex}.footer-sign{align-items:center;gap:var(--s-2);font-family:var(--font-display);text-transform:uppercase;color:var(--fg);font-weight:800;font-stretch:125%;display:inline-flex}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-mail{text-transform:none;letter-spacing:.02em;overflow-wrap:anywhere}
