/* ========================================================================== */
/* Safari Connect Hub — Global Typography System / v1.10.304              */
/* Barlow Condensed = editorial headings | Poppins = body + marketplace UI    */
/* ========================================================================== */
:root{
    --asc-font-heading:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
    --asc-font-body:Poppins,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    --asc-type-body:16px;
    --asc-type-nav:14px;
    --asc-type-hero:50px;
    --asc-type-section:36px;
    --asc-type-subheading:26px;
    --asc-type-card:19px;
    --asc-type-meta:13px;
}

/* Base public typography. */
html body:not(.wp-admin){
    font-family:var(--asc-font-body)!important;
    font-size:var(--asc-type-body);
    line-height:1.62;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
html body:not(.wp-admin) input,
html body:not(.wp-admin) select,
html body:not(.wp-admin) textarea,
html body:not(.wp-admin) button,
html body:not(.wp-admin) .button,
html body:not(.wp-admin) .btn{
    font-family:var(--asc-font-body)!important;
}
html body:not(.wp-admin) p,
html body:not(.wp-admin) li,
html body:not(.wp-admin) dd,
html body:not(.wp-admin) dt,
html body:not(.wp-admin) label,
html body:not(.wp-admin) small,
html body:not(.wp-admin) span{
    font-family:var(--asc-font-body);
}

/* Editorial heading family everywhere public-facing. */
html body:not(.wp-admin) h1,
html body:not(.wp-admin) h2,
html body:not(.wp-admin) h3,
html body:not(.wp-admin) h4,
html body:not(.wp-admin) h5,
html body:not(.wp-admin) h6,
html body:not(.wp-admin) .tmc-brand__wordmark strong,
html body:not(.wp-admin) .tmc-site-footer__tagline,
html body:not(.wp-admin) [class*="__title"],
html body:not(.wp-admin) [class*="__heading"] strong{
    font-family:var(--asc-font-heading)!important;
}
html body:not(.wp-admin) h1,
html body:not(.wp-admin) h2,
html body:not(.wp-admin) h3,
html body:not(.wp-admin) h4{
    letter-spacing:-.01em;
}

/* Main type scale — deliberately restrained. */
html body:not(.wp-admin) h1{font-size:var(--asc-type-hero);font-weight:700;line-height:1.08}
html body:not(.wp-admin) h2{font-size:var(--asc-type-section);font-weight:700;line-height:1.12}
html body:not(.wp-admin) h3{font-size:var(--asc-type-subheading);font-weight:600;line-height:1.18}
html body:not(.wp-admin) h4{font-size:21px;font-weight:600;line-height:1.24}

/* Header / mega-menu / footer UI uses Poppins and avoids oversized nav. */
html body:not(.wp-admin) .tmc-site-header,
html body:not(.wp-admin) .tmc-site-header a,
html body:not(.wp-admin) .tmc-site-header button,
html body:not(.wp-admin) .tmc-destination-mega a,
html body:not(.wp-admin) .tmc-site-footer,
html body:not(.wp-admin) .tmc-site-footer a{
    font-family:var(--asc-font-body)!important;
}
html body:not(.wp-admin) .tmc-site-header__nav>ul>li>a,
html body:not(.wp-admin) .tmc-site-header__actions>a,
html body:not(.wp-admin) .tmc-site-header__actions>button{
    font-size:var(--asc-type-nav)!important;
}
html body:not(.wp-admin) .tmc-brand__wordmark strong{font-size:20px!important;line-height:1.05}
html body:not(.wp-admin) .tmc-brand__wordmark small{font-family:var(--asc-font-body)!important;font-size:9px!important;letter-spacing:.31em!important}
html body:not(.wp-admin) .tmc-destination-mega__header strong{font-family:var(--asc-font-heading)!important;font-size:18px!important}
html body:not(.wp-admin) .tmc-destination-mega h3{font-family:var(--asc-font-heading)!important;font-size:17px!important}
html body:not(.wp-admin) .tmc-destination-mega__countries a,
html body:not(.wp-admin) .tmc-destination-mega__country-grid a{font-family:var(--asc-font-body)!important;font-size:14px!important}
html body:not(.wp-admin) .tmc-destination-mega__popular strong{font-family:var(--asc-font-body)!important;font-size:13px!important}
html body:not(.wp-admin) .tmc-site-footer h3{font-family:var(--asc-font-heading)!important;font-size:17px!important}
html body:not(.wp-admin) .tmc-site-footer__tagline{font-size:18px!important}
html body:not(.wp-admin) .tmc-site-footer__intro,
html body:not(.wp-admin) .tmc-site-footer__links a,
html body:not(.wp-admin) .tmc-site-footer .menu a{font-size:13px!important}

/* Homepage hero. */
html body.home .tmc-home-hero__copy h1{
    font-family:var(--asc-font-heading)!important;
    font-size:var(--asc-type-hero)!important;
    font-weight:700!important;
    letter-spacing:-.015em!important;
    line-height:1.06!important;
    max-width:680px;
}
html body.home .tmc-home-hero__copy p{font-size:16px!important;line-height:1.65!important}
html body.home .tmc-home-hero__eyebrow,
html body.home [class*="tmc-home-"][class*="__eyebrow"]{font-family:var(--asc-font-body)!important;font-size:12px!important}
html body.home .tmc-home-search,
html body.home .tmc-home-search *{font-family:var(--asc-font-body)!important}
html body.home .tmc-home-search__field select,
html body.home .tmc-home-search__field input{font-size:14px!important}

/* Homepage section headings use one consistent scale. */
html body.home .tmc-home-parks h2,
html body.home .tmc-home-tours__heading h2,
html body.home .tmc-home-experiences__heading h2,
html body.home .tmc-home-how__head h2,
html body.home .tmc-home-why__heading h2,
html body.home .tod-home-featured-heading h2,
html body.home .tmc-home-guides__heading h2{
    font-family:var(--asc-font-heading)!important;
    font-size:var(--asc-type-section)!important;
    font-weight:700!important;
    letter-spacing:-.012em!important;
    line-height:1.12!important;
}
html body.home .tmc-home-parks__heading p,
html body.home .tmc-home-tours__heading p,
html body.home .tmc-home-experiences__heading p,
html body.home .tmc-home-how__head p,
html body.home .tmc-home-why__heading p,
html body.home .tod-home-featured-heading p,
html body.home .tmc-home-guides__heading p{font-size:15px!important;line-height:1.65!important}

/* Homepage cards — keep visual cards compact instead of inheriting H3 scale. */
html body.home .tmc-home-park-card__title{font-family:var(--asc-font-heading)!important;font-size:clamp(21px,1.75vw,27px)!important;line-height:1.08!important}
html body.home .tmc-home-experience__title,
html body.home .tmc-home-guide-compact__title,
html body.home .tod-home-operator-card__name,
html body.home .tmc-tour-card__title,
html body.home .tmc-home-tour-card__title{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-card)!important;line-height:1.2!important}
html body.home .tmc-home-guide-feature__title{font-family:var(--asc-font-heading)!important;font-size:30px!important;line-height:1.13!important}
html body.home .tmc-home-how__step h3{font-family:var(--asc-font-heading)!important;font-size:22px!important}
html body.home .tmc-home-how__step p,
html body.home .tmc-home-experience__subtitle,
html body.home .tmc-home-guide-compact__excerpt{font-size:13px!important;line-height:1.58!important}

/* Destinations directory and country/park detail pages. */
html body:not(.wp-admin) .tmc-dest-landing h1,
html body:not(.wp-admin) .tmc-country-v11012__hero-copy h1,
html body:not(.wp-admin) .tmc-park-v11012__hero-copy h1{font-family:var(--asc-font-heading)!important;font-size:clamp(38px,4vw,var(--asc-type-hero))!important;font-weight:600!important;line-height:1.07!important}
html body:not(.wp-admin) .tmc-dest-landing h2,
html body:not(.wp-admin) .tmc-country-v11012 h2,
html body:not(.wp-admin) .tmc-park-v11012 h2{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-section)!important;line-height:1.13!important}
html body:not(.wp-admin) .tmc-dest-landing h3,
html body:not(.wp-admin) .tmc-country-v11012 h3,
html body:not(.wp-admin) .tmc-park-v11012 h3{font-family:var(--asc-font-heading)!important;font-size:23px!important;line-height:1.2!important}
html body:not(.wp-admin) .tmc-dest-country-index__card strong,
html body:not(.wp-admin) .tmc-dest-country-group__title strong,
html body:not(.wp-admin) .tmc-country-v11012__destination-copy strong,
html body:not(.wp-admin) .tmc-country-v11012__region-card h3{font-family:var(--asc-font-heading)!important}

/* Safari Experiences archive + long-form single experience. */
html body:not(.wp-admin) .tmc-exp h1,
html body:not(.wp-admin) .tmc-safari-experience h1{font-family:var(--asc-font-heading)!important;font-size:clamp(38px,4vw,var(--asc-type-hero))!important;line-height:1.07!important}
html body:not(.wp-admin) .tmc-exp h2,
html body:not(.wp-admin) .tmc-safari-experience h2{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-section)!important;line-height:1.13!important}
html body:not(.wp-admin) .tmc-exp h3,
html body:not(.wp-admin) .tmc-safari-experience h3{font-family:var(--asc-font-heading)!important;font-size:23px!important;line-height:1.2!important}
html body:not(.wp-admin) .tmc-exp-card__title,
html body:not(.wp-admin) .tmc-exp-interest-card__copy strong{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-card)!important;line-height:1.2!important}

/* All Tours / tour search / canonical tour cards. */
html body:not(.wp-admin) .tmc-all-tours__hero h1{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-hero)!important;font-weight:600!important;line-height:1.07!important}
html body:not(.wp-admin) .tmc-all-tours__section-head h2,
html body:not(.wp-admin) .tmc-all-tours__results-head h2,
html body:not(.wp-admin) .tmc-all-tours__discover-head h2,
html body:not(.wp-admin) .tmc-all-tours__guide-heading h2{font-family:var(--asc-font-heading)!important;font-size:32px!important;line-height:1.15!important}
html body:not(.wp-admin) .tmc-tour-card__title,
html body:not(.wp-admin) .tmc-tour-result-card h3,
html body:not(.wp-admin) .st-tour-card h3{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-card)!important;line-height:1.22!important}
html body:not(.wp-admin) .tmc-tour-card,
html body:not(.wp-admin) .tmc-tour-card *{font-family:var(--asc-font-body)}
html body:not(.wp-admin) .tmc-tour-card__title{font-family:var(--asc-font-heading)!important}

/* Tour Operator directory + profile plugin. */
html body:not(.wp-admin) .tod-directory,
html body:not(.wp-admin) .tod-operator-profile,
html body:not(.wp-admin) .tod-profile-template,
html body:not(.wp-admin) .tod-directory input,
html body:not(.wp-admin) .tod-directory select,
html body:not(.wp-admin) .tod-directory button{font-family:var(--asc-font-body)!important}
html body:not(.wp-admin) .tod-intro h2,
html body:not(.wp-admin) .tod-profile-identity h1,
html body:not(.wp-admin) .tod-section-heading h2,
html body:not(.wp-admin) .tod-company-card h2,
html body:not(.wp-admin) .tod-home-featured-heading h2{font-family:var(--asc-font-heading)!important}
html body:not(.wp-admin) .tod-operator-profile-v2 .tod-profile-identity h1{font-size:42px!important;line-height:1.08!important}
html body:not(.wp-admin) .tod-operator-profile-v2 .tod-section-heading h2{font-size:26px!important;line-height:1.18!important}
html body:not(.wp-admin) .tod-card-heading h3,
html body:not(.wp-admin) .tod-home-operator-card__name{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-card)!important;line-height:1.2!important}
html body:not(.wp-admin) .tod-operator-profile-v2 .tod-rich-text{font-size:15.5px!important;line-height:1.72!important}

/* About page. */
html body:not(.wp-admin) .tmc-about-page h1{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-hero)!important;line-height:1.08!important}
html body:not(.wp-admin) .tmc-about-page h2{font-family:var(--asc-font-heading)!important;font-size:var(--asc-type-section)!important;line-height:1.13!important}
html body:not(.wp-admin) .tmc-about-page h3{font-family:var(--asc-font-heading)!important;font-size:23px!important;line-height:1.2!important}
html body:not(.wp-admin) .tmc-about-hero__mantra{font-family:var(--asc-font-heading)!important;font-size:23px!important}

/* Common UI sizing. */
html body:not(.wp-admin) .tmc-home-destinations__view-all,
html body:not(.wp-admin) .tmc-home-parks__view-all,
html body:not(.wp-admin) .tmc-home-experiences__view-all,
html body:not(.wp-admin) .tmc-home-guides__view-all,
html body:not(.wp-admin) .tod-button,
html body:not(.wp-admin) .tod-profile-action,
html body:not(.wp-admin) .tmc-tour-card__cta{font-family:var(--asc-font-body)!important;font-size:var(--asc-type-nav)!important}
html body:not(.wp-admin) [class*="__meta"],
html body:not(.wp-admin) [class*="__eyebrow"],
html body:not(.wp-admin) .tod-eyebrow,
html body:not(.wp-admin) .tod-profile-label,
html body:not(.wp-admin) .tod-card-location,
html body:not(.wp-admin) .tod-card-stats span{font-family:var(--asc-font-body)!important}

/* Long-form content remains comfortable rather than tiny. */
html body:not(.wp-admin) .entry-content,
html body:not(.wp-admin) .tmc-v194-rich,
html body:not(.wp-admin) .tmc-all-tours__guide-content,
html body:not(.wp-admin) .tmc-safari-experience__content,
html body:not(.wp-admin) .tmc-about-page p{font-size:var(--asc-type-body);line-height:1.72}

@media(max-width:1024px){
    :root{--asc-type-hero:44px;--asc-type-section:34px;--asc-type-subheading:24px}
    html body:not(.wp-admin) .tod-operator-profile-v2 .tod-profile-identity h1{font-size:38px!important}
    html body.home .tmc-home-guide-feature__title{font-size:28px!important}
}

@media(max-width:767px){
    :root{--asc-type-body:16px;--asc-type-nav:14px;--asc-type-hero:36px;--asc-type-section:30px;--asc-type-subheading:22px;--asc-type-card:18px;--asc-type-meta:13px}
    html body:not(.wp-admin) h1{font-size:var(--asc-type-hero)!important}
    html body:not(.wp-admin) h2{font-size:var(--asc-type-section)!important}
    html body:not(.wp-admin) h3{font-size:var(--asc-type-subheading)!important}
    html body.home .tmc-home-hero__copy h1{font-size:36px!important;line-height:1.08!important}
    html body.home .tmc-home-hero__copy p{font-size:15.5px!important}
        html body.home .tmc-home-parks h2,
    html body.home .tmc-home-tours__heading h2,
    html body.home .tmc-home-experiences__heading h2,
    html body.home .tmc-home-how__head h2,
    html body.home .tmc-home-why__heading h2,
    html body.home .tod-home-featured-heading h2,
    html body.home .tmc-home-guides__heading h2{font-size:30px!important}
    html body:not(.wp-admin) .tod-operator-profile-v2 .tod-profile-identity h1{font-size:32px!important}
    html body:not(.wp-admin) .tod-operator-profile-v2 .tod-section-heading h2{font-size:23px!important}
    html body:not(.wp-admin) .tmc-all-tours__hero h1{font-size:36px!important}
    html body:not(.wp-admin) .tmc-all-tours__section-head h2,
    html body:not(.wp-admin) .tmc-all-tours__results-head h2,
    html body:not(.wp-admin) .tmc-all-tours__discover-head h2,
    html body:not(.wp-admin) .tmc-all-tours__guide-heading h2{font-size:28px!important}
}

/* ========================================================================== */
/* v1.10.125 — unified marketplace font-size scale                           */
/* The layer below intentionally loads last. It normalizes legacy component  */
/* font sizes without changing component layout, colors, or card dimensions. */
/* ========================================================================== */
:root{
    --asc-type-body:16px;
    --asc-type-nav:14px;
    --asc-type-hero:48px;
    --asc-type-section:32px;
    --asc-type-subheading:24px;
    --asc-type-card:18px;
    --asc-type-meta:13px;
    --asc-type-lead:17px;
    --asc-type-copy:15.5px;
    --asc-type-card-copy:14px;
    --asc-type-small:13px;
    --asc-type-eyebrow:11.5px;
    --asc-type-button:14px;
    --asc-type-form:15px;
    --asc-type-h4:20px;
}

/* Fluid display scale. Customizer values remain the desktop caps. */
html body:not(.wp-admin) h1{
    font-size:clamp(36px,3.45vw,var(--asc-type-hero))!important;
    line-height:1.08!important;
}
html body:not(.wp-admin) h2{
    font-size:clamp(28px,2.35vw,var(--asc-type-section))!important;
    line-height:1.14!important;
}
html body:not(.wp-admin) h3{
    font-size:clamp(21px,1.75vw,var(--asc-type-subheading))!important;
    line-height:1.2!important;
}
html body:not(.wp-admin) h4{
    font-size:var(--asc-type-h4)!important;
    line-height:1.25!important;
}
html body:not(.wp-admin) h5{font-size:18px!important;line-height:1.3!important}
html body:not(.wp-admin) h6{font-size:16px!important;line-height:1.35!important}

/* Reading copy and controls. */
html body:not(.wp-admin){font-size:var(--asc-type-body)!important;line-height:1.65}
html body:not(.wp-admin) .entry-content>p,
html body:not(.wp-admin) .entry-content>ul,
html body:not(.wp-admin) .entry-content>ol,
html body:not(.wp-admin) .tmc-v194-rich,
html body:not(.wp-admin) .tmc-safari-experience__content,
html body:not(.wp-admin) .tmc-all-tours__guide-content,
html body:not(.wp-admin) .tod-rich-text{font-size:var(--asc-type-body)!important;line-height:1.72!important}
html body:not(.wp-admin) input:not([type="checkbox"]):not([type="radio"]),
html body:not(.wp-admin) select,
html body:not(.wp-admin) textarea{font-size:var(--asc-type-form)!important;line-height:1.4!important}
html body:not(.wp-admin) button,
html body:not(.wp-admin) .button,
html body:not(.wp-admin) .btn,
html body:not(.wp-admin) [class*="__cta"],
html body:not(.wp-admin) [class*="__button"]{font-size:var(--asc-type-button)!important;line-height:1.2!important}

/* Eyebrows, breadcrumbs and metadata stay compact, but never microscopic. */
html body:not(.wp-admin) [class*="__eyebrow"],
html body:not(.wp-admin) .tod-eyebrow,
html body:not(.wp-admin) [class*="breadcrumb"],
html body:not(.wp-admin) .breadcrumbs{font-size:var(--asc-type-eyebrow)!important;line-height:1.35!important}
html body:not(.wp-admin) [class*="__meta"],
html body:not(.wp-admin) [class*="__kicker"],
html body:not(.wp-admin) .tod-profile-label,
html body:not(.wp-admin) .tod-card-location,
html body:not(.wp-admin) .tod-card-stats span{font-size:var(--asc-type-meta)!important;line-height:1.45!important}

/* Site header and both mega menus. */
html body:not(.wp-admin) .tmc-site-header__nav>ul>li>a,
html body:not(.wp-admin) .tmc-site-header__actions>a,
html body:not(.wp-admin) .tmc-site-header__actions>button{font-size:var(--asc-type-nav)!important}
html body:not(.wp-admin) .tmc-destination-mega a,
html body:not(.wp-admin) .tmc-experience-mega a{font-size:14px!important;line-height:1.35!important}
html body:not(.wp-admin) .tmc-destination-mega p,
html body:not(.wp-admin) .tmc-experience-mega p{font-size:13px!important;line-height:1.5!important}
html body:not(.wp-admin) .tmc-destination-mega h3,
html body:not(.wp-admin) .tmc-experience-mega h3{font-size:17px!important;line-height:1.2!important}

/* Homepage: balanced hierarchy and readable descriptions. */
html body.home .tmc-home-hero__copy h1{font-size:clamp(38px,3.75vw,var(--asc-type-hero))!important}
html body.home .tmc-home-hero__copy p{font-size:var(--asc-type-lead)!important;line-height:1.6!important}
html body.home .tmc-home-search__field label{font-size:12px!important;line-height:1.25!important}
html body.home .tmc-home-search__field select,
html body.home .tmc-home-search__field input{font-size:15px!important}
html body.home .tmc-home-parks h2,
html body.home .tmc-home-tours__heading h2,
html body.home .tmc-home-experiences__heading h2,
html body.home .tmc-home-why__heading h2,
html body.home .tod-home-featured-heading h2,
html body.home .tmc-home-guides__heading h2{font-size:clamp(28px,2.35vw,var(--asc-type-section))!important}
html body.home .tmc-home-parks__heading p,
html body.home .tmc-home-tours__heading p,
html body.home .tmc-home-experiences__heading p,
html body.home .tmc-home-why__heading p,
html body.home .tod-home-featured-heading p,
html body.home .tmc-home-guides__heading p{font-size:var(--asc-type-copy)!important;line-height:1.62!important}
html body.home .tmc-home-park-card__title{font-size:clamp(20px,1.55vw,25px)!important;line-height:1.1!important}
html body.home .tmc-home-experience__title,
html body.home .tmc-home-guide-compact__title,
html body.home .tod-home-operator-card__name,
html body.home .tmc-tour-card__title,
html body.home .tmc-home-tour-card__title{font-size:var(--asc-type-card)!important;line-height:1.22!important}
html body.home .tmc-home-experience__subtitle,
html body.home .tmc-home-guide-compact__excerpt,
html body.home .tmc-tour-card__meta,
html body.home .tmc-tour-card__location{font-size:var(--asc-type-card-copy)!important;line-height:1.5!important}

/* Canonical tour cards everywhere — readable without becoming bulky. */
html body:not(.wp-admin) .tmc-tour-card__title,
html body:not(.wp-admin) .tmc-tour-result-card h3,
html body:not(.wp-admin) .st-tour-card h3{font-size:var(--asc-type-card)!important;line-height:1.22!important}
html body:not(.wp-admin) .tmc-tour-card__location,
html body:not(.wp-admin) .tmc-tour-card__operator,
html body:not(.wp-admin) .tmc-tour-card__meta,
html body:not(.wp-admin) .tmc-tour-card__facts,
html body:not(.wp-admin) .tmc-tour-card__badges,
html body:not(.wp-admin) .tmc-tour-card__price-note{font-size:var(--asc-type-small)!important;line-height:1.45!important}
html body:not(.wp-admin) .tmc-tour-card__price,
html body:not(.wp-admin) .tmc-tour-card__amount{font-size:18px!important;line-height:1.2!important}

/* Tours directory and filters. */
html body:not(.wp-admin) .tmc-all-tours__hero h1{font-size:clamp(38px,3.5vw,var(--asc-type-hero))!important}
html body:not(.wp-admin) .tmc-all-tours__section-head h2,
html body:not(.wp-admin) .tmc-all-tours__results-head h2,
html body:not(.wp-admin) .tmc-all-tours__discover-head h2,
html body:not(.wp-admin) .tmc-all-tours__guide-heading h2{font-size:clamp(27px,2.1vw,31px)!important}
html body:not(.wp-admin) .tmc-all-tours label,
html body:not(.wp-admin) .tmc-all-tours__filter-label,
html body:not(.wp-admin) .tmc-all-tours__sidebar label{font-size:13.5px!important;line-height:1.35!important}
html body:not(.wp-admin) .tmc-all-tours__sidebar p,
html body:not(.wp-admin) .tmc-all-tours__results-copy,
html body:not(.wp-admin) .tmc-all-tours__helper{font-size:14px!important;line-height:1.55!important}

/* Destination directory, country and park pages. */
html body:not(.wp-admin) .tmc-dest-landing h1,
html body:not(.wp-admin) .tmc-country-v11012__hero-copy h1,
html body:not(.wp-admin) .tmc-park-v11012__hero-copy h1{font-size:clamp(38px,3.5vw,var(--asc-type-hero))!important}
html body:not(.wp-admin) .tmc-dest-landing h2,
html body:not(.wp-admin) .tmc-country-v11012 h2,
html body:not(.wp-admin) .tmc-park-v11012 h2{font-size:clamp(28px,2.3vw,var(--asc-type-section))!important}
html body:not(.wp-admin) .tmc-dest-landing h3,
html body:not(.wp-admin) .tmc-country-v11012 h3,
html body:not(.wp-admin) .tmc-park-v11012 h3{font-size:clamp(21px,1.7vw,var(--asc-type-subheading))!important}
html body:not(.wp-admin) .tmc-country-v11012 p,
html body:not(.wp-admin) .tmc-park-v11012 p{font-size:var(--asc-type-copy)!important;line-height:1.68!important}
html body:not(.wp-admin) .tmc-park-v11012__facts,
html body:not(.wp-admin) .tmc-country-v11012__facts,
html body:not(.wp-admin) .tmc-park-v11012__essentials{font-size:var(--asc-type-small)!important}
html body:not(.wp-admin) .tmc-park-v11012__nav a,
html body:not(.wp-admin) .tmc-country-v11012__nav a{font-size:13px!important;line-height:1.3!important}
html body:not(.wp-admin) .tmc-park-v11012__faq-question{font-size:16px!important;line-height:1.35!important}
html body:not(.wp-admin) .tmc-park-v11012__faq-answer{font-size:15px!important;line-height:1.65!important}

/* Safari Experiences archive and detail. */
html body:not(.wp-admin) .tmc-exp h1,
html body:not(.wp-admin) .tmc-safari-experience h1{font-size:clamp(38px,3.5vw,var(--asc-type-hero))!important}
html body:not(.wp-admin) .tmc-exp h2,
html body:not(.wp-admin) .tmc-safari-experience h2{font-size:clamp(28px,2.3vw,var(--asc-type-section))!important}
html body:not(.wp-admin) .tmc-exp h3,
html body:not(.wp-admin) .tmc-safari-experience h3{font-size:clamp(21px,1.7vw,var(--asc-type-subheading))!important}
html body:not(.wp-admin) .tmc-exp p,
html body:not(.wp-admin) .tmc-safari-experience p{font-size:var(--asc-type-copy)!important;line-height:1.68!important}
html body:not(.wp-admin) .tmc-exp-card__title,
html body:not(.wp-admin) .tmc-exp-interest-card__copy strong{font-size:var(--asc-type-card)!important}

/* Single tour detail: keep rich content comfortable and utility text legible. */
html body.single-st_tours .tmc-single-tour h1,
html body.single-st_tours .tmc-tour-single h1,
html body.single-st_tours .tmc-v194 h1{font-size:clamp(36px,3.3vw,46px)!important;line-height:1.08!important}
html body.single-st_tours .tmc-single-tour h2,
html body.single-st_tours .tmc-tour-single h2,
html body.single-st_tours .tmc-v194 h2{font-size:clamp(27px,2.2vw,31px)!important}
html body.single-st_tours .tmc-single-tour h3,
html body.single-st_tours .tmc-tour-single h3,
html body.single-st_tours .tmc-v194 h3{font-size:clamp(20px,1.6vw,23px)!important}
html body.single-st_tours .tmc-single-tour p,
html body.single-st_tours .tmc-tour-single p,
html body.single-st_tours .tmc-v194 p{font-size:15.5px!important;line-height:1.68!important}
html body.single-st_tours [class*="__label"],
html body.single-st_tours [class*="__meta"],
html body.single-st_tours [class*="__fact"]{font-size:13px!important;line-height:1.45!important}

/* Tour operators directory/profile. */
html body:not(.wp-admin) .tod-directory p,
html body:not(.wp-admin) .tod-operator-profile p,
html body:not(.wp-admin) .tod-profile-template p{font-size:15px!important;line-height:1.65!important}
html body:not(.wp-admin) .tod-operator-profile-v2 .tod-profile-identity h1{font-size:clamp(36px,3.3vw,44px)!important}
html body:not(.wp-admin) .tod-operator-profile-v2 .tod-section-heading h2{font-size:clamp(24px,2vw,28px)!important}
html body:not(.wp-admin) .tod-card-heading h3,
html body:not(.wp-admin) .tod-home-operator-card__name{font-size:var(--asc-type-card)!important}
html body:not(.wp-admin) .tod-directory label,
html body:not(.wp-admin) .tod-directory .tod-filter-label,
html body:not(.wp-admin) .tod-card-location,
html body:not(.wp-admin) .tod-card-stats span{font-size:13px!important}

/* Footer: larger than legacy 11–12px links, still visually secondary. */
html body:not(.wp-admin) .tmc-site-footer h3{font-size:16px!important;line-height:1.25!important}
html body:not(.wp-admin) .tmc-site-footer__tagline{font-size:18px!important;line-height:1.3!important}
html body:not(.wp-admin) .tmc-site-footer__intro,
html body:not(.wp-admin) .tmc-site-footer__links a,
html body:not(.wp-admin) .tmc-site-footer .menu a,
html body:not(.wp-admin) .tmc-site-footer p{font-size:13.5px!important;line-height:1.6!important}
html body:not(.wp-admin) .tmc-site-footer__legal,
html body:not(.wp-admin) .tmc-site-footer__copyright{font-size:12.5px!important;line-height:1.5!important}

/* Operator dashboard: functional UI must not inherit tiny legacy Traveler text. */
html body:not(.wp-admin) .tmc-dashboard{font-size:14px!important;line-height:1.55!important}
html body:not(.wp-admin) .tmc-dashboard h1{font-size:32px!important}
html body:not(.wp-admin) .tmc-dashboard h2{font-size:24px!important}
html body:not(.wp-admin) .tmc-dashboard h3{font-size:20px!important}
html body:not(.wp-admin) .tmc-dashboard label,
html body:not(.wp-admin) .tmc-dashboard th,
html body:not(.wp-admin) .tmc-dashboard td,
html body:not(.wp-admin) .tmc-dashboard .form-group,
html body:not(.wp-admin) .tmc-dashboard .tmc-dashboard__nav a{font-size:13.5px!important;line-height:1.45!important}
html body:not(.wp-admin) .tmc-dashboard input,
html body:not(.wp-admin) .tmc-dashboard select,
html body:not(.wp-admin) .tmc-dashboard textarea{font-size:14px!important}

/* Responsive typography — scale headings, not body copy, down on smaller screens. */
@media(max-width:1024px){
    html body:not(.wp-admin) h1{font-size:clamp(36px,5vw,42px)!important}
    html body:not(.wp-admin) h2{font-size:clamp(28px,3.8vw,31px)!important}
    html body:not(.wp-admin) h3{font-size:clamp(21px,2.8vw,23px)!important}
    html body.home .tmc-home-hero__copy h1{font-size:clamp(38px,5.1vw,44px)!important}
}
@media(max-width:767px){
    :root{
        --asc-type-body:16px;
        --asc-type-nav:14px;
        --asc-type-meta:13px;
        --asc-type-copy:15.5px;
        --asc-type-card-copy:14px;
        --asc-type-button:14px;
        --asc-type-form:16px;
    }
    html body:not(.wp-admin) h1{font-size:34px!important;line-height:1.1!important}
    html body:not(.wp-admin) h2{font-size:28px!important;line-height:1.16!important}
    html body:not(.wp-admin) h3{font-size:22px!important;line-height:1.22!important}
    html body:not(.wp-admin) h4{font-size:19px!important}
    html body.home .tmc-home-hero__copy h1{font-size:36px!important}
    html body.home .tmc-home-hero__copy p{font-size:16px!important}
    html body.home .tmc-home-park-card__title{font-size:21px!important}
    html body:not(.wp-admin) .tmc-tour-card__title{font-size:18px!important}
    html body:not(.wp-admin) .tmc-site-footer__intro,
    html body:not(.wp-admin) .tmc-site-footer__links a,
    html body:not(.wp-admin) .tmc-site-footer .menu a,
    html body:not(.wp-admin) .tmc-site-footer p{font-size:14px!important}
}
