/******************************************************************
  Template Name: Dreams
  Description:  Dreams Car Driving HTML Template
  Author: Colorlib
  Author URI: https://colorlib.com
  Version: 1.0
  Created: Colorlib
******************************************************************/

/*------------------------------------------------------------------
[Table of contents]

1.  Template default CSS
	1.1	Variables
	1.2	Mixins
	1.3	Flexbox
	1.4	Reset
2.  Helper Css
3.  Header Section
4.  Hero Section
5.  Feature Section
6.  Application Form Section
7.  Pricing Section
8.  Team Section
9.  Contact
10.  Footer Style
-------------------------------------------------------------------*/

/*----------------------------------------*/

/* Template default CSS
/*----------------------------------------*/

:root {
  --ink: #0b0c0f;
  --ink-soft: #181a1f;
  --paper: #f6f5f1;
  --white: #fff;
  --muted: #e9e8e3;
  --line: #d6d5cf;
  --text: #15161a;
  --text-muted: #62646b;
  --red: #e02424;
  --red-dark: #b91515;
  --lime: #c7f23a;
  --shell: min(1240px, calc(100% - 48px));
  --radius: 18px;
  --radius-sm: 10px;
  --radius-md: 14px;
  --control-height: 48px;
  --reading-width: 66ch;
  --focus-ring: 0 0 0 4px rgba(199, 242, 58, .3);
  --shadow: 0 24px 70px rgba(9, 10, 12, 0.14);
  --display: "Manrope", system-ui, sans-serif;
  --body: "Archivo", system-ui, sans-serif;
}

html,
body {
	height: 100%;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	font-family: var(--body); 
	font-size: 16px; 
	line-height: 1.6; 
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	color: #111111;
	font-weight: 400;
	font-family: var(--display);
	line-height: 1.06;
	letter-spacing: -0.04em;
}

h1 {
	font-size: 70px;
}

h2 {
	font-size: 36px;
}

h3 {
	font-size: 30px;
}

h4 {
	font-size: 24px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

p {
	font-size: 15px;
	font-family: var(--display);
	color: #000000;
	font-weight: 400;
	line-height: 26px;
	margin: 0 0 15px 0;
}

a{
	font-family: var(--display);
}

img {
	max-width: 100%;
}

input:focus,
select:focus,
button:focus,
textarea:focus {
	outline: none;
}

a:hover,
a:focus {
	text-decoration: none;
	outline: none;
	color: #ffffff;
}

ul,
ol {
	padding: 0;
	margin: 0;
}

/*---------------------
  Helper CSS
-----------------------*/

.section-title {

}

.section-title.center-title {
	text-align: center;
}

.section-title span {
	color: var(--red);
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	display: block;
	margin-bottom: 6px;
	font-family: var(--display);
	letter-spacing: .14em;
	line-height: 1.3;
}

.section-title h2 {
	color: #111111;
	font-weight: 800;
	font-size: 52px;
}

.set-bg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	z-index: 1;
	overflow: hidden;
	position: relative;
}

.set-bg:before{
	content: '';
	background: linear-gradient(90deg, rgba(5, 6, 8, .9), rgba(5, 6, 8, .22)), linear-gradient(0deg, rgba(5, 6, 8, .88), transparent 55%);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.spad {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white span,
.text-white li,
.text-white a {
	color: #fff;
}

/* buttons */

.primary-btn.btn-cotizar-menu{
	padding: 13px 22px;
}

.primary-btn {
	display: inline-flex;
	align-items: center !important;
	font-size: 14px;
	font-weight: 700;
	padding: 15px 30px;
	color: #ffffff;
	background: var(--red);
	border: 1px solid var(--red);
	border-radius: 50px;
	transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.primary-btn:hover{
	transform: translateY(-2px);
	background: var(--red-dark);
	border-color: var(--red-dark);
}

.primary-btn i{
	transition: 200ms;
	display: inline-flex;
	vertical-align: 0;
	margin-left: 10px;
}

.primary-btn:hover i{
	transform: translateX(4px);
}

.primary-btn.second-bg {
	background: #0c2b4b;
	border-color: #0c2b4b;
}

.primary-btn.white-bg {
	background: #fff;
	border-color: #fff;
	color: #000;
}

.primary-btn.transparent-bg {
	background: transparent;
	border-color: transparent;
	color: #000;
}

.button-ghost {
	background: transparent;
	border-color: rgba(255, 255, 255, .48);
}

.button-ghost:hover {
	background: var(--white);
	color: var(--ink);
	border-color: var(--white);
}

.site-btn {
	font-size: 14px;
	color: #ffffff;
	background: #0c2b4b;
	font-weight: 700;
	border: none;
	text-transform: uppercase;
	display: inline-block;
	padding: 14px 30px;
}

.site-btn.second-bg {
	background: var(--red);
}

/* Preloder */

#preloder {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 999999;
	background: #161719;
}

/* HTML: <div class="loader"></div> */
.loader_tw {
  width: 45px;
  aspect-ratio: 1;
  --c: no-repeat linear-gradient(#e02424 0 0);
  background: 
    var(--c) 0%   50%,
    var(--c) 50%  50%,
    var(--c) 100% 50%;
  background-size: 20% 100%;
  animation: l1 1s infinite linear;
  position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@keyframes l1 {
  0%  {background-size: 20% 100%,20% 100%,20% 100%}
  33% {background-size: 20% 10% ,20% 100%,20% 100%}
  50% {background-size: 20% 100%,20% 10% ,20% 100%}
  66% {background-size: 20% 100%,20% 100%,20% 10% }
  100%{background-size: 20% 100%,20% 100%,20% 100%}
}

.loader {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -13px;
	margin-left: -13px;
	border-radius: 60px;
	animation: loader 0.8s linear infinite;
	-webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

@-webkit-keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

.spacial-controls {
	position: fixed;
	width: 111px;
	height: 91px;
	top: 0;
	right: 0;
	z-index: 999;
}

.spacial-controls .search-switch {
	display: block;
	height: 100%;
	padding-top: 30px;
	background: #323232;
	text-align: center;
	cursor: pointer;
}

.search-model {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #000;
	z-index: 99999;
}

.search-model-form {
	padding: 0 15px;
}

.search-model-form input {
	width: 500px;
	font-size: 40px;
	border: none;
	border-bottom: 2px solid #333;
	background: 0 0;
	color: #999;
}

.search-close-switch {
	position: absolute;
	width: 50px;
	height: 50px;
	background: #333;
	color: #fff;
	text-align: center;
	border-radius: 50%;
	font-size: 28px;
	line-height: 28px;
	top: 30px;
	cursor: pointer;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

/*---------------------
  Header
-----------------------*/

.info-header-top{
	background: #000;
	display: block;
}

.info-header-top .container{
	display: flex;
	justify-content: space-between;
	padding-top: 5px;
	padding-bottom: 5px;
}

.info-header-top .container p, .info-header-top .container a{
	color: #fff;
	margin-bottom: 0;
	font-size: 13px;
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 600;
	font-stretch: normal;
	align-content: space-around;
	display: flex;
	align-items: center;
}

a.phone-top-nav i{
	color: transparent;
	-webkit-text-stroke: 1px rgba(255, 255, 255, .82);
	font-size: 17px;
	margin-right: 5px;
}

.info-header-top .container .iht-largo{
	display: inline;
}

.info-header-top .container .iht-corto{
	display: none;
}

.header {
	background: #161719;
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
}

.header.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.header-placeholder {
    display: none;
    width: 100%;
    background: #161719;
}

.header.header--normal {
	position: relative;
}

.header__logo {
	padding: 15px 0;
	position: relative;
	z-index: 1;
}

/*.header__logo::before {
	position: absolute;
	left: -400px;
	top: 0;
	width: 580px;
	height: 100%;
	background: var(--red);
	content: "";
	z-index: -1;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 96% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 96% 100%, 0% 100%);
}*/

.header__logo a {
	display: inline-block;
	width: 126px;
	height: 54px;
	display: flex;
	align-items: center;
	padding: 4px 10px;
	background: var(--white);
	border-radius: 9px;
}

.header__menu {
	padding: 23px 0px;
}

.header__menu ul li {
	list-style: none;
	display: inline-block;
	margin-right: 25px;
	position: relative;
	overflow: hidden;
}

.header__menu ul li.active a:after {
	right: 0;
}

.header__menu ul li:hover a:after {
	right: 0;
}

.header__menu ul li.active a,
.header__menu ul li:hover a{
	color: #fff;
}

.header__menu ul li:hover .dropdown {
	top: 33px;
	opacity: 1;
	visibility: visible;
}

.header__menu ul li:last-child {
	margin-right: 0;
}

.header__menu ul li .dropdown {
	position: absolute;
	left: 0;
	top: 56px;
	width: 150px;
	background: var(--red);
	text-align: left;
	padding: 2px 0;
	z-index: 9;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all, 0.1s;
	-o-transition: all, 0.1s;
	transition: all, 0.1s;
}

.header__menu ul li .dropdown li {
	display: block;
	margin-right: 0;
}

.header__menu ul li .dropdown li a {
	font-size: 14px;
	color: #ffffff;
	font-weight: 400;
	padding: 8px 20px;
	text-transform: capitalize;
}

.header__menu ul li .dropdown li a:after {
	display: none;
}

.header__menu ul li a {
	font-size: 13px;
	font-weight: 700;
	color: #b0b0b0;
	display: block;
	padding: 6px 0;
	position: relative;
	font-family: var(--body);
}

.header__menu ul li a:after {
	position: absolute;
	right: 100%;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: var(--red);
	content: "";
	-webkit-transition: all, 0.5s;
	-o-transition: all, 0.5s;
	transition: all, 0.5s;
	opacity: 1;
}

.header__right {
	text-align: right;
	padding: 20px 0;
}

.header__right__search {
	display: inline-block;
	padding-right: 15px;
	position: relative;
	margin-right: 15px;
}

.header__right__search:after {
	position: absolute;
	right: 0;
	top: 5px;
	width: 1px;
	height: 15px;
	background: rgba(255, 255, 255, 0.3);
	content: "";
}

.header__right__search i {
	font-size: 15px;
	color: #ffffff;
	cursor: pointer;
}

.header__right__social {
	display: inline-block;
	margin-right: 25px;
}

.header__right__social a {
	display: inline-block;
	font-size: 16px;
	color: #ffffff;
	margin-right: 20px;
}

.header__right__social a:last-child {
	margin-right: 0;
}

.header__right__btn {
	display: inline-block;
}

.header__right__btn a{
	font-size: 12px;
	text-align: center;
	padding: 13px 15px;
}

.offcanvas-menu-wrapper {
	display: none;
}

.canvas__open {
	display: none;
}

/*---------------------
  Hero
-----------------------*/

.hero {
	height: 850px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.hero__text h5 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.hero__text h2 {
	font-size: 42px;
	font-weight: 800;
	text-transform: uppercase;
	font-style: italic;
	color: #ffffff;
	margin-bottom: 30px;
}

.hero__text .second-bg {
	margin-left: 15px;
}

/*---------------------
  About Video
-----------------------*/

.about-video {
	position: relative;
	z-index: 1;
}

.about__video__bg {
	height: 390px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.about__video__bg .play-btn {
	display: inline-block;
	font-size: 14px;
	color: #ffffff;
	height: 50px;
	width: 50px;
	background: var(--red);
	border-radius: 50%;
	text-align: center;
	line-height: 50px;
}

.about__video__text {
	border: 1px solid #e1e1e1;
	padding: 70px 50px 70px 65px;
	height: 390px;
	background: #ffffff;
}

.about__video__text .section-title {
	margin-bottom: 20px;
}

.about__video__text p {
	margin-bottom: 26px;
}

.section-title h2{
	margin-bottom: 5px;
}

.section-title p{
	line-height: 24px;
	font-size: 18px;
	margin-bottom: 0;
	color: var(--text-muted);
	font-family: var(--body);
}

/*---------------------
  Application Form
-----------------------*/

.nice-select:focus,
.nice-select:focus-visible {
    outline: 2px solid #dc3545;
    outline-offset: 2px;
}

.application-form {
	/*background: #f5f5f5;
	-webkit-clip-path: polygon(50% 0, 100% 21%, 100% 100%, 50% 100%, 0 100%, 0% 21%);
	clip-path: polygon(50% 0, 100% 21%, 100% 100%, 50% 100%, 0 100%, 0% 21%);*/
	background: var(--paper);
	padding-top: 290px;
	padding-bottom: 70px;
}

.application-form.courses--page {
	margin-top: 0;
	padding-top: 65px;
	-webkit-clip-path: none;
	clip-path: none;
	background: transparent;
	padding-bottom: 0;
}

.application-form.pricing--page {
	margin-top: 0;
	padding-top: 0;
	-webkit-clip-path: none;
	clip-path: none;
	background: transparent;
	padding-bottom: 90px;
}

.application-form.pricing--page .application__form__content {
	background: #f5f5f5;
}

.application-form.pricing--page .application__form__content .section-title span {
	color: #0071e4;
}

.application-form.pricing--page .application__form__content .section-title h2 {
	color: #111111;
}

.application-form.pricing--page .application__form__content form input {
	color: #444444;
	background: #ffffff;
	border: 1px solid #e1e1e1;
}

.application-form.pricing--page .application__form__content form input::-webkit-input-placeholder {
	color: #444444;
}

.application-form.pricing--page .application__form__content form input::-moz-placeholder {
	color: #444444;
}

.application-form.pricing--page .application__form__content form input:-ms-input-placeholder {
	color: #444444;
}

.application-form.pricing--page .application__form__content form input::-ms-input-placeholder {
	color: #444444;
}

.application-form.pricing--page .application__form__content form input::placeholder {
	color: #444444;
}

.application-form.pricing--page .application__form__content form .nice-select {
	background: #ffffff;
	border: 1px solid #e1e1e1;
}

.application-form.pricing--page .application__form__content form .nice-select span {
	color: #444444;
}

.application-form.pricing--page .application__form__content form .nice-select:after {
	border-bottom: 1.5px solid rgba(17, 17, 17, 0.7);
	border-right: 1.5px solid rgba(17, 17, 17, 0.7);
}

.application-form .application__form__content {
	background: #0c2b4b;
	padding: 70px;
}

.application-form .application__form__content .section-title span {
	color: #ffffff;
}

.application-form .application__form__content .section-title h2 {
	color: #ffffff;
}

.application-form .application__form__content form input {
	border: 1px solid rgba(255, 255, 255, 0.2);
	background: transparent;
	color: #ffffff;
}

.application-form .application__form__content form input::-webkit-input-placeholder {
	color: #ffffff;
}

.application-form .application__form__content form input::-moz-placeholder {
	color: #ffffff;
}

.application-form .application__form__content form input:-ms-input-placeholder {
	color: #ffffff;
}

.application-form .application__form__content form input::-ms-input-placeholder {
	color: #ffffff;
}

.application-form .application__form__content form input::placeholder {
	color: #ffffff;
}

.application-form .application__form__content form .nice-select {
	border: 1px solid rgba(255, 255, 255, 0.2);
	background: transparent;
}

.application-form .application__form__content form .nice-select span {
	color: #ffffff;
}

.application-form .application__form__content form .nice-select:after {
	border-color: #ffffff;
}

.application-form form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #444444;
	padding-left: 20px;
	margin-bottom: 30px;
}

.application-form form input::-webkit-input-placeholder {
	color: #444444;
}

.application-form form input::-moz-placeholder {
	color: #444444;
}

.application-form form input:-ms-input-placeholder {
	color: #444444;
}

.application-form form input::-ms-input-placeholder {
	color: #444444;
}

.application-form form input::placeholder {
	color: #444444;
}

.application-form form .nice-select {
	height: 50px;
	line-height: 50px;
	width: 100%;
	float: none;
	border-radius: 0;
	border: 1px solid #e1e1e1;
	font-size: 14px;
	background: #ffffff;
	margin-bottom: 30px;
}

.application-form form .nice-select span {
	color: #444444;
}

.application-form form .nice-select:after {
	border-bottom: 1.5px solid rgba(17, 17, 17, 0.7);
	border-right: 1.5px solid rgba(17, 17, 17, 0.7);
	height: 7px;
	right: 22px;
	width: 7px;
}

.application-form form .nice-select .list {
	width: 100%;
	border-radius: 0;
	margin-top: 0;
}

/*---------------------
  Pricing
-----------------------*/

.pricing {
	padding-bottom: 70px;
}

.pricing.pricing--page .section-title h2 {
	color: #111111;
}

.pricing.pricing--page .pricing__item {
	background: #f5f5f5;
}

.pricing.pricing--page .pricing__item:hover {
	background: #0c2b4b;
}

.pricing.pricing--page .pricing__item:hover .pricing__item__title span {
	color: #ffffff;
}

.pricing.pricing--page .pricing__item:hover .pricing__item__title h5 {
	color: #ffffff;
}

.pricing.pricing--page .pricing__item:hover ul li {
	color: #ffffff;
}

.pricing.pricing--page .pricing__item ul li {
	color: #444444;
}

.pricing.pricing--page .pricing__item__title span {
	color: #444444;
}

.pricing.pricing--page .pricing__item__title h5 {
	color: #111111;
}

.pricing .section-title h2 {
	color: #ffffff;
}

.pricing__item {
	background: rgba(12, 43, 75, 0.3);
	text-align: center;
	padding: 40px 35px 35px;
	margin-bottom: 40px;
	-webkit-transition: all, 0.5s;
	-o-transition: all, 0.5s;
	transition: all, 0.5s;
}

.pricing__item:hover {
	background: #0c2b4b;
}

.pricing__item:hover .pricing__item__title {
	border-bottom: 1px solid rgba(225, 225, 225, 0.1);
}

.pricing__item:hover .primary-btn {
	background: var(--red);
}

.pricing__item .pricing__item__title {
	border-bottom: 1px solid rgba(225, 225, 225, 0.2);
	padding-bottom: 45px;
	margin-bottom: 25px;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.pricing__item .pricing__item__title span {
	font-size: 14px;
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.pricing__item .pricing__item__title h2 {
	font-size: 50px;
	color: var(--red);
	font-weight: 700;
	margin-top: 4px;
	margin-bottom: 18px;
}

.pricing__item .pricing__item__title h5 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.pricing__item ul {
	margin-bottom: 35px;
}

.pricing__item ul li {
	list-style: none;
	font-size: 14px;
	color: #ffffff;
	line-height: 36px;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.pricing__item .primary-btn {
	display: block;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

/*---------------------
  Team
-----------------------*/

.team {
	padding-bottom: 70px;
}

.team.team--instructor {
	padding-top: 70px;
}

.team__all {
	text-align: right;
}

.team__item {
	border: 1px solid #e1e1e1;
	overflow: hidden;
	padding: 40px;
	margin-bottom: 30px;
}

.team__item__img {
	float: left;
	margin-right: 30px;
}

.team__item__text {
	overflow: hidden;
}

.team__item__text h5 {
	font-weight: 700;
	color: #111111;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.team__item__text span {
	font-size: 14px;
	color: var(--red);
	display: block;
	margin-bottom: 12px;
}

.team__item__text p {
	font-size: 14px;
	color: #111111;
	line-height: 20px;
	margin-bottom: 20px;
}

.team__item__text .team__item__social a {
	font-size: 16px;
	color: #111111;
	margin-right: 20px;
}

.team__item__text .team__item__social a:last-child {
	margin-right: 0;
}

/*---------------------
  Courses
-----------------------*/

.section-dark{
	background: var(--ink) !important;
	color: var(--white) !important;
}

.button-dark {
    background: var(--ink);
    border-color: var(--ink);
}

.button-dark:hover{
	background: #27292f;
	border-color: #27292f;
}

.courses {
	padding-bottom: 60px;
	background: var(--paper);
}

.courses__all {
	text-align: right;
}

.spad .courses__all{
width: 100%;
height: 100%;
align-items: flex-end;
display: flex;
justify-content: flex-end;
}

.course__item {
	overflow: hidden;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	height: 100%;
}

.course__item .course-content-img{
	display: block;
	overflow: hidden;
	position: relative;
	height: 240px;
	margin-bottom: 0;
}

.course__item .course-content-img img{
	width: 100%;
	height: 240px;
	object-fit: cover;
	transition: transform 450ms cubic-bezier(.22, 1, .36, 1);
}

.course__item:hover .course-content-img img{
	transform: scale(1.04);
}

.course__item .course-content-img span{
	position: absolute;
	top: 18px;
	left: 18px;
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	background: rgba(9, 10, 12, .88);
	color: var(--white);
	border-radius: 50%;
	font-family: var(--display);
	font-size: .72rem;
	font-weight: 800;
}

.course__item small{
	margin-bottom: 14px;
	color: var(--red);
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.course__item img {
	min-width: 100%;
}

.course__item h5 {
	color: #111111;
	font-weight: 700;
	/*text-transform: uppercase;*/
	margin-bottom: 8px;
}

.course__item h4 {
	font-size: 22px;
	font-weight: 700;
	color: var(--red);
	margin-bottom: 10px;
}

.course__item p {
	line-height: 24px;
	font-size: 16px;
	min-height: 78px;
	margin-bottom: 10px;
	color: var(--text-muted);
}

.course__item a.b-icon-course{
	font-size: 14px;
}

.course__item a {
	display: inline-block;
	color: #111111;
	/*text-transform: uppercase;*/
	font-weight: 700;
	position: relative;
	padding: 0 0 6px;
	margin-bottom: 5px;
	/*border-bottom: 2px solid var(--red);*/
}

.course__item a i{
	transition: 200ms;
	display: inline-flex;
	vertical-align: -0.1em;
	margin-left: 3px;
}

.course__item a:hover i{
	transform: translateX(4px);
}

.course__item a:hover{
	color: var(--red);
}

@media (max-width: 576px) {
	.course__item{
		display: grid;
		grid-template-columns: 112px minmax(0px, 1fr);
		border-radius: var(--radius-md);
	}

	.course__item small{
		margin-bottom: 8px;
		font-size: 0.7rem;
		letter-spacing: 0.1em;
	}

	.course__item .course-content-img img{
		height: 100%;
	}

	.course__item .course-content-img span{
		top: 10px;
		left: 10px;
		width: 34px;
		height: 34px;
		font-size: 0.68rem;
	}

	.course__item p{
		display: -webkit-box;
		margin-bottom: 8px;
		color: var(--text-muted);
		font-size: 12px;
		line-height: 1.45;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
		min-height: 0px;
	}

	.course__item h3{
		margin-bottom: 0;
		font-size: 1.14rem;
	}
}

/*---------------------
  Footer
-----------------------*/

.footer {
	padding-top: 70px;
	background: #050506;
}

.footer__widget {
	margin-bottom: 30px;
}

.footer__widget h6 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 15px;
	letter-spacing: .1em;
	font-size: 14px;
}

.footer__widget ul li {
	list-style: none;
}

.footer__widget ul li a {
	color: #c4c4c4;
	font-size: 13px;
	line-height: 32px;
	font-family: var(--body);
}

.footer__widget ul li:hover a{
	color: #fff;
}

.footer__about {
	margin-bottom: 30px;
}

.footer__about p {
	color: #c4c4c4;
	margin-bottom: 10px;
	font-size: 14px;
}

.footer__about ul li {
	list-style: none;
	color: #c4c4c4;
	font-size: 15px;
	line-height: 36px;
}

.footer__about ul li a{
	color: #c4c4c4;
}

.footer__about ul li a:hover{
	color: #fff;
}

.footer__logo {
	margin-bottom: 10px;
}

.footer__logo img{
	display: inline-block;
	width: 190px;
	display: flex;
	align-items: center;
	padding: 10px 18px;
	background: var(--white);
	border-radius: 9px;
}

.footer__logo a {
	display: inline-block;
}

.footer__copyright__text {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: 20px 0;
	margin-top: 20px;
}

.footer__copyright__text p {
	font-size: 12px;
	color: #c4c4c4;
	margin-bottom: 0;
}

.footer__copyright__text a {
	color: #c4c4c4;
	text-decoration: underline;
}

.footer__copyright__text a:hover {
	color: var(--red);
}

.footer__copyright__text i {
	color: #c11;
}

.div__content__footer {
	display: grid;
	grid-template-columns: 1.5fr repeat(3, 1fr);
	gap: 50px;
}

/*---------------------
  Breadcrumb
-----------------------*/

.breadcrumb-option {
	padding-top: 24px;
}

.breadcrumb-option.breadcrumb--about .breadcrumb__links a {
	color: #ffffff;
}

.breadcrumb__links a {
	font-size: 15px;
	color: #d0d1d4;
	margin-right: 18px;
	display: inline-block;
	position: relative;
}

.breadcrumb__links a:after {
	position: absolute;
	right: -14px;
	top: 2px;
	content: "/";
	color: #888888;
}

.breadcrumb__links a i {
	margin-right: 2px;
}

.breadcrumb__links span {
	font-size: 15px;
	color: #fff;
	display: inline-block;
	font-weight: 600;
}

/*---------------------
  About Hero
-----------------------*/

.about-hero {
	height: 100%;
	max-height: 625px;
	padding-top: 25px;
	padding-bottom: 25px;
}

.about__hero__text .section-title {
	margin-bottom: 24px;
}

.about__hero__text .section-title span{
	font-size: 16px;
}

.about__hero__text .section-title h1 {
	color: #ffffff;
	font-weight: 700;
	max-width: 990px;
  font-size: clamp(3.5rem, 8vw, 7.2rem);
}

.about__hero__text p {
	max-width: 690px;
	margin: 0;
	color: #d6d7db;
	font-size: clamp(1.05rem, 1.8vw, 1.28rem);
}

.about__hero__text .play-btn {
	display: inline-block;
	font-size: 14px;
	color: #ffffff;
	height: 50px;
	width: 50px;
	background: var(--red);
	border-radius: 50%;
	text-align: center;
	line-height: 50px;
}

/*---------------------
  Testimonial
-----------------------*/

.testimonial__content {
	padding: 90px 70px 90px;
}

.testimonial__content .section-title {
	margin-bottom: 36px;
}

.testimonial__content .section-title h2 {
	color: #ffffff;
}

.testimonial__slider {
	max-width: 585px;
}

.testimonial__slider.owl-carousel .owl-dots {
	margin-top: 25px;
}

.testimonial__slider.owl-carousel .owl-dots button {
	height: 10px;
	width: 10px;
	display: inline-block;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.3);
	margin-right: 10px;
}

.testimonial__slider.owl-carousel .owl-dots button.active {
	background: white;
}

.testimonial__slider.owl-carousel .owl-dots button:last-child {
	margin-right: 0;
}

.testimonial__item .quote-icon i {
	font-size: 24px;
	color: #0c2b4b;
}

.testimonial__item p {
	font-size: 16px;
	color: #ffffff;
	line-height: 27px;
	font-style: italic;
	margin-bottom: 20px;
	margin-top: 6px;
}

.testimonial__item h6 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 4px;
}

.testimonial__item .rating i {
	font-size: 12px;
	color: var(--red);
	margin-right: -4px;
}

/*---------------------
  Feature
-----------------------*/

.feature {
	padding-bottom: 70px;
}

.feature.feature--about .section-title span {
	color: #0071e4;
}

.feature.feature--about .feature__item {
	background: #f5f5f5;
}

.feature.feature--about .feature__item h5 {
	color: #111111;
}

.feature__text {
	padding-top: 80px;
}

.feature__text .section-title {
	margin-bottom: 20px;
}

.feature__text p {
	margin-bottom: 26px;
}

.feature__item {
	background: #0c2b4b;
	text-align: center;
	padding: 40px 10px 35px;
	margin-bottom: 30px;
}

.feature__item.right-column {
	margin-top: 120px;
}

.feature__item h5 {
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	margin-top: 25px;
}

/*---------------------
  Room Details Slider
-----------------------*/

.course-details {
	padding-top: 70px;
	padding-bottom: 90px;
}

.course__details__desc img {
	/*margin-bottom: 40px;*/
}

.course__details__title {
	margin-bottom: 18px;
}

.course__details__title h3 {
	color: #111111;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.course__details__title .price {
	font-size: 30px;
	color: var(--red);
	font-weight: 700;
}

.course__details__rating {
	text-align: right;
	margin-bottom: 18px;
}

.course__details__rating .rating {
	margin-bottom: 5px;
}

.course__details__rating .rating i {
	font-size: 12px;
	color: var(--red);
	margin-right: -4px;
}

.course__details__rating .rating i:last-child {
	margin-right: 0;
}

.course__details__rating p {
	font-size: 14px;
	color: #444444;
}

.course__details__text {
	color: #444444;
	margin-bottom: 34px;
}

.course__details__feature {
	margin-bottom: 30px;
}

.course__details__feature h5 {
	color: #111111;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.course__details__feature ul li {
	list-style: none;
	font-size: 15px;
	color: #444444;
	position: relative;
	margin-bottom: 8px;
}

.course__details__feature ul li:last-child {
	margin-bottom: 0;
}

.course__details__feature ul li span {
	line-height: 24px;
	display: block;
	overflow: hidden;
}

.course__details__feature ul li i {
	font-size: 15px;
	color: var(--red);
	margin-right: 15px;
	float: left;
	position: relative;
	top: 4px;
}

.course__details__sidebar__location {
	border: 1px solid #e1e1e1;
	margin-bottom: 60px;
}

.course__details__location__map {
	height: 300px;
}

.course__details__location__map iframe {
	width: 100%;
}

.course__details__location__address {
	border-top: 1px solid #e1e1e1;
	padding: 25px 30px 20px;
}

.course__details__location__address h5 {
	color: #111111;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.course__details__location__address p {
	font-size: 14px;
	color: #111111;
	line-height: 24px;
}

.course__details__location__address p:last-child {
	margin-bottom: 0;
}

.course__details__location__address p span {
	font-weight: 700;
}

.course__details__sidebar__register h5 {
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	background: #0c2b4b;
	padding: 25px 30px 22px;
}

.course__details__sidebar__register form {
	background: #f5f5f5;
	padding: 30px;
}

.course__details__sidebar__register form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #111111;
	padding-left: 20px;
	margin-bottom: 20px;
}

.course__details__sidebar__register form input::-webkit-input-placeholder {
	color: #111111;
}

.course__details__sidebar__register form input::-moz-placeholder {
	color: #111111;
}

.course__details__sidebar__register form input:-ms-input-placeholder {
	color: #111111;
}

.course__details__sidebar__register form input::-ms-input-placeholder {
	color: #111111;
}

.course__details__sidebar__register form input::placeholder {
	color: #111111;
}

.course__details__sidebar__register form .nice-select {
	height: 50px;
	line-height: 50px;
	width: 100%;
	float: none;
	border-radius: 0;
	border: 1px solid #e1e1e1;
	font-size: 14px;
	background: #ffffff;
	margin-bottom: 20px;
}

.course__details__sidebar__register form .nice-select span {
	color: #111111;
}

.course__details__sidebar__register form .nice-select:after {
	border-bottom: 1.5px solid #111111;
	border-right: 1.5px solid #111111;
	height: 7px;
	right: 22px;
	width: 7px;
}

.course__details__sidebar__register form .nice-select .list {
	width: 100%;
	border-radius: 0;
	margin-top: 0;
}

.course__details__sidebar__register form button {
	width: 100%;
	text-align: center;
}

/*---------------------
  Faq
-----------------------*/

.bg-red{
	background: var(--red) !important;
	color: #fff;
}

.bg-muted{
	background: var(--muted) !important;
}

.bg-paper{
	background: var(--paper) !important;
}

.faq {
	padding-top: 70px;
	background: var(--paper);
}

.faq__accordion .section-title {
	margin-bottom: 34px;
}

.faq__accordion .section-title h2 {
	/*font-size: 32px;*/
}

.faq ul.niveles-cob-ppf{
	margin: 0;
	padding: 0;
	list-style: none;
	margin-bottom: 34px;
}

.faq ul.niveles-cob-ppf li{
	padding-block: 14px;
	border-bottom: 1px solid var(--line);
	font-weight: 600;
}

.faq ul.niveles-cob-ppf li i{
	color: var(--red);
	margin-right: 5px;
}

.faq__accordion .card {
	border: none;
	border-radius: 0;
	margin-bottom: 36px;
}

.faq__accordion .card:last-child {
	margin-bottom: 0;
}

.faq__accordion .card-heading {
	cursor: pointer;
}

.faq__accordion .card-heading a {
	font-size: 18px;
	color: #111111;
	font-weight: 700;
	line-height: 24px;
	display: block;
	padding: 15px 40px 15px 15px;
}

.faq__accordion .card:last-child .card-heading {
	border-bottom: none;
}

.faq__accordion .card .card-body {
	padding: 0;
	padding-left: 30px;
	padding-top: 14px;
}

.faq__accordion .card .card-body p {
	font-size: 14px;
	color: #444444;
	line-height: 24px;
	margin-bottom: 0;
}

.faq__accordion .card-heading a:after,
.faq__accordion .card-heading>a.active[aria-expanded=false]:after {
	content: "+";
	font-size: 24px;
	color: #fff;
	position: absolute;
	background: #000;
	border-radius: 50%;
	width: 35px;
	height: 35px;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 8px;
	right: 0px;
}

.faq__accordion .card-heading.active a:after {
	content: "-";
}

.faq__accordion .card-heading a[aria-expanded=true]:after,
.faq__accordion .card-heading>a.active:after {
	content: "-";
}

.faq__form{
	position: relative;
}

.faq__form img{
	width: 100%;
	min-height: 560px;
	object-fit: cover;
	border-radius: var(--radius);
}

.faq__form span{
	position: absolute;
	right: 18px;
	bottom: 18px;
	padding: 10px 14px;
	background: var(--white);
	color: var(--ink);
	border-radius: 999px;
	font-size: .72rem;
	font-weight: 800;
}

.faq__form .section-title {
	margin-bottom: 34px;
}

.faq__form .section-title h2 {
	font-size: 32px;
}

.faq__form form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #444444;
	padding-left: 20px;
	margin-bottom: 20px;
}

.faq__form form input::-webkit-input-placeholder {
	color: #444444;
}

.faq__form form input::-moz-placeholder {
	color: #444444;
}

.faq__form form input:-ms-input-placeholder {
	color: #444444;
}

.faq__form form input::-ms-input-placeholder {
	color: #444444;
}

.faq__form form input::placeholder {
	color: #444444;
}

.faq__form form textarea {
	width: 100%;
	height: 110px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #444444;
	padding-top: 12px;
	padding-left: 20px;
	margin-bottom: 14px;
	resize: none;
}

.faq__form form textarea::-webkit-input-placeholder {
	color: #444444;
}

.faq__form form textarea::-moz-placeholder {
	color: #444444;
}

.faq__form form textarea:-ms-input-placeholder {
	color: #444444;
}

.faq__form form textarea::-ms-input-placeholder {
	color: #444444;
}

.faq__form form textarea::placeholder {
	color: #444444;
}

.faq__form form button {
	width: 100%;
}

.faq__accordion{

}

.faq__accordion .card.card-accord:first-child{
	border-top: 1px solid var(--line);
}

.faq__accordion .card.card-accord{
	background: transparent;
	margin-bottom: 0;
	border-bottom: 1px solid var(--line);
	padding: 15px 0;
	padding-bottom: 20px;
}

.faq__accordion .card.card-accord .card-body{
	padding: 0;
	padding-left: 15px;
	padding-bottom: 5px;
}

.w-600{
	font-weight: 600;
}

.w-700{
	font-weight: 700;
}

.w-800{
	font-weight: 800;
}

.process-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}

.process-grid li:first-child{
	padding-left: 0;
}

.process-grid li:last-child{
	border-right: 0;
}

.process-grid li{
	min-height: 240px;
	padding: 30px;
	border-right: 1px solid var(--line);
}

.process-grid li span{
	display: block;
	margin-bottom: 30px;
	color: var(--red);
	font-family: var(--display);
	font-size: .76rem;
	font-weight: 800;
}

.process-grid li h3{
	margin-bottom: 12px;
	font-weight: 700;
}

.process-grid li p{
	margin: 0;
	color: var(--text-muted);
	font-weight: 600;
}

.button-group-cuent{
	height: 100%;
	align-items: center;
	justify-content: end;
	display: flex;
}

.button-group-cuent a{
	border-color: #fff !important;
	transition: 500ms;
	margin: 0 5px;
}

.button-group-cuent a:last-child{
	margin-right: 0;
}

.button-group-cuent a:hover{
	border-color: #111111 !important;
	background: #111111 !important;
	color: #fff !important;
}

.h1-section-title{
	font-weight: 700;
}

/*---------------------
  Latest Blog
-----------------------*/

.blog {
	padding-top: 70px;
}

.blog__large {
	margin-bottom: 45px;
	overflow: hidden;
	background: #f5f5f5;
}

.blog__large__pic {
	float: left;
	margin-right: 50px;
}

.blog__large__text {
	overflow: hidden;
	padding-top: 60px;
	padding-right: 50px;
}

.blog__large__text span {
	font-size: 13px;
	font-style: italic;
	color: var(--red);
	text-transform: uppercase;
}

.blog__large__text h4 {
	color: #111111;
	font-weight: 700;
	line-height: 31px;
	margin-top: 5px;
	margin-bottom: 6px;
}

.blog__large__text ul {
	margin-bottom: 12px;
}

.blog__large__text ul li {
	list-style: none;
	font-size: 13px;
	color: #888888;
	font-style: italic;
	margin-right: 20px;
	position: relative;
	display: inline-block;
}

.blog__large__text ul li:after {
	position: absolute;
	right: -15px;
	top: 0;
	content: "/";
}

.blog__large__text ul li:last-child {
	margin-right: 0;
}

.blog__large__text ul li:last-child:after {
	display: none;
}

.blog__large__text p {
	font-size: 14px;
	color: #111111;
	margin-bottom: 10px;
}

.blog__large__text a {
	display: inline-block;
	font-size: 14px;
	color: #111111;
	text-transform: uppercase;
	font-weight: 700;
	position: relative;
	padding: 0 0 6px;
	border-bottom: 2px solid var(--red);
}

.blog__item__pic{
	height: 430px;
	position: relative;
	width: 100%;
	height: 330px;
	padding: 0;
	overflow: hidden;
	background: #202126;
	border: 0;
	border-radius: var(--radius);
}

.blog__item__pic img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms cubic-bezier(.22, 1, .36, 1), filter 300ms ease;
}

.blog__item__pic:hover img{
	transform: scale(1.035);
	filter: brightness(.8);
}

.blog__item__pic span{
	position: absolute;
	right: 14px;
	bottom: 14px;
	width: 38px;
	height: 38px;
	display: grid;
	color: var(--white);
	font-family: var(--display);
	font-size: 0.7rem;
	font-weight: 800;
	place-items: center;
	background: rgba(9, 10, 12, 0.82);
	border-radius: 50%;
}

.blog__item__pic .btn-vp-blog{
	position: absolute;
	right: 16px;
	bottom: 16px;
	min-height: 40px;
	display: inline-flex;
	align-items: center;
	padding: 9px 14px;
	transform: translateY(8px);
	background: rgba(255, 255, 255, .94);
	color: var(--ink);
	border-radius: 999px;
	font-size: .72rem;
	font-weight: 700;
	opacity: 0;
	transition: opacity 180ms ease, transform 180ms ease;
	cursor: pointer;
}

.blog__item__pic:hover .btn-vp-blog{
	transform: translateY(0);
	opacity: 1;
}

.blog__item {
	margin-bottom: 35px;
}

.blog__item__pic img {
	min-width: 100%;
}

.blog__item__text {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	padding: 20px 4px 8px;
}

.blog__item__text span {
	display: block;
	margin-bottom: 12px;
	color: var(--red);
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.blog__item__text h3 {
	font-weight: 600;
	margin-bottom: 15px;
}

.blog__item__text .bc-details-vp{
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 50%;
	color: #d0d1d4;
	cursor: pointer;
}

.blog__item__text .bc-details-vp.fwhite{
	color: var(--text-muted);
	border-color: var(--line);
}

.text-muted{
	color: var(--text-muted);
}

.blog__item__text h3 a {
	font-size: 20px;
	color: #111111;
	font-weight: 700;
	line-height: 27px;
}

.blog__item__text h3 a:hover {
	text-decoration: underline;
}

.blog__item__text ul {
	margin-bottom: 10px;
}

.blog__item__text ul li {
	list-style: none;
	font-size: 13px;
	color: #888888;
	font-style: italic;
	margin-right: 20px;
	position: relative;
	display: inline-block;
}

.blog__item__text ul li:after {
	position: absolute;
	right: -15px;
	top: 0;
	content: "/";
}

.blog__item__text ul li:last-child {
	margin-right: 0;
}

.blog__item__text ul li:last-child:after {
	display: none;
}

.blog__item__text p {
	color: #adafb6;
	font-weight: 600;
}

.pagination__option {
	text-align: center;
}

.pagination__option a {
	display: inline-block;
	font-size: 14px;
	color: #111111;
	font-weight: 600;
	background: #f2f2f2;
	text-transform: uppercase;
	padding: 14px 22px;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
	margin-right: 10px;
}

.pagination__option a:last-child {
	margin-right: 0;
}

.pagination__option a:hover {
	background: #0c2b4b;
	color: #ffffff;
}

.button-all-proyect{
	width: 100%;
	height: 100%;
	align-items: flex-end;
	display: flex;
	justify-content: flex-end;
}

.button-all-proyect .buttons-filtros-proyects{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px;
}

.button-all-proyect .buttons-filtros-proyects button{
	min-height: 44px;
	color: var(--text-muted);
	font-size: 0.78rem;
	font-weight: 700;
	padding: 9px 16px;
	background: transparent;
	border: 1px solid var(--line);
	border-radius: 999px;
}

.button-all-proyect .buttons-filtros-proyects button.active,
.button-all-proyect .buttons-filtros-proyects button:hover{
	background: var(--ink);
	color: var(--white);
	border-color: var(--ink);
}

@media (max-width: 767.98px) {
	.rowcontent-card {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;

		/* Desplazamiento suave */
		scroll-behavior: smooth;

		/* Permite deslizar tarjeta por tarjeta */
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;

		/* Espacio entre tarjetas */
		gap: 16px;

		/* Evita que el contenido sobresalga */
		margin-left: 0;
		margin-right: 0;

		padding: 10px 12px 20px;
	}

	.rowcontent-card > div[class*="col-"] {
		flex: 0 0 85%;
		max-width: 85%;
		width: 85%;

		/* Evita que Bootstrap comprima las tarjetas */
		padding-left: 0;
		padding-right: 0;

		scroll-snap-align: start;
	}

	/* Mantiene las tarjetas a la altura de su contenedor */
	.rowcontent-card .blog__item {
		height: 100%;
	}

	/* Oculta la barra de desplazamiento visual */
	.rowcontent-card {
		scrollbar-width: none;
	}

	.rowcontent-card::-webkit-scrollbar {
		display: none;
	}

	.blog__item__text h3{
		font-size: 20px;
	}
}

/*---------------------
  Blog Sidebar
-----------------------*/

.blog__sidebar {
	padding-left: 40px;
}

.blog__sidebar__search {
	margin-bottom: 65px;
}

.blog__sidebar__search h4 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 25px;
}

.blog__sidebar__search form {
	position: relative;
}

.blog__sidebar__search form input {
	height: 48px;
	width: 100%;
	font-size: 16px;
	color: #777C81;
	padding-left: 20px;
	border: none;
	background: #ffffff;
}

.blog__sidebar__search form input::-webkit-input-placeholder {
	color: #8d8d8d;
}

.blog__sidebar__search form input::-moz-placeholder {
	color: #8d8d8d;
}

.blog__sidebar__search form input:-ms-input-placeholder {
	color: #8d8d8d;
}

.blog__sidebar__search form input::-ms-input-placeholder {
	color: #8d8d8d;
}

.blog__sidebar__search form input::placeholder {
	color: #8d8d8d;
}

.blog__sidebar__search form button {
	font-size: 16px;
	color: #ffffff;
	background: #E9AD28;
	border: none;
	font-weight: 500;
	padding: 0 15px 0 25px;
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
}

.blog__sidebar__recent {
	margin-bottom: 60px;
}

.blog__sidebar__recent h4 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 35px;
}

.blog__sidebar__recent__item {
	display: block;
	overflow: hidden;
	margin-bottom: 20px;
}

.blog__sidebar__recent__item:last-child {
	margin-bottom: 0;
}

.blog__sidebar__recent__item__pic {
	float: left;
	margin-right: 20px;
}

.blog__sidebar__recent__item__text {
	overflow: hidden;
}

.blog__sidebar__recent__item__text h6 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 38px;
}

.blog__sidebar__recent__item__text .time {
	font-size: 12px;
	color: #777C81;
}

.blog__sidebar__recent__item__text .time i {
	margin-right: 2px;
}

.blog__sidebar__categories {
	margin-bottom: 52px;
}

.blog__sidebar__categories h4 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 24px;
}

.blog__sidebar__categories ul li {
	list-style: none;
	position: relative;
	padding-left: 18px;
}

.blog__sidebar__categories ul li:hover a {
	color: var(--red);
}

.blog__sidebar__categories ul li:hover:before {
	background: var(--red);
}

.blog__sidebar__categories ul li:before {
	position: absolute;
	left: 0;
	top: 14px;
	height: 5px;
	width: 5px;
	background: #BFC7CE;
	content: "";
	border-radius: 50%;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.blog__sidebar__categories ul li a {
	font-size: 16px;
	color: #1d1c1c;
	line-height: 36px;
	-webkit-transition: all, 0.3s;
	-o-transition: all, 0.3s;
	transition: all, 0.3s;
}

.blog__sidebar__comment {
	margin-bottom: 55px;
}

.blog__sidebar__comment h4 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 26px;
}

.blog__sidebar__comment p {
	line-height: 28px;
	margin-bottom: 8px;
}

.blog__sidebar__comment span {
	display: block;
	color: #1d1c1c;
	line-height: 28px;
	margin-bottom: 12px;
}

.blog__sidebar__comment span:last-child {
	margin-bottom: 0;
}

.blog__sidebar__tags h4 {
	color: #1d1c1c;
	font-weight: 500;
	margin-bottom: 25px;
}

.blog__sidebar__tags a {
	display: inline-block;
	font-size: 14px;
	color: #777C81;
	padding: 8px 25px 6px 20px;
}

/*---------------------
  Blog Hero
-----------------------*/

.blog-hero {
	padding-top: 145px;
	padding-bottom: 150px;
}

.blog__hero__text {
	background: rgba(12, 43, 75, 0.7);
	text-align: center;
	padding: 40px 75px 30px;
}

.blog__hero__text span {
	font-size: 13px;
	font-style: italic;
	color: var(--red);
	text-transform: uppercase;
}

.blog__hero__text h2 {
	color: #ffffff;
	font-weight: 700;
	line-height: 47px;
	margin-top: 6px;
	margin-bottom: 10px;
}

.blog__hero__text ul li {
	list-style: none;
	font-size: 13px;
	color: #ffffff;
	font-style: italic;
	margin-right: 20px;
	position: relative;
	display: inline-block;
}

.blog__hero__text ul li:after {
	position: absolute;
	right: -15px;
	top: 0;
	content: "/";
}

.blog__hero__text ul li:last-child {
	margin-right: 0;
}

.blog__hero__text ul li:last-child:after {
	display: none;
}

/*---------------------
  Blog Details
-----------------------*/

.blog-details {
	padding-top: 60px;
}

.blog__details__text {
	margin-bottom: 20px;
}

.blog__details__text p {
	color: #444444;
	margin-bottom: 20px;
}

.blog__details__text p:last-child {
	margin-bottom: 0;
}

.blog__details__quote {
	padding-left: 55px;
	position: relative;
	margin-bottom: 25px;
}

.blog__details__quote i {
	font-size: 30px;
	color: var(--red);
	position: absolute;
	left: 0;
	top: 5px;
}

.blog__details__quote p {
	font-size: 17px;
	color: #111111;
	line-height: 30px;
	font-weight: 700;
	font-style: italic;
	margin-bottom: 10px;
}

.blog__details__quote span {
	display: block;
	font-size: 15px;
	color: var(--red);
}

.blog__details__desc {
	margin-bottom: 35px;
}

.blog__details__desc p {
	color: #444444;
	margin-bottom: 20px;
}

.blog__details__desc p:last-child {
	margin-bottom: 0;
}

.blog__details__widget {
	padding-bottom: 30px;
	border-bottom: 1px solid #e1e1e1;
	margin-bottom: 55px;
}

.blog__details__widget p {
	font-size: 15px;
	color: #111111;
	margin-bottom: 0;
	line-height: 40px;
}

.blog__details__widget__social {
	text-align: right;
}

.blog__details__widget__social span {
	font-size: 15px;
	color: #111111;
	display: inline-block;
	margin-right: 15px;
}

.blog__details__widget__social a {
	display: inline-block;
	font-size: 16px;
	color: #111111;
	height: 40px;
	width: 40px;
	border-radius: 50%;
	border: 1px solid #e1e1e1;
	line-height: 40px;
	text-align: center;
	margin-right: 10px;
}

.blog__details__widget__social a:last-child {
	margin-right: 0;
}

.blog__option__btn__item {
	overflow: hidden;
	margin-bottom: 30px;
}

.blog__option__btn__prev {
	display: block;
}

.blog__option__btn__prev .option__btn__name {
	font-size: 15px;
	color: #111111;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 25px;
}

.blog__option__btn__prev .option__btn__name i {
	font-size: 15px;
	font-weight: 700;
	position: relative;
	top: -1px;
	margin-right: 6px;
}

.blog__option__btn__prev .blog__option__btn__pic {
	float: left;
	margin-right: 25px;
}

.blog__option__btn__prev .blog__option__btn__text {
	overflow: hidden;
}

.blog__option__btn__prev .blog__option__btn__text h6 {
	color: #111111;
	font-weight: 700;
	line-height: 22px;
}

.blog__option__btn__prev .blog__option__btn__text ul li {
	list-style: none;
	font-size: 13px;
	color: #888888;
	font-style: italic;
	margin-right: 20px;
	position: relative;
	display: inline-block;
}

.blog__option__btn__prev .blog__option__btn__text ul li:after {
	position: absolute;
	right: -15px;
	top: 0;
	content: "/";
}

.blog__option__btn__prev .blog__option__btn__text ul li:last-child {
	margin-right: 0;
}

.blog__option__btn__prev .blog__option__btn__text ul li:last-child:after {
	display: none;
}

.blog__option__btn__next {
	display: block;
	overflow: hidden;
	text-align: right;
}

.blog__option__btn__next .option__btn__name {
	font-size: 15px;
	color: #111111;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 25px;
}

.blog__option__btn__next .option__btn__name i {
	font-size: 15px;
	font-weight: 700;
	position: relative;
	top: -1px;
	margin-left: 6px;
}

.blog__option__btn__next .blog__option__btn__pic {
	float: right;
	margin-left: 25px;
}

.blog__option__btn__next .blog__option__btn__text {
	overflow: hidden;
}

.blog__option__btn__next .blog__option__btn__text h6 {
	color: #111111;
	font-weight: 700;
	line-height: 22px;
}

.blog__option__btn__next .blog__option__btn__text ul li {
	list-style: none;
	font-size: 13px;
	color: #888888;
	font-style: italic;
	margin-right: 20px;
	position: relative;
	display: inline-block;
}

.blog__option__btn__next .blog__option__btn__text ul li:after {
	position: absolute;
	right: -15px;
	top: 0;
	content: "/";
}

.blog__option__btn__next .blog__option__btn__text ul li:last-child {
	margin-right: 0;
}

.blog__option__btn__next .blog__option__btn__text ul li:last-child:after {
	display: none;
}

/*---------------------
  Recent Blog
-----------------------*/

.recent-blog {
	padding-top: 30px;
	padding-bottom: 55px;
}

.recent-blog .section-title h2 {
	font-size: 24px;
}

.recent-blog .blog__item .blog__item__text ul {
	margin-bottom: 0;
}

/*---------------------
  Map
-----------------------*/

.map {
	height: 400px;
	margin-top: 60px;
}

.map iframe {
	width: 100%;
}

/*---------------------
  Contact
-----------------------*/

.contact__address h4 {
	color: #111111;
	font-weight: 800;
	font-style: italic;
	text-transform: uppercase;
	margin-bottom: 30px;
}

.contact__address ul li {
	overflow: hidden;
	list-style: none;
	margin-bottom: 40px;
}

.contact__address ul li:last-child {
	margin-bottom: 0;
}

.contact__address ul li .icon {
	font-size: 20px;
	color: var(--red);
	height: 50px;
	width: 50px;
	background: #0c2b4b;
	border-radius: 50%;
	line-height: 50px;
	text-align: center;
	float: left;
	margin-right: 20px;
}

.contact__address ul li p {
	overflow: hidden;
	margin-bottom: 0;
	color: #111111;
}

.contact__address ul li p span {
	display: block;
}

.contact__form h4 {
	color: #111111;
	font-weight: 800;
	font-style: italic;
	text-transform: uppercase;
	margin-bottom: 30px;
}

.contact__form form input {
	width: 100%;
	height: 50px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #444444;
	padding-left: 20px;
	margin-bottom: 30px;
}

.contact__form form input::-webkit-input-placeholder {
	color: #444444;
}

.contact__form form input::-moz-placeholder {
	color: #444444;
}

.contact__form form input:-ms-input-placeholder {
	color: #444444;
}

.contact__form form input::-ms-input-placeholder {
	color: #444444;
}

.contact__form form input::placeholder {
	color: #444444;
}

.contact__form form textarea {
	width: 100%;
	height: 110px;
	border: 1px solid #e1e1e1;
	background: #ffffff;
	font-size: 14px;
	color: #444444;
	padding-top: 12px;
	padding-left: 20px;
	margin-bottom: 24px;
	resize: none;
}

.contact__form form textarea::-webkit-input-placeholder {
	color: #444444;
}

.contact__form form textarea::-moz-placeholder {
	color: #444444;
}

.contact__form form textarea:-ms-input-placeholder {
	color: #444444;
}

.contact__form form textarea::-ms-input-placeholder {
	color: #444444;
}

.contact__form form textarea::placeholder {
	color: #444444;
}

.contact__form form button {
	width: 100%;
}

/*--------------------------------- Responsive Media Quaries -----------------------------*/

@media only screen and (min-width: 1200px) {
	.container {
		max-width: 1190px;
	}
}

/* Medium Device = 1200px */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.header__right__social {
		margin-right: 12px;
	}
	.header__menu ul {
		text-align: center;
	}
	.header__menu ul li {
		margin-right: 10px;
	}
	.about__video__text {
		padding: 35px 35px 35px 50px;
	}
	.blog__large__pic {
		margin-right: 30px;
	}
	.blog__large__text {
		padding-top: 12px;
		padding-right: 10px;
	}
	.header__logo::before {
		left: -415px;
	}
}

/* Tablet Device = 768px */

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.about__video__text {
		height: auto;
	}
	.application-form .application__form__content {
		padding: 50px;
	}
	.blog__large__pic {
		float: none;
		margin-right: 0;
	}
	.blog__large__pic img {
		min-width: 100%;
		-webkit-transform: scale(1.25);
		-ms-transform: scale(1.25);
		transform: scale(1.25);
		margin-bottom: 30px;
	}
	.blog__large__text {
		padding-left: 50px;
		padding-bottom: 60px;
	}
	.canvas__open {
		display: block;
		font-size: 22px;
		color: #ffffff;
		height: 35px;
		width: 35px;
		line-height: 34px;
		text-align: center;
		border: 1px solid var(--red);
		border-radius: 2px;
		cursor: pointer;
		position: absolute;
		right: 15px;
		top: 28px;
		z-index: 9;
	}
	.offcanvas-menu-overlay {
		position: fixed;
		left: 0;
		top: 0;
		height: 100%;
		width: 100%;
		background: rgba(0, 0, 0, 0.7);
		content: "";
		z-index: 98;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		visibility: hidden;
	}
	.offcanvas-menu-overlay.active {
		visibility: visible;
	}
	.offcanvas-menu-wrapper {
		position: fixed;
		left: -300px;
		width: 300px;
		height: 100%;
		background: #1d1c1c;
		padding: 50px 20px 30px 30px;
		display: block;
		z-index: 99;
		overflow-y: auto;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		opacity: 0;
	}
	.offcanvas-menu-wrapper.active {
		opacity: 1;
		left: 0;
	}
	.offcanvas__menu {
		display: none;
	}
	.slicknav_btn {
		display: none;
	}
	.slicknav_menu {
		background: transparent;
		padding: 0;
		margin-bottom: 20px;
	}
	.slicknav_nav ul {
		margin: 0;
	}
	.slicknav_nav .slicknav_row,
	.slicknav_nav a {
		padding: 7px 0;
		margin: 0;
		color: #ffffff;
		font-weight: 600;
	}
	.slicknav_nav .slicknav_row:hover {
		border-radius: 0;
		background: transparent;
		color: #ffffff;
	}
	.slicknav_nav a:hover {
		border-radius: 0;
		background: transparent;
		color: #ffffff;
	}
	.slicknav_nav {
		display: block !important;
	}
	.offcanvas__logo {
		margin-bottom: 30px;
	}
	.offcanvas__search {
		position: absolute;
		right: 20px;
		top: 20px;
	}
	.offcanvas__search i {
		font-size: 18px;
		color: #ffffff;
		cursor: pointer;
	}
	.offcanvas__social {
		margin-bottom: 30px;
	}
	.offcanvas__social a {
		display: inline-block;
		font-size: 16px;
		color: #ffffff;
		margin-right: 20px;
	}
	.offcanvas__social a:last-child {
		margin-right: 0;
	}
	.header__menu {
		display: none;
	}
	.header__right {
		display: none;
	}
	.header .container {
		position: relative;
	}
}

@media (min-width: 576px) {
	.feature__item.right-column {
		margin-top: 120px !important;
	}
	.team__all {
		text-align: right !important;
		margin-bottom: 0 !important;
	}
	.courses__all {
		text-align: right !important;
		margin-bottom: 0 !important;
	}
	.application-form .application__form__content {
		padding: 45px;
	}
	.course__details__rating {
		text-align: right !important;
	}
}

/* Wide Mobile = 480px */

@media only screen and (max-width: 767px) {
	.info-header-top .container p, .info-header-top .container a{
		font-size: 12px;
	}

	.info-header-top .container .iht-largo{
		display: none;
	}

	.info-header-top .container .iht-corto{
		display: inline;
	}

	.feature__text {
		padding-top: 0;
		margin-bottom: 40px;
	}
	.feature__item.right-column {
		margin-top: 0;
	}
	.about__video__text {
		height: auto;
	}
	.team__all {
		text-align: left;
		margin-bottom: 50px;
	}
	.courses__all {
		text-align: left;
		margin-bottom: 50px;
		display: none !important;
	}
	.course__details__rating {
		text-align: left;
	}
	.faq__accordion {
		margin-bottom: 50px;
	}
	.blog__large__pic {
		float: none;
		margin-right: 0;
	}
	.blog__large__pic img {
		min-width: 100%;
		-webkit-transform: scale(1.25);
		-ms-transform: scale(1.25);
		transform: scale(1.25);
		margin-bottom: 30px;
	}
	.blog__large__text {
		padding-left: 50px;
		padding-bottom: 60px;
	}
	.blog__details__widget p {
		text-align: center;
		margin-bottom: 20px;
	}
	.blog__details__widget__social {
		text-align: center;
	}
	.contact__address {
		margin-bottom: 40px;
	}
	.canvas__open {
		display: block;
		font-size: 22px;
		color: #ffffff;
		height: 45px;
		width: 45px;
		line-height: 45px;
		text-align: center;
		border: 1px solid var(--red);
		border-radius: 2px;
		cursor: pointer;
		position: absolute;
		right: 15px;
		top: 16px;
		z-index: 9;
		border-radius: 50px;
	}
	.offcanvas-menu-overlay {
		position: fixed;
		left: 0;
		top: 0;
		height: 100%;
		width: 100%;
		background: rgba(0, 0, 0, 0.7);
		content: "";
		z-index: 98;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		visibility: hidden;
	}
	.offcanvas-menu-overlay.active {
		visibility: visible;
	}
	.offcanvas-menu-wrapper {
		position: fixed;
		left: -260px;
		width: 260px;
		height: 100%;
		background: #1d1c1c;
		padding: 50px 20px 30px 30px;
		display: block;
		z-index: 99999;
		overflow-y: auto;
		-webkit-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
		opacity: 0;
	}
	.offcanvas-menu-wrapper.active {
		opacity: 1;
		left: 0;
	}
	.offcanvas__menu {
		display: none;
	}
	.slicknav_btn {
		display: none;
	}
	.slicknav_menu {
		background: transparent;
		padding: 0;
		margin-bottom: 20px;
	}
	.slicknav_nav ul {
		margin: 0;
	}
	.slicknav_nav .slicknav_row,
	.slicknav_nav a {
		padding: 7px 0;
		margin: 0;
		color: #ffffff;
		font-weight: 600;
	}
	.slicknav_nav .slicknav_row:hover {
		border-radius: 0;
		background: transparent;
		color: #ffffff;
	}
	.slicknav_nav a:hover {
		border-radius: 0;
		background: transparent;
		color: #ffffff;
	}
	.slicknav_nav {
		display: block !important;
	}
	.offcanvas__logo {
		margin-bottom: 30px;
	}
	.offcanvas__logo a{
		display: flex;
		align-items: center;
		padding: 10px 15px;
		background: var(--white);
		border-radius: 9px;
	}
	.offcanvas__search {
		position: absolute;
		right: 20px;
		top: 20px;
	}
	.offcanvas__search i {
		font-size: 18px;
		color: #ffffff;
		cursor: pointer;
	}
	.offcanvas__social {
		margin-bottom: 30px;
	}
	.offcanvas__social a {
		display: inline-block;
		font-size: 16px;
		color: #ffffff;
		margin-right: 20px;
	}
	.offcanvas__social a:last-child {
		margin-right: 0;
	}
	.header__menu {
		display: none;
	}
	.header__right {
		display: none;
	}
	.header .container {
		position: relative;
	}
}

/* Small Device = 320px */

@media only screen and (max-width: 479px) {
	.section-title h2 {
		font-size: 30px;
	}
	.about__video__text {
		padding: 70px 40px 70px 40px;
	}
	.team__item__img {
		float: none;
		margin-right: 0;
		margin-bottom: 30px;
	}
	.team__item__img img {
		min-width: 100%;
	}
	.hero__text .second-bg {
		margin-left: 0;
		margin-top: 20px;
	}
	.application-form .application__form__content {
		padding: 30px 20px;
	}
	.about-hero {
		/*margin-top: -74px;*/
	}
	.testimonial__content {
		padding: 70px 20px 70px;
	}
	.blog__hero__text {
		padding: 40px 45px 30px;
	}
	.search-model-form input {
		width: 100%;
		font-size: 24px;
	}
	.div__content__footer {
		display: block;
	}
}

#mobile-menu-wrap .slicknav_nav li a{
	color: #fff;
}

#mobile-menu-wrap .slicknav_nav li.active a,
#mobile-menu-wrap .slicknav_nav li:hover a{
	color: var(--red);
}

/* Estilos del Botón Flotante */
.whatsapp-float {
	position: fixed;
	bottom: 30px;
	right: 30px;
	font-size: 15px;
	font-weight: 800;
	background-color: #25d366;
	color: #fff;
	border-radius: 50px;
	padding: 15px 20px;
	text-align: center;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
	z-index: 97;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: all 0.3s ease;
	opacity: 0;
	visibility: hidden;
	transform: translateY(20px);
}

/* Tamaño del icono de FontAwesome */
.whatsapp-float i {
	font-size: 20px;
	margin-right: 5px;
}

/* Efecto hover */
.whatsapp-float:hover {
    background-color: #000;
    transform: scale(1.1) translateY(0);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.4);
}

/* Clase que se activa con JavaScript cuando el usuario baja la página */
.whatsapp-float.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.home-hero,
.page-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: var(--ink);
	color: var(--white);
}

.home-hero {
	background: radial-gradient(circle at 82% 20%, rgba(224, 36, 36, .13), transparent 30%), linear-gradient(135deg, #090a0c, #111217 58%, #08090b);
	min-height: calc(100svh - 114px);
}

.home-hero-layout {
	min-height: calc(100svh - 114px);
	display: grid;
	align-items: center;
	padding-block: 50px;
}

.home-hero-inner {
	min-width: 0;
}

.home-hero h1 {
	max-width: 100%;
	margin-bottom: 24px;
	font-size: 75px;
	font-weight: 800;
	line-height: .92;
}

.home-hero h1 span {
	display: block;
	white-space: nowrap;
	color: transparent;
	-webkit-text-stroke: 1.5px rgba(255, 255, 255, .82);
}

.home-hero-inner > p:not(.eyebrow) {
	color: #d8d9dd;
	font-size: 21px;
	font-family: var(--body);
}

.home-hero-inner .button-row{

}

.home-hero-inner .button-row a{
	
}

.home-hero-visual {
	position: relative;
	height: clamp(480px, calc(100svh - 238px), 650px);
	margin: 0;
	overflow: hidden;
	background: #202126;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 24px;
	box-shadow: 0 32px 80px rgba(0, 0, 0, .34);
}

.home-hero-visual::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: "";
	pointer-events: none;
	background: linear-gradient(180deg, transparent 62%, rgba(5, 6, 8, .64));
}

.home-hero-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 50%;
}

.home-hero-visual span {
	position: absolute;
	z-index: 2;
	right: 16px;
	bottom: 16px;
	left: 16px;
	width: fit-content;
	max-width: calc(100% - 32px);
	padding: 10px 14px;
	background: rgba(9, 10, 12, .82);
	color: var(--white);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 700;
	backdrop-filter: blur(12px);
}

.eyebrow, .card-kicker {
    margin-bottom: 14px;
    color: var(--red);
    font-family: var(--display);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .14em;
    line-height: 1.3;
    text-transform: uppercase;
}

.mobile-home-visual-content{
	display: none;
}

.section-tw-inf-4{
	background: var(--red);
}

.section-tw-inf-4 .col-md-3{
	padding-top: 25px;
	padding-bottom: 25px;
	border-right: 1px solid rgba(255, 255, 255, .25);
}

.section-tw-inf-4 .col-md-3:last-child{
	border-right: 0;
}

.section-tw-inf-4 .section-tw-inf-4-div{
	margin: 10px;
}

.section-tw-inf-4 h4{
	color: #fff;
	font-weight: 600;
	font-family: var(--display);
	font-size: clamp(2rem, 4vw, 3.5rem);
	line-height: 1;
}

.section-tw-inf-4 span{
	color: #fff;
	margin-top: 8px;
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}

/* Ocultar los SVG originales de LightGallery */
.lg-outer .lg-close svg,
.lg-outer .lg-prev svg,
.lg-outer .lg-next svg,
.lg-outer .lg-fullscreen svg {
    display: none !important;
}

/* Cerrar: Font Awesome fa-close */
.lg-outer .lg-close::after {
    content: "\f00d" !important;
    font-family: FontAwesome !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
}

/* Imagen anterior: fa-arrow-left */
.lg-outer .lg-prev::after {
    content: "\f060" !important;
    font-family: FontAwesome !important;
    font-weight: normal;
    line-height: 1;
}

/* Imagen siguiente: fa-arrow-right */
.lg-outer .lg-next::before {
    content: "\f061" !important;
    font-family: FontAwesome !important;
    font-weight: normal;
    line-height: 1;
}

/* Pantalla completa: fa-expand */
.lg-outer .lg-fullscreen::after {
    content: "\f065" !important;
    font-family: FontAwesome !important;
    font-weight: normal;
    line-height: 1;
}

/* Centrar los iconos */
.lg-outer .lg-close,
.lg-outer .lg-prev,
.lg-outer .lg-next,
.lg-outer .lg-fullscreen {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    font-size: 18px;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, .94);
    color: var(--ink) !important;
}

.lg-container .lg-backdrop{
	background: rgba(0, 0, 0, .88);
	backdrop-filter: blur(8px);
}

.lg-container .lg-outer{
	background: #101114;
	border-radius: 16px;
	width: min(1180px, calc(95% - 32px));
	max-height: calc(95svh - 32px);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.lg-container .lg-outer .lg-content{
	background: #070708;
}

.lg-container{
	font-family: var(--body) !important; 
}

.lg-container .lg-toolbar .lg-icon{
	width: 40px;
	height: 40px;
	display: flex;
	place-items: center;
	background: rgba(255, 255, 255, .94);
	color: var(--ink) !important;
	border: 0;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	margin-right: 15px;
}

.lg-container .lg-toolbar .lg-icon:hover{
	opacity: 0.7;
}

.lg-container .lg-toolbar{
	padding-top: 6px;
	margin-bottom: 3px;
}

.lg-container .lg-outer .lg-counter{
	color: #c1c2c6;
	font-size: .78rem;
	font-weight: 700;
}

.lg-container .lg-outer .lg-content{
	width: 98%;
	transform: translate(1%, 0%);
	border-radius: 16px;
}

.lg-container .proyecto-galeria-titulo{
	text-align: left;
	color: #c1c2c6;
	font-size: .82rem;
}

.lg-container .lg-sub-html{
	padding: 10px 15px;
}

.lg-container .lg-outer.lg-fullscreen-on{
	width: min(1180px, calc(100% - 5px));
}

.lg-container .lg-outer.lg-fullscreen-on .lg-content{
	width: 100%;
}

.package-card{
	padding: 28px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.package-card .package-card-top{
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 18px;
}

.package-card .package-card-top span{
	color: var(--red);
	font-family: var(--display);
	font-size: .72rem;
	font-weight: 800;
}

.package-card .package-card-top h3{
	margin: 0;
	font-weight: 700;
}

.package-card img{
	width: 100%;
	height: 210px;
	object-fit: contain;
	margin-bottom: 18px;
	background: #f1f1ef;
	border-radius: 12px;
}

.package-card p{
	color: var(--text-muted);
}

.package-card ul{
	margin-block: 20px 24px;
	margin: 0;
  padding: 0;
  list-style: none;
}

.package-card ul li{
	padding-block: 9px;
	border-bottom: 1px solid var(--line);
	font-size: .9rem;
}

.package-card ul li i{
	color: var(--red);
}

.package-card a{
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--ink);
	font-family: var(--display);
	font-size: .83rem;
	font-weight: 800;
	margin-top: 15px;
}

.location-card{
	position: relative;
	padding: clamp(32px, 5vw, 58px);
	overflow: hidden;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
}

.location-card .location-index{
	position: absolute;
	right: 28px;
	top: 18px;
	color: #ecebe6;
	font-family: var(--display);
	font-size: clamp(4rem, 10vw, 8rem);
	font-weight: 800;
	line-height: 1;
}

.location-card span{
	margin-bottom: 14px;
	color: var(--red);
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.location-card h3{
	max-width: 70%;
	margin-bottom: 18px;
	font-size: clamp(1.7rem, 3vw, 2.7rem);
	font-weight: 800;
}

.location-card p{
	max-width: 52ch;
	color: var(--text-muted);
	font-weight: 600;
}

.location-card .location-card-info{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
	margin-block: 30px;
	padding-block: 24px;
	border-block: 1px solid var(--line);
}

.location-card .location-card-info dt{
	margin-bottom: 6px;
	color: var(--text-muted);
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.location-card .location-card-info dd{
	margin: 0;
	font-weight: 600;
}

.location-card a{
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--ink);
	font-family: var(--display);
	font-size: .83rem;
	font-weight: 800;
}

.location-card a i{
	transition: transform 160ms ease;
}

.location-card a:hover{
	color: var(--red);
}

.location-card a:hover i{
	transform: translateX(4px);
}

.card-form-contact{
	padding: 30px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: var(--shadow);
}

.card-form-contact span{
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.card-form-contact h2{
	font-size: 43px;
	margin-bottom: 15px;
}

.card-form-contact p{
	font-size: 15px
}

.card-form-contact form label{
	display: block;
	margin-bottom: 8px;
	font-size: .78rem;
	font-weight: 700;
}

.card-form-contact form input,
.card-form-contact form select,
.card-form-contact form textarea{
	width: 100%;
	min-height: 50px;
	padding: 13px 14px;
	background: #f8f8f6;
	border: 1px solid #c9c9c3;
	border-radius: 8px;
	color: #000;
	font-weight: 500;
}

.card-form-contact form input::placeholder,
.card-form-contact form select::placeholder,
.card-form-contact form textarea::placeholder {
  color: #888888;
}

.card-form-contact form input:focus,
.card-form-contact form select:focus,
.card-form-contact form textarea:focus{
	border-color: #25d366;
	box-shadow: 0 0 0 .2rem rgb(37 211 102 / 25%);
}

.card-form-sec-cont{
	padding: 30px;
}

.card-form-sec-cont span{
	font-family: var(--display);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.card-form-sec-cont a.contact-method{
	min-height: 86px;
	display: flex;
	align-items: center;
	gap: 18px;
	padding-block: 18px;
	border-bottom: 1px solid var(--line);
}

.card-form-sec-cont a.contact-method i{
	width: 42px;
	font-size: 40px;
	font-weight: 500;
	color: #000;
}

.card-form-sec-cont a.contact-method i.outline{
	color: transparent;
	-webkit-text-stroke: 3px rgb(0 0 0);
}

.card-form-sec-cont a.contact-method:hover i{
	color: var(--red);
}

.card-form-sec-cont a.contact-method:hover i.outline{
	color: transparent;
	-webkit-text-stroke: 3px rgb(224 36 36);
}

.card-form-sec-cont a.contact-method span{
	min-width: 0px;
}

.card-form-sec-cont a.contact-method span small{
	margin-bottom: 4px;
	color: var(--text-muted);
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	display: block;
}

.card-form-sec-cont a.contact-method span strong{
	overflow-wrap: anywhere;
	font-family: var(--display);
	font-size: clamp(1rem, 1.8vw, 1.25rem);
	display: block;
	color: #000;
	letter-spacing: 0px;
	text-transform: lowercase;
	font-weight: 600;
}

.card-form-sec-cont .contact-emails{
	margin-top: 40px;
}

.card-form-sec-cont .contact-emails h3{
	font-size: 1rem;
	font-weight: 700;
}

.card-form-sec-cont .contact-emails a{
	display: block;
	margin-top: 8px;
	color: var(--text-muted);
}

.card-form-sec-cont .contact-emails a:hover{
	color: var(--red);
}

.list-horarios{
	padding: 30px;
	background: var(--white);
	color: var(--ink);
	border-radius: var(--radius);
}

.list-horarios h3{
	font-weight: 600;
}

.list-horarios dl{
	margin-block: 26px;
	border-top: 1px solid var(--line);
}

.list-horarios dl div{
	display: flex;
	justify-content: space-between;
	gap: 18px;
	padding-block: 15px;
	border-bottom: 1px solid var(--line);
}

.list-horarios dt{
	margin: 0;
	font-weight: 500;
}

.list-horarios dd{
	margin: 0;
	font-weight: 700;
}

.list-horarios small{
	display: block;
	color: var(--text-muted);
	text-align: center;
}

.service-link-cloud{
	margin-top: 15px;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--line);
	border-left: 1px solid var(--line);
}

.service-link-cloud a{
	min-height: 78px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 22px;
	border-right: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
	font-family: var(--display);
	font-weight: 700;
	color: #000;
}

.service-link-cloud a i{
	display: inline-block;
	flex: 0 0 auto;
	width: 1.2em;
	height: 1.2em;
	vertical-align: -0.2em;
}

.service-link-cloud a:hover{
	background: var(--ink);
	color: var(--white);
}

.brand-grid{
	padding: 26px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	display: block;
	unicode-bidi: isolate;
	height: 100%;
}

.brand-grid .logo-brand{
	height: 200px;
	display: grid;
	place-items: center;
	margin-bottom: 22px;
	padding: 30px;
	background: #f1f1ef;
	border-radius: 12px;
}

.brand-grid .logo-brand img{
	width: 100%;
	max-height: 120px;
	object-fit: contain;
}

.brand-grid h3{
	margin-bottom: 10px;
	font-weight: 600;
}

.brand-grid p{
	margin: 0;
	color: var(--text-muted);
	font-weight: 600;
}

.div-certif{
	min-height: 360px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 32px;
	background: var(--white);
	color: var(--ink);
	border-radius: var(--radius);
}

.div-certif img{
	width: 100%;
	height: 170px;
	object-fit: contain;
	margin-bottom: 36px;
}

.div-certif h3{
	margin-bottom: 9px;
	font-family: var(--display);
	letter-spacing: -0.04em;
	line-height: 1.06;
	font-weight: 600;
	font-size: clamp(1.25rem, 2vw, 1.65rem);
}

.div-certif p{
	margin: 0;
	color: var(--text-muted);
}

.div-certif .logo-rupes-text{
	display: grid;
	place-items: center;
	height: 170px;
	margin-bottom: 36px;
	background: #111;
	color: var(--white);
	border-radius: 12px;
	font-family: var(--display);
	font-size: clamp(2rem, 5vw, 4rem);
	font-style: italic;
	font-weight: 800;
	letter-spacing: .02em;
}

.list_produc{
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--line);
	display: block;
}

.list_produc li{
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 16px;
	padding-block: 26px;
	border-bottom: 1px solid var(--line);
}

.list_produc li span{
	color: var(--red);
	font-family: var(--display);
	font-size: .72rem;
	font-weight: 800;
}

.list_produc li h3{
	margin-bottom: 8px;
	font-weight: 600;
}

.list_produc li p{
	margin: 0;
	color: var(--text-muted);
}

.list_objetivos{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid rgba(255, 255, 255, .18);
	border-left: 1px solid rgba(255, 255, 255, .18);
	list-style: none;
}

.list_objetivos li{
	min-height: 230px;
	padding: 28px;
	border-right: 1px solid rgba(255, 255, 255, .18);
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.list_objetivos li span{
	display: block;
	margin-bottom: 52px;
	color: var(--red);
	font-family: var(--display);
	font-size: .74rem;
    font-weight: 800;
}

.list_objetivos li h3{
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	color: #fff;
	margin-bottom: 10px;
}

.list_objetivos li p{
	margin: 0;
	color: #a9abb2;
}

/* Transición suave para la aparición de las tarjetas */
#list-blogs-items > div {
    transition: opacity 0.4s ease, transform 0.4s ease;
    opacity: 1;
    transform: translateY(0);
}

/* Estado oculto durante el filtrado */
#list-blogs-items > div.fade-out {
    opacity: 0;
    transform: translateY(15px);
}

.text-red{
	color: var(--red);
}

@media only screen and (max-width: 767px) {
	.whatsapp-float {
		bottom: 25px;
		right: 15px;
		font-size: 12px;
		padding: 12px 18px;
	}

	.whatsapp-float i {
		font-size: 15px;
	}

	.home-hero h1 {
		font-size: 50px;
	}

	.home-hero{
		min-height: 0;
	}

	.home-visual-content{
		display: none;
	}

	.home-hero-layout {
		width: 100%;
		min-height: auto;
	}

	.mobile-home-visual-content{
		display: block;
		padding: 0;
	}

	.home-hero-visual {
		width: 100%;
		height: 44svh;
		min-height: 320px;
		margin: 0;
		border-inline: 0;
		border-radius: 0;
	}

	.mobile-home-visual-content .home-hero-layout{
		padding: 0;
	}

	.section-tw-inf-4 .col-md-3:nth-child(2){
		border-right: 0;
	}

	.section-tw-inf-4 .section-tw-inf-4-div{
		margin: 0;
	}

	.section-tw-inf-4 .col-md-3:nth-child(-n+2){
		border-bottom: 1px solid rgba(255, 255, 255, .25);
	}

	.home-hero-inner .button-row a{
		display: block;
		text-align: center;
	}

	.lg-container .lg-outer .lg-prev{
		top: auto;
		bottom: 10px;
		left: 8px;
	}

	.lg-container .lg-outer .lg-next{
		top: auto;
		bottom: 10px;
		right: 8px;
	}

	.lg-container .proyecto-galeria-titulo{
		text-align: center;
	}

	.faq__form img{
		min-height: 400px;
		margin-top: 45px;
	}

	.process-grid{
		grid-template-columns: 1fr;
	}

	.process-grid li{
		border-bottom: 1px solid var(--line);
		padding-left: 0;
		min-height: auto;
		border-right: 0;
	}

	.process-grid li:last-child{
		border-bottom: 0;
	}

	.div__content__footer{
		display: block;
	}

	.location-card .location-card-info{
		grid-template-columns: 1fr;
	}

	.location-card{
		padding: 28px;
		margin-bottom: 15px;
	}

	.button-group-cuent{
		display: block;
		margin-top: 10px;
		text-align: center;
	}

	.button-group-cuent a{
		margin: 8px 0;
		display: block;
	}

	.card-form-contact{
		margin-bottom: 15px;
	}

	.card-form-contact{
		padding: 30px 18px;
	}
	
	.card-form-sec-cont{
		padding: 30px 0;
	}

	.service-link-cloud{
		grid-template-columns: 1fr;
	}

	.h1-section-title{
		font-size: 40px;
		margin-bottom: 10px;
	}

	.about__hero__text .section-title h1 {
		font-size: 43px;
		width: 100%;
		max-width: 100%;
	}

	.button-all-proyect{
		align-items: center;
		justify-content: center;
	}

	.button-all-proyect .buttons-filtros-proyects{
		position: sticky;
		z-index: 20;
		top: 80px;
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: 8px;
		padding: 10px 0;
		overflow-x: auto;
		backdrop-filter: blur(14px);
		scrollbar-width: none;
		margin-top: 10px;
	}

	#list-blogs-items .blog__item__pic{
		height: 250px;
	}

	.list_objetivos{
		grid-template-columns: 1fr;
	}

	.blog__item__pic {
    height: 330px !important;
  }

}