body.opportunities-page { --opportunity-leads-height: clamp(360px, 51vw, 820px); }
body.opportunities-page[data-project] { --opportunity-leads-height: 0px; }
.opportunities-page:not(.is-search-mode) .score-overlay { top: calc(var(--opportunity-leads-height) + var(--archive-panel-offset, 0px)); }
.opportunity-leads { --opportunity-split: 50%; position: relative; height: var(--opportunity-leads-height); overflow: hidden; background: #000; isolation: isolate; }
.opportunity-lead { position: absolute; inset: 0; width: 100%; height: 100%; min-width: 0; overflow: hidden; color: #fff; }
.opportunity-leads #club { clip-path: inset(0 calc(100% - var(--opportunity-split)) 0 0); }
.opportunity-leads #orchestra { clip-path: inset(0 0 0 var(--opportunity-split)); }
.opportunity-lead-image { position: absolute; inset: 0; display: block; }
.opportunity-lead-image img { width: 100%; height: 100%; object-fit: cover; }
.opportunity-lead-copy { position: absolute; z-index: 2; left: 0; bottom: 4.5%; max-width: 94%; padding: 12px 22px 18px clamp(22px, 3vw, 44px); background: rgba(0,0,0,.62); font-size: clamp(22px, 2.8vw, 38px); font-weight: 700; line-height: 1.35; }
.opportunity-leads #orchestra .opportunity-lead-copy { top: 0; right: 0; left: auto; bottom: auto; }
.opportunity-lead-copy h2 { margin: 0; font: inherit; }
.opportunity-lead-copy a { display: block; width: fit-content; }
.opportunity-lead-copy .opportunity-lead-action { margin-top: 1.7em; }
.opportunity-leads #club .opportunity-lead-action { margin-top: 2.5em; }
.opportunity-lead-copy a:hover, .opportunity-lead-copy a:focus-visible { text-decoration: underline; text-decoration-color: var(--day-accent); text-underline-offset: 5px; }
.opportunity-divider { position: absolute; z-index: 4; top: 0; bottom: 0; left: var(--opportunity-split); width: 44px; transform: translateX(-50%); cursor: ew-resize; touch-action: none; user-select: none; }
.opportunity-divider::before { content: ''; position: absolute; inset-block: 0; left: 50%; width: 2px; transform: translateX(-50%); background: #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.55); }
.opportunity-divider-grip { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 38px; height: 48px; border: 2px solid #fff; background: #000; color: #fff; }
.opportunity-divider-grip svg { width: 26px; height: 22px; }
.opportunity-divider:focus-visible { outline: none; }
.opportunity-divider:focus-visible .opportunity-divider-grip { outline: 3px solid #000; outline-offset: 3px; box-shadow: 0 0 0 6px #fff; }
.opportunity-leads.is-dragging { user-select: none; cursor: ew-resize; }
.opportunities-introduction { position: relative; z-index: 2; padding: clamp(26px, 3vw, 44px) clamp(24px, 3.8vw, 56px) clamp(32px, 5vw, 72px); font-size: clamp(19px, 2.1vw, 26px); line-height: 1.45; }
.opportunities-introduction p + p { margin-top: 1.1em; }
.opportunity-detail-intro { position: relative; z-index: 2; display: grid; grid-template-columns: 40% minmax(0, 1fr); gap: clamp(22px, 3vw, 44px); padding: clamp(24px, 3vw, 44px); }
.opportunity-detail-intro > img { width: 100%; height: auto; }
.opportunity-detail-copy { min-width: 0; padding-right: 16%; }
.opportunity-detail-copy h1 { margin: 0 0 .7em; font-size: clamp(28px, 3vw, 40px); line-height: 1.15; }
.opportunity-detail-copy p { margin-bottom: 1em; }
.opportunity-period { font-weight: 700; }
.opportunity-detail-action { display: inline-block; margin: .5em 1em .5em 0; padding: .45em .7em; border: 1px solid currentColor; font-weight: 700; }
.opportunity-back { display: inline-block; margin-top: 1em; text-decoration: underline !important; text-underline-offset: 4px; }
.opportunity-detail-action:hover, .opportunity-detail-action:focus-visible { background: #000; color: #fff; }
.club-membership { position: relative; z-index: 2; padding: clamp(24px, 3vw, 44px); border-top: 1px solid currentColor; scroll-margin-top: calc(var(--events-bars-height) + 16px); }
.club-membership h2 { margin: 0 0 20px; font-size: clamp(28px, 3vw, 40px); line-height: 1.15; }
.club-membership form { max-width: 560px; }
.club-membership label { display: block; margin: 15px 0 6px; }
.club-membership :is(input, select) { display: block; width: 100%; min-height: 44px; margin: 0 0 15px; padding: 8px 10px; border: 1px solid #000; border-radius: 0; background: var(--hour-background); color: #000; font: inherit; }
.club-membership button { padding: 8px 16px; border: 1px solid #000; border-radius: 0; background: #000; color: #fff; font: 700 21px/1.25 var(--reference-serif); }
.club-membership button:disabled { opacity: .6; cursor: progress; }
.club-membership :is(.form-success, .form-error, .small-note) { margin-block: 12px; font-size: 17px; }
.club-membership details { max-width: 660px; margin-top: 34px; scroll-margin-top: calc(var(--events-bars-height) + 16px); }
.club-membership summary { font-size: 24px; font-weight: 700; cursor: pointer; }
.club-membership #membership-checkout-form { scroll-margin-top: calc(var(--events-bars-height) + 90px); }
@media (max-width: 800px) {
  .opportunity-lead-copy { font-size: 22px; padding: 12px 18px; }
  .opportunity-lead-copy .opportunity-lead-action { margin-top: 1.3em; }
  .opportunity-detail-intro { grid-template-columns: 1fr; }
  .opportunity-detail-intro > img { max-height: 380px; object-fit: cover; }
  .opportunity-detail-copy { padding-right: 0; }
}
@media (max-width: 640px) {
  .opportunity-lead-copy { max-width: calc(50% - 12px); padding: 12px 10px; font-size: clamp(15px, 3.3vw, 21px); }
}
