@font-face {
	font-family: Kenyan Coffee;
	src: url(/wp-content/themes/base_teamsi/fonts/kenyan-coffee-rg.otf);
}

body {
	--h2-color: var(--global-color-tertiary);
	--h2-font: normal normal bold 45px/56px Qanelas;
	--h2-letter-spacing: 0px;
}

header.page-header[data-has-image] {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;

	height: 40vh;
	min-height: 430px;
	padding: 0;
}
header.page-header[data-has-image] h1.page-title {
	background-color: transparent;

	padding: 0;

	color: #FFF;
	font-family: Qanelas;
	font-size: 45px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}




.spin-page-banner {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	
	height: 40vh;
	min-height: 430px;
	padding: 0 var(--boxPadding);
  text-align: center;
	
	position: relative;
	top: 0;
	left: 0;
}
body.short-banner .spin-page-banner {
	height: 210px;
	min-height: 0px;
}
.spin-page-banner h1 {
	color: #fff;
	background-color: initial;
	
	padding: 0;
	margin-top: 0 !important;
	
	font-family: Qanelas;
	font-size: 45px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	
	z-index: 2;
}




.btn.btn-short:not(.wp-block-button),
.wp-block-button.btn.btn-short .wp-element-button,
.btn.btn-short:not(.wp-block-button):focus,
.wp-block-button.btn.btn-short .wp-element-button:focus {
	padding-top: 10px;
	padding-bottom: 10px;
}

.btn.btn-secondary:not(.wp-block-button),
.wp-block-button.btn.btn-secondary .wp-element-button {
  --btnBackground: var(--global-color-secondary);
  --btnText: var(--global-color-default);
}
.btn.btn-secondary:not(.wp-block-button):hover,
.wp-block-button.btn.btn-secondary .wp-element-button:hover {
  --btnBackground: var(--global-color-tertiary);
  --btnText: var(--global-color-default);
}

.btn.btn-tertiary:not(.wp-block-button),
.wp-block-button.btn.btn-tertiary .wp-element-button {
  --btnBackground: var(--global-color-tertiary);
  --btnText: var(--global-color-default);
}
.btn.btn-tertiary:not(.wp-block-button):hover,
.wp-block-button.btn.btn-tertiary .wp-element-button:hover {
  --btnBackground: var(--global-color-secondary);
  --btnText: var(--global-color-default);
}

.wp-block-button.btn.right-arrow {
	text-wrap: balance;
}
.wp-block-button.btn.right-arrow a:after {
	content: "\f061";
	font-family: var(--font-awesome-family);

	margin-left: 10px;
}

.wp-block-button.textBtn .wp-block-button__link,
a.textBtn {
	border: 0;
	border-radius: 0;
	
	background: transparent;
	
	color: var(--linkColor);
}
.wp-block-button.textBtn .wp-block-button__link:hover,
a.textBtn:hover {
	color: var(--linkHoverColor);
}

.wp-block-button.textBtn.right-arrow .wp-block-button__link:before,
a.textBtn.right-arrow:before {
	content: "\f061";
	font-family: var(--font-awesome-family);
	color: #fff;
	font-size: 20px;

	flex-shrink: 0;

	width: 35px;
	height: 35px;
	border-radius: 50%;
	margin-right: 10px;

	background-color: var(--global-color-tertiary);

	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
}




.button_callout {
	position: relative;
	top: 0;
	left: 0;

	max-width: 350px;
	margin: 0 auto 30px auto;

	box-shadow: 0px 3px 6px #00000029;
}
.button_callout:before {
	content: "";

	display: flex;

	width: 100%;
	padding-top: 83%;
}
.button_callout .wrapper {
	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;
	padding: 25px 30px;

	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
}
.button_callout img {
	flex-grow: 1;

	width: 100%;
	height: 0;
	margin: 0 0 30px 0;
	
	object-fit: contain;
}

.button_callout:hover .btn {
	background-color: #502520;
	color: #fefefe;
}




.split-section,
body.wp-admin .split-section > .acf-innerblocks-container {
	min-height: 50vh;
}




body:not(.wp-admin) .split-section.clipped .half.image-half:first-child,
body.wp-admin .split-section.clipped  > .acf-innerblocks-container > div:first-child .half.image-half {
	clip-path: polygon(0 0, 100% 0, calc(100% - 130px) 100%, 0% 100%);
}
body:not(.wp-admin) .split-section.clipped .half.image-half:nth-child(2),
body.wp-admin .split-section.clipped  > .acf-innerblocks-container > div:nth-child(2) .half.image-half {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 130px 100%);
}




.split-section.content-clipped {
	--contentDiff: calc(var(--contentBoxPadding) * 2);
	background-color: transparent;
}

/* Content half */
body:not(.wp-admin) .split-section.content-clipped .half:not(.image-half),
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div .half:not(.image-half) {
	background-color: var(--global-color-tertiary);
	z-index: 5;
}
body:not(.wp-admin) .split-section.content-clipped .half:not(.image-half):first-child,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:first-child .half:not(.image-half) {
	clip-path: polygon(0 0, 100% 0, calc(100% - 130px) 100%, 0% 100%);
}
body:not(.wp-admin) .split-section.content-clipped .half:not(.image-half):nth-child(2),
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:nth-child(2) .half:not(.image-half) {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 130px 100%);
}

body:not(.wp-admin) .split-section.content-clipped .half:not(.image-half):first-child .content-box,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:first-child .half:not(.image-half) .acf-innerblocks-container {
	padding-right: calc(var(--contentBoxPadding) * 3);
}
body:not(.wp-admin) .split-section.content-clipped .half:not(.image-half):nth-child(2) .content-box,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:nth-child(2) .half:not(.image-half) .acf-innerblocks-container {
	padding-left: calc(var(--contentBoxPadding) * 3);
}

/* Image half */
body:not(.wp-admin) .split-section.content-clipped .half.image-half,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div .half.image-half {
	background: #fff;
	margin-top: var(--elementMarginSpace);
	margin-bottom: var(--elementMarginSpace);
}

body:not(.wp-admin) .split-section.content-clipped .half .background,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div .half .background {
	--doubleContentBoxPadding: calc(var(--contentBoxPadding) * 2);
	width: calc(100% + var(--doubleContentBoxPadding));
}
body:not(.wp-admin) .split-section.content-clipped .half:first-child .background,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:first-child .half .background {
	left: 0;
	right: auto;
}
body:not(.wp-admin) .split-section.content-clipped .half:nth-child(2) .background,
body.wp-admin .split-section.content-clipped > .acf-innerblocks-container > div:nth-child(2) .half .background {
	left: auto;
	right: 0;
}














h2 {
	color: var(--h2-color);
}

.panel_default h2,
:is(.panel_default, .panel_primary, .panel_secondary, .panel_tertiary, .panel_quaternary) .panel_default h2 {
	--h2-color: var(--global-color-tertiary);
}

.panel_primary h2,
:is(.panel_default, .panel_primary, .panel_secondary, .panel_tertiary, .panel_quaternary) .panel_primary h2 {
	--h2-color: var(--global-color-default);
}

.panel_secondary h2,
:is(.panel_default, .panel_primary, .panel_secondary, .panel_tertiary, .panel_quaternary) .panel_secondary h2 {
	--h2-color: var(--global-color-primary);
}

.panel_tertiary h2,
:is(.panel_default, .panel_primary, .panel_secondary, .panel_tertiary, .panel_quaternary) .panel_tertiary h2 {
	--h2-color: var(--global-color-default);
}

.panel_quaternary h2,
:is(.panel_default, .panel_primary, .panel_secondary, .panel_tertiary, .panel_quaternary) .panel_quaternary h2 {
	--h2-color: var(--global-color-tertiary);
}




.social-icons a {
	color: var(--global-color-secondary);
	font-size: 14px;

	background-color: var(--global-color-primary);

	width: 21px;
	height: 21px;
	border-radius: 50%;

	display: flex;
	align-items: center;
	justify-content: center;
}
.social-icons a:hover {
	color: #fff;
	background-color: var(--global-color-secondary);
}
.social-icons.large a {
	font-size: 18px;

	width: 40px;
	height: 40px;
}




#home-brand-showcase.brand_showcase.standard {
	padding-top: 0;
}




.background-text {
	position: relative;
	top: 0;
	left: 0;
}
.background-text span {
	position: relative;
	top: 0;
	left: 0;
	z-index: 5;
}
.background-text img {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	
	transform: scale3d(1.1, 1.1, 1.1) translate3d(-50%, -50%, 0);
	
	width: 100%;
	height: auto;
	
	display: block;
}




#home-parallax-section.parallax-section {
	--contentDiff: -16vw;
}




#home-socials-section header {
	display: flex;
	flex-direction: row;
	gap: var(--elementMargin);
	justify-content: center;
	align-items: center;
}
#home-socials-section header p {
	display: none;
}




ul.wp-block-list {
	--markerWidth: 22px;
	
	padding-left: var(--markerWidth);

	list-style: none;
}
ul.wp-block-list li {
	position: relative;
	top: 0;
	left: 0;
}
ul.wp-block-list li:not(:last-child) {
	margin-bottom: 14px;
}
ul.wp-block-list li:before {
	content: "•";
	text-align: left;
	
	display: inline-block;

	width: var(--markerWidth);

	position: absolute;
	top: 0;
	left: calc(-1 * var(--markerWidth));
}

ul.arrow-list,
.arrow-list ul {
	list-style: none;
	margin-left: 0;
	padding-left: 45px;
}
ul.arrow-list li,
.arrow-list ul li {
	margin: 0 0 10px 0;
	padding: 15px 0;
	
	position: relative;
	top: 0;
	left: 0;
}
ul.arrow-list li:before,
.arrow-list ul li:before {
	content: "\f061";
	font-family: var(--font-awesome-family);
	color: #fff;
	font-size: 20px;

	flex-shrink: 0;

	width: 35px;
	height: 35px;
	border-radius: 50%;

	background-color: var(--global-color-tertiary);

	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;

	position: absolute;
	top: 50%;
	left: auto;
	right: calc(100% + 10px);

	transform: translate3d(0, -50%, 0);
}

ul.section-list,
ul.wp-block-list.section-list {
	list-style: none;
	margin: 0;
	padding: 0;
	
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 0;
	row-gap: var(--elementMargin);
}
ul.section-list li,
ul.wp-block-list.section-list li {
	align-self: stretch;
	
	padding: 10px var(--elementMarginSpace);
	margin: 0 !important;
	
	text-align: center;
	text-wrap: balance;
	
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}
ul.section-list li:not(:nth-child(4n)),
ul.wp-block-list.section-list li:not(:nth-child(4n)) {
	border-right: 1px solid var(--global-color-primary);
}
ul.section-list li:before,
ul.wp-block-list.section-list li:before {
	content: normal;
}




.card-grid {
	gap: var(--elementMargin);
}
body.wp-admin .card-grid.layout-grid {
	display: block;
}
.card-grid > .acf-innerblocks-container {
	gap: var(--elementMargin);
	
	display: grid;
	grid-template-columns: repeat(var(--columnNum), minmax(0, 1fr));
}

.card-grid .card {
	background: #FEFEFE;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.15);

	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	
	min-width: 0px;
	max-width: none;
	padding: 0;
	margin: 0;
	border: 0;
}
body.wp-admin .card-grid .wp-block .card {
	height: 100%;
}

.card-grid .card header {
	position: relative;
	top: 0;
	left: 0;

	flex-grow: 0;

	width: 100%;
	aspect-ratio: 1.84;
	padding: var(--elementMargin);
	overflow: hidden;
	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;

	color: #fff;
	background-color: var(--global-color-quaternary);
}
.card-grid .card header h3 {
	position: relative;
	top: 0;
	left: 0;
	z-index: 5;

	text-align: center;
	text-wrap: balance;
}
.card-grid .card .content {
	flex-grow: 1;

	padding: var(--elementMargin) var(--elementMarginSpace);
	
	/*
	text-align: center;

	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	*/
}








/*
body.wp-admin .acf-field[data-name="layout"] ul.acf-radio-list li label input {
	display: none;
}
body.wp-admin .acf-field[data-name="layout"] ul.acf-radio-list li:nth-child(1) label:before {
	content: "";
	font-family: var(--font-awesome-family);
}
*/









.vsg_staff_section .boxed_column {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-start;
}
.vsg_staff_section h2 {
	align-self: center;
	text-align: center;
	margin-bottom: var(--sectionPadding);
	max-width: 760px;
	text-wrap: balance;
}
.vsg_staff_section .card-grid.layout-grid {
	--columnNum: 4;
}
.vsg_staff_section .card h3 {
	font-size: 25px;
}

.vsg_staff_section header img.background {
	object-position: center 20%;
}

.vsg_staff_section .card .content.layout-col.content-container {
	gap: var(--elementMarginClose);
}
.vsg_staff_section .card .content > * {
	margin: 0 !important;
}
.vsg_staff_section .card .contact {
	margin-top: auto !important;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}
.vsg_staff_section .card .contact a {
	width: 50px;
	height: 50px;
	border-radius: 25px;
	background-color: var(--global-color-primary);
	color: #000;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
}
.vsg_staff_section .card .contact a.staff-email:after {
  content: "\f0e0";
  font-family: var(--font-awesome-family);
}
.vsg_staff_section .card .contact a.staff-phone::after {
	content: "\f095";
	font-family: var(--font-awesome-family);
}
.vsg_staff_section .btn {
	margin-top: var(--elementMarginSpace);
	align-self: center;
}









