body, html {
	margin: 0;
	padding: 0;
}

html * {
	box-sizing: border-box;
}

header h1,
header h2,
header h3,
header h4,
header h5,
header h6 {
	display: none;
}

img {
	display: block;
}

p, label {
	font-family: 'Roboto Slab', serif;
}

ul {
	padding: 0;
}

ul li {
	list-style: none;
}

.clear,
.clear::after {
	display: block;
	width: 100%;
	clear: both;
}

.button {
	border: solid 2px #000;
	background-color: #fff;
	display: block;
	margin: 0px auto;
	width: auto;
	font-family: 'Roboto Slab', serif;
	text-transform: uppercase;
	vertical-align: middle;
}

.button {
	text-align: center;
	text-decoration: none;
	color: #000;
	display: block;
	width: 100%;
	font-size: 22px;
	width: 240px;
	padding: 10px 0;
}

section {
	overflow: hidden;
}

footer {
	padding: 60px;
}

footer,
footer * {
	background-color: #000;
	color: #999999;
	font-family: 'Roboto', serif;
	font-size: 15px;
}

footer a {
	color: #999999;
}

footer p:first-child {
	margin-top: 0;
}

footer p:last-child {
	margin-bottom: 0;
}

#container {
	width: 100%;
	min-height: 100vh;
	opacity: 0;
}

#container > header img {
	margin: 2.5% auto 0px;
	max-width: 50%;
	width: 100%;
}

#container > header p {
	color: #fff;
}

#container > header div {
	background-color: #000;
	display: table;
	width: 100%;
	overflow: hidden;
}

#container > header div > div {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* BEGIN: Header */
/* ////////////////////////////////////////////////////////////////////////////////////////// */
#container > header p {
	font-size: 20px;
	margin: 25px 0 30px 0;
}
/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Header */
/* ////////////////////////////////////////////////////////////////////////////////////////// */

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* BEGIN: Worksheet */
/* ////////////////////////////////////////////////////////////////////////////////////////// */
#mad_libs-worksheet {
	padding: 0 30.7%;
}

#mad_libs-worksheet form input {
	display: block;
	width: 100%;
	border: none;
	font-family: 'Roboto', serif;
	text-align: center;
	margin-top: 50px;
	font-size: 18px;
}

#mad_libs-worksheet form input::placeholder {
	color: #999;
}

#mad_libs-worksheet form label {
	display: block;
	border-top: solid 2px #000;
	text-align: center;
	text-transform: uppercase;
	font-size: 18px;
}

#mad_libs-worksheet .button {
	margin: 50px auto 80px auto;
}
/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Worksheet */
/* ////////////////////////////////////////////////////////////////////////////////////////// */

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Report */
/* ////////////////////////////////////////////////////////////////////////////////////////// */
#container #mad_libs-report {
	font-family: 'Roboto Slab', serif;
	opacity: 0;
	height: 0;
	margin: 0 2.5% 5%;
}

#mad_libs-report .table {
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-top: 19px;
}

#mad_libs-report .table > div {
	display: table-cell;
}

#mad_libs-report .table > div:first-child {
	text-align: right;
}

#mad_libs-report .table > div:last-child {
	text-align: left;
}

#mad_libs-report .table > div .button {
	width: 228px;
	display: inline-block;
	margin: 0 43px;
}

#mad_libs-report .report h3 {
	font-weight: normal;
	text-indent: 6em;
	font-size: 22px;
}

#mad_libs-report .report h3 span {
	text-decoration: underline;
}

#mad_libs-report .report p {
	text-indent: 5em;
	font-size: 22px;
	line-height: 1.5;
}

#mad_libs-report .report p:last-child {
	margin-bottom: 0;
}

#mad_libs-report .report p span {
	color: #fff;
	background-color: #000;
	padding: 2px 5px;
	font-family: 'Luckiest Guy', cursive;
	-webkit-font-smoothing: antialiased;
	vertical-align: bottom;
}
/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Report */
/* ////////////////////////////////////////////////////////////////////////////////////////// */

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* BEGIN: Share */
/* ////////////////////////////////////////////////////////////////////////////////////////// */
#mad_libs-share_modal {
	display: none;
}

.active#mad_libs-share_modal {
	display: table;
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.7);
}

#mad_libs-share_modal > div {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

#mad_libs-share_modal > div > div {
	background-color: #fff;
	border: 2px solid #000;
	display: inline-block;
	padding: 35px;
	font-family: 'Roboto Slab', serif;
	position: relative;
}

#mad_libs-share_modal h2 {
	margin: 1% 0;
	font-size: 30px;
}

#mad_libs-share_modal > div > div .share_url {
	position: relative;
	width: 100%;
	overflow: hidden;
	display: table;
	margin-bottom: 1%;
}

#mad_libs-share_modal > div > div .share_url input {
	width: 100%;
	font-size: 22px;
	font-family: 'Roboto Slab', serif;
	display: table-cell;
	text-align:left;
}

#mad_libs-share_modal > div > div .share_url label {
	width: 30%;
	display: table-cell;
	padding: 0% 2%;
	text-align: center;
	vertical-align: middle;
	border: 2px solid #000;
}

#mad_libs-share_modal > div > div .share_url label a {
	font-size: 22px;
	font-family: 'Roboto Slab', serif;
	color: #000;
	text-decoration: none;
	text-transform: uppercase;
}

#mad_libs-share_modal > div > div .share_url .clear {
	width: 100%;
	position: absolute;
	top: 100%;
	left: 0;
	height: 100%;
	opacity: 0;
}

#mad_libs-share_modal > div > div .share_url .clear > div {
	width: 100%;
	display: table;
	height: 100%;
}

#mad_libs-share_modal > div > div .clear > div > div {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
}

#mad_libs-share_modal > div > div .clear > div > div > span {
	display: block;
	width: 100%;
	height: 100%;
	background: #000;
	color: #fff;
	vertical-align: middle;
	text-transform: uppercase;
	padding: 0 5%;
	line-height: 2.3;
}

#mad_libs-share_modal [title="Close"] {
	text-decoration: none;
	color: #000;
	font-family: 'Roboto Slab', serif;
	font-size: 50px;
	position: absolute;
	right: 5px;
	top: 5px;
	line-height: 0.5;
}

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Share */
/* ////////////////////////////////////////////////////////////////////////////////////////// */

/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* BEGIN: Media Queries */
/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* Desktop */
@media screen and (min-width: 960px) {
	#container {
		max-width: 960px;
		margin: 0px auto;
	}
}

/* Mobile */
@media screen and (max-width: 767px) {
	#container > header img {
		max-width: 80%;
	}

	#container > header p {
		margin: 50px 0;
		font-size: 1.1rem;
    }

    #mad_libs-worksheet {
    	padding: 0 20.7%;
    }

    #mad_libs-worksheet .button {
		width: 77%;
	}

	#mad_libs-report .report {
    	padding: 0 8%;
    	margin-bottom: 10%;
    }

    #mad_libs-report .report p,
    #mad_libs-report .report h3 {
    	text-indent: 15%;
    	font-size: 1.4rem;

    }

    #mad_libs-report .table > div .button {
    	width: 77%;
    	margin: 0 10% 0 0;
    	font-size: 1.4rem;
    }

    footer {
    	padding: 60px 30px;
    }

}

@media only screen and (max-width: 400px) {
    br {
        display: none;
    }
}
/* ////////////////////////////////////////////////////////////////////////////////////////// */
/* END: Media Queries */
/* ////////////////////////////////////////////////////////////////////////////////////////// */