.home-gate-intro {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #f4d77a;
  background: #020806;
  direction: rtl;
  perspective: 1500px;
  contain: layout paint style;
}

.home-gate-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 38% 28%, rgba(255, 224, 132, .2) 0 1px, transparent 2px),
    radial-gradient(circle at 62% 36%, rgba(255, 224, 132, .18) 0 1px, transparent 2px),
    radial-gradient(circle at 48% 68%, rgba(255, 224, 132, .16) 0 1px, transparent 2px),
    radial-gradient(circle at 71% 70%, rgba(255, 224, 132, .14) 0 1px, transparent 2px);
  background-size: 260px 260px, 330px 330px, 410px 410px, 500px 500px;
  opacity: .72;
  pointer-events: none;
}

html.gate-intro-active,
body.gate-intro-active {
  overflow: hidden;
}

.home-gate-intro.is-hidden {
  display: none;
}

.home-gate-intro.is-revealing {
  opacity: 0;
  transform: scale(1.02);
  transition: opacity .24s ease, transform .26s cubic-bezier(.16, .84, .28, 1);
  pointer-events: none;
}

.gate-intro-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 38%, rgba(229, 184, 79, .18), transparent 22%),
    radial-gradient(circle at 50% 58%, rgba(3, 85, 43, .32), transparent 42%),
    linear-gradient(115deg, rgba(0, 7, 5, .98), rgba(0, 38, 19, .95) 46%, rgba(1, 6, 5, .99)),
    url("assets/torat-avi-green-texture-clean.webp") center / cover no-repeat;
}

.gate-intro-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .74), transparent 32%, transparent 68%, rgba(0, 0, 0, .74)),
    radial-gradient(ellipse at 50% 48%, transparent 0 30%, rgba(0, 0, 0, .58) 78%);
}

.gate-intro-world {
  position: relative;
  width: min(860px, 92vw);
  height: min(720px, 82vh);
  display: grid;
  place-items: center;
  transform-style: preserve-3d;
  transform: translate3d(0, 0, 0) scale(1);
  opacity: 1;
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.home-gate-intro.is-ready .gate-intro-world {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.gate-intro-light {
  position: absolute;
  top: 25%;
  left: 50%;
  width: min(310px, 42vw);
  height: min(440px, 52vh);
  border-radius: 50%;
  background:
    radial-gradient(ellipse at center, rgba(255, 238, 168, .9) 0%, rgba(230, 177, 69, .38) 24%, rgba(0, 73, 35, .22) 50%, transparent 74%);
  filter: blur(18px);
  opacity: .16;
  transform: translateX(-50%) translateZ(-140px) scale(.65);
  will-change: transform, opacity;
}

.gate-intro-frame {
  position: relative;
  width: min(560px, 78vw);
  height: min(520px, 62vh);
  transform-style: preserve-3d;
  filter: drop-shadow(0 34px 60px rgba(0, 0, 0, .62));
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.gate-intro-frame::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 20%;
  right: -7%;
  bottom: -3%;
  left: -7%;
  border: 1px solid rgba(176, 138, 36, .34);
  border-radius: 210px 210px 10px 10px;
  background:
    radial-gradient(circle at 50% 8%, rgba(255, 232, 154, .1), transparent 34%),
    repeating-linear-gradient(0deg, rgba(255, 230, 150, .06) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(90deg, rgba(255, 230, 150, .045) 0 1px, transparent 1px 58px),
    linear-gradient(180deg, rgba(18, 23, 18, .92), rgba(5, 8, 6, .97));
  box-shadow:
    inset 0 0 0 1px rgba(255, 229, 145, .1),
    inset 0 42px 70px rgba(255, 224, 133, .05),
    inset 0 -38px 80px rgba(0, 0, 0, .6);
  opacity: .78;
  transform: translateZ(-24px);
}

.gate-intro-arch {
  position: absolute;
  z-index: 5;
  inset: -44px 4% auto;
  height: 48%;
  border: 9px solid rgba(176, 138, 36, .88);
  border-bottom: 0;
  border-radius: 999px 999px 0 0;
  background:
    linear-gradient(180deg, rgba(255, 230, 145, .12), transparent 45%),
    linear-gradient(90deg, rgba(6, 13, 10, .98), rgba(26, 29, 22, .96), rgba(6, 13, 10, .98));
  box-shadow:
    inset 0 0 0 2px rgba(255, 231, 154, .22),
    inset 0 -26px 44px rgba(0, 0, 0, .62),
    0 0 34px rgba(176, 138, 36, .24);
}

.gate-intro-arch-line {
  position: absolute;
  inset: 18px 22px auto;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255, 232, 150, .8), transparent);
}

.gate-intro-arch-crown {
  position: absolute;
  top: 24px;
  left: 50%;
  width: 24px;
  height: 24px;
  border: 2px solid rgba(255, 232, 150, .86);
  transform: translateX(-50%) rotate(45deg);
  background: linear-gradient(135deg, #fff0aa, #9b741d);
  box-shadow: 0 0 24px rgba(255, 226, 135, .35);
}

.gate-intro-pillar {
  position: absolute;
  z-index: 4;
  top: 28%;
  width: 11%;
  height: 73%;
  border: 2px solid rgba(176, 138, 36, .58);
  border-radius: 18px 18px 4px 4px;
  background:
    linear-gradient(90deg, rgba(255, 228, 142, .12), transparent 24%, rgba(0, 0, 0, .34) 75%),
    repeating-linear-gradient(180deg, rgba(255, 230, 150, .08) 0 8px, transparent 8px 36px),
    linear-gradient(180deg, #131913, #060907);
  box-shadow: inset 0 0 18px rgba(0, 0, 0, .58), 0 0 24px rgba(176, 138, 36, .13);
}

.gate-intro-pillar-right {
  right: -3%;
}

.gate-intro-pillar-left {
  left: -3%;
}

.gate-intro-door {
  position: absolute;
  z-index: 3;
  bottom: 0;
  width: 50%;
  height: 72%;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 2px solid rgba(176, 138, 36, .8);
  background:
    radial-gradient(circle at 50% 38%, rgba(176, 138, 36, .2), transparent 22%),
    linear-gradient(90deg, rgba(255, 230, 150, .08), transparent 22%, rgba(0, 0, 0, .34) 88%),
    repeating-linear-gradient(90deg, rgba(255, 218, 112, .08) 0 2px, transparent 2px 46px),
    linear-gradient(180deg, #111712, #050806 76%, #020302);
  box-shadow:
    inset 0 0 0 1px rgba(255, 229, 145, .18),
    inset 0 -32px 46px rgba(0, 0, 0, .64),
    0 0 28px rgba(0, 0, 0, .44);
  transform-style: preserve-3d;
  will-change: transform;
  backface-visibility: hidden;
}

.gate-intro-door::before {
  content: "";
  position: absolute;
  inset: 7% 9%;
  border-radius: 140px 140px 12px 12px;
  background:
    linear-gradient(90deg, transparent 48%, rgba(255, 231, 148, .42) 49% 51%, transparent 52%),
    radial-gradient(circle at 50% 42%, rgba(255, 227, 140, .14), transparent 28%);
  box-shadow:
    inset 0 0 0 1px rgba(255, 230, 148, .2),
    inset 0 0 28px rgba(0, 0, 0, .38);
}

.gate-intro-door::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 0 34%, rgba(255, 255, 255, .12) 38%, transparent 43% 100%);
  opacity: .36;
  mix-blend-mode: screen;
}

.gate-intro-door-right {
  right: 0;
  border-left-width: 1px;
  border-radius: 170px 0 0 8px;
  transform-origin: 100% 50%;
}

.gate-intro-door-left {
  left: 0;
  border-right-width: 1px;
  border-radius: 0 170px 8px 0;
  transform-origin: 0 50%;
}

.gate-door-ornament {
  position: absolute;
  inset: 12% 13%;
  border: 1px solid rgba(255, 228, 140, .45);
  border-radius: 999px 999px 18px 18px;
  box-shadow: inset 0 0 22px rgba(176, 138, 36, .14);
}

.gate-door-ornament::before,
.gate-door-ornament::after {
  content: "";
  position: absolute;
  inset: 16% 20%;
  border: 1px solid rgba(176, 138, 36, .38);
  border-radius: 50%;
}

.gate-door-ornament::after {
  inset: 33% 36%;
  border-radius: 0;
  transform: rotate(45deg);
  background: rgba(176, 138, 36, .18);
}

.gate-door-rail {
  position: absolute;
  top: 50%;
  width: 58%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255, 230, 148, .72), transparent);
  box-shadow: 0 0 18px rgba(255, 226, 139, .28);
}

.gate-intro-door strong {
  position: relative;
  z-index: 2;
  color: #B08A24;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", serif;
  font-size: clamp(1.35rem, 4vw, 2.55rem);
  text-shadow: 0 2px 0 rgba(0, 0, 0, .76), 0 0 18px rgba(255, 226, 133, .2);
}

.gate-intro-path {
  position: absolute;
  bottom: -16%;
  left: 50%;
  width: min(470px, 64vw);
  height: 58%;
  transform: translateX(-50%) translateZ(-220px) rotateX(62deg);
  transform-origin: 50% 100%;
  opacity: .52;
  overflow: hidden;
}

.gate-intro-path::before {
  content: "";
  position: absolute;
  inset: 0 34% 0;
  background:
    repeating-linear-gradient(180deg, rgba(255, 229, 146, .32) 0 2px, transparent 2px 42px),
    linear-gradient(90deg, transparent, rgba(255, 225, 139, .42), transparent);
  clip-path: polygon(42% 0, 58% 0, 100% 100%, 0 100%);
}

.gate-intro-path span {
  position: absolute;
  left: 50%;
  width: 58%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 232, 150, .64), transparent);
  transform: translateX(-50%);
}

.gate-intro-path span:nth-child(1) { top: 22%; }
.gate-intro-path span:nth-child(2) { top: 48%; width: 72%; }
.gate-intro-path span:nth-child(3) { top: 76%; width: 92%; }

.gate-intro-caption {
  position: absolute;
  top: 56%;
  right: 12%;
  bottom: auto;
  left: 12%;
  display: grid;
  justify-items: center;
  gap: 4px;
  transform: translate3d(0, 10px, 0) scale(.94);
  text-align: center;
  text-shadow: 0 12px 28px rgba(0, 0, 0, .72);
  opacity: 0;
  z-index: 2;
  pointer-events: none;
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.gate-intro-caption span {
  color: #B08A24;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", serif;
  font-size: clamp(1.8rem, 4.1vw, 3.55rem);
  font-weight: 950;
  line-height: .9;
}

.gate-intro-caption small {
  color: rgba(255, 249, 219, .92);
  font-size: clamp(1rem, 1.8vw, 1.3rem);
  font-weight: 800;
}

.home-gate-intro.is-opening .gate-intro-light {
  opacity: .84;
  transform: translateX(-50%) translateZ(-80px) scale(1.2);
  transition: opacity .7s ease, transform .82s cubic-bezier(.18, .78, .2, 1);
}

.home-gate-intro.is-opening .gate-intro-door-right {
  transform: rotateY(-76deg) translateZ(6px);
  transition: transform .95s cubic-bezier(.16, .84, .2, 1);
}

.home-gate-intro.is-opening .gate-intro-door-left {
  transform: rotateY(76deg) translateZ(6px);
  transition: transform .95s cubic-bezier(.16, .84, .2, 1);
}

.home-gate-intro.is-opening .gate-intro-caption {
  opacity: .98;
  transform: translate3d(0, 0, 0) scale(1);
  transition: opacity .42s ease .28s, transform .62s cubic-bezier(.18, .78, .2, 1) .22s;
}

.home-gate-intro.is-dolly .gate-intro-world {
  transform: translate3d(0, -2vh, 240px) scale(1.55);
  transition: transform .56s cubic-bezier(.13, .82, .2, 1);
}

.home-gate-intro.is-dolly .gate-intro-caption {
  opacity: 0;
  transform: translate3d(0, 14px, 0) scale(.98);
  transition: opacity .18s ease, transform .28s ease;
}

.home-gate-intro.is-dolly .gate-intro-bg {
  transform: scale(1.04);
  transition: transform .56s cubic-bezier(.13, .82, .2, 1);
}

.home-gate-intro.is-revealing .gate-intro-light {
  opacity: 1;
  transform: translateX(-50%) translateZ(120px) scale(2.2);
  transition: opacity .34s ease, transform .48s ease;
}

@media (max-width: 680px) {
  .gate-intro-world {
    width: 96vw;
    height: 78vh;
  }

  .gate-intro-frame {
    width: min(390px, 82vw);
    height: min(470px, 58vh);
  }

  .gate-intro-arch {
    border-width: 7px;
    top: -34px;
  }

  .gate-intro-pillar {
    width: 12%;
  }

  .gate-intro-door strong {
    font-size: clamp(1.05rem, 6vw, 1.75rem);
  }

  .gate-intro-caption {
    right: 10%;
    top: 56%;
    bottom: auto;
    left: 10%;
  }

  .gate-intro-caption span {
    font-size: clamp(1.45rem, 8vw, 2.35rem);
  }

  .gate-intro-caption small {
    font-size: clamp(.86rem, 3.8vw, 1.05rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-gate-intro {
    display: none !important;
  }
}

/* Main banner artwork with live ticker and active CTA restored. */
.horaa-top-strip {
  display: none !important;
}

.portal-ticker {
  display: block !important;
}

/* A true seamless loop: the row contains two identical consecutive messages. */
.portal-ticker .ticker-row {
  gap: 72px !important;
  animation: homeTickerLoop 34s linear infinite !important;
  will-change: transform;
}

.portal-ticker .ticker-row > span {
  flex: 0 0 auto;
}

@keyframes homeTickerLoop {
  from { transform: translateX(0); }
  to { transform: translateX(calc(50% + 36px)); }
}

/* A compact editorial window into the distinctive work of the beit din. */
.home-case-window {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 100%;
  margin-top: clamp(58px, 6vw, 86px);
  padding: 14px;
  color: #fbf8ef;
  background:
    radial-gradient(circle at 50% 50%, rgba(255, 248, 222, .075), transparent 34%),
    linear-gradient(100deg, rgba(0, 22, 11, .38), transparent 24%, transparent 76%, rgba(0, 22, 11, .38)),
    #003018 var(--site-emerald-texture) center / cover no-repeat;
  border: 1px solid rgba(210, 178, 88, .68);
  box-shadow: inset 0 20px 45px rgba(0, 20, 10, .14), inset 0 -20px 45px rgba(0, 20, 10, .14);
}

.home-case-window::before,
.home-case-window::after {
  content: "";
  position: absolute;
  inset-inline: 4%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(210, 178, 88, .72), transparent);
}

.home-case-window::before { top: 14px; }
.home-case-window::after { bottom: 14px; }

.home-case-window-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(240px, .9fr) minmax(300px, 1.15fr) minmax(220px, .8fr);
  align-items: center;
  gap: clamp(28px, 4.2vw, 72px);
  width: 100%;
  padding: clamp(22px, 2.4vw, 34px) clamp(24px, 3.4vw, 52px);
  border: 1px solid rgba(210, 178, 88, .30);
  background: linear-gradient(110deg, rgba(255,255,255,.018), rgba(255,255,255,.055) 50%, rgba(255,255,255,.018));
  box-shadow: 0 24px 70px rgba(0, 15, 8, .22), inset 0 1px 0 rgba(255,255,255,.08);
}

.home-case-window-inner::before,
.home-case-window-inner::after {
  content: "";
  position: absolute;
  width: 42px;
  height: 42px;
  pointer-events: none;
}

.home-case-window-inner::before {
  inset: -1px -1px auto auto;
  border-top: 2px solid #d2b258;
  border-right: 2px solid #d2b258;
}

.home-case-window-inner::after {
  inset: auto auto -1px -1px;
  border-bottom: 2px solid #d2b258;
  border-left: 2px solid #d2b258;
}

.home-case-window-heading span {
  display: inline-flex;
  align-items: center;
  margin-bottom: 11px;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(210, 178, 88, .55);
  color: #dfc477;
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .09em;
}

.home-case-window-heading h2 {
  margin: 0;
  color: #fbf8ef;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", serif;
  font-size: clamp(1.65rem, 2.55vw, 2.8rem);
  font-weight: 900;
  line-height: 1.08;
  text-shadow: 0 8px 28px rgba(0,0,0,.22);
}

.home-case-window blockquote {
  position: relative;
  margin: 0;
  padding: 16px clamp(26px, 3.2vw, 48px) 18px;
  border-inline: 1px solid rgba(210, 178, 88, .38);
  color: #fffaf0;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", serif;
  font-size: clamp(1.6rem, 2.65vw, 2.95rem);
  font-weight: 850;
  line-height: 1.25;
  text-align: center;
  text-shadow: 0 10px 30px rgba(0,0,0,.24);
}

.home-case-window blockquote::before,
.home-case-window blockquote::after {
  position: absolute;
  color: rgba(215, 185, 101, .68);
  font-family: Georgia, serif;
  font-size: 3.7rem;
  font-weight: 700;
  line-height: 1;
}

.home-case-window blockquote::before {
  content: "“";
  inset: -11px 7px auto auto;
}

.home-case-window blockquote::after {
  content: "”";
  inset: auto auto -27px 7px;
}

.home-case-window-action p {
  margin: 0 0 12px;
  color: rgba(251, 248, 239, .78);
  font-size: .94rem;
  line-height: 1.65;
}

.home-case-window-action a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 5px 20px 7px;
  border: 1px solid rgba(210, 178, 88, .74);
  border-radius: 999px;
  color: #fbf8ef;
  background: linear-gradient(135deg, rgba(210,178,88,.18), rgba(255,255,255,.035));
  font-size: .86rem;
  font-weight: 850;
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 10px 24px rgba(0,0,0,.12);
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

.home-case-window-action a::after { content: "←"; margin-right: 9px; }

.home-case-window-action a:hover {
  color: #003018;
  background: #fbf8ef;
  transform: translateY(-2px);
}

@media (max-width: 820px) {
  .home-case-window { margin-top: 48px; padding: 10px; }
  .home-case-window-inner {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 28px 22px;
    text-align: center;
  }
  .home-case-window blockquote {
    padding: 15px 8px;
    border-inline: 0;
    border-block: 1px solid rgba(210, 178, 88, .32);
  }
  .home-case-window-action p { max-width: 38rem; margin-inline: auto; }
}

@font-face {
  font-family: "BannerShmulik";
  src: url("assets/fonts/shmulikclm.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "BannerAsakim";
  src: url("assets/fonts/asakim-bold.woff") format("woff");
  font-display: swap;
}

.home-live-hero {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-height: 0 !important;
  height: clamp(470px, 47vw, 760px) !important;
  aspect-ratio: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background:
    linear-gradient(180deg, rgba(1, 25, 17, .14), rgba(1, 25, 17, .58)),
    url("assets/home-main-banner-live-desktop.webp?v=20260708-live-banner-1") center center / cover no-repeat !important;
}

.home-live-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .3), transparent 24%, transparent 76%, rgba(0, 0, 0, .36)),
    radial-gradient(circle at 50% 38%, rgba(10, 73, 43, .38), transparent 36%) !important;
}

.home-live-hero::after {
  content: "" !important;
  position: absolute !important;
  left: -7% !important;
  right: -7% !important;
  bottom: -58px !important;
  z-index: 2 !important;
  height: clamp(120px, 10vw, 165px) !important;
  border-top: 3px solid #d9ad46 !important;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0 !important;
  background: linear-gradient(180deg, rgba(0, 34, 22, .95), #02180f) !important;
  box-shadow:
    0 -2px 0 rgba(255, 231, 147, .4),
    0 -18px 32px rgba(0, 0, 0, .36) !important;
  pointer-events: none !important;
}

.home-live-hero .hero-banner-copy {
  position: absolute !important;
  top: 14.5% !important;
  left: 50% !important;
  z-index: 5 !important;
  width: min(980px, 68vw) !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  color: #f3dfb7 !important;
}

.home-live-hero .hero-banner-ornament {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(420px, 36vw) !important;
  height: 28px !important;
  margin: 0 auto clamp(14px, 1.5vw, 22px) !important;
}

.home-live-hero .hero-banner-ornament::before,
.home-live-hero .hero-banner-ornament::after {
  content: "" !important;
  display: block !important;
  flex: 1 1 auto !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #d5a940, #ffe28a, #d5a940, transparent) !important;
}

.home-live-hero .hero-banner-ornament::after {
  margin-inline-start: 22px !important;
}

.home-live-hero .hero-banner-ornament::before {
  margin-inline-end: 22px !important;
}

.home-live-hero .hero-banner-ornament {
  background:
    radial-gradient(circle, transparent 8px, #efc861 9px 10px, transparent 11px),
    conic-gradient(from 45deg, transparent 0 12.5%, #efc861 12.5% 14.5%, transparent 14.5% 37.5%, #efc861 37.5% 39.5%, transparent 39.5% 62.5%, #efc861 62.5% 64.5%, transparent 64.5% 87.5%, #efc861 87.5% 89.5%, transparent 89.5%) center / 38px 38px no-repeat !important;
}

.home-live-hero h1 {
  margin: 0 0 clamp(14px, 1.7vw, 26px) !important;
  color: #eec45a !important;
  font-family: "BannerShmulik", "David", serif !important;
  font-size: clamp(4.8rem, 6.2vw, 7.4rem) !important;
  font-weight: 900 !important;
  line-height: .82 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  text-shadow:
    0 3px 0 #8d5f14,
    0 10px 24px rgba(0, 0, 0, .64),
    0 0 24px rgba(255, 218, 105, .24) !important;
}

.home-live-hero .hero-banner-tagline {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(16px, 2vw, 28px) !important;
  margin: 0 0 clamp(18px, 2vw, 30px) !important;
  color: #f2e5c8 !important;
  font-family: "BannerAsakim", "Frank Ruhl Libre", "Noto Serif Hebrew", serif !important;
  font-size: clamp(2rem, 3vw, 3.5rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: 0 4px 18px rgba(0, 0, 0, .72) !important;
}

.home-live-hero .hero-banner-tagline::before,
.home-live-hero .hero-banner-tagline::after {
  content: "" !important;
  width: clamp(46px, 7vw, 108px) !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #d5a940, #ffe28a, #d5a940, transparent) !important;
}

.home-live-hero .hero-banner-message {
  position: relative !important;
  width: min(760px, 52vw) !important;
  margin: 0 auto !important;
  padding: clamp(14px, 1.3vw, 20px) clamp(26px, 3.3vw, 54px) !important;
  border: 2px solid rgba(222, 174, 66, .95) !important;
  border-radius: 8px !important;
  color: #f3dfb4 !important;
  background: linear-gradient(180deg, rgba(0, 49, 30, .62), rgba(0, 27, 18, .44)) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255, 234, 158, .16),
    0 14px 34px rgba(0, 0, 0, .3) !important;
  font-family: "BannerAsakim", "Frank Ruhl Libre", "Noto Serif Hebrew", serif !important;
  font-size: clamp(1.45rem, 2.1vw, 2.45rem) !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  text-shadow: 0 3px 15px rgba(0, 0, 0, .62) !important;
}

.home-live-hero .hero-banner-message::before,
.home-live-hero .hero-banner-message::after {
  content: "◆" !important;
  position: absolute !important;
  top: 50% !important;
  color: #e2b346 !important;
  font-size: 1.15rem !important;
  transform: translateY(-50%) !important;
  text-shadow: 0 0 12px rgba(255, 223, 122, .35) !important;
}

.home-live-hero .hero-banner-message::before {
  right: -14px !important;
}

.home-live-hero .hero-banner-message::after {
  left: -14px !important;
}

.home-live-hero .hero-banner-cta {
  display: flex !important;
  position: absolute !important;
  top: 79.5% !important;
  left: 50% !important;
  z-index: 8 !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(462px, 34vw) !important;
  height: clamp(50px, 4.3vw, 70px) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateX(-50%) !important;
  background:
    linear-gradient(180deg, #fff4b9 0%, #e2bd4a 35%, #b8871e 68%, #f7d96b 100%) !important;
  border: 1px solid rgba(255, 238, 166, .92) !important;
  border-radius: 20px !important;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .42),
    inset 0 -10px 18px rgba(112, 73, 5, .2),
    0 0 0 1px rgba(92, 59, 3, .34),
    0 12px 30px rgba(0, 0, 0, .28),
    0 0 32px rgba(246, 218, 124, .22) !important;
  text-decoration: none !important;
  pointer-events: auto !important;
  animation: heroCtaPulse 2.8s ease-in-out infinite !important;
}

.home-live-hero .hero-banner-cta::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  background:
    linear-gradient(90deg, transparent, rgba(255, 255, 255, .28), transparent) !important;
  opacity: .55 !important;
  box-shadow: inset 0 0 0 1px rgba(92, 59, 3, .18) !important;
}

.home-live-hero .hero-banner-cta span {
  position: relative !important;
  z-index: 2 !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  clip: auto !important;
  color: #062d1b !important;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", "Times New Roman", serif !important;
  font-size: clamp(1.08rem, 1.55vw, 1.62rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-shadow:
    0 1px 0 rgba(255, 247, 197, .62),
    0 0 12px rgba(255, 231, 132, .22) !important;
  letter-spacing: 0 !important;
}

.home-live-hero .hero-banner-cta:hover::before {
  opacity: .82 !important;
  box-shadow: inset 0 0 0 1px rgba(92, 59, 3, .12) !important;
}

.home-live-hero .hero-banner-cta:hover {
  transform: translateX(-50%) translateY(-2px) !important;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .5),
    inset 0 -10px 18px rgba(112, 73, 5, .22),
    0 0 0 1px rgba(92, 59, 3, .34),
    0 16px 34px rgba(0, 0, 0, .34),
    0 0 42px rgba(246, 218, 124, .34) !important;
}

@keyframes heroCtaPulse {
  0%, 100% { filter: drop-shadow(0 0 8px rgba(246, 218, 124, .14)); }
  50% { filter: drop-shadow(0 0 18px rgba(246, 218, 124, .38)); }
}

@media (max-width: 760px) {
  .home-live-hero {
    height: clamp(660px, 182vw, 970px) !important;
    background-image:
      linear-gradient(180deg, rgba(1, 25, 17, .04), rgba(1, 25, 17, .62)),
      url("assets/home-main-banner-live-mobile.webp?v=20260708-live-banner-1") !important;
    background-size: cover !important;
    background-position: center top !important;
  }

  .home-live-hero .hero-banner-copy {
    top: 34.5% !important;
    width: 92vw !important;
  }

  .home-live-hero .hero-banner-ornament {
    width: 58vw !important;
    margin-bottom: 14px !important;
  }

  .home-live-hero h1 {
    font-size: clamp(5.2rem, 18vw, 8.8rem) !important;
    margin-bottom: 14px !important;
    white-space: normal !important;
  }

  .home-live-hero .hero-banner-tagline {
    gap: 14px !important;
    margin-bottom: 18px !important;
    font-size: clamp(1.75rem, 7vw, 3.15rem) !important;
  }

  .home-live-hero .hero-banner-tagline::before,
  .home-live-hero .hero-banner-tagline::after {
    width: clamp(28px, 10vw, 68px) !important;
  }

  .home-live-hero .hero-banner-message {
    width: min(84vw, 640px) !important;
    padding: 16px 24px !important;
    font-size: clamp(1.35rem, 5.2vw, 2.25rem) !important;
  }

  .home-live-hero .hero-banner-cta {
    top: 78.8% !important;
    left: 50% !important;
    width: min(590px, 70vw) !important;
    height: clamp(48px, 10.5vw, 68px) !important;
  }

  .home-live-hero .hero-banner-cta span {
    font-size: clamp(1rem, 4.1vw, 1.45rem) !important;
  }
}

@media (max-width: 480px) {
  .home-live-hero {
    height: clamp(650px, 190vw, 900px) !important;
    background-position: center top !important;
  }

  .home-live-hero .hero-banner-copy {
    top: 33.5% !important;
  }

  .home-live-hero .hero-banner-cta {
    left: 50% !important;
    top: 79.5% !important;
    width: 70vw !important;
  }
}

/* Restore the original Torat Avi homepage banner. */
.home-live-hero {
  display: grid !important;
  align-items: center !important;
  position: relative !important;
  min-height: 680px !important;
  height: auto !important;
  padding: 0 0 138px !important;
  margin: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  color: #fff !important;
  background:
    linear-gradient(90deg, rgba(2, 32, 16, .95) 0%, rgba(4, 55, 24, .88) 16%, rgba(0, 48, 24, .58) 34%, rgba(0, 48, 24, .4) 58%, rgba(3, 31, 18, .88) 100%),
    radial-gradient(ellipse at 50% 28%, rgba(221, 202, 98, .12), transparent 24%),
    url("assets/beit-midrash-hero.webp") center / cover no-repeat !important;
}

.home-live-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(0, 20, 9, .44) 0%, rgba(0, 34, 15, .22) 24%, rgba(0, 0, 0, 0) 42%),
    linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .22) 70%, rgba(3, 31, 18, .72)) !important;
}

.home-live-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: 1 !important;
  height: 160px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, transparent, rgba(251, 247, 239, .98)) !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

.home-live-hero .hero-banner-copy,
.home-live-hero .hero-banner-ornament,
.home-live-hero .hero-banner-tagline,
.home-live-hero .hero-banner-message,
.home-live-hero .hero-banner-cta {
  display: none !important;
}

.home-live-grid {
  position: relative !important;
  z-index: 3 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  place-items: center !important;
  max-width: 1180px !important;
  padding: 82px 0 138px !important;
  text-align: center !important;
}

.home-hero-panel {
  position: relative !important;
  display: grid !important;
  justify-items: center !important;
  max-width: 1040px !important;
  margin: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  clip-path: none !important;
  box-shadow: none !important;
}

.home-live-hero .horaa-hero-crown {
  width: min(430px, 62vw) !important;
  height: 42px !important;
  margin: 0 auto 16px !important;
  opacity: .86 !important;
}

.home-live-hero .home-hero-panel h1 {
  display: grid !important;
  justify-items: center !important;
  gap: 18px !important;
  max-width: none !important;
  margin: 0 auto !important;
  font-family: "Times New Roman", "David", serif !important;
  line-height: 1 !important;
}

.home-live-hero .hero-main-logo-wrap {
  display: block !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  line-height: 0 !important;
}

.home-live-hero .hero-main-logo {
  display: block !important;
  width: auto !important;
  height: clamp(86px, 7.2vw, 124px) !important;
  max-width: min(560px, 46vw) !important;
  object-fit: contain !important;
  filter: drop-shadow(0 16px 28px rgba(0, 0, 0, .34)) drop-shadow(0 0 16px rgba(221, 202, 98, .12)) !important;
}

.home-live-hero .home-hero-panel h1 strong {
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #fffdf2 !important;
  border: 0 !important;
  background: transparent !important;
  font-family: "Times New Roman", "David", serif !important;
  font-size: clamp(1.25rem, 1.8vw, 1.72rem) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  text-shadow: 0 2px 0 rgba(0, 31, 10, .6), 0 12px 24px rgba(0, 0, 0, .38) !important;
}

.home-live-hero .home-hero-panel h1 strong::before,
.home-live-hero .home-hero-panel h1 strong::after {
  display: none !important;
  content: none !important;
}

.home-live-hero .home-hero-panel p {
  display: block !important;
  position: relative !important;
  margin: 14px auto 0 !important;
  padding-bottom: 30px !important;
  color: #fff2bd !important;
  font-size: clamp(1.05rem, 1.45vw, 1.3rem) !important;
  font-weight: 900 !important;
  text-align: center !important;
  text-shadow: 0 2px 0 rgba(0, 31, 10, .6), 0 12px 24px rgba(0, 0, 0, .38) !important;
}

.home-live-hero .home-hero-panel p::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  width: min(430px, 70vw) !important;
  height: 18px !important;
  transform: translateX(-50%) !important;
  background:
    radial-gradient(circle at 25% 50%, #d5a844 0 4px, transparent 5px),
    radial-gradient(circle at 50% 50%, #fff7d8 0 4px, transparent 5px),
    radial-gradient(circle at 75% 50%, #d5a844 0 4px, transparent 5px),
    linear-gradient(90deg, transparent 0%, rgba(198, 150, 57, .82) 18%, rgba(255, 242, 184, .86) 50%, rgba(198, 150, 57, .82) 82%, transparent 100%) !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100%, 100% 100%, 100% 100%, 100% 2px !important;
  background-position: center !important;
  opacity: .92 !important;
}

.home-live-hero .home-horaa-search {
  display: flex !important;
  align-items: center !important;
  width: min(780px, 42vw) !important;
  min-height: 58px !important;
  margin: 20px auto 0 !important;
  position: relative !important;
  z-index: 8 !important;
}

.home-live-hero .home-hero-panel .portal-actions {
  display: flex !important;
  justify-content: center !important;
  margin-top: 38px !important;
}

.home-live-hero .home-hero-panel .portal-actions .btn {
  min-height: 50px !important;
  padding: 0 32px !important;
  border: 1px solid rgba(255, 255, 255, .82) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .08) !important;
  box-shadow: none !important;
}

.home-rabbi-portrait {
  display: block !important;
  position: absolute !important;
  left: max(0px, calc((100vw - 1180px) / 2)) !important;
  right: auto !important;
  bottom: -130px !important;
  z-index: 2 !important;
  width: auto !important;
  height: clamp(460px, 46vw, 720px) !important;
  max-width: 46vw !important;
  object-fit: contain !important;
  opacity: .82 !important;
  filter: drop-shadow(26px 28px 44px rgba(0, 0, 0, .44)) saturate(.95) brightness(.94) !important;
  pointer-events: none !important;
}

.home-live-hero .horaa-hero-seal,
.home-live-hero .horaa-hero-gates {
  display: block !important;
}

@media (max-width: 980px) {
  .home-live-hero {
    min-height: 600px !important;
    padding-bottom: 96px !important;
  }

  .home-live-grid {
    padding: 60px 0 96px !important;
  }

  .home-live-hero .home-horaa-search {
    width: min(560px, 86vw) !important;
  }
}

@media (max-width: 560px) {
  .home-live-hero {
    min-height: 640px !important;
    padding-bottom: 70px !important;
    background:
      linear-gradient(180deg, rgba(0, 48, 24, .92) 0%, rgba(4, 64, 28, .84) 48%, rgba(2, 30, 14, .9) 100%),
      linear-gradient(90deg, rgba(0, 24, 10, .4), rgba(0, 0, 0, 0) 48%),
      url("assets/beit-midrash-hero.webp") center / cover no-repeat !important;
  }

  .home-live-grid {
    padding: 42px 0 70px !important;
  }

  .home-live-hero .hero-main-logo {
    height: clamp(64px, 17vw, 88px) !important;
    max-width: 82vw !important;
  }

  .home-live-hero .home-hero-panel h1 {
    gap: 14px !important;
  }

  .home-live-hero .home-hero-panel h1 strong {
    font-size: .82rem !important;
  }

  .home-live-hero .home-hero-panel p {
    font-size: .86rem !important;
    margin-top: 9px !important;
    padding-bottom: 22px !important;
  }

  .home-live-hero .home-hero-panel p::after {
    width: min(300px, 76vw) !important;
    height: 14px !important;
  }

  .home-live-hero .home-horaa-search {
    width: min(330px, 88vw) !important;
    min-height: 52px !important;
    margin-top: 18px !important;
  }

  .home-rabbi-portrait {
    left: 50% !important;
    right: auto !important;
    bottom: -8px !important;
    height: 285px !important;
    max-height: 285px !important;
    max-width: 92vw !important;
    transform: translateX(-50%) !important;
    opacity: .86 !important;
    filter: drop-shadow(18px 20px 34px rgba(0, 0, 0, .46)) saturate(.94) brightness(.92) !important;
  }
}

/* Fresh homepage image banner - beit midrash background with highlighted rabbi portrait. */
.home-image-banner {
  position: relative;
  min-height: clamp(420px, 48vw, 720px);
  overflow: hidden;
  isolation: isolate;
  background: #031d14;
}

.home-image-banner-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(0, 20, 13, .68) 0%, rgba(0, 24, 16, .36) 38%, rgba(0, 16, 11, .58) 100%),
    linear-gradient(180deg, rgba(0, 18, 12, .42), rgba(0, 22, 14, .86)),
    url("assets/home-banner-beit-midrash.webp") center center / cover no-repeat;
  filter: saturate(.9) contrast(1.08) brightness(.62);
  transform: scale(1.015);
}

.home-image-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 21% 47%, rgba(238, 203, 111, .16), transparent 24%),
    linear-gradient(90deg, rgba(0, 20, 13, .22) 0%, rgba(0, 36, 23, .48) 38%, rgba(0, 18, 12, .78) 100%),
    radial-gradient(ellipse at center, transparent 30%, rgba(0, 0, 0, .68) 100%);
}

.home-image-banner-title {
  position: absolute;
  z-index: 5;
  top: clamp(30px, 4.3vw, 66px);
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding: 0 clamp(36px, 5vw, 76px);
  color: #f4d66f;
  font-family: "BannerShmulik", "Guttman Stam", "Stam", "David", "Frank Ruhl Libre", serif;
  font-size: clamp(4rem, 7.4vw, 7.8rem);
  font-weight: 700;
  line-height: .78;
  letter-spacing: 0;
  white-space: nowrap;
  text-align: center;
  background:
    linear-gradient(180deg, #fffce0 0%, #ffe98a 22%, #f5c94b 46%, #b47812 76%, #fff1a1 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: clamp(1.2px, .14vw, 2.2px) rgba(72, 41, 5, .94);
  filter:
    drop-shadow(0 1px 0 #fff8c7)
    drop-shadow(2px 3px 0 rgba(126, 82, 16, .92))
    drop-shadow(7px 9px 0 rgba(236, 236, 236, .22))
    drop-shadow(0 7px 8px rgba(0, 0, 0, .66))
    drop-shadow(0 0 13px rgba(255, 229, 117, .78))
    drop-shadow(0 0 30px rgba(255, 196, 42, .42));
}

.home-image-banner-title::before {
  content: "";
  position: absolute;
  inset: -18px -24px -20px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(ellipse at 50% 48%, rgba(255, 207, 66, .28), rgba(255, 207, 66, .08) 34%, transparent 70%);
  filter: blur(2px);
}

.home-image-banner::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  height: clamp(70px, 9vw, 130px);
  pointer-events: none;
  background: linear-gradient(180deg, transparent, rgba(3, 29, 20, .9));
}

.home-image-banner-rabbi {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  left: 0;
  width: clamp(430px, 43vw, 650px);
  background:
    linear-gradient(90deg, rgba(2, 24, 16, .03), rgba(2, 24, 16, .14) 54%, rgba(2, 24, 16, .88) 100%),
    linear-gradient(180deg, rgba(2, 24, 16, .42) 0%, transparent 15%, transparent 76%, rgba(2, 24, 16, .74) 100%),
    url("assets/home-banner-rabbi-left.webp") 24% center / cover no-repeat;
  opacity: .98;
  transform: translateY(-3%);
  filter:
    drop-shadow(24px 28px 42px rgba(0, 0, 0, .32))
    saturate(1.06)
    contrast(1.04)
    brightness(.98);
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 48%, rgba(0, 0, 0, .62) 76%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 48%, rgba(0, 0, 0, .62) 76%, transparent 100%);
}

.home-image-banner-rabbi::before {
  content: "";
  position: absolute;
  inset: -18%;
  z-index: -1;
  background: radial-gradient(ellipse at 52% 46%, rgba(246, 213, 121, .24), transparent 58%);
}

.home-image-banner-rabbi::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(2, 24, 16, .4), transparent 18%, transparent 72%, rgba(2, 24, 16, .76)),
    linear-gradient(90deg, transparent 0%, rgba(2, 24, 16, .18) 58%, rgba(2, 24, 16, .88) 100%);
  pointer-events: none;
}

@media (max-width: 760px) {
  .home-image-banner {
    min-height: clamp(520px, 138vw, 720px);
  }

  .home-image-banner-bg {
    background:
      linear-gradient(180deg, rgba(0, 18, 12, .3) 0%, rgba(0, 18, 12, .18) 36%, rgba(0, 18, 12, .84) 100%),
      url("assets/home-banner-beit-midrash.webp") 60% top / auto 58% no-repeat,
      linear-gradient(180deg, #031d14, #02140d);
    filter: saturate(.9) contrast(1.08) brightness(.66);
  }

  .home-image-banner-title {
    top: 20px;
    left: 50%;
    right: auto;
    width: 96vw;
    padding: 0;
    font-size: clamp(2.2rem, 10.8vw, 3.15rem);
    transform: translateX(-50%);
  }

  .home-image-banner-title::before,
  .home-image-banner-title::after {
    width: clamp(28px, 10vw, 46px);
  }

  .home-image-banner-rabbi {
    top: auto;
    bottom: 0;
    width: 100%;
    height: 58%;
    background:
      linear-gradient(180deg, rgba(2, 24, 16, .9) 0%, rgba(2, 24, 16, .08) 28%, rgba(2, 24, 16, .78) 100%),
      linear-gradient(90deg, rgba(2, 24, 16, .08), rgba(2, 24, 16, .58) 72%, rgba(2, 24, 16, .88) 100%),
      url("assets/home-banner-rabbi-left.webp") 2% center / auto 100% no-repeat;
    opacity: .98;
    transform: none;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .9) 18%, #000 100%);
    mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .9) 18%, #000 100%);
  }

  .home-image-banner-title::after {
    display: none;
  }
}

.home-restored-banner {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 420px;
  aspect-ratio: 1672 / 941;
  background: #02180f;
}

.home-restored-banner-media {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
}

.home-restored-banner-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
}

.home-restored-banner-cta {
  position: absolute;
  z-index: 4;
  left: 50%;
  bottom: 96px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(470px, 42vw);
  min-height: clamp(56px, 5vw, 78px);
  padding: 0 clamp(24px, 3vw, 44px);
  border: 2px solid rgba(255, 232, 144, .82);
  border-radius: 18px;
  color: #062719;
  text-decoration: none;
  background:
    linear-gradient(180deg, #fff5b8 0%, #eac64b 46%, #bc8a18 100%);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .46),
    inset 0 -4px 0 rgba(112, 72, 4, .22),
    0 0 24px rgba(235, 191, 68, .34),
    0 16px 34px rgba(0, 0, 0, .34);
  transform: translateX(-50%);
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}

.home-restored-banner-cta span {
  position: relative;
  z-index: 1;
  font-family: "BannerAsakim", "Frank Ruhl Libre", "Noto Serif Hebrew", serif;
  font-size: clamp(1.3rem, 2.2vw, 2rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  text-shadow: 0 1px 0 rgba(255, 246, 185, .72);
  white-space: nowrap;
}

.home-restored-banner-cta:hover,
.home-restored-banner-cta:focus-visible {
  transform: translate(-50%, -4px);
  filter: brightness(1.06);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .5),
    inset 0 -4px 0 rgba(112, 72, 4, .22),
    0 0 34px rgba(244, 205, 78, .52),
    0 20px 42px rgba(0, 0, 0, .4);
}

@media (max-width: 760px) {
  .home-restored-banner {
    min-height: 720px;
    aspect-ratio: 863 / 1823;
  }

  .home-restored-banner-cta {
    bottom: 150px;
    width: min(560px, 76vw);
    min-height: 74px;
    border-radius: 18px;
    padding: 0 18px;
  }

  .home-restored-banner-cta span {
    font-size: clamp(1.25rem, 5.8vw, 2.2rem);
  }
}

.home-restored-banner {
  min-height: clamp(620px, 76vh, 820px);
  aspect-ratio: auto;
  display: grid;
  place-items: start center;
  background: #02180f;
}

.home-restored-banner-images {
  position: absolute;
  inset: 0;
  z-index: auto;
  display: block;
}

.home-restored-banner-img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.95) contrast(1.04);
}

.home-restored-banner-img-right {
  inset: 0;
  z-index: 1;
  object-position: 62% center;
}

.home-restored-banner-img-left {
  inset: 0 auto 0 0;
  z-index: 4;
  width: min(47vw, 690px);
  object-position: center center;
  opacity: 1;
  filter:
    brightness(1.2)
    contrast(1.06)
    saturate(1)
    drop-shadow(22px 24px 50px rgba(0, 0, 0, .66));
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 64%, rgba(0, 0, 0, .84) 82%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 64%, rgba(0, 0, 0, .84) 82%, transparent 100%);
}

.home-restored-banner-images::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 5;
  width: min(48vw, 700px);
  background:
    radial-gradient(ellipse at 35% 52%, rgba(255, 229, 157, .16), rgba(255, 229, 157, .06) 32%, transparent 64%),
    linear-gradient(90deg, rgba(255, 242, 190, .04), transparent 76%);
  mix-blend-mode: screen;
  opacity: .29;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 62%, rgba(0, 0, 0, .55) 80%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 62%, rgba(0, 0, 0, .55) 80%, transparent 100%);
}

.home-restored-banner-darkness {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  background:
    linear-gradient(90deg,
      rgba(0, 18, 11, .06) 0%,
      rgba(0, 20, 12, .14) 23%,
      rgba(0, 16, 10, .44) 30%,
      rgba(0, 12, 8, .62) 42%,
      rgba(0, 8, 5, .71) 67%,
      rgba(0, 4, 3, .74) 100%),
    linear-gradient(180deg, rgba(0, 12, 8, .17), rgba(0, 22, 13, .32) 45%, rgba(0, 8, 5, .45)) !important;
  pointer-events: none !important;
}

.home-restored-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(180deg, rgba(0, 24, 14, .47), rgba(0, 42, 25, .53)),
    linear-gradient(90deg, rgba(0, 16, 10, .26), rgba(0, 42, 25, .51) 50%, rgba(0, 10, 6, .68));
  pointer-events: none;
}

.home-restored-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background:
    linear-gradient(90deg, transparent 0%, rgba(0, 16, 10, .24) 28%, rgba(0, 10, 7, .54) 55%, rgba(0, 3, 2, .66) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, .15), rgba(0, 0, 0, .32));
  pointer-events: none;
}

.home-restored-banner-content {
  position: relative;
  z-index: 5;
  width: min(940px, 92vw);
  margin: clamp(72px, 10vh, 118px) auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  color: #f3dc93;
  text-shadow: 0 4px 18px rgba(0, 0, 0, .74);
}

.home-restored-banner-content::before {
  display: none;
  content: none;
}

.home-restored-banner-content h1 {
  margin: 0;
  position: relative;
  display: inline-block;
  isolation: isolate;
  color: #f6d46d;
  background:
    radial-gradient(ellipse at 48% 8%, rgba(255, 255, 255, .96) 0 8%, transparent 27%),
    linear-gradient(115deg, transparent 0 17%, rgba(255, 255, 255, .46) 18%, transparent 21% 47%, rgba(255, 255, 255, .28) 49%, transparent 53% 100%),
    linear-gradient(72deg, rgba(118, 77, 13, .32) 0 1px, transparent 2px 34px),
    linear-gradient(146deg, #fff8d9 0%, #e0b74f 18%, #fff0a8 36%, #a86d13 53%, #f8d76d 72%, #6f4308 100%);
  background-size: 100% 100%, 180% 100%, 48px 100%, 100% 100%;
  background-position: center, 76% 0, center, center;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Frank Ruhl Libre", "David Libre", "Noto Serif Hebrew", "Times New Roman", serif;
  font-size: clamp(5rem, 9vw, 9.2rem);
  font-weight: 950;
  line-height: .9;
  letter-spacing: 0;
  -webkit-text-stroke: .75px rgba(74, 43, 4, .34);
  filter: drop-shadow(0 20px 22px rgba(0, 0, 0, .48));
  text-shadow:
    0 1px 0 rgba(255, 252, 223, .8),
    0 2px 0 rgba(77, 44, 4, .56),
    0 0 20px rgba(255, 224, 122, .42),
    0 0 58px rgba(244, 184, 40, .24);
}

.home-restored-banner-content h1::before,
.home-restored-banner-content h1::after {
  content: attr(data-title);
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home-restored-banner-content h1::before {
  z-index: -1;
  color: rgba(255, 215, 96, .42);
  -webkit-text-fill-color: rgba(255, 215, 96, .42);
  -webkit-text-stroke: 9px rgba(255, 206, 83, .12);
  text-shadow:
    0 0 18px rgba(255, 231, 156, .5),
    0 0 44px rgba(234, 171, 43, .42),
    0 0 92px rgba(175, 111, 15, .34);
  filter: blur(.3px);
}

.home-restored-banner-content h1::after {
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .82) 0 12%, transparent 29%),
    linear-gradient(105deg, transparent 0 35%, rgba(255, 255, 255, .62) 41%, transparent 48% 100%);
  background-size: 100% 100%, 220% 100%;
  background-position: center, 82% center;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: .68;
  mix-blend-mode: screen;
}

.home-restored-banner-tagline {
  margin: clamp(20px, 3vw, 32px) 0 0;
  color: #f7e8bb;
  font-family: "Frank Ruhl Libre", "David Libre", "Noto Serif Hebrew", "Times New Roman", serif;
  font-size: clamp(2.35rem, 4.2vw, 4.45rem);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
}

.home-restored-banner-line {
  margin: clamp(18px, 2.2vw, 26px) 0 0;
  color: #fff8df;
  font-family: "Frank Ruhl Libre", "David Libre", "Noto Serif Hebrew", "Times New Roman", serif;
  font-size: clamp(1.45rem, 2vw, 2.2rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  text-shadow:
    0 2px 0 rgba(0, 25, 13, .88),
    0 7px 18px rgba(0, 0, 0, .72);
}

.home-restored-banner-content .home-restored-banner-cta {
  position: relative;
  inset: auto;
  left: auto;
  bottom: auto;
  z-index: 1;
  width: auto;
  min-width: min(430px, 82vw);
  min-height: clamp(54px, 4.8vw, 68px);
  margin-top: clamp(34px, 4.5vw, 54px);
  transform: none;
  border-radius: 999px;
}

.home-restored-banner-content .home-restored-banner-cta:hover,
.home-restored-banner-content .home-restored-banner-cta:focus-visible {
  transform: translateY(-3px);
}

.home-restored-banner-content .home-restored-banner-cta span {
  font-family: "Frank Ruhl Libre", "David Libre", "Noto Serif Hebrew", "Times New Roman", serif;
  font-size: clamp(1.1rem, 1.55vw, 1.45rem);
}

@media (max-width: 760px) {
  .home-restored-banner {
    min-height: 510px;
    place-items: start center;
  }

  .home-restored-banner-images {
    display: block;
  }

  .home-restored-banner-img-right {
    inset: 0;
    width: 100%;
    height: 100%;
    object-position: 58% center;
  }

  .home-restored-banner-img-left {
    inset: auto 0 0 0;
    width: 100%;
    height: 36%;
    object-position: center 32%;
    opacity: 1;
    filter:
      brightness(1.21)
      contrast(1.06)
      saturate(1)
      drop-shadow(0 -18px 48px rgba(0, 0, 0, .68));
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .55) 9%, rgba(0, 0, 0, .94) 22%, #000 100%);
    mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .55) 9%, rgba(0, 0, 0, .94) 22%, #000 100%);
  }

  .home-restored-banner-images::after {
    inset: auto 0 0 0;
    width: 100%;
    height: 36%;
    background:
      radial-gradient(ellipse at 46% 58%, rgba(255, 229, 157, .14), rgba(255, 229, 157, .05) 36%, transparent 68%),
      linear-gradient(180deg, transparent 0%, rgba(255, 242, 190, .05) 42%, transparent 100%);
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .64) 18%, #000 100%);
    mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .64) 18%, #000 100%);
  }

  .home-restored-banner-darkness {
    background:
      linear-gradient(180deg,
        rgba(0, 18, 11, .14) 0%,
        rgba(0, 24, 14, .29) 34%,
        rgba(0, 31, 18, .54) 58%,
        rgba(0, 12, 8, .68) 100%),
      linear-gradient(90deg, rgba(0, 18, 11, .15), rgba(0, 42, 25, .35), rgba(0, 18, 11, .54)) !important;
  }

  .home-restored-banner::before {
    background:
      linear-gradient(180deg, rgba(0, 24, 14, .42), rgba(0, 42, 25, .5)),
      linear-gradient(90deg, rgba(0, 16, 10, .23), rgba(0, 55, 33, .41) 50%, rgba(0, 16, 10, .57));
  }

  .home-restored-banner-content {
    position: absolute;
    inset: 29px 0 auto 0;
    width: min(350px, 92vw);
    margin: 0 auto;
    align-items: center;
    text-align: center;
  }

  .home-restored-banner-content h1 {
    font-size: clamp(2.725rem, 10.2vw, 3.425rem);
    line-height: .95;
    text-align: center;
  }

  .home-restored-banner-tagline {
    margin-top: 14px;
    font-size: clamp(1.755rem, 6.2vw, 2.275rem);
    line-height: 1.05;
    text-align: center;
  }

  .home-restored-banner-line {
    margin-top: 12px;
    font-size: clamp(1.375rem, 4.25vw, 1.635rem);
    line-height: 1.22;
    text-align: center;
  }

  .home-restored-banner-content .home-restored-banner-cta {
    min-width: min(280px, 78vw);
    min-height: 48px;
    margin: 24px auto 0;
  }

  .home-restored-banner-content .home-restored-banner-cta span {
    font-size: clamp(1.335rem, 4vw, 1.495rem);
  }
}

/* Final homepage hero tone and restored announcement strip. */
.home-restored-banner-darkness {
  background: rgba(0, 0, 0, .55) !important;
}

.home-restored-banner::before {
  background: transparent !important;
}

.home-restored-banner::after {
  background: transparent !important;
}

.site-header .home-announcement-strip {
  display: block !important;
  min-height: 50px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(0, 102, 68, .34), transparent 58%),
    linear-gradient(90deg, #002618 0%, #00442c 44%, #002f20 100%) !important;
  color: #fff7d8 !important;
  border-bottom: 1px solid rgba(214, 183, 93, .42) !important;
  box-shadow: 0 10px 24px rgba(0, 48, 24, .12) !important;
}

.site-header .home-announcement-strip .horaa-strip-inner {
  min-height: 50px !important;
  display: grid !important;
  grid-template-columns: minmax(170px, 1fr) auto minmax(220px, 1fr) !important;
  grid-template-areas: "ask message phone" !important;
  align-items: center !important;
  justify-items: center !important;
  gap: 22px !important;
  width: min(1180px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 3px 0 !important;
  direction: ltr !important;
  font-family: "Frank Ruhl Libre", "Noto Serif Hebrew", "Times New Roman", serif !important;
}

.site-header .home-announcement-strip .horaa-strip-inner > * {
  direction: rtl !important;
}

.site-header .home-announcement-strip a,
.site-header .home-announcement-strip strong {
  color: #fff7d8 !important;
  font-size: clamp(1.2rem, 1.75vw, 1.48rem) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .28) !important;
  white-space: nowrap !important;
}

.site-header .home-announcement-strip a:first-child {
  grid-area: ask !important;
  justify-self: start !important;
}

.site-header .home-announcement-strip .horaa-message {
  grid-area: message !important;
  color: #d9b85d !important;
}

.site-header .home-announcement-strip .horaa-phone {
  grid-area: phone !important;
  justify-self: end !important;
}

@media (max-width: 900px) {
  .site-header .home-announcement-strip {
    min-height: 38px !important;
  }

  .site-header .home-announcement-strip .horaa-strip-inner {
    min-height: 38px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-areas: "ask phone" !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 2px 12px !important;
    overflow: hidden !important;
  }

  .site-header .home-announcement-strip .horaa-message {
    display: none !important;
  }

  .site-header .home-announcement-strip a,
  .site-header .home-announcement-strip strong {
    font-size: clamp(1rem, 4.4vw, 1.22rem) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .home-restored-banner-darkness {
    background: rgba(0, 0, 0, .55) !important;
  }

  .home-restored-banner::before {
    background: transparent !important;
  }
}

/* Absolute final homepage hero shade: black 55%, no emerald wash. */
.home-restored-banner-darkness {
  background: rgba(0, 0, 0, .55) !important;
}

.home-restored-banner::before,
.home-restored-banner::after {
  background: transparent !important;
  background-image: none !important;
  background-color: transparent !important;
}

main > .home-restored-banner::before,
main > .home-restored-banner::after,
main > section.home-restored-banner::before,
main > section.home-restored-banner::after {
  background: transparent !important;
  background-image: none !important;
  background-color: transparent !important;
  animation: none !important;
  filter: none !important;
  opacity: 1 !important;
}

@media (max-width: 900px) {
  .home-restored-banner-darkness {
    background: rgba(0, 0, 0, .55) !important;
  }

  .home-restored-banner::before,
  .home-restored-banner::after {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
  }

  main > .home-restored-banner::before,
  main > .home-restored-banner::after,
  main > section.home-restored-banner::before,
  main > section.home-restored-banner::after {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    animation: none !important;
    filter: none !important;
    opacity: 1 !important;
  }
}
