:root {
    --gray: #4b4b4b;
    --lgray: #f7f7f7;
    --sgray: #bfbfbf;
    --pink: #ff2675;
    --blue: #002fff;
    --brown: #301d19;
    --teal: #01869A;
    --darkteal: #026575;
    --lightteal: #e6f4f6;
    --navy: #16234B;
    --darknavy: #0F1A38;
    --lightnavy: #E9EDF6
}

html {
    font-size: 16px
}

html.grayscale {
    filter: grayscale(1);
    -webkit-filter: grayscale(1)
}

ul {
    list-style: none;
    margin: 0;
    padding: 0
}

html {
    font-size: 16px
}

li {
    margin: 0
}

body {
    font-family: "MADETommySoftRegular", sans-serif;
    -webkit-font-smoothing: antialiased;
    font-size: 15px;
    color: #301d19;
    overflow-x: hidden;
    background-color: white
}

.trans {
    transition: all .2s
}

h1,
h2,
h3,
h4,
h5,
p {
    margin: 0;
    padding: 0
}

h1,
h2,
h3,
h4,
h5 {
    color: black
}

.h1 {
    font-size: 60px
}

p {
    font-size: inherit
}

a {
    color: inherit
}

a:focus,
a:hover {
    text-decoration: none;
    color: var(--navy)
}

.whitespace-nowrap {
    white-space: nowrap
}

/* Utilidad sitewide: evita el salto de layout (FOUC) en CUALQUIER carrusel Slick
   del sitio (hero de páginas, Sistema ISP, tienda, planes de inicio, etc). Antes
   de que Slick.js inicialice, los slides son <div>/<li> normales y se apilan en
   vertical -- eso es el "salto" al refrescar. Con esta regla quedan ocultos hasta
   que Slick termina de armar el carrusel. Basta con agregar la clase "js-slick" al
   contenedor que se inicializa con .slick() para que quede protegido; no requiere
   CSS adicional por carrusel.
   OJO: se usa .js-slick-ready (agregada una sola vez por page_hero.js al evento
   "init" de Slick) en vez de la propia .slick-initialized de Slick, porque esa
   última se quita y se vuelve a poner cada vez que un carrusel con breakpoints
   "responsive" (los de Inicio) se reconstruye -- si la regla dependiera de ella,
   los slides parpadearían cada vez que el navegador cruza un breakpoint. */
.js-slick > * {
    display: none;
}
.js-slick.js-slick-ready > * {
    display: block;
}
/* Ocultar los slides (arriba) deja al contenedor sin hijos visibles, o sea con
   0 de alto, mientras Slick carga -- eso hace que la página se "encoja" un
   instante y todo lo de abajo salte hacia arriba, y vuelva a saltar hacia abajo
   cuando el carrusel por fin mide lo que mide de verdad. Reservamos ese alto de
   antemano (medido en vivo) para que la página nunca se mueva. Los hero con foto
   (Sistema ISP, Tienda, páginas de contenido) no lo necesitan: su <section> ya
   tiene su propio min-height fijo que los protege igual. */
.js-slick:not(.js-slick-ready) {
    min-height: 200px;
}
.slick-carousel-internet:not(.js-slick-ready) {
    min-height: 690px;
}
.slick-carousel-porsonalized:not(.js-slick-ready) {
    min-height: 475px;
}
.store-slider:not(.js-slick-ready) {
    min-height: 235px;
}

.text-link,
.text-link:hover,
.text-link:active,
.text-link:focus {
    text-decoration: underline
}

.flexslider .slides img {
    width: auto;
    margin: auto
}

.mycheckbox {
    display: inline-block;
    position: relative;
    padding-left: 20px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 0;
    font-weight: 600
}

.button-form-cobertura {
    background: var(--navy);
    color: #fff;
    padding: .5rem 1.5rem;
    font-size: 1rem;
    margin: .5rem;
    font-weight: 500
}

#codigo-venta {
    background: var(--navy);
    font-size: 30px;
    margin: 15px auto;
    color: white;
    display: inline-block;
    padding: 10px 15px
}

.mycheckbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer
}

.mycheckbox .checkmark {
    position: absolute;
    top: 3px;
    left: 0;
    height: 14px;
    width: 14px;
    border-radius: 5px;
    border: 1px solid #5d5d5d;
    background-color: #eee
}

.mycheckbox:hover input~.checkmark {
    background-color: #fcfcfc
}

.mycheckbox input:checked~.checkmark {
    background-color: #fcfcfc
}

.mycheckbox .checkmark:after {
    content: "";
    position: absolute;
    display: none
}

.mycheckbox input:checked~.checkmark:after {
    display: block
}

.mycheckbox .checkmark:after {
    left: -1px;
    top: -1px;
    width: 14px;
    height: 14px;
    border-radius: 5px;
    background-color: #f49412
}

.mycheckbox {
    font-size: 12px
}

.mycheckbox .checkmark {
    top: 0
}

@font-face {
    font-family: "MADETommySoftBold";
    src: url("fonts/MADETommySoftBold.eot");
    src: url("fonts/MADETommySoftBold.eot") format("embedded-opentype"), url("fonts/MADETommySoftBold.html") format("woff2"), url("fonts/MADETommySoftBold.woff") format("woff"), url("fonts/MADETommySoftBold.ttf") format("truetype"), url("fonts/MADETommySoftBold.svg#MADETommySoftBold") format("svg")
}

@font-face {
    font-family: "MADETommySoftMedium";
    src: url("fonts/MADETommySoftMedium.eot");
    src: url("fonts/MADETommySoftMedium.eot") format("embedded-opentype"), url("fonts/MADETommySoftMedium.html") format("woff2"), url("fonts/MADETommySoftMedium.woff") format("woff"), url("fonts/MADETommySoftMedium.ttf") format("truetype"), url("fonts/MADETommySoftMedium.svg#MADETommySoftMedium") format("svg")
}

@font-face {
    font-family: "MADETommySoftRegular";
    src: url("fonts/MADETommySoftRegular.eot");
    src: url("fonts/MADETommySoftRegular.eot") format("embedded-opentype"), url("fonts/MADETommySoftRegular.html") format("woff2"), url("fonts/MADETommySoftRegular.woff") format("woff"), url("fonts/MADETommySoftRegular.ttf") format("truetype"), url("fonts/MADETommySoftRegular.svg#MADETommySoftRegular") format("svg")
}

@font-face {
    font-family: "MADETommySoftBlack";
    src: url("fonts/MADETommySoftBlack.eot");
    src: url("fonts/MADETommySoftBlack.eot") format("embedded-opentype"), url("fonts/MADETommySoftBlack.html") format("woff2"), url("fonts/MADETommySoftBlack.woff") format("woff"), url("fonts/MADETommySoftBlack.ttf") format("truetype"), url("fonts/MADETommySoftBlack.svg#MADETommySoftBlack") format("svg")
}

@font-face {
    font-family: "MADETommySoftExtraBold";
    src: url("fonts/MADETommySoftExtraBold.eot");
    src: url("fonts/MADETommySoftExtraBold.eot") format("embedded-opentype"), url("fonts/MADETommySoftExtraBold.html") format("woff2"), url("fonts/MADETommySoftExtraBold.woff") format("woff"), url("fonts/MADETommySoftExtraBold.ttf") format("truetype"), url("fonts/MADETommySoftExtraBold.svg#MADETommySoftExtraBold") format("svg")
}

.regular {
    font-family: "MADETommySoftRegular"
}

.medium {
    font-family: "MADETommySoftMedium"
}

.sbold,
.semi_bold {
    font-weight: 600
}

.bold {
    font-family: "MADETommySoftBold"
}

.extrabold,
.extra_bold {
    font-family: "MADETommySoftExtraBold"
}

.black {
    font-family: "MADETommySoftBlack"
}

.z-index-haute {
    z-index: 10
}

.z-index-10 {
    z-index: 10
}

.z-index-20 {
    z-index: 20
}

html,
body {
    overflow-x: hidden
}

.list {
    list-style-type: disc;
    padding-left: 15px;
    margin-bottom: 15px
}

.cursor-pointer {
    cursor: pointer
}

.object-fit-cover {
    object-fit: cover
}

.white-space-nowrap {
    white-space: nowrap
}

.opacity-0 {
    opacity: 0
}

.line-through {
    text-decoration: line-through
}

.letter-spacing {
    letter-spacing: 1px
}

.br-10-top-left {
    border-top-left-radius: 10px
}

.br-10-bottom-left {
    border-bottom-left-radius: 10px
}

.br-10-top-right {
    border-top-right-radius: 10px
}

.br-10-bottom-right {
    border-bottom-right-radius: 10px
}

.br-10 {
    border-radius: 10px
}

.br-15 {
    border-radius: 15px
}

.br-20 {
    border-radius: 20px
}

.br-30 {
    border-radius: 30px
}

.br-40 {
    border-radius: 40px
}

.br-50 {
    border-radius: 50px
}

.br-60 {
    border-radius: 60px
}

.text-white,
.white {
    color: #fff !important
}

.text-black {
    color: #000 !important
}

.text-pink {
    color: var(--pink) !important
}

.text-blue {
    color: var(--blue) !important
}

.orang,
.text-orange {
    color: var(--navy) !important
}

.text-orangeon {
    color: var(--navy) !important
}

.text-brown {
    color: var(--brown) !important
}

.text-gray {
    color: var(--gray) !important
}

.text-lgray {
    color: var(--lgray) !important
}

.text-sgray {
    color: var(--sgray) !important
}

.text-orange-gradient-h {
    background-image: linear-gradient(90deg, #ff8b00, #ff5a00 70%);
    background-size: 100%;
    background-repeat: repeat;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-background-clip: text;
    -moz-text-fill-color: transparent
}

.text-orange-gradient-h-inv {
    background-image: linear-gradient(-90deg, #ff8b00, #ff5a00 70%);
    background-size: 100%;
    background-repeat: repeat;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-background-clip: text;
    -moz-text-fill-color: transparent
}

.text-orange-gradient-up {
    background-image: linear-gradient(180deg, #ff8b00, #ff5a00 70%);
    background-size: 100%;
    background-repeat: repeat;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-background-clip: text;
    -moz-text-fill-color: transparent
}

.bg-white {
    background-color: #fff
}

.bg-verde {
    background-color: #1bd741
}

.bg-pink {
    background-color: var(--pink)
}

.bg-blue {
    background-color: var(--blue)
}

.bg-black {
    background-color: black
}

.bg-orange {
    background-color: var(--navy) !important
}

.bg-brown {
    background-color: var(--brown) !important
}

.bg-purple {
    background-color: #eb5c1c
}

.bg-sgray {
    background-color: var(--sgray)
}

.bg-lgray {
    background-color: var(--lgray)
}

.bg-lightorange {
    background-color: var(--lightnavy)
}

.bg-hover-orange:hover {
    background-color: var(--navy)
}

.bg-orange-gradient-v {
    background: linear-gradient(0deg, #f1831d, #eb5d1c)
}

.bg-orange-gradient-v-inv {
    background: linear-gradient(180deg, #f1831d, #eb5d1c)
}

.bg-orange-gradient-h {
    background: linear-gradient(90deg, rgba(252, 138, 0, 1) 0%, rgba(255, 89, 0, 1) 70%)
}

.bg-orange-gradient-d {
    background: linear-gradient(45deg, rgba(255, 139, 0, 1) 0%, rgba(255, 89, 0, 1) 70%)
}

.bg-orange-gradient-d-inv {
    background: linear-gradient(45deg, rgba(255, 89, 0, 1) 0%, rgba(255, 139, 0, 1) 70%)
}

.bg-lgray-gradient-v {
    background: linear-gradient(0deg, #f2f2f2, #fff)
}

.bg-gray {
    background-color: var(--gray)
}

.bg-gray-ch {
    background: linear-gradient(to right, #ebebeb, #fff, #ebebeb)
}

.bg-cover {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important
}

.bg-cover-top {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center top !important
}

.bg-cover-bottom {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center bottom !important
}

.bg-cover-left {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: left center !important
}

.bg-position-top {
    background-position: center top
}

.text-vhuge {
    font-size: 45px !important
}

.text-huge {
    font-size: 30px !important
}

.text-big {
    font-size: 22px !important
}

.text-medium {
    font-size: 18px !important
}

.text-normal {
    font-size: 15px !important
}

.text-small {
    font-size: 12px !important
}

.text-tiny {
    font-size: 11px !important
}

.tiny {
    font-size: 11px !important
}

.line-height-1 {
    line-height: 1
}

.line-height-11 {
    line-height: 1.1
}

.line-height-12 {
    line-height: 1.2
}

.line-height-13 {
    line-height: 1.3
}

.lh-10 {
    line-height: 1
}

.lh-11 {
    line-height: 1.1
}

.lh-12 {
    line-height: 1.2
}

.lh-13 {
    line-height: 1.3
}

.box-shadow {
    box-shadow: -5px 5px 15px #00000033
}

.v-alignb {
    position: absolute;
    bottom: 0
}

.v-align {
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%)
}

.sec-preguntas .card-header {
    background: none;
    border: none;
    border-radius: none
}

.sec-preguntas .btn-link:hover,
.sec-preguntas .btn-link:focus {
    text-decoration: none
}

.sec-preguntas .btn:focus {
    box-shadow: none
}

.grecaptcha-badge {
    display: none !important
}

.sidebar_phone,
.sidebar_phone2 {
    position: fixed;
    bottom: 40px;
    z-index: 100;
    right: 50%;
    transform: translate(50%, 0%);
    width: 320px
}

.sidebar_phone3 {
    position: fixed;
    z-index: 100;
    width: 320px;
    bottom: 40px;
    right: 17px;
    transform: translate(0%, 0%)
}

.sidebar_phone2 {
    bottom: 5px;
    right: 49%
}

.sidebar_phone2 a>div {
    border-radius: 20px 0 0 20px
}

.sidebar_social {
    position: fixed;
    bottom: 40px;
    z-index: 100;
    right: 0
}

.sidebar_social2 {
    position: fixed;
    bottom: 40px;
    z-index: 100;
    right: 0
}

body.emprendedores .sidebar_social2 {
    display: none
}

@keyframes smoothScroll {
    0% {
        transform: translateY(-150px)
    }

    100% {
        transform: translateY(0)
    }
}

header {
    -webkit-transition: all .5s ease;
    -moz-transition: position 10s;
    -ms-transition: position 10s;
    -o-transition: position 10s;
    transition: all .5s ease
}

header.h_fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 30;
    animation: smoothScroll 1s forwards;
    box-shadow: 0 0 60px rgba(0, 0, 0, .5)
}

.navbar-brand img {
    width: 85px
}

.menu-section .navbar-nav li>a,
.menu-section .navbar-nav li>div {
    display: inline-block;
    border-bottom: 1px solid var(--navy);
    color: #222;
    padding: 5px 10px;
    font-size: 13px;
    line-height: 20px;
    font-weight: 700;
    overflow: hidden;
    transition: color .2s;
    position: relative;
    cursor: pointer;
    white-space: nowrap
}

.menu-section .navbar-nav .nav-item:nth-child(3) a,
.menu-section .navbar-nav .nav-item:nth-child(5) a {
    width: max-content
}

.enlaces-topbar {
    padding: 10px 0
}

.enlaces-topbar li {
    margin: 5px auto;
    max-width: 220px;
    font-weight: 500;
    border-radius: 5px;
    padding: 5px 0;
    display: block;
    text-align: center
}

.menu-section .navbar-toggler,
.menu-section .navbar-toggler:focus {
    color: transparent;
    border-color: transparent;
    width: 40px;
    height: 23px;
    outline: none
}

.menu-section .navbar-toggler-icon {
    background-color: var(--navy);
    height: 5px;
    width: 24px;
    border-radius: 10px;
    margin-left: auto;
    right: 0;
    top: 0;
    background-image: none
}

.menu-section .navbar-toggler-icon:nth-child(3) {
    width: 30px;
    top: 9px
}

.menu-section .navbar-toggler-icon:nth-child(1) {
    width: 36px;
    top: 18px
}

footer {
    min-height: 320px;
    background-color: var(--brown);
    padding: 30px 0;
    font-size: 13px
}

footer .row_foot>div {
    padding-top: 10px
}

footer .social img {
    width: 38px;
    margin: 0 1px;
    transition: all .2s ease-in
}

footer .social img:hover {
    transform: scale(1.2)
}

footer h4 {
    color: white;
    margin-bottom: 15px;
    font-size: 15px
}

footer+.copyright {
    background-color: white;
    padding: 12px;
    font-size: 12px;
    font-weight: 600
}

footer a {
    color: white
}

footer .ul_with {
    padding-left: 10px;
    margin-bottom: 15px
}

footer .ul_with li {
    position: relative
}

footer .ul_with li:before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: white;
    position: absolute;
    top: 5px;
    left: -7px
}

footer.promofooter {
    min-height: 1px;
    padding: 15px 0
}

footer .row_foot>div {
    padding-left: 40px
}

footer .row_foot>div {
    border: 0;
    min-height: inherit
}

footer .row_foot>div {
    padding-top: 10px
}


footer.footer-lp {
    min-height: auto;
    background-color: #fff;
    padding: unset;
    font-size: unset
}

hr {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #eee
}

.accesibility-wraper {
    z-index: 100000;
    border-radius: 50%;
    background-color: white;
    display: none;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px
}

.navbar-collapse .accesibility-wraper {
    position: absolute;
    display: flex;
    top: 15px;
    left: 15px
}

.navbar-collapse {
    position: relative
}

.box-caja-planes {
    border: 1px solid var(--navy);
    border-radius: 0 0 20px 20px;
    background: white;
    margin-top: 40px
}

.box-caja-planes.internet {
    background-color: var(--lightnavy) !important
}

.text-big-internet {
    font-size: 45px
}

.box-caja-planes.plan-recomendado {
    background: var(--navy);
    top: -30px
}

.box-caja-planes .caja-planes-group {
    background-color: var(--lightnavy)
}

.box-caja-planes.recomend .caja-planes-group {
    background-color: white
}

.box-img-planes {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    vertical-align: middle;
    border: 1px solid #c8c8c8;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px
}

.box-caja-planes.plan-recomendado h2,
.box-caja-planes.plan-recomendado .text-lead {
    color: white !important
}

.box-caja-planes.plan-recomendado .box-img-planes {
    background-color: white
}

.box-caja-planes.plan-recomendado .btn-orange {
    background: black
}

.box-plan-recomendado {
    border-radius: 60px;
    transform: translateY(-50%);
    box-shadow: inset 0 0 7px 0 #00000061;
    margin-bottom: -30px
}

.flexslider {
    border: 0;
    background: none
}

.sec-planes .flexslider .slides img {
    width: auto
}

.box-caja-planes img {
    width: auto !important;
    margin: auto
}

.text-lead {
    color: #7c7c7c !important
}

.icon-mcafee+div {
    display: none
}

.hover-mcafee {
    border: 1px solid #d1d1d1;
    bottom: -10px;
    right: 76px;
    z-index: 1000;
    width: 200px
}

.hover-mcafee .dots:after {
    content: "";
    position: absolute;
    background: var(--navy);
    width: 7px;
    height: 7px;
    top: 8px;
    left: -15px;
    border-radius: 50%
}

.hover-mcafee ul:after,
.hover-mcafee ul:before {
    content: "";
    display: block;
    position: absolute;
    left: 166px;
    width: 0;
    height: 0;
    border-style: solid
}

.hover-mcafee ul:after {
    top: 127px;
    border-color: transparent transparent transparent #fff;
    border-width: 10px
}

.hover-mcafee ul:before {
    top: 126px;
    border-color: transparent transparent transparent #d1d1d1;
    border-width: 11px
}

.flexslider,
.flexslider-plans {
    background: none;
    padding: 0;
    border: 0
}

.flexslider,
.flexslider-new-tabs {
    background: none;
    padding: 0;
    border: 0
}

.flexslider-plans.flexslider .custom-navigation .flex-next,
.flexslider-plans.flexslider .custom-navigation .flex-prev,
.flexslider-gamer.flexslider .custom-navigation .flex-next,
.flexslider-gamer.flexslider .custom-navigation .flex-prev,
.flexslider-tvgo.flexslider .custom-navigation .flex-prev,
.flexslider-tvgo.flexslider .custom-navigation .flex-next,
.flex-slider-move.flexslider .custom-navigation .flex-prev .flex-slider-move.flexslider .custom-navigation .flex-next {
    position: absolute;
    right: -10px;
    width: 40px;
    height: 40px;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    border-radius: 50%;
    align-items: center;
    display: flex;
    justify-content: center;
    font-size: 25px;
    background-color: transparent
}

.flexslider-plans.flexslider .custom-navigation .flex-prev {
    transform: translateY(-50%) translateX(-30px);
    left: 0
}

.flexslider-plans.flexslider .custom-navigation .flex-next {
    transform: translateY(-50%) translateX(30px);
    right: 0
}

.flexslider-tvgo.flexslider .custom-navigation>a,
.flex-slider-move.flexslider .custom-navigation>a,
.flexslider-gamer.flexslider .custom-navigation>a {
    position: absolute;
    right: -10px;
    width: 40px;
    height: 40px;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    border-radius: 50%;
    align-items: center;
    display: flex;
    justify-content: center;
    font-size: 25px
}

.flexslider-tvgo.flexslider .custom-navigation .flex-prev,
.flex-slider-move.flexslider .custom-navigation .flex-prev,
.flexslider-gamer.flexslider .custom-navigation .flex-prev {
    transform: translateY(-50%) translateX(-30px);
    left: 0
}

.flexslider-tvgo.flexslider .custom-navigation .flex-next,
.flex-slider-move.flexslider .custom-navigation .flex-next,
.flexslider-gamer.flexslider .custom-navigation .flex-next {
    transform: translateY(-50%) translateX(30px);
    right: 0
}

.flexslider-tvgo .flex-control-paging li a.flex-active,
.flex-slider-move .flex-control-paging li a.flex-active,
.flexslider-gamer .flex-control-paging li a.flex-active {
    width: 70px;
    background: var(--navy);
    transition: 500ms
}

.flexslider-tvgo .flex-control-paging li a,
.flex-slider-move .flex-control-paging li a,
.flexslider-gamer .flex-control-paging li a {
    width: 30px;
    height: 11px;
    background: #e4e4e4;
    box-shadow: none;
    -webkit-box-shadow: none
}

.flexslider-plans .flex-control-paging li a.flex-active {
    width: 70px;
    background: var(--navy);
    transition: 500ms
}

.flexslider-plans .flex-control-paging li a {
    width: 30px;
    height: 7px;
    background: #e4e4e4;
    box-shadow: none;
    -webkit-box-shadow: none
}

.btn[disabled] {
    cursor: auto;
    opacity: 1
}

.lds-ring {
    margin: auto;
    position: relative;
    width: 25px;
    height: 25px
}

.btn-sm .lds-ring {
    width: 18px;
    height: 18px
}

.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 25px;
    height: 25px;
    margin: 0;
    border: 4px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(.5, 0, .5, 1) infinite;
    border-color: #fff transparent transparent transparent
}

.btn-sm .lds-ring div {
    width: 18px;
    height: 18px;
    border-width: 3px
}

.lds-ring div:nth-child(1) {
    animation-delay: -.45s
}

.lds-ring div:nth-child(2) {
    animation-delay: -.3s
}

.lds-ring div:nth-child(3) {
    animation-delay: -.15s
}

@keyframes lds-ring {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

.evento .flipper {
    color: #fff;
    font-size: 35px !important
}

.evento .flipper-digit:after {
    background: transparent
}

.evento .flipper-group label {
    font-size: 30%;
    font-weight: 300;
    width: 100%;
    padding: 6px 0
}

.evento .digit-top,
.evento .digit-next {
    background: #ff3e84
}

.evento .digit-bottom,
.evento .digit-top2 {
    background: #ff8eb6
}

#wsp_button {
    position: fixed;
    right: 15px;
    bottom: 15px
}

.section-sorteo .flipper-group label {
    font-size: 32%;
    font-weight: 300;
    background-color: #646464;
    width: 100%;
    padding: 6px 0;
    border-radius: 0 0 10px 10px
}

.section-sorteo .flipper-digit:after {
    background: transparent
}

.section-sorteo .text-normal {
    font-size: 13px !important
}

.section-sorteo .text-normal {
    font-size: 13px !important
}

.section-sorteo .text-big {
    font-size: 19px !important
}

.section-sorteo .flipper {
    font-size: 22px !important
}

.img-icon-mujer {
    position: static;
    left: 0;
    transform: none;
    width: 180px
}

.bg-orange-gradient {
    background: linear-gradient(0deg, #f1831d, #eb5d1c)
}

.hg-col-inf {
    height: 210px
}

.border-orange {
    border: 1px solid var(--navy)
}

.tabs-plan-internet>div {
    width: 150px
}

.tabs-plan-internet>.active {
    background-color: var(--navy) !important;
    color: white;
    position: relative;
    box-shadow: inset 0 0 20px #00000038
}

.tabs-plan-active-new.active p {
    color: var(--navy) !important;
    cursor: pointer;
    position: relative
}

.tabs-plan-active-new.active p:before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 16px solid #311d18;
    top: 45px
}

.padd_o {
    padding: 0
}

.btn-orange-tvgo {
    background-color: #ff5114
}

.btn-orange-tvgo:hover {
    transform: scale(1.1)
}

.bg-orange-d {
    background: linear-gradient(90deg, #ffffff0f 10%, #ff9116 50%, #ff9116 50%, #ffffff00 90%)
}

.h-mesh.plan-gamer {
    min-height: 70px
}

@keyframes bounce_d {
    from {
        transform: translateY(-20px)
    }

    to {
        transform: translateY(15px)
    }
}

.bounce_d {
    animation: bounce_d;
    animation-iteration-count: infinite;
    animation-duration: 1s;
    animation-timing-function: ease-in;
    animation-direction: alternate-reverse
}

.tooltipe {
    position: relative;
    display: inline-block
}

.tooltipe .tooltipetext {
    visibility: hidden;
    width: 180px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity .3s
}

.tooltipe .tooltipetext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent
}

.tooltipe:hover .tooltipetext {
    visibility: visible;
    opacity: 1
}

.benef-item {
    width: 200px;
    height: 340px;
    margin: 0 auto 20px;
    border: 1px solid #e0e0e0
}

.benef-item img {
    max-width: 130px;
    max-height: 70px
}

.benef-item-img {
    height: 100px
}

.benef-name:after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    background-color: var(--navy);
    width: 50px;
    height: 4px;
    border-radius: 3px
}

.flex-control-paging li a.flex-active {
    width: 13px;
    height: 13px;
    top: -2px;
    position: relative;
    background: #ff671e
}

.flex-control-paging li a {
    box-shadow: none;
    background: rgb(255 103 30 / 50%);
    width: 8px;
    height: 8px
}

.border-right {
    border-right: 1px solid #ffffff73
}

.w-200 {
    width: 270px
}

.flexslider-planes .flex-direction-nav a {
    transform: translateY(-50%);
    height: 50px
}

.flexslider-planes .flex-direction-nav a:before {
    color: white
}

.btn-brown {
    background: var(--brown);
    color: white
}

.btn-black {
    background-color: black !important;
    color: white
}

.btn-black:hover {
    color: white
}

.cnt-slider-plans>div {
    width: 290px !important
}

.carousel-plans .slick-next:before {
    content: "\f054";
    color: var(--navy);
    font-family: "Font Awesome 5 Pro";
    font-weight: 300
}

.carousel-plans .slick-prev:before {
    content: "\f053";
    color: var(--navy);
    font-family: "Font Awesome 5 Pro";
    font-weight: 300
}

@media screen and (min-width:576px) {
    .position-sm-absolute {
        position: absolute
    }

    .sidebar_phone,
    .sidebar_phone2 {
        width: 275px;
        transform: translate(0%, 0%);
        right: 0
    }

    .sidebar_phone3 {
        width: 275px;
        transform: translate(0%, 0%);
        right: 17px
    }

    .sidebar_phone2 a>div {
        border-radius: 20px 0 0 20px
    }
}

@media screen and (min-width:768px) {
    .section_form .custombtn {
        padding: 10px 70px;
        height: 60px;
        font-size: 20px;
        border-radius: 10px
    }

    .section_form .form {
        padding: 50px 40px
    }

    .section_form .form .form-control {
        height: 60px;
        padding: 15px 25px;
        font-size: 17px
    }

    .topbar {
        background-color: #1d2228;
        font-size: 10px
    }

    .enlaces-topbar li {
        display: inline-block;
        margin: 0 15px
    }

    .enlaces-topbar li a,
    .enlaces-topbar li,
    .enlaces-topbar {
        color: #fff;
        border-bottom: none
    }

    footer .row_foot>div {
        padding: 12px
    }

    .navbar-collapse .accesibility-wraper {
        display: none
    }

    .benef-item {
        height: auto;
        margin-bottom: 0
    }
}

@media screen and (min-width:992px) {
    .box-caja-planes img {
        margin: 0
    }

    .box-plan-meses {
        min-height: 107px
    }

    .h-mesh {
        min-height: 120px
    }

    .h-mesh.tvgo {
        min-height: 135px
    }

    .flexslider-plans .flex-control-paging li a {
        height: 11px
    }

    .flexslider-tvgo .flex-control-paging li a.flex-active,
    .flex-slider-move .flex-control-paging li a.flex-active,
    .flexslider-gamer .flex-control-paging li a.flex-active {
        background: var(--navy)
    }

    .hg-col-inf {
        height: 285px
    }

    .img-icon-mujer {
        position: absolute;
        z-index: 2;
        left: 50%;
        transform: translateX(-50%);
        top: 0;
        width: auto
    }

    .text-vhuge {
        font-size: 70px !important
    }

    .text-huge {
        font-size: 45px !important
    }

    .text-big {
        font-size: 32px !important
    }

    .text-medium {
        font-size: 25px !important
    }

    .text-normal {
        font-size: 18px !important
    }

    .text-small {
        font-size: 15px !important
    }

    .text-tiny {
        font-size: 13px !important
    }

    .sidebar_phone,
    .sidebar_phone2,
    .sidebar_phone3 {
        width: 320px
    }

    .menu-section .navbar-nav li>a,
    .menu-section .navbar-nav li>div {
        padding: 25px 18px;
        font-size: 15px;
        border-bottom: 0;
        overflow: visible
    }

    .nav-item.last {
        margin-right: 130px
    }


    .menu-section .navbar-nav li.nav-item:hover>a:after,
    .menu-section .navbar-nav ul.dropdown-menu li:hover>a:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 25px 10px 25px;
        border-color: transparent transparent #eb5c1c transparent
    }

    footer .row_foot>div {
        border-right: 1px solid #828282;
        padding-top: 10px
    }

    footer .row_foot>div:nth-child(1),
    footer .row_foot>div:nth-child(3),
    footer .row_foot>div:nth-child(4) {
        max-height: 260px
    }

    footer .row_foot>div:last-child {
        border: 0
    }

    .accesibility-wraper {
        position: fixed;
        display: flex;
        bottom: 15px;
        left: 15px
    }

    .navbar-collapse {
        position: static
    }

    .flexslider-plans.flexslider .custom-navigation {
        display: block
    }

    .icon-mcafee:hover+div {
        display: block
    }

    .dropdown.show .dropdown-menu {
        position: absolute;
        display: block;
        padding: 0;
        transform: translateX(-50%);
        left: 50%;
        overflow: hidden
    }

    .dropdown-menu {
        box-shadow: 0 0 20px #00000030 !important
    }

    .dropdown.show {
        color: #555;
        background-color: #e7e7e7
    }

    .navbar-default .menus li .dropdown-menu li a {
        background-color: #ffffff;
        width: 140px
    }

    .menu-section .navbar-nav ul.dropdown-menu li:hover>a:after {
        content: "";
        position: absolute;
        bottom: 0;
        transform: translateX(-50%) translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 19.5px 0 19.5px 15px;
        border-color: transparent transparent transparent #eb5d1c;
        left: 7px;
        top: 50%
    }

    .dropdown.show ul.dropdown-menu li:hover {
        background-color: #e4e4e452 !important
    }

    .menu-section .navbar-nav .dropdown-menu li>a {
        padding: 20px 0;
        width: 200px
    }

    .section-sorteo .flipper {
        font-size: 32px !important
    }

    .section-sorteo .text-normal {
        font-size: 18px !important
    }

    .blog_g {
        height: 322px
    }

    .text-cliente-go img {
        width: auto
    }

    .flexslider-plans.flexslider .custom-navigation .flex-next,
    .flexslider-plans.flexslider .custom-navigation .flex-prev,
    .flexslider-gamer.flexslider .custom-navigation .flex-next,
    .flexslider-gamer.flexslider .custom-navigation .flex-prev,
    .flexslider-tvgo.flexslider .custom-navigation .flex-next,
    .flexslider-tvgo.flexslider .custom-navigation .flex-prev,
    .flex-slider-move.flexslider .custom-navigation .flex-next,
    .flex-slider-move.flexslider .custom-navigation .flex-prev {
        width: 60px;
        height: 60px;
        background-color: #f0f0f0
    }

    .flexslider-plans.flexslider .custom-navigation .flex-prev {
        transform: translateX(-130%);
        left: 0
    }

    .flexslider-plans.flexslider .custom-navigation .flex-next {
        transform: translateX(130%);
        right: 0
    }

    .flexslider-tvgo.flexslider .custom-navigation>a,
    .flex-slider-move.flexslider .custom-navigation>a,
    .flexslider-gamer.flexslider .custom-navigation>a {
        position: absolute;
        top: 50%;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background-color: #f0f0f0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 25px
    }

    .flexslider-tvgo.flexslider .custom-navigation .flex-prev,
    .flex-slider-move.flexslider .custom-navigation .flex-prev,
    .flexslider-gamer.flexslider .custom-navigation .flex-prev {
        transform: translateX(-130%);
        left: 0
    }

    .flexslider-tvgo.flexslider .custom-navigation .flex-next,
    .flex-slider-move.flexslider .custom-navigation .flex-next,
    .flexslider-gamer.flexslider .custom-navigation .flex-next {
        transform: translateX(130%);
        right: 0
    }

    .tabs-plan-internet>div {
        width: 240px
    }

    .cnt-slider-plans>div {
        width: 307px !important
    }

    .carousel-plans .slick-next,
    .carousel-plans .slick-prev {
        background-color: #f0f0f0;
        border-radius: 50%;
        height: 55px;
        width: 55px
    }

    .carousel-plans .slick-next {
        right: -65px
    }

    .carousel-plans .slick-next:before,
    .carousel-plans .slick-prev:before {
        font-size: 25px
    }

    .carousel-plans .slick-prev {
        left: -65px
    }

    .carousel-plans .slick-next:focus,
    .carousel-plans .slick-next:hover,
    .carousel-plans .slick-prev:focus,
    .carousel-plans .slick-prev:hover {
        background-color: #d7d7d7 !important
    }

    .blog-body #next-button {
        bottom: 40px
    }
}

@media screen and (min-width:1200px) {
    .section-clientes .bg-white:hover {
        box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175) !important
    }

    .tabs-plan-active-new.active p:before {
        border-left: 12px solid transparent;
        border-right: 12px solid transparent;
        border-top: 12px solid #311d18
    }

    .triangle-up:before {
        top: 80px;
        left: auto;
        right: 0;
        border-top: 20px solid transparent;
        border-right: 27px solid #fff;
        border-bottom: 20px solid transparent;
        transform: unset
    }

    .tooltipe .tooltipetext {
        width: 250px
    }
}
/* css me */
.banner-object{
    background-color: #f4f5f8;
}
.bg-default{
    background-color: #16234B;
}
.badge-warning {
    color: #FFFFFF;
    background-color: #f59c1a;;
}  
.breadcrumb-item a:hover {
    text-decoration: none;
    color: #ffffff;
}
/* METODO DE PAGO */
.payment-methods {
    background-color: #f4f5f8;
}
.payment-card {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 263px; 
    background-color: #fff;
    height: 251px; 
    display: flex;
    align-items: center;
    justify-content: center;
}
.payment-card:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
}
.payment-image {
    width: 135px;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
    margin: 0 auto; 
    display: block;
    transition: transform 0.3s ease;
}
.payment-info {
    position: absolute;
    bottom: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.7); 
    color: #fff;
    padding: 10px;
    text-align: center;
    transform: translateY(100%);
    transition: transform 0.4s ease;
}
.payment-card:hover .payment-info {
    transform: translateY(0); 
}
.payment-info h5 {
    margin: 0;
    font-size: 1.1rem;
    font-weight: bold;
    color: #FFF;
}
.bank-card {
    background-color: #f8f9fa;
    border-left: 4px solid var(--navy);
    transition: box-shadow 0.3s ease;
}
.bank-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
.bank-details h6 {
    font-size: 1.1rem;
    color: var(--navy);
}
.bank-details p {
    font-size: 0.95rem;
    color: #555;
}
/* METODO INFO */
.info-section {
    background-color: #f4f5f8;
    padding: 20px 0;
}
.info-text {
    font-size: 1.2rem;
    color: #333;
}
.divider {
    flex-grow: 1;
    height: 4px; 
    background-color: #16234B; 
    margin: 0 10px;
}
.logo img {
    max-width: 100%;
}
/* METODO ACORDION */
.accordion-section {
    width: 100%;
    padding: 20px;
    background-color: #f4f5f8;
}
.accordion-section .container-accordion{
    max-width: 1140px;
    margin: auto;
    background-color: #f4f5f8;
    padding: 10px;
}
.accordion-item {
    margin-bottom: 10px;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid #16234B;
    transition: border-color 0.3s ease;
}
.accordion-header {
    background-color: #16234B;
    color: #fff; 
    font-size: 1.10rem;
    font-weight: bold;
    padding: 7px 10px;
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: color 0.3s ease; 
}
.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    background-color: #fafafa;
    padding: 0;
}
.accordion-content p {
    padding: 7px 10px; 
    margin: 0;
    font-size: 0.90rem;
    color: #555;
    text-align: left;
}
.accordion-icon {
    font-size: 1.5rem;
}
/* BOTON FLOTANTE */
.whatsapp-footer {
    position: fixed;
    bottom: 50px;
    right: 30px;
    z-index: 1000;
}
.whatsapp-circle {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #26D366;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
}

.whatsapp-pulse {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(38, 211, 102, 0.3);
    transform: translate(-50%, -50%) scale(0.8); 
    pointer-events: none; 
    opacity: 1;
    animation: pulse-animation 2s infinite ease-out;
}
.pulse1 {
    animation-delay: 0s;
}
.pulse2 {
    animation-delay: 0.5s;
}
.pulse3 {
    animation-delay: 1s;
}
.whatsapp-icons {
    position: relative;
    z-index: 10;
}
.icon-wsp {
    font-size: 30px; 
    color: white;
}
@keyframes pulse-animation {
    0% {
        transform: translate(-50%, -50%) scale(0.8); /* Tamaño inicial */
        opacity: 0.7; /* Comienza con cierta transparencia */
    }
    50% {
        transform: translate(-50%, -50%) scale(1.6); /* Expande fuera del botón */
        opacity: 0.4; /* Desvanece ligeramente */
    }
    100% {
        transform: translate(-50%, -50%) scale(2); /* Expande completamente */
        opacity: 0; /* Desaparece */
    }
}
/* SLIDER PLANES */
.e-box-plan {
    max-width: 296px;
    position: relative;
    background: #fff;
    margin: 20px auto 2rem;
    border-radius: 15px;
    border: 1px solid #ddd;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.e-box-plan:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 26px rgba(0, 0, 0, 0.14);
}
.e-box-plan__type {
    background: #16234B;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    padding: 10px;
}
.e-box-plan__type--recommended {
    background: linear-gradient(90deg, #2B3D6E, #16234B);
    color: #fff;
    font-size: 12px;
    letter-spacing: .04em;
    text-transform: uppercase;
    padding: 9px 10px;
}
.e-box-plan__service-name {
    font-size: 0.8rem;
    font-weight: normal;
    color: #333;
    text-align: center;
    margin-bottom: 0px;
    margin-top: 8px;
}
.e-box-plan__desc {
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
    color: #000;
    margin-bottom: 10px;
    margin-left: 5px;
    margin-right: 5px;
}
.e-box-plan__speed {
    font-size: 0.9rem;
    color: #666;
    text-align: center;
    margin: 10px 0;
}
.e-box-plan__old-speed {
    text-decoration: line-through;
    margin-right: 8px;
    color: #999;
}
.e-box-plan__promo-speed {
    font-size: 1.5rem;
    font-weight: bold;
    color: #16234B;
}
.e-box-plan__current-speed {
    font-size: 1.5rem;
    font-weight: bold;
    color: #16234B;
}
.e-box-plan__promo-tag {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 0 16px 4px;
    padding: 5px 10px;
    background: var(--lightnavy);
    color: #0F1A38;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
    border-radius: 20px;
}
.e-box-plan__price {
    text-align: center;
    margin: 15px 0;
}
.e-box-plan__price>span {
    font-size: 0.875rem;
    color: #666;
    display: block;
}
.e-box-plan__old-price {
    text-decoration: line-through;
    color: #999;
    margin-right: 8px;
}
.e-box-plan__price>strong {
    color: #16234B;
    font-size: 2rem;
    font-weight: 700;
    display: block;
}
.e-box-plan__discount-months {
    font-size: 0.9rem;
}
.e-box-plan__installation {
    font-size: 1.5rem;
    font-weight: bold;
    color: #666;
    text-align: center;
    margin-top: 10px;
}
.e-box-plan__installation span {
    display: block;
    font-size: 0.875rem;
    color: #666;
    margin-top: -7px;
}
.e-box-plan__details {
    padding: 18px 24px;
    background-color: #f7f7f7;
    border-top: 1px solid #ececec;
}
.e-box-plan__details ul {
    padding-left: 0;
    list-style: none;
}
.e-box-plan__details ul li {
    font-size: 0.875rem;
    color: #000;
    text-align: left;
    padding: 6px 0;
    display: flex;
    align-items: center;
    gap: 12px;
}
.e-box-plan__icon {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
}
.e-box-plan__img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}
.e-box-plan__text {
    flex: 1;
    line-height: 1.3;
}
.e-box-plan__cta {
    padding: 18px 16px 22px;
}
.e-box-plan__cta .btn + .btn {
    margin-top: 8px;
}
/* TIENDA — Botones/textos de marca propios de la tienda (color oficial WIFICOR: navy + teal,
   independiente del .btn-orange/.text-orange genérico del resto del sitio). */
.btn-navy {
    color: #fff;
    background-color: var(--navy);
    border-color: var(--navy);
}
.btn-navy:hover,
.btn-navy:focus,
.btn-navy:not(:disabled):not(.disabled).active,
.btn-navy:not(:disabled):not(.disabled):active {
    color: #fff;
    background-color: var(--darknavy);
    border-color: var(--darknavy);
}
.text-navy { color: var(--navy) !important; }
/* TIENDA — Barra superior: buscador + cuenta */
.store-toolbar {
    background: #fff;
    border-bottom: 1px solid #eee;
}
.store-search {
    display: flex;
    flex: 1 1 320px;
    max-width: 420px;
    margin-right: 16px;
}
.store-search__input {
    flex: 1;
    border: 1px solid #ddd;
    border-right: none;
    border-radius: 20px 0 0 20px;
    padding: 8px 16px;
    font-size: 0.85rem;
    outline: none;
}
.store-search__input:focus {
    border-color: var(--navy);
}
.store-search__btn {
    border: 1px solid var(--navy);
    background: var(--navy);
    color: #fff;
    border-radius: 0 20px 20px 0;
    padding: 0 18px;
}
.store-account-link {
    font-size: 0.85rem;
    font-weight: 600;
    color: #333;
    white-space: nowrap;
}
.store-account-link:hover {
    color: var(--navy);
}
/* TIENDA — Recién agregados (mini tarjetas) */
.store-trending-item {
    display: block;
    text-align: center;
    color: #333;
}
.store-trending-item__img {
    display: block;
    aspect-ratio: 1 / 1;
    background: #f7f7f7;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 6px;
}
.store-trending-item__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.store-trending-item__name {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #333;
    line-height: 1.2;
    margin-bottom: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.store-trending-item__price {
    display: block;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--navy);
}
/* TIENDA — Hero (a todo el ancho del viewport, igual que el resto de heros del sitio:
   Sistema ISP, Nosotros, Formas de pago... nivelado en altura y estructura con ellos) */
.store-hero {
    background: linear-gradient(120deg, #2B3D6E 0%, #16234B 55%, #0F1A38 100%);
    background-image:
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.08) 0, rgba(255,255,255,.08) 10px, transparent 11px),
        radial-gradient(circle at 85% 75%, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 16px, transparent 17px),
        linear-gradient(120deg, #2B3D6E 0%, #16234B 55%, #0F1A38 100%);
    padding: 70px 0;
    min-height: 430px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}
/* Hero con banner(s) reales subidos desde el admin (Tienda virtual -> Banners) */
.store-hero--photo {
    background-image: none;
    background-color: #1D2228;
}
.store-hero-slider,
.store-hero-slider .slick-list,
.store-hero-slider .slick-track {
    height: 100%;
}
.store-hero-slider {
    position: absolute;
    inset: 0;
}
.store-hero-slider .slick-track {
    display: flex;
}
.store-hero-slider .slick-slide {
    height: auto;
}
.store-hero-slide {
    height: 100%;
}
.store-hero-slide__link {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 430px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    image-rendering: -webkit-optimize-contrast;
}
.store-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(100deg, rgba(20,15,10,.62) 0%, rgba(20,15,10,.34) 40%, rgba(20,15,10,0) 68%);
}
.store-hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
    pointer-events: none;
}
.store-hero__content a {
    pointer-events: auto;
}
.store-hero__content .store-hero__title,
.store-hero__content .store-hero__subtitle {
    text-shadow: 0 2px 10px rgba(0,0,0,.55);
}
.store-hero-slider .slick-dots {
    position: absolute;
    bottom: 16px;
    left: 0;
    right: 0;
    z-index: 3;
    display: flex !important;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.store-hero-slider .slick-dots li {
    width: 8px;
    height: 8px;
}
.store-hero-slider .slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    text-indent: -9999px;
    cursor: pointer;
}
.store-hero-slider .slick-dots li.slick-active button {
    background: #fff;
}
.store-hero__badge {
    display: inline-block;
    background: rgba(255,255,255,.15);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    padding: 7px 16px;
    border-radius: 999px;
    margin-bottom: 16px;
}
.store-hero__title {
    color: #fff;
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 12px;
}
.store-hero__subtitle {
    color: rgba(255,255,255,.9);
    font-size: 1rem;
    margin-bottom: 18px;
}
.store-hero__flash {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #1D2228;
    color: #fff;
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: .02em;
    text-transform: uppercase;
    padding: 10px 20px;
    border-radius: 999px;
    box-shadow: 0 6px 16px rgba(0,0,0,.25);
    animation: store-flash-pulse 1.8s infinite;
}
.store-hero__flash:hover {
    color: #fff;
}
.store-hero__flash i {
    color: #FFD23F;
}
@keyframes store-flash-pulse {
    0%, 100% { box-shadow: 0 6px 16px rgba(0,0,0,.25); }
    50% { box-shadow: 0 6px 20px rgba(255,210,63,.55); }
}
.store-hero__icon {
    font-size: 8rem;
    color: rgba(255,255,255,.25);
}
.store-hero__feature-carousel {
    width: 520px;
    max-width: 100%;
    margin: 0 auto;
}
.store-hero__feature-slide {
    padding: 32px 18px 22px;
    outline: none;
}
.store-hero__feature {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: transform .3s ease;
}
.store-hero__feature:hover {
    transform: translateY(-10px);
    z-index: 5;
}
.store-hero__feature__img {
    display: block;
    width: 133px;
    height: 133px;
    border-radius: 50%;
    background: #fff;
    padding: 10px;
    box-shadow: 0 10px 26px rgba(0,0,0,.28), 0 0 0 8px rgba(255,255,255,.18);
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease;
}
.store-hero__feature__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 50%;
    transition: transform .35s ease;
}
.store-hero__feature:hover .store-hero__feature__img {
    transform: scale(1.08);
    box-shadow: 0 22px 40px rgba(0,0,0,.4), 0 0 0 8px rgba(255,255,255,.28);
}
.store-hero__feature:hover .store-hero__feature__img img {
    transform: scale(1.1);
}
.store-hero__feature__ribbon {
    position: absolute;
    top: -6px;
    right: 4px;
    z-index: 2;
    background: #1D2228;
    color: #fff;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: .03em;
    padding: 4px 9px;
    border-radius: 999px;
    box-shadow: 0 4px 10px rgba(0,0,0,.3);
    transform: rotate(8deg);
    white-space: nowrap;
}
@media (min-width: 992px) and (max-width: 1199px) {
    .store-hero__feature-carousel {
        width: 440px;
    }
    .store-hero__feature-slide {
        padding: 28px 13px 20px;
    }
    .store-hero__feature__img {
        width: 115px;
        height: 115px;
        padding: 8px;
    }
}
@media (max-width: 991px) {
    .store-hero__feature-carousel {
        width: 330px;
    }
    .store-hero__feature-slide {
        padding: 22px 10px 16px;
    }
    .store-hero__feature__img {
        width: 90px;
        height: 90px;
        padding: 7px;
    }
}
@media (max-width: 767px) {
    .store-hero {
        padding: 40px 0;
        min-height: 300px;
        text-align: center;
    }
    .store-hero-slide__link {
        min-height: 300px;
    }
    .store-hero__title {
        font-size: 1.7rem;
    }
    .store-hero .col-md-6:last-child {
        margin-top: 24px;
    }
    .store-hero__feature-carousel {
        width: 320px;
    }
    .store-hero__feature-slide {
        padding: 20px 8px 14px;
    }
    .store-hero__feature__img {
        width: 90px;
        height: 90px;
        padding: 7px;
    }
}
/* TIENDA — Sidebar de categorías (desktop) */
.store-sidebar {
    background: transparent;
    border: none;
    border-right: 1px solid #e5e5e5;
    border-radius: 0;
    padding: 0 20px 0 0;
    position: sticky;
    top: 20px;
    box-shadow: none;
}
.store-sidebar__title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: normal;
    text-transform: none;
    color: #000;
    background: none;
    padding: 0 0 14px;
    margin: 0 0 10px;
    border-bottom: 2px solid var(--navy);
}
.store-sidebar__title i {
    color: var(--navy);
    font-size: 1rem;
}
.store-sidebar__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.store-sidebar__list li {
    border-bottom: 1px solid #f2f2f2;
}
.store-sidebar__list li:last-child {
    border-bottom: none;
}
.store-sidebar__list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 4px;
    font-size: 0.9rem;
    font-weight: 500;
    color: #333;
    border-left: 3px solid transparent;
    padding-left: 10px;
    margin-left: -10px;
    transition: color .15s ease, border-color .15s ease;
}
.store-sidebar__list a:hover {
    color: var(--navy);
}
.store-sidebar__list a.is-active {
    color: var(--navy);
    font-weight: 700;
    border-left-color: var(--navy);
}
.store-sidebar__count {
    font-size: 0.75rem;
    color: #999;
    background: #f4f4f4;
    border-radius: 20px;
    padding: 1px 9px;
}
.store-sidebar__list a.is-active .store-sidebar__count {
    color: #fff;
    background: var(--navy);
}
.store-section-title {
    font-size: 1.4rem;
    font-weight: 800;
    color: #000;
}
.store-section-count {
    font-size: 0.85rem;
    color: #999;
}
/* TIENDA — Categorías (filtro por pill) */
.store-categories-bar {
    padding-top: 0;
}
.store-categories-nav {
    gap: 10px;
}
.store-category-pill {
    display: inline-block;
    padding: 8px 18px;
    border-radius: 20px;
    border: 1px solid #ddd;
    color: #301d19;
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    background: #fff;
    transition: all .2s;
}
.store-category-pill:hover {
    color: #fff;
    background: var(--navy);
    border-color: var(--navy);
}
.store-category-pill.is-active {
    color: #fff;
    background: var(--navy);
    border-color: var(--navy);
}
/* TIENDA — Tarjeta de producto (misma familia visual que .e-box-plan) */
.e-box-product {
    max-width: 296px;
    position: relative;
    background: #fff;
    margin: 0 auto 2rem;
    border-radius: 15px;
    border: 1px solid #ddd;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.e-box-product:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 26px rgba(0, 0, 0, 0.14);
}
.e-box-product__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    background: linear-gradient(90deg, #2B3D6E, #16234B);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    padding: 5px 12px;
    border-radius: 999px;
    box-shadow: 0 4px 10px rgba(22, 35, 75,.35);
}
.e-box-product__img {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #f7f7f7;
    overflow: hidden;
}
.e-box-product__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.e-box-product__img--detail {
    aspect-ratio: 4 / 3;
    border-radius: 15px;
    border: 1px solid #ddd;
}
.e-box-product__content {
    padding: 16px 20px 4px;
}
@media (max-width: 767px) {
    .e-box-product__content {
        padding: 10px 12px 2px;
    }
    .e-box-product__name {
        font-size: 0.85rem;
    }
    .e-box-product__desc {
        font-size: 0.75rem;
    }
    .e-box-product__price strong {
        font-size: 1.2rem;
    }
    .e-box-product__cta .btn {
        font-size: 0.75rem;
        padding: 8px 10px !important;
    }
}
.e-box-product__category {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: var(--navy);
    margin-bottom: 4px;
}
.e-box-product__name {
    font-size: 1rem;
    font-weight: bold;
    color: #000;
    margin-bottom: 6px;
}
.e-box-product__name a {
    color: #000;
}
.e-box-product__desc {
    font-size: 0.85rem;
    color: #666;
    margin-bottom: 10px;
}
.e-box-product__price {
    margin: 10px 0;
}
.e-box-product__price strong {
    color: #16234B;
    font-size: 1.5rem;
    font-weight: 700;
}
.e-box-product__price--detail strong {
    font-size: 2.2rem;
}
.e-box-product__old-price {
    text-decoration: line-through;
    color: #999;
    margin-right: 8px;
    font-size: 0.95rem;
}
.e-box-product__stock {
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 10px;
}
.e-box-product__stock.is-ok {
    color: #1bae5f;
}
.e-box-product__stock.is-out {
    color: #e63946;
}
.e-box-product__cta {
    padding: 8px 0 20px;
}
.slick-prev, .slick-next {
    font-size: 24px;
    color: #333;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center; 
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    cursor: pointer;
}
.slick-prev {
    left: -50px;
}
.slick-next {
    right: -50px;
}
@media (max-width: 600px) {
    .slick-prev, .slick-next {
        display: none;
    }
}
/* Home - Section Servicio*/
.feature-carousel {
    margin: 0 -12px;
}
.feature-carousel:not(.js-slick-ready) {
    min-height: 260px;
}
.feature-carousel__slide {
    padding: 12px 12px 20px;
    outline: none;
}
.feature-box {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 2px 18px 0px rgba(0, 0, 0, 0.3);
    padding: 20px;
    text-align: center;
    width: 100%;
    max-width: 220px;
    transition: transform 0.3s ease;
    margin: 0 auto;
}
.feature-box:hover {
    transform: scale(1.05); 
}
.feature-icon {
    width: 144px;
    height: 125px;
    margin-bottom: 10px;
}
.feature-box h4 {
    font-size: 15px;
    margin: 10px 0;
    line-height: 1.2em;
    font-weight: bold;
    -webkit-text-size-adjust: 100%;
}
.blog-section .d-flex.justify-content-between {
    flex-wrap: wrap;
    row-gap: 4px;
    column-gap: 10px;
}
/* Home - Banner */
.banner-advertising .banner {
    width: 100%;
    aspect-ratio: 2560 / 649;
    max-height: 370px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
/* Home - Banner*/
.navbar-brand img {
  width: 200px;
}
.flexslider .slides img {
  width: 250px;
  height: 350px;
  margin: auto;
}
.parsley-errors-list {
  list-style-type: none !important;
  color: #ff100b;
  font-size: 12px !important;
  line-height: inherit !important;
}
/* BOTÓN WHATSAPP */
.btn-whatsapp {
    color: #fff;
    background-color: #25D366;
    border-color: #25D366;
}
.btn-whatsapp:hover {
    color: #fff;
    background-color: #1EBE5B;
    border-color: #1EBE5B;
}
.btn-whatsapp.focus,
.btn-whatsapp:focus {
    box-shadow: 0 0 0 0 rgba(30, 190, 91, 0.5);
}
.btn-whatsapp.disabled,
.btn-whatsapp:disabled {
    color: #fff;
    background-color: #1EBE5B;
    border-color: #1EBE5B;
}
.btn-whatsapp:not(:disabled):not(.disabled).active,
.btn-whatsapp:not(:disabled):not(.disabled):active,
.show>.btn-whatsapp.dropdown-toggle {
    color: #fff;
    background-color: #1EBE5B;
    border-color: #1EBE5B;
}
.btn-whatsapp:not(:disabled):not(.disabled).active:focus,
.btn-whatsapp:not(:disabled):not(.disabled):active:focus,
.show>.btn-whatsapp.dropdown-toggle:focus {
    box-shadow: 0 0 0 0 rgba(30, 190, 91, 0.5);
}
/* BOTTON */
.btn-orange {
    color: #fff;
    background-color: #16234B;
    border-color: #16234B;
}
.btn-orange:hover {
    color: #fff;
    background-color: #0F1A38;
    border-color: #0F1A38;
}
.btn-orange.focus,
.btn-orange:focus {
  box-shadow:0 0 0 0 rgba(15, 26, 56.5)
}
.btn-orange.disabled,
.btn-orange:disabled {
  color:#fff;
  background-color:#0F1A38;
  border-color:#0F1A38
}
.btn-orange:not(:disabled):not(.disabled).active,
.btn-orange:not(:disabled):not(.disabled):active,
.show>.btn-orange.dropdown-toggle {
  color:#fff;
  background-color:#0F1A38;
  border-color:#0F1A38
}
.btn-orange:not(:disabled):not(.disabled).active:focus,
.btn-orange:not(:disabled):not(.disabled):active:focus,
.show>.btn-orange.dropdown-toggle:focus {
  box-shadow:0 0 0 0 rgba(15, 26, 56,.5)
}
.bg-top {
  background-color: #1D2228;
  font-size: 13px;
}
.text-primary-plan {
  font-size: 15px !important;
  color: var(--teal);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.text-secundary-plan {
  font-size: 42px !important;
  color: var(--navy);
  font-weight: bolder;
}
.text-primary-pagos {
  font-size: 25px !important;
  color: var(--navy);
  font-weight: bolder;
}
.text-secundary-pagos {
  font-size: 32px !important;
  color: var(--navy);
  font-weight: bolder;
}
.menu-section .navbar-nav li.nav-item:hover>a:after,
  .menu-section .navbar-nav ul.dropdown-menu li:hover>a:after {
    content:"";
    position:absolute;
    bottom:0;
    left:50%;
    transform:translateX(-50%);
    width:0;
    height:0;
    border-style:solid;
    border-width:0;
    border-color:transparent transparent #000 transparent
}
.preheader-xs ul li > *, .win_tabs li > * {
  background-color: transparent;
  border-bottom: none;
}
.menu-section .navbar-nav li > a, .menu-section .navbar-nav li > div {
  display: inline-block;
  border-bottom: none;
  color: #222;
  padding: 5px 10px;
  font-size: 13px;
  line-height: 20px;
  font-weight: 700;
  overflow: hidden;
  transition: color .2s;
  position: relative;
  cursor: pointer;
  white-space: nowrap;
}
footer {
  min-height: 270px;
  background-color: #1D2228;
  padding: 30px 0;
  font-size: 13px;
}
footer + .copyright {
  background-color: #111418;
  color: #ffffff;
  padding: 12px;
  font-size: 12px;
  font-weight: 600;
}
.footer-img {
  margin:0 auto 20px;
  width: 200px;
}
.social a {
  position: relative;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 50px;
  display: inline-block;
  font-size: 15px;
  background-color: #ffffff;
  color: #333333;
  margin-bottom: 20px;
}
.social a:hover{
  background-color: #111418;
  color: #ffffff;
}
.nav-footer li > a {
  line-height: 25px;
  padding: 10px 0;
  font-size: 13px;
  color: #fff;
  text-transform: uppercase;
}
.font-weight-900 {
    font-weight: 900 !important;
}
ul.valores {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.icons {
    display: block;
    width: 60px;
    height: 60px;
    margin: 10px auto;
    padding: 0
}

.pt-500, .py-500 {
    padding-top: 5rem !important;
}
.pb-200, .py-200 {
    padding-bottom: 2rem !important;
}
.pb-500 {
    padding-bottom: 5rem !important;
}
.font-weight-700 {
    font-weight: 700 !important;
}
.font-22-px {
    font-size: 22px !important;
}
.mb-100, .my-100 {
    margin-bottom: 1rem !important;
}
.pt-200, .py-200 {
    padding-top: 2rem !important;
}
.font-16-px {
    font-size: 16px !important;
}
.mt-250, .my-250 {
    margin-top: 2.5rem !important;
}
.cut-top {
    clip-path: polygon(0 7px, 50% 0, 50% 19px, 101% 12px, 101% 101%, 0 101%);
}
.text-justiy{
  text-align: justify !important;
}
.slide-home {
    height: 380px;
    position: relative;
}
.slide-home .container {
    position: relative;
    z-index: 1;
}
.slide-home__title {
    text-shadow: 0 2px 16px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.5);
    margin-bottom: 10px !important;
}
.slide-home__subtitle {
    text-shadow: 0 2px 12px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.5);
    margin-bottom: 6px;
}
.slide-home__cta {
    margin-top: 18px;
    letter-spacing: .03em;
    box-shadow: 0 8px 20px rgba(1,134,154,.35);
}
.sec-planes .flexslider .slides img {
    width: auto;
}
.sech1 {
    position: relative;
    background: linear-gradient(#494949, #3b3b3b, #202121);
    box-shadow: inset 0 0px 10px rgba(0, 0, 0, 0.3);
}
.sech1 img {
    position: absolute;
    top: -35px;
}

.section-banner .flex-control-nav {
    bottom: 20px;
}

.section-banner .flex-control-paging li a {
    background: white;
}

.section-banner .flex-control-paging li a:hover {
    background: black;
}

@media screen and (min-width:861px) {
  .flex-direction-nav .flex-prev {
    left: -50px;
    text-align: center;
  }
  .flex-direction-nav .flex-next {
    right: -50px;
    text-align: center;
  }
}
.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  margin: -20px 0 0;
  position: absolute;
  top: 50%;
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
  color: rgba(0,0,0,.8);
  text-shadow: 1px 1px 0 rgba(255,255,255,.3);
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  background-color: rgba(255,255,255,0.1);
  border-radius: 5px;
}
.flex-direction-nav a:before {
  font-size: 30px;
  font-weight: 300;
  color: #fff;
}
/* personalizacion flexslider banners */
.section-banner .flex-control-paging li a.flex-active {
    width: 14px;
    height: 14px;
    background: #fff !important;
    transition: 500ms;
    position: relative;
    top: -3px;
}
.section-banner .flex-control-paging li a {
    width: 9px;
    height: 9px;
    background: #fff !important;
    box-shadow: none;
    -webkit-box-shadow: none;
}
.div-formas .tip_for {
  width: 25%;
  font-size: 12px;
}
li.tip_for {
    height: 100px;
    width: 25%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    position: relative;
}
.tip_for img {
  width: 100%;
  max-height: 100px;
}
.cursor-pointer {
    cursor: pointer;
}
/* end flexslider banners  */

.text-lead {
    color: #666666
}

.btn-white:hover {
    background-color: black !important;
    color: white !important;
}

.mt-n5 {
    margin-top: -5em
}

.box-call-men {
    height: 310px;
}

.box-call-men img.men {
    position: relative;
    right: -210px;
}

.box-px-text-internet {
    padding: 0 70px;
    line-height: 1.4;
}

.box-redes-fixed {
    box-shadow: none;
    right: 30px;
    width: 490px;
    bottom: 50px;
    position: fixed;
    z-index: 999;
}

.sidebar_social {
    display: none
}

.sidebar_phone {
    display: none;
}

.btn-white {
    background-color: white;
    color: #321712
}

.btn-white:hover {
    transform: scale(0.92);
}
.pad-texto {
    padding-left: 12px !important;
}

.obj-cover {
    object-fit: cover;
    object-position: center;
}

.w-full {
    width: 100% !important;
}

.h-full {
    height: 100% !important;
}

.text-xbig {
    font-size: 36px !important
}

.text-xsbig {
    font-size: 26px !important
}

.text-500 {
    font-weight: 500;
}

.text-medium-xs {
    font-size: 16px !important
}

.w-35 {
    width: 35% !important;
}

.-t-4 {
    top: -1.5rem !important;
}

.mt-md-6 {
    margin-top: 3.5rem !important;
}

.img-text-catacaos {
    max-width: 115% !important;
    position: absolute;
    left: 0;
    margin-left: -18% !important;
}

.text-brown-light {
    color: #32120c;
}

@media  screen and (min-width: 992px) {

    .text-vhuge {
        font-size: 50px !important;
    }


    .offset-lg-2-5 {
        margin-left: 14.666667% !important;
    }

    .col-lg-2-5 {
        -ms-flex: 0 0 18.666667%;
        flex: 0 0 18.666667%;
        max-width: 18.666667%;
    }

    .col-sm-9 {
        padding-top: 3rem;
        -ms-flex: 0 0 75% !important;
        flex: 0 0 75% !important;
        max-width: 75% !important;
    }

    .ml-7 {
        margin-left: 3rem;
    }
}


@media  screen and (min-width: 1400px) {

    .text-medium-xs {
        font-size: 22px !important
    }
}

@media  screen and (max-width: 1200px) {

    .slider_wraper .left-arrow,
    .slider_wraper .right-arrow {
        display: none !important;
    }

    .slider_wraper .left-arrow-1,
    .slider_wraper .right-arrow-1 {
        display: none !important;
    }

    .box-px-text-internet {
        padding: 0 0;
    }
}

@media  screen and (max-width: 767px) {


    .text-xbig {
        font-size: 24px !important
    }

    .text-xsbig {
        font-size: 20px !important
    }

    .pad-texto {
        padding-left: 1rem !important;
    }

    .section-banner .flex-control-paging li a {
        background: black;
    }

    .section-banner .flex-control-paging li a:hover {
        background: white;
    }

    .section-banner .flex-control-nav {
        bottom: 0;
    }

    .left-arrow-1 {
        transform: translateY(-50%) translateX(10px);
    }

    .slider_wraper .left-arrow-1 {
        left: -12px;
    }

    .right-arrow-1 {
        transform: translateY(-50%) translateX(-10px);
    }

    .right-arrow-1 {
        transform: none;
    }

    .slider_wraper .right-arrow-1 {
        right: -12px;
    }

    .blog_c {
        width: 100%;
    }

    .allplans .nav-tabs>li {
        padding: 0px;
    }

    .allplans .nav-tabs>li .img_wraper {
        padding: 18px;
    }

    .bene_b p {
        font-size: inherit;
    }


    .mesh_sec {
        margin: 33px auto;
    }

    .mesh_sec img {
        width: 50px !important;
    }

    .sech1 img {
        position: relative;
        width: 130px;
        margin: auto;
        display: block;
        top: 16px;
    }

    .sec-planes .flex-direction-nav {
        display: none;
    }

    .box-redes-fixed {
        right: 50%;
        transform: translateX(50%);
        width: 490px;
        bottom: 0;
        box-shadow: inset 0 -70px 40px -20px #00000061;
    }

}

@media  screen and (min-width: 767px) {
    .box-call-men {
        padding-left: 80px !important;
    }
}

@media  screen and (min-width: 991px) {
    .box-call-men {
        padding-left: 120px !important;
    }

    .slide-home {
        height: 430px;
    }

}

@media  screen and (min-width: 1500px) {
    .slide-home {
        height: 470px;
    }
}


.ml-7 {
    margin-left: .05rem
}

@media  screen and (min-width: 410px) {
    .col-sm-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }
}

@media  screen and (min-width: 767px) {
    .icon-netflix {
        transform: translateY(40%);
        margin-left: 0%;
    }

    .icon-ookla {
        transform: translateY(40%);
        margin-right: 0%;
    }

    .col-sm-9 {
        padding-top: 0rem;
        -ms-flex: 0 0 60%;
        flex: 0 0 60%;
        max-width: 60%;
    }

    .ml-7 {
        margin-left: 0rem;
    }
}
@media  screen and (min-width: 1200px) {
    .text-xbig {
        font-size: 36px !important
    }
    .text-xsbig {
        font-size: 26px !important
    }
    .ml-7 {
        margin-left: 4rem;
    }
}
@media  screen and (min-width: 1500px) {
    .-ml-7 {
        margin-left: -100px;
    }
    .ml-7 {
        margin-left: 100px;
    }
    .text-xbig {
        font-size: 40px !important
    }
    .text-xsbig {
        font-size: 30px !important
    }
    .col-xxl-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
}
.z-2 {
    z-index: 2
}
.w-80 {
    width: 80% !important;
}
@media  screen and (min-width: 768px) {
    .w-80 {
        width: 100% !important;
    }
    .text-md-start {
        text-align: start !important;
    }
    .topbar {
      background-color: #1D2228;
      font-size: 13px;
    }
}
.text-start {
    text-align: start !important;
}
@media  screen and (min-width: 992px) {
    .pl-md-6 {
        padding-left: 4.5rem !important;
    }
    .position-md-inherit {
        position: inherit !important;
    }
    .mt-md-6 {
        margin-top: 5rem !important;
    }
    .footer-img {
        margin-top: 10px;
        margin-bottom: 20px;
    }
    footer .row_foot > div {
      border-right: none;
      padding-top: 10px;
    }
    .carousel-plans .slick-next, .carousel-plans .slick-prev {
      background-color: rgba(26, 36, 28, 0.1);
      border-radius: 50%;
      height: 40px;
      width: 40px;
    }
    li.tip_for {
      width: 20%;
      height: 180px;
    }
    .tip_for img {
      max-height: inherit;
    }
    .font-md-48-px {
      font-size: 48px !important;
    }
    .font-md-32-px {
      font-size: 32px !important;
    }
    .font-md-28-px {
        font-size: 28px !important;
    }
}
.font-26-px {
    font-size: 26px !important;
}
.f-w-700 {
  font-weight: bold !important;
}
.f-w-none {
  font-weight: none !important;
}
.pt-150, .py-150 {
    padding-top: 1.5rem !important;
}
.consulta-recibo {
  width: 100%;
  max-width: 406px;
  background: #fff;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 6px 6px 20px 0 rgba(0, 0, 0, 0.16);
}
.ld_spacer_6542e23fe0144 {
    height: 60px;
}
.font-24-px {
    font-size: 24px !important;
}
.line-height-1 {
    line-height: 1 !important;
}
.pb-100, .py-100 {
    padding-bottom: 1rem !important;
}
.pl-150, .px-150 {
    padding-left: 1.5rem !important;
}
.pr-150, .px-150 {
    padding-right: 1.5rem !important;
}
.pl-100, .px-100 {
    padding-left: 1rem !important;
}
.pr-100, .px-100 {
    padding-right: 1rem !important;
}
.pb-50, .py-50 {
    padding-bottom: 0.5rem !important;
}
.pt-50, .py-50 {
    padding-top: 0.5rem !important;
}
.btn-outline-orange {
    text-transform: uppercase !important;
    background-size: 200% 100% !important;
    background-color: transparent !important;
    color: #16234B !important;
    border-color: #16234B;
}
.btn-outline-orange:hover {
    background-color: #16234B !important;
    color: #ffffff !important;
    border-color: #16234B;
}
/* NOTICE - HOME*/
.blog-section .notice-item {
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.blog-section .notice-item img {
    object-fit: cover;
    height: 200px; 
    transition: transform 0.3s ease-in-out;
}

.blog-section .notice-item-content {
    background-color: #f8f9fa;
}

.blog-section .notice-item h3 {
    font-size: 1.125rem;
    color: #333;
}
.blog-section .notice-item p {
    font-size: 0.875rem;
    color: #666;
    margin-bottom: 1rem;
}
.blog-section .btn-outline-orange {
    color: #16234B;
    border-color: #16234B;
}
.blog-section .btn-outline-orange:hover {
    background-color: #16234B;
    color: #fff;
}
.text-user-blog{
    color: #666 !important;
}
.text-date-blog{
    color: #666 !important;
}
/* BLOG*/
.text-know-more {
    font-size: 13px;
    text-transform: uppercase;
    color: #16234B !important;
}
.img-container {
    width: 100%;
    max-height: 300px;
    overflow: hidden;
}
.img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
}
.blog-item {
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    border-radius: .25rem;
    overflow: hidden;
}
.blog-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.blog-item .p-4 {
    flex-grow: 1;
}
.blog-item .text-uppercase {
    color: #333;
}
.blog-item p {
    margin-bottom: 1rem;
    flex-grow: 1;
    color: #666;
    font-size: 0.875rem;
}
.pagination .page-link {
    color: #16234B;
}
.pagination .page-item.active .page-link {
    background-color: #16234B;
    border-color: #16234B;
}
.pagination .page-item.disabled .page-link {
    color: #ccc;
}
.title-recent-post{
    border-left: 5px solid var(--navy);
    padding-left: 15px;
}
.input-group {
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
}
.input-group .form-control {
    border: none;
    box-shadow: none;
}
.input-group .btn {
    border: none;
    box-shadow: none;
    background-color: #16234B;
    color: #fff;
}
.recent-post {
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.recent-post .img-container {
    flex-shrink: 0;
    width: 100px;
    height: auto;
}
.recent-post .img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.recent-post .p-3 {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
.blog-detail-container h1 {
    font-size: 2rem;
    margin-bottom: 1rem;
}
.blog-detail-image-container {
    height: 300px;
    overflow: hidden;
    position: relative;
}
.blog-detail-image {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}
.blog-detail-image:hover {
    transform: scale(1.05);
}
.blog-detail-container .author, .blog-detail-container .date {
    font-size: 0.8rem;
    color: #000;
}
.blog-detail-container .date {
    text-align: right;
}
.search-input {
    position: relative;
    display: flex;
    align-items: center;
}
#search_blog {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}
#box-search {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 200px;
    overflow-y: auto;
    border-top: none;
    border-radius: 0 0 5px 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}
#search_blog:focus {
    color:#2d353c;
    background-color:#fff;
    border-color:#16234B;
    outline:0;
    box-shadow:0 0 0 .2rem rgba(255, 102, 0,.25)
}
.autocom-box li {
    padding: 10px;
    cursor: pointer;
    list-style: none;
}
.autocom-box li:hover {
    background-color: #f5f5f5;
}
.icon {
    position: absolute;
    right: 10px;
}
/* CONSULTA DE RECIBOS*/
.receipt-search-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
}
.receipt-search-input {
    position: relative;
    width: 100%;
    max-width: 500px;
    display: flex;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.receipt-search-input input {
    width: 100%;
    padding: 12px 16px;
    border-radius: 50px 0 0 50px;
    outline: none;
    transition: border-color 0.3s;
}
.receipt-search-input input:focus {
    color:#2d353c;
    background-color:#fff;
    border-color:#16234B;
    outline:0;
    box-shadow:0 0 0 .1rem rgba(255, 102, 0,.25)
}
.receipt-search-input a {
    padding: 12px 20px;
    border-left: none;
    border-radius: 0 50px 50px 0;
    background-color: #16234B;
    color: #fff;
    cursor: pointer;
    transition: background-color 0.3s;
}
.receipt-search-input a:hover {
    background-color: #cc5200;
}
.invoices-section {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.invoice-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
}
.invoice-table th, .invoice-table td {
    text-align: center;
    vertical-align: middle;
    padding: 12px;
    border-bottom: 1px solid #dddddd;
    transition: background-color 0.3s;
}
.invoice-table th {
    background-color: #1D2228;
    color: #fff;
    font-weight: bold;
}
.invoice-table td {
    background-color: #f9f9f9;
}
.invoice-table tr:hover td {
    background-color: #f1f1f1;
}
.client-info {
    margin-bottom: 15px;
    text-align: left;
}
.recommendations {
    margin-top: 20px;
    background-color: #e9ecef;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.recommendations h5 {
    font-weight: bold;
    margin-bottom: 10px;
}
.recommendations ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.recommendations ul li {
    margin-bottom: 10px;
    padding-left: 20px;
    position: relative;
}
.recommendations ul li::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    left: 0;
    color: #16234B;
}
/*  FORM CONTROL */

.form-control:focus {
    color:#2d353c;
    background-color:#fff;
    border-color:#16234B;
    outline:0;
    box-shadow:0 0 0 .2rem rgba(255, 102, 0,.25)
}
/* MODAL SOLICITUD */
#request-modal .modal-dialog {
    max-width: 900px;
    margin: 20px auto;
}
#request-modal .modal-content {
    border-radius: 15px; 
}
#request-modal .close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 2.5rem;
    color: #301d19;
    border: none;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 1050;
    transition: background-color 0.3s ease;
}
#request-modal .close-btn:hover {
    color: #111418;
}
#request-modal .modal-body {
    display: flex;
    padding: 0; 
}
#request-modal .image-section {
    flex: 1;
    overflow: hidden;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
}
#request-modal .image-section img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
}
#request-modal .form-section {
    flex: 1;
    padding: 60px 20px 20px;
    background: #fff;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
}
#request-modal .form-section .form-group {
    margin-bottom: 1rem;
}
@media (max-width: 768px) {
    #request-modal .modal-dialog {
        margin: 10px auto; 
    }
    #request-modal .modal-body {
        flex-direction: column; 
    }
    #request-modal .image-section, #request-modal .form-section {
        border-radius: 15px;
    }
}

/* ===================== CARRITO DE COMPRAS ===================== */
.store-cart-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--gray);
    padding: 0 6px;
}
.store-cart-link:hover { color: var(--navy); }
.store-cart-link__icon-wrap {
    position: relative;
    display: inline-flex;
    line-height: 1;
}
.store-cart-link__badge {
    position: absolute;
    top: -8px;
    right: -10px;
    background: var(--navy);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
    box-shadow: 0 0 0 2px #fff;
}

.store-qty-stepper {
    display: inline-flex;
    align-items: center;
    border: 1px solid #e2e2e2;
    border-radius: 30px;
    overflow: hidden;
}
.store-qty-stepper__btn {
    width: 34px;
    height: 34px;
    border: 0;
    background: var(--lgray);
    color: var(--gray);
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}
.store-qty-stepper__btn:hover { background: var(--lightnavy); color: var(--navy); }
.store-qty-stepper__input {
    width: 42px;
    height: 34px;
    border: 0;
    text-align: center;
    font-weight: 700;
    color: var(--brown);
}

.store-cart-empty i {
    font-size: 60px;
    color: var(--sgray);
}

.store-cart-table {
    background: #fff;
    border-radius: 15px;
    box-shadow: -5px 5px 15px #00000014;
    overflow: hidden;
}
.store-cart-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border-bottom: 1px solid #f0f0f0;
}
.store-cart-row:last-child { border-bottom: 0; }
.store-cart-row__img {
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    border-radius: 10px;
    overflow: hidden;
    background: var(--lgray);
}
.store-cart-row__img img { width: 100%; height: 100%; object-fit: cover; }
.store-cart-row__info { flex: 1 1 auto; min-width: 0; }
.store-cart-row__name {
    display: block;
    font-weight: 700;
    color: var(--brown);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.store-cart-row__name:hover { color: var(--navy); }
.store-cart-row__unit { font-size: 12px; color: var(--gray); }
.store-cart-row__qty { flex: 0 0 auto; }
.store-cart-row__subtotal {
    flex: 0 0 100px;
    text-align: right;
    font-weight: 700;
    color: var(--brown);
}
.store-cart-row__remove {
    flex: 0 0 auto;
    border: 0;
    background: transparent;
    color: var(--sgray);
    font-size: 16px;
    cursor: pointer;
}
.store-cart-row__remove:hover { color: #e33; }

.store-cart-summary {
    background: #fff;
    border-radius: 15px;
    box-shadow: -5px 5px 15px #00000014;
    padding: 20px;
}
.store-cart-summary__title { font-weight: 700; color: var(--brown); margin-bottom: 12px; }
.store-cart-summary__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 18px;
}
.store-cart-summary__row strong { color: var(--navy); font-size: 22px; }

.store-checkout-card {
    background: #fff;
    border-radius: 15px;
    box-shadow: -5px 5px 15px #00000014;
    padding: 20px;
}
.store-checkout-card__title { font-weight: 700; color: var(--brown); margin-bottom: 12px; }
.store-checkout-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 14px;
}
.store-checkout-line:last-child { border-bottom: 0; }
.store-checkout-line__subtotal { font-weight: 700; color: var(--brown); }
.store-payment-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13.5px;
}
.store-payment-table thead th {
    text-align: left;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--gray);
    background: var(--lgray);
    padding: 10px 12px;
}
.store-payment-table thead th:first-child { border-radius: 8px 0 0 8px; }
.store-payment-table thead th:last-child { border-radius: 0 8px 8px 0; }
.store-payment-table td {
    padding: 10px 12px;
    border-bottom: 1px solid #f0f0f0;
    color: var(--brown);
    vertical-align: middle;
}
.store-payment-table tbody tr:hover td { background: var(--lightteal); }
.store-payment-table__method {
    display: table-cell;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12.5px;
    white-space: nowrap;
}
.store-payment-table__method img {
    width: 28px;
    height: 28px;
    object-fit: contain;
    border-radius: 6px;
    margin-right: 8px;
    vertical-align: middle;
}
.store-checkout-notice {
    background: var(--lightnavy);
    color: var(--darknavy);
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 12.5px;
    line-height: 1.4;
}

/* ===================== CUENTA (login/registro/perfil/pedidos) ===================== */
.store-auth-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 15px;
    box-shadow: 0 4px 14px rgba(0,0,0,.06);
    padding: 32px 30px;
}
.store-auth-card__title {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--brown);
    margin-bottom: 8px;
}
.store-auth-card__subtitle {
    font-size: 13px;
    color: var(--gray);
    margin-bottom: 22px;
}

.store-account-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 15px;
    box-shadow: 0 4px 14px rgba(0,0,0,.06);
    overflow: hidden;
}
.store-account-card__head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px;
    text-align: left;
}
.store-account-card__avatar {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    line-height: 52px;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    font-size: 1.2rem;
    font-weight: 800;
    text-align: center;
    overflow: hidden;
}
.store-account-card__avatar--photo {
    background: #eee;
}
.store-account-card__avatar--photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}
.store-account-card__id {
    min-width: 0;
}
.store-account-card__name {
    font-weight: 700;
    color: var(--brown);
    text-transform: capitalize;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.store-account-card__email {
    font-size: 12px;
    color: var(--teal);
    word-break: break-all;
}
.store-account-card__section {
    padding: 12px 20px 8px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--sgray);
    border-top: 1px solid #f2f2f2;
}
.store-account-menu__item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    color: var(--brown);
    font-size: 14px;
    font-weight: 600;
    border-bottom: 1px solid #f2f2f2;
    border-left: 3px solid transparent;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.store-account-menu__item:last-child { border-bottom: 0; }
.store-account-menu__item i { width: 16px; color: var(--sgray); }
.store-account-menu__item:hover { background: var(--lightnavy); color: var(--navy); border-left-color: var(--navy); }
.store-account-menu__item:hover i { color: var(--navy); }
.store-account-menu__item.is-active { background: var(--lightnavy); color: var(--navy); font-weight: 700; border-left-color: var(--navy); }
.store-account-menu__item.is-active i { color: var(--navy); }
.store-account-menu__item--danger { color: #e33; }
.store-account-menu__item--danger i { color: #e33; }
.store-account-menu__item--danger:hover { background: #fdecec; color: #e33; border-left-color: #e33; }
.store-account-menu__item--danger:hover i { color: #e33; }

.store-account-panel {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 15px;
    box-shadow: 0 4px 14px rgba(0,0,0,.06);
    padding: 26px 28px;
}
.store-account-panel__title {
    font-weight: 800;
    color: var(--brown);
    font-size: 1.1rem;
    margin-bottom: 4px;
}

.store-account-hero {
    background-color: #17233a;
    background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 22px 22px;
    padding: 40px 0;
}
.store-account-hero__title {
    color: #fff;
    font-size: 1.7rem;
    font-weight: 800;
    margin: 0;
}
.store-account-hero__right {
    gap: 20px;
}
.store-account-hero__crumb {
    font-size: 13px;
    color: rgba(255,255,255,.65);
}
.store-account-hero__crumb a {
    color: rgba(255,255,255,.9);
}
.store-account-hero__crumb a:hover {
    color: #fff;
}
.store-account-hero__crumb span {
    color: #fff;
    font-weight: 600;
}
.store-account-hero__logout {
    background: var(--teal);
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    padding: 9px 18px;
    border-radius: 8px;
    white-space: nowrap;
}
.store-account-hero__logout:hover {
    background: var(--darkteal);
    color: #fff;
}
@media (max-width: 767px) {
    .store-account-hero__right {
        margin-top: 14px;
        width: 100%;
        justify-content: space-between;
    }
}

.store-orders-table thead th {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--gray);
    background: var(--lgray);
    border-top: 0;
    border-bottom: 2px solid #f0f0f0;
}
.store-orders-table td {
    vertical-align: middle;
    font-size: 13.5px;
    color: var(--brown);
}
.store-orders-table tbody tr:hover {
    background: var(--lightteal);
}
.store-order-status {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 999px;
}
.store-order-status.is-pending { background: #E9EDF6; color: var(--darknavy); }
.store-order-status.is-ok { background: #e6f8ee; color: #1bae5f; }
.store-order-status.is-cancel { background: #fdecec; color: #e33; }

/* ===================== SLIDER "RECIÉN AGREGADOS" (Slick) ===================== */
.store-slider { margin: 0 -10px; }
.store-slider__slide { padding: 0 10px; }
.store-slider .e-box-product { max-width: none; }
.store-slider:not(.slick-initialized) { display: flex; overflow-x: auto; }
.store-slider:not(.slick-initialized) .store-slider__slide { flex: 0 0 260px; }
.store-slider .slick-prev, .store-slider .slick-next {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
    z-index: 2;
}
.store-slider .slick-prev { left: -14px; }
.store-slider .slick-next { right: -14px; }
.store-slider .slick-prev:before, .store-slider .slick-next:before {
    color: var(--navy);
    opacity: 1;
    font-size: 18px;
}
.store-slider .slick-disabled { opacity: .3; }

/* Boton "agregar al carrito" COMPACTO -- icono circular sobre la imagen, nada de boton
   enorme de ancho completo (asi se ve profesional en tarjetas chicas y en el grid). */
.e-box-product__add {
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    font-size: 15px;
    box-shadow: 0 4px 10px rgba(22, 35, 75,.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: transform .15s ease, background .15s ease;
}
.e-box-product__add:hover { background: var(--darknavy); transform: scale(1.08); }

/* Tarjeta cuadrada compacta (slider "Recien agregados"): imagen grande, nombre y precio
   debajo, boton de agregar chico sobre la imagen -- sin texto largo, sin boton gigante. */
.store-tile {
    display: block;
    color: var(--brown);
}
.store-tile__img {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    background: #f7f7f7;
    border: 1px solid #eee;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 10px;
}
.store-tile__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .25s ease;
}
.store-tile:hover .store-tile__img img { transform: scale(1.06); }
.store-tile__add {
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    font-size: 14px;
    box-shadow: 0 4px 10px rgba(22, 35, 75,.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: transform .15s ease, background .15s ease;
}
.store-tile__add:hover { background: var(--darknavy); transform: scale(1.08); }
.store-tile__name {
    display: block;
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--brown);
    line-height: 1.3;
    margin-bottom: 4px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.store-tile__price {
    display: block;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--navy);
}
.store-tile__old {
    text-decoration: line-through;
    color: var(--sgray);
    font-weight: 600;
    font-size: 0.78rem;
    margin-right: 4px;
}

/* ===================== LICENCIAS — "Registra tu empresa" (otros ISP rentando WIFICOR) ===================== */
.license-plan-card {
    display: block;
    height: 100%;
    background: #fff;
    border: 2px solid #ececec;
    border-radius: 15px;
    padding: 20px 18px;
    cursor: pointer;
    text-align: center;
    transition: border-color .15s ease, box-shadow .15s ease;
    margin-bottom: 0;
}
.license-plan-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.license-plan-card:hover {
    border-color: var(--navy);
}
.license-plan-card.is-selected,
.license-plan-card:has(input:checked) {
    border-color: var(--navy);
    box-shadow: 0 10px 24px rgba(22,35,75,.25);
    background: var(--navy);
}
.license-plan-card__name {
    display: block;
    font-weight: 800;
    font-size: 1rem;
    color: var(--brown);
    text-transform: uppercase;
    margin-bottom: 6px;
}
.license-plan-card.is-selected .license-plan-card__name,
.license-plan-card:has(input:checked) .license-plan-card__name {
    color: #fff;
}
.license-plan-card__price {
    display: block;
    font-weight: 800;
    font-size: 1.3rem;
    color: var(--navy);
    margin-bottom: 12px;
}
.license-plan-card.is-selected .license-plan-card__price,
.license-plan-card:has(input:checked) .license-plan-card__price {
    color: var(--teal);
}
.license-plan-card__price small {
    display: block;
    font-weight: 500;
    font-size: 0.7rem;
    color: var(--gray);
    text-transform: none;
}
.license-plan-card.is-selected .license-plan-card__price small,
.license-plan-card:has(input:checked) .license-plan-card__price small {
    color: rgba(255,255,255,.7);
}
.license-plan-card__limits {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
}
.license-plan-card__limits li {
    font-size: 0.8rem;
    color: var(--gray);
    padding: 4px 0;
}
.license-plan-card.is-selected .license-plan-card__limits li,
.license-plan-card:has(input:checked) .license-plan-card__limits li {
    color: rgba(255,255,255,.85);
}
.license-plan-card.is-selected .license-plan-card__limits i,
.license-plan-card:has(input:checked) .license-plan-card__limits i {
    color: var(--teal);
}
.license-plan-card__limits i {
    color: var(--teal);
    width: 16px;
}
.isp-cta-box {
    background: linear-gradient(120deg, var(--navy) 0%, var(--darknavy) 100%);
    border-radius: 16px;
    padding: 32px 36px;
}
.isp-cta-box__title {
    color: #fff;
    font-weight: 800;
    font-size: 1.4rem;
    margin-bottom: 6px;
}
.isp-cta-box__text {
    color: rgba(255,255,255,.85);
    font-size: 0.9rem;
}
.isp-cta-box .btn-navy {
    background-color: var(--teal);
    border-color: var(--teal);
}
.isp-cta-box .btn-navy:hover {
    background-color: var(--darkteal);
    border-color: var(--darkteal);
}

/* ===================== LICENCIAS — Landing "Sistema ISP" ===================== */
.license-hero {
    background: linear-gradient(120deg, var(--navy) 0%, var(--darknavy) 100%);
    background-image:
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 10px, transparent 11px),
        radial-gradient(circle at 85% 75%, rgba(255,255,255,.05) 0, rgba(255,255,255,.05) 16px, transparent 17px),
        linear-gradient(120deg, var(--navy) 0%, var(--darknavy) 100%);
    padding: 70px 0;
    position: relative;
    overflow: hidden;
}
.license-hero--photo {
    background-image: none;
    background-color: var(--darknavy);
    min-height: 280px;
    display: flex;
    align-items: center;
}
.license-hero-slider,
.license-hero-slider .slick-list,
.license-hero-slider .slick-track {
    height: 100%;
}
.license-hero-slider {
    position: absolute;
    inset: 0;
}
.license-hero-slider .slick-track { display: flex; }
.license-hero-slider .slick-slide { height: auto; }
.license-hero-slide {
    height: 100%;
    min-height: 280px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.license-hero-slider .slick-dots {
    position: absolute;
    bottom: 16px;
    left: 0;
    right: 0;
    z-index: 3;
    display: flex !important;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.license-hero-slider .slick-dots li { width: 8px; height: 8px; }
.license-hero-slider .slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    text-indent: -9999px;
    cursor: pointer;
}
.license-hero-slider .slick-dots li.slick-active button { background: #fff; }
.license-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(100deg, rgba(15,26,56,.88) 0%, rgba(15,26,56,.6) 50%, rgba(15,26,56,.25) 100%);
    pointer-events: none;
}
.license-hero--photo .container {
    position: relative;
    z-index: 2;
}
.license-hero__badge {
    display: inline-block;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    padding: 7px 16px;
    border-radius: 999px;
    margin-bottom: 18px;
}
.license-hero__content h1,
.license-hero__content h2,
.license-hero__content h3 {
    color: #fff !important;
    font-size: 2.2rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    margin-bottom: 16px !important;
}
.license-hero__content p {
    color: rgba(255,255,255,.85) !important;
    font-size: 1rem !important;
    margin-bottom: 26px !important;
    max-width: 560px;
}
.license-hero__cta {
    background-color: var(--teal);
    border-color: var(--teal);
}
.license-hero__cta:hover {
    background-color: var(--darkteal);
    border-color: var(--darkteal);
    color: #fff;
}
.license-hero__icon {
    font-size: 12rem;
    color: rgba(255,255,255,.14);
}
.license-feature-icon {
    width: 64px;
    height: 64px;
    line-height: 64px;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    font-size: 1.6rem;
    margin: 0 auto 12px;
    box-shadow: 0 6px 16px rgba(22,35,75,.2);
}
@media (max-width: 767px) {
    .license-hero {
        padding: 50px 0;
        text-align: center;
    }
    .license-hero__content h1,
    .license-hero__content h2,
    .license-hero__content h3 {
        font-size: 1.6rem !important;
    }
    .license-hero__content p {
        max-width: none;
    }
}

/* ===================== HERO GENÉRICO — páginas de contenido (Nosotros, Contacto, Blog,
   FAQ, Términos). Reemplaza el viejo ".bg-cover" repetido en cada vista; misma identidad
   navy+teal del resto del sitio, foto real si el admin sube portada en Sitio web > Páginas. */
.page-hero {
    background: linear-gradient(120deg, var(--navy) 0%, var(--darknavy) 100%);
    background-image:
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 10px, transparent 11px),
        radial-gradient(circle at 85% 75%, rgba(255,255,255,.05) 0, rgba(255,255,255,.05) 16px, transparent 17px),
        linear-gradient(120deg, var(--navy) 0%, var(--darknavy) 100%);
    padding: 70px 0;
    min-height: 430px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}
.page-hero--photo {
    background-image: none;
    background-color: var(--darknavy);
}
.page-hero-slider,
.page-hero-slider .slick-list,
.page-hero-slider .slick-track {
    height: 100%;
}
.page-hero-slider {
    position: absolute;
    inset: 0;
}
.page-hero-slider .slick-track {
    display: flex;
}
.page-hero-slider .slick-slide {
    height: auto;
}
.page-hero-slide {
    height: 100%;
    min-height: 430px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.page-hero-slider .slick-dots {
    position: absolute;
    bottom: 14px;
    left: 0;
    right: 0;
    z-index: 3;
    display: flex !important;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.page-hero-slider .slick-dots li { width: 8px; height: 8px; }
.page-hero-slider .slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    text-indent: -9999px;
    cursor: pointer;
}
.page-hero-slider .slick-dots li.slick-active button { background: #fff; }
.page-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(100deg, rgba(15,26,56,.85) 0%, rgba(15,26,56,.55) 55%, rgba(15,26,56,.25) 100%);
    pointer-events: none;
}
.page-hero--photo .container {
    position: relative;
    z-index: 2;
}
.page-hero__content h1,
.page-hero__content h2,
.page-hero__content h3,
.page-hero__content h4 {
    color: #fff !important;
    font-weight: 800 !important;
    font-size: 2.2rem !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    margin-bottom: 16px !important;
}
.page-hero__content h1 span,
.page-hero__content h2 span,
.page-hero__content h3 span,
.page-hero__content h4 span {
    color: inherit !important;
    font-weight: inherit !important;
    font-size: inherit !important;
}
.page-hero__content p {
    color: rgba(255,255,255,.85) !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    text-transform: none !important;
    margin-bottom: 0 !important;
}
.page-hero__cta {
    display: inline-block;
    margin-top: 20px;
    background-color: var(--teal);
    border-color: var(--teal);
    color: #fff;
}
.page-hero__cta:hover {
    background-color: var(--darkteal);
    border-color: var(--darkteal);
    color: #fff;
}
@media (max-width: 767px) {
    .page-hero {
        padding: 40px 0;
        min-height: 300px;
        text-align: center;
    }
    .page-hero__content h1,
    .page-hero__content h2,
    .page-hero__content h3,
    .page-hero__content h4 {
        font-size: 1.6rem !important;
    }
    .page-hero-slide {
        min-height: 300px;
    }
}
