@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: #153373;
    --color-secondary: #153373;
    --color-hover: #0b2660;
}

/*HEADER*/
header{ background: white;}
header .logo{ max-width: 150px;}
header .navbar{ background: white; max-width: 1320px; margin:0 auto; }
header .navbar .navbar-collapse ul{ width: 100%; justify-content:end }
header .top-right{ position:absolute; top:10px; right:15px;}
header .navbar .nav-link.active{ color:black; font-family: 'bold'; }
header a:hover{ color:#ddd; }
header .social-link{ color:#444; margin-left: 10px; }
header .social-link:hover{ color:black; }
header button.btn-mobile {color:#fff; background:transparent; padding:6px 10px; margin-top:8px; margin-bottom:8px; border-radius: 0; outline:none !important; border:none !important; box-shadow:none !important; }
header button.btn-mobile i {padding:0; margin:0; font-size:21px; }
header .btn-mobile .icon-bar {background-color: black; transition: .4s cubic-bezier(0.68, -0.6, 0.32, 1.6); }
header .btn-mobile .icon-bar { display: block; height: 3px; width: 22px; margin: 4px 0; }
header .btn-mobile.open .icon-bar:nth-child(1){ transform:rotate(45deg) translateY(5px) translateX(5px)}
header .btn-mobile.open .icon-bar:nth-child(2){ transform:rotate(-45deg); }
header .btn-mobile.open .icon-bar:nth-child(3){ transform:rotate(45deg) translateY(-7px) translateX(-7px); opacity:0}
header .dropdown:hover .dropdown-menu{ display: block; }
header .dropdown-menu{ margin-top: 0; }
@media (max-width:768px){
    header .navbar .navbar-collapse ul li{ text-align:right; }
    header .social-link{ font-size:20px; margin-left: 20px; margin-top: 10px; display:inline-block; }
}
@media (min-width:768px){
    header .dropdown:hover .dropdown-menu{ display: block; }
}
/*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: #d90030; 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{ -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
.text-clamp3{ -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; }
.seccion .slider-home .carousel-caption { position: relative; z-index: 2; height: 100%; display: flex; flex-direction: column; justify-content: center; width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 15px; left: 0; right: 0; bottom: auto; }

/* Ensure text visibility over images */
.seccion .slider-home .carousel-caption p, 
.seccion .slider-home .carousel-caption .text-black { font-size: 32px; 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: -10px; margin-bottom: 0; color:var(--color-primary); line-height: 1; }
.seccion .slider-home .carousel-caption .title strong{font-size: 60px; margin-top: -10px; margin-bottom: 0; color:var(--color-pink); line-height: 1; }

.seccion .slider-home .carousel-caption.left { align-items: flex-start; text-align: left; }
.seccion .slider-home .carousel-caption.left p{text-align: left; }
.seccion .slider-home .carousel-caption.left .title{text-align: left; }

.seccion .slider-home .carousel-caption.right { align-items: flex-end; text-align: right; }
.seccion .slider-home .carousel-caption.right p{ text-align: right; }
.seccion .slider-home .carousel-caption.right .title{ text-align: right; }

.seccion .slider-home .carousel-caption.center{ align-items: center; text-align: center; }
.seccion .slider-home .carousel-caption.center p{ text-align: center; }
.seccion .slider-home .carousel-caption.center p.title{text-align: center;}

@media screen and (max-width: 992px){
	.seccion .slider-home .swiper-slide { height: 500px; }
}
@media (max-width:768px){
    .seccion .slider-home .carousel-caption .title{ font-size:9vw; }
    .seccion .slider-home .carousel-caption .title strong{ font-size:9vw; }
}
/*END SLIDER HOME*/

/*groups for faqs*/
.seccion .group{ background:#fff; font-size:20px; color:var(--color-black); padding:10px 15px; font-family:'bold'; font-weight:700; border-bottom:1px solid rgba(30,30,30,0.18); box-shadow: 0 2px 10px 0 rgb(0 0 0 / 6%); }
.seccion .group:after{ content:"\f107"; font-family: 'FontAwesome'; float:right; position:relative; margin-right: 0; color:var(--color-secondary); }

.seccion .group-faqs .accordion{ border-radius:8px; overflow: hidden; background: white; border:1px solid rgba(30,30,30,0.12); box-shadow: 0 3px 18px 0 rgb(0 0 0 / 8%); }
.seccion .group-faqs .accordion-item{ border: none; background:transparent; }
.seccion .group-faqs .accordion-button{ background: #fff; color:var(--color-black); outline:0; box-shadow:none; border-bottom:1px solid rgba(30,30,30,0.18); padding-left: 15px; padding-right: 15px; font-size:18px; }
.seccion .group-faqs .accordion-button:not(.collapsed){ background: #fff; color:var(--color-secondary); border-bottom:1px solid var(--color-secondary); }
.seccion .group-faqs .accordion-button::after{ filter:none; }
.seccion .group-faqs .accordion-body{ background-color:#fff; color:var(--color-gray); border:none; padding:15px; }
.seccion .group-faqs .accordion-body p,.seccion .group-faqs .accordion-body li{ color:var(--color-gray); }
.seccion .group-faqs .accordion-body a{ color:var(--color-secondary); }
.seccion .group-faqs .accordion-body a:hover{ color:var(--color-primary); }
.seccion .group-faqs .faq-question{ font-family: 'bold'; font-weight: 700; color: var(--color-black); line-height: 1.2; }
.seccion .group-faqs .accordion-button:not(.collapsed) .faq-question{ color: var(--color-secondary); }

/*HOME*/
.seccion-home .gallery-slider .swiper-slide{ width:28%; position:relative; }
.seccion-home .gallery-slider .swiper-slide img{ transition:ease filter .3s; }
.seccion-home .gallery-slider .swiper-button-next {color: white!important; text-shadow:0 0 5px rgba(0,0,0,0.3),0 0 10px black,0 0 15px black;}
.seccion-home .gallery-slider .swiper-button-prev{color: white!important;opacity: 1.35; text-shadow:0 0 5px rgba(0,0,0,0.3),0 0 10px black,0 0 15px black;}
.seccion-home .text-carousel{position: absolute; display:none; left:5%; top:0; width: 90%; height: 100%; padding:15px;}
.seccion-home .text-carousel p{position: absolute; top:50%; transform: translateY(-50%); color: white; margin: auto 0; line-height: 1.3;}
.seccion-home .swiper-slide:hover .text-carousel{ display:block; }

/*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 .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; padding-top: 5px; color:#ddd; background: #2b2b2b; }
#pie h4,#pie h3,#pie h5{ font-family:'bold' }
#pie .logo{ width: 100%; max-width: 90px; }
#pie ul.text-white li a{ color:white; font-family:'regular'; font-size:15px; }
#pie ul.text-white li{ float:left; width: 50%; max-width: 300px; margin-bottom:12px }
#pie .copyright {background-color: #252525; padding: 20px 0; }
#pie span.glyphicon{ color:#000; }
#pie a{ color:white; }
#pie a:hover{ color:#008cd0; }
#pie a.link{ color:#000; }
#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; }

/*google reviews*/
.google-reviews-strip{ padding: 40px 0; }
.google-review-list{ max-width: 800px; margin: 0 auto; }
.google-review-row{ display: flex; align-items: flex-start; gap: 15px; padding: 18px 0; border-bottom: 1px solid #eee; color: inherit; text-decoration: none; }
.google-review-row:last-child{ border-bottom: none; }
a.google-review-row:hover{ background-color: #fafafa; text-decoration: none; color: inherit; }
.google-review-avatar-wrap{ flex: 0 0 auto; }
.google-review-avatar{ width: 56px; height: 56px; border-radius: 50%; object-fit: cover; display: block; }
.google-review-avatar-initial{ display:flex; align-items:center; justify-content:center; color:#fff; font-family:'bold'; font-size: 22px; }
.google-review-body{ flex: 1 1 auto; }
.google-review-author{ font-family:'bold'; font-weight:bold; color:#1a73e8; font-size: 17px; margin: 0; }
.google-review-time{ color:#70757a; font-size: 13px; margin: 2px 0 6px 0; }
.google-review-stars{ display:flex; align-items:center; flex-wrap: wrap; gap: 2px; }
.google-review-stars i{ color:#fbbc04; font-size: 15px; margin-right: 2px; }
.google-review-comment{ display:block; width:100%; color:#3c4043; font-size: 15px; margin-top: 6px; }
@media screen and (max-width: 600px) {
    .google-review-avatar{ width: 46px; height:46px; }
}

/* Dani Soler — portada a medida, Bootstrap 5 y recursos originales. */
@font-face {font-family: 'Poppins'; font-style: normal; font-weight: 200; font-display: swap; src: url('../fonts/poppins-200.ttf') format('truetype');}
@font-face {font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/poppins-400.ttf') format('truetype');}
@font-face {font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/poppins-700.ttf') format('truetype');}
.dani-site {--color-primary:#da2f20; --color-secondary:#56bab6; --color-hover:#bd2418; background:#1c1c1c; color:#c9c9c9; font-family:'Poppins',sans-serif;}
.dani-site header[hidden] {display:none !important;}
.dani-site .seccion {background:#1c1c1c; font-family:'Poppins',sans-serif;}
.dani-home {font-weight:200; text-align:center;}
.dani-home .dani-container {width:88%; max-width:1200px; padding-left:0; padding-right:0;}
.dani-home p,.dani-home .copy {font-size:15.4px; line-height:2; font-weight:200; margin:0 0 24px;}
.dani-home .copy p {font:inherit; line-height:inherit; margin:0 0 24px;}
.dani-home a {color:#56bab6; text-decoration:none;}
.dani-home strong {font-weight:400;}
.dani-home .title,.dani-home .subtitle,.dani-footer .subtitle {font-family:'Poppins',sans-serif; font-weight:200; text-align:center; color:#da2f20; line-height:1.4; letter-spacing:.05em; margin:0 0 30px;}
.dani-home .title {font-size:35px;}
.dani-home .subtitle {font-size:25.2px;}
.dani-home .btn-primary,.dani-footer .btn-primary {font-family:'Poppins',sans-serif; font-size:16px; line-height:1.3; font-weight:400; padding:13px 26px; border:0; border-radius:100px; color:#fff; background:#da2f20; box-shadow:0 3px 0 #9c2117; text-decoration:none; transition:background .2s,box-shadow .2s;}
.dani-home .btn-primary:hover,.dani-home .btn-primary:focus-visible {background:#bd2418; color:#fff; box-shadow:0 3px 0 #771a12;}
.dani-home a:focus-visible,.dani-footer a:focus-visible {outline:2px solid #56bab6; outline-offset:5px;}
.dani-home .portrait {position:relative; height:calc(325px + 22.4vw); background:url('../images/danisoler/disenador-ux-ui-dani-soler-frelance.webp') center center / cover no-repeat; overflow:hidden;}
.dani-home .section-divider {display:block; width:100%; height:auto; pointer-events:none;}
.dani-home .portrait .divider-up {position:absolute; top:0; left:0;}
.dani-home .portrait-bottom {position:absolute; bottom:0; left:0; width:100%; height:auto;}
.dani-home .intro {padding-top:26px;}
.dani-home .intro .title {margin:0;}
.dani-home .intro .intro-subtitle {font-size:35px; margin:0 0 30px;}
.dani-home .intro .copy {padding:0 23px;}
.dani-home .emphasis,.dani-home .emphasis p {font-size:16.8px; font-weight:400; color:#fff;}
.dani-home .intro-cta {margin:30px 0 170px;}
.dani-home .showreel {margin:0;}
.dani-home .showreel video {width:100%; height:auto; aspect-ratio:16/9; display:block; background:#000;}
.dani-home .video-credit p {font-size:11.2px; color:#bbb; margin:10px 0 0;}
.dani-home .teaching-intro {padding-top:60px; padding-bottom:75px;}
.dani-home .teaching-intro a {color:#ff881d;}
.dani-home .color-section {position:relative; background-position:center; background-size:cover; color:#f6c6ef;}
.dani-home .red-section {background-image:url('../images/danisoler/gradient-red-background-disenador-ux-ui.svg');}
.dani-home .purple-section {background-image:url('../images/danisoler/gradient-background-disenador-ux-ui.svg');}
.dani-home .color-content {padding-top:55px; padding-bottom:50px;}
.dani-home .color-section .title,.dani-home .color-section .subtitle {color:#f6c6ef;}
.dani-home .color-section .copy {padding:0 23px;}
.dani-home #diseno .copy strong {color:#fff;}
.dani-home .home-advanced-edit .advanced-field-title {font-weight:700; line-height:1.4; margin:16px 0 4px;}
.dani-home .color-section .title {margin-bottom:30px;}
.dani-home .hire {padding-top:35px;}
.dani-home .hire .subtitle {font-size:28px; margin-bottom:22px;}
.dani-home .hire-links {gap:40px;}
.dani-home .hire-links a {color:#f6c6ef; font-size:15.4px;}
.dani-home .hire-links img {display:block; width:70px; height:auto; margin:0 auto 12px;}
.dani-home .services {padding:70px 42px 45px;}
.dani-home .service-icon {width:100px; height:100px; object-fit:contain; margin:0 auto 24px;}
.dani-home .services .subtitle {font-size:22.4px; margin-bottom:16px;}
.dani-home .services .copy {margin:0;}
.dani-home .contact-cta {margin:65px 0 10px;}
.dani-home .courses {padding:75px 0 60px;}
.dani-home .course-grid {margin-top:35px; justify-content:center; row-gap:65px !important;}
.dani-home .course-card {height:100%; display:flex; flex-direction:column; align-items:center;}
.dani-home .course-editable {width:100%; display:flex; flex-direction:column; flex-grow:1;}
.dani-home .course-image {width:100%; height:auto; margin-bottom:25px;}
.dani-home .course-card .subtitle {margin-bottom:18px;}
.dani-home .course-card .copy {padding:0 8px; flex-grow:1;}
.dani-home .course-meta {font-size:15.4px; line-height:2; margin:0 0 22px;}
.dani-home .course-card .btn {font-size:12px; padding:12px 18px; max-width:100%; white-space:normal;}
.dani-home .app-grid {margin-top:25px;}
.dani-home .app-image {width:100%; max-width:460px; height:auto; margin:0 auto 25px;}
.dani-home .apps .subtitle {font-size:25.2px; margin-bottom:24px;}
.dani-home .apps .copy {padding-left:12px; padding-right:12px;}
.dani-home .apps .btn {font-size:14px;}
.dani-home .apps .fa {margin-right:8px;}
.dani-site #pie {background:#1c1c1c; padding:0; color:#999;}
.dani-footer {font-family:'Poppins',sans-serif; font-weight:200; padding:45px 0 35px;}
.dani-footer .subtitle {font-size:19.6px; color:#fff; margin:0;}
.dani-footer .footer-role {font-size:14px; color:#da2f20; line-height:1.4; margin:6px 0 26px;}
.dani-footer .footer-socials {display:flex; justify-content:center; gap:22px; margin-bottom:60px;}
.dani-footer .footer-socials img {width:45px; height:auto;}
.dani-footer .footer-legal,.dani-footer .footer-legal a {font-size:10px; line-height:2; color:#999; text-decoration:none;}
@media (min-width:1600px) {.dani-home .portrait {height:680px;}}
@media (max-width:767.98px) {.dani-home .portrait {height:360px;} .dani-home .title,.dani-home .intro .intro-subtitle {font-size:35px;} .dani-home .subtitle {font-size:25.2px;} .dani-home p,.dani-home .copy {font-size:15.4px; line-height:2;} .dani-home .intro .copy,.dani-home .color-section .copy {padding:0;} .dani-home .intro {padding-top:35px;} .dani-home .intro-cta {margin-bottom:85px;} .dani-home .teaching-intro {padding-top:35px; padding-bottom:40px;} .dani-home .color-content {padding-top:45px; padding-bottom:35px;} .dani-home .services {padding:50px 24px 40px;} .dani-home .service-icon {width:90px; height:90px;} .dani-home .courses {padding-top:50px;} .dani-home .course-grid {row-gap:50px !important;} .dani-home .course-image {max-width:480px;} .dani-home .app-image {max-width:360px;} .dani-home .emphasis,.dani-home .emphasis p {font-size:16.8px;} .dani-footer .footer-socials {gap:16px; margin-bottom:35px;} .dani-footer .footer-legal {padding:0 15px;} }
@media (prefers-reduced-motion:reduce) {.dani-home .wow {animation:none !important; visibility:visible !important;} html {scroll-behavior:auto;}}
.dani-home .inkterface-link {color:#56bab6;}
.dani-home .keepcoding-link {color:#ff881d;}
.dani-home .intro-cta {margin-bottom:105px;}
.dani-home .service-icon {width:80px; height:80px;}
.dani-home .services {padding-bottom:30px;}
.dani-home .services .contact-cta {margin-top:35px;}
.dani-home .purple-section .color-content {padding-top:110px; padding-bottom:110px;}
.dani-home .app-image {max-width:328px;}
.dani-home .color-section {background-size:700% auto; background-position:var(--gradient-position,100%) center;}
.dani-home .section-divider.divider-down {position:relative; bottom:-1px;}
.dani-home .section-divider.divider-up {position:relative; top:-1px;}

@media (max-width:767.98px) {.dani-home .intro-cta {margin-bottom:70px;} .dani-home .purple-section .color-content {padding-top:55px; padding-bottom:55px;} .dani-home .app-image {max-width:290px;} .dani-home .course-grid {margin-left:0; margin-right:0;} }

@media (max-width:767.98px) {.dani-home .dani-container {width:88%;}}

/* Typeform: popup en los CTA y popover flotante de la web original. */
.dani-home .typeform-contact {font-size:18px; font-weight:200; line-height:50px; min-height:50px; padding:0 33px; border-radius:25px; box-shadow:none;}
.dani-home .typeform-floating {position:fixed; right:26px; bottom:26px; width:54px; height:54px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#da2f20; color:#fff; z-index:9; overflow:hidden; line-height:0; box-shadow:0 2px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.08);}
.dani-home .typeform-floating svg {margin-top:6px;}
.dani-home .typeform-floating:hover {background:#bd2418;}

/* Página 404 con la identidad visual de la portada. */
.dani-site .seccion-page404 {background:#1c1c1c; color:#c9c9c9; font-family:'Poppins',sans-serif;}
.dani-not-found {min-height:calc(100vh - 285px); display:flex; align-items:center; background:#1c1c1c; overflow:hidden;}
.dani-not-found .not-found-hero {position:relative; isolation:isolate; width:100%; padding:110px 0 105px; background:#1c1c1c;}
.dani-not-found .not-found-hero::before {content:""; position:absolute; z-index:-1; inset:0; background:url('../images/danisoler/gradient-red-background-disenador-ux-ui.svg') center/cover no-repeat; pointer-events:none;}
.dani-not-found .not-found-divider {position:absolute; z-index:-1; left:0; width:100%; height:auto; pointer-events:none;}
.dani-not-found .not-found-divider-top {top:0;}
.dani-not-found .not-found-divider-bottom {bottom:0;}
.dani-not-found .dani-container {width:88%; max-width:1200px; padding-left:0; padding-right:0;}
.dani-not-found .not-found-mark {font-size:clamp(100px,20vw,220px); line-height:.95; font-weight:200; letter-spacing:.05em; color:rgba(246,198,239,.16); margin-bottom:12px;}
.dani-not-found .title {font-family:'Poppins',sans-serif; font-size:clamp(30px,4vw,48px); line-height:1.4; font-weight:200; letter-spacing:.05em; color:#da2f20; margin:0 auto 24px;}
.dani-not-found .subtitle {display:block; font-family:'Poppins',sans-serif; font-size:25.2px; font-weight:200; letter-spacing:.05em; color:#f6c6ef; margin-top:8px;}
.dani-not-found .not-found-copy {max-width:760px; margin:0 auto 36px; padding:0 16px; color:#c9c9c9; font-size:16.8px; line-height:2; font-weight:200;}
.dani-not-found .not-found-button {font-family:'Poppins',sans-serif; font-size:16px; font-weight:400; padding:13px 28px; border:0; border-radius:100px; background:#da2f20; color:#fff; box-shadow:0 3px 0 #9c2117;}
.dani-not-found .not-found-button:hover {background:#bd2418; color:#fff;}
@media (max-width:767.98px) {.dani-not-found {min-height:calc(100vh - 230px);} .dani-not-found .not-found-hero {padding:90px 0 85px;} .dani-not-found .not-found-copy {font-size:15.4px; line-height:2;} .dani-not-found .subtitle {font-size:25.2px;}}
