@media only screen and ( min-width: 2560px ) {

	body {
		font-size: 30px !important;
	}

	.container {
		width: 1800px;
	}

	.site-title img {
		max-width: 240px;
	}

	#site-functions {
		width: 960px;
	}

	.main-navigation ul {
		float: right;
	}

	.main-navigation li {
		padding: 0 1em;
	}

	.main-navigation li a {
		font-size: 1.5em;
	}

	.search-field {
		font-size: 24px;
		width: 870px;
		line-height: 60px;
	}

	.search-submit {
		width: 60px;
	}

	button, input[type="button"], input[type="reset"], input[type="submit"] {
		font-size: 24px;
		line-height: 58px;
	}

	#primary {
		margin-top: 240px;
	}

	#intro {
		margin-top: 240px;
	}

	#homepage-headline h1 {
		font-size: 90px;
	}

	div.wpcf7 .placeholder {
		line-height: 54px;
		padding: 0 16px;
	}

	div.wpcf7 input[type="text"], div.wpcf7 input[type="email"], div.wpcf7 input[type="password"], div.wpcf7 input[type="tel"], div.wpcf7 textarea, div.wpcf7 select {
		font-size: 24px;
		line-height: 54px;
		padding: 0 16px;
	}

	input[type="text"],
	input[type="email"],
	input[type="url"],
	input[type="password"],
	input[type="number"],
	input[type="tel"],
	input[type="range"],
	input[type="date"],
	input[type="month"],
	input[type="week"],
	input[type="time"],
	input[type="datetime"],
	input[type="datetime-local"],
	input[type="color"],
	textarea {
		padding: 0 16px;
		height: 54px;
		line-height: 54px;
	}

	textarea {
		height: 480px;
	}

	.woocommerce table.shop_attributes th {
		width: 240px;
	}

	#colophon {
		font-size: 24px;
	}

}





@media only screen and ( max-width: 1279px ) {

	#homepage-headline h1 {
		font-size: 60px;
	}

}





@media only screen and ( max-width: 1199px ) {

	#homepage-headline h1 {
		font-size: 48px;
	}

}





@media only screen and ( min-width: 992px ) {

	.main-navigation li a {
		font-size: 1.2em;
	}

}





@media only screen and ( max-width: 991px ) {

	/**
	 * Bootstrap 'row' with equal height columns isn't as
	 * responsive as we would like, so we remove that here...
	 *
	 */
	.row-eq-height {
		display: block;
	}

	.site-branding {
		position: absolute;
		left: 50%;
		top: -35px;
		width: 90px;
		transform: translateX(-50%);
		margin-top: 0;
	}

	nav#primary-navigation-left, nav#primary-navigation-right {
		height: 80px;
		padding: 0;
	}

	nav#primary-navigation-left li a,
	nav#primary-navigation-right li a {
		font-size: 16px;
		height: 60px;
	}

	#intro {
		width: 100%;
	}

	#homepage-headline h1 {
		font-size: 42px;
	}

	#homepage-features .widget-inner {
		margin: 0.25em;
		padding: 0.5em 1em;
	}

}





@media only screen and ( min-width: 768px ) and ( max-width: 991px ) {

	#homepage-features aside:nth-of-type(3) {
		width: 100%;
	}

}





@media only screen and ( max-width: 768px ) {

	.site-title img {
		max-height: 150px;
	}

	.main-navigation li a {
		font-size: 1em;
	}

	.search-field {
		width: 400px;
	}

	#intro {
		margin-top: 150px;
	}

	#homepage-headline h1 {
		font-size: 36px;
	}
	
	#homepage-features .widget-inner {
		padding: 1em 2em;
		text-align: left;
	}

	#homepage-features .widget-inner button {
		position: absolute;
		top: 10px;
		right: 10px;
		margin: 0;
	}

	.woocommerce #content div.product div.images,
	.woocommerce div.product div.images,
	.woocommerce-page #content div.product div.images,
	.woocommerce-page div.product div.images {
		width: 100%;
	}

	.woocommerce #content div.product div.summary,
	.woocommerce div.product div.summary,
	.woocommerce-page #content div.product div.summary,
	.woocommerce-page div.product div.summary {
		width: 100%;
	}

}





@media only screen and ( min-width: 680px ) {
	
	.not-on-mobile {
		display: none !important;
	}

}




@media only screen and ( max-width: 679px ) {

	body, button, input, select, textarea {
		font-size: 20px;
	}

	body.custom-background {
		background-position: center 170px !important;
		background-size: 125% !important;
	}

	nav#top-navigation .menu-top-menu-right-container {
		float: none;
	}

	nav#top-navigation .menu-top-menu-left-container, nav#top-navigation .menu-top-menu-right-container {
		width: inherit;
	}

	nav#top-navigation .menu-top-menu-right-container ul {
		float: none;
	}

	nav#top-navigation li {
		float: none;
		display: inline-block;
		width: 48%;
	}

	nav#top-navigation li a i {
		border-left: none;
		padding-left: 0;
	}

	#masthead {
		height: 90px;
	}

	.site-branding {
		top: 5px;
		width: 100%;
		margin: 0;
	}

	.site-branding img {
		margin-top: 0;
		max-height: 80px;
	}

	.menu-toggle,
	.main-navigation.toggled ul {
		display: block;
		width: 100%;
		height: 40px;
		line-height: 40px;
		margin: 0;
		font-size: 1em;
		position: relative;
		z-index: 999;
	}
	
	a.site-description {
		margin: 50px 0 0 0;
		font-size: 26px;
		width: 100%;
	}

	#primary-navigation {
		display: none;
	}

	#main {
		background: transparent;
		padding: 15px;
	}

	.home #main {
		padding: 30px;
	}

	#primary {
		text-align: center;
	}

	#page-features aside:first-child {
		border-top: none;
	}

	#page-features aside {
		float: none !important;
		border: none !important;
		text-align: center !important;
		width: 100% !important;
		height: auto !important;
		padding: 1em 0 0 0!important;
	}

	.wp-show-posts-image.wpsp-image-left {
		float: none;
		margin-right: 0;
	}

	.wp-show-posts-image img {
		margin: 0.5em 0 !important;
	}

	#page-features .widget-title {
		position: static;
		top: initial;
		left: initial;
	}

	#page-features h1,
	#page-features h2,
	#page-features h3 {
		margin-top: 0.5em !important;
		margin-bottom: 0.25em !important;
	}

	#page-features aside ul {
		margin-bottom: 0;
	}

	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product,
	.woocommerce-page[class*=columns-] ul.products li.product,
	.woocommerce[class*=columns-] ul.products li.product {
		margin: 0;
	}

	#page-features .alignleft,
	#page-features .alignright {
		margin: 0.5em auto !important;
		float: none !important;
		clear: none !important;
		display: block !important;
	}

	.entry-content .pull-right img,
	.entry-content .alignright img {
		margin-left: 0;
	}

	.product-type-simple form.cart {
		float: none;
		height: 120px;
	}

	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last,
	.woocommerce-page form .form-row-first,
	.woocommerce-page form .form-row-last {
		width: 100%;
		float: none;
		text-align: left;
	}

	.woocommerce form .form-row .select2-container {
		text-align: left;
	}

	#billing_country
	#shipping_country {
		width: 100%;
		float: none;
		text-align: left;
	}

	#billing_address_1_field,
	#shipping_address_1_field {
		text-align: left;
	}

	#billing_city_field,
	#shipping_city_field {
		width: 100%;
		float: none;
		text-align: left;
	}

	#billing_state_field,
	#shipping_state_field {
		width: 100%;
		float: none;
		text-align: left;
	}

	#billing_postcode_field,
	#shipping_postcode_field {
		width: 100%;
		float: none;
		margin-left: 0;
		text-align: left;
	}

	.woocommerce table.shop_table th,
	.woocommerce table.shop_table td {
		padding: 5px;
	}

	.woocommerce form .form-row textarea {
		height: 8em;
	}

	.woocommerce .cart-extra-fee .description {
		line-height: 1.2 !important;
		padding-bottom: 1em !important;
	}

	.woocommerce .cart-extra-fee label {
		line-height: 1.2 !important;
		display: block !important;
	}

	.woocommerce .cart-extra-fee p {
		margin-left: 25px;
	}

	.woocommerce form .form-row label input {
		margin-left: -25px !important;
	}

	.not-on-mobile {
		display: none !important;
	}

}





@media only screen and ( max-width: 599px ) {

	#homepage-headline h1 br {
		display: none;
	}

	.not-on-mobile {
		display: none !important;
	}

}





@media only screen and ( max-width: 479px ) {

	.site-title img {
		max-height: 120px;
	}

	button {
		font-size: 0.85em;
		padding: 0 1em;
		line-height: 30px;
	}

	.search-field {
		width: 135px;
		line-height: 30px;
	}

	.search-submit {
		line-height: 28px;
	}

	.main-navigation {
		margin-top: 10px;
	}

	#homepage-headline h1 {
		font-size: 36px;
	}

	.not-on-mobile {
		display: none !important;
	}

}





@media only screen and ( max-width: 375px ) {

	.search-field {
		width: 99px;
	}

	.not-on-mobile {
		display: none !important;
	}

}