@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap');

a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

* {
	box-sizing: border-box;
}

body {
	font-family: 'Ubuntu', sans-serif;
	color: rgb(74,74,73);
	font-size: 17px;
	line-height: 25px;
}

#particles {
  width: 100%;
  height: 100vh;
  position: absolute;
  background-color: #fff;
  z-index: 10;
}

.container {
	max-width: 725px;
	margin: 0 auto;
	padding: 40px 0 80px 0;
	position: relative;
	z-index: 100;
}

h1 {
	text-align: center;
}

h1 img {
	height: 60px;
}

h2 {
	font-size: 34px;
	letter-spacing: -0.02em;
	font-weight: bold;
	text-align: center;
	margin: 34px 0 17px 0;
}

.client_panel h2 {
	margin-top: 21px;
}

h2 span {
	font-size: 12px;
	line-height: 12px;
	margin: 0 0 5px 0;
	letter-spacing: 1px;
	text-transform: uppercase;
	display: block;
}

h3 {
	font-size: 21px;
	letter-spacing: -0.01em;
	font-weight: bold;
	text-align: center;
	margin: 21px 0 17px 0;
}

b {
	font-weight: bold;
}

.client_information, .contract_information, .sign_information, fieldset {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.client_information p, .contract_information p, .sign_information p, fieldset p {
	width: 47.5%;
}

.client_information p.additional_information {
	width: 100%;
}

.contract_information p.contract_file {
	width: 21.25%;
}

.contract_information p.contract_file.contract_file_double {
	width: 47.5%;
}

.client_information p span, .contract_information p span, fieldset p span {
	font-size: 12px;
	margin-top: 17px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: block;
	border-bottom: 1px solid rgb(74,74,73);
}

.sign_information p span {
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: block;
	border-bottom: 1px solid #fff;
}

.contract_information p span.time_and_date, .sign_information p span.time_and_date, fieldset p span.time_and_date {
	font-weight: normal;
	border-bottom: 0;
	margin-top: 0;
	letter-spacing: 0;
	line-height: 12px;
}

fieldset p span.time_and_date {
	margin-top: 5px;
}

.client_information p a, fieldset p a {
	color: rgb(240,125,5);
}

.contract_information p a {
	display: block;
	width: 60px;
	height: 60px;
	background: url('pdf.svg');
	margin: 10px 0 0 0;
}

.sign_information {
	margin: 34px 0 0 0;
	background: rgb(240,125,5);
	color: #fff;
	padding: 25px 30px 35px 30px;
}

.sign_form, .client_panel {
	margin: 34px 0 0 0;
	border: 2px solid rgb(240,125,5);
	padding: 30px;
}

.client_link {
	text-align: center;
	margin: 21px 0 17px 0;
	background: #32CD32;
	padding: 11px 0;
	font-size: 34px;
	border-radius: 15px;
}

.client_link a {
	color: #fff;
	text-decoration: none;
}

.sign_form a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgb(240,125,5);
}

.sign_form .signature, .sign_form .button, fieldset input, fieldset button, .new_client input {
	font-family: 'Ubuntu', sans-serif;
}

.sign_form .signature {
	width: 100%;
	font-size: 34px;
	padding: 5px;
	text-align: center;
	border: 0;
	background: #f0f0f0;
	border-bottom: 1px solid rgb(74,74,73);
}

.sign_form p {
	margin: 0 0 17px 0;
}

.sign_form p.error {
	margin: 17px 0 17px 0;
	background: #f00;
	padding: 17px;
	border-radius: 17px;
	color: #fff;
	font-weight: bold;
	text-align: center;
}

.sign_form .sign_checkbox label {
	margin: 0 0 17px 0;
}

.sign_form .button, fieldset button, .new_client input[type="submit"] {
	color: #fff;
	background: rgb(240,125,5);
	width: 100%;
	border: 0;
	font-size: 17px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	padding: 15px;
	border-radius: 15px;
	cursor: pointer;
	margin: 17px 0 0 0;
}

.new_client input[type="submit"] {
	margin: 0 0 0 10px;
}

.sign_form .button:disabled, fieldset button:disabled {
  background: #ccc;
}

.sign_form .button:hover, fieldset button:hover {
	opacity: 0.9;
}

.new_client {
	display: flex;
	margin: 34px 0 0 0;
}

.new_client input {
	font-size: 17px;
	width: 100%;
	margin: 0 0 21px 0;
	padding: 15px !important;
	text-align: center;
}

fieldset input, .new_client input {
	width: 100%;
	padding: 5px;
	border: 0;
	background: #f0f0f0;
	border-bottom: 1px solid rgb(74,74,73);
}

fieldset input.required {
	border-bottom: 1px solid #ff0000;
}

.logout {
	text-decoration: none;
	color: #f00;
	position: absolute;
	top: 40px;
	right: 0px;
	font-size: 20px;
}

::placeholder {
	color: #d0d0d0;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #d0d0d0;
}

::-ms-input-placeholder {
	color: #d0d0d0;
}

/* Customize the label (the container) */
.sign_form .sign_checkbox label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 17px;
  cursor: pointer;
  font-size: 21px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.sign_form .sign_checkbox label input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #f0f0f0;
}

.sign_form .sign_checkbox label:hover input ~ .checkmark, .sign_form .signature:hover {
  background-color: #e0e0e0;
}

.sign_form .sign_checkbox label input:checked ~ .checkmark {
  background-color: rgb(240,125,5);
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.sign_form .sign_checkbox label input:checked ~ .checkmark:after {
  display: block;
}

.sign_form .sign_checkbox label .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 600px) {

	.container {
		padding: 40px 40px 80px 40px;
	}
	
	.client_information p, .contract_information p, .sign_information p, fieldset p {
		width: 100%;
	}
	
	.sign_information p:first-of-type {
		margin: 0 0 17px 0;
	}
	
	.contract_information p.contract_file {
		width: 47.5%;
		margin-bottom: 5px;
	}
	
	.contract_information p.contract_file.contract_file_double {
		width: 100%;
	}
	
	.sign_form .sign_checkbox label {
		font-size: 17px;
	}
	
	.sign_form .signature {
		font-size: 21px;
	}
	
	.client_link {
		font-size: 17px;
		max-width: 100%;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
	.logout {
		right: 40px;
	}

}