/* Yotzer refresh layer (quick wins from design-review.md).
   Loaded last on every page; overrides the exported Elementor styles. */

:root {
  --yz-navy: #0C1D2F;
  --yz-magenta: #DB205F;
  --yz-magenta-ink: #C21A53;
  --yz-sky: #63A8D8;
  --yz-sky-ink: #2F6FA8;
  --yz-mustard: #F2B705;
  --yz-ink: #383838;
  --yz-paper: #F2F2F2;
  --yz-shadow: 0 1px 2px rgba(12, 29, 47, .06), 0 8px 24px rgba(12, 29, 47, .08);
}

/* 2. No faux bold: Secular One ships one weight only. */
h1, h2, h3, h4, h5, h6, .elementor-heading-title { font-synthesis: none; }

/* 3. Fluid type scale */
.elementor-widget-heading h2.elementor-heading-title { font-size: clamp(1.75rem, 3.2vw, 2.5rem); line-height: 1.2; }
.elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1.25rem, 2vw, 1.5rem); }
.elementor-widget-text-editor { font-size: clamp(1.0625rem, 1.2vw, 1.125rem); line-height: 1.7; }

/* 4. Comfortable line length: wide text blocks become a centred reading column */
.elementor-widget-text-editor p,
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol { max-width: 70ch; margin-inline: auto; }

/* 5. Buttons */
.elementor-button {
  border-radius: 999px;
  padding: 14px 28px;
  min-height: 48px;
  font-weight: 700;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
.elementor-button:hover { filter: brightness(.92); transform: translateY(-1px); box-shadow: var(--yz-shadow); }
a:focus-visible, button:focus-visible, .elementor-button:focus-visible, input:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid var(--yz-mustard);
  outline-offset: 3px;
}

/* 7. "What's on the site?" tiles become cards (home page) */
[data-id="2cad44c"] { gap: 20px; }
[data-id="2cad44c"] > .e-con {
  background: #fff;
  border-radius: 16px;
  box-shadow: var(--yz-shadow);
  padding: 22px 16px 18px;
  border-top: 4px solid var(--yz-navy);
  transition: transform .15s ease;
}
[data-id="2cad44c"] > .e-con:hover { transform: translateY(-3px); }
[data-id="2cad44c"] > .e-con:nth-child(1) { border-top-color: var(--yz-magenta); }
[data-id="2cad44c"] > .e-con:nth-child(2) { border-top-color: var(--yz-mustard); }
[data-id="2cad44c"] > .e-con:nth-child(3) { border-top-color: var(--yz-sky); }
[data-id="2cad44c"] .elementor-icon-box-title { font-size: 1.25rem; }

/* 8. Partner logos: calm greyscale strip, colour on hover */
[data-id="60a35974"] .elementor-widget-image img {
  height: 48px;
  width: auto;
  max-width: 170px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .7;
  transition: filter .2s ease, opacity .2s ease;
}
[data-id="60a35974"] .elementor-widget-image img:hover { filter: none; opacity: 1; }

/* 9. Inner-page title: navy label instead of the grey pill (flagged by refresh.js) */
.yz-hero-title {
  background: var(--yz-navy) !important;
  border-radius: 14px !important;
  box-shadow: var(--yz-shadow);
}
.yz-hero-title .elementor-heading-title { color: #fff !important; }

/* Accessibility: counter captions pass AA contrast */
.elementor-counter-title { color: var(--yz-sky-ink) !important; }

/* Hero quote: keep Hebrew quote marks in place when lines wrap */
[data-id="c711d67"] .elementor-heading-title { unicode-bidi: plaintext; }

/* Footer links: bigger tap targets */
[data-elementor-type="footer"] .elementor-icon-list-item > a,
[data-elementor-type="footer"] .elementor-nav-menu a { padding-block: 6px; }

/* Mobile: keep text off the screen edge */
@media (max-width: 767px) {
  [data-elementor-type="wp-page"] .elementor-widget-text-editor,
  [data-elementor-type="wp-page"] .elementor-widget-heading { padding-inline: 10px; }
  [data-id="2cad44c"] > .e-con { padding: 18px 10px 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-button, [data-id="2cad44c"] > .e-con { transition: none; }
  .elementor-button:hover, [data-id="2cad44c"] > .e-con:hover { transform: none; }
}
