/*-------------
  HEADER
--------------*/

header {
    position: relative;
	background-image:url(../images/chris.jpg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
}

header:before,
header:after {
    display: table;
    content: "";
    line-height: 0;
}

header:after {
    clear: both;
}

header .nav-small{
    top: 0px; 
	visibility: visible; 
	position: fixed; 
	width: 100%; 
	margin-top: 0px;
}

header #language{
	position:absolute;
	top:5px; 
	right:10px;
	display:none;
}

header #login-button{
	position:absolute;
	right:0;top:-10px;
	background-color:#c5a55e;
	color:#ffffff;
	padding:0 10px 0 20px;
	vertical-align: middle;
	line-height:32px;
	height:32px;
	display:none; /* disabilitato  */
}

header #login-button p{
	vertical-align: middle;
	line-height:32px;
	height:32px;
	background:url(/images/logo-cuore-gold.png) #c5a55e right center;
	background-size: 22px 19px;
	background-repeat: no-repeat;
	font-size: 12px;
	font-family: RalewayMedium, sans-serif;
	text-transform: uppercase;
	padding-right:35px;
}

header #language a.active{
	color:#3497DB;
}

header #language a:hover{
	color:#3497DB;
}

header p.claim{
	padding:30px 0 0 0; 
	font-family: ConmarTypeRevRegular;
	font-size:70px;
	color:#ffffff;
	font-weight: 500;
	line-height:75px;
}

header p.claim span{
	font-size:25px;
	vertical-align:baseline;
}

header #match_buttons{
	padding-top: 100px;
}

header #match_buttons .button{
	float:left;
	display:block;
}

header #match_buttons .next{
	margin-left:35px;
}

#stuck_container{
	padding-top:10px;
	background-color:#000;
}


#stuck_container .container {
    margin-right: auto;
    margin-left: auto;
	position:relative;
    /*padding-left: 15px;
    padding-right: 15px;*/
    min-width: 300px;
}

#stuck_container .container:before,
#stuck_container .container:after {
    display: table;
    content: "";
    line-height: 0;
}

#stuck_container .container:after {
    clear: both;
}

header .brand {
    /*float: left;*/
	display: inline-block;
    margin-top: 20px;
    margin-left:0px;
	position:absolute;
}

header .brand a {
    color: inherit;
}

header .brand_name{
    color: #fff;
	font-family: ConmarTypeRevRegular, "BenchNine", sans-serif;
	font-size: 30px;
	text-transform:uppercase;
}

header .nav {
    float: right;
    margin-right: 0px;
	margin-bottom:20px;
}


@media (max-width: 767px) {
	#stuck_container{
		display:none !important;
	}
	
	#stuck_container .container{
		text-align:center;
	}
	
	header {
		background-size: cover;
		background-position:bottom;
		background-color:#000;
	}
	header #language{
		display:none;
	}
	
	header .nav {
    	display:none;
	}
	
	header .brand {
        position:relative;
		display:none;
    }
	
	header p.claim{
	  padding:55px 0 135px 0; 
	  font-family: ConmarTypeRevRegular;
	  font-size:20px;
	  font-weight: 100;
	  line-height:25px;
	}
	
	header p.claim span{
	  font-size:15px;
	}
	
	header #match_buttons{
		padding-top: 20px;
	}
	
	header #match_buttons .button{
		min-width:145px;
	}
	
	.sf-menu, .isStuck {
        display: none;
    }
	
	.page .page-top{
		margin-top:0px;
	}
	
	footer .footer_figure_left,
    footer .footer_figure_right {
        width: 100%;
    }
}

@media (max-width: 767px) and (orientation: portrait) {
	header .camera_wrapper .spacer{
		display:none;
	}
	
	header #match_buttons .button{
		float:none;
		width:120px;
		padding:10px;
		min-width:135px;
	}
	
	header #match_buttons .next{
		margin-left:0;
		margin-top:25px;
	}
}

@media (max-width: 767px) and (orientation: landscape) {
	header .camera_wrapper .spacer{
		display:none;
	}
	header #match_buttons .button{
		float:none;
		width:145px;
	}
	
	header #match_buttons .next{
		margin-left:0;
		margin-top:25px;
	}
}


@media (min-width: 768px) {
    .text-sm-left {
        text-align: left;
    }
	
	
	header .nav {
        margin-top: 60px;
    }
	
	.container-top {
        width: 750px;
    }
	
	footer {
        padding: 6.8% 0 7.3%;
    }
}

@media (max-width: 900px) {
	#stuck_container .container {
    	margin-right: 0;
    	padding-right: 0;
	}
	
	header .nav {
   		margin-right: 10px;
	}
	
	.sf-menu>li>a {
        font-size: 24px;
    }
	
}

@media (max-width: 991px) {
    footer .footer_figure_right:before,
    footer .footer_figure_left:before {
        border-radius: 0;
    }
}

@media (min-width: 992px) {
    .text-md-left {
        text-align: left;
    }
	
	.container-top {
        width: 970px;
    }
}

@media (min-width: 1200px) {
    .container-top {
        width: 1200px;
    }
}

@media (min-width: 1900px) {
    .container-top {
        width: 1700px;
    }
}

@media (min-width: 2500px) {
    footer .footer_figure_right {
        width: 48%;
    }
}

@media (min-width: 769px) and (max-width: 991px){
   body{
		font-size:80%;
	}
	
	
	header .brand{
        margin-top:0px;
    }
	
	header .nav {
		margin-right:3%;
	}

    .sf-menu>li+li {
        margin-left: 18px;
    }
    .sf-menu>li>a {
        color: #777;
        font-family: "BenchNine", sans-serif;
        font-size: 22px;
        line-height: 1.2;
        text-transform: uppercase;
    }
    .sf-menu>li.sfHover>a,
    .sf-menu>li>a:hover {
        color: #ffb610;
    }
	
	 .clearleft-sm {
        clear: left;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
  body{
		font-size:80%;
	}
  
  
  .sf-menu>li>a {
	  font-size:26px;
  }
  
  header .nav{
	  margin-right:-30px;
  }
  
  header .brand{
        margin-top:0px;
    }
  
  
	
	header .nav {
		margin-right:3%;
	}

}

@media (min-width: 1200px) and (max-width: 1300px){
   header .brand {
    	margin-top: 10px;
    	margin-left:60px;
	}
	
	header .brand_slogan {
    	margin-top: -10px;
		font-size:30px;
		letter-spacing:3.2px;
	}
}


@media (min-width: 1366px) and (max-width: 1400px){
	body{
		font-size:100%;
	}
	
    header .nav {
		margin-right:0;
	}
}


@media (min-width: 1900px) {
	body{
		font-size:130%;
	}
    
	
	 header .brand_slogan{
        font-size: 2.8em;
    }
	
	.sf-menu>li>a {
		/*font-size: 1.5em;*/
	}
	
	 header .nav {
		margin-right:3%;
	}
	
	header #language {
		/*font-size: 25px;*/
	}
	
}

/* MODALE LOGIN */

.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: black;
  background-color: rgba(0, 0, 0, 0.4); 
 }
  .modal__content {
    position: relative;
    margin: 0 auto;
    margin-bottom: 32px;
    padding: 0;
    border-radius: 3px;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
    -webkit-animation-name: animatetop;
    -webkit-animation-duration: 0.4s;
    animation-name: animatetop;
    animation-duration: 0.4s; 
}
.modal__content--login {
      background-color: #FFFFFF;
      color: #5E676F;
      max-width: 300px; 
}
    
@media only screen and (max-width: 992px) {
      .modal__content {
        width: 90%; } 
}

@keyframes animatetop {
  from {
    top: -300px;
    opacity: 0; }
  to {
    top: 0;
    opacity: 1; } 
}
 
.modal__close {
    float: right;
    font-size: 32px;
    cursor: pointer;
    line-height: 0.6; 
}
  
.modal__header {
    padding: 16px;
    font-size: 18px;
    border-radius: 3px 3px 0 0; 
}
    
.modal__header i {
  position: relative;
  top: 3.2px; 
}

.modal__header--login {
    color: #5E676F;
    border-bottom: 1px solid #A1ABB5; 
}
    
.modal__body {
    padding: 16px;
    font-size: 12px; 
}
  
.modal__big-name {
    font-size: 14px;
    color: #DADADA;
    font-weight: 600;
    text-align: center;
    margin: 8px; 
}
 
.modal__small-name {
    font-size: 12px;
    color: #DADADA;
    text-align: center;
    margin: 4px; 
}

.form__input-text {
  border: 1px solid #A1ABB5 !important;
  height: 25px;
  width: 100%;
  border-radius: 2px;
  padding: 0 8px; 
 }
 .form__input-text--login {
    height: 35px;
    padding: 0 8px;
    margin: 8px 0; 
}

.form__label--block {
  display: block; 
}

.form--inline {
  display: -ms-inline-flexbox;
  display: inline-flex; 
}

.form__control--checkbox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
   align-items: center; 
}

.form__control--radio {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 16px; 
}

.form__control--inline-block {
  display: inline-block; 
 }

.form__textarea {
  width: 100%;
  min-height: 170px;
  border: 1px solid #A1ABB5;
  border-radius: 2px; 
 }
 
.form__textarea--query {
    border-radius: 2px;
    border: 1px solid #A1ABB5;
    height: 25px;
    width: 100%;
    background-color: #EFEFEF; 
}
    
@media only screen and (max-width: 767px) {
 .form__textarea--query {
        margin-left: 0; 
} 
}
	  
.form__input-text--login {
    margin: 8px 0;
    font-size: 14px; 
}

.modal__content {
    border-radius: 0px;
}

.modal__content--login {
    background-color: #EFEFEF;
    color: #5E676F;
    max-width: 400px;
    border: 10px solid #FFFFFF;
    animation-name: animatetopLogin;
    top: 60px; }

@keyframes animatetopLogin {
    from {
        top: -300px;
        opacity: 0; }
    to {
        top: 60px;
        opacity: 1; } 
}


.modal__close--login {
    margin-top: -2px;
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2; }

.modal__header--login {
    color: #5E676F;
    border-bottom: 1px solid #A1ABB5;
    min-height: 16.43px;
    padding: 15px 15px 15px 15px;
    border-bottom: 0px; }
.modal__header--img-circle {
    max-height: 100px;
    max-width: 100px;
    border-radius: 50%;
    margin-top: 20px; }

.modal__body--login-msg {
    border: 1px solid #dadfe1;
    height: 30px;
    line-height: 28px;
    transition: all ease-in-out 500ms;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    text-align: left;
    padding: 0px;
    margin: 0px 15px;
    color: #000000;
    font-weight: normal; }
.modal__body--login-marker {
    width: 30px;
    float: left;
    line-height: 28px;
    text-align: center;
    background-color: #DADADA;
    margin-right: 5px;
    transition: all ease-in-out 500ms; }



.dialog {
  width: auto;
  height: auto;
  border-radius: 3px;
  padding: 16px;
  margin: 16px 8px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .dialog__heading {
    font-size: 20px; }
  .dialog__text {
    font-size: 14px; }
  .dialog__button {
    margin-left: auto; }
  .dialog__close {
    float: right;
    font-size: 32px;
    cursor: pointer;
    line-height: 0.6;
    margin-left: auto; }
  .dialog--success {
    border: 3px solid #45D080;
    background-color: rgba(69, 208, 128, 0.7);
    color: #FFFFFF; }
  .dialog--warning {
    border: 3px solid #ff8935;
    background-color: rgba(255, 137, 53, 0.7);
    color: #FFFFFF; }
  .dialog--failure {
    border: 3px solid #fd5050;
    background-color: rgba(236, 51, 77, 0.7);
    color: #FFFFFF; }	  
	  
span.authError{
    color: red;
    font-weight: bold;
}

input.authError{
    outline-color: red;
}

#errorLogin{
    font-size: 12px;
}

.modal__body--login-error{
    margin: 0px !important;
    padding-bottom: 0px;
}

.modal__body--login-error > .dialog, .modal__body--login-error ul{
    margin: 0px !important;
    -webkit-padding-start: 20px;
}  
	  
	  
	  
	  
.modal__header--login img {
    margin-top: 20px;
}

.modal__header--logo {
    background-image: url("../img/solo_logo_alternativo_light.png");
    background-repeat: no-repeat;
    background-position: center;
/*    height: 78px;
    width: 176px;*/
}

.modal__header--login--nomeSq{
    padding-top: 55px;
    font-size: 30px;
    color: black;
    font-weight: 900;
    margin-bottom: 10px;
    margin-top: 10px;
}