/* =========================================
   JOIN PAGE LAYOUT CLEANUP (REDUCE BOX DENSITY)
   ========================================= */
.join-page .page-container {
    max-width: 1180px;
    margin: 0 auto;
}

.join-page .join-container {
    padding-top: clamp(18px, 2.6vw, 30px);
}

.join-page .join-container > .section {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: clamp(34px, 4.8vw, 60px) clamp(14px, 3.6vw, 34px) !important;
}

.join-page .join-container > .section + .section {
    border-top: 1px solid var(--pp-border-soft);
}

.join-page .join-container > .section .benefits-grid {
    gap: clamp(16px, 2vw, 24px);
    margin-top: clamp(22px, 3vw, 32px);
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.join-page .join-container > .section .benefit-item {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 12px;
    align-items: flex-start;
}

.join-page .join-container > .section .benefit-icon {
    margin-right: 0;
}

.join-page .join-container > .section .benefit-content h3 {
    margin-bottom: 8px;
}

.join-page .join-container > .section .requirements-list {
    margin: 24px 0;
}

.join-page .join-container > .section .requirements-list li {
    margin-bottom: 16px;
}

.join-page .join-container > .join-hero,
.join-page .join-container > .apply-section {
    margin-inline: clamp(10px, 2vw, 16px);
}

@media (max-width: 768px) {
    .join-page .join-container {
        padding-top: 16px;
    }

    .join-page .join-container > .section {
        padding: 28px 14px !important;
    }

    .join-page .join-container > .section .benefits-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}


/* =========================================
   JOIN PAGE — REVEAL STAGGER + POLISH
   Reveal system (.hi-reveal) wired via data-reveal in markup.
   ========================================= */
.join-page .benefits-grid .benefit-item.hi-reveal:nth-child(1) { transition-delay: 40ms; }
.join-page .benefits-grid .benefit-item.hi-reveal:nth-child(2) { transition-delay: 120ms; }
.join-page .benefits-grid .benefit-item.hi-reveal:nth-child(3) { transition-delay: 200ms; }
.join-page .benefits-grid .benefit-item.hi-reveal:nth-child(4) { transition-delay: 280ms; }

.join-page .benefit-item { transition: transform 0.25s ease; }
.join-page .benefit-icon { transition: transform 0.25s ease, color 0.25s ease; }
.join-page .benefit-item:hover { transform: translateY(-4px); }
.join-page .benefit-item:hover .benefit-icon { transform: scale(1.16) rotate(-5deg); }

.join-page .join-cta .material-icons,
.join-page .apply-button .material-icons { transition: transform 0.25s ease; }
.join-page .join-cta:hover .material-icons,
.join-page .apply-button:hover .material-icons { transform: translateX(5px); }

@media (prefers-reduced-motion: reduce) {
    .join-page .benefit-item,
    .join-page .benefit-icon,
    .join-page .join-cta .material-icons,
    .join-page .apply-button .material-icons {
        transition: none !important;
        transform: none !important;
    }
}
