/*
Theme Name: Base
Theme URI: https://bellop.io
Version: 1.0
Author: bellop.io
Author URI: https://bellop.io
*/

:root{
   
	/* Defaults */
	--mati-header-mobile-min-height: 60px;
	--mati-header-desktop-min-height: 72px;

	/* BS colors */
    --bs-primary: #EADA23;
    --bs-secondary: #A1A696;

    --bs-body-color: #000;
    --bs-body-bg: #fff;

    --bs-white: #fff;
    --bs-light: #F4F4F4;
    --bs-light-rgb: 225, 221, 217;
    --bs-dark: #313131;
    --bs-black: #000;

    --bs-link-decoration: none;

    /* BS Borders */
    --bs-border-width: 1px;
    --bs-border-color: #4D575C;
    --bs-border-radius: 0px;

	/* BS Form */
    --bs-box-shadow: none;
    
}

/* Lenis */

html.lenis, html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

body::-webkit-scrollbar {
    width: 5px;
}

body::-webkit-scrollbar-track {
    background: black;
}

body::-webkit-scrollbar-thumb {
    background-color: #333;
}


/* Colors */

.text-primary{ color: var(--bs-primary) !important; }
.text-secondary{ color: var(--bs-secondary) !important; }
.text-body{ color: var(--bs-body) !important; }
.text-white{ color: var(--bs-white) !important; }
.text-light{ color: var(--bs-light) !important; }



body {
	font-size: 16px;
	line-height: 1.3em;
	font-family: "Archivo", sans-serif;
	font-weight: 300;
}

body.header-fixed{
	padding-top: var(--mati-header-mobile-min-height);
}


@media screen and (min-width: 992px){
	body {
		font-size: 20px;
	}
}

@media screen and (min-width:1200px){
	body.header-fixed{
		padding-top: var(--mati-header-desktop-min-height);
	}
}

p {
	line-height: 1.3em;
}

a,
a:hover{
	color: inherit;
	text-decoration: none;
	transition: 0.3s all;
}

h1, h2, h3, h4, h5, h6{
	font-weight: 500;
	line-height: 1em;
}

b, strong {
    font-weight: bold;
}




/* Framework */

.main {
	width: 100%;
	min-height: 80vh;
	overflow: hidden;
}

.container,
.container-fluid{
	width: 100%;
	max-width: 100%;
}
.container{
	max-width: 1600px;
}

/*
[class^="col-"]{
	padding-left: 15px;
	padding-right: 15px;
}*/

@media screen and (min-width: 992px){
	.col-lg-5-2{
		-ms-flex: 0 0 20%;
	    flex: 0 0 20%;
	    max-width: 20%;
	}
}

@media screen and (min-width: 1440px){
	.container{
		padding: 0 70px;
	}
}


@media screen and (min-width: 992px){
	.w-md-50 {
		max-width: 42%;
		margin-right: 8%;
	}

}
/* Framework */

.section{
	position: relative;
	padding: 45px 0;
}

@media screen and (min-width: 992px){
	.section{
		padding: 90px 0;
	}
}

/* Images*/
.image {
	overflow: hidden;
}
.image.full{
	aspect-ratio: 1.8 / 1;
	width: 100%;
	height: auto;
}

.image.full img {
	aspect-ratio: 1.8 / 1;
	object-fit: cover;
}


.container .image.full img {
	aspect-ratio: 1.87 / 1;
}


/* Keyframes */

@keyframes dropDown{
    0% {
        transform: scaleY(0);
    }
    80% {
        transform: scaleY(1.1);
    }
    100% {
        transform: scaleY(1);
    }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

/* Extras */

.overh{
	overflow: hidden;
}

/** Preloader */
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--bs-primary);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
}


#preloader .progress {
    width: 100%;
    height: 2px;
    background: #fff;
    margin-top: 10px;
    position: relative;
    overflow: hidden;
    border-radius: 2px;
}

#preloader .progress span {
    display: block;
    height: 100%;
    width: 0%;
    background: #76D6C4;
    transition: width 0.2s ease-in-out;
}

.grecaptcha-badge{
	opacity:0;
}

/* Buttons */

.btn{
	/*min-width: 150px;*/
	--bs-btn-padding-x: 12px;
	--bs-btn-padding-y: 12px;
	--bs-btn-font-weight: normal;
	border-radius: 0;
	font-size: 16px;
	font-weight: normal;
}
.btn i{
	vertical-align: -1px;
	font-size: 18px;
	margin-right: 6px;
}

@media screen and (max-width: 576px){
	.btn-block-mobile{
		width: 100%;
	}
}

.btn-primary{
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-primary);

    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-color: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);

    --bs-btn-active-bg: var(--bs-light);
    --bs-btn-active-color: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
}
.btn-outline-primary{
    --bs-btn-bg: transparent;
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);

    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-border-color: var(--bs-primary);

    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-primary);
}

.btn-black{
    --bs-btn-bg: var(--bs-black);
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-black);

    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-color: var(--bs-black);
    --bs-btn-hover-border-color: var(--bs-black);

    --bs-btn-active-bg: var(--bs-light);
    --bs-btn-active-color: var(--bs-black);
    --bs-btn-active-border-color: var(--bs-black);
}

/* Btn Float */

.btn-float{
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 50px;
    height: 50px;
    font-size: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    border-radius: 50%;
    box-shadow: 0 0 15px 0 rgba(0,0,0,0.1);
    transition: 0.3s all;
}

.btn-float-whatsapp{
    color: #fff;
    background: #25D366;
}
.btn-float-whatsapp:hover{
    background: #fff;
    color: #25D366;
}

@media screen and (min-width:768px){
	.btn-float{
	    width: 70px;
	    height: 70px;
	    font-size: 40px;
	}
}


/* Form */

label{
	font-size: 16px;
	margin-bottom: 8px;
}


.required{
	color: #4D575C;
}

.form-select,
.form-control{
	min-height: 48px;
	background-color: transparent;
	color: var(--bs-body);
	transition: 0.3s all;
	font-weight: normal;
	border-color: var(--bs-black);
}
.form-select::placeholder,
.form-control::placeholder{
 	color: #505050;
}

.form-select:focus,
.form-control:focus{
	background: transparent;
	color: var(--bs-body);
	border-color: var(--bs-primary);	
    box-shadow: none;
}

.form-select:focus::placeholder,
.form-control:focus::placeholder{
	color: var(--bs-body);
}


/* If Bg primary or bg dark */
.bg-primary .form-control, .bg-dark .form-control,
.bg-primary .form-select, .bg-dark .form-select {
	color: var(--bs-white);
	border-color: var(--bs-light);
}

.bg-primary .form-select::placeholder,
.bg-primary .form-control::placeholder{
 	color: var(--bs-white);
}

.bg-gray{
	background-color: #DCDBD0;
}

/* Input Checkbox */

input[type="checkbox"],
input[type="radio"]{
	display: inline-block;
	vertical-align: middle;
	width: 17px;
	height: 17px;
	margin-right: 6px;
	border: 1px solid #151515;
	box-shadow: 0 0 0px 4px #fff inset;
	border-radius: 50%;
	appearance: none;
	-webkit-appearance: none;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked{
	background: #151515;
}
input[type="checkbox"] ~ span,
input[type="radio"] ~ span{
	display: inline-block;
	vertical-align: middle;
}
input[type="checkbox"] ~ label,
input[type="radio"] ~ label{
	display: inline-block;
	vertical-align: middle;
	width: calc(100% - 30px);
	margin: 0;
}

form small {
	font-size: 12px;
	color: #505050;
}

/* Show password */

.show_password{
	position: absolute;
	bottom: 0;
	right: 15px;
	padding: 15px;
}
.show_password.active,
.show_password:hover{
	color: #f58426;
}

/* Input File */

.input-file-wrapper{
	position: relative;
	display: block;
	padding: 30px 15px;
	margin: 5px 0 0;
	text-align: center;
	font-weight: 400;
	background: transparent;
	border: dashed 1px #000;
	border-radius: 0;
	cursor: pointer;
}
.input-file-wrapper input{
	opacity: 0;
	width: 0;
}

.input-file-wrapper .files{
	max-height: 100px;
	overflow: auto;
}
.input-file-wrapper .files span{
	display: block;
	color: #222;
	font-size: 12px;
	text-transform: uppercase;
}
.input-file-wrapper:hover{
	box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}

/* Colors */

.text-body{ color: var(--bs-body) !important; }

.text-primary, 
.has-primary-color{ color: var(--bs-primary) !important; }

.text-secondary, 
.has-secondary-color{ color: var(--bs-secondary) !important; }

.bg-primary, 
.has-primary-background-color{ background: var(--bs-primary) !important; }

.bg-secondary, 
.has-secondary-background-color{ background: var(--bs-secondary) !important; }


.bg-white, 
.has-white-background-color{ background: var(--bs-white) !important; }

.bg-dark,
.has-dark-background-color{ background: var(--bs-dark) !important; }

.bg-black, 
.has-black-background-color{ background: var(--bs-black) !important; }

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


/* Header */

.header{
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	min-height: var(--mati-header-mobile-min-height);
	background: #fff;	
	transition: 0.3s all;
	z-index: 777;	
}
.header .container{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header .logo{
	display: inline-block;
	max-width: 156px;
	margin: 10px 0;
}

.header-fixed .header{	
	position: fixed;
	min-height: 62px;
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    -webkit-animation: slideInDown 0.3s ease-out;
    -moz-animation: slideInDown 0.3s ease-out;
}


/* Header > Navigation */

.header .nav-menu {
	position: relative;
	float: right;
	width: 35px;
	padding: 15px 0;
	cursor: pointer;
	z-index: 21;
	overflow: hidden;
}
.header .nav-menu .menu-line {
	float: right;
	display: block;
	width: 100%;
	height: 2px;
	margin: 4px 0;
	background: var(--bs-black);
	transition: 0.3s;
	border-radius: 6px;
}
.header .nav-menu.active .menu-line:nth-child(1) { transform: rotate(45deg); width: 40px; margin-top: 14px; }
.header .nav-menu.active .menu-line:nth-child(3) { transform: rotate(-45deg); width: 40px; margin-top: -16px; }
.header .nav-menu.active .menu-line:nth-child(2) { opacity: 0; }

.header .navigation {
	display: none;
	position: absolute;
	top: 60px;
	left: 0;
	width: 100%;
	margin: 0;
	text-align: center;
	background: #fff;
}
body.open-menu .header .navigation {
	display: block;
}
.header .navigation .menu {
	position: relative;
}
.header .navigation .menu li a {
	display: block;
	position: relative;
	padding: 10px 12px;
	font-size: 18px;
	color: var(--bs-black);
}
.header .navigation .menu li.current-menu-item a,
.header .navigation .menu li a:hover{
	color: var(--bs-dark);
}

.header .navigation .menu li.menu-contact a {
	background: var(--bs-black);
	color: var(--bs-white);
	border: solid 1px var(--bs-black);
	padding: 11px 19px;
	border-radius: 0;
	display: inline-block;
}
.header .navigation .menu li.menu-contact a:hover{
	background: transparent;
	color: var(--bs-black);
}

.header .navigation .menu li .sub-menu{
	display: none;
	margin: 0;
	padding: 0;
	list-style: none;
}
.header .navigation .menu li.open-submenu > ul{
	display: block;
}

.header .navigation .language li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 -2px;
}
.header .navigation .language li a{
	text-transform: uppercase;
	padding-left: 10px;
	padding-right: 10px;
}
.header .navigation .language li a:after{
	content: '';
	position: absolute;
	top: 40%;
	right: 0;
	width: 1px;
	height: 20%;
	background: var(--bs-gray);
}
.header .navigation .language li:last-child a:after{
	content: none;
}
.header .navigation .language li.current-lang a{
	text-decoration: underline;
}

@media screen and (min-width: 1200px) {

	.header {
		min-height: var(--mati-header-desktop-min-height);
	}
	.header .logo {
		margin: 18px 0;
	}

	.header .nav-menu {
		display: none;
	}

	.header .navigation{
		display: flex;
		align-items: center;
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		background: transparent;
	}
	.header .navigation ul,
	.header .navigation ul li {
		position: relative;
		display: flex;
		align-items: center;
		gap: 29px;
	}
	.header .navigation ul{
		margin: 0;
	}
	.header .navigation .menu > li:not(.menu-contact) a {
		padding: 12px 0;
	}

	.header .navigation .menu > li a {
		font-size: 16px;
		line-height: 16px;
	}

	.header .navigation .menu {
		margin-right: 0px;
	}
	.header .navigation .menu li a {
		text-align: left;
	}

	.header .navigation .menu li:not(.menu-contact) a:before{
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 0;
        height: 1px;
        background: var(--bs-dark);
        transition: 0.3s all;
    }
    .header .navigation .menu li:not(.menu-contact).active a:before,
    .header .navigation .menu li:not(.menu-contact).current-menu-item a:before,
    .header .navigation .menu li:not(.menu-contact) a:hover:before{
        left: 0;
        width: 100%;
    }

   
	/* Submenu */
	.header .navigation .menu li .sub-menu{
		display: none;
		position: absolute;
		top: var(--mati-header-desktop-min-height);
		left: 0;
		width: 150px;
		background: var(--bs-white);
		box-shadow: 0 5px 5px 0 rgba(0,0,0,0.1);
		animation: dropDown 300ms ease-in-out forwards;
    	transform-origin: top center;
	}
	.header .navigation ul li:hover > .sub-menu{
		display: block;
	}
	.header .navigation .menu li .sub-menu li{
		display: block;
		margin: 0;
	}
	.header .navigation .menu li .sub-menu li a{
		display: block;
		padding: 10px 15px;
		font-size: 15px;
		color: var(--bs-gray);
		border-bottom: 1px solid #eee;
	}
	
	.header .navigation .menu li .sub-menu li:last-child a{
		border-bottom: 0;
	}
	.header .navigation .menu li .sub-menu li.current-menu-item > a,
	.header .navigation .menu li .sub-menu li a:hover{
		background: var(--bs-primary);
		color: var(--bs-white);
		border-bottom-color: var(--bs-primary); 
	}

	.header .navigation .menu li .sub-menu li ul{
		top: 0;
		left: 150px;
		width: 200px;
	}
	.header .navigation .menu li .sub-menu li ul ul{
		left: 200px;
	}
	

	/* Fixed */
	.header-fixed .logo{
		margin: 14px 0;
	}
	.header-fixed .header .navigation .menu li .sub-menu{
		top: var(--mati-header-mobile-min-height);
	}

}

@media screen and (max-width: 1199px){
	.header .navigation{
		box-shadow: 0 2px 5px 0 rgba(0,0,0,0.1);
	}
	.header .navigation .menu li.active a,
	.header .navigation .menu li a:hover{
		background: var(--bs-black);
		color: var(--bs-white);
	}

	.header .navigation .menu li {
		margin: 12px 0;
	}

	.header .navigation ul li.open-submenu > ul{
		background: rgba(0,0,0,0.05);
	}
	.header .navigation ul li ul li a{
		padding-top: 6px;
		padding-bottom: 6px;
		font-size: 16px;
	}
}


/* Modules */


/* Modules > Socialmedia */
.socialmedia {
	display: inline-flex;
	gap: 20px;
	width: 100%;
}
.socialmedia li a{
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--bs-black);
	color: var(--bs-white);
	display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    font-size: 32px;
}

.socialmedia li a i {
	transition: .5s;
  	z-index: 3;
}
.socialmedia li a:hover i {
  transform: rotateY(360deg);
}

.socialmedia li a:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--bs-black);
  transition: .5s;
  z-index: 2;
}
.socialmedia li a:hover:before {
  top: 0;
}

.socialmedia li a i.fa-website {
	content: '';
	width: 20px;
	height: 25px;
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='25' viewBox='0 0 20 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.846 20.3367H10.6201C11.0314 20.3367 11.4428 20.2915 11.8666 20.1948C12.2904 20.098 12.6706 19.9368 13.0072 19.6981C13.3499 19.4659 13.6242 19.1563 13.8423 18.7822C14.0604 18.4082 14.1664 17.9502 14.1664 17.402C14.1664 16.815 14.0231 16.3377 13.7426 15.9701C13.4559 15.6024 13.1006 15.3315 12.6706 15.138C12.2406 14.951 11.7731 14.822 11.2683 14.751C10.7697 14.6801 10.3022 14.6478 9.8722 14.6478H5.846V20.3302V20.3367ZM5.846 9.99097H9.70393C10.1153 9.99097 10.5142 9.94582 10.913 9.84907C11.3119 9.75232 11.6672 9.60397 11.985 9.39112C12.3029 9.17828 12.5584 8.89448 12.7516 8.54618C12.9448 8.19143 13.0446 7.77219 13.0446 7.27554C13.0446 6.7789 12.9386 6.3274 12.7205 5.98555C12.5023 5.6437 12.2281 5.37926 11.8853 5.19221C11.5425 5.00516 11.1561 4.86971 10.7261 4.78586C10.296 4.70201 9.87221 4.66331 9.46086 4.66331H5.846V9.99742V9.99097ZM0.523445 0H9.52942C10.5765 0 11.6298 0.0773998 12.6831 0.232199C13.7426 0.386997 14.6899 0.690145 15.5313 1.14809C16.3727 1.60604 17.052 2.25103 17.5756 3.07018C18.0991 3.89577 18.3609 4.99226 18.3609 6.3532C18.3609 7.71414 17.9807 8.93963 17.2203 9.86842C16.46 10.7972 15.4503 11.4616 14.1976 11.8615V11.9324C14.9953 12.0485 15.7183 12.2807 16.3665 12.6225C17.0147 12.9644 17.5693 13.3965 18.0368 13.9319C18.5042 14.4608 18.8595 15.08 19.1088 15.783C19.3581 16.4925 19.4827 17.2407 19.4827 18.0405C19.4827 19.3563 19.2085 20.4592 18.6663 21.3429C18.1178 22.2265 17.4135 22.936 16.5534 23.4778C15.6871 24.0196 14.7149 24.4066 13.6366 24.6453C12.5584 24.8839 11.4802 25 10.4144 25H0.517212V0H0.523445Z' fill='white'/%3E%3C/svg%3E%0A");
}

@media screen and (min-width: 992px){
	.socialmedia {
		justify-content: flex-end;
	}
}

/* Modules > Title */

.title{
	position: relative;	
	margin-bottom: 30px;
}

.title h1{
	font-size: 30px;
}
.title h2{
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 5px;
}
.title h3{
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 5px;
}
.title h4{
	font-size: 18px;
}
.title span{
	color: var(--bs-primary);
	font-weight: 700;
}
.title .btn{
	margin-top: 20px;
}
.title .subtitle{
	text-transform: uppercase;
	margin-bottom: 12px;
	letter-spacing: 0.1em;
}


.title .description {
	font-size: 18px;
}
.title.lined{
	padding-bottom: 15px;
	border-bottom: 1px solid #262626;
}

@media screen and (min-width: 992px){

	.title.max-width-sm {
		max-width: 380px;
	}
	.title.max-width{
		max-width: 335px;
	}
	.title.max-width-md{
		max-width: 700px;
	}
	.title.max-width-lg{
		max-width: 890px;
	}

}


@media screen and (min-width: 992px){
	.title{
		margin-bottom: 50px;
	}	
	
	.title .subtitle{
		margin-bottom: 24px;
	}
	.title .description {
		font-size: 21px;
	}
	.title .btn{
		margin-top: 50px;
	}

}

/* Data Title */
.data-title {
	display: flex;
	align-items: center;
	padding: 50px 0;
	min-height: 405px;
	background-size: cover;
}

.data-title .title {
	margin-bottom: 0;
}


/* Modules > Banner */

.banner{
	position: relative;
	display: flex;
	align-items: center;
	background-color: var(--bs-dark);
	padding: 50px 0;
	min-height: 400px;
	overflow: hidden;
}

/* Module > Presentation */

.presentation .swiper-slide{
	display: flex !important;
	align-items: center;
	padding: 25px 0;
	height: calc(100dvh - var(--mati-header-mobile-min-height)) ;
	background:  #353532 no-repeat bottom;
	background-size: cover;
	color: #fff;
	position: relative;
}

.presentation .swiper-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25); /* color y opacidad del overlay */
    z-index: 1;
}

.presentation .swiper-slide > * {
    position: relative;
    z-index: 2;
}

@media screen and (min-width: 992px) {
	.presentation .swiper-slide{
		height: calc(100dvh - var(--mati-header-desktop-min-height)) ;
	}   
}

@media screen and (max-width: 991px) {
	
}

/* Module > Video Player */

.video-player{
	position: relative;
	width: 100%;
	padding: 25% 0;
	background: #f1f1f1 no-repeat center;
	background-size: cover;
}
.video-player .play{
	display: none;
	position: absolute;
	top: calc(50% - 30px);
	left: calc(50% - 30px);
	width: 60px;
	height: 60px;
	font-size: 24px;
	line-height: 60px;
	text-align: center;
	background: var(--bs-primary);
	color: #fff;
	border-radius: 50%;
	transition: 0.3s all;
	cursor: pointer;
}
.video-player.active .play,
.video-player:hover .play{
	background: var(--bs-primary);
	color: #fff;
}
.video-player .play:hover{
	transform: scale(1.1);
}
.video-player .play i{
	margin-left: 4px;
}

.video-player.allowed{
	cursor: pointer;
}
.video-player.allowed .play{
	display: block;
}


/* Module > Contact */

@media screen and (min-width: 992px){
	.module-contact .vias li {
		font-size: 19px;
	}
}


/* Pages */
.page.home .module-contact{
	padding-bottom: 190px;
	background-image: url(./assets/img/extras/bg-contact.svg);
    background-repeat: repeat-x;
    background-position: bottom;
}

@media screen and (min-width: 992px){
	.page.home .module-contact{
		padding-bottom: 245px;
	}
}



.page.home .project .items article{
	display: flex;
	flex-direction: column;
	gap: 20px;
	justify-content: space-between;
	align-items: center;
}
.page.home .project .items article .thumbnail img{
	aspect-ratio: 2 / 1;
	object-fit: cover;
}

.page.home .project .items article .data .icon{
	min-width: 72px;
}

@media screen and (min-width: 992px){
	.page.home .project .items article{
		flex-direction: row;
		gap: 0;
	}

	.page.home .project .items article .thumbnail,
	.page.home .project .items article .data {
		width: 50%;
	}
	.page.home .project .items article .data .title {
		max-width: 331px;
		margin-bottom: 0;
	}

	.page.home .project .items article.even{
		flex-direction: row-reverse;
	}

}

.page.home .project .items article.even .thumbnail img{
	border-radius: 0 0 0 280px;
}

.page.home .project .items article.odd .thumbnail img{
	border-radius: 0 280px 0 0;
}

/*.page.home .project-info{


	background-image: 
		linear-gradient(to right,  #4a4a4a 70%, transparent 70%),
		linear-gradient(to bottom, #4a4a4a 70%, transparent 70%), 
		linear-gradient(to right,  #4a4a4a 70%, transparent 70%),
		linear-gradient(to bottom, #4a4a4a 70%, transparent 70%);

	
	background-size: 
		15px 1px, 
		1px 15px, 
		15px 1px, 
		1px 15px; 

	background-position: top, right, bottom, left;

	background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
}*/

.page.home .location .image{
	max-width: 495px;
}

.page.home .location .title h3{
	font-size: 32px;
	font-weight: 400;
}

@media screen and (min-width: 992px){

	.page.home .location .title h3{
		font-size: 40px;
	}

}

.page.home .team .image .icon{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.page.home .team .image .icon img{
	max-width: 85px;
}

@media screen and (min-width: 992px){

	.page.home .team .image .icon img{
		max-width: 191px;
	}

}

/* Pages > Internal */

.page.internal .content .title{
	text-align: center;
}
.page.internal .content article {
	max-width: 850px;
	margin-left: auto;
	margin-right: auto;
}

/* Pages > Page 404 */

.page.page-404 .content{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 80dvh;
}

/* Pages > Page Maintenance */

.page.page-maintenance .content{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 100dvh;
}


/* Errors */

.errors {
	text-align: center;
	padding: 30px 0;
}
.errors.error-nologued {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60dvh;
}

.errors .smile {
	margin: 0;
	font-size: 50px;
	transform: rotate(90deg);
	color: var(--bs-primary);
}
@media screen and (min-width: 992px){
	.errors .smile {
		font-size: 80px;
	}
}


/* Footer */

.footer {
	overflow: hidden;
}
.footer a:hover{
	text-decoration: underline;
}

.footer .widgets{
	padding: 50px 0;
	text-align: center;
}

.footer .widgets .logo{
	display: block;
	width: 257.5px;
	margin: 0 auto 30px;
}

.footer .widgets .vias{
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.footer .copyright {
	font-size: 14px;
	padding-top: 30px;
	margin-top: 45px;
	border-top: solid 1px var(--bs-white);
}
.footer .copyright p{
	margin: 0;
}
.footer .copyright .legal {
	font-size: 12px;
	line-height: 15px;
}

@media screen and (min-width: 992px){
	.footer .widgets{
		padding: 75px 0;
		text-align: left;
	}
	.footer .widgets .logo{
		margin: 0;
	}

	.footer .widgets .vias{
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: 24px;
		margin-bottom: 0;
	}
	
}


/* Slider */

.slider {
	position: relative;
}

.swiper-button-next,.swiper-button-prev {    
	width: 23px;
	height: 40px;
    color: transparent;  
    border: solid;
}

.swiper-button-prev:after {
  	background-image: url("data:image/svg+xml,%3Csvg width='23' height='40' viewBox='0 0 23 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.18681 19.9063L22.5474 4.17998L18.9705 0.686279L0.197483 19.9063L18.9705 39.1262L22.5474 35.6325L7.18681 19.9063Z' fill='white'/%3E%3C/svg%3E%0A");
  	background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    max-width: 12px;
}

.swiper-button-next:after {
  	background-image: url("data:image/svg+xml,%3Csvg width='23' height='40' viewBox='0 0 23 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15.8132 19.9063L0.452637 4.17998L4.02952 0.686279L22.8025 19.9063L4.02952 39.1262L0.452637 35.6325L15.8132 19.9063Z' fill='white'/%3E%3C/svg%3E%0A");
  	background-repeat: no-repeat;
  	background-position: center center;
  	background-size: contain;
  	max-width: 12px;
}

.circle.swiper-button-next,.circle.swiper-button-prev {
	border: solid 1px var(--bs-dark);
	border-radius: 50%;
}

.arrow.light.swiper-button-prev:after,
.arrow.light.swiper-button-next:after{
	filter: invert(1) brightness(10);
}

.circle.light.swiper-button-next,.circle.light.swiper-button-prev {
	border-color: #fff;
}


@media screen and (min-width: 992px) {
	.swiper-button-next,.swiper-button-prev {    
		width: 56px;
		height: 56px;
	}

	.swiper-button-prev:after,.swiper-button-next:after{
		max-width: 17px;
	}
}


/*  Modals */

.modal{
	z-index: 99999;
}
.modal-backdrop{
	z-index: 9999;
}
.modal .modal-content{
	border: 0;
	border-radius: 0;
}

.modal .btn-close{
	position: absolute;
	top: -50px;
	right: 15px;
	width: 30px;
	height: 30px;
	padding: 0;
	//background: url('assets/img/icons/icon-cross.svg') no-repeat center;
	background-size: contain;
	z-index: 10;
	opacity: 0.5;
}

@media screen and (min-width: 992px) {
	.modal .btn-close{
		top: 20px;
		right: -50px;
	}
}

/* Modals > Video */

#modalVideo .modal-content{
	background-color: #000;
}
#modalVideo .modal-body{
	padding: 0;
}
#modalVideo .btn-close{
	top: -40px;
	right: 0;
	color: #fff;
	font-size: 30px;
	filter: brightness(0) invert(1);
}


/* Modals > Success */
#modalSuccess .modal-body{
	padding: 40px 20px;
}

#modalSuccess .arrow-close{
	position: absolute;
	left: 10px;
	top: 10px;
	width: 20px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg width='19' height='19' viewBox='0 0 19 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.14945 1.32103L18.856 16.0275L16.0275 18.856L1.32103 4.14945L4.14945 1.32103Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 18.3242V0H18.3242V4H4V18.3242H0Z' fill='white'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
    background-color: transparent;
    border: none;
}

#modalSuccess .modal-body .data h2 {
	font-size: 25px;
}

@media (min-width: 1200px) {
    #modalSuccess .modal-xl {
        --bs-modal-width: 1192px;
    }
    #modalSuccess .modal-body{
		padding: 100px;
	}
	#modalSuccess .arrow-close{
		left: 45px;
		top: 45px;
	}
}

