





/*------------------------------------------------------------------
    IMPORT FONTS
-------------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Catamaran:100,200,300,400,500,600,700,900');

/*------------------------------------------------------------------
    IMPORT FILES
-------------------------------------------------------------------*/

@import url(animate.css);
@import url(font-awesome.min.css);
@import url(magnific-popup.css);
@import url(responsiveslides.css);
@import url(owl.carousel.min.css);
@import url(flaticon.css);

/*------------------------------------------------------------------
    SKELETON
-------------------------------------------------------------------*/





/* ================================================= */
/* === ESTILOS ESPECÍFICOS DEL CARRUSEL PRINCIPAL ===*/
/* ================================================= */

/* --- 1. ESTILOS POR DEFECTO Y MÓVILES (Menos de 992px) --- */

/* Asegura que las imágenes ocupen todo el ancho disponible en pantallas pequeñas
   (Esto complementa la clase 'w-100' de Bootstrap) */
#carouselExampleCaptions .carousel-item img {
    width: 100%; 
    height: auto; 
}


/* --- 2. PERSONALIZACIÓN PARA PANTALLAS GRANDES (PC / Laptop) --- */

/* Media Query: Aplicar reglas solo cuando el ancho de la pantalla sea de 992px o más */
@media (min-width: 992px) {
    
    /* A. Ajuste del ANCHO del CARRUSEL */
    #carouselExampleCaptions {
        /* Define un ancho máximo para el carrusel (ejemplo: 1200px) */
        max-width: 800px; 
        
        /* Centra el carrusel horizontalmente en la pantalla */
        margin-left: auto;
        margin-right: auto;/
    }

    /* B. Ajuste de la ALTURA de las IMÁGENES */
    #carouselExampleCaptions .carousel-item img {
        /* Define la altura máxima deseada (ejemplo: 500px) */
        max-height: 750px; 
        
        /* **CRUCIAL:** Asegura que la imagen mantenga sus proporciones y cubra la altura definida, recortando los lados si es necesario. */
        object-fit: cover; 
    }
}







/* Estilos para el contenedor del carrusel de aliados comerciales */
#marcas-aliados .item {
    padding: 15px; /* Añade un poco de espacio alrededor de cada logo */
    text-align: center; /* Centra la imagen si es más pequeña que el contenedor */
}

/* Estilos para las imágenes de los logos dentro del carrusel */
#marcas-aliados .item img {
    /* Establece un ancho máximo para que no se desborde */
    max-width: 100%; 
    
    /* Define una altura fija (puedes ajustar este valor) */
    /* Por ejemplo, 120px para que sean más grandes que las predeterminadas */
    height: 120px; /* ¡Ajusta esta altura para hacer los logos más grandes! */
    
    /* Asegura que la imagen se ajuste sin distorsionarse */
    object-fit: contain; 
    
    /* Para centrar la imagen verticalmente si el height es menor que el contenedor */
    display: block; 
    margin: 0 auto; 
    
    /* Añade algo de sombra o estilo si lo deseas */
    /* box-shadow: 0 2px 5px rgba(0,0,0,0.1); */
    /* border-radius: 5px; */
}

/* Opcional: Ajustar el tamaño del contenedor si es necesario */
#marcas-aliados .owl-item {
    /* Puedes ajustar la altura mínima de cada slide si los logos son muy grandes */
    min-height: 150px; /* Ajusta esto si los logos de 120px no caben bien */
    display: flex; /* Para centrar verticalmente si se desea */
    align-items: center; /* Centra los logos verticalmente */
    justify-content: center; /* Centra los logos horizontalmente */
}



































/* Estilo de los íconos grandes */
.social-icon {
    font-size: 50px;
    /*font-size: 8rem;  ¡Aumentado! 5rem es un buen tamaño grande */
    margin-bottom: 15px;
}







/* Centrado de las flechas de navegación del Owl Carousel */
.owl-nav {
    /* 1. Habilita Flexbox para alinear los elementos internos */
    display: flex;
    
    /* 2. Centra los botones 'owl-prev' y 'owl-next' horizontalmente */
    justify-content: center;
    
    /* 3. Opcional: Añade un poco de margen superior para separarlo de las imágenes */
    margin-top: 15px; 
}



















/*
 * Centrado Perfecto con !important para anular estilos del slider
 */

/* 1. Contenedor principal del texto: forzamos Flexbox para centrar en X e Y */
.lbox-caption.pogoSlider-slide-element {
    /* Usamos !important para asegurar que Flexbox se aplique */
    display: flex !important; 
    
    /* Centrar horizontalmente */
    justify-content: center !important; 
    
    /* Centrar verticalmente */
    align-items: center !important; 
    
    /* Apilar el h2 y el botón (si lo usas) */
    flex-direction: column !important; 
    
    /* Aseguramos que ocupe todo el espacio del slide */
    width: 100% !important;
    height: 100% !important;
    
    /* Resetear la posición si el slider la está fijando (ej: 'absolute') */
    top: 0 !important;
    left: 0 !important;
}

/* 2. Estilos del Título (h2) */
.titulo-centrado {
    width: 100% !important; 
    text-align: center !important;
    padding: 0 15px !important; 
}

.titulo-centrado h2 {
    color: white !important; 
    font-family: "Canela", Georgia, serif !important; 
    font-weight: bold !important;
    font-size: 4em !important; 
    text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.9) !important; 
    margin: 0 !important; 
    padding: 10px 0 !important;
}

/* 3. Ajuste Responsivo para móviles */
@media (max-width: 768px) {
    .titulo-centrado h2 {
        /* ¡IMPORTANTE! También debes ajustar el tamaño aquí para móviles */
        font-size: 2.5em !important; 
        
        /* <-- CAMBIO APLICADO AQUÍ PARA FORZAR EL COLOR BLANCO EN MÓVILES --> */
        color: white !important; 
    }
}


















body {
    color: #666666;
    font-size: 15px;
    font-family: 'Catamaran', sans-serif;
    line-height: 1.80857;
}


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: 120% !important;
    color: #1f1f1f;
    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
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #212121;
    text-decoration: none!important;
    opacity: 1
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    opacity: .8
}

a {
    color: #1f1f1f;
    text-decoration: none;
    outline: none;
}

a,
.btn {
    text-decoration: none !important;
    outline: none !important;
    -webkit-transition: all 0.5s ease-in-out 0s;
	-moz-transition: all 0.5s ease-in-out 0s;
	-ms-transition: all 0.5s ease-in-out 0s;
	-o-transition: all 0.5s ease-in-out 0s;
	transition: all 0.5s ease-in-out 0s;
}

.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;
}

blockquote {
    margin: 20px 0 20px;
    padding: 30px;
}

ul, li, ol{
	list-style: none;
	margin: 0px;
	padding: 0px;
}
button:focus{
	outline: none;
}

.form-control::-moz-placeholder {
    color: #12557f;
    opacity: 1;
}


/*------------------------------------------------------------------
    LOADER 
-------------------------------------------------------------------*/

#preloader {
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 11000;
    position: fixed;
    display: block;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #ffffff;
}

.loader {
  display: inline-flex;
  flex-wrap: wrap;
  width: 258px;
  height: 229px;
}





#scroll-to-top {
    width: 40px;
    height: 40px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: none;
	font-size: 34px;
    border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	text-align: center;
	line-height: 40px;
	background: #57cef8;
	color: #ffffff;
	padding: 0;
}

/*------------------------------------------------------------------
    HEADER
-------------------------------------------------------------------*/

.main-top{
	background: #12557f;
}
.left-top a{
	display: inline-block;
	color: #ffffff;
	float: left;
	font-size: 14px;
}

.new-btn-d{
	padding: 12px 30px;
	font-weight: 400;
	background: none;
	color: #ffffff;
	-webkit-transition: color 0.3s;
	transition: color 0.3s;
	border-radius: 0;
	border: 1px solid transparent;
	position: relative;
	overflow: hidden;
	z-index: 9;
	text-transform: uppercase;
}

.new-btn-d::before, .new-btn-d::after {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    bottom: 0;
    left: 0;
	top: 100%;
    z-index: -9;
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
        transition-timing-function: ease;
    -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
    transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}

.new-btn-d:hover::before, .new-btn-d:hover::after {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
}

.new-btn-d::before {
    background: rgba(255,255,255,0.2);
}

.new-btn-d::after {
    background: #00cb86;
}
.new-btn-d:hover::after {
    -webkit-transition-delay: 0.175s;
    transition-delay: 0.175s;
}

.new-btn-d.br-2{
	border: 2px solid #ffffff;
}

.mail-b{
	float: left;
}
.mail-b a{
	font-size: 14px;
	color: #ffffff;
	padding: 12px 30px;
	border: 2px solid #ffffff;
}
.mail-b a:hover{
	color: #00cb86;
	border: 2px solid #00cb86;
}

.right-top{
	float: right;
}
.right-top ul{}
.right-top ul li{
	float: left;
}
.right-top ul li a{
	font-size: 27px;
	display: inline-block;
	color: #ffffff;
	padding: 0px 20px;
	border: 2px solid #ffffff;
}
.right-top ul li a:hover{
	background: #00cb86;
	color: #ffffff;
}

.wel-nots{
	float: right;
	margin-left: 20px;
}
.wel-nots p{
	font-size: 16px;
	color: #ffffff;
	padding: 12px 0px;
	margin: 0px;
}


.top-header .navbar{
	padding: 5px 0px;
}

.top-header{
	background: #ffffff;
	position: relative;
	top: 0px;
	left: 0px;
	width: 100%;
	margin: 0 auto;
	z-index: 20;
}

.top-header .navbar .navbar-collapse ul li a{
	text-transform: uppercase;
	font-size: 14px;
	padding: 10px 15px;
	position: relative;
	font-weight: 500;
}



.top-header .navbar .navbar-collapse ul li a.active{
	background: #00cb86;
	color: #ffffff;
	-webkit-transition: all 0.5s ease-in-out 0s;
	-moz-transition: all 0.5s ease-in-out 0s;
	-ms-transition: all 0.5s ease-in-out 0s;
	-o-transition: all 0.5s ease-in-out 0s;
	transition: all 0.5s ease-in-out 0s;
}
.top-header .navbar .navbar-collapse ul li a.active::after{
	width: 20px;
	height: 20px;
	content: "";
	float: left;
	position: absolute;
	bottom: -8px;
	left: 0;
	right: 0;
	margin: auto;
	background: url(../images/menu-arrow.png) no-repeat center;
	border-radius: 10px;
	transition: ease all 0.3s;
	transform: translateY(0%) rotate(140deg);
	-webkit-transform: translateY(0%) rotate(140deg);
	-o-transform: translateY(0%) rotate(140deg);
	-ms-transform: translateY(0%) rotate(140deg);
	-moz-transform: translateY(0%) rotate(140deg);
	-webkit-transition: all 0.5s ease-in-out 0s;
	-moz-transition: all 0.5s ease-in-out 0s;
	-ms-transition: all 0.5s ease-in-out 0s;
	-o-transition: all 0.5s ease-in-out 0s;
	transition: all 0.5s ease-in-out 0s;
}
.top-header .navbar .navbar-collapse ul li a:hover{
	background: #00cb86;
	color: #ffffff;
}


.top-header.fixed-menu{
	width: 100%;
	position: fixed;
	box-shadow: 0px 3px 6px 3px rgba(0, 0, 0, 0.06);
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	background: #fff;
	z-index: 20;
}

.navbar-toggler{
	border: 1px solid #57cef8 ;
	border-radius: 0;
	margin: 16px 15px;
	padding: 10px 10px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.navbar-toggler span{
	background: #333333;
	display: block;
	width: 25px;
	height: 2px;
	margin: 0 auto;
		margin-top: 0px;
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.navbar-toggler span + span{
	margin-top: 5px;
}

.navbar-toggler:hover{
	border: 1px solid #00cb86;
}

.navbar-toggler:hover span{
	background: #00cb86;
}





/*------------------------------------------------------------------
  Banner
-------------------------------------------------------------------*/

/* AJUSTE 1: CLASES PRINCIPALES PARA ALTURA TOTAL (PC) */
.ulockd-home-slider, 
.home-slider {
	position: relative;
	width: 100%;
	/* Altura para PC: 110% de la ventana (110vh) */
	height: 110vh; 
}

/* AJUSTE 2: ESTILO DE IMAGEN DE FONDO */
.pogoSlider-slide {
    width: 80%;
    height: 100%;
    
    /* ðŸ”¥ AJUSTE CLAVE: Usar 'cover' para que la imagen llene el espacio y no se vea recortada */
    background-size: cover;        /* ANTES: contain; */
    
    background-repeat: no-repeat; 
    background-position: center center; 
    /* Fondo para rellenar las bandas vacÃ­as (si se recorta, el color negro serÃ¡ el fondo) */
    background-color: #000000; 
}

/* ... (Resto de estilos del .lbox-caption y .lbox-details para PC se mantienen igual) ... */

---

/*------------------------------------------------------------------
  AJUSTES RESPONSIVOS (MÃ“VILES)
-------------------------------------------------------------------*/

/*------------------------------------------------------------------
  AJUSTES RESPONSIVOS (MÃ“VILES) - GalerÃ­a de ImÃ¡genes
-------------------------------------------------------------------*/

@media (max-width: 768px) {
    
    /* 1. Contenedor de la lista (UL) - Habilitar Flexbox y Deslizamiento Horizontal */
    #banner {
        display: flex; /* Coloca los elementos LI en lÃ­nea (horizontal) */
        overflow-x: auto; /* Permite el deslizamiento horizontal si el contenido excede el ancho */
        white-space: nowrap; /* Evita que los LI salten a una nueva lÃ­nea */
        padding: 0; /* Asegura que no haya padding que pueda causar problemas de ancho */
        margin: 0;
        list-style: none; /* Elimina los puntos de la lista */
    }

    /* 2. Elementos de la lista (LI) - Definir el ancho de cada imagen */
    #banner li {
        flex: 0 0 85%; /* No crece (0), No se encoge (0), Ancho base del 85% del contenedor visible */
        margin-right: 15px; /* Espacio entre cada imagen */
        display: inline-block; /* Alternativa para mejor compatibilidad de deslizamiento */
    }

    /* 3. Las imÃ¡genes (IMG) dentro del LI */
    #banner li img {
        width: 100%; /* La imagen ocupa todo el ancho definido por el LI (85%) */
        height: auto; /* Mantiene la proporciÃ³n de la imagen */
        display: block;
    }
    
    /* Opcional: Ocultar la barra de desplazamiento horizontal en navegadores */
    #banner::-webkit-scrollbar {
        display: none;
    }
}


/*------------------------------------------------------------------
    About
-------------------------------------------------------------------*/

.tooltip-1 {
	display: inline-block;
	position: relative;
	color: #00cb86;
	opacity: 1;
}

.tooltip__wave {
	width: 30%;
	height: 20px;
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0px;
	margin: 0 auto;
	overflow: hidden;
}

.tooltip__wave span {
	position: absolute;
	left: -100%;
	width: 200%;
	height: 100%;
	background: url(../images/wave.svg) repeat-x center center;
	background-size: 50% auto;
}


.about-box{
	padding: 70px 0px;
}

.title-box{
	text-align: center;
	margin-bottom: 30px;
}
.title-box h2{
	font-size: 42px;
	font-family: 'Catamaran', sans-serif;
	color: #222222;
	font-weight: 500;
	position: relative;
	padding-bottom: 30px;
	margin-bottom: 15px;
}

.title-box h2::after{
	content: "";
	position: absolute;
	background: url(../images/tag-line.png)no-repeat center;
	width: 120px;
	height: 20px;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.title-box h2 span{
	color: #00cb86;
	text-decoration: underline;
}
.about-main-info h2{
	font-size: 40px;
	font-family: 'Catamaran', sans-serif;
}
.about-main-info h2 span{
	color: #00cb86;
	text-decoration: underline;
}
.about-main-info{
	margin-bottom: 30px;
}

.about-m{
	border: 2px solid #00cb86;
	box-shadow: 0 10px 25px 0 rgba(0,0,40,.2);
}

.about-m ul#banner {
  position: relative;
  width: 100%;
  height: 450px;
  overflow: hidden;
  margin: 0 auto;
}

.about-m ul#banner li {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
}

.about-m ul#banner li img { 
	visibility: hidden; 
	width: 100%;
}

.about-m ul#banner li canvas {
  position: absolute;
  top: 0;
  left: 0;
}


.about-img{
	padding: 30px 0px;
}

.about-img img{
	border-radius: 10px;
}

.about-m ul{
	display: block;
	text-align: center;
	padding-bottom: 30px;
}
.about-m ul li{
	display: inline-block;
	text-align: center;
}
.about-m ul li a{
	background: #528780;
	color: #ffffff;
	width: 38px;
	height: 38px;
	text-align: center;
	line-height: 38px;
	display: block;
	border-radius: 50px;
	margin: 0px 5px;
}

.about-m ul li a:hover{
	background: #333333;
	color: #ffffff;
}

.about-main-info h2{
	font-size: 32px;
	color: #333333;
	font-weight: 500;
}

.about-main-info a{
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 24px;
}

.about-main-info a.new-btn-d.br-2{
	border: 2px solid #12557f;
}

.about-main-info a.new-btn-d::before{
	background: rgba(18,85,127,0.2);
}

.about-main-info a:hover{
	color: #ffffff;
}

.hvr-radial-out{
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	position: relative;
	overflow: hidden;
	background: #e1e1e1;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.hvr-radial-out::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #333333;
    border-radius: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.hvr-radial-out:hover::before, .hvr-radial-out:focus::before, .hvr-radial-out:active::before {
    -webkit-transform: scale(2);
    transform: scale(2);
}


/*------------------------------------------------------------------
    Services
-------------------------------------------------------------------*/

.services-box{
	padding: 70px 0px;
	background-color: #f2f3f5;
}

.serviceBox img {
    /* **Ajusta estas dimensiones (ancho/alto) segÃºn el tamaÃ±o que necesites** */
    width: 100%;    /* Ocupa el ancho completo del contenedor serviceBox */
    /*max-width: 150px; /* Limita el tamaÃ±o mÃ¡ximo del ancho de la imagen */
    height: 100%;  /* Altura fija deseada */
    
    /* Mantiene las proporciones de la imagen y la ajusta dentro del Ã¡rea definida */
    object-fit: contain; 
    
    /* Centra la imagen horizontalmente */
    display: block;
    margin: 0 auto;
}




.serviceBox{
    padding: 35px 20px 25px;
    border: 1px solid #16567f;
    text-align: center;
    position: relative;
    transition: all 0.3s ease 0s;
}
.serviceBox:hover{ border-color: #00cb86 ; }
.serviceBox:before{
    content: "";
    border-top: 20px solid #16567f;
    border-left: 20px solid transparent;
    border-bottom: 20px solid transparent;
    position: absolute;
    top: 7px;
    right: 7px;
    transition: all 0.3s ease 0s;
}
.serviceBox:hover:before{ border-top-color: #00cb86 ; }
.serviceBox .service-icon{
    display: inline-block;
    width: 80px;
    height: 80px;
    line-height: 80px;
    font-size: 30px;
    color: #064774;
    margin-bottom: 35px;
    z-index: 1;
    position: relative;
    transition:all 0.3s ease 0s;
}
.serviceBox:hover .service-icon{ color: #fff; }
.serviceBox .service-icon:before{
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 3px;
    border: 1px solid #16567f;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transform: rotate(45deg);
    transition: all 0.3s ease 0s;
}
.serviceBox:hover .service-icon:before{
    border-color: #00cb86 ;
    background: #00cb86 ;
}
.serviceBox .title{
    font-size: 20px;
    font-weight: 700;
    color: #064774;
    text-transform: capitalize;
    margin: 0 0 15px 0;
	padding: 0;
}
.serviceBox .description{
    font-size: 15px;
    color: #999;
    line-height: 27px;
    margin: 0 0 10px 0;
}
@media only screen and (max-width:990px){
    .serviceBox{ margin-bottom: 30px; }
}

.serviceBox a{
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 12px;
}

.serviceBox a.new-btn-d.br-2{
	border: 2px solid #12557f;
}
.serviceBox a:hover{
	color: #ffffff;
}
.serviceBox a.new-btn-d::before {
    background: rgba(18,85,127,0.2);
}
.services-box .owl-carousel{
	text-align: center;
}
.services-box .owl-carousel .owl-nav{
	display: inline-block;
	margin: 0 auto;
	margin-top: 20px;
}
.services-box .owl-carousel .owl-nav .owl-prev{
	border: 2px solid #12557f;
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px !important;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 12px;
	font-size: 34px;
	margin: 0 10px;
}
.services-box .owl-carousel .owl-nav .owl-prev:hover{
	background: #00cb86;
	color: #ffffff;
}
.services-box .owl-carousel .owl-nav .owl-next{
	border: 2px solid #12557f;
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px !important;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 12px;
	font-size: 34px;
	margin: 0 10px;
}
.services-box .owl-carousel .owl-nav .owl-next:hover{
	background: #00cb86;
	color: #ffffff;
}

/*------------------------------------------------------------------
    Appointment
-------------------------------------------------------------------*/

.appointment-main{
	padding: 70px 0px;
	position: relative;
}

.well-block{}
.well-block .well-title h2{
	font-size: 32px;
	font-weight: 600;
	padding-bottom: 20px;
}

.well-block form .form-group .control-label{
	font-size: 16px;
}
.well-block form .form-group .form-control {
	min-height: 60px;
	min-height: 50px;
	padding: 0px 15px;
	border-radius: 0;
	color: #12557f;
	border: 1px solid #12557f;
}
.well-block form .form-group .form-control:focus{
	box-shadow: none;
}

.well-block form .form-group button{
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 24px;
	cursor: pointer;
}
.well-block form .form-group button.new-btn-d.br-2 {
    border: 2px solid #12557f;
}
.well-block form .form-group button.new-btn-d::before {
    background: rgba(18,85,127,0.2);
}

.feature-block .feature-title{
	font-size: 20px;
}

.well-block form .form-group button:hover{
	color: #ffffff;
}


/*------------------------------------------------------------------
    Gallery
-------------------------------------------------------------------*/

.gallery-box{
	padding: 70px 0px;
}

.box-gallery{
    text-align: center;
    box-shadow: 0 0 5px #7e7d7d;
    position: relative;
	margin-bottom: 30px;
}
.box-gallery img{
    width: 100%;
    height: auto;
}
.box-gallery .box-content{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: all 0.5s ease 0s;
}
.box-gallery:hover .box-content{
    background-color: rgba(255, 242, 242, 0.8);
}
.box-gallery .box-content:before,
.box-gallery .box-content:after{
    content: "";
    width: 50px;
    height: 50px;
    position: absolute;
    opacity: 0;
    transform: scale(1.5);
    transition: all 0.6s ease 0.3s;
}
.box-gallery .box-content:before{
    border-left: 2px solid #00cb86;
    border-top: 2px solid #00cb86;
    top: 19px;
    left: 19px;
}
.box-gallery .box-content:after{
    border-bottom: 2px solid #00cb86;
    border-right: 2px solid #00cb86;
    bottom: 19px;
    right: 19px;
}
.box-gallery:hover .box-content:before,
.box-gallery:hover .box-content:after{
    opacity: 1;
    transform: scale(1);
}
.box-gallery .title{
    font-size: 22px;
    color: #333333;
    margin: 0;
    position: relative;
    top: 0;
    opacity: 0;
    transition: all 1s ease 0.01s;
}
.box-gallery:hover .title{
    top: 32%;
    opacity: 1;
    transition: all 0.5s cubic-bezier(1, -0.53, 0.405, 1.425) 0.01s;
}
.box-gallery .title:after{
    content: "";
    width: 0;
    height: 2px;
    background: #00cb86;
    position: absolute;
    bottom: -8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transition: all 1s ease 0s;
}
.box-gallery:hover .title:after{
    width: 80%;
    transition: all 1s ease 0.8s;
}
.box-gallery .icon{
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    opacity: 0;
    transition-duration: 0.6s;
    transition-timing-function: cubic-bezier(1, -0.53, 0.405, 1.425);
    transition-delay: 0.1s;
}
.box-gallery:hover .icon{
    bottom: 32%;
    opacity: 1;
}
.box-gallery .icon li{
    display: inline-block;
}
.box-gallery .icon li a{
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    font-size: 18px;
    color: #000;
    border: 2px solid #12557f;
    margin-right: 5px;
    transition: all 0.3s ease-in-out 0s;
}
.box-gallery .icon li a:hover{
    background: #00cb86;
    color: #fff;
}
@media only screen and (max-width:990px){
    .box-gallery{ margin-bottom: 30px; }
}


/*------------------------------------------------------------------
    Team
-------------------------------------------------------------------*/

.team-box{
	padding: 70px 0px;
}

.our-team{
    text-align: center;
    overflow: hidden;
    position: relative;
    z-index: 1;
}
.our-team:before,
.our-team:after{
    content: "";
    width: 130px;
    height: 130px;
    background: #12557f;
    position: absolute;
	border-radius: 50%;
    z-index: -1;
}
.our-team:before{
    top: 0px;
    left: 0;
}
.our-team:after{
    bottom: 0px;
    right: 0;
}
.our-team .pic{
    margin: 8px;
    position: relative;
    border: 3px solid #00cb86;
    transition: all 0.5s ease 0s;
}
.our-team:hover .pic{
    border-color: #12557f;
}
.our-team .pic:after{
    content: "";
    width: 100%;
    height: 0;
    background: #00cb86;
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transform-origin: 0 0 0;
    transition: all 0.5s ease 0s;
}
.our-team:hover .pic:after{
    height: 100%;
    opacity: 0.85;
}
.our-team img{
    width: 100%;
    height: auto;
}
.our-team .team-content{
    width: 100%;
    position: absolute;
    bottom: -50%;
    left: 0;
    transition: all 0.5s ease 0.2s;
}
.our-team:hover .team-content{
    bottom: 38%;
}
.our-team .title{
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    text-transform: capitalize;
    margin: 0px;
}
.our-team .post{
    font-size: 14px;
    color: #fff;
    line-height: 26px;
    text-transform: capitalize;
}
.our-team .social{
    padding: 0;
    margin: 40px 0 0 0;
    list-style: none;
}
.our-team .social li{
    display: inline-block;
}
.our-team .social li a{
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    border-radius: 50%;
    border: 1px solid #fff;
    font-size: 18px;
    color: #fff;
    margin: 0 7px;
    transition: all 0.5s ease 0s;
}
.our-team .social li a:hover{
    background: #fff;
    color: #12557f;
}
@media only screen and (max-width: 990px){
    .our-team{ margin-bottom: 30px; }
}




/*------------------------------------------------------------------
    Blog
-------------------------------------------------------------------*/

.blog-box{
	padding: 70px 0px;
	background-color: #f2f3f5;
}
.blog-inner{
	background: #ffffff;
	text-align: center;
	margin-bottom: 30px;
	border: 10px solid #fff;
	box-shadow: 0 2px 5px rgba(0,0,0,.1);
}

.blog-img{
	overflow: hidden;
}
.blog-img img{
	transition: all 0.9s ease 0s;
}
.blog-inner:hover .blog-img img{
	-moz-transform: scale(1.5) rotate(-10deg);
	-webkit-transform: scale(1.5) rotate(-10deg);
	-ms-transform: scale(1.5) rotate(-10deg);
	-o-transform: scale(1.5) rotate(-10deg);
	transform: scale(1.5) rotate(-10deg);
}
.blog-inner a{
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px;
	background: #ffffff;
	color: #12557f;
	font-size: 14px;
	display: inline-block;
	line-height: 24px;
}

.blog-inner a.new-btn-d.br-2{
	border: 2px solid #12557f;
}

.blog-inner a.new-btn-d::before{
	background: rgba(18,85,127,0.2);
}


.blog-inner a:hover{
	color: #ffffff;
}

.blog-inner .item-meta{
	background: #12557f;
}
.blog-inner .item-meta a{
	background: #12557f;
	color: #ffffff;
	display: inline-block;
	border: none;
}
.blog-inner .item-meta span{
	color: #ffffff;
	background: #00cb86;
	display: inline-block;
	padding: 5px;
}

.blog-inner h2{
	margin-top: 20px;
}


/*------------------------------------------------------------------
  Contact
-------------------------------------------------------------------*/

.contact-box{
	padding: 70px 0px;
}

.left-contact{
	margin-top: 60px;
}
/* ... (Se mantienen otros estilos de .left-contact, .cont-line, etc.) ... */
.icon-b{
	width: 80px;
	height: 80px;
	text-align: center;
	line-height: 80px;
	font-size: 40px;
	border: 2px dotted #12557f;
	margin-right: 10px;
	color: #00cb86;
	border-radius: 50%;
}

.dit-right h4{
	font-size: 18px;
	color: #333333;
	font-weight: 600;
	padding-bottom: 0;
}
/* ... (Se mantienen otros estilos de .dit-right) ... */

.contact-block{
    /* ðŸ”¥ AJUSTE: Quitamos el background-color, padding y border-radius que habÃ­amos aÃ±adido. */
    /* Lo dejamos vacÃ­o o si quieres algÃºn estilo base, aÃ±Ã¡delo aquÃ­ (ej. un borde o sombra sutil). */
}

.contact-block .form-group .form-control{
	/* ðŸ”¥ AJUSTE: Aplicamos el color Verde/Oliva al fondo de los inputs. */
	background: rgb(145, 192, 33); 
	height: 45px;
	font-size: 16px;
	border: 0;
	/* El color del texto es blanco para que contraste con el fondo. */
	color: #ffffff; 
	padding: 6px 15px;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
	border-radius: 4px;
}

.contact-block .form-group textarea.form-control{
    /* El textarea tambiÃ©n tomarÃ¡ el color verde de la regla anterior. */
	height: 150px;
	padding-top: 15px;
}

.submit-button .btn-common{
    /* ðŸ”¥ AJUSTE: El botÃ³n de enviar mantiene el color Verde/Oliva. */
	background-color: rgb(145, 192, 33);
	height: 45px;
	line-height: 45px;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	padding: 0 15px;
	border: 0;
	outline: 0;
	text-transform: uppercase;
	border-radius: 0px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.submit-button .btn-common:hover{
    /* Mantenemos un color de hover para el botÃ³n (puedes ajustarlo si deseas). */
	background-color: #528780; 
}

/* ... (Se mantienen otros estilos como .custom-select, .help-block, .footer-box, etc.) ... */



/*------------------------------------------------------------------
    Subscribe
-------------------------------------------------------------------*/

.subscribe-box{
	padding: 70px 0px;
	background: url(../images/footer-bg.jpg) no-repeat center;
	background-size: cover;
	position: relative;
}

.subscribe-box::before{
	content: "";
	background: rgba(0,0,0,0.8);
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	position: absolute;
}

.subscribe-inner{
	max-width: 500px;
	width: 100%;
	margin: 0 auto;
}
.subscribe-inner h2{	
	font-size: 28px;
	font-weight: 600;
	color: #ffffff;
}

.subscribe-inner p{
	color: #cccccc;
}

.subscribe-inner .form-group .form-control-1{
	width: 100%;
	padding: 12px 15px;
	border-radius: 0px;
	border: none;
}

.subscribe-inner .form-group button{	
	letter-spacing: 1px;
	border-radius: 2px;
	transition: .2s;
	letter-spacing: 1px;
	padding: 10px 18px;
	background: #ffffff;
	color: #12557f;
	display: inline-block;
	line-height: 24px;
	border: none;
	cursor: pointer;
}

.subscribe-inner .form-group button.new-btn-d.br-2 {
    border: 2px solid #12557f;
}
.subscribe-inner .form-group button.new-btn-d::before{
	background: rgba(18,85,127,0.2);
}

.subscribe-inner .form-group button:hover {
	color: #ffffff;
}





























