:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1320px;margin:0 auto;padding:clamp(1rem,3vw,1.5rem)}body>header.site{box-sizing:border-box;color:#eaeaea;--fd-nav-fg:#eaeaea;--fd-nav-fg-muted:#c8c8c8;--fd-nav-bg:#ffffff0f;--fd-nav-bg-hover:#ffffff1f;--fd-nav-border:#ffffff2e;--fd-nav-active-underline:#fff;width:100%}.card{border:1px solid var(--border);background:var(--panel);box-shadow:0 0 0 1px var(--card-glow,transparent);border-radius:10px;padding:1rem}h1,h2{margin:.5rem 0 .75rem;line-height:1.2}.muted{color:var(--muted)}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}footer{color:var(--muted);margin-top:2rem;font-size:.9rem}.card .prose{max-width:72ch}.card .prose p{margin:.6rem 0}.card .prose .lead{color:var(--muted-2);margin-top:.25rem;font-size:1.075rem;line-height:1.7}.card h3{letter-spacing:.04em;color:var(--heading);margin-top:.75rem;margin-bottom:.4rem;font-size:1rem;font-weight:600;line-height:1.35;position:relative}.card h3:after{content:"";background:linear-gradient(90deg, transparent, var(--border), transparent);height:1px;margin-top:.4rem;display:block}.card .rule{background:linear-gradient(90deg, transparent, var(--border), transparent);border:0;height:1px;margin:1.1rem 0}.card .prose ul{margin:.6rem 0 .2rem;padding-left:1.2rem}.card .prose li{margin:.3rem 0}.card a{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:.08em}@media (width>=720px){.card{border-color:var(--border);background:var(--panel-2);padding:1.25rem}}.about-grid{gap:var(--space-5,1.25rem);margin-top:var(--space-5,2rem);display:grid}.about-grid>.card:not(.project){margin:0!important}@media (width<=899px){.about-grid{grid-template-columns:1fr;grid-template-areas:"who""story""skills""links""projects"}}.about-who{grid-area:who}.headshot{grid-area:headshot}.about-story{grid-area:story}.skills{grid-area:skills}.about-projects{grid-area:projects}.quick-links{grid-area:links}.project--fd{grid-area:fd}.project--hh{grid-area:hh}.project--tamu{grid-area:tamu}.headshot{display:none!important}@media (width>=900px){.about-grid{grid-template-columns:minmax(64ch,1fr) minmax(340px,480px);grid-template-areas:"who skills""story skills""projects skills""projects links";justify-content:center;align-items:start;gap:.75rem 1.25rem}.headshot{z-index:auto;position:static;top:auto}.about-grid .skills,.about-grid .quick-links{justify-self:start;width:clamp(340px,26vw,520px);min-width:340px;max-width:520px}.card{padding:1.1rem}.about-projects .projects{columns:2;column-gap:2rem}.about-projects .projects li{break-inside:avoid}.about-who,.about-story,.about-projects{margin-bottom:.75rem!important}.about-grid>.project.project--fd{margin-top:0!important}.about-grid>.project.project--hh,.about-grid>.project.project--tamu{margin-top:1.25rem!important}}@media (width>=1200px){.about-grid{grid-template-columns:minmax(68ch,980px) minmax(360px,520px);grid-template-areas:"who skills""story skills""projects skills""projects links";justify-content:center;align-items:start;gap:.75rem 1.25rem}.about-grid .skills,.about-grid .quick-links{width:clamp(360px,26vw,520px);min-width:360px;max-width:520px}.card .prose{max-width:76ch}}.about-left{color:var(--text);display:contents}.about-left h2,.about-left h3,.skills h3{color:var(--heading)}.skills h3{letter-spacing:.02em;white-space:nowrap}.skills{max-width:46ch}.skills .badges{margin-top:.35rem}.skills .badges+h3{margin-top:.85rem}.about-left h3:after{content:"";background:linear-gradient(90deg, transparent, var(--border), transparent);height:1px;margin-top:.4rem;display:block}.bullets,.projects{margin:.6rem 0 .2rem;padding-left:1.2rem}.badges{flex-wrap:wrap;gap:.35rem;display:flex}.badge{filter:saturate(.9)brightness(.98)}@media (width<=899px){.headshot figure{max-width:clamp(180px,42vw,240px)}.headshot img{aspect-ratio:auto;object-fit:contain;object-position:center;background:var(--media-card-bg);border:1px solid var(--border);width:100%;height:auto;max-height:52vh}}.headshot figure{margin:0 auto}.headshot img{aspect-ratio:4/5;object-fit:cover;object-position:50% 33%;border-radius:var(--radius,12px);width:100%;display:block}@media (width>=900px){.headshot img{aspect-ratio:4/5;object-fit:cover;object-position:50% 33%;width:100%;height:auto;max-height:none}.headshot.card,.card.headshot{padding:.5rem}}.about-left p{font-size:1rem;line-height:1.7}.about-left ul{margin:.6rem 0 .2rem 1.2rem;list-style:outside}.about-left li{margin:.35rem 0}.project .tile{color:inherit;justify-items:center;gap:.5rem;text-decoration:none;display:grid}.project .tile h4{text-align:center}.project model-viewer{aspect-ratio:16/9;background:var(--media-card-bg);border:1px solid var(--card-accent-bd);width:100%;box-shadow:0 0 0 1px var(--card-glow), 0 2px 8px #00000014;border-radius:var(--radius,12px)}.project:hover model-viewer{box-shadow:0 0 0 1px color-mix(in oklab, var(--accent) 42%, white 58%), 0 2px 8px #0000001a}.link-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;display:grid}.quick-links .btn{font-weight:600}.cta-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem;margin-top:.75rem;display:grid}.btn{text-align:center;border:1px solid var(--border);border-radius:var(--radius,12px);padding:.5rem .75rem;text-decoration:none;display:inline-block}.btn.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--btn-text-on-primary)}.btn.btn--primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}@media (prefers-reduced-motion:no-preference){.about-grid .card{opacity:1!important;transition:none!important;transform:none!important}}@media (width<=899px){.about-grid .headshot figure{max-width:clamp(180px,42vw,240px)}.about-grid .headshot img{aspect-ratio:auto;object-fit:contain;object-position:center;background:var(--media-card-bg);border:1px solid var(--border);width:100%;height:auto;max-height:52vh}}
