/*--------------------------------------------------------------------- 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');
@import url('https://fonts.googleapis.com/css?family=Baloo+Chettan&display=swap');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,600i,700,800&display=swap');

/*****---------------------------------------- 1) font-family: 'Rajdhani', sans-serif;
 2) font-family: 'Poppins', sans-serif;
 ----------------------------------------*****/


/*--------------------------------------------------------------------- import Files ---------------------------------------------------------------------*/

@import url(../../css/vendor/animate.min.css);
@import url(../../css/vendor/normalize.css);
@import url(../../css/vendor/icomoon.css);
@import url(../../css/vendor/font-awesome.min.css);
@import url(../../css/plugins/meanmenu.css);
@import url(../../css/plugins/owl.carousel.min.css);
/*@import url(swiper.min.css);*/
@import url(../../css/plugins/slick.css);
@import url(../../css/plugins/jquery.fancybox.min.css);
/*@import url(../../css/plugins/jquery-ui.css);*/
@import url(../../css/plugins/nice-select.css);

/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/

* {
     box-sizing: border-box !important;
}

.container {
     max-width: 1170px;
}

html {
     scroll-behavior: smooth;
}

body {
     color: #666666;
     font-size: 14px;
     font-family: 'Poppins', sans-serif;
     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%;
}

.full {
     width: 100%;
     float: left;
     margin: 0;
     padding: 0;
}


/**-- heading section --**/


/*---------------------------- preloader area ----------------------------*/

.loader_bg {
     position: fixed;
     z-index: 9999999;
      background: inherit;
     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;
}


/*-- header area --*/


/*--------------------------------------------------------------------- top banner area ---------------------------------------------------------------------*/




/* .navigation.navbar-dark .navbar-nav .nav-link:focus,
.navigation.navbar-dark .navbar-nav .nav-link:hover {
     color: #1E3A8A;
}

.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: #1E3A8A;
} */

.navbar-expand-md .navbar-nav {
     padding-right: 10px;
}



/** banner section **/

.banner {
     position: relative;
     background: url(../../images/index/banner.jpeg);
     background-size: 100% 100%;
     background-position: center;
     background-repeat: no-repeat;
     min-height: 804px;
     padding-top: 17%;
}

.text-bg {
     text-align: left;
}

.relative {
     position: inherit;
     right: 0;
     left: 0;
     padding: 0;
     bottom: 0;
}

.text-bg h1 {
     color: #000;
     font-size: 85px;
     line-height: 96px;
     padding-bottom: 0px;
     font-weight: bold;
}

.text-bg span {
     line-height: 25px;
     padding-bottom: 40px;
     color: #fff;
     font-size: 17px;
     font-weight: bold;
     display: block;
}

.text-bg .read_more {
     max-width: 243px;
     height: 66px;
     padding: 17px 0;
     background-color: #fff;
     color: #000;
     text-transform: uppercase;
     font-weight: bold;
     border-radius: 50px;
}

.text-bg .read_more:hover {
     background-color: #0d0c0c;
}

.banner .carousel-indicators {
     display: none;
}

#myCarousel .carousel-control-prev,
#myCarousel .carousel-control-next {
     width: 36px;
     height: 36px;
     background: #0d0c0c;
     opacity: 1;
     font-size: 25px;
     color: #fff;
     border-radius: 60px;
     top: 97.6%;
}

#myCarousel .carousel-control-prev:hover,
#myCarousel .carousel-control-next:hover,
#myCarousel .carousel-control-prev:focus,
#myCarousel .carousel-control-next:focus {
     background: #16d316;
     color: #fff;
     width: 57px;
     height: 57px;
     font-size: 30px;
     top: 96%;
}

#myCarousel a.carousel-control-prev {
     position: absolute;
     bottom: 10px;
     left: 48%;
}

#myCarousel a.carousel-control-next {
     position: absolute;
     right: inherit;
     bottom: 10px;
     right: 46.5%;
}

#myCarousel .carousel-control-prev:hover,
#myCarousel .carousel-control-prev:focus {
     left: 46.5%;
}

#myCarousel .carousel-control-next:hover,
#myCarousel .carousel-control-next:focus {
     right: 45%;
}


/** end banner section **/

.titlepage {
     text-align: center;
     padding-bottom: 40px;
}

.titlepage h2 {
     font-size: 40px;
     color: #1f1f1f;
     line-height: 45px;
     font-weight: bold;
     padding: 0;
}

.green {
     color: #16e816 !important;
}

.d_flex {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
}

.read_more {
     font-size: 17px;
     background-color: #252525;
     color: #fff;
     padding: 12px 0px;
     width: 100%;
     max-width: 210px;
     text-align: center;
     display: inline-block;
     transition: ease-in all 0.5s;
     font-weight: 400;
}

.read_more:hover {
     background: #16e816;
     color: #fff;
     transition: ease-in all 0.5s;
}


/** about section **/

.about {
     background-color: #fff;
     padding-top: 95px;
}

.about .titlepage {
     text-align: left;
     margin-top: 41%;
     padding-bottom: 0;
     margin-right: -20px;
}

.about .titlepage h2 {
     margin-bottom: 35px;
}

.about .titlepage p {
     font-weight: 300;
     color: #2e2d2d;
     font-size: 17px;
     line-height: 31px;
     padding-bottom: 35px;
}

.about_img {
     padding: 40px 30px 45px 30px;
}

/*.about_img::before {
     position: absolute;
     content: "";
     background: url(../images/vg.png);
     top: 0;
     height: 100%;
     width: 452px;
     right: 0;
     border-radius: 5px;
}*/

.about_img figure {
     margin: 0;
}

.about_img figure img {
     width: 100%;
     z-index: 9999;
     position: relative;
}

.about .row {
     display: flex;
     align-items: center;
     /* alinea texto e imagen al centro vertical */
}

.about .titlepage {
     margin-top: 0 !important;
     /* elimina el 41% */
     margin-right: 0 !important;
     /* elimina el -20px */
     padding-bottom: 0;
}

/* para que el pseudo-elemento se posicione dentro del contenedor */
.about_img {
     position: relative;
}

/* opcional: asegura que la imagen no deje espacios raros */
.about_img figure img {
     display: block;
     width: 100%;
     height: auto;
}

/** end about section **/


/** service section **/

.service {
     padding-top: 80px;
}

.service_box h3 {
     font-size: 25px;
     color: #252525;
     padding-bottom: 5px;
     margin-top: 15px;
     font-weight: bold;
}

.mar_top {
     margin-top: -35px;
}

.service_box p {
     color: #181818;
}

.service .read_more {
     margin: 0 auto;
     display: block;
     margin-top: 60px;
}


/** end service section **/


/** gallery  section **/

.gallery {
     margin-top: 80px;
     padding-top: 80px;
     background-color: #eae7e7;
     padding-bottom: 50px;
}

.gallery .titlepage {
     text-align: center;
}

.gallery .titlepage p {
     color: #2a2b2a;
     display: block;
     padding-top: 20px;
}

.gallery .gallery_img {
     overflow: hidden;
     margin-bottom: 30px;
}

.gallery .gallery_img figure {
     margin: 0;
}

.gallery .gallery_img figure img {
     width: 100%;
     transition: all .5s;
}

.gallery .gallery_img figure img:hover {
     transform: scale(1.2);
     cursor: pointer;
}

.gallery_text {
     text-align: center;
     background-color: #2a2b2a;
     height: 369px;
     display: flex;
     align-items: center;
     justify-content: center;
}

.galleryh3 h3 {
     font-size: 24px;
     line-height: 30px;
     color: #fff;
     font-weight: bold;
}

.galleryh3 p {
     font-size: 17px;
     line-height: 31px;
     color: #fff;
}


/** end gallery  section **/


/** design section **/

.design {
     padding-top: 80px;
}

.text_de p {
     color: #2a2b2a;
     padding-bottom: 50px;
     font-size: 17px;
     line-height: 31px;
}

.banner_design {
     max-width: 443px;
     float: right;
     width: 100%;
}

.design_img figure {
     margin: 0;
}

.design_img figure img {
     width: 100%;
}

.banner_design .carousel-indicators {
     display: none;
}

#design .carousel-control-prev,
#design .carousel-control-next {
     width: 83px;
     height: 76px;
     background: #0d0c0c;
     opacity: 1;
     font-size: 35px;
     color: #fff;
     top: 97%;
}

#design .carousel-control-prev:hover,
#design .carousel-control-next:hover,
#design .carousel-control-prev:focus,
#design .carousel-control-next:focus {
     background: #16d316;
     color: #000;
}

#design a.carousel-control-prev {
     position: absolute;
     left: 31%;
}

#design a.carousel-control-next {
     position: absolute;
     right: 29%;
}

.pad_roght0 {
     padding-right: 0;
}

.text_de .titlepage {
     padding-bottom: 30px;
}


/** end design section **/


/** latest_news section **/

.latest_news {
     padding: 80px 0 50px 0;
}

.latest_news .titlepage {
     text-align: center;
}

.latest_news .titlepage p {
     color: #fff;
     font-size: 17px;
     margin-top: 20px;
}

.latest_news .news_box {
     text-align: left;
     background-color: #ffffff;
     margin-bottom: 30px;
     transition: ease-in all 0.5s;
}

.latest_news .news_box .news_img figure {
     margin: 0;
     padding: 0px 30px 0 0;
     margin-left: -195px;
}

.latest_news .news_box .news_img figure img {
     width: 100%;
}

.mr_le figure {
     margin-left: 0 !important;
     margin-right: -195px !important;
     padding: 0px 0px 0 30px !important;
}

.latest_news .news_box .news_room {
     padding: 15px 30px;
     text-align: left;
}

.latest_news .news_box .news_room h3 {
     color: #252525;
     font-size: 17px;
     line-height: 20px;
     font-weight: bold;
     padding-bottom: 10px;
     transition: ease-in all 0.5s;
     margin: auto;
     padding-top: 15px;
}

.latest_news .news_box .news_room span {
     font-size: 15px;
     color: #252525;
     font-weight: 400;
     margin-bottom: 0px;
     display: block;
     transition: ease-in all 0.5s;
}

.latest_news .news_box .news_room ul li {
     display: inline-block;
}

.latest_news .news_box .news_room ul li a {
     transition: ease-in all 0.5s;
     display: inline-block;
     font-size: 15px;
     padding-right: 30px;
}

.latest_news .news_box .news_room ul li a i {
     padding-left: 5px;
}

.latest_news .news_box .news_room ul li a:hover {
     color: #16e816 !important;
}

.latest_news .news_box .news_room ul li:last-child a {
     padding-right: 0;
}

.latest_news .news_box .news_room p {
     font-size: 16px;
     line-height: 21px;
     font-weight: 400;
     color: #1b1b1b;
     transition: ease-in all 0.5s;
}

#new:hover.news_box {
     background: #292a29;
     transition: ease-in all 0.5s;
     cursor: pointer;
}

#new:hover.news_box .news_room span,
#new:hover.news_box .news_room h3,
#new:hover.news_box .news_room p,
#new:hover.news_box .news_room ul li a {
     color: #fff;
     transition: ease-in all 0.5s;
}

.latest_news .read_more {
     margin: 0 auto;
     display: block;
     margin-top: 30px;
}


/** end latest_news section **/


/** testimonial section **/

.Testimonial {
     padding-top: 80px;
}

.banner_testimonial {
     padding: 40px 50px;
     width: 100%;
     background-color: #343434;
}

.text_humai {
     margin-top: 60px;
     text-align: left;
     padding: 0 30px 40px 30px;
     border: #16d316 solid 1px;
     border-radius: 5px;
}

.text_humai span {
     color: #fff;
     padding-top: 20px;
     padding-bottom: 20px;
     font-size: 17px;
     line-height: 31px;
     font-weight: bold;
     display: block;
}

.text_humai i img {
     margin-top: -60px;
}

.text_humai p {
     color: #fff;
     font-weight: 400;
     font-size: 17px;
     line-height: 31px;
}

.banner_testimonial .carousel-indicators {
     display: none;
}

.pad_left0 {
     padding-left: 0;
}

#testimon .carousel-control-prev,
#testimon .carousel-control-next {
     width: 83px;
     height: 76px;
     background: #0d0c0c;
     opacity: 1;
     font-size: 35px;
     color: #fff;
     top: 67%;
}

#testimon .carousel-control-prev:hover,
#testimon .carousel-control-next:hover,
#testimon .carousel-control-prev:focus,
#testimon .carousel-control-next:focus {
     background: #16d316;
     color: #000;
}

#testimon a.carousel-control-prev {
     position: absolute;
     left: 118%;
}

#testimon a.carousel-control-next {
     position: absolute;
     right: -38%;
}

.pad_roght0 {
     padding-right: 0;
}

.text_de .titlepage {
     padding-bottom: 30px;
}


/** end testimonial section **/


/** contact section **/

/*.contact {
     background: url(../images/);
     background-size: 100% 100%;
     background-repeat: no-repeat;
     background-position: center;
     margin-top: 90px;
     padding: 80px 0;
}

.contact .titlepage {
     text-align: left;
}

.contact .titlepage h2 {
     color: #000000;
     font-weight: 500;
     text-transform: uppercase;
}*/

.main_form .contactus {
     border: #000000 solid 1px;
     padding: 0 15px;
     margin-bottom: 25px;
     width: 100%;
     height: 54px;
     background: #fff;
     color: #989696;
     font-size: 18px;
     font-weight: normal;
     border-radius: 5px;
}

.main_form .textarea {
     border: #000000 solid 1px;
     margin-bottom: 25px;
     width: 100%;
     background: #fff;
     color: #989696;
     font-size: 18px;
     font-weight: normal;
     padding: 35px 15px 0 15px;
     height: 107px;
     border-radius: 5px;
}

.main_form .send_btn {
     background-color: #1f1f1f;
     color: #fff;
     border: none;
     padding: 14px 35px;
     font-size: 16px;
     font-weight: 600;
     border-radius: 6px;
     cursor: pointer;
     transition: all 0.3s ease;
}

.main_form .send_btn:hover {
     background-color: #000;
     transform: translateY(-2px);
     box-shadow: 0px 6px 14px rgba(0, 0, 0, 0.25);
}

#request *::placeholder {
     color: #989696;
     opacity: 1;
}


/** end contact section **/


/** footer **/

.footer {
     background: #202020;
     padding-top: 80px;
     color: #ffffff;
     text-align: left;
}

/* Texto normal */
.footer p,
.footer h3,
.footer strong,
.footer li {
     color: #ffffff;
}

/* Enlaces */
.footer a {
     color: #ffffff;
     text-decoration: none;
     transition: 0.3s ease;
}

.footer a:hover {
     color: #00c3ff;
}

.footer h3 {
     font-weight: 400;
     font-size: 30px;
     line-height: 23px;
     text-align: left;
     color: #fff;
     padding-bottom: 20px;
     display: table;
     text-transform: uppercase;
}

ul.social_icon {
     padding-bottom: 14px;
     width: 100%;
     text-align: left;
}

ul.social_icon li {
     display: inline-block;
}

ul.social_icon li a {
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 20px;
     border-radius: 30px;
     margin: 0 3px;
     color: #202020;
     background: #fff;
     width: 35px;
     height: 35px;
     flex-wrap: wrap;
}

ul.social_icon li a:hover {
     color: #fff;
     background: #33f033;
}

.pad_roght2 {
     padding-right: 20px;
}

.variat {
     color: #fff;
     text-align: left;
     font-size: 17px;
     font-weight: 400;
     line-height: 28px;
}

ul.conta li {
     color: #fff;
     text-align: left;
     padding-bottom: 20px;
     font-size: 16px;
}

ul.conta li i {
     padding-right: 15px;
     text-align: center;
     font-size: 20px;
}

ul.conta li a {
     color: #fff;
}

ul.link_menu li {
     display: block;
     text-align: left;
}

ul.link_menu li a {
     color: #fff;
     font-size: 17px;
     line-height: 28px;
     display: block;
     width: -moz-max-content;
}

ul.link_menu li a:hover {
     color: #33f033;
}

.bottom_form {
     display: flex;
     flex-wrap: wrap;
     margin-top: 40px;
}

.bottom_form .enter {
     border: inherit;
     padding: 0px 119px 0px 0px;
     width: 100%;
     height: 45px;
     background: transparent;
     color: #4d4c4c;
     font-size: 17px;
     font-weight: 300;
     float: left;
     margin-bottom: 20px;
     border-bottom: #fff solid 1px;
}

.sub_btn {
     font-size: 19px;
     transition: ease-in all 0.5s;
     background-color: transparent;
     color: #fff;
     padding: 8px 0px;
     max-width: 147px;
     width: 100%;
     font-weight: 500;
     text-transform: uppercase;
     position: absolute;
     right: 0;
}

.sub_btn:hover {
     transition: ease-in all 0.5s;
     color: #33f033;
}

#hkh *::placeholder {
     color: #4d4c4c;
     opacity: 1;
}

.copyright {
     margin-top: 60px;
     padding-bottom: 20px;
     background-color: #fff;
}

.copyright p {
     color: #000;
     font-size: 18px;
     line-height: 22px;
     text-align: center;
     padding-top: 25px;
     font-weight: normal;
}

.copyright a {
     color: #000;
}

.copyright a:hover {
     color: #33f033;
}

.footer .row {
     text-align: left;
}

.footer-col {
     text-align: left;
}

.footer h3 {
     text-align: left;
}

/** end footer **/


/** endinner page css **/

.in_page .header {
     border-bottom: #000000 solid 2px;
}

/* ====== FIX MENU NAVBAR (CENTRADO) ====== */

/* Quitar el float que rompe el navbar */
.navigation.navbar {
     float: none !important;
     width: 100%;
     padding-top: 15px !important;
}

/* Centrar el menú completo */
.navigation.navbar .navbar-nav {
     width: 100%;
     display: flex;
     /* asegura flex */
     justify-content: center;
     /* centra items */
     align-items: center;
     margin: 0 auto !important;
     /* centra el bloque */
     padding-right: 0;
     /* quita empuje a la derecha */
}

/* Evitar que se partan los textos */
.navigation.navbar .navbar-nav .nav-link {
     white-space: nowrap;
}

/* Reducir espacios entre items */
.navigation.navbar-dark .navbar-nav .nav-link {
     margin: 0 18px;
     /* ajusta a tu gusto */
}

/* En pantallas medianas, más compacto */
@media (max-width: 1200px) {
     .navigation.navbar-dark .navbar-nav .nav-link {
          margin: 0 12px;
          font-size: 14px;
     }
}

/* Eliminar el offset solo en el header */
.header .offset-md-2 {
     margin-left: 0 !important;
}

/* ====== FIX HEADER + MENU CENTRADO REAL ====== */

/* Si existía offset en el header, eliminarlo */
.header .offset-md-2 {
     margin-left: 0 !important;
}

.header .col-md-10.offset-md-2 {
     flex: 0 0 100% !important;
     max-width: 100% !important;
}

/* Asegurar que el nav no esté flotando y ocupe todo */
.header .navigation.navbar {
     float: none !important;
     width: 100% !important;
     padding-top: 15px !important;
     /* OJO: con px */
}

/* Hacer que la zona del menú ocupe todo el ancho */
/* .header .navigation.navbar .navbar-collapse {
     width: 100% !important;
} */

/* Centrar los items */
/* .header .navigation.navbar .navbar-nav {
     width: 100%;
     display: flex !important;
     justify-content: center !important;
     align-items: center;
     margin: 0 auto !important;
     padding: 0 !important;
} */

/* No partir textos */
.header .navigation.navbar .navbar-nav .nav-link {
     white-space: nowrap;
}

/* Ajustar separación */
.header .navigation.navbar-dark .navbar-nav .nav-link {
     margin: 0 18px;
}

/* ===== DROPDOWN BONITO (Bootstrap 4) ===== */

/* Que el botón "Quiénes Somos" se vea más fino */
.navbar .nav-link.dropdown-toggle {
     display: flex;
     align-items: center;
     gap: 6px;
}

/* Caja del dropdown */
.navbar .dropdown-menu {
     margin-top: 10px;
     /* separación del menú */
     border: 0;
     border-radius: 12px;
     padding: 10px 0;
     min-width: 220px;
     box-shadow: 0 14px 35px rgba(0, 0, 0, 0.18);
}

/* Items */
.navbar .dropdown-item {
     padding: 10px 18px;
     font-size: 15px;
     font-weight: 500;
     color: #111;
     transition: 0.2s ease;
}

/* Hover bonito */
.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
     background: rgba(0, 195, 255, 0.12);
     color: #007c9c;
}

/* Separadores (si luego los usas) */
.navbar .dropdown-divider {
     margin: 8px 0;
}

/* Animación dropdown solo en escritorio */
/* @media (min-width: 992px) {
     .navbar .dropdown-menu {
          transform: translateY(8px);
          opacity: 0;
          transition: 0.18s ease;
          display: block;
          visibility: hidden;
          pointer-events: none;
     }

     .navbar .dropdown-menu.show {
          transform: translateY(0);
          opacity: 1;
          visibility: visible;
          pointer-events: auto;
     }
} */

/* ===== CERTIFICACIONES (ESTILO BONITO) ===== */
#certificaciones .titlepage h2 {
     margin-bottom: 8px;
}

/* subtítulo del bloque */
.cert-subtitle {
     max-width: 900px;
     margin: 10px auto 0;
     color: #555;
     font-size: 16px;
     line-height: 1.7;
}

/* card / contenedor */
.cert-card {
     background: #fff;
     border-radius: 14px;
     padding: 22px;
     margin: 22px 0;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

/* título por certificación */
.cert-title {
     font-size: 20px;
     font-weight: 700;
     margin-bottom: 10px;
     letter-spacing: .3px;
}

/* texto: alineado y legible */
.cert-text {
     color: #444;
     font-size: 15.5px;
     line-height: 1.8;
     text-align: justify;
     margin: 0;
}

/* imágenes: mismo tamaño */
.cert-img {
     width: 100%;
     max-width: 260px;
     /* ancho visual */
     height: 160px;
     /* misma altura para todas */
     object-fit: contain;
     display: block;
     margin: 0 auto;
     background: #f7f7f7;
     /* caja para uniformar logos */
     border-radius: 12px;
     padding: 14px;
}

/* imagen general un poco más grande */
.cert-img-large {
     max-width: 520px;
     height: 220px;
}

/* en móvil: que se vea bien */
@media (max-width: 768px) {
     .cert-card {
          padding: 18px;
     }

     .cert-img {
          max-width: 240px;
          height: 150px;
          margin-bottom: 12px;
     }

     .cert-img-large {
          max-width: 100%;
          height: 220px;
     }
}

/* ===== PRODUCTOS Y SERVICIOS (DISEÑO TIPO CATÁLOGO) ===== */
#productos-servicios .ps-intro {
     max-width: 980px;
     margin: 10px auto 25px;
     color: #444;
     line-height: 1.7;
     font-size: 16px;
}

.ps-row {
     margin-top: 18px;
     margin-bottom: 18px;
}

/* Imagen izquierda */
.ps-img {
     height: 100%;
     background: #f2f2f2;
     border-radius: 6px;
     overflow: hidden;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

.ps-img img {
     width: 100%;
     height: 100%;
     min-height: 260px;
     object-fit: cover;
     display: block;
}

/* Caja derecha */
.ps-card {
     height: 100%;
     background: #f4f4f4;
     border-radius: 6px;
     padding: 24px 26px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

.ps-card h3 {
     font-weight: 800;
     font-size: 22px;
     margin-bottom: 14px;
     letter-spacing: 0.5px;
}

.ps-sub {
     margin: 0 0 10px;
     color: #555;
}

/* Listas en 2 columnas */
.ps-list {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 10px 40px;
}

.ps-list.single {
     grid-template-columns: 1fr;
}

.ps-list ul {
     margin: 0;
     padding-left: 18px;
}

.ps-list li {
     margin: 6px 0;
     color: #555;
}

/* Nota verde */
.ps-note {
     margin-top: 16px;
     color: #137b3a;
     font-size: 14px;
     font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
     .ps-list {
          grid-template-columns: 1fr;
     }

     .ps-card {
          margin-top: 12px;
     }
}

/* ===== PRODUCTOS Y SERVICIOS ===== */

/* ===== PRODUCTOS Y SERVICIOS ===== */

#productos-servicios .container {
     max-width: 1100px;
}

/* texto introductorio */
.ps-intro {
     max-width: 900px;
     margin: 10px auto 20px;
     color: #444;
     font-size: 15px;
     line-height: 1.65;
}

/* separación entre bloques */
.ps-row {
     margin-top: 25px;
     margin-bottom: 25px;
}

/* ===== IMAGEN ===== */

.ps-img {
     border-radius: 10px;
     overflow: hidden;
     background: #eee;
     box-shadow: 0 10px 24px rgba(0, 0, 0, 0.07);
     height: 100%;
}

.ps-img img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     display: block;
}

/* ===== TARJETA TEXTO ===== */

.ps-card {
     background: #f4f4f4;
     border-radius: 10px;
     padding: 20px 25px;
     box-shadow: 0 10px 24px rgba(0, 0, 0, 0.07);
     height: 100%;
}

.ps-title {
     font-size: 20px;
     font-weight: 800;
     margin-bottom: 10px;
     letter-spacing: 0.3px;
}

.ps-sub {
     margin-bottom: 10px;
     color: #555;
     font-size: 14px;
}

/* ===== LISTAS ===== */

.ps-list {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 8px 35px;
}

.ps-list.single {
     grid-template-columns: 1fr;
}

.ps-list ul {
     margin: 0;
     padding-left: 18px;
}

.ps-list li {
     margin: 4px 0;
     font-size: 14px;
     color: #555;
}

/* texto verde */
.ps-note {
     margin-top: 12px;
     color: #1a7d3c;
     font-size: 14px;
     font-weight: 600;
}

/* ===== RESPONSIVE ===== */

@media (max-width:768px) {

     .ps-img img {
          height: 220px;
     }

     .ps-list {
          grid-template-columns: 1fr;
     }

     .ps-card {
          margin-top: 15px;
     }

}

/* ===== MISION / VISION / PROPOSITO ===== */
#mvv {
     padding: 60px 0;
}

.mvv-intro {
     max-width: 820px;
     margin: 10px auto 30px;
     color: #555;
     line-height: 1.6;
     font-size: 15px;
}

/* Card */
.mvv-card {
     background: #fff;
     border-radius: 14px;
     padding: 28px 22px;
     box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
     height: 100%;
     transition: 0.25s ease;
     text-align: center;
}

.mvv-card:hover {
     transform: translateY(-6px);
     box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
}

/* Icono */
.mvv-icon {
     width: 150px;
     height: 150px;
     margin: 0 auto 20px;
     display: flex;
     align-items: center;
     justify-content: center;
}

.mvv-icon img {
     width: 130px;
     height: 130px;
     border-radius: 50%;
     object-fit: cover;
     border: 4px solid #e5e5e5;
     background: white;
     padding: 8px;
     transition: 0.3s;
}

.mvv-card:hover .mvv-icon img {
     border-color: #000000;
     transform: scale(1.05);
}

/* Título */
.mvv-title {
     font-size: 22px;
     font-weight: 800;
     margin-bottom: 12px;
     letter-spacing: .5px;
}

/* Texto */
.mvv-text {
     font-size: 14.8px;
     color: #444;
     line-height: 1.75;
     text-align: justify;
     margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
     .mvv-card {
          margin-bottom: 18px;
     }

     .mvv-text {
          text-align: left;
     }
}


#politicas .mvv-card {
     min-height: 320px;
}

#politicas .mvv-text {
     font-size: 15px;
     line-height: 1.7;
     text-align: justify;
}



/* wpp */
.whatsapp-container {
     position: fixed;
     bottom: 25px;
     right: 25px;
     z-index: 9999;
     display: flex;
     align-items: flex-end;
     gap: 12px;
}

.whatsapp-message-box {
     width: 280px;
     background: #ffffff;
     border-radius: 14px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
     padding: 16px;
     position: relative;
}

.close-wpp {
     position: absolute;
     top: 8px;
     right: 10px;
     border: none;
     background: none;
     font-size: 20px;
     line-height: 1;
     cursor: pointer;
     color: #666;
}

.close-wpp:hover {
     color: #000;
}

.wpp-header {
     font-size: 16px;
     font-weight: 700;
     color: #222;
     margin-bottom: 6px;
     padding-right: 20px;
}

.wpp-text {
     font-size: 14px;
     color: #555;
     margin-bottom: 10px;
     line-height: 1.4;
}

.wpp-input {
     width: 100%;
     min-height: 80px;
     border: 1px solid #dcdcdc;
     border-radius: 10px;
     padding: 10px 12px;
     resize: none;
     outline: none;
     font-size: 14px;
     margin-bottom: 10px;
}

.wpp-input:focus {
     border-color: #25D366;
     box-shadow: 0 0 0 3px rgba(37, 211, 102, 0.12);
}

.wpp-send-btn {
     width: 100%;
     border: none;
     background: #25D366;
     color: #fff;
     font-weight: 600;
     border-radius: 10px;
     padding: 10px 14px;
     cursor: pointer;
     transition: 0.3s ease;
}

.wpp-send-btn:hover {
     background: #1ebe5d;
}

.whatsapp-float {
     width: 82px;
     height: 82px;
     background: #25D366;
     color: #fff !important;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 46px;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
     text-decoration: none;
     transition: all 0.3s ease;
     flex-shrink: 0;
}

.whatsapp-float:hover {
     transform: scale(1.08);
     background: #1ebe5d;
}

@media (max-width: 768px) {
     .whatsapp-container {
          right: 15px;
          bottom: 15px;
          gap: 10px;
     }

     .whatsapp-message-box {
          width: 240px;
          padding: 14px;
     }

     .whatsapp-float {
          width: 68px;
          height: 68px;
          font-size: 38px;
     }
}

/* trabaja con nosotros */

.trabaja-tabs {
     display: flex;
     gap: 15px;
     justify-content: center;
     align-items: center;
     flex-wrap: wrap;
     margin-bottom: 30px;
}

.trabaja-tab-btn {
     border: none;
     padding: 14px 28px;
     border-radius: 40px;
     background: #111;
     color: #fff;
     font-size: 16px;
     font-weight: 600;
     cursor: pointer;
     transition: all 0.3s ease;
}

.trabaja-tab-btn:hover,
.trabaja-tab-btn.active {
     background: #d60000;
     color: #fff;
}

.trabaja-seccion {
     margin-top: 10px;
}

.vacante-card {
     background: #fff;
     padding: 30px 25px;
     border-radius: 12px;
     box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
     margin-bottom: 30px;
     height: 100%;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vacante-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
}

.vacante-card h3 {
     font-size: 24px;
     color: #c40000;
     margin-bottom: 15px;
     font-weight: 700;
}

.vacante-card p {
     margin-bottom: 10px;
     color: #444;
     line-height: 1.6;
}

.vacante-btn {
     margin-top: 15px;
     width: 100%;
}

.info-postula {
     background: #fff;
     border-radius: 12px;
     padding: 35px 30px;
     box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
     min-height: 100%;
}

.info-postula h3 {
     color: #111;
     font-weight: 700;
     margin-bottom: 20px;
}

.info-postula p {
     color: #555;
     line-height: 1.8;
     margin-bottom: 15px;
}

.postula-dato {
     margin-top: 20px;
     color: #444;
}

.postula-dato a {
     color: #c40000;
     font-weight: 600;
}

.cv-label {
     display: block;
     font-weight: 600;
     margin-bottom: 8px;
     color: #333;
}

.file-input {
     padding: 12px !important;
}

/* Trabaja con nosotros: quitar espacio excesivo arriba */
#contact.contact {
     padding-top: 40px !important;
     padding-bottom: 60px !important;
     margin-top: 0 !important;
}

/* Ajuste del bloque del título */
#contact .titlepage {
     padding-top: 0 !important;
     margin-top: 0 !important;
     margin-bottom: 25px !important;
}

/* Si la plantilla mete espacio por clase interna */
body.in_page .contact {
     padding-top: 40px !important;
}

/* Opcional: reducir separación entre header y contenido */
.header {
     margin-bottom: 0 !important;
}


/* ===== HEADER FINAL MARISCAL ===== */

.header {
     width: 100%;
     padding: 20px 0;
     background: #fff;
     margin-bottom: 0 !important;
}

/* contenedor ancho */
.header .container,
.header .container-fluid {
     max-width: 100%;
}

/* navbar */
.navigation.navbar {
     float: none !important;
     width: 100%;
     padding: 0 !important;
     display: flex;
     flex-direction: column;
     align-items: center;
}

/* logo superior */
.logo-top {
     text-align: center;
     margin-bottom: 10px;
}

.logo-mariscal {
     height: 42px;
     width: auto;
     display: block;
}

/* colapsable */
.header .navigation.navbar .navbar-collapse {
     width: 100%;
}

/* menú centrado */
.header .navigation.navbar .navbar-nav {
     width: 100%;
     display: flex !important;
     justify-content: center !important;
     align-items: center;
     margin: 0 !important;
     padding: 0 !important;
}

/* items */
.header .navigation.navbar .navbar-nav .nav-item {
     display: flex;
     align-items: center;
}

/* links */
.header .navigation.navbar .navbar-nav .nav-link {
     padding: 0 !important;
     margin: 0 18px !important;
     color: #333333;
     font-size: 15px;
     line-height: 46px;
     font-weight: 500;
     text-transform: uppercase;
     white-space: nowrap;
}

/* hover */
.header .navigation.navbar .navbar-nav .nav-link:hover,
.header .navigation.navbar .navbar-nav .nav-link:focus,
.header .navigation.navbar .navbar-nav .active>.nav-link,
.header .navigation.navbar .navbar-nav .nav-link.active {
     color: #1E3A8A;
}

/* logo mis fotos */
.logo-misfotos {
     height: 11px;
     width: auto;
     max-width: 95px;
     display: block;
}

/* dropdown */
.navbar .dropdown-menu {
     margin-top: 10px;
     border: 0;
     border-radius: 12px;
     padding: 10px 0;
     min-width: 220px;
     box-shadow: 0 14px 35px rgba(0,0,0,0.18);
}

.navbar .dropdown-item {
     padding: 10px 18px;
     font-size: 15px;
     font-weight: 500;
     color: #111;
     transition: 0.2s ease;
}

.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
     background: rgba(0,195,255,0.12);
     color: #007c9c;
}

/* ===== MOBILE ===== */

@media (max-width: 991px) {

.navigation.navbar {
     padding: 10px 0 !important;
}

/* menú desplegable */
.navbar-collapse {
     background: #222;
     padding: 15px 20px;
     margin-top: 10px;
     border-radius: 8px;
     text-align: left;
}

/* menú vertical */
.header .navigation.navbar .navbar-nav {
     display: block !important;
     width: 100%;
     text-align: left;
}

.header .navigation.navbar .navbar-nav .nav-item {
     display: block;
     width: 100%;
}

/* links mobile */
.header .navigation.navbar .navbar-nav .nav-link {
     display: block;
     width: 100%;
     text-align: left;
     padding: 12px 0 !important;
     margin: 0 !important;
     line-height: normal;
     color: #fff !important;
}

/* logo mis fotos mobile */
.logo-misfotos {
     height: 18px;
     width: auto;
     max-width: 100px;
     display: block;
}

/* dropdown mobile */
.navbar .dropdown-menu {
     position: static !important;
     float: none;
     width: 100%;
     min-width: 100%;
     background: #2b2b2b;
     border: none;
     border-radius: 6px;
     box-shadow: none;
     margin-top: 5px;
     padding: 8px 15px;
     transform: none !important;
     opacity: 1 !important;
     visibility: visible !important;
     pointer-events: auto !important;
     display: none;
}

.navbar .dropdown-menu.show {
     display: block;
}

.navbar .dropdown-item {
     color: #fff !important;
     padding: 10px 0;
}

.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus {
     background: transparent;
     color: #00c3ff !important;
}

}

/* centrar logo superior */
.logo-top{
     width:100%;
     text-align:center;
     margin-bottom:12px;
}

/* logo mariscal */
.logo-mariscal{
     height:42px;
     width:auto;
     margin:0 auto;
     display:block;
}

/* ===== COOKIES ===== */
/* ===== COOKIE WALL COMPLETO ===== */
.cookie-wall{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.78);
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.cookie-wall-box{
  width: 100%;
  max-width: 560px;
  background: #fff;
  border-radius: 16px;
  padding: 34px 30px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.28);
  text-align: center;
}

.cookie-wall-box h2{
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 12px;
  padding: 0;
  color: #111;
}

.cookie-wall-box p{
  font-size: 15px;
  line-height: 1.7;
  color: #555;
  margin: 0 0 24px;
}

/* botones principales */
.cookie-wall-buttons{
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.cookie-btn{
  border: none;
  border-radius: 8px;
  padding: 11px 18px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.25s ease;
}

.cookie-btn-primary{
  background: #25D366;
  color: #fff;
}

.cookie-btn-primary:hover{
  background: #1ebe5d;
}

.cookie-btn-light{
  background: #efefef;
  color: #111;
}

.cookie-btn-light:hover{
  background: #e2e2e2;
}

.cookie-btn-outline{
  background: transparent;
  color: #111;
  border: 1px solid #d3d3d3;
}

.cookie-btn-outline:hover{
  background: #f7f7f7;
}

/* modal configuración */
.cookie-modal{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.45);
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.cookie-modal-box{
  width: 100%;
  max-width: 620px;
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.22);
}

.cookie-modal-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.cookie-modal-header h4{
  margin: 0;
  padding: 0;
  font-size: 22px;
  font-weight: 700;
  color: #111;
}

.cookie-close{
  border: none;
  background: transparent;
  font-size: 28px;
  cursor: pointer;
  color: #666;
}

.cookie-option{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 14px 0;
  border-bottom: 1px solid #ececec;
}

.cookie-option strong{
  display: block;
  margin-bottom: 4px;
  color: #111;
}

.cookie-option p{
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.5;
}

.cookie-modal-actions{
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

/* switch */
.cookie-switch{
  position: relative;
  display: inline-block;
  width: 52px;
  height: 28px;
  flex-shrink: 0;
}

.cookie-switch input{
  opacity: 0;
  width: 0;
  height: 0;
}

.cookie-slider{
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: #ccc;
  transition: .3s;
  border-radius: 50px;
}

.cookie-slider:before{
  position: absolute;
  content: "";
  height: 22px;
  width: 22px;
  left: 3px;
  top: 3px;
  background-color: white;
  transition: .3s;
  border-radius: 50%;
}

.cookie-switch input:checked + .cookie-slider{
  background-color: #25D366;
}

.cookie-switch input:checked + .cookie-slider:before{
  transform: translateX(24px);
}

@media (max-width: 768px){
  .cookie-wall-box{
    padding: 26px 20px;
  }

  .cookie-wall-box h2{
    font-size: 24px;
  }

  .cookie-modal-box{
    padding: 20px;
  }

  .cookie-option{
    align-items: flex-start;
  }

  .cookie-modal-actions{
    justify-content: stretch;
  }

  .cookie-modal-actions .cookie-btn,
  .cookie-wall-buttons .cookie-btn{
    width: 100%;
  }
}
.whatsapp-btn {
    background: #25D366;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.whatsapp-btn i {
    color: white;
    font-size: 28px;
}

.file-input {
  display: block !important;
  width: 500px !important;
  margin: 0 auto 25px auto !important;
  height: 58px;
  padding: 10px !important;
  text-align: center;
}

.file-input::-webkit-file-upload-button {
  margin: 0 auto;
}