/* Company talent request page — responsive layout */
.company-request-page {
    overflow-x: clip;
}

.company-request-hero {
    background: linear-gradient(180deg, rgba(var(--hopn-accent-rgb), 0.12) 0%, transparent 100%);
    padding-top: clamp(2rem, 5vw, 3rem) !important;
    padding-bottom: clamp(1.5rem, 4vw, 2.5rem) !important;
}

.company-request-hero-title {
    font-size: clamp(1.75rem, 5vw, 3rem);
    line-height: 1.15;
    overflow-wrap: break-word;
    word-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
    white-space: normal;
    text-wrap: balance;
}

.company-request-hero .lead {
    font-size: clamp(0.95rem, 2.5vw, 1.15rem);
    max-width: 42rem;
    margin-left: auto;
    margin-right: auto;
}

.company-request-step-header {
    min-width: 0;
}

.company-request-step-header > div {
    min-width: 0;
    flex: 1 1 auto;
}

.company-request-step-header h2 {
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.company-request-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--hopn-gold), var(--hopn-gold-light));
    color: var(--hopn-btn-primary-text, #111);
    font-weight: 700;
    flex-shrink: 0;
}

.company-request-check {
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--hopn-border-subtle);
    border-radius: 0.5rem;
    height: 100%;
}

.company-request-check .form-check-label {
    font-size: 0.875rem;
    line-height: 1.35;
    overflow-wrap: break-word;
}

.company-request-form .form-control,
.company-request-form .form-select {
    width: 100%;
}

.company-request-submit-wrap {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

[data-theme="premium"] .company-request-hero {
    background: linear-gradient(180deg, rgba(var(--hopn-accent-rgb), 0.14) 0%, transparent 100%);
}

[data-theme="premium"] .company-request-step {
    background: var(--hopn-btn-primary-bg);
    color: #000;
}

@media (max-width: 575.98px) {
    .company-request-page .hopn-card {
        padding: 1rem !important;
    }

    .company-request-step {
        width: 2rem;
        height: 2rem;
        font-size: 0.875rem;
    }

    .company-request-check {
        padding: 0.4rem 0.55rem;
    }

    .company-request-submit {
        width: 100%;
        min-height: 48px;
    }
}

@media (min-width: 576px) {
    .company-request-submit {
        min-width: 14rem;
    }
}
