@font-face {
  font-family: 'Roboto';
  src: url('/sys/fonts/Roboto-VariableFont.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
}

@font-face {
  font-family: 'Poppins';
  src: url('/sys/fonts/Poppins-ExtraBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}

html,body{
    font-family: "Roboto",sans-serif; 
    color: #101010;
    font-size: 15px;
    background-color:#FFF; 
    font-weight: 500;
}  
header .container{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96%;
	height: 65px;
	margin: 50px auto 25px auto; 
}
header .container .logo img{
	width: 40px;
}
header .container .button{
	font-size:16px;
}

header .container .logo{
  font-family: 'Poppins';
  font-size: 30px;
  display: flex;
  align-items: center;
  color: #101010;
}
header .container .logo span{
  display: inline-block;
  font-family: "Roboto",sans-serif; 
  font-weight: 500;
  font-size: 13px;
  color: #101010;
  transform: rotate(90deg);
  transform-origin: center center;
  margin-left: -2px;
}
.form{
	width: 35%;
	margin:0px auto;
	text-align:center; 
}
.form h1{
	display:block;
	font-weight:500;
	font-size:28px; 
}
.form h2{
	display:block; 
	font-size:15px;
	font-weight:400;
	padding-top:10px;
	color: #717171;
}
.form .text-align-left{text-align: left;}
.form .extra-link{
	display: block;
	margin:15px 0 -11px 0;
	text-align: right;
}
.form .extra-link a{ 
	display: inline-block; 
	text-decoration: underline;
	padding:5px 0;
	font-weight: 500;
	color: #101010;
}
.form .group{
	margin:26px auto 0 auto;
} 
.form .group input{
	width:100%; 
	border-radius:10px;
	border:solid 2px #f0f0f0;
	padding:14px;
	font-weight: 500;
	color:#101010;
	background-color: #f0f0f0;
}
.form .group input::placeholder{
	font-weight: 400;
} 
.form .group input:focus{
	border-color: #101010; 
	background-color: #fff;
}  
.form .group .group-alt:has(input:focus) {
  	border:solid 2px #101010;  
	background-color: #fff; 
}
.form .group p{
	display: block;
	padding-top:8px;
	text-align: left; 
	font-size:14px; 
} 

.form .group .group-alt{
	display:flex;
	align-items:center;
	background-color: #f0f0f0;
	border-radius:10px;
	border:solid 2px #f0f0f0;
	font-weight: 500;
	padding:0 14px;
	transition: all ease 0.3s;
}

.form .group .group-alt input{
	background-color: transparent;
	border-color: transparent;
	padding-left:0px;
}
.form .group .group-alt input:focus{
	background-color: transparent;
	border-color: transparent; 
}
.form .group .group-alt img{
	width:20px;
	vertical-align: middle;
}
.form .danger .group-alt{
	background-color: #fff !important;
	border-color: #f24822 !important;
}

.form .danger input{
	background-color: #fff;
	border-color: #f24822;
}
.form .danger input:focus{
	background-color: #fff;
	border-color: #f24822;
}
.form .danger p{color: #f24822;} 

.form .group button{
	display:flex;
	align-items:center;
	justify-content:center; 
	width:100%;
	height: 54px;
	border-radius:10px;
	padding:17px;
	background-color: #101010;
	color: #fff;
	font-weight:500;
	font-size: 17px;
	transition: ease-in-out background-color 0.1s;
} 
.form .group button img{
	width: 25px;
	display: none;
}
.form .group button:hover{background-color: #000;}
.form .group button:disabled{background-color: #000;}
.form .disclaimer{
	display:block;
	text-align:center;
	color: #717171;
	font-size:14px;
	font-weight: 400;
	padding:10px 0;
}
.form .disclaimer a{text-decoration: underline;}

.form .bracket{
	display: flex;
	align-items: center;
	width: 100%;
	margin-top: 15px;
	color: #101010;
}
.form .bracket span{
	display: block;
	width: 100%;
	height: 2px;
	border-radius: 5px;
	background-color: #f0f0f0;
}
.form .bracket p{
	padding: 0 15px;
	font-weight: 400;
}
.show-message{
	position: fixed;
	display:none;
	align-items:center; 
	max-width:35%;
	background-color: #101010;
	color: #fff;
	border-radius:10px;
	padding:12px 15px;
	top:15px;
	left: 50%;
	transform: translateX(-50%); 
}
.show-message img{
	margin-right:15px;
	width:30px;
	vertical-align: middle;
}
.show-message .container{
	display: flex;
	align-items:center;
	width: 100%;
}
/****************************************/
/* Phone */
@media (max-width: 768px) { 	
	header .container{width: 90%;}
	.form{width: 90%;} 
	.show-message{width:85%; max-width: 90%;}
}

/* Tablet */
@media (min-width: 769px) and (max-width: 1024px) { 
	.form{width: 55%;} 
	.show-message{max-width: 45%;}
}

/* Pc */
@media (min-width: 1025px) {  

}