:root {
    --connect-font-heading: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    --connect-font-body: var(--site-font-body, "Segoe UI", Tahoma, Geneva, Verdana, sans-serif);
    --connect-ink: #151b2d;
    --connect-muted: #606a7d;
    --connect-accent: #b46b09;
    --connect-accent-strong: #9a5d00;
    --connect-line: #ded7cb;
}

.consult-directory-page,
.consult-profile-page,
.consult-success-wrap,
.consult-track-wrap,
.account-page,
.account-bookings-page,
.site-auth-modal,
.policy-wrapper,
.legal-hero {
    font-family: var(--connect-font-body);
    color: var(--connect-ink);
    letter-spacing: .01em;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

.consult-directory-page *,
.consult-profile-page *,
.consult-success-wrap *,
.consult-track-wrap *,
.account-page *,
.account-bookings-page *,
.site-auth-modal *,
.policy-wrapper *,
.legal-hero * {
    font-family: inherit;
}

.consult-directory-title,
.consult-profile-name,
.profile-title-row h1,
.profile-section h2,
.service-booking-head h2,
.success-title,
.consult-track-card h1,
.consult-track-card h2,
.account-panel-bar,
.account-bookings-bar,
.account-identity-title,
.account-bookings-service,
.site-auth-title,
.legal-hero h1,
.policy-main h1,
.policy-main h2,
.policy-main h3 {
    font-family: var(--connect-font-heading);
    letter-spacing: -.025em;
    line-height: 1.12;
    color: var(--connect-ink);
}

.consult-directory-title {
    font-size: clamp(2rem, 3vw, 2.65rem);
    font-weight: 850;
}

.profile-title-row h1 {
    font-size: clamp(2rem, 3.8vw, 3.15rem);
    font-weight: 900;
}

.profile-section h2,
.service-booking-head h2 {
    font-size: clamp(1.35rem, 1.9vw, 1.9rem);
    font-weight: 900;
}

.success-title {
    font-size: clamp(1.9rem, 3.5vw, 3rem);
    line-height: 1.06;
}

.site-auth-title {
    font-size: clamp(2rem, 3vw, 2.85rem);
    line-height: 1.04;
}

.consult-directory-subtitle,
.profile-speciality,
.profile-quick-lines,
.profile-section p,
.service-description,
.service-booking-head p,
.booking-service-summary span,
.booking-service-summary p,
.booking-policy-note,
.success-subtitle,
.consult-track-card,
.account-bookings-copy,
.account-bookings-meta,
.account-field-help,
.account-delete-copy,
.site-auth-subtitle,
.site-auth-note,
.policy-main p,
.policy-main li {
    color: var(--connect-muted);
    font-size: .96rem;
    line-height: 1.68;
    letter-spacing: .005em;
    font-weight: 500;
}

.consult-directory-kicker,
.profile-section-label,
.success-kicker,
.booking-field label,
.account-field label,
.account-bookings-detail-label,
.policy-date,
.legal-kicker {
    font-family: var(--connect-font-heading);
    color: var(--connect-accent-strong);
    font-size: .76rem;
    line-height: 1.25;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 850;
}

.consult-search-input,
.booking-field input,
.booking-field select,
.booking-field textarea,
.account-field input,
.account-field select,
.account-readonly-box,
.consult-track-card .badge,
.consult-track-card .border,
.account-bookings-tab,
.account-bookings-toggle,
.account-bookings-detail-value,
.site-auth-google-btn {
    font-family: var(--connect-font-body);
    font-size: .94rem;
    line-height: 1.45;
    letter-spacing: .005em;
    font-weight: 650;
}

.consult-search-input::placeholder,
.booking-field input::placeholder,
.booking-field textarea::placeholder,
.account-field input::placeholder {
    color: #7a8394;
    font-weight: 600;
}

.consult-profile-name,
.service-name,
.booking-service-summary strong,
.account-bookings-service {
    font-size: clamp(1.05rem, 1.35vw, 1.2rem);
    font-weight: 850;
}

.consult-profile-line,
.service-meta,
.booking-price-breakdown-row,
.account-bookings-meta,
.account-bookings-questions,
.account-bookings-empty {
    font-size: .88rem;
    line-height: 1.55;
}

.consult-profile-fee small,
.profile-fact span,
.status-chip,
.account-bookings-badge {
    font-family: var(--connect-font-heading);
    letter-spacing: .075em;
    font-size: .72rem;
    font-weight: 850;
}

.consult-profile-fee strong,
.booking-service-price,
.account-bookings-amount,
.profile-fact strong {
    font-family: var(--connect-font-heading);
    letter-spacing: -.02em;
    font-weight: 900;
}

.consult-profile-button,
.profile-action-btn,
.service-book-btn,
.booking-submit-btn,
.booking-success-btn,
.account-submit,
.account-delete-button,
.site-auth-google-btn,
.consult-success-wrap .btn,
.consult-track-wrap .btn {
    font-family: var(--connect-font-heading);
    font-size: .9rem;
    line-height: 1.15;
    letter-spacing: .005em;
    font-weight: 850;
}

.consult-directory-page a,
.consult-profile-page a,
.consult-success-wrap a,
.consult-track-wrap a,
.account-page a,
.account-bookings-page a,
.site-auth-modal a,
.policy-wrapper a {
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.consult-profile-card,
.service-row,
.service-booking-panel,
.account-panel,
.account-bookings-panel,
.account-bookings-card,
.consult-success-card,
.consult-track-card,
.site-auth-modal-panel {
    letter-spacing: 0;
}

.consult-profile-bottom,
.booking-service-summary,
.account-bookings-row,
.profile-facts,
.service-row {
    align-items: center;
}

.policy-main {
    letter-spacing: 0;
}

.policy-main h2 {
    margin-top: 28px;
    margin-bottom: 10px;
    font-size: clamp(1.22rem, 1.7vw, 1.55rem);
    font-weight: 850;
}

.policy-main p,
.policy-main li {
    font-size: .96rem;
    line-height: 1.72;
}

@media (max-width: 767.98px) {
    .consult-directory-title,
    .profile-title-row h1,
    .success-title,
    .site-auth-title {
        letter-spacing: -.018em;
    }

    .consult-directory-subtitle,
    .profile-section p,
    .service-description,
    .success-subtitle,
    .site-auth-subtitle,
    .policy-main p,
    .policy-main li {
        font-size: .92rem;
        line-height: 1.62;
    }

    .consult-profile-bottom,
    .booking-service-summary,
    .account-bookings-row,
    .service-row {
        align-items: flex-start;
    }
}
