/* =========================================================
   Waad Hero Slider (Elementor Widget) - Full CSS
========================================================= */
.waad-hero{
  --waad-teal:#293A5C;
  --waad-gold:#46cb9e;

  --waad-primary-rgb:70,203,158;
  --waad-gold-rgb:70,203,158;

  --waad-tint-alpha:0.40;

  --waad-ov-color:8,25,35;
  --waad-ov-accent:8,25,35;
  --waad-ovl:.72;
  --waad-ovm:.42;
  --waad-ovr:.18;

  --waad-grid-opacity:0.07;
  --waad-grid-size:52px;
  --waad-grid-line:2px;
  --waad-grid-gap:2px;

  --waad-glow-opacity:0.12;

  --waad-btn-hover-scale:1.05;
}

.elementor .waad-hero .waad-hero__container{
  /* lock against Elementor padding */
  padding-left: 16px;
  padding-right: 16px;
}

/* wrapper */
.waad-hero{
  position: relative;
  height: 100vh;
  max-height: 800px;
  overflow: hidden;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.waad-hero__slides{position:relative;width:100%;height:100%}

/* slides */
.waad-slide{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .6s ease;
}
.waad-slide.is-active{opacity:1;pointer-events:auto}

/* bg */
.waad-slide__bg{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(var(--waad-primary-rgb), var(--waad-tint-alpha)),
                    rgba(var(--waad-primary-rgb), var(--waad-tint-alpha))),
    var(--bg);
  background-size:cover,cover;
  background-position:center,center;
  background-repeat:no-repeat,no-repeat;
  background-blend-mode:multiply;
  transform:scale(1.03);
}

/* overlay */
.waad-slide__overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(
    90deg,
    rgba(var(--waad-ov-color), var(--waad-ovl)) 0%,
    rgba(var(--waad-ov-color), var(--waad-ovm)) 55%,
    rgba(var(--waad-ov-color), var(--waad-ovr)) 100%
  );
}
.waad-slide__overlay::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(var(--waad-ov-accent), var(--waad-grid-opacity)) 0,
      rgba(var(--waad-ov-accent), var(--waad-grid-opacity)) var(--waad-grid-line),
      transparent var(--waad-grid-line),
      transparent calc(var(--waad-grid-line) + var(--waad-grid-gap))
    ),
    repeating-linear-gradient(
      90deg,
      rgba(var(--waad-ov-accent), var(--waad-grid-opacity)) 0,
      rgba(var(--waad-ov-accent), var(--waad-grid-opacity)) var(--waad-grid-line),
      transparent var(--waad-grid-line),
      transparent calc(var(--waad-grid-line) + var(--waad-grid-gap))
    );
  background-size: var(--waad-grid-size) var(--waad-grid-size);
  mix-blend-mode: screen;
  pointer-events:none;
}
.waad-slide__overlay::after{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(var(--waad-ov-accent), var(--waad-glow-opacity)) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(var(--waad-ov-accent), var(--waad-glow-opacity)) 0%, transparent 50%);
  pointer-events:none;
}

/* container (tailwind container widths) */
.waad-hero__container{
  position:relative;
  z-index:10;
  height:100%;
  width:100%;
  margin-left:auto;
  margin-right:auto;
  display:flex;
  align-items:center;
  padding: 0 16px; /* px-4 */
}
@media (min-width:640px){ .waad-hero__container{ max-width:640px; } }
@media (min-width:768px){ .waad-hero__container{ max-width:768px; } }
@media (min-width:1024px){ .waad-hero__container{ max-width:1024px; } }
@media (min-width:1280px){ .waad-hero__container{ max-width:1280px; } }
@media (min-width:1536px){ .waad-hero__container{ max-width:1536px; } }

.waad-hero__content{ max-width: 672px; }

/* pill */
.waad-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 16px;
  border-radius:999px;
  background: rgba(229,231,235,0.20);
  backdrop-filter: blur(8px);
  color:#fff;
  font-size:14px;
  font-weight:500;
  margin:0 0 24px;
}
.waad-dot{
  width:8px;height:8px;border-radius:999px;
  background: var(--waad-gold);
  box-shadow:0 0 0 0 rgba(var(--waad-gold-rgb), .55);
  animation: waadPulse 1.4s infinite;
}
@keyframes waadPulse{
  0%{box-shadow:0 0 0 0 rgba(var(--waad-gold-rgb), .55)}
  70%{box-shadow:0 0 0 10px rgba(var(--waad-gold-rgb), 0)}
  100%{box-shadow:0 0 0 0 rgba(var(--waad-gold-rgb), 0)}
}

/* title/subtitle (tailwind baseline; typography controls override) */
.waad-title{
  margin:0 0 16px;
  font-weight:700;
  line-height:1.25;
  font-size:60px;
}
@media (min-width:768px){ .waad-title{ font-size:72px; } }
.waad-title__white{ color:#fff; }
.waad-title__gold{ color: var(--waad-gold); }
.waad-subtitle{
  margin:0 0 32px;
  font-size:20px;
  line-height:1.625;
  color:#fff;
}
.waad-subtitle p{ margin:0; }

/* actions/buttons */
.waad-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.waad-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 24px;
  border-radius:8px;
  text-decoration:none;
  font-size:16px;
  font-weight:600;
  transition: transform .3s ease, background .3s ease, color .3s ease, border-color .3s ease, opacity .3s ease;
}
.waad-btn:hover{ transform: scale(var(--waad-btn-hover-scale)); }

.waad-btn svg,
.waad-arrow svg{
  width:18px;height:18px;display:block;
  fill: currentColor;
}

.waad-btn--gold{ background: var(--waad-gold); color: var(--waad-teal); }
.waad-btn--outline{ background: transparent; border:2px solid #fff; color:#fff; }
.waad-btn--outline:hover{ background:#fff; color: var(--waad-teal); }

/* icon ordering via data attrs */
.waad-hero[data-primary-icon="start"] .waad-btn--gold .waad-btn__icon{ order:0; }
.waad-hero[data-primary-icon="start"] .waad-btn--gold .waad-btn__text{ order:1; }
.waad-hero[data-primary-icon="end"] .waad-btn--gold .waad-btn__text{ order:0; }
.waad-hero[data-primary-icon="end"] .waad-btn--gold .waad-btn__icon{ order:1; }
.waad-hero[data-primary-icon="space"] .waad-btn--gold{ justify-content:space-between; width:100%; }
.waad-hero[data-primary-icon="space"] .waad-btn--gold .waad-btn__text{ flex:1 1 auto; text-align:start; }

.waad-hero[data-secondary-icon="start"] .waad-btn--outline .waad-btn__icon{ order:0; }
.waad-hero[data-secondary-icon="start"] .waad-btn--outline .waad-btn__text{ order:1; }
.waad-hero[data-secondary-icon="end"] .waad-btn--outline .waad-btn__text{ order:0; }
.waad-hero[data-secondary-icon="end"] .waad-btn--outline .waad-btn__icon{ order:1; }

/* progress (tailwind) */
.waad-progress{
  position:absolute;
  left:16px;
  bottom:32px;
  z-index:20;
  display:flex;
  align-items:center;
  gap:16px;
  font-size:14px;
  font-weight:500;
  color:#fff;
}
.waad-progress__total{ color:#9CA3AF; font-weight:400; }
.waad-progress__bar{ width:48px;height:2px;background:#9CA3AF;overflow:hidden; }
.waad-progress__fill{ height:100%; width:33.333%; background: var(--waad-gold); transition: width .35s ease; }

@media (min-width:768px){
  .waad-progress{ left:32px; }
}

/* arrows (tailwind) */
.waad-arrows{
  position:absolute;
  right:16px;
  bottom:32px;
  z-index:20;
  display:flex;
  gap:8px;
}
@media (min-width:768px){
  .waad-arrows{ right:32px; }
}
.waad-arrow{
  width:40px;height:40px;border-radius:8px;border:0;
  cursor:pointer;
  background: rgba(31,41,55,0.50);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  backdrop-filter: blur(8px);
  transition: transform .3s ease, background .3s ease;
}
.waad-arrow:hover{ transform: scale(1.10); background: rgba(31,41,55,0.75); }

/* RTL helpers */
.waad-hero[dir="rtl"] .waad-progress{ left:auto; right:16px; }
@media (min-width:768px){
  .waad-hero[dir="rtl"] .waad-progress{ right:32px; }
}

/* Mobile: stack buttons full-width if primary icon space OR if user sets it via CSS/controls later */
@media (max-width:767px){
  .waad-actions{
    display:grid;
    grid-template-columns:1fr;
    max-width:420px;
  }
  .waad-btn{ width:100%; }
  .waad-hero{
    --waad-grid-opacity:0.055;
    --waad-grid-size:48px;
  }
}
