body, html {
    height: 100%;
    margin: 0;
    place-content: center;
    font-family: 'Gill Sans', 'Gill Sans MT', 'Alfa Slab One', 'Calibri', 'Trebuchet MS', sans-serif;
          }

.bg {
/* The image used */
background-image: url("./images/testbg.jpg");

/* Full height */
height: 100%; 

/* Center and scale the image nicely */
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}

input[type=button], input[type=submit], input[type=reset] {
    background-color: #04AA6D;
    border: 1;
    color: white;
    font-weight: bold;
    padding: 10px 10px;
    text-decoration: none;
    margin: 4px 2px;
    cursor: pointer;
}

input[type=text] {
    background-color: white;
    background-image: url('images/zip.png');
    background-position: 5px 4px;
    background-repeat: no-repeat;
    padding-left: 33px;
  }

  .container {
    padding-top: 25px;
    display: flex;
    align-items: center;
    justify-content: center
  }
  img {
    max-width: 100%

  }
  .image {
    flex-basis: 40%
  }
  .text {
    font-size: 15px;
    padding-left: 20px;
    font-style: italic;
  }

  .footer {
    position: fixed;
    font-size: small;
    bottom: 0;
    right: 15px;
    width: 100%;
    color: white;
    text-align: right;
 }

 :root {
	--easing: cubic-bezier(0.33, 1, 0.68, 1);
	--easing-2: cubic-bezier(0.61, 1, 0.88, 1);
}

input[type="checkbox"]:checked {
	& + .box:after {
		transform: translateY(-50%) scale3d(8, 6, 1);
	}
	
	& + .box .box__item {
		transform: translateX(0px);
    opacity: 1;
		visibility: visible;
    transition: all 0.5s ease-out;
    transition-delay: calc(var(--index) * 0.1s);
    transition-property: transform, opacity;
	}
	
	& + .box .icon {
		background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='512' height='512' viewBox='0 0 512 512'%3E %3Cpath d='M437.5 386.6L306.9 256l130.6-130.6c14.1-14.1 14.1-36.8 0-50.9-14.1-14.1-36.8-14.1-50.9 0L256 205.1 125.4 74.5c-14.1-14.1-36.8-14.1-50.9 0-14.1 14.1-14.1 36.8 0 50.9L205.1 256 74.5 386.6c-14.1 14.1-14.1 36.8 0 50.9 14.1 14.1 36.8 14.1 50.9 0L256 306.9l130.6 130.6c14.1 14.1 36.8 14.1 50.9 0 14-14.1 14-36.9 0-50.9z'/%3E %3C/svg%3E ");
	}
}

.box {
	padding: 20px 80px 20px 20px;
	position: relative;
	
	&:after {
		content: '';
		width: 40px;
		height: 40px;
		position: absolute;
		right: 0;
		top: 50%;
		background: #FFF6DA;
		transform-origin: 100% 50%;
		transform: translateY(-50%);
		transition: transform 0.3s var(--easing);
		z-index: -1;
	}
	
	&__item {
		visibility: hidden;
		transform: translateX(20px);
		opacity: 0;
		transition: 
			opacity 0.2s var(--easing-2) 0;
	}
}

.toggle {
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	
	&__checkbox {
		display: none;
	}
}

.icon {
	cursor: pointer;
	display: block;
	width: 40px;
	height: 40px;
	background: no-repeat center / 40%;
}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  padding: 0;
  border: 1px solid #888;
  width: 80%;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  -webkit-animation-name: animatetop;
  -webkit-animation-duration: 0.4s;
  animation-name: animatetop;
  animation-duration: 0.4s
}

/* Add Animation */
@-webkit-keyframes animatetop {
  from {top:-300px; opacity:0} 
  to {top:0; opacity:1}
}

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

/* The Close Button */
.close {
  color: white;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.modal-header {
  padding: 2px 16px;
  background-color: #292929;
  color: white;
}

.modal-body {padding: 2px 16px;}

.right {
  display: flex;
  justify-content: right;
  align-items: right;
  height: 30px;
  padding: 20px 16px;

}