﻿ /*--------------------------------------------------------------------- File Name: responsive.css ---------------------------------------------------------------------*/
/*--------------------------------------------------------------------- File Name: style.css ---------------------------------------------------------------------*/
/*--------------------------------------------------------------------- import Fonts ---------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');
@import url('https://fonts.googleapis.com/css?family=Raleway:100,400,600,700,900&display=swap');
/*****---------------------------------------- 1) font-family: 'Rajdhani', sans-serif;
 2) font-family: 'Poppins', sans-serif;
 ----------------------------------------*****/
/*--------------------------------------------------------------------- import Files ---------------------------------------------------------------------*/
@import url(animate.min.css);
@import url(normalize.css);
@import url(icomoon.css);
@import url(font-awesome.min.css);
@import url(meanmenu.css);
@import url(owl.carousel.min.css);
@import url(swiper.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);
@import url(jquery-ui.css);
@import url(nice-select.css);
/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/
* {
    box-sizing: border-box !important;
}

html {
    scroll-behavior: smooth;
}

body {
    color: #666666;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    font-family: 'ope'
    line-height: 1.80857;
    font-weight: normal;
}

a {
    color: #1f1f1f;
    text-decoration: none !important;
    outline: none !important;
    -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;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: 0;
    font-weight: normal;
    position: relative;
    padding: 0 0 10px 0;
    font-weight: normal;
    line-height: normal;
    color: #111111;
    margin: 0
}

h1 {
    font-size: 24px;
}

h2 {
    font-size: 22px;
}

h3 {
    font-size: 18px;
}

h4 {
    font-size: 16px
}

h5 {
    font-size: 14px
}

h6 {
    font-size: 13px
}

*,
*::after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #212121;
    text-decoration: none !important;
    opacity: 1
}

button:focus {
    outline: none;
}

ul,
li,
ol {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

p {
    margin: 0px;
    font-weight: 500;
    font-size: 15px;
    line-height: 24px;
}

a {
    color: #222222;
    text-decoration: none;
    outline: none !important;
}

a,
.btn {
    text-decoration: none !important;
    outline: none !important;
    -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;
}

img {
    max-width: 100%;
    height: auto;
}

:focus {
    outline: 0;
}

.btn-custom {
    margin-top: 20px;
    background-color: transparent !important;
    border: 2px solid #ddd;
    padding: 12px 40px;
    font-size: 16px;
}

.lead {
    font-size: 18px;
    line-height: 30px;
    color: #767676;
    margin: 0;
    padding: 0;
}

.form-control:focus {
    border-color: #ffffff !important;
    box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
    border: none !important;
}

.badge {
    font-weight: 500;
}

blockquote {
    margin: 20px 0 20px;
    padding: 30px;
}

button {
    border: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.full {
    float: left;
    width: 100%;
}

.layout_padding {
    padding-top: 90px;
    padding-bottom: 90px;
}

.layout_padding_2 {
    padding-top: 75px;
    padding-bottom: 75px;
}

.light_silver {
    background: #f9f9f9;
}

.theme_bg {
    background: #38c8a8;
}

.margin_top_30 {
    margin-top: 30px !important;
}

.full {
    width: 100%;
    float: left;
    margin: 0;
    padding: 0;
}


/**-- heading section --**/


/*---------------------------- preloader area ----------------------------*/

.loader_bg {
    position: fixed;
    z-index: 9999999;
    background: #fff;
   
    width: 100%;
    height: 100%;
}

.loader {
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .loader img {
        width: 280px;
    }


/*-- navigation--*/

.navigation.navbar {
    float: right;
    padding: 27px;
  
}

.navigation.navbar-dark .navbar-nav .nav-link {
    padding: 0px 60px;

    color: #fff;
    font-size: 16px;
    line-height: 20px;
    text-transform: uppercase;
}

    .navigation.navbar-dark .navbar-nav .nav-link:focus,
    .navigation.navbar-dark .navbar-nav .nav-link:hover {
        color: #000;
        /*color: #1359bb;*/ /* menu color del logo*/
        color:white;
    }

    .navigation.navbar-dark .navbar-nav .active > .nav-link,
    .navigation.navbar-dark .navbar-nav .nav-link.active,
    .navigation.navbar-dark .navbar-nav .nav-link.show,
    .navigation.navbar-dark .navbar-nav .show > .nav-link {
        color: #ffe234; /* menu color del logo esto es cuando esta activo*/
    }

.navbar-expand-md .navbar-nav {
    padding-right: 10px;
}

.header_information {
    background-color: #00aeef;
    background-color: #09193d; /* linea de fondo cambiada*/
 
    padding: 0 0;
    padding-top: 0px;
    padding-top: 0px;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    position: absolute;
    width: 100%;
    height: 98px;
    margin-top: -20px;
    right: 0;
}

    .header_information::before {
        width: 84px;
        height: 98px;
        background: url(../images/top_arrow1.png);
        background-repeat: repeat;
        display: block;
        content: "";
        position: absolute;
        top: 0;
        left: 0px;
        background-repeat: no-repeat;
    }

.sign_btn {
    padding-left: 50px;
}

    .sign_btn a {
        background-color: #fff;
      
        display: inline-block;
        padding: 7px 35px;
        border-radius: 20px;
        color: #292e39;
        font-size: 17px;
    }

        .sign_btn a:hover {
            color: #fff;
            background: #000;
        }


/*-- header area --*/


/*--------------------------------------------------------------------- top banner area ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- layout new css ---------------------------------------------------------------------*/

.header {
    width: 100%;
    background: #fff;
    padding: 20px 0px;
}

.logo a {
    font-size: 40px;
    font-weight: bold;
    text-transform: uppercase;
    color: #fff;
    line-height: 40px;
}


/** banner section **/

.relative {
    position: absolute;
    top: 56%;
    transform: translateY(-44%);
    padding: 0;
    bottom: auto;
}

.banner_main {
    position: relative;
}

.carousel-indicators .active {
    /* background: #00aeef; cambio de color */ 
    background: #09193d;
}

.carousel-indicators li {
    width: 20px;
    height: 20px;
    background: #fafcfd;
    border-radius: 20px;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
    display: none;
}

.carousel-indicators {
    bottom: 50px;
}

.carousel-item img {
    width: 100%;
}

.carousel-caption h1 {
    color: #08091e;
    font-size: 65px;
    line-height: 80px;
    padding-bottom: 35px;
    font-weight: bold;
}

.carousel-caption span {
    color: #6dbcf1;
    font-size: 50px;
    line-height: 50px;
    font-weight: 500;
    padding-bottom: 20px;
}

.carousel-caption a {
    font-size: 17px;
    background-color: #00aeef;
    color: #fff;
    font-weight: 500;
    padding: 13px 0px;
    width: 100%;
    max-width: 190px;
    text-align: center;
    display: inline-block;
    transition: ease-in all 0.5s;
    margin-top: 50px;
    border-radius: 30px;
}

    .carousel-caption a:hover {
        background-color: #000;
        color: #fff;
        transition: ease-in all 0.5s;
    }


/** banner section **/

.titlepage {
    text-align: center;
    padding-bottom: 60px;
}

    .titlepage h2 {
        font-size: 45px;
        color: #0b0503;
        line-height: 50px;
        font-weight: bold;
        padding: 0;
    }

    .titlepage span {
        background: #09193d; /*cambio de color titulo*/
        display: block;
        height: 10px;
        width: 90px;
    }

.d_flex {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.read_more {
    font-size: 17px;
    background-color: transparent;
    color: #7a7a7a;
    padding: 8px 0px;
    width: 100%;
    max-width: 190px;
    text-align: center;
    display: inline-block;
    border-radius: 30px;
    border: #09193d solid 3px;
    transition: ease-in all 0.5s;
}

    .read_more i {
        padding-left: 10px;
    }

    .read_more:hover {
        background: #00aaea;
        color: #fff !important;
        transition: ease-in all 0.5s;
    }


/** about section **/

.about {
  
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: 90px 0;
}

    .about .titlepage {
        text-align: left;
        padding: 0;
    }

        .about .titlepage p {
            color: #292e39;
            font-size: 17px;
            line-height: 35px;
            font-weight: 500;
            padding: 20px 0px 35px 0px;
        }

.about_img figure {
    margin: 0;
}

    .about_img figure img {
        width: 100%;
    }


/** end about section **/


/** mobile section **/

.mobile {
    background: url(../images/mo_bg.jpg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: 90px 0;
}

    .mobile .titlepage {
        text-align: right;
        padding: 0;
    }

        .mobile .titlepage h2 {
            color: #fff;
        }

        .mobile .titlepage span {
            margin-left: 58px;
        }

        .mobile .titlepage p {
            color: #fff;
            font-size: 17px;
            line-height: 35px;
            font-weight: 500;
            padding: 20px 0px 35px 0px;
        }

.mobile_img figure {
    margin: 0;
}

    .mobile_img figure img {
        width: 100%;
    }

.mobile .titlepage .read_more {
    border: #fff solid 3px;
    color: #fff;
}


/** mobile section **/


/** clients section **/

.clients {
    margin-top: 40px;
    padding-top: 60px;
}

    .clients .titlepage h2 {
        color: #202021;
    }

    .clients .titlepage span {
        margin-left: 56px;
    }

.clients_box {
    text-align: center;
    background: #e2e3e3;
    padding: 50px 15px;
    border-radius: 15px;
    position: relative;
}

    .clients_box p {
        font-size: 17px;
        line-height: 35px;
    }

    .clients_box::after {
        position: absolute;
        content: "";
        width: 42px;
        height: 67px;
        bottom: -65px;
        background: url(../images/cli_cross.png);
        background-repeat: no-repeat;
    }

.jonu {
    padding-top: 72px;
    text-align: center;
}

    .jonu h3 {
        padding: 0px 0px 0px 0px;
        color: #0b0503;
        font-size: 25px;
    }

    .jonu strong {
        display: block;
        color: #00aeef;
        font-size: 17px;
        padding-bottom: 50px;
    }


/** end clients section **/


/** contact section **/

.contact {
    background: #042431;
    margin-top: 90px;
    padding: 90px 0;
}

    .contact .titlepage h2 {
        color: #fff;
    }

.main_form .contactus {
    border: inherit;
    margin-bottom: 20px;
    width: 100%;
    height: 60px;
    background: transparent;
    color: #f9fcfd;
    font-size: 18px;
    font-weight: normal;
    border-bottom: #fff solid 1px;
}

.main_form .send_btn {
    font-size: 17px;
    transition: ease-in all 0.5s;
    background-color: transparent;
    text-transform: uppercase;
    font-weight: 500;
    border: #00aeef solid 3px;
    color: #f9fcfd;
    padding: 8px 0px;
    margin: 0 auto;
    max-width: 180px;
    width: 100%;
    display: block;
    border-radius: 30px;
    margin-top: 30px;
}

    .main_form .send_btn:hover {
        background-color: #00aeef;
        transition: ease-in all 0.5s;
        color: #fff;
    }

#request *::placeholder {
    color: #f9fcfd;
    opacity: 1;
}


/** end contact section **/


/** footer **/

.footer {
    background: #042431;
    text-align: center;
}

.border-top {
    border-top: #fff solid 1px;
    padding-top: 90px;
}

.footer h3 {
    color: #fff;
    font-weight: 500;
    font-size: 17px;
    line-height: 20px;
    text-align: left;
    padding-bottom: 20px;
}

.footer_form {
    display: flex;
    border-bottom: #4d636c solid 1px;
    align-items: center;
    justify-content: center;
}

.enter {
    border: inherit;
    width: 71%;
    background: transparent;
    color: #4d636c;
    font-size: 18px;
    font-weight: normal;
    border-bottom: initial;
}

.submit {
    font-size: 17px;
    transition: ease-in all 0.5s;
    background-color: transparent;
    text-transform: uppercase;
    font-weight: 500;
    border: #00aeef solid 3px;
    color: #4d636c;
    padding: 5px 0px;
    margin-bottom: 5px;
    max-width: 150px;
    width: 100%;
    display: block;
    border-radius: 30px;
}

    .submit:hover {
        background-color: #00aeef;
        transition: ease-in all 0.5s;
        color: #fff;
    }

ul.cont li {
    color: #8a9397;
    font-size: 17px;
    line-height: 32px;
    text-align: left;
}

.copyright {
    margin-top: 90px;
    padding: 20px 0px;
       background-color: #09193d; /* color azul del logo*/
}

    .copyright p {
        color: #fff;
        font-size: 18px;
        font-weight: 300;
        line-height: 22px;
        text-align: center;
    }

    .copyright a {
        color: #fff;
    }

        .copyright a:hover {
            color: #000;
        }


/** end footer **/


/** inner page css **/

.margin_to90 .footer {
    margin-top: 90px;
}

.ourwork {
    margin: 90px 0 60px 0;
}

.our_box {
    margin-bottom: 30px;
}

    .our_box figure {
        margin: 0;
    }

        .our_box figure img {
            width: 50%;
        }

/*.lang-selector {
    display: flex;
    gap: 10px;
    margin-left: 100px;
}

.lang-btn {
    padding: 5px 9px;
    border-radius: 6px;
    border: 2px solid #0078d4;
    background: white;
    color: #0078d4;
    font-weight: 600;
    cursor: pointer;
    transition: 0.25s;
}

    .lang-btn:hover {
        background: #e6f2fb;
    }

    .lang-btn.active {
        background: #0078d4;
        color: white;
    }*/


.lang-selector {
    display: flex;
    gap: 10px;
       margin-left: 20px;
 
}

.lang-btn {
    padding: 5px 9px;
    border: none; /* Sin borde */
    background: transparent; /* Fondo transparente */
    color:white; /* Color del texto */
    font-weight: 600;
    cursor: pointer;
    transition: 0.25s;
}

    /*.lang-btn:hover {
        text-decoration: underline;*/ /* Estilo de enlace */
        /*color: #005a9e;*/ /* Un tono más oscuro al pasar */
    /*}*/
    .lang-btn:hover {
        background: rgba(0,0,0,0.05);
    }

    /*.lang-btn.active {
        text-decoration:wavy*/ /* Activo también subrayado */
        /*color: #005a9e;
    }*/
    .lang-btn:hover {
        border-bottom: 2px solid #0078d4;
    }

/* este codigo es el de antesssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss*/
/* TV realista */
/*.tv-frame {
    width: 400px;
    height: 400px;
    margin: auto;
    padding: 10px;
    background: #111;
    border-radius: 25px;
    border: 12px solid #000;
    box-shadow: 0 0 25px rgba(0,0,0,0.7), inset 0 0 40px rgba(255,255,255,0.05);
    position: relative;
    overflow: hidden;*/ /* ← ESTO ES CLAVE */
    /*margin-right:25%; !important;
    padding-right: 0 !important;*/
}
*/
/* Pantalla */
/*.tv-screen {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    overflow: hidden;
    display: block;
}*/
/* Reflejo superior */
/*.tv-frame::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(to bottom, rgba(255,255,255,0.25), transparent);
    border-radius: 20px 20px 0 0;
    pointer-events: none;
}*/
/* Botones TV */
/*.tv-frame::after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 20px;
    width: 60px;
    height: 10px;
    background: #333;
    border-radius: 5px;
    box-shadow: inset 0 0 5px #000;
}*/
/* este codigo es el de antesssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss*/
/* TV realista */
.tv-frame {
    margin: auto;
    padding: 10px;
    background: #111;
    border-radius: 25px;
    border: 12px solid #000;
    box-shadow: 0 0 25px rgba(0,0,0,0.7), inset 0 0 40px rgba(255,255,255,0.05);
    position: relative;
    overflow: hidden;
    
}

/* Contenedor del carrusel */
.carousel {
    width: 100%;
    height: 100%;
    position: relative;
}

/* Pantallas */
.tv-screen {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .6s ease;
}

.tv-screen.active {
    opacity: 1;
}

/* Reflejo superior */
.tv-frame::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    height: 40px;
    background: linear-gradient(to bottom, rgba(255,255,255,0.25), transparent);
    border-radius: 20px 20px 0 0;
    pointer-events: none;
}

/* Botones TV */
/*.tv-frame::after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: 20px;
    width: 60px;
    height: 10px;
    background: #333;
    border-radius: 5px;
    box-shadow: inset 0 0 5px #000;
}
*/
/* Flechas */
.arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5);
    border: none;
    color: white;
    font-size: 28px;
    padding: 8px 12px;
    cursor: pointer;
    border-radius: 8px;
    z-index: 10;
}

.arrow.left {
    left: 10px;
}

.arrow.right {
    right: 10px;
}

.arrow:hover {
    background: rgba(255,255,255,0.3);
}


/* Miniaturas */
/*.thumbs-container {
    width: 420px;
    margin: 20px auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.thumb-box {
    width: 80px;
    height: 80px;
}

.thumb-img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    cursor: pointer;
    border: 3px solid #ccc;
    border-radius: 6px;
    transition: transform 0.2s, border-color 0.2s;
}*/

    /* Hover */
    .thumb-img:hover {
        transform: scale(1.1);
        border-color: #00aaff;
    }

    /* Miniatura activa */
    .thumb-img.active-thumb {
        border-color: #00d0ff;
        box-shadow: 0 0 10px #00d0ff;
    }
/* Glow animado alrededor de la TV */
/*.tv-frame {
    animation: tvGlow 3s ease-in-out infinite alternate;
}*/

@keyframes tvGlow {
    0% {
        box-shadow: 0 0 25px rgba(0, 200, 255, 0.4), 0 0 50px rgba(0, 200, 255, 0.2), inset 0 0 40px rgba(255,255,255,0.05);
    }

    100% {
        box-shadow: 0 0 40px rgba(0, 200, 255, 0.8), 0 0 80px rgba(0, 200, 255, 0.4), inset 0 0 60px rgba(255,255,255,0.1);
    }
}
/* Glow animado en miniatura activa */
.active-thumb {
    border-color: #00d0ff !important;
    box-shadow: 0 0 10px #00d0ff, 0 0 20px #00d0ff;
    animation: thumbGlow 1.5s ease-in-out infinite alternate;
}

@keyframes thumbGlow {
    0% {
        box-shadow: 0 0 10px #00d0ff;
    }

    100% {
        box-shadow: 0 0 20px #00d0ff, 0 0 35px #00d0ff;
    }
}

.thumb-img:hover {
    transform: scale(1.12);
    border-color: #00aaff;
    box-shadow: 0 0 12px #00aaff;
}
.thumbs-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    margin-top: 20px;
}
.thumbs-container {
    display: flex;
    overflow-x: auto; /* ← PERMITE DESPLAZAMIENTO REAL */
    overflow-y: hidden;
    gap: 10px;
    width: auto; /* ← DEJA QUE CREZCA TODO LO QUE NECESITE */
    scroll-behavior: smooth;
    white-space: nowrap; /* ← EVITA QUE SE ROMPA EN LÍNEAS */
}

.thumb-box {
    flex: 0 0 calc(5% - 5px); /* 8 miniaturas visibles (más pequeñas) */ /* Si quieres 5 miniaturas: calc(20% - 10px) */
}

.thumb-img {
    width: 100%;
    aspect-ratio: 1 / 1; /* CUADRADO PERFECTO */
    object-fit: cover; /* Recorta sin deformar */
    border-radius: 4px;
    cursor: pointer;
    border: 2px solid transparent;
}

/*.thumb-img {
    width: 100%;
    height: 80px;
    object-fit: cover;
    border-radius: 4px;
    cursor: pointer;
    border: 2px solid transparent;
}*/
/*.thumb-img {
    width: 100%;
    aspect-ratio: 1 / 1;*/ /* 🔥 CUADRADO PERFECTO */
    /*object-fit: cover;*/ /* Recorta sin deformar */
    /*border-radius: 4px;
    cursor: pointer;
    border: 2px solid transparent;
}*/

/*.thumb-img {
    width: 25%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: cover;
    border-radius: 4px;
    cursor: pointer;
    border: 2px solid transparent;
}
*/
.thumb-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.6);
    color: white;
    border: none;
    font-size: 24px;
    padding: 10px;
    cursor: pointer;
    z-index: 10;
}

    .thumb-arrow.left {
        left: 0;
    }

    .thumb-arrow.right {
        right: 0;
    }/**/
/* CONTENEDOR PRINCIPAL: CENTRA TODO */
.tv-descripcion-wrapper {
    display: flex;
    justify-content: center; /* ← CENTRA horizontalmente */
    align-items: center; /* ← CENTRA verticalmente entre sí */
    gap: 30px; /* Espacio entre TV y descripción */
    width: 60%;
    margin: 0 auto; /* ← Asegura centrado en la página */
    max-width: 700px; /* Opcional: evita que se abra demasiado */
}

/* TV */
.tv-frame {

    position: relative;
    margin: 0;  /* ← Elimina empujes laterales */
}

/* DESCRIPCIÓN */
.descripcion-foto {
    width: 460px;
    padding: 15px;
    background: rgba(0,0,0,0.45);
    color: #fff;
    color:midnightblue;
    border-radius: 20px;
    font-size: 15px;
    margin: 0; /* ← Asegura que no se separe */
}

