* {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: 'Nunito Sans', sans-serif; 
	font-size: 16px;
	font-weight: 400;
	background-color: #fff;
	color: #000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	text-decoration: none;
	color: #000; /* #3e5057 */
}

a:link, a:visited, a:active, a:focus-visible {
	text-decoration:none;
	outline: none;
}


a:hover {
	text-decoration: none;
	/* color: #1b1851; */
	color: #000;
	border-bottom: 1px solid #000;
}

img {
	max-width: 100%;
}

/************
 * Menu
 */

#top_menu .container {
	max-width: 100%;
}

/*********************************
 * Generic
 */

/* Xarxes socials */
.social_logo {
	height: 18px;
	margin: 5px 5px;
}

.social_logo:hover {
	opacity: 0.8;
}

.nowrap {
	white-space: nowrap;
}

.note {
	font-size: 10px;
}

.absolute { position: absolute; }
.fixed { position: fixed; }
.relative { position: relative; }

.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }

.display_none { display: none !important; }
.display_block { display: block !important; }
.display_inline { display: inline !important; }
.flex { display: flex; }

.d-center { margin: 0 auto; }

.align-center { align-items: center; }

.pointer {
	cursor: pointer;
}

.list-inline {
	list-style: none;
}

.list-inline li {
	display: inline-block;
	margin: 0 2px;
}

.no_vertical_align { vertical-align: 0; }
.v-mid { vertical-align: middle; }

.font_light { font-weight: 300; }
.bold { font-weight: bold; }
.italic { font-style: italic; }

strong { font-weight: bold; }

.float-left { float: left; }
.float-right { float: right; }

.white { color: white; }

/* Columnes per ajustar */
.column-right-description {
	padding-right: 70px;
	line-height: 18px;
	font-size: 15px;
}

@media (max-width: 992px) and (min-width: 768px) {
	.column-right-description {
		padding-right: 30px;
	}
}

@media (min-width: 768px) {
	.column-left {
		padding-right: 25px;
		text-align: right;
	}

	.column-right {
		padding-left: 25px;
	}
}

@media (max-width: 767px) {
	.column-right-description {
		padding-right: 0px;
	}
}

/* Text secció */
.text-title-section {
	font-size: 15px;
}

@media (max-width: 992px) {
	.text-subtitle-section {
		font-size: 12px;
	}
}

/* Carrousel */
.carousel-control-next, .carousel-control-prev {
	width: 5%;
	/* opacity: 0.9; */
}


.fs8 { font-size: 8px; }
.fs9 { font-size: 9px; }
.fs10 { font-size: 10px; }
.fs11 { font-size: 11px; }
.fs12 { font-size: 12px; }
.fs13 { font-size: 13px; }
.fs14 { font-size: 14px; }
.fs15 { font-size: 15px; }
.fs16 { font-size: 16px; }
.fs17 { font-size: 17px; }
.fs18 { font-size: 18px; }
.fs19 { font-size: 19px; }
.fs20 { font-size: 20px; }
.fs21 { font-size: 21px; }
.fs22 { font-size: 22px; }
.fs23 { font-size: 23px; }
.fs24 { font-size: 24px; }
.fs25 { font-size: 25px; }
.fs26 { font-size: 26px; }
.fs27 { font-size: 27px; }
.fs28 { font-size: 28px; }
.fs29 { font-size: 29px; }
.fs30 { font-size: 30px; }
.fs31 { font-size: 31px; }
.fs32 { font-size: 32px; }
.fs33 { font-size: 33px; }
.fs34 { font-size: 34px; }
.fs35 { font-size: 35px; }
.fs36 { font-size: 36px; }
.fs37 { font-size: 37px; }
.fs38 { font-size: 38px; }
.fs39 { font-size: 39px; }
.fs40 { font-size: 40px; }
.fs60 { font-size: 60px; }

/* Margin bottom */
.mb0 { margin-bottom: 0px; }
.mb5 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb35 { margin-bottom: 35px; }
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb55 { margin-bottom: 55px; }
.mb60 { margin-bottom: 60px; }
.mb65 { margin-bottom: 65px; }
.mb70 { margin-bottom: 70px; }
.mb75 { margin-bottom: 75px; }
.mb80 { margin-bottom: 80px; }
.mb85 { margin-bottom: 85px; }
.mb90 { margin-bottom: 90px; }
.mb95 { margin-bottom: 95px; }


/* Margin top */
.mt0 { margin-top: 0px; }
.mt5 { margin-top: 5px; }
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt35 { margin-top: 35px; }
.mt40 { margin-top: 40px; }
.mt45 { margin-top: 45px; }
.mt50 { margin-top: 50px; }
.mt55 { margin-top: 55px; }
.mt60 { margin-top: 60px; }
.mt65 { margin-top: 65px; }
.mt70 { margin-top: 70px; }
.mt75 { margin-top: 75px; }
.mt80 { margin-top: 80px; }
.mt85 { margin-top: 85px; }
.mt90 { margin-top: 90px; }
.mt95 { margin-top: 95px; }


/* Padding bottom */
.pb0 { padding-bottom: 0px; }
.pb5 { padding-bottom: 5px; }
.pb10 { padding-bottom: 10px; }
.pb15 { padding-bottom: 15px; }
.pb20 { padding-bottom: 20px; }
.pb25 { padding-bottom: 25px; }
.pb30 { padding-bottom: 30px; }
.pb35 { padding-bottom: 35px; }
.pb40 { padding-bottom: 40px; }
.pb45 { padding-bottom: 45px; }
.pb50 { padding-bottom: 50px; }
.pb55 { padding-bottom: 55px; }
.pb60 { padding-bottom: 60px; }
.pb65 { padding-bottom: 65px; }
.pb70 { padding-bottom: 70px; }
.pb75 { padding-bottom: 75px; }
.pb80 { padding-bottom: 80px; }
.pb85 { padding-bottom: 85px; }
.pb90 { padding-bottom: 90px; }
.pb95 { padding-bottom: 95px; }
.pb100 { padding-bottom: 100px }
.pb105 { padding-bottom: 105px; }


/* Padding top */
.pt0 { padding-top: 0px; }
.pt5 { padding-top: 5px; }
.pt10 { padding-top: 10px; }
.pt15 { padding-top: 15px; }
.pt20 { padding-top: 20px; }
.pt25 { padding-top: 25px; }
.pt30 { padding-top: 30px; }
.pt35 { padding-top: 35px; }
.pt40 { padding-top: 40px; }
.pt45 { padding-top: 45px; }
.pt50 { padding-top: 50px; }
.pt55 { padding-top: 55px; }
.pt60 { padding-top: 60px; }
.pt65 { padding-top: 65px; }
.pt70 { padding-top: 70px; }
.pt75 { padding-top: 75px; }
.pt80 { padding-top: 80px; }
.pt85 { padding-top: 85px; }
.pt90 { padding-top: 90px; }
.pt95 { padding-top: 95px; }
.pt100 { padding-top: 100px; }
.pt105 { padding-top: 105px; }

/*********************************
 * Contents
 */
.header {
	margin: 0 auto;
	max-width: 1200px;
}

.page {
	margin-bottom: 50px;
}

.footer {
	margin: 0 auto;
	max-width: 1200px;
}

.carousel:hover .carousel-control {
	display: flex;
}

/** Pop Up **/
/* Background */
.background-popup {
	background-color: #F3F1F0;
}

/* Marges*/
.content-popup {
	margin-left: 40px;
	margin-right: 40px;
	padding-top: 35px;
	padding-bottom: 35px;
}

/* Imatge */
.btn-open-popup {
	position: absolute;
	bottom: 0;
	right: 35px;
	width: 50px;
	background-color: #fff;
	border: none;
	outline: none;
	font-size: 26px;
	text-align: center;
	cursor: pointer;
}

.btn-close-popup {
	padding: 10px !important;
	margin-top: 5px;
	font-size: 20px;
}

.btn-open-popup:focus,
.btn-close-popup:focus {
	border: none;
	outline: none;
}

/* File */
.file-popup {
	margin-top: 40px;
}

.btn-open-file-popup {
	position: absolute;
	padding: 5px 8px;
	bottom: 0;
	color: #000;
	font-size: 12px;
	text-align: center;
	border: 1px solid #3e5057;
	outline: none;
}

.btn-open-file-popup:hover {
	background-color: #000;
	color: #fff;
}

/*********************************
 * Forms
 */

form label {
	display: inline;
}

form .error_msg {
	color: #c74b4b;
}

/*********************************
 * Cookies
 */

#cookies {
	clear: both;
	font-size: 10px;
	color: #000;
	-webkit-font-smoothing: antialiased;
	text-decoration: none;
	text-align: center;
	padding: 8px 15px;
	background-color: #F3F1F0;
	z-index: 99999;
}

#cookies-accept-home,
#cookies-preferences,
.cookies-privacy-policy {
	border: 0px;
    padding: 0px;
    outline: 0;
	color: #000;
	background: transparent;
}

#cookies .close-cookies {
	cursor: pointer;
}

#cookies .close-cookies:hover {
	color: #000;
}

#cookies-accept-home:hover,
#cookies-preferences:hover {
	color: #000;
}

/*********************************
 * Lists elements
 */

.card {
	min-height: 96.5%;
}

.card-img img {
	width: 100%;
}

.card-body b,
.card-body strong {
	color: #000;
}

.card-title {}

.card-text {
	line-height: 18px;
}

.card-columns {
	column-count: 4;
}

/**********************************
 * Modal
 */
button.close_modal {
	z-index: 1;
	position: absolute;
	right: 0px;
	padding: 15px;
	outline: none;
}

/* CMS */
#cms-page a {
	color: #000;
}

.arrow-home {
	margin-right: 10px;
}

.section_title {
	color: #000;
	text-align: left;
	text-transform: uppercase;
	position: relative;
	margin: 45px auto;
}