* {
	  /* border: 1px solid red; */
	  position: relative;
	  z-index: 1;
	  box-sizing: border-box;
}

a {
   outline: 0;
   -o-transition: .2s ease-in-out;
    -ms-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

img {
	border: 0;	
}

.wp-block-image.w100,
.wp-block-image.w100 figure,
.wp-block-image.w100 img {
	width: 100%;
	height: auto;
}

html, body {
	height: 100%;	
}

html, body, p, ul, li {
	margin: 0;	
	font-family: Open Sans, Arial, sans-serif;
	color: #000000;
	font-weight: 300;
	font-size: 16px;
	text-rendering: optimizeLegibility;
}

li {
	margin-bottom: 5px;
}

body {
	background: #f7f7f7;
}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	font-family: Raleway, Arial, sans-serif;
}

strong {
	font-weight: 600;
}

section .titlebar {
	display: flex;
	flex-flow: row no-wrap;
	justify-content: flex-end;
	align-items: flex-end;
	
	padding: 10px 20px;
	color: #ffffff;
	font-size: 24px;
	margin-bottom: 15px;
}

section .titlebar a {
	font-family: Raleway, Arial, sans-serif;
	text-decoration: none;
	text-transform: uppercase;
	color: #ffffff;
	font-size: 36px;
	line-height: 36px;
	font-weight: 900;
	font-style: italic;
	letter-spacing: -1px;
	margin-left: 5px;
}

section .titlebar a::after {
	display: inline-block;
	content: url('../images/common/arw.png');
	margin-left: 7px;
}

section .titlebar.green {
	background: #106f3b;
}

section .titlebar.blue {
	background: #27aae2;
}

section .titlebar.red {
	background: #981e21;
}

section .titlebar.orange {
	background: #f8a23f;
}

a,
p a,
li a {
	color: #27aae2;
	font-weight: 600;
	text-decoration: none;
}

p a:hover,
li a:hover {
	text-decoration: underline;
}

a.button {
	display: inline-block;
	color: #ffffff;
	background: #000000;
	font-family: Raleway, arial, sans serif;
	font-size: 14px;
	font-weight: 500;
	padding: 5px 15px;
	text-decoration: none;
	text-transform: uppercase;
}

a.button.big {
	display: inline-block;
	color: #ffffff;
	background: #000000;
	font-family: Raleway, arial, sans serif;
	font-size: 24px;
	font-style: italic;
	font-weight: 900;
	padding: 2px 10px;
	text-decoration: none;
}

a.button.big::after {
	display: inline-block;
	content: url('../images/common/arw-s.png');
	height: 15px;
	width: auto;
	margin-left: 2px;
}

a.button.orange {
	background-color: #f8a23f;
}

a.button.orange:hover {
	background-color: #000000;
}

a.button.green {
	background-color: #106f3b;
}

header {	
	display: flex;
	flex-flow: row no-wrap;
	justify-content: space-between;
	align-items: stretch;
	
	background: #ffffff;
	padding: 15px;
	z-index: 1000;
}

header .right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-end;
}

section {
	padding: 25px;
}

.padding25 {
	padding: 25px;
}

.tileimages figure {
	text-align: center;
}

.tileimages img {
	width: 100%;
	max-width: 200px;
	height: auto;
}

.tileimages figcaption {
	text-align: center;
}

/* WORDPRESS elements */

.wp-block-button {
	display: inline-block;
	text-decoration: none;
	text-transform: uppercase;
}

.wp-block-button__link {
	color: #ffffff;
	font-family: Raleway, arial, sans serif;
	font-size: 14px;
	font-weight: 500;
	border-radius: 0;
	padding: 5px 15px;
}

.wp-block-button__link:hover {
	background-color: #000000;
}

/* End WORDPRESS elements */

/* Primary Navigation */

#prinavmobile {
	display: none;
}

/* Nav Icon */
	
#nav-icon {
	width: 35px;
	height: 25px;
	position: relative;
	margin: 25px 25px 18px 15px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
	z-index: 1000;
}

#nav-icon span {
	display: block;
	position: absolute;
	height: 5px;
	width: 100%;
	background: #cccccc;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

#nav-icon span:nth-child(1) {
	top: 0px;
}

#nav-icon span:nth-child(2),
#nav-icon span:nth-child(3) {
	top: 10px;
}

#nav-icon span:nth-child(4) {
	top: 20px;
}

#nav-icon.open span:nth-child(1) {
	top: 10px;
	width: 0%;
	left: 50%;
}

#nav-icon.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

#nav-icon.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#nav-icon.open span:nth-child(4) {
	top: 10px;
	width: 0%;
	left: 50%;
}

/* end Nav Icon */

#dropnav {
	display: flex;
	flex-flow: column no-wrap;
	justify-content: center;
	align-items: center;
	
	position: fixed;
	top: 0;
	left: 0;
	background: #ffffff;
	z-index: 900;
	width: 100%;
	height: 0px;
	opacity: 1;
	overflow: hidden;
	z-index: 900;
}

#dropnav ul {
	display: block;
	padding: 0;
}

#dropnav li {
	display: block;
	text-align: center;
	font-size: 28px;
	font-weight: 400px;
	padding: 5px 25px;
}

#dropnav li a {
	text-decoration: none;
	text-transform: uppercase;
	color: #106f3b;
}

#dropnav li .superlink a {
	padding: 5px 25px;
}

#dropnav li a:hover {
	color: #f8a23f;
}

#dropnav li .superlink a {
	color: #ffffff;
	font-size: 24px;
}

#dropnav li .superlink {
	padding: 15px 25px;
}

#prinav ul {
	text-align: center;
}

#prinav ul li {
	display: inline-block;
	margin-left: 20px;
	z-index: 1000;
}

#prinav ul li a {
	color: #106f3b;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 18px;
	z-index: 1000;
}

#prinav ul li a:hover {
	color: #f8a23f;
}

#prinav ul.subnav {
	display: none;
	position: absolute;
	top: 20px;
	right: 0;
	background: #ffffff;
	opacity: 0.9;
	padding: 30px 15px 15px 10px;
	z-index: 900;
}

#prinav ul.subnav li {
	display: block;
	text-align: right;
	white-space: nowrap;
	padding: 0 0 5px 0;
}

#prinav ul.subnav li a {
	color: #000000;
	text-transform: none;
	font-weight: 400;
	font-size: 16px;
}

#prinav ul.subnav li a:hover {
	color: #f8a23f;
}

/* END Primary Navigation */
/* Hero */

section.hero {
	padding: 0;
}

body.interior section.hero {
	height: 387px;
	overflow: hidden;
}

//
body.interior section.hero .slider,
body.interior section.hero .slide {
	height: 100%;
}

section.hero .slider {
	display: block;
}

section.hero .slide {	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	overflow: hidden;
	
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

section.hero .slide .panel {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 200;
	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	padding: 0 15px;
}

section.hero .slide .bg {
	width: 100%;
	min-width: 1366px;
	height: auto;
	z-index: 100;
}

section.hero .slide .panel h1 {
	font-size: 60px;
	font-weight: 900;
	color: #ffffff;
	text-shadow: 3px 3px #000000;
	text-transform: uppercase;
	letter-spacing: -1px;
	line-height: 55px;
	margin: 10px 0;
}

section.hero .slide .panel .intro {
	font-family: Raleway, arial, sans serif;
	font-size: 36px;
	font-weight: 400;
	color: #ffffff;
	text-shadow: 3px 3px #000000;
	text-transform: uppercase;
	letter-spacing: -1px;
	line-height: 36px;
	margin: 0;
}

section.hero .slide .panel h2 {
	font-size: 16px;
	font-weight: 400;
	color: #ffffff;
	text-transform: uppercase;
	background: #000000;
	padding: 5px 10px;
}

section.hero .slidenav {
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -34px;
}

section.hero #slidetrack {
	display: block;
	position: absolute;
	bottom: 15px;
	left: 0;
	text-align: center;
	width: 100%;
}

section.hero .slidespot {
	display: inline-block;
	height: 15px;
	width: 15px;
	cursor: default;
	background: transparent url('../images/common/slide-nav-off.png') no-repeat;
}

section.hero .slidespot.on {
	background: transparent url('../images/common/slide-nav-on.png') no-repeat;
}

/* interior page hero */
body.interior section.hero .slide .panel {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: stretch;
    align-items: center;
	
    padding: 0 10%;
}

body.interior section.hero .slide .panel .content {
	border-left: 55px solid #27aae2;
	padding-left: 10px;
}

body.interior section.hero .slide .fade {
	background: linear-gradient(90deg, rgba(0,0,0,0.5),rgba(0,0,0,0));
	z-index:200;
	position:absolute;
	top:0;
	left:0;
	height:100%;
	width:100%;
}

/* END Hero */
/* Banner */

.banner {	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.banner h1 {
	color: #106f3b;
	font-weight: 300;
	font-size: 36px;
	text-transform: uppercase;
	margin: 10px 0;
	text-align: center;
}

.banner .date {
	font-weight: 700;
	margin-bottom: 5px;
	text-align: center;
}

.banner .desc {
	margin-bottom: 10px;
	text-align: center;
	max-width: 800px;
}

.banner .desc p {
	margin-bottom: 15px;
}

/* END Banner */
/* Articles Grid */

section.articles .grid {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: stretch;
}

section.articles .grid .col {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;
	
	max-width: 50%;
}

section.articles .grid .col:first-child {
	margin-right: 5px;
}

section.articles .grid .col:last-child {
	margin-left: 5px;
}

section.articles .grid article {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: stretch;
	
	background: #ffffff;
	padding: 10px;
	margin-bottom: 10px;
	height: 100%;
}

section.articles .grid article.big,
section.articles .grid article .content {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	
	height: 100%;
}

section.articles .grid article img,
section.articles .grid article .image {
	width: 100%;
	height: auto;
}

section.articles .grid article .image,
section.articles .grid article .content {
	width: 50%;
}

section.articles .grid article.big .image,
section.articles .grid article.big .content {
	width: 100%;
}

section.articles .grid article .content {
	padding: 15px 15px 15px 35px;
}

section.articles .grid article .content h2 {
	color: #106f3b;
	font-weight: 400;
	font-size: 28px;
	text-transform: uppercase;
	margin: 10px 0;
}

section.articles .grid article .content a {
	text-decoration: none;
}

section.articles .grid article.big .content h2 {
	font-size: 36px;
}

section.articles .grid article .content .date {
	font-style: italic;
	font-size: 12px;
	margin-bottom: 10px;
}

a.readmore {
	color: #f8a23f;
	margin: 15px 0 0 auto;
	text-decoration: none;
	text-transform: uppercase;
	font-style: italic;
	font-size: 14px;
	font-weight: 700;
}

a.readmore::after {
	display: inline-block;
	content: url('../images/common/arw-xs-orange.png');
	height: 14px;
	width: auto;
	margin-left: 2px;
}

section.articles .grid article .content a.readmore:hover {
	text-decoration: underline dotted;
}

/* END Articles Grid */
/* Feature sections */

section.feature {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: stretch;
	
	background: #ffffff;
}

section.feature.stack {
	flex-direction: column;
}

section.feature .stack {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	
	width: 100%;
}

section.feature .image,
section.feature .content {
	width: 50%;
	background: #27aae2;
	overflow: hidden;
}

section.feature.red .content {
	background: #981e21;
}

section.feature.stack .image,
section.feature.stack .content{
	width: 100%;
	background: #ffffff;
}

section.feature .image {
	background: #000000;
}

section.feature .image img {
	width: 100%;
	height: auto;
	display: block;
}

section.feature .content {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-end;
}

section.feature.stack .content {
	justify-content: center;
	align-items: center;
	padding: 25px;
}

section.feature .content .panel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	height: 100%;
	padding: 0 25px 25px 25px;
	max-width: 650px;
	text-align: center;
	margin: 0 auto;
}

section.feature .content .panel,
section.feature .content .panel p,
section.feature .content .panel * {
	color: #ffffff;
}

section.feature .content .panel h2,
section.feature.stack .content h2 {
	font-size: 36px;
	font-weight: 700;
	font-style: italic;
}

section.feature.stack .content h2 {
	color: #333333;
	font-size: 48px;
	margin: 25px 0;
	text-align: center;
}

section.feature.stack .content p {
	margin: 0 0 25px 0;
	font-size: 18px;
	line-height: 32px;
	font-weight: 300;
	text-align: center;
	font-style: italic;
	max-width: 850px;
}

section.feature .content .panel .copy {
	margin-top: 15px;
}

section.feature .content .ctabut {
	padding: 25px;	
}

/* END Feature sections */

/* Events section */

section.events .grid {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: stretch;
	
	width: 100%;
}

section.events .grid article {
	text-align: center;
	
	background: #ffffff;
	width: 24.5%;
	padding: 25px;
}

section.events .grid article h2 {
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
}

section.events .grid article .datetime {
	font-size: 13px;
	color: #981e21;
	font-weight: 400;
	margin: 10px 0;
	line-height: 15px;
}

section.events .grid article .description {
	font-size: 16px;
	font-weight: 300;
	line-height: 18px;
	margin-bottom: 25px;
}

/* END Events section */

/* page layout */

section.page {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: stretch;
}

body.interior section.page {
	max-width: 1600px;
	margin: 0 auto;
}

/* end page layout */

/* Article content */

section.page .article {
	width: 100%;
	padding: 25px 50px 50px 0;
}

section.page .article h1 {
	font-size: 60px;
	font-weight: 400;
	color: #006633;
}

section.page .article h2,
section.page .article h2 a {
	font-size: 24px;
	font-weight: 400;
	color: #981e21;
	margin: 15px 0;
	text-decoration: none;
}

section.page .article h2 a:hover {
	color: #27aae2;
}

section.page .article p {
	margin: 15px 0;
}

section.page .article h5 {
	font-size: 21px;
	font-weight: 600;
}

section.page .article h5 a {
	text-decoration: none;
	color: #106f3b;
}

section.page .article h5 a:hover {
	color: #f8a23f;
}

/* end Article content */

/* Sidebar */

section.page .sidebar {
	width: 385px;
	min-width: 385px;
}

section.page .sidebar .titlebar {
    font-size: 18px;
    line-height: 18px;
}

section.page .sidebar .titlebar a {
    font-size: 24px;
    line-height: 24px;
}

section .titlebar a::after {
    content: url('../images/common/arw-s.png');
	margin-left: 5px;
}

section.page .sidebar .item {
	margin-bottom: 15px;
}

section.page .sidebar .item .image img {
	width: 100%;
	height: auto;
}

section.page .sidebar .module.blog h1 {
	font-size: 28px;
	font-weight: 400;
	color: #106f3b;
	text-transform: uppercase;
	margin: 10px 0 5px 0;
}

section.page .sidebar .module.blog a,
section.page .sidebar .module.blog a h1 {
	text-decoration: none;
}

section.page .sidebar .module.blog .date {
	font-style: italic;
	font-size: 12px;
	font-weight: 300;
	margin: 0;
}

section.page .sidebar .module.blog .excerpt {
	margin: 10px 0;
}

section.page .sidebar .module.blog .cta {
	margin: 5px 0 15px 0;
	text-align: right;
}

section.page .sidebar .module.events {
	text-align: center;
}

section.page .sidebar .module.events .item {
	padding: 25px;
	background: #ffffff;
}

section.page .sidebar .module.events h2 {
	font-size: 24px;
	font-weight: 700;
	color: #333333;
	text-transform: uppercase;
}

section.page .sidebar .module.events .datetime {
	font-size: 14px;
	font-weight: 400;
	color: #981e21;
	margin: 10px 0;
}

section.page .sidebar .module.events .description {
	margin: 15px 0 25px 0;
}

/* End Sidebar */

/* mailing list signup */

section.mailinglist {
	display: flex;
	flex-flow: row no-wrap;
	justify-content: center;
	align-items: center;
	
	background: #000000 url('../images/newsletter-bg.jpg') no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

section.mailinglist .panel {
	display: inline-block;
	text-align: center;
	margin: 75px 0;
}

section.mailinglist .panel h2 {
	font-size: 60px;
	font-weight: 900;
	color: #ffffff;
	text-shadow: 3px 3px #000000;
	text-transform: uppercase;
	letter-spacing: -1px;
	line-height: 55px;
	margin: 10px 0;
}

section.mailinglist .panel p {
	font-size: 30px;
	font-weight: 400;
	color: #ffffff;
	text-shadow: 3px 3px #000000;
	line-height: 34px;
	margin: 10px 0 50px 0;
	max-width: 800px;
}

section.mailinglist .form {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: stretch;
}

section.mailinglist .form input {
	display: inline-block;
	height: 50px;
	border: 0;
	color: #999999;
	font-weight: 300;
	font-size: 24px;
	text-align: center;
	width: 100%;
	max-width: 500px;
}

section.mailinglist .form .button {
	height: 50px;
	line-height: 45px;
}

section.mailinglist #loading {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: rgba(0, 0, 0, 0.7) url('../images/common/loading.gif') no-repeat center center;
	display: none;
}

section.mailinglist .errorMessage,
section.mailinglist .successMessage {
	display: none;
	padding: 10px 25px;
	margin-bottom: 15px;
}

section.mailinglist .errorMessage p,
section.mailinglist .successMessage p {
	font-size: 16px;
	text-shadow: none;
	margin: 0;
}

section.mailinglist .errorMessage {
	background: #CC0000;
	color: #ffffff;
}

section.mailinglist .successMessage {
	background: #009900;
	color: #ffffff;
}

/* END mailing list signup */
/* Footer */

footer {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: stretch;
	
	background: #333333;
	color: #ffffff;
	padding: 50px 25px 50px 50px;
}

footer h4 {
	font-weight: 300;
	font-size: 21px;
	margin-left: 40px;
	padding: 15px 0 5px 0;
}

footer img.logo {
	width: 100%;
	height: auto;
	max-width: max-content;
}

footer .col {
	width: 25%;
}

footer .col.wrap {
	width: 75%;
	column-count: 3;
}

footer .col .contactinfo {
	margin: 25px;
}

footer .col .contactinfo p {
	color: #ffffff;
	font-size: 14px;
	font-weight: 300px;
	margin-bottom: 15px;
}

footer .col .contactinfo p a {
	color: #ffffff;
	text-decoration: none;
}

footer .col .contactinfo p a:hover {
	text-decoration: underline;
}

footer .col .contactinfo p strong {
	font-weight: 600;
	line-height: 25px;
}

footer .col.wrap ul {
	list-style-type: none;
	margin-bottom: 15px;
	
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}

footer .col.wrap ul.social li {
	display: inline-block;
}

footer .col.wrap ul.social li i {
	font-size: 34px;
	margin-right: 5px;
}

footer .col.wrap ul li a {
	font-size: 14px;
	font-weight: 300;
	color: #ffffff;
	text-decoration: none;
}

footer .col.wrap ul li a:hover {
	color: #f8a23f;
}

footer .col.wrap ul li.head a {
	font-size: 18px;
	font-weight: 600;
}

.subfooter {
	background: #000000;
	font-weight: 300;
	font-size: 12px;
	color: #999999;
	text-align: center;
	padding: 25px;
}

.subfooter a {
	color: #ffffff;
	text-decoration: none;
}

.subfooter a:hover {
	text-decoration: underline;
}

/* END Footer */

@media screen and (max-width: 1024px) {
	
	body {
		padding-top: 100px;
	}
	
	header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 135px;
		z-index: 1000;
	}
	
	header img.logo {
		height: 100%;
		width: auto;	
	}
	
	#prinavmobile {
		display: block;
	}
	
	#prinav,
	#superlink {
		display: none;
	}
	
	section.articles .grid article.big .content h2 {
		font-size: 28px;
	}
	
	section.articles .grid article .content h2 {
		font-size: 24px;
	}
	
	section.feature .content .panel h2, 
	section.feature.stack .content h2 {
		font-size: 28px;
	}
	
	section.events .grid {
		flex-flow: row wrap;
	}
	
	section.events .grid article {
		width: 49.5%;
		margin-bottom: 10px;
	}
	
	section.feature.split .image img {
		width: auto;
		height: 100%;
	}
	
	section.page {
		flex-flow: column nowrap;
	}
	
	section.page .sidebar {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: stretch;
		
		margin-top: 50px;
		width: 100%;
	}
	
	section.page .sidebar .module {
		width: 50%;
		padding: 0 15px;
	}
	
	section.page .article {
		padding: 25px 0 50px 0;
	}
	
} /* 1024 */

@media screen and (max-width: 768px) {
	
	section.articles .grid {
		flex-direction: column;
	}
	
	section.articles .grid .col {
		max-width: 100%;
	}
	
	section.articles .grid .col:first-child {
		margin-right: 0;
	}
	
	section.articles .grid .col:last-child {
		margin-left: 0;
	}
	
	footer .col {
		width: 33%;
	}
	
	footer .col.wrap {
		width: 66%;
		column-count: 2;
	}
	
	section.page .sidebar .module {
		width: 100%;
		padding: 0;
	}
	
	section.hero .slide .panel h1 {
		font-size: 48px;
		line-height: 48px;
		margin: 0;
	}
	
	section.hero .slide .panel .intro {
		font-size: 32px;
		line-height: 32px;
	}
	
} /* 768 */

@media screen and (max-width: 640px) {
	
	section.hero .slide .panel .intro {
		font-size: 28px;
		line-height: 28px;
	}
	
	section.hero .slide .panel h1 {
		font-size: 48px;
		line-height: 44px;
	}
	
	section.hero .slide .panel h2 {
		font-size: 14px;
	}

	section.feature {
		flex-direction: column;
	}
	
	section.feature.split.reversed .content {
		order: 2;
	}
	
	section.feature.split.reversed .image {
		order: 1;
	}
	
	section.feature .image, section.feature .content {
		width: 100%;
	}
	
	section.events .grid article {
		width: 100%;
	}

	footer .col {
		width: 40%;
	}
	
	footer .col.wrap {
		width: 60%;
		column-count: 1;
		text-align: center;
	}
	
	section.page .article h1 {
		font-size: 48px;
	}
	
} /* 640 */

@media screen and (max-width: 480px) {
	
	section.hero,
	section.hero .slider,
	section.hero .slider .slide {
		height: 100%;
	}
	
	section.hero .slide .bg {
		width: auto;
		height: 100%;
	}

	section.hero .slide .panel .intro {
		font-size: 18px;
		line-height: 18px;
	}
	
	section.hero .slide .panel h1 {
		font-size: 32px;
		line-height: 32px;
		margin: 2px 0;
	}
	
	section.hero .slide .panel h2 {
		font-size: 11px;
	}
	
	section .titlebar {
		font-size: 18px;
		line-height: 28px;
	}
	
	section .titlebar a {
		font-size: 28px;
		line-height: 28px;
	}
	
	.banner h1 {
		font-size: 28px;
	}
	
	.banner .date {
		font-size: 14px;
	}
	
	section.articles .grid article {
		flex-direction: column;
	}
	
	section.articles .grid article .image {
		text-align: center;
	}
	
	section.feature.stack .content p {
		font-size: 16px;
		line-height: 30px;
	}
	
	section.mailinglist .panel h2 {
		font-size: 52px;
		line-height: 48px;
	}

	section.mailinglist .panel p {
		font-size: 18px;
		line-height: 21px;
		margin-bottom: 15px;
	}
	
	section.mailinglist .form input {
		width: auto;
		font-size: 16px;
		height: 35px;
	}
	
	section.mailinglist .form .button {
		height: 35px;
		line-height: 32px;
	}
	
	footer {
		flex-flow: column nowrap;
	}
	
	footer,
	footer .col,
	footer .col.wrap {
		width: 100%;
		text-align: center;
	}
	
	footer .col.wrap {
		padding-top: 50px;
	}
	
	footer .col.wrap ul {
		padding: 0;
	}
	
	section.articles .grid article .image,
	section.articles .grid article .content {
		width: 100%;
	}
	
} /* 480 */

@media screen and (max-width: 420px) {
	
	#dropnav li {
		font-size: 22px;
		font-weight: 400;
	}

	section .titlebar {
		font-size: 16px;
		line-height: 22px;
	}
	
	section .titlebar a {
		font-size: 22px;
		line-height: 22px;
	}
	
	section .titlebar a::after {
		content: url('../images/common/arw-s.png');
	}
	
	section.articles .grid article .content {
		padding: 15px;
	}
	section.articles .grid article.big .content h2,
	section.articles .grid article .content h2	{
		font-size: 21px;
		font-weight: 500;
	}
	
	section.events .grid article h2 {
		font-size: 21px;
	}
	
	section.feature .content .ctabut {
		margin: 0 auto;
	}
	
	section.feature .content .panel h2, 
	section.feature.stack .content h2 {
		font-size: 24px;
	}
	
	section {
		padding: 10px;
	}
	
	section.page .sidebar {
		min-width: 100%;
	}
	
} /* 420 */