.about-section{padding-bottom:0}@media (width>=900px){.about-section .about-split{align-items:center;gap:var(--space-8);grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.about-section .about-portrait{border-radius:var(--radius-md);width:100%;max-width:380px;position:relative;box-shadow:-2px 6px 14px #18212a14,-12px 30px 52px #18212a24}.about-section .about-portrait:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #111a2214}.about-photo{aspect-ratio:4/5;object-fit:cover;object-position:50% 30%;border-radius:inherit;width:100%;height:auto;display:block}.about-section .about-copy{max-width:none}.about-section .about-body{max-width:34em}.about-section .about-links{gap:var(--space-3) var(--space-7);margin-top:var(--space-2)}.about-section .skills-band{isolation:isolate;margin-top:var(--space-8);padding-block:var(--space-6) var(--space-7);border-top:0;display:block;position:relative}.skills-band:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(var(--skills-grid) 1px, transparent 1px), linear-gradient(90deg, var(--skills-grid) 1px, transparent 1px);background-position:top;background-size:24px 24px;position:absolute;inset:0}.skills-head{gap:var(--space-5);flex-direction:column;display:flex}.skills-label{justify-content:center}.skills-label .section-label-rule{flex:1 1 0}.skills-static{flex-wrap:wrap;justify-content:center;gap:12px 14px;margin:0;padding:0;list-style:none;display:flex}.skill-chip{white-space:nowrap;border-radius:10px;align-items:center;gap:10px;height:46px;padding:0 18px 0 13px;font-size:16px;line-height:20px;display:inline-flex}.skill-icon{flex-shrink:0;width:26px;height:26px;display:inline-flex}.skill-icon svg{width:100%;height:100%}.skills-marquee{margin-top:var(--space-5);display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%)}.skills-track{flex-shrink:0;gap:14px;padding-right:14px;animation:105s linear infinite skills-roll;display:flex}.skills-marquee:hover .skills-track{animation-play-state:paused}@keyframes skills-roll{to{transform:translate(-100%)}}@media screen and (prefers-reduced-motion:no-preference){.skills-static{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media print,(prefers-reduced-motion:reduce){.skills-marquee{display:none}}.skills-band[data-tone=dark]{--skills-grid:#9fb6c80e;color:#e3eaf0;background:radial-gradient(60% 120% at 85% 0,#8fa3b31f,#8fa3b300 70%),linear-gradient(#1c2b37 0%,#16232e 100%)}.skills-band[data-tone=dark] .section-label-text{color:#9fb3c3}.skills-band[data-tone=dark] .section-label-rule{background:#9fb6c84d}.skills-band[data-tone=dark] .skill-chip{background:linear-gradient(#ffffff0f,#ffffff05);border:1px solid #9fb6c838;box-shadow:inset 0 1px #ffffff12,-2px 8px 16px -8px #04080cb3}.skills-band[data-tone=dark] .skill-icon{color:#a3bccd}.about-section .skills-band[data-tone=light]{--skills-grid:#42637a12;color:var(--graphite);background:var(--surface-sunken);border-block:1px solid var(--divider)}.skills-band[data-tone=light] .skill-chip{background:linear-gradient(#ffffff8c,#ffffff38);border:1px solid #42637a33;box-shadow:inset 0 1px #fffc,-2px 8px 16px -10px #18212a47}.skills-band[data-tone=light] .skill-icon{color:var(--slate)}.resume-dialog{background:var(--surface);width:min(880px,100vw - 32px);max-width:none;max-height:min(92svh,1100px);color:var(--graphite);border:0;border-radius:16px;padding:0;overflow:hidden;box-shadow:0 0 0 1px #111a2214,0 40px 100px -20px #04080c80}.resume-dialog[open]{flex-direction:column;display:flex}.resume-dialog::backdrop{backdrop-filter:blur(4px);background:#0e151c8c}html:has(.resume-dialog[open]){overflow:hidden}.resume-head{border-bottom:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:16px 16px 16px 28px;display:flex}.resume-title{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700;line-height:26px}.resume-meta{color:var(--text-secondary);margin:2px 0 0;font-size:13px;line-height:18px}.resume-actions{align-items:center;gap:8px;display:flex}.resume-close{border:1px solid var(--divider);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--graphite);cursor:pointer;background:0 0;place-items:center;transition:background .2s,border-color .2s;display:grid}.resume-close:hover{background:var(--surface-sunken);border-color:var(--border-strong)}.resume-close svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:18px;height:18px}.resume-pages{overscroll-behavior:contain;background:var(--surface-sunken);flex-direction:column;flex:1;gap:24px;min-height:0;padding:28px;display:flex;overflow:auto}.resume-pages:focus-visible{box-shadow:inset 0 0 0 2px var(--focus);outline:none}.resume-sheet{border-radius:4px;width:100%;height:auto;display:block;box-shadow:0 1px 2px #111a2214,-4px 12px 30px -10px #111a2240}.resume-foot{border-top:1px solid var(--divider);margin:0;padding:12px 28px;font-size:14px;line-height:20px}.resume-open{color:var(--slate);text-underline-offset:3px;text-decoration:underline}@media (width<=599.98px){.resume-head{padding:14px 12px 14px 18px}.resume-pages{gap:16px;padding:16px}.resume-foot{padding:12px 18px}}@media (prefers-reduced-motion:no-preference){.resume-dialog[open]{animation:.28s cubic-bezier(.2,.7,.2,1) resume-in}.resume-dialog[open]::backdrop{animation:.28s resume-fade}}@keyframes resume-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes resume-fade{0%{opacity:0}}
