/*
Theme Name: 
Theme URI: 
Description: Bespoke Theme developed by Adrian @ AlphaWebServices.net
Author: Adrian Jones
Version: 1.0
License: 
License URI: 
Tags: 
*/

@font-face {
  font-family: Avenir-Reg;
  src: url(fonts/AvenirNextLTPro-Regular.otf);
}

@font-face {
  font-family: Avenir-Bold;
  src: url(fonts/AvenirNextLTPro-Bold.otf);
}

*		{margin: 0; border: 0; padding: 0; outline: 0; box-sizing: border-box;}
p, a, small, li, textarea, input, td, tr, .gform_confirmation_message {font-family: 'Open Sans', sans-serif;}
h1, h2, h3, h4, h5		{font-family: Avenir-Bold;}
.clear		{clear: both;}
a		{text-decoration: none;}
html		{overflow-y: scroll; background-color: #fff;}
ul		{list-style-type: none;}
img.alignright {float:right; margin:0 0 1em 1em}
img.alignleft {float:left; margin:0 1em 1em 0}
img.aligncenter {display: block; margin-left: auto; margin-right: auto}
.alignright {float:right; }
.alignleft {float:left; }
.aligncenter {display: block; margin-left: auto; margin-right: auto}
img         {max-width: 100%; max-height: 100%;}

.wrapper        {width: 1400px; margin: 0 auto; position: relative;}
.wrapper:after  {content: ""; display: block; clear: both;}

.section        {padding: 80px 0;}
.centered       {text-align: center;}

#header         {position: relative; padding: 40px 0 0;}
#header .logo   {position: absolute; max-height: 150px;}
#header .right	{float: right; height: 100%;}
#header .right ul.social	{text-align: right;}
#header .right ul.social li	{display: inline-block;}
#header .right ul.social li + li	{margin-left: 10px;}
#header .right ul.social li a		{color: #000;}
#header .right ul.social li i		{font-size: 22px;}
#header .right ul.contact	{text-align: right; padding-top: 20px;}
#header .right ul.contact li	{display: inline-block;}
#header .right ul.contact li + li	{margin-left: 10px;}
#header .right ul.contact li p		{font-family: Avenir-Reg; color: #464646; letter-spacing: 2px; text-transform: uppercase; font-size: 14px;}
#header .right ul.contact li p strong		{font-family: Avenir-Bold;}
#header .right ul.contact li a		{color: #464646;}
#header .menuOuter		{margin-top: 50px; background: #ffb71b; text-align: right;}
#header .menu > li  {position: relative; display: inline-block; vertical-align: top;}
#header .menu > li + li     {margin-left: 30px;}
#header .menu > li > a      {display: block; font-family: Avenir-Bold; font-size: 18px; color: #1d1d1b; text-transform: uppercase; letter-spacing: 2px; line-height: 60px;}
#header .menu > li > ul     {position: absolute; display: none; top: 100%; left: -15px; z-index: 999; background: #ffb71b; padding: 10px 0;}
#header .menu > li > ul > li    {padding: 8px 0;}
#header .menu > li > ul > li > a    {display: block; padding: 0 15px; white-space: nowrap; font-family: Avenir-Bold; font-size: 18px; color: #1d1d1b; text-transform: uppercase; letter-spacing: 2px;}
#header .menu > li.active > a      {color: #fff;}
#header .menu li:hover > a        {color: #fff;}
#header .menu > li:hover > ul       {display: block;}
#header .menu > li.menu-item-has-children > a:after	{content: "\f0d7"; font-family: 'Font Awesome 5 Free'; font-weight: 900; padding-left: 7px; line-height: 40px;}

.headimg			{height: 650px; border-bottom: 30px solid #fff;}
.headimg > div		{height: 100%;}
.headimg > div > p	{color: #fff; background: #464646; line-height: 80px; padding-left: 50px; font-size: 38px;}
.headimg .overlay	{position: absolute; background: #000; top: 45%; left: 50%; transform: translate(-50%,-50%); padding: 50px;}
.headimg .overlay h3	{color: #fff; text-transform: uppercase; font-size: 56px; line-height: 100%; white-space: nowrap;}
.headimg .overlay a		{position: absolute; left: 50%; transform: translatex(-50%); background: #ffb71b; color: #383838; font-size: 30px; text-transform: uppercase; padding: 17px 50px; line-height: 100%; font-weight: bold; top: 90%;}
.headimg .overlay a:hover		{background: #fff;}

.homemain			{background: #ffb71b; position: relative; height: 1000px; padding-bottom: 1159px;}
.homemain > div		{padding: 30px; top: -130px; background: #fff;}
.homemain .blocks	{display: flex; flex-wrap: wrap;}
.homemain .blocks > div		{width: 50%;}
.homemain .blocks > div	.img:before		{content: ""; display: block; padding-top: 70%;}
.homemain .blocks > div	h3			{padding: 20px; color: #fff; text-transform: uppercase; font-size: 28px;}
.homemain .blocks > div:hover		{opacity: 0.8;}
.homemain .blocks > div a			{position: absolute; top: 0; bottom: 0; left: 0; right: 0;}

.homeintro h1		{font-size: 70px; color: #0f0e0a; text-transform: uppercase;}
.homeintro h2		{font-size: 40px; color: #ffb71b; text-transform: uppercase;}
.homeintro h3		{}
.homeintro p		{font-size: 18px; color: #62625e; letter-spacing: 2px; line-height: 150%; margin: 20px 50px 0;}
.homeintro a		{display: inline-block; background: #ffb71b; color: #fff; font-size: 30px; text-transform: uppercase; padding: 17px 50px; line-height: 100%; font-weight: bold; margin-top: 40px;}
.homeintro a:hover	{background: #0f0e0a;}

.homecontent		{background: url(images/home-bg.jpg) no-repeat center top; background-size: cover; padding: 340px 0 80px;}
.homecontent h2		{font-size: 54px; color: #fff; text-transform: uppercase;}
.homecontent h3		{font-size: 40px; color: #ffb71b; text-transform: uppercase;}
.homecontent p		{font-size: 18px; color: #fff; letter-spacing: 2px; line-height: 150%; margin: 20px 50px 0;}
.homecontent a		{color: #ffb71b;}

.content h1         {color: #0f0e0a; margin-bottom: 44px; text-transform: uppercase;}
.content h2         {color: #0f0e0a; margin-bottom: 33px; text-transform: uppercase;}
.content h3         {color: #ffb71b; margin-bottom: 22px;}
.content h4         {color: #ffb71b; margin-bottom: 18px;}
.content h5         {color: #ffb71b; margin-bottom: 18px;}
.content p          {font-size: 16px; color: #2C2C2D; letter-spacing: 2px; margin-bottom: 15px; line-height: 150%;}
.content a          {font-weight: bold; color: #ffb71b;}
.content ul         {margin: 0 0 20px 30px;}
.content ul li      {font-size: 16px; color: #62625e; letter-spacing: 2px; line-height: 150%; padding: 8px 0; list-style-type: disc;}
.content ol         {margin: 0 0 20px 30px;}
.content ol li      {font-size: 18px; color: #62625e; letter-spacing: 2px; line-height: 150%; padding: 8px 0; list-style-type: decimal;}
.content .fl-pricing-table li   {list-style-type: none;}
#more_posts			{display: block; max-width: 250px; background: #000; color: #fff; border-radius: 2px; text-align: center; font-size: 17px; font-weight: 600; cursor: pointer; text-transform: uppercase; padding: 12px 0; margin: 60px auto 0; border-radius: 5px; -webkit-border-radius: 5px;}

.accreditations		{padding: 50px 0;}
.accreditations .accred-carousel		{width: 1000px; margin: 0 auto;}
.accreditations .accred-carousel .slides li img		{display: block; padding: 0 15px;}

#footer				{background: #1d1d1b; padding: 80px 0;}
#footer ul			{margin-bottom: 40px;}
#footer ul li		{display: inline-block; margin: 0 10px;}
#footer ul li i		{font-size: 24px;}
#footer p			{color: #fff; text-transform: uppercase; font-size: 13px; letter-spacing: 2px; line-height: 200%; margin-bottom: 25px;}
#footer p span,
#footer a			{color: #ffb71b;}
#footer p.copy		{margin-top: 20px; font-size: 10px;}

.gform_wrapper label, .gfield_required, .gform_confirmation_message		{color: #1D1D1B;}
.gform_wrapper input, .gform_wrapper textarea, .gform_wrapper select	{border: 1px solid #FFB71B;}
.gform_footer .button				{background: #FFB71B; color: #fff; padding: 8px 14px; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; -webkit-appearance: none;}
.gform_wrapper div.validation_error, .gform_wrapper .ginput_container + .gfield_description.validation_message {display: none;}
.gform_wrapper li.gfield.gfield_error.gfield_contains_required, .gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {margin: 0!important; padding: 0!important;}
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {border: 0!important; background-color: transparent!important;}
.gform_wrapper li.gfield.gfield_error.gfield_contains_required {padding-left: 0!important;}

.newsindex .flex	{display: flex; justify-content: space-between; flex-wrap: wrap;}
.newsindex .flex > div		{width: 30%; margin-bottom: 40px;}
.newsindex .flex > div .img	{margin-bottom: 20px;}
.newsindex .flex > div .img:before		{content: ""; display: block; padding-top: 100%;}
.newsindex .flex > div h2       {color: #FFB71B; margin-bottom: 15px; text-transform: uppercase;}
.newsindex .flex > div p		{font-size: 16px; color: #2C2C2D; letter-spacing: 2px;}
.newsindex {
    max-width: 1100px;   /* limit total width */
    margin: 0 auto 0; /* center it and reduce top gap */
    padding-top: 0;
}

.newsindex .left {
    width: 100%;         /* take up full width now that sidebar is gone */
    float: none;         /* remove float */
}

@media all and (max-width : 1400px) {
	.wrapper		{width: auto; padding-left: 15px; padding-right: 15px;}
	#header			{padding: 20px 0 0;}
	#header .logo	{position: static; max-height: 120px;}
	#header .menuOuter		{margin-top: 20px;}
	#header .menu > li + li		{margin-left: 20px;}
	#header .menu > li > a		{font-size: 17px; letter-spacing: 1px;}
	.headimg		{border-bottom: 0;}
	.headimg .overlay		{top: 50%;}
	.headimg > div > p		{margin: 0 -15px;}
	.homemain		{height: auto; padding-bottom: 0;}
	.homemain > div	{top: 0; padding: 15px;}
	.homecontent	{padding: 80px 0;}
}

@media all and (max-width : 1100px) {
	.innerpage .fl-builder-content	{padding: 0 15px;}
}

@media all and (max-width : 999px) {
	#header					{padding: 15px 0;}
	.headimg > div > p		{display: none;}
	.headimg				{height: 400px;}
	.headimg .overlay		{padding: 30px;}
	.headimg .overlay h3	{font-size: 38px;}
	.headimg .overlay a		{font-size: 26px;}
	.homemain .blocks > div	{width: 50%;}
	.homeintro h1			{font-size: 52px;}
	.homeintro h2			{font-size: 36px;}
	.homecontent h3			{font-size: 36px;}
	.homecontent h2			{font-size: 48px;}
	.accreditations .accred-carousel		{width: 600px;}
}

@media all and (max-width : 768px) {
	.section	{padding-top: 50px; padding-bottom: 50px;}
	#top		{display: none;}
	#header .right ul.contact li	{display: block;}
	#header .right ul.contact li + li	{margin-left: 0; margin-top: 10px;}
	.headimg		{height: 400px;}
	.headimg > div > p		{padding-left: 0; text-align: center; font-size: 28px; line-height: 100%; padding: 15px 0;}
	.headimg .overlay		{width: 80%; text-align: center;}
	.headimg .overlay h3	{white-space: normal; font-size: 32px;}
	.headimg .overlay h3 br	{display: none;}
	.headimg .overlay a		{white-space: nowrap;}
	.homecontent			{padding: 30px 0;}
	.homecontent h3,
	.homeintro h2			{font-size: 28px;}
	.homecontent h2,
	.homeintro h1			{font-size: 36px;}
	.homeintro a			{font-size: 20px;}
	.homecontent p			{font-size: 16px; letter-spacing: 1px;}
	.accreditations			{padding: 30px 0;}
	.accreditations .accred-carousel		{width: 380px;}
	#footer					{padding: 30px 0;}
	.innerpage .fl-builder-content > div + div		{margin-top: 20px;}
	.newsindex .flex > div		{width: 47%;}
}

@media all and (max-width : 586px) {
	#header		{text-align: center;}
	#header .logo		{max-height: 100px;}
	#header .right		{float: none; margin-top: 15px;}
	#header .right ul.social,
	#header .right ul.contact		{text-align: center;}
	.homemain .blocks		{justify-content: center;}
	.homemain .blocks > div	{width: 75%;}
	.homeintro p, .homecontent p			{margin: 20px 0 0;}
	.accreditations .accred-carousel		{width: 150px;}
	.newsindex .flex > div		{width: 100%;}
}

@media all and (max-width : 450px) {
	.headimg .overlay h3		{font-size: 24px;}
	.homemain .blocks > div		{width: 100%;}
	.homeintro h1			{font-size: 36px;}
	.homeintro h2			{font-size: 28px;}
	.homecontent h3			{font-size: 28px;}
	.homecontent h2			{font-size: 32px;}
}