/* Page-specific reading order and form density for recruitment and cooperation. */
.application-details { border: 1px solid var(--line); border-radius: 14px; background: #fffdf8; }
.application-details > summary { padding: 18px 20px; color: var(--green); font-size: 15px; font-weight: 850; cursor: pointer; }
.application-details > summary:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.application-details[open] > summary { border-bottom: 1px solid var(--line); }
.application-details > .captain-work-board { margin: 0; border: 0; box-shadow: none; }
.application-details > .captain-section-heading, .application-details > .captain-journey-list { margin: 24px; }
.captain-work-details { margin-top: 24px; }
body[data-page="captains"] .captain-journey-section { padding-block: 20px; }
body[data-page="captains"] .captain-hero-copy > p:not(.eyebrow) { max-width: 620px; font-size: 16px; line-height: 1.7; }
.recruitment-consultation-link { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 18px 0 10px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.recruitment-consultation-link a { color: var(--green); font-weight: 800; text-underline-offset: 3px; }
.recruitment-consultation-link span { flex-basis: 100%; }
body[data-page="captains"] :is(.captain-hero-brief-grid small,.captain-hero-assurances,.captain-panel-heading small,.captain-rule-scope,.captain-experience-disclaimer,.captain-experience-facts dt,.captain-work-grid small,.captain-journey-list small,.captain-portal-link,.recruitment-coverage-facts small,.recruitment-detail-grid li,.recruitment-introduction,.recruitment-city-strip,.recruitment-role-list p,.recruitment-ai-disclosure small,.recruitment-message p,.recruitment-start-card p,.recruitment-direct-application span,.recruitment-assistant-status) { font-size: 13px; line-height: 1.65; }
body[data-page="captains"] .recruitment-detail-grid { gap: 16px; }
body[data-page="captains"] .recruitment-section-heading h2,
body[data-page="captains"] .recruitment-assistant-heading h2 { font-size: clamp(28px, 3.6vw, 42px); line-height: 1.2; }
.partner-assurance-compact { display: flex; align-items: start; gap: 7px; margin: 18px 0 0; color: #43594b; font-size: 13px; line-height: 1.6; }
.partner-assurance-compact i { color: var(--green); font-size: 18px; }
body[data-page="partners"] .partner-application-section { padding-block: 32px; }
body[data-page="partners"] .partner-entry-assurances { display: none; }
body[data-page="partners"] .partner-entry-heading > div > p:not(.eyebrow),
body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) > span em,
body[data-page="partners"] .partner-status-entry small { font-size: 13px; line-height: 1.6; }
body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) > span small,
body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) > strong { font-size: 12px; }
body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) { min-height: 156px; }
.partner-captain-guide { padding-block: 28px; }
.partner-captain-guide-inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.partner-captain-guide h2 { margin: 5px 0 10px; font-size: clamp(24px, 3vw, 32px); }
.partner-captain-guide p:not(.eyebrow) { max-width: 660px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.partner-captain-guide .button { flex-shrink: 0; }
.partner-live-caption[data-kind="illustration"] { box-shadow: none; }
.partner-live-caption[data-kind="illustration"] > span,
.partner-live-caption[data-kind="illustration"] > strong { display: none; }
.partner-live-caption[data-kind="illustration"] > small { font-size: 12px; }
:is(.captain-application-dialog,.partner-application-dialog) .form-field { font-size: 14px; }
:is(.captain-application-dialog,.partner-application-dialog) :is(.form-field small,.consent-field,.state-message,.captain-form-section-copy,.captain-account-cluster-heading small,.partner-entry-hint) { font-size: 13px; line-height: 1.6; }
:is(.captain-application-dialog,.partner-application-dialog) :is(input,textarea,select) { font-size: 16px; }
:is(.captain-dialog-header,.partner-dialog-header) p:not(.eyebrow) { font-size: 13px; line-height: 1.6; }
.captain-form-section { padding: 0; border: 0; background: transparent; }
.captain-account-cluster { padding: 16px 0 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; }
.captain-form-footer .state-message { font-size: 12px; }
.partner-dialog-body > .state-message:empty { display: none; }
.captain-dialog-close,.partner-dialog-close { width: 44px; height: 44px; }
@media (max-width: 980px) {
  .recruitment-workflow-panel { order: -1; }
}
@media (max-width: 760px) {
  body[data-page="captains"] .captain-hero-copy { padding-block: 30px 20px; }
  body[data-page="captains"] :is(.recruitment-overview-section,.captain-program-section,.recruitment-assistant-section) { padding-block: 36px; }
  body[data-page="captains"] .captain-hero-brief { display: none; }
  body[data-page="partners"] .partner-hero,
  body[data-page="partners"] .partner-hero-inner { min-height: 0; }
  body[data-page="partners"] .partner-hero-inner { position: static; }
  body[data-page="partners"] .partner-hero-copy { padding-block: 28px 18px; }
  body[data-page="partners"] .partner-hero-lead { margin-block: 16px 18px; font-size: 15px; }
  body[data-page="partners"] .partner-hero-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  body[data-page="partners"] .partner-hero-actions .button { min-width: 0; min-height: 48px; padding: 10px; font-size: 14px; }
  body[data-page="partners"] .partner-hero-media { height: 210px; }
  body[data-page="partners"] .partner-live-caption { width: auto; margin-bottom: 16px; padding: 8px 12px; }
  body[data-page="partners"] .partner-live-caption[data-kind="illustration"] { position: absolute; left: 20px; right: auto; bottom: 14px; max-width: calc(100% - 40px); margin: 0; }
  body[data-page="partners"] .partner-entry-intro { padding: 22px 18px; }
  body[data-page="partners"] .partner-entry-options { gap: 10px; margin-top: 16px; }
  body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) { min-height: 0; padding: 15px; }
  body[data-page="partners"] :is(.partner-entry-option,.partner-captain-entry) > strong { margin: 0; padding-top: 9px; }
  .partner-captain-guide-inner { align-items: start; flex-direction: column; gap: 18px; }
  .recruitment-teaser-copy span,.recruitment-teaser-actions > a:not(.button) { font-size: 13px; }
  .application-details > summary { padding: 16px; }
  .application-details > .captain-section-heading,.application-details > .captain-journey-list { margin: 18px; }
}
@media (max-width: 620px) {
  :is(.captain-application-dialog,.partner-application-dialog) { width: 100%; max-width: none; max-height: 100dvh; height: 100dvh; margin: 0; border: 0; border-radius: 0; }
  :is(.captain-dialog-shell,.partner-dialog-shell) { height: 100%; max-height: 100%; overflow: hidden; }
  :is(.captain-dialog-header,.partner-dialog-header) { flex-shrink: 0; padding: 16px; gap: 10px; }
  :is(.captain-dialog-header,.partner-dialog-header) h2 { font-size: 23px; }
  :is(.captain-form-body,.partner-dialog-body) { padding: 18px 16px 24px; overscroll-behavior: contain; scrollbar-gutter: auto; }
  .captain-form-section { padding: 0; }
  .captain-form-footer { padding: 10px 16px max(12px,env(safe-area-inset-bottom)); }
  .captain-form-section legend { font-size: 16px; }
  .captain-form-grid,.captain-account-grid { gap: 14px; }
}
