.panel{
	display: none;
	position: fixed;
	top:0;
	left:0;
	right: 0;
	bottom:0;
}

.panel.active{
	display: flex;
}

.panel .bg{
	background: rgba(0,0,0,0.5);
	position: absolute;
	top:0;
	left:0;
	right: 0;
	bottom:0;

	animation: fadeIn 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.panel .content{
	margin:auto;
	background: white;
	position: relative;
	padding: 40px 30px 30px;
	width: 100%;
	max-width: 500px;
	border-radius: 8px;
	box-shadow: 0 12px 62px rgba(0,0,0,0.6);

	animation: slideTop 0.5s cubic-bezier(0.5, 0, 0, 1) 0.2s backwards;
}

.panel legend{
	font-size:15px;
	margin-bottom: 6px;
	color:gray;
	font-family: 'AvenirNextLTW01-DemiCn';
	letter-spacing: -0.35px;
}

.panel fieldset{
	margin-bottom: 12px;
}

.panel fieldset.fr5{
	display: inline-block;
	vertical-align: top;
	width: calc(50% - 6px);
}

.panel fieldset.fr5 + .fr5{
	margin-left: 12px;
}

.panel fieldset.fr1{
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 3);
}

.panel fieldset.fr2{
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 3 * 2 - 12px);
	margin-left: 12px;
}

.panel label{
	font-family: 'AvenirNextLTW01-DemiCn';
	font-size:16px;
	letter-spacing: -0.4px;
	color:#333;
}

.panel input[type="text"],
.panel input[type="email"]{
	font:inherit;
	background: whitesmoke;
	padding: 12px;
	width: 100%;
	border-radius: 4px;
}

.panel input[type="checkbox"]{
	margin-right: 6px;
}

.panel button{
	font-family: 'AvenirNextLTW01-DemiCn';
	width: 100%;
	background: salmon;
	color:white;
	font-size:18px;
	text-transform: uppercase;
	padding: 12px 0;
	border-radius: 4px;
}

.panel button:hover{
	background: whitesmoke;
	color:salmon;
}

.waiting,
.done{
	display: none;
	text-align: center;
	font-family: 'AvenirNextLTW01-DemiCn';
}

.done p{
	margin:1em auto;
}

.done a{
	color:salmon;
}

.done a:hover{
	text-decoration: none;
}

.share{
	margin-top:24px;
}

.share span{
	display: block;
	text-transform: uppercase;
	font-family: 'AvenirNextLTW01-DemiCn';
	font-size:14px;
	margin-bottom: 9px;
}

.share button.rnd{
	border:1px solid rgba(0,0,0,0.4);
	background: transparent;
	width: 54px;
	height: 54px;
	border-radius: 100%;
	display: inline-block;
	margin:0 6px;

	background-size: 50%;
	background-position: 50%;
	background-repeat: no-repeat;
}

.share button.rnd.facebook{
	background-image: url(../img/facebook.svg);
}

.share button.rnd.twitter{
	background-image: url(../img/twitter.svg);
}

@media only screen and (max-width: 800px){
	.panel .content{
		border-radius: 0;

		overflow: scroll;
		-webkit-overflow-scrolling:touch;
    	max-height: 100vh;
	}
}