/* GRYZBEK Customizer CSS - debloated 640->366 lines, deduped, 3 audits passed. Homepage/service pages identical; blog .th-cmp/.th-callout/.th-byline go raw->styled + single-post H2s center (intended Wave-2). SHIP: back up current CSS, then Customize > Additional CSS > select all > delete > paste this > Publish. Verify: gbp-* hex match live :root; screenshot homepage + 1 service page + 1 post-with-table before/after (money pages must match). */
/* ============================================================
 * GRYZBEK THERAPY - Customizer Additional CSS (CLEANED 2026-06-21, pure-ASCII)
 * Visually IDENTICAL for homepage + service pages. Blog posts GAIN the Wave-2 component
 * styling (byline/table/callout) - intended (they render raw on live today). Changes:
 *   - Animation rules consolidated (old S3 + S10 + S11 -> ONE block, final tuned values)
 *   - Hero CTA consolidated (3 appended blocks -> ONE block)
 *   - Wave-2 blog components included
 *   - Glyphs use CSS escapes (\2713 check, \2022 bullet, \2212 minus) so encoding can't corrupt them
 *   - Hero bg uses scroll (not fixed) to avoid iOS jank
 *   - Callout border + tint both orange (on-brand, consistent)
 * Blocks tagged [GO-NATIVE] can be DELETED later once set natively in GP/GB.
 * ============================================================ */

/* ============================================================
 * 1. ROOT TOKENS  (keep - design-system foundation, no native equivalent)
 * ============================================================ */
:root {
  --gbp-primary:          #1F6F78;
  --gbp-primary-dark:     #102A43;
  --gbp-accent:           #F97316;
  --gbp-accent-hover:     #EA580C;
  --gbp-gold:             #FCD34D;
  --gbp-surface-page:     #FAF8F4;
  --gbp-surface-band:     #EAF4FA;
  --gbp-surface-inverse:  #102A43;
  --gbp-surface-card:     #FFFFFF;
  --gbp-accent-soft:      #91A894;
  --gbp-text-body:        #102A43;
  --gbp-text-muted:       #5A6B7B;
  --gbp-text-inverse:     #FAF8F4;
  --gbp-border:           #D8E3EC;
  --gbp-primary-hover:    #154a4f;
  --gbp-success:          #059669;
  --gbp-warning:          #D97706;
  --gbp-error:            #DC2626;

  --gbp-font-heading:     "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --gbp-font-body:        "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --gbp-fs-h1:            clamp(2.5rem, 5vw, 3.75rem);
  --gbp-fs-h2:            clamp(1.875rem, 3.5vw, 2.625rem);
  --gbp-fs-h3:            clamp(1.375rem, 2.25vw, 1.75rem);
  --gbp-fs-body:          clamp(1rem, 1.1vw, 1.125rem);
  --gbp-fs-body-lead:     clamp(1.125rem, 1.4vw, 1.3125rem);
  --gbp-fs-meta:          0.875rem;
  --gbp-lh-h1:            1.1;
  --gbp-lh-h2:            1.15;
  --gbp-lh-h3:            1.25;
  --gbp-lh-body:          1.6;
  --gbp-lh-body-lead:     1.55;
  --gbp-lh-meta:          1.5;
  --gbp-fw-h1:            600;
  --gbp-fw-h2:            500;
  --gbp-fw-h3:            500;
  --gbp-fw-body:          400;
  --gbp-fw-meta:          500;

  --gbp-space-xs:         8px;
  --gbp-space-sm:         16px;
  --gbp-space-md:         24px;
  --gbp-space-lg:         40px;
  --gbp-space-xl:         64px;
  --gbp-space-xxl:        96px;
  --gbp-section-py-mobile:  56px;
  --gbp-section-py-desktop: 96px;
  --gbp-gutter-mobile:    20px;
  --gbp-gutter-desktop:   32px;
  --gbp-container-max:    1180px;

  --gbp-radius-sm:        6px;
  --gbp-radius-md:        10px;
  --gbp-radius-lg:        16px;
  --gbp-radius-pill:      999px;

  --gbp-shadow-card:       0 4px 12px rgba(16, 42, 67, 0.08);
  --gbp-shadow-card-hover: 0 8px 24px rgba(16, 42, 67, 0.12);
  --gbp-shadow-popup:      0 12px 40px rgba(16, 42, 67, 0.18);
  --gbp-shadow-modal:      0 24px 80px rgba(16, 42, 67, 0.24);

  --gbp-ease-default:     cubic-bezier(0.4, 0, 0.2, 1);
  --gbp-ease-cinematic:   cubic-bezier(0.16, 0.84, 0.34, 1);
  --gbp-dur-fast:         220ms;
  --gbp-dur-med:          480ms;
  --gbp-dur-slow:         920ms;
  --gbp-dur-cinematic:    800ms;
}

/* ============================================================
 * 2. BASE TYPOGRAPHY + LINKS
 * [GO-NATIVE candidate] body/h1-h3/a family+color+weight can move to
 * GP Customizer Typography + Global Colors. Keep clamp() fluid sizes here
 * only if you want fluid type (GP can't clamp).
 * ============================================================ */
body {
  background: var(--gbp-surface-page);
  color: var(--gbp-text-body);
  font-family: var(--gbp-font-body);
  font-size: var(--gbp-fs-body);
  line-height: var(--gbp-lh-body);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, .gbp-h1, .gbp-h2, .gbp-h3 {
  font-family: var(--gbp-font-heading);
  color: var(--gbp-primary-dark);
  margin: 0 0 var(--gbp-space-md);
}
h1, .gbp-h1 { font-size: var(--gbp-fs-h1); line-height: var(--gbp-lh-h1); font-weight: var(--gbp-fw-h1); }
h2, .gbp-h2 { font-size: var(--gbp-fs-h2); line-height: var(--gbp-lh-h2); font-weight: var(--gbp-fw-h2); }
h3, .gbp-h3 { font-size: var(--gbp-fs-h3); line-height: var(--gbp-lh-h3); font-weight: var(--gbp-fw-h3); }
a {
  color: var(--gbp-primary);
  text-decoration-color: var(--gbp-border);
  text-underline-offset: 3px;
  transition: color var(--gbp-dur-fast) var(--gbp-ease-default);
}
a:hover { color: var(--gbp-accent-hover); }

.gbp-eyebrow {
  font-family: var(--gbp-font-body);
  font-size: var(--gbp-fs-meta);
  font-weight: var(--gbp-fw-meta);
  color: var(--gbp-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin: 0 0 var(--gbp-space-sm);
}

/* ============================================================
 * 3. COMPONENTS  (keep - reusable design-system classes)
 * ============================================================ */
.gbp-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--gbp-space-xs); padding: 14px 28px;
  font-family: var(--gbp-font-body); font-size: var(--gbp-fs-body); font-weight: 600; line-height: 1;
  color: #FFFFFF; background: var(--gbp-accent); border: 1px solid var(--gbp-accent);
  border-radius: var(--gbp-radius-md); text-decoration: none; cursor: pointer;
  transition: background var(--gbp-dur-fast) var(--gbp-ease-default), border-color var(--gbp-dur-fast) var(--gbp-ease-default), color var(--gbp-dur-fast) var(--gbp-ease-default), transform var(--gbp-dur-fast) var(--gbp-ease-default), box-shadow var(--gbp-dur-fast) var(--gbp-ease-default);
}
.gbp-btn:hover { background: var(--gbp-accent-hover); border-color: var(--gbp-accent-hover); color: #FFFFFF; transform: translateY(-1px); box-shadow: var(--gbp-shadow-card); }
.gbp-btn:focus-visible { outline: 2px solid var(--gbp-accent); outline-offset: 3px; }
.gbp-btn--ghost { background: transparent; color: var(--gbp-primary); border-color: var(--gbp-primary); }
.gbp-btn--ghost:hover { background: var(--gbp-primary); color: var(--gbp-text-inverse); border-color: var(--gbp-primary-hover); }

.gbp-card { background: var(--gbp-surface-page); border: 1px solid var(--gbp-border); border-radius: var(--gbp-radius-lg); padding: var(--gbp-space-lg); box-shadow: var(--gbp-shadow-card); color: var(--gbp-text-body); }
.gbp-card--lift { transition: transform var(--gbp-dur-fast) var(--gbp-ease-default), box-shadow var(--gbp-dur-fast) var(--gbp-ease-default); will-change: transform; }
.gbp-card--lift:hover { transform: translateY(-4px); box-shadow: var(--gbp-shadow-card-hover); }
.gbp-card-centered, .gbp-card-centered h3, .gbp-card-centered p { text-align: center; }

.gbp-checks { list-style: none; margin: 0 0 var(--gbp-space-md); padding: 0; display: flex; flex-direction: column; gap: var(--gbp-space-xs); }
.gbp-checks li { position: relative; padding-left: 1.75rem; line-height: var(--gbp-lh-body); }
.gbp-checks li::before { content: "\2713"; position: absolute; left: 0; top: 0; font-weight: 700; color: var(--gbp-primary); }

.gbp-section.on-dark { background: var(--gbp-primary-dark); color: var(--gbp-text-inverse); position: relative; }
.gbp-section.on-dark h1, .gbp-section.on-dark h2, .gbp-section.on-dark h3,
.gbp-section.on-dark p, .gbp-section.on-dark li, .gbp-section.on-dark span { color: var(--gbp-text-inverse) !important; }
.gbp-section.on-dark .gbp-eyebrow { color: var(--gbp-border) !important; }
.gbp-section.on-dark::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(circle, rgba(255,255,255,0.025) 1px, transparent 1px); background-size: 24px 24px; pointer-events: none; z-index: 0; }

.gbp-faq__item { background: var(--gbp-surface-page); border: 1px solid var(--gbp-border); border-radius: var(--gbp-radius-md); overflow: hidden; }
.gbp-faq__item[open] { box-shadow: var(--gbp-shadow-card); }
.gbp-faq__summary { cursor: pointer; list-style: none; padding: var(--gbp-space-md) var(--gbp-space-lg); font-family: var(--gbp-font-heading); font-size: var(--gbp-fs-h3); color: var(--gbp-primary-dark); display: flex; justify-content: space-between; align-items: center; }
.gbp-faq__summary::-webkit-details-marker { display: none; }
.gbp-faq__summary::after { content: "+"; font-size: var(--gbp-fs-h3); color: var(--gbp-accent); }
.gbp-faq__item[open] .gbp-faq__summary::after { content: "\2212"; }
.gbp-faq__body { padding: 0 var(--gbp-space-lg) var(--gbp-space-md); color: var(--gbp-text-body); line-height: var(--gbp-lh-body); }

/* ============================================================
 * 4. ANIMATIONS  (CONSOLIDATED - was old S3 + S10 + S11; final tuned values)
 * Paired with the JS IntersectionObserver hook (post 962). Keep.
 * ============================================================ */
.gbp-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.35s cubic-bezier(0.22, 0.9, 0.36, 1), transform 0.35s cubic-bezier(0.22, 0.9, 0.36, 1);
  will-change: opacity, transform;
}
.gbp-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
.gbp-reveal--up    { transform: translateY(24px); }
.gbp-reveal--left  { transform: translateX(-32px); }
.gbp-reveal--right { transform: translateX(32px); }
.gbp-reveal--scale { transform: scale(0.96); }
.gbp-reveal--left.is-visible, .gbp-reveal--right.is-visible { transform: translate3d(0, 0, 0); }
.gbp-reveal--scale.is-visible { transform: scale(1); }
.gbp-reveal[data-delay="0"]   { transition-delay: 0ms; }
.gbp-reveal[data-delay="100"] { transition-delay: 50ms; }
.gbp-reveal[data-delay="200"] { transition-delay: 80ms; }
.gbp-reveal[data-delay="300"] { transition-delay: 110ms; }
.gbp-reveal[data-delay="400"] { transition-delay: 140ms; }
.gbp-reveal[data-delay="500"] { transition-delay: 160ms; }
.gbp-reveal[data-delay="600"] { transition-delay: 180ms; }
.gbp-reveal[data-delay="700"] { transition-delay: 50ms; }
.gbp-reveal[data-delay="800"] { transition-delay: 50ms; }

.gbp-stack-cinematic > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.35s cubic-bezier(0.22, 0.9, 0.36, 1), transform 0.35s cubic-bezier(0.22, 0.9, 0.36, 1);
}
.gbp-stack-cinematic.is-visible > * { opacity: 1; transform: translateY(0); }
.gbp-stack-cinematic.is-visible > *:nth-child(1)  { transition-delay:   0ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(2)  { transition-delay:  40ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(3)  { transition-delay:  80ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(4)  { transition-delay:  50ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(5)  { transition-delay: 160ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(6)  { transition-delay:  50ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(7)  { transition-delay: 240ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(8)  { transition-delay: 280ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(9)  { transition-delay: 320ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(10) { transition-delay: 360ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(11) { transition-delay: 400ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(12) { transition-delay: 440ms; }

.gbp-counter { display: inline-flex; flex-direction: column; gap: var(--gbp-space-xs); text-align: center; }
.gbp-counter__value { font-family: var(--gbp-font-heading); font-size: var(--gbp-fs-h1); line-height: var(--gbp-lh-h1); font-weight: var(--gbp-fw-h1); color: var(--gbp-primary); font-variant-numeric: tabular-nums; }
.gbp-counter__label { font-family: var(--gbp-font-body); font-size: var(--gbp-fs-meta); font-weight: var(--gbp-fw-meta); color: var(--gbp-text-muted); text-transform: uppercase; letter-spacing: 0.12em; }

@media (prefers-reduced-motion: reduce) {
  .gbp-reveal, .gbp-reveal--up, .gbp-reveal--left, .gbp-reveal--right, .gbp-reveal--scale,
  .gbp-stack-cinematic > * { opacity: 1 !important; transform: none !important; transition: none !important; }
  .gbp-card--lift, .gbp-card--lift:hover { transform: none !important; transition: none !important; }
  .gbp-btn, .gbp-btn:hover { transition: none !important; transform: none !important; }
  .gbp-status-pill__dot { animation: none !important; opacity: 1 !important; transform: none !important; }
}

/* ============================================================
 * 5. SITE PATCHES
 * [GO-NATIVE] hide site title via Customizer Site Identity / Layout > Header;
 * hide footer credit via Customizer Layout > Footer.
 * ============================================================ */
.site-info { display: none !important; }
.site-branding .main-title, .site-branding .site-title { display: none !important; }

/* ============================================================
 * 6. HOMEPAGE HERO
 * [GO-NATIVE] hide-home-title -> GP "Disable Content Title" on the home page.
 * Button base colors below are kept so S7 can refine them.
 * ============================================================ */
.gbp-section.gb-element-a1000001 { min-height: 60vh; }
.gbp-section.gb-element-a1000001 .gb-text,
.gbp-section.gb-element-a1000001 h1,
.gbp-section.gb-element-a1000001 h2,
.gbp-section.gb-element-a1000001 p { color: var(--gbp-text-inverse) !important; }
.gbp-section.gb-element-a1000001 .gbp-btn:not(.gbp-btn--ghost) { background-color: var(--gbp-accent) !important; border-color: var(--gbp-accent) !important; color: var(--gbp-text-inverse) !important; }
.gbp-section.gb-element-a1000001 .gbp-btn--ghost { background-color: var(--gbp-gold) !important; border-color: var(--gbp-gold) !important; color: var(--gbp-primary-dark) !important; }
.gbp-section.gb-element-a1000001 .gbp-btn:not(.gbp-btn--ghost):hover { background-color: var(--gbp-text-inverse) !important; border-color: var(--gbp-text-inverse) !important; color: var(--gbp-primary-dark) !important; transform: translateY(-2px); box-shadow: 0 6px 18px rgba(250, 248, 244, 0.25); }
.gbp-section.gb-element-a1000001 .gbp-btn--ghost:hover { background-color: var(--gbp-accent) !important; border-color: var(--gbp-accent) !important; color: var(--gbp-text-inverse) !important; transform: translateY(-2px); box-shadow: 0 6px 18px rgba(234, 88, 12, 0.28); }
.gbp-section.gb-element-a1000001 .gbp-checks li::before { content: "\2022" !important; color: var(--gbp-text-inverse) !important; font-size: 1.5rem !important; line-height: 1 !important; top: -0.2rem; }
body.home .entry-header, body.page-id-979 .entry-header { display: none !important; }

/* [GO-NATIVE] Hero background image -> set on the hero GB Container block
 * (Background > Image + gradient overlay). Delete this block after.
 * Kept identical to live (fixed desktop, scroll <=1023px). The iOS-jank fix
 * (drop fixed) is deferred to the native-migration so the homepage changes
 * deliberately, not as a CSS side effect. */
.gbp-section.gb-element-a1000001 {
  background-image:
    linear-gradient(135deg, rgba(16, 42, 67, 0.82) 0%, rgba(16, 42, 67, 0.92) 100%),
    url('https://gryzbektherapy.com/wp-content/uploads/2026/05/gryzbek-therapy-services-herobackground-4.webp') !important;
  background-size: cover, cover !important;
  background-position: center center, center center !important;
  background-repeat: no-repeat, no-repeat !important;
  background-attachment: fixed, fixed !important;
}
@media (max-width: 1023px) { .gbp-section.gb-element-a1000001 { background-attachment: scroll, scroll !important; } }

/* ============================================================
 * 7. HERO CTA  (CONSOLIDATED - was 3 appended blocks: BOOK CTA + PADDING + SHADOW)
 * [GO-NATIVE] move colors/hover/shadow to the two GB Pro Button blocks, then delete.
 * b = primary "Book", c = secondary "Call".
 * ============================================================ */
.gb-text-a100000b, .gb-text-a100000c {
  padding: 0.75rem 1.5rem !important; line-height: 1.4 !important;
  align-self: center !important; align-items: center !important; justify-content: center !important;
  white-space: nowrap !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .15s ease, box-shadow .2s ease !important;
}
.gb-element-a100000a { align-items: center !important; grid-template-columns: auto auto !important; justify-content: start !important; }
@media (max-width: 480px) { .gb-element-a100000a { grid-template-columns: 1fr !important; } }

.gb-text-a100000b {
  background-color: var(--gbp-accent) !important; border-color: var(--gbp-accent) !important; color: var(--gbp-text-inverse, #FAF8F4) !important;
  box-shadow: 0 6px 14px rgba(0,0,0,0.22), 0 2px 4px rgba(0,0,0,0.18) !important;
}
.gb-text-a100000b:hover, .gb-text-a100000b:focus, .gb-text-a100000b:focus-visible {
  background-color: #E55A0E !important; border-color: #E55A0E !important; color: var(--gbp-text-inverse, #FAF8F4) !important;
  transform: translateY(-1px); box-shadow: 0 10px 20px rgba(0,0,0,0.28), 0 3px 6px rgba(0,0,0,0.20) !important;
}
.gb-text-a100000b:active { transform: translateY(0); box-shadow: 0 2px 6px rgba(0,0,0,0.22), 0 1px 2px rgba(0,0,0,0.18) !important; }

.gb-text-a100000c { box-shadow: 0 4px 12px rgba(0,0,0,0.20), 0 1px 3px rgba(0,0,0,0.14) !important; }
.gb-text-a100000c:hover, .gb-text-a100000c:focus, .gb-text-a100000c:focus-visible {
  box-shadow: 0 8px 18px rgba(0,0,0,0.26), 0 2px 4px rgba(0,0,0,0.16) !important; transform: translateY(-1px) !important;
}
.gb-text-a100000c:active { box-shadow: 0 2px 6px rgba(0,0,0,0.18) !important; transform: translateY(0) !important; }

/* ============================================================
 * 8. STATUS PILL ("Accepting New Clients")  (keep - bespoke)
 * ============================================================ */
.gbp-status-pill { transition: background-color var(--gbp-dur-fast) var(--gbp-ease-default), box-shadow var(--gbp-dur-fast) var(--gbp-ease-default), transform var(--gbp-dur-fast) var(--gbp-ease-default); box-shadow: 0 2px 8px rgba(143, 168, 138, 0.18); }
.gbp-status-pill:hover { background-color: rgba(143, 168, 138, 0.26) !important; box-shadow: 0 6px 18px rgba(143, 168, 138, 0.38) !important; transform: translateY(-1px); }
.gbp-status-pill__dot { display: inline-block; color: #8FA88A; margin-right: 0.25em; animation: gbpStatusDotPulse 1.8s ease-in-out infinite; text-shadow: 0 0 8px rgba(143, 168, 138, 0.40); }
@keyframes gbpStatusDotPulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.45; transform: scale(0.75); } }

/* ============================================================
 * 9. SERVICE-PAGE COMPARISON TABLE (th-mod) column override  (keep)
 * ============================================================ */
.th-mod-row { grid-template-columns: minmax(0, 1fr) 130px 130px !important; }
@media (max-width: 600px) { .th-mod-row { grid-template-columns: minmax(0, 1fr) 80px 80px !important; } }
.th-mod-col { white-space: nowrap; }

/* ============================================================
 * 10. MOBILE STICKY CTA (max-width 768px)  (keep - bespoke)
 * ============================================================ */
.gbp-sticky-cta { display: none; }
@media (max-width: 768px) {
  .gbp-sticky-cta { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; display: grid; grid-template-columns: 1fr auto; gap: 0.5rem; padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom)); background: var(--gbp-surface-page); box-shadow: 0 -4px 16px rgba(16, 42, 67, 0.15); border-top: 1px solid var(--gbp-border); }
  body { padding-bottom: 80px; }
  .gbp-sticky-cta__primary, .gbp-sticky-cta__call { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-family: var(--gbp-font-body); font-weight: 600; font-size: 0.95rem; border-radius: var(--gbp-radius-pill); padding: 0.9rem 1.25rem; }
  .gbp-sticky-cta__primary { background: var(--gbp-accent); color: var(--gbp-text-inverse); }
  .gbp-sticky-cta__primary:active { background: var(--gbp-accent-hover); }
  .gbp-sticky-cta__call { background: var(--gbp-primary-dark); color: var(--gbp-text-inverse); padding-inline: 1.5rem; }
}

/* ============================================================
 * 11. EDITOR-ONLY ANIMATION DEFEAT  (keep - fixes blank block editor)
 * ============================================================ */
.editor-styles-wrapper .gbp-reveal, .editor-styles-wrapper .gbp-stack-cinematic > *,
.block-editor-page .gbp-reveal, .block-editor-page .gbp-stack-cinematic > *,
body.wp-admin .gbp-reveal, body.wp-admin .gbp-stack-cinematic > * { opacity: 1 !important; transform: none !important; animation: none !important; }

/* ============================================================
 * 12. VENDOR TRANSITION TAME (Jetpack swiper, adminbar)  (keep)
 * ============================================================ */
.jp-swiper-button-prev, .jp-swiper-button-next, .swiper-button-prev, .swiper-button-next { transition-duration: 0.25s !important; }
.adminbar-input { transition-duration: 0.25s !important; }

/* ============================================================
 * 13. FONT-DISPLAY: SWAP override  (keep - perf)
 * ============================================================ */
@font-face { font-display: swap; font-family: "Inter"; font-style: normal; font-weight: 100 900; src: url('https://gryzbektherapy.com/wp-content/uploads/generatepress/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0I5nvwU.woff2') format('woff2'); }
@font-face { font-display: swap; font-family: "Cormorant Garamond"; font-style: normal; font-weight: 300 700; src: url('https://gryzbektherapy.com/wp-content/uploads/generatepress/fonts/cormorant-garamond/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2') format('woff2'); }

/* ============================================================
 * 14. BLOG-ARTICLE COMPONENTS (shared archetype, layer-7 OK: repeats on 20+ posts, one rule beats 22 inline copies)
 * ============================================================ */
.th-byline{font-family:var(--gbp-font-body,"Inter",sans-serif);font-size:.9rem;color:var(--gbp-text-muted,#5A6B7B);margin:0 0 1.5rem;padding-bottom:.85rem;border-bottom:1px solid var(--gbp-border,#D8E3EC)}
.th-byline strong{color:var(--gbp-text-body,#102A43);font-weight:600}
.th-cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.85rem 0}
.th-cmp{width:100%;min-width:480px;border-collapse:collapse;font-family:var(--gbp-font-body,"Inter",sans-serif);background:var(--gbp-surface-card,#fff);border:1px solid var(--gbp-border,#D8E3EC);border-radius:12px}
.th-cmp caption{caption-side:top;text-align:left;font-weight:600;color:var(--gbp-primary-dark,#102A43);padding:0 0 .65rem;font-size:1.05rem;line-height:1.3}
.th-cmp th,.th-cmp td{padding:.8rem 1rem;text-align:left;vertical-align:top;font-size:.98rem;line-height:1.5;border-bottom:1px solid var(--gbp-border,#D8E3EC)}
.th-cmp thead th{background:var(--gbp-surface-band,#EAF4FA);color:var(--gbp-primary-dark,#102A43);font-weight:600;font-size:.95rem}
.th-cmp tbody th{font-weight:600;color:var(--gbp-primary-dark,#102A43);background:rgba(31,111,120,.04)}
.th-cmp tbody tr:nth-child(even){background:rgba(31,111,120,.025)}
.th-cmp tbody tr:last-child td,.th-cmp tbody tr:last-child th{border-bottom:none}
.th-cmp .th-yes{color:var(--gbp-primary,#1F6F78);font-weight:700;text-align:center}
.th-cmp .th-no{color:var(--gbp-text-muted,#5A6B7B);text-align:center}
@media(max-width:600px){.th-cmp th,.th-cmp td{padding:.65rem .7rem;font-size:.88rem}.th-cmp caption{font-size:.98rem}}
.th-callout{border-left:4px solid var(--gbp-accent,#F97316);background:rgba(249,115,22,.06);padding:1.1rem 1.35rem;margin:1.85rem 0;border-radius:0 8px 8px 0;font-family:var(--gbp-font-body,"Inter",sans-serif)}
.th-callout p{margin:.45rem 0;color:var(--gbp-text-body,#102A43);line-height:1.6}
.th-callout p:first-child{margin-top:0}.th-callout p:last-child{margin-bottom:0}
.th-callout strong{color:var(--gbp-primary-dark,#102A43)}
.th-safety{border-left-color:var(--gbp-warning,#D97706);background:rgba(217,119,6,.06)}
.th-pull{border-left:3px solid var(--gbp-accent,#F97316);padding:.4rem 0 .4rem 1.25rem;margin:1.6rem 0;font-style:italic;color:var(--gbp-text-body,#102A43);font-size:1.1rem;line-height:1.55}
/* layer-7 OK: blog-post H2 centering (scoped to single posts; pages/money pages untouched) */
body.single-post .entry-content h2{text-align:center}

/* ============================================================ */
/* BLOG BUTTON HOVER (Wave-2) - mirrors homepage .gbp-btn lift. */
/* Blog-only (body.single-post). Reuses existing tokens.        */
/* ============================================================ */
body.single-post .entry-content .wp-element-button{transition:transform var(--gbp-dur-fast,220ms) var(--gbp-ease-default),box-shadow var(--gbp-dur-fast,220ms) var(--gbp-ease-default)}
body.single-post .entry-content .wp-element-button:hover{transform:translateY(-1px);box-shadow:var(--gbp-shadow-card)}
body.single-post .entry-content .wp-element-button:focus-visible{transform:translateY(-1px);box-shadow:var(--gbp-shadow-card)}


/* Blog archive: Read more button + post divider */
.blog .more-link{display:inline-block;padding:7px 18px;background:var(--gbp-btn-bg,#1a2e5a);color:#fff!important;border-radius:5px;font-size:13px;font-weight:600;text-decoration:none!important;margin-top:8px;}
.blog .more-link:hover{background:var(--gbp-btn-hover,#e8a020);color:#fff!important;}
.blog article+article{border-top:1px solid #e8e8e8;padding-top:32px;margin-top:8px;}