.home-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem);margin:0 auto}.home-page .section-card{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0;padding:2rem}.home-page .section-block{margin-bottom:var(--section-gap,8rem)}.home-page .section-block+.section-block{border-top:0;padding-top:0}.home-page .section-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;margin-bottom:2.5rem;display:grid}.home-page .section-head h2{font-size:clamp(2rem,4vw,3.25rem);font-weight:400;line-height:var(--leading-display,1);letter-spacing:var(--tracking-display,-.06em);margin-bottom:.5rem}.home-page .section-head p{max-width:52ch;color:var(--color-text-secondary);margin-bottom:0;line-height:1.5}.home-page .home-history-button{backface-visibility:hidden;will-change:border-color, box-shadow, background-color;text-transform:none;letter-spacing:0;border-radius:var(--radius-control);transition:border-color var(--transition-color), box-shadow var(--transition-color), background-color var(--transition-color), color var(--transition-color);align-self:start;font-size:.875rem;font-weight:500;position:relative;transform:none}.home-page .home-history-button.btn:hover,.home-page .home-history-button.btn:focus-visible,.home-page .home-history-button.btn:active{transform:none}.home-page .experience-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.home-page .experience-card{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0;flex-direction:column;align-items:stretch;gap:1rem;padding:0;display:flex;overflow:hidden}.home-page .experience-card-image{aspect-ratio:16/9;border-bottom:1px solid var(--color-border-subtle);background:linear-gradient(#ffffff0a,#ffffff04),#080808b3;width:100%;min-height:260px;padding:1.5rem;display:block;overflow:hidden}.home-page .experience-card-logo{object-fit:contain;object-position:center;width:100%;max-width:none;height:100%;max-height:none;display:block}.home-page .experience-card-body{min-width:0;padding:0 1.5rem 1.5rem}.home-page .experience-card-meta{margin-bottom:.55rem}.home-page .experience-card-date{letter-spacing:0;text-transform:none;color:var(--color-text-muted);font-size:.8125rem;font-weight:400}.home-page .experience-card h3{letter-spacing:var(--tracking-display,-.06em);margin-bottom:.35rem;font-size:clamp(1.45rem,2vw,2rem);font-weight:400;line-height:1.05}.home-page .experience-card-role{color:var(--color-text-secondary);margin-bottom:.6rem;font-weight:400}.home-page .experience-card p:last-child{margin-bottom:0}.home-page .experience-card-website-link{white-space:nowrap;align-items:center;gap:.45rem;margin-top:1.15rem;display:inline-flex}.home-page .experience-card-website-icon{opacity:.72;transition:transform var(--transition-base), opacity var(--transition-base);flex-shrink:0}.home-page .experience-card-website-link:hover .experience-card-website-icon,.home-page .experience-card-website-link:focus-visible .experience-card-website-icon{opacity:1;transform:translate(1px)}.home-page .icon-link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.home-page .icon-link-card{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:100%;box-shadow:none;color:inherit;transition:border-color var(--transition-color), background-color var(--transition-color);background:0 0;flex-direction:column;gap:1rem;padding:1.75rem;text-decoration:none;display:flex}.home-page .icon-link-card:hover{box-shadow:none;background:#0a0a0a;border-color:#474747;transform:none}.home-page .icon-link-symbol{border:1px solid var(--color-border);border-radius:var(--radius-control);width:3.25rem;height:3.25rem;color:var(--color-text);background:0 0;justify-content:center;align-items:center;display:inline-flex}.home-page .icon-link-symbol svg{width:1.4rem;height:1.4rem}.home-page .icon-link-card h3{margin:0;font-size:1.3rem}.home-page .icon-link-card p{color:var(--color-text-secondary);margin:0}.home-page .icon-link-cta{color:var(--color-text);letter-spacing:0;text-transform:none;align-items:center;gap:.45rem;margin-top:auto;padding-top:.35rem;font-size:.875rem;font-weight:500;display:inline-flex}.home-page .icon-link-arrow{opacity:.72;transition:transform var(--transition-base), opacity var(--transition-base);flex-shrink:0}.home-page .icon-link-card:hover .icon-link-arrow,.home-page .icon-link-card:focus-visible .icon-link-arrow{opacity:1;transform:translate(2px)}.contact-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem);grid-template-columns:minmax(0,1.3fr) minmax(320px,.92fr);align-items:start;gap:1rem;margin:0 auto;display:grid}.contact-page .primary-zone{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0;flex-direction:column;gap:1.5rem;padding:2rem;display:flex}.contact-page .primary-copy h2{letter-spacing:var(--tracking-display,-.06em);font-size:clamp(1.75rem,3vw,2.75rem);font-weight:400;line-height:var(--leading-display,1);margin-bottom:.6rem}.contact-page .contact-kicker{margin-bottom:.65rem}.contact-page .context{color:var(--color-text-secondary);font-size:.95rem;line-height:1.75}.contact-page .contact-actions{flex-wrap:wrap;gap:.875rem;margin-bottom:2.5rem;display:flex}.contact-page .contact-email-btn{align-items:center;gap:.65rem;min-height:3.35rem;padding:1.05rem 1.85rem;font-size:1.0625rem;font-weight:600;display:inline-flex}.contact-page .contact-email-btn-icon{opacity:.92;flex-shrink:0}.contact-page .contact-details{border-top:1px solid var(--color-border);flex-direction:column;gap:0;display:flex}.contact-page .contact-detail{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(7.5rem,10rem) minmax(0,1fr);align-items:start;gap:1rem 1.5rem;padding:1rem 0;display:grid}.contact-page .contact-detail-label{margin-bottom:0;display:inline-flex}.contact-page .contact-detail p{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.5}.contact-page .secondary-zone{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0;flex-direction:column;gap:1.25rem;padding:2rem;display:flex}.contact-page .secondary-head .section-kicker{margin-bottom:.65rem}.contact-page .secondary-head p:not(.section-kicker){color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.65}.contact-page .social-links{flex-direction:column;align-items:stretch;gap:.55rem;display:flex}.contact-page .social-link{border-radius:var(--radius-control);width:100%;color:var(--color-text);letter-spacing:0;background:0 0;border:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem .95rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:border-color .18s,background-color .18s,color .18s;display:inline-flex}.contact-page .social-link:hover,.contact-page .social-link:focus-visible{color:var(--color-text);background:#ffffff08;border-color:#ffffff2e;outline:none}.contact-page .social-link-icon{opacity:.72;transition:transform var(--transition-base), opacity var(--transition-base);flex-shrink:0}.contact-page .social-link:hover .social-link-icon,.contact-page .social-link:focus-visible .social-link-icon{opacity:1;transform:translate(2px)}.education-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem)}.education-page .education-timeline{margin-top:1.5rem}.education-page .timeline-entry{grid-template-columns:2rem 1fr;gap:1.5rem;display:grid;position:relative}.education-page .timeline-entry:last-child .timeline-line{display:none}.education-page .timeline-marker{flex-direction:column;align-items:center;display:flex;position:relative}.education-page .timeline-dot{border-radius:var(--radius-control);background:var(--color-accent);border:3px solid var(--color-bg);z-index:2;flex-shrink:0;width:1rem;height:1rem;position:relative}.education-page .timeline-dot[data-type=degree]{background:var(--color-accent)}.education-page .timeline-dot[data-type=certificate]{background:#ffffffb8}.education-page .timeline-dot[data-type=course]{background:#ffffff73}.education-page .timeline-line{background:var(--color-border);flex-grow:1;width:2px;margin-top:.5rem}.education-page .timeline-content{padding-bottom:3rem}.education-page .timeline-header{align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.education-page .timeline-date{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.education-page .timeline-type{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-control);background:var(--color-bg-secondary);border:1px solid var(--color-border);padding:.25rem .5rem;font-size:.75rem;font-weight:600}.education-page .timeline-type[data-type=degree]{color:var(--color-accent);border-color:var(--color-accent)}.education-page .timeline-type[data-type=certificate]{color:var(--color-text);border-color:#fff3}.education-page .timeline-type[data-type=course]{color:var(--color-text-secondary);border-color:#ffffff24}.education-page .timeline-title{color:var(--color-text);margin-bottom:.35rem;font-size:1.25rem;font-weight:600;line-height:1.25}.education-page .timeline-title-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.35rem;display:flex}.education-page .timeline-title-row .timeline-title{flex:1;min-width:0;margin-bottom:0}.education-page .timeline-institution{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:1rem;font-weight:600}.education-page .timeline-media{margin:1rem 0}.education-page .timeline-image{border-radius:var(--radius-control);width:100%;max-width:24rem;height:auto;box-shadow:none;object-fit:contain;background:0 0;border:0;display:block}.education-page .timeline-description{color:var(--color-text);margin-bottom:1rem;font-size:1rem;line-height:1.75}.education-page .expand-toggle{margin-top:.5rem;font-size:.875rem}.education-page .expand-toggle[aria-expanded=true] .expand-text:before{content:"Show less"}.education-page .expand-toggle[aria-expanded=true] .expand-text{font-size:0}.education-page .expand-toggle[aria-expanded=true] .expand-text:before{font-size:.875rem}.education-page .timeline-body{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid;overflow:hidden}.education-page .timeline-body[aria-hidden=false]{grid-template-rows:1fr}.education-page .timeline-body-content{min-height:0;overflow:hidden}.education-page .timeline-body-content.prose{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1.5rem}.education-page .timeline-body-content.prose h2{margin-top:1.5rem;margin-bottom:.75rem;font-size:1.125rem}.education-page .timeline-body-content.prose h2:first-child{margin-top:0}.education-page .timeline-body-content.prose p{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.9375rem;line-height:1.7}.education-page .education-link{white-space:nowrap;backface-visibility:hidden;will-change:transform, border-color, box-shadow, background-color;transition:transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base), color var(--transition-base);flex-shrink:0;align-items:center;gap:.45rem;display:inline-flex;position:relative;transform:translateY(0)translateZ(0)}.education-page .education-link.btn:hover,.education-page .education-link.btn:focus-visible{transform:translateY(-1px)translateZ(0)}.education-page .education-link.btn:active{transform:translateY(0)translateZ(0)}.education-page .education-link-icon{opacity:.72;transition:transform var(--transition-base), opacity var(--transition-base);flex-shrink:0}.education-page .education-link:hover .education-link-icon,.education-page .education-link:focus-visible .education-link-icon{opacity:1;transform:translate(1px)}.music-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem)}.music-page .section-block{margin-bottom:var(--section-gap,8rem)}.music-page .section-head{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.music-page .section-head h2{letter-spacing:var(--tracking-display,-.06em);font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:var(--leading-display,1);margin-bottom:.4rem}.music-page .section-head p{max-width:52ch;color:var(--color-text-secondary);margin-bottom:0}.music-page .music-collection-head{align-items:flex-start}.music-page .section-kicker{margin-bottom:.45rem}.music-page .music-feature{display:block}.music-page .music-feature-copy,.music-page .collection-card,.music-page .music-card{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0}.music-page .music-feature-copy{border-radius:var(--radius-control);box-shadow:none;background:0 0;border:0;padding:0}.music-page .music-feature-header{grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:center;gap:1.35rem;margin-bottom:1.25rem;display:grid}.music-page .music-feature-logo-shell{border-radius:var(--radius-control);background:#ffffff06;justify-content:center;align-items:center;min-height:180px;display:flex;overflow:hidden}.music-page .music-feature-image{object-fit:contain;width:100%;height:auto;display:block}.music-page .music-feature-heading-block{min-width:0}.music-page .music-feature-heading-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.music-page .music-feature-copy h2{margin-bottom:.35rem;font-size:2rem}.music-page .music-feature-role{color:var(--color-text);margin-bottom:.25rem;font-size:1rem;font-weight:700}.music-page .music-feature-date{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.92rem}.music-page .music-feature-heading-row .music-action-button{flex-shrink:0;align-self:flex-start}.music-page .music-feature-description{margin-bottom:1rem;font-size:1rem;line-height:1.75}.music-page .music-feature-body{margin-bottom:1.25rem}.music-page .music-feature-body.prose{max-width:100%}.music-page .music-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.music-page .highlight-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);background:#ffffff05;padding:1rem}.music-page .highlight-label{margin-bottom:.35rem}.music-page .highlight-card h3{margin-bottom:.45rem;font-size:1.1rem}.music-page .highlight-card p{color:var(--color-text-secondary);margin-bottom:0;font-size:.94rem;line-height:1.65}.music-page .music-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;display:grid}.music-page .music-card{padding:1.4rem}.music-page .music-meta{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);gap:.5rem;margin-bottom:.75rem;font-size:.78rem;font-weight:600;display:inline-flex}.music-page .collection-card{padding:1.6rem;position:relative;overflow:hidden}.music-page .collection-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#ffffff14,#0000 38%);position:absolute;inset:0}.music-page .collection-description{margin-bottom:1rem;font-size:1rem;line-height:1.75;position:relative}.music-page .music-collection-link{color:var(--color-accent);align-items:center;gap:.45rem;margin-top:1rem;font-weight:600;display:inline-flex;position:relative}.music-page .music-card h2{margin-bottom:.45rem;font-size:1.45rem}.music-page .music-artist{color:var(--color-text);font-weight:600}.music-page .music-body,.music-page .music-link{margin-top:1rem}.music-page .music-action-button{white-space:nowrap}.press-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem)}.press-page .press-section{margin-bottom:var(--section-gap,8rem)}.press-page .section-title{margin-bottom:1rem;font-size:1.75rem}.press-page .mentions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.25rem;display:grid}.press-page .mention-card{border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:none;background:0 0;flex-direction:column;align-items:stretch;gap:1rem;padding:0;display:flex;overflow:hidden}.press-page .mention-image-link{aspect-ratio:16/9;border-bottom:1px solid var(--color-border-subtle);width:100%;min-height:220px;transition:transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);background:#ffffff08;padding:1.25rem;display:block;overflow:hidden}.press-page .mention-image-link:hover{border-color:#ffffff2e;transform:translateY(-1px);box-shadow:inset 0 -1px #ffffff0f}.press-page .mention-image{object-fit:contain;object-position:center;width:100%;max-width:none;height:100%;max-height:none;display:block}.press-page .mention-body{min-width:0;padding:0 1.4rem 1.4rem}.press-page .mention-outlet{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.45rem;font-size:.8rem;font-weight:700}.press-page .mention-title{color:var(--color-text);margin-bottom:.55rem;font-size:1.15rem;line-height:1.3}.press-page .mention-title a{color:inherit;transition:color var(--transition-base)}.press-page .mention-title a:hover{color:var(--color-accent)}.press-page .mention-meta{flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:.85rem;display:flex}.press-page .mention-date{border-radius:var(--radius-control);color:var(--color-accent);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;align-items:center;padding:0;font-size:.82rem;font-weight:700;display:inline-flex}.press-page .mention-author{color:var(--color-text-muted);font-size:.9rem}.press-page .mention-context{color:var(--color-text-secondary);margin-bottom:1rem;line-height:1.7}.stack-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem)}.stack-page .tech-page-intro{max-width:60rem;margin-bottom:2.5rem}.stack-page .tech-page-kicker{margin-bottom:.5rem}.stack-page .tech-page-copy{color:var(--color-text);margin-bottom:.75rem;font-size:clamp(1.05rem,1.35vw,1.2rem);line-height:1.9}.stack-page .tech-page-stats{color:var(--color-text-muted);margin-bottom:0;font-size:.9rem}.stack-page .tech-browse-panel{border:1px solid var(--color-border);border-radius:var(--radius-control);background:0 0;margin:0;overflow:hidden}.stack-page .tech-filter-region{border-bottom:1px solid var(--color-border);background:#ffffff05;margin:0;padding:1.25rem 1.25rem 1rem}.stack-page .tech-filter-bar{flex-wrap:wrap;align-items:end;gap:.85rem;display:flex}.stack-page .tech-filter-field{flex-direction:column;flex:0 12rem;gap:.4rem;min-width:12rem;display:flex}.stack-page .tech-filter-field--search{flex:24rem;min-width:min(100%,24rem)}.stack-page .tech-filter-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-size:.72rem;font-weight:600}.stack-page .tech-filter-input,.stack-page .tech-filter-select{border-radius:var(--radius-control);width:100%;min-height:2.85rem;color:var(--color-text-primary);background:0 0;border:1px solid #ffffff1a;padding:.7rem .9rem;transition:border-color .18s,background-color .18s}.stack-page .tech-filter-select{appearance:none}.stack-page .tech-select-wrap{width:100%;display:block;position:relative}.stack-page .tech-select-wrap .tech-filter-select{cursor:pointer;padding-right:2.65rem}.stack-page .tech-select-chevron{width:1.15rem;height:1.15rem;color:var(--color-text-muted);pointer-events:none;transition:color .16s;position:absolute;top:50%;right:.85rem;transform:translateY(-50%)}.stack-page .tech-select-wrap:hover .tech-filter-select,.stack-page .tech-filter-input:hover{background:#ffffff08;border-color:#ffffff29}.stack-page .tech-select-wrap:hover .tech-select-chevron{color:var(--color-text-secondary)}.stack-page .tech-select-wrap:focus-within .tech-select-chevron{color:var(--color-text)}.stack-page .tech-filter-input:focus,.stack-page .tech-filter-select:focus{box-shadow:none;background:#ffffff08;border-color:#ffffff38;outline:none}.stack-page .tech-filter-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.85rem;display:flex}.stack-page .tech-results-count{color:var(--color-text-secondary);margin-bottom:0;font-size:.9rem}.stack-page .tech-reset-button{cursor:pointer;min-height:2.5rem}.stack-page .tech-tag-filter-block{margin-top:.85rem}.stack-page .tech-tag-toggle{color:var(--color-text-secondary);letter-spacing:.01em;cursor:pointer;text-underline-offset:.18em;align-items:center;margin-bottom:.55rem;padding:.2rem 0;font-size:.85rem;font-weight:500;text-decoration:underline;list-style:none;transition:color .16s;display:inline-flex}.stack-page .tech-tag-toggle::-webkit-details-marker{display:none}.stack-page .tech-tag-toggle:hover,.stack-page .tech-tag-toggle:focus-visible{color:var(--color-text);outline:none}.stack-page .tech-tag-toggle-open,.stack-page .tech-tag-filter-block[open] .tech-tag-toggle-closed{display:none}.stack-page .tech-tag-filter-block[open] .tech-tag-toggle-open{display:inline}.stack-page .tech-tag-filter{background:0 0;border:0;border-radius:0;flex-wrap:wrap;align-content:flex-start;gap:.45rem;min-height:0;margin:0;padding:0;display:flex}.stack-page .tech-tag-filter-block:not([open]) .tech-tag-chip:nth-of-type(n+13){display:none}.stack-page .tech-tag-filter-block[open] .tech-tag-filter{min-height:0}.stack-page .tech-tag-chip{border-radius:var(--radius-control);color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;flex:none;padding:.35rem .7rem;font-size:.8rem;font-weight:500;transition:border-color .18s,background-color .18s,color .18s}.stack-page .tech-tag-chip:hover,.stack-page .tech-tag-chip:focus-visible,.stack-page .tech-tag-chip[aria-pressed=true]{color:var(--color-text);background:#ffffff12;border-color:#ffffff2e;outline:none}.stack-page .tech-browse-panel .tech-grid-shell{background:0 0;margin:0;padding:1rem;overflow:visible}.stack-page .tech-grid--flush{background:0 0;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin:0;display:grid}.stack-page .stack-item{border-radius:var(--radius-control);background:0 0;border:1px solid #ffffff1a;min-height:100%;margin:0;transition:border-color .18s,background-color .18s}.stack-page .stack-item:hover,.stack-page .stack-item:focus-within{background:#ffffff08;border-color:#ffffff2e}.stack-page .stack-item-link,.stack-page .stack-item-body{min-height:100%;color:inherit;flex-direction:column;padding:1.15rem;text-decoration:none;display:flex}.stack-page .stack-item-top{justify-content:space-between;align-items:flex-start;gap:.8rem;margin-bottom:.9rem;display:flex}.stack-page .stack-item-content{flex-direction:column;flex:1;gap:.55rem;display:flex}.stack-page .logo-slot{border-radius:var(--radius-control);width:2.5rem;height:2.5rem;color:var(--color-text-secondary);background:0 0;border:1px solid #ffffff1a;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stack-page .logo-image{object-fit:contain;width:1.35rem;height:1.35rem}.stack-page .logo-fallback{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);font-size:.75rem;font-weight:600}.stack-page .external-link-chip{border-radius:var(--radius-control);width:1.85rem;height:1.85rem;color:var(--color-text-secondary);background:0 0;border:1px solid #ffffff1a;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stack-page .item-name{letter-spacing:-.015em;margin-bottom:0;font-size:1.02rem;font-weight:500;line-height:1.3}.stack-page .item-description{color:var(--color-text-secondary);margin-bottom:0;font-size:.92rem;line-height:1.55}.stack-page .stack-item-tags{flex-wrap:wrap;gap:.4rem;margin-top:.95rem;display:flex}.stack-page .stack-item-tag{border-radius:var(--radius-control);min-height:1.55rem;color:var(--color-text-secondary);letter-spacing:.01em;text-transform:none;background:#ffffff08;border:1px solid #ffffff1a;align-items:center;padding:.2rem .5rem;font-size:.72rem;font-weight:500;display:inline-flex}.stack-page .stack-item-tag--category{color:var(--color-text);background:#ffffff0f;border-color:#ffffff24}.stack-page .tech-browse-panel .tech-empty-state{color:var(--color-text-secondary);margin:0;padding:1rem 1.25rem 1.25rem;font-style:italic}.stack-page .external-link-icon{opacity:.72}.work-page{max-width:var(--page-max,1400px);padding:clamp(4rem, 8vw, 6rem) var(--page-gutter,1.5rem) clamp(6rem, 12vw, 10rem)}.work-page .work-hero-meta{margin-bottom:4rem}.work-page .work-hero-header{min-width:0;margin-bottom:1.75rem}.work-page .work-hero-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.work-page .hero-kicker{margin-bottom:1rem;display:inline-flex}.work-page .hero-spotlight-title{letter-spacing:-.04em;max-width:100%;margin-bottom:.85rem;padding-right:clamp(5rem,28vw,22rem);font-size:clamp(1.75rem,2.35vw,2.5rem);line-height:1.04}.work-page .hero-spotlight-copy{max-width:58ch;color:var(--color-text-secondary);overflow-wrap:anywhere;margin-bottom:1.5rem;font-size:1rem;line-height:1.75}.work-page .hero-spotlight-meta{flex-direction:column;gap:1rem;display:flex}.work-page .work-hero-header .page-stats{color:var(--color-text);margin-top:0;margin-bottom:0;font-size:.98rem;font-weight:600}.work-page .hero-signals{flex-wrap:wrap;gap:.6rem;display:flex}.work-page .hero-signals span{border-radius:var(--radius-control);max-width:100%;min-height:2.1rem;color:var(--color-text-secondary);letter-spacing:.03em;white-space:normal;overflow-wrap:anywhere;background:#ffffff0a;border:1px solid #ffffff1f;align-items:center;padding:.35rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.work-page .fact-card{border-radius:var(--radius-control);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff14;flex-direction:column;gap:.4rem;min-width:0;padding:1.1rem 1.15rem;display:flex}.work-page .fact-card--primary{background:radial-gradient(circle at 100% 0,#ffffff14,#0000 36%),#ffffff0a;border-color:#ffffff24;padding:1.25rem 1.25rem 1.3rem}.work-page .fact-card strong{overflow-wrap:anywhere;font-size:1.12rem;line-height:1.25}.work-page .fact-label{margin-bottom:0}.work-page .fact-card span:last-child{color:var(--color-text-secondary);overflow-wrap:anywhere;line-height:1.55}.work-page .focus-section{box-shadow:none;background:0 0;border:0;margin-bottom:4rem;padding:0}.work-page .focus-section-title{color:var(--color-text);letter-spacing:var(--tracking-display,-.04em);margin-bottom:1.25rem;font-size:clamp(1.5rem,3vw,1.85rem);font-weight:400;line-height:1.15}.work-page .focus-table-shell{border:1px solid var(--color-border);border-radius:var(--radius-control);background:0 0;overflow:auto hidden}.work-page .focus-table{border-collapse:collapse;table-layout:fixed;width:100%;margin:0}.work-page .focus-table thead th{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;text-align:left;background:#ffffff05;padding:.85rem 1.35rem;font-size:.72rem;font-weight:600}.work-page .focus-table thead th:first-child{width:30%}.work-page .focus-row{transition:background-color .18s}.work-page .focus-row+.focus-row{border-top:1px solid var(--color-border)}.work-page .focus-row:hover{background:#ffffff06}.work-page .focus-topic,.work-page .focus-values{vertical-align:top;padding:1.4rem 1.35rem}.work-page .focus-topic{text-align:left;font-weight:inherit;padding-right:1rem}.work-page .focus-card-header{align-items:flex-start;gap:.8rem;margin:0;display:flex}.work-page .focus-card-icon{border-radius:var(--radius-control);width:2rem;height:2rem;color:var(--color-text-secondary);background:0 0;border:1px solid #ffffff1a;flex-shrink:0;justify-content:center;align-items:center;margin-top:.05rem;display:flex}.work-page .focus-card-icon svg{width:1.05rem;height:1.05rem}.work-page .focus-card-title{color:var(--color-text);letter-spacing:-.015em;flex:1;min-width:0;margin:0;font-size:1.02rem;font-weight:500;line-height:1.4}.work-page .focus-card-items{flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;margin:.15rem 0 0;padding:0;list-style:none;display:flex}.work-page .focus-skill-item{color:var(--color-text-secondary);letter-spacing:.005em;text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:.92rem;font-weight:400;line-height:1.55;display:inline}.work-page .focus-skill-item:not(:last-child):after{content:"·";color:#ffffff47;margin-left:.55rem;font-weight:400}.work-page .section-block{margin-bottom:var(--section-gap,8rem)}.work-page .section-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.work-page .section-title{letter-spacing:var(--tracking-display,-.06em);font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:var(--leading-display,1);margin-bottom:.5rem}.work-page .section-copy{max-width:60ch;margin-bottom:0}.work-page .journey-timeline{margin-top:1.5rem}.work-page .timeline-entry-component{grid-template-columns:2rem 1fr;gap:1.5rem;display:grid;position:relative}.work-page .timeline-entry-wrap:last-child .timeline-line,.work-page .timeline-entry-component:last-child .timeline-line{display:none}.work-page .timeline-entry-component .timeline-marker{flex-direction:column;align-items:center;display:flex;position:relative}.work-page .timeline-entry-component .timeline-dot{background:var(--color-accent);border:3px solid var(--color-bg);z-index:2;border-radius:50%;flex-shrink:0;width:1rem;height:1rem;position:relative}.work-page .timeline-entry-component .timeline-line{background:var(--color-border);flex-grow:1;width:2px;margin-top:.5rem}.work-page .timeline-entry-component .timeline-content{padding-bottom:3rem}.work-page .timeline-entry-component .timeline-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.work-page .timeline-entry-component .timeline-date{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.work-page .timeline-entry-component .timeline-summary{align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.work-page .timeline-entry-component .timeline-logo{aspect-ratio:2;object-fit:contain;object-position:left center;flex-shrink:0;width:min(220px,38vw);max-width:220px;display:block}.work-page .timeline-entry-component .timeline-summary-copy{min-width:0}.work-page .timeline-entry-component .timeline-title{color:var(--color-text);margin-bottom:.35rem;font-size:1.25rem;font-weight:600;line-height:1.25}.work-page .timeline-entry-component .timeline-role{color:var(--color-text-secondary);margin:0;font-size:.95rem;font-weight:600;line-height:1.5}.work-page .timeline-entry-component .timeline-description{color:var(--color-text);margin-bottom:1rem;font-size:1rem;line-height:1.75}.work-page .timeline-entry-component .timeline-skills{margin-top:1rem}.work-page .timeline-entry-component .skills-label{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.work-page .timeline-entry-component .skills-list{flex-wrap:wrap;align-items:flex-start;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.work-page .timeline-entry-component .skill-tag{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:.25rem;flex-grow:0;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.work-page .timeline-entry-component .expand-toggle{margin-top:1rem;font-size:.875rem}.work-page .timeline-entry-component .expand-toggle[aria-expanded=true] .expand-text:before{content:"Show less"}.work-page .timeline-entry-component .expand-toggle[aria-expanded=true] .expand-text{font-size:0}.work-page .timeline-entry-component .expand-toggle[aria-expanded=true] .expand-text:before{font-size:.875rem}.work-page .timeline-entry-component .timeline-body{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid;overflow:hidden}.work-page .timeline-entry-component .timeline-body[aria-hidden=false]{grid-template-rows:1fr}.work-page .timeline-entry-component .timeline-body-content{min-height:0;overflow:hidden}.work-page .timeline-entry-component .timeline-body-content.prose{border-top:1px solid var(--color-border);width:100%;max-width:none;margin-top:1rem;padding-top:1.5rem}.work-page .timeline-entry-component .timeline-body-content.prose h2{margin-top:1.5rem;margin-bottom:.75rem;font-size:1.125rem}.work-page .timeline-entry-component .timeline-body-content.prose h2:first-child{margin-top:0}.work-page .timeline-entry-component .timeline-body-content.prose p,.work-page .timeline-entry-component .timeline-body-content.prose ul,.work-page .timeline-entry-component .timeline-body-content.prose ol{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.9375rem;line-height:1.7}.work-page .timeline-entry-component .timeline-body-content.prose ul,.work-page .timeline-entry-component .timeline-body-content.prose ol{padding-left:1.5rem}.work-page .timeline-entry-component .timeline-body-content.prose li{margin-bottom:.5rem}.work-page .timeline-entry-component .timeline-body-content.prose strong{color:var(--color-text)}.project-page{max-width:var(--page-max,1400px);margin:0 auto;padding:2rem 1.5rem 5rem}.project-page .project-shell{flex-direction:column;gap:2rem;display:flex}.project-page .project-hero,.project-page .project-section{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-secondary);padding:1.6rem}.project-page .hero-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:0;font-size:.85rem;display:flex}.project-page .decision-grid{gap:1rem;display:grid}.project-page .decision-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);background:#ffffff05;padding:1rem 1.1rem}.project-page .decision-card h3{margin-bottom:.5rem;font-size:1.15rem}.project-page .alternatives-list{margin-top:.75rem}@media (width<=1024px){.music-page .music-feature-header{grid-template-columns:minmax(0,180px) minmax(0,1fr);align-items:start;gap:1.15rem}.music-page .music-feature-logo-shell{min-height:140px}.music-page .music-feature-heading-row{flex-direction:column;align-items:flex-start;gap:.85rem}.music-page .music-feature-copy h2{font-size:clamp(1.6rem,3.4vw,1.85rem)}.music-page .music-feature-date{margin-bottom:0}.music-page .section-head{flex-direction:column;align-items:flex-start;gap:1rem}.music-page .music-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.music-page .music-card h2{font-size:1.3rem}}@media (width<=900px){.home-page .experience-grid{grid-template-columns:1fr}.home-page .icon-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-page,.press-page .mentions-grid{grid-template-columns:1fr}.work-page .work-hero-meta{margin-bottom:3rem}.work-page .work-hero-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.work-page .work-hero-cards .fact-card--primary{grid-column:1/-1}.work-page .hero-spotlight-title{max-width:100%;padding-right:0}.music-page .music-feature-header{grid-template-columns:1fr;gap:1.25rem}.music-page .music-feature-logo-shell{max-width:220px;min-height:150px}.music-page .music-highlight-grid{gap:.85rem}}@media (width<=768px){.education-page .timeline-entry{grid-template-columns:1.5rem 1fr;gap:1rem}.education-page .timeline-dot{border-width:2px;width:.75rem;height:.75rem}.education-page .timeline-title{font-size:1.125rem}.education-page .timeline-header{flex-direction:column;align-items:flex-start;gap:.5rem}.education-page .timeline-title-row{flex-direction:column;align-items:flex-start}}@media (width<=640px){.home-page{padding:1.25rem 1rem 4rem}.home-page .experience-grid,.home-page .icon-link-grid{grid-template-columns:1fr}.home-page .experience-card-image{min-height:180px}.home-page .experience-card-body{padding:0 1.15rem 1.15rem}.home-page .hero-copy,.home-page .hero-aside,.home-page .section-card{padding:1.25rem}.home-page .section-head{grid-template-columns:1fr;gap:1rem}.home-page .home-history-button{justify-self:start;width:auto;max-width:100%}.contact-page{grid-template-columns:1fr;padding:1.5rem 1rem 4rem}.contact-page .primary-zone,.contact-page .secondary-zone{padding:1.25rem}.contact-page .contact-detail{grid-template-columns:1fr;gap:.35rem}.education-page,.music-page{padding-top:1.5rem}.music-page .music-highlight-grid,.music-page .music-grid{grid-template-columns:1fr}.music-page .music-card{padding:1.25rem}.music-page .music-feature-logo-shell{max-width:200px;min-height:140px}.press-page .mention-image-link{min-height:180px}.press-page .mention-body{padding:0 1.15rem 1.15rem}.press-page{padding-top:1.5rem}.stack-page{padding-top:1.5rem;padding-bottom:6rem}.stack-page .tech-filter-region{padding:1rem 1rem .85rem}.stack-page .tech-browse-panel .tech-grid-shell{padding:.85rem}.stack-page .tech-browse-panel .tech-empty-state{padding:.85rem 1rem 1rem}.stack-page .tech-filter-bar{gap:.75rem}.stack-page .tech-filter-field,.stack-page .tech-filter-field--search{flex-basis:100%;min-width:100%}.stack-page .tech-filter-meta{align-items:flex-start}.stack-page .tech-grid--flush{grid-template-columns:1fr;gap:.65rem}.stack-page .stack-item-link,.stack-page .stack-item-body{padding:1rem}.work-page{padding-top:1.5rem}.work-page .work-hero-cards{grid-template-columns:1fr;gap:.75rem}.work-page .work-hero-cards .fact-card--primary{grid-column:auto}.work-page .focus-section{padding:0}.work-page .focus-table,.work-page .focus-table thead,.work-page .focus-table tbody,.work-page .focus-table tr,.work-page .focus-table th,.work-page .focus-table td{display:block}.work-page .focus-table thead{display:none}.work-page .focus-table-shell{overflow:visible}.work-page .focus-row+.focus-row{border-top:1px solid var(--color-border)}.work-page .focus-topic,.work-page .focus-values{padding:1.15rem 1rem}.work-page .focus-values{padding-top:.15rem}.work-page .focus-card-header{gap:.7rem}.work-page .focus-card-items{margin-top:.55rem}.work-page .focus-skill-item{font-size:.88rem}.work-page .focus-section-title{font-size:1.4rem}.work-page .section-header{flex-direction:column;align-items:flex-start}.work-page .timeline-entry-component{grid-template-columns:1.5rem 1fr;gap:1rem}.work-page .timeline-entry-component .timeline-dot{border-width:2px;width:.75rem;height:.75rem}.work-page .timeline-entry-component .timeline-summary{flex-direction:column;align-items:flex-start}.work-page .timeline-entry-component .timeline-logo{width:min(100%,220px)}.work-page .timeline-entry-component .timeline-title{font-size:1.125rem}.work-page .timeline-entry-component .timeline-description{font-size:.875rem}.work-page .timeline-entry-component .timeline-header{flex-direction:column;align-items:flex-start;gap:.5rem}.project-page{padding:1.5rem 1rem 4rem}.project-page .project-hero,.project-page .project-section{padding:1.2rem}}
