/**
 * If using a CSS pre-processor, tell it to overwrite this file. If not, place
 * your custom CSS modifications here.
 */
 
 
/* Google font - Roboto Condensed 300, 400, 700 */
/* Google font - PT Serif 400, 700 */

/* WEBSITE STYLES */
html {
	scroll-behavior: smooth;
}
body {
	margin: 0px;
	padding: 0px;
	background-color: #fff;
	font-family: 'Didact Gothic', helvetica, arial, sans-serif;
	font-size: 17px;
	font-weight: 400;
	color: #000;
}
.desktop { display: block !important; }
.desktop-inline { display: inline-block !important; }
.mobile, .mobile-inline { display: none !important; }
div {
	box-sizing: border-box;
	word-wrap: break-word;
}
.col-sm-12 {
	padding: 0px;
}
.clearfix {
	display: block;
	float: none;
	clear: both;
	width: 100%;
}
.hidden_content {
	display: none;
}

/* GLOBAL */
.main-container a {
	color: #000;
	font-weight: 400;
}
a:hover {
	color: 000;
	text-decoration: underline;
}
a.anchor {
	display: inline-block;
	position: relative;
	top: -180px;
	visibility: hidden;
}

a.button {
	background: #57100f;
	color: #fff;
	padding: 10px 20px;
	border-radius: 4px;
}
a.button:hover {
	opacity: .8;
	text-decoration: none;
}

p, .paragraph p:first-child {
	color: #000;
	line-height: 1.4em;
	font-weight: 400;
	font-size: 16px;
	font-style: normal;
	margin-bottom: 1em;
}
h1, h1.page-header {
	border-bottom: border-bottom: 1px solid #eeeeee;
	font-size: 36px;
	font-weight: 500;
	color: #333333;
}
p.smaller-font {
	font-size: .8em;
}
body.path-frontpage h1.page-header {
	display: none;
}
h2 {
	font-size: 22px;
	font-weight: 700;
	color: #57100f;
	text-transform: uppercase;
}
h3 {
	font-size: 20px;
	font-weight: 700;
	color: #000;
	text-transform: none !important;
}
b, strong {
	font-weight: 700;
}
h1 a, h2 a, h3 a {
	text-decoration: none !important;
}
p {
	word-wrap: break-word;
}
.field ul li {
	margin-bottom: 1em;
}

.blue_text {
	color: #fff;
}
.red_text {
	color: #af0000;
}

.align-left {
	margin: 0px 20px 20px 0px;
}
.align-right {
	margin: 0px 0px 20px 20px;
}

.center-this {
	display: block;
	text-align: center;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	margin: 0 auto;
}

.col-sm-6.left {
	padding-left: 0px;
	padding-right: 20px;
}
.col-sm-6.right {
	padding-left: 20px;
	padding-right: 0px;
}

/* COLUMNS */
.columns-wrapper {
	float: none;
	clear: both;
	width: 100%;
	display: flex;
	flex-flow: wrap;
}
.columns-two .column {
	flex: 0 0 auto;
	width: calc(50% - 20px);
	min-width: 280px;
	margin: 0px auto 40px;
	padding: 0px 40px 0px 0px;
}
.columns-three .column {
	flex: 0 0 auto;
	width: calc(33% - 20px);
	min-width: 280px;
	margin: 0px auto 40px;
	padding: 0px 40px 0px 0px;
}
.columns-four .column {
	flex: 0 0 auto;
	width: calc(25% - 20px);
	min-width: 280px;
	margin: 0px auto 40px;
	padding: 0px 40px 0px 0px;
}
.column img {
	width: 100% !important;
	height: auto !important;
}

/* COLLAPSIBLE DRAWERS */
.drawer {
  display: none;
  padding-bottom: 1em;
}
a.trigger {
  color: #999;
  position: relative;
  display: block;
  cursor: pointer;
  border-top: 1px solid #999;
  padding: 20px 50px 10px 0px;
  margin-top: 20px;
  width: 100%;
  text-decoration: none;
  font-weight: bold;
}
a.trigger:first-child {
	margin-top: 0px;
}
a.trigger.closed:after {
  position: absolute;
  display: block;
  content: '\f067';
  color: #fff;
  font-family: fontawesome;
  font-size: 1.2em;
  font-weight: normal;
  width: 20px;
  height: auto;
  top: calc(50% - 10px);
  right: 20px;
}
a.trigger.opened:after {
  position: absolute;
  display: block;
  content: '\f068';
  color: #fff;
  font-family: fontawesome;
  font-size: 1.2em;
  font-weight: normal;
  width: 20px;
  height: auto;
  top: calc(50% - 10px);
  right: 20px;
}


/* HEADER */
header.navbar-default {
	position: relative;
	z-index: 5;
	width: 100%;
	max-width: none !important;
	padding: 10px 0;
	margin: 0 auto;
	background-color: #fff;
	border: none;
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
}
header.navbar-default .navbar-header {
	float: none;
	width: 100%;
	padding:0 20px;
	margin: 0 auto;
	height: auto;
}
header.navbar-default .navbar-header .header-left {
	width: 20%;
	text-align: center;
	float:left;
}

header.navbar-default .navbar-header .header-left #site-logo{
	max-width:120px;
}
header.navbar-default .navbar-header .header-left #site-logo img.logo {
	width: 100%;
	height: auto;
	max-width: 300px;
	padding: 0;
	margin: 5px auto;
}
header.navbar-default .navbar-header .header-right {
	position: relative;
	width: 80%;
	height: auto;
	float:right;
	padding-top:20px;
}
header.navbar-default .navbar-header .header-right .region-navigation {
	position: relative;
	width: auto;
	height: auto;
	text-align: right;
}
header.navbar-default .navbar-header .header-right .region-navigation nav {
	width: auto;
	display: inline-block;
}
.navbar-nav {
	float: none !important;
}
.navbar-default .navbar-nav > li > a {
	text-transform: normal;
	color: #000000;
	font-size: 16px;
	font-weight: 300;
	padding: 3px 20px;
	/* border-right: 1px solid #ccc; */
}
.navbar-default .navbar-nav > li:last-child > a {
	border-right: none;
}
.navbar-default .navbar-nav > li.active > a {
	background-color: transparent !important;
	color: #000 !important;
}
.navbar-default .navbar-nav > li > a:hover {
	text-decoration: underline;
	background-color: transparent !important;
	color: #000 !important;
}
body.user-logged-in .navbar-default .navbar-nav > li a.login { display: none; }

@media all and (min-width:769px) {
	#main-menu-toggle {
		display: none;
	}
}
/*product detail page */
.page-node-type-product .product_left {
	float: left;
	width: 50%;
}
.page-node-type-product .product_right {
	float: right;
	width: 50%;
}
body {
font-family: 'Didact Gothic', helvetica, arial, sans-serif;
font-size: 16px !important;
line-height: 1.2em;
color:#333333;
}
h2.page-title {
	font-family: inherit;
	font-weight: 500;
	font-size:30px;
	line-height: 1.1;
	color: inherit;
}
h1 {
	font-weight:500;
	line-height:1.1;
}
h2.subtitle {
	font-size:30px;
	font-weight:500;
	color:#000000;
}
strong {
	font-weight:bold;
}
/* SPARK ADMIN MENU */
#block-sparkadministration-3 {
	margin: 2em auto;
}
#block-sparkadministration-3 ul.menu {
	list-style: none;
}
#block-sparkadministration-3 ul.menu li {
	display: inline-block;
}
#block-sparkadministration-3 ul.menu li a {
	padding: 10px 20px;
	border-radius: 5px;
	margin: 0 2px;
	background: #000;
	color: #fff;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
}
#block-sparkadministration-3 ul.menu li a:hover {
	background: #333;
}


/* Sub pages */
.main-container {
	width: 100%;
	min-height: 500px;
	padding: 140px 0 0;
	position: relative;
	z-index: 0;
}
body.toolbar-horizontal.user-logged-in .main-container {
	padding: 0 ;
}
.main-container > .row {
	margin: 0 ;
}

form#commerce-checkout-flow-multistep-default div[id$='-address-country-code'] {
	display: none;
}
form#commerce-checkout-flow-multistep-default  .address-container-inline .form-item {
	width: calc(49.8% - 1em);
}

/*videos*/
.field--name-body #video-table td {
	padding:14px;
}
.field--name-body #video-table td img {
	width:100% !important;
	height:auto !important;
}
/*photometric*/
.field-name-body #ies-files td {
	padding:14px;
}
.field--name-body #video-table td img {
	width:100% !important;
	height:auto !important;
}
/*lutron*/
.field--name-body #lutron-tables strong {
	font-size:24px;
}
.field--name-body #lutron-tables td {
	font-size: 20px;
	padding-right: 40px;
	padding-left: 40px;
	width:50%;
}
.field--name-body #lutron-tables p {
	font-size: 16px;
}
.field--name-body #lutron-tables p img {
	padding-left: 40px !important;
}
/*partners*/
.field--name-body #partner-tables td {
	padding-left: 68px;
	padding-right: 68px;
}
.field--name-body #partner-tables strong {
	font-size: 24px;
}
/*product grid*/
.view-product-grid .view-content {
	display:flex;
	flex-wrap:wrap;
}
.view-product-grid .view-content .views-row {
	width:25%;
	margin-bottom:50px;
	text-align:center;
}
.view-product-grid .view-content .views-row .views-field-title a {
	font-size:16.8px;
}
.view-product-grid .view-content .views-row .field-content {
	font-size:14px;
}
.view-product-grid .view-content .views-row img {
	margin:0 auto;
}
@media all and (max-width:768px) {
	.view-product-grid .view-content .views-row{
		width:50%;

	}
}
/*forms*/
.view-forms-collection .view-content {
	display:flex;
	flex-wrap:wrap;
}
.view-forms-collection .views-row {
	width: 25%;
	margin-bottom: 50px;
}
.view-forms-collection .form-thumbnails {
	max-height:130px;
}
.view-forms-collection .form-thumbnails img {
	max-height:130px;
	width:auto;
	margin: 0 auto;
}
.form-title {
	text-align: center;
	font-weight: 700;
}
/*catalog*/
.col-sm-12 .view-content {
	display:flex;
	flex-wrap:wrap;
}
.col-sm-12 .views-row {
	width: 25%;
	margin-bottom: 50px;
}
.col-sm-12 .catalog-thumbnails {
	max-height:130px;
}
.col-sm-12 .catalog-thumbnails img {
	max-height:130px;
	width:auto;
	margin: 0 auto;
}
.catalog-title {
	text-align: center;
	font-weight: 700;
}
/* footer styles */
footer.container {
	width:100%;
	padding: 30px 80px;
}
footer .block {
	box-sizing: border-box;
	float: left;
	width: 16.6%;
	clear:unset !important;
}
footer .block .clearfix {
	float:left;
	clear:unset;
	width:16.6%;
}

footer .block a {
	color:#000000;
	font-size:14px;
}

footer .block h2 {
	color:#24a8e0;
	font-size:14px;
}

footer .block p {
	color:#000000;
	font-size:14px;
}
/* ADMIN PAGES */
body.user-logged-in.toolbar-fixed .region-header-image .contextual {
	top: auto !important;
	bottom: 20px;
}
body.user-logged-in.toolbar-fixed .region-header-image article .contextual {
	top: auto !important;
	bottom: 50px;
}
body.toolbar-horizontal.user-logged-in .region-breadcrumb-bar {
	text-align:center;
}
body.toolbar-horizontal.user-logged-in.path-frontpage .field--name-body {
	display: none;
}
body.toolbar-horizontal.user-logged-in .messages--error {
	display: none;
}

body.toolbar-horizontal.user-logged-in .block-private-message-actions-block {
	margin: 2em auto;
}
body.toolbar-horizontal.user-logged-in #node-buttons {
	margin: 2em auto;
}
body.toolbar-horizontal.user-logged-in #node-buttons .button {
	margin: 0 10px;
}

/* BUBBLE-UP STYLES - Leave at bottom of stylesheet */

.bubbleup, .slide-right, .slide-left {
  visibility: hidden;
  opacity: 0;
}
/* This is a static version
.already-visible {
  visibility: visible;
  transform: translateY(0px);
  animation: none;
  opacity: 1;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s;
}
*/
.already-visible, .come-in {
  visibility: visible;
  transform: translateY(500px);
  animation: come-in 2s ease forwards;
  opacity: 1;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s;
}
.already-visible:nth-child(2n), .come-in:nth-child(2n) {
  animation-duration: 1s;
}
.already-visible:nth-child(3n), .come-in:nth-child(3n) {
  animation-duration: 3s;
}

.slide-right.already-slide, .slide-right.slide-in {
  visibility: visible;
  transform: translateX(-500px);
  animation: slide-right 1.5s forwards;
  opacity: 1;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
	  transition: opacity 1s;
}
.slide-right.already-slide:nth-child(2n), .slide-right.slide-in:nth-child(2n) {
  animation-duration: 1s;
}
.slide-left.already-slide, .slide-left.slide-in {
  visibility: visible;
  transform: translateX(500px);
  animation: slide-left 1.5s forwards;
  opacity: 1;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s;
}
.slide-left.already-slide:nth-child(2n), .slide-left.slide-in:nth-child(2n) {
  animation-duration: 1s;
}

@keyframes come-in {
  to { transform: translateY(0); }
}
@keyframes slide-right {
  to { transform: translateX(0); }
}
@keyframes slide-left {
  to { transform: translateX(0); }
}