/* _____________________________________________________________________________________

    RESET
_____________________________________________________________________________________ */
:root{
    --font-system-sans: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Ubuntu, roboto, noto, arial, sans-serif;
    --font-system-serif: Iowan Old Style, Apple Garamond, Baskerville, Times New Roman, Droid Serif, Times, Source Serif Pro, serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    --font-system-mono: Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;
}


html,body,div,span,applet,object,iframe,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,label,legend,p,blockquote,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}body{line-height:1;color:black;background:white;}:focus{outline:0;}table{border-collapse:collapse;border-spacing:0;}caption,th,td{text-align:left;font-weight:normal;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}ol,ul{list-style:none;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}blockquote:before,blockquote:after,q:before,q:after{content:"";}blockquote,q{quotes:"" "";}abbr,acronym{border:0;}

html {
  box-sizing: border-box;
  font-family: var(--font-system-serif);
}
*, *:before, *:after {
  box-sizing: inherit;
}



/* _____________________________________________________________________________________

    Font Awesome Pseudo class
_____________________________________________________________________________________ */
.fai-b::before{
    display: inline-block;
   text-rendering: auto;
   -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
}
.fai-a::after{
    display: inline-block;
   text-rendering: auto;
   -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
}

.fai-a.fw::after,
.fai-b.fw::before{
    width: 1em;
    text-align: center;
}

/* _____________________________________________________________________________________

    placeholder for missing bg images
_____________________________________________________________________________________ */
.bgimg img{
    display: none;
}

/* _____________________________________________________________________________________

    Utils
_____________________________________________________________________________________ */

.hard{ border-radius: 0 !important; }
.round{ border-radius: 1em !important; overflow: hidden;}
.soft{ border-radius: .25em !important; overflow: hidden;}
.verysoft{ border-radius: .5em !important; overflow: hidden; }

.expand{ width:100%; }
.fullheight{ height:100%; }

.uppercase { text-transform: uppercase; }
.italic { font-style: italic; }
.underline { text-decoration: underline; }
.strike { text-decoration: line-through; }

button.plain, input[type="submit"].plain, input[type="reset"].plain, input[type="button"].plain  {
	background: none;
	color: inherit;
	border: none;
	padding: 0;
    margin:0;
	font: inherit;
	cursor: pointer;
	outline: inherit;
    line-height: 1;
}


.inline-block{ display: inline-block;}
.p-rel{ position: relative; }

.talign-left{ text-align: left; }
.talign-center{ text-align: center; }
.talign-right{ text-align: right; }

.valign-top > *{ vertical-align: top; }
.valign-middle > *{ vertical-align:  middle; }
.valign-bottom > *{ vertical-align:  bottom; }

.center-elem-content{
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}


.nowrap:not(.flex-row){ white-space: nowrap; }
.breakword{ word-break: break-word; }
.read-width{ max-width: 50ch; }

a.plain{ text-decoration: none; }

hr.plain{
border: 0;
height: 1px;
background: #333;
margin:0; padding:0;
}

ul.disc{
	list-style: disc outside;
	margin-left:1em;
}

ol.decimal{
	list-style: decimal outside;
	margin-left:1em;
}
ol.inside,
ul.inside{ list-style-position: inside; }



input[type="text"].ae,
input[type="password"].ae,
select.ae,
textarea.ae,
.ae-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-block;
    padding: .5em .75em;
    font-size:1em;
	line-height:1.125;
    font-weight: inherit;
    border: 1px solid transparent;
}


input[type="text"].ae.no-border,
input[type="password"].ae.no-border,
textarea.ae.no-border,
.ae-btn.no-border{
	border:none;
}


select.ae{
	padding-right:2em;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
}


input[type="text"].ae::-webkit-input-placeholder,
input[type="password"].ae::-webkit-input-placeholder,
textarea.ae::-webkit-input-placeholder,
select::-webkit-input-placeholder {
    color: #b9b9b9;
}

input[type="text"].ae:-ms-input-placeholder,
input[type="password"].ae:-ms-input-placeholder,
textarea.ae:-ms-input-placeholder,
select:-ms-input-placeholder {
    color: #b9b9b9;
}

input[type="text"].ae::-ms-input-placeholder,
input[type="password"].ae::-ms-input-placeholder,
textarea.ae::-ms-input-placeholder,
select::-ms-input-placeholder {
    color: #b9b9b9;
}

input[type="text"].ae::placeholder,
input[type="password"].ae::placeholder,
textarea.ae::placeholder,
select::placeholder {
    color: #b9b9b9;
}


input[type="text"].ae:disabled,
input[type="password"].ae:disabled,
textarea.ae:disabled,
textarea.ae:read-only,
input[type="text"].ae:read-only,
input[type="password"].ae:read-only {
    color: #cfcfcf;
	background: rgba(0, 0, 0, 0.1)
}
select.ae:disabled{
	background-image:url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23cccccc%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(#fff 0%,#e5e5e5 100%);
}



/* _____________________________________________________________________________________

    OverLayer
_____________________________________________________________________________________ */


#overlayer{
position: fixed;
top:0;right:0;bottom:0;left:0;
z-index:500;
overscroll-behavior: none;
display: none;
}
#overlayer .ovlr-bg{
    background-color: rgba(0, 0, 0, 0.8);
    position: absolute;
    width:100vw;
    height:100vh;
    background-image:url('../img/loader.svg');
    background-repeat:no-repeat;
    background-position: center center;
    background-size:8em;
}

#overlayer .ovlr-content{
    position: fixed;
    top:2em;right:2em;bottom:2em;left:2em;
    background:#fff;
    border-radius:1em;
    box-shadow: 0 0 32px -.5em rgba(0,0,0,0.5);
    display: none;
    overflow-y:auto;
}

#overlayer .ovlr-content .close-btn{
    position: fixed;
    top:2.5rem;
    right:2.5rem;
    font-size:2em;
    z-index:5;
    background-color:rgba(255,255,255, .9);
    color:rgba(0,0,0,0.8);
    padding:1px;
    border-radius: 50%;
    line-height: .5;
}

body.ovlr-shown{
    overflow: hidden;
}
.ovlr-shown #overlayer{
    display: block;
}
.ovlr-shown #overlayer .ovlr-bg{
    display: block;
}
.ovlr-shown #overlayer.loaded .ovlr-content{
    display: block;
}


#overlayer.size-iz .ovlr-content{
    width:auto;
    top:auto;right:auto;bottom:auto;left:auto;
    top: 50%;
    left:50%;
    background-color: #000;
    transform: translateY(-50%) translateX(-50%);
}

#overlayer.size-iz .ovlr-content img.modal-zoom-img{
    max-height:90vh;
    max-width:90vw;
    display: block;
}
#overlayer.size-iz .ovlr-content .close-btn{
display: none;
}
#overlayer.size-iz .ovlr-bg::before{
    content:"\f057";
    display: inline-block;
   text-rendering: auto;
   -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    color:rgba(0,0,0,.8);
    position: fixed;
    top:2.5rem;
    right:2.5rem;
    font-size:2em;
    z-index:5;
    background-color:rgba(255,255,255, .9);
    padding:1px;
    border-radius: 50%;
}
