/* Site-specific overrides */

/* Render core content immediately; the page no longer depends on JavaScript
   animation classes before it becomes readable. */
#container {
	visibility: visible !important;
	opacity: 1 !important;
	-webkit-transform: none !important;
	-moz-transform: none !important;
	-ms-transform: none !important;
	-o-transform: none !important;
	transform: none !important;
}

/* Safety: show only the first footer block if something injects another */
#container > .content-footer + .content-footer { display: none; }

/* Hide legacy theme footer if it ever renders */
#footer { display: none; }

/* Accessibility / contrast improvements */
body { color: #2b2b2b; }
a { color: #0b3a5b; }
a:hover, a:focus { color: #082b45; text-decoration: underline; }
.content-footer { color: #1f1f1f; }
.text-red { color: #f00; }
.analytics-pixel {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* Keep the profile photo inside its frame */
.welcome figure.photo-small { overflow: hidden; }
.welcome figure.photo-small img { width: 100%; height: 100%; object-fit: cover; }
.photo img { height: auto; }
.welcome .welcome-text {
	display: inline-block;
	max-width: 690px;
	text-align: left;
	font-style: normal;
	vertical-align: top;
}
.welcome .welcome-text p {
	display: block;
	margin: 0 0 10px;
}
.contact-card {
	font-style: normal;
}
.business-details {
	margin-top: 30px;
}
.steps li {
	margin-bottom: 8px;
}
.content-footer {
	line-height: 1.7;
}

/* Navigation overrides */
#mainnav { overflow: visible; }
#mainnav li.lang-switch {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 5;
	width: auto;
	height: auto;
	padding: 0;
	overflow: visible;
	background: transparent;
}
#mainnav li.lang-switch::before,
#mainnav li.lang-switch::after {
	display: none !important;
}
#mainnav li.lang-switch a {
	display: inline;
	height: auto;
	padding: 0 2px;
	text-decoration: none;
}
#mainnav li.lang-switch a:hover,
#mainnav li.lang-switch a:focus,
#mainnav li.lang-switch a[aria-current="page"] {
	text-decoration: underline;
}
#mainnav li.lang-switch .lang-sep {
	padding: 0 4px;
	opacity: 0.65;
}

@media only screen and (max-width: 767px) {
	#mainnav {
		height: auto;
		min-height: 75px;
		padding-top: 28px;
		padding-bottom: 5px;
		overflow: hidden;
	}
	#mainnav ul {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		justify-content: center;
	}
	#mainnav li:not(.lang-switch) {
		display: block;
		-webkit-flex: 1 1 20%;
		flex: 1 1 20%;
		width: auto;
		min-width: 0;
		height: 75px;
		font-size: 12px;
		white-space: normal;
	}
	#mainnav li:not(.lang-switch) a {
		height: auto;
		min-height: 25px;
		padding: 48px 4px 2px;
	}
	#mainnav [class^=icon-] {
		top: 10px;
		font-size: 28px;
	}
	#mainnav li.lang-switch {
		top: 7px;
		right: 12px;
	}
	.welcome .welcome-text {
		max-width: 100%;
	}
}

@media only screen and (max-width: 480px) {
	#mainnav li:not(.lang-switch) {
		-webkit-flex-basis: 33.333%;
		flex-basis: 33.333%;
	}
	.content-footer {
		padding-left: 20px;
		padding-right: 20px;
	}
}
