﻿ /* Css For Immigratie */

 /************ TABLE OF CONTENTS ***************
1. Fonts
2. Reset
3. Global
4. Main Header/style-one/style-two
5. Main Slider/style-one/style-two
6. Intro Section
7. Welcome Section
9. Cta Section
8. Research Fields
10. Testimonial Section
11. Researches Section
12. Team Section
14. Video
15. Fact Counter
16. News Section
19. Clients Section
20. Main Footer
21. Footer Bottom
22. Research Style Two
23. Innovative Solution
24. Discover Section
25. Testimonial Section
26. Chooseus Section
27. News Style Two
28. Page Title
29. Research Page Section
30. Research Details
31. Professor Page Section
32. Professor Details
33. About Section
34. Error Section
35. Blog Page Section
36. Blog Details
37. Blog Sidebar
38. Contact Section
39. Google Map


**********************************************/



 /*** 

====================================================================
  Reset
====================================================================

 ***/
 * {
   margin: 0px;
   padding: 0px;
   border: none;
   outline: none;
 }


 /*** 

====================================================================
  Global Settings
====================================================================

 ***/


 :root {
   --main-color: #0A1828;
   /* Azul Muy Oscuro (logo area, sticky) */
   --navy-top: #1A3560;
   /* Azul Medio (header superior)        */
   --navy-mid: #0A1828;
   /* Alias — header inferior/nav         */
   --secondary-color: #C9A96E;
   /* Oro Cálido                          */
   --gold-dark: #0A1828;
   /* Hover botón = fondo actual          */
   --text-color: #888888;
   --text-muted: #B8C4D4;
   /* Texto secundario     */
   --title-color: #0A1828;
   --white-color: #ffffff;
   --heebo: 'Heebo', sans-serif;
   --maven: 'Maven Pro', sans-serif;
 }

 /* //////////////////////// */

 /* Estilos para el overlay del modal */
 .modal-overlay {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: rgba(0, 0, 0, 0.7);
   /* Fondo oscuro semitransparente */
   display: flex;
   justify-content: center;
   align-items: center;
   z-index: 9999;
   /* Asegura que esté por encima de otros elementos */
   overflow-y: auto;
   /* Permite desplazamiento si el contenido es grande */
 }

 /* Contenedor que centra el formulario */
 .modal-content-wrapper {
   position: relative;
   max-width: 800px;
   /* Ancho máximo para el modal */
   width: 95%;
   margin: 50px auto;
   /* Espacio superior/inferior si se desplaza */
   padding: 20px;
   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
 }

 /* Aplicar el estilo de fondo blanco del form-box (si aplica) */
 .appointment-form-box {
   background-color: #ffffff;
   /* Ajusta al color de fondo de tu tema */
   padding: 50px;
   /* Ajusta el padding según tus clases */
   position: relative;
   border-radius: 8px;
   /* O el borde que use tu tema */
 }

 /* Estilo para el botón de cerrar */
 .close-modal-btn {
   position: absolute;
   top: 15px;
   right: 25px;
   font-size: 30px;
   font-weight: bold;
   color: #333;
   /* Color del texto */
   background: none;
   border: none;
   cursor: pointer;
   line-height: 1;
 }

 /* Estilo para el campo select para que se vea bien */
 .custom-select-style {
   display: block;
   width: 100%;
   height: 60px;
   /* Ajustar a la altura de los input del tema */
   background: #fff;
   color: #333;
   /* O el color de texto de tu tema */
   font-size: 16px;
   padding: 0 30px;
   line-height: 60px;
   border: 1px solid #e5e5e5;
   /* O el borde de tu tema */
   border-radius: 0;
   appearance: none;
   /* Oculta el estilo nativo de la flecha */
   -webkit-appearance: none;
   -moz-appearance: none;
 }

 /* Sugerencia: Puedes añadir una flecha personalizada con CSS o JavaScript */


 body {
   font-size: 16px;
   color: var(--text-color);
   line-height: 29px;
   font-weight: 400;
   background: #ffffff;
   font-family: var(--heebo);
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center top;
   -webkit-font-smoothing: antialiased;
 }

 @media (min-width:1200px) {
   .container {
     max-width: 1200px;
     padding: 0px 15px;
   }
 }

 .large-container {
   max-width: 1550px;
   padding: 0px 15px;
   margin: 0 auto;
 }

 .container-fluid {
   padding: 0px;
 }

 .auto-container {
   position: static;
   max-width: 1450px;
   padding: 0px 15px;
   margin: 0 auto;
 }

 .small-container {
   max-width: 680px;
   margin: 0 auto;
 }

 .boxed_wrapper {
   position: relative;
   margin: 0 auto;
   overflow: hidden !important;
   width: 100%;
   min-width: 300px;
 }


 a {
   text-decoration: none;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 a:hover {
   text-decoration: none;
   outline: none;
 }

 input,
 button,
 select,
 textarea {
   font-family: var(--heebo);
   font-weight: 400;
   font-size: 16px;
   background: transparent;
 }

 ::-webkit-input-placeholder {
   color: inherit;
 }

 ::-moz-input-placeholder {
   color: inherit;
 }

 ::-ms-input-placeholder {
   color: inherit;
 }

 ul,
 li {
   list-style: none;
   padding: 0px;
   margin: 0px;
 }

 input {
   transition: all 500ms ease;
 }

 button:focus,
 input:focus,
 textarea:focus {
   outline: none;
   box-shadow: none;
   transition: all 500ms ease;
 }

 p {
   position: relative;
   font-family: var(--heebo);
   color: var(--text-color);
   font-weight: 400;
   margin: 0px;
   transition: all 500ms ease;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
   position: relative;
   font-family: var(--maven);
   font-weight: 400;
   color: var(--title-color);
   margin: 0px;
   transition: all 500ms ease;
 }

 /* Preloader */

 .handle-preloader {
   align-items: center;
   -webkit-align-items: center;
   display: flex;
   display: -ms-flexbox;
   height: 100%;
   justify-content: center;
   -webkit-justify-content: center;
   position: fixed;
   background: var(--main-color);
   left: 0;
   top: 0;
   width: 100%;
   z-index: 9999999;
 }

 .preloader-close {
   position: fixed;
   z-index: 99999999;
   font-size: 26px;
   background: var(--white-color);
   color: var(--main-color);
   width: 40px;
   height: 40px;
   line-height: 36px;
   text-align: center;
   border-radius: 50%;
   cursor: pointer;
   right: 30px;
   top: 30px;
 }

 .handle-preloader .animation-preloader {
   position: absolute;
   z-index: 100;
 }

 .handle-preloader .animation-preloader .spinner {
   animation: spinner 1s infinite linear;
   border-radius: 50%;
   height: 150px;
   margin: 0 auto 45px auto;
   width: 150px;
 }

 .handle-preloader .animation-preloader .txt-loading {
   text-align: center;
   user-select: none;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:before {
   animation: letters-loading 4s infinite;
   content: attr(data-text-preloader);
   left: 0;
   opacity: 0;
   top: 0;
   position: absolute;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading {
   font-family: var(--maven);
   font-weight: 500;
   letter-spacing: 15px;
   display: inline-block;
   position: relative;
   font-size: 70px;
   line-height: 70px;
   text-transform: uppercase;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(2):before {
   animation-delay: 0.2s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(3):before {
   animation-delay: 0.4s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(4):before {
   animation-delay: 0.6s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(5):before {
   animation-delay: 0.8s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(6):before {
   animation-delay: 1s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(7):before {
   animation-delay: 1.2s;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(8):before {
   animation-delay: 1.4s;
 }

 .handle-preloader .loader-section {
   background-color: #ffffff;
   height: 100%;
   position: fixed;
   top: 0;
   width: calc(50% + 1px);
 }

 .preloader .loaded .animation-preloader {
   opacity: 0;
   transition: 0.3s ease-out;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading {
   color: #ffffff;
 }

 .handle-preloader .animation-preloader .txt-loading .letters-loading:before {
   color: #ffffff;
 }

 .handle-preloader .animation-preloader .spinner {
   border: 3px solid #ffffff;
   border-top-color: rgba(255, 255, 255, 0.5);
 }

 /* AnimaciÃ³n del preloader */
 @keyframes spinner {
   to {
     transform: rotateZ(360deg);
   }
 }

 @keyframes letters-loading {

   0%,
   75%,
   100% {
     opacity: 0;
     transform: rotateY(-90deg);
   }

   25%,
   50% {
     opacity: 1;
     transform: rotateY(0deg);
   }
 }

 @media screen and (max-width: 767px) {
   .handle-preloader .animation-preloader .spinner {
     height: 8em;
     width: 8em;
   }
 }

 @media screen and (max-width: 500px) {
   .handle-preloader .animation-preloader .txt-loading .letters-loading {
     font-size: 40px;
     letter-spacing: 0px;
   }
 }


 .centred {
   text-align: center;
 }

 .pull-left {
   float: left;
 }

 .pull-right {
   float: right;
 }


 figure {
   margin: 0px;
 }

 img {
   display: inline-block;
   max-width: 100%;
   height: auto;
   transition-delay: .1s;
   transition-timing-function: ease-in-out;
   transition-duration: .7s;
   transition-property: all;
 }

 /** button **/


 .theme-btn {
   position: relative;
   display: inline-block;
   overflow: hidden;
   vertical-align: middle;
   font-size: 18px;
   line-height: 28px;
   font-weight: 700;
   text-align: center;
   padding: 20.5px 57px;
   text-transform: capitalize;
   font-family: var(--heebo);
   color: #0A1828 !important;
   /* texto oscuro sobre fondo dorado */
   background: #C9A96E;
   /* fondo dorado */
   z-index: 1;
   transition: all 500ms ease;
 }

 .theme-btn span {
   position: relative;
   padding-right: 20px;
 }

 .theme-btn span:before {
   position: absolute;
   content: '\e908';
   font-family: 'icomoon';
   font-size: 14px;
   top: 0px;
   right: 0px;
 }

 /* Hover: rellena con el fondo actual (azul oscuro) */
 .theme-btn:hover {
   box-shadow: inset 0 0 0 2em #0A1828;
   color: #C9A96E !important;
   /* texto dorado sobre fondo oscuro */
 }

 /* btn-two — mismo criterio dorado */
 .theme-btn.btn-two {
   background: #C9A96E;
   color: #0A1828 !important;
 }

 .theme-btn.btn-two:hover {
   box-shadow: inset 0 0 0 2em #0A1828;
   color: #C9A96E !important;
 }



 .row {
   --bs-gutter-x: 30px;
 }

 .pagination {
   position: relative;
   display: block;
 }

 .pagination li {
   position: relative;
   display: inline-block;
   margin-right: 7px;
 }

 .pagination li:last-child {
   margin: 0px !important;
 }

 .pagination li a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   font-weight: 700;
   height: 50px;
   width: 50px;
   line-height: 50px;
   background: #ffffff;
   font-family: var(--heebo);
   border: 1px solid #004274;
   text-align: center;
   color: var(--main-color);
   z-index: 1;
   transition: all 500ms ease;
 }

 .pagination li a:hover,
 .pagination li a.current {
   color: var(--white-color);
   background: var(--main-color);
   border-color: var(--main-color);
 }

 .sec-pad {
   padding: 145px 0px 150px 0px;
 }

 .mr-0 {
   margin: 0px !important;
 }

 /** scroll-to-top **/

 .scroll-to-top {
   position: fixed;
   right: 0px;
   bottom: 100px;
   transform: rotate(90deg);
   z-index: 99;
 }

 .scroll-to-top .visible {
   visibility: visible !important;
   opacity: 1 !important;
 }

 .scroll-to-top .scroll-top-inner {
   opacity: 0;
   visibility: hidden;
 }

 .scroll-to-top .scroll-top-inner {
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -webkit-align-items: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-transition: all cubic-bezier(.4, 0, .2, 1) .4s;
   -o-transition: all cubic-bezier(.4, 0, .2, 1) .4s;
   transition: all cubic-bezier(.4, 0, .2, 1) .4s;
 }

 .scroll-to-top .scroll-bar {
   width: 50px;
   height: 2px;
   margin-right: 10px;
   position: relative;
 }

 .scroll-to-top .scroll-bar:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   height: 100%;
   width: 100%;
   background: red;
 }

 .scroll-to-top .scroll-bar .bar-inner {
   position: absolute;
   top: 0;
   right: 0;
   height: 100%;
   background-color: black;
 }

 .scroll-to-top .scroll-bar-text {
   font-size: 14px;
   font-weight: 600;
   cursor: pointer;
   color: red;
   transition: all 500ms ease;
 }

 .scroll-to-top .scroll-bar-text:hover {
   transform: scale(1.1);
 }



 @-webkit-keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }

 @keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }

 @-webkit-keyframes diagonal-slide {
   from {
     top: 0;
     left: 0;
     animation-timing-function: linear;
   }

   20% {
     top: -5px;
     left: -5px;
     animation-timing-function: linear;
   }

   40% {
     top: 5px;
     left: -5px;
     animation-timing-function: linear;
   }

   60% {
     top: 5px;
     left: 5px;
     animation-timing-function: linear;
   }

   80% {
     top: -5px;
     left: 5px;
     animation-timing-function: linear;
   }

   to {
     top: 0;
     left: 0;
     animation-timing-function: linear;
   }
 }

 .owl-dots-none .owl-dots,
 .owl-nav-none .owl-nav {
   display: none !important;
 }


 /** sec-title **/

 .sec-title {
   position: relative;
   display: block;
 }

 .sec-title .sub-title {
   position: relative;
   display: inline-block;
   font-size: 16px;
   line-height: 26px;
   color: var(--secondary-color);
   font-weight: 500;
   padding-bottom: 10px;
   margin-bottom: 20px;
   text-transform: uppercase;
 }

 .sec-title .sub-title:before {
   position: absolute;
   content: '';
   background: var(--secondary-color);
   width: 97px;
   height: 1px;
   left: 0px;
   bottom: 0px;
 }

 .sec-title.centred .sub-title:before {
   left: 50%;
   transform: translateX(-50%);
 }

 .sec-title .sub-title:after {
   position: absolute;
   content: '\e90e';
   font-family: 'icomoon';
   font-size: 13px;
   background: var(--white-color);
   width: 33px;
   text-align: center;
   color: var(--secondary-color);
   left: 32px;
   bottom: -13px;
 }

 .sec-title.centred .sub-title:after {
   left: 50%;
   transform: translateX(-50%);
 }

 .sec-title h2 {
   display: block;
   font-size: 40px;
   line-height: 50px;
   font-weight: 700;
 }

 .sec-title.light .sub-title,
 .sec-title.light h2 {
   color: #fff;
 }

 .home_one .sec-title .sub-title:after {
   color: var(--main-color);
 }

 .home_one .sec-title .sub-title:before {
   background: var(--secondary-color);
 }





 /*** 

====================================================================
                        Home-Page-One
====================================================================

***/


 /** main-header **/

 .main-header {
   position: relative;
   left: 0px;
   top: 0px;
   right: 0px;
   z-index: 999;
   width: 100%;
   box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.03);
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .sticky-header {
   position: fixed;
   opacity: 0;
   visibility: hidden;
   left: 0px;
   top: 0px;
   width: 100%;
   z-index: 0;
   background-color: #0A1828;
   border-bottom: 1px solid rgba(201, 169, 110, 0.30);
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .fixed-header .sticky-header {
   z-index: 999;
   opacity: 1;
   visibility: visible;
   -ms-animation-name: fadeInDown;
   -moz-animation-name: fadeInDown;
   -op-animation-name: fadeInDown;
   -webkit-animation-name: fadeInDown;
   animation-name: fadeInDown;
   -ms-animation-duration: 500ms;
   -moz-animation-duration: 500ms;
   -op-animation-duration: 500ms;
   -webkit-animation-duration: 500ms;
   animation-duration: 500ms;
   -ms-animation-timing-function: linear;
   -moz-animation-timing-function: linear;
   -op-animation-timing-function: linear;
   -webkit-animation-timing-function: linear;
   animation-timing-function: linear;
   -ms-animation-iteration-count: 1;
   -moz-animation-iteration-count: 1;
   -op-animation-iteration-count: 1;
   -webkit-animation-iteration-count: 1;
   animation-iteration-count: 1;
 }


 /** header-top **/

 .header-top {
   position: relative;
   width: 100%;
   background: #1A3560;
 }

 .header-top .outer-container {
   padding: 0px 100px;
 }

 .header-top .top-inner {
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .header-top .top-left .info li {
   position: relative;
   display: inline-block;
   float: left;
   font-size: 14px;
   color: var(--white-color);
   padding-left: 23px;
   margin-right: 60px;
 }

 .header-top .top-left .info li:last-child {
   margin: 0px;
 }

 .header-top .top-left .info li i {
   position: absolute;
   left: 0px;
   top: 8px;
   font-size: 15px;
   color: var(--secondary-color);
 }

 .header-top .top-left .info li a {
   color: var(--white-color);
 }

 .header-top .top-left .info li a:hover {
   text-decoration: underline;
 }

 .header-top .top-left .info li:before {
   position: absolute;
   content: '';
   background: rgba(255, 255, 255, 0.2);
   width: 1px;
   height: 55px;
   top: -13px;
   right: -30px;
 }

 .header-top .top-left .info li:last-child:before {
   display: none;
 }

 .header-top .top-right {
   position: relative;
   display: flex;
   align-items: center;
 }

 .header-top .social-links li {
   position: relative;
   display: inline-block;
   margin-right: 20px;
 }

 .header-top .social-links li:last-child {
   margin: 0px;
 }

 .header-top .social-links li a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   color: var(--white-color);
 }

 .header-top .social-links {
   position: relative;
   padding-right: 30px;
 }

 .header-top .social-links:before {
   position: absolute;
   content: '';
   background: rgba(255, 255, 255, 0.2);
   width: 1px;
   height: 55px;
   top: -13px;
   right: 0px;
 }

 .header-top .search-form {
   position: relative;
   margin-right: 55px;
 }

 .header-top .search-form .form-group {
   position: relative;
   width: 210px;
   margin: 0px;
 }

 .header-top .search-form .form-group input[type="search"] {
   position: relative;
   display: block;
   width: 100%;
   height: 55px;
   padding: 10px 50px 10px 25px;
   font-size: 14px;
   color: rgba(255, 255, 255, 0.3);
   transition: all 400ms ease;
 }

 .header-top .search-form .form-group input:focus {
   color: var(--white-color);
 }

 .header-top .search-form .form-group button {
   position: absolute;
   top: 15px;
   right: 0px;
   font-size: 18px;
   color: rgba(255, 255, 255, 0.3);
   cursor: pointer;
   transition: all 500ms ease;
 }

 .header-top .search-form .form-group input:focus+button,
 .header-top .search-form .form-group button:hover {
   color: #fff;
 }

 .header-top .btn-box a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   line-height: 26px;
   color: var(--white-color);
   padding: 14.5px 32px;
   text-align: center;
   background: #5E789C;
   z-index: 1;
 }

 .header-top .btn-box a span {
   position: relative;
   padding-right: 16px;
 }

 .header-top .btn-box a span:before {
   position: absolute;
   content: '\e908';
   font-family: 'icomoon';
   font-size: 12px;
   top: -1px;
   right: 0px;
 }

 .header-top .btn-box a:hover {
   color: var(--main-color);
 }

 .header-top .btn-box a:before {
   position: absolute;
   content: '';
   background: var(--white-color);
   width: 0%;
   height: 100%;
   left: 0px;
   top: 0px;
   z-index: -1;
   transition: all 500ms ease;
 }

 .header-top .btn-box a:hover:before {
   width: 100%;
 }

 /** header-lower **/

 .header-lower {
   position: relative;
   width: 100%;
   background: var(--navy-mid);
   padding-left: 250px;
 }

 .header-lower .logo-box {
   position: relative;
   float: left;
   margin-right: 90px;
   padding-top: 28px;
   padding-bottom: 33px;
 }

 .header-lower .nav-outer {
   position: relative;
   float: left;
   width: calc(100% - 361px);
   padding-right: 100px;
   padding-left: 55px;
   background: var(--navy-mid);
   border-bottom-left-radius: 20px;
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .main-header .support-box {
   position: relative;
   display: block;
   padding: 11px 0px 2px 82px;
 }

 .main-header .support-box .image-box {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 62px;
   height: 62px;
   border-radius: 50%;
 }

 .main-header .support-box .image-box img {
   width: 100%;
   border-radius: 50%;
 }

 .main-header .support-box span {
   position: relative;
   display: block;
   font-size: 16px;
   line-height: 20px;
   font-weight: 700;
   text-transform: uppercase;
   color: var(--secondary-color);
 }

 .main-header .support-box a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   line-height: 20px;
   color: var(--main-color);
 }

 .main-header .support-box a:hover {
   text-decoration: underline;
 }

 .sticky-header .outer-box {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .sticky-header .outer-box .logo-box {
   max-width: 260px;
   padding: 8px 0;
 }

 .sticky-header .outer-box .logo-box img {
   max-height: 70px;
   width: auto;
 }



 /** main-menu **/

 .main-menu {
   float: left;
 }

 .main-menu .navbar-collapse {
   padding: 0px;
   display: block !important;
 }

 .main-menu .navigation {
   margin: 0px;
 }

 .main-menu .navigation>li {
   position: inherit;
   float: left;
   z-index: 2;
   margin: 0px 25px;
   -webkit-transition: all 300ms ease;
   -moz-transition: all 300ms ease;
   -ms-transition: all 300ms ease;
   -o-transition: all 300ms ease;
   transition: all 300ms ease;
 }

 .main-menu .navigation>li:last-child {
   margin-right: 0px !important;
 }

 .main-menu .navigation>li:first-child {
   margin-left: 0px !important;
 }

 .main-menu .navigation>li>a {
   position: relative;
   display: block;
   text-align: center;
   font-size: 16px;
   line-height: 30px;
   padding: 26px 0px;
   font-weight: 500;
   font-family: var(--heebo);
   opacity: 1;
   color: #ffffff;
   z-index: 1;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .main-menu .navigation>li>a:hover,
 .main-menu .navigation>li.current>a {
   color: var(--secondary-color);
 }

 .main-menu .navigation>li.current>a,
 .main-menu .navigation>li:hover>a {}

 .main-menu .navigation>li>ul,
 .main-menu .navigation>li>.megamenu {
   position: absolute;
   left: inherit;
   top: 100%;
   width: 230px;
   margin-top: 15px;
   padding: 10px 0px;
   z-index: 100;
   background: var(--main-color);
   display: none;
   opacity: 0;
   visibility: hidden;
   border-radius: 0px;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>.megamenu a {
   display: inline-block !important;
 }

 .main-menu .navigation>li>ul.from-right {
   left: auto;
   right: 0px;
 }

 .main-menu .navigation>li>ul>li {
   position: relative;
   width: 100%;
 }

 .main-menu .navigation>li>ul>li>a,
 .main-menu .navigation>li>.megamenu li>a {
   position: relative;
   display: block;
   padding: 10px 30px;
   line-height: 24px;
   font-weight: 500;
   font-size: 16px;
   text-transform: capitalize;
   font-family: var(--heebo);
   color: var(--white-color);
   text-align: left;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>a {
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 }

 .main-menu .navigation>li>.megamenu li>a {
   padding-left: 0px;
   padding-right: 0px;
 }

 .main-menu .navigation>li>.megamenu h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   color: var(--white-color);
 }

 .main-menu .navigation>li>ul>li>a:hover,
 .main-menu .navigation>li>.megamenu li>a:hover {
   color: rgba(255, 255, 255, 0.50);
 }

 .main-menu .navigation>li>ul>li:last-child>a,
 .main-menu .navigation>li>.megamenu li:last-child>a {
   border-bottom: none;
 }

 .main-menu .navigation>li>ul>li.dropdown>a:after {
   font-family: 'Font Awesome 5 Pro';
   content: "\f105";
   position: absolute;
   right: 20px;
   top: 10px;
   display: block;
   line-height: 24px;
   font-size: 16px;
   font-weight: 800;
   text-align: center;
   z-index: 5;
 }

 .main-menu .navigation>li>ul>li>ul {
   position: absolute;
   left: 100%;
   top: 0%;
   margin-top: 15px;
   width: 230px;
   z-index: 100;
   display: none;
   border-radius: 0px;
   padding: 10px 0px;
   background: #032B66;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>ul.from-right {
   left: auto;
   right: 0px;
 }

 .main-menu .navigation>li>ul>li>ul>li {
   position: relative;
   width: 100%;
 }

 .main-menu .navigation>li>ul>li>ul>li:last-child {
   border-bottom: none;
 }

 .main-menu .navigation>li>ul>li>ul>li>a {
   position: relative;
   display: block;
   padding: 10px 30px;
   line-height: 24px;
   font-weight: 500;
   font-size: 16px;
   text-transform: capitalize;
   font-family: var(--white-color);
   color: var(--white-color);
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
   text-align: left;
   transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -webkit-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
 }

 .main-menu .navigation>li>ul>li>ul>li:last-child>a {
   border-bottom: none;
 }

 .main-menu .navigation>li>ul>li>ul>li>a:hover {
   color: rgba(255, 255, 255, 0.50);
 }

 .main-menu .navigation>li>ul>li>ul>li.dropdown>a:after {
   font-family: 'Font Awesome 5 Pro';
   content: "\f105";
   position: absolute;
   right: 20px;
   top: 12px;
   display: block;
   line-height: 24px;
   font-size: 16px;
   font-weight: 900;
   z-index: 5;
 }

 .main-menu .navigation>li.dropdown:hover>ul,
 .main-menu .navigation>li.dropdown:hover>.megamenu {
   visibility: visible;
   opacity: 1;
   margin-top: 0px;
   top: 100%;
 }

 .main-menu .navigation li>ul>li.dropdown:hover>ul {
   visibility: visible;
   opacity: 1;
   top: 0%;
   margin-top: 0px;
 }

 .main-menu .navigation li.dropdown .dropdown-btn {
   position: absolute;
   right: -32px;
   top: 66px;
   width: 34px;
   height: 30px;
   text-align: center;
   font-size: 18px;
   line-height: 26px;
   color: #3b3b3b;
   cursor: pointer;
   display: none;
   z-index: 5;
   transition: all 500ms ease;
 }

 .main-menu .navigation li.current.dropdown .dropdown-btn,
 .main-menu .navigation li:hover .dropdown-btn {}

 .main-menu .navigation li.dropdown ul li.dropdown .dropdown-btn {
   display: none;
 }

 .menu-area .mobile-nav-toggler {
   position: relative;
   float: right;
   font-size: 40px;
   line-height: 50px;
   cursor: pointer;
   background: var(--main-color);
   display: none;
 }

 .menu-area .mobile-nav-toggler .icon-bar {
   position: relative;
   height: 2px;
   width: 30px;
   display: block;
   margin-bottom: 5px;
   background-color: var(--white-color);
   -webkit-transition: all 300ms ease;
   -moz-transition: all 300ms ease;
   -ms-transition: all 300ms ease;
   -o-transition: all 300ms ease;
   transition: all 300ms ease;
 }

 .menu-area .mobile-nav-toggler .icon-bar:last-child {
   margin-bottom: 0px;
 }


 /** megamenu-style **/

 .main-menu .navigation>li.dropdown>.megamenu {
   position: absolute;
   width: 100%;
   padding: 30px 50px;
   left: 0px;
 }

 .main-menu .navigation li.dropdown .megamenu li h4 {
   margin-bottom: 10px;
 }


 /** mobile-menu **/

 .nav-outer .mobile-nav-toggler {
   position: relative;
   float: right;
   font-size: 40px;
   line-height: 50px;
   cursor: pointer;
   background: var(--main-color);
   display: none;
 }

 .mobile-menu {
   position: fixed;
   right: 0;
   top: 0;
   width: 300px;
   padding-right: 30px;
   max-width: 100%;
   height: 100%;
   opacity: 0;
   visibility: hidden;
   z-index: 999999;
   transition: all 900ms ease;
 }

 .mobile-menu .navbar-collapse {
   display: block !important;
 }

 .mobile-menu .nav-logo {
   position: relative;
   padding: 30px 25px;
   text-align: center;
 }

 .mobile-menu-visible {
   overflow: hidden;
 }

 .mobile-menu-visible .mobile-menu {
   opacity: 1;
   visibility: visible;
 }

 .mobile-menu .menu-backdrop {
   position: fixed;
   left: 0%;
   top: 0;
   width: 100%;
   height: 100%;
   z-index: 1;
   transition: all 900ms ease;
   background-color: #000;
 }

 .mobile-menu-visible .mobile-menu .menu-backdrop {
   opacity: 0.70;
   visibility: visible;
   right: 100%;
   -webkit-transition: all .8s ease-out 0s;
   -o-transition: all .8s ease-out 0s
 }

 .mobile-menu .menu-box {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   max-height: 100%;
   overflow-y: auto;
   background: #0A1828;
   /* Fondo azul marino profundo para el menú móvil */
   padding: 0px 0px;
   z-index: 5;
   opacity: 0;
   visibility: hidden;
   border-radius: 0px;
   -webkit-transform: translateX(100%);
   -ms-transform: translateX(100%);
   transform: translateX(100%);
   transition: all 900ms ease !important;
 }

 .mobile-menu-visible .mobile-menu .menu-box {
   opacity: 1;
   visibility: visible;
   -webkit-transition: all 0.7s ease;
   -o-transition: all 0.7s ease;
   transition: all 0.7s ease;
   -webkit-transform: translateX(0%);
   -ms-transform: translateX(0%);
   transform: translateX(0%);
 }

 .mobile-menu .close-btn {
   position: absolute;
   right: 25px;
   top: 10px;
   line-height: 30px;
   width: 24px;
   text-align: center;
   font-size: 16px;
   color: #ffffff;
   cursor: pointer;
   z-index: 10;
   -webkit-transition: all 0.9s ease;
   -moz-transition: all 0.9s ease;
   -ms-transition: all 0.9s ease;
   -o-transition: all 0.9s ease;
   transition: all 0.9s ease;
 }

 .mobile-menu-visible .mobile-menu .close-btn {
   -webkit-transform: rotate(360deg);
   -ms-transform: rotate(360deg);
   transform: rotate(360deg);
 }

 .mobile-menu .close-btn:hover {
   -webkit-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   transform: rotate(90deg);
 }

 .mobile-menu .navigation {
   position: relative;
   display: block;
   width: 100%;
   float: none;
 }

 .mobile-menu .navigation li {
   position: relative;
   display: block;
   border-top: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation:last-child {
   border-bottom: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation li>ul>li:first-child {
   border-top: 1px solid rgba(255, 255, 255, 0.10);
 }

 .mobile-menu .navigation li>a {
   position: relative;
   display: block;
   line-height: 24px;
   padding: 10px 25px;
   font-size: 15px;
   font-weight: 500;
   color: #ffffff;
   text-transform: uppercase;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .navigation li ul li>a {
   font-size: 16px;
   margin-left: 20px;
   text-transform: capitalize;
 }

 .mobile-menu .navigation li>a:before {
   content: '';
   position: absolute;
   left: 0;
   top: 0;
   height: 0;
   border-left: 5px solid #fff;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .navigation li.current>a:before {
   height: 100%;
 }

 .mobile-menu .navigation li.dropdown .dropdown-btn {
   position: absolute;
   right: 6px;
   top: 6px;
   width: 32px;
   height: 32px;
   text-align: center;
   font-size: 16px;
   line-height: 32px;
   color: #ffffff;
   background: rgba(255, 255, 255, 0.10);
   cursor: pointer;
   border-radius: 2px;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
   z-index: 5;
 }

 .mobile-menu .navigation li.dropdown .dropdown-btn.open {
   color: #ffffff;
   -webkit-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   transform: rotate(90deg);
 }

 .mobile-menu .navigation li>ul,
 .mobile-menu .navigation li>ul>li>ul,
 .mobile-menu .navigation>li.dropdown>.megamenu {
   display: none;
 }

 .mobile-menu .social-links {
   position: relative;
   padding: 0px 25px;
 }

 .mobile-menu .social-links li {
   position: relative;
   display: inline-block;
   margin: 0px 10px 10px;
 }

 .mobile-menu .social-links li a {
   position: relative;
   line-height: 32px;
   font-size: 16px;
   color: #ffffff;
   -webkit-transition: all 500ms ease;
   -moz-transition: all 500ms ease;
   -ms-transition: all 500ms ease;
   -o-transition: all 500ms ease;
   transition: all 500ms ease;
 }

 .mobile-menu .social-links li a:hover {}

 div#mCSB_1_container {
   top: 0px !important;
 }

 .mobile-menu .contact-info {
   position: relative;
   padding: 120px 30px 20px 30px;
 }

 .mobile-menu .contact-info h4 {
   position: relative;
   font-size: 20px;
   color: #ffffff;
   font-weight: 700;
   margin-bottom: 20px;
 }

 .mobile-menu .contact-info ul li {
   position: relative;
   display: block;
   font-size: 15px;
   color: rgba(255, 255, 255, 0.80);
   margin-bottom: 3px;
 }

 .mobile-menu .contact-info ul li a {
   color: rgba(255, 255, 255, 0.80);
 }

 .mobile-menu .contact-info ul li a:hover {}

 .mobile-menu .contact-info ul li:last-child {
   margin-bottom: 0px;
 }

 .main-header .outer-box {
   position: relative;
 }

 .nice-select {
   position: relative;
   background: transparent;
   border: none;
   font-size: 16px;
   font-weight: 400;
   height: 50px;
   line-height: 50px;
   padding: 0px 20px !important;
   color: #6E6E6E;
   height: auto;
 }

 .nice-select:after {
   width: 8px;
   height: 8px;
   right: 20px;
   border-bottom: 2px solid #C4C4C4;
   border-right: 2px solid #C4C4C4;
 }

 .tabs-box .tab {
   position: relative;
   display: none;
   transition: all 900ms ease;
   -moz-transition: all 900ms ease;
   -webkit-transition: all 900ms ease;
   -ms-transition: all 900ms ease;
   -o-transition: all 900ms ease;
 }

 .tabs-box .tab.active-tab {
   display: block;
 }

 .tabs-box .tab {
   transform: scale(0.9, 0.9) translateY(0px);
 }

 .tabs-box .tab.active-tab {
   transform: scale(1) translateY(0px);
 }


 .list-style-one li {
   position: relative;
   display: block;
   font-size: 16px;
   padding-left: 35px;
   margin-bottom: 8px;
 }

 .list-style-one li:last-child {
   margin-bottom: 0px;
 }

 .list-style-one li:before {
   position: absolute;
   content: '\e90f';
   font-family: 'icomoon';
   font-size: 20px;
   left: 0px;
   top: 0px;
   color: #888;
 }

 .link-btn a {
   position: relative;
   display: inline-block;
   font-size: 16px;
   line-height: 26px;
   font-weight: 500;
   color: #0F181D;
 }

 .link-btn a:hover {
   color: var(--secondary-color);
 }

 .link-btn a span {
   position: relative;
   padding-right: 20px;
 }

 .link-btn a span:before {
   position: absolute;
   content: '\e908';
   font-family: 'icomoon';
   font-size: 14px;
   top: -1px;
   right: 0px;
 }

 .nav-style-one button {
   position: relative;
   display: inline-block;
   width: 50px;
   height: 50px;
   line-height: 52px;
   font-size: 12px;
   text-align: center;
   color: var(--white-color);
   background: var(--main-color);
   border-radius: 50%;
   transition: all 500ms ease;
 }

 .nav-style-one button:hover {
   background: var(--secondary-color);
 }

 @-webkit-keyframes shine {
   100% {
     left: 125%;
   }
 }

 @keyframes shine {
   100% {
     left: 125%;
   }
 }


 .parallax-bg {
   position: absolute;
   left: 0px;
   top: -30%;
   width: 100%;
   height: 150%;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   background-attachment: fixed;
   z-index: -1;
 }

 @keyframes slide {
   from {
     background-position: 0 0;
   }

   to {
     background-position: 1920px 0;
   }
 }

 @-webkit-keyframes slide {
   from {
     background-position: 0 0;
   }

   to {
     background-position: 1920px 0;
   }
 }



 .passport-section {
   padding: 300px 0px 150px 0px;
 }

 .passport-section .inner-box {
   max-width: 894px;
   margin: 0 auto;
 }

 .passport-section .image-box img {
   width: 100%;
 }

 .passport-section .pattern-layer .pattern-1 {
   position: absolute;
   left: 0px;
   top: 0px;
   right: 0px;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .passport-section .pattern-layer .pattern-2 {
   position: absolute;
   left: 0px;
   top: 244px;
   width: 425px;
   height: 360px;
   background-repeat: no-repeat;
 }

 .passport-section .pattern-layer .pattern-3 {
   position: absolute;
   right: 80px;
   top: 150px;
   width: 447px;
   height: 347px;
   background-repeat: no-repeat;
 }


 /** main-footer **/

 .main-footer {
   position: relative;
   background: #0A1828;
 }

 .main-footer .widget-section {
   padding: 107px 0px 47px 0px;
   border-bottom: 1px solid rgba(255, 255, 255, 0.2);
 }

 .main-footer .logo-widget {
   margin-top: -20px;
 }

 .main-footer .logo-widget .footer-logo {
   display: block;
   margin-bottom: 22px;
 }

 .main-footer .logo-widget .text p {
   color: var(--white-color);
 }

 .main-footer .logo-widget .info li {
   position: relative;
   display: block;
   color: var(--white-color);
   margin-bottom: 10px;
   padding-left: 38px;
 }

 .main-footer .logo-widget .info li:last-child {
   margin-bottom: 0px;
 }

 .main-footer .logo-widget .info li i {
   position: absolute;
   left: 0px;
   top: 2px;
   font-size: 22px;
   color: var(--secondary-color);
   /* Gold accent en footer */
 }

 .main-footer .logo-widget .info li a {
   display: inline-block;
   color: var(--white-color);
 }

 .main-footer .logo-widget .info li a:hover {
   text-decoration: underline;
 }

 .main-footer .logo-widget .social-links li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 15px;
 }

 .main-footer .logo-widget .social-links li:last-child {
   margin: 0px;
 }

 .main-footer .logo-widget .social-links li a {
   position: relative;
   display: inline-block;
   width: 30px;
   height: 30px;
   line-height: 34px;
   font-size: 14px;
   color: var(--white-color);
   background: #172329;
   text-align: center;
   border-radius: 50%;
 }

 .main-footer .logo-widget .social-links li a:hover {
   background: var(--main-color);
 }

 .main-footer .widget-title {
   position: relative;
   display: block;
   max-width: 210px;
   padding-bottom: 20px;
   margin-bottom: 40px;
   border-bottom: 1px solid #B4C4D9;
 }

 .main-footer .widget-title:before {
   position: absolute;
   content: '';
   background: var(--secondary-color);
   width: 96px;
   height: 1px;
   left: 0px;
   bottom: -1px;
 }

 .main-footer .widget-title h3 {
   font-size: 24px;
   line-height: 34px;
   font-weight: 700;
   color: var(--white-color);
 }

 .main-footer .links-widget .links-list li {
   position: relative;
   display: block;
   margin-bottom: 25px;
 }

 .main-footer .links-widget .links-list li a {
   display: inline-block;
   font-weight: 500;
   color: var(--white-color);
 }

 .main-footer .links-widget .links-list li a:hover {
   color: var(--secondary-color);
 }

 .main-footer .gallery-widget .image-list {
   margin: 0px -5px;
 }

 .main-footer .gallery-widget .image-list li {
   position: relative;
   display: inline-block;
   float: left;
   margin: 0px 5px 10px 5px;
 }

 .main-footer .gallery-widget .image-list li .image-box {
   position: relative;
   display: block;
   width: 104px;
   height: 100px;
   border-radius: 5px;
   background: var(--main-color);
 }

 .main-footer .gallery-widget .image-list li .image-box img {
   width: 100%;
   border-radius: 5px;
   transition: all 500ms ease;
 }

 .main-footer .gallery-widget .image-list li .image-box:hover img {
   opacity: 0.2;
 }

 .main-footer .gallery-widget .image-list li .image-box a {
   position: absolute;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%) scale(0, 0);
   font-size: 24px;
   color: var(--white-color);
 }

 .main-footer .gallery-widget .image-list li .image-box:hover a {
   transform: translate(-50%, -50%) scale(1, 1);
 }

 .main-footer .footer-bottom {
   position: relative;
   width: 100%;
   padding: 29px 0px;
   text-align: center;
 }

 .main-footer .footer-bottom p,
 .main-footer .footer-bottom p a:hover {
   color: var(--white-color);
 }

 .main-footer .footer-bottom p a {
   color: var(--secondary-color);
 }

 .main-footer .pattern-layer {
   position: absolute;
   left: 0px;
   bottom: 0px;
   width: 100%;
   height: 450px;
   background-repeat: repeat-x;
   animation: slide 60s linear infinite;
   -webkit-animation: slide 60s linear infinite;
 }


 /** header-style-two **/

 .header-style-two .header-top .search-form {
   margin-right: 0px;
 }

 .header-style-two .header-lower {
   padding: 0px;
 }

 .header-style-two .header-lower .outer-box {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .header-style-two .header-lower .logo-box {
   margin: 0px;
 }

 .header-style-two .header-lower .main-menu .navigation>li>a {
   padding-top: 50px;
   padding-bottom: 50px;
 }

 .header-style-two .header-lower .main-menu .navigation>li>a:before {
   position: absolute;
   content: '';
   width: 34px;
   height: 1px;
   left: 50%;
   bottom: 36px;
   transform: translateX(-50%) scale(0, 0);
   background: var(--main-color);
   transition: all 500ms ease;
 }

 .header-style-two .header-lower .main-menu .navigation>li>a:hover:before,
 .header-style-two .header-lower .main-menu .navigation>li.current>a:before {
   transform: translateX(-50%) scale(1, 1);
 }

 .header-style-two .btn-box .theme-btn {
   padding: 13.5px 24px;
   background: var(--main-color);
 }

 .header-style-two .btn-box .theme-btn:hover {
   box-shadow: inset 0 0 0 2em var(--secondary-color);
 }


 @-webkit-keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }

 @keyframes ripple {
   70% {
     -webkit-box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
   }

   100% {
     -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
     box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
   }
 }


 /** footer-style-two **/

 .main-footer.style-two {
   background: var(--main-color);
 }

 .main-footer .logo-widget .text a {
   display: inline-block;
   font-size: 16px;
   color: var(--white-color);
   margin-top: 21px;
 }

 .main-footer .logo-widget .text a:hover {
   color: var(--secondary-color);
 }

 .main-footer.style-two .gallery-widget .image-list li .image-box {
   width: 126px;
   height: 115px;
   border-radius: 0px;
 }

 .main-footer.style-two .gallery-widget .image-list li .image-box img {
   border-radius: 0px;
 }

 .main-footer .post-widget .post {
   position: relative;
   display: block;
   margin-bottom: 20px;
 }

 .main-footer .post-widget .post:last-child {
   margin-bottom: 0px;
 }

 .main-footer .post-widget .post .post-info li {
   position: relative;
   display: inline-block;
   float: left;
   font-size: 12px;
   line-height: 26px;
   color: var(--white-color);
   margin-right: 17px;
 }

 .main-footer .post-widget .post .post-info li:last-child {
   margin: 0px;
 }

 .main-footer .post-widget .post .post-info li a {
   display: inline-block;
   color: var(--white-color);
 }

 .main-footer .post-widget .post .post-info li a:hover {
   color: var(--secondary-color);
 }

 .main-footer .post-widget .post .post-info li:before {
   position: absolute;
   content: '';
   background: var(--white-color);
   width: 1px;
   height: 10px;
   top: 8px;
   right: -9px;
 }

 .main-footer .post-widget .post .post-info li:last-child:before {
   display: none;
 }

 .main-footer .post-widget .post .post-info {
   margin-bottom: 5px;
 }

 .main-footer .post-widget .post h4 {
   display: block;
   font-size: 20px;
   line-height: 30px;
   font-weight: 700;
 }

 .main-footer .post-widget .post h4 a {
   display: inline-block;
   color: var(--white-color);
 }

 .main-footer .post-widget .post h4 a:hover {
   color: var(--secondary-color);
 }

 .main-footer.style-two .widget-section {
   padding-top: 185px;
 }

 .header-style-three .header-lower {
   position: absolute;
   left: 0px;
   width: 100%;
   background: transparent;
 }

 .main-footer.style-three .widget-section {
   padding-top: 125px;
 }

 .main-footer.style-three .pattern-layer-2 {
   position: absolute;
   left: ;
 }

 .main-footer .bg-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
 }

 .main-footer .bg-layer:before {
   position: absolute;
   content: '';
   background: var(--main-color);
   width: 100%;
   height: 100%;
   left: 0px;
   top: 0px;
   opacity: 0.90;
 }

 .main-footer.style-three .widget-section {
   border-bottom: none;
 }

 .main-footer.style-three .footer-bottom {
   background: #07316D;
 }

 .main-footer.style-three .footer-bottom p a {
   color: var(--white-color);
 }

 .main-footer.style-three .footer-bottom a:hover {
   text-decoration: underline;
 }

 .main-footer .footer-logo {
   position: relative;
   display: block;
 }


 /** header-style-four **/

 .header-style-four .header-lower {
   position: absolute;
   left: 0px;
   top: 50px;
   width: 100%;
   padding: 0px 130px;
   background: transparent;
 }

 .header-style-four .header-lower .outer-box {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .header-style-four .header-lower .logo-box {
   margin-right: 0px;
   padding: 0px;
 }

 .header-style-four .header-lower .menu-area {
   position: relative;
   background: #fff;
   box-shadow: 0px 4px 20px rgba(116, 116, 116, 0.05);
   border-radius: 50px;
   padding: 0px 75px;
 }

 .main-header .menu-right-content li {
   position: relative;
   display: inline-block;
   float: left;
   margin-right: 20px;
 }

 .main-header .menu-right-content li:last-child {
   margin: 0px;
 }

 .main-header .menu-right-content li.search-box-outer,
 .main-header .menu-right-content li a {
   position: relative;
   display: inline-block;
   width: 80px;
   height: 80px;
   line-height: 86px;
   background: var(--white-color);
   font-size: 24px;
   color: var(--main-color);
   text-align: center;
   border-radius: 50%;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .main-header .menu-right-content li.search-box-outer:hover,
 .main-header .menu-right-content li a:hover {
   color: var(--white-color);
   background: var(--main-color);
 }

 .header-style-four .sticky-header {
   background: #F5F5F5;
 }

 .main-header .sticky-header .menu-right-content li.search-box-outer,
 .main-header .sticky-header .menu-right-content li a {
   width: 50px;
   height: 50px;
   line-height: 56px;
   font-size: 20px;
 }


 /*** Search Popup ***/

 .search-popup {
   position: fixed;
   left: 0;
   top: 0px;
   width: 100%;
   height: 100%;
   z-index: 99999;
   visibility: hidden;
   opacity: 0;
   overflow: auto;
   background: rgba(0, 0, 0, 0.80);
   -webkit-transform: translateY(101%);
   -ms-transform: translateY(101%);
   transform: translateY(101%);
   transition: all 700ms ease;
   -moz-transition: all 700ms ease;
   -webkit-transition: all 700ms ease;
   -ms-transition: all 700ms ease;
   -o-transition: all 700ms ease;
 }

 .search-popup.popup-visible {
   -webkit-transform: translateY(0%);
   -ms-transform: translateY(0%);
   transform: translateY(0%);
   visibility: visible;
   opacity: 1;
 }

 .search-popup .popup-inner {
   width: 100%;
   background: #fff;
   height: 100%;
 }

 .search-popup .upper-box {
   position: relative;
   padding: 70px 70px;
   z-index: 1;
 }

 .search-popup .upper-box .logo-box {
   max-width: 149px;
 }

 .search-popup .overlay-layer {
   position: absolute;
   left: 0px;
   top: 0px;
   right: 0px;
   bottom: 0px;
   display: block;
 }

 .search-popup .close-search {
   position: relative;
   font-size: 22px;
   color: #141417;
   cursor: pointer;
   z-index: 5;
   top: 11px;
   transition: all 500ms ease;
 }

 .search-popup .close-search:hover {
   color: red;
 }

 .search-popup .search-form {
   position: relative;
   width: 100%;
   padding: 100px 0px 250px 0px;
 }

 .search-popup .search-form .form-group {
   position: relative;
   margin: 0px;
 }

 .search-popup .search-form fieldset input[type="search"] {
   position: relative;
   height: 90px;
   padding: 20px 0px;
   background: #ffffff;
   line-height: 30px;
   font-size: 20px;
   color: #808080;
   font-family: 'Inter', sans-serif;
   border: none;
   font-weight: 400;
   border-radius: 0px;
   padding-right: 50px;
   border-bottom: 1px solid #e5e5e5;
 }

 .search-popup .search-form fieldset button[type="submit"] {
   position: absolute;
   top: 30px;
   right: 0px;
   font-size: 22px;
   color: #141417;
   cursor: pointer;
   transition: all 500ms ease;
 }

 .search-popup .search-form fieldset input[type="search"]:focus {
   border-color: #141417;
 }

 .search-popup .form-control:focus {
   box-shadow: none !important;
 }


 .main-footer.style-four {
   background: var(--main-color);
 }

 .footer-top {
   position: relative;
   padding: 100px 0px 60px 0px;
   border-bottom: 1px solid rgba(255, 255, 255, 0.2);
 }

 .footer-top .footer-logo {
   display: block;
   margin-bottom: 25px;
 }

 .footer-top p {
   color: var(--white-color);
   max-width: 700px;
   margin: 0 auto;
   margin-bottom: 30px;
 }

 .footer-top .social-links li {
   position: relative;
   display: inline-block;
   margin: 0px 10px;
 }

 .footer-top .social-links li a {
   display: inline-block;
   font-size: 18px;
   color: var(--white-color);
 }

 .footer-top .social-links li a:hover {
   color: var(--secondary-color);
 }

 .main-footer.style-four .gallery-widget .image-list li .image-box {
   width: 126px;
   height: 115px;
   border-radius: 0px;
 }

 .main-footer.style-four .widget-section {
   padding-bottom: 0px;
   border-bottom: none;
 }

 .main-footer.style-four .pattern-layer-2 {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
 }


 .main-footer.style-five {
   background: var(--main-color);
 }

 .main-footer .contact-widget .info-list li {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: left;
   margin-bottom: 24px;
 }

 .main-footer .contact-widget .info-list li:last-child {
   margin-bottom: 0px;
 }

 .main-footer .contact-widget .info-list li .icon-box {
   position: relative;
   display: inline-block;
   width: 40px;
   height: 40px;
   line-height: 40px;
   font-size: 16px;
   color: var(--white-color);
   background: var(--secondary-color);
   text-align: center;
   border-radius: 50%;
   margin-right: 17px;
 }

 .main-footer .contact-widget .info-list li p {
   color: var(--white-color);
 }

 .main-footer .contact-widget .info-list li p a {
   color: var(--white-color);
 }

 .main-footer .contact-widget .info-list li p a:hover {
   color: var(--secondary-color);
 }

 .main-footer .newsletter-widget .text p {
   color: var(--white-color);
 }

 .main-footer .newsletter-widget .form-inner .form-group {
   position: relative;
   margin: 0px;
 }

 .main-footer .newsletter-widget .form-inner .form-group input[type='email'] {
   position: relative;
   display: block;
   width: 100%;
   height: 48px;
   background: rgba(180, 196, 217, 0.2);
   font-size: 14px;
   color: rgba(255, 255, 255, 0.3);
   border: 1px solid transparent;
   padding: 10px 140px 10px 50px;
   transition: all 500ms ease;
 }

 .main-footer .newsletter-widget .form-inner .form-group input:focus {
   border-color: #fff;
   color: #fff;
 }

 .main-footer .newsletter-widget .form-inner .form-group i {
   position: absolute;
   top: 16px;
   left: 20px;
   font-size: 16px;
   color: rgba(255, 255, 255, 0.3);
   z-index: 1;
 }

 .main-footer .newsletter-widget .form-inner .form-group .theme-btn {
   position: absolute;
   top: 7px;
   right: 9px;
   font-size: 14px;
   font-weight: 400;
   padding: 3px 19px;
 }

 .main-footer .newsletter-widget .social-links li {
   position: relative;
   display: inline-block;
   margin-right: 20px;
 }

 .main-footer .newsletter-widget .social-links li:last-child {
   margin: 0px;
 }

 .main-footer .newsletter-widget .social-links li a {
   display: inline-block;
   font-size: 16px;
   color: var(--white-color);
 }

 .main-footer .newsletter-widget .social-links li a:hover {
   color: var(--secondary-color);
 }

 .main-footer.style-five .post-widget .post {
   padding-left: 106px;
   margin-bottom: 15px;
   min-height: 91px;
 }

 .main-footer.style-five .post-widget .post:last-child {
   margin-bottom: 0px;
 }

 .main-footer.style-five .post-widget .post .post-thumb {
   position: absolute;
   left: 0px;
   top: 0px;
   width: 90px;
   height: 93px;
   border-radius: 5px;
   background: var(--main-color);
 }

 .main-footer.style-five .post-widget .post .post-thumb img {
   width: 100%;
   border-radius: 5px;
   transition: all 500ms ease;
 }

 .main-footer.style-five .post-widget .post:hover .post-thumb img {
   opacity: 0.5;
 }

 .main-footer.style-five .widget-section {
   border-bottom: none;
 }


 .accordion-box .block .acc-content.current {
   display: block;
 }

 .accordion-box .block .acc-content {
   display: none;
 }

 .testimonial-section.coaching-page {
   padding: 150px 0px 220px 0px;
 }

 .custom-controls-stacked {
   position: relative;
 }

 .custom-control.material-checkbox .material-control-input {
   display: none;
 }

 .custom-control.material-checkbox .material-control-indicator {
   display: inline-block;
   position: absolute;
   top: 7px;
   left: 0px;
   width: 15px;
   height: 15px;
   border: 1px solid var(--main-color);
   cursor: pointer;
 }

 .custom-control.material-checkbox .material-control-indicator:before {
   position: absolute;
   content: "\e93e";
   font-family: 'icomoon';
   font-size: 8px;
   left: -1px;
   top: 0px;
   width: 15px;
   height: 15px;
   line-height: 15px;
   text-align: center;
   color: var(--main-color);
   opacity: 0;
   transition: all 500ms ease;
 }

 .custom-control.material-checkbox .material-control-input:checked~.material-control-indicator:before {
   opacity: 1;
 }

 .custom-controls-stacked .description {
   position: relative;
   display: inline-block;
   padding: 0px;
   margin-left: 25px;
   font-size: 14px;
   line-height: 26px;
   color: #888;
   cursor: pointer;
 }







































 /* =====================================================
   GMR LAW — BRAND THEME OVERRIDES
   Paleta: Azul Marino Profundo (#0F2040) + Oro (#C9A96E)
   ===================================================== */

 /* -- Header style-two / style-three (paginas internas) -- */
 .header-style-two .header-top,
 .header-style-three .header-top {
   background: #1A3560;
 }

 /* Azul Medio — header superior */

 .header-style-two .header-lower,
 .header-style-three .header-lower {
   background: #0A1828;
   padding-left: 0;
 }

 /* Azul Oscuro — área logo/nav */

 .header-style-two .outer-box,
 .header-style-three .outer-box {
   background: #0A1828;
 }

 /* Azul Oscuro — contenedor nav */

 /* Botón CTA del header "Agenda tu consulta" */
 .header-lower .btn-box a,
 .header-style-two .btn-box a,
 .header-style-three .btn-box a {
   background: #0A1828;
   color: #C9A96E !important;
   border: 2px solid #C9A96E;
   font-weight: 700;
   letter-spacing: 0.5px;
   transition: all 400ms ease;
 }

 .header-lower .btn-box a:hover,
 .header-style-two .btn-box a:hover,
 .header-style-three .btn-box a:hover {
   background: #C9A96E;
   color: #0A1828 !important;
   border-color: #C9A96E;
 }

 /* Sticky header */
 .sticky-header .main-menu .navigation>li>a {
   color: #ffffff;
 }

 .sticky-header .main-menu .navigation>li>a:hover,
 .sticky-header .main-menu .navigation>li.current>a {
   color: #C9A96E;
 }

 .sticky-header .btn-box a {
   background: #0A1828;
   color: #C9A96E !important;
   border: 2px solid #C9A96E;
   font-weight: 700;
   transition: all 400ms ease;
 }

 .sticky-header .btn-box a:hover {
   background: #C9A96E;
   color: #0A1828 !important;
   border-color: #C9A96E;
 }

 /* Footer interno */
 .main-footer.style-two,
 .main-footer.style-three {
   background: #0A1828;
 }

 .main-footer .widget-section {
   background: transparent;
 }

 .main-footer .links-widget .links-list li a {
   color: rgba(255, 255, 255, 0.75);
 }

 .main-footer .links-widget .links-list li a:hover {
   color: #C9A96E;
 }

 .main-footer .widget-title h3 {
   color: #C9A96E;
 }

 .main-footer .logo-widget .text a,
 .main-footer .logo-widget .text p a {
   color: #C9A96E !important;
   display: block;
   margin-top: 4px;
 }

 /* Iconos header */
 .header-top .info li i,
 .info li .icon-31 {
   color: #C9A96E;
 }

 /* Page title */
 .page-title .content-box h1 {
   color: #ffffff;
   text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
 }

 .page-title .bread-crumb li,
 .page-title .bread-crumb li a {
   color: #C9A96E;
 }

 /* Language selector */
 .language-selector .lang-btn {
   border: 1px solid rgba(201, 169, 110, 0.4);
   background: rgba(201, 169, 110, 0.1);
   color: #ffffff;
   transition: all 300ms ease;
 }

 .language-selector .lang-btn:hover,
 .language-selector .lang-btn.active {
   background: #C9A96E;
   border-color: #C9A96E;
   color: #0A1828;
 }

 .custom-control.material-checkbox .material-control-input:checked~.material-control-indicator:before {
   opacity: 1;
 }

 .custom-controls-stacked .description {
   position: relative;
   display: inline-block;
   padding: 0px;
   margin-left: 25px;
   font-size: 14px;
   line-height: 26px;
   color: #888;
   cursor: pointer;
 }







































 /* =====================================================
   GMR LAW — BRAND THEME OVERRIDES
   Paleta: Azul Marino Profundo (#0F2040) + Oro (#C9A96E)
   ===================================================== */

 /* -- Header style-two / style-three (paginas internas) -- */
 .header-style-two .header-top,
 .header-style-three .header-top {
   background: #1A3560;
 }

 /* Azul Medio — header superior */

 .header-style-two .header-lower,
 .header-style-three .header-lower {
   background: #0A1828;
   padding-left: 0;
 }

 /* Azul Oscuro — área logo/nav */

 .header-style-two .outer-box,
 .header-style-three .outer-box {
   background: #0A1828;
 }

 /* Azul Oscuro — contenedor nav */

 /* Botón CTA del header "Agenda tu consulta" */
 .header-lower .btn-box a,
 .header-style-two .btn-box a,
 .header-style-three .btn-box a {
   background: #0A1828;
   color: #C9A96E !important;
   border: 2px solid #C9A96E;
   font-weight: 700;
   letter-spacing: 0.5px;
   transition: all 400ms ease;
 }

 .header-lower .btn-box a:hover,
 .header-style-two .btn-box a:hover,
 .header-style-three .btn-box a:hover {
   background: #C9A96E;
   color: #0A1828 !important;
   border-color: #C9A96E;
 }

 /* Sticky header */
 .sticky-header .main-menu .navigation>li>a {
   color: #ffffff;
 }

 .sticky-header .main-menu .navigation>li>a:hover,
 .sticky-header .main-menu .navigation>li.current>a {
   color: #C9A96E;
 }

 .sticky-header .btn-box a {
   background: #0A1828;
   color: #C9A96E !important;
   border: 2px solid #C9A96E;
   font-weight: 700;
   transition: all 400ms ease;
 }

 .sticky-header .btn-box a:hover {
   background: #C9A96E;
   color: #0A1828 !important;
   border-color: #C9A96E;
 }

 /* Footer interno */
 .main-footer.style-two,
 .main-footer.style-three {
   background: #0A1828;
 }

 .main-footer .widget-section {
   background: transparent;
 }

 .main-footer .links-widget .links-list li a {
   color: rgba(255, 255, 255, 0.75);
 }

 .main-footer .links-widget .links-list li a:hover {
   color: #C9A96E;
 }

 .main-footer .widget-title h3 {
   color: #C9A96E;
 }

 .main-footer .logo-widget .text a,
 .main-footer .logo-widget .text p a {
   color: #C9A96E !important;
   display: block;
   margin-top: 4px;
 }

 /* Iconos header */
 .header-top .info li i,
 .info li .icon-31 {
   color: #C9A96E;
 }

 /* Page title */
 .page-title .content-box h1 {
   color: #ffffff;
   text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
 }

 .page-title .bread-crumb li,
 .page-title .bread-crumb li a {
   color: #C9A96E;
 }

 /* Language selector */
 .language-selector .lang-btn {
   border: 1px solid rgba(201, 169, 110, 0.4);
   background: rgba(201, 169, 110, 0.1);
   color: #ffffff;
   transition: all 300ms ease;
 }

 .language-selector .lang-btn:hover,
 .language-selector .lang-btn.active {
   background: #C9A96E;
   border-color: #C9A96E;
   color: #0A1828;
 }

 /* ===================================================== */


 /* -- Form & Modal Specific Button Styling (High Visibility) -- */
 form .theme-btn,
 .message-btn .theme-btn,
 button.theme-btn,
 .appointment-form-box .theme-btn {
   background: #C9A96E !important;
   color: #0A1828 !important;
   border: 2px solid #C9A96E !important;
   font-weight: 700 !important;
   text-transform: uppercase !important;
   transition: all 400ms ease !important;
 }

 form .theme-btn span,
 .message-btn .theme-btn span,
 .appointment-form-box .theme-btn span {
   color: inherit !important;
 }

 form .theme-btn:hover,
 .message-btn .theme-btn:hover,
 button.theme-btn:hover,
 .appointment-form-box .theme-btn:hover {
   background: #0A1828 !important;
   color: #C9A96E !important;
   border-color: #C9A96E !important;
   box-shadow: none !important;
 }

 /* ===================================================== */
 /* -- Reset Header & Sticky Buttons (Revert to Dark Theme) -- */
 .header-lower .btn-box a,
 .header-style-two .btn-box a,
 .header-style-three .btn-box a,
 .sticky-header .btn-box a {
   background: #0A1828 !important;
   color: #C9A96E !important;
   border: 2px solid #C9A96E !important;
 }

 .header-lower .btn-box a:hover,
 .header-style-two .btn-box a:hover,
 .header-style-three .btn-box a:hover,
 .sticky-header .btn-box a:hover {
   background: #C9A96E !important;
   color: #0A1828 !important;
   border-color: #C9A96E !important;
 }