/* Published Website Typography settings; authored inline formatting remains authoritative. */
body { font-family: var(--usc-font-body, Inter), ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }

body :is(h1, h2, h3, h4, h5, h6):not([style*="font-family"]) {
    font-family: var(--usc-font-heading, "Plus Jakarta Sans"), ui-sans-serif, sans-serif !important;
}

body h1:not([style*="font-size"]) { font-size: var(--usc-h1-desktop-size, 40px) !important; }
body h2:not([style*="font-size"]) { font-size: var(--usc-h2-desktop-size, 30px) !important; }
body h3:not([style*="font-size"]) { font-size: var(--usc-h3-desktop-size, 24px) !important; }
body h4:not([style*="font-size"]) { font-size: var(--usc-h4-desktop-size, 20px) !important; }
body h5:not([style*="font-size"]) { font-size: var(--usc-h5-desktop-size, 18px) !important; }
body h6:not([style*="font-size"]) { font-size: var(--usc-h6-desktop-size, 16px) !important; }
body h1:not([style*="font-weight"]) { font-weight: var(--usc-h1-desktop-weight, 700) !important; }
body h2:not([style*="font-weight"]) { font-weight: var(--usc-h2-desktop-weight, 700) !important; }
body h3:not([style*="font-weight"]) { font-weight: var(--usc-h3-desktop-weight, 700) !important; }
body h4:not([style*="font-weight"]) { font-weight: var(--usc-h4-desktop-weight, 600) !important; }
body h5:not([style*="font-weight"]) { font-weight: var(--usc-h5-desktop-weight, 600) !important; }
body h6:not([style*="font-weight"]) { font-weight: var(--usc-h6-desktop-weight, 600) !important; }
body h1:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h1-desktop-spacing, 0em) !important; }
body h2:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h2-desktop-spacing, 0em) !important; }
body h3:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h3-desktop-spacing, 0em) !important; }
body h4:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h4-desktop-spacing, 0em) !important; }
body h5:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h5-desktop-spacing, 0em) !important; }
body h6:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h6-desktop-spacing, 0em) !important; }

body p:not([style*="font-family"]) {
    font-family: var(--usc-font-body, Inter), ui-sans-serif, sans-serif !important;
}
body p:not([style*="font-size"]) {
    font-size: var(--usc-paragraph-desktop-size, 16px) !important;
}

body p:not([style*="font-weight"]) { font-weight: var(--usc-paragraph-desktop-weight, 400) !important; }
body p:not([style*="line-height"]) { line-height: var(--usc-paragraph-desktop-line-height, 1.65) !important; }
body p:not([style*="letter-spacing"]) { letter-spacing: var(--usc-paragraph-desktop-spacing, 0em) !important; }

body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="font-size"]) {
    font-size: var(--usc-caption-desktop-size, 14px) !important;
}
body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="font-weight"]) {
    font-weight: var(--usc-caption-desktop-weight, 400) !important;
}
body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="letter-spacing"]) {
    letter-spacing: var(--usc-caption-desktop-spacing, 0em) !important;
}

body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="font-family"]) {
    font-family: var(--usc-font-body, Inter), ui-sans-serif, sans-serif !important;
}
body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="font-size"]) {
    font-size: var(--usc-button-desktop-size, 14px) !important;
}
body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="font-weight"]) {
    font-weight: var(--usc-button-desktop-weight, 600) !important;
}
body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="letter-spacing"]) {
    letter-spacing: var(--usc-button-desktop-spacing, 0em) !important;
}
body label:not([style*="font-size"]) { font-size: var(--usc-label-desktop-size, 14px) !important; }
body label:not([style*="font-weight"]) { font-weight: var(--usc-label-desktop-weight, 600) !important; }
body label:not([style*="letter-spacing"]) { letter-spacing: var(--usc-label-desktop-spacing, 0em) !important; }

body :is(h1, h2) em:not([style*="font-family"]), body .category-glyph:not([style*="font-family"]),
body .step-number:not([style*="font-family"]) {
    font-family: var(--usc-font-accent, "DM Serif Display"), Georgia, serif !important;
}

@media (max-width: 650px) {
    body h1:not([style*="font-size"]) { font-size: var(--usc-h1-mobile-size, 34px) !important; }
    body h2:not([style*="font-size"]) { font-size: var(--usc-h2-mobile-size, 28px) !important; }
    body h3:not([style*="font-size"]) { font-size: var(--usc-h3-mobile-size, 23px) !important; }
    body h4:not([style*="font-size"]) { font-size: var(--usc-h4-mobile-size, 20px) !important; }
    body h5:not([style*="font-size"]) { font-size: var(--usc-h5-mobile-size, 18px) !important; }
    body h6:not([style*="font-size"]) { font-size: var(--usc-h6-mobile-size, 16px) !important; }
    body h1:not([style*="font-weight"]) { font-weight: var(--usc-h1-mobile-weight, 700) !important; }
    body h2:not([style*="font-weight"]) { font-weight: var(--usc-h2-mobile-weight, 700) !important; }
    body h3:not([style*="font-weight"]) { font-weight: var(--usc-h3-mobile-weight, 700) !important; }
    body h4:not([style*="font-weight"]) { font-weight: var(--usc-h4-mobile-weight, 600) !important; }
    body h5:not([style*="font-weight"]) { font-weight: var(--usc-h5-mobile-weight, 600) !important; }
    body h6:not([style*="font-weight"]) { font-weight: var(--usc-h6-mobile-weight, 600) !important; }
    body h1:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h1-mobile-spacing, 0em) !important; }
    body h2:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h2-mobile-spacing, 0em) !important; }
    body h3:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h3-mobile-spacing, 0em) !important; }
    body h4:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h4-mobile-spacing, 0em) !important; }
    body h5:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h5-mobile-spacing, 0em) !important; }
    body h6:not([style*="letter-spacing"]) { letter-spacing: var(--usc-h6-mobile-spacing, 0em) !important; }
    body p:not([style*="font-size"]) { font-size: var(--usc-paragraph-mobile-size, 16px) !important; }
    body p:not([style*="font-weight"]) { font-weight: var(--usc-paragraph-mobile-weight, 400) !important; }
    body p:not([style*="line-height"]) { line-height: var(--usc-paragraph-mobile-line-height, 1.65) !important; }
    body p:not([style*="letter-spacing"]) { letter-spacing: var(--usc-paragraph-mobile-spacing, 0em) !important; }
    body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="font-size"]) { font-size: var(--usc-caption-mobile-size, 14px) !important; }
    body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="font-weight"]) { font-weight: var(--usc-caption-mobile-weight, 400) !important; }
    body :is(small, .eyebrow, .section-index, .service-category, .price-label):not([style*="letter-spacing"]) { letter-spacing: var(--usc-caption-mobile-spacing, 0em) !important; }
    body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="font-size"]) { font-size: var(--usc-button-mobile-size, 14px) !important; }
    body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="font-weight"]) { font-weight: var(--usc-button-mobile-weight, 600) !important; }
    body :is(button, .button, input[type="submit"], input[type="button"]):not([style*="letter-spacing"]) { letter-spacing: var(--usc-button-mobile-spacing, 0em) !important; }
    body label:not([style*="font-size"]) { font-size: var(--usc-label-mobile-size, 14px) !important; }
    body label:not([style*="font-weight"]) { font-weight: var(--usc-label-mobile-weight, 600) !important; }
    body label:not([style*="letter-spacing"]) { letter-spacing: var(--usc-label-mobile-spacing, 0em) !important; }
}

/* Preserve the website's intentional display-heading hierarchy while scaling it from Admin tokens. */
body .hero-content h1:not([style*="font-size"]) { font-size: clamp(48px, calc(5.4vw + var(--usc-h1-desktop-size, 40px) - 40px), 78px) !important; }
body .homepage-slide-copy h1:not([style*="font-size"]) { font-size: clamp(42px, calc(4.32vw + var(--usc-h1-desktop-size, 40px) - 40px), 64px) !important; }
/* Homepage Hero typography is independently configurable; scope these tokens to slider titles only. */
body .homepage-slider .homepage-slide-copy h1:not([style*="font-family"]) {
    font-family: var(--usc-hero-font-family, var(--usc-font-heading, "Plus Jakarta Sans")), ui-sans-serif, sans-serif !important;
    font-weight: var(--usc-hero-weight, var(--usc-h1-desktop-weight, 700)) !important;
    line-height: var(--usc-hero-line-height, 1.05) !important;
    letter-spacing: var(--usc-hero-letter-spacing, var(--usc-h1-desktop-spacing, 0em)) !important;
}
body .homepage-slider .homepage-slide-copy h1:not([style*="font-size"]) {
    font-size: clamp(46px, calc(4.8vw + var(--usc-hero-desktop-size, 64px) - 64px), calc(var(--usc-hero-desktop-size, 64px) + 8px)) !important;
}
@media (min-width: 901px) {
    body .homepage-slider .homepage-slide-copy h1:not([style*="font-size"]) {
        font-size: clamp(42px, calc(4.32vw + var(--usc-hero-desktop-size, 64px) - 64px), var(--usc-hero-desktop-size, 64px)) !important;
    }
}
@media (max-width: 650px) {
    body .homepage-slider .homepage-slide-copy h1:not([style*="font-size"]) {
        font-size: clamp(39px, calc(10vw + var(--usc-hero-mobile-size, 55px) - 55px), var(--usc-hero-mobile-size, 55px)) !important;
    }
    body .homepage-slider .homepage-slide-copy h1:not([style*="font-family"]) {
        font-weight: var(--usc-hero-weight, var(--usc-h1-mobile-weight, var(--usc-h1-desktop-weight, 700))) !important;
        letter-spacing: var(--usc-hero-letter-spacing, var(--usc-h1-mobile-spacing, var(--usc-h1-desktop-spacing, 0em))) !important;
    }
}
body .catalog-intro h1:not([style*="font-size"]) { font-size: clamp(41px, calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), 68px) !important; }
body[data-usc-category-hero-typography="enabled"] .catalog-intro h1.category-hero-title:not([style*="font-size"]) {
    font-family: var(--usc-category-hero-font-family, var(--usc-font-heading, "Plus Jakarta Sans")), ui-sans-serif, sans-serif !important;
    font-size: clamp(min(41px, var(--usc-category-hero-desktop-size, 68px)), calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), var(--usc-category-hero-desktop-size, 68px)) !important;
    font-weight: var(--usc-category-hero-weight, var(--usc-h1-desktop-weight, 700)) !important;
    line-height: var(--usc-category-hero-desktop-line-height, 1.06) !important;
    letter-spacing: var(--usc-category-hero-letter-spacing, var(--usc-h1-desktop-spacing, 0em)) !important;
    overflow-wrap: anywhere;
}
html.usc-category-title-pending #category-title[data-category-title] > * { visibility: hidden; }
body .information-intro h1:not([style*="font-size"]) { font-size: clamp(40px, calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), 62px) !important; }
body .managed-page .information-intro h1:not([style*="font-size"]) { font-size: clamp(38px, calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), 60px) !important; }
body .auth-intro h1:not([style*="font-size"]), body .account-welcome h1:not([style*="font-size"]) { font-size: clamp(44px, calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), 70px) !important; }
body .address-heading h1:not([style*="font-size"]), body .address-form-intro h1:not([style*="font-size"]) { font-size: clamp(42px, calc(5vw + var(--usc-h1-desktop-size, 40px) - 40px), 66px) !important; }
body .section-heading-row h2:not([style*="font-size"]) { font-size: clamp(36px, calc(4.1vw + var(--usc-h2-desktop-size, 30px) - 30px), 58px) !important; }
body .why-heading h2:not([style*="font-size"]) { font-size: clamp(38px, calc(4vw + var(--usc-h2-desktop-size, 30px) - 30px), 54px) !important; }
body .app-section h2:not([style*="font-size"]) { font-size: clamp(36px, calc(4vw + var(--usc-h2-desktop-size, 30px) - 30px), 52px) !important; }
body .service-detail-main h2:not([style*="font-size"]) { font-size: clamp(36px, calc(4vw + var(--usc-h2-desktop-size, 30px) - 30px), 54px) !important; }
body .price-panel h2:not([style*="font-size"]) { font-size: clamp(20px, calc(var(--usc-h2-desktop-size, 30px) + 3px), 36px) !important; }
body :is(.information-card h2, .address-card h2, .auth-card h2, .account-card h2):not([style*="font-size"]) { font-size: clamp(18px, calc(var(--usc-h2-desktop-size, 30px) - 6px), 32px) !important; }
body .booking-review h2:not([style*="font-size"]) { font-size: clamp(18px, calc(var(--usc-h2-desktop-size, 30px) - 7px), 32px) !important; }
body .booking-addresses legend:not([style*="font-size"]) { font-size: clamp(18px, calc(var(--usc-h2-desktop-size, 30px) - 8px), 32px) !important; }
body :is(.service-card h3, .steps-grid h3, .empty-state h3):not([style*="font-size"]) { font-size: clamp(16px, var(--usc-h4-desktop-size, 20px), 28px) !important; }
body .why-grid h3:not([style*="font-size"]) { font-size: clamp(14px, var(--usc-h6-desktop-size, 16px), 24px) !important; }
body .managed-page-about .managed-page-content h1:not([style*="font-size"]) { font-size: clamp(24px, calc(var(--usc-h1-desktop-size, 40px) - 12px), 44px) !important; }
body .footer-grid h2:not([style*="font-size"]) { font-size: clamp(10px, calc(var(--usc-caption-desktop-size, 14px) - 2px), 16px) !important; }
body .category-copy strong:not([style*="font-family"]) { font-family: var(--usc-font-heading, "Plus Jakarta Sans"), ui-sans-serif, sans-serif !important; }
body .category-copy strong:not([style*="font-size"]) { font-size: clamp(14px, var(--usc-h5-desktop-size, 18px), 24px) !important; }
body .category-copy span:not([style*="font-size"]) { font-size: clamp(10px, calc(var(--usc-caption-desktop-size, 14px) - 3px), 16px) !important; }
body .desktop-nav a:not([style*="font-size"]), body .mobile-menu nav a:not([style*="font-size"]) { font-size: clamp(12px, calc(var(--usc-label-desktop-size, 14px) - 1px), 18px) !important; }
body .footer-grid :is(a, span:not(.footer-wordmark)):not([style*="font-size"]) { font-size: clamp(10px, calc(var(--usc-caption-desktop-size, 14px) - 2px), 16px) !important; }

@media (max-width: 650px) {
    body .hero-content h1:not([style*="font-size"]) { font-size: clamp(43px, calc(11vw + var(--usc-h1-mobile-size, 34px) - 34px), 62px) !important; }
    body .homepage-slide-copy h1:not([style*="font-size"]) { font-size: clamp(39px, calc(10vw + var(--usc-h1-mobile-size, 34px) - 34px), 55px) !important; }
    body .catalog-intro h1:not([style*="font-size"]) { font-size: clamp(39px, calc(11vw + var(--usc-h1-mobile-size, 34px) - 34px), 56px) !important; }
    body[data-usc-category-hero-typography="enabled"] .catalog-intro h1.category-hero-title:not([style*="font-size"]) {
        font-size: var(--usc-category-hero-mobile-size, var(--usc-h1-mobile-size, 34px)) !important;
        line-height: var(--usc-category-hero-mobile-line-height, 1.06) !important;
        overflow-wrap: anywhere;
    }
    body .catalog-intro h1[data-category-title-grouped="true"] [data-category-title-part] {
        display: block;
    }
    body .catalog-intro h1[data-category-title-grouped="true"] [data-category-title-separator] { display: none; }
    body .information-intro h1:not([style*="font-size"]), body .managed-page .information-intro h1:not([style*="font-size"]) { font-size: clamp(40px, calc(5vw + var(--usc-h1-mobile-size, 34px) - 34px), 62px) !important; }
    body .auth-intro h1:not([style*="font-size"]), body .account-welcome h1:not([style*="font-size"]) { font-size: clamp(41px, calc(11vw + var(--usc-h1-mobile-size, 34px) - 34px), 55px) !important; }
    body .address-heading h1:not([style*="font-size"]), body .address-form-intro h1:not([style*="font-size"]) { font-size: clamp(40px, calc(10vw + var(--usc-h1-mobile-size, 34px) - 34px), 55px) !important; }
    body .section-heading-row h2:not([style*="font-size"]) { font-size: clamp(34px, calc(9vw + var(--usc-h2-mobile-size, 28px) - 28px), 46px) !important; }
    body .managed-page-about .managed-page-content h1:not([style*="font-size"]) { font-size: clamp(24px, calc(var(--usc-h1-mobile-size, 34px) - 6px), 40px) !important; }
    body :is(.information-card h2, .address-card h2, .auth-card h2, .account-card h2):not([style*="font-size"]) { font-size: clamp(18px, calc(var(--usc-h2-mobile-size, 28px) - 6px), 30px) !important; }
    body .category-copy strong:not([style*="font-size"]) { font-size: clamp(14px, calc(var(--usc-h5-mobile-size, 18px) - 2px), 24px) !important; }
    body .category-copy span:not([style*="font-size"]) { font-size: clamp(10px, calc(var(--usc-caption-mobile-size, 14px) - 3px), 16px) !important; }
    body .desktop-nav a:not([style*="font-size"]), body .mobile-menu nav a:not([style*="font-size"]) { font-size: clamp(12px, calc(var(--usc-label-mobile-size, 14px) - 1px), 18px) !important; }
    body .footer-grid :is(a, span:not(.footer-wordmark)):not([style*="font-size"]) { font-size: clamp(10px, calc(var(--usc-caption-mobile-size, 14px) - 2px), 16px) !important; }
}
/* Reclaim category-title width only on very narrow phones; preserve shell gutters. */
@media (max-width: 380px) {
    body[data-usc-category-hero-typography="enabled"] .catalog-intro {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* The opt-in original profile restores the preserved component hierarchy while
   keeping typography controls adjustable through the existing published tokens. */
body[data-usc-typography-preset="original-website"] :is(.eyebrow, .section-index, .service-category):not([style*="font-size"]) {
    font-size: calc(var(--usc-caption-desktop-size, 14px) - 4px) !important;
}
body[data-usc-typography-preset="original-website"] .price-label:not([style*="font-size"]) {
    font-size: calc(var(--usc-caption-desktop-size, 14px) - 3px) !important;
}
body[data-usc-typography-preset="original-website"] .eyebrow:not([style*="font-weight"]),
body[data-usc-typography-preset="original-website"] .service-category:not([style*="font-weight"]),
body[data-usc-typography-preset="original-website"] .price-label:not([style*="font-weight"]) { font-weight: 800 !important; }
body[data-usc-typography-preset="original-website"] .section-index:not([style*="font-weight"]) { font-weight: 700 !important; }
body[data-usc-typography-preset="original-website"] .eyebrow:not([style*="letter-spacing"]) { letter-spacing: .23em !important; }
body[data-usc-typography-preset="original-website"] .section-index:not([style*="letter-spacing"]) { letter-spacing: .12em !important; }
body[data-usc-typography-preset="original-website"] .service-category:not([style*="letter-spacing"]) { letter-spacing: .15em !important; }
body[data-usc-typography-preset="original-website"] .price-label:not([style*="letter-spacing"]) { letter-spacing: .08em !important; }

body[data-usc-typography-preset="original-website"] .hero-content > p:not([style*="font-size"]) { font-size: var(--usc-paragraph-desktop-size, 16px) !important; }
body[data-usc-typography-preset="original-website"] .hero-content > p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .15) !important; }
body[data-usc-typography-preset="original-website"] .homepage-slide-copy p:not([style*="font-size"]) { font-size: var(--usc-paragraph-desktop-size, 16px) !important; }
body[data-usc-typography-preset="original-website"] .homepage-slide-copy p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .1) !important; }
body[data-usc-typography-preset="original-website"] .section-heading-row p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 2px) !important; }
body[data-usc-typography-preset="original-website"] .section-heading-row p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .05) !important; }
body[data-usc-typography-preset="original-website"] .service-card p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 4px) !important; }
body[data-usc-typography-preset="original-website"] .empty-state p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 3px) !important; }
body[data-usc-typography-preset="original-website"] .empty-state p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) - .05) !important; }
body[data-usc-typography-preset="original-website"] .steps-grid p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 3px) !important; }
body[data-usc-typography-preset="original-website"] .steps-grid p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .05) !important; }
body[data-usc-typography-preset="original-website"] .why-heading p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .information-intro p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 1px) !important; }
body[data-usc-typography-preset="original-website"] .why-heading p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .15) !important; }
body[data-usc-typography-preset="original-website"] .information-intro p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .1) !important; }
body[data-usc-typography-preset="original-website"] .why-grid p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 5px) !important; }
body[data-usc-typography-preset="original-website"] .why-grid p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .05) !important; }
body[data-usc-typography-preset="original-website"] .app-section p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .account-card p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .address-card p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .booking-review > p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 3px) !important; }
body[data-usc-typography-preset="original-website"] .app-section p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .account-card p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .address-card p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .booking-review > p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .05) !important; }
body[data-usc-typography-preset="original-website"] .footer-brand p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 4px) !important; }
body[data-usc-typography-preset="original-website"] .footer-brand p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .05) !important; }
body[data-usc-typography-preset="original-website"] .catalog-intro p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .service-detail-main > p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .auth-intro p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .account-welcome p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .address-heading p:not([style*="font-size"]),
body[data-usc-typography-preset="original-website"] .address-form-intro p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 1px) !important; }
body[data-usc-typography-preset="original-website"] .catalog-intro p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .service-detail-main > p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .auth-intro p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .account-welcome p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .address-heading p:not([style*="line-height"]),
body[data-usc-typography-preset="original-website"] .address-form-intro p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .15) !important; }
body[data-usc-typography-preset="original-website"] .information-card p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 2px) !important; }
body[data-usc-typography-preset="original-website"] .information-card p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .1) !important; }
body[data-usc-typography-preset="original-website"] .managed-page .information-card p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .15) !important; }
body[data-usc-typography-preset="original-website"] .managed-page-content p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) + .15) !important; }
body[data-usc-typography-preset="original-website"] :is(.booking-error p, .booking-help):not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 4px) !important; }
body[data-usc-typography-preset="original-website"] .booking-disclosure:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-desktop-size, 16px) - 4px) !important; }
body[data-usc-typography-preset="original-website"] :is(.booking-error p, .booking-help, .booking-disclosure):not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-desktop-line-height, 1.65) - .05) !important; }
body[data-usc-typography-preset="original-website"] :is(.service-card, .steps-grid) h3:not([style*="letter-spacing"]) { letter-spacing: -.03em !important; }
body[data-usc-typography-preset="original-website"] .footer-grid h2:not([style*="font-weight"]) { font-weight: 700 !important; }
body[data-usc-typography-preset="original-website"] .footer-grid h2:not([style*="letter-spacing"]) { letter-spacing: .08em !important; }
body[data-usc-typography-preset="original-website"] .button:not([style*="font-size"]) { font-size: calc(var(--usc-button-desktop-size, 14px) - 1px) !important; }
body[data-usc-typography-preset="original-website"] :is(.search-form button, .zone-form button):not([style*="font-size"]) { font-size: calc(var(--usc-button-desktop-size, 14px) - 2px) !important; }
body[data-usc-typography-preset="original-website"] :is(.zone-form button, .auth-submit):not([style*="font-weight"]) { font-weight: 800 !important; }
body[data-usc-typography-preset="original-website"] .search-form button:not([style*="font-weight"]) { font-weight: 750 !important; }
body[data-usc-typography-preset="original-website"] :is(.form-field label, .zone-form label):not([style*="font-size"]) { font-size: calc(var(--usc-label-desktop-size, 14px) - 2px) !important; }
body[data-usc-typography-preset="original-website"] :is(.form-field label, .zone-form label):not([style*="font-weight"]) { font-weight: 800 !important; }

@media (max-width: 650px) {
    body[data-usc-typography-preset="original-website"] .eyebrow:not([style*="font-size"]) { font-size: calc(var(--usc-caption-mobile-size, 14px) - 5px) !important; }
    body[data-usc-typography-preset="original-website"] :is(.section-index, .service-category):not([style*="font-size"]) { font-size: calc(var(--usc-caption-mobile-size, 14px) - 4px) !important; }
    body[data-usc-typography-preset="original-website"] .eyebrow:not([style*="letter-spacing"]) { letter-spacing: .16em !important; }
    body[data-usc-typography-preset="original-website"] .hero-content > p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-mobile-size, 16px) - 3px) !important; }
    body[data-usc-typography-preset="original-website"] .hero-content > p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-mobile-line-height, 1.65) + .05) !important; }
    body[data-usc-typography-preset="original-website"] .homepage-slide-copy p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-mobile-size, 16px) - 2px) !important; }
    body[data-usc-typography-preset="original-website"] .homepage-slide-copy p:not([style*="line-height"]) { line-height: var(--usc-paragraph-mobile-line-height, 1.65) !important; }
    body[data-usc-typography-preset="original-website"] .catalog-intro p:not([style*="font-size"]) { font-size: calc(var(--usc-paragraph-mobile-size, 16px) - 3px) !important; }
    body[data-usc-typography-preset="original-website"] .catalog-intro p:not([style*="line-height"]) { line-height: calc(var(--usc-paragraph-mobile-line-height, 1.65) + .1) !important; }
    body[data-usc-typography-preset="original-website"] .information-card h2:not([style*="font-size"]) { font-size: calc(var(--usc-h2-mobile-size, 28px) - 7px) !important; }
    body[data-usc-typography-preset="original-website"] .auth-card h2:not([style*="font-size"]) { font-size: calc(var(--usc-h2-mobile-size, 28px) - 1px) !important; }
    body[data-usc-typography-preset="original-website"] .account-card h2:not([style*="font-size"]) { font-size: calc(var(--usc-h2-mobile-size, 28px) - 4px) !important; }
}

/* Preserve the About page's verified component-specific original typography. */
body[data-usc-typography-preset="original-website"] .managed-page-about .managed-page-content h1:not([style*="font-size"]) {
    font-size: clamp(28px, 3vw, 38px) !important;
}
body[data-usc-typography-preset="original-website"] .managed-page-about .managed-page-content p:not([style*="line-height"]) {
    line-height: 1.85 !important;
}

/* Shared, published typography for page-level introductions only. */
.managed-page-about .information-intro > p { width: 100%; max-width: none !important; }
body[data-usc-page-intro-typography="enabled"] :is(.information-intro, .catalog-intro-grid > div:first-child, .auth-intro, .account-welcome, .address-heading, .address-form-intro) > p {
    width: 100%;
    max-width: none !important;
    color: var(--usc-page-intro-color, #285444) !important;
    font-family: var(--usc-page-intro-font-family, Inter), system-ui, sans-serif !important;
    font-size: var(--usc-page-intro-desktop-size, 18px) !important;
    font-weight: var(--usc-page-intro-weight, 500) !important;
    line-height: var(--usc-page-intro-desktop-line-height, 1.65) !important;
    letter-spacing: var(--usc-page-intro-letter-spacing, 0em) !important;
}

/* Persisted editor spacing must outrank page-template defaults and published typography tokens. */
.managed-page-content p.usc-line-height-12:not([style*="line-height"]) { line-height: 1.2 !important; }
.managed-page-content p.usc-line-height-14:not([style*="line-height"]) { line-height: 1.4 !important; }
.managed-page-content p.usc-line-height-15:not([style*="line-height"]) { line-height: 1.5 !important; }
.managed-page-content p.usc-line-height-16:not([style*="line-height"]) { line-height: 1.6 !important; }
.managed-page-content p.usc-line-height-165:not([style*="line-height"]) { line-height: 1.65 !important; }
.managed-page-content p.usc-line-height-18:not([style*="line-height"]) { line-height: 1.8 !important; }
.managed-page-content p.usc-line-height-20:not([style*="line-height"]) { line-height: 2 !important; }
.managed-page-content p[class*="usc-paragraph-gap-"]:not([style*="margin"]) { margin-block-end: 0 !important; }
.managed-page-content p.usc-paragraph-gap-0:not([style*="margin"]) { margin-block-end: 0 !important; }
.managed-page-content p.usc-paragraph-gap-4:not([style*="margin"]) { margin-block-end: 4px !important; }
.managed-page-content p.usc-paragraph-gap-8:not([style*="margin"]) { margin-block-end: 8px !important; }
.managed-page-content p.usc-paragraph-gap-12:not([style*="margin"]) { margin-block-end: 12px !important; }
.managed-page-content p.usc-paragraph-gap-16:not([style*="margin"]) { margin-block-end: 16px !important; }
.managed-page-content p.usc-paragraph-gap-24:not([style*="margin"]) { margin-block-end: 24px !important; }
.managed-page-content :is(ul, ol)[class*="usc-list-spacing-"]:not([style*="margin"]) { margin-block: 0 !important; }
.managed-page-content :is(ul, ol).usc-list-spacing-0:not([style*="margin"]) { margin-block: 0 !important; }
.managed-page-content :is(ul, ol).usc-list-spacing-8:not([style*="margin"]) { margin-block: 8px !important; }
.managed-page-content :is(ul, ol).usc-list-spacing-12:not([style*="margin"]) { margin-block: 12px !important; }
.managed-page-content :is(ul, ol).usc-list-spacing-16:not([style*="margin"]) { margin-block: 16px !important; }
.managed-page-content :is(ul, ol).usc-list-spacing-24:not([style*="margin"]) { margin-block: 24px !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-0 > li + li { margin-block-start: 0 !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-4 > li + li { margin-block-start: 4px !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-6 > li + li { margin-block-start: 6px !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-8 > li + li { margin-block-start: 8px !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-12 > li + li { margin-block-start: 12px !important; }
.managed-page-content :is(ul, ol).usc-list-item-gap-16 > li + li { margin-block-start: 16px !important; }
.managed-page-content :is(ul, ol)[class*="usc-list-item-gap-"] > li > p:first-child:not([class*="usc-paragraph-gap-"]):not([style*="margin"]) { margin-block-start: 0; }
.managed-page-content :is(ul, ol)[class*="usc-list-item-gap-"] > li > p:last-child:not([class*="usc-paragraph-gap-"]):not([style*="margin"]) { margin-block-end: 0; }

@media (max-width: 650px) {
    body[data-usc-page-intro-typography="enabled"] :is(.information-intro, .catalog-intro-grid > div:first-child, .auth-intro, .account-welcome, .address-heading, .address-form-intro) > p {
        font-size: var(--usc-page-intro-mobile-size, 16px) !important;
        line-height: var(--usc-page-intro-mobile-line-height, 1.6) !important;
    }
}
