/* Layout overrides for The Insects, loaded after the theme, skin and user-defined styles. */

/* No entrance animations or preloader fades between pages
================================================== */
/* Dark canvas so there's no white flash between pages and no white strip under short pages (matches the dark skin's footer) */
html {
	background: #1c1c1c;
}
.animated {
	-webkit-animation: none !important;
	animation: none !important;
	opacity: 1 !important;
}
.slideshowpreload {
	display: none !important;
}
/* Show the first slide straight away instead of waiting for FlexSlider to fade it in */
.flexslider .slides > li:first-child {
	display: block;
}

/* Fluid full-width grid on every page
   Skeleton's 16 columns, sized against the .container (cqw) so nested columns line up too.
================================================== */
.container {
	container-type: inline-size;
	width: auto;
	padding: 0 30px;
}
.container .one.column            { width: calc(100cqw * 1 / 16 - 20px); }
.container .two.columns           { width: calc(100cqw * 2 / 16 - 20px); }
.container .three.columns         { width: calc(100cqw * 3 / 16 - 20px); }
.container .four.columns          { width: calc(100cqw * 4 / 16 - 20px); }
.container .five.columns          { width: calc(100cqw * 5 / 16 - 20px); }
.container .six.columns           { width: calc(100cqw * 6 / 16 - 20px); }
.container .seven.columns         { width: calc(100cqw * 7 / 16 - 20px); }
.container .eight.columns         { width: calc(100cqw * 8 / 16 - 20px); }
.container .nine.columns          { width: calc(100cqw * 9 / 16 - 20px); }
.container .ten.columns           { width: calc(100cqw * 10 / 16 - 20px); }
.container .eleven.columns        { width: calc(100cqw * 11 / 16 - 20px); }
.container .twelve.columns        { width: calc(100cqw * 12 / 16 - 20px); }
.container .thirteen.columns      { width: calc(100cqw * 13 / 16 - 20px); }
.container .fourteen.columns      { width: calc(100cqw * 14 / 16 - 20px); }
.container .fifteen.columns       { width: calc(100cqw * 15 / 16 - 20px); }
.container .sixteen.columns       { width: calc(100cqw - 20px); }
.container .one-third.column      { width: calc(100cqw / 3 - 20px); }
.container .two-thirds.column     { width: calc(100cqw * 2 / 3 - 20px); }
.container .columns,
.container .column {
	margin-left: 10px;
	margin-right: 10px;
}
.container .offset-by-one         { margin-left: calc(100cqw * 1 / 16 + 10px); }
.container .offset-by-two         { margin-left: calc(100cqw * 2 / 16 + 10px); }
.container .offset-by-three       { margin-left: calc(100cqw * 3 / 16 + 10px); }
.container .offset-by-four        { margin-left: calc(100cqw * 4 / 16 + 10px); }
@media only screen and (max-width: 767px) {
	.container { padding: 0 16px; }
	.container .columns.columns,
	.container .column.column {
		float: none;
		width: auto;
		margin-left: 0;
		margin-right: 0;
	}
}

/* Project videos fill their column at 16:9
================================================== */
.videocontainer .fluid-width-video-wrapper {
	padding-top: 0 !important;
}
.videocontainer iframe {
	position: static !important;
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
}

/* Full-width header with text logo
================================================== */
.container.navcontainer {
	padding: 0 40px;
}
.navcontainer .logo.columns {
	width: auto;
	margin-left: 0;
}
.navcontainer .thirteen.columns {
	float: right;
	width: auto;
	margin-right: 0;
}
.navcontainer .sixteen.columns {
	width: 100%;
	margin: 0;
}
.logo h1,
.logo h2 {
	margin: 0;
	padding: 91px 0 0;
	font-size: 22px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: .2em;
	text-transform: uppercase;
	white-space: nowrap;
}
.logo h1 a,
.logo h2 a {
	color: #fff;
	text-decoration: none;
}

/* Full-bleed homepage grid
================================================== */
.slideshowcontainer .container {
	padding: 0 40px;
}
.slideshowcontainer .container.isotopecontainer {
	padding: 0;
}
.slideshowcontainer .sixteen.columns {
	float: none;
	width: auto;
}
.slideshowcontainer .filter {
	margin-left: 0;
}
.isotopecontainer .isobrick.three.columns.nopadding {
	width: 25%;
	margin: 0 !important;
}
.isotopecontainer .isobrick,
.isotopecontainer .flexslider .slides,
.isotopecontainer .flexslider .slides li,
.isotopecontainer .flexslider .slides a {
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
}
.isotopecontainer .flexslider .slides img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 6 / 5;
	object-fit: cover;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: top;
}

/* Rollover: project title shown large over the darkened tile */
.isotopecontainer .thumbnailtitle {
	box-sizing: border-box;
	width: 100%;
	padding: 8%;
	font-size: 26px;
	line-height: 1.15;
	font-weight: 600;
	letter-spacing: .02em;
}

@media only screen and (max-width: 999px) {
	.isotopecontainer .isobrick.three.columns.nopadding { width: 33.333%; }
	.isotopecontainer .thumbnailtitle { font-size: 21px; }
	.logo h1,
	.logo h2 { font-size: 17px; letter-spacing: .15em; }
}
@media only screen and (max-width: 767px) {
	.slideshowcontainer {
		margin-left: 0;
		margin-right: 0;
	}
	.logo h1,
	.logo h2 { padding: 28px 0 20px; }
	.navcontainer .thirteen.columns {
		float: none;
		width: 100%;
	}
	.navcontainer .dropdownmenu { width: 100%; }
}
@media only screen and (max-width: 599px) {
	.container.navcontainer,
	.slideshowcontainer .container { padding: 0 16px; }
	.slideshowcontainer .container.isotopecontainer { padding: 0; }
	.isotopecontainer .isobrick.three.columns.nopadding { width: 50%; }
	.isotopecontainer .thumbnailtitle { font-size: 17px; }
}
