/* Page-specific additions; corporate Inter is defined by tokens.css and base.css. */
.recruitment-page{display:block;padding-top:28px;padding-bottom:24px}
.site-header,main,.site-footer{width:min(var(--promo-max),100%);margin-inline:auto}
.site-header{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.wordmark{font-size:1.3rem;font-weight:900;letter-spacing:-.05em;text-decoration:none;color:var(--text)}
.wordmark{display:block;flex:0 1 140px;max-width:100%;line-height:0}
.brand-logo{display:block;width:100%;height:auto;aspect-ratio:280.14 / 178.89}
.site-header nav{display:flex;gap:22px;flex-wrap:wrap;margin-left:auto;align-items:center}
.site-header nav a{font-size:.88rem;text-decoration:none;color:var(--text);padding-block:12px}
.site-header .ss-theme-toggle{position:static;margin-left:auto;order:3;flex-shrink:0}
.skip-link{position:absolute;left:20px;top:0;transform:translateY(-130%);z-index:20;padding:12px;background:var(--bg);color:var(--text)}
.skip-link:focus{transform:translateY(0)}
main:focus{outline:none;box-shadow:none}
section[id]{scroll-margin-top:24px}
.accent{color:var(--accent-dark)}
html[data-theme="dark"] .accent{color:var(--accent)}
/* Only this recruitment hero uses native Inter Black; no global H1 change. */
#hero-title{font-weight:900;font-synthesis:none}
.hero-aside{font-weight:700;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.04em;margin:22px 0 0}
.hero-visual{display:flex;align-items:flex-end;min-height:650px}
.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.44);z-index:-1}
.visual-caption{padding:clamp(28px,4vw,56px);color:#fbfaf2;position:relative;width:100%;background:linear-gradient(transparent,#1a1a1a)}
.section-label{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.visual-caption p{font-size:clamp(2rem,3.5vw,3.1rem);line-height:1.05;letter-spacing:-.045em;font-weight:700;margin:22px 0}
.visual-caption strong{color:var(--accent)}
h2{font-size:clamp(2rem,4vw,3.3rem);font-weight:800;letter-spacing:-.05em;line-height:1.04;padding:0;margin:0 0 24px}
h3{font-size:1.25rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;margin:8px 0;padding:0}
p{line-height:1.7}
main>.ss-promo-panel{min-height:0;margin-top:32px}
.audio-section{border-top:3px solid var(--accent)}
.audio-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:start}
.audio-heading>p{margin:0 0 24px}
.audio-list{display:grid;gap:14px;margin-top:12px}
.audio-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;padding:24px;border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--bg-alt) 72%,transparent)}
.track-number{font-weight:800;font-size:2rem;letter-spacing:-.06em;color:var(--accent-dark)}
html[data-theme="dark"] .track-number{color:var(--accent)}
.track-type,.track-status{font-size:.75rem;font-weight:600;line-height:1.5}
.track-type{text-transform:uppercase;letter-spacing:.08em}
.track-status{border:1px solid var(--border);border-radius:999px;padding:8px 12px;text-align:center}
.audio-card p{font-size:.9rem;margin:0}
.audio-note{font-size:.87rem;margin:24px 0 0;max-width:75ch}
.editorial{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:72px 32px}
#band .band-photos{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--promo-gap);align-items:start}
#band .band-photos img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:var(--card-radius)}
@media(max-width:640px){#band .band-photos{grid-template-columns:1fr;gap:24px}}
.prose p:first-child{margin-top:0}
.prose p:last-child{margin-bottom:0}
.lead{font-size:1.2rem;font-weight:600}
.prose small{font-size:.8rem}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.two-columns p{margin-bottom:0}
.requirements{list-style:none;padding:0;margin:0 0 28px}
.requirements li{padding:16px 0;border-bottom:1px solid var(--border);line-height:1.5}
.requirements li:first-child{padding-top:0}
.requirements li::before{content:'↗';color:var(--accent-dark);margin-right:12px}
html[data-theme="dark"] .requirements li::before{color:var(--accent)}
.location{border-top:1px solid var(--border);padding:24px 32px 40px}
.location h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.2}
.contact-address{font-size:.9rem;overflow-wrap:anywhere}
.contact-methods{display:flex;gap:40px;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:24px;padding-top:8px}
.contact-methods p{font-size:.85rem;margin-bottom:0}.contact-methods a{display:block}
.site-footer{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;padding-top:32px;font-size:.75rem;line-height:1.6}
.site-footer p{margin:0}.site-footer div{display:flex;flex-wrap:wrap;gap:18px;margin-left:auto}.site-footer small{flex-basis:100%;font-size:.75rem}
@media(max-width:920px){.hero-visual{min-height:420px}.audio-heading,.two-columns,.editorial{grid-template-columns:1fr;gap:24px}.editorial{padding:56px 28px}.editorial h2{margin-bottom:0}.hero-visual>img{object-position:center 45%}}
@media(max-width:640px){.site-header{gap:18px;margin-bottom:24px}.site-header nav{order:4;width:100%;margin:0;justify-content:space-between;gap:10px}.site-header .ss-theme-toggle{padding:10px 12px}.hero-visual{min-height:380px}.audio-card{grid-template-columns:minmax(0,1fr);gap:12px;padding:20px}.track-number{font-size:1.4rem}.track-status{justify-self:start}.editorial{padding:48px 4px}.location{padding:24px 4px}.site-footer div{margin:0}.ss-promo-title{font-size:clamp(2.75rem,10vw,4rem)}}
/* Keep the decorative photo dark enough for the fixed light caption in both themes. */
.hero-visual::before{display:none}
