
/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */*,::after,::before{background-repeat:no-repeat;box-sizing:inherit}::after,::before{text-decoration:inherit;vertical-align:inherit}html{box-sizing:border-box;cursor:default;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,footer,header,nav,section{display:block}body{margin:0}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}nav ol,nav ul{list-style:none}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}audio,canvas,iframe,img,svg,video{vertical-align:middle}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg{fill:currentColor}svg:not(:root){overflow:hidden}table{border-collapse:collapse}button,input,optgroup,select,textarea{margin:0}button,input,select,textarea{background-color:transparent;color:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto;resize:vertical}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[tabindex],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}[hidden]{display:none}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);display:inherit;position:absolute}[aria-disabled]{cursor:default}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}

/* ------------ constants ------------ */

:root				{
					--site-width: 86%;
					
					--grid-gap: 30px;
					
					--margin-top: 30px;
					--margin-bottom: 30px;
					--margin-left: 30px;
					--margin-right: 30px;
					
					--padding-top: 30px;
					--padding-bottom: 30px;
					--padding-left: 30px;
					--padding-right: 30px;
					}

/* ---------------- local type embed */

@charset "UTF-8";

@font-face {
  font-family: "sans";
  font-weight: 100;
  src: url("../fonts/roboto-v20-latin-100.woff") format("woff");
}
@font-face {
  font-family: "sans";
  font-weight: 300;
  src: url("../fonts/roboto-v20-latin-300.woff") format("woff");
}
@font-face {
  font-family: "sans";
  font-weight: 400;
  src: url("../fonts/roboto-v20-latin-400.woff") format("woff");
}
@font-face {
  font-family: "sans";
  font-weight: 500;
  src: url("../fonts/roboto-v20-latin-500.woff") format("woff");
}
@font-face {
  font-family: "sans";
  font-weight: 700;
  src: url("../fonts/roboto-v20-latin-700.woff") format("woff");
}
@font-face {
  font-family: "serif";
  font-weight: 300;
  src: url("../fonts/Serif_light.woff") format("woff");
}
@font-face {
  font-family: "sf_icon";
  font-weight: 300;
  src: url("../fonts/SofaIcons-Regular.woff") format("woff");
}

/* ------------ root */

html, body			{
					width: 100%;
					height: 100%;
					-webkit-backface-visibility: hidden;
					-webkit-font-smoothing:antialiased;
					font-family: "sans", sans-serif;
					font-weight: 300;
					font-size: 16px;
					line-height: 150%;
					letter-spacing: 0.5px;
					margin: 0;
					color: #404547;
					hyphens: auto;
					}

/* ------------ typography */

h1,h,h3,h4,h5,h6	{
					font-family: "sans", sans-serif;
					font-size: 100%;
					letter-spacing: 2.5px;
					hyphens: none;
					}
					
.type_xxs 			{ font-size: 70%; }
.type_xs 			{ font-size: 12px; }
.type_s				{ font-size: 14px; line-height: 24px; }
.type_m 			{ font-size: 20px; line-height: 140%; }
.type_l 			{ font-size: 24px; line-height: 150%; }
.type_xl 			{ font-size: 36px; line-height: 140%; }
.type_xxl 			{ font-size: 48px; line-height: 140%; }
.type_xxxl 			{ font-size: 60px; line-height: 140%; }

.type_thin			{ font-weight: 100; }
.type_light			{ font-weight: 300; }
.type_regular		{ font-weight: 400; }
.type_medium		{ font-weight: 500; }
.type_bold			{ font-weight: 700; }

.wide_s				{ letter-spacing: 1px; }
.wide_m				{ letter-spacing: 2.5px; }
.wide_l				{ letter-spacing: 4px; }

p,li				{ margin-top: 5px; margin-bottom: 5px; }
b, .b				{ font-weight: 700; font-style: normal; }
.uc					{ text-transform: uppercase; }
.sf_icon			{ font-family: "sf_icon"; }
.subheadline		{ font-family: "serif"; margin: 10px 0 20px 0; }
.text_link			{ font-family: "Benton Sans Bd"; color: #C31924; text-transform: uppercase; letter-spacing: 3px; }

.text_center		{ text-align: center; }
.text_right			{ text-align: right; }


/* ---------------- font colors */

.white, .white a	{ color: white; }
.colored, .cyan		{ color: #72B5E0; }
.red				{ color: #E40615;}
.grey				{ color: #999999; }
.darkgrey			{ color: #404547; }

.highlight			{ color: #aacd28; }
.warning			{ color: #E40615; }

a					{ color: #404547; text-decoration: none; }
a:hover				{ text-decoration: none; }

/* ---------------- background colors */

.bg					{ background-color: rgba(0,0,0,.1); }
.bg_white			{ background-color: white; }
.bg_cyan			{ background-color: #72B5E0; }

/* ---------------- headroom */

#header				{ display: block;
  					  width: 100%;
  					  height: auto;
  					  z-index: 30; 
  					  background: rgba(255,255,255,.95);
  					}
.header				{ padding-top: calc(var(--padding-top)/2); padding-bottom: calc(var(--padding-bottom)/2); }
.fixed				{ position: fixed;
					  z-index: 10;
					  right: 0; left: 0; top: 0; }

.headroom_top_space	{ height: 171px; }

/* ---------------- container */

.fullsize			{
					position: relative;
					width: 100%;
					height: 100%;
					background-repeat: no-repeat;
					background-position: center center;
					-webkit-transform-style: preserve-3d;
					-moz-transform-style: preserve-3d;
					transform-style: preserve-3d;
					}
.fullwidth			{
					width:100%;
					display: block;
					background-position: center center;
					background-repeat: no-repeat;
					}

.container,
.nav_container		{
					width: var(--site-width);
					max-width: 1320px;
					margin: 0 auto;
					}
.grid				{
					display: grid;
					grid-column-gap: var(--grid-gap);
					grid-row-gap: var(--grid-gap);
					position: relative;
					}
.grid.no_col_gap	{ grid-column-gap: 0; }
.grid.no_row_gap	{ grid-row-gap: 0; }

.flex				{ display: flex; }
.flex_column		{ 
					display: flex;
					flex-direction: column;
					height: 100%;
					}

/* ---------------- grid */

.col_2					{ grid-template-columns: 1fr 1fr; }
.col_3					{ grid-template-columns: 1fr 1fr 1fr; }
.col_4					{ grid-template-columns: 1fr 1fr 1fr 1fr; }

.col_1-3_2-3			{ grid-template-columns: 1fr 2fr; }
.col_2-3_1-3			{ grid-template-columns: 2fr 1fr; }
					
.v_align_center			{ display: grid; align-items: center; }
.h_align_center			{ display: grid; justify-content: center; }

.block					{ display: block; }

.width_80				{ width: 80% !important; }

/*

.col_2 .col				{ width: calc((100% - 4 * var(--col-margin)) / 2); }
.col_3 .col				{ width: calc((100% - 6 * var(--col-margin)) / 3); }
.col_4 .col				{ width: calc((100% - 8 * var(--col-margin)) / 4); }
.col_5 .col				{ width: calc((100% - 10 * var(--col-margin)) / 5); }
.col_6 .col				{ width: calc((100% - 12 * var(--col-margin)) / 6); }
.col_7 .col				{ width: calc((100% - 14 * var(--col-margin)) / 7); }

.col_2 .col_wide		{ width:100%; }
.col_3 .col_wide		{ width: calc((100% - 3 * var(--col-margin)) / 3 * 2); }
.col_4 .col_wide		{ width: calc((100% - 4 * var(--col-margin)) / 2); }
.col_5 .col_wide		{ width: calc((100% - 5 * var(--col-margin)) / 5 * 2); }
.col_6 .col_wide		{ width: calc((100% - 6 * var(--col-margin)) / 6 * 2); }
.col_7 .col_wide		{ width: calc((100% - 7 * var(--col-margin)) / 7 * 2); }
*/		

/*				
.col					{ margin: var(--row-margin) var(--col-margin) var(--row-margin) var(--col-margin);}
.col img,
.col_flex img			{ width: 100%; display:block; }

.col_flex 				{ flex: 1; }
.col_full				{ width: 100% !important; }
.col_content			{ width: auto !important; }


.flex_direction_col		{ display: flex;  flex-direction: column; }

*/


/* ---------------- margin */

.margin					{ margin: var(--margin-top); }
.margin_l				{ margin: calc(var(--margin-top) * 1.5); }

.margin_top_xxs			{ margin-top: calc(var(--margin-top) / 4); }
.margin_top_xs			{ margin-top: calc(var(--margin-top) / 3); }
.margin_top_s			{ margin-top: calc(var(--margin-top) / 1.5); }
.margin_top				{ margin-top: var(--margin-top); }
.margin_top_l			{ margin-top: calc(var(--margin-top) * 1.5); }
.margin_top_xl			{ margin-top: calc(var(--margin-top) * 3); }
.margin_top_xxl			{ margin-top: calc(var(--margin-top) * 4); }

.margin_bottom_xxs		{ margin-bottom: calc(var(--margin-bottom) / 4); }
.margin_bottom_xs		{ margin-bottom: calc(var(--margin-bottom) / 3); }
.margin_bottom_s		{ margin-bottom: calc(var(--margin-bottom) / 1.5); }
.margin_bottom			{ margin-bottom: var(--margin-bottom); }
.margin_bottom_l		{ margin-bottom: calc(var(--margin-bottom) * 1.5); }
.margin_bottom_xl		{ margin-bottom: calc(var(--margin-bottom) * 3); }
.margin_bottom_xxl		{ margin-bottom: calc(var(--margin-bottom) * 4); }

.margin_vertical_xxs	{ margin-top: calc(var(--margin-top) / 4); margin-bottom: calc(var(--margin-bottom) / 4); }
.margin_vertical_xs		{ margin-top: calc(var(--margin-top) / 3); margin-bottom: calc(var(--margin-bottom) / 3); }
.margin_vertical_s		{ margin-top: calc(var(--margin-top) / 1.5); margin-bottom: calc(var(--margin-bottom) / 1.5); }
.margin_vertical		{ margin-top: var(--margin-top); margin-bottom: var(--margin-bottom); }
.margin_vertical_l		{ margin-top: calc(var(--margin-top) * 1.5); margin-bottom: calc(var(--margin-bottom) * 1.5); }
.margin_vertical_xl		{ margin-top: calc(var(--margin-top) * 3); margin-bottom: calc(var(--margin-bottom) * 3); }
.margin_vertical_xx		{ margin-top: calc(var(--margin-top) * 4); margin-bottom: calc(var(--margin-bottom) * 4); }

.no_margin				{ margin: 0; }
.no_vertical_margin		{ margin-top: 0; margin-bottom: 0; }

/* ---------------- padding */

.padding				{ padding: var(--padding-top); }

.padding_top_xxs		{ padding-top: calc(var(--padding-top) / 4 ); }
.padding_top_xs			{ padding-top: calc(var(--padding-top) / 3 ); }
.padding_top_s			{ padding-top: calc(var(--padding-top) / 1.5 ); }
.padding_top			{ padding-top: var(--padding-top); }
.padding_top_l			{ padding-top: calc(var(--padding-top) * 1.5 ); }
.padding_top_xl			{ padding-top: calc(var(--padding-top) * 3 ); }
.padding_top_xxl		{ padding-top: calc(var(--padding-top) * 4 ); }

.padding_bottom_xxs		{ padding-bottom: calc(var(--padding-bottom) / 4); }
.padding_bottom_xs		{ padding-bottom: calc(var(--padding-bottom) / 3); }
.padding_bottom_s		{ padding-bottom: calc(var(--padding-bottom) / 1.5); }
.padding_bottom			{ padding-bottom: var(--padding-bottom); }
.padding_bottom_l		{ padding-bottom: calc(var(--padding-bottom) * 1.5); }
.padding_bottom_xl		{ padding-bottom: calc(var(--padding-bottom) * 3); }
.padding_bottom_xxl		{ padding-bottom: calc(var(--padding-bottom) * 4); }

.padding_right_s		{ padding-right: calc(var(--padding-top) / 1.5 ); }
.padding_right			{ padding-right: var(--padding-right); }
.padding_right_l		{ padding-right: calc(var(--padding-top) * 1.5 ); }

.padding_vertical_xxs	{ padding-top: calc( var(--padding-top) / 4 ); padding-bottom: calc( var(--padding-bottom) / 4); }
.padding_vertical_xs	{ padding-top: calc( var(--padding-top) / 3 ); padding-bottom: calc( var(--padding-bottom) / 3); }
.padding_vertical_s		{ padding-top: calc( var(--padding-top) / 1.5 ); padding-bottom: calc( var(--padding-bottom) / 1.5); }
.padding_vertical		{ padding-top: var(--padding-top); padding-bottom: var(--padding-bottom); }
.padding_vertical_l		{ padding-top: calc( var(--padding-top) * 1.5 ); padding-bottom: calc( var(--padding-bottom) * 1.5); }
.padding_vertical_xl	{ padding-top: calc( var(--padding-top) * 3 ); padding-bottom: calc( var(--padding-bottom) * 3); }
.padding_vertical_xxl	{ padding-top: calc( var(--padding-top) * 4 ); padding-bottom: calc( var(--padding-bottom) * 4); }

.padding_horizontal_xxs	{ padding-left: calc(var(--padding-left) / 4); padding-right: calc(var(--padding-right) / 4); }
.padding_horizontal_xs	{ padding-left: calc(var(--padding-left) / 3); padding-right: calc(var(--padding-right) / 3); }
.padding_horizontal_s	{ padding-left: calc(var(--padding-left) / 1.5); padding-right: calc(var(--padding-right) / 1.5); }
.padding_horizontal		{ padding-left: var(--padding-left); padding-right: var(--padding-right); }
.padding_horizontal_l	{ padding-left: calc(var(--padding-left) * 1.5); padding-right: calc(var(--padding-right) * 1.5); }
.padding_horizontal_xl	{ padding-left: calc(var(--padding-left) * 3); padding-right: calc(var(--padding-right) * 3); }
.padding_horizontal_xl	{ padding-left: calc(var(--padding-left) * 4); padding-right: calc(var(--padding-right) * 4); }

/* ---------------- alignment */

.vertical_align_middle	{ align-content: center; display:grid;  }
.vertical_align_bottom	{ align-content: end; display:grid; }

.align_center			{ text-align: center; justify-content: center; }
.align_items			{ align-items: center; }
.justify_content		{ justify-content: center; }

/* ---------------- common layout */

.header_mobile		{ display: none; }
.hidden				{ display: none; }
.invisible			{ opacity: 0 !important; }
.opacity_50			{ opacity: .5; }

.hide_on_desktop	{ display: none; }
.hide_on_mobile		{ display: block; }

li					{ list-style-position: inside; list-style-type: disc; }
hr					{
					display: block;
					width: 100%;
					height: 0px;
					border: 0;
					border-bottom: 1px dotted grey;
					}
hr.white			{ background: url(../images/common/hr_white.svg); }
hr.grey				{ background: url(../images/common/hr_grey.svg); }

.bg_image			{ -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-size: cover; background-position: center center; }
.bg_cover			{ -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-size: cover; }
.bg_center			{ background-position: center center; }

.fullwidth img		{ width: 100%; }
.grid img			{ max-width: 100%; height: auto; }

.history_back:hover	{ cursor: pointer; }

.border				{ border: 1px dotted grey; }
.noscript{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index:10000;
	overflow: scroll;
	text-align: center;
	background: white;
}
.z-index			{ z-index: 10; }

.animate{
	-o-transition: all .6s ease-in-out;
	-ms-transition: all .6s ease-in-out;
	-moz-transition: all .6s ease-in-out;
	-webkit-transition: all .6s ease-in-out;
	transition: all .6s ease-in-out;
}

/* ---------------- Tooltip */

.tooltip {
  position: relative;
  display: inline-block;
  white-space: nowrap;
}
.tooltip .tooltiptext {
	position: absolute;
	z-index: 1;
	left: 20px;
	visibility: hidden;
	width: auto;
	background-color: black;
	color: #fff;
	font-family: "sans", sans-serif;
	font-size: 16px;
	text-align: center;
	padding: 0px 10px;
}
.tooltip:hover .tooltiptext {
  visibility: visible;
}

/* ---------------- Header */

.logo				{
					display: inline-block;
					height: 70px;
					margin-top: 30px;
					margin-bottom: 15px;
					}
.headroom 			{
					will-change: transform;
					transition: transform 200ms linear;
					}
.headroom--pinned	{
					transform: translateY(0%);
					}
.headroom--unpinned {
					transform: translateY(-100%);
					}
					
/* ---------------- video */

.videoWrapper		{
				    position: relative;
				    /*padding-bottom: 56.25%; /* 16:9 */
				    height: 0;
				    overflow: hidden;
					}

.videoWrapper iframe {
				    position: absolute;
				    top: 0;
				    left: 0;
				    width: 100%;
				    height: 100%;
					}
				
/* ---------------- Buttons */

.sf_button{
	font-family: "sans";
	font-size: 16px;
	font-weight: 500;
	line-height: 15px;
	display: inline-block;
	padding: 13px 20px 12px 20px;
	border: none;
	outline:0;
	background-color: #4293C7;
	
	-o-transition: background-color .3s ease-in-out;
	-ms-transition: background-color .3s ease-in-out;
	-moz-transition: background-color .3s ease-in-out;
	-webkit-transition: background-color .3s ease-in-out;
	transition: background-color .3s ease-in-out;
}
.sf_button:hover{
	background-color: #2e76a2;
	cursor: pointer;
}
.sf_button_arrow:after{
	content: " →";
	font-family: "sf_icon";
}


/* --------- Footer Columns --------- */

.footer			{ display: grid; }
.footer_left	{ background-color: #273035; padding: calc(var(--padding-top)*1.5) 12% calc(var(--padding-top)*1.5) 12%; }
.footer_right	{ background-color: #2E393E; padding: calc(var(--padding-top)*1.5) 12% calc(var(--padding-top)*1.5) 8%; grid-template-columns: 1fr 1fr auto;}

/* --------- Footer Navigation --------- */

.footer_navigation li{
	display: inline;
	letter-spacing: 1px;
}
.footer_navigation li:after{
	content: "·";
	padding: 0 4px 0 8px;
}
.footer_navigation li:last-child:after{
	content: "";
	padding: 0;
}
.footer_navigation li.current-menu-item a{
	font-weight: 700;
}

/* ---------------- Project */

.project_preview{
	width: 100%;
	padding-bottom: 65%;
}

/* ---------------- Project Picks */

.project_picks_preview{

}
.project_picks_overlay{
	width: 100%;
	height: 100%;
	max-width: 100%;
	padding-top: 25%;
	padding-bottom: 20%;
}
.project_picks_overlay:hover{
	background: rgba(114,181,224,.7);
}

/* ---------------- Team */

.team_portrait{
	width: 100%;
	padding-bottom: 100%;
}

/* ---------------- Navigation Desktop */

#header{
	/*background: rgba(255, 255, 0, .8);*/
}

#header .header_content{ }

.navigation{
	font-size: 16px;
}
.navigation .col_2{
	grid-template-columns: 1fr auto;
}
.navigation_left{}
.navigation_right{ text-align: right; }

.navigation li{
	display: inline;
}
.navigation li a{
	font-family: "sans";
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-right: var(--margin-right);
}
.navigation li a:hover{
	border-bottom: 1px solid black;
}
.navigation .current-menu-item a{
	font-weight: 700;
}
.navigation .sf_icon a{
	font-size: 22px;
	margin-left: calc(var(--margin-left)/4);
}

/* ---------------- Navigation Mobile */

#mobile_navigation_overlay{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 40;
}
.mobile_navigation_icon{
	display: grid;
	text-align: right;
	align-items: center;
	font-size: 32px;
}
#mobile_navigation_overlay li{
	font-size: 28px;
	line-height: 180%;
	text-align: center;
	list-style: none;
	letter-spacing: 1px;
}
#mobile_navigation_overlay .footer_navigation{
	text-align: center;
}
#mobile_navigation_overlay .footer_navigation li{
	font-size: 15px;
	list-style: none;
}
#mobile_navigation_overlay li a:hover{
	border-bottom: 1px solid white;
}
#mobile_navigation_overlay li.current_page_item a{
	font-weight: 700;
}







/* Autoslider */

.slidecontainer {
    width: 100%;
    overflow:hidden;
    height:auto;
    white-space: nowrap;
}

.slidewrapper {
    height: auto;
    width: 200%;
}

.slidewrapper div {
	width:15%;
	margin-right: 0;
	padding: 1%;
	display:inline-block;
}
.slidewrapper div img{
	width:100%;
	box-shadow: 0px 0px 20px #bbb;
}

.first {
    -webkit-animation: moveleft 160s linear infinite;
}
.second {
    -webkit-animation: moveright 180s linear infinite;
}

@-webkit-keyframes moveleft {
 0% { margin-left:0 }
 100% { margin-left:-51.5%; }
}
@-webkit-keyframes moveright {
 0% { margin-left:-51.5% }
 100% { margin-left:0%; }
}

/* ---------------- remove standard-styles */

input, select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border:none;
  border-radius: 0;
  font-size: 16px;
  width: auto;
  outline: none;
}

/* ---------------- Input & Textarea */
input, textarea {
	border-radius: 5px;
	background-color: #E5E6E7;
	padding:.5em 1em .5em 1em;
}

textarea {
  resize:vertical;
}

input:hover,
input:active,
textarea:hover,
textarea:active {
  /*border-bottom: 1px solid #00c6ff;*/
  outline: none;
}

::placeholder {
  opacity: .5;
}

input[type=search]{
	background-image: url(../images/icons/search.png);
	background-size: 18px;
	background-position: right center;
	background-origin: content-box;
	width: 52%;
}


/* --------------------- sf_slideshow */

[data-slide]			{
						opacity: 0;
						z-index: -1;
						position: absolute;
						top:0;
						width: 100%;
						height: 100%;
						transition-property: opacity, transform;
						transition-duration: 500ms;
						transition-timing-function: linear;
						}
.sf_slide_show			{ opacity: 1; }
.sf_slide_hide			{ opacity: 0; }

.sf_slide_control		{
						position: absolute;
						top:0;
						display: flex;
						justify-content: center;
						align-items: center;
						width: auto;
						height:100%;
						z-index: 2;
						margin: 0 30px;
						font-size: 4em;
						}

.sf_slide_control.right	{ right: 0; }

.sf_slide_control_prev,
.sf_slide_control_next	{ cursor: pointer; }
.sf_slide_control.hidden { display: none; }

.sf_dots				{
						position: absolute;
						bottom:0;
						margin: 30px 0;
						width: 100%;
						z-index: 10;
						color: white;
						text-align: center;
						}
.sf_dots .dot			{
						width:12px;
						height: 12px;
						display: inline-block;
						border-radius: 10px;
						margin: 0 8px;
						background: white;
						opacity: .5;
						}
.sf_dots .dot:hover		{
						cursor: pointer;
						opacity: .8;
						transform: scale(1.2);
						}
.sf_dots .current_slide { 
						opacity:1;
						transform: scale(1.4);
						}

/* --------------------- mobile */

@media only screen and (max-width:414px) {

.sf_slide_control		{
						font-size: 2em;
						margin: 0 .2em;
						}
}


/* ---------------- instapi layout */

.instapi{ display:none; }

.instapi_item{
	position: relative;
	width: 100%;
	overflow: hidden;
}
.instapi_item_image{
	position: relative;
	width: 100%;
	padding-top: 100%;
}
.instapi_overlay{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height: 100%;
}
.instapi_overlay:hover{
	opacity: 1;
}
.instapi_likes, .instapi_comments{
	position: absolute;
	bottom:0;
	right: 0;
	margin: 25px;
	font-size: 20px;
	font-weight: 400;
	color:white;
}
.instapi_comments{
	right:0;
}
.instapi_caption{
	position: absolute;
	top:40%;
	width: 100%;
	text-align: center;
	z-index: 10;
}
.instapi_caption p{
	padding: 0 20px;
}
.instapi_link{
	position: absolute;
	bottom:0;
	width: 100%;
	text-align: center;
	padding: 5% 0;
	background: rgba(0,0,0,.6);
	z-index: 15;
}
#instapi_load_more{
	display: none;
}

/* flex grid */

.instapi_flex{
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.instapi_col{
	position: relative;
	margin-top: var(--grid-gap);
	margin-bottom: var(--grid-gap);
	margin-left: var(--grid-gap);
	margin-right: var(--grid-gap);
}
.instapi_col img{
	width:100%;
	height: auto;
}
@media only screen and (max-width: 50px) {
	.instapi_col{
		flex: 0 0 calc(100% - 2 * var(--grid-gap));
		max-width: calc(100% - 2 * var(--grid-gap));
	}
}
@media only screen and (min-width: 320px) {
	.instapi_col{
		flex: 0 0 calc(50% - 2 * var(--grid-gap));
		max-width: calc(50% - 2 * var(--grid-gap));
	}
}

@media only screen and (min-width: 700px) {
	.instapi_col{
		flex: 0 0 calc(25% - 2 * var(--grid-gap));
		max-width: calc(25% - 2 * var(--grid-gap));
	}
}
/*
@media only screen and (min-width: 1000px) {
	.instapi_col{
		flex: 0 0 calc(25% - 2 * var(--row-margin));
		max-width: calc(25% - 2 * var(--row-margin));
	}
}
@media only screen and (min-width: 1400px) {
	.instapi_col{
		flex: 0 0 calc(20% - 2 * var(--row-margin));
		max-width: calc(20% - 2 * var(--row-margin));
	}
}
@media only screen and (min-width: 2000px) {
	.instapi_col{
		flex: 0 0 calc(16.66% - 2 * var(--row-margin));
		max-width: calc(16.66% - 2 * var(--row-margin));
	}
}
*/

/* ---------------- responsive changes */

/* ---------------- like iPad pro */

@media only screen and (max-width: 1024px) {
	
	/* ------------ constants ------------ */

	:root			{
					--site-width: 94%;
					--grid-gap: 30px;
					}
					
	/* ---------------- type */
	
	.type_l 		{ font-size: 20px; line-height: 150%; }
	.type_xxl 		{ font-size: 40px; line-height: 140%; }

	/* ---------------- layout */
	
	.headroom_top_space	{ height: 151px; }
	
	.logo			{
					height: 60px;
					margin-top: 20px;
					margin-bottom: 15px;
					}
	
}

/* ---------------- like iPad */

@media only screen and (max-width: 768px) {
	
	/* ------------ constants ------------ */

	:root			{
					--site-width: 94%;
					--grid-gap: 25px;
					
					--margin-top: 25px;
					--margin-bottom: 25px;
					--margin-left: 25px;
					--margin-right: 25px;
					
					--padding-top: 25px;
					--padding-bottom: 25px;
					--padding-left: 25px;
					--padding-right: 25px;
					}
					
	/* ---------------- type */
	
	h1,h,h3,h4,h5,h6{
					letter-spacing: 2px;
					}
	
	.type_m 		{ font-size: 18px; line-height: 140%; }
	.type_l 		{ font-size: 20px; line-height: 150%; }
	.type_xxl 		{ font-size: 36px; line-height: 140%; }
	
	.wide_s			{ letter-spacing: .5px; }
	.wide_m			{ letter-spacing: 1px; }
	.wide_l			{ letter-spacing: 2px; }

	/* ---------------- layout */
	
	html, body 		{
					font-weight: 300;
					font-size: 14px;
					line-height: 136%;
					}
	
	.headroom_top_space	{ height: 120px; }
	
	.logo			{
					height: 45px;
					margin-top: 17px;
					margin-bottom: 12px;
					}
					
	/* ---------------- navigation */			
	
	.navigation		{ font-size: 15px; }
	.navigation li a{
					letter-spacing: 1px;
					margin-right: calc(var(--margin-right) / 2);
					}
	.navigation .sf_icon a{
					font-size: 20px;
					margin-left: calc(var(--margin-left)/4);
					}
	
}

/* ---------------- like Smartphone */

@media only screen and (max-width: 600px) {
	
	:root			{
					--grid-gap: 15px;
					--margin-bottom: 15px;
					}
	
	html, body 		{ line-height: 130%; }
	
	.header			{
					padding-top: 0;	
					padding-bottom: 0;
					}
	
	.headroom_top_space	{ height: 73px; }
	
	.header_desktop	{ display: none; }
	.header_mobile	{ display: block; }
	
	.logo			{
					height: 40px;
					margin-top: 0px;
					margin-bottom: 8px;
					}
	
	.hide_on_desktop{ display: block; }
	.hide_on_mobile	{ display: none; }
	
	/* ---------------- type */
	
	h1,h,h3,h4,h5,h6{
					letter-spacing: 2px;
					}
	
	.type_l 		{ font-size: 18px; line-height: 130%; }
	.type_xl 		{ font-size: 22px; line-height: 130%; }
	.type_xxl 		{ font-size: 24px; line-height: 140%; }
	
	p,li			{ margin-top: 5px; margin-bottom: 10px; }
	
	/* ---------------- layout */
	
	.col_2_mobile	{ grid-template-columns: 1fr; }
	.col_3_mobile	{ grid-template-columns: 1fr 1fr; }
	.col_4_mobile	{ grid-template-columns: 1fr 1fr; }
	
	.col_1-3_2-3	{ grid-template-columns: 1fr; }
	.col_2-3_1-3	{ grid-template-columns: 2fr; }
	
	.padding_horizontal_xl{ padding-left: 0; padding-right: 0; }
	
	.reverse_order > div:nth-of-type(1)	{ order: 2; }
	
	.sf_dots		{ margin: 10px 0; }
	.sf_dots .dot	{
					width:6px;
					height: 6px;
					border-radius: 3px;
					margin: 0 4px;
					}
	
}

@media only screen and (max-width: 320px) {
	
	html, body		{
					font-size: 13px;
					line-height: 120%;
					letter-spacing: 0px;
					}
	
	.headroom_top_space	{ height: 38px; }
	
	.logo			{
					height: 30px;
					margin-top: 0px;
					margin-bottom: 0px;
					}
	
	/* ---------------- type */
	
	.type_m 		{ font-size: 14px; line-height: 130%; }
	.type_l 		{ font-size: 15px; line-height: 130%; }
	.type_xl 		{ font-size: 22px; line-height: 130%; }
	.type_xxl 		{ font-size: 20px; line-height: 140%; }
	
	/* ---------------- layout */
	
	.col_3_mobile	{ grid-template-columns: 1fr; }
	.col_4_mobile	{ grid-template-columns: 1fr; }
	
	.col_1-3_2-3	{ grid-template-columns: 1fr; }
	.col_2-3_1-3	{ grid-template-columns: 1fr; }
	
	.margin_bottom	{ margin-bottom: 8px; }
	
	/* ---------------- navigation */
	
	.mobile_navigation_icon{ font-size: 26px; }
	#mobile_navigation_overlay li{
					font-size: 22px;
					line-height: 180%;
					letter-spacing: 1px;
					}
	
}

/* ---------------- Admin CSS */

.wp-block {
    max-width: 100%;
}

.acf-input select{
	width: 100% !important;
}
button.button{ background-color: white; }
button.button:hover{ background-color: #ddd; }


.editor-styles-wrapper .button, .editor-styles-wrapper .button:hover{
	background-color: red !important;
	padding: 100px;
}
