float-wahtml, body {
    overflow-x: hidden;
    background-color: #0000;
}

.background-style-0 {
    background:
        radial-gradient(25% 25% at 25% 25%, rgba(238, 254, 254, 0.08) 99%, #0000 101%) 30px 30px/calc(2*30px) calc(2*30px),
        radial-gradient(25% 25% at 25% 25%, rgba(238, 254, 254, 0.08) 99%, #0000 101%) 0 0/calc(2*30px) calc(2*30px),
        radial-gradient(50% 50%, rgba(142, 248, 248, 0.08) 98%, #0000) 0 0/30px 30px,
        repeating-conic-gradient(rgba(142, 248, 248, 0.08) 0 25%, rgba(238, 254, 254, 0.08) 0 50%) calc(.5*30px) 0/calc(2*30px) 30px;
}

.background-style-0 {
    background: url(../_images_/_site_/background3-min.png);
    background-size: auto;
}

.background-style-1 {
    background:
        conic-gradient(at 10% 50%, #0000 75%, rgba(202, 204, 255, 0.1) 0),
        conic-gradient(at 10% 50%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(1*10px) calc(3*10px),
        conic-gradient(at 10% 50%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(2*10px) calc(1*10px),
        conic-gradient(at 10% 50%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(3*10px) calc(4*10px),
        conic-gradient(at 10% 50%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(4*10px) calc(2*10px),
        conic-gradient(at 50% 10%, #0000 75%, rgba(202, 204, 255, 0.1) 0) 0 calc(4*10px),
        conic-gradient(at 50% 10%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(1*10px) calc(2*10px),
        conic-gradient(at 50% 10%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(2*10px) 0,
        conic-gradient(at 50% 10%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(3*10px) calc(3*10px),
        conic-gradient(at 50% 10%, #0000 75%, rgba(202, 204, 255, 0.1) 0) calc(4*10px) calc(1*10px),
        rgba(161, 255, 221, 0.1);
    background-size: 50px 50px;
}

.background-style-2 {
    background: url(../_images_/_site_/background1.png) top right no-repeat;
    background-size: cover;
}

.background-style-3 {
    background: url(../_images_/_site_/background2.png) top right no-repeat;
    background-size: cover;
}

.hero-header {
    background: url(../_images_/_site_/banner16.png) top right no-repeat;
    background-size: cover;
    height: 545px;
}

.price-carousel::after {
    background-color: rgb(0, 0, 0);
    opacity: 0;
}

#footer-btn-social-media>.btn-lg {
    /* font-size: 1.8rem !important; */ 
}

#footer {
    /* padding-top: 0 !important; */
    margin-top: 0 !important;
}

.footer-new-style-1 {
}

.background-dot {
    background-image: radial-gradient(#24faff 1.5px, transparent 1.5px);
    background-size: 30px 30px;
    background-color: #f4fbff;
}

.background-blur-img-fluid {
    background: rgba(60, 69, 81, .3);
}

.border-top {
    border-top: 1px solid #dee2e6 !important;
}

.f-float-btn {
    position:fixed;
    width:35px;
    height:35px;
    color:#FFF;
    border-radius: 50% 50% 0 0;
    font-size:15px;
    text-align:center;
    vertical-align: center;
    bottom: 0px;
    /*right: 0px;*/
}

.float-wa{
    background-color:#25d366;
    z-index:100;
    right: 80px;
}

.float-fb{
    background-color:#3b5998;
    z-index:100;
    right: 125px;
}

.float-it{
    background: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #fd1d1d, #f56040, #f77737, #fcaf45, #ffdc80);
    z-index:100;
    right: 170px;
}

.float-tt{
    background-color: #fff;
    color: #000;
    z-index:100;
    right: 215px;
}

.float-yt{
    background: #FF0000;
    z-index:100;
    right: 260px;
}

.float-en{
    position:fixed;
    width:30px;
    height:30px;
    /* background-color:#25d366; */
    background: url(https://videocdn.cdnpk.net/joy/content/video/free/2012-07/thumbnails/usa%20flag-Stock%20video%20JPEG_large.jpg);
    background-size: cover;
    color:#FFF;
    border-radius: 50%;
    padding-top: 5px;
    z-index:100;
    bottom: 0px;
    right: 130px;
}

.btn-en{
    background: url(https://videocdn.cdnpk.net/joy/content/video/free/2012-07/thumbnails/usa%20flag-Stock%20video%20JPEG_large.jpg);
    background-size: cover;
    width:30px;
    height:30px;
}

.back-to-top{
    width:30px;
    height:30px;
    background: url(https://media.istockphoto.com/id/899173488/es/vector/espacio-rocket-lanzamiento.jpg?s=612x612&w=0&k=20&c=vnxAI8be9mCEQelI8WLJByhaJG3VuqnvaXMb0r5ORvg=);
    background-size: cover;
    border: none !important;
}

.topbar-en {
    width:13px;
    height:13px;
    background: url(https://videocdn.cdnpk.net/joy/content/video/free/2012-07/thumbnails/usa%20flag-Stock%20video%20JPEG_large.jpg);
    background-size: cover;
    border-radius: 10px;
    margin: 0 20px;
}

.navbar-toggler {
    color: white !important;
    background-color: white;
    border-radius: 15px;
}

.navbar-light .navbar-nav .nav-link {
    color: white;
}

.py-5 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.owl-item  .od-services-index{
    background-color: #000;
    color: #FFF;
    font-weight: bold;
    text-transform: uppercase;
}

.owl-item .od-services-index p{
    text-shadow: 0px 0px 5px #32F0DA;
}


.bg-light .od-services-services{
    background-color: #111;
}

.bg-light .od-services-services a {
    color: #ffffff;
    font-weight: 600;
    text-shadow: 0 0 5px #32F0DA;
}

.bg-light .od-services-services p {
    color: #e0e0e0;
}

#banner-PROMO {
    background: url(../_images_/_site_/bannerpromo2.png) center no-repeat;
    background-size: contain;
    
    width: 100%;
    aspect-ratio: 15 / 1;
    
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
}

#banner-PROMO2 {
    background: url(../_images_/_site_/bannerpromo2.png) center no-repeat;
    background-size: contain;
    
    width: 100%;
    aspect-ratio: 15 / 1;
    
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
}

/* Móviles: mismo comportamiento, solo podrías ajustar posición si quieres */
@media (max-width: 480px) {
    #banner-PROMO {
        background-position: center top;
    }
    #banner-PROMO2 {
        background-position: center top;
    }
}

.services-index h6 {
    color: white !important;
}

.anim-dance{
    animation: shadow-dance 0.5s infinite alternate;
}

@media (max-width: 991px) {
	.dinamic-carrusel-text{
		background-color: rgba(0,0,0,0.6);
		padding: 20px 0px;
		border-radius: 20px;
	}
}

@keyframes shadow-dance {
  0% {
    text-shadow: 0px 0px 1px white;
  }
  20% {
    text-shadow: 0px 0px 4px white;
  }
  40% {
    text-shadow: 0px 0px 7px white;
  }
  60% {
    text-shadow: 0px 0px 10px white;
  }
  80% {
    text-shadow: 0px 0px 13px white;
  }
  100% {
    text-shadow: 0px 0px 16px white;
  }
}

.title-underline{
    border-color: rgba(256, 256, 256, .3) !important;
}

@media (min-width: 992px) {
    #carouselExampleFade, .carousel-inner, .carousel-item {
        height: calc(100vh - 110.5px);
    }
}

#carouselExampleFade, .carousel-inner, .carousel-item {
    width: 100%;
    max-width: 100%;
}

.hero-slide {
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
}

.hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45); /* mejora legibilidad */
}

.hero-slide .container {
    position: relative;
    z-index: 2;
}

/* Transición elegante */
.carousel-fade .carousel-item {
    transition: opacity 1s ease-in-out;
}

@media (max-width: 991.98px) {
  #heroCarousel .carousel-item-slide {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    padding: 5% 5%;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 20px;
  }
}

.image-strip-scroll {
  overflow: hidden;
  width: 100%;
  cursor: grab;
  touch-action: pan-x;
}

.image-strip-scroll:active {
  cursor: grabbing;
}

.strip-track {
  display: flex;
  width: max-content;
  will-change: transform;
}

.strip-track img {
  height: 220px;
  width: auto;
  flex-shrink: 0;
  display: block;
  object-fit: cover;
  user-select: none;
  pointer-events: none;
}

.terminos-condiciones {
  color: #ffffff;
}

.terminos-condiciones,
.terminos-condiciones h1,
.terminos-condiciones h2,
.terminos-condiciones p,
.terminos-condiciones ul,
.terminos-condiciones li,
.terminos-condiciones strong {
  color: #ffffff;
}

.terminos-condiciones * { color: #ffffff !important; }



.fab-container {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
}

.fab-main {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: #f4fbff;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    cursor: pointer;
    z-index: 99999;
    touch-action: manipulation;
}

.fab-main i {
    transition: transform .3s ease;
}

/* Botones ocultos */
.fab-item {
    position: absolute;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transform: scale(0);
    transition: all .3s ease;
    bottom: 5px;
    right: 5px;
    z-index: 99998;
}

/* Colores */
.ifloat-fb { background:#1877f2; }
.ifloat-ig { background:#e4405f; }
.ifloat-tt { background:#000; }
.ifloat-yt { background:#ff0000; }
.ifloat-wa { background:#25d366; }

/* Cuando está abierto */
.fab-container.open .fab-item {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
}

/* Posiciones tipo iOS */
.fab-container.open .ifloat-fb { transform: translateY(-70px); }
.fab-container.open .ifloat-ig { transform: translateY(-130px); }
.fab-container.open .ifloat-tt { transform: translateY(-190px); }
.fab-container.open .ifloat-yt { transform: translateY(-250px); }
.fab-container.open .ifloat-wa { transform: translateY(-310px); }

/* Rotación del + */
.fab-container.open .fab-main i {
    transform: rotate(45deg);
}

/* C O R R E C T I V O S */
.display-6 {
    /*font-size: calc(1rem + 1.5vw);*/
    font-size: calc(1.5rem);
}

@media (min-width: 992px) {
    .display-6 {
        font-size: 1.5rem;
    }
}

#footer .justify-content-start {
    font-size: small !important;
}