@font-face {font-family: 'light'; font-style: normal; font-weight: 300; font-display: swap; src: url('../fonts/light.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face {font-family: 'regular'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/regular.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face {font-family: 'bold'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/bold.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root{
    --color-primary: #28a745; /* A fresh green */
    --color-secondary: #218838;
    --color-hover: #1e7e34;
    --color-white: #ffffff;
    --color-light-green: #f8fff9;
}

/* Global button override for primary to be green */
.btn-primary { background-color: var(--color-primary) !important; border-color: var(--color-primary) !important; color: white !important; }
.btn-primary:hover, .btn-primary:focus { background-color: var(--color-hover) !important; border-color: var(--color-hover) !important; }
.text-primary { color: var(--color-primary) !important; }

/*HEADER*/
header{ background: transparent; position: fixed; top: 0; width: 100%; z-index: 1000; transition: all 0.4s ease; box-shadow: none; }
header .logo{ max-width: 150px; transition: all 0.3s; }
header:not(.scrolled) .logo { filter: brightness(0) invert(1); } /* Make logo white when header is transparent */
header .logo:hover { transform: scale(1.05); }
header .navbar{ background: transparent !important; max-width: 1320px; margin:0 auto; padding: 25px 0; transition: all 0.4s ease; }
header .nav-link { color: white !important; font-family: 'bold'; font-size: 13px; letter-spacing: 0.5px; padding: 10px 18px !important; transition: all 0.3s; text-shadow: 0 1px 2px rgba(0,0,0,0.2); }
header .nav-link:hover { color: var(--color-primary) !important; }
header .navbar .navbar-collapse ul{ width: 100%; justify-content:end }

/* Scrolled & Menu Opened state */
header.scrolled, header.menu-opened { background: rgba(255, 255, 255, 0.98); box-shadow: 0 2px 15px rgba(0,0,0,0.08); }
header.scrolled .nav-link, header.menu-opened .nav-link { color: #444 !important; text-shadow: none; }
header.scrolled .nav-link:hover, header.menu-opened .nav-link:hover { color: var(--color-primary) !important; }
header.scrolled .logo, header.menu-opened .logo { filter: none; }

header button.btn-mobile {color:#fff; background:transparent; padding:6px 10px; border-radius: 0; outline:none !important; border:none !important; box-shadow:none !important; }
header .navbar-toggler { border: none; }
header .btn-mobile .icon-bar { display: block; height: 3px; width: 25px; margin: 5px 0; background-color: white; transition: all 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6); }
header.scrolled .btn-mobile .icon-bar, header.menu-opened .btn-mobile .icon-bar { background-color: var(--color-primary); }
header.menu-opened .btn-mobile .icon-bar:nth-child(1) { transform: translateY(8px) rotate(45deg); }
header.menu-opened .btn-mobile .icon-bar:nth-child(2) { opacity: 0; }
header.menu-opened .btn-mobile .icon-bar:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
@media (max-width:768px){
    header .navbar .navbar-collapse ul li{ text-align:right; border-bottom: 1px solid #f8f8f8; }
    header .navbar .navbar-collapse ul li:last-child{ border-bottom: none; }
    header .navbar { padding: 10px 15px; }
}
/*END HEADER*/


/*END HEADER*/
*{line-height: 136%; } 
html{ width:100%;  scroll-behavior: smooth;}
body{background: #fff; overflow-x:hidden; scroll-behavior: smooth; }
p{ font-size: 12px; line-height: 140%; max-height: 999999px;}
li{ font-size: 12px; line-height: 140%; max-height: 999999px;}
.general{height: auto; margin: 0 auto; }
#menu{ margin: 0 auto; height: 113px; overflow: visible; position: relative; }
.seccion { height:auto; background:#fff; }
.seccion .text_descripciones{font-size: 12px; color:#7b7070; }
.seccion .text-center{ text-align: center !important }
.seccion .text-left{ text-align: left !important }
.seccion .h100{ height: 100%;}
.noselect {-webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
table.table-middle tr, table.table-middle td{ vertical-align: middle !important; }
@media screen and (min-width: 992px){
    .seccion .row-table{ display: table; }
    .seccion .row-table .col{ display: table-cell; float:none; vertical-align: middle; text-align: center;  }
}

.swal2-html-container{ height:auto; max-height: calc( 100vh - 150px); overflow: auto; }
.swal2-popup #swal2-content{ overflow: hidden;}
.swal2-html-container li,.swal2-html-container p{ font-size:17px; }
.swal2-popup.large{ width: 800px; }
.swal2-popup.legal #swal2-content{ text-align: left;}
.swal2-styled.swal2-confirm{ background-color:var(--color-primary) !important; color:#fff !important;}

.LSSI{height: auto; display: none; overflow: hidden; background: rgba(0,0,0,0.6); padding: 0 0 12px; position: fixed; bottom: 0; z-index:10; }
.LSSI .centered{min-height: 40px; margin: 0 auto; padding: 10px 0; width:auto; max-width: 1100px; }
.LSSI p{color:#fff; font-size:16px; margin: 10px; position: relative; font-family: 'regular', sans-serif; } 
.LSSI a{color:#fff; text-decoration: underline; cursor:pointer; }
.LSSI .text-link{color:#fff; text-decoration: underline; cursor:pointer; }
.LSSI .btn{background: var(--color-primary); cursor: pointer; margin: 0 5px 5px 5px; padding: 5px 15px; text-align: center; width: auto; position: relative; border-radius: 5px; text-decoration: none; }
.LSSI .btn span{color: #FFFFFF; font-family: 'regular', sans-serif; font-size: 14px; }
	

.easing{transition: all 400ms cubic-bezier(0.250, 0.460, 0.450, 0.940); transition-timing-function: cubic-bezier(0.250, 0.460, 0.450, 0.940); }
.easingMedium{transition: all 700ms cubic-bezier(0.000, 0.090, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.090, 0.000, 0.995); }
.easingMediumFast{transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995); }
.easingFast{transition: all 200ms cubic-bezier(0.250, 0.460, 0.450, 0.940); transition-timing-function: cubic-bezier(0.250, 0.460, 0.450, 0.940); }

img.responsive{ width:100%; height:auto; }
img.max-responsive{ max-width:100%; height:auto; }
img.max-responsive-centered{ max-width:100%; height:auto; margin:0 auto; display: block; }

.mt0{ margin-top: 0px !important; } .mt-10{ margin-top: -10px !important; } .mt-20{ margin-top: -20px !important; } .mt10{ margin-top: 10px !important; } .mt20{ margin-top: 20px !important; } .mt30{ margin-top: 30px !important; } .mt40{ margin-top: 40px !important; } .mt50{ margin-top: 50px !important; } .mt100{ margin-top: 100px !important; } .mb0{ margin-bottom: 0 !important; } .mb5{ margin-bottom: 5px !important; } .mb10{ margin-bottom: 10px !important; } .mb20{ margin-bottom: 20px !important; } .mb30{ margin-bottom: 30px !important; } .mb40{ margin-bottom: 40px !important; } .mb50{ margin-bottom: 50px !important; } .ml10{ margin-left: 10px !important; } .ml20{ margin-left: 20px !important; } .ml30{ margin-left: 30px !important; } .mr10{ margin-right: 10px !important;} .mr15{ margin-right: 15px !important;} .mr20{ margin-right: 20px !important;} .mr30{ margin-right: 30px !important;} .pt0{ padding-top: 0 !important;} .pt10{ padding-top: 10px !important;} .pt20{ padding-top: 20px !important;} .pt30{ padding-top: 30px !important;} .pt40{ padding-top: 40px !important;} .pt50{ padding-top: 50px !important;} .pb0{ padding-bottom: 0 !important;} .pb10{ padding-bottom: 10px !important;} .pb20{ padding-bottom: 20px !important;} .pb30{ padding-bottom: 30px !important;} .pb40{ padding-bottom: 40px !important;} .pb50{ padding-bottom: 50px !important;}
.pl20{ padding-left: 20px !important;} .pl40{ padding-left: 40px !important;} .pr20{ padding-right: 20px !important;} .pr40{ padding-right: 40px !important;}
.delay01{ animation-delay: 0.1s; -webkit-animation-delay: 0.1s; } .delay02{ animation-delay: 0.2s; -webkit-animation-delay: 0.2s; } .delay03{ animation-delay: 0.3s; -webkit-animation-delay: 0.3s; } .delay04{ animation-delay: 0.4s; -webkit-animation-delay: 0.4s; } .delay05{ animation-delay: 0.5s; -webkit-animation-delay: 0.5s; } .delay06{ animation-delay: 0.6s; -webkit-animation-delay: 0.6s; } .delay07{ animation-delay: 0.7s; -webkit-animation-delay: 0.7s; } .delay08{ animation-delay: 0.8s; -webkit-animation-delay: 0.8s; } .delay09{ animation-delay: 0.9s; -webkit-animation-delay: 0.9s; } .delay10{ animation-delay: 1s; -webkit-animation-delay: 1s; } .delay11{ animation-delay: 1.1s; -webkit-animation-delay: 1.1s; } .delay12{ animation-delay: 1.2s; -webkit-animation-delay: 1.2s; } .delay13{ animation-delay: 1.3s; -webkit-animation-delay: 1.3s; } .delay14{ animation-delay: 1.4s; -webkit-animation-delay: 1.4s; } .delay15{ animation-delay: 1.5s; -webkit-animation-delay: 1.5s; } .delay16{ animation-delay: 1.6s; -webkit-animation-delay: 1.5s; } .delay17{ animation-delay: 1.7s; -webkit-animation-delay: 1.5s; } .delay18{ animation-delay: 1.8s; -webkit-animation-delay: 1.5s; } .delay19{ animation-delay: 1.9s; -webkit-animation-delay: 1.5s; } .delay2{ animation-delay: 2s; -webkit-animation-delay: 2s; } .delay21{ animation-delay: 2.1s; -webkit-animation-delay: 2s; } .delay22{ animation-delay: 2.2s; -webkit-animation-delay: 2s; } .delay23{ animation-delay: 2.3s; -webkit-animation-delay: 2s; } .delay24{ animation-delay: 2.4s; -webkit-animation-delay: 2s; } .delay25{ animation-delay: 2.5s; -webkit-animation-delay: 2.5s; } .delay3{ animation-delay: 3s; -webkit-animation-delay: 3s; } .delay4{ animation-delay: 4s; -webkit-animation-delay: 4s; } .delay5{ animation-delay: 5s; -webkit-animation-delay: 5s; } .delay6{ animation-delay: 6s; -webkit-animation-delay: 6s; }
.text-clamp2{ line-clamp: 2; -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
.text-clamp3{ line-clamp: 3; -webkit-line-clamp:3; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
ul{ padding-left: 0; list-style: outside none; }
.badge-success{ background: #00A93E; white-space: normal; }
.badge-info{ background: #57b0c9; white-space: normal; }
.badge-danger{ background: #D03A3A; white-space: normal; }
.badge-orange{ background: #E7C03A; white-space: normal; }
.badge-purple{ background: #B25EFD; white-space: normal; }
.badge-blue {color: white; background:#4A7AF5 ; }
.badge-light{ background: #FFFFFF; white-space: normal; color:#5E5E5E; border:1px solid rgba(0,0,0,0.1); }

.manage-admin-content.cke_editable{ outline: 1px dashed white; box-shadow: 0 0 1px #000; }
.manage-admin-content.cke_focus{ outline: 2px solid white; box-shadow: 0 0 3px #000; }

.btn{ border-radius: 8px; border:none; white-space: normal; padding:5px 20px;}
.btn-primary{ background-color: var(--color-primary); font-family: 'regular'; font-size: 16px; color: white; }
.btn-primary:hover{ background-color: var(--color-primary); }
.btn-primary.btn-lg{ padding:5px 25px; font-size: 26px;  }
.btn-block{ width: 100%;}
.contentSection a.btn{ color:#fff; font-size: 18px; }
.btn-center{ display: table; margin:0 auto; }
.seccion .btn-primary.transparent {margin: 28px 8px 0 0; padding: 6px 75px 6px 63px; border: solid 2px black; background-color: transparent; font-family: 'regular'; font-size: 26px; color: #000; }

.contentSection h3{ font-weight: bold; }
.seccion{ font-family: 'regular',sans-serif; }
.seccion .slide-big{ position: relative; width: 100%; overflow: hidden;} 
.seccion .relative { position: relative; }
.seccion .absolute { position: absolute; }
.seccion .slide-big p.text-slide {position: absolute; font-family: 'bold'; font-size: 50px; line-height: 42px; transform: translate(-50%); left: 50%; top: 50%; text-shadow:0 0 5px rgba(0,0,0,0.8) }
.seccion .slide-big img{ min-height:50vh; object-fit: cover; }
.seccion .text-white {color: white;}
.seccion .title{font-size: 40px; font-family: 'bold'; text-align: center;}
.seccion .subtitle {font-family: 'bold'; font-size: 30px; }
.seccion .subtitle2 {font-family: 'bold'; font-size: 20px; }
.seccion .subtitle3 {font-size: 18px; }
.seccion .text-xl {font-size: 30px; font-family: 'regular'; }
.seccion .text-lg {font-size: 25px; font-family: 'regular'; }
.seccion .text-md {font-size: 18px; font-family: 'regular'; }
.seccion .text {font-size: 18px; font-family: 'regular'; }
.seccion .separator {height: 4px; width: 100%;background-color: var(--color-primary);}
.seccion .separator-small {width: 267px; height: 4px; margin: 30px auto; background-color: var(--color-primary); }
.seccion .checkbox label {font-size: 15px; font-family: 'regular';margin: 0 auto 10px auto; padding-left: 5px; display:block;}
.seccion .google-maps {margin-top: 20px; }
.seccion #map {width: 100%; height: auto; }
.seccion .checkbox {position: relative; }
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {position: relative; float:left; width: 30px; height: 20px; margin-top: 0; }
.seccion .background-gray{background: rgb(233 233 233 / 90%); ; padding: 50px 0 20px 0;;}
.seccion ul.list.checked {padding-left: 15px; } 
.seccion ul.list li {font-size: 20px; font-family: 'regular'; line-height: 32px; }
.seccion ul.list.checked li::before {content: "\f00c"; font-family: 'FontAwesome'; color: var(--color-primary); margin-right: 10px; margin-left: -30px; }
.seccion textarea{ resize:none; }
.seccion .w800{ max-width: 800px; display:table; margin:0 auto; }
.seccion .w1000{ max-width: 1000px; display:table; margin:0 auto; }
.row-parallax {position: relative; padding: 15px 15px; overflow: hidden; -webkit-transform-style: preserve-3d; transform-style: preserve-3d;} 
.row-parallax:before {content: ""; position: absolute; z-index: 1; top: 0; width: 100%; height: 58px; }
.parallax  {transform: translateY(-57.9271px) translateX(-50%); }
.row-parallax .container{ position:relative; z-index: 1;}
.row-parallax img.parallax {position: absolute; left: 50%; top: -20%; bottom: 20px; height: 150%; min-width:100%; z-index: 0; filter: brightness(0.5); }
.visible-sm{ display:none !important;} .visible-xs{ display:none !important;}
@media (max-width:992px){
    .hidden-sm{ display:none !important}
    .visible-sm{ display:block !important}
    .hidden-sm{ display:none}
}
@media (max-width:768px){
    .hidden-xs{ display:none}
    .hidden-xs{ display:none !important}
    .visible-xs{ display:block !important}
}

.swiper-pagination-bullets .swiper-pagination-bullet-active-main{ background:white; }

.seccion ul.special-links li{ font-size:16px; font-family: 'bold'; margin-bottom: 10px; }
.seccion ul.special-links li a{ text-decoration: none; color:#00133A;}
.seccion ul.special-links li a:hover{ text-decoration: underline;}

.seccion .img-cover{ width: 100%; height:100%; object-fit: cover;}
@media (max-width:992px){
    .seccion .img-cover{ width: 100%; height:auto; object-fit: unset;}
}

img.products {width: 80%;}
.box-white-ul {background: white; padding: 30px 15px; box-shadow: 0 3px 50px 0 rgb(0 0 0 / 16%); }
.box-white-ul ul.list {padding-left: 25px; margin-top: 30px; }
i.fa { font-size: 20px;}
.nav-logotipos {padding-left: 0; margin-bottom: 0; list-style: none; }
.nav-logotipos .logo.active {opacity: 1; }
.nav-logotipos .logo {width: 20%; padding: 0 15px; float: left; opacity: 0.5; transition: ease all 0.3s; outline: none; }
.portfolio .categorias {display: block;}
.portfolio .fusion-filters {display: none; overflow: hidden; list-style: none; margin-bottom: 55px; padding: 0; line-height: 34px; border-top: 1px solid #e7e6e6; border-bottom: 1px solid #e7e6e6; }
.portfolio .fusion-filters li{float: left; margin-right: 30px; line-height: 34px; font-size: 20px; font-family: regular;}
.portfolio .trabajos {margin: -10px; position: relative; }


@media screen and (max-width: 992px){
	.seccion .slide-big p.text-slide {font-size: 35px; }
	.seccion h1{font-size: 50px;}
	.row-parallax::before{ left:0;}
    .row-parallax::after{ left:0;}
    .row-parallax img.parallax{position: absolute; left:50%; top:0; min-width: 100%; width:auto; height: 150%; }
    .seccion .row-galeria-1 .col .overlay .title{ font-size: 19px; }
    .seccion .galeria2 .featured-services a:hover .glyphicon { opacity: 1; font-size: 12px; padding: 0px;}
}


/*MODAL center in middle*/
.modal {text-align: center; padding: 0!important; }
.modal:before {content: ''; display: inline-block; height: 100%; vertical-align: middle; margin-right: -4px; }
.modal-dialog {display: inline-block; text-align: left; vertical-align: middle; }

.row-table-price { margin-top: 40px; }
.row-table-price .bakground-top {object-fit: contain; background: #063064; border-top-left-radius: 20px; border-top-right-radius: 20px; margin-bottom: 0px; padding: 20px; }
.row-table-price .box-content {box-shadow: 0 5px 15px 0 rgb(6 48 100 / 26%); min-height: 990px; }
.row-table-price p.price {font-size: 60px; font-family: 'bold'; color: #063064; text-align: center; font-weight: bold; margin-bottom: 0; }
.row-table-price p.ahorra {font-size: 18px; font-family: 'bold'; color: #063064; text-align: center; font-weight: bold; }
.row-table-price .btn-primary.blue {background-color: var(--color-primary); padding: 15px 20px; border-radius: 9px; font-size: 20px; }
.row-table-price .box-content {border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; }
.row-table-price .box-content {padding: 52px; }
.row-table-price .box-content {background: #ebf8fb; padding: 31px;}
.swiper-container {margin-left: auto; margin-right: auto; position: relative; overflow: hidden; list-style: none; padding: 0; z-index: 1; }
.swiper-wrapper {position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; }
.swiper-slide {flex-shrink: 0; width: 100%; height: 100%; position: relative; transition-property: transform; }
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {left: 50%; transform: translateX(-50%); white-space: nowrap; }
.swiper-container .swiper-notification {position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; }

@media screen and (max-width: 1200px){
	.row-table-price .box-content {padding: 12px;}

}
@media screen and (max-width: 992px){
	.row-table-price .box-content {padding: 40px;}
}

.row-white{ padding:40px 15px; }

/*SLIDER HOME*/
.seccion .slider-home .swiper-slide { height: 80vh; min-height: 600px; overflow: hidden; }
.seccion .slider-home .swiper-slide img.responsive { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; object-position: center 24% }
.seccion .slider-home .carousel-caption { position: absolute; z-index: 2; height: 100%; width: 100%; left: 0; top: 0; padding: 0; display: flex; align-items: center; justify-content: center; text-align: left; }
.seccion .slider-home .carousel-caption .container { max-width: 1320px; }
.seccion .slider-home .carousel-caption .caption-content { max-width: 700px; }

/* Ensure text visibility over images */
.seccion .slider-home .carousel-caption p, 
.seccion .slider-home .carousel-caption .text-black { font-size: 20px; margin-top: -10px; margin-bottom: 0; color: #fff !important; text-shadow: 0 2px 5px rgba(0,0,0,0.7); }

.seccion .slider-home .carousel-caption span.background {font-family: 'bold' !important; padding: 3px 15px 3px 15px; display: inline-block; line-height: 88%; }
.seccion .slider-home .carousel-caption .btn{ font-weight: 800; }
.seccion .slider-home .carousel-caption .title{font-size: 60px; margin-top: 0px; margin-bottom: 10px; color:#fff; line-height: 1; text-align:left; }
.seccion .slider-home .carousel-caption .title strong{font-size: 60px; margin-top: 0; margin-bottom: 0; color:#fff; line-height: 1; }



@media screen and (max-width: 992px){
    .seccion .slider-home .swiper-slide { height: auto; display: flex; flex-direction: column; }
    .seccion .slider-home .swiper-slide img.responsive { position: relative; height: 350px; }
    .seccion .slider-home .carousel-caption { position: relative; height: auto; padding: 40px 0; background: #fff; color: #333; text-align: center; }
    .seccion .slider-home .carousel-caption .container { text-align: center !important; }
    .seccion .slider-home .carousel-caption .title, 
    .seccion .slider-home .carousel-caption .title strong { font-size: 38px; color: var(--color-primary); text-align: center; text-shadow: none; }
    .seccion .slider-home .carousel-caption p, 
    .seccion .slider-home .carousel-caption .text-black { color: #666 !important; text-shadow: none; margin-top: 10px; }
    .seccion .slider-home .carousel-caption .btn { margin-top: 20px; }
    .slider-home .swiper-pagination { bottom: 10px; }
}
/*END SLIDER HOME*/

/*HOME*/


/*HOME*/
.seccion-home{ background-color: #fff; }
.seccion-home .hero-section { position: relative; height: 80vh; min-height: 600px; display: flex; align-items: center; justify-content: center; text-align: center; color: white; overflow: hidden; } 
.seccion-home .hero-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(0.6); transition: transform 0.5s ease-out; } 
.seccion-home .hero-content { position: relative; z-index: 2; max-width: 900px; padding: 20px; } 
.seccion-home .hero-content h1 { font-size: 3.5em; font-family: 'bold'; margin-bottom: 20px; animation: fadeInUp 1s ease-out forwards; opacity: 0; animation-delay: 0.3s; } 
.seccion-home .hero-content p { font-size: 1.5em; margin-bottom: 30px; animation: fadeInUp 1s ease-out forwards; opacity: 0; animation-delay: 0.6s; } 
.seccion-home .hero-content .btn { font-size: 1.2em; padding: 15px 30px; border-radius: 5px; transition: background-color 0.3s ease, transform 0.3s ease; animation: fadeInUp 1s ease-out forwards; opacity: 0; animation-delay: 0.9s; } 
.seccion-home .hero-content .btn:hover { transform: translateY(-3px); } 
.seccion-home .section-heading { font-family: 'bold'; font-size: 2.5em; color: var(--color-primary); margin-bottom: 20px; } 
.seccion-home .section-subheading { font-family: 'regular'; font-size: 1.2em; color: #555; margin-bottom: 40px; } 
.seccion-home .content-block { padding: 60px 0; background-color: #fff; text-align: center; } 
.seccion-home .content-block.bg-light-gray { background-color: #f8f8f8; } 
.seccion-home .feature-item { padding: 30px; background-color: white; border-radius: 10px; box-shadow: 0 4px 20px rgba(0,0,0,0.05); transition: transform 0.3s ease, box-shadow 0.3s ease; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; } 
.seccion-home .feature-item:hover { transform: translateY(-5px); box-shadow: 0 8px 30px rgba(0,0,0,0.1); } 
.seccion-home .feature-item i { font-size: 3em; color: var(--color-primary); margin-bottom: 20px; } 
.seccion-home .feature-item h3 { font-family: 'bold'; font-size: 1.5em; color: #333; margin-bottom: 15px; } 
.seccion-home .feature-item p { font-size: 1em; color: #666; line-height: 1.6; }

.seccion-home .call-to-action { background-color: var(--color-primary); color: white; padding: 80px 0; text-align: center; }

.seccion-home .call-to-action h2 { font-family: 'bold'; font-size: 2.8em; margin-bottom: 20px; }

.seccion-home .call-to-action p { font-size: 1.3em; margin-bottom: 40px; max-width: 800px; margin-left: auto; margin-right: auto; }

.seccion-home .call-to-action .btn { background-color: white; color: var(--color-primary); font-family: 'bold'; padding: 15px 40px; border-radius: 50px; transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease; }

.seccion-home .call-to-action .btn:hover { background-color: var(--color-hover); color: white; transform: translateY(-3px); }

.seccion-home .contact-form-section { padding: 80px 0; background-color: #f0f4f0; }

.seccion-home .contact-form-section .form-control { border-radius: 8px; border: 1px solid #ddd; padding: 15px; margin-bottom: 20px; font-size: 1em; }

.seccion-home .contact-form-section textarea.form-control { min-height: 150px; resize: vertical; }

.seccion-home .contact-form-section .btn-submit { background-color: var(--color-primary); color: white; font-family: 'bold'; padding: 15px 40px; border-radius: 8px; transition: background-color 0.3s ease, transform 0.3s ease; }

.seccion-home .contact-form-section .btn-submit:hover { background-color: var(--color-hover); transform: translateY(-3px); }

.seccion-home .whatsapp-cta { margin-top: 30px; font-size: 1.2em; }

.seccion-home .whatsapp-cta a { color: var(--color-primary); text-decoration: none; font-family: 'bold'; transition: color 0.3s ease; }

.seccion-home .whatsapp-cta a:hover { color: var(--color-hover); }



/* Responsive adjustments */
@media (max-width: 768px) {
    .seccion-home .hero-section { height: 60vh; min-height: 400px; }
    .seccion-home .hero-content h1 { font-size: 2.5em; }
    .seccion-home .hero-content p { font-size: 1.1em; }
    .seccion-home .section-heading { font-size: 2em; }
    .seccion-home .call-to-action h2 { font-size: 2em; }
    .seccion-home .call-to-action p { font-size: 1em; }
}
/*END HOME*/

/*CONTACTO*/
.contact-2 .form-group input {display: block; width: 100%; height: 50px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: black; background-color: transparent; background-image: none; border: 3px solid #707070; border-radius: 10px; }
.contact-2 textarea.form-control {display: block; width: 100%; height: 300px; padding: 25px 12px; font-size: 14px; line-height: 1.42857143; color: black; background-color: transparent; background-image: none; border: 3px solid #707070; border-radius: 15px; border-color: var(--color-primary); font-size: 22px; } 
.contact-2 .form-group .form-control {border-color: var(--color-primary); font-size: 15px; }
.contact-3 .pie-slider {background-color: var(--color-primary); position: relative; width: 100%; display: inline-block; padding: 30px 10px; }
.contact-3 .pie-slider h1{ margin:0; font-family: 'bold'; }
.contact-3 .fa-map-marker{ font-size:40px; }
/*END CONTACTO*/

/*QUIENES SOMOS*/
.seccion-quienes-somos .linea {position: relative; }
.seccion-quienes-somos .linea p {display: table; margin-left: auto; margin-right: auto; background: white; z-index: 1; position: relative; padding-right: 16px; padding-left: 16px; }
.seccion-quienes-somos .linea::after {content: ''; height: 2px; width: 100%; background: var(--color-primary); display: block; position: absolute; top: 50%; }
.seccion-quienes-somos .title-first {font-size: 40px; margin-top: 30px; font-weight: normal; }
.seccion-quienes-somos .fa{font-size: 25px;}
.seccion-quienes-somos .box-blue {padding: 30px 100px; border-radius: 37px; background-color: rgb(233 233 233 / 90%); }
.seccion-quienes-somos .box-blue.pequeña {padding: 20px 30px; border-radius: 37px; background-color: rgb(233 233 233 / 90%); }
.seccion-quienes-somos .col-text-special {padding-left: 100px; padding-right: 60px; }
.seccion-quienes-somos .background-gray.pasos-a-seguir span.number{background-color: #099ECE; color: white; border-radius: 50%; padding: 10px 18px; font-family: 'bold'; margin-right: 10px; margin-left: -55px; float: left;}
.seccion-quienes-somos .background-gray.pasos-a-seguir ul.list {padding-left: 55px;}
.seccion-quienes-somos .background-gray.pasos-a-seguir ul.list li{margin-bottom: 25px;}

@media screen and (max-width: 992px){
	.seccion-quienes-somos .col-text-special {padding-left: 20px; padding-right: 20px; }
	.seccion-quienes-somos .box-blue {padding: 20px 30px; }

}
/*END QUIENES SOMOS*/



/*BLOG*/
.sidebar-blog { margin-top: 20px; width: 100%; box-sizing: border-box; background-color: transparent; border:none; }
.sidebar-blog .containerSidebar { position: relative; margin-bottom: 40px; }
.sidebar-blog .title { margin-bottom: 0; font-weight: normal; font-family: 'bold'; font-size: 25px; text-align:left; }

.sidebar-blog ul{  padding-left:0; list-style: outside none none; margin-bottom: 0; }
.sidebar-blog ul li{ display: block; margin-top: 10px;}
.sidebar-blog ul li:hover{ background-color:#fff; }
.sidebar-blog .latestPosts ul li:hover a{ color:#1A1916; }
.sidebar-blog ul li a{ color:#1A1916; text-decoration: none; display: block; width: 100%; font-size:20px; font-family: 'light'; line-height: 150%}
.sidebar-blog ul li a:hover{ text-decoration: underline; }
.sidebar-blog .popularTags ul li{ display: inline-block; float:left; }
.sidebar-blog .popularTags ul li a{ padding:5px 15px; background-color:#008cd0; color:#fff; text-decoration: none; display: inline-block; width: auto; font-size: 14px;}
.sidebar-blog .btn{ color:#30394D !important }
.sidebar-blog .row-icons img{ width: 50px; margin:0 3px 30px 3px; }

.seccion-blog .row-top{ background-color: #000; padding:30px 15px; }
.seccion-blog .title{ color:#c3c3c4; }
.seccion-blog .subtitle{ color:#c3c3c4; font-size:28px; }
.seccion-blog p,.seccion-blog a,.seccion-blog li{ color:#1A1916; }
.seccion-blog .text-orange {color: #ff6501; }
.seccion-blog .banner{display: block; width: 950px; height: auto; }
.seccion-blog .postContainer { box-sizing: border-box; display: block; height: auto; position:relative; overflow: hidden; margin-top: 20px; margin-bottom: 30px; padding-bottom: 15px; }
.seccion-blog .postDate {background-color: transparent; box-sizing: border-box; display:block; padding: 9px; }
.seccion-blog .glyphicon-time{ color:#666666; font-size:12px; }
.seccion-blog .postContent{ text-decoration: none; display: block; position: relative; height: 100%;}
.seccion-blog .postContent .time{font-size:12px;}
.seccion-blog .postContent .imgPost{width: 100%;}
.seccion-blog .postContent .textPost{ color: #363636; font-size:18px; display: block; margin-bottom: 10px; }
.seccion-blog .postContent .textPost b{ color: #1C1C1C; font-size:18px; }
.seccion-blog .postContent .textPost h3{ color: #008cd0;  }
.seccion-blog .postContent .textPost h4{ color: #000; }
.seccion-blog .postContent .textPost strong{ color: #1C1C1C; }
.seccion-blog .postContent .textPost .orange{ color: #ff6501; }
.seccion-blog .postContent .textPost .blue{ color: #008cd0; }
.seccion-blog .postContent .textPost pre{ font-weight: bold; border-radius: 0; border:0; border-bottom: 1px solid #008cd0; }
.seccion-blog .postContent .textPost pre:before{ content:"\E044"; display: inline; font-family: "Glyphicons Halflings"; float:left; margin-right: 10px; color:#008cd0;  }
.seccion-blog .postContent .readmore:after{ content: "\e161"; font-family: "Glyphicons Halflings"; display: inline; margin-left: 10px; font-size:13px ;}
.seccion-blog .postContent .readmore{ float: right; font-weight: bold; color:#ff5e00;  margin-top: 15px; text-decoration: none;}
.seccion-blog .postContent .readmore:hover{ color:black;}
.seccion-blog .postContent .textPost .text-clamp2{ line-clamp: 2; -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
.seccion-blog .postContainer  .btn{ color:#30394D;}
.seccion-blog .postDate span {border-bottom: 1px solid #E1E1E1; display: inline-block; font-size: 60px; line-height: 50px; text-align: center; width: 100%; padding-bottom: 5px; }
.seccion-blog .postDate small { display:block; color: #7F7F7F; width: 100%; text-align: center; margin-top: 5px; }
.seccion-blog .titlePost{ margin-top:0; font-weight: bold; margin-bottom: 10px; font-family: 'regular'; font-size:28px; color:#c3c3c4; height: 26px; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; display: -webkit-box; display: box; display: -ms-flexbox; }
.seccion-blog .titlePost a{ text-decoration: none; font-size: 18px; font-weight: normal; color:#c3c3c4; font-family: 'regular'; line-height: 100%; text-transform: uppercase; }
.seccion-blog .btnLoadMore{ color:white; }


.seccion-blog .postContainer .separator{ margin-top: 0}
.seccion-blog .tagConnected li{ display: inline; margin-right: 5px; }
.seccion-blog .tagConnected li a{ color:#777; font-size: 18px; font-weight: normal; text-transform: uppercase; font-family: 'light'; white-space: nowrap;}
.seccion-blog .tagConnected li a:hover{ text-decoration: underline; }
.seccion-blog p.shareTitle{ width: 100%; display:block; font-size: 25px; }
.seccion-blog .socialButtons {box-sizing: border-box; height: auto; min-height: 40px; padding: 10px 0 0 10px; width: 100%; background-color: #F7F7F7;}
.seccion-blog h1 span .glyphicon{ font-size:24px;}
.seccion-blog .pagination li.active a{ background: #008cd0; border:1px solid #008cd0; }
.seccion-blog .extra{ transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995);}
.seccion-blog .postContainer .subtitle2{ padding:8px; }
.seccion-blog .postContainer .postDate{ padding:8px; }
.seccion-blog .postContainer .textPost{ padding:8px; }
.seccion-blog .postContainer .tags-connected{ padding:8px; }
.seccion-blog .postContainer .tags-connected .badge{ background:#000; }
.seccion-blog .postContainer .over-layer{ display:block; opacity:0; transition:ease all .3s; position:absolute; top:50%; left:50%; transform:translateX(-50%) translatey(-50%); }
.seccion-blog .postContainer .over-layer img{ position:absolute; top:80%; left:50%; transform:translateX(-50%) translateY(-50%); transition:ease-out all .3s; }
.seccion-blog .postContainer:hover .over-layer{ background:rgba(91, 120, 199, 0.4); color:white;  font-size:100px; font-family: 'bold'; width: 100%; height:100%; z-index: 10; opacity:1;}
.seccion-blog .postContainer:hover .over-layer img{ top:50%; }
.seccion-blog .fixed{ position: relative; margin-top: 100px; }

.seccion-blog-detail .postContainer .title{ color:#222; }
.seccion-blog-detail .postContainer .subtitle{ color:#222; font-size:28px; }
.seccion-blog-detail p,.seccion-blog-detail a,.seccion-blog-detail li{ font-family:'regular'; }
.seccion-blog-detail h2,.seccion-blog-detail h3,.seccion-blog-detail h4{ font-family:'regular'; font-weight: normal; }
.seccion-blog-detail .contentSection .breadcrumbs{ margin:-15px -15px 0 -15px; background-image: linear-gradient(#4d4d4f, #000); }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb{ background-image: linear-gradient(#4d4d4f, #000); color:white; margin-bottom: 0; }
.seccion-blog-detail .text-orange {color: #ff6501; }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb a{ color:#E9E5D3; font-size:14px; }
.seccion-blog-detail .contentSection .breadcrumbs .breadcrumb span{ font-size:14px; }
.seccion-blog-detail .postContainer { box-sizing: border-box; display: block; height: auto; overflow: hidden; }
.seccion-blog-detail .postDate {background-color: #F7F7F7; box-sizing: border-box; float: left; padding: 9px; }
.seccion-blog-detail .postContent .imgPost{width: 100%; margin-bottom: 0; }
.seccion-blog-detail .postContent .textPost{ color: #666666; font-size: 20px; font-family: 'regular'; color: #555555; text-align: left }
.seccion-blog-detail .postContent .textPost a{ font-size: 18px; color:#666666;  }
.seccion-blog-detail .postContent .textPost a:hover{ color:#222;  }
.seccion-blog-detail .postContent .textPost b{ font-family: 'regular'; font-weight: normal; color:#222; }
.seccion-blog-detail .postContent .textPost strong{ font-family: 'regular'; font-weight: normal; color:#222; }
.seccion-blog-detail .postContent .textPost p{ color: #666666; }
.seccion-blog-detail .postContent .textPost h3{ color: #008cd0;  }
.seccion-blog-detail .postContent .textPost h4{ color: #000; }
.seccion-blog-detail .postContent .textPost .big{ font-size: 27px !important; font-weight: normal; margin-top: 5px; color:#008cd0; line-height: 120%; }
.seccion-blog-detail .postContent .time span{font-size:14px; }
.seccion-blog-detail .postContent .time{font-size:14px; text-align: right; color:rgba(0,0,0,0.5);}
.seccion-blog-detail .postContent .textPost .bold{ color:#444; }
.seccion-blog-detail .postContent .textPost strong{ color:#444; font-weight: bold; }
.seccion-blog-detail .postContent li{ font-size: 18px; }
.seccion-blog-detail .postContent ul{ padding-left: 0; list-style: outside none; margin-top: 10px; margin-bottom: 10px; }
.seccion-blog-detail .postContent ul li::before{ content:"\e046"; font-size:12px; font-family: 'Glyphicons Halflings'; float:left; margin-right: 10px; color:#999; }
.seccion-blog-detail .postContent ol{ padding-left: 0; margin-top: 10px; margin-bottom: 10px; list-style:outside none; counter-reset: item; }
.seccion-blog-detail .postContent ol li::before{ color:#444; font-size:15px; content: counter(item) ". "; counter-increment: item; font-weight: bold; }
.seccion-blog-detail .postContent .textPost .orange{ color: #e35a17; }
.seccion-blog-detail .postContent .textPost .blue{ color: #008cd0; }
.seccion-blog-detail .postContent .textPost pre{ font-weight: bold; border-radius: 0; border:0; border-bottom: 1px solid #62a217; }
.seccion-blog-detail .postContent .textPost pre:before{ content:"\E044"; display: inline; font-family: "Glyphicons Halflings"; float:left; margin-right: 10px; color:#444;  }
.seccion-blog-detail .postContent .readmore:after{ content: "\e161"; font-family: "Glyphicons Halflings"; display: inline; margin-left: 10px; }
.seccion-blog-detail .postContent .readmore{ float: right; font-weight: bold; color:#ff5e00; margin-top: 15px; text-decoration: none;}
.seccion-blog-detail .postContent .readmore:hover{ color:black;}
.seccion-blog-detail .postContent table{ border-color: #ccc; width: 100%;  }
.seccion-blog-detail .postContent table th{ padding:4px 10px; border-color: #ccc; border-bottom: 3px #ccc solid; }
.seccion-blog-detail .postContent table td{ padding:4px 10px; border-color: #ccc; }
.seccion-blog-detail .postContent .btn{ margin-bottom: 10px; }
.seccion-blog-detail .postContent a{ color:#008cd0;}
.seccion-blog-detail .postContent a.btn{ text-decoration: none; color:white; }
.seccion-blog-detail .postContent a.btn.yellow{ color:#30394D; }
.seccion-blog-detail .postContent a.btn.blue{ color:white; }
.seccion-blog-detail .postContent a.btn.orange{ color:white; }
.seccion-blog-detail .postDate span {border-bottom: 1px solid #E1E1E1; display: inline-block; font-size: 60px; line-height: 50px; text-align: center; width: 100%; padding-bottom: 5px;}
.seccion-blog-detail .postDate small { display:block; color: #7F7F7F; width: 100%; text-align: center; margin-top: 5px; }
.seccion-blog-detail .titlePost{ margin-top:0; text-align: left; font-weight: normal; }
.seccion-blog-detail .titlePost a{ text-decoration: none; color: #008cd0; font-size: 20px; }
.seccion-blog-detail .postContainer .separator{ margin-top: 0}
.seccion-blog-detail ul.tagConnected li::before{ content:''; }
.seccion-blog-detail .tagConnected { display: inline-block; list-style: outside none none; padding-top: 15px; padding-bottom: 20px; width: 100%; }
.seccion-blog-detail .bottom p.big{ color:white !important; padding-top: 10px; }
.seccion-blog-detail .tagConnected li{ display: inline; padding:0 7px 0 7px; }
.seccion-blog-detail .tagConnected li+li{ border-left:3px solid #008cd0; }
.seccion-blog-detail .tagConnected li a{ background: var(--color-primary); padding:10px 15px; border-radius: 5px; color:white; font-size: 16px; font-weight: normal; font-family: 'light'; text-decoration: none; }
.seccion-blog-detail .tagConnected li a:hover{ text-decoration: underline; }
.seccion-blog-detail p.shareTitle{ width: 100%; display:block; font-size: 25px; }
.seccion-blog-detail .socialButtons {box-sizing: border-box; height: auto; min-height: 40px; padding: 10px 0 0 10px; width: 100%; background-color: #F7F7F7;}
.seccion-blog-detail h1 span .glyphicon{ font-size:24px;}
.seccion-blog-detail blockquote p{ color:white; font-size:25px; }
.seccion-blog-detail .postContent blockquote{ margin:0; border:none; padding:20px 15px; color:white; font-size:25px; font-family:'regular'; font-style: normal; background: rgb(35,180,176);
background: -moz-linear-gradient(left,  rgba(35,180,176,1) 0%, rgba(10,103,139,1) 100%);
background: -webkit-linear-gradient(left,  rgba(35,180,176,1) 0%,rgba(10,103,139,1) 100%);
background: linear-gradient(to right,  rgba(35,180,176,1) 0%,rgba(10,103,139,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#23b4b0', endColorstr='#0a678b',GradientType=1 );
}
.seccion-blog-detail .postContent blockquote p{ color:white !important; margin-top: 0; font-size:25px; font-family:'regular'}
.seccion-blog-detail .textPost .bottom{ background-image: linear-gradient(#4d4d4f, #000); color:white; }
.seccion-blog-detail .textPost a{ text-decoration: underline; }
.seccion-blog-detail .extra{ transition: all 400ms cubic-bezier(0.000, 0.520, 0.000, 0.995); transition-timing-function: cubic-bezier(0.000, 0.520, 0.000, 0.995);}
.seccion-blog-detail .fixed{ position: relative; margin-top: 100px; }
.seccion-blog-detail .share-box .big{ display: inline-block; }
.seccion-blog-detail .share-box #st-1{ display: inline-block; }
.seccion-blog-detail .share-box p.text-info{ font-size:18px; color:#1978f2; margin-top: 15px; }
.seccion-blog-detail .share-box .likefb{ display: inline-block; margin-top: -20px; }
@media screen and (max-width: 1200px){
    .seccion-blog-detail .share-box{ margin-bottom: 100px; }
}
@media screen and (max-width: 992px){
    .seccion-blog-detail .share-box{ margin-bottom: 20px; text-align: center; }
  .seccion-blog-detail .container > div{ padding:0; }
  .seccion-blog-detail .postContent .textPost{ font-size: 20px; line-height: 150%; }
  .seccion-blog-detail .postContent .textPost a{ font-size: 20px; }
  .seccion-blog-detail .sidebar-blog{ margin-bottom: 100px; }
  .seccion-blog-detail .sidebar ul li a{ font-size: 18px;}
  .seccion-blog-detail .container-caption{ width: 100%; height: 100%; position: absolute; left:0; top:0; }
  .seccion-blog-detail .carousel-caption{ top:0; transform:initial; }
  .seccion-blog-detail .carousel-caption h2{ overflow: hidden; font-size:38px; top:50%; transform:translateY(-50%); }
}
/*END BLOG*/

.login-layer{ position:fixed; top:0; left:0; width:100%; height:100%; z-index: 10; overflow:auto; }
.login-layer .backdrop{ top:0; left:0; width: 100%; height: 100%; position:fixed; background-color: rgba(0,0,0,0.5) }
.login-layer .layer{ background-color: white; top:50%; left:50%; transform:translateX(-50%) translateY(-50%); position:absolute; padding:15px 20px; width: 100%; max-width: 470px; font-family: 'light'; font-size:15px; -webkit-animation: custom-login 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; animation: custom-login 0.6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both; max-height:calc(100% - 15px); overflow: auto; }
.login-layer .layer p{ font-family: 'light'; font-size:15px; z-index: 1; }
.login-layer .btn-primary{ padding:6px 15px !important; }
.login-layer .btn-primary i{ font-size: 25px; }
.login-layer .form-control {box-shadow: none; border-bottom: 1px solid rgba(0,0,0,.075); font-family: 'regular'; margin-bottom: 10px; }
.login-layer .close {margin-top: 5px; font-family: serif; font-size: 35px; position: absolute; z-index: 10; top: 0; right: 12px; opacity:1; color:white; text-shadow:0 0 3px black; cursor:pointer; }
.login-layer p.subtitle{ font-family: 'light'; font-size:28px; margin-top: 20px; color:#5d4e42; }
.login-layer p.subtitle b{ color:#5d4e42; font-family: 'bold';  }
.login-layer p.subtitle2{ font-family: 'bold'; color:#212121; font-size:18px; margin-bottom: 20px; }
.login-layer .pass{ float:right; margin-top: 30px; font-size:14px; color:#212121;}
.login-layer .checkbox label{ font-family: 'light'; color:#5d4e42; font-size: 14px; }
.login-layer .checkbox a{ font-family: 'bold'; color:#5d4e42; font-size: 14px; text-decoration: underline; }
.login-layer .header{ position:relative; margin:-15px -20px 0 -20px; }
.login-layer .header .btn {position: absolute; bottom: 10px; left: 50%; z-index: 1; transform: translateX(-50%); background:rgba(255,255,255,0.9); color: #3e2e24; border-radius: 0; font-size: 20px;}
.login-layer .header .btn:hover{ background:rgba(255,255,255,0.7); }

.login-layer .header .logo-label{ position:absolute; top:0; left:0; z-index: 1; }
.login-layer .header .background{ position:relative; }
.login-layer .badge-light{ display: table; margin: 14px auto; background-color: white; border: 1px solid #5d4e42; color: black; padding: 8px 10px; font-family: 'bold'; font-weight: bold; font-size: 14px; }
@media screen and (max-width: 992px) {
    .login-layer .form-control{ font-size:18px; }
}

/*footer*/
#pie{position: relative; height:auto; color:white; background: var(--color-primary); }
.footer-minimal a { color: rgba(255,255,255,0.8); text-decoration: none; font-size: 14px; transition: color 0.3s; }
.footer-minimal a:hover { color: white; }
.footer-minimal .list-inline-item { color: rgba(255,255,255,0.3); }

/* WHATSAPP FLOAT */
.whatsapp-float { position: fixed; bottom: 30px; right: 30px; background-color: #25d366; color: white; width: 60px; height: 60px; border-radius: 50px; text-align: center; font-size: 35px; z-index: 1001; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; text-decoration: none !important; }
.whatsapp-float:hover { background-color: #128c7e; transform: scale(1.1) rotate(5deg); color: white; }
.whatsapp-float .float-label { position: absolute; right: 70px; background: white; color: #333; padding: 5px 15px; border-radius: 20px; font-size: 14px; font-family: 'bold'; pointer-events: none; opacity: 0; transition: all 0.3s ease; white-space: nowrap; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
.whatsapp-float:hover .float-label { opacity: 1; transform: translateX(-10px); }

#pie .btn{font-size: 16px; }

.container-pils{ padding: 5px 25px; border-bottom: 1px solid #F5F5F5;  }
.container-pils .nav-pills{ border-radius: 0; }
.container-pils .nav-pills > li.active > a{ background-color: #008cd0; }
.container-pils .nav-pills > li a{ border-radius: 0; }

/* SECCION HOME CUSTOM STYLES */
.seccion-home { background: var(--color-white); }
.seccion-home .section-padding { padding-top: 40px; padding-bottom: 40px; }
.seccion-home .anchor { position: relative; top: -100px; visibility: hidden; display: block; }

.seccion-home .section-heading { font-family: 'bold'; font-size: 42px; color: var(--color-primary); margin-bottom: 25px; line-height: 1.2; }
.seccion-home .text-green { color: var(--color-primary); }

/* SLIDER OVERRIDES */
.slider-home .carousel-caption { bottom: 20%; }
.slider-home .carousel-caption h1 { font-size: 56px; line-height: 1.1; margin-bottom: 20px; text-shadow: 2px 2px 4px rgba(0,0,0,0.3); }

/* METRICS */
.row-metrics .metric-box { padding: 40px 20px; background: var(--color-light-green); border-radius: 20px; border: 1px solid #eef; transition: all 0.3s; height: 100%; display: flex; flex-direction: column; justify-content: center; }
.row-metrics .metric-box:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(40, 167, 69, 0.1); border-color: var(--color-primary); }
.row-metrics .subtitle { font-size: 48px; color: var(--color-primary); margin-bottom: 10px; font-family: 'bold'; }
.row-metrics p { font-family: 'bold'; font-size: 15px; color: #555; letter-spacing: 0.5px; text-transform: uppercase; }

/* BUBBLES / FEATURES */
.bubble-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; justify-content: center; }
.feature-bubble { background: white; border-radius: 15px; padding: 30px 25px; box-shadow: 0 5px 20px rgba(0,0,0,0.05); transition: all 0.3s ease; border: 1px solid #f0f0f0; text-align: left; min-height: 120px; display: flex; align-items: center; position: relative; }
.feature-bubble::before { content: "\F26A"; font-family: "bootstrap-icons"; color: var(--color-primary); font-size: 24px; position: absolute; left: 20px; top: 50%; transform: translateY(-50%); }
.feature-bubble:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(40, 167, 69, 0.12); border-color: var(--color-primary); }
.feature-bubble p { margin-bottom: 0; padding-left: 35px; font-size: 16px; color: #444; font-family: 'bold'; line-height: 1.3; }

/* TARIFFS */
.tariff-card { border: 1px solid #eee; border-radius: 20px; padding: 40px 30px; transition: all 0.3s; background: white; position: relative; overflow: hidden; height: 100%; }
.tariff-card.featured { border: 2px solid var(--color-primary); box-shadow: 0 20px 40px rgba(40, 167, 69, 0.1); }
.tariff-card.featured::before { content: 'GARANTIZADO'; position: absolute; top: 20px; right: -35px; background: var(--color-primary); color: white; padding: 5px 40px; transform: rotate(45deg); font-size: 10px; font-family: 'bold'; }
.tariff-card h3 { font-family: 'bold'; color: #333; margin-bottom: 15px; font-size: 24px; }
.tariff-card .price { font-size: 42px; color: var(--color-primary); font-family: 'bold'; margin-bottom: 25px; }
.tariff-card .price span { font-size: 18px; color: #999; font-family: 'regular'; }
.tariff-card ul { text-align: left; margin-bottom: 30px; }
.tariff-card ul li { padding: 8px 0; border-bottom: 1px solid #f9f9f9; display: flex; align-items: center; font-size: 15px; }
.tariff-card ul li i { color: var(--color-primary); margin-right: 12px; font-size: 18px; }

/* TIMELINE STYLES (SINGLE PAGE) */
.pasos-a-seguir { list-style: none; padding: 0; position: relative; max-width: 800px; margin: 0 auto; }
.pasos-a-seguir li { position: relative; padding-left: 100px; margin-bottom: 60px; min-height: 80px; display: flex; flex-direction: column; justify-content: center; }
.pasos-a-seguir li .number { position: absolute; left: 0; top: 0; width: 70px; height: 70px; background-color: var(--color-primary); color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: 'bold'; font-size: 30px; box-shadow: 0 8px 20px rgba(40, 167, 69, 0.3); z-index: 2; }
.pasos-a-seguir li::after { content: ''; position: absolute; left: 35px; top: 70px; width: 2px; height: calc(100% - 10px); background: #e0e0e0; z-index: 1; }
.pasos-a-seguir li:last-child::after { display: none; }
.pasos-a-seguir li h4 { font-family: 'bold'; font-size: 22px; color: #333; margin-bottom: 10px; }
.pasos-a-seguir li p { font-size: 16px; color: #666; margin-bottom: 0; }

/* INFO BLOCKS */
.info-block { padding: 60px; border-radius: 30px; margin-bottom: 30px; }
.info-block.bg-light-green { background: var(--color-light-green); }
.info-block h3 { font-family: 'bold'; font-size: 32px; margin-bottom: 25px; }

/* LISTS WITH ICONS */
ul.list-checked { list-style: none; padding: 0; }
ul.list-checked li { position: relative; padding-left: 35px; margin-bottom: 15px; font-size: 17px; line-height: 1.4; color: #444; }
ul.list-checked li i { position: absolute; left: 0; top: 3px; color: var(--color-primary); font-size: 20px; }

/* CONTACT FORM HOME */
.contact-form-section { background: var(--color-light-green); }
#homeContactForm { border: none; overflow: hidden; }
.premium-form { padding: 60px 45px; }
#homeContactForm label { font-family: 'bold'; font-size: 14px; color: #444; margin-bottom: 10px; display: block; }
#homeContactForm .form-control { background: #fff; border: 1px solid #ddd; border-radius: 12px; height: auto; padding: 15px 20px; font-size: 15px; transition: border-color 0.3s; }
#homeContactForm .form-control:focus { border-color: var(--color-primary); box-shadow: 0 0 10px rgba(40, 167, 69, 0.1); border-width: 1.5px; }

.submit-premium { background: linear-gradient(135deg, var(--color-primary) 0%, #1e7e34 100%); border: none !important; transition: all 0.3s ease; padding: 20px !important; font-size: 18px !important; letter-spacing: 1px; border-radius: 15px !important; color: white !important; font-family: 'bold'; }
.submit-premium:hover { transform: translateY(-3px); box-shadow: 0 12px 25px rgba(40, 167, 69, 0.4) !important; background: linear-gradient(135deg, #1e7e34 0%, var(--color-primary) 100%); color: white !important; }
.submit-premium:active { transform: translateY(-1px); }

/* RESPONSIVE FIXES */
@media (max-width: 992px) {
    .section-padding { padding-top: 30px; padding-bottom: 30px; }
    .seccion-home .section-heading { font-size: 32px; }
    .slider-home .carousel-caption h1 { font-size: 36px; }
    .pasos-a-seguir li { padding-left: 85px; }
    .pasos-a-seguir li .number { width: 60px; height: 60px; font-size: 24px; }
    .pasos-a-seguir li::after { left: 30px; }
    .info-block { padding: 30px; }
    .premium-form { padding: 40px 20px; }
    .row-metrics .subtitle { font-size: 36px; }
    .bubble-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
    .feature-bubble { padding: 20px; min-height: 100px; }
    .feature-bubble p { font-size: 15px; }
    
    .seccion .slider-home .swiper-slide { height: auto; display: flex; flex-direction: column; }
    .seccion .slider-home .swiper-slide img.responsive { position: relative; height: 80dvh; }
    .seccion .slider-home .carousel-caption { position: relative; height: auto; padding: 40px 0; background: #fff; color: #333; text-align: center; }
    .whatsapp-float { bottom: 20px; right: 20px; width: 50px; height: 50px; font-size: 28px; }
    .whatsapp-float .float-label { display: none; }
}

/* LANDING PAGE - SIMULADOR DE DEUDAS */

/* Header simplificado (fuera de .seccion-landing porque está antes del wrapper) */
.landing-header { background: #fff; position: relative; border-bottom: 1px solid #f0f0f0; z-index: 1000; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.landing-header .logo { max-width: 140px; filter: none !important; }
.landing-header .confidencial-badge { color: #888; font-size: 13px; font-family: 'regular'; }

/* Todo lo demás encapsulado en .seccion-landing */
.seccion-landing { padding-top: 0; }
.seccion-landing .landing-hero { padding: 50px 0 40px; background: #fff; }
.seccion-landing .landing-h1 { font-family: 'bold'; font-size: 34px; line-height: 1.2; color: #222; margin-bottom: 15px; }
.seccion-landing .landing-subtitle { font-family: 'regular'; font-size: 18px; color: #555; margin-bottom: 25px; line-height: 1.5; }
.seccion-landing .landing-section-heading { font-family: 'bold'; font-size: 38px; color: var(--color-primary); margin-bottom: 25px; line-height: 1.2; }
.seccion-landing .landing-hero-img { border-radius: 16px; width: 100%; height: 100%; min-height: 400px; object-fit: cover; display: block; }

/* Simulador */
.seccion-landing .simulador-wrapper { background: #fff; border: 2px solid var(--color-primary); border-radius: 20px; padding: 30px 28px; box-shadow: 0 10px 40px rgba(40,167,69,0.1); margin-bottom: 40px; }
.seccion-landing .simulador-titulo { font-family: 'bold'; font-size: 20px; color: var(--color-primary); text-align: center; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid var(--color-light-green); }
.seccion-landing .sim-back-btn { background: none; border: 2px solid var(--color-primary); color: var(--color-primary); font-size: 15px; font-family: 'bold'; padding: 10px 18px; border-radius: 10px; cursor: pointer; display: inline-block; transition: all 0.2s; margin-bottom: 14px; }
.seccion-landing .sim-back-btn:hover { background: var(--color-primary); color: #fff; }
.seccion-landing .sim-back-btn--primary { background: var(--color-primary); border: 2px solid var(--color-primary); color: #fff; font-family: 'bold'; font-size: 15px; padding: 14px 24px; border-radius: 10px; display: inline-block; margin-top: 15px; }
.seccion-landing .sim-back-btn--primary:hover { background: #1e7e34; border-color: #1e7e34; }
.seccion-landing .simulador-step { display: none; }
.seccion-landing .simulador-step.active { display: block; }
.seccion-landing .simulador-pregunta { font-family: 'bold'; font-size: 16px; color: #333; margin-bottom: 18px; line-height: 1.5; }

/* Progress bar */
.seccion-landing .sim-progress-wrap { margin-bottom: 18px; }
.seccion-landing .sim-progress-label { font-size: 11px; color: #aaa; margin-bottom: 6px; font-family: 'regular'; text-transform: uppercase; letter-spacing: 0.5px; }
.seccion-landing .sim-progress-wrap .progress { height: 5px; border-radius: 10px; background: #eee; }
.seccion-landing .sim-progress-wrap .progress-bar { background: var(--color-primary); border-radius: 10px; transition: width 0.4s ease; }

/* Opciones */
.seccion-landing .sim-options-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 10px; }
.seccion-landing .sim-options-grid.single-col { grid-template-columns: 1fr; }
.seccion-landing .sim-option-btn { background: var(--color-light-green); border: 2px solid #d6eeda; border-radius: 12px; padding: 14px 16px; font-family: 'regular'; font-size: 14px; color: #333; cursor: pointer; text-align: left; transition: all 0.2s ease; line-height: 1.3; }
.seccion-landing .sim-option-btn:hover { background: var(--color-primary); color: #fff; border-color: var(--color-primary); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(40,167,69,0.2); }
.seccion-landing .sim-option-btn small { color: #888; font-size: 12px; transition: color 0.2s; }
.seccion-landing .sim-option-btn:hover small { color: rgba(255,255,255,0.8); }
.seccion-landing .sim-option-positive { border-color: var(--color-primary); }
.seccion-landing .sim-option-multi .sim-check-on { display: none; color: #fff; }
.seccion-landing .sim-option-multi .sim-check-off { color: #aaa; }
.seccion-landing .sim-option-multi.active { background: var(--color-primary); color: #fff; border-color: var(--color-primary); }
.seccion-landing .sim-option-multi.active small { color: rgba(255,255,255,0.8); }
.seccion-landing .sim-option-multi.active .sim-check-on { display: inline; }
.seccion-landing .sim-option-multi.active .sim-check-off { display: none; }
.seccion-landing .sim-multi-hint { color: #888; font-size: 12px; font-family: 'regular'; }

/* Loading (paso 7) */
.seccion-landing .sim-loading-wrap { padding: 10px 0; }
.seccion-landing .sim-loading-icon { font-size: 44px; color: var(--color-primary); display: block; margin-bottom: 15px; }
.seccion-landing .sim-loading-text { font-family: 'regular'; font-size: 15px; color: #666; min-height: 28px; }
.seccion-landing .sim-loading-bar { margin: 18px 0 5px; height: 8px; border-radius: 10px; background: #eee; overflow: hidden; }
.seccion-landing .sim-loading-fill { height: 100%; border-radius: 10px; background: linear-gradient(90deg, var(--color-primary), #1e7e34); width: 0%; }

/* Paso 8: APTO */
.seccion-landing .sim-apto-badge { background: var(--color-light-green); border: 2px solid var(--color-primary); border-radius: 14px; padding: 18px 20px; margin-bottom: 18px; }
.seccion-landing .sim-apto-tag { background: var(--color-primary); color: #fff; font-family: 'bold'; font-size: 11px; letter-spacing: 1px; padding: 3px 10px; border-radius: 20px; display: inline-block; margin-bottom: 10px; }
.seccion-landing .sim-apto-titulo { font-family: 'bold'; font-size: 16px; color: #222; margin-bottom: 8px; line-height: 1.4; }
.seccion-landing .sim-apto-subtitulo { font-family: 'regular'; font-size: 13px; color: #555; margin-bottom: 0; line-height: 1.5; }
.seccion-landing .sim-lead-form .sim-input { border: 1.5px solid #ddd; border-radius: 10px; padding: 12px 15px; font-size: 14px; margin-bottom: 10px; transition: border-color 0.3s; width: 100%; display: block; }
.seccion-landing .sim-lead-form .sim-input:focus { border-color: var(--color-primary); box-shadow: 0 0 8px rgba(40,167,69,0.12); outline: none; }
.seccion-landing .btn-agendar { background: linear-gradient(135deg, var(--color-primary) 0%, #1e7e34 100%); border: none; color: #fff !important; font-family: 'bold'; font-size: 15px; padding: 16px 20px; border-radius: 12px; cursor: pointer; transition: all 0.3s; display: block; text-align: center; }
.seccion-landing .btn-agendar:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(40,167,69,0.35); }
.seccion-landing .btn-agendar:disabled { opacity: 0.7; transform: none; cursor: not-allowed; }
.seccion-landing .confidencial-seal { font-family: 'regular'; font-size: 12px; color: #888; text-align: center; }

/* Availability Section */
.seccion-landing .sim-availability-section { background: var(--color-light-green); padding: 20px 16px; border-radius: 12px; margin-bottom: 15px; }
.seccion-landing .sim-label { font-family: 'bold'; font-size: 14px; color: #333; display: block; margin-bottom: 12px; text-align: left; }
.seccion-landing .sim-label-small { font-family: 'regular'; font-size: 12px; color: #666; display: block; margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.5px; }
.seccion-landing .sim-availability-group { margin-bottom: 16px; }
.seccion-landing .sim-availability-group:last-child { margin-bottom: 0; }
.seccion-landing .sim-time-slots { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.seccion-landing .sim-time-slot-btn { background: #fff; border: 2px solid #d6eeda; border-radius: 10px; padding: 12px 10px; font-family: 'regular'; font-size: 13px; color: #333; cursor: pointer; text-align: center; transition: all 0.2s ease; font-weight: bold; }
.seccion-landing .sim-time-slot-btn:hover { border-color: var(--color-primary); color: var(--color-primary); transform: translateY(-2px); box-shadow: 0 5px 12px rgba(40,167,69,0.15); }
.seccion-landing .sim-time-slot-btn.active { background: var(--color-primary); border-color: var(--color-primary); color: #fff; box-shadow: 0 5px 15px rgba(40,167,69,0.3); }
@media (max-width: 576px) {
    .seccion-landing .sim-time-slots { grid-template-columns: 1fr; gap: 6px; }
}

/* Rechazo */
.seccion-landing .sim-rechazo-icon { font-size: 48px; margin-bottom: 15px; display: block; }
.seccion-landing .sim-rechazo-titulo { font-family: 'bold'; font-size: 17px; color: #444; margin-bottom: 10px; line-height: 1.4; }
.seccion-landing .sim-rechazo-text { font-family: 'regular'; font-size: 14px; color: #666; margin-bottom: 0; }

/* Claims franja */
.seccion-landing .claims-franja { background: var(--color-light-green); padding: 40px 0; }
.seccion-landing .claim-item { text-align: center; padding: 20px 20px; }
.seccion-landing .claim-icon { font-size: 46px; display: block; margin-bottom: 14px; color: var(--color-primary); }
.seccion-landing .claim-titulo { font-family: 'bold'; font-size: 16px; color: #333; margin-bottom: 8px; }
.seccion-landing .claim-text { font-family: 'regular'; font-size: 14px; color: #555; margin-bottom: 0; line-height: 1.5; }

/* Cómo funciona */
.seccion-landing .como-funciona-landing { padding: 50px 0 40px; background: #fff; }
.seccion-landing .paso-card { padding: 20px 15px; }
.seccion-landing .paso-num { width: 60px; height: 60px; background: var(--color-primary); color: #fff; border-radius: 50%; font-family: 'bold'; font-size: 26px; display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; box-shadow: 0 6px 18px rgba(40,167,69,0.25); }
.seccion-landing .paso-titulo { font-family: 'bold'; font-size: 18px; color: #333; margin-bottom: 8px; }
.seccion-landing .paso-text { font-family: 'regular'; font-size: 14px; color: #666; margin-bottom: 0; line-height: 1.5; }
.seccion-landing .nota-legal { font-family: 'light'; font-size: 12px; color: #999; margin-top: 30px; font-style: italic; text-align: center; max-width: 800px; margin-left: auto; margin-right: auto; padding: 0 15px; }

/* Responsive landing */
@media (max-width: 992px) {
    .seccion-landing .landing-h1 { font-size: 26px; }
    .seccion-landing .landing-subtitle { font-size: 16px; }
    .seccion-landing .landing-section-heading { font-size: 28px; }
    .seccion-landing .sim-options-grid { grid-template-columns: 1fr; }
    .seccion-landing .simulador-wrapper { padding: 22px 18px; }
    .seccion-landing .landing-hero { padding: 0 0 30px; }
    .seccion-landing .como-funciona-landing { padding: 30px 0 30px; }
    .seccion-landing .slider-home .carousel-caption .caption-content { text-align: center !important; margin: 0 auto !important; }
}
@media (max-width: 576px) {
    .seccion-landing .landing-h1 { font-size: 30px !important; }
    .seccion-landing .slider-home .swiper-slide img.responsive { height: 350px !important; }
    .landing-header .py-3 { padding-top: 10px !important; padding-bottom: 10px !important; }
}
/* END LANDING PAGE */

/* Utilitaries */
.spin { animation: fa-spin 2s infinite linear; display: inline-block; }
@keyframes fa-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(359deg); } }

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