/*----------------------------------------------------------------- */
/* GENERAL
/*----------------------------------------------------------------- */

html
{
	font-size: var(--font-size__rem-constant);
	line-height: normal; /* fix normalize.css */

	position: relative;

	box-sizing: border-box;
	min-height: 100%;
}

*,
*:before,
*:after
{
	box-sizing: inherit;
}

::selection
{
	color: var(--color__white);
	background: var(--color__blue);
}

::selection
{
	color: #fff;
	background: var(--color__blue);
}

body
{
	font-family: var(--font-family__noto-serif);
	font-size: var(--font-size__default);
	font-weight: var(--font-weight__normal);

	text-align: left;

	color: var(--color__brown);
	background: var(--color__beige-dark);

	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
blockquote,
figure
{
	margin-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6
{
	font-weight: var(--font-weight__bold);

	color: var(--color__blue-dark);
}

h1
{
	font-size: 3.4rem;
	line-height: 3.8rem;

	color: var(--color__yellow);
}

h2
{
	font-size: 2.6rem;
	line-height: 3.2rem;
}

h3
{
	font-size: 2rem;
	line-height: 2.4rem;
}

h4
{
	font-size: 1.6rem;
	line-height: 2.4rem;
}

strong
{
	font-weight: var(--font-weight__bold);
}

a
{
	transition: var(--transition-delay__default);
	text-decoration: none;

	color: var(--color__blue);
}

a:hover
{
	text-decoration: none;

	color: var(--color__red);
}

a[href^='mailto']
{
	word-break: break-all;
}

button
{
	font-family: var(--font-family__noto-sans);
	font-size: 1.4rem; /* fix normalize.css */
	line-height: normal;

	position: relative;

	padding: 0;

	cursor: pointer;
	transition: var(--transition-delay__default);
	text-transform: uppercase;

	color: var(--color__white);
	border: none;
	background: none;
}

button:hover
{
	color: var(--color__yellow);
}

button:focus
{
	outline: none;
}

ul,
ol
{
	padding: 0;

	list-style-type: none;

	counter-reset: counter;
}

blockquote,
figure
{
	margin-right: 0;
	margin-left: 0;
}

figcaption
{
	font-size: 1.5rem;
	font-style: italic;

	padding-top: 8px;

	text-align: center;
}

img
{
	display: block;

	width: 100%;
	height: auto;
}

.bg-cover
{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	background: var(--color__brown);
}

.bg-cover_light
{
	background: var(--color__white);
}

.bg-cover img
{
	width: inherit;
	height: inherit;

	object-fit: cover;
	object-position: center center;
}

.lazyload
{
	opacity: 0;
}

img.lazyloading
{
	transition: var(--transition-delay__default);

	opacity: 0.8;
}

.lazyloaded
{
	transition: var(--transition-delay__default);

	opacity: 1;
}

iframe
{
	border: 0;
}

.hidden
{
	display: none !important;
}

.container
{
	position: relative;

	height: inherit;
}

.container_website
{
	max-width: var(--width__website);
	margin: 0 auto;

	background: var(--color__white);
}

.container_1-7
{
	max-width: var(--width__1-7);
}

.container_4-7
{
	max-width: var(--width__4-7);
	margin: 0 0 0 var(--width__1-7);
}

.container_5-7
{
	max-width: var(--width__5-7);
	margin: 0 0 0 var(--width__1-7);
	padding-right: var(--padding__default);
}

.container_6-7
{
	max-width: var(--width__6-7);
	margin: 0;
	padding-right: var(--padding__default);
}

.row
{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.row_justify-space
{
	justify-content: space-between;
}

.row_justify-center
{
	justify-content: center;
}

.row_justify-end
{
	justify-content: flex-end;
}

.row_align-center
{
	align-items: center;
}

.row_align-bottom
{
	align-items: flex-end;
}

.row_align-stretch
{
	align-items: stretch;
}

.row_wrap-reverse
{
	flex-wrap: wrap-reverse;
}

@media (max-width: 1200px)
{
	.container_4-7
	{
		max-width: var(--width__5-7);
		padding-right: var(--padding__default);
	}
}

@media (max-width: 760px)
{
	h1
	{
		font-size: 2rem;
		line-height: 2.4rem;
	}

	h2
	{
		font-size: 1.8rem;
		line-height: 2.6rem;
	}

	h3
	{
		font-size: 1.6rem;
	}

	h4
	{
		font-size: 1.5rem;
	}

	.container_4-7,
	.container_5-7
	{
		max-width: var(--width__6-7);
		margin: 0;
		padding-left: var(--padding__default);
	}
}

/* BUTTONS
----------------------------------------- */
button.btn,
a.btn,
.btn
{
	font-family: var(--font-family__noto-sans);
	font-size: 1.4rem;
	font-weight: var(--font-weight__bold);

	position: relative;

	display: inline-block;

	margin: 0;
	padding: 9px 22px 9px 14px;

	text-decoration: none;
	text-transform: uppercase;

	color: var(--color__blue);
	border: 1px solid var(--color__blue);
	border-radius: 20px;
	background: transparent;
}

button.btn:hover,
a.btn:hover,
.btn:hover
{
	text-decoration: none;

	color: var(--color__white);
	background: var(--color__blue);
}

button.btn > .icon,
a.btn > .icon,
.btn > .icon
{
	display: inline-block;

	width: 15px;
	height: 9px;
	margin-right: 5px;
}

@media (max-width: 760px)
{
	button.btn,
	a.btn,
	.btn
	{
		font-size: 1rem;

		padding: 10px 15px 10px 18px;
	}

	button.btn > .icon,
	a.btn > .icon,
	.btn > .icon
	{
		width: 10px;
		height: 6px;
	}
}

/* ICONS & SHAPES
----------------------------------------- */
.icon,
.shape
{
	display: inline-block;
}

.icon-bank
{
	width: 20.281px;
	height: 22.435px;
}

.icon-id
{
	width: 24.363px;
	height: 15.988px;
}

.icon-data
{
	top: 0 !important;

	width: 24.857px;
	height: 19px;
}

.icon-church
{
	width: 11px;
	height: 20px;
}

.icon-cross
{
	width: 31.281px;
	height: 31.359px;
}

.icon-logo
{
	width: 94.662px;
	height: 84.966px;
}

.icon-magnifier
{
	width: 14.009px;
	height: 13.991px;
}

.icon-mail
{
	width: 21px;
	height: 15px;
}

.icon-big-arrow
{
	width: 40px;
	height: 66.667px;
}

.icon-arrow
{
	width: 9.586px;
	height: 15.977px;
}

.icon-download
{
	width: 12px;
	height: 12px;
}

.icon-phone
{
	width: 15px;
	height: 15px;
}

.icon-text-news
{
	width: 9px;
	height: 10px;
}

/* STRIPE
----------------------------------------- */
.stripe:after
{
	position: absolute;
	z-index: 999;
	top: 0;
	right: 0;

	display: block;

	width: var(--width__1-7);
	height: 100%;

	content: '';

	background: #81a7f1;
}

.stripe_transparent:after
{
	background: rgba(46, 109, 231, 0.3);
}

/* CONTENT
----------------------------------------- */
.content
{
	position: relative;
}

/* TABLES
----------------------------------------- */
.table-wrapper
{
	overflow-y: auto;

	width: 100%;
}

.table-wrapper::-webkit-scrollbar
{
	width: 14px;
	height: 14px;

	-webkit-appearance: none;
}

.table-wrapper::-webkit-scrollbar-thumb
{
	border: 3px solid var(--color__white);
	border-radius: 8px;
	background-color: rgba(0, 0, 0, 0.3);
}

table
{
	width: 100%;
	min-width: 560px;

	border-collapse: collapse;
}

table td,
table th
{
	padding: 10px 7px;

	border: 1px solid rgba(0, 0, 0, 0.2);
}

table th,
table thead td
{
	color: var(--color__white);
	background: rgba(0, 0, 0, 0.6);
}

/* FORMS
----------------------------------------- */
.holy-overlay .search-form input[type='search']::-webkit-input-placeholder
{
	text-transform: uppercase;
}

.holy-overlay .search-form input[type='search']::-moz-placeholder
{
	text-transform: uppercase;
}

.holy-overlay .search-form input[type='search']:-ms-input-placeholder
{
	text-transform: uppercase;
}

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;
}

/* SHORTCODES
----------------------------------------- */

/* NEWS */
.block-news
{
	padding: var(--padding__default) 0 var(--padding__default) var(--padding__default) !important;
}

.block-news .container
{
	position: static;
}

.block-news h2
{
	margin: 0;

	color: var(--color__red);
	border-color: var(--color__red);
}

.tns-ovh
{
	height: auto !important;
}

.block-news .news-control
{
	padding-top: var(--padding__default);
}

.block-news .news-control__prev,
.block-news .news-control__next
{
	display: flex;
	align-items: center;
	justify-content: center;

	width: 40px;
	height: 40px;
	margin-right: 20px;

	color: var(--color__blue);
	border: 1px solid var(--color__blue);
	border-radius: 50%;
}

.block-news .news-control__prev svg,
.block-news .news-control__next svg
{
	width: 10px;
	height: 16px;
}

.block-news .news-control__prev svg
{
	transform: rotateY(180deg);
}

.block-news .news-control__prev:hover,
.block-news .news-control__next:hover
{
	color: var(--color__white);
	background: var(--color__blue);
}

.block-news .block-news__next
{
	position: absolute;
	top: 0;
	right: 0;

	width: 76px;
	height: 100%;

	background-image: linear-gradient(270deg, rgba(10, 42, 85, 0.7) 0%, rgba(10, 42, 85, 0.5) 29%, rgba(10, 42, 85, 0) 100%);
}

.block-news .block-news__next:hover
{
	color: var(--color__blue);
}

.block-news .block-news__next svg
{
	width: 41px;
	height: 68px;
}

@media (max-width: 760px)
{
	.block-news .news-control__prev,
	.block-news .news-control__next
	{
		display: none;
	}

	.block-news .block-news__next
	{
		width: 45px;
	}

	.block-news .block-news__next svg
	{
		width: 22px;
		height: 37px;
	}

	.block-news .news-control a
	{
		padding: 10px 12px 10px 15px;
	}
}

/* GOOGLE MAPS */
.block-maps .container_5-7
{
	padding-right: 0;
}

.block-maps__wrapper
{
	position: relative;

	overflow: hidden;

	height: 0;
	padding-top: calc(650 / 1234 * 100%);

	background: white;
}

.block-maps__wrapper > .block-maps__render
{
	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;
}

.gm-style .gm-style-iw-c
{
	top: 1px;
	left: -16px;

	padding: 10px !important;

	-webkit-transform: none;
	        transform: none;

	border-radius: 0;
	background: var(--color__blue);
}

.gm-style-iw-d
{
	overflow: hidden !important;
}

.gm-style .gm-style-iw-c > button img
{
	display: none !important;
}

.gm-style .gm-style-iw-c > button:before,
.gm-style .gm-style-iw-c > button:after
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 1px;
	height: 10px;
	margin: auto;

	content: '';

	background: var(--color__white);
}

.gm-style .gm-style-iw-c > button:before
{
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.gm-style .gm-style-iw-c > button:after
{
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.gm-style .gm-style-iw-t:after
{
	display: none;
}

.block-maps__tooltip
{
	text-align: center;

	color: var(--color__white);
}

.block-maps__tooltip .icon-church
{
	width: 11px;
	height: 20px;
	margin-right: 7px;
}

.block-maps__tooltip span
{
	font-family: var(--font-family__noto-serif);
	font-size: 1.6rem;
	line-height: 1.2rem;
}

.block-maps__tooltip a
{
	font-size: 1rem;
	font-weight: var(--font-weight__bold);

	display: inline-block;

	margin-top: 7px;

	text-transform: uppercase;

	color: var(--color__white);
}

.block-maps__tooltip a:hover
{
	color: var(--color__yellow);
}

.block-maps__tooltip .icon-internal-arrow
{
	width: 10px;
	height: 6px;
	margin-right: 4px;
}

@media (max-width: 760px)
{
	.block-maps .container_5-7
	{
		padding-left: 0;
	}
}
