.hc-hero {
    background-color: rgba(var(--bs-primary-rgb), .06);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid rgba(var(--bs-primary-rgb), .18);
}

.hc-hero-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, .82) 0%, rgba(255, 255, 255, .5) 55%, rgba(255, 255, 255, .12) 100%);
}

.hc-hero-content {
    max-width: 760px;
}

@media (max-width: 575.98px) {
    .hc-hero-content h1 {
        font-size: calc(1.375rem + 1.5vw);
    }
}

#frmHCSave {
    scroll-margin-top: 100px;
}

/* Page intro / section eyebrow */
.hc-intro {
    max-width: 820px;
}

.hc-eyebrow {
    display: inline-block;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: .78rem;
    font-weight: 700;
    color: var(--bs-primary);
    margin-bottom: .5rem;
}

.hc-divider {
    width: 56px;
    height: 3px;
    border-radius: 3px;
    background-color: var(--bs-primary);
    opacity: .9;
}

.hc-intro-lead {
    font-size: 1.05rem;
    color: var(--bs-secondary-color);
}

/* How it works — sequential step cards */
.hc-step-figure {
    flex-shrink: 0;
    line-height: 1;
}

.hc-step-figure i {
    font-size: 40px;
    color: var(--bs-primary);
}

.hc-step-num {
    display: inline-block;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-size: .72rem;
    font-weight: 700;
    color: var(--bs-primary);
    margin-bottom: .25rem;
}

/* Why-choose cards */
.hc-why-card {
    height: 100%;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    transition: box-shadow .2s ease, transform .2s ease;
}

.hc-why-card:hover {
    box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .08);
    transform: translateY(-2px);
}

.hc-why-icon i {
    font-size: 32px;
    color: var(--bs-primary);
}

/* Cross-sell link cards */
.hc-cross-card {
    height: 100%;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    transition: box-shadow .2s ease, transform .2s ease;
}

.hc-cross-card:hover {
    box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .08);
    transform: translateY(-2px);
}

.hc-cross-card a.stretched-link {
    color: inherit;
    text-decoration: none;
}

.hc-cross-card a.stretched-link:hover {
    color: var(--bs-primary);
}

/* Support / trust box */
.hc-support {
    background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), .12) 0%, rgba(var(--bs-primary-rgb), .03) 100%);
    border: 1px solid rgba(var(--bs-primary-rgb), .25);
}

/* Disclaimer box */
.hc-disclaimer {
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    background-color: var(--bs-light);
}
