/*----------------------------------------------------------------- */
/* 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__red);
}

::selection
{
	color: #fff;
	background: var(--color__red);
}

body
{
	font-family: var(--font-family__default);
	font-size: var(--font-size__default);
	font-weight: var(--font-weight__default);

	text-align: left;

	color: var(--color__black);
	background: var(--color__white-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-family: var(--font-family__heading);
	font-weight: var(--font-weight__bold);
}

h1
{
	font-size: 5.6rem;

	margin-bottom: 2rem;

	letter-spacing: -2px;
}

h2
{
	font-size: 3.6rem;

	letter-spacing: -0.8px;
}

h3
{
	font-size: 2.6rem;

	letter-spacing: -0.8px;
}

h4
{
	font-size: 1.8rem;

	letter-spacing: -0.3px;
}

p
{
	line-height: var(--line-height__default);
}

strong
{
	font-weight: var(--font-weight__bold);
}

a
{
	transition: var(--transition-delay__default);
	text-decoration: underline;

	color: var(--color__red);
}

a:hover
{
	text-decoration: underline;

	color: var(--color__red-darker);
}

button
{
	font-size: var(--font-size__default); /* fix normalize.css */

	padding: 0;

	cursor: pointer;
	transition: var(--transition-delay__default);

	color: var(--color__red);
	border: none;
	background: none;
}

button:hover
{
	color: var(--color__red-darker);
}

button:focus
{
	outline: none;
}

button.btn,
a.btn,
.btn
{
	font-size: 1.8rem;
	font-weight: var(--font-weight__bold);

	position: relative;

	display: inline-block;

	padding: 13px 40px;

	text-decoration: none;

	color: var(--color__white);
	border-radius: 5px;
	background: var(--color__red);
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

button.btn:hover,
a.btn:hover,
.btn:hover
{
	text-decoration: none;

	color: var(--color__white);
	background: var(--color__red-dark);
}

button.btn-disabled,
button:disabled,
a.btn-disabled,
.btn-disabled
{
	cursor: not-allowed;

	background: var(--color__beige-light);
}

button.btn-disabled:hover,
button:disabled:hover,
a.btn-disabled:hover,
.btn-disabled:hover
{
	background: var(--color__beige-light);
}

button.btn-success,
a.btn-success,
.btn-success
{
	background: var(--color__green);
}

button.btn-success:hover,
a.btn-success:hover,
.btn-success:hover
{
	background: var(--color__green-dark);
}

button.btn-blank,
a.btn-blank,
.btn-blank
{
	font-weight: var(--font-weight__default);

	color: var(--color__red);
	border: 1px solid var(--color__red);
	background: var(--color__white);
}

ul,
ol
{
	padding: 0;

	list-style-type: none;

	counter-reset: counter;
}

blockquote,
figure
{
	margin-right: 0;
	margin-left: 0;
}

figcaption
{
	font-size: 1.7rem;
	font-style: italic;

	padding-top: 16px;

	color: var(--color__black-light);
}

img
{
	display: block;

	width: 100%;
	height: auto;
}

.bg-cover
{
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	background: var(--color__black);
}

.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;
}

.icon,
.shape
{
	display: inline-block;
}

.icon-arrow
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;

	display: inline-block;

	width: 13px;
	height: 8px;
	margin: auto 0;

	color: var(--color__red);
}

.icon-arrow:after
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 9px;
	height: 9px;
	margin: auto;

	content: '';
	transition: var(--transition-delay__default);
	-webkit-transform: rotate(-45deg) translate(2px, -2px);
	        transform: rotate(-45deg) translate(2px, -2px);

	border-bottom: 2px solid currentColor;
	border-left: 2px solid currentColor;
}

.active > .icon-arrow:after,
.active.icon-arrow:after
{
	-webkit-transform: rotate(135deg) translate(1px, -1px);
	        transform: rotate(135deg) translate(1px, -1px);
}

.icon-arrow_grey
{
	color: var(--color__black-lighter);
}

.icon-plus
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;

	display: inline-block;

	width: 25px;
	height: 25px;
	margin: auto 0;

	border: 1px solid var(--color__red);
	border-radius: 50%;
}

.icon-plus:before,
.icon-plus:after
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	display: block;

	margin: auto;

	content: '';
	transition: var(--transition-delay__default);

	background: var(--color__red);
}

.icon-plus:before
{
	width: 11px;
	height: 1px;
}

.icon-plus:after
{
	width: 1px;
	height: 11px;
}

.active > .icon-plus:after,
.active.icon-plus:after
{
	height: 1px !important;
}

.video-cover
{
	position: relative;
}

.video-cover .icon
{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	width: 67px;
	height: 47px;
	margin: auto;

	transition: var(--transition-delay__default);

	color: var(--color__red);
}

.video-cover:hover .icon
{
	color: var(--color__red-dark);
}

.video-cover span
{
	font-family: var(--font-family__heading);
	font-weight: var(--font-weight__bold);

	position: absolute;
	bottom: 35px;
	left: 50%;

	display: inline-block;

	transform: translateX(-50%);
	text-align: center;

	color: var(--color__white);
}

.hidden
{
	display: none;
}

.container
{
	position: relative;

	height: inherit;
	margin: 0 auto;
}

.container_border
{
	padding-right: var(--padding__default);
	padding-left: var(--padding__default);
}

.container_website
{
	max-width: var(--width__website);

	background: var(--color__white);
}

.container_main
{
	max-width: var(--width__main);
}

.container_content
{
	max-width: var(--width__content);
}

.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-stretch
{
	align-items: stretch;
}

.row_align-center
{
	align-items: center;
}

@media (max-width: 1230px)
{
	body
	{
		/* padding for fixed header */
		padding-top: var(--header__height);
	}

	.container_main
	{
		max-width: 100%;
		padding-right: var(--padding__default);
		padding-left: var(--padding__default);
	}
}

@media (max-width: 850px)
{
	.container_content
	{
		max-width: 100%;
		padding-right: var(--padding__default);
		padding-left: var(--padding__default);
	}
}

@media (max-width: 760px)
{
	h1
	{
		font-size: 3.3rem;

		margin-bottom: 1.2rem;

		letter-spacing: -0.8px;
	}

	h2
	{
		font-size: 2.7rem;
	}

	h3
	{
		font-size: 2.2rem;
	}

	h4
	{
		font-size: 1.5rem;
	}

	button.btn,
	a.btn,
	.btn
	{
		font-size: 1.5rem;
	}

	figcaption
	{
		font-size: 1.4rem;

		padding-top: 8px;
	}
}

/* CONTENT
----------------------------------------- */
.content .description p
{
	font-family: var(--font-family__heading);
	font-size: 2.3rem;
	line-height: 3.4rem;

	margin-bottom: 30px;
}

@media (max-width: 760px)
{
	.content .description p
	{
		font-size: 1.7rem;
		line-height: 2.5rem;

		margin-bottom: 15px;
	}
}

/* LAYOUT */
.layout-wrapper
{
	position: relative;
}

.layout-wrapper .content-wrapper
{
	width: calc(100% - var(--width__sidebar));
	padding-right: 3.4%;
}

@media (max-width: 1100px)
{
	.layout-wrapper .content-wrapper
	{
		width: 100%;
		max-width: 800px;
		margin: 0 auto;
		padding: 0;
	}
}

/* SHARING */
.sharing
{
	margin-top: 60px;
	padding: 40px 0 35px 0;

	text-align: center;

	border-top: 1px solid var(--color__white-darker);
	border-bottom: 1px solid var(--color__white-darker);
}

.sharing h2
{
	font-size: 2.6rem;

	margin-top: 0;
}

.sharing a
{
	margin: 15px;

	color: var(--color__black);
}

.sharing a:hover
{
	color: var(--color__red);
}

.sharing .icon
{
	width: 36px;
	height: 36px;
	margin-right: 10px;

	transition: var(--transition-delay__default);

	color: #fff;
	border-radius: 9px;
	background: var(--color__black);
}

.sharing .sharing-facebook .icon
{
	background: var(--color__facebook);
	box-shadow: 0 4px 9px rgba(59, 89, 152, 0.4);
}

.sharing .sharing-twitter .icon
{
	background: var(--color__twitter);
	box-shadow: 0 4px 9px rgba(8, 160, 233, 0.4);
}

.sharing .sharing-linkedin .icon
{
	background: var(--color__linkedin);
	box-shadow: 0 4px 9px rgba(0, 119, 183, 0.4);
}

.sharing a:hover .icon
{
	box-shadow: none;
}

.sharing a span
{
	font-size: 1.7rem;
}

@media (max-width: 760px)
{
	.sharing
	{
		margin-top: 30px;
		padding: 20px 0 15px 0;
	}

	.sharing h2
	{
		font-size: 2.2rem;

		margin-bottom: 10px;
	}

	.sharing .icon
	{
		width: 30px;
		height: 30px;
	}

	.sharing a span
	{
		font-size: 1.5rem;
	}
}

/* TABLES
----------------------------------------- */
.table-wrapper
{
	overflow-y: auto;

	width: 100%;
}

.table-wrapper::-webkit-scrollbar
{
	width: 8px;
	height: 8px;

	-webkit-appearance: none;
}

.table-wrapper::-webkit-scrollbar-thumb
{
	border-radius: 4px;
	background: #d8d8d8;
}

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);
}

/* ANCHORS
----------------------------------------- */
.anchors
{
	position: relative;

	border-top: 1px solid var(--color__white-darker);
	background: var(--color__white-dark);
}

.anchors nav
{
	padding: 20px 0;
}

.anchors nav ul
{
	margin: 0;
}

.anchors nav a,
.anchors nav button
{
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);

	position: relative;

	display: inline-block;

	margin: 10px 20px 10px 0;
	padding-left: 29px;
}

.anchors nav .icon
{
	position: absolute;
	top: -1px;
	bottom: 0;
	left: 0;

	width: 20px;
	height: 20px;
	margin: auto 0;

	-webkit-transform: rotate(90deg);
	        transform: rotate(90deg);

	color: var(--color__black);
}

@media (max-width: 760px)
{
	.anchors nav a,
	.anchors nav button
	{
		font-size: 1.6rem;

		padding-left: 25px;
	}

	.anchors nav .icon
	{
		width: 18px;
		height: 18px;
	}
}

/* SEARCH TOOLS
----------------------------------------- */
.search-tools
{
	position: absolute;
	z-index: 9999;
	top: var(--header__height);
	left: 0;

	display: none;

	width: 100%;
	min-height: calc(100vh - var(--header__height));
	padding: 50px 0;

	background: var(--color__white-dark);
}

.search .search-tools
{
	position: static;

	display: block;

	min-height: 0;
}

/* FORM */
.search-tools__form
{
	position: relative;

	width: 100%;
	max-width: none;
	padding-bottom: 20px;

	border-bottom: 1px solid var(--color__white-darker);
}

.search-tools__form input[type='search']
{
	font-family: var(--font-family__heading);
	font-size: 2.8rem;
	line-height: 50px;

	display: block;

	width: 100%;
	padding: 0;
	padding-right: 160px;

	color: var(--color__black);
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
}

.search-tools__form input[type='search']:focus
{
	box-shadow: none;
}

.search-tools__form input[type='search']::-webkit-input-placeholder
{
	color: var(--color__beige);
}

.search-tools__form input[type='search']::-moz-placeholder
{
	color: var(--color__beige);
}

.search-tools__form input[type='search']:-ms-input-placeholder
{
	color: var(--color__beige);
}

.search-tools__form input[type='search']::-webkit-search-decoration,
.search-tools__form input[type='search']::-webkit-search-cancel-button,
.search-tools__form input[type='search']::-webkit-search-results-button,
.search-tools__form input[type='search']::-webkit-search-results-decoration
{
	display: none;
}

.search-tools__form input[type='submit']
{
	font-size: 1.9rem;
	font-weight: var(--font-weight__bold);

	position: absolute;
	top: 0;
	right: 0;

	display: inline-block;

	width: 130px;
	height: 50px;
	padding: 0;

	cursor: pointer;
	transition: var(--transition-delay__default);

	color: var(--color__white);
	border: none;
	border-radius: 5px;
	outline: none;
	background: var(--color__red);
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.search-tools__form input[type='submit']:hover
{
	background: var(--color__red-dark);
}

/* RESULTS */
.search-tools__results
{
	padding: 30px;

	background: var(--color__white);
}

.search-tools__results-title
{
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);

	position: relative;
}

.search-tools__results-title:before
{
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;

	display: block;

	width: 100%;
	height: 1px;
	margin: auto 0;

	content: '';

	background: var(--color__white-darker);
}

.search-tools__results-title a
{
	position: relative;
	z-index: 2;

	display: inline-block;

	padding-right: 20px;

	text-decoration: underline;

	color: var(--color__black);
	background: var(--color__white);
}

.search-tools__results-title a:hover
{
	text-decoration: underline;
}

.search-tools__results-title span
{
	text-transform: capitalize;
}

.search-tools__results nav
{
	margin-bottom: 20px;
	padding: 5px 10px;
}

.search-tools__results-type:last-child nav
{
	margin-bottom: 0;
}

.search-tools__results nav ul
{
	margin: 0;
}

.search-tools__results nav a
{
	font-size: 1.6rem;

	display: inline-block;

	text-decoration: underline;

	color: var(--color__black);
}

.search-tools__results nav .search-tools__results-all a
{
	text-decoration: none;

	color: var(--color__black-lightest);
}

.search-tools__results nav a:hover
{
	color: var(--color__red);
}

/* COUNT */
.search-tools__count
{
	font-size: 1.5rem;

	margin-top: 10px;

	color: var(--color__beige);
}

.search-tools__count h1
{
	font-family: var(--font-family__default);
	font-size: inherit;
	font-weight: var(--font-weight__default);

	margin: 0;

	letter-spacing: 0;
}

.search-tools__count strong
{
	color: var(--color__black);
}

/* FAVORITES */
.search-tools__favorites
{
	font-size: 1.5rem;

	flex-wrap: nowrap;

	margin-top: 10px;

	color: var(--color__beige);
}

.search-tools__favorites span
{
	display: block;

	margin: 5px 10px 5px 0;

	white-space: nowrap;
}

.search-tools__favorites ul
{
	margin: 0;
}

.search-tools__favorites a
{
	display: inline-block;

	margin: 5px 10px 5px 0;

	text-decoration: underline;

	color: var(--color__beige);
}

.search-tools__favorites a:hover
{
	text-decoration: underline;

	color: var(--color__red);
}

@media (max-width: 1230px)
{
	.search-tools
	{
		position: fixed;

		overflow: auto;

		height: calc(100vh - var(--header__height));
		min-height: 0;
	}

	.search .search-tools
	{
		position: static;

		height: auto;
	}

	.search-tools::-webkit-scrollbar
	{
		width: 8px;
		height: 8px;

		-webkit-appearance: none;
	}

	.search-tools::-webkit-scrollbar-thumb
	{
		border: 1px solid var(--color__black-lightest);
		border-radius: 10px;
		background-color: var(--color__white);
	}

	/* FAVORITES */
	.search-tools__favorites a
	{
		margin-right: 15px;
	}
}

@media (max-width: 760px)
{
	.search-tools
	{
		padding: 20px 0;
	}

	/* FORM */
	.search-tools__form
	{
		padding-bottom: 0;

		border: none;
	}

	.search-tools__form input[type='search']
	{
		font-size: 1.5rem;

		padding: 0 100px 0 15px;

		border: 1px solid var(--color__beige-light);
		border-radius: 5px;
		background-color: var(--color__white);
	}

	.search-tools__form input[type='submit']
	{
		font-size: 1.5rem;

		top: 5px;
		right: 5px;

		width: 80px;
		height: 40px;
	}

	/* RESULTS */
	.search-tools__results
	{
		padding: 15px;
	}

	.search-tools__results-title
	{
		font-size: 1.6rem;
	}

	.search-tools__results nav
	{
		margin-bottom: 15px;
	}

	.search-tools__results nav a
	{
		font-size: 1.5rem;

		margin: 5px 0;
	}

	/* COUNT */
	.search-tools__count
	{
		font-size: 1.4rem;

		margin-top: 15px;
	}

	/* FAVORITES */
	.search-tools__favorites
	{
		font-size: 1.4rem;

		margin-top: 15px;
		padding: 0 10px;

		color: var(--color__black);
	}

	.search-tools__favorites.row,
	.search-tools__favorites .row
	{
		display: block;
	}

	.search-tools__favorites span,
	.search-tools__favorites a
	{
		margin: 7px 0;

		color: var(--color__black);
	}
}

/* SEARCH
----------------------------------------- */
.search .anchors button
{
	color: var(--color__black);
}

.search .anchors button:hover
{
	color: var(--color__red);
}

.search .anchors button .icon
{
	transition: var(--transition-delay__default);
}

.search .anchors button.active,
.search .anchors button.active .icon
{
	color: var(--color__red);
}

.search .anchors button strong
{
	text-transform: capitalize;
}

.search .anchors button span
{
	font-weight: var(--font-weight__default);
}

.search__results
{
	padding-top: 50px;
}

.search__result
{
	margin-bottom: 40px;
}

.search__result h2
{
	text-transform: capitalize;
}

.search__result h2 span
{
	font-weight: var(--font-weight__default);
}

.search__result ul
{
	margin: 0;
}

.search__result li
{
	margin-bottom: 15px;
}

.search__result a
{
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);

	display: inline-block;

	margin-bottom: 5px;
}

.search__result time
{
	font-size: 1.7rem;
	font-weight: var(--font-weight__bold);

	display: block;

	margin-bottom: 8px;
}

.search__result p
{
	margin: 0;
}

.search__result .search__result-all button
{
	font-size: 1.7rem;

	color: var(--color__black-light);
}

.search__result .search__result-all button:hover
{
	color: var(--color__red);
}

@media (max-width: 760px)
{
	.search__results
	{
		padding-top: 30px;
	}

	.search__result
	{
		margin-bottom: 30px;
	}

	.search__result h2
	{
		margin-bottom: 15px;
	}

	.search__result time
	{
		font-size: 1.5rem;
	}
}

/* SHORTCODES
----------------------------------------- */

/* CONTACT-BOX */
.contact-box
{
	margin: 90px 0;
	padding: 35px 0;

	text-align: center;

	background: var(--color__white-dark);
}

.contact-box__item
{
	width: 33.33%;
}

.contact-box__item:nth-child(2)
{
	border-right: 1px solid var(--color__beige-light);
	border-left: 1px solid var(--color__beige-light);
}

.contact-box__label
{
	font-family: var(--font-family__heading);
	font-size: 2.6rem;
	font-weight: var(--font-weight__bold);
}

.contact-box__item .icon
{
	width: 30px;
	height: 30px;
	margin-right: 7px;

	vertical-align: middle;
}

.contact-box__item a[href^='tel'],
.contact-box__item a[href^='mailto']
{
	font-size: 1.7rem;

	display: inline-block;

	text-decoration: none;
}

.contact-box__item a[href^='tel']
{
	margin-bottom: 5px;
	padding-left: 12px;

	color: var(--color__black);
}

.contact-box__item a[href^='tel']:hover
{
	color: var(--color__red);
}

.contact-box__item a[href^='tel'] .icon
{
	color: var(--color__red);
}

.contact-box__item a[href^='mailto']
{
	padding-right: 12px;
}

.contact-box__item a[href^='mailto'] span
{
	text-decoration: underline;
}

@media (max-width: 760px)
{
	.contact-box
	{
		margin: 50px 0;
	}

	.contact-box__item:nth-child(2)
	{
		border: none;
	}

	.contact-box__label
	{
		font-size: 2.2rem;
	}

	.contact-box__item a[href^='tel'],
	.contact-box__item a[href^='mailto']
	{
		font-size: 1.5rem;
	}

	.contact-box__item a[href^='tel']
	{
		margin-bottom: 0;
		padding-left: 10px;
	}

	.contact-box__item .icon
	{
		width: 25px;
		height: 25px;
		margin-right: 5px;
	}
}

@media (max-width: 600px)
{
	.contact-box
	{
		padding: 25px;
	}

	.contact-box__item
	{
		width: 100%;
	}

	.contact-box__item:nth-child(2)
	{
		margin: 10px 0 15px 0;
	}

	.contact-box__item a[href^='tel'],
	.contact-box__item a[href^='mailto']
	{
		padding: 0;
	}

	.contact-box__item a[href^='tel']
	{
		margin-bottom: 5px;
	}
}

/* DEPARTMENTS */
.department
{
	padding: 40px 0;

	background: var(--color__white-dark);
}

.department__column
{
	width: 50%;
	padding: 0 6%;
}

.department__column:last-child
{
	border-left: 1px solid var(--color__white-darker);
}

.department__address > span,
.department__address > a
{
	font-weight: var(--font-weight__bold);

	position: relative;

	display: inline-block;

	margin-bottom: 15px;
	padding-left: 40px;
}

.department__address .icon
{
	position: absolute;
	top: 2px;
	left: 0;

	width: 24px;
	height: 24px;

	color: var(--color__red);
}

.department__location address
{
	font-style: normal;
}

.department__location a
{
	font-size: 1.5rem;
	font-weight: var(--font-weight__default);

	display: block;

	width: fit-content;
}

.department__address a[href^='tel']
{
	text-decoration: none;

	color: var(--color__black);
}

.department__address a[href^='tel']:hover
{
	color: var(--color__red-dark);
}

.department__title
{
	font-weight: var(--font-weight__bold);

	position: relative;

	display: block;

	width: 100%;

	cursor: default;
	text-align: left;
	pointer-events: none;

	color: var(--color__black);
}

.department__title .icon-arrow
{
	display: none;
}

.department__hours figure
{
	margin: 15px 0 0 0;
}

.department__hours table
{
	font-size: 1.5rem;

	min-width: auto;
	margin-bottom: 15px;
}

.department__hours table tr
{
	border-bottom: 1px solid var(--color__white-darker);
}

.department__hours table td
{
	min-width: 90px;
	padding: 10px 0;

	text-align: center;

	border: none;
}

.department__hours table td:first-child
{
	text-align: left;

	color: var(--color__black-light);
}

.department__hours table td .empty
{
	color: var(--color__black-light);
}

.department__note
{
	font-size: 1.5rem;

	display: block;

	padding: 0;

	color: var(--color__black);
}

/* DEPARTMENTS - SIDEBAR WIDGET */
.sidebar .department
{
	padding: 20px 15px;

	border-bottom: 1px solid var(--color__white-darker);
	background: none;
}

.sidebar .department__column
{
	width: 100%;
	padding: 0;

	border: none;
}

.sidebar .department__address
{
	display: none;
}

.sidebar .department__title
{
	font-size: 1.7rem;

	cursor: pointer;
	pointer-events: all;
}

.sidebar .department__title:hover
{
	color: var(--color__red);
}

.sidebar .department__title .icon-arrow
{
	display: block;
}

.sidebar  .department__hours figure
{
	display: none;
}

@media (max-width: 760px)
{
	.department
	{
		padding: 20px 0;
	}

	.department__column
	{
		width: 100%;
		max-width: 420px;
		margin: 0 auto;
		padding: 0 15px;
	}

	.department__column:last-child
	{
		margin-top: 10px;
		padding-top: 20px;

		border-top: 1px solid var(--color__white-darker);
		border-left: none;
	}
}

@media (max-width: 400px)
{
	.department__hours table
	{
		font-size: 1.4rem;
	}
}

/* NOTIFICATIONS */
.notifications
{
	font-size: 1.5rem;

	display: inline-block;

	padding: 5px 15px;

	color: var(--color__white);
	border-radius: 5px;
	background-color: var(--color__red);
}

.notifications .icon
{
	width: 20px;
	height: 20px;
	margin: -1px 0 0 0;

	vertical-align: middle;
}

.notifications a
{
	font-size: 1rem;
	font-weight: var(--font-weight__bold);

	display: inline-block;

	margin-left: 5px;
	padding: 5px 10px;

	vertical-align: middle;
	text-decoration: none;
	text-decoration: solid underline transparent;
	text-transform: uppercase;

	color: var(--color__white);
	border-radius: 5px;
	background: var(--color__black);
}

.notifications a:hover
{
	text-decoration: underline;
}

.notifications a .icon-arrow
{
	position: relative;

	color: var(--color__white);
}

.notifications a .icon-arrow:after
{
	width: 5px;
	height: 5px;

	-webkit-transform: rotate(-135deg) translate(0, 0);
	        transform: rotate(-135deg) translate(0, 0);

	border-width: 1px;
}

/* CALENDAR */
.block-accordion__content .table-wrapper
{
	margin-bottom: 30px;
}

.calendar
{
	font-size: 1.7rem;

	margin-bottom: 10px;

	border: 1px solid var(--color__white-darker);
}

.calendar thead
{
	border-bottom: 2px solid var(--color__red);
}

.calendar tr
{
	border-top: 1px solid var(--color__white-darker);
}

.calendar .calendar-row_red
{
	background: var(--color__red-light);
}

.calendar .calendar-row_green
{
	background: var(--color__white-dark);
}

.calendar th,
.calendar td
{
	padding: 12px 15px;

	border: none;
}

.calendar th
{
	font-family: var(--font-family__heading);
	font-size: 1.4rem;
	font-weight: var(--font-weight__bold);

	padding: 19px 15px;

	letter-spacing: 3.5px;
	text-transform: uppercase;

	color: var(--color__black);
	background: none;
}

.calendar td:first-child
{
	font-weight: var(--font-weight__bold);
}

.calendar td span
{
	white-space: nowrap;

	color: var(--color__black-light);
}

@media (max-width: 760px)
{
	.block-accordion__content .table-wrapper
	{
		margin-bottom: 10px;
	}

	.calendar
	{
		font-size: 1.5rem;

		margin-bottom: 5px;
	}

	.calendar th
	{
		font-size: 1.2rem;

		letter-spacing: 3px;
	}
}
