@font-face {
    font-family: 'GE Inspira Sans';
    font-display: swap;
    font-weight: normal;
    font-style: normal;
    src: url('inspira/GEInspiraSans-Regular-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Sans';
    font-display: swap;
    font-weight: normal;
    font-style: italic;
    src: url('inspira/GEInspiraSans-Italic-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Sans';
    font-display: swap;
    font-weight: bold;
    font-style: normal;
    src: url('inspira/GEInspiraSans-Bold-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Sans';
    font-display: swap;
    font-weight: bold;
    font-style: italic;
    src: url('inspira/GEInspiraSans-BoldItalic-v01.woff') format('woff')
}

@font-face {
    font-family: 'GE Inspira Serif';
    font-display: swap;
    font-weight: normal;
    font-style: normal;
    src: url('inspira/GEInspiraSerif-Regular-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Serif';
    font-display: swap;
    font-weight: normal;
    font-style: italic;
    src: url('inspira/GEInspiraSerif-Italic-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Serif';
    font-display: swap;
    font-weight: bold;
    font-style: normal;
    src: url('inspira/GEInspiraSerif-Bold-v01.woff') format('woff');
}

@font-face {
    font-family: 'GE Inspira Serif';
    font-display: swap;
    font-weight: bold;
    font-style: italic;
    src: url('inspira/GEInspiraSerif-BoldItalic-v01.woff') format('woff');
}



html {
    box-sizing: border-box;
    height: 100%;
}
*, *:before, *:after {
    box-sizing: inherit;
}
body {
    margin: 0;
    padding: 0;
    font-family: "GE Inspira Sans",sans-serif;
    line-height: 1;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    color: rgba(0, 0, 0, 0.8);
    position: relative;
    height: 100%;
}
h1, h2, h3, h4,  h5, h6, dl, dd, ol, ul, menu, figure, blockquote, p, pre, form {
    margin: 0
}
h1{
    font-weight: bold;
}
menu, ol, ul {
    padding: 0;
    list-style: none;
    list-style-image: none
}
main {
    display: block
}
a {
    color: inherit;
    text-decoration: none
}
a, button, input {
    -webkit-tap-highlight-color: transparent
}

img, svg {
    vertical-align: middle
}
button {
    background: transparent;
    overflow: visible
}
button, input, optgroup, select, textarea {
    margin: 0
}

/*EZScreens*/
.ezScreensHolder{
    position: absolute;
    width:100%;
    height:100%;
    color:white;
    background: #dbb5c1; 
    background: -moz-linear-gradient(top,  #dbb5c1 0%, #c17c91 100%);
    background: -webkit-linear-gradient(top,  #dbb5c1 0%,#c17c91 100%);
    background: linear-gradient(to bottom,  #dbb5c1 0%,#c17c91 100%);
    z-index: 999;
}
section.ezScreen{
    /* display:none;*/
}

.signature{
    position: absolute;
    bottom:12px;
    left:12px;
    font-size:16px;
    font-weight: light;
}

.signature .bigger{
    font-size:24px;
}

.centered{
    width: 100%;
    height: 100%;
    position: absolute;
}


.welcome{
    display:block;
    text-align: center;
    width: 750px;
    min-width: 480px;
    max-width:100%;
    font-size: 36px;
    font-weight: bold;
    line-height: 60px;
    position: absolute;
    top:50%;
    left:50%;
    opacity:0;
    transition: transform 1s, opacity 1s;
    transform:translate(-50%, -50%) ;
}

.welcome.visible{
    opacity:1;
}

.welcome.visible.switchUp{
    transform:translate(-50%, calc(-50% - 150px)) ;
}

.welcome .large{

    font-size: 64px;
}
.welcome .light{

    font-weight:lighter;
}

.languageSelection, .inputName, .loader{
    display:block;
    text-align: center;
    min-width: 540px;
    max-width:100%;
    min-height:50px;
    font-size: 28px;
    font-weight: bold;
    line-height: 40px;
    position: absolute;
    top:50%;
    left:50%;
    opacity:0;
    transform:translate(-50%, -50%) ;
    transition: opacity .6s;
    pointer-events: none;
}

.languageSelection.visible, .inputName.visible, .loader.visible{
    opacity: 1;
    pointer-events: initial;
}

img.languageItem{
    width:54px;
    height: 54px;
    margin-right:32px;
    display:inline-block;
    cursor:pointer;
    /*border: solid 1px;*/
    border-radius: 50%;
    opacity: 0;
}
img.languageItem:focus{
    outline: none;
    outline: 0;
    border:solid white 2px;
}
.languageSelection p, .inputName p, .loader p{
    font-size: 16px;
    font-style: italic;
    font-weight: lighter;
    margin-bottom: 8px;
}

img.languageItem:last-child{

    margin-right:0;
}

.inputName{
    background:transparent;
}

input.userName{
    background-color: white;
    color: #93415b;
    border: solid 2px #a74f6b;
    height: 44px;
    box-sizing: border-box;
    text-align: center;
    width: 338px;
    border-radius: 22px;
    font-size: 22px;
    margin-left: 54px;
}

input.userName:focus{
    outline: none;
    border: solid 2px #752941;
}

.nextArrow{
    width: 44px;
    height: 44px;
    vertical-align: middle;
    margin-left: 18px;
    cursor:pointer;
}

.reset{
    position: absolute;
    top:12px;
    left:12px;
    height:28px;
    width:28px;
    cursor:pointer;
}

.reset svg{
    height:28px;
    width:28px;
}

@-moz-keyframes spin {
    from { -moz-transform: rotate(360deg); }
    to { -moz-transform: rotate(0deg); }
}
@-webkit-keyframes spin {
    from { -webkit-transform: rotate(360deg); }
    to { -webkit-transform: rotate(0deg); }
}
@keyframes spin {
    from {transform:rotate(360deg);}
    to {transform:rotate(0deg);}
}

img.spinner {
    height:64px;
    width:64px;
    animation-name: spin;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
