/*
	(c)2020 - visuallizard.com

	General Layout Styles.
	Sets major blocking to elements that appear accross the site in different templates.
	All can be removed and started from scratch or elemnts can be adjusted individually.
*/



.site-title {
	display: block;

}

	.site-title > a {
		display: block;
		position: relative;
		width: 17.85rem;
		height: 2.86rem;
		margin: 1.35em 0 1.15em;

		left: -1.25em;

		background-image: url("../../img/header-logo-white-horizontal.svg");
		background-position: left center;
		background-repeat: no-repeat;
		background-size: auto 90%;

		color: inherit;
		font-size: 0.7rem;
		line-height: 1;
		text-decoration: none;
		text-indent: -999em;
		font-weight: 800;

		overflow: hidden;
	}

		/* used to ensure SVG is preloaded, to avoid "flickering" on first hover of logo above */

		.site-title > a:after {
			content: "";
			width: 1px;
			height: 1px;
			opacity: 0;
		}

		.site-title > a:after,
		.site-title > a:hover {
			background-image: url("../../img/header-logo-white-horizontal-hover.svg");
		}


header {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;

	margin-top: -1px;
	padding: 0 2rem;
	background-color: #9F1239;
}

/* ! Navigation Member Wrapper */

.site-header-member-wrapper {
	display: flex;
	position: relative;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
	padding: 0;
	margin: 0;
}

	.search-form {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;

		padding: 0.5em 0.75em;
		margin: 0;
		max-width: 200px;
		border-radius: 6px;

		background: white;
	}

		.search-input {
			flex-grow: 1;

			padding: 0;
			margin: 0 1em 0 0;
			border: none;
		}

		.search-button {
			padding: 0.25em;
			border: 0;
			margin: -1em -0.375em;

			font-size: inherit;
		}

	.site-header-search {
		margin:0 0.675rem 0 0;
	}

		.site-header-search input {
			min-width: 14rem;
			padding: 0.675rem 1rem;
			border:0;
		}

	.site-header-member-wrapper > .site-header-notifications,
	.site-header-member-wrapper > .site-header-capacity,
	.site-header-member-wrapper > .site-header-profiles {
		position: relative;

		margin-left: 0.675em;
	}

		.site-header-notifications > a,
		.site-header-capacity > a,
		.site-header-profiles > a {
			display: flex;
			justify-content: center;
			align-items: center;

			padding: 0;
			margin: 0;

			min-width: 2.8rem;
			min-height: 2.8rem;
			max-width: 2.8rem;
			max-height: 2.8rem;
			border-radius: 12px;
			border: 2px solid transparent;
			background: rgba(255,255,255,0.1);

			color: white;
			text-align: center;
		}

			.site-header-notifications > a svg,
			.site-header-capacity > a svg,
			.site-header-profiles > a svg {
				display: block;
				padding: 0;
				margin: 0;

				font-size: 1.3rem;
			}

				.site-header-capacity > a svg {
					font-size: 1.7rem;
				}

			.site-header-notifications:hover > a,
			.site-header-capacity:hover > a,
			.site-header-profiles:hover > a {
				border-color: #FACC15 !important;
				background-color: #FACC15 !important;

				color: white !important;
			}

		.site-header-profiles .profile-figure {
			display: block;

			padding: 0;
			margin: 0;

			min-width: 2.8rem;
			min-height: 2.8rem;
			max-width: 2.8rem;
			max-height: 2.8rem;
			border-radius: 12px;

			overflow: hidden;
		}

			.site-header-profiles .profile-figure:empty {
				background: rgba(255,255,255,0.1);
			}

			.site-header-profiles .profile-figure img {
				width: 100%;
				object-fit: cover;
			}

			.site-header-profiles .profile-figure:empty:after {
				content: attr(data-initials);

				display: block;
				width: 100%;

				color: white;
				font: 400 1.15rem/2.5 "Roboto Condensed", sans-serif;
				text-align: center;
				text-transform: none;
			}

			.site-header-profiles .profile-figure:hover {
				border-color: #FACC15;
				background-color: #FACC15;
			}

		.site-header-capacity .site-header-tier {}

			.site-header-capacity > .site-header-tier.capacity-level-1 {}
			.site-header-capacity > .site-header-tier.capacity-level-2 {}
			.site-header-capacity > .site-header-tier.capacity-level-3 {}
			.site-header-capacity > .site-header-tier.capacity-level-4 { background-color: #FB923C11; color: #FB923C; }
			.site-header-capacity > .site-header-tier.capacity-level-5 { background-color: #F43F5E11; color: #F43F5E; }

			.site-header-capacity .site-header-tier svg {
				font-size: 1.7rem;
			}

			.site-header-capacity .site-header-tier .tier-number {
				margin-left: 0.15em;
				margin-right: -0.1em;

				font-size: 1em;
				font-weight: 600;
			}

	.site-header-member-wrapper > * {
		margin-left: 1rem;
	}

		.site-header-member-wrapper > *:first-child {
			margin-left: 0;
		}


/* 	! SECTIONS	*/
main {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	width: 100%;
	padding: 2rem;
	margin: 0;
	background: #f3f4f4;
}

	main .container {
		flex-grow: 1;
	}


/* ! NAVIGATIONS	*/

/* General for all levels and navs: */
.nav-list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.nav-item {
	position: relative;
	display: inline-block;
	display: block;
	vertical-align: top;
}
.nav-link {
	display: block;

	padding: 0.75em 0 0;
	border-bottom: 0.5em solid transparent;

	color: white;
	font-size: 1rem;
	line-height: 3.5;
	text-decoration: none;
}

	.nav-link .emphasise {
		font-size: 1.3em;
		line-height: 1px; /* to avoid misaplignment caused by padding-top */
	}

.nav-link:hover {
	color: #FACC15;
}
.nav-item[data-nav-status='has-active'] > .nav-link {
	border-color: #f3f4f4;
}
.nav-item[data-nav-status='active'] > .nav-link {
	border-color: #f3f4f4;
}

	.main-nav {
	}

	/* Level 1 (horizontal) */
	.main-nav .nav-1 {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		font-family: "Roboto Condensed", sans-serif;
		font-weight: 700;
	}
	.main-nav .nav-1 > li {
		margin-right: 1em;
	}
		.main-nav .nav-1 > li:last-child {
			margin-right: 0;
		}
	.main-nav .nav-1 > li > a {
		text-align: center;
		text-transform: uppercase;
	}

	/* all sub-lists (drop-downs & drop-sides) */
	.main-nav .sub-list,
	.site-header-tools .nav-list {
		display: block;

		position: absolute;
		top: 0;
		left: 0;

		padding: 6px 0;
		margin-top: -12px;
		margin-left: -120px;
			margin-left: calc( -120px + 50% );
		width: 240px;
		border-radius: 12px;
		background: white;

		-webkit-box-shadow: 0 6px 12px rgba(0,0,0,0.2);
		box-shadow: 0 6px 12px rgba(0,0,0,0.2);

		z-index: 100;
	}

		.site-header-tools .nav-list {
			margin-left: -190px;

			font-family: "Roboto Condensed", sans-serif;
			font-weight: 700;
		}

		.main-nav .sub-list:before,
		.site-header-tools .nav-list:before {
			content: "";

			position: absolute;
			top: -15px;
			left: 50%;

			margin-left: -6px;
			width: 0;
			height: 0;
			border-left: 12px solid transparent;
			border-right: 12px solid transparent;
			border-bottom: 15px solid white;

			z-index: 10;
		}

			/*
			.main-nav > .nav-list > li:first-child .sub-list:before {
				left: 2.5rem;
			}
			*/

			.site-header-tools .nav-list:before {
				left: 205px;
			}

			.site-header-tools .nav-list:after {
				content: '';

				position: absolute;
				top: -8px;
				left: 0;
				height: 8px;
				width: 100%;

				/* border: 1px solid lime; */
				background-color: #9F1239;

				z-index: 5;
			}

		.main-nav li > .sub-list,
		.site-header-tools .nav-list {
			visibility: hidden;	opacity: 0; transform: scale(1);
		}

		.main-nav li:hover > .sub-list,
		.site-header-tools:hover .nav-list {
			visibility: visible; opacity: 1; transform: scale(1);
		}

		.main-nav li:focus-within > .sub-list,
		.site-header-tools:focus > .nav-list {
			visibility: visible; opacity: 1; transform: scale(1);
		}


			.main-nav .sub-list a[data-page-description]::after,
			.site-header-tools .nav-list a[data-page-description]::after {
				content: attr(data-page-description);

				display: block;
				margin: 0;

				color: #6B7280;
				font-family: 'Roboto';
				font-weight: 400;
				font-size: 0.875rem;
				line-height: 1.3;
			}

				.main-nav .sub-list a[data-page-description]:hover::after,
				.site-header-tools .nav-list a[data-page-description]:hover::after {
					color: '#FACC15';
				}

		.main-nav .sub-list .sub-list {}

	.main-nav :nth-last-child(1) > .nav-2,
	.main-nav :nth-last-child(2) > .nav-2 {}

	.main-nav :nth-last-child(1) > .nav-2 .nav-list,
	.main-nav :nth-last-child(2) > .nav-2 .nav-list {}

	.main-nav :nth-last-child(1) > .nav-2 .has-sub > .nav-link::after,
	.main-nav :nth-last-child(2) > .nav-2 .has-sub > .nav-link::after {}



	/* Level 2 (the only drop-down ) */
	.main-nav .nav-2,
	.site-header-tools .nav-list {
		top: 110%;
	}

		/*
		.main-nav > .nav-list > li:first-child .sub-list {
			left: 150%;
		}
		*/

		.site-header-tools .nav-list {
			top: 4.25rem;
			left: 0;
		}

	.main-nav .nav-2 > li,
	.site-header-tools .nav-list > li {
		margin: 0;
		padding: 6px 12px;
		border-top: 1px solid #EEF0F2;
	}

		.main-nav .nav-2 > li:first-child,
		.site-header-tools .nav-list > li:first-child {
			border-top: none;
		}

		.main-nav .nav-2 > li > a,
		.site-header-tools .nav-list > li > a {
			padding: 0.25em 0 0;

			color: #111827;
			line-height: 1.5;
			letter-spacing: normal;
		}

			.main-nav .nav-2 > li > a:hover,
			.main-nav .nav-2 > li > a:hover:after,
			.main-nav .nav-2 > li[data-nav-status='active'] > a,
			.main-nav .nav-2 > li[data-nav-status='active'] > a:after,

			.site-header-tools .nav-list > li > a:hover,
			.site-header-tools .nav-list > li > a:hover:after,
			.site-header-tools .nav-list > li[data-nav-status='active'] > a,
			.site-header-tools .nav-list > li[data-nav-status='active'] > a:after {
				border-color: transparent;

				color: #FACC15;
			}

			.nav-item[data-nav-status='active'] > .nav-link

	/* Level 3, etc. */
	.main-nav .nav-3 {

	}
	.main-nav .nav-3 > li {

	}
	.main-nav .nav-3 > li > a {

	}

	/* NEW nav link */

	#navigation-1-19 {}

		#navigation-1-19 > a {
			position: relative;
			padding: 0 15px 0 12px;
			margin-top: 0.75em;

			color: white;

			white-space:nowrap;
			z-index: 0;
		}

		#navigation-1-19 > a:before {
			content: "+";

			display: inline-block;
			margin-right: 0.25em;

			font: 800 1em 'Arial', sans-serif;
		}

		#navigation-1-19 > a:after {
			content: "";
			position: absolute;
			width: 90%;
			left: 4%;
			height: 1.75em;
			top: calc(50% - 0.95em);
			border-radius: 8px;
			background: #111827;

			z-index: -1;
		}

			#navigation-1-19:hover > a:after {
				background-color: #FACC15;
			}


/* ! Resources */

.p-resources {}

	.p-resources h2:nth-child(n+2) {
		padding-top: .5em;
		border-top: 1px solid #D1D5DB;
	}

	.p-links h2:nth-child(n+2) {
		padding-top: .5em;
	}

/* ! Documents */
.documents {

}
	.doc-category {

	}
		.doc-category-title {

		}
		.doc-category-desc {

		}
	.doc-item {
		margin-bottom: 2rem;
	}
	.doc-desc {

	}
		.doc-desc *:last-child {
			margin-bottom: 0;
		}
	.doc-link {

	}
		.doc-link .icon {
			width: 1em;
			height: 1em;
			min-width: 1em;
			margin-right: .5rem;
		}

/* ! Filters */

.filter {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

	.filter-pagination {
		display: flex;
		justify-content: flex-end;
		width: 10%;
	}

		.filter-pagination form,
		.filter-pagination ul,
		.filter-pagination li {
			margin: 0;
			padding: 0;
			list-style-type: none;
		}

		.filter-pagination button,
		.filter-pagination a {
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;

			display: flex;
			justify-content: center;
			align-items: center;

			display: inline-block;
			padding: 0;

			margin: 0 0 0 12px;
			width: 2rem;
			height: 2.3rem;
			border-radius: 8px;
			border: 1px solid #B91C1C;
			background: transparent;

			color: #B91C1C;
			font-size: 1rem;
			font-family: sans-serif;
			text-align: center;
			line-height: 2.1;

			cursor: pointer;
		}

			.filter-pagination button:hover,
			.filter-pagination a:hover {
				border-color: transparent;
				background-color: #FACC15;
				color: white;
			}

			.filter-pagination .prev button,
			.filter-pagination .prev a {
				padding: 0.15em 0.15em 0 0;
			}

			.filter-pagination .next button,
			.filter-pagination .next a {
				padding: 0.15em 0 0 0.15em;
			}


			.filter-pagination .disabled button,
			.filter-pagination .disabled a,
			a.disabled,
			button.disabled {
				border-color: #E5E7EB;
				background-color: transparent;
				color: #D1D5DB;
			}

	.filter-form {
		flex-grow: 1;

		display: flex;
		justify-content: center;
	}

		.filter-form form {
			width: 100%;
		}

		.filter-form [class^='input-'] {
			margin-bottom: 12px;
			margin-right: 6px;
		}

		.filter-form [class^='input-'] input,
		.filter-form [class^='input-'] select {
			width: 100%;
		}

		.filter-form .advanced-options-toggle {
			display: none;
		}

			html.js .filter-form .advanced-options-toggle,
			form .delete {
				display: inline-block;

				vertical-align: middle;

				padding: 1em 2em 0.9em;
				border: 1px solid transparent;
				border-radius: 6px;
				background: transparent;

				color: #B91C1C;
				font-family: "Roboto", "Arial", sans-serif;
				font-size: 0.8rem;
				font-weight: 500;
				line-height: 1;
				text-transform: uppercase;
				text-align: center;
				text-decoration: underline;

				cursor: pointer;
			}

				form .delete {
					padding: 0.75em 1.25em 0.65em;
					margin: 0.25em 0 0.25em 2em;
					background-color: #B91C1C09;
				}

					form .delete [class*=fa] {
						margin-right: 0.5em;
					}

					.order-info-files form .delete {
						padding: 0.5em 0.25em 0.35em 0.75em;
					}

			.filter-form .advanced-options-toggle:hover,
			form .delete:hover {
				background-color: #FACC15;

				color: white;
			}

		.filter-form .advanced-options {
			display: none;
		}

			.filter-form .advanced-options.show {
				display: block;
			}


/* ! VIEW layouts, which currently inherits FLYOUT for thinner columns, for consistency */

.view-top {
	display: flex;
	align-items: center;
	justify-content: space-between;

	margin-top: 2.4rem;
	margin-bottom: 0.875rem;
}

	.view-top.view-wrapper-content {
		margin-bottom: 0;
		background-color: #fcfcfc;
	}

	.view-top:first-child {
		margin-top: 0;
	}

	.view-top-title {
		margin: 0;

		font: 600 2.6rem/1.1 "Roboto Condensed";
	}

	.view-top-subtitle {
		display: inline-block;
		margin: 0;
		padding: 0;
	}

		.view-top-subtitle dt {
			display: inline-block;
			margin: 0 0.25em 0 0;
			padding: 0;

			font-weight: 400;
			color: #9CA3AF;
		}

		.view-top-subtitle dd {
			display: inline-block;
			margin: 0 0.25em 0 0;
			padding: 0;

			font-weight: 400;
		}

	.view-top *:last-child {}

		.view-top *:last-child > .button {
			margin-left: 1em;
		}

	.view-top .cke {
		margin-top: 1em;
		max-width: 1000px;
	}

.view-footer {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
	justify-content: space-between;

	margin-top: 2.4rem;
	margin-bottom: 0.875rem;
}

	.view-footer .back {
		margin: 0;
		flex-grow: 0.55;
	}

	.view-footer .auditing,
    .view-footer .summary {
		display: inline-block;
		margin: 0;
		padding: 0;

		font-size: 0.875em;
        color: #c9d3d3;
	}

        .view-footer .summary a {
            text-decoration: underline;
        }

		.view-footer .auditing dt {
			display: inline-block;
			margin: 0 0.25em 0 0;
			padding: 0;

			font-weight: 400;
		}

			.view-footer .auditing dt.with-spacing {
				margin-left: 1.25em;
			}

		.view-footer .auditing dd {
			display: inline-block;
			margin: 0 0.25em 0 0;
			padding: 0;

			font-weight: 400;
            color: #9CA3AF;
		}

	.view-footer .order-action-delete {
		margin: 0 0 0 1em;
	}

		.view-footer .order-action-delete button {
			font-size: 0.75em;
			font-weight: 500;
			text-decoration: none;
		}

.view-layout,
.form-layout {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

	margin-left: calc(-9px);
	margin-right: calc(-9px);
	width: calc(100% + 18px);
}

	.view-layout.center,
	.form-layout.center {
		justify-content: center;
	}

	.view-layout.stretch,
	.form-layout.stretch {
		align-items: stretch;
	}

	.view-layout > .view-cell,
	.form-layout > .form-cell,
	.form-layout > .view-cell {
		padding: 0 9px 3px;
	}

		.view-layout > .view-cell.plain {}

		.view-layout.stretch > .view-cell,
		.form-layout.stretch > .form-cell,
		.form-layout.stretch > .view-cell {
			display: flex;
		}

	.view-wrapper,
	.form-wrapper  {
		width: 100%;

		border-radius: 8px;
		margin-bottom: 0.875rem;
		background: rgba(0,0,0,0.025);

		overflow: hidden;
	}

		.view-wrapper {
			border-radius: 12px;
			background-color: white;
			box-shadow: 0 3px 6px rgba(0,0,0,0.05);
		}

			.view-wrapper.flat {
				background-color: #fcfcfc;

				box-shadow: none;
			}

		.view-wrapper:empty,
		.view-wrapper[data-empty] {
			display: flex;
			justify-content: center;
			align-items: center;

			border-radius: 8px;
			min-height: 12em;
			background: #e9e9ee;

			box-shadow: none !important;
		}

			.view-wrapper[data-empty]:before {
				content: attr(data-empty);

				margin: 1.25em 0;

				color: #D1D5DB;
				font-family: "Roboto";
				font-size: 0.8rem;
				font-weight: 400;
				font-style: italic;
				line-height: 1.125;
			}

		.view-wrapper-header {
			display: flex;
			justify-content: space-between;

			padding: 1.25em 1.25em 1em;
			margin: 0;
			background-color: #f9f9f9;

			color: #6B7280;
			font-family: "Roboto";
			font-size: 0.8rem;
			font-weight: 400;
			line-height: 1.125;
			text-align: left;
			text-transform: uppercase;
		}

			.view-wrapper-header:nth-child(n+2) {
				margin-top: 2em;
				border-top: 1px solid #EEF0F2;
			}

			.view-wrapper-external-link {
				float: right;

				color: #B91C1C;
				font-weight: 500;
				text-decoration: none;
			}

				.view-wrapper-external-link.button {
					padding: 3px 6px 2px;
					margin: -0.5em 0 -0.4em 0 !important;

					font-size: 0.85em;
				}

            .view-wrapper-external-link.with-left-margin {
                margin-left: 1rem; /* usually for space between this link and any TEXT to the direct LEFT of it */
            }

		.view-layout h3,
		.form-layout h3 {
			margin: 0 0 3px;

			color: #374151;
			font-family: 'Roboto';
			font-size: 1rem;
			font-weight: 500;
			text-transform: none;
		}

		.view-layout .additional-info,
		.form-layout .additional-info {
			margin: 0.5em 1.5em 1em;

			color: #9CA3AF;
			font-style: italic;
			font-size: 0.875em;
		}

		.view-wrapper-content,
		.form-wrapper-content {
			padding: 1.25em 1.5em 1.5em;
			border-top: 1px solid #EEF0F2;

			font-size: 0.875em;
		}

			.form-wrapper-content {
				padding: 0.5em 1em 0.25em;
			}

			.view-wrapper-content.flex {
				display: flex;
				flex-wrap: wrap;
				align-items: flex-start;
				justify-content: space-between;
			}

				.view-wrapper-block {
					padding-right: 12px;

				}

					.view-wrapper-block:last-child {
						padding-right: 0;
					}

					.view-wrapper-block.flex {
						display: flex;
						flex-wrap: wrap;
						align-items: flex-start;
						justify-content: space-between;
					}

			.view-wrapper-figure {
				display: block;
				width: 4.75rem;
				height: 4.75rem;
				border-radius: 12px;

				overflow: hidden;
			}

				.view-wrapper-figure.view-wrapper-figure-large {
					width: 8.5rem;
					height: 8.5rem;
				}

				.view-wrapper-figure img {
					width: 100%;
					object-fit: cover;
				}

				.view-wrapper-figure:empty {
					background-color: #FDA4AF;
				}

				.view-wrapper-figure:empty:after {
					content: attr(data-initials);

					display: block;
					width: 100%;

					color: white;
					font: 400 2.15rem/2.25em "Roboto Condensed", sans-serif;
					text-align: center;
					text-transform: none;
				}

				.view-top .view-wrapper-figure {
					float: left;
					margin: 0 15px 0 0;
				}

					.view-top .view-wrapper-figure + h1 {
						margin-top: 6px;
					}

						.view-top .view-wrapper-figure + h1[data-welcome]{
							margin-top: 0;
						}

							.view-top .view-wrapper-figure + h1[data-welcome]:before {
								content: attr(data-welcome);

								display: block;

								color: #A8A29E;
								font: 300 0.875rem/1.2 "Roboto", sans-serif;
							}


					.view-top .view-wrapper-figure.capacity-level {
						font: 400 3.2rem/1.75 "Roboto Condensed", sans-serif;
						text-align: center;
						text-transform: none;
					}

			.form-wrapper-content .upblock {
				display: flex;

				margin: 0.5em 0 -0.5em;
			}

				.form-wrapper-content .upblock .input-upload {
					flex-grow: 1;
					margin-left: 1.5em;
				}

			.with-block-icon {
				position: relative;

				padding-left: 2.5rem;
				margin-bottom: 9px;
				margin-top: 3px;
			}

				.with-block-icon:before,
				.with-block-icon > [class*=fa]:first-child {
					content: "i";

					display: block;
					position: absolute;

					top: 0;
					left: 0;

					width: 1.7rem;
					height: 1.7rem;
					border-radius: 6px;
					border: 2px solid transparent;
					background-color: #E5E7EB;

					color: white;
					font-size: 1.25em;
					line-height: 1.2;
					font-family: serif;
					text-align: center;

					overflow: hidden;
				}

				.with-block-icon > [class*=fa]:first-child {
					padding: 2px;
				}

			.view-wrapper-content h4 {
				color: #111827;
				font-size: inherit;
				font-weight: 500;
				margin: 0;
			}

			.view-wrapper-content ul {
				list-style-type: none;
				margin: 0 0 0.5em;
				padding: 0;
			}

			.view-wrapper-content dl {
				margin: 0 0 0.5em;
				padding: 0;
			}

				.view-wrapper-content dl a {
					color: inherit;
					text-decoration: underline;
				}

				.view-wrapper-content dt {
					float: left;
					margin-right: 0.25em;

					font-weight: 400;
				}

				.view-wrapper-content dd {
					margin: 0;

					-ms-word-break: break-all;
					-ms-word-break: break-word;
  					word-break: break-all;
  					word-break: break-word;
				}

			.view-wrapper-content .flyout-card {
				display: flex;

				margin: 0 0 0 -1.5em;
				padding: 0 0 12px -1.5em;
				border-top: 1px solid #EEF0F2;
			}

				.view-wrapper-content .flyout-card:first-child {
					padding-top: 12px;
					border-top: none;
				}

			.view-wrapper-content iframe {
				width: 100%;
				height: 120px;
				border: 0;
				border-radius: 12px;
			}

				.a-viewOrder .view-wrapper-content iframe {
					width: 100%;
                    height: 360px;
                    margin: 0.5rem 0 1rem 0;
				}

					.a-viewOrder .view-wrapper-content iframe:last-child {
						margin-right: -12px;
					}

			.form-wrapper-content fieldset {
				padding: 0;
				border: 0;
				margin: 0 -1em 0.25em;
			}

			.dynamic-input-item {
				padding: 0.5em 1em 0.5em;
				border-bottom: 3px solid #f3f4f4;
			}

			.dynamic-input-item > .checked-delete {
				display: inline-block;
			}

			.dynamic-input-button-add {
				padding: 0.5em;
				margin: 0.5em 1em 1em;
				border: 0;

				color: #B91C1C;
			}

			.dynamic-input-item > .dynamic-input-button-del,
			.dynamic-input-item > .checked-delete > label {
				display: inline-block;
				max-width: 100%;
				width: 2.8rem;
				height: 2.15rem;
				margin: 0;
				padding: 0;
				border: 0;
				border-radius: 6px;
				background: transparent;

				color: #B91C1C;
				font-size: 1.5rem;
				text-align: center;
				line-height: 1.3;
				vertical-align: middle;

				cursor: pointer;
			}

				.dynamic-input-item > .dynamic-input-button-del:hover,
				.dynamic-input-item > .checked-delete > label:hover,
				.dynamic-input-button-add:hover {
					background-color: transparent !important;
					color: #FACC15 !important;
				}

	.profile-splits {
		padding-bottom: 0;
	}

		.profile-splits h2 {
			margin-bottom: 0;
		}

	.form-submit {
		display: block;

		margin: 24px 0;
	}

	.back {
		display: block;
		margin-top: 2.5rem;
	}

/* ! Mapping */

    #map {
        height: 70vh;
        min-height: 400px;
    }

        body.p-home #map {
            height: 100%;
            min-height: 0px;
        }

    /* HTML marker cluster styles */

    .map-cluster {
        position: relative;
        width: 30px;
        height: 30px;

        background-color: #33333388;
        border-radius: 100%;

        color: #eee;
        font-size: 15px;
        font-style: italic;
        line-height: 30px;
        text-align: center;
    }

        .map-cluster.but-bigger {
            width: 50px;
            height: 50px;
            line-height: 50px;
        }

        .map-cluster:before {
            content:"";
            position: absolute;
            top: -15%;
            left: -15%;
            width: 130%;
            height: 130%;
            border-radius: 100%;
            background-color: #33333344;
            z-index: -1;
        }

        .map-cluster:after {
            content:"";
            position: absolute;
            top: -30%;
            left: -30%;
            width: 160%;
            height: 160%;
            border-radius: 100%;
            background-color: #33333322;
            z-index: -2;
        }

    /* HTML marker (pin) styles */

    .map-pin {
        position: relative;
        padding: 4px 12px !important;

        background-color: #9F1239;
        border-color: #9F1239;
        border-radius: 20px;
        color: #FFFFFF;
        font-size: 12px;

        translateY(-14px); /* center of ELEMENT is anchor of marker, so we need to OFFSET the result with CSS to get the anchor to be the "pointer" */
    }

        .map-pin::after {
            content: "";
            position: absolute;
            left: 50%;
            top: 100%;
            transform: translate(-50%, 0);
            width: 0;
            height: 0;
            border-left: 4px solid transparent;
            border-right: 4px solid transparent;
            border-top-width: 6px;
            border-top-style: solid;
            border-top-color: inherit;
        }

/* ! Flyouts */

	body [data-action^="click->"]:hover {
		color: #FACC15;

		cursor: pointer;
	}

	#data-lookup-target {
		position: absolute;

		margin-top: 6px;
		margin-left: -200px;

		padding: 0;
		width: 400px;
		min-height: 200px;
		border-radius: 12px;
		background: white;

		z-index: 10;

		-webkit-box-shadow:  0px 0px 0px 9999px rgba(0, 0, 0, 0.1);
		box-shadow:  0px 0px 0px 9999px rgba(0, 0, 0, 0.1);
	}

		#data-lookup-target.popup-left {
			margin-left: -40px;
		}

		#data-lookup-target.popup-right {
			margin-left: -360px;
		}

		#data-lookup-target.hidden {
			display: none;
		}

		#data-lookup-target:after {
			content: "";

			position: absolute;
			top: -15px;
			left: 50%;
			margin-left: -6px;
			width: 0;
			height: 0;
			border-left: 12px solid transparent;
			border-right: 12px solid transparent;
			border-bottom: 15px solid white;

			z-index: 10;
		}

			#data-lookup-target.popup-left:after {
				margin-left: -40px;
				left: 65px;
			}

			#data-lookup-target.popup-right:after {
				left: 360px;
			}

		#data-lookup-target:before {
			content: "";

			position: absolute;
			top: 0;
			bottom: 0;
			left: 0;
			right: 0;

			border-radius: 12px;

			z-index: -1;

			box-shadow: 0 6px 9px rgba(0,0,0,0.1);
		}

	.flyout-card {
		display: flex;

		padding: 24px;
		border-top: 1px solid #eee;

		color: #6B7280;
	}

        #map .flyout-card {
            padding-top: 0; /* google maps' INFO WINDOW already has built-in top padding for its CLOSE X icon */
        }

		.flyout-card:first-child {
			border-top: none;
		}
        .flyout-card > a {
            display: block;
            margin-bottom: auto;
        }

		.flyout-link {
			display: block;

			min-width: 40px;
			margin-right: 15px;
		}

		.flyout-figure {
			display: block;
			min-width: 40px;
			min-height: 40px;
			max-width: 40px;
			max-height: 40px;
			margin: 0 15px 0 0;
			border-radius: 12px;

			overflow: hidden;
		}

			.flyout-figure.mini {
				min-width: 24px;
				min-height: 24px;
				max-width: 24px;
				max-height: 24px;
				border-radius: 6px;
				margin: 0;
			}

			.flyout-figure img {
				width: 100%;
			}

			.flyout-figure:empty {
				background-color: #FDA4AF;
			}

			.flyout-figure:empty:after {
				content: attr(data-initials);

				display: block;
				width: 100%;
				padding-top: 0.85rem;

				color: white;
				font: 400 1.15rem/1.15 "Roboto Condensed", sans-serif;
				text-align: center;
				text-transform: none;
			}

				.flyout-figure.mini:empty:after {
					font: 300 0.8rem/2em "Roboto Condensed", sans-serif;
				}

			.flyout-figure:empty:hover {
				border-color: #FACC15;
				background-color: #FACC15;
			}

		.flyout-summary {
			width: 100%;
		}

			.flyout-summary .flyout-title {
				margin: 0;

				color: #111827;
				font-size: 1.425em;
				text-transform: none;
			}

			.flyout-summary .flyout-subtitle,
			.flyout-summary .flyout-subtitle dt,
			.flyout-summary .flyout-subtitle dd {
				margin: 0;

				color: #4B5563;
				font-size: 1.15rem;
				font-weight: 400;
				text-transform: none;
			}

				.flyout-summary .flyout-subtitle dt,
				.flyout-summary .flyout-subtitle dd {
					display: inline-block;
					float: none;
				}

					.flyout-summary .flyout-subtitle dd + dt {
						margin-left: 0.5em;
					}

			.flyout-info {
				margin: 9px 0;

				font-size: 0.875rem;
			}

			.flyout-definitions {
				display: block;

				margin: 9px 0;
			}

				.flyout-definitions:after {
					content: " ";
					clear: both;
				}

				.flyout-definitions dt {
					float: left;
					width: 60px;

					font-size: 0.875rem;
					font-weight: 500;
				}

				.flyout-definitions dd {
					margin-left: 70px;
					width: 100%;
					width: calc(100% - 70px);

					font-size: 0.875rem;

					-ms-word-break: break-all;
					-ms-word-break: break-word;
  					word-break: break-all;
  					word-break: break-word;
				}

					.flyout-definitions dd:empty:before {
						content: '-';
					}

			.flyout-info a,
			.flyout-definitions a {
				color: #6B7280;
				text-decoration: underline;
			}

				.flyout-definitions dd a:hover {
					color: #FACC15;
				}

			.flyout-card :last-child {
				margin-bottom: 0.25em;
			}


		.flyout-card form {}

			.flyout-card label.inblock {
				margin-left: 0;
			}

			.flyout-card input,
			.flyout-card select,
			.flyout-card textarea {
				margin-right: 0.5em;
			}

		.flyout-summary .button,
		.button.button-small {
			padding: 6px 9px 4px;

			color: #B91C1C;
			font-weight: 500;
			text-decoration: none;
		}

			.flyout-summary .button:hover {
				color: white;
			}

		.abbrev-flyouts .flyout-subtitle ~ * {
			display: none;
		}

		.flyout-card .message {
			position: relative;
			top: 0;
			left: 0;

			width: 100%;
			padding: 0.5em 1em 0.4em;
			margin: 0 auto 1.5rem;

			font-size: 1rem;
		}

	.summary-line-item {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;

		margin: 0.5em 0 0.5em 60px;
		border-bottom: 1px dashed #EEF0F2;
	}

		.summary-line-item:last-child {
			margin-top: 0;
		}

		.summary-line-item:last-child {
			border-bottom: none;
		}

		.summary-line-item-title {
		}

			.summary-line-item-title p {
				margin: 0.25em 20% 0.25em 1em;

				color: #6B7280;
				font-size: 0.8rem;
			}

		.summary-line-item-costs {
			width: 35%;
			text-align: right;
		}

		.summary-line-item:empty:before {
			content: "";

			width: 65%;
			height: 1.25em;
			margin: 0.5em 0 0;
			border-right: 2px solid white;
			background-color: #f8f9f9;
		}

			.summary-line-item:empty:hover:before {
				background-color: #FACC15;
			}

		.summary-line-item:empty:after {
			content: "";

			width: 35%;
			height: 1.25em;
			margin: 0.5em 0 0;
			background-color: #f5f6f6;
		}

			.summary-line-item:empty:hover:after {
				background-color: #FACC15;
			}

/* ! Date Picker, via jQuery UI */

.ui-datepicker {
	display: flex;
	flex-direction: column;

	padding: 24px;
	border-top: 1px solid #eee;

	width: 400px;
	min-height: 200px;
	border-radius: 12px;
	background: white;

	z-index: 10;

	-webkit-box-shadow: 0 3px 9px rgba(0,0,0,0.2);
		box-shadow: 0 3px 9px rgba(0,0,0,0.2);
}

	.ui-datepicker-header {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}

		.ui-datepicker-header .ui-datepicker-prev {
			order: 0;
		}

		.ui-datepicker-header .ui-datepicker-next {
			order: 99;
		}

		.ui-datepicker-header table td {
			padding: 0.25em;

			text-align: center;
		}

/* ! Tables, with Chart CSS, based off documentation at https://chartscss.org */

.charts-css.bar {
	--color-1: #F43F5E;
	--color-2: #444;
	--color-3: #FCD34D;

	height: auto;

	padding: 18px 12px 24px;
	border-radius: 12px;

	background: white;
	box-shadow: 0 3px 6px rgba(0,0,0,0.05);

	--primary-axis-color: #111827;
	--primary-axis-width: 2px;
}

.charts-css.bar.show-labels {
	--labels-size: 150px;
}

	.charts-css.bar:not(.reverse-datasets):not(.stacked) tbody tr {
		border-bottom: 1px solid #EEF0F2;
	}

	.charts-css.bar:not(.reverse-datasets):not(.stacked) tbody tr:nth-child(odd) {
		background-color: #f9f9f9;

		box-shadow: 12px 0 0 #f9f9f9, -1em 0 0 #f9f9f9;
	}

		.charts-css.bar.show-labels tbody tr th {
			padding: 0 1em 0 0;
			display: block;
			border-bottom: 1px solid #EEF0F2;

			color: #6B7280;
			font-size: 0.7rem;
			font-weight: 400;
			line-height: 3.1em;
			vertical-align: middle;

			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}

			.charts-css.bar:not(.reverse-datasets):not(.stacked) tbody tr:last-child(odd) th {
				border-bottom: none;
			}

			.charts-css.bar:not(.reverse-datasets):not(.stacked) tbody tr:nth-child(odd) th {
				background-color: #f9f9f9;

				box-shadow: -12px 0 0 #f9f9f9;
			}

		.charts-css.bar tbody td {
			border-top-right-radius: 6px;
			border-bottom-right-radius: 6px;

			padding: .25em .5em .175em;
			min-width: 1.4em;

			color: #fff;
		}

			.charts-css.bar tbody span.data {
			  padding: 0.15em 0.5em 0 0;

			  color: white;
			  font-size: 0.7rem;
			  font-weight: 500;
			  line-height: 1.6em;

			  white-space: nowrap;
			  overflow: hidden;
			}


/* ! Tables, public cell' lists */

.table-list {
	margin-bottom: 15px;
	border-radius: 12px;
	background-color: white;

	color: #6B7280;
	font-size: 0.875em;

	overflow: hidden;

	box-shadow: 0 3px 6px rgba(0,0,0,0.05);
}

    .table-list.table-list-flat {
        background-color: #f9f9f9;

        box-shadow: none;
    }

        .table-list-flat + .invoice-disclaimer {
            margin: 1rem auto 2rem;

            color: #999;
            font-size: 0.875rem;
            font-style: italic;
        }

	.table-list thead {
		background-color: #f9f9f9;
	}

		.table-list th {
			padding: 1.25em 0.5em 1em;
		}

			.table-list th:first-child {
				padding-left: 1.5em;
			}

			.table-list th:last-child {
				padding-right: 1.5em;
			}

			.table-list th.right:not(:last-child) {
				padding-left: 0.5em;
				padding-right: 2em;
			}

			.table-list tbody th {
				vertical-align: top;
				border-top: 1px solid #EEF0F2;

				color: #111827;
				font-size: inherit;
				font-weight: 500;
				text-transform: none;
			}

			.table-list th.sorting a {
				color: inherit;
				text-decoration: underline;
			}

			.table-list th.sorting.sorting-asc:after {
				content: "⬇";
				margin-left: 0.25em;
			}

			.table-list th.sorting.sorting-desc:after {
				content: "⬆";
				margin-left: 0.25em;
			}

			.table-capacity th {}

				.table-capacity th:first-child {
					padding: 0;
				}

	.table-list tfoot {}

		.table-list tfoot td {
			vertical-align: baseline;
		}

	.table-list tbody {}

		.table-list.scrolling tbody {
			height: 24em;
			overflow-y: scroll;
			display: block;
		}

			.table-list.scrolling tbody::-webkit-scrollbar {
				-webkit-appearance: none;
				width: 10px;
				background-color: #eee;
			}

			.table-list.scrolling tbody::-webkit-scrollbar-thumb {
				border-radius: 5px;
				background-color: rgba(0,0,0,.5);
				-webkit-box-shadow: 0 0 1px rgba(255,255,255,.5);
			}

		.table-list.scrolling tbody tr {
			display: table;
		    width: 100%;
		    table-layout: fixed;
		}

		.table-list td {
			padding: 1.25em 0.5em 1em;

			vertical-align: middle;
		}

			.table-list td:first-child {
				padding-left: 1.5em;
			}

			.table-list td:last-child {
				padding-right: 1.5em;
			}

			.table-list td.right:not(:last-child) {
				padding-left: 0.5em;
				padding-right: 2em;
			}

			.table-list td.with-squircle {
				padding: 0.75em 0 0.5em 1em;
				width: 4.3rem;

				vertical-align: baseline;
			}

			.table-list td.no-rows {
				padding: 1.25em;

				vertical-align: middle;

				color: #E5E7EB;
				font-style: italic;
				text-align: center;
			}

			.table-capacity td:first-child a {
				display: flex;
				align-items: baseline;
			}

				.table-capacity td:first-child a [class*="fa-"] {
					margin-right: 0.35em;
				}

			.table-list p {
				line-height: 1.3;
				margin: 0 0 0.5em;
			}

			.table-list .larger {
				font-size: 1.1em;
				line-height: 1.25;
			}

			.table-list dl {
				display: inline-block;

				margin: 0;
				padding: 0;

				line-height: 1.4;
			}

				.table-list dl:after {
					content: "";
					clear: both;
				}

				.table-list dt {
					display: none;

					float: left;
					clear:left;

					margin: 0 0.25em 0 0;
					padding: 0;

					color: #111827;
				}

					.table-list :hover dt {
						color: inherit;
					}

					.table-list dt.show {
						display: inline-block;
						clear: left;

						font-weight: 500;
					}

					.table-list dt.inblock {
						display: inline;

						float: none;
					}

					.table-list dd + dt.inblock:before {
						content: '';
						display:block;
						width: 50%;
					}

				.table-list dd {
					display: block;
					margin: 0;
					padding: 0;

					-ms-word-break: break-all;
					-ms-word-break: break-word;
  					word-break: break-all;
  					word-break: break-word;
				}

					.table-list dd.inblock {
						display: inline-block;
					}

					.table-list dd:nth-child(2) {
						font-weight: 500;
						color: #111827;
					}

						.table-list dl[data-action]:hover dd:nth-child(2) {
							color: inherit;
						}

					.table-list dt.show + dd {
						font-weight: 400;
						color: inherit;
					}

					.table-list dd:nth-child(n+5) {
						font-size: 0.875em;
					}

			.table-list :last-child {
				margin-bottom: 0;
			}

/* Tables, schedule */

.five-day-schedule {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
}

	.five-day-schedule table {
		width: 19%;
	}

	.table-list .schedule-address {

	}

	.table-list .schedule-description {
		padding: .5em;
		font-style: italic;
		color: #999;
	}

/* Tables Accounting  */
.accounting-report-list {
		box-shadow: none;
	}

		.accounting-report-list th {
			padding: 1em 1.25em 0.5em !important;
		}

		.accounting-report-list tbody td {
			padding: 0.65em 1.25em 0.5em !important;
		}

			.accounting-report-list tbody td .larger a {
				text-decoration: underline;
			}

		.accounting-report-list tfoot td {
			text-align: center;
			vertical-align: middle;
		}

			.accounting-report-list tfoot td .toggle-check-all {
				display: block;
				padding: 0.25em 0.75em 0.125em;
				border-radius: 2em;

				color: #B91C1C;
				line-height: 1;

				cursor: pointer;
			}

				.accounting-report-list tfoot td .toggle-check-all:hover {
					background-color: #FBBF24;

					color: white;
				}

	.accounting-report-list input,
	.accounting-report-list select {
		margin: 0 auto;
		padding: .25em .75em;
	}

		.accounting-report-list .input-select {
			margin: 0 auto;
		}

		.accounting-report-list .input-checkbox {
			margin: 0 auto;
		}

			.accounting-report-list .input-checkbox input {
				margin-left: auto;
				margin-right: auto;
			}

		.accounting-report-list .input-currency  {
			max-width: 120px;
			margin: 0 auto;
		}

			.accounting-report-list .input-prefix {
				padding: 0.25em 0.15em 0.25em 0.35em;
			}

			.accounting-report-list .input-currency input  {
				max-width: 80%;

				text-align: right;
			}

/* Documents */

	.document-cat-name {
		width: 100%;
	}

		.document-category + .document-category .document-cat-name {
			margin-top: 1em;
		}

	.document-cat-desc {
		width: 100%;
	}

	.document-category .view-layout p {
		margin: 0;
	}

	.document-category .view-layout .document-desc {
		width: 50%;
	}

/* ! Dashboard */

.s-main.p-home main {
	padding-top: 10px;
}

	.s-main.p-home main:before {
		content: "";

		position: absolute;
		top: -1px;
		left: 0;
		width: 100%;
		height: 100px;
		background: #9F1239;

		z-index: 0;
	}

	.s-main.p-home main .container {
		z-index: 1;
	}

		.s-main.p-home .main-region > .view-layout:first-child .view-wrapper {
            position: relative;

			margin-bottom: 24px;

			box-shadow: 0 3px 6px rgba(0,0,0,0.1);
		}

            .s-main.p-home .main-region > .view-layout:first-child .view-wrapper .map+.view-wrapper-external-link {
                position: absolute;
                top: 0;
                right: 0;

                padding: 0.25rem 0.5rem;
                background: white;

                z-index: 999999;
            }

	.dashboard-logged-in-profile {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}

		.dashboard-logged-in-profile form {
			margin-bottom: 0;
		}

.announcement-list-item {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

	.announcement-list-item a {

	}

	.announcement-list-item .announcement-summary {
		width: 85%;
	}

		.announcement-list-item .announcement-summary p {
			display: -webkit-box;
			-webkit-box-orient: vertical;

			line-clamp: 3;
			-o-ellipsis-lastline: 3;
			-webkit-line-clamp: 3;

			overflow: hidden;
		}

		.announcement-list-item .announcement-summary :last-child {
			margin-bottom: 0;
		}

.order-status-list-item {
	display: flex;
	flex-direction: row;
}

	.order-status-list-item .view-wrapper-figure {
		width: 2.85rem;
		height: 2.85rem;
		margin-right: 1.3rem;
	}

		.order-status-list-item .view-wrapper-figure:empty:after {
			color: inherit;
			font: 500 1.3rem/2.2 "Roboto Condensed", sans-serif;
		}

		.order-status-list-item a.view-wrapper-figure:hover {
			background-color: #FACC15 !important;
			color: white !important;
		}

	.order-status-list-item .order-status-summary {
	}

		.order-status-list-item .order-status-summary p {
			margin-bottom: 0.25em;
		}

.volume-change-item {
	flex: 1 1 0px;
}

	.volume-change-item .view-wrapper-figure {
		width: 1.7rem;
		height: 1.7rem;
		margin-right: 0.8rem;
		border-radius: 6px;
	}

		.volume-change-item .view-wrapper-figure [class*='fa-'] {
			width: 100%;
			margin: 0;

			font-size: 1.5rem;
			text-align: center;
		}

.order-log-list-item {
	display: flex;
	flex-direction: row;

	padding: 1.25em 1.5em 0.5em;
	border-top-width: 0;
}
	.order-log-list-item:first-of-type {
		border-top-width: 1px;
	}

	.order-log-list-item .view-wrapper-figure,
	.order-log-list-item .squircle {
		position: relative;

		display: flex;
		justify-content: center;
		align-items: center;

		margin-top: -6px;

		width: 3.6rem;
		height: 3.6rem;
		margin-right: 1.3rem;
		border: 5px solid white;
		background: white;

		font-size: 1.7rem;
		text-align: center;

		overflow: initial;
	}

		.order-log-list-item .order-log-appointment,
		.order-log-list-item .order-log-appointment:hover,
		.order-log-list-item .order-log-appointment > [class*="fa-"],
		.order-log-list-item .order-log-appointment:hover > [class*="fa-"] {
			background: white;

			color: #64748B;
		}

		.order-log-list-item .view-wrapper-figure {
			background: #E5E7EB;

			color: #374151;
		}

		.order-log-list-item .view-wrapper-figure.new-order,
		.order-log-list-item .view-wrapper-figure.new-order:hover,
		.order-log-list-item .view-wrapper-figure.new-order > [class*="fa-"],
		.order-log-list-item .view-wrapper-figure.new-order:hover > [class*="fa-"] {
			background: white;

			color: #64748B;
		}

		.order-log-list-item .view-wrapper-figure [class*='fa-check'] {
			font-size: 1.3rem;
		}

		.order-log-list-item.order-log-last .view-wrapper-figure [class*='fa-check'] {
			display: none;
		}

			.order-log-list-item .view-wrapper-figure.status-completed [class*='fa'] {
				display: inline-block;
			}

		.order-log-list-item .view-wrapper-figure:after,
		.order-log-list-item .squircle:after {
			content: "";

			position: absolute;
			top: 3.2rem;
			left: 45%;

			width: 1px;
			height: 2.85rem;
			border-left: 3px solid #E2E8F0;
		}

			.order-log-list-item .view-wrapper-figure.new-order:after {
				top: 2.85rem;
			}

			.order-log-list-item .view-wrapper-figure.status-cancelled:after,
			.order-log-list-item .view-wrapper-figure.status-order-declined:after {
				border-left: 3px dotted #F1F5F9;
			}

			.order-log-list-item:last-child .view-wrapper-figure:after,
			.order-log-list-item:last-child .squircle:after {
				display: none;
			}

			.order-log-list-item.order-log-last .view-wrapper-figure::after {
				border-left-style: dotted;
			}

	.order-log-list-item .order-status-summary {
	}

		.order-log-list-item .order-status-summary p {
			margin-bottom: 0;
		}

		.order-log-list-item .view-wrapper-figure.status-overdue + .order-status-summary > *,
		.order-log-list-item .view-wrapper-figure.status-cancelled + .order-status-summary > *,
		.order-log-list-item .view-wrapper-figure.status-order-declined + .order-status-summary > * {
			color: #DC2626;
		}

		.order-log-list-item .order-status-summary .order-status-message {
			margin: 0.25em 0 0.25em 1em;

			color: #6B7280;
			font-size: 0.8rem;
		}

	.order-log-list-item.create-appointment {
		position: relative;

		display: block;
		padding-top: 3em;

		text-align: center;

		z-index: 10;
	}


/* ! Site Footer	*/

.site-footer {
	position: relative;
	clear: both;
	padding: 2em 0 1em;
	margin: 0;
	background-color: #223;

	color: rgba(255,255,255,0.5);
	text-align: center;
}
	.site-footer .container { max-width: 1200px; }

/* ! Error Pages */

.error-header {
	font-size: 3.5rem;
}
.error-code {
	font-size: 0.875rem;
}


/* ! PLAIN template */

.t-plain {
	background: #9F1239;
}

	.t-plain header {
		display: flex;
		justify-content: flex-end;
		flex-direction: column;
		flex-grow: 1;

		margin: 0;
		padding: 0;
		background: transparent;
	}

		.t-plain .site-title {
			width: 60%;
			margin: 3em auto 1em;
			border-bottom: none;
		}

		.t-plain .site-title > a {
			left: 0;
			margin: 0 0 2%;
			width: 100%;
			height: 150px;

			background-position: center center;
			background-image: url("../../img/header-logo-white-vertical.svg");

			opacity: 0.5;
		}

	.t-plain main,
	.t-plain .main-region {
		padding: 0;
		margin: 0 auto;
		width: 440px;
		background: none;

		color: white;
		text-align: center;
	}

		.t-plain main {
			display: block;
		}

	.t-plain label {
		color: #E1C2C2;
	}

	.t-plain input {
		border: none;
		width: 100%;

		text-align: center;
	}

	.t-plain a {
		color: #E1C2C2;
		text-decoration: underline;
	}

		.t-plain a:hover {
			color: white;
		}

	.t-plain .button {
		display: block;
		margin: 2em auto 2em;
		border: none;
		background-color: #1F2937;

		color: white;
	}

	.t-plain .button:not([type="submit"]) {
		border: none;
		background: none;
		color: #E1C2C2;
		text-transform: none;
		font-weight: inherit;
		font-size: inherit;
		font-family: inherit;
	}

		.t-plain .button:hover {
			color: white;
		}

			.t-plain .controls-group > .button + .button {
				margin: 0;
			}

	.t-plain .site-footer {
		margin: 0 auto 1em;
		width: 800px;
		border-top: 1px solid #AE5C5C;
		background: none;

		color: #AE5C5C;
		text-align: center;
	}

/* ! EMAIl messages, displayed within STAFF and CLIENT areas */


.email-message {
	font-size: 1rem;
}

	.email-message h1,
	.email-message .view-top-title {
		font-size: 1.8rem;
	}

	.email-message h2 {
		margin: 2.1rem 0 12px 0;

		font-size: 1.5rem;
		line-height: 1.125;
	}

	.email-message h3 {
		color: #111827;
		font-size: 1rem;
		font-weight: 500;
	}

.email-message table {
	text-align: left;
	margin: 15px 0 30px 0;
	border-top: 2px solid #D1D5DB;
}

	.email-message table th,
	.email-message table td {
		padding: 12px;
		border-bottom: 1px solid #E5E7EB;
	}

		.email-message table th ,
		.email-message table tbody th {
			vertical-align: middle;

			color: #111827;
			font-size: inherit;
			font-weight: 500;
			line-height: inherit;
			text-transform: none;
		}
