/* ANTH format review v1.0 — presentation only; no content/asset replacements. */
body {
  --anth-format-font: "Microsoft YaHei", "PingFang SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --anth-format-ink: #173443;
  --anth-format-line: #d8e4eb;
  --anth-format-radius: 12px;
  --anth-format-space: 72px;
  font-family: var(--anth-format-font) !important;
}
body main :is(h1,h2,h3,h4,h5,h6,p,li,th,td,summary,label,input,select,textarea),
body #masthead .menu-link,
body #colophon :is(p,a,strong,div) {
  font-family: var(--anth-format-font) !important;
}
body main :is(h1,h2,h3) {
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  overflow-wrap: break-word;
  text-wrap: balance;
}
body main h1 { font-size: clamp(32px, 4vw, 56px) !important; }
body.home main h1 { font-size: clamp(36px, 5vw, 72px) !important; }
body main h2 { font-size: clamp(28px, 2.65vw, 38px) !important; }
body main h3 { font-size: clamp(20px, 1.65vw, 24px) !important; }
body:is(.page-id-2516,.page-id-2591,.page-id-2668) main .fl-builder-content > .fl-row:first-child h3 {
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 1.2px !important;
}
body main :is(p,li) { line-height: 1.85 !important; }
/* A stable body-text size, while retaining deliberately smaller labels/notes. */
body main :is(.fl-rich-text,.uabb-subheading) p,
body main :is(.tk-section,.mg-section,.mr-section,.tsg-section,.tm-section,.anth-hi-section,.anth-tag-section,.anth-case-section,.aip-legal__section) > p,
body main :is(.tk-wrap,.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap) > p:not([class*="note"]):not([class*="eyebrow"]):not([class*="updated"]):not([class*="meta"]):not([class*="lead"]) {
  font-size: 17px !important;
}
body main :is(.tk-lead,.mg-lead,.mr-lead,.tsg-lead,.tm-lead,.anth-hi-lead,.anth-tag-lead,.anth-ta-lead,.anth-case-deck) {
  font-size: 20px !important;
  line-height: 1.8 !important;
}
body main :is(.tk-note,.mg-note,.mr-note,.tsg-note,.tm-note,.anth-hi-note,.anth-tag-meta,.anth-ta-note,.anth-preview-onboard-note,.anth-case-disclosure) {
  font-size: 14px !important;
  line-height: 1.8 !important;
}
/* Shared controls: keep each original colour/meaning; normalize touch targets. */
body main :is(a.fl-button,a.anth-phase2d2a-button,a.tk-button,a.mg-button,a.mr-button,a.tsg-button,a.tm-button,a.anth-ta-button,a.anth-hi-button,a.anth-tag-button,a.anth-case-button),
body .wpforms-container button[type="submit"] {
  box-sizing: border-box !important;
  min-height: 48px !important;
  padding: 12px 26px !important;
  border-radius: 8px !important;
  font: 700 16px/1.5 var(--anth-format-font) !important;
  text-decoration: none !important;
}
body main a.fl-button :is(span,i) { line-height: 1.5 !important; }
body main :is(a,button,summary):focus-visible,
body #masthead :is(a,button):focus-visible {
  outline: 3px solid #e5b742 !important;
  outline-offset: 4px;
}
/* Preserve native header, all menu destinations and opaque dropdowns. */
body #masthead .menu-link { font-size: 16px !important; line-height: 1.5 !important; }
body:not(.ast-header-break-point) #ast-desktop-header .main-header-menu .sub-menu { min-width: 248px; }
body:not(.ast-header-break-point) #ast-desktop-header .main-header-menu .sub-menu .menu-link { padding: 14px 18px !important; }
/* Sections retain their original order, backgrounds and photography. */
body main :is(.tk-section,.mg-section,.mr-section,.tsg-section,.tm-section,.anth-hi-section,.anth-tag-section) { padding-block: var(--anth-format-space) !important; }
body main :is(.tk-hero,.mg-hero,.mr-hero,.tsg-hero,.tm-hero,.anth-hi-hero,.anth-tag-hero) { padding-block: 68px !important; }
body main :is(.tk-wrap,.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap,.anth-ta-wrap) {
  max-width: 1184px !important;
  padding-inline: 32px !important;
  margin-inline: auto;
}
/* Long, single-column prose is narrower than service card grids. */
body main :is(.tk-wrap,.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap) > :is(p,ul,ol),
body main :is(.tk-faq,.mg-faq,.mr-faq,.tsg-faq,.tm-faq,.anth-hi-faq,.anth-tag-faq) { max-width: 880px; }
body main :is(.tk-card,.mg-card,.mr-card,.tsg-card,.tm-card,.anth-hi-card,.anth-tag-card,.anth-tag-fact,.anth-case-services__card) {
  border-radius: var(--anth-format-radius) !important;
  padding: 28px !important;
}
body main :is(.tk-grid,.mg-grid,.mr-grid,.tsg-grid,.tm-grid,.anth-hi-grid,.anth-tag-grid) { gap: 24px !important; }
body main :is(.tk-card,.mg-card,.mr-card,.tsg-card,.tm-card,.anth-hi-card,.anth-tag-card,.anth-case-services__card) h3 { margin: 0 0 14px !important; }
/* Three account pages: unified heading scale, original photo backgrounds kept. */
body.anth-account-content-first main h1 { font-size: clamp(30px, 3.5vw, 48px) !important; }
body.anth-account-content-first .anth-facebook-service-note { border-radius: 12px !important; padding: 26px !important; }
body.anth-account-content-first #anth-tiktok-ad-account-page .anth-preview-overview { min-height: 650px; }
body.anth-account-content-first #anth-tiktok-ad-account-page .anth-preview-overview :is(.anth-ta-note,.anth-preview-onboard-note) { max-width: 900px; margin-inline: auto; text-align: center; }
body.anth-account-content-first :is(.anth-account-consultation-card,.anth-preview-card) { border-radius: 16px !important; }
/* Fix nested article double-padding for public analyses and legal reading pages. */
body.page-id-3028 article.ast-article-single,
body.page-id-3029 article.ast-article-single,
body.page-id-3030 article.ast-article-single,
body.page-id-3031 article.ast-article-single,
body.page-id-3032 article.ast-article-single,
body.page-id-3033 article.ast-article-single,
body.page-id-2947 article.ast-article-single,
body.page-id-2948 article.ast-article-single { padding: 0 !important; }
body main .anth-case-article { max-width: 1040px; margin-inline: auto; padding: 56px 40px !important; }
body main .anth-case-article h1 { font-size: clamp(30px, 3.3vw, 46px) !important; }
body main .anth-case-article h2 { font-size: clamp(26px, 2.35vw, 34px) !important; }
body main .anth-case-article :is(p,li) { font-size: 17px; }
body main .anth-case-article :is(.anth-case-eyebrow,.anth-case-kicker) { font-size: 13px; }
body main .anth-case-section { margin-top: 44px; }
body main .aip-legal__article { max-width: 960px; padding: 56px 40px !important; }
body main .aip-legal__article h1 { font-size: 42px !important; }
body main .aip-legal__article h2 { font-size: 28px !important; margin-bottom: 18px !important; }
/* Tables retain current responsive stacks/scroll wrappers, not clipped pages. */
body main :is(.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap,.anth-case-section) :is(th,td) {
  line-height: 1.75 !important;
  font-size: 16px !important;
}
body main :is(.anth-tag-table-wrap,.anth-phase3d1-table-wrap) { overscroll-behavior-x: contain; }
/* Native form field types/IDs/notifications/tracking are untouched. */
body .wpforms-container :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea) {
  border-radius: 6px !important;
  font-family: var(--anth-format-font) !important;
  font-size: 16px !important;
}
body .wpforms-container :is(input[type="text"],input[type="email"],input[type="tel"],select) { min-height: 44px !important; }
body .wpforms-container .wpforms-field-label { font-size: 14px !important; line-height: 1.6 !important; }
body #anth-tiktok-ad-account-page .anth-preview-card #wpforms-form-3045 :is(input:not([type="hidden"]),select,textarea) {
  font-family: var(--anth-format-font) !important;
  font-size: 16px !important;
  border-radius: 6px !important;
}
body #anth-tiktok-ad-account-page .anth-preview-card #wpforms-form-3045 :is(input:not([type="hidden"]),select) {
  height: 46px !important;
  min-height: 46px !important;
}
body #anth-tiktok-ad-account-page .anth-preview-card #wpforms-form-3045 .wpforms-field-label {
  font-size: 14px !important;
  line-height: 1.6 !important;
}
body #anth-tiktok-ad-account-page .anth-preview-card #wpforms-submit-3045 {
  min-height: 48px !important;
  border-radius: 8px !important;
  font-size: 16px !important;
}
/* Same compact footer; only legibility and comfortable legal-link tap targets. */
body #colophon .anth-phase2a-legal-footer { font-size: 13px !important; line-height: 1.85 !important; }
body #colophon .anth-phase2a-legal-footer > a { display: inline-flex; align-items: center; min-height: 36px; }
/* Special image-composition layouts keep their current geometry. */
body #anth-solutions h1 { font-size: clamp(36px, 4.6vw, 64px) !important; }
body #anth-solutions .overview { padding-block: 72px !important; }
body #anth-solutions .detail-map { padding-block: 64px !important; }
body #anth-solutions .eyebrow { font-size: 13px !important; letter-spacing: 1.4px; }
@media(max-width:921px) {
  body { --anth-format-space: 56px; }
  body main :is(.tk-wrap,.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap,.anth-ta-wrap) { padding-inline: 24px !important; }
}
@media(max-width:767px) {
  body { --anth-format-space: 44px; }
  body main h1 { font-size: 32px !important; }
  body main h2 { font-size: 28px !important; }
  body main h3 { font-size: 21px !important; }
  body main :is(.tk-hero,.mg-hero,.mr-hero,.tsg-hero,.tm-hero,.anth-hi-hero,.anth-tag-hero) { padding-block: 44px !important; }
  body main :is(.tk-wrap,.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap,.anth-ta-wrap) { padding-inline: 20px !important; }
  body main :is(.tk-lead,.mg-lead,.mr-lead,.tsg-lead,.tm-lead,.anth-hi-lead,.anth-tag-lead,.anth-ta-lead,.anth-case-deck) { font-size: 18px !important; }
  body main :is(.tk-card,.mg-card,.mr-card,.tsg-card,.tm-card,.anth-hi-card,.anth-tag-card,.anth-tag-fact,.anth-case-services__card) { padding: 22px !important; }
  body main :is(.tk-grid,.mg-grid,.mr-grid,.tsg-grid,.tm-grid,.anth-hi-grid,.anth-tag-grid) { gap: 16px !important; }
  body.anth-account-content-first main h1 { font-size: 30px !important; }
  body.anth-account-content-first #anth-tiktok-ad-account-page .anth-preview-overview { min-height: 0; }
  body.anth-account-content-first .anth-facebook-service-note { padding: 22px !important; }
  body main .anth-case-article { padding: 36px 20px !important; }
  body main .anth-case-article h1 { font-size: 30px !important; }
  body main .anth-case-article h2 { font-size: 26px !important; }
  body main .aip-legal__article { padding: 36px 20px !important; }
  body main .aip-legal__article h1 { font-size: 32px !important; }
  body main .aip-legal__article h2 { font-size: 25px !important; }
  body main :is(.mg-wrap,.mr-wrap,.tsg-wrap,.tm-wrap,.anth-hi-wrap,.anth-tag-wrap,.anth-case-section) :is(th,td) { font-size: 15px !important; }
  body #anth-solutions .overview { padding-block: 44px !important; }
  body #anth-solutions h1 { font-size: 38px !important; }
  body #colophon.site-footer { padding-bottom: 72px; }
  /* Reserve the very top line for language controls, clear of the menu toggle. */
  body .gtranslate_wrapper .gt_switcher_wrapper {
    top: 0px !important;
    right: 16px !important;
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(16,35,47,.68);
    font-size: 11px !important;
    line-height: 16px !important;
  }
  body .gtranslate_wrapper .gt_switcher_wrapper .glink {
    display: inline-flex;
    gap: 4px;
    align-items: center;
    color: #fff !important;
    line-height: 16px !important;
  }
  body .gtranslate_wrapper .gt_switcher_wrapper img { width: 16px; height: 14px; }
}
@media(prefers-reduced-motion:reduce) {
  body main :is(a,button) { transition: none !important; }
}
