/*
Theme Name: Canterbury Children's Theatre
Theme URI: http://www.avatar.co.nz
Description: Canterbury Children's Theatre theme by <a href="http://www.avatar.co.nz">Avatar</a>
Version: 1
Author: Avatar
Author URI: http://www.avatar.co.nz
Tags: avatar
*/


* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}

body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	color: #333;
	background: #fff;
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.wrapper {
	width: 1120px;
	margin: 0 auto;
}
a img {
	border: none;
}

/* Header
-------------------------------------------------------------- */ 

#header {
	width: 100%;
}
#logo {
	float: left;
	width: 170px;
	max-width: 170px;
	height: 205px;
	margin: -33px 20px 20px 0;
}
#header h1 {
	color: #ec008c;
	margin: 53px 0 0;
}
#header h2 {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 26px;
	font-weight: 100;
	text-transform: none;
	margin: 0 0 20px;
}

/* Nav
-------------------------------------------------------------- */ 

#menu-container {
	display: block;
	width: 100%;
	height: 50px;
	border-bottom: 3px solid #eee;
}
#menu-container .wrapper {
	padding-left: 190px;
}
#menu-container ul {
	float: left;
	position: absolute;
	list-style-type: none; 
	margin: 0;
	padding: 0; 
}
#menu-container ul li {
	display: inline-block;
	position: relative;
	margin: 0;
	padding: 0;
}
#menu-container ul li span {
	display: none;
}
#menu-container ul li a {
	display: block; 
	padding: 14px 50px 9px;
	font-family: 'Just Another Hand', cursive;
	color: #333;
	font-size: 24px;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	border-bottom: 3px solid #555;
	transition: all 0.3s ease-out;
}
#menu-container ul li a:hover, #menu-container ul li.active a {
	color: #333;
	text-decoration: none;
	box-shadow: inset 0 -3px 0 0 #555;
	background: #eee;
}
#menu-container ul li:nth-child(1) a {
	border-bottom: 3px solid #00aeef;
}
#menu-container ul li:nth-child(1) a:hover, #menu-container ul li.active:nth-child(1) a {
	box-shadow: inset 0 -3px 0 0 #00aeef;
}
#menu-container ul li:nth-child(2) a {
	border-bottom: 3px solid #ec008c;
}
#menu-container ul li:nth-child(2) a:hover, #menu-container ul li.active:nth-child(1) a {
	box-shadow: inset 0 -3px 0 0 #ec008c;
}
#menu-container ul li:nth-child(3) a {
	border-bottom: 3px solid #ffed00;
}
#menu-container ul li:nth-child(3) a:hover, #menu-container ul li.active:nth-child(1) a {
	box-shadow: inset 0 -3px 0 0 #ffed00;
}
#menu-container ul li:nth-child(4) a {
	border-bottom: 3px solid #02a50a;
}
#menu-container ul li:nth-child(4) a:hover, #menu-container ul li.active:nth-child(1) a {
	box-shadow: inset 0 -3px 0 0 #02a50a;
}
#menu-container ul li:nth-child(5) a {
	border-bottom: 3px solid #b40395;
}
#menu-container ul li:nth-child(5) a:hover, #menu-container ul li.active:nth-child(1) a {
	box-shadow: inset 0 -3px 0 0 #b40395;
}

/* --------- Drop downs --------- */

#menu-container li ul.sub-menu {
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.3s ease-out;
}
#menu-container li ul.sub-menu li {
	display: block;
	float: none;
	position: relative;
	border-bottom: 1px solid #fff;
}
#menu-container li ul.sub-menu li:last-child {
	border-bottom: none;
}
#menu-container li ul.sub-menu li a {
	width: 220px;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #333;
	font-size: 15px;
	padding: 15px;
	font-weight: normal;
	text-decoration: none;
	text-transform: none;
	background: #eee;
	border-bottom: none;
}
#menu-container ul li a:hover + .sub-menu, #menu-container li ul.sub-menu:hover {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.3s ease-out;
}
#menu-container li ul.sub-menu li a:hover, #menu-container li ul.sub-menu li.active a {
	color: #333;
	text-decoration: none;
	background: #e0e0e0;
	box-shadow: none;
}
#menu-container li ul.sub-menu ul {
	visibility: hidden;
	margin-left: 220px;
	top: 0;
}

/* Body
-------------------------------------------------------------- */

main {
	display: block;
}
#body {
	width: 100%;
	padding: 0 0 60px;
}
.home #body,
section {
	width: 100%;
	padding: 80px 0 60px;
}
#next-show {
	background: #8fd8f8;
}
.next-show-image {
	float: right;
	margin: -30px 0 -30px 40px;
}
#next-show h1 {
	font-size: 100px;
	margin: 0;
}
#next-show h2 {
	margin: 0;
	opacity: 0.75;
}
#next-show h2 {
	margin: 0;
	opacity: 0.75;
	margin: 0 0 16px 0;
	position: relative;
}
#next-show h2:after {
	content:'';
	display: block;
	height: 3px;
	width: 175px;
	background: #333;
	margin-top: 15px;
	position: relative;
	left: 0;
}
#next-show h3 {
	font-weight: 100;
	margin: 0;
}
#next-show p {
	font-size: 18px;
	font-weight: 200;
}
#previous-shows img {
	margin: 10px 0 20px;
}
.cushion {
    color: #ec008c;
}
.page-template-custom-previous-shows #previous-shows {
	margin-bottom: 10px;
}
.home #body {
	color: #fff;
	background: #00aeef;
}
.home #body h1 {
	color: #fff;
}
#section-title {
	color: #fff;
	padding: 45px 0 30px;
	margin-bottom: 40px;
}
#section-title a {
	color: #fff;
}
#body .title-yellow,
#body .title-yellow h1,
#body .title-yellow a {
	color: #333;
}
#section-title h1 {
	font-size: 60px;
	color: #fff;
	margin: 0 0 19px;
	position: relative;
}
#section-title h1:after {
    background: #fff;
    content: "";
    display: block;
    height: 3px;
    left: 0;
    margin-top: 10px;
    position: relative;
    width: 100px;
}
#body .title-yellow h1:after {
    background: #333;
}
#breadcrumbs {
	font-size: 15px;
	opacity: 0.6;
}
.title-blue {
	background: #00aeef;
}
.title-pink {
	background: #ec008c;
}
.title-yellow {
	background: #ffed00;
}
.title-green {
	background: #02a50a;
}
.title-purple {
	background: #b40395;
}
h1 {
	font-family: 'Just Another Hand', cursive;
	color: #333;
	font-size: 60px;
	line-height: 1;
	font-weight: normal;
	text-transform: uppercase;
	margin: 0 0 10px;
	padding: 0;
}
h2 {
	font-family: 'Just Another Hand', cursive;
	color: #333;
	font-size: 36px;
	line-height: 1;
	font-weight: normal;
	text-transform: uppercase;
	margin: 30px 0 0;
}
h3 {
	font-family: 'Just Another Hand', cursive;
	color: #333;
	font-size: 30px;
	font-weight: normal;
	text-transform: uppercase;
	margin: 30px 0 0;
}
p {
	margin: 10px 0 20px;
}
a {
	color: #00aeef;
	text-decoration: none;
}
a:hover {
	color: #00aeef;
	text-decoration: underline;
}
hr {
    clear: both;
    border: none;
    height: 3px;
    color: #eee;
    background-color: #eee;
    margin: 30px 0;
}
a.btn {
	color: #fff;
	font-size: 18px;
	line-height: 1;
	font-weight: bold;
	display: inline-block;
	margin-top: 10px;
	padding: 20px 30px;
	text-decoration: none;
	border-radius: 4px;
	background: #ec008c;
}
a.btn:hover {
	color: #fff;
	background-color: #d4007e;
	text-decoration: none;
}
dl {
	margin: 0 0 20px;
}
dt {
	font-family: 'Just Another Hand', cursive;
	font-size: 30px;
	font-weight: normal;
	text-transform: uppercase;
	margin: 15px 0 0;
}
dd {
	margin: 0 0 0 1em;
}
#map {
	width: 100%;
	height: 300px;
}
div.ddsg-wrapper h2,
div.ddsg-wrapper p {
	display: none;
}
.date {
	color: #999;
}
a.phone-link {
	color: #333;
	text-decoration: none;
	cursor: default;
}
.left {
	float: left;
	margin: 0 5px 0 0;
}
.right {
	float: right;
	margin: 0 0 0 5px;
}
.clear-floats {
	clear: both;
}
.clearfix:before,
.clearfix:after {
    content:"";
    display:table;
}
.clearfix:after {
    clear:both;
}

/* FAQ
-------------------------------------------------------------- */

#body .hrf-entry {
	border: 3px solid #eee !important;
	margin-bottom: 10px !important;
}
#body .hrf-title.close-faq span {
    left: 0;
    top: 4px;
    background: #ffed00 url(images/open.png) no-repeat center center;
}
#body .hrf-title.open-faq span {
	 background: #ffed00 url(images/close.png) no-repeat center center;
}

/* Grid
-------------------------------------------------------------- */

.row {
	margin-left: -15px;
	margin-right: -15px;
}
.row:before, .row:after {
	content: " ";
	display: table;
}
.row:after {
	clear: both;
}
.row:before, .row:after {
	content: " ";
	display: table;
}
.row:after {
	clear: both;
}
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11 {
	float: left;
	position: relative;
	min-height: 1px;
	padding-left: 15px;
	padding-right: 15px;
}
.col-sm-1 {
	width: 8.333333333333332%;
}
.col-sm-2 {
	width: 16.666666666666664%;
}
.col-sm-3 {
	width: 25%;
}
.col-sm-4 {
	width: 33.33333333333333%;
}
.col-sm-5 {
	width: 41.66666666666667%;
}
.col-sm-6 {
	width: 50%;
}
.col-sm-7 {
	width: 58.333333333333336%;
}
.col-sm-8 {
	width: 66.66666666666666%;
}
.col-sm-9 {
	width: 75%;
}
.col-sm-10 {
	width: 83.33333333333334%;
}
.col-sm-11 {
	width: 91.66666666666666%;
}
.col-sm-12 {
	width: 100%;
}
.col-sm-3:nth-child(4n+1){
    clear: left;
}

/* Forms
-------------------------------------------------------------- */

#body .gform_body ul, #sect-body .gform_body ul {
    margin: 0;
    padding: 0;
}
#body .gform_body ul li, #sect-body .gform_body ul li {
    background-image: none;
    margin: 0 0 10px 0;
    padding: 0;
}
#body .gform_body ul li li, #sect-body .gform_body ul li li {
    margin: 0;
}
#body .gform_body ul li.gfield.gfield_error, #sect-body .gform_body ul li.gfield.gfield_error, #body .gform_body ul li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning, #sect-body .gform_body ul li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    background-color: #FFDFE0;
}
.gform_wrapper .top_label .gfield_label {
    margin-bottom: 0 !important;
}
.gform_wrapper input.medium, .gform_wrapper textarea.medium {
    border: 1px solid #ccc !important;
}
.gform_wrapper textarea.medium {
    width: 100% !important;
}
.gform_confirmation_message {
	background: #eee;
	padding: 15px 20px;
	display: inline-block;
}
.gform_button {
	color: #fff;
	font-size: 18px;
	line-height: 1;
	font-weight: bold;
	display: inline-block;
	margin-top: 10px;
	padding: 20px 30px !important;
	text-decoration: none;
	border-radius: 4px;
	background: #ec008c;
	border: none;
	cursor: pointer;
	-webkit-appearance: none;
}
.gform_button:hover {
	color: #fff;
	background-color: #d4007e;
	text-decoration: none;
	cursor: pointer;
}

/* WordPress Core
-------------------------------------------------------------- */

.alignnone {
    margin: 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 40px;
}

.alignleft {
    float: left;
    margin: 5px 40px 20px 0;
}

.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 40px;
}

a img.alignnone {
    margin: 0;
}

a img.alignleft {
    float: left;
    margin: 5px 40px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 40px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 40px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 40px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 15px;
    line-height: 1.3;
    margin: 0;
    padding: 0 5px 5px;
}

/* Footer
-------------------------------------------------------------- */

#footer {
	clear: both;
	border-top: 3px solid #eee;
}
.home #footer {
	border-top: none;
}
#footer-top {
	padding: 40px 0 30px;
}
#footer h2 {
	color: #ec008c;
	font-size: 30px;
	margin: 20px 0 15px 0;
}
#footer-bottom {
	font-size: 14px;
	line-height: 1;
	padding: 10px 0 0;
	background: #eee;
}
#footer-links {
	text-align: right;
}
#footer-links a,
#avatar-link {
	margin: 0 0 0 10px;
	padding-left: 10px;
	display: inline-block;
	border-left: 1px solid #e0e0e0;
}
#footer-links a:first-child {
	border-left: none;
	margin: 0;
	padding-left: 0;
}

/* Mobile
-------------------------------------------------------------- */

#mobile-menu-btn {
	display: none;
}

/* Responsive Images */

img[class*="align"],
img[class*="wp-image-"] {
	height: auto;
}
img.size-full, #body img, section img {
	max-width: 100%;
	width: auto;
	height: auto;
}

@media screen and (max-width: 1140px) {
	.wrapper {
		width: 960px;
	}
	#menu-container ul li a {
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media screen and (max-width: 980px) {
	.wrapper {
		width: 90%;
	}
	#logo {
		margin: 20px 20px 20px 0;
	}
	
	/* Mobile Menu */
	#menu-container {
		display: none;
		clear: both;
		float: none;
		position: absolute;
		top: 50px;
		border: none;
	}
	#menu-container .wrapper {
		width: 100%;
		padding: 0;
	}
	#mobile-menu-btn {
		display: block;
		width: 100%;
		color: #fff;
		font-weight: 400;
		font-size: 22px;
		line-height: 1;
		text-align: center;
		margin: 0;
		padding: 14px;
		text-decoration: none;
		background: #ec008c;
	}
	a#mobile-menu-btn:hover {
		text-decoration: none;
		background: #d4007e;
	}
	#menu-container ul, #menu-container ul li {
		width: 100%;
		list-style: none;
		margin: 0;
		padding: 0;
		position: static;
	}
	#menu-container ul li {
		position: relative;
	}
	#menu-container ul li a {
		width: 100% !important;
		display: block;
		color: #333;
		padding: 15px;
		text-align: center;
		font-size: 20px;
		line-height: 1;
		text-decoration: none;
		border-bottom: 1px solid #e0e0e0 !important;
		background: #eee;
	}
	#menu-container ul li a:hover {
		color: #333;
		text-decoration: none;
		background: #e0e0e0;
		box-shadow: none !important;
	}
	#menu-container ul li ul.sub-menu {
		display: none;
		visibility: visible;
		opacity: 1;
		position: relative;
	}
	#menu-container ul li.current-menu-item ul, #menu-container ul li.current-menu-parent ul {
		/* display: block; */
	}
	#menu-container ul li ul.sub-menu ul {
		margin-left: 0;
	}
	#menu-container ul li ul.sub-menu li {
		border-bottom: none;
	}
	#menu-container ul li ul.sub-menu li a {
		color: #333;
		font-size: 15px;
		padding: 17px 15px;
		background: #e0e0e0;
		border-bottom: 1px solid #d0d0d0 !important;
	}
	#menu-container ul li ul.sub-menu li a:hover {
		background: #d0d0d0;
	}
	#menu-container ul li ul li ul.sub-menu li a {
		background: #d0d0d0;
		border-bottom: 1px solid #c0c0c0 !important;
	}
	#menu-container ul li ul li ul.sub-menu li a:hover {
		background: #c0c0c0;
	}
	#menu-container ul li a:hover + .sub-menu, #menu-container li ul.sub-menu:hover {
		display: none;
	}
	#menu-container ul li span {
		position: absolute;
		z-index: 1;
		right: 0;
		top: 0;
		width: 50px;
		height: 50px;
		display: block;
		text-align: center;
		cursor: pointer;
		background: url(images/plus-icon.png) no-repeat center center;
	}
	#menu-container ul li span.active {
		background: url(images/minus-icon.png) no-repeat center center;
	}
}
@media screen and (max-width: 768px) {
	#logo {
		float: none;
		margin: 20px auto;
	}
	#logo-text {
		display: none;
	}
	.home #logo-text {
		display: block;
		text-align: center;
	}
	#header h1 {
		margin: 20px 0 0;
	}
	.next-show-image {
		display: block;
		float: none;
		margin: 0 auto 20px;
	}
	.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11 {
		width: 50%;
	}
	#footer-social {
		clear: both;
	}
	#copyright, #footer-links {
		width: 100%;
		text-align: center;
	}
	#footer-links {
		margin-top: 5px;
	}
	#footer p#avatar-link {
		margin-top: 20px;
	}
}
@media screen and (max-width: 600px) {
	h1, #section-title h1 {
		font-size: 40px;
	}
	#next-show h1 {
		font-size: 50px;
	}
	h2 {
		font-size: 30px;
	}
	#header h2 {
		font-size: 20px;
		line-height: 1.2;
	}
	h3 {
		font-size: 20px;
	}
	.home body,
	section {
		padding: 60px 0 40px;
	}
	#body {
		padding: 0 0 40px;
	}
	.alignleft, .alignright {
		display: block;
		float: none;
		margin: 5px auto 20px;
	}
	.gform_wrapper .top_label input.medium, .gform_wrapper .top_label select.medium {
		width: 100% !important;
	}
	table td {
		float: left;
		width: 100% !important;
	}
	.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11 {
		width: 100%;
	}
	#avatar-link {
		margin: 10px 0 0;
		padding-left: 0;
		display: block;
		width: 100%;
		border-left: none;
	}
}
@media screen and (max-width: 450px) {
	#logo {
		width: 100%;
		height: auto;
	}
	#logo img {
		width: 100%;
		height: auto;
		max-width: 100%;
	}
	#footer-bottom {
		font-size: 13px;
	}
}