﻿:root {
	font-size: 15px;
}

html, body {
	height: 100%;
	margin: 0px;
	padding: 0px;
}

body {
	font-family: Roboto,sans-serif;
}

header {
	border-bottom: 1px solid #cfcfcf;
}

p {
	font-weight: 200;
	font-size: 1.1rem;
}


a.navbar-brand {
	white-space: normal;
	text-align: center;
	word-break: break-all;
}

/* Provide sufficient contrast against white background */
a {
	color: #0366d6;
}

.btn-primary {
	color: #fff;
	background-color: #1b6ec2;
	border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
	color: #fff;
	background-color: #1b6ec2;
	border-color: #1861ac;
}

.box-shadow {
	box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
	font-size: 1rem;
	line-height: inherit;
}

.flex {
	display: flex;
}

.logo_container {
	width: fit-content;
	flex-basis: auto;
}

.logo_container img {
	margin-top: 4px;
}

.title-container {
	flex-grow: 1;
	text-align: center;
}


	.title-container span.title {
		font-size: 28px;
		/*position: relative;*/
		top: 10px;
	}

	.title-container span.sub-title {
		font-size: 16px;
		display: block;
	}

.shop_container {
	width: fit-content;
	flex-basis: auto;
	margin-left: auto;
}

.header-button {
	/* width: fit-content; */
	/* height: 44px; */
	text-decoration: none;
	line-height: 44px;
	/* background: #ddb342; */
	color: #666;
	text-transform: uppercase;
	padding: 5px 12px;
	border-radius: 4px;
	font-size: 17px;
	cursor: pointer;
	text-align: center;
	border: 1px solid #666;
}

.header-button:hover {
	opacity: .85;
}

input:focus {
	outline: none;
}

#main-search-box input[type="search"]::placeholder {
	font-style: italic;
}

#main-search-box a.archives {
	background-color: #ddb342;
	border-radius: 4px;
	text-decoration: none;
	padding: 6px 10px;
	font-size: 20px;
	color: #fff;
}

	#main-search-box a.archives:hover {
		background-color: #bd9938;
	}

#archives-button-container {
	text-align: center;
}

@media only screen and (max-width: 420px) {
	.container {
		padding: 10px 20px;
		margin: 0 auto;
	}

	.search-background {
		padding: 25px;
	}

	.search-background h6 {
		display: none;
	}

	.search-background #main-search-box {
		padding: 25px;
		font-size: 1.2em;
	}

	#mo-logo {
		display: inline;
		height: 50px;
	}

	#dt-logo {
		display: none;
	}

	.site-title {
		position: relative;
		bottom: 10px;
		left: 5px;
		font-size: 1.5rem;
	}

	#main-search-box input[type="search"] {
		font-size: 1.9rem;
		width: 100%;
		padding: 12px;
		color: #fff;
		border: 2px solid #fff;
		border-radius: 4px;
		background-color: transparent;
		margin-bottom: 1rem;
		display: inline;
	}

	#main-search-box input[type="search"]::placeholder {
		font-size: 20px;
		position: relative;
		top: -2px;
		
	}

	#main-search-box input[type="search"]:focus-visible {
		/*outline: none;
		border: 2px solid #fff;
		border-radius: 4px;*/
	}

	/*#main-search-box button {
		font-size: 1rem;
		width: 100%;
		padding: 8px;
		color: #fff;
		border: 3px solid #fff;
		border-radius: 4px;
		background-color: transparent;
		display: block;
	}*/
}

@media only screen and (min-width: 421px) {
	.container {
		padding: 10px 20px;
		margin: 0 auto;
	}

	#search-background {
		padding: 50px;
	}

	.search-background h6 {
		display: none;
	}

	.search-background #main-search-box {
		padding: 50px;
		font-size: 1.9em;
	}

	#mo-logo {
		display: inline;
		height: 40px;
	}

	#dt-logo {
		display: none;
	}

	.site-title {
		position: relative;
		bottom: 8px;
		left: 10px;
		font-size: 1.7rem;
	}

	#main-search-box input[type="search"] {
		font-size: 1.9rem;
		width: 100%;
		padding: 8px;
		color: #fff;
		border: 3px solid #fff;
		border-radius: 4px;
		background-color: transparent;
		margin-bottom: 1rem;
		display: inline;
		padding: 12px;
	}

	#main-search-box input[type="search"]:focus-visible {
		/*outline: none;
		border: 3px solid #fff;
		border-radius: 4px;*/
	}

	/*#main-search-box button {
		font-size: 1.2rem;
		width: 100%;
		padding: 8px;
		color: #fff;
		border: 3px solid #fff;
		border-radius: 4px;
		background-color: transparent;
		display: block;
	}*/
}

@media only screen and (min-width: 768px) {
	.container {
		padding: 10px 20px;
		max-width: 1200px;
		margin: 0 auto;
	}

	#mo-logo {
		display: none;
	}

	#dt-logo {
		display: inline;
		height: 44px;
		padding-left: 15px;
	}

	.site-title {
		position: relative;
		left: -120px;
		top: 20px;
		font-size: 1.4rem;
	}

	.logo_container {
		height: 65px;
	}

	.search-background {
		height: calc(100vh - 329px);
		padding: 0 25px;
	}

	.search-background h6 {
		display: none;
	}

	.search-background #main-search-box {
		margin: 0 auto;
		position: relative;
		top: 50%;
		transform: translateY(-50%);
	}

	#main-search-box input[type="search"] {
		width: 100%;

		/*width: 80%;
		border-right: 1.5px solid #fff;
		border-radius: 4px 0px 0px 4px;
		display: inline;*/
	}

	#main-search-box input[type="search"]:focus-visible {
		/*border-right: 2px solid #fff;
		border-radius: 4px 0px 0px 4px;*/
	}

	/*#main-search-box button {
		width: 20%;
		border-radius: 0px 4px 4px 0px;
		border-left: 2px solid #fff;
		display: inline;
	}*/
}

p:last-child {
	/*margin-bottom: 0;*/
}

#main-search-box {
	border: solid 2px #fff;
	background-color: rgba(0,0,0,0.6);
	max-width: 800px;
	color: #fff;
}

#main-search-box h2 {
	margin-top: 0;
	text-transform: uppercase;
	font-weight: 400;
}

#main-search-box h3 {
	font-size: 28px;
	font-weight: 400;
}

#main-search-box input[type="search"]::placeholder {
	color: #999;
	text-transform: lowercase;
}

.search-background {
	margin: auto;
	background-position: bottom center;
	background-size: cover;
	background-repeat:no-repeat;
	background-image: url(/img/lucid-labs-hero.jpg), linear-gradient(180deg,#2b87da 0%,#29c4a9 100%) !important;
}

.hide-searchbar {
	margin: 0;
	background: rgba(0,0,0,1) !important;
	height: fit-content;
	padding: 10px;
}

.hide-searchbar #main-search-box {
	border: none;
	margin: 0 auto;
	padding: 10px;
}

.hide-searchbar #main-search-box h2, .hide-searchbar #main-search-box p {
	display: none;
}

.hide-searchbar #main-search-box input {
	margin: 0;
}

.hide-searchbar #main-search-box h6 {
	text-align: center;
	text-transform: uppercase;
	padding: 0 0 8px 0;
	margin: 0;
	font-size: 14px;
	color: #fff;
}


/* footer */
footer {
	color: #444;
	background-color: #f6f6f6;
	/*position: absolute;*/
	/*bottom: 0;*/
	width: 100%;
	white-space: nowrap;
}

footer .container {
	max-width: 1200px;
}

footer hr {
	border-bottom: 1px solid #f6f6f6;
}

footer ul {
	list-style-type: none;
	padding-inline-start: 0;
}

footer a {
	text-decoration: none;
	color: #444;
}

footer a:hover {
	text-decoration: underline;
}

footer .social-links {
	display: flex;
	margin-top: 15px;
}

footer .social-links div {
	width: 50px;
}

footer .social-links svg {
	max-width: 25px;
}

footer .container.np {
	padding: 0;
}
footer .container .site-footer__copyright-wrapper {
	width: fit-content;
	margin: 0 auto;
	padding: 5px 5px 10px 5px;
}

footer .container .site-footer__copyright-wrapper .site-footer__copyright-content {
	text-transform: uppercase;
}

@media only screen and (max-width: 420px) {

	footer .container .col {
		margin: 20px 15px;
		padding-bottom: 25px;
		border-bottom: .5px solid #fff;
	}

	footer .container .col:first-of-type {
		margin-top: 0;
	}

	footer .container .col:last-of-type {
		padding-bottom: 0px;
		border-bottom: 0px solid #fff;
	}

	footer .container .site-footer__copyright-wrapper .site-footer__copyright-content {
		display: block;
		text-align: center;
	}
}

@media only screen and (min-width: 421px) {
	footer .container {
		display: flex;
	}

	footer .container .col {
		flex-basis: auto;
		width: fit-content;
	}

	footer .container .col:last-of-type {
		margin-left: auto;
	}

	.hl-footer-links {
		padding: 0 15px;
	}
}

@media only screen and (min-width: 1200px) {
	.hl-footer {
		padding: 0 55px;
		max-width: 1310px;
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-wrap: nowrap;
	}

	.hl-footer-links {
		padding: 0 15px;
	}
}



.social-links div {
	flex-basis: 50px;
	flex-grow: 0;
}

.hl-contact-us a {
	color: #444;
	font-weight: 400;
	font-size: 15px;
	line-height: 22px;
}

.white-icon:hover, .hl-contact-us a:hover {
	color: #666;
}


.hl-link-col {
	width: fit-content;
}


/* Search results */
.wrap {
	flex-wrap: wrap;
}

@media only screen and (max-width: 450px) {
	.search-result-wrapper {
		flex-basis: 100%;
	}
}

@media only screen and (min-width: 451px) {
	.search-result-wrapper {
		flex-basis: 50%;
	}
}

@media only screen and (min-width: 768px) {
	.search-result-wrapper {
		flex-basis: 33.33%;
	}
}
.search-result {
	border: 1px solid #cfcfcf;
	border-radius: 4px;
	box-shadow: 0px 0px 8px 5px rgba(0,0,0,0.05);
	margin: 8px;
}
	
.search-result a {
	text-decoration: none;
	color: #444;
}

.search-result__product-img {
	width: calc(100% - 16px);
	padding-bottom: 80%;
	margin-bottom: 10px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 12px 8px 15px 8px;
}

.search-result h3 {
	padding: 0 15px;
	margin: 0;
	font-size: 2rem;
}
	
.search-result p {
	padding-left: 15px;
	padding-right: 15px;
	font-size: 1.2rem;
	font-weight: 400;
}

.results-button {
	width: fit-content;
	height: 3rem;
	text-decoration: none;
	line-height: 3rem;
	background: #444;
	color: #fff !important;
	text-transform: uppercase;
	padding: 5px 12px;
	border-radius: 4px;
	font-size: 1.2rem;
	cursor: pointer;
	text-align: center;
}

.results-button:hover {
	background: #666;
}

.pb-20 {
	padding-bottom: 20px;
}

.mt-15 {
	margin-top: 15px;
}

.mb-25 {
	margin-bottom: 25px;
}