.elementor-2536 .elementor-element.elementor-element-e627f29{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-2878a22 *//* ===== Baja Angels: Ken Burns Slider (6 slides, seamless, top-anchored) ===== */

.kb-slider{
  position:relative;
  width:100%;
  height:800px;
  overflow:hidden;
  isolation:isolate;
  background:#000;            /* avoids flash of white behind fades */
}

/* Base slide layer */
.kb-slide{
  position:absolute; inset:0;
  margin:0;
  opacity:0;
  transition:opacity 1.5s linear; /* linear to match timeline math */
  will-change: opacity;
}

/* First slide paints immediately */
.kb-slide:first-child{ opacity:1; }

/* Images: Ken Burns + anchor to TOP */
.kb-slide img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  object-position:center center;     /* <-- top-centered focus */
  z-index:0;
  backface-visibility:hidden;
  transform-origin:center top;    /* Ken Burns from top */
  animation: kb-zoom 33s ease-in-out infinite;
}
.kb-slide:first-child img{ animation-delay:-2.2s; }

/* Optional per-slide fine-tuning:
.kb-slide:nth-child(5) img{ object-position:center 20%; }
.kb-slide:nth-child(6) img{ object-position:center 15%; }
*/

/* Per-slide overlay (60%) under the caption */
.kb-slide::before{
  content:"";
  position:absolute; inset:0;
  background:rgba(0,0,0,.6);
  z-index:1;
  pointer-events:none;
}

/* Caption above overlay */
.kb-caption{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  text-align:center; padding:0 6vw;
  z-index:2;
}

/* Title: Lora + bright gold + soft glow */
.kb-caption h2{
  font-family:'Lora', Georgia, serif;
  font-weight:700;
  color:#FFE65C;
  font-size:clamp(1.6rem, 2.5vw + 1rem, 3.5rem);
  line-height:1.5;
  margin:0;
  opacity:0;
  white-space:nowrap;
  overflow:hidden;
  text-shadow:
    0 0 8px rgba(255,230,92,.95),
    0 0 18px rgba(255,230,92,.85),
    0 3px 18px rgba(0,0,0,1);
  animation: text-reveal 33s linear infinite;
}

/* First caption visible immediately */
.kb-slide:first-child .kb-caption h2{
  opacity:1; clip-path:inset(0 0 0 0);
  animation-delay:-2.2s;
}

/* ===== Timing (6 slides) =====
   Slot = 33s / 6 = 16.666%
   Fade = 1.5s  = 4.545%
   Show = 4.0s  = 12.121%
   -> Fade-in:   0% → 4.545%
      Visible:   4.545% → 16.666%  (ends exactly when next starts)
      Fade-out:  16.666% → 21.212% (overlaps next's fade-in)
   This guarantees no moment where all slides are 0.                */

/* Slide opacity timeline */
.kb-slide{ animation: kb-fade 33s linear infinite; }
.kb-slide:nth-child(1){ animation-delay:-2.2s; }
.kb-slide:nth-child(2){ animation-delay: 5.5s; }
.kb-slide:nth-child(3){ animation-delay: 11s; }
.kb-slide:nth-child(4){ animation-delay: 16.5s; }
.kb-slide:nth-child(5){ animation-delay: 22s; }
.kb-slide:nth-child(6){ animation-delay: 27.5s; }

@keyframes kb-fade{
  0%        { opacity:0; }
  4.545%    { opacity:1; }   /* fade in (1.5s) */
  16.666%   { opacity:1; }   /* visible (4s) */
  21.212%   { opacity:0; }   /* fade out (1.5s) */
  100%      { opacity:0; }
}

/* Caption timing mirrors the slide (for the type-like reveal) */
.kb-slide:nth-child(2) .kb-caption h2{ animation-delay: 5.5s; }
.kb-slide:nth-child(3) .kb-caption h2{ animation-delay: 11s; }
.kb-slide:nth-child(4) .kb-caption h2{ animation-delay: 16.5s; }
.kb-slide:nth-child(5) .kb-caption h2{ animation-delay: 22s; }
.kb-slide:nth-child(6) .kb-caption h2{ animation-delay: 27.5s; }

@keyframes text-reveal{
  0%        { opacity:0; clip-path:inset(0 100% 0 0); }
  4.545%    { opacity:1; clip-path:inset(0 0 0 0); }  /* ~1.5s reveal */
  16.666%   { opacity:1; }
  21.212%   { opacity:0; }
  100%      { opacity:0; }
}

/* Ken Burns zoom (gentle) */
@keyframes kb-zoom{
  from{ transform:scale(1.08); }
  to  { transform:scale(1.22); }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .kb-slide, .kb-slide img, .kb-caption h2{
    animation:none !important; transition:none !important;
  }
  .kb-slide:first-child{ opacity:1; }
  .kb-caption h2{ opacity:1; clip-path:none; }
}

/* Mobile */
@media (max-width:640px){
  .kb-caption{ padding:0 8vw; }
  .kb-caption h2{
    font-size:clamp(1.2rem, 5vw, 2rem);
    white-space:normal;
  }
}

/* Full-bleed inside Elementor boxed layouts */
.elementor .kb-slider{
  margin-left:calc(50% - 50vw);
  width:100vw;
}/* End custom CSS */