:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fafafa;--surface:#fff;--surface-glass:#ffffffd1;--band:#00000006;--media-bg:#efefef;--line:#00000017;--line-strong:#0000002e;--tint:#0000000d;--ghost:#0000000b;--ink:#171717;--ink-muted:#5c5c5c;--ink-faint:#737373;--accent:#171717;--accent-hover:#333;--on-accent:#fff;--accent-text:#171717;--inverse-bg:#1f1f1f;--inverse-ink:#fafafa;--inverse-muted:#b3b3b3;--status-green:#22c55e;--radius:4px;--radius-pill:999px;--shadow-soft:0 1px 2px #0000000d, 0 8px 24px -10px #00000024;--shadow-lift:0 2px 6px #0000000f, 0 20px 40px -14px #00000038;--ease:cubic-bezier(.2, .7, .2, 1);--ease-page:cubic-bezier(.65, 0, .35, 1);--page-duration:.8s;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.2s;--dur-base:.6s;--dur-slow:.9s;--stagger:90ms;--rise:24px;--page-delay:.35s;--gutter:clamp(1rem, 4vw, 3rem);--edge-width:6rem;--pad:var(--gutter);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Manrope Variable,system-ui,-apple-system,Segoe UI,sans-serif;font-size:100%;line-height:1.6}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);margin:0;overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,p,figure{margin:0}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}[data-page-heading]:focus{outline:none}::selection{color:var(--ink);background:#00000024}.site-header,.page-edge,.btn,.chip,.status,.lang-switch,.stack-list,.section-ghost{-webkit-user-select:none;user-select:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.container{width:100%;max-width:calc(76rem + 2 * var(--pad));padding-inline:var(--pad);margin-inline:auto}.app{background:var(--bg);color:var(--ink);transition:background-color var(--page-duration) var(--ease-page);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100dvh;display:grid}.skip-link{z-index:20;border-radius:var(--radius-pill);background:var(--ink);color:var(--bg);transition:top .2s var(--ease);padding:.625rem 1.125rem;font-size:.875rem;font-weight:600;position:fixed;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.progress{z-index:10;background:var(--ink);height:3px;transform:scaleX(var(--progress));transform-origin:0;transition:transform var(--page-duration) var(--ease-page);position:fixed;inset:0 0 auto}.site-header{grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;padding-block:1.75rem 1rem;display:grid}.brand{letter-spacing:-.01em;white-space:nowrap;justify-self:start;font-size:1.1875rem;font-weight:700}.site-header>.status{justify-self:start}.nav-links{gap:clamp(1.25rem,2.6vw,2.75rem);display:flex}.nav-links a{white-space:nowrap;color:var(--ink);transition:color .2s var(--ease);padding-block:.5rem;font-size:1rem;font-weight:500;display:inline-block;position:relative}.nav-links a:after{content:"";background:var(--ink);transform-origin:0;height:1.5px;transition:transform .25s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ink)}.nav-links a:hover:after,.nav-links a[aria-current=page]:after{transform:scaleX(1)}.nav-count{letter-spacing:.04em;color:var(--ink-faint);margin-left:.35rem;font-size:.75rem}.header-actions{justify-self:end;align-items:center;gap:.75rem;display:flex}.lang-switch{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);padding:3px;display:inline-flex}.lang-switch button{border-radius:var(--radius-pill);min-width:2.5rem;min-height:2.375rem;font:inherit;letter-spacing:.06em;color:var(--ink-muted);cursor:pointer;transition:background-color .2s var(--ease), color .2s var(--ease);background:0 0;border:0;padding:0 .75rem;font-size:.75rem;font-weight:700}.lang-switch button:hover{color:var(--ink)}.lang-switch button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.btn{border-radius:var(--radius-pill);min-height:2.75rem;font:inherit;white-space:nowrap;cursor:pointer;transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);border:1.5px solid #0000;justify-content:center;align-items:center;gap:.625rem;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;line-height:1;display:inline-flex}.btn svg,.chip svg{transition:transform .2s var(--ease);flex-shrink:0}.btn:hover svg:last-child{transform:translate(2px)}.btn-sm{min-height:2.75rem;padding:.75rem 1.375rem;font-size:.9375rem}.btn-sm svg{width:16px;height:16px}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-outline{border-color:var(--line-strong);background:var(--surface);color:var(--ink);border-width:1px}.btn-outline:hover{border-color:var(--ink)}.chip{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);white-space:nowrap;min-height:2.5rem;color:var(--ink);transition:border-color .2s var(--ease), color .2s var(--ease), background-color .2s var(--ease);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1;display:inline-flex}.chip svg{width:16px;height:16px}a.chip:hover{border-color:var(--ink)}a.chip:hover svg:last-child:not(:first-child){transform:translate(2px,-2px)}.chip--solid{border-color:var(--ink);background:var(--ink);color:var(--on-accent)}.chip-avatar{object-fit:cover;border-radius:50%;width:1.625rem;height:1.625rem;margin-left:-.5rem}.status{border:1px solid var(--line-strong);border-radius:var(--radius-pill);border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-soft);white-space:nowrap;color:var(--ink);align-items:center;gap:.625rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:600;line-height:1.2;display:inline-flex}a.status:hover{border-color:var(--line-strong)}.status-dot{background:var(--status-green);border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem;position:relative}.status-dot:after{content:"";background:var(--status-green);opacity:0;border-radius:50%;position:absolute;inset:0}.link-arrow{border-bottom:1.5px solid var(--line-strong);transition:border-color .2s var(--ease), color .2s var(--ease);align-items:center;gap:.375rem;padding-bottom:.25rem;font-size:.9375rem;font-weight:600;display:inline-flex}.link-arrow:hover{border-color:var(--accent);color:var(--accent-text)}.tag{border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-muted);padding:.3rem .75rem;font-size:.75rem;font-weight:600;line-height:1.2;display:inline-block}.tag--status{border-color:var(--ink);color:var(--ink)}.copyright{color:var(--ink-faint);font-size:.75rem}.section-title{isolation:isolate;padding-top:clamp(2.75rem,7vh,4.5rem);position:relative}.section-ghost{z-index:-1;letter-spacing:.06em;white-space:nowrap;color:var(--ghost);pointer-events:none;font-size:clamp(4.5rem,10vw,9.5rem);font-weight:800;line-height:.8;position:absolute;top:0;left:-.04em}.section-label{letter-spacing:-.01em;text-transform:uppercase;font-size:clamp(1.75rem,2.8vw,2.5rem);font-weight:600;line-height:1.1}.section-label:before{content:"/";color:var(--ink-faint);margin-right:.08em}.book{min-width:0;min-height:0;position:relative;overflow:clip}.book-track{perspective:2200px;height:100%;transform:translateX(calc(var(--page) * -100%));transition:transform var(--page-duration) var(--ease-page);display:flex}.book-page{overscroll-behavior:contain;height:100%;transition:transform var(--page-duration) var(--ease-page), opacity var(--page-duration) var(--ease-page);flex:0 0 100%;overflow:hidden auto}.book-page[data-state=before]{transform-origin:100%;opacity:0;transform:rotateY(28deg)scale(.9)}.book-page[data-state=after]{transform-origin:0;opacity:0;transform:rotateY(-28deg)scale(.9)}.page-sweep{z-index:3;pointer-events:none;background:linear-gradient(90deg,#0000,#00000009 50%,#0000);width:45%;position:absolute;inset:0 auto 0 0;transform:translate(-130%)skew(-18deg)}.page-edge{z-index:4;width:var(--edge-width);color:var(--ink-muted);font:inherit;cursor:pointer;transition:color .25s var(--ease);background:0 0;border:0;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 0;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.page-edge--prev{left:.5rem}.page-edge--next{right:.5rem}.page-edge-arrow{border:1px solid var(--line-strong);background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:3rem;height:3rem;color:var(--ink);box-shadow:var(--shadow-soft);transition:color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);border-radius:50%;place-items:center;display:grid}.page-edge-label{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:.6875rem;font-weight:700}.page-edge:hover{color:var(--accent-text)}.page-edge:hover .page-edge-arrow{color:var(--accent-text);border-color:var(--ink)}.page-edge--prev:hover .page-edge-arrow{transform:translate(-3px)}.page-edge--next:hover .page-edge-arrow{transform:translate(3px)}.book:has(.page-edge--next:hover) .book-page[data-state=current]{transform-origin:0;transform:rotateY(-3deg)translate(-.75rem)}.book:has(.page-edge--prev:hover) .book-page[data-state=current]{transform-origin:100%;transform:rotateY(3deg)translate(.75rem)}.page-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:1.5rem;min-height:100%;display:grid}.slot{grid-column:var(--col,1 / -1);grid-row:var(--row,auto);justify-self:var(--justify,start);align-self:var(--align,start);translate:var(--dx,0) var(--dy,0)}.home-name{z-index:1;text-align:center;justify-items:center;padding-top:clamp(.5rem,3vh,2rem);display:grid;position:relative}.home-greeting{letter-spacing:.24em;text-transform:uppercase;color:var(--ink-muted);font-size:clamp(.875rem,1.2vw,1.0625rem);font-weight:600}.home-name-line{letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;font-size:clamp(2.25rem,6.1vw,5.9rem);font-weight:800;line-height:1.05}.name-outline{color:var(--bg);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.name-solid{color:var(--ink)}.home-figure{--portrait-top:clamp(4.5rem, 12vh, 7.5rem);z-index:2;isolation:isolate;clip-path:inset(-50% -50% 0);min-height:0;position:relative}.portrait{top:var(--portrait-top);width:88%;height:calc(100% - var(--portrait-top));object-fit:contain;object-position:bottom;filter:grayscale()contrast(1.05)drop-shadow(0 18px 28px #00000029);position:absolute;left:6%}.home-intro{z-index:3;max-width:21rem;padding-bottom:clamp(1.5rem,5vh,3rem);position:relative}.home-role{letter-spacing:-.01em;font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:700;line-height:1.2}.home-text{color:var(--ink-muted);margin-top:.75rem;font-size:.9375rem;line-height:1.65}.home-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.home-socials{z-index:3;justify-items:end;gap:.75rem;padding-bottom:clamp(1.5rem,5vh,3rem);display:grid;position:relative}.home-stack{z-index:3;margin-inline:calc(-1 * var(--pad));padding:1.125rem var(--pad);border-block:1px solid var(--line);background:var(--band);position:relative}.stack-list{flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;max-width:76rem;margin-inline:auto;display:flex}.stack-list li{color:var(--ink-faint);font-size:clamp(1rem,1.4vw,1.25rem);font-weight:600}.home{grid-template-rows:auto minmax(0,1fr) auto auto}.home-name{--col:1 / -1;--row:1;--justify:center}.home-figure{--col:4 / 10;--row:1 / 4;--justify:stretch;--align:stretch}.home-intro{--col:1 / 5;--row:3;--align:end}.home-socials{--col:10 / -1;--row:3;--justify:end;--align:end}.home-stack{--col:1 / -1;--row:4;--justify:stretch}.about-bio{max-width:50ch;color:var(--ink-muted);gap:1rem;font-size:1rem;line-height:1.8;display:grid}.about-links{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.about-services{border-top:1px solid var(--line);width:100%}.service{border-bottom:1px solid var(--line);transition:background-color .35s var(--ease-out), color .35s var(--ease-out);position:relative}.service-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.service-title{letter-spacing:.01em;text-transform:uppercase;font-size:clamp(1.25rem,2vw,1.75rem);font-weight:500;line-height:1.15}.service-arrow{color:var(--ink-muted);transition:transform .35s var(--ease-out), color .35s var(--ease-out);flex-shrink:0}.service-panel{transition:grid-template-rows .4s var(--ease-out);grid-template-rows:0fr;display:grid}.service-panel-clip{min-height:0;overflow:hidden}.service-desc{max-width:30ch;padding:0 1.25rem 1.5rem;font-size:.9375rem;line-height:1.6}.service-tile{z-index:1;border-radius:var(--radius);background:var(--surface);width:4.5rem;height:4.5rem;color:var(--ink);box-shadow:var(--shadow-lift);opacity:0;transition:opacity .3s var(--ease-out), transform .45s var(--ease-out);pointer-events:none;place-items:center;display:grid;position:absolute;bottom:-.75rem;right:4rem;transform:rotate(-8deg)scale(.6)}.service.is-open{background:var(--inverse-bg);color:var(--inverse-ink)}.service.is-open .service-panel{grid-template-rows:1fr}.service.is-open .service-desc{color:var(--inverse-muted)}.service.is-open .service-arrow{color:var(--inverse-ink);transform:rotate(90deg)}.service.is-open .service-tile{opacity:1;transform:rotate(-8deg)scale(1)}@media (hover:hover){.service:hover{background:var(--inverse-bg);color:var(--inverse-ink)}.service:hover .service-panel{grid-template-rows:1fr}.service:hover .service-desc{color:var(--inverse-muted)}.service:hover .service-arrow{color:var(--inverse-ink);transform:rotate(90deg)}.service:hover .service-tile{opacity:1;transform:rotate(-8deg)scale(1)}}.service-row:focus-visible{outline-offset:-3px}.about{grid-template-rows:auto clamp(2rem,9vh,5.5rem) auto auto 1fr;padding-bottom:1.5rem}.about-head{--col:1 / -1;--row:1}.about-bio{--col:1 / 6;--row:3}.about-links{--col:1 / 6;--row:4}.about-services{--col:7 / -1;--row:3 / 6;--justify:stretch}.projects-head{text-align:center}.projects-head .section-ghost{left:50%;translate:-50%}.project-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,2.5vw,2rem);width:100%;display:grid}.project{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:translate .35s var(--ease-out), border-color .35s var(--ease-out), box-shadow .35s var(--ease-out);flex-direction:column;padding:.625rem;display:flex}.project:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift);translate:0 -6px}.project-media{aspect-ratio:16/10;background:var(--media-bg);place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.project-img{object-fit:contain;width:100%;height:100%;transition:scale .6s var(--ease-out)}.project:hover .project-img{scale:1.03}.project-badge{background:var(--accent);width:3.5rem;height:3.5rem;color:var(--on-accent);box-shadow:var(--shadow-lift);opacity:0;transition:opacity .25s var(--ease-out), scale .35s var(--ease-out);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%;scale:.6}.project:hover .project-badge{opacity:1;scale:1}.project--vetrilon .project-media{background:#fbf6ef}.media-2{background:radial-gradient(circle at 70% 25%,#4a4a4a,#2a2a2a 55%,#141414)}.media-3{background:radial-gradient(circle at 40% 70%,#e6e6e6,#cfcfcf 55%,#b5b5b5)}.project-monogram{color:#ffffffe6;font-size:3.5rem;font-weight:300;line-height:1}.media-3 .project-monogram{color:var(--ink)}.project-body{flex-direction:column;flex:1;align-items:flex-start;padding:1.125rem .625rem .625rem;display:flex}.project-title{font-size:1.1875rem;font-weight:600;line-height:1.3}.project-tags{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.project-desc{color:var(--ink-muted);margin-top:.75rem;font-size:.9375rem;line-height:1.65}.project .link-arrow{margin-top:auto;padding-top:1rem}.projects{grid-template-rows:auto auto auto minmax(1.5rem,1fr)}.projects-head{--col:1 / -1;--row:1;--justify:center}.projects-all{--col:1 / -1;--row:2;--justify:end;margin-block:1.25rem}.project-list{--col:1 / -1;--row:3;--justify:stretch}.app[data-page=experience]{--bg:#252525;--surface:#2e2e2e;--surface-glass:#2e2e2ed1;--band:#ffffff08;--media-bg:#333;--line:#ffffff1a;--line-strong:#fff3;--tint:#ffffff0f;--ghost:#ffffff0b;--ink:#fafafa;--ink-muted:#a3a3a3;--ink-faint:#8f8f8f;--accent:#fafafa;--accent-hover:#e5e5e5;--on-accent:#171717;--accent-text:#fafafa;--shadow-soft:0 1px 2px #0000004d, 0 8px 24px -10px #00000080}.experience-head .section-label:before{color:inherit}.experience-summary{color:var(--ink);font-size:clamp(1rem,1.4vw,1.25rem)}.experience-list{width:100%}.experience-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.75rem 1rem;display:flex}.experience-org{font-size:clamp(1.0625rem,1.5vw,1.375rem);font-weight:500;line-height:1.3}.experience-role{color:var(--ink-muted);margin-top:.5rem;font-size:clamp(1rem,1.4vw,1.25rem)}.experience-period{color:var(--ink-muted);text-align:right;flex-shrink:0;font-size:clamp(.9375rem,1.3vw,1.1875rem)}.experience-row.is-placeholder{opacity:.4}.experience{grid-template-rows:auto auto 1fr;padding-bottom:2rem}.experience-head{--col:1 / 9;--row:1}.experience-summary{--col:9 / -1;--row:1;--justify:end;--align:end}.experience-list{--col:1 / -1;--row:2;--justify:stretch;margin-top:2.5rem}.contact-intro .status{box-shadow:none;margin-bottom:1.5rem}.contact-title{letter-spacing:-.01em;text-transform:uppercase;font-size:clamp(2rem,3.6vw,3.25rem);font-weight:700;line-height:1.15}.contact-form{gap:1.75rem;width:100%;display:grid}.field{gap:.25rem;display:grid}.field-label{color:var(--ink-muted);font-size:.8125rem;font-weight:500}.field input,.field textarea{border:0;border-bottom:1.5px solid var(--line-strong);width:100%;color:var(--ink);font:inherit;resize:vertical;transition:border-color .2s var(--ease);background:0 0;border-radius:0;padding:.5rem 0;font-size:1rem}.field input:focus,.field textarea:focus{border-bottom-color:var(--accent)}.contact-form .btn{justify-self:start}.form-status{min-height:1.5em;color:var(--ink-muted);font-size:.875rem}.form-status.is-success{color:var(--ink);font-weight:600}.contact-form .btn:disabled{opacity:.6;cursor:progress}.field-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-footer{margin-inline:calc(-1 * var(--pad));padding:1.25rem var(--pad);border-top:1px solid var(--line);background:var(--band);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;display:flex}.footer-chips{flex-wrap:wrap;gap:.75rem;display:flex}.footer-tagline{color:var(--ink-muted);font-size:.8125rem}.footer-tagline .copyright{margin-left:.75rem}.contact{grid-template-rows:auto minmax(1rem,1fr) auto minmax(2rem,1fr) auto;row-gap:0}.contact-head{--col:1 / 8;--row:1}.contact-intro{--col:1 / 7;--row:3}.contact-form{--col:8 / -1;--row:1 / 5;--align:center;--justify:stretch;padding-block:1.5rem}.contact-footer{--col:1 / -1;--row:5;--justify:stretch}@media (prefers-reduced-motion:no-preference){.book-page[data-state=current] :is(.reveal,.reveal-left){animation:build-in var(--dur-base) var(--ease-out) backwards;animation-delay:calc(var(--page-delay) + var(--i,0) * var(--stagger))}.book-page[data-state=current] .reveal-left{animation-name:build-in-left}.book-page[data-state=current] .section-label{animation-name:build-in-label}.book-page[data-state=current] .section-ghost{animation-duration:var(--dur-slow)}.book-page[data-state=current] .portrait{animation:portrait-rise var(--dur-slow) var(--ease-out) backwards;animation-delay:calc(var(--page-delay) + var(--i,2) * var(--stagger))}.home{--page-delay:.45s;--stagger:.15s}.site-header>*,.nav-links li{animation:drop-in var(--dur-base) var(--ease-out) backwards}.site-header>.site-nav{animation:none}.nav-links li:first-child{animation-delay:60ms}.nav-links li:nth-child(2){animation-delay:.11s}.nav-links li:nth-child(3){animation-delay:.16s}.nav-links li:nth-child(4){animation-delay:.21s}.header-actions{animation-delay:.26s}.page-sweep{animation:page-sweep 1.2s var(--ease-page) both}.status-dot:after{animation:status-pulse 2.4s var(--ease-out) infinite}@keyframes drop-in{0%{opacity:0;transform:translateY(-14px)}}@keyframes build-in{0%{opacity:0;transform:translateY(var(--rise))}}@keyframes build-in-left{0%{opacity:0;transform:translateX(calc(-1 * var(--rise)))}}@keyframes build-in-label{0%{opacity:0;color:var(--ink-faint);transform:translateY(calc(var(--rise) / 2))}}@keyframes portrait-rise{0%{opacity:0;transform:translateY(35%)}50%{opacity:1}}@keyframes page-sweep{0%{transform:translate(-130%)skew(-18deg)}to{transform:translate(260%)skew(-18deg)}}@keyframes status-pulse{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(2.8)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}.book-page[data-state]{transform:none}}@media (width>=961px){:root{--pad:max(var(--gutter), calc(var(--edge-width) + 1rem))}}@media (width<=960px),(hover:none){.page-edge{display:none}}@media (width<=1240px){.header-cta{display:none}}@media (width<=960px){.page-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;align-content:start}.page-grid .slot{--col:1 / -1}.home-name{--row:1}.home-figure{--row:2;--justify:center;--align:start}.home-intro{--row:3;--justify:stretch}.home-socials{--row:4;--justify:start}.home-stack{--row:5}.home-name-line{white-space:normal;font-size:clamp(2.25rem,10vw,4.5rem)}.name-outline,.name-solid{display:block}.name-outline{-webkit-text-stroke-width:2px}.home-figure{width:min(70vw,20rem);margin-top:-1.5rem}.portrait{width:100%;height:auto;position:static}.home-intro{max-width:none;margin-top:1.5rem;padding-bottom:1.5rem}.home-socials{flex-wrap:wrap;padding-bottom:2rem;display:flex}.stack-list{justify-content:center}.about-head{--row:1}.about-bio{--row:2;margin-top:2rem}.about-links{--row:3}.about-services{--row:4;margin-block:2.5rem}.projects-head{--row:1}.projects-all{--row:2;--justify:center}.project-list{--row:3;grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-bottom:2.5rem}.experience-head{--row:1}.experience-summary{--row:2;--justify:start;margin-top:1rem}.experience-list{--row:3;margin-top:2rem}.experience-row{padding-inline:0}.contact-head{--row:1}.contact-intro{--row:2;margin-top:2rem}.contact-form{--row:3;margin-block:2rem}.contact-footer{--row:4}}@media (width<=900px){.site-header{grid-template-columns:1fr auto;row-gap:.5rem;padding-block:1rem .5rem}.site-nav{grid-area:2/1/auto/-1}.nav-links{scrollbar-width:none;justify-content:space-between;gap:1.25rem;overflow-x:auto}.nav-links a{font-size:.9375rem}}@media (width<=420px){.site-header .status{padding-inline:.625rem;font-size:.75rem}}
