/* Selected concept 02: personal theatre poster. Kept separate from repertoire CSS. */
.actor-page-header { min-height: 96px; max-width: 1440px; margin: auto; padding: 20px 6%; }
.actor-page-brand img { width: 136px; height: auto; }
.actor-page-back { text-transform: none; letter-spacing: 0; font-size: 15px; }
.actor-page-main { padding: 0; }
.profile-poster { width: 100%; max-width: 1440px; padding: 0; border: 0; border-radius: 0; background: var(--ink); }
.profile-poster-hero { position: relative; min-height: 650px; isolation: isolate; overflow: hidden; background: #302137; }
.profile-poster .profile-photo { position: absolute; inset: 0 0 0 40%; max-width: none; margin: 0; z-index: -2; }
.profile-poster .profile-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; border-radius: 0; }
.profile-poster[data-person="remigiusz-pilarczyk"] .profile-photo img { object-position: 50% 0; }
.profile-poster-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#302137 0%,#302137 27%,rgba(48,33,55,.92) 37%,rgba(48,33,55,.16) 64%,transparent 100%); }
.profile-photo-placeholder { display: grid; place-items: center; background: radial-gradient(ellipse at 80% 15%,#74448b 0%,transparent 62%),linear-gradient(145deg,#4a315c,#211e22); }
.profile-photo-placeholder::before { content: ''; position: absolute; inset: 9% 10%; border: 1px solid rgba(241,188,38,.18); transform: rotate(-7deg); }
.profile-photo-placeholder > span { color: rgba(241,188,38,.2); font: 650 clamp(150px,24vw,340px)/1 Quicksand,Arial,sans-serif; letter-spacing: -.08em; padding-right: .08em; }
.profile-poster .profile-identity { display: block; padding: 80px 6% 64px; position: relative; }
.profile-poster .profile-identity .kicker { font: 700 12px/1.5 Atkinson,Arial,sans-serif; letter-spacing: .17em; text-transform: uppercase; margin: 0 0 68px; color: var(--gold); }
.profile-poster .profile-identity h1 { font: 650 clamp(72px,8.4vw,128px)/.96 Quicksand,Arial,sans-serif; letter-spacing: -.06em; max-width: 74%; margin: 0; overflow-wrap: anywhere; }
.profile-poster .profile-identity h1 span { display: block; }
.profile-poster .profile-identity h1 span:last-child { color: var(--gold); padding-bottom: 12px; }
.profile-poster .profile-role { font-size: 19px; margin: 30px 0 0; max-width: 340px; color: rgba(255,255,255,.9); }
.profile-hero-mark { position: absolute; bottom: 26px; right: 6%; margin: 0; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
.profile-bio-section { background: var(--paper); color: var(--ink); padding: 58px 6% 66px; }
.profile-bio-inner { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: 50px; max-width: 1260px; margin: auto; min-height: 140px; }
.profile-bio-inner h2 { margin: 0; max-width: 300px; font: 650 38px/1.12 Quicksand,Arial,sans-serif; letter-spacing: -.04em; }
.profile-poster .profile-biography { margin: 0; max-width: 700px; min-width: 0; font-size: 21px; line-height: 1.6; color: var(--ink); overflow-wrap: anywhere; }
.profile-poster .profile-biography p { margin: 0 0 1em; }
.profile-poster .profile-biography p:last-child { margin-bottom: 0; }
.profile-copy-placeholder { display: grid; gap: 16px; padding-top: 14px; color: #766d79; }
.profile-copy-placeholder span { display: block; height: 1px; width: 100%; background: currentColor; opacity: .2; }
.profile-copy-placeholder span:last-child { width: 64%; }
.profile-poster .profile-shows { padding: 36px 6%; margin: 0; }
.profile-poster .actor-page-nav { margin: 0; background: transparent; border-top: 1px solid var(--line-dark); gap: 0; padding: 0 6%; }
.profile-poster .actor-page-nav a { min-width: 0; min-height: 124px; background: transparent; padding: 26px 16px 26px 0; }
.profile-poster .actor-page-nav a:last-child { padding: 26px 0 26px 16px; }
.profile-poster .actor-page-nav strong { font: 600 20px/1.3 Quicksand,Arial,sans-serif; overflow-wrap: anywhere; }
.profile-poster .actor-page-nav a:hover { color: white; background: rgba(255,255,255,.05); }
.profile-poster .actor-page-nav a:hover span { color: var(--gold); }
.profile-poster .actor-page-nav a:only-child { grid-column: 1/-1; align-items: flex-start; text-align: left; padding-inline: 0; }
.actor-page-footer { max-width: 1440px; margin: auto; padding-inline: 6%; }
@media(max-width:740px) {
 .actor-page-header { min-height: 80px; padding: 16px 22px; gap: 20px; }
 .actor-page-brand img { width: 115px; }
 .actor-page-back { font-size: 13px; max-width: none; }
 .profile-poster-hero { min-height: 0; }
 .profile-poster .profile-photo { position: relative; inset: auto; height: 420px; z-index: 0; overflow: hidden; }
 .profile-poster-hero::after { display: none; }
 .profile-photo-placeholder > span { font-size: clamp(130px,48vw,240px); }
 .profile-poster .profile-identity { width: 100%; padding: 28px 24px 34px; background: var(--ink); }
 .profile-poster .profile-identity .kicker { font-size: 11px; margin-bottom: 24px; }
 .profile-poster .profile-identity h1 { font-size: clamp(44px,13.6vw,94px); max-width: 100%; line-height: .98; }
 .profile-poster .profile-role { font-size: 17px; margin-top: 16px; }
 .profile-hero-mark { display: none; }
 .profile-bio-section { padding: 36px 24px 42px; }
 .profile-bio-inner { grid-template-columns: minmax(0,1fr); gap: 22px; min-height: 175px; }
 .profile-bio-inner h2 { max-width: none; font-size: 32px; }
 .profile-poster .profile-biography { font-size: 19px; }
 .profile-poster .actor-page-nav { grid-template-columns: minmax(0,1fr); padding: 0 24px; }
 .profile-poster .actor-page-nav a, .profile-poster .actor-page-nav a:last-child { align-items: flex-start; text-align: left; padding: 24px 0; min-height: 106px; }
 .profile-poster .actor-page-nav a + a { border-top: 1px solid var(--line-dark); }
 .profile-poster .profile-shows { padding: 32px 24px; }
}
