/* =========================================================
   RUDA — Riverfront Hero Section
   Elementor widget: lvc_ruda_hero (wrapper: .ruda)
   ========================================================= */
.ruda{
  --rd-navy:#0a1a2b;
  --rd-navy-deep:#06121f;
  --rd-gold:#C9A24E;
  --rd-gold-light:#EBD08A;
  --rd-text:#d7dee7;
  --rd-text-soft:#93a1b2;
  --rd-line:rgba(201,162,78,.35);
  --rd-sans:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --rd-display:'Archivo Black',var(--rd-sans);

  position:relative;
  overflow:hidden;
  min-height:min(860px,100vh);
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(28px,4vw,60px) clamp(28px,5vw,80px) clamp(80px,7vw,110px);
  isolation:isolate;
  background:var(--rd-navy-deep);
  color:var(--rd-text);
  font-family:var(--rd-sans);
  -webkit-font-smoothing:antialiased;
}
.ruda *{box-sizing:border-box;}

.ruda__bg{
  position:absolute; inset:0; z-index:-3;
  background-size:cover; background-position:right center;
}
.ruda__overlay{
  position:absolute; inset:0; z-index:-2;
  background:
    linear-gradient(90deg, var(--rd-navy) 0%, rgba(10,26,43,.96) 30%, rgba(9,22,38,.62) 55%, rgba(7,18,32,.28) 78%, rgba(6,15,26,.55) 100%),
    linear-gradient(180deg, rgba(6,15,26,.55) 0%, rgba(6,15,26,0) 30%, rgba(6,15,26,.7) 100%);
}
.ruda__tint{position:absolute; inset:0; z-index:-2; background:var(--rd-navy); opacity:0; pointer-events:none;}
.ruda__deco{position:absolute; left:-40px; top:-30px; width:520px; height:760px; z-index:-1; opacity:.5; pointer-events:none;}

.ruda__corner{
  position:absolute; top:clamp(24px,3vw,40px); right:clamp(28px,4vw,60px); z-index:3;
  text-align:right; font-size:11px; letter-spacing:5px; line-height:2.1; text-transform:uppercase; color:var(--rd-text-soft);
}
.ruda__corner b{color:var(--rd-gold-light);font-weight:600;}

.ruda__inner{position:relative; z-index:2; max-width:720px;}
.ruda__eyebrow{
  display:flex; align-items:center; gap:16px;
  font-size:12px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--rd-gold); margin:0 0 18px;
}
.ruda__eyebrow::before{content:"";width:34px;height:1px;background:var(--rd-gold);flex:0 0 auto;}

.ruda__title{
  font-family:var(--rd-display) !important;
  font-size:clamp(88px,13vw,190px);
  line-height:.9; margin:0 0 6px; letter-spacing:2px;
  background:linear-gradient(176deg,#f7e6a8 0%,#e4c069 34%,#b3852f 63%,#7c5417 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
  filter:drop-shadow(0 6px 24px rgba(201,162,78,.28));
  position:relative;
}
.ruda__title::after{
  content:attr(data-text);
  position:absolute; left:0; top:0;
  background:linear-gradient(100deg,transparent 38%,rgba(255,255,255,.75) 50%,transparent 62%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
  opacity:.55; pointer-events:none;
}
.ruda__sub{
  font-size:clamp(18px,1.9vw,29px); font-weight:500; letter-spacing:clamp(4px,.7vw,11px);
  text-transform:uppercase; color:#fff; margin:0 0 22px; white-space:nowrap;
}
.ruda__divider{width:120px;height:2px;border:0;margin:0 0 24px;background:linear-gradient(90deg,var(--rd-gold),rgba(201,162,78,0));}
.ruda__desc{
  font-size:clamp(14px,1.05vw,16px); line-height:1.75; color:var(--rd-text); max-width:560px; margin:0 0 28px; font-weight:300;
}
.ruda__tagline{
  display:flex; align-items:center; gap:18px;
  font-size:12px; font-weight:600; letter-spacing:4px; text-transform:uppercase; color:var(--rd-gold);
}
.ruda__tagline::after{content:"";height:1px;width:120px;background:linear-gradient(90deg,var(--rd-gold),transparent);}

.ruda__stats{
  position:relative; z-index:2;
  display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(14px,1.6vw,22px);
  margin-top:clamp(34px,4vw,54px); max-width:1300px;
}
.ruda__stat{
  display:flex; align-items:center; gap:16px;
  padding:22px 22px; border:1px solid var(--rd-line); border-radius:10px;
  background:linear-gradient(180deg,rgba(12,26,42,.55),rgba(8,18,30,.35));
  -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
  position:relative; overflow:hidden;
}
.ruda__stat::before{content:"";position:absolute;left:0;bottom:0;height:2px;width:60%;background:linear-gradient(90deg,var(--rd-gold),transparent);opacity:.5;}
.ruda__stat-ico{
  flex:0 0 auto; width:58px; height:58px; border-radius:50%;
  border:1px solid var(--rd-line); display:flex; align-items:center; justify-content:center; color:var(--rd-gold); overflow:hidden;
}
.ruda__stat-ico svg{width:28px;height:28px;}
.ruda__stat-ico img{width:100%;height:100%;object-fit:cover;}
.ruda__stat-num{font-size:clamp(26px,2.4vw,34px);font-weight:700;color:#fff;line-height:1;}
.ruda__stat-num span{font-size:14px;font-weight:500;color:var(--rd-gold-light);letter-spacing:.5px;margin-left:5px;}
.ruda__stat-label{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--rd-text-soft);margin-top:8px;}

.ruda__foot{
  position:absolute; left:0; right:0; bottom:0; z-index:2;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:16px clamp(28px,5vw,80px);
  font-size:10.5px; letter-spacing:3px; text-transform:uppercase; color:var(--rd-text-soft);
  border-top:1px solid rgba(201,162,78,.16);
}
.ruda__foot .r b{color:var(--rd-gold-light);font-weight:600;}

/* Reveal */
.ruda .rd-anim{opacity:0;transform:translateY(22px);}
.ruda .rd-anim.in{opacity:1;transform:none;transition:opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1);}
.ruda .rd-d1{transition-delay:.05s;}.ruda .rd-d2{transition-delay:.15s;}.ruda .rd-d3{transition-delay:.25s;}.ruda .rd-d4{transition-delay:.35s;}

/* Responsive */
@media (max-width:1024px){
  .ruda__stats{grid-template-columns:repeat(2,1fr);}
  .ruda__overlay{background:linear-gradient(180deg,rgba(8,18,30,.82),rgba(7,16,28,.6) 45%,rgba(6,14,24,.9)),linear-gradient(90deg,var(--rd-navy),rgba(9,22,38,.5));}
  .ruda__bg{background-position:center;}
  .ruda__sub{white-space:normal;}
}
@media (max-width:600px){
  .ruda{padding:80px 22px 150px;}
  .ruda__stats{grid-template-columns:1fr;}
  .ruda__corner{position:static;text-align:left;margin-bottom:20px;}
  .ruda__foot{flex-direction:column;gap:8px;text-align:center;}
}
@media (prefers-reduced-motion:reduce){.ruda .rd-anim{opacity:1!important;transform:none!important;transition:none!important;}}
