/**
 * Custom Stylesheet
 * 
 * @package    Simpli
 * @category   Theme
 * @author     GoCouncil Team
 * @copyright  Copyright (c) GoCouncil Ltd
 */

/*------------------------------------------------------------------------------
 * General
 *----------------------------------------------------------------------------*/

.container {
	width: 80%;
    max-width: 1675px;
}

body {
	font-family: 'NewHero-Regular', Helvetica, Arial, sans-serif;
	color: #2a2d2a;
	background-color: #fff;
	font-size: 20px;
}

p {
    margin: 0 0 30px;
    line-height: 1.6em;
}

ul {
    margin: 0;
    padding: 0 0 0 20px;
}

li {
    padding: 0 0 20px 0;
}

a {
	color: #2a2d2a;
}
a:hover,
a:focus {
	color: #2a2d2a;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin-bottom: 20px;
	line-height: 1.3em;
}
h1,
h1 a {
	font-size: 62px;
	color: #2a2d2a;
	text-transform: none;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif;
}
h2,
h2 a {
	font-size: 45px;
	color: #2a2d2a;
	font-family: 'NewHero-ExtraBold', Helvetica, Arial, sans-serif;
}
h3,
h3 a {
	font-size: 34px;
	color: #2a2d2a;
	font-family: 'NewHero-ExtraBold', Helvetica, Arial, sans-serif;
}
h4,
h4 a {
	font-size: 24px;
	color: #2a2d2a;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif;
}
h5,
h5 a {
	font-size: 22px;
	color: #2a2d2a;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif;
}
h6,
h6 a {
	font-size: 20px;
	color: #2a2d2a;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif;
}


.login-form .form-title,
.reset-pwd-form .form-title {
	display: none;
}
.oc-new-submission-forms {
	display: flex;
	flex-wrap: wrap;
	margin-left: -2%;
	margin-right: -2%;
	margin-top: -2%;
}
.oc-new-submission-forms .form-item {
	background: #d5edef;
	border: none;
	border-radius: 1px;
	margin: 20px 2%;
	padding: 20px 20px 54px;
	position: relative;
	width: 46%;
}
.oc-new-submission-forms .form-item h3 {
	margin-top: 0;
}
.oc-new-submission-forms .form-item a {
	bottom: 20px;
	position: absolute;
}
.oc-new-consent .ctrl.name-custom_address {
	font-size: 0.9em;
}
.signup-help {
	font-size: 0.9em;
	padding: 15px;
}
.oc-registration-form .form-header,
.oc-registration-form .ctrl.name-instructions {
	display: none;
}
.oc-bca-contact-details .title {
	display: none;
}
.oc-connected-councils {
	margin-bottom: 0;
}
.oc-registration-form.form.full-width-ctrls .ctrl.ctrl-checkbox-single .ctrl-field, 
.oc-registration-form.form .ctrl.ctrl-checkbox-single.full-width .ctrl-field {
	width: auto;
}

.expanding-text h3 {
	background: #F7F7F7;
	border: 1px solid #DDD;
	font-size: 20px;
	font-weight: normal;
	margin: 0 0 -1px 0;
	padding: 10px;
}
.expanding-text > div {
	margin-bottom: 20px;
	padding: 20px;
}
.expanding-text > div > :last-child {
	margin-bottom: 0;
}


/*------------------------------------------------------------------------------
 * Header
 *----------------------------------------------------------------------------*/

#header .is-sticky #headerWrapper {
    background: #2a2d2a;
    z-index: 999;
    box-shadow: 0 10px 15px rgb(0 0 0 / 5%);
}

#header #headerWrapper {
    padding: 40px 0 30px 0;
}
    
#header .is-sticky .header-main {
	height: auto;
}

#header {
	background-color: #2a2d2a;
    color: #2a2d2a;
}

#header .header-logo {
    padding: 0;
    margin: 10px 0;
    width: 100%;
    height: auto;
}

#header .header-menu {
    padding: 0;
    margin: 20px 0 0 0;
    width: 100%;
}

#header .header-toolbar {
    background: transparent;
}

#header .header-main {
    height: auto;
}

#header .header-menu a {
	font-family: 'NewHero-SemiBold', Helvetica, Arial, sans-serif;
    color: #fff;
    font-weight: 600;
    text-transform: inherit;
    font-size: 20px;
    position: relative;
	text-decoration: none;
}

#header .header-menu > ul > li > a {
    height: auto;
    line-height: inherit;
    margin-bottom: 0;
    z-index: 100;
}

#header .custom-menu a:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #fff;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

#header .custom-menu a:hover::before {
  transform: scaleX(1);
}

#header .custom-menuu a:hover {
    text-decoration: none;
}

#header .custom-menu > ul {
	display: flex;
    justify-content: space-between;
}

#header .custom-menu > ul > li.current > a {
    border-bottom: 2px solid #fff;
    font-weight: 600;
}

#header .custom-menu > ul > li.current > a:before {
    display: none;
}

#header .custom-menu > ul > li {
	padding: 20px;
}

#header .custom-menu > ul > li:last-child {
    padding-right: 0;
}

#header .custom-menu > ul > li:first-child {
    padding-left: 0;
}

#header .custom-menu ul ul li.level-2 .menu-down {
    margin-left: 5px;
    position: absolute;
    right: 8px;	
}



/*------------------------------------------------------------------------------
 * Home Page
 *----------------------------------------------------------------------------*/

#banner {
	background: #2a2d2a;
	max-height: 580px;
}

#banner img {
	min-height: 510px;
	object-fit: contain;
}

#banner .banner-container.container {
	display: flex;
}

#banner .content h1 {
	color: #fff;
	font-size: 62px;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif;
}

#banner,
#banner .row {
    display: flex;
    color: #fff;
    
}

#banner .content {
    display: flex;
    align-self: center;
    padding: 0;
}

#banner .image-content {
	transform: scale(1.3, 1.3) translateX(60px);
}



/*------------------------------------------------------------------------------
 * About Page
 *----------------------------------------------------------------------------*/

#main .column {
	margin: 0;
}

#main .component {
    margin-bottom: 40px;
}

#main .column1 {
	padding-right: 100px;
	padding-left: 0;
}

#main .column2 {
	padding-left: 40px;	
	padding-right: 0;
}


#main .our-vision-mission-section {
	background: #efeff1;
	padding: 60px 0 50px 0;
}

#main .our-values-section {
	padding: 60px 0 50px 0;
}

#main .our-story-section {
	background: #2a2d2a;
	overflow: hidden;
}

#main .our-story-section .content {
	display: flex;
}

#main .our-story-section .column1 {
	color: #fff;
	display: flex;
	align-self: center;
	padding-top: 50px;
    padding-bottom: 50px;
}

#main .our-story-section .image-content {
	transform: scale(1.35, 1.35) translateX(65px);
}

#main .topMargin {
	margin-top: 50px;
}

#main .our-story-section .column1 h2,
#main .our-story-section .column1 h3, 
#main .our-story-section .column1 h4,
#main .our-story-section .column1 h5 {
	color: #2aec7c;
}

#main .our-focus-areas-section {
	padding: 60px 0;
}

#main .our-focus-areas-section .content {
	display: flex;
}

#main .our-focus-areas-section .column2 {
	display: flex;
	align-self: center;
}

#main .book-a-demo-section {
	padding: 60px 0;
}

#main .book-a-demo-section p,
.partners-page #main .join-now-section p,
.membership-page #main .form-section p {
	margin: 0;
}

#main .book-a-demo-section .content,
#main .form-section .form-content {
	display: flex;
}

#main .book-a-demo-section .content .column2,
#main .form-section .form-content .column2 {
	display: flex;
	align-self: center;
	justify-content: flex-end;
}

#main .fullwidth-section {
	padding: 60px 0;
}

#main .fullwidth-section:empty {
	display: none;
}

#main .fullwidth-section .bottom-content {
	margin-top: 20px;
}

#main .fullwidth-section .container,
.services-page #main .more-content-section .container {
	padding-left: 0;
	padding-right: 0;
}

#main .fullwidth-section .more-content,
#main .main-container .more-content {
	display: none;
}

#main .fullwidth-section .column {
	display: flex;
	align-self: center;
}

#main .fullwidth-section .column1 {
	padding-left: 0;
}

#main .fullwidth-section .column2 {
	padding-right: 0;
}

#main .fullwidth-section .more-content {
	padding-top: 50px;
}

#main .component p:last-child { margin-bottom: 0; }

#main .main-container {
	padding: 60px 0;
}

#main #banner .column {
	margin: 0;
	padding: 0;
	display: flex;
	align-self: center;
}

#main #banner .column.content {
	padding-right: 100px;
}

#main #banner .column p {
	font-size: 24px;
}

#main #banner .column1 {
	padding-right: 150px;
}

#main .bullet-coe-listing {
	margin: 0 0 30px 0;
	padding: 0;
}

#main .bullet-coe-listing li {
    background: url(../images/ceo_icon.png) no-repeat left 13px;
    border-top: 1px solid #231f20;
    list-style: none;
    padding: 10px 30px;
}

#main .bullet-coe-listing li:last-child {
    border-bottom: 1px solid #231f20;
}

#main .bullet-coe-listing.light li {
    border-color: #fff;
}

#main #banner,
#main #banner h1,
#main #banner h2,
#main #banner h3,
#main #banner h4,
#main #banner h5 {
	color: #fff;
}

#main .main-container .content {
	display: flex;
}

#main .main-container .content .column2 {
	display: flex;
	align-self: center;
}

.leadership-page #main .main-container .content .column2 {
	align-self: flex-start;
}




/*------------------------------------------------------------------------------
 * Leadership, News, Contact Page
 *----------------------------------------------------------------------------*/
 
.leadership-page #main .fullwidth-section {
	background: #efeff1;
}

.leadership-page #main .fullwidth-section .more-content {
	display: block;
}

.news-page #main .fullwidth-section h2 {
	font-size: 62px;
}

.news-page #main #banner {
	display: none;
}

.contact-page #main .fullwidth-section {
	display: none;
}

.contact-page #main {
	background: #f1e9de;
}





/*------------------------------------------------------------------------------
 * Events, QMS, Services Page
 *----------------------------------------------------------------------------*/


.events-page #main .fullwidth-section {
	background: #2aec7c;
}

.qms-page #main .fullwidth-section {
	padding-top: 100px;
	background: #f1e9de;
}

.qms-page #main .fullwidth-section h2 {
	margin-bottom: 80px;
}

/*.events-page #main .main-container {*/
/*	display: none;*/
/*}*/

.qms-page #main .book-a-demo-section,
.services-page #main .book-a-demo-section,
.membership-page #main .book-a-demo-section,
.partners-page #main .book-a-demo-section {
	background: #2aeb7c;
}

.qms-page #main .contact-demo-section {
	padding: 0;
	overflow: hidden;
}


.qms-page #main .contact-demo-section .image-content {
	transform: scale(1.35, 1.35) translateX(65px);
}

.qms-page #main .more-content-section {
	display: none;
}

.services-page #main .fullwidth-section {
	padding: 60px 0;
	background: #2a2d2a;
	color: #fff;
}

.services-page #main .more-content-section {
	overflow: hidden;
}

.services-page #main .more-content-section .more-content {
	display: flex;
	padding: 60px 0;
}

.services-page #main .more-content-section .more-content .column1 {
	display: flex;
	align-self: center;
}

.services-page #main .more-content-section .image-content {
	transform: scale(1.35, 1.35) translateX(65px);
}

.services-page #main .fullwidth-section .content,
.events-page #main .fullwidth-section .content {
	display: flex;
}

.services-page #main .fullwidth-section .content .column2,
.events-page #main .fullwidth-section .content .column2 {
	display: flex;
	align-self: center;
}

/*.events-page #main .fullwidth-section .content {*/
/*	font-size: 24px;*/
/*}*/

.services-page #main .fullwidth-section h2,
.services-page #main .fullwidth-section h3,
.services-page #main .fullwidth-section h4,
.services-page #main .fullwidth-section h5 {
	color: #fff;
}

.services-page #main .contact-demo-section {
	display: none;
}


/*------------------------------------------------------------------------------
 * Membership Page
 *----------------------------------------------------------------------------*/


.membership-page #main .fullwidth-section {
	padding: 60px 0;
	background: #2a2d2a;
	color: #fff;
}

.membership-page #main .fullwidth-section .content {
	display: flex;
}

.membership-page #main .fullwidth-section .content .column2 {
	display: flex;
	align-self: center;
}

.membership-page #main .more-content-section {
	overflow: hidden;
}

.membership-page #main .more-content-section .more-content {
	display: flex;
}

.membership-page #main .more-content-section .more-content .column {
	display: flex;
	align-self: center;
}

.membership-page #main .more-content-section .more-content .column1 {
	padding-bottom: 50px;
}

.membership-page #main .more-content-section .more-content .image-content {
	transform: scale(1.35, 1.35) translateX(65px);
}

.membership-page #main .fullwidth-section h2,
.membership-page #main .fullwidth-section h3,
.membership-page #main .fullwidth-section h4,
.membership-page #main .fullwidth-section h5 {
	color: #fff;
}

.membership-page #main .aotearoa-section {
	overflow: hidden;
}

.membership-page #main .aotearoa-section .form-section {
	background: #e4d2bc;
	padding: 60px 0;
}

.membership-page #main .aotearoa-section .map-content .column {
    margin: 0 auto;
    text-align: center;
    width: 100%;
    padding: 60px 0;
}



/*------------------------------------------------------------------------------
 * Partners Page
 *----------------------------------------------------------------------------*/

.partners-page #main .main-container .fullwidth-content h3 {
	margin-bottom: 50px;
	font-size: 38px;
	font-family: 'NewHero-Regular', Helvetica, Arial, sans-serif;
}

.partners-page #main .main-container .doublecol,
.partners-page #main .fullwidth-section .content,
.partners-page #main .join-now-section .content {
	display: flex;
}

.partners-page #main .main-container .doublecol .column,
.partners-page #main .fullwidth-section .content .column,
.partners-page #main .join-now-section .content .column {
    display: flex;
    align-self: center;
}

.partners-page #main .contact-demo-section {
	padding: 60px 0;
}

.partners-page #main .fullwidth-section {
	padding: 60px 0;
	overflow: hidden;
}

.partners-page #main .fullwidth-section .image-content {
	transform: scale(1.35, 1.35) translateX(50px);
}

.partners-page #main .join-now-section {
	padding: 60px 0;
	background: #efeff1;	
}

.partners-page #main .join-now-section .content .column2 {
	justify-content: flex-end;
}

.partners-page #main .partners-logo-section {
	padding: 60px 0;
}

.partners-page #main .partners-logo-section .image-gallery li {
    max-width: 100%;
    min-height: 140px;
    display: flex;
    margin: 0 28px 10px 0;
}

.partners-page #main .partners-logo-section .image-gallery li a {
    height: 100%;
    width: 100%;
    display: flex;
    align-self: center;
}

.partners-page #main .partners-logo-section .image-gallery li img {
  transition: transform 0.3s ease;
}

.partners-page #main .partners-logo-section .image-gallery li img:hover {
	transform: scale(1.1);
}

    
    
/*------------------------------------------------------------------------------
 * Content
 *----------------------------------------------------------------------------*/

#main {
	margin: 0;
}       

#main #feature-content {
	background: #2aec7c;
	padding: 0;
}

#main #feature-content .fourcol {
	display: flex;
	flex-direction: row;
}

#main #feature-content .featured-content {
	transition: background-color 0.5s ease;
	margin-bottom: 0;
	padding: 60px;
}

#main #feature-content .featured-content:first-child {
	padding-left: 0;
}

#main #feature-content .featured-content:last-child {
	padding-right: 0;
}

#main #feature-content .featured-content:hover {
	background: #4aef90;
}



/*------------------------------------------------------------------------------
 * Footer
 *----------------------------------------------------------------------------*/

#footer {
	background: #2a2d2a;
    font-size: 16px;
}

#footer .footer-main {
	background: #2a2d2a;
    color: #FFF;
    padding-top: 70px;
    padding-bottom: 70px;
    font-family: 'NewHero-Regular', Helvetica, Arial, sans-serif;
    font-size: 16px;
}

#footer .footer-columns .footer-column3 p {
	padding: 0;
	margin-bottom: 15px;
}

#footer .footer-columns .footer-column3 p:last-child {
	margin-bottom: 0;
}

#footer a {
    color: #FFF;
    text-decoration: none;
}

#footer a:hover {
	color: #FFF;
}

#footer a.btn {
    position: relative;
}

#footer .btn {
    color: #fff;
    background: transparent;
    border: 2px solid #fff;
    min-width: 240px;
    width: auto;
    border-radius: 0;
	font-family: 'NewHero-SemiBold', Helvetica, Arial, sans-serif !important;
	font-size: 14px !important;    
	font-weight: normal;
	padding: 12px 80px 12px 45px;
    line-height: 100%;
    transition: background-color 0.3s ease;
}

#footer .btn:hover {
    color: #2a2d2a;
    background: #fff;
    border: 2px solid #fff;
}

#footer .btn::after {
    content: "";
    position: absolute;
    border-left: 2px solid #fff;
    display: flex;
    background: url(../images/arrow-white.png) no-repeat center 12px;
    width: 40px;
    height: 40px;
    top: 0;
    right: 0;
}

#footer .btn:hover::after {
	border-left: 2px solid #fff;
    background-image: url(../images/arrow-dark.png);
}

#footer h3 {
	color: #2aec7c;
	padding-bottom: 25px;
	font-size: 18px;
	font-weight: normal;
	margin: 0;
	border: none;
	font-family: 'NewHero-ExtraBold', Helvetica, Arial, sans-serif;
}

#footer .footer-copyright {
	background: #2a2d2a;
    color: #6a6c6a;
    font-size: 13px;
    padding: 0 0 70px 0;
}

#footer .footer-copyright .container {
	display: flex;
	padding-left: 0;
    padding-right: 0;	
}

#footer .footer-copyright .copyright {
	display: flex;
	align-self: end;
	padding: 0;
	margin: 0;
}

#footer .footer-copyright .column2 {
	padding: 0;
	margin: 0;
}

#footer .footer-copyright a {
    color: #6a6c6a;
}

#footer .footer-copyright a:hover {
    text-decoration: underline;
}

#footer .footer-column {
    margin-bottom: 0;
    padding: 0;
}

#footer .footer-column1,
#footer .footer-column2 {
	padding-right: 150px;
}

#footer .custom-menu ul {
	padding: 0;
	margin: 0;
}

#footer .custom-menu ul li {
	list-style: none;
}

#footer .custom-menu ul li a {
	text-decoration: underline;
}

#footer .custom-menu ul li a:hover {
	text-decoration: none;
}



/*------------------------------------------------------------------------------
 * Buttons
 *----------------------------------------------------------------------------*/

a.btn {
	position:relative;
	overflow: hidden;
}

.btn {
	color: #2a2d2a;
    background-color: transparent;
    border: 2px solid #2a2d2a;
    border-radius: 0;
	font-family: 'NewHero-Bold', Helvetica, Arial, sans-serif !important;
	font-size: 18px !important;    
	font-weight: normal;
	padding: 15px 110px 15px 70px;
    line-height: 100%;
    transition: background-color 0.3s ease;
}

.btn::after {
    content: "";
    position: absolute;
    border-left: 2px solid #2a2d2a;
    display: flex;
    background: url(../images/arrow-dark.png) no-repeat center 17px;
    width: 50px;
    height: 50px;
    top: 0;
    right: 0;
}

.btn:hover::after {
    background-image: url(../images/arrow-white.png);
}

.btn:focus,
.btn.focus {
	color: #fff;
	background-color: #2a2d2a;
}
.btn:hover {
	color: #fff;
	background-color: #2a2d2a;
	border: 2px solid #2a2d2a;

}
.btn:active,
.btn.active {
	color: #fff;
	background-color: #2a2d2a;
	border: 2px solid #2a2d2a;
}
.btn:active:hover,
.btn.active:hover,
.btn:active:focus,
.btn.active:focus,
.btn:active.focus,
.btn.active.focus {
	color: #fff;
	background-color: #2a2d2a;
	border: 2px solid #2a2d2a;
}




/*------------------------------------------------------------------------------
 * Blog
 *----------------------------------------------------------------------------*/

.blog.blog-articles .blog-article {
	background: #F7F7F7;
	border-bottom: none;
	margin-bottom: 50px;
	padding: 50px;
}
.blog.blog-articles .blog-article:last-child {
	margin-bottom: 0;
}
.blog.blog-articles .blog-article .article-feature img {
	max-height: 100%;
	max-width: 100%;
	width: 100%;
	height: auto;
}
.blog.blog-articles .blog-article .read-more {
	float: left;
}
.blog.blog-articles .blog-article .article-tags {
	text-align: right;
}
.blog.blog-article .article-feature {
	margin-bottom: 20px;
}
.blog.blog-article .article-feature img {
	max-height: 100%;
	max-width: 100%;
	width: auto;
	height: auto;
}

.blog .article-content {
    margin: 0 0 20px 0;
}

.blog.blog-articles .article-content {
	padding-left: 50px;
}

.blog .article {
	margin-bottom: 20px;
	min-height: 50px;
}
.blog .article:last-child {
	margin: 0;
}
.blog .article-title {
	margin-bottom: 10px;
}

.blog .article-feature {
	margin-bottom: 20px;
}

.blog.blog-tags,
.blog.blog-archive,
.blog.blog-article-headings {
	margin-bottom: 20px;
}
.blog.blog-article-headings .article-feature {
	display: block;
    float: left;
    width: 50px;
    height: 50px;
    overflow: hidden;
    margin: 0;
}
.blog.blog-article-headings .article-feature img {
	max-width: none;
	min-height: 100%;
	min-width: 100%;
	width: 100%;
	height: 100%;
}
.blog.blog-article-headings .article-title {
	font-size: 16px;
    margin: 0;
    margin-left: 70px;
}
.blog.blog-article-headings .article-date {
	margin: 0;
    margin-left: 70px;
}
.blog .archive-title {
	font-size: 16px;
}
.blog.blog-tag-articles {
    float: right;
	max-width: 280px;
	width: 100%;
}
.blog.blog-tag-articles .article-list {
    background: #ececec;
    padding: 10px;
}
.blog.blog-tag-articles .article-feature {
	display: block;
    float: left;
    width: 50px;
    height: 50px;
    overflow: hidden;
    margin: 0;
}
.blog.blog-tag-articles .article-feature img {
	max-width: none;
	min-height: 100%;
	min-width: 100%;
	width: 100%;
	height: 100%;
}
.blog.blog-tag-articles .article-title {
	font-size: 16px;
    margin: 0;
    margin-left: 70px;
}
.blog.blog-tag-articles .article-date {
	margin: 0;
    margin-left: 70px;
}

.blog .tag-item {
	display: inline-block;
	padding: 3px 6px;
	margin: 3px;
	background: #2a2d2a;
	color: #FFF;
	font-size: 0.8em;
	text-transform: uppercase;
}
.blog .tag-item:focus,
.blog .tag-item:hover {
	background: #2aec7c;
	color: #FFF;
	text-decoration: none;
}



/*------------------------------------------------------------------------------
 * Login Page
 *----------------------------------------------------------------------------*/
 
.login-page .doublecol {
	display: -ms-flexbox;
	display: flex;
}
.login-page .doublecol .col-wrapper {
	border: 1px solid #DDD;
	border-radius: 2px;
	height: 100%;
	padding: 30px 30px 80px;
	position: relative;
}
.login-page .doublecol .col-wrapper .btn {
	bottom: 20px;
	min-width: 100px;
	position: absolute;
}




/*------------------------------------------------------------------------------
 * Form Section
 *----------------------------------------------------------------------------*/
 
.ctrl-wrapper {
	position: relative;	
}

.form input, .form button, .form select, .form textarea {
    line-height: 100%;
}

.form .ctrl-input {
    font-size: 25px;
    height: 60px;
    font-family: 'NewHero-Regular', Helvetica, Arial, sans-serif;
    background: transparent;
    border: none;
    border-bottom: 2px solid #ecdfd0;
    border-radius: 0;
    padding: 10px 0;
}

.form .ctrl-input-custom .ctrl-input-custom-select {
	font-size: 25px;
	height: 60px;
	padding: 6px 15px;
	line-height: 1.75em;
}

.form .ctrl-input::placeholder {
	color: #ecdfd0;
	font-size: 35px;
}

.form input[type="radio"], .form input[type="checkbox"] {
    height: 20px;
    width: 20px;
    accent-color: #d9534f;
}

.form .ctrl .ctrl-option-list .ctrl-option-row {
	border-top: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 60px;
}

.form .required {
    color: #ff0000;
}

.form .ctrl-input:focus {
    border-color: #ecdfd0;
    box-shadow: none;
}

.form .ctrl .ctrl-progress-bar .progress {
    background: transparent;
    box-shadow: none;
}

.form legend,
.form .ctrl.fieldset > .ctrl-wrapper > .ctrl-header {
    border: 0;
    margin: 0 0 20px 0;
    padding: 0 10px;
}

.form .ctrl .ctrl-option-list {
    background: transparent;
    border: none;
}

.form .ctrl .ctrl-option-list .ctrl-option-label {
	border: none;
}

.form .form-footer {
    border: none;
}

.form .ctrl.has-clear-btn:not(.is-readonly) .ctrl-input {
    padding-right: 0;
}

.form .ctrl-field,
.form .ctrl-label {
    width: 100%;
}


/*------------------------------------------------------------------------------
 * Other Pages
 *----------------------------------------------------------------------------*/


#header .mobile-menu.menu-btn .icon-bar {
	color: #2a2d2a;
	background: #2a2d2a;
}

#header .is-sticky .mobile-menu.menu-btn {
    line-height: 100px;
}

#header .mobile-menu.menu-btn {
    line-height: 120px;
}

.mobile-menu-icon .icon-bar {
    border-radius: 4px;
    height: 4px;
    margin-top: 6px;
}

.mm-menu.mm-white .mm-list > li.mm-selected {
    background: #EAEEEE;
}

.mm-list > li > a, .mm-list > li > span {
    line-height: 40px;
    font-size: 20px;
}



/*------------------------------------------------------------------------------
 * Responsive Media
 *----------------------------------------------------------------------------*/

/* Large devices */
@media (max-width: 1600px) {
	h1, h1 a {
	    font-size: 52px;
	}	
	#header .custom-menu > ul > li {
    	padding: 20px 15px;
	}
	#header .header-menu a {
		font-size: 18px;
	}
	#main #banner .column1 {
	    padding-right: 100px;
	}	
	#main #feature-content .featured-content {
	    padding: 60px 30px;
	}
	#main #banner .column p {
	    font-size: 22px;
	}	
	.btn {
	    padding: 15px 80px 15px 30px;
	}	
}

/* Medium-Large devices */
@media (max-width: 1440px) {
	.container {
		width: 85%;
	}
	#header .custom-menu > ul > li {
    	padding: 20px 15px;
	}
	#header .header-menu a {
	    font-size: 16px;
	}
	.btn {
	    padding: 15px 80px 15px 20px;
	    font-size: 16px !important;
	}
	#main #banner .column.content {
	    padding-right: 50px;
	}	
	#footer .footer-column1,
	#footer .footer-column2 {
    	padding-right: 100px;
	}	
	#main .column1 {
	    padding-right: 50px;
	}	
	#main .column2 {
    	padding-left: 20px;
	}
	.news-page #main .fullwidth-section h2 {
	    font-size: 52px;
	}	
}

/* Medium devices */
@media (max-width: 1199px) {
	h1, h1 a {
	    font-size: 42px;
	}
	.news-page #main .fullwidth-section h2 {
	    font-size: 42px;
	}	
	.container {
		width: 80%;
	}
	#header .custom-menu > ul > li {
    	padding: 20px 5px;
	}
	#header .header-menu a {
	    font-size: 15px;
	}
	#main #banner .column1 {
	    padding-right: 40px;
	}
	#main #banner .column p {
	    font-size: 20px;
	}
	#banner img {
	    min-height: 400px;
	}
	#main #feature-content .fourcol {
	    flex-wrap: wrap;
	}	
	#main #feature-content .featured-content {
	    flex: 50%;
	    padding: 40px 50px 40px 0;
	}
	#main #feature-content .featured-content:last-child {
    	padding-right: 50px;
	}
	.btn {
	    font-size: 18px !important;
	}
	#footer .footer-column1,
	#footer .footer-column2 {
    	padding-right: 50px;
	}	
	.form .ctrl-input::placeholder {
		font-size: 32px;
	}	
	.blog.blog-articles .article-content {
	    padding-left: 15px;
	    padding-right: 15px;
	}
}

/* Small devices */
@media (max-width: 991px) {
	p {
	    margin: 0 0 20px;
	}	
	#header .header-main {
	    display: flex;
	}
	#header .custom-menu {
		display: none;
	}	
	#header .header-menu {
	    display: flex;
	    justify-content: flex-end;
	}
	#header .mobile-menu.menu-btn .menu-icon {
	    vertical-align: top;
	}
	#header .mobile-menu.menu-btn .icon-bar {
	    color: #fff;
	    background: #fff;
	}
	#banner, #banner .row {
	    flex-direction: column;
	}
	#banner img {
	    min-height: auto;
	}
	#banner .image-content {
	    transform: scale(1.3, 1.3) translateX(0);
	    margin-top: 100px;
	}
	#main .our-story-section .column1 {
		padding-top: 0;
		padding-bottom: 0;
	}
	#main #banner {
	    padding: 30px 0 0 0;
	    max-height: none;
	}	
	#main #banner .column1 {
	    padding-right: 0;
	}
	#main #feature-content .fourcol {
		flex-direction: column;
	}
	#main #feature-content .featured-content {
	    padding: 30px 0;
	}
	#main .column1 {
	    padding-right: 0;
	    padding-left: 0;
	    margin-bottom: 30px;
	}
	#main .column2 {
	    padding-left: 0;
	    padding-right: 0;
	}	
	#main .btn {
		min-width: 350px;
	}
	#main .our-story-section {
	    padding-top: 50px;
	}	
	#main .our-story-section .content {
	    flex-direction: column;
	}
	#main .our-story-section .image-content {
	    transform: scale(1.35, 1.35) translateX(5px);
	    margin-top: 180px;
	}
	#main .our-focus-areas-section .content,
	#main .main-container .content {
	    flex-direction: column;
	}
	#main .main-container,
	#main .fullwidth-section {
	    padding: 50px 0;
	}	
	#main .bullet-coe-listing {
	    margin: 0 0 20px 0;
	    padding: 0;
	}
	#main .topMargin {
		margin-top: 0;
	}
	#main #feature-content .featured-content:last-child {
	    padding-right: 0;
	}	
	.news-page #main .fullwidth-section h2 {
	    font-size: 52px;
	}
	.services-page #main .fullwidth-section .content,
	.events-page #main .fullwidth-section .content {
	    flex-direction: column;
	}
	.events-page #main .fullwidth-section .content {
	    font-size: 22px;
	}	
	.qms-page #main .fullwidth-section {
	    padding-top: 60px;
	}	
	.qms-page #main .fullwidth-section h2 {
	    margin-bottom: 30px;
	}
	.qms-page #main .contact-demo-section .image-content,
	.partners-page #main .fullwidth-section .image-content {
	    transform: scale(1.35, 1.35) translateX(0);
	    margin-top: 180px;
	}	
	#main .book-a-demo-section .content,
	#main .form-section .form-content,
	.membership-page #main .more-content-section .more-content,
	.membership-page #main .fullwidth-section .content,
	.partners-page #main .main-container .doublecol,
	.partners-page #main .fullwidth-section .content, 
	.partners-page #main .join-now-section .content{
	    flex-direction: column;
	}
	#main .book-a-demo-section .content .column2,
	#main .form-section .form-content .column2,
	.partners-page #main .join-now-section .content .column2 {
	    align-self: flex-start;
	    justify-content: flex-start;
	}
	.services-page #main .more-content-section .more-content {
	    padding: 20px 0 50px 0;
	    flex-direction: column;
	}
	.services-page #main .more-content-section .image-content,
	.membership-page #main .more-content-section .more-content .image-content {
	    transform: scale(1.35, 1.35) translateX(0);
	    margin-top: 100px;
	}
	#main .book-a-demo-section,
	.membership-page #main .fullwidth-section,
	.membership-page #main .aotearoa-section .map-content .column,
	.membership-page #main .aotearoa-section .form-section,
	.partners-page #main .fullwidth-section {
	    padding: 50px 0;
	}
	#legacy_parallax124_64a9311460162 .parallax-container {
	    height: 500px;
	}
	.news-page #main .fullwidth-section {
	    padding-top: 0;
	}	
	#footer .footer-column1,
	#footer .footer-column2 {
	    padding-right: 0;
	}
	#footer .footer-main {
	    padding-top: 50px;
	    padding-bottom: 50px;
	}
	#footer .footer-copyright .container {
	    flex-direction: column;
	}
	#footer .footer-copyright .copyright {
	    align-self: flex-start;
	    margin-bottom: 20px;
	}
	#footer .footer-column1, #footer .footer-column2 {
	    padding-right: 0;
	}
	.form .ctrl-input::placeholder {
		font-size: 28px;
	}
	.partners-page #main .partners-logo-section .image-gallery li {
	    margin: 0 25px 10px 0;
	}	
}

/* Extra small devices */
@media (max-width: 767px) {
	h2,
	h2 a,
	.news-page #main .fullwidth-section h2 {
		font-size: 35px;
	}
	#main .our-vision-mission-section,
	#main .our-values-section {
		padding: 50px 0 40px 0;
	}
	.partners-page #main .partners-logo-section .image-gallery li {
	    margin: 0 30px 10px 0;
	}
	.form .ctrl-input,
	.form .ctrl-input-custom .ctrl-input-custom-select {
	    font-size: 22px;
	}
	.blog.blog-articles .blog-article .read-more {
		margin-bottom: 20px;
	}
}

/* More Extra small devices */
@media (max-width: 480px) {
	#main .btn {
		min-width: 100%;
		padding: 15px 80px 15px 30px;
	}
	#main .our-story-section .image-content {
	    transform: scale(1.35, 1.35) translateX(5px);
	    margin-top: 120px;
	}
	#main .bullet-coe-listing li {
	    padding: 10px 10px 10px 30px;
	}
	#main .our-focus-areas-section,
	.partners-page #main .fullwidth-section {
	    padding: 40px 0;
	}
	.news-page #main .fullwidth-section h2 {
	    font-size: 42px;
	}
	.events-page #main .fullwidth-section .content {
	    font-size: 20px;
	}
	.qms-page #main .contact-demo-section .image-content,
	.partners-page #main .fullwidth-section .image-content {
	    margin-top: 120px;
	}	
	#banner .image-content {
	    margin-top: 80px;
	}
	#main .book-a-demo-section,
	.membership-page #main .fullwidth-section,
	.membership-page #main .aotearoa-section .map-content .column,
	.membership-page #main .aotearoa-section .form-section {
	    padding: 40px 0;
	}
	.form .ctrl-input,
	.form .ctrl-input-custom .ctrl-input-custom-select {
	    font-size: 20px;
	}
	.form .ctrl-input::placeholder {
		font-size: 20px;
	}
	.partners-page #main .partners-logo-section .image-gallery li {
	    margin: 0 15px 10px 0;
	}
	.blog.blog-articles .blog-article {
		padding: 30px;
	}
}

/* More Extra small devices */
@media (max-width: 375px) {
	h1, h2, h3, h4, h5, h6 {
	    margin-bottom: 10px;
	}	
	h1, h1 a,
	#banner .content h1 {
	    font-size: 52px;
	}
	h2,
	h2 a {
		font-size: 35px;
	}	
	h3, h3 a {
	    font-size: 30px;
	}
	h4, h4 a {
	    font-size: 22px;
	}
	body {
	    font-size: 18px;
	}
	#main .our-story-section .image-content {
	    margin-top: 80px;
	}	
	#main #banner .column p {
	    font-size: 22px;
	}
	.qms-page #main .contact-demo-section .image-content {
	    margin-top: 100px;
	    transform: scale(1.5, 1.5) translateX(0);
	}	
	#header #headerWrapper {
	    padding: 30px 0 20px 0;
	}
	.form .ctrl-input,
	.form .ctrl-input-custom .ctrl-input-custom-select {
	    font-size: 18px;
	}		
	.form .ctrl-input::placeholder {
		font-size: 18px;
	}
}

/* More Extra small devices */
@media (max-width: 320px) {
	#header #headerWrapper {
	    padding: 20px 0 10px 0;
	}	
	h1, h1 a,
	#banner .content h1 {
	    font-size: 42px;
	}
	h3, h3 a {
	    font-size: 28px;
	}	
	h4, h4 a {
	    font-size: 20px;
	}	
	#header .header-menu {
	    margin: 10px 0 0 0;
	}
	#main #banner .column p {
	    font-size: 20px;
	}	
	#main .btn {
		padding: 16px 70px 16px 20px;
    	font-size: 16px !important;
		min-width: 100%;
	}
	#banner .image-content {
	    margin-top: 60px;
	}
	.form .ctrl-input,
	.form .ctrl-input-custom .ctrl-input-custom-select {
	    font-size: 16px;
	}	
	.form .ctrl-input::placeholder {
		font-size: 16px;
	}
	.partners-page #main .partners-logo-section .image-gallery li {
	    margin: 10px 15px 10px 0;
	    min-height: auto;
	}	
}