/* Recruitment cards are content, not page-level articles. */
#dtd-join-dialog .dtd-join-dialog__people {
    align-items: start;
    grid-auto-rows: min-content;
}
#dtd-join-dialog article.dtd-join-person {
    height: auto !important;
    min-height: 0 !important;
    max-height: none;
    width: 100%;
    max-width: none;
    margin: 0 !important;
    padding: 18px !important;
    align-self: start;
    align-items: center;
    grid-template-columns: 88px minmax(0, 1fr);
    box-sizing: border-box;
}
#dtd-join-dialog .dtd-join-person > img,
#dtd-join-dialog .dtd-join-person__placeholder { width: 88px; height: 88px; }
#dtd-join-dialog .dtd-join-person > div { height: auto; min-width: 0; }
#dtd-join-dialog .dtd-join-person h3 { margin: 0 0 8px; font-size: 22px; line-height: 1.15; }
#dtd-join-dialog .dtd-join-person a { margin-top: 6px; line-height: 1.35; }
#dtd-join-dialog .dtd-join-person a span {
    overflow: visible;
    overflow-wrap: anywhere;
    text-overflow: clip;
    white-space: normal;
}

/* Native dialog semantics and existing close/focus controllers stay intact. */
@media (max-width: 767px) {
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer) {
        position: fixed;
        inset: auto 0 0;
        width: 100%;
        max-width: none;
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
        height: auto;
        margin: 0;
        border-radius: 24px 24px 0 0;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        transform: translateY(0);
        opacity: 1;
        padding-bottom: env(safe-area-inset-bottom, 0px);
        box-shadow: 0 -12px 48px rgb(20 12 34 / 22%);
        transition: transform .25s cubic-bezier(.2,.7,.2,1), opacity .2s ease,
                    overlay .25s ease allow-discrete, display .25s ease allow-discrete;
    }
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer)::before {
        content: "";
        position: absolute;
        top: 10px;
        left: calc(50% - 20px);
        z-index: 6;
        width: 40px;
        height: 4px;
        border-radius: 99px;
        background: rgb(112 95 130 / 38%);
        pointer-events: none;
    }
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer)::backdrop {
        background: rgb(20 12 34 / 65%);
        backdrop-filter: none;
        opacity: 1;
        transition: opacity .2s ease, overlay .25s ease allow-discrete,
                    display .25s ease allow-discrete;
    }
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer):not([open]) {
        transform: translateY(100%);
        opacity: 0;
    }
    @starting-style {
        dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer)[open] {
            transform: translateY(100%);
            opacity: 0;
        }
        dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer)[open]::backdrop { opacity: 0; }
    }
    .dtd-site-dialog.is-dialog-fallback {
        inset: auto 0 0;
        transform: translateY(0);
    }
    .dtd-site-dialog__close { top: 20px; width: 44px; height: 44px; margin: 20px 16px -64px 0; }
    #dtd-join-dialog .dtd-join-dialog__header { padding: 40px 24px 24px; }
    #dtd-join-dialog .dtd-join-dialog__header h2 { max-width: 13ch; padding-right: 30px; font-size: clamp(34px, 9vw, 44px); line-height: 1.05; }
    #dtd-join-dialog .dtd-join-dialog__header > p:last-child { margin-top: 12px; font-size: 16px; line-height: 1.5; }
    #dtd-join-dialog .dtd-join-dialog__people { grid-template-columns: 1fr; gap: 12px; padding: 20px 20px 16px; }
    #dtd-join-dialog article.dtd-join-person { grid-template-columns: 72px minmax(0, 1fr); gap: 14px; padding: 14px !important; }
    #dtd-join-dialog .dtd-join-person > img,
    #dtd-join-dialog .dtd-join-person__placeholder { width: 72px; height: 72px; }
    #dtd-join-dialog .dtd-join-person h3 { margin: 0; font-size: 20px; line-height: 1.2; }
    #dtd-join-dialog .dtd-join-person a { margin-top: 0; min-height: 44px; align-items: center; font-size: 14px; }
    #dtd-join-dialog .dtd-join-dialog__links { grid-template-columns: 1fr; gap: 10px; padding: 0 20px 24px; }
    #dtd-join-dialog .dtd-join-dialog__links > a { padding: 14px 16px; min-height: 56px; }
    #dtd-contact-editor form { padding: 46px 22px 24px; }
    #dtd-contact-editor h2 { padding-right: 42px; font-size: 30px; }
    #dtd-contact-editor .dtd-contact-editor__grid { grid-template-columns: 1fr; gap: 16px; }
    #dtd-contact-editor .dtd-contact-editor__grid .is-wide { grid-column: auto; }
    #dtd-contact-editor .dtd-contact-editor__grid input,
    #dtd-contact-editor .dtd-contact-editor__grid textarea { font-size: 16px; }
    #dtd-contact-editor .dtd-contact-editor__actions { position: sticky; bottom: 0; margin-top: 20px; padding-top: 12px; background: #fff; }
    #dtd-contact-editor .dtd-contact-editor__actions > button { flex: 1; }
    dialog.dtd-tree__modal { padding: 40px 22px 24px; padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)); }
    .dtd-tree__modal .dtd-tree__close { position: sticky; top: 4px; width: 44px; height: 44px; border-radius: 50%; background: #f0dfb8; }
    .dtd-tree__modal input, .dtd-tree__modal select, .dtd-tree__modal textarea { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer),
    dialog:is(.dtd-site-dialog, .dtd-tree__modal, .dtd-mobile-drawer)::backdrop { transition: none !important; }
}

#dtd-join-dialog .dtd-join-person__role { line-height: 1.2; }
#dtd-join-dialog .dtd-join-dialog__eyebrow { line-height: 1.25; }
@media(max-width:767px) { #dtd-join-dialog .dtd-join-dialog__eyebrow { margin-bottom: 8px; } }
