.job-detail-trigger { cursor: pointer; }
button.job-apply-link { background: transparent; border: 0; border-bottom: 1px solid #bc8d4b; padding-left: 0; padding-right: 0; }
.job-detail-dialog { width: min(780px, calc(100% - 32px)); max-height: calc(100dvh - 48px); margin: auto; padding: 0; border: 0; border-radius: 12px; background: #faf7f3; color: #302c28; overflow: auto; overscroll-behavior: contain; box-shadow: 0 24px 90px #0005; }
.job-detail-dialog::backdrop { background: #171410b8; }
.job-detail-top { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 28px; background: #faf7f3; border-bottom: 1px solid #e4dbd1; }
.job-detail-top > span { font: 700 11px Manrope, sans-serif; letter-spacing: .13em; text-transform: uppercase; color: #a87435; }
.job-detail-close { width: 44px; height: 44px; border: 1px solid #d9cfc3; border-radius: 50%; background: transparent; color: #302c28; font-size: 28px; cursor: pointer; }
.job-detail-body { padding: 28px 48px 36px; }
.job-detail-body h2 { font-size: clamp(32px, 6vw, 50px); line-height: 1.12; letter-spacing: -.035em; margin: 0 0 14px; }
.job-detail-body h2 small { font-size: .5em; white-space: nowrap; }
.job-detail-body h3 { font-size: 26px; margin: 30px 0 12px; }
.job-detail-body p, .job-detail-body li { font-size: 16px; line-height: 1.7; }
.job-detail-body .job-detail-model { color: #8d642f; font-size: 14px; }
.job-detail-body .job-detail-lead { font-family: 'Playfair Display', Georgia, serif; font-size: 23px; line-height: 1.45; margin-top: 24px; }
.job-detail-body ul { padding-left: 22px; margin: 0; list-style: disc; }
.job-detail-body li { padding: 0 0 7px; }
.job-detail-body li::marker { color: #a87435; }
.job-detail-contacts { display: grid; gap: 9px; overflow-wrap: anywhere; }
.job-detail-bottom { padding: 0 48px 36px; }
.job-detail-apply { padding: 16px 28px; border: 0; border-radius: 999px; background: #302c28; color: white; font: 700 14px Manrope, sans-serif; cursor: pointer; }
.job-detail-apply span { margin-left: 18px; }
.job-detail-dialog button:focus-visible, .job-detail-trigger:focus-visible { outline: 2px solid #a87435; outline-offset: 3px; }
@media (max-width: 600px) {
 .job-detail-dialog { width: calc(100% - 20px); max-height: calc(100dvh - 24px); }
 .job-detail-top { padding: 10px 20px; }
 .job-detail-body { padding: 24px 22px; }
 .job-detail-bottom { padding: 0 22px 24px; }
 .job-detail-apply { width: 100%; }
}
