@charset "UTF-8";

/***************************/
/***************************/
/********** ICONS **********/
/***************************/
/***************************/

/* fontawesone */

/***************************/
/***************************/
/********** FONTS **********/
/***************************/
/***************************/

/*********************************/
/*********************************/
/********** FONT FAMILY **********/
/*********************************/
/*********************************/

/*
sans-serif as default
theme.css include
*/

body {
	font-family: var(--font-family);
	font-weight: var(--font-weight-normal);
}
nav.breadcrumb,
ol li:before,
.tags,
.offer-tag,
.offer-date,
.buttons,
.button,
button,
input[type="file"] + label {
	font-weight: var(--font-weight-medium);
}
h1, h2, h3, h4, h5, h6,
.main-title,
.swiper-step,
strong {
	font-weight: var(--font-weight-bold);
}

/*******************************/
/*******************************/
/********** FONT SIZE **********/
/*******************************/
/*******************************/

small {
	font-size:.75em;
}
.hidden + * {
	margin-top:0 !important;
}

/********** @MEDIA **********/

body {
	font-size:var(--body-font-size);
	line-height: 1.5;
}

/** mobile **/
@media (max-width:760px) {
	.important {
		font-size:1.25em;
	}
}
/** desktop **/
@media (min-width:760px) {
	h1,
	.main-title {
		font-size:2em;
	}
	h2 {
		font-size:2em;
	}
	.important {
		font-size: 1.5em;
	}
}

/*************************************/
/*************************************/
/********** CONTENT SPACING **********/
/*************************************/
/*************************************/

/********** DEFAULT **********/

h1.hidden + *:not(.grid),
h2.hidden + *:not(.grid) {
	margin-top: 0;
}

/********** FORM **********/

label.hidden + * {
	margin-top: 0;
}
* + label.hidden {
	position:relative;
}

/********** @MEDIA **********/

/* default style */
h1:not(.short) + *,
h2:not(.short) + *,
h3:not(.short) + *,
h4:not(.short) + *,
h5:not(.short) + *,
h6:not(.short) + *,
p + *,
pre + *,
blockquote + *,
hr + *,
ul + *,
ol + *,
figure + *,
img + *,
svg + *,

/* custom style */
.title + *,
.infos + *,
.important + *,
.columns + *,
.columnizer + *,
.grid-container + *,
.grid + *,
.swiper-container + *,
nav + *,
.buttons + *,
.button + *,
.table + *,

/* forms */
form + * {
	margin-top:var(--global-spacing);
}
main * + h1:not(.short),
main * + h2:not(.short),
main * + h3:not(.short),
main * + h4:not(.short),
main * + h5:not(.short),
main * + h6:not(.short) {
	margin-top:calc(var(--global-spacing) * 3 / 2);
}
main * + h1.short,
main * + h2.short,
main * + h3.short,
main * + h4.short,
main * + h5.short,
main * + h6.short {
	margin-top:calc(var(--global-spacing) / 2);
}
h1.short + *,
h2.short + *,
h3.short + *,
h4.short + *,
h5.short + *,
h6.short + * {
	margin-top:calc(var(--global-spacing) / 2);
}

h1.shorter + *,
h2.shorter + *,
h3.shorter + *,
h4.shorter + *,
h5.shorter + *,
h6.shorter + * {
	margin-top: 0;
}