
/**** Start Colors ****/

/*

Dark Blue: 	#25408E / rgba(37,64,132,1)
Mid Blue:	#00AEEF / rgba(0,174,239,1)
Light Blue:	#DBF1FD / rgba(219,241,253,1)
Black: 		#231F20 / rgba(35,31,32,1)
White: 		#FFFFFF rgba(255,255,255,1)
#ddf4fd

Dark Red:	#5C0000 / rgba(219,241,253,1)
Mid Red:	#911111 / rgba(0,174,239,1)
Light Red: 	#D91A1A / rgba(37,64,132,1)
Silver:		#D9D9D9 / rgba(35,31,32,1)
Black: 		#1A1A1A rgba(255,255,255,1)



#D3B269
#D5A932
#AA8F45

#CFD9FF
#C9D2F5
#000000
#4e5675
#000000


CJPH Blue: 			#000000 rgb(33,23,118)
CJPH Dark Blue: 	#000000 rgb(26,42,94)
CJPH Light Blue:	#E0E5F6 rgb(224,229,246)
CJPH Yellow: 		#FFBE13 rgb(255,190,19)
CJPH Gold:			#C08B00 rgb(192,139,0)


*/

/**** End Colors ****/

/**** Declare Font Family ****/

@import "../fonts/stylesheet.css";

/**** End Declare Font Family ****/


.button, button, 
input[type='button'], input[type='reset'], 
input[type='submit'],
.wp-block-button__link {
	padding: 0.4em 1em 0.4em 1em;
	border: 2px solid;
	/*border-radius: unset;
	clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);*/

	color: #FFF;
	background-color: #000000;
	border: 2px solid #000000;
}
.button:hover, .button:focus,
button:hover, button:focus,
input[type='button']:hover, input[type='button']:focus, 
input[type='reset']:hover,input[type='reset']:focus, 
input[type='submit']:hover,input[type='submit']:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus {
	color: #FFF;
	background-color: #000000;
	border: 2px solid #000000;
}

.button.secondary, button.secondary, 
input[type='button'].secondary, input[type='reset'].secondary, 
input[type='submit'].secondary {
	color: #FFF;
	background-color: #000000;
	border: 2px solid #000000;
}
.button.secondary:hover, .button.secondary:focus,
button.secondary:hover, button.secondary:focus,
input[type='button'].secondary:hover, input[type='button'].secondary:focus, 
input[type='reset'].secondary:hover,input[type='reset'].secondary:focus, 
input[type='submit'].secondary:hover,input[type='submit'].secondary:focus {
	color: #FFF;
	background-color: #000000;
	border: 2px solid #000000;
}

.button.outline, button.outline, 
input[type='button'].outline, input[type='reset'].outline, 
input[type='submit'].outline {
    border-color: #000000;
    background-color: #FFF;
	color: #000000;
}
.button.outline:hover, .button.outline:focus,
button.outline:hover, button.outline:focus, 
input[type='button'].outline:hover, input[type='button'].outline:focus, 
input[type='reset'].outline:hover, input[type='reset'].outline:focus, 
input[type='submit'].outline:hover, input[type='submit'].outline:focus {
    border-color: #000000;
    background-color: #000000;
	color:#FFF;
}
.button.pin,
.main a.button.pin {
    position: relative;
	border: unset;
}
p a.button.pin,
.main p a.button.pin,
.main a.button.pin {
    font-size: initial;
}
a.button.pin,
.main a.button.pin {
    padding: 0.4em 1.4em 0.4em 3em;
	border-radius: 0;
    position: relative;
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 22px 100%);
	border: unset;
}
a.button.pin:hover, 
a.button.pin:focus,
.main a.button.pin:hover,
.main a.button.pin:focus {
	background: #000000;
    color: #fff;
	/*border: unset;*/
	font-size: initial;
    padding: 0.4em 1.4em 0.4em 3em;
}
.button.pin span,
.main a.button.pin span {
    position: absolute;
	transform: rotate(-31deg) skew(-5deg, 31deg);
    top: -4px;
    border-left: 2px solid #00aeef;
    width: 7px;
    height: 52px;
    border-right: 2px solid #fff;
    left: 16px;
	transition: all 0.5s ease;
}
.button.pin:hover span,
.main a.button.pin:hover span {
	border-left: 4px solid #00aeef;
    width: 12px;
    border-right: 4px solid #fff;
    left: 18px;
}

.button.pipe,
.flexi-section .button.pipe {
  display: inline-block;
  padding: 0.75rem 2.25rem;
  border-radius: 10rem;
  color: #fff;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.15rem;
  transition: all 0.3s;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.button.pipe:after,
.flexi-section .button.pipe:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #0cf;
  border-radius: 10rem;
  z-index: -2;
}
.button.pipe:before,
.flexi-section .button.pipe:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30%;
  height: 100%;
  background-color: transparent;
  border: 2px solid #000;
  transition: all 0.3s;
  border-radius: 10rem;
  z-index: -1;
}
.button.pipe:hover,
.flexi-section .button.pipe:hover {
  padding: 0.75rem 2.25rem;
  font-size: 1rem;
  letter-spacing: 0.15rem;
}
.button.pipe:hover:before,
.flexi-section .button.pipe:hover:before {
  left: 70%;
}


/****** Start Common Styles ******/
html,body {
	color:#101010;
	font-family: 'Roboto Flex','Lato Regular', sans-serif;
	font-weight: 400;
}
h1,h2,h3,h4,h5,h6 {
	font-family:'Roboto Flex','Lato Bold', sans-serif;
}
h1,h2,h3,h4,h5,h6,p {
	line-height: 1.3;
}

a {
	color: #000000;
	transition: all 0.5s ease
}
a:hover,
a:focus {
	color:#000000;
}
.lead,.main .inner-content p.lead,p.lead {
	font-size: 120%;
	text-align:center;
	font-family: 'Roboto Flex','Lato Bold', sans-serif;
}

.black-text {
	color:#101010;
}
.white-text,
.default-text {
	color:#FFFFFF;
}
.yellow-text {
	color:#D3B269;
}
.blue-text {
	color:#000000;
}
.dark-blue-text {
	color:#000000;
}

.hcr #status.preloader-hide {
    transform: scale(0);
}

/******  End Common Styles  ******/

/****** Start Page Container ******/
.page-container {
	background-color: #FFF;
}
/******  End Page Container  ******/

/****** Start Header Section ******/
header .preheader.own-row {
	background-color: #000000;
	border-bottom: 1px solid #000000;
	grid-column: 2/14;
}
header .header.right-preheader .preheader {
	border-bottom: none;
}

header .preheader ul i {
    color: #FFF;
}
.swaa header .preheader ul i {
    color: #D3B269;
}
header .preheader a {
    color: #FFF;
}
header .preheader a {
    color: #FFF;
}
header .preheader a:hover,
header .preheader a:focus {
    color: #101010;
}
.swaa header .preheader a {
    color: #000;
}
.swaa header .preheader a:hover,
.swaa header .preheader a:focus {
    color: #444;
}

header .header.right-preheader .preheader ul i,
.mobile-nav-handler i {
	color: #FFF;
}
header .header.right-preheader.header--fixed .preheader ul i,
.mobile-nav-handler i {
	color: #000000;
}
header .header.right-preheader .preheader a {
	color: #FFF;
	border-bottom: unset;
	text-decoration: unset;
	z-index: 1;
	position: relative;
}
}
header .header.right-preheader .preheader a:hover,
header .header.right-preheader .preheader a:focus {
	color: #D3B269;
}
header .header {
	background: #FFF;
	border-bottom: 2px solid #000000;
	transition: all 0.5s ease;
    grid-template-rows: repeat(2,auto);
}
.swaa header .header {
	background: transparent /*rgba(0,0,0,0.6)*/;
	border-bottom:none;
	align-items: flex-start;
}
header .header.centered .preheader .left-content {
    background-color: #000000;
}
header .header.centered .preheader .right-content {
    background-color: #000000;
}
.swaa header .header.centered .preheader .left-content,
.swaa header .header.centered .preheader .right-content {
    background-color: transparent;
}

header .nav-link--home a {
    flex: 1 0 100px;
}
.page-container>header {
    z-index: 1;
    position: relative;
}
.swaa .page-container>header {
}
nav.nav-bar.top-nav .main-nav>li {
	font-size:1.2em;
    padding: 1em 0;
    margin: 0 0 0 1.18em;
}
.hcr nav.nav-bar.top-nav .main-nav>li {
    padding: 1.25em 1em;
    margin: 0 0.5em;
}
.hcr nav.nav-bar.top-nav .main-nav>li:hover {
    background: #000000;
}
header.sbs-header .header {
    grid-template-columns: auto repeat(12,minmax(auto,4.92708333em)) auto;
    grid-gap: 0 1.125em;
	background: linear-gradient(to right, #fff 60%,#000000 60%,#000000 100%);
	border-bottom: unset;
}
header .header.right-preheader .logo {
    grid-row: span 2;
    z-index: 1;
	margin-bottom: 4px;
}
header.sbs-header .header.right-preheader .logo {
    grid-column: 2 / 6;
    max-width: unset;
}
header.sbs-header .header.right-preheader .logo img {
	max-width: unset;
}
header.sbs-header .nav-link--home a {
    flex: 0 0 4em;
}
header.sbs-header .header .sbs-inner-header {
    /*grid-template-columns: auto repeat(6,minmax(auto,5.625em)) repeat(4,minmax(auto,5.625em)) auto;
    grid-gap: 1em;*/
}
header.sbs-header .right-preheader .sbs-inner-header {
    grid-column: 6 / span 8;
	display:grid;
    background: #000000;
	-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 19px 100%);
	clip-path: polygon(0 0, 100% 0%, 100% 100%, 19px 100%);
	position: absolute;
    width: 62.5%;
    bottom: 0;
    top: 0;
	right:0;
}
header.sbs-header .header--fixed.right-preheader .sbs-inner-header {
    width: 100%;
}
header.sbs-header .header .preheader,
header.sbs-header .header .nav-container,
header.sbs-header .header .mobile-nav-handler {
    grid-column: 7 / span 7;
}
header.sbs-header .header .mobile-nav-handler {
    grid-gap: 0.5em;
}
header.sbs-header .header .mobile-nav-handler a {
	font-size: 1em;
}
header.sbs-header .header .mobile-nav-handler a:first-child {
    grid-column: 1/2;
}

header.sbs-header .right-preheader .sbs-inner-header>span {
    position: absolute;
	transform: rotate(-30deg) skew(-5deg, 31deg);
    top: -8px;
	border-left: 2px solid #00aeef;
    width: 6px;
    height: 52px;
    border-right: 2px solid #fff;
    left: 12px;
}


/****** End Header Section ******/


/****** Start Nav Section ******/

body .mobile-nav {
    background-color: #FFF;
}
body.theme-color-custom .mobile-nav {
    background-color: #FFF;
}
body.theme-color-custom .mobile-nav .nav-link {
    color: #000000;
	border-bottom: 1px dotted #000000;
	transition: all 1s ease;
	text-decoration: none;
}
.hamburger.lines:hover.active body.theme-color-custom span:after, 
.hamburger.lines:hover.active body.theme-color-custom span:before, 
.hamburger body.theme-color-custom span, 
.hamburger body.theme-color-custom span:after, 
.hamburger body.theme-color-custom span:before, 
body.theme-color-custom .bg-secondary-color, 
body.theme-color-custom .hamburger.lines:hover.active span:after, 
body.theme-color-custom .hamburger.lines:hover.active span:before, 
body.theme-color-custom .hamburger span, 
body.theme-color-custom .hamburger span:after, 
body.theme-color-custom .hamburger span:before
/*body.theme-color-custom .nav-link--home__text:after*/ {
    background-color: #000000;
    color: #000000;
}
body.theme-color-custom .nav-bar.top-nav .nav-link {
    color: #000000;
}
body.theme-color-custom.swaa .nav-bar.top-nav .nav-link {
    color: #000;
}
body.theme-color-custom.swaa .nav-bar.top-nav ul .sub-menu .nav-link {
    color: #444;
}
body.theme-color-custom .nav-bar.top-nav ul .sub-menu .nav-link {
    color: #101010;
}
/*body.theme-color-custom .nav-link .nav-link {
    color: #000000;
}*/
body.theme-color-custom--active.nav-link:visited, 
body.theme-color-custom .nav-link--active, 
body.theme-color-custom .nav-link:hover {
    border-color: #000000;
}
body.hcr.theme-color-custom--active.nav-link:visited, 
body.hcr.theme-color-custom .nav-link--active, 
body.hcr.theme-color-custom .nav-link:hover,
.hcr nav.nav-bar.top-nav .main-nav>li:hover>.nav-link,
.hcr nav.nav-bar.top-nav .main-nav>li:active>.nav-link {
    border-color: #FFF;
	color:#FFF;
}
body.theme-color-custom .nav-bar.top-nav ul .sub-menu .nav-link:hover,
body.theme-color-custom .nav-bar.top-nav ul .sub-menu .nav-link:focus {
    color: #000000;
}

.header--fixed .nav-link {
	color: #000000;
}
.header--fixed .nav-link--active, 
.header--fixed .nav-link:hover {
	border-bottom-color: #000000!important;
}
.header--fixed .hamburger span, 
.header--fixed .hamburger span:after, 
.header--fixed .hamburger span:before {
	background-color: #000000!important;
}
.hamburger span, 
.hamburger span:after, 
.hamburger span:before {
	background-color: #000000!important;
}
header .preheader ul.login button {
    margin-right: 0.725em;
}
body.frontpage .header:not(.header--fixed) .nav-link--home__text:after {
    background-color: #000000;
}
body.frontpage .header:not(.header--fixed) .nav-link {
    color: #000000;
}
body.frontpage .header:not(.header--fixed) .nav-link--active, 
body.frontpage .header:not(.header--fixed) .nav-link:hover {
	border-bottom-color: #000000;
}
body.frontpage .header:not(.header--fixed) .hamburger span, 
body.frontpage .header:not(.header--fixed) .hamburger span:after, 
body.frontpage .header:not(.header--fixed) .hamburger span:before {
    background-color: #000000;
}
a.nav-link.nav-link--black {
    color: #000000;
	transition: all 0.5s ease
}
a.nav-link.nav-link--black:hover {
	border-color: #000000
}
.nav-link--home {
    color: #000000;
}
nav.nav-bar.top-nav .sub-menu .menu-item-has-children::after {
    content: '';
    position: absolute;
	bottom: 20px;
    right: 0px;
	border-left: 0.625em solid transparent;
    border-right: 0.625em solid transparent;
    border-top: 0.625em solid #000000;
	transition: all 0.75s ease;
}
nav.nav-bar.top-nav .sub-menu .menu-item-has-children:hover::after {
    border-top: 0.625em solid transparent;
    border-bottom: 0.625em solid transparent;
    border-right: 0.625em solid #000000;
	bottom: 12px;
}
.theme-two .mobile-nav .sub-menu .hide-in-mobile-nav,
.theme-two .mobile-nav li.hide-in-mobile-nav>a {
	display:none;
}
.theme-two .mobile-nav li.hide-in-mobile-nav {
	padding: 0;
    border-bottom: 0;
}
.theme-two .mobile-nav .sub-menu {
	padding:0;
}

.theme-two .mobile-nav li a.nav-link{
	text-align:center;
}
.theme-two .mobile-nav li a.nav-link,
.theme-two .mobile-nav li a.nav-link:hover,
.theme-two .mobile-nav li a.nav-link:focus {
	border-bottom: 0;
}
.theme-two .mobile-nav li {
	padding: 0.5em 1em;
    background: #000000;
    border-bottom: 1px dotted #000000;
    color: #000000;
}
.theme-two .mobile-nav li a {
    color: #000000;
}
.theme-two .mobile-nav li a:hover,
.theme-two .mobile-nav li a:focus {
    color: #afb3ba;
}
.theme-two .mobile-nav .nav-link::before, 
.theme-two .mobile-nav .nav-link::after {
	content: unset;
}
.theme-two .mobile-nav li a {
    margin: 0;
	padding: 0.3em 0;
}
.theme-two .mobile-nav .preheader li {
	padding: 0.7845em 1em;
}
.theme-two .mobile-nav .nav-bar,
.theme-two .mobile-nav .preheader ul.login {
    grid-gap: 0;
}
.theme-two .mobile-nav .preheader ul i {
    margin-right: 8px;
    font-size: 1.2em;
}

body.theme-color-custom .footer-nav .nav-link {
	color: #000000;
	border-bottom: 1px dotted #000000;
	border-bottom: unset;
}
body.theme-color-custom .footer-nav .nav-link:hover,
body.theme-color-custom .footer-nav .nav-link:focus {
	color: #101010;
	border-bottom: 1px dotted #101010;
	border-bottom: unset;
}

body.theme-color-custom--active.nav-link:visited, 
body.theme-color-custom .footer-nav .nav-link--active, 
body.theme-color-custom .footer-nav .nav-link:hover {
	color: #101010;
    border-color: #101010;
}
.footer-nav .nav-link::before {
	color: #000000;
	transition: all 0.5s ease
}
.footer-nav .nav-link:hover::before {
	color: #FFF;
}
.mobile-nav .nav-link::before, 
footer .menu .nav-link::before {
    content: "\f6e3";
	transition: all 350ms ease;
}
.mobile-nav .nav-link::after, 
footer .menu .nav-link::after {
    content: "\10f6e3";
	transition: all 350ms ease;
}
.mobile-nav .nav-link:hover::before,
footer .menu .nav-link:hover::before,
footer .menu .nav-link.nav-link--active::before,
footer .menu .nav-link.nav-link--active::before {
    content: "\f6e3";
	transform: rotate(30deg) translate(-4px, -11px);
}
.mobile-nav .nav-link:hover::after,
footer .menu .nav-link:hover::after,
footer .menu .nav-link.nav-link--active::after,
footer .menu .nav-link.nav-link--active::after {
    content: "\10f6e3";
	transform: rotate(30deg) translate(-4px, -11px);
}

/****** End Nav Section ******/




/* Content Section */
.swaa .content-container {
	position:relative;
}
.content-container .slider {
}
.swaa .content-container .banner-container {

}
.banner-container .bg-banner-image {
	height: 8.5em;
	margin-top: -0.9em;
    z-index: 0;
    position: relative;
}
.banner-container .bg-banner-image {
    background-attachment: initial;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr max-content;
}

.banner-container.type2 .bg-banner-image {
    background-position: right;
    background-size: 80%;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}
.home .banner-container.type3 .bg-banner-image {
	grid-template-rows: 0 minmax(auto,100px) auto;
}
.banner-container.type3 .bg-banner-image {
    background-position: center;
    background-size: cover;
	justify-content: flex-end;
    grid-template-columns: 1em minmax(auto,1fr) 1em;
	grid-template-rows: auto minmax(auto,100px) auto;
	grid-gap: 1.125em 0;
	height: 10em;
}
.banner-container.type3 .bg-banner-image.olt1 {
    grid-template-columns: 1em minmax(auto,40%) 1em;
	grid-gap: 0.125em 0;
	align-content: flex-end;
}
.banner-container.type3 .bg-banner-image.olt3 {
	height: 14em;
}
.bg-banner-image.use-overlay:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0px;
    /* width: 100%; */
    /* height: 100%; */
    background-position: center;
    background-repeat: no-repeat;
    right: 0;
    bottom: -300px;
    background-size: 100%;
    z-index: 0;
}
.bg-banner-image.use-overlay:after {
    bottom: -160px;
}
.bg-banner-image.use-overlay.olt1:after {
    background-position: bottom;
	height:101%!important;
	bottom:0;
}
.bg-banner-image.use-overlay.olt2:after,
.bg-banner-image.use-overlay.olt3:after {
    background-position: bottom;
	height:101%!important;
	bottom:0;
}
.banner-container .bg-banner-video {
    position: relative;
	height: 600px;
}
.banner-container .bg-banner-video video {
	width: 100vw;
    height: 100vh;
    object-fit: cover;
    position: fixed;
	top:0;
	left:0;
}
/*.banner-container .bg-banner-video:after {
	content:'';
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background: rgba(251,92,8,0.2);
}*/
.content-container .banner .banner-content, 
.content-container .banner-container .banner-content {
	margin: 0;
    background: unset;
	background: -moz-linear-gradient(90deg, rgba(27,18,13,1) 0%, rgba(27,18,13,1) 40%, rgba(27,18,13,0.4990589985994398) 70%, rgba(27,18,13,0) 100%);
	background: -webkit-linear-gradient(90deg, rgba(27,18,13,1) 0%, rgba(27,18,13,1) 40%, rgba(27,18,13,0.4990589985994398) 70%, rgba(27,18,13,0) 100%);
	background: linear-gradient(90deg, rgba(27,18,13,1)  40%, rgba(27,18,13,0.4990589985994398) 70%, rgba(27,18,13,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);

	background: linear-gradient(90deg, rgba(27,18,13,1) 40%, rgba(27,18,13,0) 100%);
    background-color: rgb(4 22 55 / 50%);
	color: #FFF;
    padding: 0 1em;
    border-radius: 0;
    width: 100%;
    text-align: center;
	grid-row: 2/3;
}
.content-container .banner .banner-content, 
.content-container .banner-container.type2 .banner-content {
	margin: 0;
    background: unset;
	
	
	background: -moz-linear-gradient(left,  rgba(108,144,202,1) 0%, rgba(108,144,202,1) 50%, rgba(108,144,202,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(108,144,202,1) 0%,rgba(108,144,202,1) 50%,rgba(108,144,202,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(108,144,202,1) 0%,rgba(108,144,202,1) 50%,rgba(108,144,202,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#006c90ca',GradientType=1 ); /* IE6-9 */
	
	color: #FFF;
    padding: 0;
    border-radius: 0;
    width: 80%;
    text-align: left;
	grid-row: 1/2;
	align-items: center;
	display: grid;
    grid-template-columns: 1fr;
}
.content-container .banner-container.type3 .banner-content {
	margin: 0;
	/*background: -moz-linear-gradient(left,  rgba(0,174,239,1) 0%, rgba(0,174,239,1) 50%, rgba(0,174,239,0) 100%); /* FF3.6-15 */
	/*background: -webkit-linear-gradient(left,  rgba(0,174,239,1) 0%,rgba(0,174,239,1) 50%,rgba(0,174,239,0) 100%); /* Chrome10-25,Safari5.1-6 */
	/*background: linear-gradient(to right,  rgba(0,174,239,1) 0%,rgba(0,174,239,1) 50%,rgba(0,174,239,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#0000AEEF',GradientType=1 ); /* IE6-9 */
	background:transparent;
	color: #FFF;
    padding: 0;
    border-radius: 0;
    text-align: left;
	grid-column: 2/3;
	grid-row: 2/3;
	align-items: flex-end;
	display: grid;
    grid-template-columns: 1fr;
	grid-template-rows: repeat(2,1fr);
	z-index: 2;
}
.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
    background: rgb(33 53 118 / 60%);
    width: auto;
    max-width: 100%;
    padding: 10px;
    border-radius: 10px;
}
.home .content-container .banner-container.type3 .banner-content .banner-inner-content>div {
	display:none;
}
.content-container .banner-container.type3 .olt1 .banner-content {
	grid-row: 2/3;
}
.content-container .banner-container .frontpage.banner-content {
    grid-template-rows: auto;
	position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 7% 1em 0 1em;
	width:100%;
}
.content-container .banner-container .banner-content h1 {
	font-size: 1.8em;
	padding:0 1.75em;
	margin: 0;
	justify-self: flex-start;
	text-align:right;
}
.content-container .banner-container.type3 .banner-content h1 {
	font-size: 1.3em;
	padding:0;
	justify-self: flex-end;
}
.content-container .banner-container.type3 .olt1 .banner-content h1 {
	font-size: 1.1em;
	line-height: 1.1;
    grid-row: 2 / 3;
}
.content-container .banner-container.type3 .olt2 .banner-content h1,
.content-container .banner-container.type3 .olt3 .banner-content h1 {
	justify-self: flex-start;
	text-align: left;
}
.content-container .banner-container .banner-content h4 {
	font-size: 0.9275em;
}
.content-container .banner-container .banner-content h4 .button {
	font-size: 0.65em;
}
.content-container .main.boxed>section {
    grid-column: 2/3;
    grid-row: 2/3;
}

/******* Off Canvas ******/
.off-canvas-container {
    position: absolute;	
    right: 0;
    top: 0;
	z-index: 1;
}
.off-canvas-inner {
	position:relative;
	display:grid;
	grid-template-columns:50px 200px;
    transition: all 1s ease;
	align-items: end;
}

.off-canvas-button-open {
	position: absolute;
	top:98px;	
	right:0;
    background-color: #fff;
	border: 1px solid #000000;
	border-radius: 10px 0 0 10px;
	color: #000000;
    padding: 0.3em 0.1em;
	width:50px;
    height: 72px;
    text-align: center;
    font-weight: 600;
	font-size: 0.8em;	
	cursor:pointer;
	line-height: 1.25;
}
.home .off-canvas-button-open {
	top:98px;	
}
.off-canvas-button-close {
	position: absolute;
    top: 118px;
    background-color: #fff;
	border: 1px solid #000000;
	border-radius: 10px 0 0 10px;
    color: #000000;
    padding: 0.3em 0.1em;
    width: 50px;
    height: 50px;
    text-align: center;
    font-weight: 600;
    cursor: pointer;
    align-items: center;
    font-size: 20px;
}
.off-canvas-button-close {
    top: 118px;
}
.off-canvas-form-container {
	position: absolute;
    max-width: 200px;
	top:0;	
	right:-200px;
}
.off-canvas-container .rad,
.off-canvas-button-close {
	display: none;
	opacity: 0;
}
.off-canvas-button-open {
	
}
.off-canvas-input-open:checked~.off-canvas-form-container {
	right: 0px;
}
.off-canvas-input-open:checked+.off-canvas-button-close {
	display:grid;
	opacity:1;
}
@media (min-width: 20em /*320px*/) {
	.off-canvas-button-open {
		top: 150px;
	}
	.off-canvas-button-close {
		top: 160px;
	}
}
@media (min-width: 20em /*320px*/) {
	.home .off-canvas-button-open {
		top: 170px;
	}
	.home .off-canvas-button-close {
		top: 180px;
	}
}

@media (min-width: 40em /*640px*/) {
	.off-canvas-inner {
		grid-template-columns:70px 260px;
	}
	.off-canvas-form-container {
		max-width: 260px;
		right:-260px;
	}
	.off-canvas-button-open {
		top:170px;
		padding: 0.3em;
		width:70px;
		height: 94px;
		font-size: 1em;	
		line-height: 1.3;
	}
	.off-canvas-button-close {
		top:190px;
		padding: 0.3em;
		width: 70px;
		height: 70px;
		font-size: 30px;
	}
}
@media (min-width: 48em /*768px*/) {
}

/****** Start Homepage Content ******/
.section__hero-content {
	color: #000000;
    background-color: rgba(205, 220, 220, 0.85);
}
.section__hero-content .section__description {
    font-size: 1.1em;
    font-weight: 700;
    letter-spacing: 0.04em;
}
.content-container>section, .content-container>div {
    grid-column: span 6;
    position: relative;
	display:grid;
}
.content-container .aside {
	background: gold;
}
.content-container .services.boxed {
	grid-column-start: span 6;
	display:grid;
	grid-template-columns: auto minmax(auto,71.5em) auto;
	grid-template-rows: auto 1fr auto;
	grid-gap: 1em 1.75em;
}
.content-container .services.boxed .inner-content.grid-theme-1 {
	grid-column: 2/3;
	grid-row: 2/3;
	text-align: justify;
}
.content-container .services.boxed .inner-content.grid-theme-2 {
	grid-column: 2/3;
	grid-row: 2/3;
	text-align: justify;
}
.content-container .services.boxed .inner-content.services-grid-t3 {
	grid-column: 2/3;
	grid-row: 2/3;
	text-align: justify;
}
.content-container .services.boxed .inner-content.grid-theme-4 {
	grid-column: 2/3;
	grid-row: 2/3;
	text-align: justify;
}
.grid-theme-1 .services figure {
	order: 1;
	border-radius: 50%;
}
.grid-theme-2 .services figure {
	order: 1;
	border-radius: 0.3em;
}
.services-grid-t3 .services figure {
	order: 1;
	border-radius: 50%;
}
.grid-theme-4 .services figure {
	order: 1;
	border-radius: 0%;
	/*clip-path:polygon(0% 15%, 20% 0%, 80% 0%, 100% 15%, 100% 85%, 80% 100%, 20% 100%, 0% 85%, 35% 80%, 35% 20%, 65% 20%, 65% 80%, 35% 80%, 0% 85%);*/
}
.grid-theme-4 .services figure::after {
    content: '';
    position: absolute;
    top: 20%;
    left: 33%;
    right: 33%;
    bottom: 20%;
    background-color: rgb(177 204 225 / 60%);
}
.grid-theme-1 .services header.entry-header {
	order: 2;
}
.grid-theme-2 .services header.entry-header {
	order: 2;
}
.services-grid-t3 .services header.entry-header {
	order: 2;
}
.grid-theme-4 .services header.entry-header {
	order: 2;
}
.grid-theme-1 .services header h2.entry-title {
	font-size: 1.25em;
	margin: 0;
}
.grid-theme-2 .services header h2.entry-title {
	font-size: 1.25em;
	margin: 0;
}
.services-grid-t3 .services header h2.entry-title {
	font-size: 1.25em;
	margin: 0;
}
.grid-theme-4 .services header h2.entry-title {
	font-size: 1.25em;
	margin: 0;
}
.grid-theme-1 .services .services-grid .type-services {
	background-color: #FFE030;
}
.grid-theme-2 .services .services-grid .type-services {
	background-color: #2B17FF;
}
.services-grid-t3 .services .services-grid .type-services {
	background-color: #FFE030;
}
.grid-theme-2 .services .services-grid .type-services {
	background-color: #2B17FF;
}
.grid-theme-4 .services .services-grid .type-services .button {
	color: #FFE030;
	background: #2B17FF;
	border: 2px solid #2B17FF;
}
.grid-theme-2.services .services-grid .type-services .button {
	color: #2B17FF;
	background: #FFE030;
	border: 2px solid #FFE030;
}
.services-grid-t3.services .services-grid .type-services .button {
	color: #2B17FF;
	background: #FFE030;
	border: 2px solid #FFE030;
}
.grid-theme-4.services .services-grid .type-services .button {
	color: #2B17FF;
	background: #FFE030;
	border: 2px solid #FFE030;
}
.grid-theme-1 .services .services-grid .type-services .button:hover,
.grid-theme-1 .services .services-grid .type-services .button:focus {
	color: #2B17FF;
	background: transparent;
	border: 2px solid #2B17FF;
}
.grid-theme-2.services .services-grid .type-services .button:hover,
.grid-theme-2 .services .services-grid .type-services .button:focus {
	color: #FFE030;
	background: transparent;
	border: 2px solid #FFE030;
}
.services-grid-t3 .services .services-grid .type-services .button:hover,
.services-grid-t3 .services .services-grid .type-services .button:focus {
	color: #2B17FF;
	background: transparent;
	border: 2px solid #2B17FF;
}
.grid-theme-4.services .services-grid .type-services .button:hover,
.grid-theme-4 .services .services-grid .type-services .button:focus {
	color: #FFE030;
	background: transparent;
	border: 2px solid #FFE030;
}
.blogpost-meta i {
    color: #000000;
}
.front-page .content-container .main,
.page-id-2 .content-container .main {
	background-color: #000000;
	color: #FFF;
	padding-top: 1em;
	margin:0;
}
.main a:not(.button) {
	/*border-bottom: 1px dotted #000000;*/
}
.main a:not(.button):hover,
.main a:not(.button):focus {
	/*border-bottom: 1px dotted #000000;*/
}
#sb_instagram .sb_instagram_header a {
	border-bottom:unset;
}
.main a.button,
.wp-block-button__link {
	position: relative;
	padding: 0.8em 2em 0.8em 2em;
	border: 2px solid;
	/*border-radius: 50px 50px 30px 30px;*/
	/*clip-path: polygon(10% 0, 90% 0, 100% 20%, 100% 80%, 90% 100%, 10% 100%, 0 80%, 0 20%);*/
	/*z-index:1;*/
	-webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -ms-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}
.main a.button:hover,.main a.button:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus {
	padding: 0.5em 1.2em 0.5em 1.2em;
	font-size: 1.2em;
}
.main a.button span {
	z-index:99;
}
/*.main a.button:before {
    color: #000000;
    background: #000000;
    content: '\f324';
    width: 34px;
    height: 100%;
    border-bottom-right-radius: 50px;
    border-top-right-radius: 50px;
    border-top-left-radius: .4em;
    border-bottom-left-radius: .4em;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
	z-index:9;
    position: absolute;
    top: 0;
    left: 0;
	font-family: "Font Awesome 5 Pro";
    bottom: 0;
    right: 0;
    display: grid;
    align-items: center;
    justify-content: flex-end;
    grid-template-columns: 25px;
	opacity:1;
}*/
.main a.button:after {
 /*   content: '\f10f324';*/
}
/*.main a.button:hover:before {
    background: #000000;
    color: #000000 !important;
    width: 100% !important;
    border-bottom-right-radius: .4em !important;
    border-top-right-radius: .4em !important;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
}*/
.main .about {
	background:#FFE030;
}
.main .about .button {
	color: #FFE030;
	background: #2B17FF;
	border: 2px solid #2B17FF;
}
.main .about .button:hover,
.main .about .button:focus {
	color: #2B17FF;
	background: transparent;
	border: 2px solid #2B17FF;
}
.content-container .intro-section {
    grid-column: span 6;
    background-color: #000000;
    display: grid;
    gap: 2em 1.125em;
    grid-template-columns: auto minmax(auto,71.5em) auto;
    grid-template-rows: auto 1fr auto;
	margin-top: -0.4em;
}
.content-container .inner-intro {
    display: grid;
    gap: 2em;
    grid-template-columns: 1fr;
    grid-column: 2/3;
    grid-row: 2/3;
}
.content-container .inner-intro h3,
.content-container .inner-intro p {
	font-size: 1.1em;
	text-align: center;
	margin:0;
}
/****** End Homepage Content ******/

/****** Start Inner Page Content ******/

.page-title {
    text-align: center;
}
i.fa-ellipsis-h {
	padding: 0 12px;
	margin:0;
}
.content-container .banner {
	color: #FFF;
    background-color: #000000;
}
.content-container .banner h1 {
}
.content-container .banner .section__description {
    font-size: 1.1em;
    font-weight: 700;
    letter-spacing: 0.04em;
}
.content-container.coming-soon {
    background-image: url(/wp-content/uploads/2023/07/default-banner.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
	position:relative;
}
.content-container.coming-soon::before {
    content: '';
    position: absolute;
    top: 0;
	left:0;
	right:0;
	bottom:0;
	background: rgba(0,0,0,0.5);
}
.content-container.coming-soon .intro-section h2 {
	margin:0;
}
.content-container.coming-soon .main.boxed {
	grid-template-rows: auto 70vh auto;
	align-items: center;
	margin-top:0;
}
.content-container.coming-soon .main .inner-content {
	z-index:1;
}
.content-container.coming-soon .main .inner-content h1,
.content-container.coming-soon .main .inner-content h2,
.content-container.coming-soon .main .inner-content p {
	text-align: center;
	color:#fff;
}
.content-container.coming-soon .main .inner-content a {
	color:#fff;
}


/****** Start Table Layout ******/
.mag-table-wrapper .mag-table {
	background: #FFF;
	color: #000000;
}
.mag-table tr:first-child,
.mag-table td:first-child {
    background: #FFE030;
}
.mag-table td:first-child {
	border-right-color: #000000;
}
.mag-table-cell {
	border-color: 101010;
	background: #FFE030;
}
/****** End Table Layout ******/


/****** Start Contact Page Contact Details & Form ******/

.contact-section .contact-info i {
	color: #000000;
	width: 1.8em;
}

/****** End Contact Page Contact Details & Form ******/

/*****  Login page   *****/

.login-page .mag-grid div {
	background-color:#FFE030;
}

/***** End Login page   *****/

/****** End Inner Page Content ******/


.product-grid__item {
	background:#FFE030;
}
.mag-grid a.haverlogolink {
	border-bottom: 0;
    display: flex;
    max-width: 340px;
    float: none;
    margin: 0 auto;
}
.mag-grid img.haverlogo {
	max-width: 80%;
	margin:0 auto;
	float: left;
	padding: 0 0 20px 0;
}
.test-snip-container,
.cta-container {
	display:grid;
	grid-template-columns: auto minmax(auto,71.5em) auto;
    grid-gap: 1.125em;
    background: #D3B269;
    padding: 3em 0;
    text-align: center;
}
.test-snip-container {
    background: #000000;
	color:#D3B269;
}
.test-snip-container h4,
.test-snip-container p {
	font-size: 1.1em;
	margin: 0;
}
.cta-container {
    background: #D3B269;
}
.test-snip-inner,
.cta-inner {
    grid-column: 2/3;
}
.sample-report {
	margin-bottom: 2em;
}
.wp-block-search__button-outside.wp-block-search__text-button.wp-block-search {
    max-width: 32em;
}



/**** Start Posts Grid Styles ****/

.posts-grid {
	display: flex;
    grid-gap: 2em;
    margin-top: 1em;
    margin-bottom: 2em;
    flex-flow: row wrap;
    justify-content: center;
}
.posts-grid article {
	flex: 0 1 360px;
	text-align: center;
	background-color: #000000;
	color: #000000;
	display:grid;
	gap: 1em;
    align-content: space-between;
}
.posts-grid .entry-header {
    padding: 0 0.5em;
}
.posts-grid article h4 {
	font-size: 1.1em;
	margin: 1em 0 0;
}
.main .posts-grid article a {
	color: #fff;
	text-decoration: underline dotted 1px;	
	text-decoration-line: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 1px;
}
.main .posts-grid article a:hover,
.main .posts-grid article a:focus {
	color: #D3B269;
}
.posts-grid figure {
	position: relative;
	margin: 0;
}
.posts-grid article figcaption {
	display:grid;
	align-content: center;
	align-items: center;
	background: #D3B269;
	color: #000000;
	position: absolute;
	padding: 0 1em;
	text-align:center;
	overflow:hidden;
	width: 100%;
	height:0;
    top: 0;
    left: 0;
    right: 0;
    bottom: unset;
	transition: all 500ms ease-in;

}
.posts-grid article:hover figcaption {
    height: 100%;
    top: 0;
	
}
.main .posts-grid article figcaption a {
	color: #000000;
	text-decoration: underline dotted 1px;	
	text-decoration-line: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 1px;
}
.main .posts-grid article figcaption a:hover,
.main .posts-grid article figcaption a:focus {
	color: #000000;
	opacity: 0.8;
}
.posts-grid article .entry-footer {
	background-color:#D3B269;
	padding: 0.4em 1em;
	display: grid;
}
.posts-grid article .entry-footer a {
	color: #000000;
	border-color: #000000;
}
.posts-grid article .entry-footer a:hover,
.posts-grid article .entry-footer a:focus {
	color: #000000;
	border-color: #000000;
	opacity: 0.8;
}
.main aside ul {
    border: 2px solid #D3B269;
	border-radius: 0 0 10px 10px;
}
aside ul {
    list-style: none;
    padding-left: 0;
}
aside ul li {
	padding: 0.5em 1em;
}
.main aside ul li {
    color: #000000;    
    border-bottom: 2px solid #D3B269;
}
.main aside ul li:last-child {
    border-bottom: 0;
}
.main aside ul li a {
    color: #101010;
	border-bottom:1px dotted #101010;
}
.main aside ul li:hover {
    background: #c7daf9;
}
/*.main aside ul li:nth-of-type(even) {
    background-color: #B1CCE1;    
    color: #000000;
}
.main aside ul li:nth-of-type(even) a {
    color: #000000;
	border-bottom:1px dotted #000000;
}
.main aside ul li:nth-of-type(even) a:hover {
    color: #657896;
	border-bottom:1px dotted #000000;
}
.main aside ul li:nth-of-type(odd) {
    background-color: #000000;
    color: #000000;    
}
.main aside ul li:nth-of-type(odd) a {
    color: #101010;
	border-bottom:1px dotted #101010;
}
.main aside ul li:nth-of-type(odd) a:hover {
    color: #fff;
	border-bottom:1px dotted #fff;
}*/
.main aside h4 {
    font-size: 1em;
    margin: 0;
    background: #D3B269;
    text-align: center;
    padding: 0.5em 1em;
    border-radius: 10px 10px 0 0;
}
.main.boxed nav.navigation.post-navigation,
.main-with-aside nav.navigation.post-navigation {
    grid-column: span 12;
}
.navigation.pagination .nav-links {
    display: flex;
    justify-content: center;
    gap: 1em;
    text-align: center;
}
.navigation.pagination .nav-links a {
    padding: 0.5em;
    background-color: #000000;
    color: #000000;
}
.navigation.pagination .nav-links span,
.navigation.pagination .nav-links a:hover,
.navigation.pagination .nav-links a:focus {
    padding: 0.5em;
    color: #000000;
    background-color: #000000;
}
.main .inner-content p label, 
.main .inner-content p span {
    text-align: left;
}
.main .inner-content p label {
    display: inline-block;
}
.required-field-message {
    display: block;
}
/**** End Posts Grid Styles ****/



/**** Account Dashboard Styles ****/
.account-dashboard {
    display: grid;
    grid-gap: 1em;
}
.inner-content.account-dashboard h1 {
	font-size: 1.7em;
}
.account-dashboard .mag-grid {
    grid-column: span 12;
}
.account-dashboard .account-details  {
	grid-column: span 12;
	text-align:left;
}
.account-dashboard h3 {
    grid-column: span 12;
	margin:0;
}
.account-dashboard .account-details ul {
    padding-left: 0;
}
.account-dashboard .account-details li {
	list-style-type: none;
	line-height: 1.6;
}
.account-dashboard .account-details li i {
    width: 1.4em;
}
.account-dashboard .account-details span,
.account-dashboard .publication-item span {
	font-weight: bold;
	padding: 2px 0px;
}
.account-dashboard .publications-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 2em;
	justify-content:center;
	grid-column: span 12;
}
.account-dashboard .publication-table .publication-table-subhead {
	display:none;
}
.account-dashboard .publication-table div {
	line-height:1.6;
}
.account-dashboard .publication-table .publication-item {
	align-items:center;
}
.account-dashboard .publication-table .publication-item div:nth-of-type(1) {
	padding: 0;
}
.account-dashboard .publication-item {
    display: grid;
    grid-template-columns:1fr;
    grid-column-gap: 2em;
    grid-row-gap: 0;
    grid-template-rows: repeat(2,auto);
	align-items: flex-start;
	border: 1px solid #aaa;
	text-align:center;
}
.account-dashboard .noSubscribedPubs {
	border: 1px solid #aaa;
	text-align:center;
	padding: 4px 10px;
}
.account-dashboard .publication-table-head h4,
.account-dashboard .publication-item h4 {
	font-size:1.1em;
    grid-column: 1;
	margin: 0;
	background: #2B17FF;
	padding: 3px 10px;
	text-align:center;
}
.savePubForm button {
	padding: 1px 12px;
	margin: 5px 0;
}
.logoutLink form {
    display: inline;
}
.publication-item>div {
    display: grid;
    grid-row-gap: 0;
	border-bottom: 1px solid #aaa;
	padding-bottom: 0;
}
.publication-item>div>div:first-child {
    border-bottom: 0;
    padding-bottom: 0;
}
button.logoutLink {
    background: transparent;
    border: none;
    color: #2B17FF;
    padding: 0;
    line-height: 1.6;
    font: 100 1em helveticaregular;
    min-width: auto;
	letter-spacing: 1px;
}
button.logoutLink:hover,button.logoutLink:active,button.logoutLink:focus {
	color: #000000;
	border:none;
	outline: 0;
}
/**** End Account Dashboard Styles ****/

.services .grid-theme-1 .services-grid {
    gap: 2em;
	padding:1em 0 2em;
}
.services .grid-theme-1 .services-grid a {
	position:relative;
}
.services .grid-theme-1 .services-grid a,
.services .grid-theme-1 .services-grid a:hover {
	border: 0;
}
.services .grid-theme-1 .services-grid .type-services {
    /* justify-content: center; */
    padding: unset;
	flex: 0 18em;
}

.services .grid-theme-2.services-grid {
    gap: 2em;
	padding:1em 0 2em;
	display: flex;
}
.services .grid-theme-2.services-grid a {
	position:relative;
}
.services .grid-theme-2.services-grid a,
.services .grid-theme-2.services-grid a:hover {
	border: 0;
}
.services .grid-theme-2.services-grid .type-services {
    /* justify-content: center; */
    padding: unset;
	flex: 0 18em;
}

.services .services-grid-t3 .services-grid {
    gap: 2em;
	padding:1em 0 2em;
}
.services .services-grid-t3 .services-grid a {
	position:relative;
}
.services .services-grid-t3 .services-grid a,
.services .services-grid-t3 .services-grid a:hover {
	border: 0;
}
.services .services-grid-t3 .services-grid .type-services {
    /* justify-content: center; */
    padding: unset;
	flex: 0 16.85em;
}

.services .grid-theme-4 .services-grid {
    gap: 2em;
	padding:1em 0 2em;
}
.services .grid-theme-4 .services-grid a {
	position:relative;
}
.services .grid-theme-4 .services-grid a,
.services .grid-theme-4 .services-grid a:hover {
	border: 0;
}
.services .grid-theme-4 .services-grid .type-services {
    /* justify-content: center; */
    padding: unset;
	flex: 0 12.7em;
}

.services .services-grid {
    gap: 1em;
	padding: 0 0 2em;
}
.home .services .services-grid,
.page .services .services-grid {
	padding: 1em 0 2em;
}
.services .services-grid.grid-theme-6 .services {
    flex: 0 1 240px;
}
.services .services-grid.grid-theme-2  a.services.use-border,
.services .services-grid.grid-theme-6  a.services.use-border {
    border: 3px solid #4e5675;
    border-radius: 0.5em;
	transition: all 750ms cubic-bezier(0.18, 0.89, 0.32, 1.28);
	display: grid;
    align-content: space-between;
	flex: 0 240px;
}
.services .services-grid.grid-theme-6  a.services.use-border>div{
    padding: 0 0.4em;
}
.services .services-grid.grid-theme-2 a.services.use-border:hover,
.services .services-grid.grid-theme-6 a.services.use-border:hover {
    border: 3px solid #4e5675;
}
.services .services-grid.grid-theme-6 {
	text-align: center;
}
.services .main .inner-content .services-grid.grid-theme-6 p {
	text-align: center;
	margin-bottom: 0.5em;
}
.services .services-grid.grid-theme-6 i {
	font-size: 3em;
	transition: all 750ms cubic-bezier(0.18, 0.89, 0.32, 1.28);
}
.services .services-grid.grid-theme-6 a {
	text-decoration: unset;
}
.services .services-grid.grid-theme-6 a:hover i {
	font-size: 4em;
}
.services .services-grid.grid-theme-6 .use-icon {
    display: grid;
    grid-template-columns: 80px;
    grid-template-rows: 80px;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.services .services-grid.grid-theme-6 a footer.entry-footer {
    background: #000000;
	transition: all 750ms cubic-bezier(0.18, 0.89, 0.32, 1.28);
	padding-top: 0.5em;
	color: #FFFFFF;
}
.services .services-grid.grid-theme-6 a footer.entry-footer p {
	transition: all 750ms cubic-bezier(0.18, 0.89, 0.32, 1.28);
	color: #FFFFFF;
}
.services .services-grid.grid-theme-6 a:hover footer.entry-footer {
    background: #101010;
}
.services .services-grid.grid-theme-6 a:hover footer.entry-footer p {
	color:#fff;
}

.services .services-grid.grid-theme-7 {
	max-width: 100%;
}
.services-grid.grid-theme-7 .service {
    flex: 0 240px;
}
.services-grid.grid-theme-7 .service figure {
    border-radius: 50%; 
	position: relative;
}
.services-grid.grid-theme-7 .service .overlay {
	position: absolute;
	top: -59%;
    left: -13%;
    width: 126%;
    height: auto;
}
.services-grid.grid-theme-7 .service .overlay img {
}

.map-container {
	display: grid;
	grid-template-columns:1fr;
	margin-bottom: 0;
}
.map-container iframe {
	width:100%;
	height:200px;
}
.contact-section {
	display:grid;
	grid-template-columns: minmax(auto,1fr);
	gap:2em;
}
.contact-section:nth-of-type(2) {
	margin-bottom: 2em;
}
#block-21 p {
    padding: 0;
    margin: 0;
}
.wp-block-image img {
    max-width: 240px;
}
.contact-section #block-21,
.contact-section #block-23,
.contact-section .social {
    width: 100%;
    float: left;
}
#primary.main.contact-page {
    margin-bottom: 1em;
}
#secondary.main.contact-page {
    margin-top: 1em;
}
.call-out {
    background: #25408e;
    color: #fff;
    border-radius: 10px;
    padding: 1em;
}

.team-container h2 {
	text-align:center;
}
.team-member-container {
    display: flex;
	flex-flow: wrap row;
    gap: 2em;
    justify-content: center;
	justify-items: center;
}
.team-member-container .team-member-item {
	flex: 0 1 260px;
	display: grid;
    justify-items: center;
    background: #000000;
    width: 100%;
	gap: 1em;
    padding: 1em;
}
.team-member-container .team-member-item img {
	width: 90%;
	height: auto;
}
.team-member-container .team-member-item figure {
	width: 220px;
    background: #fff;
    border-radius: 50%;
    margin: 0;
    height: 220px;
    display: grid;
    justify-items: center;
    align-content: center;
}
.team-member-container .team-member-item h4 {
	color: #FFF;
	margin:0;
}
.info-container {
    max-width: 360px;
    margin: 0 auto;
}
.inner-info-container:nth-of-type(odd) {
    background-color: #D3B269;
    padding: 1.25em 1.25em 0.25em;
}
.inner-info-container:nth-of-type(even) {
    background-color: #FFF;
    padding: 1.25em 1.25em 0.25em;
}
.info-container .wp-block-column h4 {
	display:grid;
	grid-template-columns: 1fr;
	justify-content: center;
}
.info-container .wp-block-column h4 a {
    background-color: #D3B269;
	padding:4em 1em;
}
.info-container .wp-block-column h4 a:hover,
.info-container .wp-block-column h4 a:focus {
    background-color: #000000;
	color:#FFF;
}
.no-bullet {
	
}
/***** End Content Section  *****/

/***** Start Footer Section *****/

footer.site-footer {
	position:relative;
	background-color: #000000;
	border-top: 2px solid #D3B269;
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
footer.site-footer .footer-grid {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
}
/*footer.site-footer .footer-grid::after {
    content: '';
    position: absolute;
    bottom: 9px;
    right: -74px;
    background-image: url(/wp-content/uploads/2023/07/sbs-triangle-shapes-wh-b.svg);
    background-repeat: no-repeat;
    /* background-position: right; */
    /* background-size: auto; */
    /*background-size: 300px 360px;
    width: 100%;
    width: 300px;
    height: 360px;
}*/

footer.site-footer h4 {
	color: #fff;
	font-size: 1.2em;
}
.swaa footer.site-footer h4,
.swaa footer.site-footer p {
	text-align:center;
}
footer.site-footer p, footer.site-footer li {
	color: #fff;
}
.footer-grid ul {
    margin: 0 0 2em;
    padding: 0;
}
.swaa .footer-grid ul {
	display: flex;
    flex-flow: row wrap;
    justify-content: center;
}
.swaa .footer-grid .footer3>ul {
    display: grid;
	margin-bottom: 2em;
}
.swaa .footer-grid ul.address {
	display: flex;
    justify-content: center;
    max-width: 400px;
    text-align: center;
}
.contact-info ul {
    margin: 0;
    padding: 0;
}
footer .footer-grid ul li,
.contact-info ul li {
	list-style: none;
}
footer .footer-grid ul li {
    line-height: 2;
}
.swaa footer .footer-grid ul li {
    text-align:center;
}
footer .footer-grid ul.menu li {
	transition: all 0.5s ease;
}
.swaa footer .footer-grid ul.menu li {
	padding-left: 1em;
	padding-right: 1em;
}
footer .footer-grid ul.menu li>a.nav-link {
	width: 100%;
}
footer .footer-grid ul.menu li:hover>a.nav-link {
    line-height: 2;
    background-color: #D3B269;
	color:#000000;
}
.contact-info ul li {
    line-height: 1.6;
}
footer .footer-grid .address li,
.contact-info li {
    line-height: 1.4;
}
.footer-grid .contact-details i {
	color: #fff;
}
.footer-grid .address i,
.contact-info.footer-widget i,
.contact-info .footer-widget i {
	width: 1.8em;
}
.contact-info .social .social-item-last i {
    width: 1em;
}
.footer-grid .nav-link, 
.footer-grid .nav-link:visited {
    margin: 0;
}
footer .footer-grid a,
 footer .footer-grid .nav-link{
	color: #fff;
	border-bottom: 1px dotted #fff;
}
footer .footer-grid a:hover,
footer .footer-grid a:focus {
	color: #D3B269;
	border-bottom: 1px dotted #D3B269;
}
.swaa nav.nav-bar li .sub-menu a.nav-link.nav-link--air-bottom, 
.swaa footer .menu .nav-link {
    padding-left: 1.4em;
    padding-right: 1.4em;
}
.site-footer>span {
    position: absolute;
    transform: rotate(-31deg) skew(-5deg, 31deg);
    border-left: 15px solid #000000;
    border-right: 15px solid rgb(255 255 255 / 10%);
    height: 100%;
    top: -34px;
    width: 40px;
    left: 50%;
}
.site-footer>span.alt {
    border-left-width: 4px;
    border-right-width: 4px;
    width: 13px;
    left: 51%;
}
.social {
    display: flex;
    gap: 1em;
    flex-flow: row wrap;
}
.main .social {
	display: flex;
    gap: 1.6em;
    flex-flow: row wrap;
	margin: 0 auto;
    list-style: none;
    padding: 0;
    justify-content: space-around;
    max-width: 100%;
}
.main .social a {
	border-bottom:0;
}
footer .footer-grid .social a,
.contact-info .social a,
footer .footer-grid .social a:hover,
.contact-info .social a:hover,
footer .footer-grid .social a:focus,
.contact-info .social a:focus {
	border-bottom: 0;
}
.footer-grid .footer1 {

}
.swaa .footer-grid .footer1,
.swaa .footer-grid .footer2,
.swaa .footer-grid .footer3 {
    grid-column: 2 / 14;
}
/*.footer1 img {
    border-radius: 50%;
	border: 10px solid #fff;
}*/

footer .subfooter {
	border-top: 4px solid #000000; 
    background: #D3B269;
	position:relative;
}
footer .subfooter a,footer .subfooter .nav-link {
	color: #000000;
}
footer .subfooter a:hover,footer .subfooter a:focus,
footer .subfooter .nav-link:hover,footer .subfooter .nav-link:focus {
	color: #101010;
}
/*footer .footer-grid::after {
    content: '';
    background: url() no-repeat;
    position: absolute;
    bottom: 100px;
    left: 0;
    right: 0;
    background-position: center;
    height: 100px;
    opacity: 0.2;
}*/
.footer-grid .widget-area {
    position: relative;
}
.social .fa-brands {
    font-size: 1.5em;
}

/**** Mailchimp Form Styling  ****/
.mc-field-group {
    display: grid;
}
.mc-field-group {
	padding: 0.3em;
}
.mc-field-group input {
	padding:0.5em;
}
#mc-embedded-subscribe {

	color: #FFE030;
	background-color: #000000;
	border: 2px solid #2B17FF;
	width:100%;
}
#mc-embedded-subscribe:hover {
    color: #2B17FF;
    background-color: #FFE030;
    border: 2px solid #2B17FF;
}
.mc-field-group label {
	color: #FFE030; 
}

/*footer#colophon:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-top: 80px solid #FFF;
    border-right: 80px solid #3a4154;
    width: 0;
}
footer#colophon:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    border-top: 80px solid #FFF;
    border-left: 80px solid #3a4154;
    width: 0;
}*/
footer .footer-grid:before {
	position:relative;
}
footer .footer-grid:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.1;
    /*background-image: url();*/
    background-repeat: no-repeat;
    background-position: center;
    background-size: 60%;
}
footer.site-footer {
    /*text-align: center;*/
}
footer .footer-grid {
    padding: 4.125em 0;
}
footer .footer-grid {
    grid-template-columns: 1em repeat(12,minmax(auto,4.345em)) 1em;
    grid-gap: 1.125em 0;
}
footer .footer-grid>div:nth-of-type(-n+2), 
footer .footer-grid div:last-child,
.footer-grid #block-25 p {
	margin-bottom: 0;
}
footer .subfooter ul {
    grid-column: 2/3;
    margin: 0 auto;
}
footer .social{
	margin: 1em 0;
	gap: 2em;
}
button.cky-btn {
    clip-path: unset;
}
/*****  End Footer Section  *****/


/**** Start Colors ****/

/*

Light Blue:	#D3B269 / rgba(219,241,253,1)
Mid Blue:	#5C0000 / rgba(0,174,239,1)
Dark Blue: 	#D91A1A / rgba(37,64,132,1)
Black: 		#101010 / rgba(35,31,32,1)
White: 		#FFFFFF rgba(255,255,255,1)

*/

/**** End Colors ****/




.waterdrop {
	overflow: hidden;
}
.drop-container {
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	border-radius: 0.4em;
}
.drop-container>div img {
    position: relative;
}
.waterdrop .drop-container>div img {
    position: absolute;
	opacity:0;
    width: 65%;
    top: -70px;
    right: -8px;
	transition: all 0.5s ease;
}
.waterdrop:hover .drop-container>div img {
	opacity:1;
    top: -18px;
}
.waterdrop .drop {
	opacity:0;
	transition: all 1.5s ease;
}
.waterdrop:hover .drop {
	opacity:1;
	position: relative;
	width: 18px;
	height: 18px;
	top: 50px;
	margin: 0 auto;
	background: #d0a805;
	-moz-border-radius: 18px;
	-webkit-border-radius: 18px;
	border-radius: 18px;
	-moz-animation-name: drip;
	-webkit-animation-name: drip;
	animation-name: drip;
	-moz-animation-timing-function: cubic-bezier(1,0,.91,.19);
	-webkit-animation-timing-function: cubic-bezier(1,0,.91,.19);
	animation-timing-function: cubic-bezier(1,0,.91,.19);
	-moz-animation-duration: 2s;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.waterdrop:hover .drop:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	border-bottom: 18px solid #d0a805;
	top: -10px;
	left: 0;
}

.waterdrop:hover .wave {
	position: relative;
	opacity: 0;
	top: 0px;
	margin: 175px auto;	
	width: 2px;
	height: 1px;
	border: #d0a805 7px solid;
	-moz-border-radius: 300px / 150px;
	-webkit-border-radius: 300px / 150px;
	border-radius: 300px / 150px;
	-moz-animation-name: ripple;
	-webkit-animation-name: ripple;
	animation-name: ripple;
	-moz-animation-delay: 2s;
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
	-moz-animation-duration: 2s;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.waterdrop:hover .wave:after {
	content: "";
	position: absolute;
	opacity: 0;
	top: -5px;
	left: -5px;
	width: 2px;
	height: 1px;
	border: #d0a805 5px solid;
	-moz-border-radius: 300px / 150px;
	-webkit-border-radius: 300px / 150px;
	border-radius: 300px / 150px;
	-moz-animation-name: ripple-2;
	-webkit-animation-name: ripple-2;
	animation-name: ripple-2;
	-moz-animation-duration: 2s;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}
.waterdrop .driptext {
    opacity: 0;
}
.waterdrop:hover .driptext {
    position: absolute;
    bottom: 60px;
    color: #fff;
    text-align: center;
    left: 0;
    right: 0;
    opacity: 1;
	transition: all 1s 1.5s ease;
	/*-moz-animation-name: driptext;
	-webkit-animation-name: driptext;
	animation-name: driptext;
	-moz-animation-delay: 2s;
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
	-moz-animation-duration: 10s;
	-webkit-animation-duration: 10s;
	animation-duration: 10s;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;*/
}
@keyframes ripple {
    from {
		opacity: 1;
    }
    to {
		width: 274px;
		height: 137px;
		border-width: 1px;
		top: -70px;
		opacity: 0;
    }
}

@keyframes ripple-2 {
    0% {
		opacity: 1;
    }
    50% {
		opacity: 0;
    }
	100% {
		width: 150px;
		height: 75px;
		border-width: 1px;
		top: 10px;
		left: 60px;
	}
}

@keyframes drip {
    from {
		top: 33px;
    }
    to {
		top: 170px;
    }
}

/*@keyframes driptext {
   from {
		opacity: 0;
    }
    to {
		opacity: 1;
    }
}*/




.pipe {
  text-decoration: none;
  color: #161616;
  text-transform: uppercase;
  position: relative;
  margin-left: 2em;
  padding: 5px 23px 5px 10px;
  transition: all 0.6s ease;
}
.pipe:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: -3em;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #161616;
  width: 2.6em;
  height: 2.6em;
  border-radius: 5em;
  transition: all 0.6s cubic-bezier(0.615, 0, 0.07, 1);
}
.pipe:after {
  color: #fff;
  content: "+";
  font-size: 2.6em;
  position: absolute;
  z-index: -1;
  left: -0.92em;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 1.1em;
  height: 1.1em;
}
.pipe:hover {
  transition: all 0.6s ease;
  transition-delay: 0.3s;
  color: #fff;
}
.pipe:hover:before {
  transition: all 0.6s cubic-bezier(0.615, 0, 0.07, 1);
  width: 140%;
}




/*****  Start Grid Styles  *****/


.grid-container.full-width {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 3em 1.875em;
    grid-column-start: span 6;
    grid-template-rows: auto 1fr auto;
}
.grid-container.boxed {
    display: grid;
    grid-template-columns: auto minmax(auto,71.5em) auto;
    grid-gap: 3em 1.875em;
    grid-column-start: span 6;
    grid-template-rows: auto 1fr auto;
}

.grid-container.boxed .grid-inner {
    grid-column: 2/3;
	grid-row: 2/3;
	display: grid;
    grid-gap: 1.875em;
}
.grid-container .grid-inner,
.grid-container .grid-inner.four-col-grid {
    grid-template-columns: repeat(4,minmax(auto,1fr));
}
.grid-container .grid-inner.three-col-grid {
    grid-template-columns: repeat(3,minmax(auto,1fr));
}
.grid-container .grid-inner.two-col-grid {
    grid-template-columns: repeat(2,minmax(auto,1fr));
}



.grid-item {
    display: grid;
    position: relative;
    background: rgb(204 232 254);
	border-radius: 1em 1em 1em 1em;
    grid-template-columns: 1fr 2fr;
    grid-gap: 1.875em;
    align-items: center;
}
.grid-item figure {
    z-index: 0;
    width: 100%;
	grid-column: span 2;
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-gap: 3.75em;
    flex-flow: row wrap;
}
.grid-item figure img {
    grid-column: 2 / 3;
    /* display: grid; */
    /* grid-gap: 1.875em; */
    grid-row: 2 / 4;
}
.grid-item .service-icon {
    position: relative;
    display: grid;
    align-items: center;
    justify-content: center;
    background-color: rgb(255, 255, 255);
    box-shadow: 0px 22px 35px 0px rgb(2 18 106 / 8%);
    width: 6.25em;
    height: 6.25em;
    border-radius: 50%;
    margin: 1.875em;
}
.service-icon .rotate {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.service-icon .rotate span {
    position: relative;
    display: block;
    height: 100%;
}
.service-icon .rotate span::before,
.service-icon .rotate span::after {
    position: absolute;
    width: 8px;
    height: 8px;
    content: "";
    border-radius: 50%;
}
.service-icon .rotate span::before {
    left: 11px;
    bottom: 10px;
}
.service-icon .rotate span::after {
    right: 11px;
    top: 10px;
}
.grid-item.light-theme .service-icon {
    background-color: rgb(255, 255, 255);
}
.grid-item.light-theme .service-icon .rotate span {
    animation: rotation 10s infinite linear;
}
.grid-item.light-theme .service-icon .rotate span::before,
.grid-item.light-theme .service-icon .rotate span::after {
    background-image: -moz-linear-gradient(
            -45deg,
            rgb(253, 68, 133) 0%,
            rgb(255, 163, 141) 100%
    );
    background-image: -webkit-linear-gradient(
            -45deg,
            rgb(253, 68, 133) 0%,
            rgb(255, 163, 141) 100%
    );
    background-image: -ms-linear-gradient(
            -45deg,
            rgb(253, 68, 133) 0%,
            rgb(255, 163, 141) 100%
    );
}
.grid-item.light-theme .service-icon i.fad {
    color: #000000;
}
.grid-item.mid-theme .service-icon {
    background-color: #000000;
}
.grid-item.mid-theme .service-icon .rotate span {
    animation: rotation 9s infinite linear;
}
.grid-item.mid-theme .service-icon .rotate span::before,
.grid-item.mid-theme .service-icon .rotate span::after {
    background-image: -moz-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
    );
    background-image: -webkit-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
          );
     background-image: -ms-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
    );
}
.grid-item.mid-theme .service-icon i.fad {
    color: #000000;
}
.grid-item.dark-theme .service-icon {
    background-color: rgb(255, 255, 255);
}
.grid-item.dark-theme .service-icon .rotate span {
    animation: rotation 9s infinite linear;
}
.grid-item.dark-theme .service-icon .rotate span::before,
.grid-item.dark-theme .service-icon .rotate span::after {
    background-image: -moz-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
    );
    background-image: -webkit-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
          );
     background-image: -ms-linear-gradient(
            -45deg,
            rgb(255, 220, 24) 0%,
            rgb(255, 244, 185) 100%
    );
}
.grid-item.dark-theme .service-icon i.fad {
    color: #000000;
}
.grid-item .service-icon i.fad {
    font-size: 3em;
}
.primary span {
    animation: rotation 8s infinite linear;
}
.primary span::before,
.primary span::after {
    background-image: -moz-linear-gradient(
            -45deg,
            rgb(80, 94, 255) 0%,
            rgb(3, 189, 255) 100%
    );
    background-image: -webkit-linear-gradient(
            -45deg,
            rgb(80, 94, 255) 0%,
            rgb(3, 189, 255) 100%
    );
    background-image: -ms-linear-gradient(
            -45deg,
            rgb(80, 94, 255) 0%,
            rgb(3, 189, 255) 100%
    );
}
.secondary span {
    animation: rotation 7s infinite linear;
}
.secondary span::before,
.secondary span::after {
    background-image: -moz-linear-gradient(
            -45deg,
            rgb(178, 65, 255) 0%,
            rgb(254, 134, 255) 100%
    );
    background-image: -webkit-linear-gradient(
            -45deg,
            rgb(178, 65, 255) 0%,
            rgb(254, 134, 255) 100%
          );
    background-image: -ms-linear-gradient(
            -45deg,
            rgb(178, 65, 255) 0%,
            rgb(254, 134, 255) 100%
    );
}
.grid-theme-1 .page-header {
    text-align: center;
}
.grid-theme-2 .page-header {
    text-align: center;
}
.services-grid-t3 .page-header {
    text-align: center;
}
.grid-theme-4 .page-header {
    text-align: center;
}
.services .services-grid .entry-content {
	flex: 1;
    background-color: #000000;
    border-radius: 20em 0em 1em;
    padding: 1.875em;
    border-top: 1px dashed #000000;
    border-left: 12px solid #000000;
}
.services .services-grid .entry-content .title {
	font-weight: 700;
	line-height: 0.8;
	margin-bottom: 25px;
	font-size: 25px;
}
.services .services-grid .entry-content p {
	margin-bottom: 30px;
}

@-webkit-keyframes rotation {
	from {
		-webkit-transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(359deg);
	}
}


/*****  End Grid Styles  *****/

/*****  Placeholders  *****/

input, select, textarea,
::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder {
	font-family: 'Roboto Flex','Lato Regular', sans-serif !important;
}


/* -------------------------
   Start Hover Effect
---------------------------- */


.mc-item,
.mc-item > * {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
.mc-item {
	position: relative;
}
.mc-item > .mc-item__image,
.mc-item > .mc-item__caption {
	display: block;
	-webkit-transition: all 0.3s ease-in;
	transition: all 0.75s ease-in;
}
.mc-item > .mc-item__image {
	width: 100%;
	border-radius: 0;
	padding: 0px;
}
.use-border .mc-item > .mc-item__image {
	border-radius: 0.4em;
}
.grid-theme-1 .mc-item > .mc-item__image {
	border-radius: 50%;
}

.grid-theme-1 .services-grid a figure:after {
	content: '';
	position:absolute;
	top: 0;
	left: 0;
	right:0;
	bottom:0;
    width: 100%;
    height: 100%;
    border: 10px solid #000000;
    border-right-color: #000000;
    border-bottom-color: #000000;
    border-radius: 50%;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
}
.grid-theme-1 .services-grid a:hover figure:after {
	-webkit-transform: rotate(600deg);
	-moz-transform: rotate(600deg);
	-ms-transform: rotate(600deg);
	-o-transform: rotate(600deg);
	transform: rotate(600deg);
}
/*.services-grid-t3 .mc-item > .mc-item__image {
	border-radius: 50%;
}*/

/*.services-grid-t3 .services-grid a figure:after {
	content: '';
	position:absolute;
	top: 0;
	left: 0;
	right:0;
	bottom:0;
    width: 100%;
    height: 100%;
    border: 10px solid #000000;
    border-right-color: #000000;
    border-bottom-color: #000000;
    border-radius: 50%;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
}
.services-grid-t3 .services-grid a:hover figure:after {
	-webkit-transform: rotate(600deg);
	-moz-transform: rotate(600deg);
	-ms-transform: rotate(600deg);
	-o-transform: rotate(600deg);
	transform: rotate(600deg);
}*/
.mc-item .mc-item__caption {
	background-color: rgb(38 54 117 / 60%);
}
.mc-item .mc-item__caption h4 {
	color: #FFF;
	font-size: 1.1em;
	margin-bottom: 0em;
    padding: 0.5em 0.5em;
	text-align: center;
}
.mc-item .mc-item__caption p {
	color: #FFF;
	font-size: 1em;
	margin-top: 50px;
}
.grid-theme-4 .mc-item .mc-item__caption {
	background-color: #000000;
}
.grid-theme-4 .mc-item .mc-item__caption h4 {
	color: #000000;
	font-size: 0.95em;
	margin-bottom: 0em;
    padding: 0.75em 0.35em 0;
}
.grid-theme-4 .mc-item .mc-item__caption p {
	color: #000000;
	font-size: 1em;
	margin-top: 0;
	position: absolute;
    bottom: -0.8em;
    left: 0;
    right: 0;
	text-align: center;
}
.mc-item.mc-item--slideInUp-zoomIn, 
.mc-item.mc-item--slideInUpBig-zoomIn, 
.mc-item.mc-item--slideInDown-zoomIn, 
.mc-item.mc-item--slideInDownBig-zoomIn,
.mc-item.mc-item--slideInUpDownBig-zoomIn {
	overflow: hidden;
}
.mc-item.mc-item--slideInUp-zoomIn > .mc-item__image, 
.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__image, 
.mc-item.mc-item--slideInDown-zoomIn > .mc-item__image, 
.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__image,
.mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__image {
	-webkit-transform: scale(1);
	transform: scale(1);
}
.mc-item.mc-item--slideInUp-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInDown-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__caption,
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-top,
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-bottom {
	position: absolute;
	left: 0;
	width: 100%;
	top:0;
}
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-bottom {
	top:unset;
	bottom:0;
}
.services-grid-t3 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-top,
.services-grid-t3 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-bottom {
	position: absolute;
	left: 0;
	width: 100%;
	top:0;
}
.services-grid-t3 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-bottom {
	top:unset;
	bottom:0;
}
.mc-item.mc-item--slideInUp-zoomIn:hover > .mc-item__image, 
.mc-item.mc-item--slideInUp-zoomIn.touch > .mc-item__image, 
.mc-item.mc-item--slideInUpBig-zoomIn:hover > .mc-item__image, 
.mc-item.mc-item--slideInUpBig-zoomIn.touch > .mc-item__image, 
.mc-item.mc-item--slideInDown-zoomIn:hover > .mc-item__image, 
.mc-item.mc-item--slideInDown-zoomIn.touch > .mc-item__image, 
.mc-item.mc-item--slideInDownBig-zoomIn:hover > .mc-item__image, 
.mc-item.mc-item--slideInDownBig-zoomIn.touch > .mc-item__image,
.mc-item.mc-item--slideInUpDownBig-zoomIn:hover > .mc-item__image, 
.mc-item.mc-item--slideInUpDownBig-zoomIn.touch > .mc-item__image {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}
.mc-item.mc-item--slideInUp-zoomIn:hover > .mc-item__caption, 
.mc-item.mc-item--slideInUp-zoomIn.touch > .mc-item__caption, 
.mc-item.mc-item--slideInUpBig-zoomIn:hover > .mc-item__caption, 
.mc-item.mc-item--slideInUpBig-zoomIn.touch > .mc-item__caption, 
.mc-item.mc-item--slideInDown-zoomIn:hover > .mc-item__caption, 
.mc-item.mc-item--slideInDown-zoomIn.touch > .mc-item__caption, 
.mc-item.mc-item--slideInDownBig-zoomIn:hover > .mc-item__caption, 
.mc-item.mc-item--slideInDownBig-zoomIn.touch > .mc-item__caption,
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn:hover > .mc-item__caption.mc-top, 
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn.touch > .mc-item__caption.mc-top,
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn:hover > .mc-item__caption.mc-bottom, 
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn.touch > .mc-item__caption.mc-bottom {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.mc-item.mc-item--slideInUpBig-zoomIn .mc-item__title {
    position: relative;
}
.mc-item.mc-item--slideInUpBig-zoomIn .mc-item__title h4, 
.mc-item.mc-item--slideInUpBig-zoomIn .mc-item__title h4 {
    padding: 0 0.1em;
	display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
	background-color:#4e5675;
	color:#FFF;
	text-align: center;
	margin:0;
	font-size: 1.34em;
	height: 50px;
}
.mc-item.mc-item--slideInUpBig-zoomIn:hover .mc-item__title h4, 
.mc-item.mc-item--slideInUpBig-zoomIn.touch .mc-item__title h4 {

}

.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__caption {
	height: 100%;
}
.mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption {
	height: 50%;
	display: grid;
    grid-template-columns: 1fr;
    align-items: end;
}
.mc-item.mc-item--slideInUp-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__caption {
	bottom: 0;
	-webkit-transform: translateY(17.7em);
	transform: translateY(17.7em);
}
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-bottom {
	bottom: 0;
	-webkit-transform: translateY(7.5em);
	transform: translateY(8em);
    align-items: start;
}
.mc-item.mc-item--slideInDown-zoomIn > .mc-item__caption, 
.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__caption, 
.grid-theme-1 .mc-item.mc-item--slideInUpDownBig-zoomIn > .mc-item__caption.mc-top {
	top: 0;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.services-grid.grid-theme-7 figcaption {
    display: grid;
	gap:1em;
    justify-content: center;
    align-items: center;
    grid-template-columns: 150px;
    align-content: center;
}
.services-grid.grid-theme-7 figcaption h4 {
    text-align: center;
	padding:0;
}
.services-grid.grid-theme-7 figcaption p {
    text-align: center;
	margin:0;
}

.services-grid.grid-theme-7 .title-curve {
    position: absolute;
	height: 100%;
    width: 100%;
    right: 0;
    bottom: 0px;
	top: 72px;
	left: 94px;
	transform: rotate(308deg) scale(1);
	transition: all 1s;
}

.services-grid.grid-theme-7 .service:hover .title-curve {
    transform: rotate(305deg) scale(0.9);
}
.services-grid.grid-theme-7 .title-curve text {
    fill: #fff;
    font-size: 1.75em;
    font-family: 'Roboto Flex', 'Lato Bold', sans-serif;
    font-weight: 700;
}

@media (min-width: 30em) {

	.mc-item.mc-item--slideInUp-zoomIn, 
	.mc-item.mc-item--slideInUpBig-zoomIn, 
	.mc-item.mc-item--slideInDown-zoomIn, 
	.mc-item.mc-item--slideInDownBig-zoomIn {
		overflow: hidden;
	}
	.mc-item.mc-item--slideInUp-zoomIn > .mc-item__image, 
	.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__image, 
	.mc-item.mc-item--slideInDown-zoomIn > .mc-item__image, 
	.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__image {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.mc-item.mc-item--slideInUp-zoomIn > .mc-item__caption, 
	.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__caption, 
	.mc-item.mc-item--slideInDown-zoomIn > .mc-item__caption, 
	.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__caption {
		position: absolute;
		left: 0;
		width: 100%;
	}
	.mc-item.mc-item--slideInUp-zoomIn:hover > .mc-item__image, 
	.mc-item.mc-item--slideInUp-zoomIn.touch > .mc-item__image, 
	.mc-item.mc-item--slideInUpBig-zoomIn:hover > .mc-item__image, 
	.mc-item.mc-item--slideInUpBig-zoomIn.touch > .mc-item__image, 
	.mc-item.mc-item--slideInDown-zoomIn:hover > .mc-item__image, 
	.mc-item.mc-item--slideInDown-zoomIn.touch > .mc-item__image, 
	.mc-item.mc-item--slideInDownBig-zoomIn:hover > .mc-item__image, 
	.mc-item.mc-item--slideInDownBig-zoomIn.touch > .mc-item__image {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
	.mc-item.mc-item--slideInUp-zoomIn:hover > .mc-item__caption, 
	.mc-item.mc-item--slideInUp-zoomIn.touch > .mc-item__caption, 
	.mc-item.mc-item--slideInUpBig-zoomIn:hover > .mc-item__caption, 
	.mc-item.mc-item--slideInUpBig-zoomIn.touch > .mc-item__caption, 
	.mc-item.mc-item--slideInDown-zoomIn:hover > .mc-item__caption, 
	.mc-item.mc-item--slideInDown-zoomIn.touch > .mc-item__caption, 
	.mc-item.mc-item--slideInDownBig-zoomIn:hover > .mc-item__caption, 
	.mc-item.mc-item--slideInDownBig-zoomIn.touch > .mc-item__caption {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.mc-item.mc-item--slideInUpBig-zoomIn > .mc-item__caption, 
	.mc-item.mc-item--slideInDownBig-zoomIn > .mc-item__caption {
		height: 100%;
	}
}

@media (min-width: 75em)/* 1200px */ {

}
/* -------------------------
   End Hover Effect
---------------------------- */

.main .testimonials-container {
    margin: 2em 0 3em;
}
.main .testimonials-container .testimonial {
    background: #25408e;
    color: #fff;
    padding: 3em;
	border-radius: 10px;
}
.main .testimonials-container .testimonial i {
    color: #fff;
}
.testimonial a {
    color: #D3B269;
}
.testimonial a:hover,
.testimonial a:focus {
    color: #FFF;
}
/* -------------------------
   PURE CSS Testimonial Carousel
---------------------------- */

.testimonials-slider {
}
.testimonials-slider>ul {
	display: grid;
	list-style: none;
	padding: 0;
	position: relative;
	width: 100%;
	overflow: hidden;
	margin: 0 auto;
	grid-template-columns: 100%;
	grid-template-rows: minmax(min-content, max-content);
}
.testimonials-slider>ul li {
    display: grid;
	grid-template-columns: 1fr;
    width: 100%;
    opacity: 0;
	visibility: hidden;
    margin: 0 auto;
	grid-row: 1/2;
    grid-column: 1/2;
	animation-name: fade; 
    animation-iteration-count: infinite; 
}
.testimonials-slider>ul li:nth-child(1) {
    /*opacity: 1;*/

}
.testimonials-slider .author-details {
    text-align: center;
}
.testimonials-slider .author-details div {
    display:block;
	width:100%;
	padding: 0 1em;
}
.testimonials-slider .testimonial-caption h4 {
	text-align: center;
}
.testimonials-slider .quote-image {
    text-align: center;
    font-size: 3em;
}
.fa-solid.fa-star {
    color: gold;
}

/* KEYFRAME DECLARATIONS */
@keyframes fade-animation-1 {
    0%, 25%, 100% {
        opacity:0
    }
    3%, 22% {
        opacity: 1;
    }
}
@keyframes fade-animation-2 {
    0%, 25%, 50%, 100% {
        opacity:0
    }
    28%, 47% {
        opacity: 1;
    }
}
@keyframes fade-animation-3 {
    0%, 50%, 75%, 100% {
        opacity:0
    }
    53%, 72% {
        opacity: 1;
    }
}
@keyframes fade-animation-4 {
    0%, 75%, 100% {
        opacity:0
    }
    78%, 97% {
        opacity: 1;
    }
}

@-webkit-keyframes fade-animation-1 {
    0%, 25%, 100% {
        opacity:0
    }
    3%, 22% {
        opacity: 1;
    }
}
@-webkit-keyframes fade-animation-2 {
    0%, 25%, 50%, 100% {
        opacity:0
    }
    28%, 47% {
        opacity: 1;
    }
}
@-webkit-keyframes fade-animation-3 {
    0%, 50%, 75%, 100% {
        opacity:0
    }
    53%, 72% {
        opacity: 1;
    }
}
@-webkit-keyframes fade-animation-4 {
    0%, 75%, 100% {
        opacity:0
    }
    78%, 97% {
        opacity: 1;
    }
}

/* -------------------------
   PURE CSS Testimonial Carousel
---------------------------- */

.testimonial h4,
.testimonial .author-details {
    text-align: center;
	margin: 1em 0 2em;
}
.testimonial i.fa-quote-left{
	font-size: 3em;
	color: #000000;
	display: grid;
    justify-items: center;
    margin-bottom: 0.5em;
}
.single .entry-meta {
    text-align: center;
    margin-bottom: 2em;
}
/*.single .entry-meta span {
    margin: 0 0.4em;
}*/

/*****************************************/
/****        Start Logo Slider        ****/
/*****************************************/



.logos-slider-container {
	max-width: 90%;
}
.logos-slider {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    position: relative;
    /*-webkit-mask-image: linear-gradient(90deg,rgba(0,0,0,0) 0,#000 15%,#000 85%,rgba(0,0,0,0) 100%);
    mask-image: linear-gradient(90deg,rgba(0,0,0,0) 0,#000 15%,#000 85%,rgba(0,0,0,0) 100%);*/
}
.logos-slider.no-ani {
	justify-content: center;
}
.logos-slider ul {
	list-style-type: none;
	padding:0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    animation: slide 120s linear infinite;
}
.logos-slider.no-ani ul {
	animation: unset;
}
.logos-slider ul li {
	width:110px;
	max-width: 110px;
}
@keyframes slide {
	0% {
		transform: translate3d(0,0,0)
	}
	100% {
		transform: translate3d(-100%,0,0)
	}
}
.logos-slider:hover ul {
    animation-play-state: paused!important;
}




.img-scroller {
	--image-width: 90px;
	--image-height: auto;
	padding: 2em 0;
	overflow: hidden;
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	position: relative;
	display: flex;
	background-color: #fff;
}
.img-scroller:hover ul {
	animation-play-state: paused;
}
.img-scroller ul {
	list-style-type: none;
	display: flex;
	position: relative;
	/*animation: scroller 100s linear infinite;*/

/*	animation-name: scroller;
	animation-duration: 30000ms;
	animation-iteration-count: infinite;
	animation-play-state: running;
	transition-timing-function: cubic-bezier(0.770, 0.000, 0.175, 1.000);*/ /* easeInOutQuart */

	animation: scroller 35000ms cubic-bezier(0.770, 0.000, 0.175, 1.000) 5000ms infinite running; /* easeInOutQuart */
	justify-content: space-around;
}
.img-scroller li {
	flex: 0;
	margin: 0 2vw;
}
.img-scroller img {
	display: block;
	min-width: var(--image-width);
	height: var(--image-height);
	margin: 0;
	transform: scale(1);
	opacity: 1;
	animation: scaleimg 1s linear 2 alternate; /* easeInOutQuart */
}
.img-grid {
    display: flex;
    flex-flow: row wrap;
	justify-content: center;
	gap:0.5em;
}
.img-grid figure {
    flex:0 180px;
}


/*.img-scroller:before,
.img-scroller:after {
	content: "";
	position: absolute;
	width: 25%;
	height: 100%;
	top: 0;
	z-index: 1;
}
.img-scroller:before {
	left: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 1) 0, rgba(255, 255, 255, 0) 100%);
}
.img-scroller:after {
	right: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 1) 100%);
}*/
@media (min-width: 960px) {
	.img-scroller {
		--image-width: 166px;
		--image-width: min(max(110px, 10vw), 140px);
	}
}

@keyframes scroller {
	0% {
		transform: translateX(0%);
	}
	5%,10%,15%,20%,25% {
		transform: translateX(-25%);
	}
	30%,35%,40%,45%,50% {
		transform: translateX(-50%);
	}
	55%,60%,65%,70%,75% {
		transform: translateX(-75%);
	}
	80%,85%,90%,95%,100% {
		transform: translateX(-100%);
	}
}

@keyframes scaleimg {
	0% {
		transform: scale(0.5);
		opacity:0.5;
	}
	100% {
		transform: scale(1);
		opacity:1;
	}
}

/*****************************************/
/****         End Logo Slider         ****/
/*****************************************/

/* # Start Tabs Styles
--------------------------------------------- */

/* See inline comments below for changes, 3 probable changes in total */
/* See at end of Tabs styles below for all colour changes */

.tabs-container .tab input[type='checkbox'] {
	position: absolute;
	opacity: 0;
	z-index: -1;
}

/* Accordion styles */
.tabs-container {
	grid-column: 1 / 13;
	border-radius: 0px;
	overflow: hidden;
	margin: 0em;
	box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.5);
}
.tabs-container .tab {
	width: 100%;
	overflow: hidden;
	margin-bottom: 10px; /* Optionally add a gap between each FAQ Label 0px for no gap */
}
.tabs-container .tab:last-child {
	margin-bottom: 0px;
}
.tabs-container .tab-label {
	display: flex;
	justify-content: space-between;
	padding: 1em;
	font-weight: bold;
	cursor: pointer;
}
.tabs-container .tab-label::after {
	content: "+";
	width: 1em;
	height: 1em;
	text-align: center;
	transition: all 0.35s;
	transform: rotate(90deg);
	display: grid;
    align-content: center;
	font-size: 1.6em;
}
.tabs-container .tab-content {
	max-height: 0;
	padding: 0 1em;
	transition: all 0.35s;
}
.tabs-container .tab-close {
	display: flex;
	justify-content: flex-end;
	padding: 1em;
	font-size: 0.75em;
	cursor: pointer;
}

.tabs-container input:checked + .tab-label::after {
	content:'-';
	font-size:1.8em;
	transform: rotate(360deg);
}
.tabs-container input:checked ~ .tab-content {
	max-height: 125vh;
	padding: 1em;
	display: grid;
}
.tabs-container .tab-content>.wp-block-group>.wp-block-group__inner-container {
    display: flex;
    gap: 1em;
}
.tabs-container .tab-content .wp-block-group__inner-container figure {
    flex: 0 0 144px;
}

/*.tabs-container .tab-label span::before {
    content: "\f1b0"; *//* Change the Font Awesome icon here */
    /*font-family: "Font Awesome 5 Pro"; /* Change the Font Awesome family here */
    /*font-size: 2rem;
    font-weight: 600;
    padding-right: 10px;
    margin-left: 0 */ /*-29px -25px*/;
/*}
.tabs-container .tab-label:hover span::before {
    font-weight: 600;
}*/


/* Modify these colours in the website theme */
.tabs-container .tab {
	color: #FFF;
}
.tabs-container .tab-label {
	background: #8bc43f;
	border: 1px solid #00635e;
	color: #FFF;
}
.tabs-container .tab-label:hover {
	background: #00635e;
	color:#fff;
}
.tabs-container .tab-content {
	color: #444;
	background: #FFF;
}
.tabs-container .tab-close {
	background: #00635e;
}
.tabs-container .tab-close:hover {
	background: #FFF;
}
.tabs-container input:checked + .tab-label {
	background: #00635e;
	color:#FFF;
}
.tabs-container .tab-label span::before {
    color: #00635e;
}
.tabs-container .tab-label:hover span::before {
    color: #8bc43f;
}

/* Modify the above colours in the website theme */


/* # End Tabs Styles
--------------------------------------------- */



a,
a:hover,
a:focus,
.main .posts-grid article a,
.main .posts-grid article a:hover,
.main .posts-grid article a:focus,
.main a:not(.button),
footer .footer-grid a, 
footer .footer-grid a:hover, 
footer .footer-grid a:focus,
footer .footer-grid .nav-link,
footer .footer-grid .nav-link:hover, 
footer .footer-grid .nav-link:focus,
footer .subfooter a, 
footer .subfooter .nav-link,
footer .subfooter a:hover, 
footer .subfooter .nav-link:hover,
footer .subfooter a:focus, 
footer .subfooter .nav-link:focus,
.main aside ul li:nth-of-type(even) a,
.main aside ul li:nth-of-type(even) a:hover,
.main aside ul li:nth-of-type(even) a:focus,
.main aside ul li:nth-of-type(odd) a,
.main aside ul li:nth-of-type(odd) a:hover,
.main aside ul li:nth-of-type(odd) a:focus {
	border-bottom: unset;
	text-decoration-line: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 1px;
	text-decoration: underline dotted 1px;	
}



/* Step 1: Common Properties: All required to make icons render reliably - we did this above but it's included here for the full demo */
.nav-link::before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}


/* Step 2: Reference Individual Icons */
/* Note: Make sure to include the correct weight and Unicode value for the icon */

/* an example rule targeting any element with the "account" class to render fa-user icon in the Solid style */
.mobile-nav .nav-link::before, 
.mobile-nav .nav-link::after, 
footer .menu .nav-link::before, 
footer .menu .nav-link::after {
	font-family: 'Font Awesome 6 duotone';
}
.mobile-nav .nav-link::before, 
footer .menu .nav-link::before {
    content: "\f7d9";
    color: #000000;
}
.mobile-nav .nav-link::after, 
footer .menu .nav-link::after {
    content: "\10f7d9";
}
.mobile-nav .nav-link::after,
.mobile-nav .nav-link:hover::after {
    color: #000000;
	opacity: 1;
}
.mobile-nav .nav-link:hover::before,
footer .menu .nav-link:hover::before {
    content: "\f7d9";
	transform: rotate(360deg);
	color: #D3B269;
}
.mobile-nav .nav-link:hover::after,
footer .menu .nav-link:hover::after {
    content: "\10f7d9";
	transform: rotate(360deg);
}

footer .menu .nav-link::after,
footer .menu .nav-link:hover::after {
    color: #D3B269;
	opacity: 0.8;
}
.mobile-nav--open {
    z-index: 1;
}
.swaa .mobile-nav .nav-link::before, 
.swaa footer .menu .nav-link::before,
.swaa .mobile-nav .nav-link::after, 
.swaa footer .menu .nav-link::after,
.swaa .mobile-nav .nav-link:hover::before,
.swaa footer .menu .nav-link:hover::before,
.swaa .mobile-nav .nav-link:hover::after,
.swaa footer .menu .nav-link:hover::after {
    content: "";
}

.gform_wrapper.gravity-theme fieldset.gfield.gfield--width-half.align-right {
    grid-column: 1 / 12;
}
.gform_wrapper.gravity-theme .gfield .gfield_label {
	font-weight: 400;
}

.gfield.menu-item {
    display: flow;
    align-items: baseline;
}
.menu-item .ginput_container.ginput_container_singleproduct {
    display: inline-flex;
	align-items: center;
}
.menu-item .gfield_label.gform-field-label.gfield_label_before_complex {
    flex: 0 200px;
}
.menu-item .ginput_product_price_wrapper {
    flex: 1 0 120px;
}
.gform_wrapper.gravity-theme .gfield.menu-item  .ginput_quantity {
    max-width: 80px;
}
.gform_wrapper.gravity-theme .menu-item .gfield_label {
    display: inline-grid;
}
.gform_wrapper.gravity-theme .gfield_label span.gform-field-label.gfield_label_product {
    width: 200px;
}
.gform_wrapper.gravity-theme .menu-item input[type=number]{
    padding: 6px 8px;
	margin: 2px 0;
}
.menu-item span.gform-field-label.gform-field-label--type-sub-large.ginput_product_price_label {
    display: none;
}
.items-heading-label {
    display: flex;
    flex-flow: row wrap;
    /* width: 100%; */
}
.items-heading-label span:nth-of-type(1) {
    width: 200px;
}
.items-heading-label span:nth-of-type(2) {
    width: 120px;
}
.items-heading-label span:nth-of-type(3) {
    width: 80px;
}
.gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: #00635e;
    color: #fff;
}


/***** Start Media Queries  *****/
@media (min-width: 20em) {
	/*.button, button, 
	input[type='button'], input[type='reset'], 
	input[type='submit'],
	.wp-block-button__link {
		padding: 0.8em 2em 0.8em 2em;
	}*/
	header .nav-link--home a {
		flex: 1 0 120px;
	}
	header.sbs-header .right-preheader .sbs-inner-header>span {
		top: -8px;
		border-left: 2px solid #00aeef;
		width: 7px;
		height: 61px;
		border-right: 2px solid #fff;
		left: 14px;
	}
	.main .social {
		gap: 1.6em;
		max-width: 320px;
	}	
	.posts-grid .entry-header {
		padding: 0 1em;
	}	
	.posts-grid article h4 {
		font-size: 1.2em;
	}
	/*.single .entry-meta span {
		margin: 0 0.4em;
	}*/
	.banner-container .bg-banner-image {
		height: 10em;
		margin-top: -1em;
	}
	.banner-container.type3 .bg-banner-image {
		height: 11em;
		margin-top: 0;
	}
	.services .services-grid {
		gap: 2em;
		padding: 0 0 3em;
	}
	.home .services .services-grid,
	.page .services .services-grid	{
		padding: 1em 0 2em;
	}
	.services .services-grid.grid-theme-6 .services {
		flex: 0 1 250px;
	}
	.site-footer>span {
		border-left: 20px solid #000000;
		border-right: 20px solid rgb(255 255 255 / 10%);
		height: 96%;
		top: -51px;
		width: 56px;
		left: 47%;
	}
	footer .footer-grid::after {
		bottom: 85px;
		height: 120px;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 1.2em;
		line-height: 1.1;
	}
}
@media (min-width: 22.5em) { /* 360px */
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 12em;
    }
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 1.3em;
	}

}

@media (min-width: 25em) { /* 384px */
	.banner-container.type3 .bg-banner-image.olt1 {
		grid-template-rows: auto minmax(auto,140px) 1em;
        height: 13em;
    }
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 1.4em;
		line-height: 1.2;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 80%;
	}
}
@media (min-width: 28em) { /* 448px */
	header.sbs-header .right-preheader .sbs-inner-header {
		-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 24px 100%);
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 24px 100%);
	}
	header.sbs-header .right-preheader .sbs-inner-header>span {
		top: -8px;
		border-left: 3px solid #00aeef;
		width: 9px;
		height: 62px;
		border-right: 3px solid #fff;
		left: 16px;
	}
	header.sbs-header .nav-link--home a {
		flex: 0 0 5em;
	}
	header.sbs-header .header .mobile-nav-handler {
		grid-gap: 1em;
	}
	header.sbs-header .header .mobile-nav-handler a {
		font-size: 1.25em;
	}
	header.sbs-header .header .mobile-nav-handler a,
	header.sbs-header .header .hamburger {
		width: 2.5em;
		height: 2.5em;
	}
	.banner-container.type3 .bg-banner-image {
		height: 12.5em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
		grid-template-rows: auto minmax(auto,140px) 2em;
		height: 14em;
    }
	.bg-banner-image.use-overlay.olt1:after {
		
	}
	footer .footer-grid::after {
		bottom: 40px;
		height: 160px;
	}
	.site-footer>span {
		border-left: 25px solid #000000;
		border-right: 25px solid rgb(255 255 255 / 10%);
		height: 96%;
		top: -50px;
		width: 70px;
		left: 47%;
	}
	.services-grid.grid-theme-7 .title-curve {
		top: 80px;
		left: 113px;
		transform: rotate(305.5deg) scale(1);
	}
	.services-grid.grid-theme-7 .service {
		flex: 0 280px;
	}
}
@media (min-width: 32em /*512px*/) {
	.wp-block-image img {
		max-width: 320px;
	}
	.banner-container.type3 .bg-banner-image {
		grid-template-columns: 1.125em 1fr 1.125em;
		grid-template-rows: auto minmax(auto,140px) auto;
		margin-top: 0;
	}
	.banner-container.type3 .bg-banner-image {
		height: 14em;
	}
	.banner-container.type3 .bg-banner-image.olt1{
		grid-template-rows: auto minmax(auto,140px) 3em;
        height: 16em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 15em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 18em;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 1.6em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 1.65em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 70%;
		padding: 14px;
	}
	footer .footer-grid::after {
		bottom: 20px;
		height: 170px;
	}
}
@media (min-width: 36.75em /*588px*/) {
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 17em;
    }
	
}
@media (min-width: 40em /*640px*/) {
	header.sbs-header .right-preheader .sbs-inner-header {
		-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 28px 100%);
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 28px 100%);
	}
	header.sbs-header .right-preheader .sbs-inner-header>span {
		width: 10px;
		height: 78px;
		left: 20px;
	}
	header.sbs-header .header .mobile-nav-handler a,
	header.sbs-header .header .hamburger {
		width: 2.5em;
		height: 3em;
	}
	header.sbs-header .header .mobile-nav-handler {
		grid-gap: 2em;
	}
	.section__hero-content {
		max-width: 32.5em;
		margin: 6.35em auto;
	}
	.banner-container.type3 .bg-banner-image {
		height: 15.5em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
        grid-template-columns: 2em minmax(auto, 34%) 2em;
        height: 19em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 18em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 22em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 1.9em;
	}

	.mag-grid img.haverlogo {
		max-width: 300px;
		float: right;
		padding: 0 0 20px 20px;
	}
	header .nav-link--home a {
		flex: 1 0 150px;
	}
	header.sbs-header .nav-link--home a {
		flex: 0 0 6em;
	}
	.map-container iframe {
		height:250px;
	}
	.contact-section #block-21,
	.contact-section #block-23,
	.contact-section .social {
		width: 46%;
		float: left;
	}
	.content-container .banner-container .banner-content h1 {
		font-size: 2em;
	}
	.content-container .banner-container .banner-content h4 {
		font-size: 1.125em;
	}
	.content-container .banner-container .banner-content h4 .button {
		font-size: 0.7em;
	}
	.content-container .banner-container .frontpage.banner-content {
		padding: 12% 1em 0;
	}
	.content-container .banner .banner-content, 
	.content-container .banner-container .banner-content {
		/*padding:6em 1em;*/
	}
	.banner-container .bg-banner-image {
		/*background-attachment: fixed;*/
	}
	.banner-container .bg-banner-image {
		height: 14em;
		margin-top: -1.1em;
	}
	.banner-container.type2 .bg-banner-image {
		background-size: 60%;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 2.2em;
	}
	.wp-block-image img {
		max-width: 480px;
	}
	.services .grid-theme-2.services-grid {
		gap: 2em;
		padding:1em 0 2em;
		grid-template-columns: repeat(2,240px);
	}
	.main .social {
		max-width: 320px;
	}
	.social .fa-brands {
		font-size: 1.65em;
	}
	.site-footer>span {
	    border-left: 30px solid #000000;
		border-right: 30px solid rgb(255 255 255 / 10%);
		height: 98%;
		top: -49px;
		width: 83px;
		left: 45%;
	}
	footer .subfooter {
		display: grid;
		grid-template-columns: auto minmax(auto,40em) minmax(auto,31.5em) auto;
		grid-gap: 1.75em 1.25em;
	}
	footer .subfooter ul {
		grid-column: 2/4;
	}
	footer .subfooter .subfooter-nav {
		grid-column: 2 / 5;
		padding-left: 0;
		text-align: left;
		margin: 0;
	}
	.subfooter .copyright.right {
		text-align: right;
		grid-column: 5 / 6;
	}
	.subfooter .copyright {
		text-align: left;
		grid-column: 2 / 3;
	}
	.subfooter .designedby {
		text-align: right;
		grid-column: 3 / 4;
	}
	footer .footer-grid::after {
		bottom: -30px;
		background-position:right;
		height: 200px;
	}
	.gform_wrapper.gravity-theme fieldset.gfield.gfield--width-half.align-right {
		grid-column: 7 / 12;
	}

}
@media (min-width: 45.6em /*730px*/) {
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 22em;
    }
}
@media (min-width: 48em /*767px*/) {
	.banner-container.type3 .bg-banner-image {
		height: 17em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
		height: 23em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 20em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 26em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 2em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 65%;
		padding: 16px;
		border-radius: 15px;
	}

	.contact-section {
		display:grid;
		grid-template-columns: minmax(auto,322px) minmax(auto,1fr);
		gap:1em;
	}
	.content-container .contact-section .banner-container {
		grid-column: 2/3;
	}
	.contact-section:nth-of-type(2) {
		margin-bottom: 3em;
	}
	.info-container {
		max-width: unset;
		margin: unset;
	}
}
@media (min-width: 53.75em /*860px*/) {
	h1,h2,h3,h4,h5,h6,p {
		line-height: 1.4;
	}
	header.sbs-header .right-preheader .sbs-inner-header {
		-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 31px 100%);
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 31px 100%);
	}
	header.sbs-header .right-preheader .sbs-inner-header>span {
		width: 10px;
		height: 80px;
		left: 20px;
	}
	header.sbs-header .nav-link--home a {
		flex: 0 0 7em;
	}
	header.sbs-header .right-preheader .sbs-inner-header::before,
	header.sbs-header .right-preheader .sbs-inner-header::after {
		font-size: 4.4em;
	}
	.test-snip-container h4,
	.test-snip-container p {
		font-size: 1.3em;
	}
	.contact-section #block-21, 
	.contact-section #block-23,
	.contact-section .social {
		width: 100%;
		float: unset;
	}
	.banner-container .bg-banner-image {
		height: 20em;
	}
	.banner-container.type3 .bg-banner-image {
		height: 19.5em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 26em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 23em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 30em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 2.2em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content>div {
		display:block;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 85%;
		padding: 20px;
		border-radius: 20px;
	}
	.testimonial i.fa-quote-left{
		font-size: 3em;
	}
	.banner-container .bg-banner-image {
		margin-top: -1.4em;
	}
	.wp-block-image img {
		max-width: 420px;
	}
	.main-with-aside .wp-block-image .alignright {
		max-width: 450px;
	}
	.main aside h4 {
		font-size: 1.2em;
	}
	footer.site-footer h4 {
		font-size: 1.4em;
	}
	.call-out {
		padding: 2em;
	}
	.site-footer>span {
	    border-left: 35px solid #000000;
		border-right: 35px solid rgb(255 255 255 / 10%);
		height: 98%;
		top: -49px;
		width: 92px;
		left: 45%;
	}
	.inner-info-container:nth-of-type(odd),
	.inner-info-container:nth-of-type(even) {
		padding: 2em 2em 0.75em;
	}
	.services-grid.grid-theme-7 .service {
		flex: 0 280px;
	}
}
@media (min-width: 60em /*960px*/) {
	header .header.right-preheader .logo img {
		max-width: 6em;
	}
	header .preheader ul.login li {
		font-size: 1.1em;
	}
	header .preheader ul {
		margin: 2px 0 3px;
		gap: 2em;
	}	
	.hcr nav.nav-bar.top-nav .main-nav>li {
		padding: 0.8em 1em;
		margin: 0 0.5em;
	}
	header .header .preheader {
		grid-row: 1/2;
		grid-gap: 1em;
	}
	header.hcr-header .header {
		/*height: 6.05em;*/
	}
	header.header .header.header--fixed {
    /* height: 3.05em; */
		top: -36px;
		align-items: flex-end;
	}
	.hcr .header--fixed nav.nav-bar.top-nav .main-nav>li {
		padding: 0.7em 1em;
	}
	header.sbs-header .right-preheader .sbs-inner-header {
		grid-column: 6 / span 8;
	}
	header.sbs-header .right-preheader .sbs-inner-header {
		-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 45px 100%);
		clip-path: polygon(0 0, 100% 0%, 100% 100%, 45px 100%);
	}
	header.sbs-header .right-preheader .sbs-inner-header>span {
		top: -8px;
		border-left: 4px solid #00aeef;
		width: 13px;
		height: 112px;
		border-right: 4px solid #fff;
		left: 29px;
	}
	.header .preheader.own-row::before {
		content: '';
		background: url() no-repeat;
		position: absolute;
		top: 4px;
		left: 0;
		height: 36px;
		width: 260px;
		z-index: 0;
	}
	header .header.right-preheader .logo {
		grid-row: span 2;
	}
	header .header--fixed.header.right-preheader .logo {
		max-width: 3.8em;
		grid-row: 2/3;
	}	
	header.sbs-header .nav-link--home a {
		flex: 0 0 9em;
	}
	header.sbs-header .header.header--fixed .nav-link--home a {
		flex: 0 0 6em;
	}
	nav.nav-bar.top-nav .sub-menu {
		background-color:#D3B269;
		border: 2px solid #101010;
		max-width: 240px;
		padding: 0.25em 0;
	}
	nav.nav-bar.top-nav .sub-menu .sub-menu {
		background-color:#D3B269;
		border: 2px solid #101010;
	}
	nav.nav-bar.top-nav .sub-menu a,
	.header--fixed .sub-menu a.nav-link	{
		color:#000000;
	}
	nav.nav-bar.top-nav .sub-menu .sub-menu a,
	.header--fixed .sub-menu .sub-menu a.nav-link	{
		color:#101010;
	}
	nav.nav-bar.top-nav .main-nav .sub-menu li {
		padding: unset;
		margin: unset;
		border-bottom: 1px dotted #D3B269;
		display:flex;
	}
	nav.nav-bar.top-nav a {
		flex: 1 1 auto;
	}
	nav.nav-bar.top-nav .main-nav .sub-menu .menu-item a.nav-link {
		padding: 0.5em 1.25em;
		margin: 0.5em 0;
	}
	nav.nav-bar.top-nav .sub-menu::before {
		border-left: 0.625em solid transparent;
		border-right: 0.625em solid transparent;
		border-bottom: 0.625em solid #101010;
	}
	/*nav.nav-bar.top-nav .sub-menu .sub-menu::before {
		border-top: 0.625em solid transparent;
		border-bottom: 0.625em solid transparent;
		border-right: 0.625em solid #000000;
	}*/
	nav.nav-bar.top-nav .sub-menu .sub-menu::before {
		top: 0.75em;
		left: -1.28em;
	}
	nav.nav-bar.top-nav .main-nav > li > .nav-link:hover::before {
		/*border-bottom: 0.25em solid #000000;*/
		width: 0em;
		transition: all 1s ease;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border: 4px solid #000000;
		border-bottom: 0;
	}
	nav.nav-bar.top-nav .main-nav > li > .nav-link.nav-link--active::before {
		border-top: 0.25em solid #000000;
		width: 2em;
		transition: all 1s ease;
	}
	nav.nav-bar.top-nav .main-nav > li > .nav-link:hover::before {
		width: 2.5em;
	}
	.sbs nav.nav-bar.top-nav .main-nav > li > .nav-link::before, 
	.sbs nav.nav-bar.top-nav .main-nav > li > .nav-link::after {
		border: unset;
		width: 8px;
		height: 24px;
		position: absolute;
		left: -14px;
		right: unset;
		margin: auto;
		transform: rotate(-31deg) skew(-5deg, 31deg);
	}
	.sbs nav.nav-bar.top-nav .main-nav > li > .nav-link::before {
		top: 1em;
	}
	.sbs nav.nav-bar.top-nav .main-nav > li > .nav-link:hover::before {
		/* border-bottom: 0.25em solid #000000; */
		width: 7px;
		transition: all 1s ease;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border-left: 2px solid #000000;
		border-bottom: 0;
		border-right: 2px solid #fff;
	}	
/*	nav.nav-bar.top-nav .main-nav > li > .nav-link:hover::after {
		width: 2em;
		transition: all 1s ease;
		border-bottom-left-radius: 75px;
		border-bottom-right-radius: 75px;
		border: 17px solid #000000;
		border-top: 0;
	}
	nav.nav-bar.top-nav .main-nav > li > .nav-link.nav-link--active::after {
		border-bottom: 0.25em solid #000000;
		width: 2em;
		transition: all 1s ease;
	}
	nav.nav-bar.top-nav .main-nav > li > .nav-link:hover::after {
		width: 2em;
	}*/
	.mag-grid img.haverlogo {
		max-width: 420px;
		float: right;
		padding: 0 0 20px 30px;
	}	
	header .nav-link--home a {
		flex: 0 0 13em;
	}
	.banner-container .bg-banner-image {
		margin-top: -1.7em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 80%;
	}
	.home .banner-container.type3 .bg-banner-image {
		grid-template-columns: 3em 1fr 3em;
		grid-template-rows: 2em minmax(auto,230px) auto;
		margin-top: 0;
	}
	.banner-container.type3 .bg-banner-image {
		grid-template-columns: 3em 1fr 3em;
		grid-template-rows: auto minmax(auto,230px) auto;
		margin-top: 0;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
		grid-template-rows: auto minmax(auto,auto) 3em;
	}
	.account-dashboard .publication-table .publication-table-subhead {
		display:grid;
		grid-template-columns: repeat(3,1fr);
		grid-row-gap: 0.5em;
		grid-template-rows: auto;
		align-items: flex-start;
		border: 1px solid #aaa;
		text-align:center;
		background: #FFE030;
		padding: 3px 0;
		grid-column-gap: 1em;
	}
	.account-dashboard {
		grid-gap: 2em;
	}
	.inner-content.account-dashboard h1 {
		font-size: 1.8em;
	}
	.account-dashboard .mag-grid {
		grid-column: span 8;
	}
	.account-dashboard .account-details  {
		grid-column: span 4;
	}
	.account-dashboard .publication-table .publication-item	{
		grid-template-columns: repeat(3,1fr);
		grid-column-gap: 1em;
		grid-row-gap: 0;
	}	
	.account-dashboard .publication-table .publication-item div:nth-of-type(1) {
		background: none;
		padding: 0 10px;
	}
	.account-dashboard .publication-table-head h4,
	.account-dashboard .publication-item h4 {
		font-size: 1.2em;
		grid-column: 1/4;
	}
	.account-dashboard .publication-item {
		grid-template-columns: repeat(3,1fr);
	}
	.map-container iframe {
		height:350px;
	}
	.banner-container .bg-banner-image {
		height: 20em;
	}
	.banner-container.type3 .bg-banner-image {
		height: 20em;
	}
	.banner-container.type3 .bg-banner-image.olt1{
        grid-template-columns: 3em minmax(auto, 30%) 3em;
        height: 28em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 25em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 34em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 2.4em;
	}

	.content-container .banner-container .banner-content h1 {
		font-size: 2.4em;
		grid-column: 1/2;
		justify-self: center;
	}
	.content-container .banner-container.type2 .banner-content h1 {
		font-size: 2.2em;
		justify-self: flex-start;
		max-width: 60%;
		padding:1em 0 1em 2em;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 2.8em;
		justify-self: left;
		max-width: 100%;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 2.4em;
	}
	.content-container .banner-container .banner-content h4 {
		font-size: 1.3em;
		grid-column: 1/2;
	}
	.content-container .banner-container .banner-content h4 .button {
		font-size: 0.8em;
	}
	.content-container .banner-container .frontpage.banner-content {
		padding: 12% 1.75em 0;
	}
	.content-container .banner .banner-content, 
	.content-container .banner-container .banner-content {
		display: grid;
		grid-template-columns: 1fr;
	}
	.content-container .inner-intro h3,
	.content-container .inner-intro p {
		font-size: 1.3em;
	}
	.wp-block-image img {
		max-width: 440px;
	}
	.main-with-aside .wp-block-image .alignright {
		max-width: 373px;
	}
	.services .grid-theme-2.services-grid {
		gap: 2em;
		padding:1em 0 2em;
		grid-template-columns: repeat(3,240px);
	}
	.contact-section {
		display:grid;
		grid-template-columns: minmax(auto,350px) minmax(auto,1fr);
		gap:2em;
	}
	.contact-section:nth-of-type(2) {
		margin-bottom: 4em;
	}
/*	footer#colophon:before {
		border-top: 100px solid #FFF;
		border-right: 100px solid #3a4154;
	}
	footer#colophon:after {
		border-top: 100px solid #FFF;
		border-left: 100px solid #3a4154;
	}*/
	.site-footer>span {
		transform: rotate(-31deg) skew(-5deg, 31deg);
		border-left: 40px solid #000000;
		border-right: 40px solid rgb(255 255 255 / 10%);
		height: 100%;
		top: -34px;
		width: 102px;
		left: 47%;
	}
	footer .footer-grid {
		padding: 6.25em 0;
		grid-template-columns: auto repeat(12,minmax(auto,4.345em)) auto;
		grid-gap: 1.75em;
	}
	footer .footer-grid>div:nth-of-type(-n+2), 
	footer .footer-grid div:last-child,
	.footer-grid #block-25 p {
		margin-bottom: 0;
	}
	footer .social{
		gap:2.4em;
	}
	.social .fa-brands {
		font-size: 1.75em;
	}
	.subfooter .copyright {
		text-align: left;
		grid-column: 2/3;
	}
	.subfooter .designedby {
		text-align: right;
		grid-column: 3/4;
	}
	.main .social {
		max-width: 360px;
	}
	.logos-slider ul {
		gap: 4rem;
	}
	.logos-slider ul li {
		width:150px;
		max-width: 150px;
	}
	.content-container .inner-intro h3 {
		font-size: 1.4em;
	}
	footer .footer-grid::after {
		bottom: -60px;
		height: 250px;
	}
}
@media (min-width: 64em /*1024px*/) {

	.header .preheader.own-row::before {
		top: 5px;
		left: 6px;
		height: 38px;
		width: 300px;
	}
	header .header.right-preheader .logo img {
		max-width: 7em;
	}
	header .preheader ul.login li {
		font-size: 1.2em;
	}
	header .preheader ul {
		margin: 3px 0 4px;
		gap: 2em;
	}	
	.hcr nav.nav-bar.top-nav .main-nav>li {
		padding: 1.05em 1em;
		margin: 0 0.5em;
	}
	header.sbs-header .nav-link--home a {
		flex: 0 0 10em;
	}
	.content-container .banner-container .frontpage.banner-content {
		padding:12% 1.75em 0 1.75em;
	}
	.content-container .banner .banner-content, 
	.content-container .banner-container .banner-content {
		padding:1em 1.75em;
	}
	.banner-container .bg-banner-image {
		height: 23em;
		margin-top: 0;
	}
	.banner-container.type3 .bg-banner-image {
		grid-template-columns: 4em 1fr 4em;
		height: 23em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
		grid-template-rows: auto minmax(auto,auto) 6em;
        grid-template-columns: 4em minmax(auto, 30%) 4em;
        height: 31em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 28em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 38em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 65%;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 2.8em;
		line-height: 1.3;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 3em;
	}
	.wp-block-image img {
		max-width: 480px;
	}
	.testimonial i.fa-quote-left{
		font-size: 4em;
	}
	.services .services-grid.grid-theme-6 .services {
		flex: 0 1 235px;
	}	
	.services .services-grid {
		gap: 1em;
	}
	footer .footer-grid::after {
		bottom: -94px;
		height: 280px;
	}
}
@media (min-width: 72em /*1152px*/) {
	.header .preheader.own-row::before {
		top: 6px;
		left:0px;
		height: 38px;
		width: 335px;
	}
	header .header.right-preheader .logo img {
		max-width: 7.5em;
	}
	header .preheader ul {
		margin: 4px 0 5px;
		gap: 2em;
	}	
	.hcr nav.nav-bar.top-nav .main-nav>li {
		padding: 1.2em 1em;
	}
	.banner-container.type3 .bg-banner-image {
		height: 26em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
		grid-template-rows: auto minmax(auto,auto) 10em;
        height: 34em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 31em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 42em;
	}
	.wp-block-image img {
		max-width: 540px;
	}
	.services .services-grid.grid-theme-6 .services {
		flex: 0 1 255px;
	}	
	.services .services-grid {
		gap: 2em;
	}
	.services .grid-theme-2.services-grid {
		gap: 2em;
		padding:1em 0 2em;
		grid-template-columns: repeat(4,240px);
	}
	footer .footer-grid::after {
		bottom: -130px;
		height: 320px;
	}
}
@media (min-width: 75em /*1200px*/) {

	.lead, .main .inner-content p.lead, p.lead {
		font-size: 130%;
	}
	.header .preheader.own-row::before {
		top: 6px;
		left:16px;
		height: 38px;
		width: 380px;
	}
	header .header.right-preheader .logo img {
		max-width: 7.75em;
	}
	header .preheader ul {
		margin: 4px 0 5px;
		gap: 2em;
	}	
	.hcr nav.nav-bar.top-nav .main-nav>li {
		padding: 1.25em 1em;
	}
	nav.nav-bar.top-nav .sub-menu {
		max-width: 240px;
	}
	.content-container .banner-container.type2 .banner-content h1 {
		padding:1em 2em 1em 3em;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		padding:0;
	}
	.section__hero-content {
		margin: 10em auto;
	}
	.wp-block-image img {
		max-width: 580px;
	}
	.services .grid-theme-1 .services-grid .type-services {
		flex: 0 16.1em;
	}
	.services .services-grid-t3 .services-grid .type-services {
		flex: 0 16.85em;
	}
	.services .grid-theme-4 .services-grid .type-services {
		flex: 0 12.7em;
	}
	.banner-container .bg-banner-image {
		height: 27em;
	}
	.banner-container.type3 .bg-banner-image {
		grid-template-columns: 6em 1fr 6em;
		height: 30em;
	}
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 38em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 33em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 46em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 3.2em;
	}

	.services .services-grid.grid-theme-6 .services {
		flex: 0 1 262px;
	}	

}
@media (min-width: 84em /*1366px*/) {
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 42em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 36em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 50em;
	}
}
@media (min-width: 90em /*1440px*/) {
	.lead, .main .inner-content p.lead, p.lead {
		font-size: 140%;
	}
	.banner-container .bg-banner-image {
		height: 32em;
	}
	.banner-container.type3 .bg-banner-image {
		grid-template-columns: 6em 1fr 6em;
		height: 42em;
	}
	.banner-container.type3 .bg-banner-image.olt1{
        height: 46em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 39em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 54em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 65%;
	}
	.home .content-container .banner-container.type3 .banner-content h1 {
		font-size: 3.4em;
	}
	.content-container .banner-container.type3 .banner-content h1 {
		font-size: 4em;
	}
	.wp-block-image img {
		max-width: 640px;
	}
}
@media (min-width: 98em /*1560px*/) {
	.banner-container.type3 .bg-banner-image.olt1 {
        height: 48em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 44em;
	}	
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 63%;
	}
	.services .services-grid.grid-theme-7 {
		max-width: 90%;
	}
}
@media (min-width: 110em /*1560px*/) {
	.banner-container.type3 .bg-banner-image.olt1	{
        height: 50em;
    }
	.banner-container.type3 .bg-banner-image.olt2 {
		height: 48em;
	}	
	.banner-container.type3 .bg-banner-image.olt3 {
		height: 56em;
	}
	.content-container .banner-container.type3 .olt1 .banner-content h1 {
		font-size: 3.6em;
	}
	.home .content-container .banner-container.type3 .banner-content .banner-inner-content {
		max-width: 60%;
	}
}

/*****  End Media Queries   *****/

/***** Start CART  *****/
button.close {
	margin-top: 30px;
	margin-right: 40px;
	background-color: #2B17FF!important;
}
.cart {
	margin-left: 2em;
}
.plus-item.btn.btn-primary.input-group-addon {
	display: none;
}
.minus-item.input-group-addon.btn.btn-primary {
	display: none;
}
.delete-item.btn.btn-danger {
	display: none;
}
.show-cart.table {
	border-top: 2px solid #EFEFEF;
	border-bottom: 2px solid #EFEFEF;
}
/***** END CART  *****/

/***** START MAG MODAL *****/

.modal-footer {
	padding-top:60px;
}
.modal-content {
    margin-right: 4em;
    margin-left: 4em;
}
.modal-header {
	margin-bottom:2em;
}
.close-modal {
	background: #FFE030;
	color: #000000;
	line-height: 1;
	position: absolute;
	right: -0.75em;
	text-align: center;
	top: -0.625em;
	width: 2em;
	text-decoration: none;
	font-weight: bold;
	-webkit-border-radius: 1.25em;
	-moz-border-radius: 1.25em;
	border-radius: 1.25em;
	-moz-box-shadow: 1px 1px 3px #000;
	-webkit-box-shadow: 1px 1px 3px #000;
	box-shadow: 1px 1px 3px #000;
}
.close {
	background: #000000;
}
.close:hover {
	background: #000000;
}

@media only screen and (min-width: 40em) {
	.modal-overlay {
		display: -webkit-box;
		display: flex;
		-webkit-box-align: center;
		align-items: center;
		-webkit-box-pack: center;
		justify-content: center;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 5;
		background-color: rgba(0, 0, 0, 0.6);
		opacity: 0;
		visibility: hidden;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1);
		transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	}
	.modal-overlay.active {
		opacity: 1;
		visibility: visible;
	}
}

.modal {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	position: relative;
	margin: 0 auto;
	background-color: #fff;
	max-width: 75rem;
	min-height: 20rem;
	margin: 0 2rem;
	padding: 1rem;
	border-radius: 3px;
	opacity: 0;
	overflow-y: auto;
	visibility: hidden;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	-webkit-transition: all 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	transition: all 0.6s cubic-bezier(0.55, 0, 0.1, 1);
}
.modal .close-modal {
	position: absolute;
	cursor: pointer;
	top: 5px;
	right: 15px;
	opacity: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	-webkit-transition-delay: 0.3s;
	transition-delay: 0.3s;
}
.modal .close-modal svg {
	width: 1.75em;
	height: 1.75em;
}
.modal .modal-content {
	opacity: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1);
	-webkit-transition-delay: 0.3s;
	transition-delay: 0.3s;
}
.modal.active {
	visibility: visible;
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.modal.active .modal-content {
	opacity: 1;
}
.modal.active .close-modal {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 1;
}
.modalTrigger {
	cursor: pointer;
}

@media only screen and (max-width: 39.9375em) {
	.modal {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-overflow-scrolling: touch;
		border-radius: 0;
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
		padding: 0 !important;
	}

	.close-modal {
		right: 20px !important;

	}
}

/***** END MAG MODAL *****/

/***** START MAG CHECKOUT *****/
.checkout-body {
	padding: 2em;
	border: solid 1px;
	background-color: #EFEFEF;
}
.total {
	padding-top: 2em;
	text-align: right;
	font-weight: bold;
	font-size: 1.2rem;
}
.checkout-body .show-cart.table {
	border-top: 2px solid #000000;
	border-bottom: 2px solid #000000;
	padding:10px 0px 10px 0px;
}
.checkout-body .item-count.form-control {
	max-width: 3em;
	min-height: 1em;
	padding: 1em;
}
.checkout-footer .clear-cart.button.button--border--solid {
	float: right;
	margin-top:0.5em;
}
.checkout-wrap {
	padding-top: 3em;
}
.checkout-body .show-cart.table {
	width: 100%;
}
.formulate-wrapper.checkout-wrap {
	border: solid 1px;
	margin-top: 1em;
	padding: 2em;
	background-color:#EFEFEF;
}
.checkout-wrap .formulate__field__label {
	padding-right: 2em;
}
.checkout-body-page .item-count.form-control {
    /*display: none;*/
}

.checkout-wrap .formulate__field__label {
    grid-area: left;
    grid-column: 1 / 3;
}




/******************************************/
/****        Start Portfolio           ****/
/******************************************/

.project-description,
.service-description {
	width:88%;
	max-width:1152px;
	margin: 0 auto;
}
.portfolio-grid {
	display: grid;
	grid-gap: 1em;
	grid-template-columns: minmax(auto,360px);
	grid-auto-flow: dense;
}
.portfolio-grid {
	/*background: #FFF;*/
	position: relative;
}
.portfolio-grid p {
	left: 50%;
	margin: 0px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}
.portfolio-grid-item {
	grid-column: span 1;  
	grid-row: span 1
}
.portfolio-grid-item img {
	-o-object-fit: cover;
    object-fit: cover;
    width: 100% !important;
    height: 100% !important;
    display: block;
}
.projects-container {
    margin-bottom: 3em;
}
.single-project-portfolio .content-sidebar-wrap,
.single-service .content-sidebar-wrap {
	width:100%;
	max-width:100%;
}
.single-project-portfolio.single .content,
.single-service.single .content {
	padding:6rem 0;
	margin:3rem auto 0;
}
.wp-block-image .alignright {
	float: none;
	margin: 1em auto 2em;
}
.ywblightbox i {
    color: #fff;
}
ul.no-bullet {
    list-style: none;
    padding-left: 0;
}
@media only screen and (min-width: 640px) {
	.portfolio-grid {
		grid-auto-rows: 1fr;
		grid-template-columns: repeat(2, calc(50vw - 22px));
		grid-auto-rows: calc(50vw - 15px);
	}
	.portfolio-grid.ywblightbox.grid-of-2,
	.portfolio-grid.ywblightbox.grid-of-3,
	.portfolio-grid.ywblightbox.grid-of-4 {
		grid-template-columns: minmax(auto,360px);
		grid-auto-rows: unset;
	}
	/*.portfolio-grid-item:nth-child(7n+1),*//* (7*0)+1=1,(7*1)+1=8,(7*2)+1=15,(7*3)+1=22,(7*4)+1=29,(7*5)+1=36,(7*6)+1=43 */
	.portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.portfolio-grid-item:nth-child(10n+8) /* 8, 18, 28, 38, 48, etc */ {
		/* 2 cols 2 rows */
		grid-column: auto / span 2;  
		grid-row: auto / span 2
	}
	.portfolio-grid-item:nth-child(10n+4), /* 4, 14, 24, 34, 44, etc */ 
	.portfolio-grid-item:nth-child(10n+6)  /* 6, 16, 26, 36, 46, etc */ {
		grid-row: auto / span 2; /* 1 col 2 rows */
	}
	.portfolio-grid-item:nth-child(10n+5), /* 5, 15, 25, 35, 45, etc */ 
	.portfolio-grid-item:nth-child(10n+7) /* 7, 17, 27, 37, 47, etc */ {
		grid-column: auto / span 2; /* 2 cols 1 row */
	}
	/*.portfolio-grid-item:nth-child(7n+1),*//* (7*0)+1=1,(7*1)+1=8,(7*2)+1=15,(7*3)+1=22,(7*4)+1=29,(7*5)+1=36,(7*6)+1=43 */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+8), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+8), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+8) /* 8, 18, 28, 38, 48, etc */ {
		/* 2 cols 2 rows */
		grid-column: unset;  
		grid-row: unset;
	}
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+6), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+6), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+6) /* 8, 18, 28, 38, 48, etc */ {
		grid-row: unset; /* 1 col 2 rows */
	}
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+7), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+7), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+7) /* 8, 18, 28, 38, 48, etc */ {
		grid-column: unset; /* 2 cols 1 row */
	}	
}
@media only screen and (min-width: 767px) {
	.portfolio-grid.ywblightbox.grid-of-2,
	.portfolio-grid.ywblightbox.grid-of-3,
	.portfolio-grid.ywblightbox.grid-of-4 {
		grid-template-columns: repeat(2, minmax(auto,360px));
	}
}
@media only screen and (min-width: 860px) {
	.portfolio-grid {
		grid-template-columns: repeat(4, calc(25vw - 16px));
		grid-auto-rows: calc(25vw - 15px);
	}
	.wp-block-image .alignright {
		float: right;
		margin: 0 0 1.275em 1.275em;
	}
}
@media only screen and (min-width: 1024px) {
	.portfolio-grid {
		grid-template-columns: repeat(5, calc(20vw - 15px));
		grid-auto-rows: calc(20vw - 15px);
	}	
	.portfolio-grid.ywblightbox.grid-of-2 {
		grid-template-columns: repeat(2, minmax(auto,460px));
	}
	.portfolio-grid.ywblightbox.grid-of-3 {
		grid-template-columns: repeat(3, minmax(auto,460px));
	}
	.portfolio-grid.ywblightbox.grid-of-4 {
		grid-template-columns: repeat(4, minmax(auto,460px));
	}
}

/******************************************/
/****          End Portfolio           ****/
/******************************************/

/******************************************/
/****         Start Projects           ****/
/******************************************/

.projects-container {
    display: grid;
    grid-gap: 1em;
    grid-template-columns: minmax(auto,360px);
    justify-content: center;
    align-items: flex-start;
	position:relative;
}
/*div#post-552,
div#post-553,
div#post-584,
div#post-691 {
    position: relative;
    z-index: -1;
}*/
.projects-container .project-item {
}
.projects-container .project-item figure {
	margin:0;
	position:relative;
}
.project-item figure div {
	width:100%;
	z-index:1;
	position:absolute;
	bottom:-40px;
    background: #000000;
	font-size: 1.1em;
	color:#fff;
	text-align:center;
    padding: 1em;
	transition: all 1000ms ease-in-out;
	opacity:0;
}
.project-item:hover figure div {
	opacity:1;
	bottom: 100px;
}
.project-item .project-title {
	z-index:2;
    background: #000000;
    padding: 1em;
    margin: 0;
}
.project-item .project-title h4 {
	font-size: 1.1em;
	color:#fff;
	text-align:center;
    margin: 0;
}
.project-item .project-title h4:before {
	padding-right: 10px;
}
.project-item .project-title h4:after {
	padding-left: 10px;
}
.project-item h5 {
	font-size: 1em;
	margin: 0;
    padding: 10px 20px 0;
}
.project-item .project-extract {
    padding: 10px 20px;
}
.project-item .project-extract p {
    color: inherit;
	margin:0;
}
.project-item .project-link {
	display: grid;
    justify-content: center;
    grid-gap: 1em;
    grid-template-rows: 1fr 0.1em;
}
.project-item .project-link a {
	background: #FFF;
    color: #1F384F;
}
.project-item .project-link a:hover, 
.project-item .project-link a:focus {
    background: #E4F3FA;
    color: #1F384F!important;
    box-shadow: 0 0.5rem 2rem -0.5rem #e4f3fa !important;
}
.project-item .project-link a span {
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s;
    color: #1F384F;
}

.portfolio-grid.ywblightbox {
}
.grid-of-4 .portfolio-grid-item,
.grid-of-3 .portfolio-grid-item, 
.grid-of-2 .portfolio-grid-item {
}
.ywblightbox .fa-duotone.fa-swap-opacity:before, 
.ywblightbox .fa-duotone:after, 
.ywblightbox .fa-swap-opacity .fa-duotone:before, 
.ywblightbox .fa-swap-opacity .fad:before, 
.ywblightbox .fad.fa-swap-opacity:before, 
.ywblightbox .fad:after {
    opacity: var(--fa-secondary-opacity,1);
}

@media only screen and (min-width: 767px) {
	.projects-container {
		grid-template-columns: repeat(2,minmax(auto,360px));
	}
	.grid-of-4 .portfolio-grid-item {
	}
	.grid-of-3 .portfolio-grid-item {
	}
	.grid-of-2 .portfolio-grid-item {
	}
}
@media only screen and (min-width: 960px) {
	.projects-container {
    grid-gap: 2em;
    grid-template-columns: repeat(3,minmax(auto,1fr));
	}
	.grid-of-4 .portfolio-grid-item {
	}
	.grid-of-3 .portfolio-grid-item {
	}
	.grid-of-2 .portfolio-grid-item {
	}
}

/******************************************/
/****          End Projects            ****/
/******************************************/

/******************************************/
/****        Start Lightbox            ****/
/******************************************/

.ywblightbox-container {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    align-items: center;
	grid-gap: 2em;
    margin-top: 2em;
	position:relative;
	z-index:0;
}
/*.ywblightbox {
	flex: 0 1 276px;
}*/
.ywblightbox_full {
	z-index: 990;
	position: fixed;
	height: 100%;
	width: 100%;
	background-color: rgba(0,0,0,0.8);
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
	cursor: default;
	transition: opacity 1s ease;
}
.ywblightbox_full img {
	position: fixed;
	z-index: 994;
	background-color: #fff;
	margin: 0;
	padding: 0;
	max-height: 90%;
	max-width: 90%;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%);
	box-shadow: 0 0 20px #000;
}
.portfolio-grid .ywblightbox_full p {
    left: 50%;
    margin: 0px;
    position: absolute;
	top: unset;
    bottom: 5%;
    transform: translate(-50%, -50%);
    color: #fff;
	z-index:999;
}
.ywblightbox .ywblightbox_close,
.ywblightbox .ywblightbox_prev,
.ywblightbox .ywblightbox_next {
	z-index: 999;
	position: fixed;
	text-decoration: none;
	visibility: hidden;
	color: #fff;
	transition: all 1s ease-in-out;
}
.ywblightbox .ywblightbox_close:hover,
.ywblightbox .ywblightbox_prev:hover,
.ywblightbox .ywblightbox_next:hover {
	color: #2db2c9;
}
.ywblightbox .ywblightbox_close {
	font-size: 30px;
	top: 3em;
	right: 0.8em;
}
.ywblightbox .ywblightbox_prev,
.ywblightbox .ywblightbox_next {
	font-size: 36px;
	top: 50%;
	transform: translate(0%, -50%);
}
.ywblightbox .ywblightbox_prev {
	left: 0.2em;
}
.ywblightbox .ywblightbox_next {
	right: 0.2em;
}
/*.ywblightbox .ywblightbox_close::after {
	content: '\00d7'; //invoke this if not using Font Awesome
	//if not using FA, also remove i tags and replace &lt; and &gt; in the html and remove i tag from close button 
}*/
.ywblightbox a:target ~ a.ywblightbox_close, /* selects every a.ywblightbox_close element that is preceded by a a:target element */
.ywblightbox a:target ~ a.ywblightbox_prev,
.ywblightbox a:target ~ a.ywblightbox_next {
	visibility: visible;
}
.ywblightbox a:target img.ywblightbox_thumb + span.ywblightbox_full { 
/* Selects the first span.ywblightbox_full element that is placed immediately after a:target img.ywblightbox_thumb elements */
	visibility: visible;
	opacity: 1;
	pointer-events: initial;
	z-index:9;
}
.entry-content .ywblightbox a, .entry-content .ywblightbox a:hover,
.ywblightbox a, .ywblightbox a:hover {
	border:none;
}
.ywblightbox a {
	position:relative;
	display:block;
}
.ywblightbox_thumb~div {
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    color: #FFF;
    background: #000000;
    padding: 0.5em;
}
@media only screen and (min-width: 960px) {
	.ywblightbox .ywblightbox_close {
		font-size: 36px;
		top: 3em;
		right: 1.2em;
	}
	.ywblightbox .ywblightbox_prev,
	.ywblightbox .ywblightbox_next {
		font-size: 46px;
	}
	.ywblightbox .ywblightbox_prev {
	  left: 0.5em;
	}
	.ywblightbox .ywblightbox_next {
	  right: 0.5em;
	}
}

/******************************************/
/****           End Lightbox           ****/
/******************************************/


#gallery-section {
	display: flex;
	align-items: center;
	justify-content: center;
}
#thumbnail-gallery-container {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
#thumbnail-gallery-container a.thumbnail {
	position: relative;
	border-bottom: unset;
}
#thumbnail-gallery-container img.thumbnail-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}
@media only screen and (max-width: 800px){
	#gallery-section,
	#thumbnail-gallery-container {
		padding: 0px;
	}
}

/* Lightbox Styles */ 
.lightbox-overlay {
	display: flex;
	transform: scale(0,1);
	transition: transform 400ms ease-out;
	transform-origin: center;
	justify-content: center;
	align-items: center;
	background-color: rgba(42,41,46,0.9);
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
}
.lightbox-overlay:target {
	display: flex;
	transform: scale(1,1);
	z-index: 99999;
}
.lightbox-content {
	color: rgb(255,255,255);
	width: 100vw;
	text-align: center;
}
.lightbox-image-title {
	position: relative;
	text-align: center;
}
#lightbox-overlay-container .lightbox-overlay .lightbox-navigation {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	position: absolute;
	top:50%;
	left:1.75em;
	right:1.75em;
}
#lightbox-overlay-container .lightbox-overlay a.closelb {
	position: absolute;
	color: rgb(255,255,255);
	background-color: unset;
	top: 1.75em;
	right: 1.75em; 
	display: flex;
	justify-content: center;
	align-items: center;
	border-bottom: unset;
	font-size:2em;
}
#lightbox-overlay-container .lightbox-overlay a.back,
#lightbox-overlay-container .lightbox-overlay a.next {
	display: flex;
	justify-content: center;
	align-items: center;
	color: rgb(255,255,255);
	border-bottom: unset;
	font-size:2em;
}
#lightbox-overlay-container img.lightbox-image {
	width: 90vw;
	max-height: 90vh;
	object-fit: contain;
	margin: 0 auto;
}
#thumbnail-gallery-container {
	display: grid;
	grid-gap: 1em;
	grid-template-columns: minmax(auto,360px);
	grid-auto-flow: dense;
	/*background: #FFF;*/
	position: relative;
}
	
@media only screen and (min-width: 640px) {
	#thumbnail-gallery-container {
		grid-auto-rows: 1fr;
		grid-template-columns: repeat(2, calc(50vw - 22px));
		grid-auto-rows: calc(50vw - 15px);
	}
	#thumbnail-gallery-container.grid-of-2,
	#thumbnail-gallery-container.grid-of-3,
	#thumbnail-gallery-container.grid-of-4 {
		grid-template-columns: minmax(auto,360px);
		grid-auto-rows: unset;
	}
	/*.portfolio-grid-item:nth-child(7n+1),*//* (7*0)+1=1,(7*1)+1=8,(7*2)+1=15,(7*3)+1=22,(7*4)+1=29,(7*5)+1=36,(7*6)+1=43 */
	.portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.portfolio-grid-item:nth-child(10n+8) /* 8, 18, 28, 38, 48, etc */ {
		/* 2 cols 2 rows */
		grid-column: auto / span 2;  
		grid-row: auto / span 2
	}
	.portfolio-grid-item:nth-child(10n+4), /* 4, 14, 24, 34, 44, etc */ 
	.portfolio-grid-item:nth-child(10n+6)  /* 6, 16, 26, 36, 46, etc */ {
		grid-row: auto / span 2; /* 1 col 2 rows */
	}
	.portfolio-grid-item:nth-child(10n+5), /* 5, 15, 25, 35, 45, etc */ 
	.portfolio-grid-item:nth-child(10n+7) /* 7, 17, 27, 37, 47, etc */ {
		grid-column: auto / span 2; /* 2 cols 1 row */
	}
	/*.portfolio-grid-item:nth-child(7n+1),*//* (7*0)+1=1,(7*1)+1=8,(7*2)+1=15,(7*3)+1=22,(7*4)+1=29,(7*5)+1=36,(7*6)+1=43 */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+8), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+8), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+1), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+8) /* 8, 18, 28, 38, 48, etc */ {
		/* 2 cols 2 rows */
		grid-column: unset;  
		grid-row: unset;
	}
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+6), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+6), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+4), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+6) /* 8, 18, 28, 38, 48, etc */ {
		grid-row: unset; /* 1 col 2 rows */
	}
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-2.ywblightbox .portfolio-grid-item:nth-child(10n+7), /* 8, 18, 28, 38, 48, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-3.ywblightbox .portfolio-grid-item:nth-child(10n+7), /* 8, 18, 28, 38, 48, etc */ 
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+5), /* 1, 11, 21, 31, 41, etc */
	.grid-of-4.ywblightbox .portfolio-grid-item:nth-child(10n+7) /* 8, 18, 28, 38, 48, etc */ {
		grid-column: unset; /* 2 cols 1 row */
	}	
}
@media only screen and (min-width: 767px) {
	#thumbnail-gallery-container.grid-of-2,
	#thumbnail-gallery-container.grid-of-3,
	#thumbnail-gallery-container.grid-of-4 {
		grid-template-columns: repeat(2, minmax(auto,360px));
	}
}
@media only screen and (min-width: 860px) {
	#thumbnail-gallery-container {
		grid-template-columns: repeat(4, calc(25vw - 16px));
		grid-auto-rows: calc(25vw - 15px);
	}
}
@media only screen and (min-width: 1024px) {
	#thumbnail-gallery-container {
		grid-template-columns: repeat(5, calc(20vw - 15px));
		grid-auto-rows: calc(20vw - 15px);
	}	
	#thumbnail-gallery-container.grid-of-2 {
		grid-template-columns: repeat(2, minmax(auto,460px));
	}
	#thumbnail-gallery-container.grid-of-3 {
		grid-template-columns: repeat(3, minmax(auto,460px));
	}
	#thumbnail-gallery-container.grid-of-4 {
		grid-template-columns: repeat(4, minmax(auto,460px));
	}
}
