.artist-main{min-height:calc(100dvh - var(--header-height));padding-bottom:var(--section-space)}.artist-heading{padding-block:clamp(2rem,5vw,4rem) clamp(2.5rem,5vw,4.5rem)}.back-link{min-height:2.75rem;color:var(--muted);align-items:center;gap:.6rem;font-size:.75rem;display:inline-flex}.back-link:hover{color:var(--accent)}.artist-heading h1{max-width:18ch;font:500 clamp(3.6rem, 7vw, 7rem)/1 var(--serif);letter-spacing:-.045em;margin-top:1.5rem}.artist-section{padding-bottom:2rem}.artist-biography-body{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.artist-portrait img{width:100%;height:auto}.artist-portrait{top:calc(var(--header-height) + 2rem);position:sticky}.biography-prose{max-width:60ch;font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.9}.biography-prose+.biography-prose{margin-top:1.5rem}.review-note{border-left:2px solid var(--accent);background:var(--surface);max-width:65ch;color:var(--muted);margin-bottom:2rem;padding:1rem 1.25rem;font-size:.8125rem;line-height:1.7}.artist-media .review-note{margin-top:2rem}.performance-row.performance-row-static{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.artist-performances .performance-list{border-top:1px solid var(--line)}.artist-performances .performance-row{min-height:12rem}.section-more{border-bottom:1px solid var(--accent);min-height:2.75rem;color:var(--accent);align-items:center;gap:.75rem;margin-top:2rem;font-size:.8125rem;font-weight:600;display:inline-flex}.section-more:hover{color:var(--ink);border-color:var(--ink)}.photo-timeline{--gallery-gap:clamp(2rem, 4vw, 4rem);gap:var(--gallery-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.photo-grid-preview figure:nth-child(2n){margin-top:4rem}.photo-timeline:not(.photo-grid-preview){column-gap:var(--gallery-gap);grid-auto-rows:8px;row-gap:8px}.photo-timeline:not(.photo-grid-preview) figure{min-width:0;padding-bottom:var(--gallery-gap)}.photo-grid-preview img{object-fit:cover;object-position:center 28%;height:clamp(18rem,30vw,28rem)}.photo-timeline button{background:var(--surface);cursor:zoom-in;border:0;width:100%;padding:0;display:block}.photo-timeline img{width:100%;height:auto;transition:opacity .18s}.photo-timeline button:hover img{opacity:.9}.photo-timeline figcaption{color:var(--muted);padding-top:.875rem;font-size:.8125rem}.gallery-preview{border-bottom:1px solid var(--line)}.artist-contact-body{grid-template-columns:minmax(0,.95fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.artist-contact-portrait img{width:100%;height:auto}.contact-form{width:100%;min-width:0}.contact-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-form .button:disabled{opacity:.65;cursor:wait}.form-note{color:var(--muted);margin-bottom:1rem;font-size:.8125rem}.form-required{color:var(--muted);margin-bottom:1.5rem;font-size:.75rem}.form-name-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-field{margin-bottom:1.5rem}.form-field label{margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:block}.form-field input,.form-field textarea{border:1px solid var(--muted);background:var(--canvas);width:100%;min-height:3rem;color:var(--ink);font:400 1rem/1.6 var(--sans);border-radius:0;padding:.85rem 1rem;display:block}.form-field textarea{resize:vertical;min-height:10rem}.form-field textarea::placeholder{color:var(--muted);opacity:1}.form-field [aria-invalid=true]{border:2px solid var(--accent)}.form-actions{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.form-actions .button{cursor:pointer;gap:.75rem}.form-actions a{text-underline-offset:.25rem;font-size:.75rem;text-decoration:underline}.form-status{border-left:2px solid var(--accent);background:var(--surface);margin-top:1.5rem;padding:1rem;font-size:.875rem}.contact-copy .button{margin-top:2rem}.audio-error{color:var(--accent);grid-column:1/-1;font-size:.875rem}body:has(.gallery-dialog[open]){overflow:hidden}@media (width<=47.99rem){.artist-heading{padding-block:1.25rem 2rem}.artist-heading h1{margin-top:1rem;font-size:clamp(3.3rem,15vw,5rem)}.artist-biography-body,.artist-contact-body,.photo-timeline{grid-template-columns:minmax(0,1fr);gap:2rem}.artist-portrait{position:static}.artist-contact-portrait{max-height:20rem;overflow:hidden}.artist-contact-portrait img{object-fit:cover;object-position:center top;height:20rem}.photo-grid-preview figure:nth-child(2n){margin-top:0}.photo-timeline:not(.photo-grid-preview){grid-auto-rows:auto}.photo-timeline:not(.photo-grid-preview) figure{padding-bottom:0;grid-row-end:auto!important}.performance-row.performance-row-static{grid-template-columns:minmax(0,1fr)}.artist-performances .performance-row{min-height:0}.review-note{padding:.875rem 1rem}.form-name-row{grid-template-columns:minmax(0,1fr);gap:0}.form-actions{flex-direction:column;align-items:flex-start}}
