/*
 * Zealic Health type system
 *
 * Inter is the unlicensed, brand-compatible fallback for Helvetica Now.
 * Poppins and Bitter remain available for the brand's display roles.
 */
:root {
    --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-heading: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-emphasis: "Bitter", Georgia, serif;
    --homepage-button-gradient: linear-gradient(110deg, #39ddf9 0%, #5fc8f4 43%, #7b66f6 100%);
    --homepage-button-gradient-hover: linear-gradient(110deg, #79eaff 0%, #82d9fa 43%, #9f7bf4 100%);
    --homepage-eyebrow-muted: #5264a4;
}

html {
    font-family: var(--font-body);
}

body,
button,
input,
textarea,
select {
    font-family: var(--font-body) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading) !important;
}

nav a,
footer a,
.site-header,
.mindful-nav,
.sponsor-site-header,
.nav-cta {
    font-family: var(--font-body) !important;
}

.tagline-gradient,
.sponsor-gradient,
.emphasis,
blockquote {
    font-family: var(--font-emphasis) !important;
}

/*
 * Cross-page cohesion
 *
 * The homepage is the visual reference for the site's compact CTAs and
 * eyebrow labels. Product and editorial pages keep their own color contexts,
 * but use the same shape, type scale, spacing, and treatment.
 */
.btn-gradient,
body.zh-ai-services-page .btn,
.btn-secondary,
.cta-btn,
.sponsor-button,
.mo-button,
.mo-button-light,
.zh-contact-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 45px;
    padding: 0 20px;
    border-radius: 7px;
    font-family: var(--font-body) !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.btn-gradient,
body.zh-ai-services-page .btn-fill,
.sponsor-button-primary,
.mo-button-primary,
.mindfulos-page .mo-button-light,
.final-section .sponsor-button-primary,
.zh-contact-submit {
    border: 0;
    background: var(--homepage-button-gradient) !important;
    color: #07163f !important;
    box-shadow: 0 10px 24px rgba(57, 221, 249, .16);
}

.btn-gradient:hover,
body.zh-ai-services-page .btn-fill:hover,
.sponsor-button-primary:hover,
.mo-button-primary:hover,
.mindfulos-page .mo-button-light:hover,
.final-section .sponsor-button-primary:hover,
.zh-contact-submit:hover {
    background: var(--homepage-button-gradient-hover) !important;
    color: #07163f !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(57, 221, 249, .2);
}

body.zh-ai-services-page .btn-stroke,
.btn-secondary,
.sponsor-button-secondary {
    border: 1px solid #2ebbea;
    background: transparent;
    color: #07163f;
    box-shadow: none;
}

body.zh-ai-services-page .btn-stroke:hover,
.btn-secondary:hover,
.sponsor-button-secondary:hover {
    border-color: #2ebbea;
    background: rgba(57, 221, 249, .13);
    color: #07163f;
    transform: translateY(-2px);
    box-shadow: none;
}

.cta-btn {
    border: 0;
    background: #fff;
    color: #07163f;
    box-shadow: 0 10px 24px rgba(4, 13, 40, .16);
}

.cta-btn:hover {
    background: var(--homepage-button-gradient);
    color: #07163f;
    transform: translateY(-2px) scale(1);
    box-shadow: 0 12px 26px rgba(57, 221, 249, .2);
}

.btn-gradient:hover,
body.zh-ai-services-page .btn:hover,
.btn-secondary:hover,
.sponsor-button:hover,
.mo-button:hover,
.zh-contact-submit:hover {
    transform: translateY(-2px);
}

/* Homepage eyebrow treatment applied to page kickers and section labels. */
.section-label,
.hero-badge,
.tag-badge,
.track-label,
.sponsor-eyebrow,
.mo-kicker {
    display: block;
    width: fit-content;
    margin: 0 0 19px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--homepage-eyebrow-muted) !important;
    font-family: var(--font-body) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: .32em !important;
    text-transform: uppercase;
}

.difference-section .section-label,
.cta-wrapper .hero-badge,
.hero-section .hero-badge,
.hero-badge,
.final-section .sponsor-eyebrow {
    color: var(--cyan, #39ddf9) !important;
}

.sponsor-eyebrow::before,
.mo-kicker::before {
    content: none !important;
    display: none !important;
}

body.zh-ai-services-page .track-label {
    color: var(--brand-primary, #6b38fb) !important;
}

@media (max-width: 600px) {
    .btn-gradient,
    body.zh-ai-services-page .btn,
    .btn-secondary,
    .cta-btn,
    .sponsor-button,
    .mo-button,
    .zh-contact-submit {
        min-height: 45px;
    }
}
