/**
 * Responsive: Media Queries
 *
 */


@media ( max-width: 1200px ) {
	
	#masthead {
	   	background-size: 1200px;
	}

}

@media ( max-width: 1140px ) {
	
	#services ul li {
		max-width: 24.5%;
	}

	#packages ul li {
		max-width: 32.5%;
	}

	#feature-bar {
		font-size: 18px;
		line-height: 30px;
		padding: 10px 40px;
	}

}

@media ( max-width: 1024px ) {
	
	.site-title {
		padding-left: 30px;
		padding-right: 30px;
	}

	#header-navigation {
		top: 60px;
		right: 30px;
	}

	.main-navigation {
		margin-top: 0;
		height: 50px;
		line-height: 50px;
	}

	.main-navigation li {
		padding: 10px 12px;
		height: 50px;
	}

	.main-navigation a {
		font-size: 14px;
	}

}


@media ( max-width: 900px ) {

	#header-navigation,
	.home #header-navigation {
		right: initial;
		top: 0;
		width: 100%;
		height: 45px;
		background: #f60;
		position: fixed;
		z-index: 998;
	}

	#header-navigation ul {
		margin: 0;
		padding: 0 0 0 10px;
	}

	#header-navigation li a,
	.home #header-navigation li a {
		color: #fff;
		font-size: 20px;
		font-weight: 700;
		line-height: 45px;
	}

	#site-branding {
		margin: 60px 15px 0 15px;
	}

	#site-branding a,
	.home #site-branding a {
		width: 150px;
		height: 150px;
	}

	#site-name {
		margin: 90px 0 0 0;
	}

	.site-tagline {
		font-size: 18px;
		line-height: 24px;
	}

	.menu-toggle,
	.main-navigation.toggled ul {
		display: inline-block !important;
	}

	#site-navigation {
		position: fixed;
		top: 0;
		right: 0;
		width: 60px;
		background: transparent;
		color: #fff;
		z-index: 998;
		line-height: 45px;
		text-align: center;
		box-shadow: none;
	}

	#site-navigation:before {
		font-family: 'FontAwesome';
		font-size: 30px;
		content: '\f0c9';
		color: #fff;
		line-height: 45px;
		text-align: right;
	}

	#site-navigation button {
		display: none !important;
	}

	.home #site-navigation button {
		display: none !important;
	}

	.main-navigation {
		height: 45px;
		line-height: 45px;
	}

	.menu-main-menu-container {
		text-align: center;
		position: fixed;
		right: 0;
		top: 45px;
		width: 100vw;
	}

	.main-navigation ul {
		display: none !important;
		box-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
		background: #2a2a2a;
		border-radius: 0 0 0.4em 0.4em;
		border: none;
		left: -200vw;
		top: 60px;
		z-index: 998;
		padding: 150px 0 0 0;
		width: 100%;
	}

	.main-navigation ul:before {
		font-family: FontAwesome;
		content: '\f0d8';
		color: #2a2a2a;
		position: absolute;
		z-index: 999;
		top: 0;
		right: 15px;
		margin-top: -28px;
		font-size: 36px;
	}

	.home .main-navigation ul {
		margin: 0 auto;
	}

	.main-navigation li {
		float: none;
		border: none;
		padding: 0;
		width: 100%;
		display: block;
		font-weight: 600;
		border-right: none;
		border-left: none;
		line-height: 24px;
		height: auto;
		overflow: initial;
		margin: 0;
		padding: 0;
    }

	.main-navigation li:hover {
		background: transparent;
	}

	.main-navigation a {
		border: none;
		padding: 8px 24px !important;
		line-height: 36px !important;
		font-size: 22px !important;
		font-weight: 600;
		color: #fff !important;
		border: 1px solid transparent;
		border-bottom: 1px solid #000;
		border-top: 1px solid #444;
	}

	.main-navigation li:first-child a {
		border-top: 1px solid transparent;
		border-bottom: 1px solid #000;
		background: transparent;
		border-radius: 0;
	}

	.main-navigation li:last-child a {
		border-radius: 0 0 4px 4px;
		margin: 0 1px 1px 1px;
	}

	.content-area, #secondary {
		float: none;
		margin: 0 5%;
		width: 90%;
	}

	.site-main {
		margin: 0;
	}

}

@media ( max-width: 767px ) {

	#site-name {
		width: 60%;
		margin: 60px 30px 0 10px;
	}

	.site-title {
		text-align: center;
	}

	.site-tagline {
		font-size: 16px;
		text-align: center;
		width: auto;
		margin: 10px auto;
	}

	#feature-bar {
		font-size: 18px;
		line-height: 24px;
		padding: 5px 100px;
	}

	#feature-bar aside {
		margin: 0;
	}

	#feature-bar span {
		font-size: 20px !important;
	}

	#services ul,
	#packages ul {
		text-align: center;
	}

	#services ul li,
	#packages ul li {
		margin: 0 2% 3% 2%;
		width: 45.5%;
		max-width: initial;
		min-width: initial;
	}

	#services ul li:nth-of-type(3),
	#packages ul li:nth-of-type(3) {
		clear: both;
	}

	#services ul li a,
	#packages ul li a {
		max-width: initial;
		min-width: initial;
		padding: 0;
	}

	.entry-content {
		padding: 0 30px;
	}

	.one-quarter {
		width: 45.5%;
		margin: 4% 2% 0 2%;
	}

	.one-quarter:nth-of-type(2n+1) {
		clear: both;
	}

	.one-fifth {
		width: 45.5%;
		margin: 4% 2% 0 2%;
	}

	.gallery-columns-8 .gallery-item {
		max-width: 19%;
	}

}

@media ( max-width: 600px ) {

	#site-branding {
		float: none;
		display: block;
		text-align: center;
		margin: 5px 0 0 0;
	}

	#site-branding a, .home #site-branding a {
		width: 165px;
		height: 165px;
		float: none;
		position: relative;
		z-index: 999;
		display: inline-block;
	}

	#site-name {
	    width: 100%;
		margin: -10px 0 5px 0;
	}

	.site-title {
		margin: -3rem 0 0 0;
		padding-top: 1rem;
		line-height: 1rem;
	}

	.site-tagline {
		font-size: 14px;
		margin: 0;
	}

	#header-navigation li a, .home #header-navigation li a {
		font-size: 18px;
		padding: 0;
	}

	#header-navigation li a i, .home #header-navigation li a i {
		display: none;
	}

	#feature-bar {
		font-size: 15px;
		line-height: 22px;
		padding: 10px 40px;
	}

	#feature-bar span {
		font-size: 20px !important;
	}

	.home #page-content h2 {
		font-size: 24px;
	}

	.home #page-content button {
		padding: 0 5%;
		font-size: 18px;
	}

	#footer-column-1 {
		width: 28% !important;
	}

	#site-footer .widget ul li {
		margin: 5px 0 0 0;
		font-size: 13px;
	}

	#footer-column-2 {
		width: 63% !important;
	}

	#footer-column-3 {
		width: 95% !important;
	}

	#footer-credits img {
		height: 60px;
		width: auto;
	}

}

@media ( max-width: 480px ) {

	#site-branding {
		margin: 10px 0 0 0;
	}

	#site-branding a, .home #site-branding a {
		width: 150px;
		height: 150px;
	}

	.site-title {
		font-size: 2.1rem;
		line-height: 2.4rem;
		padding-left: 10px;
		padding-right: 10px;
	}

	.site-tagline {
		font-size: 0.9rem;
		line-height: 1.1rem;
		padding: 10px;
		margin: 0;
	}

	h1.entry-title {
		padding: 0.5rem 10px;
	}

	h2 {
		font-size: 1.6rem;
	}

	div.wpcf7 .nothing {
		justify-content: space-evenly;
	}

	div.wpcf7 label.inline {
		padding-right: 0;
	}

	div.wpcf7 label.inline.last {
		width: 100%;
		flex: 1 0 100%;
	}

	.feature-form {
		padding: 10px;
		margin: 1rem;
	}

	#feature-bar {
		font-size: 14px;
		line-height: 20px;
		padding: 12px 5px;
	}

	#feature-bar span {
		font-size: 18px !important;
	}

	#header-feature aside span {
		display: none;
	}

	#footer-column-1 {
		width: 95% !important;
	}

	#footer-column-1 aside {
		float: left;
		width: 46%;
		margin: 0 2%;
	}

	#footer-column-1 aside:first-child {
		float: right;
	}

	#site-footer .widget ul li {
		font-size: 14px;
	}

	#footer-column-2 {
		width: 95% !important;
	}

	#footer-column-3 {
		width: 95% !important;
	}

	#footer-credits img {
		height: 40px;
		width: auto;
	}

}

@media ( max-width: 420px ) {

	#site-branding a, .home #site-branding a {
		width: 120px;
		height: 120px;
	}

	#header-navigation li a, .home #header-navigation li a {
		font-size: 1.8rem;
	}

	#services ul li,
	#packages ul li {
		margin: 0 9% 3% 9%;
		width: 80%;
		max-width: initial;
		min-width: initial;
	}

	#services ul li,
	#packages ul li {
		clear: both;
	}

}

@media ( max-width: 360px ) {

	#header-navigation li a, .home #header-navigation li a {
		font-size: 14px;
	}

	#site-navigation {
		margin-top: 0;
	}

	.one-half {
		width: 80%;
		margin: 4% 10% 0 10%;
	}

	.one-third {
		width: 80%;
		margin: 4% 10% 0 10%;
	}

	.one-quarter {
		width: 80%;
		margin: 4% 10% 0 10%;
	}

	.one-fifth {
		width: 80%;
		margin: 4% 10% 0 10%;
	}

	.boxed {
		min-height: initial;
	}

	#footer-column-1 aside:first-child {
		clear: both;
		float: none;
	}

	#footer-column-1 aside {
		width: 84%;
		margin: 0 8%;
	}

}