/****************************
** Open Sans https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800 **
****************************/
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxqvyPXdneeGd26m9EmFSSWg.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxko2lTMeWA_kmIyWrkNCwPc.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'), url(../fonts/font-opensans/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'), url(../fonts/font-opensans/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxujkDdvhIIFj_YMdgqpnSB0.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxolIZu-HDpmDIZMigmsroc4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxowYyzpnB4tyYboSwKGmD2g.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'), url(../fonts/font-opensans/PRmiXeptR36kaC0GEAetxnibbpXgLHK_uTT48UMyjSM.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url(../fonts/font-opensans/DXI1ORHCpsQm3Vp6mXoaTT0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url(../fonts/font-opensans/DXI1ORHCpsQm3Vp6mXoaTegdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans Regular'), local('OpenSans-Regular'), url(../fonts/font-opensans/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans Regular'), local('OpenSans-Regular'), url(../fonts/font-opensans/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'), url(../fonts/font-opensans/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'), url(../fonts/font-opensans/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../fonts/font-opensans/k3k702ZOKiLJc3WVjuplzD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local('Open Sans Bold'), local('OpenSans-Bold'), url(../fonts/font-opensans/k3k702ZOKiLJc3WVjuplzOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'), url(../fonts/font-opensans/EInbV5DfGHOiMmvb1Xr-hj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'), url(../fonts/font-opensans/EInbV5DfGHOiMmvb1Xr-hugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}






/****************************
** Core html setup stuff **
****************************/
html, 
body{
	font-family: 'Open Sans', sans-serif;
	color: #000;
	font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (1920 - 320)));
	text-align: justify;
	line-height: 1.5;
	position: relative;
}


/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=search]::-ms-reveal {  display: none; width : 0; height: 0; }

/* clears the 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }


/*body{
	margin-top: 53px;
}

@media (min-width: 768px) {
	body{
		margin-top: 94px;
	}
}

@media (min-width: 992px) {
	body{
		margin-top: 102px;
	}
}*/



a {
	color: #cc3333;
	text-decoration: none;
	outline: 0;
}

a:hover {
	color: #cc3333;
	text-decoration: underline;
	outline: 0;
}

a:focus {
	color: #cc3333;
	text-decoration: none;
	outline: 0;
}

body::-webkit-scrollbar {
	width: 6px;
}

body::-webkit-scrollbar-track {
	background-color: #FFFFFF;
}

body::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background-color: #cc3333;
}



h1, h2, h3, h4, h5{
	text-align: left;
	line-height: 1;
}

.text-overflow {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.btn-wrap{
	white-space: normal;
}

.bx-next.disabled,
.bx-prev.disabled{
	display: none !important;
}


.jssocials-share-link {
    padding: .5em .6em;
    border-radius: 0;
    box-shadow: none;
    color: #fff;
    border: none!important;
}

.jssocials-shares {
    margin: 15px 0;
}

/****************************************
** COOKIE                              **
****************************************/
#cconsent-bar, #cconsent-bar * {
	box-sizing: border-box
}
#cconsent-bar .visually-hide, 
#cconsent-modal .visually-hide {
	position: absolute !important;
	overflow: hidden !important;
	clip: rect(1px 1px 1px 1px) !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	width: 1px !important;
	height: 1px !important;
}
#cconsent-bar {
	background-color: #000000;
	color: #FFF;
	padding: 30px 15px 15px 15px;
	text-align: right;
	font-family: sans-serif;
	font-size: 14px;
	line-height: 18px;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 9998;
	transform: translateY(0);
	transition: transform .6s ease-in-out;
	transition-delay: .3s;
}
#cconsent-bar.ccb--hidden {
	transform: translateY(100%);
	display: block;
}
#cconsent-bar .ccb__wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1800px;
	margin: 0 auto;
}
#cconsent-bar .ccb__left {
	align-self: center;
	text-align: left;
	margin: 0 0 15px 0 ;
}
#cconsent-bar .ccb__right {
    align-self: center;
    white-space: nowrap;
    width: 100%;
    text-align: left;
}
#cconsent-bar .ccb__right .ccb__button {
	display: flex;
    color: #FFF;
    flex-direction: row;
    width: 100%;
    flex-wrap: wrap;
    gap: 8px;
}
#cconsent-bar .ccb__right .ccb__button_edit{
	flex-grow: 1;
}
#cconsent-bar button {
	line-height: normal;
	font-size: 14px;
	border: 0;
	padding: 10px 10px;
	color: #000;
	background-color: #FFF;
}
#cconsent-bar .ccb__button{
	display: flex;
}

#cconsent-bar .ccb__button > div{
	width: 100%;
}

#cconsent-bar .ccb__button button{
	min-width: 110px;
	width: 100%;
}

#cconsent-modal .ccm__footer button.consent-give,
#cconsent-bar button.consent-give{
	background-color: #28a745;
	color: #fff;
}
#cconsent-bar button.ccb__edit {
	flex-grow: 1;
}
#cconsent-bar a:hover, #cconsent-bar button:hover {
	cursor: pointer;
}

#cconsent-bar button#ccb__bar-close {
    /* font-weight: bold; */
    padding: 0;
    margin: 0;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 32px;
    color: #fff;
    background: #000;
    height: 30px;
    width: 30px;
    line-height: 30px;
}

#cconsent-modal {
	display: none;
	font-size: 14px;
	line-height: 18px;
	color: #666;
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	font-family: sans-serif;
	font-size: 14px;
	background-color: rgba(0,0,0,0.6);
	z-index: 9999;
	align-items: center;
	justify-content: center;
}
@media (max-width: 600px) {
	#cconsent-modal {
		height: 100%
	}
}
#cconsent-modal button {
	border: 0
}
#cconsent-modal h2, #cconsent-modal h3 {
	color: #333
}
#cconsent-modal.ccm--visible {
	display: flex
}
#cconsent-modal .ccm__content {
	max-width: 600px;
	max-height: calc( 100vh - 30px);
	overflow-Y: auto;
	background-color: #FFFFFF;
}
@media (max-width: 600px) {
	#cconsent-modal .ccm__content {
		max-width: 100vw;
		height: 100%;
		max-height: initial;
	}
}
#cconsent-modal .ccm__content > .ccm__content__heading {
	border-bottom: 1px solid #D8D8D8;
	padding: 35px 35px 20px;
	background-color: #FFFFFF;
	position: relative;
}
#cconsent-modal .ccm__content > .ccm__content__heading h2 {
	font-size: 21px;
	font-weight: 600;
	color: #333;
	margin: 0
}
#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	padding: 0;
	border: 0;
	font-weight: 600;
	color: #888;
	cursor: pointer;
	font-size: 26px;
	position: absolute;
	right: 15px;
	top: 15px;
	width: 26px;
	height: 26px;
	background: none;
	text-align: center;
}
#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close:focus {
	box-shadow: 0 0 0 0.25 rem rgb(40 168 52 / 75%);
}
#cconsent-modal h2, #cconsent-modal h3 {
	margin-top: 0
}
#cconsent-modal .ccm__content > .ccm__content__body {
	background-color: #FFF;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup {
	margin: 0;
	border-bottom: 1px solid #D8D8D8;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {
	color: #333;
	font-weight: 600;
	cursor: pointer;
	position: relative;
	padding: 0;
	margin: 0;
	transition: background-color .5s ease-out;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head:hover {
	background-color: #F9F9F9
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head__status {
	order: 1;
	position: absolute;
	left: 35px;
	font-weight: 600;
	display: inline-block;
	margin-right: 20px;
	pointer-events: none;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head__status.ccm__tab-head__status--checked {
	font-size: 1em;
	color: #28a834;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head__status.ccm__tab-head__status--unchecked {
	font-size: 1.4em;
	color: #e56385;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head__text {
	order: 2;
	pointer-events: none;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge {
	transition: transform .3s ease-out;
	transform-origin: center;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: rotate(0deg);
	transform: translateY(-50%);
	order: 3;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-head .ccm__tab-head__icon-wedge > svg {
	pointer-events: none;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head .ccm__tab-head__icon-wedge {
	transform: translateY(-50%) rotate(-180deg)
}
#cconsent-modal .ccm__tab-trigger {
	appearance: none;
	background: none;
	display: flex;
	flex-direction: row;
	width: 100%;
	padding: 17px 35px 17px 56px;
	color: #333;
	font-weight: 600;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content {
	padding: 0;
	margin: 0
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: all .5s ease-out;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup .ccm__tab-content__inner {
	display: flex;
	flex-direction: row;
	padding: 25px 35px;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-head {
	background-color: #f9f9f9
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {
	max-height: 900px;
	opacity: 1;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose {
	order: 1;
}
@media (max-width: 600px) {
	#cconsent-modal .ccm__content > .ccm__content__body .ccm__tabgroup.ccm__tabgroup--open .ccm__tab-content {
		flex-direction: column
	}
}
@media (max-width: 600px) {
	#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose {
		margin-bottom: 20px;
	}
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch-component {
	display: flex;
	margin-right: 35px;
	align-items: center;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch__status {
	font-weight: 600;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch-group {
	background: none;
	width: 40px;
	height: 20px;
	margin: 0 10px;
	position: relative;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch__slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	border-radius: 10px;
	-webkit-transition: .4s;
	transition: .4s;
	pointer-events: none;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch__slider:before {
	position: absolute;
	content: "";
	height: 12px;
	width: 12px;
	left: 4px;
	bottom: 4px;
	background-color: white;
	border-radius: 50%;
	-webkit-transition: .4s;
	transition: .4s;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch-group[aria-checked="true"] .ccm__switch__slider {
	background-color: #28A834;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch-group:focus {
	box-shadow: 0 0 0 2pxrgb(40 168 52 / 75%);
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__choose .ccm__switch-group[aria-checked="true"] .ccm__switch__slider:before {
	-webkit-transform: translateX(20px);
	-ms-transform: translateX(20px);
	transform: translateX(20px);
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__desc {
	order: 2;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content h3 {
	font-size: 18px;
	margin-bottom: 10px;
	line-height: 1;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content p {
	color: #444;
	margin-bottom: 0
}#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list:not(:empty) {margin-top:30px;}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list .ccm__list__title {
	color: #333;
	font-weight: 600;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__list ul {
	margin: 15px 0;
	padding-left: 15px
}
#cconsent-modal .ccm__footer {
	padding: 15px 10px;
	background-color: #EFEFEF;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	justify-content: center;
}
#cconsent-modal .ccm__footer button {
	line-height: normal;
	font-size: 14px;
	transition: background-color .5s ease-out;
	background-color: #000000;
	color: #FFF;
	border: none;
	padding: 13px;
	min-width: 110px;
	border-radius: 2px;
	cursor: pointer;
}
#cconsent-modal .ccm__footer button:hover {
	/* background-color: #0; */
}
#cconsent-modal .ccm__footer button#ccm__footer__consent-modal-submit {
	margin-right: 10px;
}


@media (min-width: 576px) {
	#cconsent-bar .ccb__button button{
		min-width: 110px;
		width: auto;
	}
		
	#cconsent-bar .ccb__button > div{
		width: auto;
	}
	
	#cconsent-modal .ccm__footer {
	    padding: 30px;
	    justify-content: flex-end;
	}
}

@media (min-width: 768px) {
}

@media (min-width: 992px) {
}

@media (min-width: 1200px) {
}

/****************************************
** END COOKIE                          **
****************************************/

/****************************************
** Template specific layout elements **
****************************************/
#pageLoader{
	background: url("../images/loader.gif") no-repeat scroll center center #FFFFFF;
	height: 8000px;
	left: 50%;
	margin: -4000px 0 0 -4000px;
	position: fixed;
	top: 50%;
	width: 8000px;
	z-index: 9999999;
}

/****************************************
** GRID                                **
****************************************/
.homeProjectOuter{
	/* A 1170 con una marginatura di 30px funziona tutto correttamente */
	margin-bottom: calc(((15 * 100vw) / 1170) * 2);
	position: relative;
} 

.homeProjectOuter .img-fluid{
	width: 100%;
}

body.base div[class*="col-"] {
    padding-left: calc((15 * 100vw) / 1170) !important;
    padding-right: calc((15 * 100vw) / 1170) !important;
}

body.base .container, 
body.base .container-fluid, 
body.base .container-lg, 
body.base .container-md, 
body.base .container-sm, 
body.base .container-xl{
	padding-left: calc((15 * 100vw) / 1170) !important;
    padding-right: calc((15 * 100vw) / 1170) !important;
}

body.base .navbar {
	padding-left: calc((15 * 100vw) / 1170) !important;
	padding-right: calc((15 * 100vw) / 1170) !important;
}

body.base .row {
    margin-right: 0;
    margin-left: 0;
}

body.base .row .row {
    margin-right: calc((-15 * 100vw) / 1170);
    margin-left: calc((-15 * 100vw) / 1170);
}

.homeProjectOuter a.hoverInfo{
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	background-color: rgba(0, 0, 0, 0.8);
	width: 100%;
	height: 100%;
	align-items: center;
    justify-content: center;
    color: #FFFFFF;
    text-transform: uppercase;
    padding: 1.2rem;
    text-align: center;
    font-size: 1.2rem;
    flex-direction: column;
    
    -webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}

.homeProjectOuter:hover a.hoverInfo{
	display: flex;
	opacity: 1;
	
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}

/*IMPORTANTISSIMO: serve per over on tap su mobile*/
.homeProjectOuter:hover a.hoverInfo:after{
	content: '';
}

.homeProjectOuter a.hoverInfo:hover{
	text-decoration: none;
}

.homeProjectOuter a.hoverInfo i{
	width: 100%;
	text-align: center;
	font-size: 2rem;
	padding: 1rem;
}

/* FC 25.01.2023, modificato da top: 0; a bottom: 0; per agganciare scritta "dal blog" alla parte inferiore del div parent */
.homeProjectOuter a.homeBox{
	position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    text-transform: none;
    background-color: #cc3333;
    color: #FFFFFF;
    padding: 0.5rem;
    font-size: 1rem;
}

.homeProjectOuter a.homeBox:hover{
	text-decoration: none;
}
/****************************************
** END GRID                            **
****************************************/


/****************************************
** HEADER                              **
****************************************/
.navbar-brand img {
    width: 230px;
}

.navbar.bg-light {
    background-color: #FFFFFF!important;
}

.navbar-light .navbar-toggler-icon{
	background-image: url("data:image/svg+xml,<svg viewBox='0 0 30 30' id='miosvg' xmlns='http://www.w3.org/2000/svg'><path stroke='rgba(0, 0, 0, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/></svg>");
}

.navbar-light .navbar-toggler {
    color: rgba(0,0,0,1);
    border: none;
    outline: none;
}

#header-wrapper .mainmenu li a {
    color: #000000;
    text-transform: uppercase;
    /*border-bottom: 2px solid #000;*/
    display: block;
    font-size: 20px;
    text-align: center;
    font-weight: 600;
    line-height: 2;
}

#header-wrapper .mainmenu li.active a,
#header-wrapper .mainmenu li a:hover{
	color: #cc3333;
	text-decoration: none;
}

#header-wrapper .mainmenu li.active.weblink a{
	color: #000000;
}

#header-wrapper .mainmenu li a:focus{
	text-decoration: none;
}


#header-wrapper .lang-menu{
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#header-wrapper .lang-menu li{
	display: block;
	margin: 0;
	padding: 0;
}

#header-wrapper .lang-menu li.sep{
	display: block;
	margin: 0;
	padding: 5px;
	font-size: 16px;
 	text-align: center;
    line-height: 2;
    color: #000;
}


#header-wrapper .lang-menu li.sep:last-child{
	display: none;
}

#header-wrapper .lang-menu li a{
	display: block;
	margin: 0;
	padding: 5px;
	font-size: 16px;
 	text-align: center;
    line-height: 2;
    color: #ccc;
}

#header-wrapper .lang-menu li a:focus{
	text-decoration: none;
}

#header-wrapper .lang-menu li.active a{
    color: #cc3333;
}

#header-wrapper .lang-menu li a:hover{
	text-decoration: none;
	color: #000000;
}


@media (min-width: 576px) {
}

@media (min-width: 768px) {	
	
	.navbar {
	    padding-top: 1rem;
	    padding-bottom: 1rem;
	}
	

	.navbar-brand img {
	    width: 270px;
	}
	.navbar-light .navbar-brand {
    	align-self: flex-end;
	}
	
	div#navbarSupportedContent {
	    flex-direction: column;
	    align-items: flex-end;
	}
	
	#header-wrapper .mainmenu,
	#header-wrapper .lang-menu{
	    justify-content: flex-end;
	}
	
	#header-wrapper .lang-menu li.sep{
	    line-height: 1;
	}

	#header-wrapper .lang-menu li a{
	    line-height: 1;
	}
	
	#header-wrapper .mainmenu li a {
		padding: 0 10px;
	}
	
	#header-wrapper .mainmenu li:last-child a {
		padding-right: 0;
	}
}

@media (min-width: 992px) {
	
	#header-wrapper .mainmenu li a {
	    font-size: 24px;
	}
	
	.navbar-brand img {
	    width: 350px;
	}
}

@media (min-width: 1200px) {
}
/****************************************
** END HEADER                          **
****************************************/

/****************************************
** PROJECT PAGE                        **
****************************************/
.projectInfoBox{
	margin-bottom: 1rem;
}

.projectInfoBox .projectHeader{
	display: flex;
	line-height: 1.5;
	font-size: 1.5rem;
	
	border: 1px solid #ccc;
	padding: 0.5rem 1rem;
	
	cursor: pointer;
}

.projectInfoBox .projectHeader h2{
	font-size: 1.5rem;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	flex-grow: 1;
}

.projectInfoBox .projectHeader .infoToggle{
	margin: 0;
	padding: 0;
	
	min-width: 70px;
    text-align: right;
    
    cursor: pointer;
}

.projectInfoBox .infoToggle span{
	display: inline-block;
	
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	
	
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}

.projectInfoBox.open .infoToggle span{
	display: inline-block;
	
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}

.projectInfoBox .projectInfoOuter{
	position: relative;
}

.projectInfoBox .projectInfoInner {
	/*display: none;*/
    /*position: absolute;*/
    top: 0;
    width: 100%;
    z-index: 10;
    background: #fff;
    
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.projectInfoBox .projectInfo {
	padding: 0.5rem 1rem;
}

.projectInfoBox .subtitle {
    font-size: 1.5rem;
    margin: 1rem 0;
}

.projectInfoBox .blogTags .removeTag{
    display: none;
}

/****************************************
** END PROJECT PAGE                    **
****************************************/




/****************************************
** FOOTER                              **
****************************************/
.footer-top {
    border-bottom: 2px dashed #ccc;
    padding: 1rem 0;
    border-top: 2px dashed #ccc;
}

.footer-bottom {
    padding: 1rem 0;
    font-size: 0.7rem;
}

.social{
    align-self: flex-end;
}

.social a{
    color: #000000;
}


.social ul{
	margin: 0;
	padding: 0;
}

.social ul li{
	display: inline-block;
	font-size: 2rem;
	margin: 0;
	padding: 0 0.5rem;
	list-style-type: none;
	line-height: 1;
}

.social ul li span{
	display: none;
}
/****************************************
** END FOOTER                          **
****************************************/

/****************************************
** BLOG                               **
****************************************/
.blogItem {
	display: flex;
	flex-direction: column;
		
    position: relative;
    border-bottom: 2px dashed #ccc;
    padding-bottom: 2.5rem;
    margin-bottom: 2.5rem;
}

.simplesearch-results-list .blogItem:last-child,
.blogItems .blogItem:last-child{
	border-bottom: none;
}


.blogImg{
	width: 100%;
}

.blogItem h3 {
    order: 2;
    color: #000;
    margin: 1rem 0;
    padding: 0;
}

.blogItem h3 a{
    display: block;
    color: #000;
    margin: 0;
    padding: 0;
}

.blogItem h3 a:hover{
    display: block;
    color: #cc3333;
    margin: 0;
    padding: 0;
    text-decoration: none;
}

.blogItem .blogContent{
	order: 3;
}

.blogItem .blogSubTitleInfo {
    display: inline;
    position: absolute;
    background-color: #fff;
    padding: 0.5rem;
    top: 1px;
    left: 1px;
    font-size: 0.8rem;
}

.blogItem .read_more{
	color: #000;
	text-transform: uppercase;
	font-weight: 600;
}

.blogItem .read_more:hover{
	color: #cc3333;
	text-decoration: none;
}



.blogItemPage h2{
	font-size: 1.75rem;
    margin: 0 0 1.5rem 0;
}

.blogItemPage .blogSubTitleInfo {
    display: inline;
    position: absolute;
    background-color: #fff;
    padding: 0.5rem;
    top: 1px;
    left: 1px;
    font-size: 0.8rem;
}

.blogItemPage .blogImgBox{
	position: relative;
	margin-bottom: 1.5rem;
}

.blogItemPage .blogImgBox img{
	width: 100%;
}


.blogItem .blogTags{
	order: 2;
	margin-bottom: 1rem;
}


.blogItemPage  .blogTags{
	margin: 1rem 0;
}
.blogTags,
.blogTags a{
	color: #999;
	text-align: left;
}

.blogTags a:hover{
	color: #000;
	text-decoration: none;
}


.blogSearchBox{
	line-height: 1;
    border: 1px solid #ccc;
    padding: 0 1rem;
    margin-bottom: 1rem;
}

.blogSearchBox input.form-control{
	font-family: 'Open Sans', sans-serif;
	line-height: 1.5;
    border: none;
    padding: 0.5rem 0;
    margin: 0;
    font-size: 1.5rem;
    height: auto;
    
    background-image:none;
    background-color:transparent;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    
    color: #999;
}

.blogSearchBox input.form-control:focus {
    color: #999;
    background-color: #fff;
    border-color: #80bdff;
    border: none;
    outline: 0;
    box-shadow: 0;
}

.blogSearchFormBtn {
    padding: 0.5rem 0;
    line-height: 1.5;
    font-size: 1.5rem;
    border: none;
    outline: none;
}

.blogSearchFormBtn:focus {
    outline: 0;
    box-shadow: none;
}

.read_other_from_blog_outer,
.blog_read_other{
	margin: 2rem 0;
	border-top: 2px dashed #ccc;
	padding: 2rem 0 0 0;
}

.blog_highlight .item,
.blogOtherItem {
	display: flex;
	flex-direction: column;
}


.blog_highlight .item:hover a,
.blogOtherItem:hover a{
	color: #CC3333;
}

.blog_highlight .item h3,
.blogOtherItem h4{
	order: 2;
	font-size: 1rem;
	text-align: left;
	margin: 0.5rem 0;
}

.blog_highlight .item a,
.blogOtherItem a{
	color: #000;
}

.blog_highlight .item a:hover,
.blogOtherItem a:hover{
	text-decoration: none;
	color: #CC3333;
}


.blog_highlight .item{
    border-bottom: 2px dashed #ccc;
    padding-bottom: 0.5rem;
    margin-bottom: 1.5rem;
}

span.simplesearch-highlight {
    font-weight: bold;
    background-color: lightyellow;
}
/****************************************
** END BLOG                            **
****************************************/

/****************************************
** BLOG SIDEBAR                        **
****************************************/
.blogSideBarModule{
	margin-bottom: 2rem;
}

.blogSideBarModule h2{
	font-size: 1.75rem;
    margin: 0 0 1.5rem 0;
    line-height: 1;
    text-align: left;
    text-transform: uppercase;
}

.tagFilter{
	display: flex;
    flex-direction: row;
    flex-grow: 1;
    flex-wrap: wrap;
}

.tagFilter span{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
    /*flex-grow: 1;*/
    background-color: #f7f7f7;
    border: 1px solid #FFFFFF;    
    text-align: center;
    width: 50%;
    align-items: center;
}
.tagFilter a {    
    color: #000000;
    text-transform: uppercase;
    font-size: 0.75rem;    
    text-align: left;
    flex-grow: 1;
    padding: 3px 10px;
}

.tagFilter a:hover {
    text-decoration: none;
    color: #CC3333;
}

.tagFilter span.active:hover,
.tagFilter span.active {
    text-decoration: none;
    background-color: #CC3333;
    color: #FFFFFF;
    display: flex;
}

.tagFilter span.active:hover a,
.tagFilter span.active a {
    color: #FFFFFF;
}

.tagFilter a.removeTag{
	display: none;
	padding: 3px 10px;
	flex-grow: 0;
	
}

.tagFilter span.active a.removeTag{
	display: inline-block;
}

/*.blogSideBarModule.blog_fb_plugin {
	background: #e2001a;
}

.blogSideBarModule.blog_fb_plugin .blog_fb_plugin_inner {
    text-align: center;
    background: #e2001a;
    padding: 0 0 1.5rem 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, .7) 0%, #e2001a 90px);
}*/
.blogSideBarModule.blog_fb_plugin .blog_fb_plugin_inner {
    text-align: center;
}
/****************************************
** END BLOG SIDEBAR                    **
****************************************/

/****************************************
** PAGINAZIONE                         **
****************************************/
.pageNav{
	clear: both;
    display: block;
    text-align: right;
    margin: 1rem 0;
    padding: 0;
}

.pageNav ul{
	display: inline-block;
    text-align: right;
    margin: 0;
    padding: 0;
}

.pageNav ul li{
	display: block;
    float: left;
}

.pageNav ul li a.page-link{
    display: block;
    line-height: 3.6rem;
    height: 3.6rem;
    width: 3.6rem;
    text-align: center;
    color: #FFF;
    background-color: #000;
    text-decoration: none;
    margin: 0.5rem;
    padding: 0;
    border: none;
    border-radius: 0!important;
}

.pageNav ul li a.page-link:last-child{
	margin-right: 0;
}
 
.pageNav ul li.page-item.active a.page-link,
.pageNav ul li a:hover{
	color: #FFFFFF;
    background-color: #CC3333;
    border: none;
}



.pageNav ul li.page-item.disabled a.page-link{
	display: none;
}


/*Paginazione risultati*/
.simplesearch-paging{
	text-align: right;
	margin: 1rem 0;
}

.simplesearch-paging:first-of-type{
	display: none;
}


.simplesearch-paging:after{
	content: '';
	display: block;
	clear: both;
	float: none;
}

.simplesearch-result-pages{
	display: none;
}


.simplesearch-page{    
    display: inline-block;
    border: none;
    border-radius: 0!important;
}

.simplesearch-page.simplesearch-current-page,
.simplesearch-page a{
	display: inline-block;
	color: #FFF;
	line-height: 3.6rem;
    height: 3.6rem;
    width: 3.6rem;
    text-align: center;
    color: #FFF;
    background-color: #000;
    text-decoration: none;
    margin: 0.5rem;
    padding: 0;
    border: none;
    border-radius: 0!important;
}

.simplesearch-page a:hover,
.simplesearch-page.simplesearch-current-page{
	color: #FFFFFF;
    background-color: #CC3333;
    border: none;
}



/****************************************
** END PAGINAZIONE                     **
****************************************/


/****************************************
** AGENZIA                             **
****************************************/
body.content_bg .content_box{
	background-image: url('../images/LogoBG.svg');
	background-repeat: no-repeat;
	background-position: center;
}

body.header_border #header-wrapper .navbar{
	border-bottom: 2px dashed #ccc;
}


body.content_padding .content_box{
	padding: 1rem 0;
}



@media (min-width: 576px) {
}

@media (min-width: 768px) {
	body.content_padding .content_box{
		padding: 1rem 1rem;
	}
}

@media (min-width: 992px) {
	body.content_padding .content_box{
		padding: 1rem 2rem;
	}
}

@media (min-width: 1200px) {
	padding: 1rem 3rem;
}
/****************************************
** END AGENZIA                         **
****************************************/

/****************************************
** CONTATTI                            **
****************************************/
#map{
	width: 100%;
    height: 28rem;
    margin-bottom: 2rem;
}
    

#contact-form-box{
	background-image: url('../images/LogoBG.svg');
	background-position: center top;
	background-repeat: no-repeat;
	margin: 40px auto 0 auto;
	padding-top: 20px;
	width: 100%;
	background-size: contain;
}

#contact-form-box h3{
    display: block;
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 60px;
}


#contact-form-box label{
    text-transform: uppercase;
}
#contact-form-box label.custom-control-label{
    text-transform: none;
    font-size: 0.7rem;
    line-height: 1;
}

#contact-form-box textarea.form-control.is-invalid,
#contact-form-box input.form-control.is-invalid,
#contact-form-box textarea,
#contact-form-box input{
	background-color: transparent;
	background-image: url('../images/input_normal.png');
	background-repeat: repeat-x;
	background-position: center bottom;
	background-size: unset;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    font-family: 'Raleway', sans-serif;
	color: #3f2728;
	font-size: 14px;
	
	resize: none;
}

#contact-form-box textarea.form-control.is-invalid,
#contact-form-box input.form-control.is-invalid,
#contact-form-box textarea:focus,
#contact-form-box input:focus{
	background-color: transparent;
	background-image: url('../images/input_focus.png');
	background-repeat: repeat-x;
	background-position: center bottom;
	background-size: unset;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    
    font-size: 14px;
}


#contact-form-box input:-webkit-autofill,
#contact-form-box input:-webkit-autofill:hover, 
#contact-form-box input:-webkit-autofill:focus,
#contact-form-box textarea:-webkit-autofill,
#contact-form-box textarea:-webkit-autofill:hover,
#contact-form-box textarea:-webkit-autofill:focus,
#contact-form-box select:-webkit-autofill,
#contact-form-box select:-webkit-autofill:hover,
#contact-form-box select:-webkit-autofill:focus {  	
  	-webkit-text-fill-color: #3f2728;
  	-webkit-box-shadow: 0 0 0 0px #d3cfc4 inset !important;
  	border-bottom: 2px solid #a4a3a1;
  	
  	transition: background-color 5000s ease-in-out 0s;
  
	background-color: #f9f7f7;
	background-image: url('../images/input_focus.png');
	background-repeat: no-repeat;
	background-position: center bottom;
	border-radius: 0;
	outline: none;
	box-shadow: none;
	
	font-size: 14px;
	background-size: contain;
}

#contact-button-box{
	margin: 1rem 0 5rem;
}



#contact-button.btn-primary {
    color: #fff;
    background-color: #cc3333;
    border-color: #cc3333;
    text-transform: uppercase;
}

#contact-form-box .alert{
	text-align: center;	
}

@media (min-width: 576px) {}

@media (min-width: 768px) {
	#contact-form-box{
		width: 600px;
		background-size: unset;
		min-height: 700px;
	}
}

@media (min-width: 992px) {}

@media (min-width: 1200px) {}
/****************************************
** END CONTATTI                        **
****************************************/


/****************************************
** PROJECT FILTER                      **
****************************************/
.projectsFilter{
	margin-bottom: 1rem;
}

.projectsFilterField {
    line-height: 1;
    border: 1px solid #ccc;
    padding: 0 1rem;
    /*margin-bottom: 1rem;*/
	cursor: pointer;
}


.projectsFilterField .form-control{
	font-family: 'Open Sans', sans-serif;
	line-height: 1.5;
    border: none;
    padding: 0.5rem 0;
    margin: -3px 0;
    font-size: 1.5rem;
    height: auto;

	display: flex;
	flex-wrap: wrap;
    
    background-image:none;
    background-color:transparent;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    
    color: #999;

	cursor: pointer;
}

.projectsFilterField .form-control .text{
	padding: 3px 0;
}

.projectTagContainer {
    background-color: #f7f7f7;
    padding: 6px 10px;
    display: inline-block;
    border-radius: 100px;

	margin: 3px;

	font-size: 1rem;
}

.projectsFilterField .projectTagContainer {
	margin: 3px;
}


.projectsTagsFilter{
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
    padding: 8px 8px;

	/*margin-top: calc( -1rem - 1px);*/
    margin-bottom: 1rem;
	display: none;
}

.projectsTagsFilter .removeTag{
	display: none;
}

.projectTagContainer a{
    color: #000;
}
.projectTagContainer a:hover{
    color: #cc3333;
	text-decoration: none;
}

.projectTagContainer.active a{
    color: #cc3333;
}

.projectTagContainer.active .removeTag{
    color: #8f8f8f;
	display: inline;
}

/****************************************
** END PROJECT FILTER                  **
****************************************/



.projects_sep{
    border: 1px solid #ccc;
    padding: 0 1rem;
	font-family: 'Open Sans', sans-serif;
    line-height: 1.5;
    font-size: 1.5rem;
    height: auto;
    background-image: none;
    background-color: transparent;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    /*color: #999;*/

	text-align: center;
	text-transform: uppercase;
	font-weight: 600;
}

.pidx{
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	background-color: red;
	color: #fff;
	z-index: 999;
	padding: 5px 15px;
	font-size: 2rem;
}