/* ===================================================================
   Ohr Chodosh — design polish layer (2026)
   Restrained modernization: typography rhythm, soft depth, motion.
   No layout or content changes. Loads after the theme CSS.
   =================================================================== */

:root {
  --oc-orange: #F6901D;
  --oc-ink: #233649;
  --oc-shadow: 25, 45, 70;
}

/* ---------- typography rhythm ---------- */
h1, h2, h3 { letter-spacing: -0.015em; line-height: 1.18; }
h1 { line-height: 1.12; }
p { line-height: 1.7; }
.section p { color: #3d4c5c; }

/* ---------- header: soft elevation + glass when sticky ---------- */
#header .header-wrapper { transition: box-shadow .3s ease, background-color .3s ease; box-shadow: 0 1px 0 rgba(var(--oc-shadow), .06); }
#header.stuck .header-wrapper,
.header.has-sticky .stuck .header-wrapper {
  background: rgba(255, 255, 255, .93) !important;
  -webkit-backdrop-filter: saturate(1.4) blur(10px);
  backdrop-filter: saturate(1.4) blur(10px);
  box-shadow: 0 6px 24px rgba(var(--oc-shadow), .10);
}
.nav > li > a { transition: color .22s ease; }

/* ---------- buttons: lift + glow on hover ---------- */
.button, button.button, a.button {
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(246, 144, 29, .30); filter: brightness(1.05); }
.button:active { transform: translateY(0); box-shadow: 0 4px 10px rgba(246, 144, 29, .25); }
.button:focus-visible { outline: 3px solid rgba(246, 144, 29, .45); outline-offset: 2px; }

/* ---------- content images: soft corners + gentle depth ---------- */
.section .img-inner,
.section .col .img img,
.card_boxes_images img {
  border-radius: 14px;
  overflow: hidden;
}
.section .col > .col-inner > .img .img-inner,
.card_boxes_images .img-inner {
  box-shadow: 0 14px 34px rgba(var(--oc-shadow), .14);
}

/* linked card boxes: hover lift */
.card_boxes_images .col-inner { transition: transform .28s ease; border-radius: 14px; }
.card_boxes_images .col-inner:hover { transform: translateY(-5px); }

/* ---------- banners: legibility scrim + text pop ---------- */
.banner { position: relative; background-color: #31435c; }
.banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 25, 45, .06) 40%, rgba(10, 25, 45, .30));
  pointer-events: none;
}
.banner h1, .banner h2, .banner h3 { text-shadow: 0 2px 18px rgba(10, 25, 45, .38); }
.banner p { text-shadow: 0 1px 10px rgba(10, 25, 45, .45); }

/* ---------- footer: crisp separation ---------- */
#footer { box-shadow: 0 -1px 0 rgba(var(--oc-shadow), .06); }
#footer a { transition: color .22s ease, opacity .22s ease; }
#footer a:hover { opacity: .85; }

/* ---------- finishing touches ---------- */
html { scroll-behavior: smooth; }
::selection { background: rgba(246, 144, 29, .28); }
img { image-rendering: auto; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button:hover, .card_boxes_images .col-inner:hover { transform: none; }
  #header .header-wrapper, .button, .card_boxes_images .col-inner { transition: none; }
}
