/* Premium display typeface.
   Playfair Display replaces Georgia everywhere the site already chose a serif,
   keeping each rule's own size and leading. Playfair is the closest widely
   available display serif to Georgia in x-height and width, so the Georgia
   fallback in the stack is a real stand-in rather than a different-looking page
   if the webfont is slow or blocked. Weights are nudged one step because Playfair
   runs a little lighter than Georgia at the same numeric weight. */
:root{
  --font-display:"Playfair Display",Georgia,"Times New Roman",serif;
  --font-ui:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.brand-mark{font-family:var(--font-display);font-weight:700}
.hero h1,.page-hero h1{font-family:var(--font-display);font-weight:600}
.hero-reservation-card>strong{font-family:var(--font-display);font-weight:500}
.section-title h2{font-family:var(--font-display);font-weight:600}
.editorial-number{font-family:var(--font-display);font-weight:500}
.why-grid h3{font-family:var(--font-display);font-weight:500}
.comparison-card h3{font-family:var(--font-display);font-weight:500}
.horse-card h3{font-family:var(--font-display);font-weight:500}
.horse-number{font-family:var(--font-display);font-weight:500}
.gallery-item b{font-family:var(--font-display);font-weight:500}
.membership-banner h2{font-family:var(--font-display);font-weight:500}
.member-card-preview b,.member-mini-card b{font-family:var(--font-display);font-weight:500}
.product-card h3{font-family:var(--font-display);font-weight:500}
.location-copy h2{font-family:var(--font-display);font-weight:500}
.closing-cta h2{font-family:var(--font-display);font-weight:500}
.card-head h2{font-family:var(--font-display);font-weight:500}
.success-modal h2{font-family:var(--font-display);font-weight:500}
.member-overview h2{font-family:var(--font-display);font-weight:500}
.level-card h3{font-family:var(--font-display);font-weight:500}
.membership-info-grid h3{font-family:var(--font-display);font-weight:500}
.order-summary h2{font-family:var(--font-display);font-weight:500}
.auth-card h1{font-family:var(--font-display);font-weight:500}
.dashboard-head h1{font-family:var(--font-display);font-weight:500}
.member-dashboard-card h2{font-family:var(--font-display);font-weight:500}
.member-seal b{font-family:var(--font-display);font-weight:500}
.dashboard-stat>b{font-family:var(--font-display);font-weight:500}
.admin-side h3{font-family:var(--font-display);font-weight:500}
.admin-head h1{font-family:var(--font-display);font-weight:500}
.admin-grid h2,.admin-table-card h2{font-family:var(--font-display);font-weight:500}
.home-editor-bar h2{font-family:var(--font-display);font-weight:500}
.admin-form-section h3{font-family:var(--font-display);font-weight:500}
.feature-editor>b{font-family:var(--font-display);font-weight:500}
.admin-media-copy>b{font-family:var(--font-display);font-weight:500}
.visual-cms-toolbar>div:first-child>b{font-family:var(--font-display);font-weight:500}
.section-number{font-family:var(--font-display);font-weight:500}
.media-library-toolbar h2{font-family:var(--font-display);font-weight:500}
.media-empty b{font-family:var(--font-display);font-weight:500}
.media-picker-modal>header h2{font-family:var(--font-display);font-weight:500}
.v5-calendar-head h2,.v5-payment-form h2,.v5-payment-list-head h2,.v5-wa-settings-head h2{font-family:var(--font-display);font-weight:500}
.v5-day-number>b{font-family:var(--font-display);font-weight:500}
.v5-booking-drawer>header h2{font-family:var(--font-display);font-weight:500}
.v5-booking-drawer h3{font-family:var(--font-display);font-weight:500}
.v6-card>h2,.v6-detail h2{font-family:var(--font-display);font-weight:500}
.v6-card h3{font-family:var(--font-display);font-weight:500}
.v6-list header h2{font-family:var(--font-display);font-weight:500}
.v6-list>button em{font-family:var(--font-display);font-weight:500}
.v6-kpis b,.coach-kpis b{font-family:var(--font-display);font-weight:500}
.v6-coach-grid h3{font-family:var(--font-display);font-weight:500}
.v6-toolbar h2{font-family:var(--font-display);font-weight:500}
.coach-portal>header h1{font-family:var(--font-display);font-weight:500}
.coach-list-head h2{font-family:var(--font-display);font-weight:500}
.v7-kpis b{font-family:var(--font-display);font-weight:500}
.hero-copy:after{font-family:var(--font-display);font-weight:600}
.hero h1,.page-hero h1,.section-title h2,.membership-banner h2,.location-copy h2,.closing-cta h2,.admin-head h1,.dashboard-head h1,.auth-card h1,.member-overview h2,.level-card h3,.product-card h3,.comparison-card h3,.admin-grid h2,.admin-table-card h2,.coach-list-head h2,.v7-report-toolbar h2,.v7-card h3{font-family:var(--font-display);font-weight:500}
.why-grid h3,.gallery-item b,.footer-brand,.footer b,.location-facts b{font-family:var(--font-display);font-weight:500}
.member-card-preview:after,.member-mini-card:after,.member-dashboard-card:after{font-family:var(--font-display);font-weight:600}
.hero-brand-mark{font-family:var(--font-display);font-weight:600}
.hero-facts b,.hero-service-card strong{font-family:var(--font-display);font-weight:600}
.hero-service-card>div b{font-family:var(--font-display);font-weight:600}
.gallery-item-meta b{font-family:var(--font-display);font-weight:600}
.gallery-grid--v10 .gallery-item>i{font-family:var(--font-display);font-weight:600}
.admin-monogram{font-family:var(--font-display);font-weight:600}
.admin-brand-lockup h3{font-family:var(--font-display);font-weight:600}
.admin-command-hero h2{font-family:var(--font-display);font-weight:600}
.admin-stats--v11 b{font-family:var(--font-display);font-weight:600}
.member-dashboard-topbar h1{font-family:var(--font-display);font-weight:600}
.member-kpis b{font-family:var(--font-display);font-weight:600}
.member-next-card h2{font-family:var(--font-display);font-weight:600}
.member-panel-head h2{font-family:var(--font-display);font-weight:600}
.member-panel-head>b{font-family:var(--font-display);font-weight:600}
.member-achievement-list em{font-family:var(--font-display);font-weight:600}
.member-reward-feature b{font-family:var(--font-display);font-weight:600}
.member-booking-main h3{font-family:var(--font-display);font-weight:600}
.member-booking-total b{font-family:var(--font-display);font-weight:600}
.member-empty b{font-family:var(--font-display);font-weight:600}
.jenggala-member-card-watermark{font-family:var(--font-display);font-weight:700}
.jenggala-member-level b{font-family:var(--font-display);font-weight:600}
.jenggala-member-card-copy h3{font-family:var(--font-display);font-weight:600}
.home-riding-pathway-intro h3{font-family:var(--font-display);font-weight:600}
.home-riding-pathway-steps i{font-family:var(--font-display);font-weight:600}
.home-riding-pathway-steps b{font-family:var(--font-display);font-weight:600}
.riding-school-hero h1{font-family:var(--font-display);font-weight:600}
.riding-school-hero-panel>b{font-family:var(--font-display);font-weight:600}
.program-heading h2{font-family:var(--font-display);font-weight:600}
.riding-pathway-grid article>div span{font-family:var(--font-display);font-weight:600}
.riding-pathway-grid h3{font-family:var(--font-display);font-weight:600}
.riding-includes-grid h2{font-family:var(--font-display);font-weight:600}
.riding-includes-grid article h3{font-family:var(--font-display);font-weight:600}
.booking-hero-v12 h1{font-family:var(--font-display);font-weight:600}
.booking-v12-heading h2{font-family:var(--font-display);font-weight:600}
.booking-service-cards h3{font-family:var(--font-display);font-weight:600}
.booking-package-options button>strong{font-family:var(--font-display);font-weight:600}
.membership-hero-v12 h1{font-family:var(--font-display);font-weight:600}
.membership-hero-summary b{font-family:var(--font-display);font-weight:600}
.membership-benefit-grid h3{font-family:var(--font-display);font-weight:600}
.membership-progress-panel h2{font-family:var(--font-display);font-weight:600}
.production-error h1,.payment-portal h1,.payment-portal h2{font-family:var(--font-display);font-weight:500}
.member-verify-state h1{font-family:var(--font-display);font-weight:600}
.rider-progress-date b{font-family:var(--font-display);font-weight:600}
.rider-progress-score b{font-family:var(--font-display);font-weight:600}
.rider-progress-body h3{font-family:var(--font-display);font-weight:600}
.horse-ops-list header h2{font-family:var(--font-display);font-weight:600}
.horse-ops-hero h2{font-family:var(--font-display);font-weight:600}
.safety-hero h1{font-family:var(--font-display);font-weight:600}
.safety-booking-card h2{font-family:var(--font-display);font-weight:600}
.safety-form-card h2{font-family:var(--font-display);font-weight:600}
.safety-form-card section h3{font-family:var(--font-display);font-weight:600}
.safety-admin-list header h2{font-family:var(--font-display);font-weight:600}
.smart-match-rank{font-family:var(--font-display);font-weight:600}
.nav-panel-head strong{font-family:var(--font-display);font-weight:600}
.nav-links a,.nav-account-link{font-family:var(--font-display);font-weight:600}
.empty-state.compact-public h2{font-family:var(--font-display);font-weight:600}
.not-found-title{font-family:var(--font-display);font-weight:600}
.launch-readiness-head h2{font-family:var(--font-display);font-weight:600}
.price-list-hero h1{font-family:var(--font-display);font-weight:600}
.price-list-hero-note>b{font-family:var(--font-display);font-weight:600}
.price-program-number{font-family:var(--font-display);font-weight:700}
.price-program-grid h3,.student-price-grid h3,.photo-price-grid h3{font-family:var(--font-display);font-weight:600}
.price-program-grid strong{font-family:var(--font-display);font-weight:600}
.official-package-card h3{font-family:var(--font-display);font-weight:600}
.official-package-card>strong{font-family:var(--font-display);font-weight:600}
.student-pricing-heading h2{font-family:var(--font-display);font-weight:600}
.student-price-grid strong{font-family:var(--font-display);font-weight:600}
.photo-price-grid strong{font-family:var(--font-display);font-weight:600}
.passport-level-badge b{font-family:var(--font-display);font-weight:600}
.passport-level-card header h3{font-family:var(--font-display);font-weight:600}
.certificate-card-copy h3{font-family:var(--font-display);font-weight:600}
.home-page-v19 .hero h1{font-family:var(--font-display);font-weight:500}
.home-page-v19 .hero-fallback-art span{font-family:var(--font-display);font-weight:600}
.membership-cms-intro h2{font-family:var(--font-display);font-weight:500}
.membership-cms-badge b{font-family:var(--font-display);font-weight:600}
.membership-cms-level header h3{font-family:var(--font-display);font-weight:500}
.site-shell--editorial #primary-nav .nav-links a, .site-shell--editorial #primary-nav .nav-account-link{font-family:var(--font-display);font-weight:600}
.home-page-v20 .hero h1, .home-page-v20 .hero--v12 .hero-copy h1{font-family:var(--font-display);font-weight:500}
.home-page-v20 .home-riding-pathway-intro h3{font-family:var(--font-display);font-weight:500}
.home-page-v20 .dark-section::before{font-family:var(--font-display);font-weight:500}
.home-page-v20 .faq-list summary{font-family:var(--font-display);font-weight:500}
.membership-control-v21__levels header b{font-family:var(--font-display);font-weight:500}
.home-membership-journey-v21 header b{font-family:var(--font-display);font-weight:600}
.home-page-v212 .landing-banner-v212 h1{font-family:var(--font-display);font-weight:500}
.home-page-v212 .landing-service-v212 h2{font-family:var(--font-display);font-weight:500}
.home-page-v212 .home-riding-pathway-intro h3{font-family:var(--font-display);font-weight:500}
.home-page-v212 .home-riding-pathway-steps b{font-family:var(--font-display);font-weight:500}
.passport-face .passport-level-name{font-family:var(--font-display);font-weight:500}
.passport-details h4{font-family:var(--font-display);font-weight:500}
.shop-modal-v219 h2{font-family:var(--font-display);font-weight:600}
.shop-modal-buy-v219 strong{font-family:var(--font-display);font-weight:600}
.product-detail-body-v2111 h1{font-family:var(--font-display);font-weight:600}
.product-detail-price-v2111 strong{font-family:var(--font-display);font-weight:600}
.product-detail-total-v2111{font-family:var(--font-display);font-weight:600}
.product-detail-related-v2111 h2{font-family:var(--font-display);font-weight:600}
.booking-pay-head-v2113 h3{font-family:var(--font-display);font-weight:600}
.booking-pay-plan-v2113 b{font-family:var(--font-display);font-weight:600}
.payment-plan-v2113 b{font-family:var(--font-display);font-weight:600}
.passport-v2114 .passport-face .passport-level-name{font-family:var(--font-display);font-weight:500}

/* Display type carries the brand, so headlines get slightly tighter tracking. */
.hero h1,.page-hero h1,.home-page-v212 .landing-banner-v212 h1,
.booking-hero-v12 h1,.membership-hero-v12 h1,.price-list-hero h1,
.riding-school-hero h1,.safety-hero h1,.product-detail-body-v2111 h1{letter-spacing:-.018em}
.section-title h2,.membership-banner h2,.location-copy h2,.closing-cta h2,
.home-page-v212 .landing-service-v212 h2,.product-detail-related-v2111 h2{letter-spacing:-.01em}
.passport-v2114 .passport-face .passport-level-name{font-weight:500;letter-spacing:0}

/* Eyebrows, labels and buttons stay in the UI face: small text needs the grotesque. */
.section-title>span,.landing-eyebrow-v212,.page-hero>span,
.member-panel-head>span,.booking-v12-heading small,
.button,.nav-mobile-cta,.icon-text{font-family:var(--font-ui)}

