@import url(fontawesome-all.min.css);
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,300i,400i");

/*
	Ethereal by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	-webkit-text-size-adjust: none;
}

mark {
	background-color: transparent;
	color: inherit;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

/* Page */

	@-moz-keyframes load-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@-webkit-keyframes load-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@-ms-keyframes load-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@keyframes load-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@-ms-viewport {
		width: device-width;
	}

	html {
		width: 100%;
		height: 100%;
	}

	html {
		box-sizing: border-box;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	body {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-align-items: center;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-moz-justify-content: -moz-flex-start;
		-webkit-justify-content: -webkit-flex-start;
		-ms-justify-content: -ms-flex-start;
		justify-content: flex-start;
		-ms-overflow-style: scrollbar;
		width: 100%;
		height: 100%;
		min-height: 30rem;
		overflow: hidden;
	}

		body:before {
			-moz-animation: load-spinner 1s infinite linear;
			-webkit-animation: load-spinner 1s infinite linear;
			-ms-animation: load-spinner 1s infinite linear;
			animation: load-spinner 1s infinite linear;
			-moz-transition: opacity 0.25s ease;
			-webkit-transition: opacity 0.25s ease;
			-ms-transition: opacity 0.25s ease;
			transition: opacity 0.25s ease;
			-moz-transition-delay: 0s;
			-webkit-transition-delay: 0s;
			-ms-transition-delay: 0s;
			transition-delay: 0s;
			pointer-events: none;
			content: '';
			display: block;
			position: absolute;
			top: 50%;
			left: 50%;
			width: 4rem;
			height: 4rem;
			margin: -2rem 0 0 -2rem;
			background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='96px' height='96px' viewBox='0 0 96 96' zoomAndPan='disable'%3E%3Cstyle%3Ecircle %7Bfill: transparent%3B stroke: %232e2b37%3B stroke-width: 1.5px%3B %7D%3C/style%3E%3Cdefs%3E%3CclipPath id='corner'%3E%3Cpolygon points='0,0 48,0 48,48 96,48 96,96 0,96' /%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23corner)'%3E%3Ccircle cx='48' cy='48' r='32'/%3E%3C/g%3E%3C/svg%3E");
			background-position: center;
			background-repeat: no-repeat;
			background-size: 4rem;
			opacity: 0;
		}

		body:after {
			pointer-events: none;
			content: '';
			display: block;
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: -1;
			background-attachment: fixed;
			background-color: #e1e6e1;
			background-image: url("../../images/overlay.png"), url("../../images/bg.jpg");
			background-repeat: repeat, repeat-x;
			background-size: 128px 128px, cover;
		}

		body.is-preload *, body.is-preload *:before, body.is-preload *:after {
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
		}

		body.is-preload:before {
			-moz-transition: opacity 1s ease;
			-webkit-transition: opacity 1s ease;
			-ms-transition: opacity 1s ease;
			transition: opacity 1s ease;
			-moz-transition-delay: 0.75s;
			-webkit-transition-delay: 0.75s;
			-ms-transition-delay: 0.75s;
			transition-delay: 0.75s;
			opacity: 0.25;
		}

	@media screen and (max-width: 736px) {

		html {
			height: auto;
		}

		body {
			height: auto;
			overflow-x: hidden;
			overflow-y: auto;
		}

	}

	@media screen and (max-width: 480px) {

		html, body {
			min-width: 320px;
		}

	}

/* Typography */

	html {
		font-size: 18pt;
		font-size: 1vmax;
	}

		@media screen and (max-width: 1680px) {

			html {
				font-size: 12pt;
				font-size: 1.1vmax;
			}

		}

		@media screen and (max-width: 1280px) {

			html {
				font-size: 11pt;
				font-size: 1.5vmax;
			}

		}

	body, input, select, textarea {
		color: rgba(255, 255, 255, 0.75);
		font-family: "Source Sans Pro", Helvetica, sans-serif;
		font-size: 1rem;
		font-weight: 300;
		line-height: 1.65;
	}

	a {
		-moz-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		color: inherit;
		border-bottom: dotted 1px;
		text-decoration: none;
	}

		a:hover {
			border-bottom-color: transparent;
			color: #ffe4b4;
		}

	strong, b {
		color: rgba(255, 255, 255, 0.875);
		font-weight: 400;
	}

	em, i {
		font-style: italic;
	}

	p {
		margin: 0 0 1.5rem 0;
	}

		body.is-ie p {
			width: 100%;
		}

	h1, h2, h3, h4, h5, h6 {
		color: rgba(255, 255, 255, 0.875);
		font-family: Arial, Helvetica, sans-serif;
		font-weight: 700;
		line-height: 1.3;
		margin: 0 0 0.75rem 0;
		letter-spacing: -0.05em;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h1.major, h2.major, h3.major {
		position: relative;
	}

		h1.major:after, h2.major:after, h3.major:after {
			content: '';
			position: absolute;
			left: 0;
			width: 3.5rem;
			height: 0.1rem;
			background-color: rgba(255, 255, 255, 0.25);
		}

	h1 {
		font-size: 3rem;
		line-height: 1.2;
	}

		h1.major {
			margin: 0 0 2.625rem 0;
		}

			h1.major:after {
				bottom: -1.325rem;
			}

	h2 {
		font-size: 1.75rem;
		line-height: 1.2;
	}

		h2.major {
			margin: 0 0 1.9875rem 0;
		}

			h2.major:after {
				bottom: -1.2rem;
			}

	h3 {
		font-size: 1.325rem;
	}

		h3.major {
			margin: 0 0 1.875rem 0;
		}

			h3.major:after {
				bottom: -0.75rem;
			}

	h4 {
		font-size: 1rem;
	}

	h5 {
		font-size: 0.9rem;
	}

	h6 {
		font-size: 0.7rem;
	}

	sub {
		font-size: 0.8rem;
		position: relative;
		top: 0.5rem;
	}

	sup {
		font-size: 0.8rem;
		position: relative;
		top: -0.5rem;
	}

	blockquote {
		border-left: solid 0.25rem rgba(255, 255, 255, 0.25);
		font-style: italic;
		margin: 0 0 1.5rem 0;
		padding: 0.375rem 0 0.375rem 1.5rem;
	}

	code {
		background: rgba(255, 255, 255, 0.075);
		border-radius: 0.25rem;
		font-family: "Courier New", monospace;
		font-size: 0.8rem;
		margin: 0 0.25rem;
		padding: 0.25rem 0.65rem;
	}

	pre {
		-webkit-overflow-scrolling: touch;
		font-family: "Courier New", monospace;
		font-size: 0.8rem;
		margin: 0 0 1.5rem 0;
		white-space: pre-wrap;
	}

		pre code {
			display: block;
			line-height: 1.625;
			padding: 1rem 1.5rem;
			overflow-x: auto;
			margin: 0;
		}

	hr {
		border: 0;
		border-bottom: solid 2px rgba(255, 255, 255, 0.25);
		margin: 1.875rem 0;
	}

	.align-left {
		text-align: left;
	}

	.align-center {
		text-align: center;
	}

	.align-right {
		text-align: right;
	}

	@media screen and (max-width: 736px) {

		html {
			font-size: 12pt;
		}

		h1 {
			font-size: 2.25rem;
			line-height: 1.2;
		}

			h1.major {
				margin: 0 0 2.625rem 0;
			}

				h1.major:after {
					bottom: -1.325rem;
				}

		h2 {
			font-size: 1.5rem;
			line-height: 1.2;
		}

			h2.major {
				margin: 0 0 1.9875rem 0;
			}

				h2.major:after {
					bottom: -1.2rem;
				}

		h3 {
			font-size: 1rem;
		}

			h3.major {
				margin: 0 0 1.875rem 0;
			}

				h3.major:after {
					bottom: -0.75rem;
				}

		h4 {
			font-size: 1rem;
		}

		h5 {
			font-size: 0.9rem;
		}

		h6 {
			font-size: 0.7rem;
		}

		h1 br, h2 br, h3 br, h4 br, h5 br, h6 br {
			display: none;
		}

	}

	@media screen and (max-width: 360px) {

		html {
			font-size: 11pt;
		}

	}

/* Form */

	form {
		margin: 0 0 1.5rem 0;
	}

		form > :last-child {
			margin-bottom: 0;
		}

		form > .fields {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-wrap: wrap;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			width: calc(100% + 3rem);
			margin: -1.5rem 0 1.5rem -1.5rem;
		}

			form > .fields > .field {
				-moz-flex-grow: 0;
				-webkit-flex-grow: 0;
				-ms-flex-grow: 0;
				flex-grow: 0;
				-moz-flex-shrink: 0;
				-webkit-flex-shrink: 0;
				-ms-flex-shrink: 0;
				flex-shrink: 0;
				padding: 1.5rem 0 0 1.5rem;
				width: calc(100% - 1.5rem);
			}

				form > .fields > .field.half {
					width: calc(50% - 0.75rem);
				}

				form > .fields > .field.third {
					width: calc(100%/3 - 0.5rem);
				}

				form > .fields > .field.quarter {
					width: calc(25% - 0.375rem);
				}

		@media screen and (max-width: 736px) {

			form > .fields {
				width: calc(100% + 2.25rem);
				margin: -1.125rem 0 1.5rem -1.125rem;
			}

				form > .fields > .field {
					padding: 1.125rem 0 0 1.125rem;
					width: calc(100% - 1.125rem);
				}

					form > .fields > .field.half {
						width: calc(100% - 1.125rem);
					}

					form > .fields > .field.third {
						width: calc(100% - 1.125rem);
					}

					form > .fields > .field.quarter {
						width: calc(100% - 1.125rem);
					}

		}

	label {
		color: rgba(255, 255, 255, 0.875);
		display: block;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 0.8rem;
		font-weight: 700;
		margin: 0 0 0.4875rem 0;
	}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="tel"],
	select,
	textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		background: transparent;
		border: solid 2px rgba(255, 255, 255, 0.25);
		border-radius: 0.25rem;
		color: inherit;
		display: block;
		outline: 0;
		padding: 0 0.75rem;
		text-decoration: none;
		width: 100%;
	}

		input[type="text"]:invalid,
		input[type="password"]:invalid,
		input[type="email"]:invalid,
		input[type="tel"]:invalid,
		select:invalid,
		textarea:invalid {
			box-shadow: none;
		}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		input[type="tel"]:focus,
		select:focus,
		textarea:focus {
			border-color: #ffe4b4;
		}

	option {
		background-color: rgba(255, 255, 255, 0.875);
		color: #2e2b37;
	}

	select {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(255, 255, 255, 0.25)' /%3E%3C/svg%3E");
		background-size: 1.25rem;
		background-repeat: no-repeat;
		background-position: calc(100% - 1rem) center;
		height: 2.5rem;
		padding-right: 2.5rem;
		text-overflow: ellipsis;
	}

		select option {
			color: rgba(255, 255, 255, 0.875);
			background: #2e2b37;
		}

		select:focus::-ms-value {
			background-color: transparent;
		}

		select::-ms-expand {
			display: none;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select {
		height: 2.5rem;
	}

	textarea {
		padding: 0.75rem 1rem;
	}

	input[type="checkbox"],
	input[type="radio"] {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		display: block;
		float: left;
		margin-right: -2rem;
		opacity: 0;
		width: 1rem;
		z-index: -1;
	}

		input[type="checkbox"] + label,
		input[type="radio"] + label {
			text-decoration: none;
			position: relative;
			color: rgba(255, 255, 255, 0.75);
			cursor: pointer;
			display: inline-block;
			font-size: 1rem;
			font-weight: 300;
			margin-bottom: 0;
			padding-left: 2.5rem;
			padding-right: 1rem;
		}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font-family: 'Font Awesome 5 Free';
				font-weight: 900;
			}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				content: '';
				display: inline-block;
				font-size: 0.8rem;
				position: absolute;
				top: 0;
				left: 0;
				width: 1.6875rem;
				height: 1.6875rem;
				line-height: 1.6875rem;
				background: rgba(255, 255, 255, 0.075);
				border: solid 1px rgba(255, 255, 255, 0.25);
				border-radius: 0.25rem;
				color: #2e2b37;
				text-align: center;
			}

				body.is-ie input[type="checkbox"] + label:before, body.is-ie
				input[type="radio"] + label:before {
					line-height: 1.5;
				}

		input[type="checkbox"]:checked + label:before,
		input[type="radio"]:checked + label:before {
			content: '\f00c';
			background: rgba(255, 255, 255, 0.875);
			border-color: rgba(255, 255, 255, 0.875);
		}

		input[type="checkbox"]:focus + label:before,
		input[type="radio"]:focus + label:before {
			border-color: #ffe4b4;
			box-shadow: 0 0 0 1px #ffe4b4;
		}

		input[type="checkbox"]:focus:checked + label:before,
		input[type="radio"]:focus:checked + label:before {
			background: #ffe4b4;
		}

		input[type="checkbox"].color1 + label:before,
		input[type="radio"].color1 + label:before {
			color: #726193;
		}

		input[type="checkbox"].color2 + label:before,
		input[type="radio"].color2 + label:before {
			color: #e37b7c;
		}

		input[type="checkbox"].color3 + label:before,
		input[type="radio"].color3 + label:before {
			color: #ffe4b4;
		}

		input[type="checkbox"].color4 + label:before,
		input[type="radio"].color4 + label:before {
			color: #353865;
		}

	input[type="checkbox"] + label:before {
		border-radius: 0.25rem;
	}

	input[type="radio"] + label:before {
		border-radius: 100%;
	}

	::-webkit-input-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	:-moz-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	::-moz-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

	:-ms-input-placeholder {
		color: rgba(255, 255, 255, 0.5) !important;
		opacity: 1.0;
	}

/* Icon */

	.icon {
		text-decoration: none;
		position: relative;
		border-bottom: none;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font-family: 'Font Awesome 5 Free';
			font-weight: 400;
		}

		.icon > .label {
			display: none;
		}

		.icon:before {
			line-height: inherit;
		}

		.icon.solid:before {
			font-weight: 900;
		}

		.icon.brands:before {
			font-family: 'Font Awesome 5 Brands';
		}

/* Image */

	.image {
		display: inline-block;
		position: relative;
		border: 0;
	}

		.image.filtered:after {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
			background-size: 128px 128px, auto;
			pointer-events: none;
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 1;
			z-index: 1;
		}

		.image.filtered.tinted:after {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25)), linear-gradient(0deg, rgba(0, 0, 0, 0.125), rgba(0, 0, 0, 0.125));
			background-size: 128px 128px, auto, auto;
		}

		.image[data-position] img {
			-moz-object-fit: cover;
			-webkit-object-fit: cover;
			-ms-object-fit: cover;
			object-fit: cover;
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

		.image[data-position="top left"] img {
			-moz-object-position: top left;
			-webkit-object-position: top left;
			-ms-object-position: top left;
			object-position: top left;
		}

		.image[data-position="top"] img {
			-moz-object-position: top;
			-webkit-object-position: top;
			-ms-object-position: top;
			object-position: top;
		}

		.image[data-position="top right"] img {
			-moz-object-position: top right;
			-webkit-object-position: top right;
			-ms-object-position: top right;
			object-position: top right;
		}

		.image[data-position="right"] img {
			-moz-object-position: right;
			-webkit-object-position: right;
			-ms-object-position: right;
			object-position: right;
		}

		.image[data-position="bottom right"] img {
			-moz-object-position: bottom right;
			-webkit-object-position: bottom right;
			-ms-object-position: bottom right;
			object-position: bottom right;
		}

		.image[data-position="bottom"] img {
			-moz-object-position: bottom;
			-webkit-object-position: bottom;
			-ms-object-position: bottom;
			object-position: bottom;
		}

		.image[data-position="bottom left"] img {
			-moz-object-position: bottom left;
			-webkit-object-position: bottom left;
			-ms-object-position: bottom left;
			object-position: bottom left;
		}

		.image[data-position="left"] img {
			-moz-object-position: left;
			-webkit-object-position: left;
			-ms-object-position: left;
			object-position: left;
		}

		.image[data-position="center"] img {
			-moz-object-position: center;
			-webkit-object-position: center;
			-ms-object-position: center;
			object-position: center;
		}

		.image[data-position="25% 25%"] img {
			-moz-object-position: 25% 25%;
			-webkit-object-position: 25% 25%;
			-ms-object-position: 25% 25%;
			object-position: 25% 25%;
		}

		.image[data-position="75% 25%"] img {
			-moz-object-position: 75% 25%;
			-webkit-object-position: 75% 25%;
			-ms-object-position: 75% 25%;
			object-position: 75% 25%;
		}

		.image[data-position="75% 75%"] img {
			-moz-object-position: 75% 75%;
			-webkit-object-position: 75% 75%;
			-ms-object-position: 75% 75%;
			object-position: 75% 75%;
		}

		.image[data-position="25% 75%"] img {
			-moz-object-position: 25% 75%;
			-webkit-object-position: 25% 75%;
			-ms-object-position: 25% 75%;
			object-position: 25% 75%;
		}

		.image img {
			display: block;
		}

		.image.left, .image.right {
			max-width: 40%;
		}

			.image.left img, .image.right img {
				width: 100%;
			}

		.image.left {
			float: left;
			padding: 0 1.5rem 1rem 0;
			top: 0.25rem;
		}

		.image.right {
			float: right;
			padding: 0 0 1rem 1.5rem;
			top: 0.25rem;
		}

		.image.fit {
			display: block;
			margin: 0 0 1.5rem 0;
			width: 100%;
		}

			.image.fit img {
				width: 100%;
			}

		.image.main {
			display: block;
			margin: 0 0 2.25rem 0;
			width: 100%;
		}

			.image.main img {
				width: 100%;
			}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 1.5rem 0;
		padding-left: 1.25rem;
	}

		ol li {
			padding-left: 0.25rem;
		}

	ul {
		list-style: disc;
		margin: 0 0 1.5rem 0;
		padding-left: 1rem;
	}

		ul li {
			padding-left: 0.5rem;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px rgba(255, 255, 255, 0.25);
				padding: 0.5rem 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

	dl {
		margin: 0 0 1.5rem 0;
	}

		dl dt {
			display: block;
			font-weight: 400;
			margin: 0 0 0.75rem 0;
		}

		dl dd {
			margin-left: 1.5rem;
		}

/* Actions */

	ul.actions {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		cursor: default;
		list-style: none;
		margin-left: -0.75rem;
		padding-left: 0;
	}

		ul.actions li {
			padding: 0 0 0 0.75rem;
			vertical-align: middle;
		}

		ul.actions.special {
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			width: 100%;
			margin-left: 0;
		}

			ul.actions.special li:first-child {
				padding-left: 0;
			}

		ul.actions.stacked {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			margin-left: 0;
		}

			ul.actions.stacked li {
				padding: 0.975rem 0 0 0;
			}

				ul.actions.stacked li:first-child {
					padding-top: 0;
				}

		ul.actions.fit {
			width: calc(100% + 0.75rem);
		}

			ul.actions.fit li {
				-moz-flex-grow: 1;
				-webkit-flex-grow: 1;
				-ms-flex-grow: 1;
				flex-grow: 1;
				-moz-flex-shrink: 1;
				-webkit-flex-shrink: 1;
				-ms-flex-shrink: 1;
				flex-shrink: 1;
				width: 100%;
			}

				ul.actions.fit li > * {
					width: 100%;
				}

			ul.actions.fit.stacked {
				width: 100%;
			}

/* Icons */

	ul.icons {
		cursor: default;
		list-style: none;
		padding-left: 0;
	}

		ul.icons li {
			display: inline-block;
			padding: 0 1rem 0 0;
		}

			ul.icons li:last-child {
				padding-right: 0;
			}

			ul.icons li .icon:before {
				font-size: 1.25em;
			}

/* Grid Icons */

	ul.grid-icons {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		list-style: none;
		margin: 0 0 1.5rem 0;
		padding-left: 0;
	}

		ul.grid-icons .icon {
			display: block;
			position: relative;
			width: 100%;
			text-align: center;
		}

			ul.grid-icons .icon:before {
				display: block;
				width: 6rem;
				height: 6rem;
				line-height: 6rem;
				border-radius: 6rem;
				box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.25);
				font-size: 2.5rem;
				margin: 0 auto;
				text-align: center;
			}

				body.is-ie ul.grid-icons .icon:before {
					line-height: 2.375;
				}

		ul.grid-icons > li {
			-moz-flex-grow: 0;
			-webkit-flex-grow: 0;
			-ms-flex-grow: 0;
			flex-grow: 0;
			-moz-flex-shrink: 0;
			-webkit-flex-shrink: 0;
			-ms-flex-shrink: 0;
			flex-shrink: 0;
			position: relative;
			margin: 1.5rem 0 0 1.5rem;
			padding-left: 0;
		}

		ul.grid-icons.connected > li:before {
			content: '';
			display: block;
			position: absolute;
			width: 1.5rem;
			height: 2px;
			top: 50%;
			left: -1.5rem;
			background-color: rgba(255, 255, 255, 0.25);
		}

		ul.grid-icons.connected > li:after {
			content: '';
			display: block;
			position: absolute;
			width: 2px;
			height: 1.5rem;
			top: -1.5rem;
			left: 50%;
			background-color: rgba(255, 255, 255, 0.25);
		}

		ul.grid-icons.two {
			width: 14rem;
		}

			ul.grid-icons.two > li:nth-child(-n + 2) {
				margin-top: 0;
			}

				ul.grid-icons.two > li:nth-child(-n + 2):after {
					display: none;
				}

			ul.grid-icons.two > li:nth-child(2n - 1) {
				margin-left: 0;
			}

				ul.grid-icons.two > li:nth-child(2n - 1):before {
					display: none;
				}

		ul.grid-icons.three {
			width: 21.5rem;
		}

			ul.grid-icons.three > li:nth-child(-n + 3) {
				margin-top: 0;
			}

				ul.grid-icons.three > li:nth-child(-n + 3):after {
					display: none;
				}

			ul.grid-icons.three > li:nth-child(3n - 2) {
				margin-left: 0;
			}

				ul.grid-icons.three > li:nth-child(3n - 2):before {
					display: none;
				}

		ul.grid-icons.four {
			width: 29rem;
		}

			ul.grid-icons.four > li:nth-child(-n + 4) {
				margin-top: 0;
			}

				ul.grid-icons.four > li:nth-child(-n + 4):after {
					display: none;
				}

			ul.grid-icons.four > li:nth-child(4n - 3) {
				margin-left: 0;
			}

				ul.grid-icons.four > li:nth-child(4n - 3):before {
					display: none;
				}

		@media screen and (max-width: 736px) {

			ul.grid-icons {
				-moz-justify-content: -moz-flex-start;
				-webkit-justify-content: -webkit-flex-start;
				-ms-justify-content: -ms-flex-start;
				justify-content: flex-start;
				width: 100% !important;
				margin: -1rem 0 1.5rem -1rem;
			}

				ul.grid-icons .icon:before {
					width: 4.5rem;
					height: 4.5rem;
					line-height: 4.5rem;
					font-size: 1.75rem;
				}

				ul.grid-icons > li {
					margin: 1rem 0 0 1rem !important;
				}

					ul.grid-icons > li:before {
						display: none !important;
					}

					ul.grid-icons > li:after {
						display: none !important;
					}

		}

/* Contact Icons */

	ul.contact-icons {
		list-style: none;
		padding-left: 0;
	}

		ul.contact-icons > li {
			margin: 1.25rem 0 0 0;
			padding-left: 0;
		}

			ul.contact-icons > li:before {
				display: inline-block;
				width: 2.25rem;
				height: 2.25rem;
				line-height: 2.25rem;
				border-radius: 2.25rem;
				background-color: white;
				color: #2e2b37;
				cursor: default;
				font-size: 1.125rem;
				margin-right: 1rem;
				text-align: center;
				vertical-align: middle;
			}

				body.is-ie ul.contact-icons > li:before {
					line-height: 2.125;
				}

			ul.contact-icons > li a {
				border-bottom: 0;
			}

		ul.contact-icons.color1 > li:before {
			color: #726193;
		}

		ul.contact-icons.color2 > li:before {
			color: #e37b7c;
		}

		ul.contact-icons.color3 > li:before {
			color: #ffe4b4;
		}

		ul.contact-icons.color4 > li:before {
			color: #353865;
		}

/* Table */

	.table-wrapper {
		-webkit-overflow-scrolling: touch;
		overflow-x: auto;
	}

	table {
		margin: 0 0 1.5rem 0;
		width: 100%;
	}

		table tbody tr {
			border: solid 1px rgba(255, 255, 255, 0.25);
			border-left: 0;
			border-right: 0;
		}

			table tbody tr:nth-child(2n + 1) {
				background-color: rgba(255, 255, 255, 0.075);
			}

		table td {
			padding: 0.75rem 0.75rem;
		}

		table th {
			color: rgba(255, 255, 255, 0.875);
			font-size: 0.9rem;
			font-weight: 400;
			padding: 0 0.75rem 0.75rem 0.75rem;
			text-align: left;
		}

		table thead {
			border-bottom: solid 2px rgba(255, 255, 255, 0.25);
		}

		table tfoot {
			border-top: solid 2px rgba(255, 255, 255, 0.25);
		}

		table.alt {
			border-collapse: separate;
		}

			table.alt tbody tr td {
				border: solid 1px rgba(255, 255, 255, 0.25);
				border-left-width: 0;
				border-top-width: 0;
			}

				table.alt tbody tr td:first-child {
					border-left-width: 1px;
				}

			table.alt tbody tr:first-child td {
				border-top-width: 1px;
			}

			table.alt thead {
				border-bottom: 0;
			}

			table.alt tfoot {
				border-top: 0;
			}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, color 0.2s ease-in-out;
		background-color: transparent;
		border: 0;
		border-radius: 0.25rem;
		box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.25);
		color: rgba(255, 255, 255, 0.875) !important;
		cursor: pointer;
		display: inline-block;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 0.6rem;
		font-weight: 700;
		height: 2.75rem;
		letter-spacing: 0.15rem;
		line-height: 2.75rem;
		padding: 0 1.5rem 0 1.65rem;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		white-space: nowrap;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		button:hover,
		.button:hover {
			box-shadow: inset 0 0 0 2px #ffe4b4;
			color: #ffe4b4 !important;
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		button:active,
		.button:active {
			background-color: rgba(255, 228, 180, 0.125);
		}

		input[type="submit"].icon:before,
		input[type="reset"].icon:before,
		input[type="button"].icon:before,
		button.icon:before,
		.button.icon:before {
			display: inline-block;
			position: relative;
			top: -0.075rem;
			vertical-align: middle;
			font-size: 0.8rem;
			margin: 0 0.375rem 0 -0.325rem;
		}

		input[type="submit"].icon.circle,
		input[type="reset"].icon.circle,
		input[type="button"].icon.circle,
		button.icon.circle,
		.button.icon.circle {
			position: relative;
			width: 3.125rem;
			height: 3.125rem;
			line-height: 3.125rem;
			text-indent: 3.125rem;
			border-radius: 100%;
			overflow: hidden;
			padding: 0;
			letter-spacing: 0;
		}

			input[type="submit"].icon.circle:before,
			input[type="reset"].icon.circle:before,
			input[type="button"].icon.circle:before,
			button.icon.circle:before,
			.button.icon.circle:before {
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				width: inherit;
				height: inherit;
				font-size: 1.25rem;
				line-height: inherit;
				margin: 0;
				text-indent: 0;
			}

			input[type="submit"].icon.circle.fa-angle-left:before,
			input[type="reset"].icon.circle.fa-angle-left:before,
			input[type="button"].icon.circle.fa-angle-left:before,
			button.icon.circle.fa-angle-left:before,
			.button.icon.circle.fa-angle-left:before {
				position: relative;
				left: -0.1rem;
				font-size: 1.75rem;
			}

			input[type="submit"].icon.circle.fa-angle-right:before,
			input[type="reset"].icon.circle.fa-angle-right:before,
			input[type="button"].icon.circle.fa-angle-right:before,
			button.icon.circle.fa-angle-right:before,
			.button.icon.circle.fa-angle-right:before {
				position: relative;
				left: 0.1rem;
				font-size: 1.75rem;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		button.fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		button.small,
		.button.small {
			font-size: 0.4rem;
			height: 1.875rem;
			line-height: 1.875rem;
			padding: 0 1.25rem 0 1.4rem;
		}

		input[type="submit"].large,
		input[type="reset"].large,
		input[type="button"].large,
		button.large,
		.button.large {
			font-size: 0.8rem;
			height: 3.3125rem;
			line-height: 3.3125rem;
			padding: 0 2rem 0 2.15rem;
		}

		input[type="submit"].primary,
		input[type="reset"].primary,
		input[type="button"].primary,
		button.primary,
		.button.primary {
			background-color: white;
			box-shadow: none;
			color: #2e2b37 !important;
		}

			input[type="submit"].primary.color1,
			input[type="reset"].primary.color1,
			input[type="button"].primary.color1,
			button.primary.color1,
			.button.primary.color1 {
				color: #726193 !important;
			}

			input[type="submit"].primary.color2,
			input[type="reset"].primary.color2,
			input[type="button"].primary.color2,
			button.primary.color2,
			.button.primary.color2 {
				color: #e37b7c !important;
			}

			input[type="submit"].primary.color3,
			input[type="reset"].primary.color3,
			input[type="button"].primary.color3,
			button.primary.color3,
			.button.primary.color3 {
				color: #ffe4b4 !important;
			}

			input[type="submit"].primary.color4,
			input[type="reset"].primary.color4,
			input[type="button"].primary.color4,
			button.primary.color4,
			.button.primary.color4 {
				color: #353865 !important;
			}

			input[type="submit"].primary:hover,
			input[type="reset"].primary:hover,
			input[type="button"].primary:hover,
			button.primary:hover,
			.button.primary:hover {
				background-color: #ffe4b4;
			}

			input[type="submit"].primary:active,
			input[type="reset"].primary:active,
			input[type="button"].primary:active,
			button.primary:active,
			.button.primary:active {
				background-color: #fdd997;
			}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		button.disabled,
		button:disabled,
		.button.disabled,
		.button:disabled {
			pointer-events: none;
			cursor: default;
			opacity: 0.5;
		}

/* Gallery */

	@-moz-keyframes gallery-modal-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@-webkit-keyframes gallery-modal-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@-ms-keyframes gallery-modal-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	@keyframes gallery-modal-spinner {
		0% {
			-moz-transform: rotate(0deg);
			-webkit-transform: rotate(0deg);
			-ms-transform: rotate(0deg);
			transform: rotate(0deg);
		}

		100% {
			-moz-transform: rotate(360deg);
			-webkit-transform: rotate(360deg);
			-ms-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	.gallery {
		-moz-align-items: -moz-stretch;
		-webkit-align-items: -webkit-stretch;
		-ms-align-items: -ms-stretch;
		align-items: stretch;
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		height: 100%;
	}

		.gallery > * {
			width: 20rem;
			height: 100%;
		}

		.gallery .image {
			display: block;
			position: relative;
			border-bottom: 0;
			overflow: hidden;
		}

			.gallery .image img {
				-moz-transition: -moz-transform 0.2s ease-in-out;
				-webkit-transition: -webkit-transform 0.2s ease-in-out;
				-ms-transition: -ms-transform 0.2s ease-in-out;
				transition: transform 0.2s ease-in-out;
			}

			.gallery .image:after {
				-moz-transition: opacity 0.2s ease-in-out;
				-webkit-transition: opacity 0.2s ease-in-out;
				-ms-transition: opacity 0.2s ease-in-out;
				transition: opacity 0.2s ease-in-out;
			}

			.gallery .image:hover img {
				-moz-transform: scale(1.025);
				-webkit-transform: scale(1.025);
				-ms-transform: scale(1.025);
				transform: scale(1.025);
			}

			.gallery .image:hover:after {
				opacity: 0;
			}

		.gallery .group {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-wrap: wrap;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}

			.gallery .group > * {
				height: 50%;
			}

		.gallery .modal {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;
			align-items: center;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			pointer-events: none;
			-moz-user-select: none;
			-webkit-user-select: none;
			-ms-user-select: none;
			user-select: none;
			-moz-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
			-webkit-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
			-ms-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
			transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
			-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background-color: rgba(46, 43, 55, 0.875);
			opacity: 0;
			outline: 0;
			visibility: none;
			z-index: 0;
		}

			.gallery .modal:before {
				-moz-animation: gallery-modal-spinner 1s infinite linear;
				-webkit-animation: gallery-modal-spinner 1s infinite linear;
				-ms-animation: gallery-modal-spinner 1s infinite linear;
				animation: gallery-modal-spinner 1s infinite linear;
				-moz-transition: opacity 0.25s ease;
				-webkit-transition: opacity 0.25s ease;
				-ms-transition: opacity 0.25s ease;
				transition: opacity 0.25s ease;
				-moz-transition-delay: 0.5s;
				-webkit-transition-delay: 0.5s;
				-ms-transition-delay: 0.5s;
				transition-delay: 0.5s;
				content: '';
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				width: 4rem;
				height: 4rem;
				margin: -2rem 0 0 -2rem;
				background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='96px' height='96px' viewBox='0 0 96 96' zoomAndPan='disable'%3E%3Cstyle%3Ecircle %7Bfill: transparent%3B stroke: rgba(255, 255, 255, 0.875)%3B stroke-width: 1.5px%3B %7D%3C/style%3E%3Cdefs%3E%3CclipPath id='corner'%3E%3Cpolygon points='0,0 48,0 48,48 96,48 96,96 0,96' /%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23corner)'%3E%3Ccircle cx='48' cy='48' r='32'/%3E%3C/g%3E%3C/svg%3E");
				background-position: center;
				background-repeat: no-repeat;
				background-size: 4rem;
				opacity: 0;
			}

			.gallery .modal:after {
				content: '';
				display: block;
				position: absolute;
				top: 0.5rem;
				right: 0.5rem;
				width: 4rem;
				height: 4rem;
				background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='64px' height='64px' viewBox='0 0 64 64' zoomAndPan='disable'%3E%3Cstyle%3Eline %7Bstroke: rgba(255, 255, 255, 0.875)%3Bstroke-width: 1.5px%3B%7D%3C/style%3E%3Cline x1='20' y1='20' x2='44' y2='44' /%3E%3Cline x1='20' y1='44' x2='44' y2='20' /%3E%3C/svg%3E");
				background-position: center;
				background-repeat: no-repeat;
				background-size: 3rem;
				cursor: pointer;
			}

			.gallery .modal .inner {
				-moz-transform: translateY(0.75rem);
				-webkit-transform: translateY(0.75rem);
				-ms-transform: translateY(0.75rem);
				transform: translateY(0.75rem);
				-moz-transition: opacity 0.25s ease, -moz-transform 0.25s ease;
				-webkit-transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
				-ms-transition: opacity 0.25s ease, -ms-transform 0.25s ease;
				transition: opacity 0.25s ease, transform 0.25s ease;
				opacity: 0;
			}

				.gallery .modal .inner img {
					display: block;
					max-width: 90vw;
					max-height: 85vh;
					box-shadow: 0 1rem 3rem 0 rgba(0, 0, 0, 0.35);
				}

			.gallery .modal.visible {
				pointer-events: auto;
				opacity: 1;
				visibility: visible;
				z-index: 11000;
			}

				.gallery .modal.visible:before {
					opacity: 1;
				}

			.gallery .modal.loaded .inner {
				-moz-transform: translateY(0);
				-webkit-transform: translateY(0);
				-ms-transform: translateY(0);
				transform: translateY(0);
				-moz-transition: opacity 0.5s ease, -moz-transform 0.5s ease;
				-webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
				-ms-transition: opacity 0.5s ease, -ms-transform 0.5s ease;
				transition: opacity 0.5s ease, transform 0.5s ease;
				opacity: 1;
			}

			.gallery .modal.loaded:before {
				-moz-transition-delay: 0s;
				-webkit-transition-delay: 0s;
				-ms-transition-delay: 0s;
				transition-delay: 0s;
				opacity: 0;
			}

	@media screen and (max-width: 980px) {

		.gallery .modal .inner img {
			max-width: 100vw;
		}

	}

	@media screen and (max-width: 736px) {

		.gallery {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			height: auto;
		}

			.gallery > * {
				height: auto;
				width: 100%;
			}

			.gallery .image {
				width: 100%;
				height: 40rem;
			}

			.gallery .group .span-0-25 {
				width: 8.33333%;
			}

			.gallery .group .span-0-5 {
				width: 16.66666%;
			}

			.gallery .group .span-0-75 {
				width: 25.0%;
			}

			.gallery .group .span-1 {
				width: 33.33333%;
			}

			.gallery .group .span-1-25 {
				width: 41.66666%;
			}

			.gallery .group .span-1-5 {
				width: 49.99999%;
			}

			.gallery .group .span-1-75 {
				width: 58.33333%;
			}

			.gallery .group .span-2 {
				width: 66.66666%;
			}

			.gallery .group .span-2-25 {
				width: 74.99999%;
			}

			.gallery .group .span-2-5 {
				width: 83.33332%;
			}

			.gallery .group .span-2-75 {
				width: 91.66666%;
			}

			.gallery .group .span-3 {
				width: 99.99999%;
			}

			.gallery .group .span-3-25 {
				width: 108.33332%;
			}

			.gallery .group .span-3-5 {
				width: 116.66665%;
			}

			.gallery .group .span-3-75 {
				width: 124.99999%;
			}

			.gallery .group .span-4 {
				width: 133.33332%;
			}

			.gallery .group .span-4-25 {
				width: 141.66665%;
			}

			.gallery .group .span-4-5 {
				width: 149.99998%;
			}

			.gallery .group .span-4-75 {
				width: 158.33332%;
			}

			.gallery .group .span-5 {
				width: 166.66665%;
			}

			.gallery .group .span-5-25 {
				width: 174.99998%;
			}

			.gallery .group .span-5-5 {
				width: 183.33331%;
			}

			.gallery .group .span-5-75 {
				width: 191.66665%;
			}

			.gallery .group .span-6 {
				width: 199.99998%;
			}

			.gallery .group .span-6-25 {
				width: 208.33331%;
			}

			.gallery .group .span-6-5 {
				width: 216.66664%;
			}

			.gallery .group .span-6-75 {
				width: 224.99998%;
			}

			.gallery .group .span-7 {
				width: 233.33331%;
			}

			.gallery .group .span-7-25 {
				width: 241.66664%;
			}

			.gallery .group .span-7-5 {
				width: 249.99997%;
			}

			.gallery .group .span-7-75 {
				width: 258.33331%;
			}

			.gallery .group .span-8 {
				width: 266.66664%;
			}

			.gallery .group .span-8-25 {
				width: 274.99997%;
			}

			.gallery .group .span-8-5 {
				width: 283.3333%;
			}

			.gallery .group .span-8-75 {
				width: 291.66664%;
			}

			.gallery .group .span-9 {
				width: 299.99997%;
			}

			.gallery .group .span-9-25 {
				width: 308.3333%;
			}

			.gallery .group .span-9-5 {
				width: 316.66663%;
			}

			.gallery .group .span-9-75 {
				width: 324.99997%;
			}

			.gallery .group .span-10 {
				width: 333.3333%;
			}

			.gallery .group .image {
				height: 20rem;
			}

	}

	@media screen and (max-width: 480px) {

		.gallery .image {
			height: 30rem;
		}

		.gallery .group .image {
			height: 12.5rem;
		}

	}

/* Panel */

	.panel {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-grow: 0;
		-webkit-flex-grow: 0;
		-ms-flex-grow: 0;
		flex-grow: 0;
		-moz-flex-shrink: 0;
		-webkit-flex-shrink: 0;
		-ms-flex-shrink: 0;
		flex-shrink: 0;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-moz-align-items: -moz-stretch;
		-webkit-align-items: -webkit-stretch;
		-ms-align-items: -ms-stretch;
		align-items: stretch;
		height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
	}

		.panel > * {
			position: relative;
			min-width: 10rem;
		}

			.panel > *.color0 {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, #726193 20%, #e37b7c 60%, #ffe4b4);
				background-size: 128px 128px, auto;
			}

			.panel > *.color1 {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #726193;
			}

			.panel > *.color2 {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #e37b7c;
			}

			.panel > *.color3 {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #ffe4b4;
			}

			.panel > *.color4 {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #353865;
			}

			.panel > *.color1-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #6c5e86;
			}

			.panel > *.color2-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #de7172;
			}

			.panel > *.color3-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #fedea6;
			}

			.panel > *.color4-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #323459;
			}

		.panel > .intro {
			padding: 3.5rem 3.5rem 2rem 3.5rem ;
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-grow: 0;
			-webkit-flex-grow: 0;
			-ms-flex-grow: 0;
			flex-grow: 0;
			-moz-flex-shrink: 0;
			-webkit-flex-shrink: 0;
			-ms-flex-shrink: 0;
			flex-shrink: 0;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			-moz-align-items: -moz-flex-start;
			-webkit-align-items: -webkit-flex-start;
			-ms-align-items: -ms-flex-start;
			align-items: flex-start;
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			width: 22rem;
		}

			.panel > .intro.joined {
				width: 18.5rem;
				padding-right: 0;
			}

				.panel > .intro.joined + .inner {
					padding-left: 2.625rem;
				}

		.panel > .inner {
			padding: 3.5rem 3.5rem 2rem 3.5rem ;
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-grow: 1;
			-webkit-flex-grow: 1;
			-ms-flex-grow: 1;
			flex-grow: 1;
			-moz-flex-shrink: 1;
			-webkit-flex-shrink: 1;
			-ms-flex-shrink: 1;
			flex-shrink: 1;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			-moz-align-items: -moz-flex-start;
			-webkit-align-items: -webkit-flex-start;
			-ms-align-items: -ms-flex-start;
			align-items: flex-start;
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			position: relative;
			width: 100%;
		}

			.panel > .inner.columns {
				display: -moz-flex;
				display: -webkit-flex;
				display: -ms-flex;
				display: flex;
				-moz-justify-content: center;
				-webkit-justify-content: center;
				-ms-justify-content: center;
				justify-content: center;
				-moz-align-items: center;
				-webkit-align-items: center;
				-ms-align-items: center;
				align-items: center;
				-moz-flex-direction: row;
				-webkit-flex-direction: row;
				-ms-flex-direction: row;
				flex-direction: row;
			}

				.panel > .inner.columns > * {
					-moz-flex-grow: 0;
					-webkit-flex-grow: 0;
					-ms-flex-grow: 0;
					flex-grow: 0;
					-moz-flex-shrink: 0;
					-webkit-flex-shrink: 0;
					-ms-flex-shrink: 0;
					flex-shrink: 0;
					margin-left: 3.5rem;
				}

				.panel > .inner.columns > :first-child {
					margin-left: 0;
				}

				.panel > .inner.columns.divided > * {
					margin-left: 7rem;
				}

					.panel > .inner.columns.divided > *:before {
						content: '';
						position: absolute;
						top: 3.5rem;
						width: 2px;
						height: calc(100% - 7rem);
						margin-left: -3.5rem;
						background-color: rgba(255, 255, 255, 0.25);
					}

				.panel > .inner.columns.divided > :first-child {
					margin-left: 0;
				}

					.panel > .inner.columns.divided > :first-child:before {
						display: none;
					}

				.panel > .inner.columns.aligned {
					-moz-align-items: -moz-flex-start;
					-webkit-align-items: -webkit-flex-start;
					-ms-align-items: -ms-flex-start;
					align-items: flex-start;
				}

		.panel .span-0-25 {
			width: 2.5rem;
		}

		.panel .span-0-5 {
			width: 5rem;
		}

		.panel .span-0-75 {
			width: 7.5rem;
		}

		.panel .span-1 {
			width: 10rem;
		}

		.panel .span-1-25 {
			width: 12.5rem;
		}

		.panel .span-1-5 {
			width: 15rem;
		}

		.panel .span-1-75 {
			width: 17.5rem;
		}

		.panel .span-2 {
			width: 20rem;
		}

		.panel .span-2-25 {
			width: 22.5rem;
		}

		.panel .span-2-5 {
			width: 25rem;
		}

		.panel .span-2-75 {
			width: 27.5rem;
		}

		.panel .span-3 {
			width: 30rem;
		}

		.panel .span-3-25 {
			width: 32.5rem;
		}

		.panel .span-3-5 {
			width: 35rem;
		}

		.panel .span-3-75 {
			width: 37.5rem;
		}

		.panel .span-4 {
			width: 40rem;
		}

		.panel .span-4-25 {
			width: 42.5rem;
		}

		.panel .span-4-5 {
			width: 45rem;
		}

		.panel .span-4-75 {
			width: 47.5rem;
		}

		.panel .span-5 {
			width: 50rem;
		}

		.panel .span-5-25 {
			width: 52.5rem;
		}

		.panel .span-5-5 {
			width: 55rem;
		}

		.panel .span-5-75 {
			width: 57.5rem;
		}

		.panel .span-6 {
			width: 60rem;
		}

		.panel .span-6-25 {
			width: 62.5rem;
		}

		.panel .span-6-5 {
			width: 65rem;
		}

		.panel .span-6-75 {
			width: 67.5rem;
		}

		.panel .span-7 {
			width: 70rem;
		}

		.panel .span-7-25 {
			width: 72.5rem;
		}

		.panel .span-7-5 {
			width: 75rem;
		}

		.panel .span-7-75 {
			width: 77.5rem;
		}

		.panel .span-8 {
			width: 80rem;
		}

		.panel .span-8-25 {
			width: 82.5rem;
		}

		.panel .span-8-5 {
			width: 85rem;
		}

		.panel .span-8-75 {
			width: 87.5rem;
		}

		.panel .span-9 {
			width: 90rem;
		}

		.panel .span-9-25 {
			width: 92.5rem;
		}

		.panel .span-9-5 {
			width: 95rem;
		}

		.panel .span-9-75 {
			width: 97.5rem;
		}

		.panel .span-10 {
			width: 100rem;
		}

		.panel.small {
			width: 35rem;
		}

		.panel.medium {
			width: 50rem;
		}

		.panel.large {
			width: 65rem;
		}

		.panel.small .span-0-25, .panel.medium .span-0-25, .panel.large .span-0-25 {
			width: 2.5%;
		}

		.panel.small .span-0-5, .panel.medium .span-0-5, .panel.large .span-0-5 {
			width: 5%;
		}

		.panel.small .span-0-75, .panel.medium .span-0-75, .panel.large .span-0-75 {
			width: 7.5%;
		}

		.panel.small .span-1, .panel.medium .span-1, .panel.large .span-1 {
			width: 10%;
		}

		.panel.small .span-1-25, .panel.medium .span-1-25, .panel.large .span-1-25 {
			width: 12.5%;
		}

		.panel.small .span-1-5, .panel.medium .span-1-5, .panel.large .span-1-5 {
			width: 15%;
		}

		.panel.small .span-1-75, .panel.medium .span-1-75, .panel.large .span-1-75 {
			width: 17.5%;
		}

		.panel.small .span-2, .panel.medium .span-2, .panel.large .span-2 {
			width: 20%;
		}

		.panel.small .span-2-25, .panel.medium .span-2-25, .panel.large .span-2-25 {
			width: 22.5%;
		}

		.panel.small .span-2-5, .panel.medium .span-2-5, .panel.large .span-2-5 {
			width: 25%;
		}

		.panel.small .span-2-75, .panel.medium .span-2-75, .panel.large .span-2-75 {
			width: 27.5%;
		}

		.panel.small .span-3, .panel.medium .span-3, .panel.large .span-3 {
			width: 30%;
		}

		.panel.small .span-3-25, .panel.medium .span-3-25, .panel.large .span-3-25 {
			width: 32.5%;
		}

		.panel.small .span-3-5, .panel.medium .span-3-5, .panel.large .span-3-5 {
			width: 35%;
		}

		.panel.small .span-3-75, .panel.medium .span-3-75, .panel.large .span-3-75 {
			width: 37.5%;
		}

		.panel.small .span-4, .panel.medium .span-4, .panel.large .span-4 {
			width: 40%;
		}

		.panel.small .span-4-25, .panel.medium .span-4-25, .panel.large .span-4-25 {
			width: 42.5%;
		}

		.panel.small .span-4-5, .panel.medium .span-4-5, .panel.large .span-4-5 {
			width: 45%;
		}

		.panel.small .span-4-75, .panel.medium .span-4-75, .panel.large .span-4-75 {
			width: 47.5%;
		}

		.panel.small .span-5, .panel.medium .span-5, .panel.large .span-5 {
			width: 50%;
		}

		.panel.small .span-5-25, .panel.medium .span-5-25, .panel.large .span-5-25 {
			width: 52.5%;
		}

		.panel.small .span-5-5, .panel.medium .span-5-5, .panel.large .span-5-5 {
			width: 55%;
		}

		.panel.small .span-5-75, .panel.medium .span-5-75, .panel.large .span-5-75 {
			width: 57.5%;
		}

		.panel.small .span-6, .panel.medium .span-6, .panel.large .span-6 {
			width: 60%;
		}

		.panel.small .span-6-25, .panel.medium .span-6-25, .panel.large .span-6-25 {
			width: 62.5%;
		}

		.panel.small .span-6-5, .panel.medium .span-6-5, .panel.large .span-6-5 {
			width: 65%;
		}

		.panel.small .span-6-75, .panel.medium .span-6-75, .panel.large .span-6-75 {
			width: 67.5%;
		}

		.panel.small .span-7, .panel.medium .span-7, .panel.large .span-7 {
			width: 70%;
		}

		.panel.small .span-7-25, .panel.medium .span-7-25, .panel.large .span-7-25 {
			width: 72.5%;
		}

		.panel.small .span-7-5, .panel.medium .span-7-5, .panel.large .span-7-5 {
			width: 75%;
		}

		.panel.small .span-7-75, .panel.medium .span-7-75, .panel.large .span-7-75 {
			width: 77.5%;
		}

		.panel.small .span-8, .panel.medium .span-8, .panel.large .span-8 {
			width: 80%;
		}

		.panel.small .span-8-25, .panel.medium .span-8-25, .panel.large .span-8-25 {
			width: 82.5%;
		}

		.panel.small .span-8-5, .panel.medium .span-8-5, .panel.large .span-8-5 {
			width: 85%;
		}

		.panel.small .span-8-75, .panel.medium .span-8-75, .panel.large .span-8-75 {
			width: 87.5%;
		}

		.panel.small .span-9, .panel.medium .span-9, .panel.large .span-9 {
			width: 90%;
		}

		.panel.small .span-9-25, .panel.medium .span-9-25, .panel.large .span-9-25 {
			width: 92.5%;
		}

		.panel.small .span-9-5, .panel.medium .span-9-5, .panel.large .span-9-5 {
			width: 95%;
		}

		.panel.small .span-9-75, .panel.medium .span-9-75, .panel.large .span-9-75 {
			width: 97.5%;
		}

		.panel.small .span-10, .panel.medium .span-10, .panel.large .span-10 {
			width: 100%;
		}

		.panel.color0 {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, #726193 20%, #e37b7c 60%, #ffe4b4);
			background-size: 128px 128px, auto;
		}

		.panel.color1 {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
			background-size: 128px 128px, auto;
			background-color: #726193;
		}

		.panel.color2 {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
			background-size: 128px 128px, auto;
			background-color: #e37b7c;
		}

		.panel.color3 {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
			background-size: 128px 128px, auto;
			background-color: #ffe4b4;
		}

		.panel.color4 {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
			background-size: 128px 128px, auto;
			background-color: #353865;
		}

		.panel.color1-alt {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
			background-size: 128px 128px, auto;
			background-color: #6c5e86;
		}

		.panel.color2-alt {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
			background-size: 128px 128px, auto;
			background-color: #de7172;
		}

		.panel.color3-alt {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
			background-size: 128px 128px, auto;
			background-color: #fedea6;
		}

		.panel.color4-alt {
			background-image: url("../../images/overlay.png"), linear-gradient(45deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
			background-size: 128px 128px, auto;
			background-color: #323459;
		}

	@media screen and (max-width: 736px) {

		.panel {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			height: auto;
		}

			.panel > *.color1 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #726193;
			}

			.panel > *.color2 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #e37b7c;
			}

			.panel > *.color3 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #ffe4b4;
			}

			.panel > *.color4 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #353865;
			}

			.panel > *.color1-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #6c5e86;
			}

			.panel > *.color2-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #de7172;
			}

			.panel > *.color3-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #fedea6;
			}

			.panel > *.color4-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #323459;
			}

			.panel > .intro {
				padding: 2.8875rem 1.75rem 1.3875rem 1.75rem ;
				width: 100% !important;
			}

				.panel > .intro.joined {
					padding-bottom: 0;
					padding-right: 1.75rem;
				}

					.panel > .intro.joined + .inner {
						padding-top: 0;
						padding-left: 1.75rem;
					}

			.panel > .inner {
				padding: 2.8875rem 1.75rem 1.3875rem 1.75rem ;
			}

				.panel > .inner.columns {
					-moz-flex-direction: column;
					-webkit-flex-direction: column;
					-ms-flex-direction: column;
					flex-direction: column;
				}

					.panel > .inner.columns > * {
						margin-left: 0;
						margin-top: 0;
					}

					.panel > .inner.columns > :first-child {
						margin-top: 0;
					}

					.panel > .inner.columns.divided > * {
						margin-left: 0;
						margin-top: 3.5rem;
					}

						.panel > .inner.columns.divided > *:before {
							content: '';
							position: absolute;
							top: auto;
							left: 1.75rem;
							width: calc(100% - 3.5rem);
							height: 2px;
							margin-left: 0;
							margin-top: -1.75rem;
						}

					.panel > .inner.columns.divided > :first-child {
						margin-top: 0;
					}

			.panel .span-0-25 {
				width: 100%;
			}

			.panel .span-0-5 {
				width: 100%;
			}

			.panel .span-0-75 {
				width: 100%;
			}

			.panel .span-1 {
				width: 100%;
			}

			.panel .span-1-25 {
				width: 100%;
			}

			.panel .span-1-5 {
				width: 100%;
			}

			.panel .span-1-75 {
				width: 100%;
			}

			.panel .span-2 {
				width: 100%;
			}

			.panel .span-2-25 {
				width: 100%;
			}

			.panel .span-2-5 {
				width: 100%;
			}

			.panel .span-2-75 {
				width: 100%;
			}

			.panel .span-3 {
				width: 100%;
			}

			.panel .span-3-25 {
				width: 100%;
			}

			.panel .span-3-5 {
				width: 100%;
			}

			.panel .span-3-75 {
				width: 100%;
			}

			.panel .span-4 {
				width: 100%;
			}

			.panel .span-4-25 {
				width: 100%;
			}

			.panel .span-4-5 {
				width: 100%;
			}

			.panel .span-4-75 {
				width: 100%;
			}

			.panel .span-5 {
				width: 100%;
			}

			.panel .span-5-25 {
				width: 100%;
			}

			.panel .span-5-5 {
				width: 100%;
			}

			.panel .span-5-75 {
				width: 100%;
			}

			.panel .span-6 {
				width: 100%;
			}

			.panel .span-6-25 {
				width: 100%;
			}

			.panel .span-6-5 {
				width: 100%;
			}

			.panel .span-6-75 {
				width: 100%;
			}

			.panel .span-7 {
				width: 100%;
			}

			.panel .span-7-25 {
				width: 100%;
			}

			.panel .span-7-5 {
				width: 100%;
			}

			.panel .span-7-75 {
				width: 100%;
			}

			.panel .span-8 {
				width: 100%;
			}

			.panel .span-8-25 {
				width: 100%;
			}

			.panel .span-8-5 {
				width: 100%;
			}

			.panel .span-8-75 {
				width: 100%;
			}

			.panel .span-9 {
				width: 100%;
			}

			.panel .span-9-25 {
				width: 100%;
			}

			.panel .span-9-5 {
				width: 100%;
			}

			.panel .span-9-75 {
				width: 100%;
			}

			.panel .span-10 {
				width: 100%;
			}

			.panel.small, .panel.medium, .panel.large {
				width: 100% !important;
			}

				.panel.small .span-0-25, .panel.medium .span-0-25, .panel.large .span-0-25 {
					width: 100%;
				}

				.panel.small .span-0-5, .panel.medium .span-0-5, .panel.large .span-0-5 {
					width: 100%;
				}

				.panel.small .span-0-75, .panel.medium .span-0-75, .panel.large .span-0-75 {
					width: 100%;
				}

				.panel.small .span-1, .panel.medium .span-1, .panel.large .span-1 {
					width: 100%;
				}

				.panel.small .span-1-25, .panel.medium .span-1-25, .panel.large .span-1-25 {
					width: 100%;
				}

				.panel.small .span-1-5, .panel.medium .span-1-5, .panel.large .span-1-5 {
					width: 100%;
				}

				.panel.small .span-1-75, .panel.medium .span-1-75, .panel.large .span-1-75 {
					width: 100%;
				}

				.panel.small .span-2, .panel.medium .span-2, .panel.large .span-2 {
					width: 100%;
				}

				.panel.small .span-2-25, .panel.medium .span-2-25, .panel.large .span-2-25 {
					width: 100%;
				}

				.panel.small .span-2-5, .panel.medium .span-2-5, .panel.large .span-2-5 {
					width: 100%;
				}

				.panel.small .span-2-75, .panel.medium .span-2-75, .panel.large .span-2-75 {
					width: 100%;
				}

				.panel.small .span-3, .panel.medium .span-3, .panel.large .span-3 {
					width: 100%;
				}

				.panel.small .span-3-25, .panel.medium .span-3-25, .panel.large .span-3-25 {
					width: 100%;
				}

				.panel.small .span-3-5, .panel.medium .span-3-5, .panel.large .span-3-5 {
					width: 100%;
				}

				.panel.small .span-3-75, .panel.medium .span-3-75, .panel.large .span-3-75 {
					width: 100%;
				}

				.panel.small .span-4, .panel.medium .span-4, .panel.large .span-4 {
					width: 100%;
				}

				.panel.small .span-4-25, .panel.medium .span-4-25, .panel.large .span-4-25 {
					width: 100%;
				}

				.panel.small .span-4-5, .panel.medium .span-4-5, .panel.large .span-4-5 {
					width: 100%;
				}

				.panel.small .span-4-75, .panel.medium .span-4-75, .panel.large .span-4-75 {
					width: 100%;
				}

				.panel.small .span-5, .panel.medium .span-5, .panel.large .span-5 {
					width: 100%;
				}

				.panel.small .span-5-25, .panel.medium .span-5-25, .panel.large .span-5-25 {
					width: 100%;
				}

				.panel.small .span-5-5, .panel.medium .span-5-5, .panel.large .span-5-5 {
					width: 100%;
				}

				.panel.small .span-5-75, .panel.medium .span-5-75, .panel.large .span-5-75 {
					width: 100%;
				}

				.panel.small .span-6, .panel.medium .span-6, .panel.large .span-6 {
					width: 100%;
				}

				.panel.small .span-6-25, .panel.medium .span-6-25, .panel.large .span-6-25 {
					width: 100%;
				}

				.panel.small .span-6-5, .panel.medium .span-6-5, .panel.large .span-6-5 {
					width: 100%;
				}

				.panel.small .span-6-75, .panel.medium .span-6-75, .panel.large .span-6-75 {
					width: 100%;
				}

				.panel.small .span-7, .panel.medium .span-7, .panel.large .span-7 {
					width: 100%;
				}

				.panel.small .span-7-25, .panel.medium .span-7-25, .panel.large .span-7-25 {
					width: 100%;
				}

				.panel.small .span-7-5, .panel.medium .span-7-5, .panel.large .span-7-5 {
					width: 100%;
				}

				.panel.small .span-7-75, .panel.medium .span-7-75, .panel.large .span-7-75 {
					width: 100%;
				}

				.panel.small .span-8, .panel.medium .span-8, .panel.large .span-8 {
					width: 100%;
				}

				.panel.small .span-8-25, .panel.medium .span-8-25, .panel.large .span-8-25 {
					width: 100%;
				}

				.panel.small .span-8-5, .panel.medium .span-8-5, .panel.large .span-8-5 {
					width: 100%;
				}

				.panel.small .span-8-75, .panel.medium .span-8-75, .panel.large .span-8-75 {
					width: 100%;
				}

				.panel.small .span-9, .panel.medium .span-9, .panel.large .span-9 {
					width: 100%;
				}

				.panel.small .span-9-25, .panel.medium .span-9-25, .panel.large .span-9-25 {
					width: 100%;
				}

				.panel.small .span-9-5, .panel.medium .span-9-5, .panel.large .span-9-5 {
					width: 100%;
				}

				.panel.small .span-9-75, .panel.medium .span-9-75, .panel.large .span-9-75 {
					width: 100%;
				}

				.panel.small .span-10, .panel.medium .span-10, .panel.large .span-10 {
					width: 100%;
				}

			.panel.color1 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #726193;
			}

			.panel.color2 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #e37b7c;
			}

			.panel.color3 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #ffe4b4;
			}

			.panel.color4 {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.25) 25%, rgba(227, 123, 124, 0.25) 50%, rgba(255, 228, 180, 0.25));
				background-size: 128px 128px, auto;
				background-color: #353865;
			}

			.panel.color1-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #6c5e86;
			}

			.panel.color2-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #de7172;
			}

			.panel.color3-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #fedea6;
			}

			.panel.color4-alt {
				background-image: url("../../images/overlay.png"), linear-gradient(135deg, rgba(114, 97, 147, 0.175) 25%, rgba(227, 123, 124, 0.175) 50%, rgba(255, 228, 180, 0.175));
				background-size: 128px 128px, auto;
				background-color: #323459;
			}

	}

/* Panel (Banner) */

	.panel.banner {
		-moz-align-items: -moz-stretch;
		-webkit-align-items: -webkit-stretch;
		-ms-align-items: -ms-stretch;
		align-items: stretch;
	}

		.panel.banner .content {
			padding: 3.5rem 3.5rem 2rem 3.5rem ;
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			-moz-flex-grow: 0;
			-webkit-flex-grow: 0;
			-ms-flex-grow: 0;
			flex-grow: 0;
			-moz-flex-shrink: 0;
			-webkit-flex-shrink: 0;
			-ms-flex-shrink: 0;
			flex-shrink: 0;
		}

			.panel.banner .content > .actions:last-child {
				margin-bottom: 0;
			}

		.panel.banner .image {
			-moz-flex-grow: 0;
			-webkit-flex-grow: 0;
			-ms-flex-grow: 0;
			flex-grow: 0;
			-moz-flex-shrink: 0;
			-webkit-flex-shrink: 0;
			-ms-flex-shrink: 0;
			flex-shrink: 0;
			position: relative;
		}

			.panel.banner .image img {
				-moz-object-fit: cover;
				-webkit-object-fit: cover;
				-ms-object-fit: cover;
				object-fit: cover;
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}

		.panel.banner.left {
			-moz-flex-direction: row;
			-webkit-flex-direction: row;
			-ms-flex-direction: row;
			flex-direction: row;
		}

		.panel.banner.right {
			-moz-flex-direction: row-reverse;
			-webkit-flex-direction: row-reverse;
			-ms-flex-direction: row-reverse;
			flex-direction: row-reverse;
		}

	@media screen and (max-width: 736px) {

		.panel.banner .content {
			padding: 2.8875rem 1.75rem 1.3875rem 1.75rem ;
			-moz-flex-basis: 60%;
			-webkit-flex-basis: 60%;
			-ms-flex-basis: 60%;
			flex-basis: 60%;
		}

			.panel.banner .content > .actions:last-child {
				margin-bottom: 1.5rem;
			}

		.panel.banner .image {
			-moz-flex-basis: 40%;
			-webkit-flex-basis: 40%;
			-ms-flex-basis: 40%;
			flex-basis: 40%;
		}

	}

	@media screen and (max-width: 736px) and (orientation: portrait) {

		.panel.banner .content {
			-moz-flex-basis: auto;
			-webkit-flex-basis: auto;
			-ms-flex-basis: auto;
			flex-basis: auto;
		}

		.panel.banner .image {
			-moz-flex-basis: auto;
			-webkit-flex-basis: auto;
			-ms-flex-basis: auto;
			flex-basis: auto;
			height: 18rem;
		}

		.panel.banner.left {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
		}

		.panel.banner.right {
			-moz-flex-direction: column-reverse;
			-webkit-flex-direction: column-reverse;
			-ms-flex-direction: column-reverse;
			flex-direction: column-reverse;
		}

	}

/* Panel (Spotlight) */

	.panel.spotlight {
		-moz-align-items: -moz-stretch;
		-webkit-align-items: -webkit-stretch;
		-ms-align-items: -ms-stretch;
		align-items: stretch;
		position: relative;
	}

		.panel.spotlight > * {
			z-index: 1;
		}

		.panel.spotlight .content {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			padding: 3.5rem 3.5rem 2rem 3.5rem ;
		}

		.panel.spotlight .image {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 0;
		}

			.panel.spotlight .image img {
				-moz-object-fit: cover;
				-webkit-object-fit: cover;
				-ms-object-fit: cover;
				object-fit: cover;
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}

		.panel.spotlight.left {
			-moz-justify-content: -moz-flex-start;
			-webkit-justify-content: -webkit-flex-start;
			-ms-justify-content: -ms-flex-start;
			justify-content: flex-start;
		}

			.panel.spotlight.left .content {
				background-image: linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.125) 30%, rgba(0, 0, 0, 0.175) 50%);
			}

		.panel.spotlight.right {
			-moz-justify-content: -moz-flex-end;
			-webkit-justify-content: -webkit-flex-end;
			-ms-justify-content: -ms-flex-end;
			justify-content: flex-end;
		}

			.panel.spotlight.right .content {
				background-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.125) 30%, rgba(0, 0, 0, 0.175) 50%);
			}

	@media screen and (max-width: 736px) {

		.panel.spotlight .content {
			padding: 2.8875rem 1.75rem 1.3875rem 1.75rem ;
			-moz-flex-direction: column !important;
			-webkit-flex-direction: column !important;
			-ms-flex-direction: column !important;
			flex-direction: column !important;
			background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.25) 70%, rgba(0, 0, 0, 0.175)) !important;
			min-height: 25rem;
		}

	}

	@media screen and (max-width: 480px) {

		.panel.spotlight .content {
			min-height: 30rem;
		}

	}

/* Page Wrapper */

	#page-wrapper {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-align-items: center;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-moz-justify-content: -moz-flex-start;
		-webkit-justify-content: -webkit-flex-start;
		-ms-justify-content: -ms-flex-start;
		justify-content: flex-start;
		-moz-flex-grow: 1;
		-webkit-flex-grow: 1;
		-ms-flex-grow: 1;
		flex-grow: 1;
		-moz-flex-shrink: 1;
		-webkit-flex-shrink: 1;
		-ms-flex-shrink: 1;
		flex-shrink: 1;
		height: 100%;
		padding: 5rem;
	}

		@media screen and (orientation: portrait) {

			#page-wrapper {
				padding-left: 2rem;
				padding-right: 2rem;
			}

		}

		@media screen and (min-aspect-ratio: 16 / 7) {

			#page-wrapper {
				padding: 6vh;
			}

		}

		@media screen and (min-aspect-ratio: 16 / 6) {

			#page-wrapper {
				padding: 0;
			}

		}

	@media screen and (max-width: 736px) {

		#page-wrapper {
			height: auto;
			padding: 1rem;
		}

	}

	@media screen and (max-width: 480px) {

		#page-wrapper {
			padding: 0;
		}

	}

/* Wrapper */

	#wrapper {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: row;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-moz-transition: opacity 1s ease-out, -moz-transform 0.75s ease-out;
		-webkit-transition: opacity 1s ease-out, -webkit-transform 0.75s ease-out;
		-ms-transition: opacity 1s ease-out, -ms-transform 0.75s ease-out;
		transition: opacity 1s ease-out, transform 0.75s ease-out;
		-moz-transition-delay: 0.25s;
		-webkit-transition-delay: 0.25s;
		-ms-transition-delay: 0.25s;
		transition-delay: 0.25s;
		cursor: default;
		position: relative;
		height: 32rem;
		box-shadow: 0 2rem 4rem 0.25rem rgba(46, 43, 55, 0.575);
	}

		#wrapper > .scrollZone {
			position: fixed;
			width: 6rem;
			height: inherit;
			cursor: -moz-grab;
			cursor: -webkit-grab;
			cursor: -ms-grab;
			cursor: grab;
			z-index: 10100;
		}

			#wrapper > .scrollZone.left {
				left: 0;
			}

			#wrapper > .scrollZone.right {
				right: 0;
			}

		#wrapper > .copyright {
			position: absolute;
			bottom: -3rem;
			right: 0;
			font-size: 0.8rem;
			color: rgba(46, 43, 55, 0.375);
			margin-bottom: 0;
		}

			#wrapper > .copyright a:hover {
				color: inherit;
			}

		#wrapper.is-dragging {
			-moz-user-select: none;
			-webkit-user-select: none;
			-ms-user-select: none;
			user-select: none;
			cursor: -moz-grab;
			cursor: -webkit-grab;
			cursor: -ms-grab;
			cursor: grab;
		}

			#wrapper.is-dragging * {
				-moz-user-select: none;
				-webkit-user-select: none;
				-ms-user-select: none;
				user-select: none;
			}

			#wrapper.is-dragging * {
				cursor: -moz-grab;
				cursor: -webkit-grab;
				cursor: -ms-grab;
				cursor: grab;
			}

		#wrapper.is-dragged * {
			pointer-events: none;
		}

		body.is-preload #wrapper {
			-moz-transform: translateX(2rem);
			-webkit-transform: translateX(2rem);
			-ms-transform: translateX(2rem);
			transform: translateX(2rem);
			opacity: 0;
		}

	@media screen and (max-width: 736px) {

		#wrapper {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			height: auto;
			margin: 0 0 5rem 0;
			box-shadow: 0 0.25rem 1.5rem 0.25rem rgba(46, 43, 55, 0.5);
		}

			#wrapper > .scrollZone {
				display: none;
			}

			#wrapper > .copyright {
				display: block;
				width: 100%;
				text-align: center;
			}

			body.is-preload #wrapper {
				-moz-transform: translateY(1rem);
				-webkit-transform: translateY(1rem);
				-ms-transform: translateY(1rem);
				transform: translateY(1rem);
			}

	}

	@media screen and (max-width: 480px) {

		#wrapper {
			box-shadow: none;
		}

			body.is-preload #wrapper {
				-moz-transform: none;
				-webkit-transform: none;
				-ms-transform: none;
				transform: none;
			}

	}

/* Sempa Mpagi portfolio customizations */

	body.sempa-site {
		background: #08090b;
		color: rgba(250, 250, 247, 0.84);
	}

		body.sempa-site:after {
			background-color: #050607;
			background-image:
				radial-gradient(125% 125% at 50% 92%, #000000 38%, #0d1a36 100%),
				radial-gradient(circle at 82% 18%, rgba(214, 179, 108, 0.1), transparent 28rem),
				linear-gradient(135deg, #050607 0%, #11151d 48%, #050607 100%);
			background-repeat: no-repeat;
			background-size: cover;
		}

		body.sempa-site h1,
		body.sempa-site h2,
		body.sempa-site h3,
		body.sempa-site h4,
		body.sempa-site h5,
		body.sempa-site h6,
		body.sempa-site strong,
		body.sempa-site b {
			color: #fbfaf7;
		}

		body.sempa-site a {
			color: #fbfaf7;
			border-bottom-color: rgba(214, 179, 108, 0.55);
		}

			body.sempa-site a:hover {
				color: #d6b36c;
				border-bottom-color: transparent;
			}

		body.sempa-site .major:after {
			background-color: rgba(214, 179, 108, 0.88);
		}

		body.sempa-site #wrapper {
			box-shadow: 0 1rem 4rem 0.5rem rgba(0, 0, 0, 0.62);
		}

		body.sempa-site #wrapper > .copyright {
			color: rgba(250, 250, 247, 0.48);
		}

		body.sempa-site .panel.color1,
		body.sempa-site .panel > .color1 {
			background-color: #15181d;
			background-image:
				url("../../images/overlay.png"),
				linear-gradient(135deg, rgba(214, 179, 108, 0.19), rgba(54, 61, 70, 0.38) 42%, rgba(8, 9, 11, 0.94));
		}

		body.sempa-site .panel.color2,
		body.sempa-site .panel > .color2,
		body.sempa-site .panel.color2-alt,
		body.sempa-site .panel > .color2-alt {
			background-color: #101216;
			background-image:
				url("../../images/overlay.png"),
				linear-gradient(135deg, rgba(37, 42, 49, 0.96), rgba(11, 12, 15, 0.98));
		}

		body.sempa-site .panel.color4,
		body.sempa-site .panel > .color4,
		body.sempa-site .panel.color4-alt,
		body.sempa-site .panel > .color4-alt {
			background-color: #0c0e12;
			background-image:
				url("../../images/overlay.png"),
				linear-gradient(135deg, rgba(68, 75, 84, 0.52), rgba(10, 11, 14, 0.98));
		}

		body.sempa-site .panel > .color0 {
			background-color: #090a0c;
			background-image:
				url("../../images/overlay.png"),
				radial-gradient(circle at 20% 20%, rgba(214, 179, 108, 0.22), transparent 19rem),
				linear-gradient(135deg, #1c2026 0%, #0a0b0e 62%, #050607 100%);
		}

		body.sempa-site .panel > .inner.columns.divided > *:before {
			background-color: rgba(250, 250, 247, 0.2);
		}

		body.sempa-site .button.primary {
			background-color: #d6b36c;
			color: #08090b !important;
			box-shadow: none;
		}

			body.sempa-site .button.primary:hover {
				background-color: #e3c886;
			}

		body.sempa-site .button {
			box-shadow: inset 0 0 0 2px rgba(250, 250, 247, 0.28);
		}

			body.sempa-site .button:hover {
				box-shadow: inset 0 0 0 2px #d6b36c;
			}

		body.sempa-site .eyebrow {
			color: #d6b36c;
			font-size: 0.72rem;
			font-weight: 700;
			letter-spacing: 0.18em;
			margin: 0 0 1rem 0;
			text-transform: uppercase;
		}

		body.sempa-site .lead {
			color: rgba(250, 250, 247, 0.92);
			font-size: 1.1rem;
			line-height: 1.7;
		}

		body.sempa-site .hero-panel .content {
			justify-content: center;
		}

		body.sempa-site .hero-image {
			background: #0d0f13;
		}

			body.sempa-site .hero-image:after,
			body.sempa-site .studio-image:after {
				background-image: linear-gradient(45deg, rgba(8, 9, 11, 0.32), rgba(214, 179, 108, 0.07));
				background-repeat: no-repeat;
				background-size: cover;
			}

		body.sempa-site .about-panel {
			background-color: #0b0c0f;
			background-image: linear-gradient(135deg, #15181d 0%, #090a0c 58%, #050607 100%);
			overflow: hidden;
		}

			body.sempa-site .about-panel > .about-copy {
				background-color: #101216;
				background-image: linear-gradient(135deg, rgba(250, 250, 247, 0.065), rgba(250, 250, 247, 0.018));
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				border: 1px solid rgba(250, 250, 247, 0.14);
				border-left: 3px solid rgba(214, 179, 108, 0.72);
				box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.22);
				justify-content: center;
				padding: 3rem 3rem 2.25rem 3rem;
			}

				body.sempa-site .about-panel > .about-copy h2 {
					font-size: 2.35rem;
					letter-spacing: -0.035em;
					line-height: 1.1;
					max-width: 12.5em;
				}

				body.sempa-site .about-panel > .about-copy p {
					line-height: 1.55;
					margin-bottom: 1rem;
					max-width: 34rem;
				}

			body.sempa-site .about-studio-image {
				background: #08090b;
				border-left: 1px solid rgba(214, 179, 108, 0.34);
				box-shadow: inset 1.25rem 0 2rem rgba(0, 0, 0, 0.18);
				overflow: hidden;
			}

				body.sempa-site .about-studio-image:after {
					content: '';
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					background: linear-gradient(90deg, rgba(8, 9, 11, 0.18), rgba(8, 9, 11, 0.02) 36%, rgba(8, 9, 11, 0.18));
					pointer-events: none;
				}

				body.sempa-site .about-studio-image img {
					object-position: center;
					filter: saturate(0.9) contrast(1.03) brightness(0.88);
				}

		body.sempa-site .credential-list {
			display: flex;
			flex-wrap: wrap;
			gap: 0.5rem;
			list-style: none;
			margin: 1.25rem 0 0 0;
			padding-left: 0;
		}

			body.sempa-site .credential-list li {
				background: rgba(8, 9, 11, 0.28);
				border: 1px solid rgba(250, 250, 247, 0.16);
				color: rgba(250, 250, 247, 0.76);
				font-size: 0.62rem;
				font-weight: 700;
				letter-spacing: 0.08em;
				line-height: 1.35;
				margin: 0;
				padding: 0.45rem 0.6rem;
				text-transform: uppercase;
			}

				body.sempa-site .credential-list li:before {
					display: none;
				}

				body.sempa-site .credential-list li:nth-child(-n+2) {
					border-color: rgba(214, 179, 108, 0.38);
					color: rgba(250, 250, 247, 0.86);
				}

		body.sempa-site .audio-card {
			background: rgba(250, 250, 247, 0.06);
			border: 1px solid rgba(250, 250, 247, 0.16);
			border-radius: 0.5rem;
			box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.18);
			padding: 1.35rem;
		}

			body.sempa-site .audio-card h3 {
				margin-bottom: 0.75rem;
			}

			body.sempa-site .audio-card p {
				color: rgba(250, 250, 247, 0.76);
				min-height: 4.5rem;
			}

			body.sempa-site .audio-card audio {
				display: block;
				width: 100%;
			}

		body.sempa-site .tag-list {
			display: flex;
			flex-wrap: wrap;
			gap: 0.65rem;
			list-style: none;
			margin: 1.25rem 0 0 0;
			padding-left: 0;
		}

			body.sempa-site .tag-list li {
				background: rgba(250, 250, 247, 0.08);
				border: 1px solid rgba(250, 250, 247, 0.18);
				border-radius: 999px;
				color: rgba(250, 250, 247, 0.9);
				margin: 0;
				padding: 0.45rem 0.75rem;
			}

			body.sempa-site .tag-list li:before {
				display: none;
			}

		body.sempa-site .contact-email {
			font-size: 1.25rem;
			font-weight: 700;
			margin-bottom: 1rem;
		}

		body.sempa-site .studio-note {
			color: rgba(250, 250, 247, 0.72);
		}

		body.sempa-site ul.contact-icons > li:before {
			background-color: #d6b36c;
			color: #08090b;
		}

		body.sempa-site ul.contact-icons.color1 > li:before {
			color: #08090b;
		}

	@media screen and (max-width: 736px) {

		body.sempa-site #wrapper {
			box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.45);
		}

		body.sempa-site .hero-panel.right {
			flex-direction: column-reverse;
		}

		body.sempa-site .hero-image {
			height: 26rem;
		}

		body.sempa-site .audio-card p {
			min-height: 0;
		}

		body.sempa-site .about-copy {
			padding: 1.75rem;
		}

		body.sempa-site .about-studio-image {
			height: 24rem;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .hero-image {
			height: 22rem;
		}

		body.sempa-site .contact-email {
			font-size: 1.05rem;
			word-break: break-word;
		}

	}

/* Hero-only refinement */

	body.sempa-site .hero-panel {
		background: #08090b;
	}

		body.sempa-site .hero-panel > .content.color0 {
			background-color: #0a0b0d;
			background-image:
				radial-gradient(circle at 18% 28%, rgba(214, 179, 108, 0.12), transparent 18rem),
				linear-gradient(135deg, #1a1d21 0%, #101216 44%, #050607 100%);
			background-position: center;
			background-repeat: no-repeat;
			background-size: cover;
			isolation: isolate;
			overflow: hidden;
		}

			body.sempa-site .hero-panel > .content.color0:before {
				content: '';
				position: absolute;
				top: 12%;
				right: -8rem;
				width: 18rem;
				height: 72%;
				background: linear-gradient(90deg, rgba(214, 179, 108, 0), rgba(214, 179, 108, 0.12), rgba(250, 250, 247, 0));
				filter: blur(0.25rem);
				opacity: 0.55;
				pointer-events: none;
				z-index: -1;
			}

		body.sempa-site .hero-panel .major {
			font-size: 4.85rem;
			line-height: 1.06;
			letter-spacing: -0.055em;
			max-width: 13ch;
		}

		body.sempa-site .hero-panel .lead {
			max-width: 34rem;
		}

		body.sempa-site .hero-panel .hero-image {
			border-left: 1px solid rgba(214, 179, 108, 0.42);
			box-shadow: inset 1.25rem 0 2rem rgba(0, 0, 0, 0.22);
		}

			body.sempa-site .hero-panel .hero-image:after {
				background-image:
					linear-gradient(90deg, rgba(8, 9, 11, 0.18), rgba(8, 9, 11, 0.02) 34%, rgba(8, 9, 11, 0.22)),
					linear-gradient(0deg, rgba(8, 9, 11, 0.18), transparent 28%);
			}

			body.sempa-site .hero-panel .hero-image img {
				filter: saturate(0.92) contrast(1.04) brightness(0.94);
			}

	@media screen and (max-width: 736px) {

		body.sempa-site .hero-panel.left {
			flex-direction: column-reverse;
		}

		body.sempa-site .hero-panel .major {
			font-size: 3.35rem;
		}

		body.sempa-site .hero-panel .hero-image {
			border-left: 0;
			border-bottom: 1px solid rgba(214, 179, 108, 0.36);
		}

			body.sempa-site .hero-panel .hero-image img {
				object-position: center 18%;
			}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .hero-panel .major {
			font-size: 2.75rem;
		}

	}

/* Cohesive design-system pass */

	body.sempa-site,
	body.sempa-site input,
	body.sempa-site select,
	body.sempa-site textarea {
		font-family: "Manrope", Helvetica, sans-serif;
		font-size: clamp(16px, 0.95vw, 18px);
		font-weight: 400;
		letter-spacing: -0.01em;
		line-height: 1.65;
	}

	body.sempa-site h1,
	body.sempa-site h2,
	body.sempa-site h3,
	body.sempa-site h4,
	body.sempa-site h5,
	body.sempa-site h6 {
		font-family: "Manrope", Helvetica, sans-serif;
		font-weight: 800;
		letter-spacing: -0.055em;
		line-height: 1.05;
	}

	body.sempa-site h1.major,
	body.sempa-site h2.major,
	body.sempa-site h3.major {
		margin-bottom: 1.35rem;
	}

	body.sempa-site h1.major:after,
	body.sempa-site h2.major:after,
	body.sempa-site h3.major:after {
		display: none;
	}

	body.sempa-site h2 {
		font-size: clamp(2rem, 3.1vw, 3.25rem);
	}

	body.sempa-site h3 {
		font-size: clamp(1.05rem, 1.3vw, 1.35rem);
		letter-spacing: -0.025em;
	}

	body.sempa-site p {
		color: rgba(246, 248, 252, 0.78);
	}

	body.sempa-site .eyebrow {
		color: rgba(223, 200, 144, 0.84);
		font-size: 0.72rem;
		font-weight: 800;
		letter-spacing: 0.16em;
		margin-bottom: 1.15rem;
	}

	body.sempa-site #wrapper {
		box-shadow: none;
	}

	body.sempa-site .panel,
	body.sempa-site .panel.color1,
	body.sempa-site .panel.color2,
	body.sempa-site .panel.color2-alt,
	body.sempa-site .panel.color4,
	body.sempa-site .panel.color4-alt {
		background-color: rgba(5, 9, 16, 0.28);
		background-image: linear-gradient(135deg, rgba(13, 19, 31, 0.5), rgba(3, 6, 12, 0.3));
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}

	body.sempa-site .panel > .color0,
	body.sempa-site .panel > .color1,
	body.sempa-site .panel > .color2,
	body.sempa-site .panel > .color2-alt,
	body.sempa-site .panel > .color4,
	body.sempa-site .panel > .color4-alt {
		background-color: rgba(7, 11, 19, 0.48);
		background-image: linear-gradient(135deg, rgba(19, 26, 39, 0.46), rgba(4, 7, 13, 0.32));
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}

	body.sempa-site .panel > .inner.columns.divided > *:before,
	body.sempa-site .about-panel > .about-copy,
	body.sempa-site .about-studio-image,
	body.sempa-site .hero-panel .hero-image {
		border: 0;
		border-left: 0;
		border-bottom: 0;
	}

	body.sempa-site .panel > .inner.columns.divided > *:before {
		display: none;
	}

	body.sempa-site .button {
		border-radius: 0.45rem;
		box-shadow: inset 0 0 0 1px rgba(246, 248, 252, 0.24);
		font-weight: 800;
		letter-spacing: 0.18em;
	}

	body.sempa-site .button:hover {
		box-shadow: inset 0 0 0 1px rgba(246, 248, 252, 0.42);
	}

	body.sempa-site .button.primary {
		background: linear-gradient(135deg, #dec47c, #caa85f);
		color: #050607 !important;
	}

	body.sempa-site .button.primary:hover {
		background: linear-gradient(135deg, #ead391, #d6b86f);
	}

	body.sempa-site .hero-panel > .content.color0 {
		background-color: rgba(7, 11, 19, 0.58);
		background-image: radial-gradient(circle at 18% 18%, rgba(223, 200, 144, 0.08), transparent 19rem), linear-gradient(135deg, rgba(15, 21, 33, 0.55), rgba(3, 6, 12, 0.2));
		padding-right: 2.75rem;
	}

	body.sempa-site .hero-title {
		font-size: clamp(3.15rem, 5.25vw, 5.8rem);
		line-height: 0.98;
		letter-spacing: -0.07em;
		max-width: 10.5ch;
	}

	body.sempa-site .hero-title span,
	body.sempa-site .hero-title strong {
		display: block;
	}

	body.sempa-site .hero-title span {
		color: rgba(246, 248, 252, 0.74);
		font-size: 0.58em;
		font-weight: 700;
		letter-spacing: -0.045em;
		line-height: 1.05;
	}

	body.sempa-site .hero-title strong {
		color: #fbfaf7;
		font-weight: 800;
	}

	body.sempa-site .hero-panel .lead {
		color: rgba(246, 248, 252, 0.76);
		font-size: clamp(1rem, 1.15vw, 1.18rem);
		line-height: 1.75;
		max-width: 38rem;
	}

	body.sempa-site .hero-panel .hero-image {
		align-self: center;
		aspect-ratio: 1;
		background: rgba(7, 11, 19, 0.72);
		border-radius: 50%;
		box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(246, 248, 252, 0.1);
		height: clamp(20rem, 48vh, 34rem);
		margin: 0 4rem 0 0;
		overflow: hidden;
		width: clamp(20rem, 48vh, 34rem) !important;
	}

	body.sempa-site .hero-panel .hero-image:after {
		background-image: radial-gradient(circle at 50% 28%, transparent 48%, rgba(5, 6, 7, 0.18) 100%);
	}

	body.sempa-site .hero-panel .hero-image img {
		object-position: center 24%;
		transform: scale(1.08);
	}

	body.sempa-site .about-panel,
	body.sempa-site .about-panel > .about-copy {
		background-color: rgba(7, 11, 19, 0.46);
		background-image: linear-gradient(135deg, rgba(13, 19, 31, 0.48), rgba(4, 7, 13, 0.28));
	}

	body.sempa-site .about-panel > .about-copy {
		box-shadow: none;
		padding: 3rem 3.25rem 2.25rem 3.25rem;
	}

	body.sempa-site .about-panel > .about-copy h2 {
		font-size: clamp(2rem, 2.7vw, 3rem);
		max-width: 11.5em;
	}

	body.sempa-site .about-studio-image {
		box-shadow: none;
	}

	body.sempa-site .credential-list li,
	body.sempa-site .tag-list li {
		background: rgba(246, 248, 252, 0.045);
		border: 1px solid rgba(246, 248, 252, 0.13);
		color: rgba(246, 248, 252, 0.72);
	}

	body.sempa-site .credential-list li:nth-child(-n+2) {
		border-color: rgba(246, 248, 252, 0.18);
		color: rgba(246, 248, 252, 0.82);
	}

	body.sempa-site .audio-card {
		background: rgba(7, 11, 19, 0.5);
		border: 1px solid rgba(246, 248, 252, 0.12);
		box-shadow: none;
	}

	body.sempa-site ul.contact-icons > li:before {
		background: rgba(246, 248, 252, 0.9);
		color: #07101f;
	}

	@media screen and (max-width: 736px) {

		body.sempa-site,
		body.sempa-site input,
		body.sempa-site select,
		body.sempa-site textarea {
			font-size: 16px;
		}

		body.sempa-site .hero-panel > .content.color0 {
			padding-right: 1.75rem;
		}

		body.sempa-site .hero-title {
			font-size: clamp(3rem, 14vw, 4.75rem);
		}

		body.sempa-site .hero-panel .hero-image {
			height: min(72vw, 22rem) !important;
			margin: 2rem auto 0 auto;
			width: min(72vw, 22rem) !important;
		}

		body.sempa-site .hero-panel .hero-image img {
			object-position: center 18%;
		}

		body.sempa-site .about-panel > .about-copy {
			padding: 2.25rem 1.75rem 1.5rem 1.75rem;
		}

	}

/* Solid section system */

	body.sempa-site {
		--surface: #070b13;
		--surface-deep: #050914;
		--card: #0d1420;
		--card-soft: #0a101a;
		--line: rgba(246, 248, 252, 0.14);
		--line-strong: rgba(246, 248, 252, 0.22);
		--text: #f6f8fc;
		--muted: rgba(246, 248, 252, 0.72);
		--accent: #dec47c;
		--shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.32);
	}

	body.sempa-site .panel,
	body.sempa-site .panel.color1,
	body.sempa-site .panel.color2,
	body.sempa-site .panel.color2-alt,
	body.sempa-site .panel.color4,
	body.sempa-site .panel.color4-alt,
	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .specs-panel,
	body.sempa-site .contact-panel {
		background: var(--surface) !important;
		background-color: var(--surface) !important;
		background-image: none !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	body.sempa-site .panel > .color0,
	body.sempa-site .panel > .color1,
	body.sempa-site .panel > .color2,
	body.sempa-site .panel > .color2-alt,
	body.sempa-site .panel > .color4,
	body.sempa-site .panel > .color4-alt,
	body.sempa-site .hero-panel > .content.color0,
	body.sempa-site .about-panel > .about-copy,
	body.sempa-site .demo-panel > .intro,
	body.sempa-site .specs-panel > .intro,
	body.sempa-site .contact-panel > .intro {
		background: var(--surface) !important;
		background-color: var(--surface) !important;
		background-image: none !important;
	}

	body.sempa-site .hero-panel > .content.color0:before {
		display: none;
	}

	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .specs-panel,
	body.sempa-site .contact-panel {
		box-shadow: var(--shadow);
	}

	body.sempa-site .hero-panel .hero-image,
	body.sempa-site .about-studio-image,
	body.sempa-site .audio-card {
		background: var(--card) !important;
		box-shadow: var(--shadow);
	}

	body.sempa-site .about-panel > .about-copy {
		box-shadow: none;
		padding-right: 2.75rem;
	}

	body.sempa-site .about-proof {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 3.5rem 3.5rem 2rem 0;
	}

	body.sempa-site .about-studio-image {
		aspect-ratio: 4 / 5;
		border: 1px solid var(--line) !important;
		border-radius: 1rem;
		height: auto;
		max-width: 24rem;
		overflow: hidden;
		width: 100% !important;
	}

	body.sempa-site .about-studio-image:after {
		background: linear-gradient(180deg, rgba(5, 9, 20, 0), rgba(5, 9, 20, 0.18));
	}

	body.sempa-site .about-studio-image img {
		object-position: center 20%;
		filter: saturate(0.92) contrast(1.02) brightness(0.86);
	}

	body.sempa-site .credential-list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.65rem;
		margin-top: 1.15rem;
		width: 100%;
	}

	body.sempa-site .credential-list li {
		align-items: center;
		background: var(--card-soft) !important;
		border: 1px solid var(--line) !important;
		border-radius: 0.5rem;
		box-shadow: 0 0.85rem 2rem rgba(0, 0, 0, 0.18);
		color: rgba(246, 248, 252, 0.84) !important;
		display: flex;
		font-size: 0.62rem;
		font-weight: 800;
		justify-content: center;
		letter-spacing: 0.11em;
		min-height: 2.85rem;
		padding: 0.55rem 0.7rem;
		text-align: center;
		text-transform: uppercase;
	}

	body.sempa-site .credential-list li:first-child {
		background: rgba(222, 196, 124, 0.12) !important;
		border-color: rgba(222, 196, 124, 0.32) !important;
		color: var(--text) !important;
		grid-column: span 2;
	}

	body.sempa-site .audio-card,
	body.sempa-site .tag-list li {
		border-color: var(--line) !important;
	}

	body.sempa-site .tag-list li {
		background: var(--card-soft) !important;
		color: var(--muted) !important;
	}

	body.sempa-site .button {
		box-shadow: inset 0 0 0 1px var(--line-strong);
	}

	body.sempa-site .button:hover {
		box-shadow: inset 0 0 0 1px rgba(246, 248, 252, 0.38);
	}

	@media screen and (max-width: 736px) {

		body.sempa-site .about-proof {
			padding: 0 1.75rem 2.25rem 1.75rem;
			width: 100% !important;
		}

		body.sempa-site .about-studio-image {
			height: auto !important;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .credential-list {
			grid-template-columns: 1fr;
		}

		body.sempa-site .credential-list li:first-child {
			grid-column: auto;
		}

	}

/* Final story-flow refinements */

	body.sempa-site:after {
		background-color: #050607;
		background-image:
			radial-gradient(125% 125% at 50% 92%, #000000 38%, #0d1a36 100%),
			radial-gradient(circle at 82% 18%, rgba(214, 179, 108, 0.1), transparent 28rem),
			linear-gradient(135deg, #050607 0%, #11151d 48%, #050607 100%);
		background-position: center, center, center;
		background-repeat: no-repeat;
		background-size: cover, cover, cover;
	}

	body.sempa-site .about-panel {
		position: relative;
	}

	body.sempa-site .about-panel > .about-copy {
		padding-bottom: 7.25rem;
	}

	body.sempa-site .about-proof {
		align-items: center;
		justify-content: center;
		padding: 3.5rem 3.5rem 7.25rem 0;
	}

	body.sempa-site .about-studio-image {
		aspect-ratio: 4 / 5;
		border: 0 !important;
		border-radius: 1.15rem;
		box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.34) !important;
		max-width: 19.5rem;
		width: 100% !important;
	}

	body.sempa-site .about-studio-image img {
		object-fit: cover;
		object-position: center 18%;
	}

	body.sempa-site .credential-list.about-proof-strip {
		bottom: 2.25rem;
		display: flex;
		flex-wrap: wrap;
		gap: 0.65rem;
		left: 3.5rem;
		list-style: none;
		margin: 0;
		padding: 0;
		position: absolute;
		right: 3.5rem;
		width: auto;
	}

	body.sempa-site .credential-list.about-proof-strip li {
		background: var(--card-soft) !important;
		border: 1px solid var(--line) !important;
		border-radius: 999px;
		box-shadow: 0 0.85rem 2rem rgba(0, 0, 0, 0.16);
		color: var(--muted) !important;
		font-size: 0.72rem;
		font-weight: 700;
		letter-spacing: 0.035em;
		line-height: 1.2;
		margin: 0;
		min-height: 0;
		padding: 0.58rem 0.95rem;
		text-align: center;
		text-transform: none;
	}

	body.sempa-site .credential-list.about-proof-strip li:first-child {
		background: rgba(222, 196, 124, 0.1) !important;
		border-color: rgba(222, 196, 124, 0.26) !important;
		color: rgba(246, 248, 252, 0.88) !important;
		grid-column: auto;
	}

	body.sempa-site .demo-panel > .demo-list {
		align-items: center;
		flex-direction: column;
		gap: 1rem;
		justify-content: center;
		padding-top: 3.5rem;
		padding-bottom: 3.5rem;
	}

	body.sempa-site .demo-panel > .demo-list > * {
		margin-left: 0 !important;
		max-width: 34rem;
		width: 34rem !important;
	}

	body.sempa-site .demo-panel .audio-card {
		padding: 1.15rem 1.35rem;
		width: 100%;
	}

	body.sempa-site .demo-panel .audio-card p {
		margin-bottom: 1.15rem;
		min-height: 0;
	}

	body.sempa-site .contact-panel > .intro {
		padding-right: 2.75rem;
	}

	body.sempa-site .contact-simple {
		justify-content: center;
		padding: 3.5rem 3.5rem 2rem 3.5rem;
		width: 42rem;
	}

	body.sempa-site .contact-simple .contact-email {
		font-size: clamp(1.75rem, 2.4vw, 2.75rem);
		font-weight: 800;
		letter-spacing: -0.045em;
		margin: 0 0 2rem 0;
	}

	body.sempa-site .contact-simple .contact-email a {
		border-bottom-color: rgba(222, 196, 124, 0.38);
	}

	body.sempa-site .contact-link-row {
		display: flex;
		flex-wrap: wrap;
		gap: 0.7rem;
		list-style: none;
		margin: 0;
		padding-left: 0;
	}

	body.sempa-site .contact-link-row li {
		margin: 0;
		padding-left: 0;
	}

	body.sempa-site .contact-link-row li:before {
		display: none;
	}

	body.sempa-site .contact-link-row a {
		align-items: center;
		background: var(--card-soft);
		border: 1px solid var(--line);
		border-radius: 999px;
		color: var(--muted);
		display: inline-flex;
		font-size: 0.78rem;
		font-weight: 700;
		gap: 0.5rem;
		letter-spacing: 0.03em;
		padding: 0.62rem 0.95rem;
	}

	body.sempa-site .contact-link-row .icon {
		color: rgba(246, 248, 252, 0.86);
		font-size: 0.9rem;
	}

	body.sempa-site .contact-link-row a:hover {
		border-color: rgba(222, 196, 124, 0.32);
		color: var(--text);
	}

	@media screen and (max-width: 736px) {

		body.sempa-site .about-panel > .about-copy {
			padding-bottom: 1.5rem;
		}

		body.sempa-site .about-proof {
			padding: 0 1.75rem 1.5rem 1.75rem;
		}

		body.sempa-site .about-studio-image {
			max-width: 18rem;
		}

		body.sempa-site .credential-list.about-proof-strip {
			left: auto;
			padding: 0 1.75rem 2.25rem 1.75rem;
			position: static;
			right: auto;
			width: 100%;
		}

		body.sempa-site .demo-panel > .demo-list > * {
			max-width: 100%;
			width: 100% !important;
		}

		body.sempa-site .contact-simple {
			padding: 1.5rem 1.75rem 2.25rem 1.75rem;
			width: 100%;
		}

	}

/* Final typography and contact alignment pass */

	body.sempa-site,
	body.sempa-site input,
	body.sempa-site select,
	body.sempa-site textarea {
		font-family: "Inter", Helvetica, sans-serif;
		font-size: clamp(16px, 0.9vw, 18px);
		font-weight: 400;
		letter-spacing: -0.015em;
		line-height: 1.68;
	}

	body.sempa-site h1,
	body.sempa-site h2,
	body.sempa-site h3,
	body.sempa-site h4,
	body.sempa-site h5,
	body.sempa-site h6 {
		font-family: "Inter", Helvetica, sans-serif;
		font-weight: 700;
		letter-spacing: -0.06em;
		line-height: 1.04;
	}

	body.sempa-site p {
		color: rgba(232, 237, 246, 0.74);
		font-size: clamp(1rem, 0.95vw, 1.08rem);
		line-height: 1.68;
	}

	body.sempa-site .eyebrow {
		font-size: 0.7rem;
		font-weight: 800;
		letter-spacing: 0.18em;
	}

	body.sempa-site .hero-title {
		font-size: clamp(3.15rem, 5vw, 5.45rem);
		letter-spacing: -0.075em;
	}

	body.sempa-site .hero-title span {
		font-weight: 600;
	}

	body.sempa-site .hero-title strong {
		font-weight: 800;
	}

	body.sempa-site h2,
	body.sempa-site .about-panel > .about-copy h2,
	body.sempa-site .demo-panel > .demo-copy h2 {
		font-size: clamp(2.25rem, 2.85vw, 3.35rem);
	}

	body.sempa-site .audio-card h3 {
		font-size: clamp(1.1rem, 1.15vw, 1.3rem);
		font-weight: 700;
		letter-spacing: -0.04em;
	}

	body.sempa-site .button,
	body.sempa-site .credential-list.about-proof-strip li,
	body.sempa-site .contact-link-row a {
		font-family: "Inter", Helvetica, sans-serif;
	}

	body.sempa-site .contact-simple {
		align-items: center;
		justify-content: center;
		padding-right: 3.5rem;
		width: 42rem;
	}

	body.sempa-site .contact-inline {
		align-items: center;
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
		text-align: center;
		white-space: normal;
		width: 100%;
	}

	body.sempa-site .contact-simple .contact-email {
		flex: 0 0 auto;
		font-size: clamp(1.35rem, 1.7vw, 2rem);
		font-weight: 700;
		letter-spacing: -0.055em;
		line-height: 1.1;
		margin: 0;
	}

	body.sempa-site .contact-simple .contact-email a {
		border-bottom-color: rgba(222, 196, 124, 0.3);
	}

	body.sempa-site .contact-link-row {
		flex: 0 1 auto;
		flex-wrap: wrap;
		gap: 0.55rem;
		justify-content: center;
		max-width: 38rem;
	}

	body.sempa-site .contact-link-row a {
		font-size: 0.72rem;
		font-weight: 700;
		gap: 0.42rem;
		letter-spacing: 0.015em;
		padding: 0.55rem 0.78rem;
		white-space: nowrap;
	}

	body.sempa-site .contact-link-row .icon {
		font-size: 0.82rem;
	}

	@media screen and (max-width: 736px) {

		body.sempa-site,
		body.sempa-site input,
		body.sempa-site select,
		body.sempa-site textarea {
			font-size: 16px;
		}

		body.sempa-site .contact-simple {
			align-items: flex-start;
			padding-right: 1.75rem;
			width: 100%;
		}

		body.sempa-site .contact-inline {
			align-items: flex-start;
			flex-direction: column;
			white-space: normal;
		}

		body.sempa-site .contact-link-row {
			flex-wrap: wrap;
		}

	}

/* Approved Midnight Booth Slate layer */

	body.sempa-site {
		--booth-black: #050607;
		--panel: #070B13;
		--panel-deep: #050914;
		--card: #0D1420;
		--card-soft: #0A101A;
		--text: #E8EDF6;
		--muted: rgba(232, 237, 246, 0.72);
		--faint: rgba(232, 237, 246, 0.48);
		--line: rgba(232, 237, 246, 0.14);
		--line-strong: rgba(232, 237, 246, 0.24);
		--cue: #DEC47C;
		--cue-soft: rgba(222, 196, 124, 0.18);
		--shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.34);
		background: var(--booth-black);
		color: var(--text);
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: clamp(16px, 0.9vw, 18px);
		font-weight: 400;
		letter-spacing: 0;
		line-height: 1.65;
	}

	body.sempa-site,
	body.sempa-site input,
	body.sempa-site select,
	body.sempa-site textarea,
	body.sempa-site .button,
	body.sempa-site .credential-list.about-proof-strip li,
	body.sempa-site .contact-link-row a {
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	}

	body.sempa-site h1,
	body.sempa-site h2,
	body.sempa-site h3,
	body.sempa-site h4,
	body.sempa-site h5,
	body.sempa-site h6 {
		font-family: "Bricolage Grotesque", "Arial Narrow", Arial, sans-serif;
		font-weight: 700;
		letter-spacing: -0.045em;
		line-height: 1.02;
	}

	body.sempa-site h1.major,
	body.sempa-site h2.major,
	body.sempa-site h3.major {
		margin-bottom: 1.35rem;
	}

	body.sempa-site h1.major:after,
	body.sempa-site h2.major:after,
	body.sempa-site h3.major:after {
		display: none;
	}

	body.sempa-site p {
		color: var(--muted);
		font-size: clamp(1rem, 0.95vw, 1.08rem);
		line-height: 1.68;
	}

	body.sempa-site a:focus:not(:focus-visible),
	body.sempa-site button:focus:not(:focus-visible),
	body.sempa-site input[type="range"]:focus:not(:focus-visible) {
		outline: 0;
	}

	body.sempa-site a:focus-visible,
	body.sempa-site button:focus-visible,
	body.sempa-site input[type="range"]:focus-visible {
		outline: 1px solid rgba(222, 196, 124, 0.74);
		outline-offset: 0.12rem;
	}

	body.sempa-site .eyebrow {
		color: var(--cue);
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: 0.69rem;
		font-weight: 700;
		letter-spacing: 0.18em;
		line-height: 1.2;
		margin: 0 0 1.1rem 0;
		text-transform: uppercase;
	}

	body.sempa-site .panel,
	body.sempa-site .panel.color1,
	body.sempa-site .panel.color2,
	body.sempa-site .panel.color2-alt,
	body.sempa-site .panel.color4,
	body.sempa-site .panel.color4-alt,
	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .contact-panel,
	body.sempa-site .panel > .color0,
	body.sempa-site .panel > .color1,
	body.sempa-site .panel > .color2,
	body.sempa-site .panel > .color2-alt,
	body.sempa-site .panel > .color4,
	body.sempa-site .panel > .color4-alt,
	body.sempa-site .hero-panel > .content.color0,
	body.sempa-site .about-panel > .about-copy,
	body.sempa-site .demo-panel > .intro,
	body.sempa-site .contact-panel > .intro {
		background: var(--panel) !important;
		background-color: var(--panel) !important;
		background-image: none !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	body.sempa-site #wrapper {
		box-shadow: var(--shadow);
		height: min(38rem, calc(100vh - 8rem));
		min-height: 32rem;
	}

	body.sempa-site .button {
		border-radius: 0.42rem;
		box-shadow: inset 0 0 0 1px var(--line-strong);
		font-size: 0.62rem;
		font-weight: 700;
		letter-spacing: 0.14rem;
	}

	body.sempa-site .button.primary {
		background: linear-gradient(135deg, #dec47c, #caa85f);
		color: var(--booth-black) !important;
	}

	body.sempa-site .button:hover {
		box-shadow: inset 0 0 0 1px rgba(232, 237, 246, 0.42);
	}

	body.sempa-site .button.primary:hover {
		background: linear-gradient(135deg, #ead391, #d6b86f);
	}

	body.sempa-site .cue-rail {
		align-items: center;
		background: rgba(5, 6, 7, 0.72);
		border: 1px solid var(--line);
		border-radius: 999px;
		bottom: 1.35rem;
		display: flex;
		gap: 0.25rem;
		left: 50%;
		padding: 0.34rem;
		position: fixed;
		transform: translateX(-50%);
		z-index: 10200;
	}

	body.sempa-site .cue-link {
		align-items: center;
		border: 0;
		border-radius: 999px;
		color: var(--faint);
		display: inline-flex;
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: 0.63rem;
		font-weight: 600;
		gap: 0.42rem;
		letter-spacing: 0.04em;
		line-height: 1;
		padding: 0.56rem 0.72rem;
		transition: background-color 0.26s ease, color 0.26s ease;
		text-decoration: none;
	}

	body.sempa-site .cue-link:before {
		background: rgba(232, 237, 246, 0.26);
		border-radius: 999px;
		content: '';
		display: block;
		height: 0.34rem;
		transition: background-color 0.26s ease, box-shadow 0.26s ease, transform 0.26s ease;
		width: 0.34rem;
	}

	body.sempa-site .cue-link.is-active {
		background: var(--cue-soft);
		color: var(--text);
	}

	body.sempa-site .cue-link.is-active:before {
		background: var(--cue);
		box-shadow: 0 0 0.55rem rgba(222, 196, 124, 0.34);
		transform: scale(1.03);
	}

	body.sempa-site .cue-count {
		color: inherit;
	}

	body.sempa-site .cue-label {
		color: inherit;
	}

	body.sempa-site .hero-title {
		font-size: clamp(3.2rem, 5.2vw, 5.65rem);
		letter-spacing: -0.06em;
		line-height: 0.98;
		max-width: 10.5ch;
	}

	body.sempa-site .hero-title span,
	body.sempa-site .hero-title strong {
		display: block;
	}

	body.sempa-site .hero-title span {
		color: rgba(232, 237, 246, 0.74);
		font-size: 0.58em;
		font-weight: 600;
		letter-spacing: -0.035em;
	}

	body.sempa-site .hero-title strong {
		color: var(--text);
		font-weight: 700;
	}

	body.sempa-site .hero-panel .lead {
		color: rgba(232, 237, 246, 0.78);
		font-size: clamp(1rem, 1.15vw, 1.18rem);
		line-height: 1.75;
		max-width: 37rem;
	}

	body.sempa-site .hero-panel .hero-image {
		align-self: center;
		aspect-ratio: 1;
		background: var(--card) !important;
		border-radius: 50%;
		box-shadow: var(--shadow), 0 0 0 1px rgba(232, 237, 246, 0.1);
		height: clamp(19rem, 47vh, 32rem);
		margin: 0 3.25rem 0 0;
		overflow: hidden;
		width: clamp(19rem, 47vh, 32rem) !important;
	}

	body.sempa-site .hero-panel .hero-image img {
		filter: saturate(0.92) contrast(1.04) brightness(0.94);
		object-position: center 24%;
		transform: scale(1.08);
	}

	body.sempa-site .about-panel {
		align-items: stretch;
		overflow: hidden;
	}

	body.sempa-site .about-panel > .about-copy {
		justify-content: center;
		padding: 3.25rem 3.35rem 2.75rem 3.35rem;
	}

	body.sempa-site .about-panel > .about-copy h2 {
		font-size: clamp(2.25rem, 3.1vw, 3.45rem);
		line-height: 1;
		margin-bottom: 1.45rem;
		max-width: 10.5em;
	}

	body.sempa-site .about-panel > .about-copy p {
		max-width: 36rem;
	}

	body.sempa-site .about-details {
		border-top: 1px solid var(--line);
		display: grid;
		gap: 0;
		margin-top: 1.25rem;
		max-width: 36rem;
	}

	body.sempa-site .about-details div {
		align-items: baseline;
		border-bottom: 1px solid var(--line);
		display: grid;
		gap: 1.2rem;
		grid-template-columns: 7rem minmax(0, 1fr);
		padding: 0.78rem 0;
	}

	body.sempa-site .about-details span {
		color: var(--cue);
		font-size: 0.7rem;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-transform: uppercase;
	}

	body.sempa-site .about-details strong {
		color: rgba(232, 237, 246, 0.86);
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: 0.95rem;
		font-weight: 500;
		line-height: 1.35;
	}

	body.sempa-site .about-proof {
		align-items: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 3.25rem 3.25rem 2.75rem 0;
	}

	body.sempa-site .about-studio-image {
		aspect-ratio: 4 / 5;
		background: var(--card) !important;
		border: 0 !important;
		border-radius: 1.1rem;
		box-shadow: var(--shadow) !important;
		height: auto !important;
		max-width: 20rem;
		overflow: hidden;
		width: 100% !important;
	}

	body.sempa-site .about-studio-image:after {
		background: linear-gradient(180deg, rgba(5, 9, 20, 0), rgba(5, 9, 20, 0.28));
	}

	body.sempa-site .about-studio-image img {
		filter: saturate(0.92) contrast(1.02) brightness(0.86);
		object-fit: cover;
		object-position: center 18%;
	}

	body.sempa-site .booth-slate {
		align-self: stretch;
		background: var(--card-soft);
		border: 1px solid var(--line);
		border-radius: 0.7rem;
		box-shadow: 0 0.85rem 2rem rgba(0, 0, 0, 0.2);
		margin: -1.35rem auto 0 auto;
		max-width: 17rem;
		padding: 0.85rem 1rem;
		position: relative;
		width: calc(100% - 2.5rem);
		z-index: 2;
	}

	body.sempa-site .booth-slate span,
	body.sempa-site .booth-slate strong {
		display: block;
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	}

	body.sempa-site .booth-slate span {
		color: var(--faint);
		font-size: 0.72rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	body.sempa-site .booth-slate strong {
		color: var(--text);
		font-size: 1rem;
		font-weight: 600;
		margin-top: 0.18rem;
	}

	body.sempa-site .demo-panel > .intro {
		padding-right: 1.5rem;
		width: 23rem;
	}

	body.sempa-site .demo-panel > .demo-list {
		align-items: center;
		flex-direction: column;
		gap: 1rem;
		justify-content: center;
		padding: 3.25rem 3.5rem 3.25rem 2rem;
	}

	body.sempa-site .demo-panel > .demo-list > * {
		margin-left: 0 !important;
		max-width: 35rem;
		width: 35rem !important;
	}

	body.sempa-site .audio-card {
		background: var(--card) !important;
		border: 1px solid var(--line) !important;
		border-radius: 0.9rem;
		box-shadow: var(--shadow);
		padding: 1.15rem 1.25rem;
		transition: border-color 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
	}

	body.sempa-site .audio-card.is-playing {
		background: linear-gradient(135deg, rgba(222, 196, 124, 0.08), rgba(13, 20, 32, 0.96)) !important;
		border-color: rgba(222, 196, 124, 0.38) !important;
		box-shadow: var(--shadow), inset 0 0 0 1px rgba(222, 196, 124, 0.08);
	}

	body.sempa-site .audio-card h3 {
		font-size: clamp(1.1rem, 1.15vw, 1.3rem);
		letter-spacing: -0.025em;
		margin-bottom: 0.45rem;
		transition: color 0.22s ease;
	}

	body.sempa-site .audio-card.is-playing h3 {
		color: var(--text);
	}

	body.sempa-site .audio-card p {
		font-size: 0.95rem;
		line-height: 1.55;
		margin-bottom: 1rem;
		min-height: 0;
	}

	body.sempa-site .audio-card.is-enhanced audio {
		height: 1px;
		left: -9999px;
		overflow: hidden;
		position: absolute;
		width: 1px;
	}

	body.sempa-site .custom-player {
		align-items: center;
		display: flex;
		gap: 0.9rem;
	}

	body.sempa-site .player-toggle {
		align-items: center;
		appearance: none;
		background: var(--cue-soft);
		border: 1px solid rgba(222, 196, 124, 0.34);
		border-radius: 50%;
		color: var(--cue);
		cursor: pointer;
		display: inline-flex;
		flex: 0 0 auto;
		height: 2.75rem;
		justify-content: center;
		padding: 0;
		transition: background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
		width: 2.75rem;
	}

	body.sempa-site .audio-card.is-playing .player-toggle {
		background: var(--cue);
		border-color: var(--cue);
		box-shadow: 0 0 1.2rem rgba(222, 196, 124, 0.2);
		color: var(--booth-black);
	}

	body.sempa-site .player-icon {
		border-bottom: 0.42rem solid transparent;
		border-left: 0.66rem solid currentColor;
		border-top: 0.42rem solid transparent;
		display: block;
		margin-left: 0.12rem;
	}

	body.sempa-site .audio-card.is-playing .player-icon {
		border: 0;
		height: 0.9rem;
		margin-left: 0;
		position: relative;
		width: 0.72rem;
	}

	body.sempa-site .audio-card.is-playing .player-icon:before,
	body.sempa-site .audio-card.is-playing .player-icon:after {
		background: currentColor;
		content: '';
		height: 100%;
		position: absolute;
		top: 0;
		width: 0.24rem;
	}

	body.sempa-site .audio-card.is-playing .player-icon:before {
		left: 0;
	}

	body.sempa-site .audio-card.is-playing .player-icon:after {
		right: 0;
	}

	body.sempa-site .player-main {
		flex: 1 1 auto;
		min-width: 0;
	}

	body.sempa-site .player-status {
		align-items: center;
		color: var(--faint);
		display: flex;
		font-size: 0.72rem;
		font-weight: 600;
		justify-content: space-between;
		letter-spacing: 0.03em;
		line-height: 1;
		margin-bottom: 0.52rem;
		text-transform: uppercase;
		transition: color 0.22s ease;
	}

	body.sempa-site .audio-card.is-playing .player-status span:first-child {
		color: var(--cue);
	}

	body.sempa-site .player-seek {
		appearance: none;
		background: transparent;
		display: block;
		height: 1rem;
		margin: 0;
		width: 100%;
	}

	body.sempa-site .player-seek::-webkit-slider-runnable-track {
		background: linear-gradient(90deg, var(--cue) var(--progress, 0%), rgba(232, 237, 246, 0.14) var(--progress, 0%));
		border-radius: 999px;
		height: 0.25rem;
		transition: background 0.18s ease, height 0.18s ease;
	}

	body.sempa-site .audio-card.is-playing .player-seek::-webkit-slider-runnable-track {
		height: 0.3rem;
	}

	body.sempa-site .player-seek::-webkit-slider-thumb {
		appearance: none;
		background: var(--cue);
		border: 0;
		border-radius: 50%;
		height: 0.8rem;
		margin-top: -0.275rem;
		width: 0.8rem;
	}

	body.sempa-site .player-seek::-moz-range-track {
		background: rgba(232, 237, 246, 0.14);
		border-radius: 999px;
		height: 0.25rem;
		transition: height 0.18s ease;
	}

	body.sempa-site .audio-card.is-playing .player-seek::-moz-range-track,
	body.sempa-site .audio-card.is-playing .player-seek::-moz-range-progress {
		height: 0.3rem;
	}

	body.sempa-site .player-seek::-moz-range-progress {
		background: var(--cue);
		border-radius: 999px;
		height: 0.25rem;
	}

	body.sempa-site .player-seek::-moz-range-thumb {
		background: var(--cue);
		border: 0;
		border-radius: 50%;
		height: 0.8rem;
		width: 0.8rem;
	}

	body.sempa-site .contact-panel > .intro {
		padding-right: 2.25rem;
		width: 27rem;
	}

	body.sempa-site .contact-panel > .intro p:not(.eyebrow) {
		max-width: 22rem;
	}

	body.sempa-site .contact-simple {
		justify-content: center;
		padding: 3.25rem 3.5rem;
		width: 34rem;
	}

	body.sempa-site .contact-inline {
		align-items: flex-start;
		display: flex;
		flex-direction: column;
		gap: 1rem;
		text-align: left;
		width: 100%;
	}

	body.sempa-site .contact-email {
		align-items: center;
		background: linear-gradient(135deg, #dec47c, #caa85f);
		border: 0;
		border-radius: 0.65rem;
		color: var(--booth-black) !important;
		display: inline-flex;
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: 1.1rem;
		font-weight: 700;
		justify-content: center;
		letter-spacing: -0.01em;
		line-height: 1;
		padding: 1rem 1.15rem;
		text-decoration: none;
	}

	body.sempa-site .contact-address {
		color: var(--text);
		font-size: clamp(1.35rem, 1.7vw, 2rem);
		font-weight: 600;
		letter-spacing: -0.045em;
		line-height: 1.1;
		margin: 0 0 0.35rem 0;
	}

	body.sempa-site .contact-group {
		width: 100%;
	}

	body.sempa-site .contact-label {
		color: var(--faint);
		font-size: 0.68rem;
		font-weight: 700;
		letter-spacing: 0.12em;
		line-height: 1;
		margin: 0 0 0.55rem 0;
		text-transform: uppercase;
	}

	body.sempa-site .contact-link-row {
		display: flex;
		flex-wrap: wrap;
		gap: 0.55rem;
		justify-content: flex-start;
		list-style: none;
		margin: 0;
		max-width: 100%;
		padding-left: 0;
	}

	body.sempa-site .contact-link-row li {
		margin: 0;
		padding: 0;
	}

	body.sempa-site .contact-link-row li:before {
		display: none;
	}

	body.sempa-site .contact-link-row a {
		align-items: center;
		background: var(--card-soft);
		border: 1px solid var(--line);
		border-radius: 999px;
		color: var(--muted);
		display: inline-flex;
		font-size: 0.78rem;
		font-weight: 600;
		gap: 0.45rem;
		letter-spacing: 0.01em;
		padding: 0.58rem 0.82rem;
		white-space: nowrap;
	}

	body.sempa-site .contact-link-row-primary a {
		color: rgba(232, 237, 246, 0.86);
	}

	body.sempa-site .contact-link-row-secondary a {
		background: transparent;
		font-size: 0.74rem;
		padding: 0.46rem 0.68rem;
	}

	body.sempa-site .contact-link-row a:hover {
		border-color: rgba(222, 196, 124, 0.34);
		color: var(--text);
	}

	body.sempa-site .contact-footer {
		border-top: 1px solid var(--line);
		color: var(--faint);
		font-size: 0.72rem;
		line-height: 1.45;
		margin: 0.45rem 0 0 0;
		padding-top: 1rem;
		width: 100%;
	}

	body.sempa-site .contact-footer a {
		color: rgba(232, 237, 246, 0.78);
	}

	@media screen and (max-width: 980px) {

		html,
		body.sempa-site {
			height: auto;
		}

		body.sempa-site {
			overflow-x: hidden;
			overflow-y: auto;
		}

		body.sempa-site #page-wrapper {
			height: auto;
			padding: 1rem;
		}

		body.sempa-site #wrapper {
			flex-direction: column;
			height: auto;
			margin: 0 0 2rem 0;
			min-height: 0;
		}

		body.sempa-site #wrapper > .scrollZone {
			display: none;
		}

		body.sempa-site .panel,
		body.sempa-site .panel.banner.left {
			flex-direction: column;
			height: auto;
			width: 100% !important;
		}

		body.sempa-site .panel > *,
		body.sempa-site .panel .span-2-25,
		body.sempa-site .panel .span-3,
		body.sempa-site .panel .span-3-25,
		body.sempa-site .panel .span-4-25,
		body.sempa-site .panel .span-4-5 {
			width: 100% !important;
		}

		body.sempa-site .cue-rail {
			display: none;
		}

		body.sempa-site .hero-panel.left {
			flex-direction: column-reverse;
		}

		body.sempa-site .hero-panel .hero-image {
			height: min(72vw, 22rem) !important;
			margin: 2rem auto 0 auto;
			width: min(72vw, 22rem) !important;
		}

		body.sempa-site .hero-panel > .content.color0,
		body.sempa-site .about-panel > .about-copy,
		body.sempa-site .demo-panel > .intro,
		body.sempa-site .contact-panel > .intro,
		body.sempa-site .contact-simple {
			padding: 2.35rem 1.75rem 1.5rem 1.75rem;
		}

		body.sempa-site .about-proof {
			padding: 0 1.75rem 2rem 1.75rem;
		}

		body.sempa-site .about-studio-image {
			max-width: 18rem;
		}

		body.sempa-site .demo-panel > .demo-list {
			padding: 0 1.75rem 2.25rem 1.75rem;
		}

		body.sempa-site .demo-panel > .demo-list > * {
			max-width: 100%;
			width: 100% !important;
		}

		body.sempa-site .contact-simple {
			width: 100%;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .hero-title {
			font-size: clamp(2.75rem, 15vw, 4rem);
		}

		body.sempa-site .about-panel > .about-copy h2 {
			font-size: clamp(2rem, 11vw, 3rem);
		}

		body.sempa-site .about-details div {
			gap: 0.3rem;
			grid-template-columns: 1fr;
		}

		body.sempa-site .custom-player {
			align-items: flex-start;
		}

		body.sempa-site .player-status {
			align-items: flex-start;
			flex-direction: column;
			gap: 0.35rem;
		}

		body.sempa-site .contact-address {
			font-size: 1.2rem;
			word-break: break-word;
		}

	}

	@media (prefers-reduced-motion: reduce) {

		body.sempa-site *,
		body.sempa-site *:before,
		body.sempa-site *:after {
			transition-duration: 0.01ms !important;
		}

	}

/* Focused background, rail, and contact refinements */

	body.sempa-site .cue-rail {
		background: rgba(5, 6, 7, 0.68);
		gap: 0.12rem;
		padding: 0.28rem;
	}

	body.sempa-site .cue-link {
		font-size: 0.68rem;
		font-weight: 600;
		gap: 0.36rem;
		letter-spacing: 0.02em;
		padding: 0.52rem 0.68rem;
	}

	body.sempa-site .cue-link:before {
		height: 0.3rem;
		width: 0.3rem;
	}

	body.sempa-site .cue-link.is-active {
		background: rgba(222, 196, 124, 0.14);
	}

	body.sempa-site .cue-count {
		display: none;
	}

	body.sempa-site .contact-panel > .intro {
		justify-content: center;
		padding-right: 2rem;
		width: 31rem;
	}

	body.sempa-site .contact-panel > .intro .major {
		font-size: clamp(2.5rem, 3.45vw, 4.05rem);
		max-width: 8.6em;
	}

	body.sempa-site .contact-simple {
		padding: 3.25rem 4rem 3.25rem 2.5rem;
		width: 40rem;
	}

	body.sempa-site .contact-inline {
		gap: 1.2rem;
	}

	body.sempa-site .contact-address {
		border-bottom: 0;
		color: var(--text);
		display: inline-block;
		font-family: "Bricolage Grotesque", "Arial Narrow", Arial, sans-serif;
		font-size: clamp(2rem, 2.55vw, 3.05rem);
		font-weight: 700;
		letter-spacing: -0.05em;
		line-height: 1.02;
		margin: 0 0 0.25rem 0;
		padding-bottom: 0.22rem;
		position: relative;
		text-decoration: none;
	}

	body.sempa-site .contact-address:after {
		background: var(--cue);
		bottom: -1px;
		content: '';
		height: 1px;
		left: 0;
		position: absolute;
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 0.28s ease;
		width: 100%;
	}

	body.sempa-site .contact-address:hover {
		border-bottom-color: rgba(222, 196, 124, 0.18);
		color: var(--text);
	}

	body.sempa-site .contact-address:hover:after,
	body.sempa-site .contact-address:focus-visible:after {
		transform: scaleX(1);
	}

	body.sempa-site .contact-email,
	body.sempa-site .contact-label,
	body.sempa-site .contact-group {
		display: none;
	}

	body.sempa-site .contact-link-row {
		gap: 0.55rem;
		margin-top: 0.1rem;
	}

	body.sempa-site .contact-link-row a,
	body.sempa-site .contact-link-row-primary a,
	body.sempa-site .contact-link-row-secondary a {
		background: var(--card-soft);
		border: 1px solid var(--line);
		color: rgba(232, 237, 246, 0.78);
		font-size: 0.76rem;
		font-weight: 600;
		padding: 0.56rem 0.8rem;
		transition: border-color 0.2s ease, color 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
	}

	body.sempa-site .contact-link-row a:hover {
		background: rgba(232, 237, 246, 0.035);
		border-color: rgba(222, 196, 124, 0.34);
		color: var(--text);
		transform: translateY(-1px);
	}

	body.sempa-site .contact-link-row .icon {
		color: rgba(232, 237, 246, 0.82);
		font-size: 0.82rem;
	}

	body.sempa-site .contact-footer {
		margin-top: 0.4rem;
		max-width: 31rem;
	}

	@media screen and (max-width: 980px) {

		body.sempa-site .contact-panel > .intro,
		body.sempa-site .contact-simple {
			padding-left: 1.75rem;
			padding-right: 1.75rem;
			width: 100%;
		}

		body.sempa-site .contact-address {
			font-size: clamp(1.7rem, 7vw, 2.8rem);
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .contact-address {
			font-size: clamp(1.35rem, 9vw, 2rem);
			word-break: break-word;
		}

	}

/* Step 4: restrained section entrance rhythm */

	@keyframes sempa-rise-settle {
		0% {
			filter: blur(0.08rem);
			opacity: 0;
			transform: translateY(0.55rem);
		}

		100% {
			filter: blur(0);
			opacity: 1;
			transform: translateY(0);
		}
	}

	@keyframes sempa-image-settle {
		0% {
			opacity: 0;
			transform: translateY(0.45rem) scale(0.985);
		}

		100% {
			opacity: 1;
			transform: translateY(0) scale(1);
		}
	}

	body.sempa-site:not(.is-preload) .hero-panel .eyebrow,
	body.sempa-site:not(.is-preload) .hero-panel .hero-title,
	body.sempa-site:not(.is-preload) .hero-panel .lead,
	body.sempa-site:not(.is-preload) .hero-panel .actions,
	body.sempa-site:not(.is-preload) .hero-panel .hero-image {
		animation: sempa-rise-settle 0.58s cubic-bezier(0.2, 0.8, 0.2, 1) both;
	}

	body.sempa-site:not(.is-preload) .hero-panel .eyebrow {
		animation-delay: 0.04s;
	}

	body.sempa-site:not(.is-preload) .hero-panel .hero-title {
		animation-delay: 0.12s;
	}

	body.sempa-site:not(.is-preload) .hero-panel .lead {
		animation-delay: 0.2s;
	}

	body.sempa-site:not(.is-preload) .hero-panel .actions {
		animation-delay: 0.28s;
	}

	body.sempa-site:not(.is-preload) .hero-panel .hero-image {
		animation-delay: 0.32s;
		animation-name: sempa-image-settle;
	}

	@media (prefers-reduced-motion: reduce) {

		body.sempa-site:not(.is-preload) .hero-panel .eyebrow,
		body.sempa-site:not(.is-preload) .hero-panel .hero-title,
		body.sempa-site:not(.is-preload) .hero-panel .lead,
		body.sempa-site:not(.is-preload) .hero-panel .actions,
		body.sempa-site:not(.is-preload) .hero-panel .hero-image {
			animation: none !important;
		}

	}

/* Warm studio atmosphere background */

	body.sempa-site {
		background: #0A1020;
	}

	body.sempa-site:after {
		background-color: #0A1020;
		background-image:
			radial-gradient(120% 100% at 74% 72%, rgba(42, 59, 116, 0.72) 0%, rgba(16, 25, 54, 0.72) 34%, rgba(7, 10, 24, 0.16) 72%),
			radial-gradient(circle at 30% 34%, rgba(222, 196, 124, 0.14), transparent 28rem),
			radial-gradient(circle at 82% 16%, rgba(106, 82, 168, 0.22), transparent 31rem),
			linear-gradient(135deg, #090D1A 0%, #111A35 46%, #182755 100%);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}

/* Final brightness pass */

	body.sempa-site {
		--booth-black: #0A1020;
		--panel: #101A32;
		--panel-deep: #0C1428;
		--card: #14213D;
		--card-soft: #101B33;
		--line: rgba(232, 237, 246, 0.18);
		--line-strong: rgba(232, 237, 246, 0.3);
		--shadow: 0 1.25rem 3.25rem rgba(2, 6, 18, 0.28);
		background: #0F1830;
	}

	body.sempa-site:after {
		background-color: #0F1830;
		background-image:
			radial-gradient(115% 100% at 78% 74%, rgba(53, 76, 146, 0.82) 0%, rgba(25, 39, 82, 0.74) 38%, rgba(11, 17, 37, 0.18) 74%),
			radial-gradient(circle at 30% 32%, rgba(222, 196, 124, 0.18), transparent 29rem),
			radial-gradient(circle at 84% 12%, rgba(116, 90, 184, 0.26), transparent 32rem),
			linear-gradient(135deg, #0D1327 0%, #16234A 47%, #22366E 100%);
	}

	body.sempa-site .panel,
	body.sempa-site .panel.color1,
	body.sempa-site .panel.color2,
	body.sempa-site .panel.color2-alt,
	body.sempa-site .panel.color4,
	body.sempa-site .panel.color4-alt,
	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .contact-panel,
	body.sempa-site .panel > .color0,
	body.sempa-site .panel > .color1,
	body.sempa-site .panel > .color2,
	body.sempa-site .panel > .color2-alt,
	body.sempa-site .panel > .color4,
	body.sempa-site .panel > .color4-alt,
	body.sempa-site .hero-panel > .content.color0,
	body.sempa-site .about-panel > .about-copy,
	body.sempa-site .demo-panel > .intro,
	body.sempa-site .contact-panel > .intro {
		background: linear-gradient(135deg, rgba(18, 30, 58, 0.99), rgba(11, 18, 38, 0.99)) !important;
		background-color: var(--panel) !important;
	}

	body.sempa-site .hero-panel .hero-image,
	body.sempa-site .about-studio-image,
	body.sempa-site .audio-card,
	body.sempa-site .contact-link-row a,
	body.sempa-site .contact-link-row-primary a,
	body.sempa-site .contact-link-row-secondary a,
	body.sempa-site .booth-slate {
		background-color: var(--card) !important;
	}

	body.sempa-site .audio-card {
		background: linear-gradient(135deg, rgba(22, 36, 67, 0.98), rgba(13, 23, 47, 0.98)) !important;
	}

	body.sempa-site .audio-card.is-playing {
		background: linear-gradient(135deg, rgba(222, 196, 124, 0.1), rgba(22, 36, 67, 0.98)) !important;
	}

	body.sempa-site .about-details div,
	body.sempa-site .contact-footer,
	body.sempa-site .contact-link-row a,
	body.sempa-site .audio-card {
		border-color: var(--line) !important;
	}

/* Seamless surface correction */

	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .contact-panel,
	body.sempa-site .panel.color1,
	body.sempa-site .panel.color2-alt {
		background: #101A32 !important;
		background-color: #101A32 !important;
		background-image: none !important;
	}

	body.sempa-site .hero-panel > .content.color0,
	body.sempa-site .about-panel > .about-copy,
	body.sempa-site .demo-panel > .intro,
	body.sempa-site .contact-panel > .intro,
	body.sempa-site .contact-simple,
	body.sempa-site .demo-panel > .demo-list {
		background: transparent !important;
		background-color: transparent !important;
		background-image: none !important;
	}

	body.sempa-site .hero-panel .hero-image,
	body.sempa-site .about-studio-image,
	body.sempa-site .audio-card,
	body.sempa-site .booth-slate,
	body.sempa-site .contact-link-row a,
	body.sempa-site .contact-link-row-primary a,
	body.sempa-site .contact-link-row-secondary a {
		background: #14213D !important;
		background-color: #14213D !important;
		background-image: none !important;
	}

	body.sempa-site .audio-card.is-playing {
		background: #172646 !important;
		background-color: #172646 !important;
		background-image: none !important;
		border-color: rgba(222, 196, 124, 0.42) !important;
		box-shadow: var(--shadow), inset 0 0 0 1px rgba(222, 196, 124, 0.08);
	}

	body.sempa-site .hero-panel,
	body.sempa-site .about-panel,
	body.sempa-site .demo-panel,
	body.sempa-site .contact-panel {
		box-shadow: none !important;
	}

/* Mobile composition pass: desktop remains unchanged */

	body.sempa-site .mobile-hero-image,
	body.sempa-site .mobile-about-proof {
		display: none;
	}

	@media screen and (max-width: 980px) {

		body.sempa-site .hero-panel > .hero-image,
		body.sempa-site .about-panel > .about-proof:not(.mobile-about-proof) {
			display: none;
		}

		body.sempa-site .mobile-hero-image {
			display: block;
			height: min(60vw, 15.75rem) !important;
			margin: 1.35rem auto 1rem auto;
			width: min(60vw, 15.75rem) !important;
		}

		body.sempa-site .mobile-hero-image img {
			object-position: center 18%;
		}

		body.sempa-site .mobile-about-proof {
			display: flex;
			margin: 0 0 1.65rem 0;
			padding: 0;
			width: 100% !important;
		}

		body.sempa-site .mobile-about-proof .about-studio-image {
			max-width: min(80vw, 17rem);
		}

		body.sempa-site .about-panel > .about-copy h2 br {
			display: block;
		}

		body.sempa-site .about-panel > .about-copy h2 {
			margin-bottom: 1.25rem;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .hero-panel .actions {
			flex-direction: column;
			gap: 0.75rem;
			margin-left: 0;
		}

		body.sempa-site .hero-panel .actions li {
			padding-left: 0;
			width: 100%;
		}

		body.sempa-site .hero-panel .actions .button {
			width: 100%;
		}

		body.sempa-site .mobile-hero-image {
			height: min(58vw, 14.5rem) !important;
			width: min(58vw, 14.5rem) !important;
		}

	}

/* Tablet and mobile compatibility pass */

	@media screen and (max-width: 1180px) {

		html,
		body.sempa-site {
			height: auto;
		}

		body.sempa-site {
			overflow-x: hidden;
			overflow-y: auto;
		}

		body.sempa-site #page-wrapper {
			height: auto;
			padding: 1rem;
		}

		body.sempa-site #wrapper {
			flex-direction: column;
			height: auto;
			margin: 0 0 2rem 0;
			min-height: 0;
		}

		body.sempa-site #wrapper > .scrollZone,
		body.sempa-site .cue-rail {
			display: none;
		}

		body.sempa-site .panel,
		body.sempa-site .panel.banner.left {
			flex-direction: column;
			height: auto;
			width: 100% !important;
		}

		body.sempa-site .panel > *,
		body.sempa-site .panel .span-2-25,
		body.sempa-site .panel .span-3,
		body.sempa-site .panel .span-3-25,
		body.sempa-site .panel .span-4-25,
		body.sempa-site .panel .span-4-5 {
			width: 100% !important;
		}

		body.sempa-site .hero-panel > .hero-image,
		body.sempa-site .about-panel > .about-proof:not(.mobile-about-proof) {
			display: none !important;
		}

		body.sempa-site .hero-panel > .content.color0,
		body.sempa-site .about-panel > .about-copy,
		body.sempa-site .demo-panel > .intro,
		body.sempa-site .contact-panel > .intro,
		body.sempa-site .contact-simple {
			padding: 2.35rem 1.75rem 1.75rem 1.75rem;
		}

		body.sempa-site .hero-title {
			font-size: clamp(3.2rem, 9vw, 5.15rem);
			margin-bottom: 0;
		}

		body.sempa-site .hero-panel .mobile-hero-image {
			display: block;
			height: min(54vw, 14.5rem) !important;
			margin: 1.1rem auto 0.9rem auto;
			width: min(54vw, 14.5rem) !important;
		}

		body.sempa-site .hero-panel .mobile-hero-image img {
			object-position: center 18%;
		}

		body.sempa-site .hero-panel .lead {
			font-size: clamp(1rem, 2.3vw, 1.12rem);
			line-height: 1.6;
			margin-bottom: 1.35rem;
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(2.45rem, 7vw, 4rem);
		}

		body.sempa-site .about-panel > .about-copy h2 {
			margin-bottom: 1.2rem;
		}

		body.sempa-site .about-panel > .about-copy h2 br {
			display: block;
		}

		body.sempa-site .mobile-about-proof {
			align-items: center;
			display: flex;
			flex-direction: column;
			justify-content: center;
			margin: 0 0 1.6rem 0;
			padding: 0;
			width: 100% !important;
		}

		body.sempa-site .mobile-about-proof .about-studio-image {
			max-width: min(80vw, 17rem);
		}

		body.sempa-site .about-panel > .about-copy p,
		body.sempa-site .demo-panel .audio-card p,
		body.sempa-site .contact-footer {
			font-size: clamp(1rem, 2.15vw, 1.08rem);
			line-height: 1.62;
		}

		body.sempa-site .demo-panel > .demo-list {
			padding: 0 1.75rem 2.25rem 1.75rem;
		}

		body.sempa-site .demo-panel > .demo-list > * {
			max-width: 100%;
			width: 100% !important;
		}

		body.sempa-site .contact-simple {
			width: 100%;
		}

		body.sempa-site .contact-address {
			font-size: clamp(1.7rem, 6vw, 2.75rem);
			word-break: break-word;
		}

	}

	@media screen and (max-width: 736px) {

		body.sempa-site .hero-title {
			font-size: clamp(3rem, 13vw, 4.45rem);
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(2.25rem, 10vw, 3.45rem);
		}

		body.sempa-site .hero-panel .mobile-hero-image {
			height: min(54vw, 13.75rem) !important;
			width: min(54vw, 13.75rem) !important;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site #page-wrapper {
			padding: 0;
		}

		body.sempa-site .hero-title {
			font-size: clamp(2.65rem, 14vw, 3.75rem);
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(2.05rem, 11vw, 3rem);
		}

		body.sempa-site .hero-panel .mobile-hero-image {
			height: min(52vw, 13rem) !important;
			margin: 1rem auto 0.85rem auto;
			width: min(52vw, 13rem) !important;
		}

		body.sempa-site .hero-panel .lead {
			line-height: 1.55;
			margin-bottom: 1.2rem;
		}

		body.sempa-site .button {
			letter-spacing: 0.1rem;
		}

		body.sempa-site .contact-address {
			font-size: clamp(1.35rem, 9vw, 2rem);
		}

	}

/* Mobile typography and fold rhythm pass */

	@media screen and (max-width: 1180px) {

		body.sempa-site .hero-panel > .content.color0 {
			padding-top: 2rem;
			padding-bottom: 1.45rem;
		}

		body.sempa-site .hero-title {
			font-size: clamp(3rem, 7.5vw, 4.65rem);
			line-height: 0.98;
		}

		body.sempa-site .hero-panel .mobile-hero-image {
			height: min(58vw, 14.75rem) !important;
			margin: 0.95rem auto 0.8rem auto;
			width: min(58vw, 14.75rem) !important;
		}

		body.sempa-site .hero-panel .lead {
			line-height: 1.52;
			margin-bottom: 1.05rem;
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(2.25rem, 5.8vw, 3.35rem);
			line-height: 1.02;
		}

	}

	@media screen and (max-width: 736px) {

		body.sempa-site .hero-panel > .content.color0 {
			padding-top: 1.8rem;
		}

		body.sempa-site .hero-title {
			font-size: clamp(2.75rem, 11vw, 3.85rem);
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(2.1rem, 8.8vw, 3rem);
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .hero-panel > .content.color0,
		body.sempa-site .about-panel > .about-copy,
		body.sempa-site .demo-panel > .intro,
		body.sempa-site .contact-panel > .intro,
		body.sempa-site .contact-simple {
			padding-left: 1.45rem;
			padding-right: 1.45rem;
		}

		body.sempa-site .hero-panel > .content.color0 {
			padding-top: 1.55rem;
			padding-bottom: 1.25rem;
		}

		body.sempa-site .hero-title {
			font-size: clamp(2.35rem, 12vw, 3.25rem);
		}

		body.sempa-site .about-panel > .about-copy h2,
		body.sempa-site .demo-panel > .intro h2,
		body.sempa-site .contact-panel > .intro h2 {
			font-size: clamp(1.95rem, 9.5vw, 2.65rem);
		}

		body.sempa-site .hero-panel .mobile-hero-image {
			height: min(58vw, 14rem) !important;
			margin: 0.85rem auto 0.75rem auto;
			width: min(58vw, 14rem) !important;
		}

		body.sempa-site .hero-panel .lead {
			font-size: 1rem;
			line-height: 1.5;
			margin-bottom: 1rem;
		}

		body.sempa-site .hero-panel .actions {
			gap: 0.65rem;
		}

	}

/* Contact hierarchy polish */

	body.sempa-site .contact-address {
		align-items: center;
		background: rgba(20, 33, 61, 0.82);
		border: 1px solid rgba(232, 237, 246, 0.2);
		border-radius: 999px;
		color: rgba(232, 237, 246, 0.9);
		display: inline-flex;
		font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
		font-size: clamp(1.05rem, 1.18vw, 1.32rem);
		font-weight: 700;
		letter-spacing: -0.015em;
		line-height: 1;
		margin: 0 0 0.15rem 0;
		padding: 0.86rem 1.05rem;
		text-decoration: none;
		transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
	}

	body.sempa-site .contact-address:after {
		display: none;
	}

	body.sempa-site .contact-address:hover {
		background: rgba(22, 36, 67, 0.96);
		border-color: rgba(222, 196, 124, 0.38);
		color: var(--text);
		transform: translateY(-1px);
	}

	@media screen and (max-width: 1180px) {

		body.sempa-site .contact-address {
			font-size: clamp(1rem, 3.8vw, 1.22rem);
			letter-spacing: -0.01em;
			padding: 0.82rem 0.95rem;
		}

		body.sempa-site .contact-footer {
			color: var(--faint);
			font-size: 0.72rem;
			line-height: 1.45;
			margin-top: 0.2rem;
			max-width: 28rem;
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .contact-address {
			font-size: clamp(0.98rem, 4.2vw, 1.12rem);
			max-width: 100%;
			padding: 0.78rem 0.88rem;
		}

		body.sempa-site .contact-footer {
			font-size: 0.66rem;
			line-height: 1.4;
			padding-top: 0.85rem;
		}

	}

/* Uniform section title scale */

	body.sempa-site .about-panel > .about-copy h2.major,
	body.sempa-site .demo-panel > .intro h2.major,
	body.sempa-site .contact-panel > .intro h2.major {
		font-size: clamp(2.25rem, 3.1vw, 3.45rem);
		line-height: 1.02;
	}

	@media screen and (max-width: 1180px) {

		body.sempa-site .about-panel > .about-copy h2.major,
		body.sempa-site .demo-panel > .intro h2.major,
		body.sempa-site .contact-panel > .intro h2.major {
			font-size: clamp(2.25rem, 5.8vw, 3.35rem);
		}

	}

	@media screen and (max-width: 736px) {

		body.sempa-site .about-panel > .about-copy h2.major,
		body.sempa-site .demo-panel > .intro h2.major,
		body.sempa-site .contact-panel > .intro h2.major {
			font-size: clamp(2.1rem, 8.8vw, 3rem);
		}

	}

	@media screen and (max-width: 480px) {

		body.sempa-site .about-panel > .about-copy h2.major,
		body.sempa-site .demo-panel > .intro h2.major,
		body.sempa-site .contact-panel > .intro h2.major {
			font-size: clamp(1.95rem, 9.5vw, 2.65rem);
		}

	}
