/* Self-contained runtime variables generated from the approved token source. */
@font-face {
  font-family: "Estedad";
  src: url("../fonts/estedad/Estedad[wght].woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --cinch-brand-navy-900: #0f2648;
  --cinch-brand-navy-800: #17345f;
  --cinch-brand-navy-700: #244778;
  --cinch-brand-navy-100: #e8eef6;
  --cinch-brand-navy-50: #f4f7fb;
  --cinch-brand-orange-700: #b75e1f;
  --cinch-brand-orange-600: #c96a24;
  --cinch-brand-orange-500: #d57529;
  --cinch-brand-orange-100: #fce9d8;
  --cinch-brand-orange-50: #fff7ef;
  --cinch-text-primary: #172033;
  --cinch-text-secondary: #667085;
  --cinch-text-tertiary: #7f8a9d;
  --cinch-surface-base: #ffffff;
  --cinch-border-default: #d9dee8;
  --cinch-surface-subtle: #f7f9fc;
  --cinch-focus-ring: #3b74bd;
  --cinch-font-heading-fa: Estedad, Vazirmatn, Tahoma, sans-serif;
  --cinch-font-body-fa: Vazirmatn, Tahoma, Arial, sans-serif;
  --cinch-font-persian-shell: "Estedad", "IRANYekanWeb", "Vazirmatn", Tahoma, Arial, sans-serif;
  --cinch-container-page: 1280px;
  --cinch-container-content: 1120px;
  --cinch-container-reading: 760px;
  --cinch-radius-sm: 8px;
  --cinch-radius-md: 12px;
  --cinch-radius-lg: 16px;
  --cinch-motion-fast: 120ms;
  --cinch-motion-base: 180ms;
  --cinch-easing-standard: cubic-bezier(0.2, 0, 0, 1);
}

html { direction: rtl; scroll-behavior: smooth; }
body {
  direction: rtl;
  text-align: right;
  color: var(--cinch-text-primary);
  font-family: var(--cinch-font-persian-shell);
  font-weight: 400;
}

:where(h1, h2, h3, h4, h5, h6) { font-family: var(--cinch-font-heading-fa); }

:where(a) {
  color: var(--cinch-brand-navy-700);
  text-underline-offset: 0.18em;
}

:where(a:hover, a:focus-visible) { color: var(--cinch-brand-navy-900); }

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--cinch-focus-ring);
  outline-offset: 3px;
}

:where(button, .wp-element-button, input, select, textarea) {
  min-block-size: 44px;
}

:where(button, .wp-element-button, input[type="submit"], input[type="button"], input[type="reset"]) {
  cursor: pointer;
  font: inherit;
}

:where(button:disabled, input:disabled, select:disabled, textarea:disabled) {
  cursor: not-allowed;
  opacity: 0.65;
}

:where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  border: 1px solid var(--cinch-border-default);
  border-radius: var(--cinch-radius-sm);
  font: inherit;
  max-inline-size: 100%;
  padding-block: 10px;
  padding-inline: 12px;
}

:where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--cinch-brand-navy-900);
  min-block-size: 20px;
  min-inline-size: 20px;
}

.cinch-container { width: min(calc(100% - 40px), var(--cinch-container-content)); margin-inline: auto; }
.cinch-reading { width: min(calc(100% - 40px), var(--cinch-container-reading)); margin-inline: auto; }
.cinch-section { padding-block: 48px; }
.cinch-section--subtle { background: var(--cinch-surface-subtle); }
.cinch-eyebrow { color: var(--cinch-brand-orange-700); font-weight: 700; letter-spacing: .01em; }
.cinch-lead { color: var(--cinch-text-secondary); font-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem); max-inline-size: 680px; }

@media (max-width: 767px) {
  .cinch-lead.wp-block-paragraph { box-sizing: border-box; padding-inline: clamp(10px, 2vw, 14px); }
}

@media (max-width: 480px) {
  .cinch-lead.wp-block-paragraph { padding-inline: 12px; }
}

.cinch-card { border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-md); padding: 20px; background: var(--cinch-surface-base); }
.cinch-evidence-marker { border-inline-start: 4px solid var(--cinch-brand-orange-500); padding-inline-start: 16px; }

/* Justify reading prose without altering interface, status, or contact text. */
.wp-block-post-content p:not(.cinch-eyebrow):not(.cinch-conceptual-label):not(.cinch-evidence-strip__item):not(.cinch-home-hero__trust):not(.cinch-resource-card__label):not(.cinch-workflow-step__number):not(.has-text-align-center):not(.has-text-align-left):not(.has-text-align-right):not(:has(a[href^="mailto:"])) {
  text-align: justify;
  text-align-last: start;
}

.wp-block-post-content :is(.wp-block-buttons, .cinch-button, .cinch-pilot-form, .cinch-contact-route) p {
  text-align: start;
  text-align-last: auto;
}

.cinch-trust-strip { align-items: stretch; display: grid; grid-auto-rows: minmax(72px, 1fr); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cinch-evidence-strip { background: var(--cinch-surface-base); border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-md); gap: 8px; padding: 8px; }
.cinch-evidence-strip__item { align-items: center; background: var(--cinch-surface-subtle); block-size: 100%; border-block-start: 2px solid var(--cinch-brand-orange-500); border-radius: var(--cinch-radius-sm); box-sizing: border-box; color: var(--cinch-brand-navy-900); display: flex; font-weight: 500; margin-block: 0; min-block-size: 72px; padding-block: 12px; padding-inline: 16px; }
.cinch-grid-4 { display: grid; gap: 16px; }
.cinch-problem-grid { align-items: stretch; grid-auto-rows: minmax(0, 1fr); margin-block-start: 32px; }
.cinch-problem-card { background: var(--cinch-surface-base); block-size: 100%; border-color: var(--cinch-border-default); border-block-start: 2px solid var(--cinch-brand-orange-500); box-sizing: border-box; display: flex; flex-direction: column; min-block-size: 100%; padding: 28px 24px; }
.cinch-problem-card::before { background: var(--cinch-brand-navy-700); block-size: 2px; content: ""; inline-size: 28px; margin-block-end: 16px; }
.cinch-problem-card h3 { color: var(--cinch-brand-navy-900); font-size: clamp(1.25rem, 1.1rem + .3vw, 1.5rem); margin-block: 0 12px; }
.cinch-problem-card p { color: var(--cinch-text-secondary); margin-block: 0; }
.cinch-hero { padding-block: 56px; }
.cinch-hero__layout { align-items: center; display: grid; gap: 32px; }
.cinch-home-hero { background: var(--cinch-surface-base); }
.cinch-home-hero__content > :first-child { margin-block-start: 0; }
.cinch-home-hero h1 { color: var(--cinch-brand-navy-900); letter-spacing: -0.015em; margin-block: 12px 20px; }
.cinch-home-hero__trust { border-inline-start: 2px solid var(--cinch-brand-orange-500); color: var(--cinch-brand-navy-800); font-weight: 500; margin-block: 24px; padding-inline-start: 12px; }
.cinch-home-hero__actions { gap: 12px; margin-block: 28px 0; }
.cinch-home-hero__actions .wp-block-button__link { font-family: var(--cinch-font-persian-shell); font-weight: 600; white-space: nowrap; }
.cinch-home-hero__actions .wp-block-button:first-child .wp-block-button__link { background: var(--cinch-brand-orange-500); }
.cinch-home-hero__actions .wp-block-button:first-child .wp-block-button__link:hover,
.cinch-home-hero__actions .wp-block-button:first-child .wp-block-button__link:focus-visible { background: var(--cinch-brand-orange-600); }
.cinch-home-hero__actions .is-style-outline .wp-block-button__link { background: transparent; border: 1px solid var(--cinch-brand-navy-700); color: var(--cinch-brand-navy-700); }
.cinch-home-hero__actions .is-style-outline .wp-block-button__link:hover,
.cinch-home-hero__actions .is-style-outline .wp-block-button__link:focus-visible { background: var(--cinch-brand-navy-50); color: var(--cinch-brand-navy-900); }
.cinch-home-hero__trail { background: var(--cinch-brand-navy-50); border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-lg); padding: clamp(24px, 4vw, 40px); position: relative; }
.cinch-home-hero__trail::before { background: var(--cinch-brand-orange-500); block-size: 2px; content: ""; inline-size: 40px; inset-block-start: 0; inset-inline-start: clamp(24px, 4vw, 40px); position: absolute; }
.cinch-home-hero__trail h2 { color: var(--cinch-brand-navy-900); margin-block: 8px 24px; }
.cinch-conceptual-label { color: var(--cinch-text-secondary); font-size: 0.875rem; font-weight: 600; letter-spacing: .01em; margin-block: 0; }
.cinch-evidence-trail { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.cinch-evidence-trail li { align-items: center; background: var(--cinch-surface-base); border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-sm); color: var(--cinch-brand-navy-800); display: flex; font-weight: 500; min-block-size: 52px; padding-block: 10px; padding-inline: 16px; }
.cinch-evidence-trail li::before { background: var(--cinch-brand-orange-500); border-radius: 50%; content: ""; flex: 0 0 auto; inline-size: 7px; block-size: 7px; margin-inline-end: 10px; }
.cinch-evidence-strip-section { padding-block: 0 48px; }
.cinch-evidence-strip__item { box-shadow: 0 1px 2px rgb(15 38 72 / 0.04); }
.cinch-home-problems > .wp-block-group > .cinch-lead { margin-block-end: 0; }
.cinch-section.cinch-product-promise { background: var(--cinch-surface-base); padding-block-end: 40px; }
.cinch-product-promise__inner { background: var(--cinch-brand-navy-50); border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-lg); padding: clamp(24px, 4vw, 48px); }
.cinch-product-promise h2 { color: var(--cinch-brand-navy-900); max-inline-size: 900px; margin-block: 12px 28px; }
.cinch-promise-list { align-items: stretch; display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.cinch-promise-list li { align-items: center; background: var(--cinch-surface-base); border: 1px solid var(--cinch-border-default); border-inline-start: 2px solid var(--cinch-brand-orange-500); border-radius: var(--cinch-radius-sm); color: var(--cinch-brand-navy-800); display: flex; font-weight: 500; margin-block: 0; min-block-size: 68px; padding-block: 14px; padding-inline: 16px; }

/* Homepage process, use cases and transition CTA. */
.cinch-section.cinch-how-cinch-works { background: var(--cinch-surface-base); padding-block: 40px; }
.cinch-how-cinch-works h2,
.cinch-use-cases h2 { color: var(--cinch-brand-navy-900); margin-block-start: 0; }
.cinch-workflow-grid { display: grid; gap: 16px; margin-block-start: 32px; }
.cinch-workflow-step { background: var(--cinch-surface-base); border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-md); box-sizing: border-box; min-block-size: 100%; padding: 24px; position: relative; }
.cinch-workflow-step__number { align-items: center; background: var(--cinch-surface-base); border: 2px solid var(--cinch-brand-navy-700); border-radius: 50%; color: var(--cinch-brand-navy-900); display: flex; font-size: 1rem; font-weight: 700; justify-content: center; line-height: 1; margin-block: 0 20px; min-block-size: 40px; inline-size: 40px; position: relative; z-index: 1; }
.cinch-workflow-step:nth-child(4) .cinch-workflow-step__number { border-inline-start-color: var(--cinch-brand-orange-500); }
.cinch-workflow-step h3,
.cinch-use-case-card h3 { color: var(--cinch-brand-navy-900); font-size: clamp(1.1875rem, 1.1rem + .25vw, 1.375rem); margin-block: 0 12px; }
.cinch-workflow-step p:not(.cinch-workflow-step__number),
.cinch-use-case-card p { color: var(--cinch-text-secondary); margin-block: 0; }
.cinch-use-case-grid { align-items: stretch; grid-auto-rows: minmax(0, 1fr); margin-block-start: 32px; }
.cinch-section.cinch-use-cases { padding-block-start: 40px; }
.cinch-use-case-card { block-size: 100%; border-block-start: 3px solid var(--cinch-brand-navy-700); box-sizing: border-box; display: flex; flex-direction: column; padding: 28px 24px; }
.cinch-use-case-card:nth-child(2) { border-block-start-color: var(--cinch-brand-orange-500); }
.cinch-use-case-card h3::after { background: var(--cinch-brand-navy-100); block-size: 1px; content: ""; display: block; inline-size: 36px; margin-block-start: 16px; }
.cinch-use-case-card:nth-child(2) h3::after { background: var(--cinch-brand-orange-100); }
.cinch-pilot-cta { background: var(--cinch-surface-base); }
.cinch-pilot-cta__inner { background: var(--cinch-brand-navy-50); border: 1px solid var(--cinch-border-default); border-block-start: 3px solid var(--cinch-brand-orange-500); border-radius: var(--cinch-radius-lg); padding: clamp(28px, 5vw, 56px); }
.cinch-pilot-cta__inner h2 { color: var(--cinch-brand-navy-900); margin-block: 0 16px; }
.cinch-pilot-cta__inner .cinch-lead { margin-inline: auto; }
.cinch-pilot-cta__actions { gap: 12px; margin-block: 28px 0; }
.cinch-pilot-cta__actions .wp-block-button__link { background: var(--cinch-brand-navy-900); font-family: var(--cinch-font-persian-shell); font-weight: 600; white-space: nowrap; }
.cinch-pilot-cta__actions .wp-block-button__link:hover,
.cinch-pilot-cta__actions .wp-block-button__link:focus-visible { background: var(--cinch-brand-navy-800); }
.cinch-pilot-cta__actions .is-style-outline .wp-block-button__link { background: transparent; border: 1px solid var(--cinch-brand-navy-700); color: var(--cinch-brand-navy-700); }
.cinch-pilot-cta__actions .is-style-outline .wp-block-button__link:hover,
.cinch-pilot-cta__actions .is-style-outline .wp-block-button__link:focus-visible { background: var(--cinch-surface-base); color: var(--cinch-brand-navy-900); }

/* Homepage resources, FAQ and operating principles. */
.cinch-resources-preview h2,
.cinch-home-faq h2,
.cinch-operating-principles h2 { color: var(--cinch-brand-navy-900); margin-block-start: 0; }
.cinch-resource-grid { align-items: stretch; display: grid; gap: 16px; grid-auto-rows: minmax(0, 1fr); margin-block-start: 32px; }
.cinch-resource-card { background: var(--cinch-surface-base); block-size: 100%; box-sizing: border-box; display: flex; flex-direction: column; padding: 28px 24px; }
.cinch-resource-card__label { align-self: flex-start; background: var(--cinch-brand-orange-50); border: 1px solid var(--cinch-brand-orange-100); border-radius: 999px; color: var(--cinch-brand-orange-700); font-size: .875rem; font-weight: 600; margin-block: 0 20px; padding-block: 2px; padding-inline: 10px; }
.cinch-resource-card h3,
.cinch-faq-card h3,
.cinch-principle-card h3 { color: var(--cinch-brand-navy-900); font-size: clamp(1.1875rem, 1.1rem + .25vw, 1.375rem); margin-block: 0 12px; }
.cinch-resource-card p:not(.cinch-resource-card__label),
.cinch-faq-card p,
.cinch-principle-card p { color: var(--cinch-text-secondary); margin-block: 0; }
.cinch-home-faq { background: var(--cinch-surface-base); }
.cinch-faq-grid { display: grid; gap: 16px; margin-block-start: 32px; }
.cinch-faq-card { background: var(--cinch-surface-subtle); border: 1px solid var(--cinch-border-default); border-inline-start: 3px solid var(--cinch-brand-navy-700); border-radius: var(--cinch-radius-md); box-sizing: border-box; padding: 24px; }
.cinch-faq-card:nth-child(3n + 1) { border-inline-start-color: var(--cinch-brand-orange-500); }
.cinch-principle-grid { align-items: stretch; grid-auto-rows: minmax(0, 1fr); margin-block-start: 32px; }
.cinch-principle-card { background: var(--cinch-surface-base); block-size: 100%; border-block-start: 2px solid var(--cinch-brand-navy-700); box-sizing: border-box; display: flex; flex-direction: column; padding: 28px 24px; }
.cinch-principle-card:nth-child(2) { border-block-start-color: var(--cinch-brand-orange-500); }
.cinch-home-contact { background: var(--cinch-surface-base); }
.cinch-home-contact__inner { align-items: center; background: var(--cinch-brand-navy-50); border: 1px solid var(--cinch-border-default); border-block-start: 3px solid var(--cinch-brand-orange-500); border-radius: var(--cinch-radius-lg); display: grid; gap: 24px; padding: clamp(28px, 5vw, 48px); }
.cinch-home-contact__content { min-inline-size: 0; }
.cinch-home-contact__content > :first-child { margin-block-start: 0; }
.cinch-home-contact__content > :last-child { margin-block-end: 0; }
.cinch-home-contact h2 { color: var(--cinch-brand-navy-900); margin-block: 0 12px; }
.cinch-home-contact__actions { margin-block: 0; }
.cinch-home-contact__actions .wp-block-button__link { background: var(--cinch-brand-navy-900); font-family: var(--cinch-font-persian-shell); font-weight: 600; text-align: center; white-space: normal; }
.cinch-home-contact__actions .wp-block-button__link:hover,
.cinch-home-contact__actions .wp-block-button__link:focus-visible { background: var(--cinch-brand-navy-800); }

/* Homepage motion and interaction polish. Content remains visible until the local motion script enables these rules. */
html.cinch-motion-ready .cinch-reveal {
  opacity: 0;
  transform: translate3d(0, 14px, 0);
  transition: opacity 520ms var(--cinch-easing-standard) var(--cinch-reveal-delay, 0ms), transform 520ms var(--cinch-easing-standard) var(--cinch-reveal-delay, 0ms), border-color var(--cinch-motion-base) var(--cinch-easing-standard), box-shadow var(--cinch-motion-base) var(--cinch-easing-standard);
}
html.cinch-motion-ready .cinch-reveal:not(.is-visible) { will-change: opacity, transform; }
html.cinch-motion-ready .cinch-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0); will-change: auto; }
.cinch-reveal--stagger > .cinch-reveal:nth-child(1) { --cinch-reveal-delay: 40ms; }
.cinch-reveal--stagger > .cinch-reveal:nth-child(2) { --cinch-reveal-delay: 90ms; }
.cinch-reveal--stagger > .cinch-reveal:nth-child(3) { --cinch-reveal-delay: 140ms; }
.cinch-reveal--stagger > .cinch-reveal:nth-child(4) { --cinch-reveal-delay: 190ms; }
.cinch-reveal--stagger > .cinch-reveal:nth-child(n + 5) { --cinch-reveal-delay: 190ms; }
.cinch-home-hero .cinch-eyebrow.cinch-reveal--hero { --cinch-reveal-delay: 30ms; }
.cinch-home-hero h1.cinch-reveal--hero { --cinch-reveal-delay: 80ms; }
.cinch-home-hero__content > .cinch-lead.cinch-reveal--hero { --cinch-reveal-delay: 130ms; }
.cinch-home-hero__trust.cinch-reveal--hero { --cinch-reveal-delay: 170ms; }
.cinch-home-hero__actions.cinch-reveal--hero { --cinch-reveal-delay: 210ms; }
.cinch-home-hero__trail.cinch-reveal--hero { --cinch-reveal-delay: 160ms; }
.cinch-home-contact__content.cinch-reveal--contact { --cinch-reveal-delay: 40ms; }
.cinch-home-contact__actions.cinch-reveal--contact { --cinch-reveal-delay: 100ms; }

.cinch-home-problems .cinch-problem-card,
.cinch-product-promise .cinch-promise-list li,
.cinch-how-cinch-works .cinch-workflow-step,
.cinch-use-cases .cinch-use-case-card,
.cinch-operating-principles .cinch-principle-card,
.cinch-pilot-cta .cinch-promise-list li,
.cinch-resources-preview .cinch-resource-card,
.cinch-home-faq .cinch-faq-card {
  transition: border-color var(--cinch-motion-base) var(--cinch-easing-standard), box-shadow var(--cinch-motion-base) var(--cinch-easing-standard), transform var(--cinch-motion-base) var(--cinch-easing-standard);
}

@media (hover: hover) {
  .cinch-home-problems .cinch-problem-card:hover,
  .cinch-product-promise .cinch-promise-list li:hover,
  .cinch-how-cinch-works .cinch-workflow-step:hover,
  .cinch-use-cases .cinch-use-case-card:hover,
  .cinch-operating-principles .cinch-principle-card:hover,
  .cinch-pilot-cta .cinch-promise-list li:hover,
  .cinch-resources-preview .cinch-resource-card:hover,
  .cinch-home-faq .cinch-faq-card:hover {
    border-color: var(--cinch-brand-navy-700);
    box-shadow: 0 8px 18px rgb(15 38 72 / 0.08);
    transform: translate3d(0, -3px, 0);
  }

  .cinch-home-hero__actions .wp-block-button__link:hover,
  .cinch-pilot-cta__actions .wp-block-button__link:hover,
  .cinch-home-contact__actions .wp-block-button__link:hover {
    box-shadow: 0 6px 14px rgb(15 38 72 / 0.12);
    transform: translate3d(0, -2px, 0);
  }
}

.cinch-home-problems .cinch-problem-card:focus-within,
.cinch-product-promise .cinch-promise-list li:focus-within,
.cinch-how-cinch-works .cinch-workflow-step:focus-within,
.cinch-use-cases .cinch-use-case-card:focus-within,
.cinch-operating-principles .cinch-principle-card:focus-within,
.cinch-pilot-cta .cinch-promise-list li:focus-within,
.cinch-resources-preview .cinch-resource-card:focus-within,
.cinch-home-faq .cinch-faq-card:focus-within {
  border-color: var(--cinch-brand-navy-700);
  box-shadow: 0 6px 14px rgb(15 38 72 / 0.08);
}

.cinch-home-hero__actions .wp-block-button__link,
.cinch-pilot-cta__actions .wp-block-button__link,
.cinch-home-contact__actions .wp-block-button__link {
  transition: background-color var(--cinch-motion-base) var(--cinch-easing-standard), border-color var(--cinch-motion-base) var(--cinch-easing-standard), box-shadow var(--cinch-motion-base) var(--cinch-easing-standard), color var(--cinch-motion-base) var(--cinch-easing-standard), transform var(--cinch-motion-base) var(--cinch-easing-standard);
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html.cinch-motion-ready .cinch-reveal,
  html.cinch-motion-ready .cinch-reveal.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
    will-change: auto;
  }

  .cinch-home-problems .cinch-problem-card,
  .cinch-product-promise .cinch-promise-list li,
  .cinch-how-cinch-works .cinch-workflow-step,
  .cinch-use-cases .cinch-use-case-card,
  .cinch-operating-principles .cinch-principle-card,
  .cinch-pilot-cta .cinch-promise-list li,
  .cinch-resources-preview .cinch-resource-card,
  .cinch-home-faq .cinch-faq-card,
  .cinch-home-hero__actions .wp-block-button__link,
  .cinch-pilot-cta__actions .wp-block-button__link,
  .cinch-home-contact__actions .wp-block-button__link {
    transition: none;
  }
}

/* Keep repeated Gutenberg items on one shared top baseline. */
.cinch-evidence-strip > .cinch-evidence-strip__item,
.cinch-problem-grid > .cinch-problem-card,
.cinch-workflow-grid > .cinch-workflow-step,
.cinch-use-case-grid > .cinch-use-case-card,
.cinch-resource-grid > .cinch-resource-card,
.cinch-faq-grid > .cinch-faq-card,
.cinch-principle-grid > .cinch-principle-card { margin-block-start: 0; }

/* Global shell: header, navigation, skip link and footer. */
.skip-link.screen-reader-text {
  background: var(--cinch-brand-navy-900);
  border-radius: var(--cinch-radius-sm);
  clip: auto;
  clip-path: none;
  color: var(--cinch-surface-base);
  height: auto;
  inset-block-start: 8px;
  inset-inline-start: 8px;
  margin: 0;
  overflow: visible;
  padding-block: 10px;
  padding-inline: 16px;
  position: fixed !important;
  transform: translateY(-200%);
  transition: transform var(--cinch-motion-fast) var(--cinch-easing-standard);
  width: auto;
  z-index: 100000;
}
.skip-link.screen-reader-text:focus { color: var(--cinch-surface-base); transform: translateY(0); }

.cinch-site-header { background: var(--cinch-surface-base); font-family: var(--cinch-font-persian-shell); padding-block: 24px !important; position: relative; z-index: 10; }
.cinch-site-header__inner { align-items: center; column-gap: 24px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; margin-inline: auto; row-gap: 12px; width: min(calc(100% - 32px), var(--cinch-container-content)); }
.cinch-site-header__brand { align-items: center; gap: 6px; min-inline-size: 0; }
.cinch-site-header__logo { margin-block: 0; }
.cinch-site-header__logo img { display: block; height: auto; max-height: 60px; max-inline-size: 100%; width: auto; }
.cinch-site-header__tagline { color: var(--cinch-text-secondary); line-height: 1.5; margin-block: 0; }
.cinch-primary-navigation { justify-self: center; min-inline-size: 0; }
.cinch-primary-navigation .wp-block-navigation-item__content { font-family: var(--cinch-font-persian-shell); font-weight: 500; padding-block: 8px; padding-inline: 8px; }
.cinch-primary-navigation .wp-block-navigation-item__content:hover,
.cinch-primary-navigation .wp-block-navigation-item__content:focus-visible { color: var(--cinch-brand-orange-700); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
.cinch-primary-navigation .current-menu-item > .wp-block-navigation-item__content { color: var(--cinch-brand-orange-700); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.cinch-site-header__actions { align-items: center; gap: 10px; justify-self: start; margin-block: 0; }
.cinch-site-header__buttons { gap: 8px; margin-block: 0; }
.cinch-site-header__actions .wp-block-button__link { font-family: var(--cinch-font-persian-shell); font-weight: 600; white-space: nowrap; }
.cinch-site-header__actions .wp-block-button:first-child .wp-block-button__link { background: var(--cinch-brand-orange-500); }
.cinch-site-header__actions .wp-block-button:first-child .wp-block-button__link:hover,
.cinch-site-header__actions .wp-block-button:first-child .wp-block-button__link:focus-visible { background: var(--cinch-brand-orange-600); }
.cinch-site-header__actions .is-style-outline .wp-block-button__link {
  background: transparent;
  border: 1px solid var(--cinch-brand-navy-700);
  color: var(--cinch-brand-navy-700);
}
.cinch-site-header__actions .is-style-outline .wp-block-button__link:hover,
.cinch-site-header__actions .is-style-outline .wp-block-button__link:focus-visible {
  background: var(--cinch-brand-navy-50);
  color: var(--cinch-brand-navy-900);
}
.cinch-contact-icons { align-items: center; display: flex; gap: 6px; margin: 0; }
.cinch-contact-icon { align-items: center; background: var(--cinch-surface-base); block-size: 38px; border: 1px solid var(--cinch-border-default); border-radius: var(--cinch-radius-sm); box-sizing: border-box; color: var(--cinch-brand-navy-700); display: inline-flex; flex: 0 0 auto; inline-size: 38px; justify-content: center; padding: 8px; text-decoration: none; }
.cinch-contact-icon svg { block-size: 20px; fill: none; inline-size: 20px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
a.cinch-contact-icon:hover,
a.cinch-contact-icon:focus-visible { background: var(--cinch-brand-navy-50); border-color: var(--cinch-brand-navy-700); color: var(--cinch-brand-navy-900); }
.cinch-contact-icon--disabled { background: var(--cinch-surface-subtle); color: var(--cinch-text-tertiary); cursor: default; opacity: .62; }
.cinch-contact-icon__label,
.cinch-contact-icon__status { display: none; }
.cinch-site-header :where(h1, h2, h3, h4, h5, h6),
.cinch-site-footer :where(h1, h2, h3, h4, h5, h6) { font-family: var(--cinch-font-persian-shell); }
.cinch-site-footer { border-block-start: 1px solid var(--cinch-brand-orange-500); font-family: var(--cinch-font-persian-shell); margin-block-start: 0; }
.cinch-site-footer__inner { margin-inline: auto; width: min(calc(100% - 40px), var(--cinch-container-content)); }
.cinch-site-footer__grid { align-items: stretch; gap: clamp(32px, 5vw, 64px); margin-block-end: 0; }
.cinch-site-footer__brand { color: var(--cinch-surface-base); font-size: 1.35rem; font-weight: 600; margin-block: 0 16px; }
.cinch-site-footer__statement { color: var(--cinch-surface-base); font-weight: 400; max-inline-size: 42rem; }
.cinch-site-footer__compliance { border-inline-start: 2px solid var(--cinch-brand-orange-500); color: var(--cinch-surface-base); font-weight: 500; padding-inline-start: 10px; }
.cinch-contact-icons--footer { gap: 8px; margin-block-start: 22px; }
.cinch-contact-icons--footer .cinch-contact-icon { background: rgb(255 255 255 / 0.04); border-color: var(--cinch-brand-navy-700); color: var(--cinch-surface-base); }
.cinch-contact-icons--footer .cinch-contact-icon--disabled { color: var(--cinch-brand-navy-100); opacity: .52; }
.cinch-contact-icons--footer a.cinch-contact-icon:hover,
.cinch-contact-icons--footer a.cinch-contact-icon:focus-visible { background: var(--cinch-brand-navy-800); border-color: var(--cinch-brand-orange-500); color: var(--cinch-surface-base); }
.cinch-site-footer__links { border-block-start: 1px solid var(--cinch-brand-navy-700); display: flex; flex-wrap: wrap; gap: 8px 18px; list-style: none; margin-block: 22px 0; padding-block-start: 18px; padding-inline: 0; }
.cinch-site-footer__links li { margin: 0; }
.cinch-site-footer__links a,
.cinch-site-footer__contact-group a { color: var(--cinch-surface-base); font-weight: 400; text-decoration: underline; text-underline-offset: 0.18em; }
.cinch-site-footer__links a { font-size: .875rem; }
.cinch-site-footer__links a:hover,
.cinch-site-footer__links a:focus-visible,
.cinch-site-footer__contact-group a:hover,
.cinch-site-footer__contact-group a:focus-visible { color: var(--cinch-brand-orange-100); }
.cinch-site-footer__contact-group { border-inline-start: 1px solid var(--cinch-brand-navy-700); min-inline-size: 0; padding-inline-start: clamp(24px, 4vw, 48px); }
.cinch-site-footer__contact-group h3 { color: var(--cinch-surface-base); font-weight: 500; margin-block: 0 18px; }
.cinch-site-footer__email-list { display: grid; list-style: none; margin: 0; padding: 0; }
.cinch-site-footer__email-list li { border-block-start: 1px solid var(--cinch-brand-navy-700); display: grid; gap: 5px 16px; grid-template-columns: max-content minmax(0, 1fr); margin: 0; min-inline-size: 0; padding-block: 14px; }
.cinch-site-footer__email-list strong { color: var(--cinch-brand-orange-100); font-size: .9375rem; font-weight: 600; }
.cinch-site-footer__email-list a { font-size: .9375rem; justify-self: start; overflow-wrap: anywhere; unicode-bidi: plaintext; }
.cinch-site-footer__email-description { color: var(--cinch-brand-navy-100); font-size: .875rem; grid-column: 1 / -1; line-height: 1.8; }
.cinch-site-footer .wp-block-separator { border-color: var(--cinch-brand-navy-700); margin-block: 32px; }
.cinch-site-footer__copyright { color: var(--cinch-surface-base); margin-block: 0; }

@media (min-width: 640px) {
  .cinch-container { width: min(calc(100% - 64px), var(--cinch-container-content)); }
  .cinch-section { padding-block: 56px; }
  .cinch-evidence-strip-section { padding-block-end: 56px; }
  .cinch-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .cinch-workflow-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .cinch-resource-grid,
  .cinch-faq-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
}

@media (min-width: 1024px) {
  .cinch-container { width: min(calc(100% - 96px), var(--cinch-container-content)); }
  .cinch-section { padding-block: 64px; }
  .cinch-hero { padding-block: 80px 96px; }
  .cinch-hero__layout { grid-template-columns: 1.05fr .95fr; gap: 56px; }
  .cinch-evidence-strip-section { padding-block-end: 64px; }
  .cinch-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
  .cinch-workflow-grid { align-items: stretch; gap: 24px; grid-auto-rows: minmax(0, 1fr); grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .cinch-resource-grid { gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cinch-faq-grid { gap: 24px; }
  .cinch-home-contact__inner { grid-template-columns: minmax(0, 1fr) auto; }
  .cinch-workflow-step::after { background: var(--cinch-border-default); block-size: 2px; content: ""; inline-size: 24px; inset-block-start: 44px; inset-inline-end: calc(100% + 1px); position: absolute; }
  .cinch-workflow-step::before { background: var(--cinch-brand-orange-500); border-radius: 50%; block-size: 6px; content: ""; inline-size: 6px; inset-block-start: 42px; inset-inline-end: calc(100% + 10px); position: absolute; z-index: 1; }
  .cinch-workflow-step:last-child::after,
  .cinch-workflow-step:last-child::before { content: none; }
  .cinch-trust-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 1024px) and (max-width: 1170px) {
  .cinch-home-hero__layout { inline-size: min(calc(100% - 64px), var(--cinch-container-content)); margin-inline: auto; max-inline-size: 100%; }
}

@media (min-width: 951px) and (max-width: 1100px) {
  .cinch-site-header__inner { column-gap: 12px; }
  .cinch-primary-navigation .wp-block-navigation-item__content { padding-inline: 6px; }
  .cinch-site-header__actions { gap: 6px; }
  .cinch-site-header__buttons { gap: 6px; }
  .cinch-site-header__actions .wp-block-button__link { padding-inline: 14px; }
  .cinch-contact-icon { block-size: 34px; inline-size: 34px; padding: 7px; }
}

@media (max-width: 950px) {
  .cinch-site-header { padding-block: 18px !important; }
  .cinch-site-header__inner { align-items: center; display: flex; flex-direction: column; gap: 14px; justify-content: center; }
  .cinch-site-header__brand { align-items: center; text-align: center; }
  .cinch-site-header__logo img { max-height: 52px; }
  .cinch-primary-navigation { justify-content: center; width: 100%; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; margin-inline: auto; min-block-size: 44px; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
  .cinch-site-header__actions { display: none; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open { background: var(--cinch-surface-base); box-sizing: border-box; padding-block: 24px; padding-inline: clamp(1.25rem, 4vw, 1.5rem); }
  .cinch-primary-navigation .wp-block-navigation__responsive-dialog { margin-inline: auto; max-inline-size: 34rem; width: min(100%, 34rem); }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-content { align-items: stretch; gap: 12px; padding-block: 12px 148px; width: 100%; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-content .wp-block-navigation__container { align-items: stretch; gap: 8px; width: 100%; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-content .wp-block-navigation-item { inline-size: 100%; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content { display: block; padding-block: 12px; padding-inline: 16px; text-align: start; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__actions { align-items: stretch; display: flex; flex-wrap: wrap; gap: 8px; inline-size: min(calc(100% - 2.5rem), 34rem); inset-block-end: 24px; inset-inline: 0; justify-content: center; margin-inline: auto; position: fixed; z-index: 100001; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__buttons { flex: 1 1 100%; inline-size: 100%; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__actions .wp-block-button { flex: 1 1 12rem; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__actions .wp-block-button__link { inline-size: 100%; padding-inline: 16px; text-align: center; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-contact-icons--header { flex: 1 1 100%; justify-content: center; }
  .cinch-site-footer__inner { width: min(calc(100% - 40px), var(--cinch-container-content)); }
  .cinch-site-footer__grid { gap: 24px; }
}

@media (max-width: 800px) {
  .cinch-hero,
  .cinch-section,
  .cinch-evidence-strip-section { box-sizing: border-box; padding-inline: clamp(16px, 4vw, 24px); }
  .cinch-site-header__inner,
  .cinch-site-footer__inner { box-sizing: border-box; padding-inline: clamp(20px, 5vw, 32px); width: 100%; }
  .cinch-trust-strip,
  .cinch-grid-4,
  .cinch-workflow-grid,
  .cinch-resource-grid,
  .cinch-faq-grid { max-inline-size: 100%; min-inline-size: 0; }
  .cinch-trust-strip > *,
  .cinch-grid-4 > *,
  .cinch-workflow-grid > *,
  .cinch-resource-grid > *,
  .cinch-faq-grid > * { min-inline-size: 0; }
}

@media (max-width: 781px) {
  .cinch-site-footer__grid { flex-wrap: wrap !important; gap: 32px; }
  .cinch-site-footer__grid > .wp-block-column { flex-basis: 100% !important; }
  .cinch-site-footer__contact-group { border-block-start: 1px solid var(--cinch-brand-navy-700); border-inline-start: 0; padding-block-start: 28px; padding-inline-start: 0; }
}

@media (max-width: 639px) {
  .cinch-home-hero__actions { align-items: stretch; flex-direction: column; inline-size: min(100%, 22rem); }
  .cinch-home-hero__actions .wp-block-button,
  .cinch-home-hero__actions .wp-block-button__link { inline-size: 100%; text-align: center; }
  .cinch-promise-list { grid-template-columns: 1fr; }
  .cinch-pilot-cta__actions { align-items: stretch; flex-direction: column; inline-size: min(100%, 22rem); margin-inline: auto; }
  .cinch-pilot-cta__actions .wp-block-button,
  .cinch-pilot-cta__actions .wp-block-button__link { inline-size: 100%; text-align: center; }
  .cinch-site-header { padding-block: 16px !important; }
  .cinch-site-header__logo img { max-height: 44px; }
  .cinch-site-header__actions { flex-direction: column; inline-size: min(100%, 22rem); }
  .cinch-site-header__buttons { flex-direction: column; inline-size: 100%; }
  .cinch-site-header__actions .wp-block-button { flex: 0 1 auto; inline-size: 100%; }
  .cinch-site-header__actions .wp-block-button__link { inline-size: 100%; text-align: center; }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__actions { flex-direction: column; inline-size: min(calc(100% - 2.5rem), 22rem); }
  .cinch-site-header:has(.cinch-primary-navigation .wp-block-navigation__responsive-container.is-menu-open) .cinch-site-header__actions .wp-block-button { flex: 0 1 auto; }
  .cinch-primary-navigation .wp-block-navigation__responsive-container-content { padding-block-end: 196px; }
  .cinch-home-contact__actions,
  .cinch-home-contact__actions .wp-block-button,
  .cinch-home-contact__actions .wp-block-button__link { inline-size: 100%; text-align: center; }
}

@media (max-width: 479px) {
  .cinch-trust-strip { grid-template-columns: 1fr; }
  .cinch-site-footer__email-list li { grid-template-columns: minmax(0, 1fr); }
  .cinch-site-footer__email-description { grid-column: 1; }
}

/* Homepage spacing remains compact when its patterns are inserted into a Page. */
.home .cinch-section { padding-block: 36px; }
.home .cinch-hero { padding-block: 44px; }
.home .cinch-evidence-strip-section { padding-block-end: 36px; }

@media (max-width: 639px) {
  .cinch-card,
  .cinch-problem-card,
  .cinch-workflow-step,
  .cinch-use-case-card,
  .cinch-resource-card,
  .cinch-faq-card,
  .cinch-principle-card { padding-inline: 18px; }

  .cinch-home-hero__trail,
  .cinch-product-promise__inner,
  .cinch-pilot-cta__inner,
  .cinch-home-contact__inner { padding-inline: 20px; }
}

/* The home page is rendered inside post-content. Its Gutenberg layout padding
   must not stack with the CINCH section gutter on compact viewports. */
@media (max-width: 767px) {
  body.home .wp-site-blocks.has-global-padding {
    padding-inline: 0 !important;
  }

  body.home main,
  body.home .wp-block-post-content {
    box-sizing: border-box;
    inline-size: 100%;
    margin-inline: 0;
    max-inline-size: none;
    min-inline-size: 0;
    padding-inline: 0 !important;
  }

  body.home .wp-block-post-content :where(.wp-block-group, .wp-block-columns, .wp-block-column) {
    box-sizing: border-box;
    margin-inline: 0 !important;
    max-inline-size: 100%;
    min-inline-size: 0;
  }

  body.home .wp-block-post-content :where(.has-global-padding, .is-layout-constrained) {
    padding-inline: 0 !important;
  }

  body.home .wp-block-post-content :where(.alignwide, .alignfull) {
    box-sizing: border-box;
    inline-size: 100%;
    margin-inline: 0 !important;
    max-inline-size: 100%;
  }

  body.home .wp-block-post-content :is(.cinch-hero, .cinch-section, .cinch-evidence-strip-section) {
    padding-inline: 12px !important;
  }

  body.home .wp-block-post-content :is(.cinch-card, .cinch-feature-card, .cinch-problem-card, .cinch-workflow-step, .cinch-use-case-card, .cinch-resource-card, .cinch-faq-card, .cinch-principle-card) {
    padding-inline: 14px !important;
  }

  body.home .wp-block-post-content :is(.cinch-home-hero__trail, .cinch-product-promise__inner, .cinch-pilot-cta__inner, .cinch-home-contact__inner) {
    padding-inline: 14px !important;
  }
}

@media (max-width: 480px) {
  body.home .wp-block-post-content :is(.cinch-hero, .cinch-section, .cinch-evidence-strip-section) {
    padding-inline: 10px !important;
  }

  body.home .wp-block-post-content :is(.cinch-card, .cinch-feature-card, .cinch-problem-card, .cinch-workflow-step, .cinch-use-case-card, .cinch-resource-card, .cinch-faq-card, .cinch-principle-card, .cinch-home-hero__trail, .cinch-product-promise__inner, .cinch-pilot-cta__inner, .cinch-home-contact__inner) {
    padding-inline: 12px !important;
  }
}

@media (min-width: 640px) {
  .home .cinch-section { padding-block: 48px; }
  .home .cinch-hero { padding-block: 56px; }
  .home .cinch-evidence-strip-section { padding-block-end: 48px; }
}

@media (min-width: 1024px) {
  .home .cinch-section { padding-block: 56px; }
  .home .cinch-hero { padding-block: 72px 80px; }
  .home .cinch-evidence-strip-section { padding-block-end: 56px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media print {
  header, footer, nav, .wp-block-buttons { display: none !important; }
  body { color: #000; background: #fff; font-size: 12pt; }
  a { color: #000; text-decoration: underline; }
}
