.elementor-kit-8{--e-global-color-primary:#1B1B1B;--e-global-color-secondary:#F7822C;--e-global-color-text:#D24408;--e-global-color-accent:#CE2015;--e-global-color-c32b88d:#A81913;--e-global-color-a2e8ccb:#DCDCDC;--e-global-color-2f38db4:#FDE6D3;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:900;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:800;--e-global-typography-text-font-family:"Public Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Public Sans";--e-global-typography-accent-font-weight:500;background-color:#FCFCFC;font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-8 h2{color:var( --e-global-color-primary );}.elementor-kit-8 h3{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-8 h4{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-8 h5{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-8 h6{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ---- global guard (mobile only, or sticky breaks) ---- */
@media(max-width:1024px){
  html,body{overflow-x:hidden;max-width:100%;}
}

/* ---- keyframes (single source of truth) ---- */
@keyframes rhPulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.45;transform:scale(.82)}
}
@keyframes rhSheen{
  0%,62%{left:-60%}
  92%,100%{left:120%}
}
@keyframes rhTilt{
  0%,88%,100%{transform:rotate(0deg)}
  91%{transform:rotate(-13deg)}
  94%{transform:rotate(11deg)}
  97%{transform:rotate(-6deg)}
}
@keyframes rhPing{
  0%{transform:scale(1);opacity:.6}
  70%{transform:scale(1.35);opacity:0}
  100%{transform:scale(1.35);opacity:0}
}

/* ---- areas / scenarios ---- */
.rh-area:hover .elementor-heading-title{color:#fff}

.rh-scenario{
  transition:background .55s cubic-bezier(.16,1,.3,1), border-left-width .55s ease;
}
.rh-scenario:hover{
  background:#383838;
  border-left-width:5px;
}

/* ---- service cards: equal height, button pinned bottom ---- */
.rh-svc-card{
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}
.rh-svc-card > .e-con:last-child{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
}
.rh-svc-card .elementor-widget-button{margin-top:auto !important}

/* ---- image zoom ---- */
.rh-zoom{
  overflow:hidden;border-radius:14px;
  transition:box-shadow .7s cubic-bezier(.16,1,.3,1);
}
.rh-zoom:hover{box-shadow:0 34px 72px rgba(15,25,45,.28)}
.rh-zoom img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.rh-zoom:hover img{transform:scale(1.06)}

/* ---- call / whatsapp buttons ---- */
.rh-btn-call .elementor-button,
.rh-btn-wa .elementor-button{
  transition:transform .55s cubic-bezier(.16,1,.3,1),
             box-shadow .55s cubic-bezier(.16,1,.3,1),
             background-color .55s cubic-bezier(.16,1,.3,1),
             gap .55s cubic-bezier(.16,1,.3,1) !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:11px !important;
}
.rh-btn-call .elementor-button:hover,
.rh-btn-wa .elementor-button:hover{
  transform:translateY(-3px);
  gap:15px !important;
}
.rh-btn-call .elementor-button:hover{box-shadow:0 14px 30px rgba(0,0,0,.35)}
.rh-btn-wa .elementor-button:hover{box-shadow:0 14px 30px rgba(37,211,102,.34)}

/* ---- live dot ---- */
.rh-live .elementor-heading-title::before{
  content:"";
  display:inline-block;
  width:7px;height:7px;
  border-radius:50%;
  background:#D24408;
  margin-right:9px;
  vertical-align:middle;
  animation:rhPulse 1.8s ease-in-out infinite;
}

.rh-dim{opacity:.78}
.rh-sep{opacity:.4}

/* ---- main nav ---- */
.rh-nav .elementor-nav-menu--main > li > a.elementor-item{
  border-bottom:2px solid transparent;
  transition:color .45s cubic-bezier(.16,1,.3,1),
             border-color .45s cubic-bezier(.16,1,.3,1);
}
.rh-nav .elementor-nav-menu--main > li > a.elementor-item:hover,
.rh-nav .elementor-nav-menu--main > li > a.elementor-item.elementor-item-active,
.rh-nav .elementor-nav-menu--main > li:hover > a.elementor-item{
  border-bottom-color:#D24408;
}
@media (min-width:1025px){
  .rh-nav .elementor-nav-menu--main li.menu-item-has-children:hover > .sub-menu,
  .rh-nav .elementor-nav-menu--main li.menu-item-has-children:focus-within > .sub-menu{
    display:grid !important;
  }
  .rh-nav .elementor-nav-menu--main .sub-menu{
    grid-template-columns:1fr 1fr;
    min-width:560px;
    padding:0 !important;
    border-top:3px solid #D24408 !important;
    box-shadow:0 24px 50px rgba(0,0,0,.16);
    counter-reset:rhsvc;
  }
  .rh-nav .elementor-nav-menu--main .sub-menu li{width:100%}
  .rh-nav .elementor-nav-menu--main .sub-menu a.elementor-sub-item{
    display:flex;
    align-items:center;
    gap:12px;
    border-bottom:1px solid #DCDCDC;
    white-space:nowrap;
  }
  .rh-nav .elementor-nav-menu--main .sub-menu a.elementor-sub-item::before{
    counter-increment:rhsvc;
    content:"0" counter(rhsvc);
    font-weight:900;
    font-size:11px;
    color:#D24408;
    flex-shrink:0;
  }
  .rh-nav .elementor-nav-menu--main .sub-menu li:nth-child(10) a.elementor-sub-item::before{
    content:"10";
  }
}

/* ---- header CTA (angled, sheen, tilting icon) ---- */
.rh-cta{
  align-self:center !important;
  display:flex !important;
  align-items:center !important;
}
.rh-cta .elementor-button{
  position:relative;
  overflow:hidden;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  clip-path:polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
  transition:background-color .45s cubic-bezier(.16,1,.3,1);
}
.rh-cta .elementor-button::after{
  content:"";
  position:absolute;
  top:0;left:-60%;
  width:45%;height:100%;
  pointer-events:none;
  background:linear-gradient(100deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.34) 50%,
    rgba(255,255,255,0) 100%);
  animation:rhSheen 5.2s ease-in-out infinite;
}
.rh-cta .elementor-button-icon i,
.rh-cta .elementor-button-icon svg{
  animation:rhTilt 4.6s ease-in-out infinite;
  transform-origin:center;
}

/* ---- call button: rounded, no angle ---- */
.rh-call .elementor-button{
  clip-path:none !important;
  border-radius:7px;
  position:relative;
  overflow:hidden;
}
.rh-call .elementor-button::after{
  content:"";
  position:absolute;
  top:0;left:-60%;
  width:45%;height:100%;
  pointer-events:none;
  background:linear-gradient(100deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.34) 50%,
    rgba(255,255,255,0) 100%);
  animation:rhSheen 5.2s ease-in-out infinite;
}

/* ---- mobile menu CTA ---- */
@media (max-width:1024px){
  .rh-menu-cta > a{
    display:flex !important;
    align-items:center;
    justify-content:center;
    gap:10px;
    background:#C4241B;
    color:#ffffff !important;
    font-weight:800 !important;
    font-size:15px !important;
    line-height:1.2 !important;
    padding:14px !important;
    border-radius:8px;
    margin:12px 22px 6px !important;
  }
  .rh-menu-cta > a::before{
    content:"\f095";
    font-family:"Font Awesome 5 Free";
    font-weight:900;
  }
  .rh-menu-cta > a:hover{background:#A81913}
}
@media (min-width:1025px){
  .rh-menu-cta{display:none !important}
}

/* ---- footer links ---- */
.rh-flinks .elementor-icon-list-item > a,
.rh-flinks .elementor-icon-list-item{
  gap:9px;
  transition:gap .55s cubic-bezier(.16,1,.3,1),
             color .55s cubic-bezier(.16,1,.3,1);
}
.rh-flinks .elementor-icon-list-item:hover > a,
.rh-flinks .elementor-icon-list-item:hover{gap:14px}
.rh-flinks .elementor-icon-list-icon{
  transition:color .55s cubic-bezier(.16,1,.3,1);
}

/* ---- reusable sheen wrapper ---- */
.rh-sheen{position:relative;overflow:hidden;isolation:isolate}
.rh-sheen::after{
  content:"";
  position:absolute;
  top:0;left:-60%;
  width:45%;height:100%;
  pointer-events:none;
  will-change:left;
  background:linear-gradient(100deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.34) 50%,
    rgba(255,255,255,0) 100%);
  animation:rhSheen 5.2s ease-in-out infinite;
}

/* ---- pinging phone icon ---- */
.rh-ping{
  position:relative;
  display:flex !important;
  align-items:center !important;
  line-height:0 !important;
}
.rh-ping::before,.rh-ping::after{
  content:"";
  position:absolute;
  top:50%;left:50%;
  width:26px;height:26px;
  margin:-13px 0 0 -13px;
  border-radius:50%;
  border:2px solid #DE2B24;
  pointer-events:none;
  animation:rhPing 4s cubic-bezier(.16,1,.3,1) infinite;
}
.rh-ping::after{animation-delay:2s}
.rh-ping .elementor-icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}
.rh-ping .elementor-icon i{line-height:1 !important;display:block !important}


.rh-arearow{transition:box-shadow .55s cubic-bezier(.16,1,.3,1)}
.rh-arearow:hover{box-shadow:0 14px 32px rgba(15,25,45,.08)}
.rh-arearow .elementor-widget-image{overflow:hidden;border-radius:10px}
.rh-arearow .elementor-widget-image img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.rh-arearow:hover .elementor-widget-image img{transform:scale(1.06)}


.rh-cc{
  transition:all .55s cubic-bezier(.16,1,.3,1);
}
.rh-cc:hover{
  transform:translateY(-3px);
  border-color:#DC3C28 !important;
  box-shadow:0 14px 32px rgba(15,25,45,.08);
}/* End custom CSS */