@font-face{ font-family: "Default"; font-style: normal; font-weight: 400;
    src: url("../_media/fonts/opensans.woff2") format("woff2"), url("../_media/fonts/opensans.woff") format("woff");
}

@font-face{ font-family: "Default"; font-style: normal; font-weight: 700;
    src: url("../_media/fonts/opensans-semibold.woff2") format("woff2"), url("../_media/fonts/opensans-semibold.woff") format("woff");
}

@font-face{ font-family: "Body"; font-style: normal; font-weight: 400;
    src: url("../_media/fonts/sourcesanspro.woff2") format("woff2"), url("../_media/fonts/sourcesanspro.woff") format("woff");
}

@font-face{ font-family: "Body"; font-style: italic; font-weight: 400;
    src: url("../_media/fonts/sourcesanspro-italic.woff2") format("woff2"), url("../_media/fonts/sourcesanspro-italic.woff") format("woff");
}

@font-face{ font-family: "Body"; font-style: normal; font-weight: 700;
    src: url("../_media/fonts/sourcesanspro-semibold.woff2") format("woff2"), url("../_media/fonts/sourcesanspro-semibold.woff") format("woff");
}

@font-face{ font-family: "Body"; font-style: italic; font-weight: 700;
    src: url("../_media/fonts/sourcesanspro-semibolditalic.woff2") format("woff2"), url("../_media/fonts/sourcesanspro-semibolditalic.woff") format("woff");
}

@font-face{ font-family: "Header"; font-style: normal; font-weight: 700;
    src: url("../_media/fonts/sourcesanspro-semibold.woff2") format("woff2"), url("../_media/fonts/sourcesanspro-semibold.woff") format("woff");
}

@font-face{ font-family: "Header"; font-style: italic; font-weight: 700;
    src: url("../_media/fonts/sourcesanspro-semibolditalic.woff2") format("woff2"), url("../_media/fonts/sourcesanspro-semibolditalic.woff") format("woff");
}

@font-face{ font-family: "Button"; font-style: normal; font-weight: 700;
    src: url("../_media/fonts/opensans-semibold.woff2") format("woff2"), url("../_media/fonts/opensans-semibold.woff") format("woff");
}

/****/

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, main { display: block; }
audio, canvas, video { display: inline-block; *zoom: 1; }
audio:not([controls]) { display: none; }
html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
::-moz-selection { color: #fff; text-shadow: none; }
::selection { color: #fff; text-shadow: none; }
a:focus { outline: thin dotted; }
a:hover, a:active, :target { outline: 0; }
strong{ font-weight: 700; }
pre, code, kbd, samp { font-family: monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
label { cursor: pointer; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="tel"], textarea { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
button { font-size: inherit; }
form{ display: inline-block; width: 100%; }
a, button, input, select, textarea, label{ touch-action: manipulation; }

/****/

h1, a, .coachingTip, .information, .ui-widget a, .tabMenu a.current, .navToggle{
	color: #adadad;
}

.uiButton, .fileInput + label, .ui-button, .informationBox, .tabMenu a{
	background: #adadad;
}

::selection{
	background: #adadad;
}

::-moz-selection{
	background: #adadad;
}

input.text:focus, textarea:focus, select:focus, .tabMenu a.current{
	border: 1px solid #adadad;
}

a.current, mark{
	color: #dadada;
}

.uiButton:hover, .uiButton:focus, .uiButton.current, .fileInput + label:hover, .fileInput:focus + label, .fileInput.has-focus + label, .ui-button:hover, .ui-button:focus, .tabMenu a:hover, .tabMenu a:focus{
	background: #dadada;
}

.uiButton, .uiButton.current, .uiButton:hover, .ui-button, .ui-button:hover, .ui-button:focus, .fileInput + label, .tabMenu, .tabMenu a, .tabMenu a:hover{
	color: #fff;
}

/****/

.uiButton, .fileInput + label, .ui-button, .ui-dialog .ui-button, .ui-dialog .ui-button:hover, .ui-dialog .ui-button:focus, .labelSpan, .propertyInfoLabel, .dataTable th, .alertBanner .alertTag{
	font-family: "Button", sans-serif;
	font-weight: 700;
}

/****/

*, *:before, *:after{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

body{
	font-family: "Default", sans-serif;
	font-size: 15px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	color: #555;
	margin: 0;
}

#page, html.white #page{
	background: #fff;
}

#wrap{
	margin: auto;
	padding: 0;
	width: 100%;
	min-width: 350px;
}

header, main, footer{
    max-width: 1400px;
}

#headerWrap{
    padding: 2% 5%;
}

header{
    margin: auto;
    padding: 0;
	position: relative;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

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

header{
	display: block;
}

}

#mainWrap{
    padding: 1% 5%;
}

main{
    margin: auto;
    padding: 0;
	position: relative;
}

#footerWrap{
    padding: 1% 5%;
}

footer{
	margin: auto;
	padding: 0;
	position: relative;
	text-align: center;
	font-size: 0.8em;
	color: #bbb;
}

footer a{
	color: #bbb;
}

footer a:hover, footer a:focus{
	text-decoration: underline;
	text-decoration-skip: ink;
}

footer .copyright{
    padding: 1em 0;
    font-size: 0.9em;
}

footer .copyright span{
    display: inline-block;
	white-space: nowrap;
	padding: 0 0.1em;
}

footer .copyright span:after{
    content: " |";
}

footer .copyright span:last-of-type:after{
    content: "";
}

/****/

p{
	margin: 1em auto;
	font-family: "Body", sans-serif;
    line-height: 1.6;
}

@media screen and (max-width: 400px){ p{
	-webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
}}

a{
	text-decoration: none;
	font-weight: 700;
}

a:hover, a:focus{
	text-decoration: underline;
	text-decoration-skip: ink;
}

a:not([href]), a:not([href]):hover{
	color: rgba(0, 0, 0, 0.2) !important;
	cursor: default;
}

a[href^=tel]{
	color:inherit;
	text-decoration:none;
}

h1, h2, h3, h4, h5{
	font-family: "Header", sans-serif;
}

h1, h2, h3, h4, h5, h1 a, h2 a, h3 a, h4 a, h5 a{
	font-weight: inherit;
}

h1{
	margin: 0;
	padding: 0;
}

h2{
	font-size: 1.4em;
	margin: 2em 0 1em 0;
	padding: 0;
}

h3{
	font-size: 1em;
	padding: 2px 3px;
	margin: 2em 0 1em 0;
}

h4{
	font-size: 1em;
	margin-bottom: 10px;
	text-align: center;
}

ol, ul{
	margin: 20px 8% 20px 8%;
	padding: 0;
	font-family: "Body", sans-serif;
    line-height: 1.6;
}

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

ol, ul{
	margin: 20px 2% 20px 2%;
}

}

ol{
	list-style: decimal;
}

ol.loweralpha{
	list-style: lower-alpha;
}

li{
	margin-bottom: 10px;
}

th{
	text-align: left;
}

mark{
	font-weight: 700;
}

img{
	vertical-align: middle;
}

figure{
    text-align: center;
    border: 1px solid #999;
    padding: 0.8em;
    margin: 2em auto;
    max-width: 600px;
}

figure img{
    width: 100%;
    height: auto;
}

figcaption{
    font-size: 0.8em;
    margin-top: 1em;
}

address{
	font-family: "Body", sans-serif;
    line-height: 1.6;
	font-style: normal;
}

blockquote{
	margin: 2em 5%;
}

blockquote .author{
	text-align: right;
	font-style: italic;
	font-weight: 700;
}

dt{
	font-weight: 700;
	margin: 1em 0 0.5em 0;
}

abbr[data-coaching], dfn[data-coaching]{
	border-bottom: 1px solid;
	text-decoration: none;
	font-style: normal;;
	cursor: help;
}

/****/

.fillLink{
	display: block;
	height: 100%;
}

.invisibleLink{
	color: inherit !important;
	font-weight: inherit;
}

.invisibleLink:hover{
	text-decoration: none;
}

.breakout{
    position: relative;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

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

.breakout{
    margin-left: -5% !important;
}

}

cite.publication{
	font-size: 0.95em;
}

cite.publication{
	font-style: italic;
}

cite.publication:before{
	content: "(";
}

cite.publication:after{
	content: ")";
}

.hidden, .js .jshidden, .no-js .nojshidden, .flash .flashhidden, .no-flash .noflashhidden{
	clip: rect(0 0 0 0); 
	clip-path: inset(100%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap; 
	width: 1px;
}

.screenReaderOnly:not(:focus):not(:active){
	clip: rect(0 0 0 0); 
	clip-path: inset(100%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap; 
	width: 1px;
}

.nodisplay{
    display: none;
}

.screenReaderText{
  position: absolute;
  top: -9999px;
  left: -9999px;
}

.centerMid{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40%;
  height: 50%;
}

.note{
	opacity: 0.7;
	font-size: 0.8em;
}

.subtext{
	font-size: 0.7em;
}

a.mutedLink{
	opacity: 0.7;
}

.itemLink{
	margin-top: 0.5em;
}

/****/

.loginText{
    font-size: 0.7rem;
	text-align: right;
	padding: 5px;
}

/****/

.tabMenu{
	position: relative;
	text-align: center;
    list-style: none;
    padding: 0;
	margin: 1em auto;
    display: table;
    table-layout: fixed;
    width: 100%;
}

.tabMenu li{
    display: table-cell;
    padding: 0;
    margin: 0;
    vertical-align: bottom;
    border: 0;
}

.oldie .tabMenu li{
    float: left;
}

.tabMenu li{
	font-size: 1em;
}

.tabMenu li span{
	padding-left: 0.6em;
}

.tabMenu li i{
	font-size: 1.15em;
}

.tabMenu a{
    display: block;
    border: 1px solid #fff;
    width: 100%;
	font-size: 0.95em;
	padding: 0.7em 0;
	margin: 1px;
    border-radius: 3px;
}

.oldie .tabMenu a{
    float: left;
	padding: 0.7em 0.5em;
}

.tabMenu a.current{
    background: transparent !important;
}

.tabMenu a:hover{
    text-decoration: none;
}

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

.tabMenu li{
    width: 100%;
    display: block;
}

.tabMenu i{
    position: absolute;
    right: 1em;
}

}

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

.tabMenu li{
	font-size: 0.9em;
}

}

/****/

nav{
	margin: 0;
	padding: 0;
    background: transparent;
    z-index: 3;
	flex: 1;
}

.navMenu{
	list-style: none;
	list-style-image: none;
	margin: 1em auto;
	padding: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.navMenu li{
	margin: 0;
    text-align: center;
    margin-left: 2em;
}

.navMenu li a{
	border: 1px solid transparent;
	font-family: "Button", sans-serif;
	font-weight: inherit;
	padding: 0.4em 0;
	width: 100%;
}

.navMenu li a.current, .navMenu li a:hover, .navMenu li a:focus{
	text-decoration: none;
	outline: 0;
}

.navMenu li.loginMenuItem{
    text-align: center;
}

.navMenu li.loginMenuItem a{
    background: #adadad;
    color: #fff;
    padding: 0.5em 1.5em;
    border-radius: 3px;
}

.navMenu li.loginMenuItem a:hover{
    background: #dadada;
    color: #fff;
}

nav .subMenuWrap{
    display: none;
}

.navToggle{
    display: none;
    position: absolute;
    top: 10px;
    right: 0;
    font-size: 2em;
    z-index: 500;
    cursor: pointer;
    cursor: hand;
}

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

nav{
    position: static;
    z-index: 100;
    width: 100%;
    display: none;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    padding: 1em 0 0 0;
    margin-top: 1em;
}

.navToggle{
    display: block;
}

.navMenu{
    display: none;
    padding-bottom: 1em;
}

.navMenu ul li{
    font-size: 0.8em;
}

.navMenu li{
    /*float: none;*/
    display: block;
    padding: 0;
    margin: 0;
    text-align: center;
    border-top: 1px solid #eee;
}

.navMenu li:first-of-type, .navMenu li.loginMenuItem, .navMenu ul li{
    border-top: none;
}

.navMenu .loginMenuItems li:first-of-type{
    border-top: 1px solid #eee;
}

.navMenu li a{
    display: block;
    padding: 0.2em;
    margin: 0.3em;
    font-size: 1.2em;
}

nav .subMenuWrap{
    display: block;
    margin: 1em 0;
}

.navMenu li.loginMenuItem a{
    margin: 0;
}

.loginText{
    display: none;
}

}

@media only screen and (min-width: 750px){

.loginMenuItems{
    display: none;
}

}


/****/

form table{
	margin: auto;
}

form table td{
	padding: 3px;
}

div.submit{
	margin-top: 1em;
    text-align: right;
}

input, select, textarea{
    border-radius: 3px;
    padding: 0.6em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	line-height: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
}

input.text, select, textarea{
    color: inherit;
}

select::-ms-expand{
    display: none;
}

::placeholder{
    opacity: 0.7;
    color: inherit;
}

input[type="checkbox"]{
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox;
}

input[type="radio"]{
	-webkit-appearance: radio;
	-moz-appearance: radio;
	appearance: radio;
}

input[type="date"], input[type="time"]{
	font-size: 0.9em;
	max-width: 15em;
    min-height: 2em;
    min-width: 7em;
}

.icon{
    width: 16px;
    height: 16px;
}

.information{
	font-weight: 700;
}

.inputLabel{
	width: 100px;
	vertical-align: middle;
}

/*textarea{
	overflow: hidden;
	height: 2.1em;
}

textarea { overflow: auto; vertical-align: top; resize: vertical; }*/

textarea {
    resize: none;
    overflow: hidden;
}


textarea.clipboard{
    width: 100%;
    height: 10em;
    font-size: 0.8rem;
    opacity: 0.7;
}

select{
    max-width: 100%;
	word-wrap: normal;
}

input.text, textarea, select{
	border: 1px solid #ccc;
	background: transparent;
}

input.text.invalid, textarea.invalid, select.invalid{
    border: 1px solid #c42e01;
}

input.text:invalid, select:invalid, textarea:invalid{
	background: transparent;
}

input.text:focus, select:focus, textarea:focus{
	background: #fff;
}

input.text:focus, textarea:focus, select:focus{
	outline: 0;
}

progress{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    height: 5px;
    background: transparent;
    color: #089501;
    width: 100%;
}

progress:not([value]){
    display: none;
}

progress[value]::-webkit-progress-bar{
    background: transparent;
    border-radius: 3px;
}

progress[value]::-webkit-progress-value, progress[value]::-moz-progress-bar{
    background: #089501;
}

/****/

.propertyInfoList{
	max-width: 500px;
    margin: 3em auto;
}

.propertyInfoList .flexibleImage{
	margin: 4em auto;
	width: 80%;
}

.propertyInfoList .flexibleImage img, .propertyInfoList .flexibleImage svg{
	max-width: 250px;
}

.propertyInfo{
    width: 100%;
    margin: 0;
    clear: both;
    padding: 0 0 0.5em 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.propertyInfo:last-of-type{
    padding-bottom: 0;
    border-bottom: 0;
}

.propertyInfoLabel{
    font-size: 0.7em;
    font-weight: 700;
    text-align: left;
	color: inherit;
    float: left;
    padding: 1rem 1rem 0.3rem 0;
    min-width: 100px;
}

.propertyInfoValue{
    padding: 0.6rem 0 0.2rem 0;
    text-align: right;
}

.propertyInfoValue .markdown{
    font-size: 0.9em;
}

.propertyInfoValue .markdown p{
    margin: 0.5em auto;
}

.propertyInfoValue .markdown p:first-of-type{
	margin-top: 0;
}

.propertyInfoValue .markdown p:last-of-type{
	margin-bottom: 0;
}

.propertyInfo .units{
    font-size: 0.7em;
}

.propertyInfo.fullWidth .propertyInfoLabel{
    float: none;
}

.propertyInfo.fullWidth .propertyInfoValue{
    text-align: justify;
}

.propertyInfo.center .propertyInfoLabel{
    float: none;
    text-align: center;
}

.propertyInfo.center .propertyInfoValue{
    text-align: center;
}

/****/

.form{
    margin: 1.5em auto;
}

.form p{
    clear: both;
}

.dialog .form:last-of-type{
    margin-bottom: 0;
}

fieldset.url{
    display: none;
}

.formAgreement{
    margin: 2em auto;
    border: 1px solid #eee;
    background: #fafafa;
    padding: 1em;
    font-size: 0.8em;
}

.radioOptions{
    margin: 1em auto;
    padding: 1em;
    border: 1px solid #ccc;
    font-size: 0.8em;
}

.radioScale{
    margin: 1em auto;
    padding: 1em;
    border: 1px solid #ccc;
    font-size: 0.8em;
}

.radioScale table{
    width: 100%;
    text-align: center;
}

.radioScale .lowString{
    text-align: right;
}

.radioScale .highString{
    text-align: left;
}

.formAgreement p, .radioOption{
    margin: 0.5em;
}

.radioOption{
    margin: 1.5em;
}

.formAgreement input[type="checkbox"], .radioOption input[type="radio"]{
    margin-right: 0.5em;
}

.searchSection h1{
    font-size: 1.2em;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding-bottom: 0.5em;
    margin: 2em 0 1em 0;
    color: inherit;
}

.formInput, fieldset{
	border: 0;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    clear: both;
}

.propertyInfoList .formInput{
    text-align: right;
    clear: both;
    padding: 0 0 0.4em 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.propertyInfoList .formInput:last-of-type{
    padding-bottom: 0;
    border-bottom: 0;
}

.labelSpan{
	font-size: 0.7em;
    font-weight: 700;
    text-align: left;
	color: inherit;
}

.formInput .labelSpan{
    float: left;
    padding: 1.5rem 1rem 0.3rem 0;
    min-width: 100px;
    width: auto;
}

.formInput.reversedInput .labelSpan{
    width: auto;
    padding: 1rem 0 0 0;
}

.additional .labelSpan{
    opacity: 0.6;
    text-align: right;
}

.additional .formInput.fullWidth .labelSpan{
    text-align: left;
}

.formInput .inputSpan{
    float: right;
    width: auto;
    max-width: 70%;
    padding: 0.6rem 0 0.2rem 0;
}

.formInput.reversedInput .inputSpan{
    float: left;
    width: auto;
    padding: 1rem 1rem 0 0;
}

.formInput .units{
    font-size: 0.7em;
}

.formInput .note{
    font-size: 0.7em;
    padding: 0.5em 0;
    clear: both;
}

.translationLabel{
    font-size: 0.8em;
    opacity: 0.6;
    float: right;
}

.formInput input.text, .formInput select, .formInput textarea{
    width: 100%;
}

.formInput.submit{
	position: relative;
}

.formError{
    color: #c42e01;
    border-bottom: 1px solid #c42e01;
    padding-top: 0.5em;
    padding-bottom: 0.3em;
    margin-bottom: 1em;
	font-size: 0.8em;
	clear: both;
}

.formError.amber{
    border-bottom: 1px solid #efb910;
}

.formError a, .formError a:hover{
    color: inherit;
}

.formError:before{
    font-family: "FontAwesome";
	font-weight: 400;
    content: "\f071";
    margin-right: 0.5em;
}

.formHelp{
	margin: 0.5em 0;
    text-align: right;
	font-size: 0.8em;
}

.formHelp .textareaCount{
	opacity: 0.5;
	display: inline-block;
}

.formInput .formHelpToggle{
    background: transparent !important;
    border-color: transparent !important;
    color: currentColor;
    opacity: 0.5;
    font-weight: inherit;
}

.formInput .formHelpToggle:hover{
    opacity: 1;
    color: inherit;
}

.error{
    color: #c42e01;
    font-size: 0.8em;
}

.currency{
    display: inline-block;
    margin-top: 0.5em;
}

.formInput.fullWidth{
    text-align: left;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

.formInput.fullWidth .labelSpan, .formInput.fullWidth .inputSpan{
    float: none;
    display: block;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0;
    padding: 0.5em 0;
}

.formInput.centeredInput input, .formInput.centeredInput textarea, .formInput.centeredInput select{
    text-align: center;
}

.formInput.largeLabel .labelSpan{
    width: 70%;
}

.formInput.largeLabel .inputSpan{
    width: 30%;
}

.formInput.smallLabel .labelSpan{
    width: 20%;
}

.formInput.smallLabel .inputSpan{
    width: 75%;
}

.formInput.centeredValue .inputSpan{
    text-align: center;
}

.propertyInfoSubList{
    width: 80%;
    margin: 2em auto 3em auto;
    min-width: 400px;
}

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

    .formInput{
        text-align: left;
        margin-bottom: 1em;
    }

    .formInput .labelSpan, .formInput.smallLabel .labelSpan, .formInput.largeLabel .labelSpan{
        width: 100%;
    }

    .formInput .labelSpan{
        float: none;
        display: block;
        margin-bottom: 0;
    	padding: 0.1em 0 0.1em 0;
    }

    .formInput .labelSpan{
    	padding-left: 0.2em;
    }

    .formInput .inputSpan, .formInput.smallLabel .inputSpan, .formInput.largeLabel .inputSpan{
    	float: none;
        width: 100%;
        max-width: 100%;
        display: block;
    }
	
    .formInput.reversedInput .labelSpan, .formInput.reversedInput .inputSpan{
        width: auto;
        display: inline-block;
        margin-bottom: 0;
    }
    
    .propertyInfoSubList{
        width: 100%;
        min-width: auto;
    }

	.propertyInfoList .formInput{
		text-align: left;
	}
	
	.formInput.submit{
        margin-top: 2em;
        margin-bottom: 2em;
    }

    .formInput input.text, .formInput select{
        width: 100%;
    }

    .formInput.submit .uiButton{
        width: 100%;
        padding-top: 1em;
        padding-bottom: 1em;
        margin-top: 0.1em;
        margin-bottom: 0.1em;
    }

	.formInput.submit .uiButton.leftButton{
		position: static;
	}

    input, select, textarea{
        font-size: 1rem !important;
    }

	.additional .labelSpan{
		text-align: left;
	}
}

/****/

.js .fileInput{
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.js .fileInput + label{
    overflow: hidden;
    max-width: 100%;
    display: inline-block;
}

.js .formInput.fullWidth .fileInput + label{
    width: 100%;
}

.js .fileInput + label:focus{
	outline: 0;
}

.js .fileInput + label:before{  
    font-family: "FontAwesome";
	font-weight: 400;
    content: "\f093";
    margin-right: 0.5em;
    color: inherit !important;
}

.no-js .fileInput + label{
    display: none;
}

.formFileDelete{
    font-size: 0.6em;
    margin-top: 0.5em;
}

.formFileDelete .uiButton.booleanToggleButton[data-value=Yes]{
    background: #c42e01;
}

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

    .js .fileInput + label{
        display: inline-block;
        width: 100%;
        text-align: center;
    	padding-top: 1em;
    	padding-bottom: 1em;
    }
	
	.formFileDelete .uiButton{
		width: 100%;
	}
}

.radioOptionButtons input{
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

/****/

.columnGroup [class*='column-']{
    float: left;
    padding-right: 20px;
}

.columnGroup [class*='column-']:last-of-type{
    padding-right: 0;
}

.columnGroup .column-75{
    width: 75%;
}

.oldie .columnGroup .column-75{
    width: 70%;
}

.columnGroup .column-60{
    width: 60%;
}

.oldie .columnGroup .column-60{
    width: 55%;
}

.columnGroup .column-50{
    width: 50%;
}

.oldie .columnGroup .column-50{
    width: 45%;
}

.columnGroup .column-40{
    width: 40%;
}

.oldie .columnGroup .column-40{
    width: 35%;
}

.columnGroup .column-25{
    width: 25%;
}

.oldie .columnGroup .column-25{
    width: 20%;
}

@media screen and (min-width: 1100px){

.wideColumnGroup .column-50{
    float: left;
    width: 50%;
}

.wideColumnGroup .column-50:first-of-type{
    padding-right: 20px;
}

.wideColumnGroup .column-50:last-of-type{
    padding-left: 20px;
    border-left: 1px solid #eee;
}

}

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

.columnGroup .column-75, .columnGroup .column-60, .columnGroup .column-40, .columnGroup .column-25{
    width: 100%;
    margin-bottom: 1em;
    padding-right: 0;
}

}

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

.columnGroup .column-50{
    width: 100%;
    margin-bottom: 1em;
    padding-right: 0;
}

}

@media screen and (min-width: 500px) and (max-width: 960px){

    .columnGroup .column-50  .formInput, .columnGroup .column-50  .propertyInfo{
        text-align: left;
        margin-bottom: 1em;
    }

    .columnGroup .column-50  .formInput .labelSpan, .columnGroup .column-50  .formInput.smallLabel .labelSpan, .columnGroup .column-50  .formInput.largeLabel .labelSpan, .columnGroup .column-50  .propertyInfo .propertyInfoLabel, .columnGroup .column-50  .propertyInfo.largeLabel .propertyInfoLabel, .columnGroup .column-50  .propertyInfo.smallLabel .propertyInfoLabel{
        float: none;
        width: 100%;
        display: block;
        margin-bottom: 0.5em;
        padding: 0;
    }

    .columnGroup .column-50  .formInput .inputSpan, .columnGroup .column-50  .formInput.smallLabel .inputSpan, .columnGroup .column-50  .formInput.largeLabel .inputSpan{
        width: 100%;
        padding-top: 0;
    }
    
    .columnGroup .column-50  .propertyInfoSubList{
        width: 100%;
        min-width: auto;
    }

    .columnGroup .column-50  .formInput.submit .uiButton, .columnGroup .column-50  .fileInput + label{
        width: 100%;
    }
}

/****/

@media only screen and (min-width: 1000px){

.flexbox .flexWrap{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: stretch;
	align-content: flex-start;
	margin: 0 auto;
}

.flexbox  .flexWrap > *{
	flex: 1 1 100%;
	margin: 0.5%;
}

.flexbox  .flexWrap > .adminModule, .flexbox  .flexWrap > .module, .flexbox  .flexWrap > .mainColumn{
	flex: 1 1 550px;
}

.flexbox  .flexWrap > .sideColumn{
	flex: 1 1 250px;
	margin: 1%;
}

.flexbox  .flexWrap > .subMenuColumn{
	flex: 1 1 18%;
}

.flexbox  .flexWrap > .subMenuContentColumn{
	flex: 1 1 80%;
}

.flexbox  .flexWrap > .module:first-of-type, .flexbox  .flexWrap > .module:last-of-type{
	margin: 0.5%;
}

}

/****/

table{
	border-collapse: collapse;
	border-spacing: 0;
}

.tableWrap{
	margin: 2em auto;
	width: 100%;
	overflow-x: auto;
}

.tableWrap .tableWrap{
	margin: 1em auto;
}

.filterTableWrap{
	min-height: 300px;
}

.subTableWrap{
	margin: 0 10px 40px 10px;
	background: #fafafa;
	font-size: 0.9em;
}

.dataTable{
	table-layout: fixed;
	margin: 0 auto;
	width: 100%;
	clear: both;
	border-top: 1px solid transparent;
	border-right: 1px solid transparent;
	font-size: 0.8em;
}

.dataTable .dataTable{
	font-size: inherit;
}

.tableWrap .dataTable{
	width: auto;
	min-width: 100%;
}

.dataTable td, .dataTable th{
	table-layout: fixed;
	overflow-wrap: break-word;
  	word-wrap: break-word;
	word-break: break-all;
	word-break: break-word;
	border-left: 1px solid transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    background: transparent;
    padding: 0.5em 0.8em;
	vertical-align: middle;
}

.dataTable tr:hover td{
	background: #fafafa;
}

.subTableWrap .dataTable tr:hover td{
	background: #fcfcfc;
}

.dataTable td.alert:not(.none){
	border-left: 1px solid #eee;
	border-right: 1px solid #eee;
}

.dataTable .greyedOut td, .dataTable .greyedOut td a:not(.uiButton){
	color: #bbb;
}

.dataTable th{
	font-size: 0.8em;
	font-weight: 700;
	color: inherit;
}

.dataTable th.total{
	font-size: 0.85em;
}

.dataTable th a, .dataTable th a:hover, .dataTable th a i, .dataTable th a:hover i, .dataTable th .fa{
	color: inherit;
}

.dataTable th a{
	font-weight: inherit;
}

.dataTable td .markdown p{
	margin: 0.5em auto;
}

.dataTable td .markdown p:first-of-type{
	margin-top: 0;
}

.dataTable td .markdown p:last-of-type{
	margin-bottom: 0;
}

.dataTable td.note{
	padding: 1em 2em 1em 2em;
	font-size: 0.9em;
}

.dataTable td div.note{
	margin: 0.5em 0 0 0;
}

.dataTable td input.text, .dataTable td textarea, .dataTable td select{
    width: 100%;
	max-width: 100%;
	padding: 0.5em;
}

.dataTable input[type="time"]{
	font-size: 0.85em;
}

.dataTable input[type="date"]{
	font-size: 0.7em;
}

.dataTable .flexColumn{
	width: auto;
	min-width: 120px;
}

.dataTable .largeColumn{
	width: 220px;
	min-width: 220px;
}

.dataTable .largeColumn .emailLink{
	display: inline-block;
	max-width: 200px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	vertical-align: top;
}

.dataTable .mediumLargeColumn{
	width: 150px;
	min-width: 150px;
}

.dataTable .mediumColumn{
	width: 120px;
	min-width: 120px;
}

.dataTable .currencyColumn{
	width: 80px;
	min-width: 80px;
}

.dataTable .smallCurrencyColumn{
	width: 65px;
	min-width: 65px;
}

.dataTable .smallColumn{
	width: 90px;
	min-width: 90px;
}

.dataTable .dateColumn{
	width: 123px;
	min-width: 123px;
}

.dataTable .largeNumericColumn{
	width: 100px;
	min-width: 100px;
}

.dataTable .numericColumn{
	width: 70px;
	min-width: 70px;
}

.dataTable .smallNumericColumn{
	width: 60px;
	min-width: 60px;
}

.dataTable .timeColumn{
	width: 60px;
	min-width: 60px;
}

.dataTable .tinyColumn{
	width: 50px;
	min-width: 50px;
}

.dataTable .checkboxColumn{
	width: 30px;
	min-width: 30px;
}

.dataTable .iconColumn{
    font-size: 0.8em;
	width: 22px;
	min-width: 22px;
	padding-left: 0;
	padding-right: 0;
	white-space: nowrap;
}

.dataTable td.numericColumn, .dataTable td.smallNumericColumn, .dataTable td.largeNumericColumn, .dataTable .numericColumn input, .dataTable .smallNumericColumn input, .dataTable .largeNumericColumn input, .dataTable .currencyColumn, .dataTable .currencyColumn input, .dataTable .smallCurrencyColumn, .dataTable .smallCurrencyColumn input{
	text-align: right;
}c

.dataTable .iconColumn, .smallColumn, .dataTable .smallColumn input, .dataTable .tinyColumn, .dataTable .checkboxColumn, .dataTable .tinyColumn input, .dataTable .dateColumn, .dataTable .dateColumn input, .dataTable .timeColumn, .dataTable .timeColumn input, .dataTable th.smallNumericColumn{
	text-align: center;
}

.smallColumn select, .dataTable .tinyColumn select, .dataTable .dateColumn select, .dataTable .timeColumn select{
	text-align: center;
	text-align-last: center;
}

.dataTable .iconColumn .uiButton{
	width: 2em;
	line-height: 2;
	vertical-align: middle;
	padding: 0;
}

/****/

.count{
	font-family: "Default", sans-serif;
    font-size: 0.9rem;
    opacity: 0.7;
}

.count:before{
    content: "[";
    font-size: 0.9em;
    padding-right: 0.1em;
}

.count:after{
    content: "]";
    font-size: 0.9em;
    padding-left: 0.1em;
}

/****/

.smallScrollbox, .largeScrollbox{
	overflow-y: scroll;
}

.smallScrollbox table, .largeScrollbox table{
	margin: 0;
}

@media screen{.smallScrollbox{
	max-height: 15em;
}}

@media screen{.fullWidth .smallScrollbox{
	max-height: 20em;
}}

@media screen{.largeScrollbox{
	max-height: 30em;
}}

/****/

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

.wideOnly{
    display: none;
}

}

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

.veryWideOnly{
    display: none;
}

}

@media screen and (min-width: 500px){

.narrowOnly{
    display: none;
}

}

/****/

.alert, .alert select, .alert a, .alert a:hover, .alert .uiButton, .alert .uiButton:hover, .alert .coachingTip, .alert .fa, .alertTag, .alertTag select, .alertTag a, .alertTag a:hover, .alertTag .uiButton, .alertTag .uiButton:hover, .alertTag .coachingTip, .alertTag .fa{
	color: #fff !important;
}

.alert.none, .alert.none select, .alert.none a, .alert.none a:hover, .alert.none .uiButton, .alert.none .uiButton:hover, .alert.none .coachingTip, .alert.none .fa, .alertTag.none, .alertTag.none select, .alertTag.none a, .alertTag.none a:hover, .alertTag.none .uiButton, .alertTag.none .uiButton:hover, .alertTag.none .coachingTip, .alertTag.none .fa{
	color: inherit !important;
}

.alert select, .alert select option, .alert .uiButton, .alertTag select, .alertTag select option, .alertTag .uiButton{
	border-color: transparent !important;
	background: inherit !important;
}

.alert, .alertTag, td.alert, .alertTag.red, .alert.red, td.red{
	background: #c42e01 !important;
}

.alertTag.amber, .alert.amber, td.amber{
	background: #efb910 !important;
}

.alertTag.green, .alert.green, td.green{
	background: #089501 !important;
}

.alertTag.blue, .alert.blue, td.blue{
	background: #00a5e1 !important;
}

.alert.none, td.alert.none, .alertTag.none{
	background: transparent !important;
}

.alertTag{
	padding: 0.3em 0.7em;
    border-radius: 3px;
    display: inline-block;
}

.alertTag.multiline{
	white-space: normal;
	word-break: break-all;
}

.alertTags .alertTag{
	display: inline-block;
	margin: 0.2em auto;
	padding: 0.5em;
}

.alertBanner .alertTag{
	margin-top: 1px;
	padding: 0.5em;
	text-align: center;
	opacity: 1;
	font-size: 0.9em;
	font-weight: 700;
	width: 100%;
}

.alertBanner form, .alertTag form{
	width: auto;
}

.alertTag .uiButton, .alert .uiButton, .alertTag.none{
	padding: 0;
}

.alertTag .uiButton{
	margin-left: 0.3em;
	margin-right: 0.3em;
}

.alert .coachingTip, .alertTag .coachingTip, .alertTag .detailTag{
    opacity: 0.8;
}

.alert .coachingTip:hover, .alertTag .coachingTip:hover{
    opacity: 1;
}

/****/

.red{
	color: #c42e01;
}

.amber{
	color: #efb910;
}

.green{
	color: #089501;
}

.blue{
	color: #00a5e1;
}

/****/

.detailTag{
	padding-left: 0.5em;
	font-size: 0.8em;
}

/****/

.backLink{
    margin-bottom: 1em;
}

.backLink a{
    font-size: 0.8em;
    opacity: 0.7;
}

/****/

button, .uiButton, .fileInput + label, .ui-button, .ui-button:hover, .ui-button:focus{
	-webkit-appearance: none;
	cursor: pointer;
	cursor: hand;
	vertical-align: top;
	white-space: nowrap;
	overflow: hidden;
    text-overflow: ellipsis;
	user-select: none;
    border: 1px solid transparent;
    border-radius: 3px;
	font-weight: 700;
    text-align: center;
	text-decoration: none;
    margin: 0;
    padding: 0.6em;
}

a.uiButton:not([href]), a.uiButton:not([href]):hover, .uiButton:disabled, .uiButton.alert:disabled, .uiButton.alert:disabled:hover{
	background: rgba(0, 0, 0, 0.2) !important;
	color: #fff !important;
	cursor: default;
}

.uiButton{
    display: inline-block;
}

.uiButton.leftButton{
	position: absolute;
	left: 0;
}

.uiButton.transparent, .uiButton.transparent:hover{
    background: transparent !important;
    border-color: transparent !important;
    color: currentColor;
}

.uiButton:hover, .uiButton:focus{
	text-decoration: none;
	outline: none;
}

.buttons.modalDisplayWrap [class*='DisplayToggle']:after{
	font-family: "FontAwesome";
    font-weight: 400;
	content: "\f054";
    padding-left: 0.5em;
    font-size: 0.8em;
}

.centeredButtons{
	text-align: center;
    margin: 2em auto 0 auto;
	max-width: 450px;
}

.centeredButtons .uiButton, .centeredButtons .fileInput + label{
	width: 100%;
	margin: 0 auto 0.5em auto;
}

.functionButtons{
	font-size: 0.65em;
	position: absolute;
	top: 1em;
	right: 1em;
}

.functionButtons .uiButton{
	text-transform: uppercase;
	padding: 0.7em 1em;
	min-width: 5em;
}

.functionButtons form{
	width: auto;
	margin: 0;
	vertical-align: middle;
}

.functionButtons input{
	display: inline-block;
	float: right;
	margin: 0 0 0 0.2em;
	padding: 0;
}

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

.functionButtons{
	position: static;
	margin-bottom: 1em;
	text-align: center;
	font-size: 0.75em;
}

.functionButtons .uiButton{
	padding: 0.7em 3em;
	min-width: 20%;
	margin-bottom: 0.3em;
}

}

.insetButtons{
	font-size: 0.65em;
	float: right;
}

.insetButtons form{
	width: auto;
}

.card .insetButtons{
	float: none;
	position: absolute;
	top: 1em;
	right: 1em;
}

.insetButtons .uiButton{
	text-transform: uppercase;
	line-height: 2.4;
	padding: 0 1em;
}

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

.insetButtons{
	position: static;
	float: none;
	margin-bottom: 0.5em;
	text-align: right;
}

.card .insetButtons{
	position: static;
}

}

.tabButtons{
	text-align: center;
	font-size: 0.8em;
}

.tabButtons .uiButton{
	margin-top: 0.1em;
	margin-bottom: 0.1em;
	padding: 0.7em 1em;
	min-width: 5em;
}

/*.fileLink .uiButton{
	font-size: 0.8em;
}

.fileLink .uiButton{
	padding: 0 0.8em;
	margin-top: -1px;
	line-height: 2.4;
}*/

.fileLink .note{
	margin: 1.5em 0 0 0;
}

/****/

.js .booleanToggle{
    display: none;
}

.uiButton.booleanToggleButton{
    margin-bottom: 0.2em;
}

.uiButton.booleanToggleButton[data-value=Yes]{
    background: #089501;
}

.uiButton.booleanToggleButton[data-value=Yes]:after{
    font-family: "FontAwesome";
	font-weight: 400;
    content: "\f00c";
    margin-left: 0.5em;
}

.uiButton.booleanToggleButton[data-value=No]{
    background: #c42e01;
}

.uiButton.booleanToggleButton[data-value=No]:after{
    font-family: "FontAwesome";
	font-weight: 400;
    content: "\f00d";
    margin-left: 0.5em;
}

/****/

.letterLinks a{
	padding: 3px;
}

.errorBox, .informationBox{
    font-family: "Header", sans-serif;
	font-size: 0.9em;
	padding: 1em;
	margin: 2em 0;
	text-align: center;
	color: #fff;
}

.errorBox{
	background: #c42e01;
}

/****/

footer .offlineModeToggle{
    display: inline-block;
    font-size: 1.2em;
    z-index: 499;
    cursor: pointer;
    cursor: hand;
	padding-left: 0.5em;
}

footer .offlineModeToggle.current{
	color: #efb910;
}

/****/

img.inset{
	float: left;
	border: 1px solid #aaa;
	padding: 5px;
	margin: 0 20px 10px 0;
	display: block;
}

a.greyscale img{
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	filter: grayscale(100%);
	transition: all 0.3s ease;
    opacity: 0.5;
}

a.greyscale:hover img, a.greyscale.current img{
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	filter: grayscale(0%);
    opacity: 1;
}

a.opacity img{
    opacity: 0.3;
	transition: all 0.3s ease;
}

a.opacity:hover img, a.opacity.current img{
    opacity: 1;
}

/****/

.commentRow{
	font-size: 0.9em;
}

.commentUser{
	font-weight: 700;
	margin-right: 0.2em;
	margin-bottom: 1em;
	display: inline-block;
}

.commentTime{
	color: #999;
	font-size: 0.8em;
	margin-bottom: 1em;
	display: inline-block;
}

/****/

.keywords, .keywordFilter{
    margin: 1em 0;
    line-height: 1.8;
}

.keywordFilter{
    text-align: center;
}

.keywords ul{
    margin: 0;
    padding: 0;
	display: inline-block;
}

.keywords li, .keywords .dataTable.sortable tr, .keywordFilter .keywordSelect, .keywordFilter .keywordSelect select, .clearFiltersButton{
	font-family: "Button", sans-serif;
}

.keywords li, .keywords .dataTable.sortable tr, .keywordFilter .keywordSelect, .clearFiltersButton{
    display: inline-block;
    margin: 0.3em 0.2em 0.3em 0;
    border-radius: 20px;
    background: #f2f2f2;
    font-size: 0.8em;
}

.keywordFilter .keywordSelect select{
    font-size: 1.1em;
    border: none;
	background: transparent;
	color: inherit;
	padding: 0;
    max-width: 150px;
}

.keywords li, .keywords .dataTable.sortable tr{
    padding: 0.2em 1em;
}

.keywords li, .keywords .dataTable.sortable tr, .clearFiltersButton{
    padding: 0.4em 1em 0.5em 1em;
}

.keywordFilter .keywordSelect{
    padding: 0.3em 1em 0.3em 1em;
}

.keywords li{
    list-style: none;
}

.keywords .dataTable.sortable{
    display: inline-block;
}

.keywords .dataTable.sortable tr:hover td{
    background: inherit;
}

.keywords .dataTable.sortable td{
    margin: 0;
    padding: 0;
    border: 0;
    width: auto;
    min-width: auto;
}

.keywords a{
    color: inherit;
    font-weight: inherit;
    border: none;
}

.keywords a:hover{
    text-decoration: none;
    color: inherit;
}

.keywords .keywords li .uiButton, .keywords .dataTable.sortable tr .uiButton{
    background: none;
    color: inherit;
    padding: 0 0 0 0.5em;
}

.keywords .uiButton:hover{
    background: inherit;
}

.keywordFilter fieldset{
    display: inline-block;
    vertical-align: bottom;
    width: auto;
}

.keywordFilter .keywordSelect:after{
    font-family: "FontAwesome";
  	font-weight: 400;
    content:"\f0d7";
    margin-top: 0.8em;
    margin-left: 0.2em;
}

.clearFiltersButton a{
    text-decoration: none;
	color: inherit;
}

.keywords li:before, .keywordFilter .keywordSelect:before, .clearFiltersButton:before{
    font-family: "FontAwesome";
  	font-weight: 400;
    margin-right: 0.5em;
}

.clearFiltersButton:before{
    content:"\f00d";
}

.keywords .order li:before, .keywordFilter .order:before{
    content:"\f0cb";
}

.keywords .audience li:before, .keywordFilter .audience:before{
    content:"\f007";
}

.keywords .category li:before, .keywordFilter .category:before{
    content:"\f0ca";
}

.keywords .country li:before, .keywordFilter .country:before{
    content:"\f024";
}

.keywords .date li:before, .keywordFilter .date:before{
    content:"\f073";
}

.keywords .event li:before, .keywordFilter .event:before{
    content:"\f073";
}

.keywords .organisation li:before, .keywordFilter .organisation:before{
    content:"\f1ad";
}

.keywords .region li:before, .keywordFilter .region:before{
    content:"\f0ac";
}

.keywords .resource li:before, .keywordFilter .resource:before{
    content:"\f15c";
}

.keywords .topic li:before, .keywordFilter .topic:before{
    content:"\f02b";
}

.keywords .topicGroup li:before, .keywordFilter .topicGroup:before{
    content:"\f02b";
}

.keywords .type li:before, .keywordFilter .type:before{
    content:"\f249";
}

.keywords .user li:before, .keywordFilter .user:before{
    content:"\f007";
}

.keywords .year li:before, .keywordFilter .year:before{
    content:"\f073";
}

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

.keywordFilter fieldset, .keywordFilter .keywordSelect{
    width: 100%;
}

.keywordFilter .keywordSelect select{
    width: 80%;
    max-width: 999px;
}

.keywordFilter .keywordSelect.order select{
    width: 70%;
    max-width: 999px;
}

.clearFiltersButton{
    margin-top: 1em;
}

}

/*.js .keywordFilter .keywords li{
    display: none;
}

.keywordFilter .keywords li.current, .keywordFilter .keywords li.clearAll{
    display: block;
}

.keywordFilter .keywords li.current{
    background: #999;
}

.keywordFilter .keywords li:hover{
    background: #777;
}

.keywordFilter .keywords li:hover, .keywordFilter .keywords li:hover:before, .keywordFilter .keywords li.current, .keywordFilter .keywords li.current:before{
    color: #fff;
}*/

.keywordsLabel{
	display: inline-block;
    padding-right: 1em;
}

/****/

.expandToggle, .displayToggle{
	cursor: pointer;
	cursor: hand;
}

h1.expandToggle, h2.expandToggle{
    position: relative;
}

h1.expandToggle:after, h2.expandToggle:after{
    font-family: "FontAwesome";
    font-weight: 400;
    content: "\f0dc";
    position: absolute;
    top: 0;
    right: 0.5em;
    opacity: 0.8;
}

.expandToggle .uiButton{
	padding: 0.3em 0.5em;
	font-size: 0.8em;
}

.pageBreak{
	display: none;
}

p.note{
	margin: 0.5em 0;
}

.uploadedItem{
	margin: 3em 0;
}

.flexibleImage{
	text-align: center;
}

.flexibleImage img, .flexibleImage svg{
    width: 100%;
    height: auto !important;
    margin: auto;
}

.forceAspect{
    width: 100%;
    position: relative;
    height: 0;
    padding: 66.67% 0 0 0;
    overflow: hidden;
    margin: auto;
    max-width: 500px;
}
 
.forceAspect img{
    position: absolute;
    display: block;
    max-width: 100%;
    max-height: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.gallery, .mainImage, .thumbnails{
	width: 100%;
	text-align: center;
	margin: 20px 0 20px 0;
}

.thumbnails img{
	margin: 3px;
}

.gallery .artist{
	margin-top: 5px;
	font-size: 0.9em;
	font-style: italic;
}

.gallery .description{
	font-size: 0.8em;
}

.centeredBlock{
	margin: 20px 0 20px 0;
	text-align: center;
}

.filter{
	text-align: center;
	font-size: 0.9em;
	width: 100%;
	margin: 5px;
}

.filter input, .filter select{
	margin: 0 5px 0 5px;
}

.center{
	text-align: center;
}

.nopadding{
	padding: 0 !important;
}

.nopadding{
	padding: 0 !important;
}

.nomargin{
	margin: 0 auto !important;
}

.languageChooser{
    width: 100%;
    margin: 0 0 10px 0;
    text-align: right;
    display: inline-block;
}

.languageChooser img{
    height: auto;
}

.pageChooser{
    margin: 1em auto;
    text-align: right;
}

.pageChooser a{
    padding: 0 0.5em;
}

.pageChooserMore{
    margin: 1em auto;
    padding: 1em 1.5em;
    text-align: center;
    font-family: "Button", sans-serif;
}

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

.pageChooser{
	text-align: center;
}

}

/****/

.tiledLinks{
    list-style: none;
    padding: 0;
    margin: 2em auto;
}

.flexbox .tiledLinks{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
}

.tiledLinks .tile{
    background: #fff;
    margin: 5px;
    position: relative;
	width: 250px;
	height: 120px;
	overflow: hidden;
	text-align: center;
}

.flexbox .tiledLinks .tile{
	display: flex;
	align-items: center;
}

.tiledLinks .tile a{
	margin: 0;
	border: 1px solid transparent;
	width: 100%;
	height: 100%;
}

.flexbox .tiledLinks .tile a{
	display: flex;
}

.tiledLinks .tile a:hover, .tiledLinks .tile a:focus{
	border: 1px solid #ccc;
	outline: none;
}

.tiledLinks .tile img, .tiledLinks .tile svg{
    width: 75%;
    height: auto;
    margin: auto;
}

.flexbox .tiledLinks .tile img, .flexbox .tiledLinks .tile svg{
	display: flex;
	padding: 10px;
}

.tiledLinks .tile img.portrait, .tiledLinks .tile svg.portrait{
    height: 90%;
    width: auto;
}

.tiledLinks .tile a:hover:after, .tiledLinks .tile a:focus:after{
    font-family: "FontAwesome";
    font-weight: 400;
    content: "\f08e";
    font-size: 1rem;
    color: #ccc;
    position: absolute;
    bottom: 0;
    right: 10px;
}

/****/

.imageDetail > .image{
	padding: 1em;
	text-align: center;
}

.imageDetail > .detail{
	padding: 1em;
}

.imageDetail a:hover img{
	outline: 0;
	opacity: 0.8;
	text-decoration: none;
}

@media only screen and (min-width: 1000px){

.flexbox .imageDetail{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-content: center;
	margin: 0.5% auto;
}

.flexbox .imageDetail > .image{
	flex: 1 1 25%;
}

.flexbox .imageDetail > .detail{
	flex: 1 1 75%;
}

}

.imageDetail .detail.noImage{
    flex: 1 1 100%;
}

/****

.imageDetail .image, .imageDetail .detail{
    float: left;
}

.imageDetail .image{
    width: 26%;
    margin: 0 4% 0 0;
}

.imageDetail .detail{
    width: 70%;
}

.imageDetail .detail.noImage{
    width: 100%;
}

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

.imageDetail .image, .imageDetail .detail{
    float: none;
    width: 100%;
}

.imageDetail .image{
    margin-bottom: 2em;
    text-align: center;
}

.imageDetail img{
    width: 100%;
}

}

/****/

.socialLinks{
	text-align: right;
	padding: 10px;
	font-size: 2.5em;
}

.socialIcon{
	width: 25px;
	height: 25px;
}

.socialLinks a:hover img{
	outline: 0;
	opacity: 0.5;
	text-decoration: none;
}

.socialLinks a:hover{
	opacity: 0.5;
	text-decoration: none;
}

.oldieBanner{
	font-size: 0.8em;
    display: none;
    margin: 0 0 10px 0;
    padding: 5px 0;
    border-bottom: solid 1px #eee;
    background: #fffcdf;
    z-index: 10;
	text-align: center;
}

.oldieBanner, .oldieBanner a{
    color: #555;
}

.ieFileInput{
    width: 68px;
    height: 20px;
}

.faq dt{
	cursor: pointer;
	cursor: hand;
}

.dialog{
    display: none;
}

.coachingTip{
    cursor: pointer;
    margin: 0.3em;
    font-size: 1.2em;
}

h1 .coachingTip{
    font-size: 0.7em;
}

.coachingTip:hover{
    opacity: 0.8;
}

.replaceOnClick:hover{
    cursor: pointer;
    cursor: hand; 
}

.videoWrap{
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    margin: 1em auto;
    background-color: #000;
}

.videoWrap iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/****/

.filterWrap{
    margin: 1em auto;
}

.filterWrap .search{
    margin: 0.8em 0;
    padding: 0.1rem 0.5rem;
    border-radius: 3px;
	width: 100%;
    background: #fff;
	position: relative;
}

.filterWrap .search input{
    border: none;
    background: transparent !important;
	width: 90% !important;
    font-size: 0.9em;
    padding: 0.5rem 0.5rem;
}

.filterWrap .search input:focus{
    border: none;
}

.filterWrap .search .uiButton, .filterWrap .search .uiButton:hover{
    border: none !important;
    background: transparent !important;
    margin: 0;
    padding: 0.3rem 0.5rem;
    border-radius: 20px;
    position: absolute;
    top: 0.3rem;
    right: 0.5rem;
    font-size: 0.9rem !important;
}

.filterWrap input.text, .filterWrap select, .filterWrap textarea{
    background: #fff;
}

.filterWrap .formInput{
    display: inline-block;
    width: 49%;
    padding: 10px;
}

.filterWrap .labelSpan{
    padding: 0.8em 0 0 0;
}

.filterWrap .inputSpan{
    padding: 0;
}

.filterWrap .expandToggle{
    text-align: center;
    margin-top: 1em;
    font-size: 0.9em;
	font-weight: 700;
}

.filterWrap .expandToggle:hover{
	text-decoration: underline;
}

/****/

.uiButton, .fileInput + label, .ui-button, .tabMenu a, .navMenu li.loginMenuItem a{
	-webkit-transition: background 0.15s ease;
	-moz-transition: background 0.15s ease;
	-o-transition: background 0.15s ease;
	transition: background 0.15s ease;
}

.navMenu li a{
	-webkit-transition: color 0.15s ease;
	-moz-transition: color 0.15s ease;
	-o-transition: color 0.15s ease;
	transition: color 0.15s ease;
}

img.inset{
	-webkit-transform: rotate(-2deg);
	-moz-transform: rotate(-2deg);
	-o-transform: rotate(-2deg);
	-ms-transform: rotate(-2deg);
	transform: rotate(-2deg);
}

img.reflect{
    -webkit-box-reflect: below 0px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, transparent), to(rgba(255,255,255,0.2)));
}

img.boxshadow{
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
	border: 0;
}

.momentumScroll{
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.grow {
	transition: all .2s ease-in-out;
}

.grow:hover{
	transform: scale(1.1);
}

.lightbox{
	display: none;
	position: fixed;
	z-index: 1000;
	width: 100%;
	height: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.8);
}

.lightbox .flexibleImage{
	width: 90%;
	height: auto;
	margin: 2% auto;
}

.lightbox:target{
	display: block;
}

/****/

.leaflet-control-attribution{
    display: none;
}

[class^="fa-"]:before, [class*=" fa-"]:before{
	text-decoration: none;
}

[data-icon]:before{
	font-family: "FontAwesome";
	font-weight: 400;
	content: attr(data-icon);
	speak: none;
}

.breadcrumbs{
	list-style: none;
	max-width: 750px;;
	margin: 1.5em auto;
}

.breadcrumbs li{
	display: inline-block;
	margin: 0;
	font-size: 0.9em;
}

.breadcrumbs li:after{
	font-family: "FontAwesome";
	font-weight: 400;
	margin-left: 0.5em;
	margin-right: 0.5em;
	content: "\f054";
}

.breadcrumbs li:last-of-type:after{
	content: "";
}

.addButton:before, .backButton:before, .printButton:before, .downloadButton:before, .calendarButton:before, .bookingButton:before, .contactButton:before, .externalLinkButton:before{
	font-family: "FontAwesome";
	font-weight: 400;
	margin-right: 0.8em;
}

.forwardButton:after{
	font-family: "FontAwesome";
	font-weight: 400;
	margin-left: 0.8em;
}

.addButton:before{
	content: "\f067";
}

.forwardButton:after{
	content: "\f061";
}

.backButton:before{
	content: "\f060";
}

.printButton:before{
	content: "\f02f";
}

.downloadButton:before{
	content: "\f019";
}

.externalLinkButton:before{
	content: "\f08e";
}

.calendarButton:before{
	content: "\f073";
}

.bookingButton:before{
	content: "\f145";
}

.contactButton:before{
	content: "\f0e0";
}

.closeButton{
	position: absolute;
	top: 1em;
	right: 1em;
    line-height: 0.9;
    vertical-align: top;
    font-size: 0.8em;
}

.closeButton.uiButton{
    padding: 1em;
}

.closeButton:before{
	font-family: "FontAwesome";
	font-weight: 400;
	content: "\f00d";
	margin-right: 0;
}

.spinner{
	text-align: center;
	margin: 1em auto;
	font-size: 3em;
	color: #ccc;
}

.fa{
	font-weight: 400;
}

.fa-warning{
	color: #efb910;
}

.fa-lock, .fa-unlock{
	width: 15px;
}

.fa-remove{
	margin-left: 0.1em;
}

.alertIcon{
	color: #efb910;
	margin-left: 0.3em;
	font-size: 0.8em;
}

.clearfix:after{
	visibility: hidden;
	display: block;
	content: "";
	clear: both;
	height: 0;
}

* html .clearfix{
    zoom: 1;
}

*:first-child+html .clearfix{
    zoom: 1;
}

/****/

.module{
    max-width: 900px;
    margin: 4em auto;
    position: relative;
}

.module:first-of-type{
    margin-top: 2em;
}

.module:last-of-type{
    margin-bottom: 2em;
}

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

.module{
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 1.5em;
    padding-right: 1.5em;
}

}

/****/

.adminModule{
    margin: 1% auto;
    padding: 1.5em;
    max-width: 750px;
    position: relative;
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.adminModule.fullWidth{
    max-width: 100vw;
    min-width: 100%;
}

.adminModule.transparent{
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

.adminModule h1{
	font-size: 1.4em;
    margin: 0.5em auto;
    color: inherit;
}

.adminModule h2{
	font-weight: 700;
	color: inherit;
}

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

.adminModule{
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

}

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

.adminModule h1{
	text-align: center;
}

}

/****/

.mapWrap{
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
}

.mapWrap iframe, .mapWrap .mapboxMap{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mapboxgl-ctrl-attrib, a.mapboxgl-ctrl-logo{
    display: none;
}

.adminModule.mapbox{
	padding: 0;
    background-color: transparent !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
}

/****/

.fixedsticky {
	position: -webkit-sticky !important;
	position: -moz-sticky !important;
	position: -ms-sticky !important;
	position: -o-sticky !important;
	position: sticky !important;
	top: 0;
}

.fixedsticky-withoutfixedfixed .fixedsticky-off, .fixed-supported .fixedsticky-off{
	position: static;
}

.fixedsticky-withoutfixedfixed .fixedsticky-on, .fixed-supported .fixedsticky-on{
	position: fixed;
}

.fixedsticky-dummy{
	display: none;
}

.fixedsticky-on + .fixedsticky-dummy{
	display: block;
}

/****/

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight, .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error, .ui-widget-header, .ui-icon, .ui-widget-content .ui-icon, .ui-widget-header .ui-icon, .ui-state-default .ui-icon, .ui-state-hover .ui-icon, .ui-state-focus .ui-icon, .ui-state-active .ui-icon, .ui-state-highlight .ui-icon, .ui-state-error .ui-icon, .ui-state-error-text .ui-icon, .ui-widget-overlay, .ui-widget-shadow, .ui-progressbar .ui-progressbar-overlay{
    background-image: none !important;
}

.ui-widget{
    font-family: inherit;
    font-size: 0.8rem;
}

.ui-widget-content, .ui-widget-content a, .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default{
    color: inherit;
}

.ui-widget-header{
    font-family: "Header", sans-serif;
    font-weight: inherit;
    border: 1px solid transparent;
    color: currentColor;
    text-decoration: none;
    background: none;
}

.ui-widget.ui-widget-content, .ui-widget-content{
    border: 1px solid #eee;
}

.ui-dialog .ui-dialog-titlebar-close{
    margin-top: -10px;
    padding: 0;
}

.ui-dialog{
    max-width: 100%;
    border: 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
}

.ui-dialog .ui-dialog-titlebar{
    padding: 0;
    text-align: center;
}

.ui-dialog .ui-dialog-title{
    font-size: 1.3em;
    margin: 1em 0 0 0;
    width: 100%;
}

.ui-dialog .ui-dialog-buttonpane{
    padding: 0;
}

.ui-dialog .ui-dialog-content{
    padding: 1em 3em;
    text-align: left;
}

.ui-autocomplete{
    text-align: left;
    max-height: 10em;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 5px 20px 5px 5px;
}

.ui-autocomplete .ui-state-focus{
    font-weight: inherit;
    background: inherit;
    color: inherit;
}

.ui-icon-closethick{
    text-indent: 0;
}

.ui-dialog-buttonpane .ui-button{
	min-width: 5em;
}

.ui-button-icon-only .ui-icon{
    font-family: "FontAwesome";
    font-weight: 400;
    margin-top: -0.65em;
    /*margin-left: -40%;*/
}

.ui-widget-header .ui-icon-closethick:after, .ui-state-focus .ui-icon-closethick:after, .ui-state-hover .ui-icon-closethick:after{
    font-family: "FontAwesome";
    font-weight: 400;
    content: "\f00d";
    font-size: 0.8em;
}

.ui-icon-circle-triangle-w,  .ui-icon-circle-triangle-e{
    display: none;
}

.ui-datepicker{
    border: 1px solid #eee;
}

#ui-datepicker-div{
    z-index: 9999 !important;
}

.ui-datepicker-prev:after, .ui-state-focus .ui-datepicker-next:after, .ui-state-hover .ui-datepicker-next:after{
    font-family: "FontAwesome";
    font-weight: 400;
    content: "\f060";
    color: inherit;
}

.ui-datepicker-next:after, .ui-state-focus .ui-datepicker-next:after, .ui-state-hover .ui-datepicker-next:after{
    font-family: "FontAwesome";
    font-weight: 400;
    content: "\f061";
    color: inherit;
}

.ui-widget input, .ui-widget select, .ui-widget textarea{
	font-family: inherit;
}

.ui-tooltip{
    border: 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}

.ui-tooltip .title{
    font-weight: 700;
    font-size: 1.1em;
}

.ui-tooltip .title{
    margin-bottom: 0.5em;
}

.ui-tooltip .description p{
    margin: 0.5em 0;
}

.ui-tooltip .description ul{
    margin: 1.5em 1em 1em 2em;
    text-align: left;
    list-style: none;
}

.title-tooltip{
    font-size: 0.85em;
    padding: 5px 10px;
}

.data-coaching-tooltip{
	font-family: "Body", sans-serif;
    line-height: 1.6;
    padding: 0.8em 1em;
}

.data-coaching-tooltip .description p:first-of-type{
    margin-top: 0;
}

.data-coaching-tooltip .description p:last-of-type{
    margin-bottom: 0;
}

/****/

table.jqplot-table-legend{
    margin-top: 12px;
    margin-bottom: 12px;
    margin-left: 12px;
    margin-right: 12px;
}

table.jqplot-table-legend, table.jqplot-cursor-legend{
    background: transparent;
    border: 0;
    position: absolute;
    font-size: 0.75em;
}

td.jqplot-table-legend {
    vertical-align:middle;
}

div.jqplot-table-legend-swatch-outline{
    border: 0;
    padding:1px;
}

div.jqplot-table-legend-swatch {
    width:0px;
    height:0px;
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-width: 6px;
    border-right-width: 6px;
    border-top-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-right-style: solid;
}

.jqplot-title {
    top: 0px;
    left: 0px;
    padding-bottom: 0.5em;
    font-size: 1.1em;
}

.jqplot-highlighter-tooltip{
    padding: 4px 7px;
    border: 0;
    border-radius: 3px;
    color: #fff;
    white-space: nowrap;
    background: rgba(0,0,0,0.3);
}

.jqplot-data-label{
    color: #fff;
    font-size: 0.8em;
}

/****/

@media screen{

.printonly{
	display: none !important;
}

}

@media print{

pre, blockquote { page-break-inside: avoid; }

thead { display: table-header-group; }

tr, img { page-break-inside: avoid; }

img { max-width: 100% !important; }

@page { margin: 0.5cm; }

p, h2, h3 { orphans: 3; widows: 3; }

h2, h3 { page-break-after: avoid; }

html{
	background: none;
}

a{
	font-size: 100% !important;
}

footer, header, #footerWrap, #headerWrap, nav, .loginText, .backLink, .buttons, .iconColumn, .insetButtons, .functionButtons, form, .noprint, .coachingTip, .printButton{
	display: none !important;
}

.printonly{
	display: block !important;
}

form.print{
    display: inline-block !important;
}

.pageBreak{
	display: block !important;
	page-break-before: always !important;
}

.adminModule{
	box-shadow: none !important;
	border: none !important;
}

}