/*
See: http://zotonic.com/docs/latest/manuals/templates/icons.html
*/
@font-face {
  font-family: 'Zotonic';
  src: url('/lib/css/z.icons/fonts/icomoon.eot?v=3');
  src: url('/lib/css/z.icons/fonts/icomoon.eot?#iefix&v=3') format('embedded-opentype'), url('/lib/css/z.icons/fonts/icomoon.woff?v=3') format('woff'), url('/lib/css/z.icons/fonts/icomoon.ttf?v=3') format('truetype'), url('/lib/css/z.icons/fonts/icomoon.svg?v=3#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
.z-icon,
.fa-icon,
.md-icon,
.z-btn-remove:before,
.z-btn-remove:hover:before,
.z-btn-help:before,
a.close:before,
button.close:before,
a.close:hover:before,
button.close:hover:before,
.zotonic-logo {
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a.z-icon:hover,
a.fa-icon:hover,
a.md-icon:hover,
a.zotonic-logo:hover {
  text-decoration: none;
}
.z-icon em,
.fa-icon em,
.md-icon em,
.zotonic-logo em {
  display: none;
}
.z-icon,
.z-btn-remove:before,
.z-btn-remove:hover:before,
.z-btn-help:before,
a.close:before,
button.close:before,
a.close:hover:before,
button.close:hover:before,
.zotonic-logo {
  font-family: "Zotonic";
}
.fa-icon {
  font-family: 'FontAwesome';
}
.md-icon {
  font-family: 'Material Design Iconic Font';
}
.z-btn-remove,
.z-btn-help {
  display: block;
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 16px;
  border: none;
  padding: 0;
  cursor: pointer;
  text-shadow: none;
}
.z-btn-remove > span,
.z-btn-help > span,
.z-btn-remove > em,
.z-btn-help > em {
  display: none;
}
.z-btn-remove {
  background-color: transparent;
}
.z-btn-remove:before {
  content: "\e60c";
}
.z-btn-remove:hover {
  text-decoration: none;
}
.z-btn-remove:hover:before {
  content: "\e609";
}
.z-btn-help:before {
  content: "\e600";
}
a.close,
button.close {
  padding: 0;
  font-size: 16px;
}
a.close:before,
button.close:before {
  content: "\e60c";
}
a.close:hover:before,
button.close:hover:before {
  content: "\e609";
}
a.close > span,
button.close > span,
a.close > em,
button.close > em {
  display: none;
}
.z-btn-social {
  position: relative;
}
.z-btn-social,
.z-btn-sociala,
.z-btn-social:hover {
  color: #fff;
}
.z-btn-social .z-icon,
.z-btn-social .fa-icon,
.z-btn-social .md-icon,
.z-btn-social .zotonic-logo {
  font-size: 16px;
  line-height: 16px;
  height: 16px;
  width: 16px;
}
@font-face {
  font-family: 'FontAwesome';
  src: url('/lib/font-awesome-4/fonts/fontawesome-webfont.eot?v=4.2.0');
  src: url('/lib/font-awesome-4/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('/lib/font-awesome-4/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('/lib/font-awesome-4/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('/lib/font-awesome-4/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa-icon {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@font-face {
  font-family: 'Material Design Iconic Font';
  src: url('/lib/material-design/fonts/Material-Design-Iconic-Font.eot?v=1.0.1');
  src: url('/lib/material-design/fonts/Material-Design-Iconic-Font.eot?#iefix&v=1.0.1') format('embedded-opentype'), url('/lib/material-design/fonts/Material-Design-Iconic-Font.woff?v=1.0.1') format('woff'), url('/lib/material-design/fonts/Material-Design-Iconic-Font.ttf?v=1.0.1') format('truetype'), url('/lib/material-design/fonts/Material-Design-Iconic-Font.svg?v=1.0.1#Material-Design-Iconic-Font') format('svg');
  font-weight: normal;
  font-style: normal;
}
.md-icon,
[class^="md-icon-"],
[class*=" md-icon-"] {
  display: inline-block;
  font: normal normal normal 14px/1 'Material Design Iconic Font';
  font-size: inherit;
  speak: none;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.md-icon {
  line-height: inherit;
  vertical-align: bottom;
}
.z-icon-cross:before {
  content: "\e60c";
}
.z-icon-cross-circle:before {
  content: "\e609";
}
.z-icon-drag:before {
  content: "\e60b";
}
.z-icon-edit:before {
  content: "\e606";
}
.z-icon-facebook:before {
  content: "\e614";
}
.z-icon-github:before {
  content: "\eab0";
}
.z-icon-google-plus:before {
  content: "\e610";
}
.z-icon-help:before {
  content: "\e60e";
}
.z-icon-help-circle:before {
  content: "\e600";
}
.z-icon-info-circle:before {
  content: "\e601";
}
.z-icon-instagram:before {
  content: "\e612";
}
.z-icon-linkedin:before {
  content: "\e611";
}
.z-icon-logo-z:before {
  content: "\e607";
}
.z-icon-logo:before {
  content: "\5a";
}
.z-icon-minus:before {
  content: "\e60a";
}
.z-icon-minus-circle:before {
  content: "\e603";
}
.z-icon-off:before {
  content: "\e60f";
}
.z-icon-ok:before {
  content: "\e608";
}
.z-icon-ok-circle:before {
  content: "\e602";
}
.z-icon-plus:before {
  content: "\e60d";
}
.z-icon-plus-circle:before {
  content: "\e604";
}
.z-icon-share:before {
  content: "\e615";
}
.z-icon-twitter:before {
  content: "\e613";
}
.z-icon-user:before {
  content: "\e605";
}
.zotonic-logo:before {
  content: "\5a";
}
body.err403 {
  background-color: #e8e8e8;
}
body.err403 .z-logon-box {
  background-color: white;
  padding: 20px 10px;
}

.z-logon-prompt {
  text-align: center;
  max-width: 400px;
  margin: 40px auto;
}

.z-logon-back {
  float: left;
  margin: 40px 20px;
}

.z-logon-box {
  float: none;
  margin: 15px auto;
  width: 400px;
  max-width: 100%;
  /* Extra login options */
  /* Supporting options */
  /* Sign up specific*/
}
.z-logon-box img.loading {
  display: block;
  margin: 0 auto;
  opacity: 0.5;
  height: 16px;
}
.z-logon-box ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.z-logon-box p {
  margin-bottom: 10px;
  width: 100%;
}
.z-logon-box button[type=submit],
.z-logon-box input[type=submit],
.z-logon-box .btn-submit {
  width: 100%;
}
.z-logon-box .z-logon-title:first-of-type,
.z-logon-box h2:first-of-type, .z-logon-box h3:first-of-type, .z-logon-box h4:first-of-type {
  margin-top: 0;
}
.z-logon-box .z-logon-form {
  margin: 15px auto 0 auto;
}
.z-logon-box .z-logon-extra,
.z-logon-box .z-logon-external {
  width: 100%;
}
.z-logon-box .z-logon-extra .z-btn-social,
.z-logon-box .z-logon-external .z-btn-social {
  display: block;
  text-align: center;
  text-decoration: none;
}
.z-logon-box .z-logon-extra > .z-logon-extra-separator:first-child,
.z-logon-box .z-logon-external > .z-logon-extra-separator:first-child {
  display: none;
}
.z-logon-box .z-logon-extra > .z-logon-extra-separator:first-child.-first,
.z-logon-box .z-logon-external > .z-logon-extra-separator:first-child.-first {
  margin-top: 15px;
  display: block;
}
.z-logon-box .z-logon-extra > .z-logon-extra-separator.-first:last-child,
.z-logon-box .z-logon-external > .z-logon-extra-separator.-first:last-child {
  display: none;
}
.z-logon-box .z-logon-extra-separator {
  position: relative;
  z-index: 1;
  text-align: center;
  line-height: 16px;
  margin: 15px 0;
}
.z-logon-box .z-logon-extra-separator > span {
  display: inline-block;
  text-align: center;
  width: fit-content;
  padding-left: 2ch;
  padding-right: 2ch;
  background-color: #fff;
}
.z-logon-box .z-logon-extra-separator:after {
  position: absolute;
  left: 0;
  top: 8px;
  content: " ";
  width: 100%;
  border-bottom: 1px solid #ddd;
  z-index: -2;
}
.z-logon-box .z-logon-support {
  margin: 15px 0 0 0;
  padding: 15px 0 0 0;
}
.z-logon-box .z-logon-support:empty {
  display: none;
}
.z-logon-box .alert :first-child {
  margin-top: 0;
}
.z-logon-box .alert :last-child {
  margin-bottom: 0;
}
.z-logon-box.z-logon-box-boxed .z-logon-form {
  margin: 15px 0;
  padding: 15px 20px;
  background-color: #f2f2f2;
}
.z-logon-box.z-logon-box-boxed .z-logon-extra .z-logon-extra-separator,
.z-logon-box.z-logon-box-boxed .z-logon-external .z-logon-extra-separator {
  margin-left: -20px;
  margin-right: -20px;
}
.z-logon-box.z-logon-box-boxed .z-logon-extra .z-logon-extra-separator:before,
.z-logon-box.z-logon-box-boxed .z-logon-external .z-logon-extra-separator:before {
  background-color: #f2f2f2;
}
.z-logon-box.z-logon-box-boxed .z-logon-support {
  margin-left: -20px;
  margin-right: -20px;
  padding-left: 20px;
  padding-right: 20px;
  border-top: 1px solid #ddd;
}
.z-logon-box.z-logon-box-boxed .z-logon-support p:last-child {
  margin-bottom: 0;
}
.z-logon-box .signup-external,
.z-logon-box .z-logon-external,
.z-logon-box .z-logon-extra {
  display: flex;
  flex-flow: column nowrap;
  gap: 1em;
}
.z-logon-box .signup-external .btn,
.z-logon-box .z-logon-external .btn,
.z-logon-box .z-logon-extra .btn {
  width: 100%;
}
.z-logon-box .signup-name {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.z-logon-box .signup-name #signup_name_first {
  flex-grow: 1;
  min-width: 60%;
}
.z-logon-box .signup-name #signup_surname_prefix {
  flex-shrink: 0;
}
.z-logon-box .signup-name #signup_surname_prefix input[name=surprefix] {
  width: 8ch;
}
.z-logon-box .signup-name #signup_name_surname {
  flex-grow: 2;
  min-width: 60%;
}
.z-logon-box.error_custom_1 #signup_error_custom_1, .z-logon-box.error_custom_2 #signup_error_custom_2 {
  display: block;
}
.z-logon-box .z_validation_message {
  display: block;
  margin: 5px 0 0 0;
}
.z-logon-box .z_validation.z_invalid {
  color: #C21C3D;
}
.z-logon-box .form-control-prefilled {
  font-weight: bold;
}
.z-logon-box .form-control-prefilled span {
  font-weight: normal;
}
/*
 * Overrides for logon and error pages
 */

.z-logon-extra-separator {
    display: none;
}
#logon-form-details {
    
}

#logon-form-details summary {
    cursor: pointer;
}

#logon-form-details > summary {
  list-style: none;
}

#logon-form-details > summary::marker, /* Latest Chrome, Edge, Firefox */ 
#logon-form-details > summary::-webkit-details-marker /* Safari */ {
  display: none;
}

/* Added style (from bootstrap 5)
 */

@font-face {
     font-family: myriadpro-regular;
     src: url('/lib/fonts/myriadpro-regular.woff2') format('truetype');
     font-display: swap;
 }
 @font-face {
     font-family: myriadpro-bold;
     src: url('/lib/fonts/myriadpro-bold.woff2') format('woff2');
     font-display: swap;
 }
 p, a, small, .myriadpro-regular {
     font-family: myriadpro-regular;
 }
 :root {
     --cafe-custom-font: 'myriadpro-bold', arial, helvetica, sans-serif;
     --bs-blue: #0d6efd;
     --bs-indigo: #6610f2;
     --bs-purple: #6f42c1;
     --bs-pink: #d63384;
     --bs-red: #dc3545;
     --bs-orange: #fd7e14;
     --bs-yellow: #ffc107;
     --bs-green: #198754;
     --bs-teal: #20c997;
     --bs-cyan: #0dcaf0;
     --bs-white: #fff;
     --bs-gray: #6c757d;
     --bs-gray-dark: #343a40;
     --bs-primary: #0d6efd;
     --bs-secondary: #6c757d;
     --bs-success: #198754;
     --bs-info: #0dcaf0;
     --bs-warning: #ffc107;
     --bs-danger: #dc3545;
     --bs-light: #f8f9fa;
     --bs-dark: #212529;
     --bs-font-sans-serif: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";    
 }
 
 html, body {
     font-family: var(--bs-font-sans-serif);
     font-size: 1rem;
     font-weight: 400;
     line-height: 1.5;
     /* background: linear-gradient(#95ABFF, #788DEF) !important; */
     background: #f0f3f5;
	 background: #EEF7FF;
	 
     
 }
 h2, .myriadpro-bold {
     font-family: var(--cafe-custom-font);
 }
 h2 {
    font-size: calc(1.325rem + .9vw) !important;
    font-size: 1.5rem !important;
    

}
 body {
    padding-top: env(safe-area-inset-top);
/*
    position: fixed;
    right:0px;
    left:0px;
    top:0px;
    bottom:0px;
    z-index: 1031;
*/
}

 .z-logon-box .btn {
     box-shadow: 0 5px 10px rgb(0 0 0 / 15%), inset 0 -3px 0 0 rgb(0 0 0 / 25%);
     font-family: var(--cafe-custom-font);
     letter-spacing: -.03em;
     color:white;
     font-size: 1.25rem;
     padding: .5rem 1rem;
 }
 .z-logon-box .btn-primary {
     background-color: #ff006e !important;
     border-color: #ff006e !important;
     border-radius: 50rem !important;
 }
 
 .z-logon-box .form-control{
     display: block;
     width: 100%;
     padding: .375rem .75rem;
     font-size: 1rem;
     font-weight: 400;
     line-height: 1.5;
     color: #212529;
     background-color: #fff;
     background-clip: padding-box;
     border: 1px solid #ced4da;
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     border-radius: .25rem;
     height:auto;
 }
 .z-logon-box label {
     display: inline-block;
     max-width: 100%;
     margin-bottom: 5px;
     font-weight: 400;
 }
 
 .z-logon-box .form-group{
     position: relative;
 }
 
 .z-logon-box .z_validation{
     position: absolute;
     right:0px;
     margin-top:0px;
     margin-bottom:0px;
     font-size:10px;
 }
 .z-logon-box input:focus {
   border: solid 1px var(--bs-blue);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) !important;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) !important;
   -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) !important;
 }
 
 .z-logon-box {
     position: relative;
     display: flex;
     flex-direction: column;
     min-width: 0;
     word-wrap: break-word;

}
 .z-logon-box .z-logon-form {
     margin: 0;
 }
 
 .z-logon-title{
     font-size: 20px;
     text-align: center;
   padding-bottom: 6px !important;
}

.btn-outline-dark {
    color: #212529 !important;
    border-color: #212529;
    background-color: transparent;
    font-size: 17px !important;
    border-radius: 0.5rem!important;
    font-weight:normal;
}

/*
.z-logon-box a {
    color:white;
    opacity:0.7;
}
*/

/* bootstrap 5 classes */
.d-flex {
    display: flex!important;
}
.justify-content-center {
    justify-content: center!important;
}
.align-items-center {
   align-items: center!important;
}
.min-vh-100 {
   min-height: 100vh!important;
}
.h-100{
    height:100%;
}
.w-100{
    width:100%;
}

.opacity-2 {
    opacity: 0.7;
}

.text-white {
    /* color: white; */
}

.navbar.fixed-top {
   padding-top: env(safe-area-inset-top) !important;
}
.bg-blur-3 {
   backdrop-filter: blur(75px) !important;
   -webkit-backdrop-filter: blur(75px) !important;
}

.justify-content-between {
justify-content: space-between!important;
}
.fixed-top {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030;
}
.p-3 {
    padding: 1rem!important;
}
.bg-glass-white-2 {
    background: rgba(255, 255, 255, 0.4) !important;
}
.rounded-4 {
    border-radius: 3rem !important;
}
.shadow-sm {
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
}
/*
#signup_logon_box{
    
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
    border-radius: 1rem !important;
    padding: 1rem!important;
    background: rgba(255, 255, 255, 0.6) !important;
    
}
*/
.z_validation{
    color: red !important;
    font-size:14px !important;
    
}
.z-logon-extra {
    display: flex!important;
    justify-content: space-evenly!important;
    
    /* FIX needed for google sign-in button, prevent displaying 2 buttons
    height: 41px;
    min-height: 41px;
    max-height: 41px;
    overflow:hidden;
    */
}