@import url("https://fonts.googleapis.com/css?family=Montserrat");
@import url('https://fonts.googleapis.com/css2?family=Nunito&display=swap');
@import url("https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css");
/**************************************
	Elemement stuff 
**************************************/
:root{
	--highlight-color: rgb(255, 166, 0);
	--highlight-color-darker: rgb(139, 92, 3);
}
*{ box-sizing: border-box; font-family: 'Nunito', sans-serif; font-weight: lighter;}
html, body { margin: 0; padding: 0; width: 100%; height: 100%;}
img { display: block; width: 100%;}
a{ text-decoration: none; display: inline-block; color: var(--highlight-color);}
a:hover, a:visited, a:active{ text-decoration: none; color: var(--highlight-color-darker);}
#menu-items a:hover, 
#menu-items a:visited, 
#menu-items a:active, 
#menu-items a:focus { text-decoration: none; color: #fff;}
ul{ padding: 0; margin: 0; list-style: none;}
p, h1, h2, h3, h4, h5 { margin: 0;}
label{ padding: 0; height: 2.5em; line-height: 2.5em;}
select{
	border: 1px solid #555;
	color: #000;
	background-color: inherit;
	border-radius: 4px;
	height: 3em;
	width: 100%;
}
select:focus{
	border: 1px solid #000;
	outline: 0;
}
input[type='text'],
input[type='password']{
	color: #000;
	border: 1px solid #555;
	background-color: inherit;
	border-radius: 4px;
	height: 2.5em;
	padding: 0 0 0 1em;
}
button{
	color: #000;
	border: 1px solid #555;
	background-color: inherit;
	border-radius: 4px;
	height: 2.5em;
	padding:0 1em;	
}
button:hover{ background-color: #ffb;}



/**************************************
	Layout stuff 
	.locked forces desktop layouts on
	mobile view. Allows columns to stay
	the same ratio on mobile screens
**************************************/
.section{
	margin: 0;
	width: 100%;
	display: block;
	min-width: 1px;
	text-align: left;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
}
.container{
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	text-align: left;
}
.container.padded{
	margin: 0 auto;
	padding: 0 1em;
	/*padding: 0 calc(50% - (960px / 2));*/
}
/*.container.padded .row > .column{ padding-top: 0; padding-bottom: 0; }*/
.container.padded.top-bottom{ padding-top: 1em; padding-bottom: 1em;}
.container.padded.top{ padding-top: 1em;}
.container.padded.bottom{ padding-bottom: 2em;}
.row{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	-ms-flex-flow: row wrap;
		flex-flow: row wrap;
	margin-bottom: 1em;
	width: 100%;}
.row:last-child { margin-bottom: 0;}
.row.locked{ -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.column{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	align-items: top;
}
.column + .column{ padding: 0 1em;}
.column .column{ padding: 0;}
.one-half.column 	{ width: 100%;}
.one-third.column 	{ width: 100%;}
.two-third.column 	{ width: 100%;}
.one-quarter.column { width: 100%;}
.three-quarter.column { width: 100%;}
.full.column 		{ width: 100%;}

.one-half.column.locked 	{ width: 50%;}
.one-third.column.locked 	{ width: 33.33333%;}
.two-third.column.locked 	{ width: 66.66666%;}
.one-quarter.column.locked 	{ width: 25%;}
.three-quarter.column.locked{ width: 75%;}

.dropdown{
	padding: 0.5em;
	border: 1px solid #000;
	border-radius: 5px;
}
.dropdown-header{
	-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
			flex: 0 0 100%;
	padding: 1rem;
}
.dropdown-content{
	padding-top: 0;
	display: none;
}

/**************************************
	Nav stuff 
**************************************/
nav { background-color: #000; }
nav ul{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	-ms-flex-negative: 1;
		flex-shrink: 1;
	-webkit-box-align: left;
		-ms-flex-align: left;
			align-items: left;
}
nav ul li{
	color: #fff;
	margin: 0;
	padding: 0;
	text-decoration: none;
}
nav ul li a{
	padding: 1em;
}

nav #menu-items > .row{
	display: none;
}

#search-container{ padding: 1em;}

nav .flashes ul{ 
	padding: 0; 
	display: -webkit-box; 
	display: -ms-flexbox; 
	display: flex; 
	-webkit-box-orient: vertical; 
	-webkit-box-direction: normal; 
	-ms-flex-direction: column; 
	flex-direction: column;
}
nav .flashes ul li,
nav .flashes p{ 
	margin-right: auto;
	padding: 0.2em 0; 
	color: #fff;}
nav .flashes ul li:hover{ color: #fff;}

.delete,
#delete-flashes{
	padding: 0.2em 1em;
	cursor: pointer;
}
#menu-items a:hover{
	cursor: pointer;
	text-decoration: none;
	color: var(--highlight-color);
}
#menu-items ul li a{
	color: inherit;
}
nav #top-bar{
	padding-top: 1em;
	padding-bottom: 1em;
}
nav #top-bar .row{
	justify-content: space-between;
	align-items: center;
}

#logo{
	height: 6em;
	width: auto;
}
#hamburger-wrapper{
	padding: 2em;
}
#hamburger{
	touch-action: none;
	display: flex;
	background-color: rgba(0,0,0,0);
	color: rgba(0,0,0,0);
	flex-direction: column;
	justify-content: space-between;
	height: 2em;
	width: 2em;
	background-color: unset;	
}
#hamburger span{
	touch-action: none;
	display: block;
	width: 100%;
	height: 3px;
	background-color: #fff;
}
#menu-items{
	background-color: #333;
}

#search-bar{
	color: #fff;
	border: 1px solid #555;
	background-color: inherit;
	border-radius: 4px;
	height: 2.5em;
	padding: 0 0 0 1em;
}

/**************************************
	Footer stuff 
**************************************/
footer { background-color: #000; color: #fff;}
footer .footer-items li {
	padding: 0.5em 0;
}
footer .footer-items li + li{
	border-top: 1px dotted #222;
}
footer .footer-items{
	list-style: none;}
footer h4{
	color: var(--highlight-color);
}


/**************************************
	Section stuff 
**************************************/
.jumbo,
.products-jumbo{ 
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}
.products-jumbo.jRange{
	background-image: url('../images/jumbo_pictures/120Holborn.jpg');
}
.products-jumbo.jProjects{
	background-image: url('../images/jumbo_pictures/CheltenhamRacecourse.JPG');
}
.products-jumbo.jProducts{
	background-image: url('../images/jumbo_pictures/ChiswellStreet.JPG');
}
.jumbo .text{
	margin: 0;
	font-size: 1.2em;
	text-align: left;
	color: #fff;
	padding-top: 12em;
	padding-bottom: 12em;
}
.jumbo-inner{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -999;
}
.image-inner{
	width: 100%;
	height: 100%;
	z-index: -999;
}
div[class*='inner-child']{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	/* background-attachment: fixed; */
}
.projects div[class*='inner-child']{
	background-attachment: scroll;
}
.jumbo-inner-child{ background-attachment: fixed;}
.image-inner-child{ background-attachment: unset;}
#i1{ z-index: -995;}
#i2{ z-index: -996;}
#i3{ z-index: -997; }
#i4{ z-index: -998; }

.featured .text{ 
	-webkit-box-orient: vertical; 
	-webkit-box-direction: normal; 
		-ms-flex-direction: column; 
			flex-direction: column;
	/* color: #fff;
	background-color: #222; */
}
.featured .image{
	position: relative;
	height: 400px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	padding: 0;}
.featured p{
	max-width: 700px;
}

.products-jumbo .column{
	color: #fff;
	text-align: center;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	height: 400px;
}
.products-jumbo .column p,
.products-jumbo .column h1{
	margin: 0;
}
.all-products .row,
.all-projects .row{	
	-ms-flex-wrap: wrap;	
		flex-wrap: wrap;}
.all-products .column.product,
.all-projects .column.project,
.all-products .product-mouseover-image{
	/*border: 1px dotted #222;*/
	height: 100%;
	background-color: #fff;
	padding: 0 0.5em 1em 0.5em;
}
.product a{
	background-repeat: no-repeat;
	background-size: 90%;
	background-position: center;
}

.project a{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.search-item{
	padding: 0;
	height: calc((960px / 4));
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.search-item-product{ background-size: contain;}
.search-item-row{ padding: 1em 0;}
.search-item-row .column:last-child{ padding-top: 1em;}
.project p{
	margin: 1em 0 1em 0;
	font-size: 1em;
}
.project-wrap h2{
	padding-bottom: 1em;
}
.all-projects .column.project{
	background-size: cover;
}

.dropdown-list + .dropdown-list{ margin: 0; padding: 1em 0;}
.button-group{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-content: space-between;
}
.button-group a{
	flex-grow: 1;
	padding: 1rem;
	max-width: 100%;
	min-width: 100%;
	width: 100%;
}
.button-group button{
	border-radius: 4px;
	border: 1px solid #bbb;
	color: #000;
	background-color: #ffffff;
	background-color: rgba(0,0,0,0);
	width: 100%;
}
.button-group button:hover{
	background-color: #ffb;
}
.all-products a,
.all-projects a{ 
	display: inline-block;
	width: 100%; 
	height: 100%;
	vertical-align: middle}
.product-mouseover{
	z-index: 9999;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
			justify-content: flex-end;
	color: #000;
	font-weight: bold;
	font-size: 1em;
	padding-bottom: 1em;
}
.product-mouseover .inner-text{
	display: block;
}
.uk-badge{
	position: absolute;
	bottom: 0;
	width: 4em;
	left: 4.5em;
}
.ugr-badge{
	position: absolute;
	bottom: 0;
	width: 4em;
}
.inner-text img{
	width: 2em;
}
.inner-text p{
	display: inline-block;
}
.all-projects .product-mouseover{ justify-content: center; padding-bottom: 0;}
.product-mouseover-projects p{
	display: none;
}
.product-mouseover-projects:hover p{
	display: block;
}
.product-mouseover:hover{
	background-color: rgba(0,0,0,0.5);
	color: var(--highlight-color);
}
.product-mouseover.lamps h3{
	text-align: left;
}

.range-thumb-Decorative{background-image: url('/static/images/range_thumbs/DECORATIVE.png');}
.range-thumb-Emergency{background-image: url('/static/images/range_thumbs/EMERGENCY.png');}
.range-thumb-Exterior{background-image: url('/static/images/range_thumbs/EXTERIOR.png');}
.range-thumb-Industrial{background-image: url('/static/images/range_thumbs/INDUSTRIAL.png');}
.range-thumb-Linear{background-image: url('/static/images/range_thumbs/LINEAR.png');}
.range-thumb-Modular{background-image: url('/static/images/range_thumbs/MODULAR.png');}
.range-thumb-Panels{background-image: url('/static/images/range_thumbs/PANELS.png');}
.range-thumb-Strip{background-image: url('/static/images/range_thumbs/STRIP.png');}
.range-thumb-Downlight{background-image: url('/static/images/range_thumbs/DOWN.png');}

.product-mouseover.lamps p{
	text-align: left;
	font-size: 0.7em;
}
.product-specs .row.dropdown-list + .row.dropdown-list{
	border-top: 1px dotted #000;
}
.ldt-section .container > .row{
	border-top: 2px solid #000;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.border-top-black-padded{
	border-top: 2px solid #000;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.product-part-number-creator .container > .row{
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.product-specs h4{
	font-weight: bold;
	padding-bottom: 3rem;
}
#product-slider{ 
	width: 100%;
	position: relative;

}
#product-slider div{
	width: 100%;
}

#product-slider-previews{
	padding: 0;
	margin-top: 5px;
	position: relative;
	width: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
		-ms-flex-direction: row;
			flex-direction: row;
	justify-content: center;
	height: auto;
	z-index: 99999;
}
.column.product-description-wrapper{
	padding: 0;
}

.row.description{
	padding-bottom: 3rem;
	margin-bottom: 0;	
	/* border-top: 2px solid #000; */
}

#product-name,
#product-description{
	padding-left: 2.5em;
	width: 100%;
}
#product-description p{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: left;
	justify-content: initial;
	margin-top: 0.5rem;
}
#product-description p:before{
	content:"";
	position: absolute;
	display: inline-block;
	left: -1.5em;
	width: 0.5rem;
	padding-bottom: 0.5rem;
	background-color: var(--highlight-color);
	border-radius: 1000px;
	margin-top: 0.75rem;
}
#product-name{ 
	font-weight: bold;
	margin-bottom: 1em;
	padding-bottom: 1em;
	padding-left: 1em;
	width: 100%;
	border-bottom: 2px solid #000;}
.product-picture{
	width: 100%;
	position: absolute;
	display: inline-block;
	/* background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center; */
}
#product-slider-wrapper{
	width: 100%;
	margin-left: auto;
	margin-right: auto;

	/*border: 1px solid #000;*/
}
.product-preview{
	min-height: 5em;
	min-width: 5em;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.pn-string-wrapper{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex; 
	-ms-flex-flow: wrap; 
		flex-flow: wrap; 
	-webkit-box-align: center; 
		-ms-flex-align: center; 
			align-items: center;
	justify-content: start;
}
.pn-string-copy{
	width: 100%;
	margin: 0.5em;
}
#pn-string{
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap; 
		flex-flow: wrap; 
}
.pn-string-item{
	width: 100%;
	margin: 0.5em;
	text-align: center;
	border-radius: 5px;
	border: 1px solid #222;
	background-color: #444;
	color: white;
	font-weight: bold;
	padding: 0.5em;
}
.pn-string-dash{
	margin: 0.5em 0;
	padding: 0.5em 0;
}

/**************************************
	Utility stuff 
**************************************/
.half-alpha{ background-color: rgba(0,0,0,0.5);}
.invert{
	background-color: #000;
	color: #fff;
}
.invert select{ color: #fff;}
.u-pull-left{ margin-right: auto !important;}
.u-pull-right{ margin-left: auto !important;}
.u-pull-center{ margin-left: auto; margin-right: auto;}
.column.center{ text-align: center;}
.row.spacer{ margin-top: 1em;}
.no-padding{ padding: 0 !important;}
.no-margin{ margin: 0 !important;}
.orange{ color: var(--highlight-color) !important;}

.image-button{
	padding: 0 1em;
}
.image-button::after{
	content: "";
	background-color: gray;
	border-radius: 9999px;
	display: block;
	width: 12px;
	height: 12px;
	margin: 1em 0;
}
.image-button.selected::after{
	background-color: var(--highlight-color);
}
.spread{ -ms-flex-pack: distribute; justify-content: space-between;}
.vertical-center{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
.cover { background-size: cover;}
.no-wrap{ -ms-flex-flow: row nowrap; flex-flow: row nowrap;}
.indent{ margin-left: 1em;}
.fit-size{ width: 100%; height: 100%;}

@media (min-width: 30em){
	.section{
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
			-ms-flex-direction: row;
				flex-direction: row;}
	.row{
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
			-ms-flex-direction: row;
				flex-direction: row;}
	.column + .column{ padding-left: 1em;}
	.one-half.column 	 { width: 50%;}
	.one-third.column 	 { width: 33.33333%;}
	.two-third.column 	 { width: 66.66666%;}
	.one-quarter.column  { width: 25%;}
	.three-quarter.column{ width: 75%;}
	.full.column		 { width: 100%;}

	nav ul{
		flex-direction: row;
		-webkit-box-align: center;
			-ms-flex-align: center;
					 align-items: center;
	}
	#login-link{ padding-left: 0;}
	#search-container{ padding: 0;}

	#menu-items{
		max-width: unset;
		padding: 0 calc(50% - (960px / 2));
	}
	nav #menu-items > .row{
		display: flex;
	}
	#hamburger{
		display: none;
	}
	
	#login-link,
	#logout-link,
	#search-conatiner{
		flex-basis: 100%;
		text-align: right;
	}
	.jumbo .column{ font-size: 1.3em;}
	.image-button{
	padding: 0 1em;
	}
	.image-button::after{
		content: "";
		background-color: gray;
		border-radius: 9999px;
		display: block;
		width: 10px;
		height: 10px;
		margin: 1em 0;
	}

	.column.product-description-wrapper{
		padding-left: 3rem;}
	.product-mouseover{
		font-size: 1.2em;}
	.button-group{ padding: 0;}		
	.container.padded.top{ padding-top: 2em;}
	.container.padded.top-bottom{ padding-top: 2em; padding-bottom: 2em;}

	.featured .text{ 
		-webkit-box-orient: horizontal; 
		-webkit-box-direction: normal; 
			-ms-flex-direction: row; 
				flex-direction: row;}

	.all-products .column.product,
	.all-projects .column.project,
	.all-products .product-mouseover-image{
		/*border: 1px dotted #222;*/
		height: 100%;
		background-color: #fff;
		padding: 0 1em 2em 1em;
	}
	.all-projects{padding:0;}
	
	#pn-string{
		width: unset;
	}

	.pn-string-copy{
		width: unset;
		/* margin-left: 2em;
		margin-top: 0; */
	}
	.container.padded{
		margin: 0 auto;
		padding: 0 1em;
		max-width: 960px;
		/* padding: 0 calc(50% - (960px / 2)); */
	}
	#product-slider-wrapper{
		width: 66%;
		margin-left: auto;
		margin-right: auto;
	
		/*border: 1px solid #000;*/
	}
	.button-group{
		flex-direction: row;
		
	}
	.button-group a{
		flex-grow: 1;
		padding: 1rem;
		max-width: 33.3333%;
		min-width: 33.3333%;
		width: 33.3333%;
	}
}

@media (min-width: 1200px){

}
