/* ============================================================
 * 1. ROOT TOKENS
 * ============================================================ */
: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. COMPONENTS
 * ============================================================ */
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);
}

/* Buttons — gbp-btn / gbp-btn--ghost (now via Gutenberg-native className) */
.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);
}

/* Centered card content (Specialty cards) */
.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: "✓"; 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: "−"; }
.gbp-faq__body { padding: 0 var(--gbp-space-lg) var(--gbp-space-md); color: var(--gbp-text-body); line-height: var(--gbp-lh-body); }

/* ============================================================
 * 3. ANIMATIONS (CSS layer — paired with JS Hook post 962)
 * ============================================================ */
.gbp-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity var(--gbp-dur-cinematic) var(--gbp-ease-cinematic),
    transform var(--gbp-dur-cinematic) var(--gbp-ease-cinematic);
  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: 100ms; }
.gbp-reveal[data-delay="200"] { transition-delay: 50ms; }
.gbp-reveal[data-delay="300"] { transition-delay: 300ms; }
.gbp-reveal[data-delay="400"] { transition-delay: 400ms; }
.gbp-reveal[data-delay="500"] { transition-delay: 500ms; }
.gbp-reveal[data-delay="600"] { transition-delay: 600ms; }
.gbp-reveal[data-delay="700"] { transition-delay: 700ms; }
.gbp-reveal[data-delay="800"] { transition-delay: 800ms; }

.gbp-stack-cinematic > * {
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity var(--gbp-dur-med) var(--gbp-ease-cinematic),
    transform var(--gbp-dur-med) var(--gbp-ease-cinematic);
}
.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:  80ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(3)  { transition-delay: 160ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(4)  { transition-delay: 240ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(5)  { transition-delay: 320ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(6)  { transition-delay: 400ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(7)  { transition-delay: 480ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(8)  { transition-delay: 560ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(9)  { transition-delay: 640ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(10) { transition-delay: 720ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(11) { transition-delay: 800ms; }
.gbp-stack-cinematic.is-visible > *:nth-child(12) { transition-delay: 880ms; }

.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; }
}

/* ============================================================
 * 4. SITE-WIDE PATCHES
 * ============================================================ */
.site-info { display: none !important; }
.site-branding .main-title, .site-branding .site-title { display: none !important; }

/* ============================================================
 * 5. HOMEPAGE HERO TWEAKS + CTA CROSS-FADE
 * ============================================================ */
.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; }

/* Hero PRIMARY (Book) — orange base, cream wash on hover */
.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: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);
}

/* Hero SECONDARY (Call) — gold base, orange on hover */
.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--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);
}

/* Hero benefit list — bullets instead of checks */
.gbp-section.gb-element-a1000001 .gbp-checks li::before {
  content: "•" !important;
  color: var(--gbp-text-inverse) !important;
  font-size: 1.5rem !important;
  line-height: 1 !important;
  top: -0.2rem;
}

/* Hide GP default page title on homepage */
body.home .entry-header,
body.page-id-979 .entry-header { display: none !important; }

/* ============================================================
 * 6. STATUS PILL ("Accepting New Clients") — Thrivion sage + tasteful pop
 * ============================================================ */
.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); }
}

/* ============================================================
 * 7. SECTION POLISH
 * ============================================================ */
.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; }

/* ============================================================
 * 8. MOBILE STICKY CTA — floating Book + Call (≤768px only)
 * ============================================================ */
.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; }
}


/* === HERO BOOK CTA — primary orange filled button === */
.gb-text-a100000b{
  background-color: var(--gbp-accent) !important;
  border-color: var(--gbp-accent) !important;
  color: var(--gbp-text-inverse, #FAF8F4) !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .15s ease !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);
}
.gb-text-a100000b:active{
  transform: translateY(0);
}
/* === END HERO BOOK CTA === */

/* === HERO CTA PADDING REFINEMENT === */
.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;
}
.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;
  }
}
/* === END HERO CTA PADDING === */

/* === HERO CTA SHADOW (3D LIFT) === */
.gb-text-a100000b{
  box-shadow:
    0 6px 14px rgba(0, 0, 0, 0.22),
    0 2px 4px rgba(0, 0, 0, 0.18) !important;
  transition:
    background-color .2s ease,
    border-color .2s ease,
    color .2s ease,
    transform .15s ease,
    box-shadow .2s ease !important;
}
.gb-text-a100000b:hover,
.gb-text-a100000b:focus,
.gb-text-a100000b:focus-visible{
  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{
  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;
  transition:
    background-color .2s ease,
    border-color .2s ease,
    color .2s ease,
    transform .15s ease,
    box-shadow .2s ease !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;
}
/* === END HERO CTA SHADOW === */

/* === HERO BACKGROUND IMAGE === */
.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;
  }
}
/* === END HERO BACKGROUND === */

/* ──────────────────────────────────────────────────────────
   SECTION 9 — Editor-only animation defeat
   The block editor iframe doesn't run our IntersectionObserver,
   so gbp-reveal elements stay at opacity:0 → content looks blank.
   Scope this rule to editor body-classes only — frontend animations untouched.
   ────────────────────────────────────────────────────────── */
.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;
}


/* ──────────────────────────────────────────────────────────
   SECTION 10 — Snappier reveal transitions
   Shortens the 0.8s default to 0.45s with a slightly snappier easing
   so scroll reveals feel more seamless / less clunky.
   ────────────────────────────────────────────────────────── */
.gbp-reveal {
  transition: opacity 0.45s cubic-bezier(0.22, 0.9, 0.36, 1),
              transform 0.45s cubic-bezier(0.22, 0.9, 0.36, 1) !important;
}
.gbp-stack-cinematic > * {
  transition: opacity 0.45s cubic-bezier(0.22, 0.9, 0.36, 1),
              transform 0.45s cubic-bezier(0.22, 0.9, 0.36, 1) !important;
}


/* ===============================
 * SECTION 11 — Snappier reveals v2
 * Compress stagger ladders + tighten transition floor
 * =============================== */

/* Tighten core transition from 0.45s to 0.35s */
.gbp-reveal,
.gbp-stack-cinematic > * {
  transition-duration: 0.35s, 0.35s !important;
  transition-timing-function: cubic-bezier(0.22, 0.9, 0.36, 1), cubic-bezier(0.22, 0.9, 0.36, 1) !important;
}

/* Compress cinematic-stack stagger ladder 80ms-each → 40ms-each */
.gbp-stack-cinematic.is-visible > :nth-child(1)  { transition-delay: 0ms    !important; }
.gbp-stack-cinematic.is-visible > :nth-child(2)  { transition-delay: 40ms   !important; }
.gbp-stack-cinematic.is-visible > :nth-child(3)  { transition-delay: 80ms   !important; }
.gbp-stack-cinematic.is-visible > :nth-child(4)  { transition-delay: 50ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(5)  { transition-delay: 160ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(6)  { transition-delay: 50ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(7)  { transition-delay: 240ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(8)  { transition-delay: 280ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(9)  { transition-delay: 320ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(10) { transition-delay: 360ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(11) { transition-delay: 400ms  !important; }
.gbp-stack-cinematic.is-visible > :nth-child(12) { transition-delay: 440ms  !important; }

/* Cap [data-delay] attribute system at 50ms */
.gbp-reveal[data-delay="100"] { transition-delay: 50ms  !important; }
.gbp-reveal[data-delay="200"] { transition-delay: 80ms  !important; }
.gbp-reveal[data-delay="300"] { transition-delay: 110ms !important; }
.gbp-reveal[data-delay="400"] { transition-delay: 140ms !important; }
.gbp-reveal[data-delay="500"] { transition-delay: 160ms !important; }
.gbp-reveal[data-delay="600"] { transition-delay: 180ms !important; }
.gbp-reveal[data-delay="700"] { transition-delay: 50ms !important; }
.gbp-reveal[data-delay="800"] { transition-delay: 50ms !important; }


/* ===== SECTION 12 — Vendor transition tame (Jetpack swiper, adminbar) ===== */
.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; }


/* ============================================================
 * P3: Force font-display: swap on locally-hosted GP fonts
 * GP Font Library hardcodes font-display: auto; this overrides
 * to swap (FOUT) for faster text rendering.
 * ============================================================ */
@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');
}