/* Hero slideshow/video add-on */
.hero{position:relative;overflow:hidden;min-height:clamp(320px,52vw,620px);display:flex;align-items:center;justify-content:center;flex-direction:column;background-color:var(--secondary)}
.hero.hero-media-video{padding:0;min-height:clamp(360px,56vw,680px)}
.hero .hero-media-layer{position:absolute;inset:0;z-index:0;overflow:hidden;background:#000}
.hero .hero-media-layer video,.hero .hero-media-layer iframe{width:100%;height:100%;display:block;border:0;object-fit:cover}
.hero.hero-media-video h1,.hero.hero-media-video p,.hero.hero-slideshow h1,.hero.hero-slideshow p{position:relative;z-index:1;padding-left:18px;padding-right:18px}
.hero.hero-media-video h1,.hero.hero-media-video p{display:none!important}
.hero.hero-slideshow{background-size:cover;background-position:center;background-repeat:no-repeat;transition:background-image .6s ease-in-out}
.hero-media-admin-panel{margin:1rem 0;padding:1rem;border:1px solid var(--border,#e2e8f0);border-radius:12px;background:#fff}
.hero-media-admin-panel h3{margin:0 0 .8rem;color:var(--secondary,#103c68)}
.hero-media-admin-panel textarea{min-height:94px;resize:vertical}
.hero-media-help{display:block;color:var(--text-light,#64748b);line-height:1.6;margin-top:.3rem;font-size:.85rem}
.hero-media-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
@media(max-width:760px){.hero{min-height:330px}.hero.hero-media-video{min-height:360px}.hero .hero-media-layer video,.hero .hero-media-layer iframe{object-fit:cover}}

/* Video hero overlay text */
.hero.hero-media-video::after{content:none!important;background:none!important}
.hero.hero-media-video.hero-video-has-text h1{display:block!important;position:relative;z-index:2;color:var(--hero-video-text-color,#fff)!important;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.28);max-width:min(960px,92vw);margin-left:auto;margin-right:auto}
.hero.hero-media-video.hero-video-has-text p,.hero.hero-media-video.hero-video-has-text .hero-video-overlay-btn{display:none!important}
.hero.hero-media-video.hero-video-has-text h1{font-size:clamp(2.25rem,6vw,5.4rem);line-height:1.12;margin:0;font-weight:950;letter-spacing:-.035em}
.hero.hero-media-video.hero-video-has-text p{font-size:clamp(1rem,2.2vw,1.45rem);line-height:1.9;margin:0 auto 1.25rem;font-weight:600;opacity:.96}
.hero.hero-media-video .hero-video-overlay-btn{width:max-content;min-width:150px;padding:.9rem 1.35rem;border-radius:999px;background:var(--primary,#cda873);color:#fff!important;text-decoration:none!important;font-weight:900;box-shadow:0 14px 34px rgba(0,0,0,.28);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.hero.hero-media-video .hero-video-overlay-btn:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 18px 44px rgba(0,0,0,.34)}
.hero-media-subtitle{margin:.1rem 0 .8rem;color:var(--secondary,#103c68);font-size:1rem;font-weight:900}
@media(max-width:760px){.hero.hero-media-video.hero-video-has-text{padding:28px 14px}.hero.hero-media-video.hero-video-has-text h1{font-size:clamp(1.75rem,9vw,3rem)}.hero.hero-media-video.hero-video-has-text p{font-size:1rem}.hero.hero-media-video .hero-video-overlay-btn{padding:.82rem 1.1rem}}


/* Premium RTL motion for video overlay text */
.hero.hero-media-video.hero-video-has-text h1,
.hero.hero-media-video.hero-video-has-text p,
.hero.hero-media-video.hero-video-has-text .hero-video-overlay-btn{
  direction:rtl;
  unicode-bidi:plaintext;
}
.hero.hero-media-video.hero-video-has-text h1,
.hero.hero-media-video.hero-video-has-text p{
  transform-origin:right center;
}
.hero-video-highlight{
  color:var(--hero-video-highlight-color,#cda873);
  position:relative;
  display:inline-block;
  padding:0 .08em;
  text-shadow:0 4px 22px rgba(0,0,0,.45), 0 0 22px color-mix(in srgb,var(--hero-video-highlight-color,#cda873) 55%, transparent);
}
.hero-video-highlight::after{
  content:"";
  position:absolute;
  right:.02em;
  left:.02em;
  bottom:.02em;
  height:.18em;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--hero-video-highlight-color,#cda873) 75%, transparent),transparent);
  opacity:.72;
  transform:scaleX(.96);
  transform-origin:right center;
  z-index:-1;
}
.hero.hero-video-motion-rtl-reveal h1,
.hero.hero-video-motion-rtl-reveal p,
.hero.hero-video-motion-rtl-reveal .hero-video-overlay-btn{
  animation:heroRtlReveal .9s cubic-bezier(.16,1,.3,1) both;
}
.hero.hero-video-motion-rtl-reveal p{animation-delay:.12s}
.hero.hero-video-motion-rtl-reveal .hero-video-overlay-btn{animation-delay:.24s}
.hero.hero-video-motion-rtl-reveal .hero-video-highlight::after{animation:heroUnderlineRtl .9s .35s cubic-bezier(.16,1,.3,1) both}
.hero.hero-video-motion-gold-shimmer .hero-video-highlight{
  background:linear-gradient(90deg,var(--hero-video-highlight-color,#cda873),#fff6cf,var(--hero-video-highlight-color,#cda873));
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:heroHighlightShimmer 2.7s ease-in-out infinite;
}
.hero.hero-video-motion-gold-shimmer h1,
.hero.hero-video-motion-gold-shimmer p,
.hero.hero-video-motion-gold-shimmer .hero-video-overlay-btn{animation:heroSoftRise .8s cubic-bezier(.16,1,.3,1) both}
.hero.hero-video-motion-soft-float h1{animation:heroSoftRise .9s cubic-bezier(.16,1,.3,1) both,heroFloat 4.8s ease-in-out 1.1s infinite}
.hero.hero-video-motion-soft-float p{animation:heroSoftRise .9s .12s cubic-bezier(.16,1,.3,1) both}
.hero.hero-video-motion-soft-float .hero-video-overlay-btn{animation:heroSoftRise .9s .24s cubic-bezier(.16,1,.3,1) both}
.hero.hero-video-motion-none h1,
.hero.hero-video-motion-none p,
.hero.hero-video-motion-none .hero-video-overlay-btn{animation:none!important}
@keyframes heroRtlReveal{from{opacity:0;transform:translateX(34px);filter:blur(8px)}to{opacity:1;transform:translateX(0);filter:blur(0)}}
@keyframes heroSoftRise{from{opacity:0;transform:translateY(20px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes heroUnderlineRtl{from{transform:scaleX(0);opacity:0}to{transform:scaleX(.96);opacity:.72}}
@keyframes heroHighlightShimmer{0%,100%{background-position:100% 50%}50%{background-position:0 50%}}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){.hero.hero-media-video.hero-video-has-text *{animation:none!important;transition:none!important}}


/* Single large video text field */
.hero-video-main-text{min-height:110px;font-size:1.05rem;font-weight:700;line-height:1.7}

/* Stronger, RTL-safe motion binding for the one large text only */
.hero.hero-media-video.hero-video-has-text h1{direction:rtl;unicode-bidi:plaintext;transform-origin:right center;will-change:transform,opacity,filter}
.hero.hero-video-motion-rtl-reveal.hero-video-has-text h1{animation:heroRtlReveal .95s cubic-bezier(.16,1,.3,1) both!important}
.hero.hero-video-motion-gold-shimmer.hero-video-has-text h1{animation:heroSoftRise .85s cubic-bezier(.16,1,.3,1) both!important}
.hero.hero-video-motion-soft-float.hero-video-has-text h1{animation:heroSoftRise .9s cubic-bezier(.16,1,.3,1) both,heroFloat 4.8s ease-in-out 1.1s infinite!important}
.hero.hero-video-motion-none.hero-video-has-text h1{animation:none!important}
.hero.hero-video-motion-rtl-reveal.hero-video-has-text .hero-video-highlight::after{animation:heroUnderlineRtl .9s .35s cubic-bezier(.16,1,.3,1) both!important}
.hero.hero-video-motion-gold-shimmer.hero-video-has-text .hero-video-highlight{background:linear-gradient(90deg,var(--hero-video-highlight-color,#cda873),#fff6cf,var(--hero-video-highlight-color,#cda873));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:heroHighlightShimmer 2.7s ease-in-out infinite!important}

/* Final cleanup: one text color only, no shade/underline color, in-place effects only */
.hero.hero-media-video.hero-video-has-text h1{
  text-shadow:none!important;
  direction:rtl!important;
  unicode-bidi:plaintext!important;
  transform-origin:center center!important;
  will-change:transform,opacity,filter!important;
}
.hero-video-highlight{
  color:inherit!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  font-weight:950!important;
  position:relative!important;
  display:inline-block!important;
  padding:0!important;
  text-shadow:none!important;
}
.hero-video-highlight::after{content:none!important;display:none!important;background:none!important;box-shadow:none!important}
.hero.hero-video-motion-rtl-reveal.hero-video-has-text h1,
.hero.hero-video-motion-soft-float.hero-video-has-text h1,
.hero.hero-video-motion-pulse.hero-video-has-text h1{
  animation:heroTextPulseInPlace 3.2s ease-in-out infinite!important;
}
.hero.hero-video-motion-gold-shimmer.hero-video-has-text h1,
.hero.hero-video-motion-glow-fade.hero-video-has-text h1{
  animation:heroTextGlowFadeInPlace 3.6s ease-in-out infinite!important;
}
.hero.hero-video-motion-luxury-breathe.hero-video-has-text h1{
  animation:heroTextLuxuryBreathe 4.2s ease-in-out infinite!important;
}
.hero.hero-video-motion-none.hero-video-has-text h1{animation:none!important;filter:none!important;opacity:1!important;transform:none!important}
.hero.hero-video-motion-glow-fade.hero-video-has-text .hero-video-highlight,
.hero.hero-video-motion-luxury-breathe.hero-video-has-text .hero-video-highlight{
  animation:heroTextHighlightGlow 2.8s ease-in-out infinite!important;
}
@keyframes heroTextPulseInPlace{
  0%,100%{transform:scale(1);opacity:1;filter:none}
  50%{transform:scale(1.045);opacity:.98;filter:none}
}
@keyframes heroTextGlowFadeInPlace{
  0%,100%{transform:scale(1);opacity:.92;filter:drop-shadow(0 0 0 rgba(255,255,255,0))}
  50%{transform:scale(1.025);opacity:1;filter:drop-shadow(0 0 14px currentColor)}
}
@keyframes heroTextLuxuryBreathe{
  0%,100%{transform:scale(1);opacity:.96;letter-spacing:-.035em;filter:none}
  50%{transform:scale(1.035);opacity:1;letter-spacing:-.02em;filter:drop-shadow(0 0 10px currentColor)}
}
@keyframes heroTextHighlightGlow{
  0%,100%{opacity:.9;filter:drop-shadow(0 0 0 currentColor)}
  50%{opacity:1;filter:drop-shadow(0 0 10px currentColor)}
}
@media(prefers-reduced-motion:reduce){
  .hero.hero-media-video.hero-video-has-text h1,
  .hero.hero-media-video.hero-video-has-text .hero-video-highlight{animation:none!important;transition:none!important;transform:none!important;filter:none!important}
}
