/* Estilos de página */
html, body {
    overflow-x: hidden !important;
    margin: 0;
    padding: 0;
    font-family: MontserratAlternates, sans-serif;
    background: linear-gradient(to bottom, #ffffff, #c1d8e7);
    background-attachment: fixed; /* Esto fija el fondo */
    --sb-track-color: hsl(0, 0%, 92%);
    --sb-thumb-color: #1B4B70;
    --sb-size: 15px;

    scrollbar-color: var(--sb-thumb-color) 
                    var(--sb-track-color);
}

body::-webkit-scrollbar {
    width: var(--sb-size) 
}

body::-webkit-scrollbar-track {
    background: var(--sb-track-color);
    border-radius: 5px;
}

body::-webkit-scrollbar-thumb {
    background: var(--sb-thumb-color);
    border-radius: 5px;
    }

/* STAR Menu Plop */
#menu {
    background: #1B4B70;
    height: 45px;
    display: none; /* Oculto por defecto */
    position: fixed; /* Fijar el menú en la parte superior */
    top: 0;
    width: 100vw;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sombra gris en la parte inferior */
}
#menu ul, #menu li {
    margin: 0;
    padding: 0;
    list-style: none;
}
#menu ul {
    width: 100%;
    text-align: center;
}
#menu li {
    display: inline-block;
    position: relative;
}
#menu a {
    display: block;
    line-height: 45px;
    padding: 0 14px;
    text-decoration: none;
    color: #FFFFFF;
    font-size: 17px;
}
#menu a.dropdown-arrow:after {
    content: "\25BE";
    margin-left: 5px;
}
#menu li a:hover:not(:has(> img)) {
    color: #ee7b07;
    background: #F2F2F2;
    border: 1px solid orange;
}
#menu input {
    display: none;
    margin: 0;
    padding: 0;
    height: 45px;
    width: 100%;
    opacity: 0;
    cursor: pointer;
}
#menu label {
    display: none;
    line-height: 45px;
    text-align: center;
    position: absolute;
    left: 35px;
}
#menu label:before {
    font-size: 55px;
    color: #FFFFFF;
    content: "\2261"; 
    margin-left: 35px;
}
#menu ul.sub-menus {
    height: auto;
    overflow: hidden;
    width: 170px;
    background: #1B4B70;
    position: absolute;
    z-index: 99;
    display: none;
}
#menu ul.sub-menus li {
    display: block;
    text-align: left;
    width: 100%;
}
#menu ul.sub-menus a {
    color: #FFFFFF;
    font-size: 16px;
}
#menu li:hover ul.sub-menus {
    display: block;
}
#menu ul.sub-menus a:hover {
    background: #F2F2F2;
    color: #444444;
}
@media screen and (max-width: 800px) {
    #menu {
        height: 50px; /* Ajuste de altura para el menú */
    }
    #menu a {
        font-size: 19px; /* Tamaño de fuente para enlaces del menú en vista móvil */
        line-height: 50px; /* Ajuste de línea para enlaces del menú */
    }
    #menu ul.sub-menus a {
        font-size: 19px; /* Tamaño de fuente para enlaces de submenús en vista móvil */
        line-height: 50px; /* Ajuste de línea para enlaces de submenús */
    }
    #menu ul {
        background: #444444;
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        z-index: 3;
        height: auto;
        display: none;
        text-align: left;
    }
    #menu ul.sub-menus {
        width: 100%;
        position: static;
    }
    #menu ul.sub-menus a {
        padding-left: 30px;
        line-height: 50px; /* Ajuste la altura de línea para submenús */
    }
    #menu li {
        display: block;
        float: none;
        width: auto;
    }
    #menu input, #menu label {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
    }
    #menu input {
        z-index: 4;
    }
    #menu input:checked + label {
        color: #FFFFFF;
    }
    #menu input:checked + label:before {
        content: "\00d7 ";
    }
    #menu input:checked + label span {
        font-size: 20px;
        color: rgb(255, 234, 0);
    }
    #menu input:checked ~ ul {
        display: block;
    }
    #menu a {
        line-height: 50px; /* Ajuste la altura de línea para los enlaces */
    }
}
#menu img {
    vertical-align: middle;
    margin-right: 8px;
    transform: scale(0.4); /* Inicialmente escala a 0.4 */
    transition: transform 1.5s; /* Duración de la transición 1.5 segundos */
}
#menu img.visible {
    transform: scale(1); /* Escala a tamaño completo */
}
/* END Menu Plop */ 
        
/* Estilos de logo esquina sup izq */
        .logo-container {
            position: absolute;
            top: 10px;
            left: 20px;
            z-index: 2;
            width: auto;
            height: auto;
        }  
        
/* Estilos de contenedor general */
        .contenedor-general {
            max-width: calc(100% - 20px);
            margin-right: 10px;
            margin-left: 10px;
            margin: 0 auto;
            display: block;
            justify-content: space-between;
            flex-wrap: wrap;
            background-color: transparent;
        }

        @media (min-width: 1500px) {
            .contenedor-general {
                max-width: calc(100% - 80px);
                margin-right: 40px;
                margin-left: 40px;
                padding: 20px;
            }
        }          
        
/* Estilos de contenedor general 2 */
        .contenedor-general2 {
            max-width: calc(100% - 20px);
            margin-right: 10px;
            margin-left: 10px;
            margin: 0 auto;
            display: block;
            justify-content: space-between;
            flex-wrap: wrap;
            background: linear-gradient(to top, #F4913E 20%, transparent 60%);
            border: 0px solid #F09222;
            border-radius: 7px;
            padding: 4px;
        }

        @media (min-width: 1500px) {
            .contenedor-general2 {
                max-width: calc(100% - 80px);
                margin-right: 40px;
                margin-left: 40px;
                padding: 20px;
            }
        }          
        
/* Estilos de contenedor general 3 */
        .contenedor-general3 {
            max-width: calc(100% - 20px);
            margin-right: 10px;
            margin-left: 10px;
            margin: 0 auto;
            display: block;
            justify-content: space-between;
            flex-wrap: wrap;
            background: linear-gradient(to top, #F4913E 20%, transparent 60%);
            border: 0px solid #F09222;
            border-radius: 7px;
        }

        @media (min-width: 1500px) {
            .contenedor-general3 {
                max-width: calc(100% - 80px);
                margin-right: 40px;
                margin-left: 40px;
                padding: 20px;
            }
        }

/*Contenedor del aviso de precios*/
.aviso-precios{
    background-color: #000;
    color: white;
    border-radius: 10px;
    padding: 6px;
}

/*Contenedor del aviso de precios*/
.compra-online{
    background-color: #069409;
    color: white;
    border-radius: 10px;
    padding: 5px;
    width: 250px;
}

/*Contenedor del aviso de precios*/
.cotizacion-online{
    background-color: transparent;
    border: 1px solid #03540e;
    color: white;
    border-radius: 10px;
    padding: 5px;
    width: 450px;
}
@media (max-width: 800px) {
    .cotizacion-online{
        width: 250px;
    }
}


/* grid para div de cotizacion por wp*/        
.container-budget {
    display: flex;
    flex-direction: column; /* Asegura que los elementos se apilen verticalmente */
    justify-content: center; /* Centra verticalmente el contenido */
    align-items: center; /* Centra horizontalmente el contenido */
    flex-wrap: wrap;
    margin: 15px 5px;
    padding: 6px;
    border: 2px solid #1B4B70;
    background-color: transparent;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.374);
    text-align: center;
    min-height: 500px;
}

/* Estilos para pantallas de 840px o menos */
@media (max-width: 840px) {
    .container-budget {
        border: none;
        box-shadow: none;
    }
}



/* grid contenedor en dos partes*/        
.container-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0 15px;
    border: 1px solid #f5c79b43;
    border-radius: 8px;
    align-items: center; /* Pegar contenido hacia arriba */
    justify-content: center;  /* Centrar horizontalmente */
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.374);
}
.col1, .col2, .col3 {
    box-sizing: border-box;
    padding: 10px;
}
.col1 {
    background-color: transparent;
    flex: 0 0 35%;
    padding: 0%;
}
.col2 {
    background-color: transparent;
    flex: 0 0 65%;
    border: 0px solid transparent;
    border-radius: 0px;
}
.col3 {
    background-color: transparent;
    flex: 0 0 100%;
}
@media (min-width: 1550px) {
    .container-grid {
        margin: 0 30px;
    }
}
@media (max-width: 884px) {
    .col1, .col2, .col3 {
        flex: 0 0 100%;
    }
}

.grid-container {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.grid-item {
    flex: 1 0 33.33%; /* Cada item ocupa 1/3 del ancho del contenedor */
    box-sizing: border-box;
    border: 0px solid #ccc;
    padding: 10px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center; /* Alinea el contenido verticalmente */
    flex-direction: column;
}
.full-width {
    flex: 1 0 100%; /* Estos items ocupan todo el ancho */
}
.full-width {
    flex: 1 0 100%; /* Estos items ocupan todo el ancho */
}


/* grid 2 columnas 1 fila contenido a la mitad */
.gridsito {
    display: grid;
    grid-template-columns: 30% 70%;
    gap: 1px;
    margin: 0%;
    padding: 0%;
}

@media (max-width: 800px) {
    .gridsito {
        grid-template-columns: 1fr;
    }
}

.gridsito-item {
    background-color: transparent;
    padding: 20px;
    text-align: center;
    border: 0px solid #ccc;
}


/* STAR 14 zoom detalles */
.imagen-zoom {
    width: 65px;
    height: 65px;
    transition: width 0.3s ease, height 0.3s ease;
}
.imagen-zoom:hover {
    width: 300px;
    height: 300px;
}
  /* END 14 sombra de imagen tamaño y movimiento */

/* STAR grid de 1c 2f */
.columna-de-2f {
    display: grid;
    grid-template-rows: auto auto;
    width: 100%;
}
.celda {
    display: flex;
    align-items: flex-start; /* Pegar contenido hacia arriba */
    justify-content: center;  /* Centrar horizontalmente */
    width: 100%;
}
.celda-1 {
    background-color: transparent;
}
.celda-2 {
    background-color: transparent;
    gap: 6px;
}
/* END grid de 1c 2f */

/* STAR Estilos generales para el grid de productos */       
.container-products {
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center; /* Pegar contenido hacia arriba */
    justify-content: center;  /* Centrar horizontalmente */
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.374);
    max-width: calc(100% - 40px);
    margin-right: 20px;
    margin-left: 20px;
}

/* Estilos para pantallas de 840px o menos */
@media (max-width: 840px) {
    .container-products {
        box-shadow: none;
    }
}

.grid-container-products {
    display: grid;
    grid-template-areas:
        "zona1 zona1 zona1"
        "zona2 zona3 zona3"
        "zona4 zona5 zona5"
        "zona6 zona7 zona7"
        "zona8 zona8 zona8";
    grid-template-columns: 30% 70%;
    grid-template-rows: auto;
    gap: 1px;
    width: 100%; 
}

.zona {
    border: 0px solid black;
    text-align: center;
    padding: 5px;
}

.zona1 { grid-area: zona1; }
.zona2 { grid-area: zona2; background-color: transparent; }
.zona3 { grid-area: zona3; background-color: transparent; }
.zona4 { grid-area: zona4; background-color: transparent; }
.zona5 { grid-area: zona5; background-color: transparent; }
.zona6 { grid-area: zona6; background-color: transparent; }
.zona7 { grid-area: zona7; background-color: transparent; }
.zona8 { grid-area: zona8; background-color: #1B4B70; }

.zona8 {
    grid-area: zona8;
    border-radius: 0 0 8px 8px; 
}


@media (max-width: 840px) {
    .grid-container-products {
        grid-template-areas:
            "zona1"
            "zona2"
            "zona4"
            "zona6"
            "zona3"
            "zona5"
            "zona7"
            "zona8";
        grid-template-columns: 1fr;
    }

    .container-products {
        max-width: calc(100% - 4px);
        margin-right: 2px;
        margin-left: 2px;
    }
}
/* END Estilos generales para el grid de productos */ 


/* 👇 STAR grid especificaciones-tecnicas */ 
    .especificaciones-tecnicas {
        display: grid;
        grid-template-columns: 1fr 1fr; /* Dos columnas de igual tamaño */
        grid-template-rows: repeat(4, auto); /* Cuatro filas */
        gap: 0; /* Sin espacio entre celdas */
    }

    .especificaciones-tecnicas div {
        border: 1px solid #b7ccda; /* Borde de 1px para cada celda */
        padding: 10px;
    }

    .columna1a {
        background-color: #c1d8e7;
        text-align: left;
    }

    .columna2a {
        background-color: #f5f5f5;
        text-align: left;
    }
/* 👆 END grid especificaciones-tecnicas */ 


/* 👇 STAR grid 1 fila 2 columnas de catacteristicas y presupuesto */ 
    .caracteristicas-presupuesto {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-columns: 20% 80%;
        height: 100%;
        width: 100%;
    }

    /* Estilos para cada columna */
    .columna1 {
        background-color: transparent;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .columna2 {
        background-color: transparent;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Ajuste para pantallas menores de 840px */
    @media (max-width: 840px) {
        .caracteristicas-presupuesto {
            grid-template-columns: 1fr;
        }
    }
/* 👆 END grid 1 fila 2 columnas de catacteristicas y presupuesto */ 

/* STAR Estilos para el grid de detalles */ 
.wrapper {
    display: flex;
    justify-content: center; /* Centra horizontalmente el contenedor de la cuadrícula */
}

.grid-container-details {
    display: inline-grid; /* Ajusta el contenedor al tamaño del contenido */
    grid-template-columns: repeat(auto-fit, minmax(min-content, auto)); /* Ajustar columnas al contenido */
    grid-template-rows: auto; /* Ajuste automático de la altura de las filas */
    gap: 5px; /* Espacio entre los elementos */
    padding: 1px;
    grid-template-areas:
        "item1 item1 item1 item1 item1 item1"
        "item2 item3 item4 item5 item6 item7"
        "item8 item8 item8 item8 item8 item8";
}

.item {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    height: auto; /* Ajustar la altura al contenido */
    padding: 10px; /* Padding para mejorar el aspecto */
    text-align: center;
    box-sizing: border-box; /* Incluir el padding en el cálculo del ancho */
}

.item-1 { background-color: transparent; grid-area: item1; }
.item-2 { background-color: transparent; grid-area: item2; }
.item-3 { background-color: transparent; grid-area: item3; }
.item-4 { background-color: transparent; grid-area: item4; }
.item-5 { background-color: transparent; grid-area: item5; }
.item-6 { background-color: transparent; grid-area: item6; }
.item-7 { background-color: transparent; grid-area: item7; }
.item-8 { background-color: transparent; grid-area: item8; }

@media (max-width: 840px) {
    .grid-container-details {
        grid-template-columns: repeat(auto-fit, minmax(min-content, auto)); /* Ajustar columnas al contenido */
        grid-template-rows: auto; /* Ajuste automático de la altura de las filas */
        grid-template-areas:
            "item1 item1"
            "item2 item3"
            "item4 item5"
            "item6 item7"
            "item8 item8";
    }
}
/* STAR Estilos para el grid de detalles */ 


/* STAR boton Precio con ventana emergente */
.tooltip {
    position: relative;
    display: inline-block;
    cursor: pointer;
  }
  
  .tooltip button {
    background-color: #db3434;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.2s ease-out;
  }
  
  .tooltip button:hover {
    background-color: #b92929;
    transform: scale(1.05);
  }
  
  /* Modal */
  .modal {
    display: none;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.890);
    overflow: auto;
    padding: 15px;
    box-sizing: border-box;
  }
  
  .modal-content {
    background-color: #f3f0e9;
    border-radius: 5px;
    padding: 10px;
    position: relative;
    margin: auto;
    max-width: 75%;
  }
  
  @media (max-width: 824px) {
    .modal-content {
      max-width: 100%;
      padding: 5px;
    }
  }
  
  
  .close {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #db3434;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
  }
  
  .close:hover {
    color: #b92929;
  }
  
  /* Estilos para la tooltip text */
  .tooltiptext {
    visibility: hidden;
    width: 200px;
    background-color: #020100;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
  }
  
  .tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
  }
  
  .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #020100 transparent transparent transparent;
  }

/* Avisito ventanita*/  
.containerinfo {
    position: relative;
    display: flex;
    margin-bottom: 1rem; /* Añadido para espaciar los botones */
}

button.masinfo {
    width: 9rem; /* 80% de 10rem */
    height: auto;
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-size: inherit;
    font-family: inherit;
    z-index: 2; /* Añadido para asegurar que el botón esté sobre el infoBox */
}

button.masinfo .circle {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 2.4rem; /* 80% de 3rem */
    height: 2.4rem; /* 80% de 3rem */
    background: #282936;
    border-radius: 1.3rem; /* Ajustado proporcionalmente */
}

button.masinfo .circle .icon {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #fff;
}

button.masinfo .circle .icon.arrow {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    left: 0.5rem; /* Ajustado proporcionalmente */
    width: 0.9rem; /* 80% de 1.125rem */
    height: 0.1rem; /* Ajustado proporcionalmente */
    background: none;
}

button.masinfo .circle .icon.arrow::before {
    position: absolute;
    content: "";
    top: -0.23rem; /* Ajustado proporcionalmente */
    right: 0.05rem; /* Ajustado proporcionalmente */
    width: 0.5rem; /* 80% de 0.625rem */
    height: 0.5rem; /* 80% de 0.625rem */
    border-top: 0.1rem solid #fff; /* Ajustado proporcionalmente */
    border-right: 0.1rem solid #fff; /* Ajustado proporcionalmente */
    transform: rotate(45deg);
}

button.masinfo .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0.6rem 0; /* Ajustado proporcionalmente */
    margin: 0 0 0 2.63rem; /* Ajustado proporcionalmente */
    color: #282936;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    text-transform: uppercase;
    z-index: 2; /* Añadido para asegurar que el texto esté sobre el infoBox */
}

button.masinfo:hover .circle {
    width: 100%;
}

button.masinfo:hover .circle .icon.arrow {
    background: #fff;
    transform: translate(0.8rem, 0); /* Ajustado proporcionalmente */
}

button.masinfo:hover .button-text {
    color: #fff;
}

.info-box {
    width: 350px;
    height: 350px;
    background-color: #f0f0f0;
    border: 1px solid #000000;
    box-shadow: 5px 5px 5px #090909d2;
    border-radius: 10px;
    position: absolute;
    margin-left: -430px;
    left: calc(50% + 10px); /* Alinea el lado izquierdo a 10px del botón */
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    visibility: hidden;
    opacity: 0;
    z-index: 10; /* Añadido para asegurar que el infoBox esté detrás del botón */
}

.info-box-content {
    padding: 20px;
}

/* STAR boton cotizacion */
button.cotizacion {
    background-color: transparent;
    border: 3px solid #03540e;
    color: #03540e;
    width: 320px;
    cursor: pointer;
}
button.cotizacion:hover{
    background-color: #069409;
    border: none;
    color: #fff;
    box-shadow: 5px 5px 5px #090909d2;
}

/* END boton cotizacion */

/* Estilos de contenedor footer */
        .contenedor-footer {
            max-width: 1100px;
            margin: 0 auto;
            display: block;
            justify-content: space-between;
            flex-wrap: wrap;
            background-color: #1B4B70;

        }   

        .footer-izq {
            display: block;
            flex-wrap: wrap;
            max-width: 100%;
            text-align: left;
            margin: 15px;
            line-height: 2;
        	}                      
        
/* Espacio en blanco */      
        .espacio-en-blanco {
            height: 80px;
            margin-top: 0;
        }
		@media screen and (max-width: 900px) {
    		.espacio-en-blanco {
        	height: 70px; /* Cambiar altura a 150px en pantallas de 900px o menos */
    	}
		}  
        
/* Espacio en blanco GRANDE*/      
        .espacio-en-blanco-grande {
            height: 150px;
            margin-top: 0;
        }       
        
/* Estilos de tipografia de textos */
        @font-face {
            font-family: 'MontserratAlternates';
            font-style: normal;
            font-weight: 600;
            src: url('https://ventadeportapendones.com/ttf/MontserratAlternates-Regular.woff2') format('woff2'),
                 url('https://ventadeportapendones.com/ttf/MontserratAlternates-Regular.woff') format('woff');
            font-display: swap;
        }

 /* 👁‍🗨 Star Sprites Generales */
 .spritesheet-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 0px;
}

.spritew {
    background-image: url('/imagenes/sprites-general.webp');
    background-repeat: no-repeat;
    background-size: 1500px 2250px;
    will-change: background-position;
    transition: background-position 0.2s ease-in-out, transform 0.2s ease-in-out;
    margin: 0 auto;
}

.spritew-1, .spritew-2, .spritew-3, .spritew-4, .spritew-5, .spritew-6, .spritew-7,.spritew-8, .spritew-9, .spritew-10, .spritew-11, .spritew-12, 
.spritew-13, .spritew-14, .spritew-15, .spritew-16, .spritew-17, .spritew-18, .spritew-19, .spritew-20, .spritew-21, .spritew-22, .spritew-23, 
.spritew-24, .spritew-25, .spritew-26, .spritew-27, .spritew-28, .spritew-29, .spritew-30, .spritew-31, .spritew-32, .spritew-33, .spritew-34, 
.spritew-35, .spritew-36, .spritew-37, .spritew-38, .spritew-39, .spritew-40, .spritew-41, .spritew-42, .spritew-43, .spritew-44, .spritew-45, 
.spritew-46, .spritew-47, .spritew-48, .spritew-49, .spritew-50, .spritew-51, .spritew-52, .spritew-53, .spritew-54, .spritew-55 {

    width: 250px;
    height: 250px;
}

.spritew-1 { background-position: 0 0; }
.spritew-2 { background-position: -250px 0; }
.spritew-3 { background-position: -500px 0; }
.spritew-4 { background-position: -750px 0; }
.spritew-5 { background-position: -1000px 0; }
.spritew-6 { background-position: -1250px 0; }

.spritew-7 { background-position: 0 -250px; }
.spritew-8 { background-position: -250px -250px; }
.spritew-9 { background-position: -500px -250px; }
.spritew-10 { background-position: -750px -250px; }
.spritew-11 { background-position: -1000px -250px; }
.spritew-12 { background-position: -1250px -250px; }

.spritew-13 { background-position: 0 -500px; }
.spritew-14 { background-position: -250px -500px; }
.spritew-15 { background-position: -500px -500px; }
.spritew-16 { background-position: -750px -500px; }
.spritew-17 { background-position: -1000px -500px; }
.spritew-18 { background-position: -1250px -500px; }

.spritew-19 { background-position: 0 -750px; }
.spritew-20 { background-position: -250px -750px; }
.spritew-21 { background-position: -500px -750px; }
.spritew-22 { background-position: -750px -750px; }
.spritew-23 { background-position: -1000px -750px; }
.spritew-24 { background-position: -1250px -750px; }

.spritew-25 { background-position: 0 -1000px; }
.spritew-26 { background-position: -250px -1000px; }
.spritew-27 { background-position: -500px -1000px; }
.spritew-28 { background-position: -750px -1000px; }
.spritew-29 { background-position: -1000px -1000px; }
.spritew-30 { background-position: -1250px -1000px; }

.spritew-31 { background-position: 0 -1250px; }
.spritew-32 { background-position: -250px -1250px; }
.spritew-33 { background-position: -500px -1250px; }
.spritew-34 { background-position: -750px -1250px; }
.spritew-35 { background-position: -1000px -1250px; }
.spritew-36 { background-position: -1250px -1250px; }

.spritew-37 { background-position: 0 -1500px; }
.spritew-38 { background-position: -250px -1500px; }
.spritew-39 { background-position: -500px -1500px; }
.spritew-40 { background-position: -750px -1500px; }
.spritew-41 { background-position: -1000px -1500px; }
.spritew-42 { background-position: -1250px -1500px; }

.spritew-43 { background-position: 0 -1750px; }
.spritew-44 { background-position: -250px -1750px; }
.spritew-45 { background-position: -500px -1750px; }
.spritew-46 { background-position: -750px -1750px; }
.spritew-47 { background-position: -1000px -1750px; }
.spritew-48 { background-position: -1250px -1750px; }

.spritew-49 { background-position: 0 -2000px; }
.spritew-50 { background-position: -250px -2000px; }
.spritew-51 { background-position: -500px -2000px; }
.spritew-52 { background-position: -750px -2000px; }
.spritew-53 { background-position: -1000px -2000px; }
.spritew-54 { background-position: -1250px -2000px; }
.spritew-55 { background-position: 0 -2250px; }

@media screen and (max-width: 900px) {
    .spritew {
        background-size: 900px 1350px;
    }

    .spritew-1, .spritew-2, .spritew-3, .spritew-4, .spritew-5, .spritew-6, .spritew-7,.spritew-8, .spritew-9, .spritew-10, .spritew-11, .spritew-12, 
    .spritew-13, .spritew-14, .spritew-15, .spritew-16, .spritew-17, .spritew-18, .spritew-19, .spritew-20, .spritew-21, .spritew-22, .spritew-23, 
    .spritew-24, .spritew-25, .spritew-26, .spritew-27, .spritew-28, .spritew-29, .spritew-30, .spritew-31, .spritew-32, .spritew-33, .spritew-34, 
    .spritew-35, .spritew-36, .spritew-37, .spritew-38, .spritew-39, .spritew-40, .spritew-41, .spritew-42, .spritew-43, .spritew-44, .spritew-45, 
    .spritew-46, .spritew-47, .spritew-48, .spritew-49, .spritew-50, .spritew-51, .spritew-52, .spritew-53, .spritew-54, .spritew-55 {
        width: 150px;
        height: 150px;
    }

    .spritew-1 { background-position: 0 0; }
    .spritew-2 { background-position: -150px 0; }
    .spritew-3 { background-position: -300px 0; }
    .spritew-4 { background-position: -450px 0; }
    .spritew-5 { background-position: -600px 0; }
    .spritew-6 { background-position: -750px 0; }

    .spritew-7 { background-position: 0 -150px; }
    .spritew-8 { background-position: -150px -150px; }
    .spritew-9 { background-position: -300px -150px; }
    .spritew-10 { background-position: -450px -150px; }
    .spritew-11 { background-position: -600px -150px; }
    .spritew-12 { background-position: -750px -150px; }

    .spritew-13 { background-position: 0 -300px; }
    .spritew-14 { background-position: -150px -300px; }
    .spritew-15 { background-position: -300px -300px; }
    .spritew-16 { background-position: -450px -300px; }
    .spritew-17 { background-position: -600px -300px; }
    .spritew-18 { background-position: -750px -300px; }

    .spritew-19 { background-position: 0 -450px; }
    .spritew-20 { background-position: -150px -450px; }
    .spritew-21 { background-position: -300px -450px; }
    .spritew-22 { background-position: -450px -450px; }
    .spritew-23 { background-position: -600px -450px; }
    .spritew-24 { background-position: -750px -450px; }

    .spritew-25 { background-position: 0 -600px; }
    .spritew-26 { background-position: -150px -600px; }
    .spritew-27 { background-position: -300px -600px; }
    .spritew-28 { background-position: -450px -600px; }
    .spritew-29 { background-position: -600px -600px; }
    .spritew-30 { background-position: -750px -600px; }

    .spritew-31 { background-position: 0 -750px; }
    .spritew-32 { background-position: -150px -750px; }
    .spritew-33 { background-position: -300px -750px; }
    .spritew-34 { background-position: -450px -750px; }
    .spritew-35 { background-position: -600px -750px; }
    .spritew-36 { background-position: -750px -750px; }

    .spritew-37 { background-position: 0 -900px; }
    .spritew-38 { background-position: -150px -900px; }
    .spritew-39 { background-position: -300px -900px; }
    .spritew-40 { background-position: -450px -900px; }
    .spritew-41 { background-position: -600px -900px; }
    .spritew-42 { background-position: -750px -900px; }

    .spritew-43 { background-position: 0 -1050px; }
    .spritew-44 { background-position: -150px -1050px; }
    .spritew-45 { background-position: -300px -1050px; }
    .spritew-46 { background-position: -450px -1050px; }
    .spritew-47 { background-position: -600px -1050px; }
    .spritew-48 { background-position: -750px -1050px; }

    .spritew-49 { background-position: 0 -1200px; }
    .spritew-50 { background-position: -150px -1200px; }
    .spritew-51 { background-position: -300px -1200px; }
    .spritew-52 { background-position: -450px -1200px; }
    .spritew-53 { background-position: -600px -1200px; }
    .spritew-54 { background-position: -750px -1200px; }
    .spritew-55 { background-position: 0 -1350px; }
}
 /* 👁‍🗨 END Sprites Generales */
            .sprites-centro {
                display: block;
                flex-wrap: wrap;
                max-width: 100%;
                text-align: center;
                margin: 0 auto;
                margin-bottom: 15px;
                padding: 0px;
                }            
        
/* Estilos de Tipos de Titulos */        
        h1 {
            font-size: 22px;
            color: #000000;
            font-family: 'MontserratAlternates', sans-serif;
            font-weight: 600;
            text-align: center;
            line-height: 1.5;
            background-color: transparent;
            padding: 5px;
        }

        @media (max-width: 900px) {
            h1 {
                font-size: 20px;
            }
        }

        h2 {
            font-size: 20px;
            color: #000000;
            font-family: 'MontserratAlternates', sans-serif;
            font-weight: 400;
            text-align: center;
            line-height: 1.5;
            background-color: transparent;
            padding: 1px;
            margin: 0%;
        }

        	@media (max-width: 900px) {
            h2 {
                font-size: 17px;
            }
        }

        .titles{
            margin: 1px auto;
            padding: 0%;
            text-align: center;
            font-family: 'MontserratAlternates', sans-serif;
            color: #d00707;
            font-size: clamp(17px, 4vw + 1rem, 22px);
        }


        h3 {
            font-size: 18px;
            color: #000000;
            font-family: 'MontserratAlternates', sans-serif;
            font-weight: 300;
            text-align: center;
            line-height: 1.5;
            background-color: transparent;
            padding: 3px;
        }

        	@media (max-width: 900px) {
            h3 {
                font-size: 16px;
            }
        }
        
        h4 {
            font-size: 15px;
            color: black;
            font-family: 'MontserratAlternates', sans-serif;
            font-weight: 300;
            text-align: center;
            line-height: 1.5;
            background-color: transparent;
            margin: 0;
            padding: 0;
        }

        	@media (max-width: 900px) {
            h4 {
                font-size: 15px;
            }
        }
        
        p {
            font-size: 15px;
            color: black;
			margin: 0;
            padding: 2px;
            line-height: 1.5;
        }    
        
        p1 {
            font-size: 15px;
            color: white;
			margin: 0px;
            padding: 10px;
            line-height: 1.5;
        }   
        
        .p1 {
            font-size: 15px;
            color: white;
			margin: 0px;
            padding: 0px;
            line-height: 1.5;
        }         

        
        .p2 {
            font-size: 15px;
            color: black;
            font-family: 'MontserratAlternates', sans-serif;
            font-weight: 300;
            text-align: center;
            line-height: 1.5;
            background-color: transparent;
            margin: 0;
            padding: 0;
        }   
        
        .p3 {
            font-size: 14px;
            color: black;
			margin: 0;
            padding: 0px;
            line-height: 1.5;
        }          
        
        .parrafo-personalizado {
            font-size: 15px;
            color: black;
            text-align: justify;
            background-color: transparent;
            padding: 10px;
            line-height: 1.5;
    	}
    
/* Estilo para el pie de página */
        footer {
            background-color: #1B4B70; 
            color: white; 
            text-align: center; 
            padding: 25px; 
        }       
        
/* Estilo base del botón ir arriba */
        #scrollButton {
            position: fixed;
            bottom: -50px; /* Inicialmente oculto por debajo de la pantalla */
            right: 20px;
            background-color: #A32D00	;
            color: #fff;
            font-size: 16px;
            width: 45px;
            height: 45px;
            padding: 10px 10px;
            border: none;
            border-radius: 50px;
            cursor: pointer;
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3); /* Sombra */
            transition: background-color 0.3s, transform 0.3s;
            z-index: 150;
            }

            /* Estilo del botón al pasar el mouse sobre él */
        #scrollButton:hover {
                background-color: #FFD700;
            }

            /* Estilo del botón cuando se desplaza verticalmente 600px o más */
        #scrollButton.active {
                bottom: 50px; /* Aparece a 20px desde la parte inferior */
            }

            /* Estilo del botón cuando se desplaza verticalmente 700px o más y se pasa el mouse sobre él */
        #scrollButton.active:hover {
                background-color: #0033aa;
            } 
        
/* Estilo del aviso de cookies */
        #cookieNotice {
            display: none; /* Inicialmente oculto */
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            background-color: #9ACD32;
            color: #000;
            padding: 30px;
            text-align: center;
            z-index: 250;
            }

        #cookieNotice a {
                color: #000;
                text-decoration: underline;
                font-size: 20px;
            }
            
/* cambio de divs 1 por otro */
        .cambio-img-divs {
                display: flex;
            }

        .imagen-div {
                width: 250px;
                height: 250px;
                margin: 10px;
                border: 0px solid #ccc;
                cursor: pointer;
            }
            
        @media (max-width: 900px) {
                .imagen-div {
                    width: 150px;
                    height: 150px;
                }
            }            

        .grupo1 #div1 {
                background-color: transparent; /* Color de fondo del primer div del grupo 1 */
            }

        .grupo1 #div2 {
                background-color: transparent; /* Color de fondo del segundo div del grupo 1 */
                display: none; /* Ocultar el segundo div del grupo 1 inicialmente */
            }

        .grupo2 #div1 {
                background-color: transparent; /* Color de fondo del primer div del grupo 2 */
            }

        .grupo2 #div2 {
                background-color: transparent; /* Color de fondo del segundo div del grupo 2 */
                display: none; /* Ocultar el segundo div del grupo 2 inicialmente */
            }
        .grupo3 #div1 {
                background-color: transparent; /* Color de fondo del primer div del grupo 1 */
            }

        .grupo3 #div2 {
                background-color: transparent; /* Color de fondo del segundo div del grupo 1 */
                display: none; /* Ocultar el segundo div del grupo 1 inicialmente */
            }

        .grupo4 #div1 {
                background-color: transparent; /* Color de fondo del primer div del grupo 2 */
            }

        .grupo4 #div2 {
                background-color: transparent; /* Color de fondo del segundo div del grupo 2 */
                display: none; /* Ocultar el segundo div del grupo 2 inicialmente */
            }
            

        .grupo5 #div1 {
                background-color: transparent; /* Color de fondo del primer div del grupo 1 */
            }

        .grupo5 #div2 {
                background-color: transparent; /* Color de fondo del segundo div del grupo 1 */
                display: none; /* Ocultar el segundo div del grupo 1 inicialmente */
            }

        .grupo6 #div1 {
                background-color: transparent;
            }

        .grupo6 #div2 {
                background-color: transparent;
                display: none; 
            } 
            
        .grupo7 #div1 {
                background-color: transparent;
            }

        .grupo7 #div2 {
                background-color: transparent;
                display: none;
            }

        .grupo8 #div1 {
                background-color: transparent;
            }

        .grupo8 #div2 {
                background-color: transparent;
                display: none;
            }

/* STAR Oculta el Contenido */  
        .ocultar1000 {
            @media (max-width: 1050px) {
                display: none; 
            }  
        }  
        .ocultar {
            @media (max-width: 840px) {
                display: none; 
            }  
        }
/* END Ocualta el Contenido */               

/* Botones con Iframe */
        .boton-iframe {
            width: 140px;
            height: 35px;
            background-color: #AD0000;
            border: 1px solid black;
            border-radius: 7px;
            font-size: 15px;
            color: white;
            cursor: pointer;
            transition: background-color 0.3s, box-shadow 0.3s;
        }

        .boton-iframe:hover {
            background-color: black;
            box-shadow: 3px 3px 5px #888888;
        }

        .iframe-container {
            display: none;
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            border: 1px solid #000;
            border-radius: 8px;
            background-color: white;
            box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
            z-index: 280;
        }

        iframe {
            width: 100%;
            height: 100%;
            border: none;
        }

        .cerrar-button {
            position: absolute;
            top: 10px;
            right: 10px;
            width: 40px;
            height: 35px;
            background-color: red;
            color: white;
            font-size: 24px;
            border: none;
            cursor: pointer;
            border-radius: 5px;
        }

        .cerrar-button:hover {
            background-color: darkred;
        }

/* Botones que dirigen a una web */        
        .boton-abrir-web {
            width: 140px;
            height: 30px;
            display: inline-block;
            border: 1px solid #000;
            background-color: #25D366; /* Color del botón */
            color: white;
            text-decoration: none;
            border-radius: 7px;
            font-size: 15px;
            text-align: center;
            line-height: 30px;
        }

        .boton-abrir-web:hover {
            background-color: black; /* Color al pasar el mouse por encima del botón */
        } 
                
/* Estilos para los enlaces vinculos */
a {
    color: #fff; 
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a.black {
    color: #000; 
}

a.black:hover {
    color: #000; 
    text-decoration: underline;
}
  
a.blue {
    color: #2509d7; 
    font-weight: bold;
}

a.blue:hover {
    color: #000; 
    text-decoration: underline;
}

/* Estilos para los mensajes emergentes en textos */
        .popup {
            display: none;
            position: fixed;
            background-color: #f0f0f0;
            border: 1px solid #000;
            border-radius: 7px;
            padding: 5px;
            text-align: center;
            width: 350px;
            height: 350px;
            top: 50%;
            left: 50%;
            transform: translate(-50%);
            z-index: 450;
            }
        
        .popup-trigger {
            padding: 7px;
            cursor: url('https://ventadeportapendones.com/imagenes/lupa.png'), help;
            }

        .popup-trigger:hover {
            text-decoration: underline;
            }

/* Estilos textos en acordeon */
        .accordion {
            cursor: pointer;
            padding: 10px;
            margin: 0%;
            border: 0px solid #ccc;
            border-radius: 8px;
            background-color: transparent;
            transition: background-color 0.3s;
            position: relative;
            z-index: 1;
            
        }

        .accordion:hover {
            background-color: #f4deb8;
        }

        .accordion-content {
            display: none;
            background-color: white;
            border: 0px solid #ccc;
            border-radius: 8px;
            padding: 10px;
        }

        .icon-plus {
            display: none;
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            font-weight: bold;
            color: #AD0000;
        }

        .icon-x {
            display: none;
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            font-weight: bold;
            color: red;
            font-size: 20px;
        }    

 
/* Estilos Imagenes en carousel */
        .carousel-container {
            width: 100%;
            max-width: 100%;
            max-height: 350px;
            background-color: transparent;
            overflow: hidden;
            position: relative;
        }

        .carousel {
            display: flex;
            transition: transform 0.3s ease-in-out;
            width: 100%; /* Para que el carrusel ocupe todo el ancho */
        }

        .slide {
            width: 300px;
            height: 300px;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-shrink: 0; /* Evita que las imágenes se deformen */
            margin-right: 10px; /* Añade espacio de 10px entre divs */
        }

        .slide img {
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
        }

        .prev-button,
        .next-button {
            width: 50px;
            height: 50px;
            border-radius: 50px;
            position: absolute;            
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(0, 0, 0, 0.8);
            color: white;
            border: 1px solid white;
            padding: 5px 10px;
            cursor: pointer;
        }

        .prev-button-left {
            left: 10px;
        }

        .next-button-left { 
            right: 10px;
        }

/* Estilo del botón Grande*/
        .download-button-container {
            text-align: center;
        }

        .download-button {
            width: 260px;
            height: 35px;
            background-color: #A32D00;
            color: #fff;
            text-decoration: none;
            border: 1px solid #000;
            border-radius: 8px;
            transition: background-color 0.3s, box-shadow 0.3s;
            display: inline-block;
            line-height: 35px;
        }

        /* Efecto hover */
        .download-button:hover {
            background-color: #000;
            box-shadow: 8px 8px 10px rgba(0, 0, 0, 0.5);
        }
        
/* Estilo boton json de precios*/
        .precio-btn {
            width: 155px;
            height: 55px;
            background-color: transparent;
            border: 0px solid transparent;
            border-radius: 0px;
            text-align: center;
            line-height: 40px;
            color: #d31212;
            font-size: 17px;
            font-weight: bold;
        }


/* Estilo botones a URL*/
        button {
            width: 135px;
            height: 30px;
            border: 1px solid black;
            background-color: red;
            font-size: 18px;
            color: white;
            border-radius: 9px;
            /*cursor: pointer;*/
            padding: 1px;
            transition: box-shadow 0.3s; /* Agregar transición para la sombra */
          }
      
          button .icon {
            margin-right: 5px;
          }
      
          /*button:hover {
            background-color: black;
            box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); /* Agregar sombra en hover */
          /*}

/* STAR 15 sombra de imagen tamaño y movimiento */
.image-shadowa {
    filter: drop-shadow(0 15px 8px rgba(0, 0, 0, 0.645));
    width: auto;
    height: 600px;
    animation: zoomIn 1.5s ease-in-out;
  }
  
  @media (max-width: 1100px) {
    .image-shadowa {
      height: auto;
      width: 450px;
    }
  }
  
  @media (max-width: 600px) {
    .image-shadowa {
      height: auto;
      width: 300px;
    }
  }
  
  @keyframes zoomIn {
    from {
      transform: scale(0.7);
    }
    to {
      transform: scale(1);
    }
  }
  
  @media (min-width: 1600px) and (max-width: 2399px) {
    .image-shadowa {
      height: 650px;
      width: auto;
    }
  }
  
  @media (min-width: 2400px) {
    .image-shadowa {
      height: 1000px;
      width: auto;
    }
  }
  /* END 15 sombra de imagen tamaño y movimiento */


/* STAR efecto de titulos en imagenes */  
  .img-container {
    position: relative;
    display: inline-block;
}

.img-container img {
    display: block;
}

.img-container::after {
    content: attr(title); /* Mostrar el contenido del atributo title */
    position: absolute;
    bottom: -30px; /* Ajusta la posición según tu preferencia */
    left: 50%;
    transform: translateX(-50%);
    padding: 3px 6px;
    background-color: rgba(240, 9, 9, 0.90);
    color: #fff;
    font-size: 14px;
    width: 230px;
    
    border-radius: 4px;
    opacity: 0; /* Inicialmente oculto */
    transition: opacity 0.3s ease; /* Transición suave */
    pointer-events: none; /* Para evitar que el pseudo-elemento interfiera con el hover */
}

.img-container:hover::after {
    opacity: 1; /* Mostrar al hacer hover */
}

/* END efecto de titulos en imagenes */  