/*
Theme Name: Healthy Pixels
Author: Healthy Pixels
Description: Healthy Pixels stylesheet
Version: 1.0.0
Text Domain: Healthy Pixels
*/

* {scroll-padding-top: 6rem;}
html {scroll-behavior: smooth}
html, body {height: 100%;}
body, .editor-styles-wrapper.block-editor-writing-flow {
	--font: roboto, -apple-system, system-ui, BlinkMacSystemFont, “Segoe UI”, Helvetica, Arial, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”, sans-serif;
	--accent-font: epicursive, var(--font);
	--light: 300;
	--regular: 400;
	--bold: 700;
	
	--black: #292929;
	--white: #FFFFFF;
	--bright: #F8F8F8;
	--br-grey: #D2D5D9;
	--grey: #5F5F5F;
	--blue: #1A73E8; /* main */
	--blue2: #185ABC; /* dark */
	--blue3: #EFF6FF; /* bright */
	--blue4: #D2D5D9; /* brighter */
	--green: #2BA24C;
	--error: #E43E2B;
	
	--cta: var(--blue);
	--cta-focus: var(--blue2);
	--cta-opp: white;

	--br-sm: 3px;
	--br-md: 5px;
	--br-lg: 15px;
	--border-w: 1px;
	
	--moz-box-shadow: 0 2px 5px -1px rgba(26,26,26,.3);
	--webkit-box-shadow: 0 2px 5px -1px rgb(26 26 26 / 30%);
	--box-shadow: 0 2px 5px -1px rgb(26 26 26 / 30%);
	
	--transition: all .3s ease;
	
	margin: 0;
	font-family: var(--font);
	font-size: 1rem;
	font-weight: var(--regular);
	text-align: left;
	line-height: 1.5;
	word-spacing: .5px;
	letter-spacing: .3px;
	background: var(--white);
	
	color: var(--black);
	width: 100%;
	overflow-x: hidden;
	
	display: flex;
	flex-direction: column;
}
@media only screen and (max-width:767px) {
	body {
		--br-sm: 3px;
		--br-md: 10px;
		--br-lg: 20px;
	}
}
#main {
	flex: 1 0 auto;
	width: 100%;
	overflow: clip;
}

/* Accessibility */
.screenreader-desktop {
	position: fixed;
	left: -999px;
	width: 1px;
	height: 1px;
	top: 0;
}
.screenreader-desktop:focus {
	color: var(--white);
	text-decoration: none;
	background: var(--black);
	display: inline-block;
	height: auto;
	width: auto;
	position: fixed;
	margin: auto;
	z-index: 999999999;
	top: 15px;
	left: 15px;
	padding: 8px 16px;
	border-radius: 25px;
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}

/* Text handling */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {line-height: 1.35;}
h1 {
	font-size: 3.8rem;
	font-weight: var(--bold);
	margin-bottom: 1.5rem;
}
h1 em {
	font-style: normal;
	color: var(--blue);
}
h2 {
	font-size: 2.5rem;
	font-weight: var(--bold);
}
h3 {font-size: 1.75rem;}
h4 {font-size: 1.4rem;}

.post-content h2 {
    font-size: 1.7rem;
    padding-top: 2.5rem;
}
.post-content h2:first-child {padding-top: 0;}
.post-content h3 {
    font-size: 1.3rem;
    font-weight: var(--regular);
    padding-top: 1.5rem;
}

b, strong, .sub {font-weight: var(--bold);}
.sub {color: var(--blue2);}
.flipper .sub {color: var(--white);}

.lead {font-size: 1.1rem;}

.quote {
	margin: 1rem 0;
	padding: .5rem 0 .5rem 1rem;
}
p + .quote {margin-top: 0;}
.quote p {font-size: 1.1rem;}
.quote p:last-child {margin-bottom: 0;}

.caveat {font-size: .85rem;}

.badge {
	background: var(--blue3);
	color: var(--blue);
	padding: .5rem 1rem;
	margin-bottom: 1rem;
	display: block;
	width: fit-content;
	font-size: 85%;
}
.badge p {margin-bottom: 0;}

.highlight-text {color: var(--blue);}

@media only screen and (max-width:805px) {
	h1 {font-size: 3.6rem;}
}
@media only screen and (max-width:767px) {
	h1 {font-size: 2.4rem;}
	h2 {font-size: 1.7rem;}
	h3 {font-size: 1.3rem;}
	h4 {font-size: 1.1rem;}
}
@media only screen and (max-width:991px) {
	h2.large {font-size: 3rem;}
}
@media only screen and (min-width:1200px) {
	h1 {font-size: 4.45rem;}
}
@media only screen and (min-width:1600px) {
	body {font-size: 1.1rem;}
	h2 {font-size: 2.5rem;}
	h3 {font-size: 1.6rem;}
	h4 {font-size: 1.3rem;}
}

/* Spacing */
body {
	--sm-spacer: 2rem;
	--md-spacer: 3.5rem;
	--lg-spacer: 5rem;
}
@media only screen and (min-width:1600px) {
	body {
		--sm-spacer: 3rem;
		--md-spacer: 6rem;
		--lg-spacer: 9rem;
	}
}
@media only screen and (max-width:767px) {
	body {
		--sm-spacer: 1.5rem;
		--md-spacer: 2rem;
		--lg-spacer: 3rem;
	}
	.no-mob-top {padding-top: 0 !important;}
	.no-mob-btm {padding-bottom: 0 !important;}
}
.sm-spacer, .sm-spacer-top {padding-top: var(--sm-spacer);}
.sm-spacer, .sm-spacer-btm {padding-bottom: var(--sm-spacer);}
.md-spacer, .md-spacer-top {padding-top: var(--md-spacer);}
.md-spacer, .md-spacer-btm {padding-bottom: var(--md-spacer);}
.lg-spacer, .lg-spacer-top {padding-top: var(--lg-spacer);}
.lg-spacer, .lg-spacer-btm {padding-bottom: var(--lg-spacer);}
.mb-30 {margin-bottom: 30px;}
.g-15 {row-gap: 15px;}
.g-30 {row-gap: 30px;}
.g-sm {row-gap: var(--sm-spacer);}
.g-md {row-gap: var(--md-spacer);}
.g-lg {row-gap: var(--lg-spacer);}
.wp-block-columns {
	padding-top: var(--md-spacer) !important;
	padding-bottom: var(--md-spacer) !important;
}

.wp-block-columns {padding: 15px;}
.intro-m.has-content {padding-bottom: var(--sm-spacer);}
.outro-m.has-content {padding-top: var(--sm-spacer);}

/* Backgrounds */
.black-bg {background-color: var(--black);}
.white-bg {background-color: var(--white);}
.bright-bg {background-color: var(--bright);}
.br-grey-bg {background-color: var(--br-grey);}
.grey-bg {background-color: var(--grey);}
.blue-bg {background-color: var(--blue);}
.blue2-bg {background-color: var(--blue2);}
.blue3-bg {background-color: var(--blue3);}
.black-bg, .grey-bg, .blue-bg, .blue2-bg {color: var(--white);}

/* Images and video files */
.wp-block-image img {width: 100% !important;}
img.rounded, .wp-block-gallery img, .rounded {border-radius: var(--br-md) !important;}

.svg-icon + h2, .svg-icon + h3 {padding-top: 0;}
img.icon, .icons svg {
	width: 80px;
	height: 80px;
	margin: 1rem 0;
}
.svg-icon {
	max-width: 60px;
	max-height: 60px;
	margin: .5rem 0;
	display: block;
}
p.icon-title {font-weight: var(--bold);}
@media only screen and (max-width:576px) {
	img.icon, .icons svg {
		width: 50px;
		height: 50px;
	}
}

iframe.youtube {
    aspect-ratio: 16 / 9;
    width: 100%;
}

/* Lists */
ul.checklist, ul.crosslist, .checklist ul {
	padding-inline-start: 0;
	list-style: none;
}
ul {padding-inline-start: 15px;}
ol {padding-inline-start: 20px;}
li:not(.menu-item) {padding-bottom:1rem}
li:last-child {padding-bottom:0}
ul.checklist li:before, ul.crosslist li:before, ul.checklist p:before, p.checkmark:before, ul.crosslist p:before, p.crossmark:before, .checklist ul li:before, .checklist ul p:before {
    content: "";
    display: inline-block;
    vertical-align: top;
    margin-right: 4px;
    width: 20px;
    height: 20px;
	background-color: var(--black);
}
ul.checklist li:before, ul.checklist p:before, ul.highlights li:before, p.checkmark:before, .checklist ul li:before, .checklist ul p:before {
	-webkit-mask: url('/wp-content/uploads/2025/02/check.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/check.svg') center / contain no-repeat;
}
ul.crosslist li:before, ul.crosslist p:before, p.crossmark:before {
	-webkit-mask: url('/wp-content/uploads/2025/02/cross.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/cross.svg') center / contain no-repeat;
}

/* Navigation */
nav.main-nav {
    width: calc(90% - 30px);
    position: fixed;
    background: transparent;
    z-index: 9999999;
    margin-top: 15px;
    height: 59px;
    border-radius: 50px;
    padding: 1rem;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	transition: all .75s ease;
	-webkit-transition: all .75s ease;
}
.scrolled nav.main-nav {
	background: var(--white);
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.navbar-dark .navbar-toggler, .navbar-nav, .nav-btn, .cta-bar {
	position: fixed;
}
.navbar-dark .navbar-toggler {
    color: rgba(255, 255, 255, .5);
    border-color: rgba(255, 255, 255, .1);
    right: 15px;
    top: 30px;
}
.navbar-nav, .nav-btn {
	top: 15px;
	z-index: 9999999;
}
.glass-bg {
    max-width: 100%;
	z-index: 9999998;
	padding: .5rem 1.5rem;
    border-radius: var(--br-lg);
}
.glass-bg li a {color: var(--grey);}
.glass-bg li a:hover, .glass-bg li a:focus {color: var(--black);}
.glass-bg li.current-menu-item > a {
    color: var(--black);
	pointer-events: none;
}
.glass-bg li.current-menu-ancestor > a {
    color: var(--black);
	font-style: italic;
    border-bottom: none;
}
.dropdown-item.active, .dropdown-item:active, .dropdown-item:focus, .dropdown-item:hover {
    background-color: transparent;
}
.navbar {
	padding: 0;
	display: flex;
    justify-content: center;
}
.navbar-brand {
    z-index: 99999999999999;
    position: absolute;
	top: 8px;
}
.navbar-nav li {margin: 0 1rem;}
.cta-bar {
	top: 30px;
	right: calc(5% + 25px);
	z-index: 99999;
}
.cta-bar li {display: inline-block}
.cta-bar li.primary a {
	padding: 12px 20px;
	background: var(--white);
	color: var(--kobolt);
	border-radius: var(--br-lg);
}
.cta-bar li.primary a:hover, .cta-bar li.primary a:focus {
	text-decoration: none;
	background-color: var(--sand);
}
.cta-bar li.primary.current-menu-item {pointer-events: none;}
.cta-bar li.primary.current-menu-item a {
	background: transparent;
	color: var(--sand);
	border-radius: 0;
	border-bottom: 1px solid var(--sand);
}
li.facebook a {
	font-size: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	background-color: var(--white);
	-webkit-mask: url('/wp-content/uploads/2025/04/facebook-logo.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/04/facebook-logo.svg') center / contain no-repeat;
}
li.facebook a:hover, li.facebook a:focus {background-color: var(--blue2);}

#menu-toggle, .hamburger-icon {display: none;}
	
@media only screen and (min-width: 1600px) {
	.cta-bar {right: 10%;}
}
@media only screen and (min-width: 992px) {
	.navbar-nav {flex-direction: unset !important;}
	.navbar-nav .menu-item-has-children .dropdown-menu {
		position: absolute;
		-moz-box-shadow: var(--moz-box-shadow);
		-webkit-box-shadow: var(--webkit-box-shadow);
		box-shadow: var(--box-shadow);
	}
	.dropdown-item {
		padding: .5rem;
		color: inherit;
	}
	.dropdown-menu {
		top: 60px;
		padding: .5rem 0;
		font-size: inherit;
		color: inherit;
		text-align: left;
		list-style: none;
		background-color: var(--white);
		border: none;
		border-radius: var(--br-sm);
	}
	.dropdown-item:focus, .dropdown-item:hover {
		background-color: transparent;
		color: var(--sand) !important;
	}
}
@media only screen and (max-width: 991px) {
	.navbar-brand img {
		width: 240px;
		margin-left: -15px;
		transition: all .75s ease;
		-webkit-transition: all .75s ease;
	}
	.scrolled .navbar-brand img {margin-left: 0px;}
	.navbar, .cta-bar {display: none;}
	#menu-toggle:checked ~ .navbar {display: block;}
	#menu-toggle:checked ~ .navbar .glass-bg {
		position: fixed;
		overflow-y: auto;
		width: 100vw;
		height: 100vh;
		left: 0;
		top: 0;
		z-index: 999999999;
		border-radius: 0;
		background: var(--white);
		padding: 7rem 2rem 0 2rem;
	}
	.hamburger-icon {
		display: inline-block;
        border-radius: 50px;
        z-index: 9999999999;
        display: inline-block;
        cursor: pointer;
        width: 45px;
        height: 45px;
        position: fixed;
        top: 23px;
        right: calc(5% + 25px);
        background: var(--blue);
    }
	.hamburger-icon span:nth-child(1) {margin-top: 14px;}
	.hamburger-icon span {
		background: var(--white);
        display: block;
        height: 2.5px;
        width: 25px;
        margin: 5px 10.5px;
        border-radius: 2px;
		transition: var(--transition);
		-webkit-transition: var(--transition);
	}
	#menu-toggle:checked + .hamburger-icon span:nth-child(1) {
		transform: rotate(45deg) translate(6px, 6px);
		transform-origin: center;
	}
	#menu-toggle:checked + .hamburger-icon span:nth-child(2) {opacity: 0;}
	#menu-toggle:checked + .hamburger-icon span:nth-child(3) {
    	transform: rotate(-45deg) translate(5px, -5px);
    	transform-origin: center;
	}
	
	.nav-link {display: inline-block;}
	.navbar-nav li {margin: 1rem 0;}
	.glass-bg li a {width: 100%;}
	.glass-bg li a.dropdown-toggle {width: 80%;}
	.dropdown-toggle::after {
		content: "";
		position: absolute;
		right: 0;
		top: 1rem;
		border-top: .45em solid;
		border-right: .45em solid transparent;
		border-bottom: 0;
		border-left: .45em solid transparent;
	}
	.dropdown-menu {
		font-size: inherit;
		color: inherit;
		background-color: transparent;
		border: none;
	}
}
@media only screen and (max-width: 767px) {
	nav.main-nav {width: calc(100% - 30px);}
	.navbar-nav, .hamburger-icon {right: 24px;}
}
@media only screen and (min-width: 1600px) {
	nav.main-nav {width: calc(80% - 30px);}
	.cta-bar {right: calc(10% + 25px);}
}
.navbar-nav li {position: relative;}
.navbar-nav .menu-item-has-children .dropdown-menu {
    display: none;
    visibility: hidden;
    opacity: 0;
    transition: var(--transition);
		-webkit-transition: var(--transition);
    left: 0;
    z-index: 1000;
	border-radius: var(--br-sm);
	background: var(--white);
}
.navbar-nav .menu-item-has-children:hover .dropdown-menu {
    display: block;
    visibility: visible;
    opacity: 1;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}

/* Breadcrumbs */
.breadcrumb, nav.rank-math-breadcrumb {
	background-color: transparent;
	display: block;
	padding-left: 0;
}
.breadcrumb li a, .rank-math-breadcrumb p {font-size: .8rem !important}
.breadcrumb li a, .rank-math-breadcrumb p a, a.author {color: var(--black)}
.breadcrumb li a:hover, .rank-math-breadcrumb p a:hover, a.author:hover {color: var(--black)}
.rank-math-breadcrumb p .last {color: var(--black)}

/* WhatsApp */
.whatsapp, .whatsapp a {
	position: fixed;
    bottom: 15px;
    left: 15px;
	width: 55px;
    height: 55px;
}
.whatsapp:before {
	content: "";
	position: absolute;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background-color: green;
    transition: var(--transition);
	-webkit-transition: var(--transition);
    z-index: 99999;
}
.whatsapp:before:hover, .whatsapp:before:focus {background-color: var(--black);}
.whatsapp:after {
	content: "";
	position: absolute;
	width: 45px;
    height: 45px;
    top: 5px;
    left: 5px;
	background-color: var(--white);
	z-index: 999999;
	-webkit-mask: url('/wp-content/uploads/2025/09/whatsapp.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/09/whatsapp.svg') center / contain no-repeat;
}
.whatsapp a:hover, .whatsapp a:focus {cursor: pointer;}

/* Buttons and links */
.overlay-link {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.clean-link a, a.clean-link {
	color: inherit;
	text-decoration: none !important;
}

a.read-more, p.read-more {
	color: var(--cta) !important;
	border-bottom: 2px solid var(--cta);
	width: fit-content;
	margin-bottom: 1rem;
	font-weight: var(--bold);
	transition: var(--transition);
	-webkit-transition: var(--transition);
	border-radius: 0;
}
p.read-more {cursor: pointer;}
a.read-more:hover, a.read-more:focus, p.read-more:hover, p.read-more:focus {
	color: var(--cta-focus) !important;
	text-decoration: none !important;
	border-color: var(--cta-focus);
}
a.read-more:after, p.read-more:after {
	content: "";
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
	margin-bottom: 4px;
    width: 20px;
    height: 20px;
	background-color: var(--cta);
	transition: var(--transition);
	-webkit-transition: var(--transition);
	-webkit-mask: url('/wp-content/uploads/2025/02/arrow-right.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/arrow-right.svg') center / contain no-repeat;
}
a.read-more.move-arrow {
	margin-left: 30px;
	border-bottom: none;
	position: relative;
}
a.read-more.move-arrow:after {
    position: absolute;
	margin-top: 2px;
    left: 0;
	top: 0;
    margin-left: -30px;
}
a.read-more.move-arrow:hover:after, a.read-more.move-arrow:focus:after {
	transform: rotate(0);
	margin-left: -22px;
}
a.read-more:hover:after, a.read-more:focus:after, p.read-more:hover:after, p.read-more:focus:after {
	background-color: var(--cta-focus) !important;
	transform: rotate(-45deg);
}
.flipper a.read-more, .flipper p.read-more {
	color: var(--cta-opp) !important;
	border-color: var(--cta-opp);
}
.flipper a.read-more:after, .flipper p.read-more:after {background: var(--cta-opp) !important;}

p a, li a, a {color: var(--cta-focus);}
p a:hover, p a:focus, li a:hover, li a:focus, a:hover, a:focus {color: var(--teal);}

.btn, a.cky-banner-element, .menu-btn, .cta-btn a {
	border-radius: 50px;
	font-weight: var(--bold);
	padding: 12px 30px;
	margin: 1rem 0;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	width: fit-content;
}
.btn-no-m .btn {margin-bottom: 0;}

.primary-btn, :where(.editor-styles-wrapper) .btn.primary-btn, .menu-btn, .cta-btn a {
	background: var(--cta);
	color: var(--cta-opp);
	position: relative;
	padding: 12px 60px 12px 30px;
}
.menu-btn, .cta-btn a {
	padding: 12px 30px;
	color: var(--cta-opp);
}
.cta-btn {margin-top: 2px;}
.menu-btn:hover, .menu-btn:focus, .cta-btn a:hover, .cta-btn a:focus {
	color: var(--cta-opp);
	text-decoration: none;
}
.primary-btn:hover, .primary-btn:focus, .menu-btn:hover, .menu-btn:focus, .cta-btn a:hover, .cta-btn a:focus {
	background: var(--cta-focus);
	color: var(--cta-opp);
}
.primary-btn:before, .primary-btn:after {
	content: "";
	position: absolute;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}
.primary-btn:before {
	height: 40px;
	width: 40px;
	background: var(--blue2);
	border-radius: 50px;
	right: 5px;
    top: 5px;
}
.primary-btn:after {
	content: "";
    display: inline-block;
    vertical-align: middle;
	right: 15px;
	top: 14px;
    width: 20px;
    height: 20px;
	background-color: var(--cta-opp);
	-webkit-mask: url('/wp-content/uploads/2025/02/arrow-right.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/arrow-right.svg') center / contain no-repeat;
}
.primary-btn:hover:after, .primary-btn:focus:after {transform: rotate(-45deg);}
.lg-btn .primary-btn {padding: 16px 60px 16px 30px;}
.lg-btn .primary-btn:before {
	height: 45px;
	width: 45px;
}
.lg-btn .primary-btn:after {
	right: 17px;
	top: 17px;
}

.flipper .primary-btn, :where(.editor-styles-wrapper) .flipper .btn.primary-btn {
	background: var(--cta-opp);
	color: var(--cta);
}
.flipper .primary-btn:hover, .flipper .primary-btn:focus, .flipper .primary-btn:hover:before, .flipper .primary-btn:focus:before {
	background: var(--bright);
}
.flipper .primary-btn:before, .flipper .primary-btn:hover:after, .flipper .primary-btn:focus:after {
	background: var(--cta);
}

.secondary-btn, :where(.editor-styles-wrapper) .btn.secondary-btn, .cky-banner-element {
	border: 2px solid var(--cta);
	color: var(--cta);
}
.secondary-btn:hover, .secondary-btn:focus, .cky-banner-element:hover, .cky-banner-element:focus {
	border: 2px solid var(--cta-focus);
	color: var(--cta-focus);
}
.flipper .secondary-btn, :where(.editor-styles-wrapper) .flipper .btn.secondary-btn, .flpper .cky-banner-element {
	border: 2px solid var(--cta-opp);
	color: var(--cta-opp);
}
.flipper .secondary-btn:hover, .flipper .secondary-btn:focus, .flipper .cky-banner-element:hover, .flipper .cky-banner-element:focus {
	border: 2px solid var(--cta);
	color: var(--cta);
}
.lg-btn .secondary-btn {padding: 16px 30px;}

@media only screen and (max-width:576px) {
	.btn {
		display: block;
		margin: 1rem auto;
	}
	footer .btn {width: 100%;}
	a.read-more, p.read-more {
		display: block;
		text-align: center;
		margin: 0 auto;
		margin-top: 1rem;
	}
	.read-more.move-arrow {display: inline-block;}
	.btn-sep .primary-btn + .read-more, .btn-sep .secondary-btn + .read-more {
		border-bottom: none;
		margin-top: 2rem;
	}
}
@media only screen and (min-width:577px) {
	.btn-sep .primary-btn + .read-more, .btn-sep .secondary-btn + .read-more, .btn-sep .primary-btn + .secondary-btn {margin-left: 1rem;}
}

/* HERO */
.hero-pad {margin-top: 7rem;}
.hero-pad-p {padding-top: 7rem;}
.hero-pad .lead, .hero-pad-p .lead {
	font-size: 1.2rem;
	opacity: .7;
}
.hero-bg {background: var(--bright);}
@media only screen and (max-width:767px) {
	.hero-pad-p {padding-top: 8rem;}
}
/* Full height */
.full-h-hero {
	background: var(--bright);
	min-height: 100vh;
	display: grid;
	align-items: center;
}
@media only screen and (max-width:576px) {
	.hero-pad {margin-top: 5rem;}
}
@media only screen and (min-width:767px) {
	.hero-margin {
		padding-left: 3rem;
		padding-right: 3rem;
	}
	.hero-margin .hero-max, .hero-margin .fig-stats {
		margin-left: -3rem;
		margin-right: -3rem;
	}
}

/* Client logo slider */
.client-slideshow {
    overflow: hidden;
    width: 100%;
    padding: 1rem 0;
}
.client-logos {
    display: flex;
    flex-wrap: nowrap;
}
.client-logos img {
    flex: 0 0 auto;
    height: 60px;
    margin-right: 3rem;
    white-space: nowrap;
}
@media (max-width: 768px) {
    .client-logos.mob-scroll {
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        transform: none !important;
    }

    .client-logos.mob-scroll img {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }
}

.static-logos {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	overflow-x: auto;
	gap: 2rem;
}
.logo-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.logo-box img, .logo-size img {
    min-height: 50px;
    max-height: 60px;
    max-width: 130px;
    display: inline-block;
}
@media only screen and (min-width:1600px) {
	.logo-box img {
		min-height: 70px;
		max-height: 80px;
		max-width: 190px;
	}
}

.small-logos img {
	max-height: 30px;
	margin-right: 18px;
	margin-bottom: 1rem;
}
.small-logos img:last-child {margin-right: 0;}

.sep-line {
	height: 1px;
	width: 40%;
	margin: 0 auto;
	background: var(--br-grey);
}
.br-grey-bg .sep-line {background: var(--white);}

/* Testimonial slider */
.testimonial {
	padding: 2rem;
	border-radius: var(--br-md);
	background: var(--bright);
	-moz-box-shadow:  0 3px 40px -1px rgba(26,26,26,.12);
	-webkit-box-shadow:  0 3px 40px -1px rgb(26 26 26 / 12%);
	box-shadow: 0 3px 40px -1px rgb(26 26 26 / 12%);
}
.testimonial .testimonial-logo {
	height: 65px;
	width: 65px;
	border-radius: 50px;
	overflow: hidden;
	position: absolute;
	background: var(--white);
}
.testimonial .testimonial-logo img {
	height: 100%;
    width: 100%;
	object-fit: cover;
}
.author-section {
	color: var(--grey);
	margin-left: 75px;
}
.stars {
	white-space: nowrap;
	padding-bottom: .5rem;
}
.stars img {
    width: 20px;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

.slideshow-container .testimonial {position: relative;}
.testimonial-content {
	font-style: italic;
	color: var(--black);
}
.testimonial-btn {margin-top: 2rem;}
.move-btns .testimonial-btn {display: block;}
.testimonial-btn a.next {margin-left: 3.5rem;}
.testimonial-btn a.prev:hover, .testimonial-btn a.next:hover {cursor: pointer;}
.testimonial-btn a.prev:before, .testimonial-btn a.next:before {
	content: "";
	position: absolute;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: var(--black);
}
.testimonial-btn a.prev:after, .testimonial-btn a.next:after {
	content: "";
	position: absolute;
	width: 25px;
    height: 28px;
	margin-top: 7px;
	margin-left: 9px;
	background-color: var(--white);
	-webkit-mask: url('/wp-content/uploads/2025/02/caret-right.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/caret-right.svg') center / contain no-repeat;
}
.testimonial-btn a.prev:after {transform: rotate(180deg);}

.testimonial-btn a.prev:hover:after, .testimonial-btn a.prev:focus:after, .testimonial-btn a.next:hover:after, .testimonial-btn a.next:focus:after {background-color: var(--bright);}
	
.testimonial-btn a.next:hover:after, .testimonial-btn a.next:focus:after {transform: rotate(0deg);}
.testimonial-btn a.prev:hover:after, .testimonial-btn a.prev:focus:after {transform: rotate(180deg);}

.name-stars p {
	font-size: 1.1rem;
	margin-bottom: 0;
	color: var(--black);
	font-weight: var(--bold);
}
.name-stars {
	display: flex;
	gap: 0.5rem;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

@media only screen and (min-width:992px){
	.slideshow-container .testimonial {margin-top: -2rem;}
	.move-btns .testimonial-btn {
		display: block;
		text-align: center;
		margin-top: 0;
		margin-bottom: 6rem;
	}
}
@media only screen and (max-width:1199px){
	.testimonial {
		padding: 1rem;
		margin-bottom: 1.5rem;
	}
	.col-lg-6:last-of-type .testimonial {margin-bottom: 0;}
	.stars {text-align: right;}
}
@media (min-width: 1200px) {
	.stars {order: 2;}
    .author-section {order: 1;}
}
@media only screen and (max-width:991px){
	.move-btns .testimonial-btn {
		margin-top: 1rem;
		margin-bottom: 4rem;
	}
}
@media only screen and (max-width:767px){
	.slideshow-container .testimonial:before {
		margin: auto;
		margin-bottom: 20px;
	}
	.name-stars p {font-size: 1rem;}
	.stars img {width: 15px;}
}

/* Blog */
.blog-img-h img, .blog-listing-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}
.post-card, .ex-post-card {
	background: var(--bright);
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.ft-posts .blog-img-h {
	height: 250px;
	overflow: hidden;
	position: relative;
}
.ex-post-card .same-h {display: block !important;}
.blog-img-h img:hover, .blog-img-h:focus {transform: scale(1.05);}
.ft-posts .card-content {padding: 1.5rem;}
.ex-post-card .card-content {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	padding-right: 1.5rem;
}
.ex-post-card .blog-img-h {
	min-height: 320px;
	max-height: 430px;
	overflow: hidden;
	position: relative;
}
.post-card h2 {font-size: 1.5rem;}
.post-card .blog-cat, .ex-post-card .blog-cat {
	background: var(--black);
	padding: .5rem 1rem;
	border-radius: 50px;
	font-size: .85rem;
	text-transform: uppercase;
	letter-spacing: 2px;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	z-index: 9999;
}
.ex-post-card .blog-cat {
	width: fit-content;
	margin-bottom: 1rem;
}
.post-card .blog-cat {
	position: absolute;
	margin-top: 10px;
	margin-left: 10px;
}
a .blog-cat {color: var(--white);}
a .blog-cat:hover, a .blog-cat:focus {
	text-decoration: none;
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.post-card a, .ex-post-card a, .author a {color: var(--black) !important;}
.post-card a:hover, .post-card a:focus, .ex-post-card a:hover, .ex-post-card a:focus, .author a:hover, .author a:focus {
	text-decoration: none !important;
	color: var(--blue2) !important;
}
.post-card .avatar, .ex-post-card .avatar, .author .avatar {
	width: 35px;
	height: 35px;
	border-radius: 50px;
}
.post-content {
	background: var(--white);
	padding: 3rem;
}
@media only screen and (max-width: 767px) {
	.ft-posts .card-content, .ex-post-card .card-content {padding: 1rem;}
	.ex-post-card .blog-img-h {min-height: 250px; height: 250px;}
	.post-content {padding: 1rem;}
}
@media only screen and (min-width: 1600px) {
	.ft-posts .card-content {padding: 2rem;}
	.ex-post-card .card-content {padding: 3rem 3rem 3rem 1rem;}
}

.toc-container li {padding-bottom: 0;}
.toc-container li a {color: var(--black);}
.toc-container li a:hover, .toc-container li a:focus {color: var(--blue2);}
@media only screen and (max-width: 992px) {
	.toc-container {
        margin-bottom: 1rem;
        max-height: 192px;
        overflow: auto;
    }
}
@media only screen and (min-width: 992px) {
	.toc-container {
		position: -webkit-sticky;
        position: sticky;
        top: 6rem;
        max-height: calc(100vh - 6rem);
	}
}

.post-content .post-hero-img {
	margin-left: -3rem;
	margin-right: -3rem;
}
.blog-cta, .categories {
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.blog-cta, .categories {padding: 2rem;}
.blog-cta {
	background: var(--blue);
	color: var(--white);
}
.categories {
	background: var(--white);
	margin-top: 2rem;
}
.category-list .cat {
	display: flex;
	flex-direction: column;
}
.category-list a {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.category-list .cat-count {
	position: relative;
	color: var(--white);
	font-size: .9rem;
	font-weight: var(--regular);
	z-index: 0;
	width: 22px;
	text-align: center;
}
.category-list .cat-count:before {
	content: "";
	left: 0;
	width: 22px;
	height: 22px;
	z-index: -1;
	position: absolute;
	background: var(--blue);
	border-radius: 50px;
}
.cat.group-2 .cat-count:before {background: #f0b501;}
.cat.group-3 .cat-count:before {background: #2ba24c;}
.cat.group-4 .cat-count:before {background: #e43e2b;}

.level-1 .cat, .level-2 .cat, .level-3 .cat {
	border-bottom: none;
	padding-bottom: 0;
}
.category-level.level-1 {margin-left: 10px;}
.category-level.level-2 {margin-left: 20px;}
.category-level.level-3 {margin-left: 30px;}

.cat {
	font-size: .9rem;
	font-weight: var(--bold);
	margin: 1rem 0;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(45,45,45,0.1);
}
.cat a {color: var(--black);}
.cat a:hover, .cat a:focus {
	text-decoration: none;
	color: var(--blue);
}
	
/* Scroll bar */
.post-progress {
    position: sticky;
    top: 0; /* 80px */
    width: 100%;
    height: 5px;
    transition: var(--transition);
    z-index: 50;
    background: transparent;
}
.post-progress.active {opacity: 1;}
.post-progress-bar {
	height: 100%;
	width: 0%;
	background: var(--blue);
	transition: width 0.1s linear;
}
@media only screen and (min-width:768px) {
	.post-content .post-hero-img {margin-bottom: 2rem;}
}
@media only screen and (max-width:767px) {
	.post-content .post-hero-img {
		margin-left: -1rem;
		margin-right: -1rem;
	}
	.blog-cta, .categories {padding: 1rem;}
}

/* Pagination */
.page-numbers {
	color: var(--blue);
	text-decoration: none;
	padding: 9px;
	margin: 4px;
	border-radius: 0;
	min-width: 42px;
	text-align: center;
}
.page-numbers:hover, .page-numbers:focus {
	color: var(--blue2);
	border-width: 3px;
	border-bottom: 1px solid var(--blue2);
}
span.page-numbers.current {
	border-bottom: 3px solid var(--black);
	color: var(--black);
	font-weight: var(--bold);
}
a.page-numbers {text-decoration: none;}

/* Scroll bar */
@media only screen and (max-width:991px) {
	.nowrap-row .row {
		flex-wrap: nowrap;
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.customwrap-row, .nowrap-row {overflow-y: auto;}
}
@media only screen and (min-width:992px) and (max-width:1600px) {
	.nowrap-row .row:has(.lg-xxl) {
		flex-wrap: nowrap;
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.nowrap-row:has(.lg-xxl) {overflow-y: auto;}
	.fluid-max:has(.lg-xxl) {
		margin-left: 0;
        margin-right: 0;
		padding-bottom: 1rem;
	}
	.px-15:has(.lg-xxl) {
		padding-left: 15px;
        padding-right: 15px;
	}
}
@media only screen and (min-width:992px) {
	.nowrap-row .row:has(.lg-all) {
		flex-wrap: nowrap;
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.nowrap-row:has(.lg-all) {overflow-y: auto;}
	.fluid-max:has(.lg-all) {
		margin-left: 0;
        margin-right: 0;
		padding-bottom: 1rem;
	}
	.px-15:has(.lg-all) {
		padding-left: 15px;
        padding-right: 15px;
	}
}

.customwrap-row .row {flex-wrap: nowrap;}
.customwrap-row {overflow-y: auto;}
.nowrap-row::-webkit-scrollbar, .customwrap-row::-webkit-scrollbar, .custom-scroll::-webkit-scrollbar {height: 5px;}
.nowrap-row::-webkit-scrollbar-track, .customwrap-row::-webkit-scrollbar-track, .custom-scroll::-webkit-scrollbar-track {
	background-color: var(--br-grey);
	border-radius: 15px;
	max-width: 60% !important;
	margin-top: 3rem;
	margin-left: 25vw;
	margin-right: 25vw;
}
.nowrap-row::-webkit-scrollbar-thumb, .customwrap-row::-webkit-scrollbar-thumb, .custom-scroll::-webkit-scrollbar-thumb {
	background-color: var(--blue);
	border-radius: var(--br-lg);
}
@-moz-document url-prefix() {
	.nowrap-row, .customwrap-row, .custom-scroll {
		scrollbar-width: thin;
		scrollbar-color: var(--blue) var(--br-grey);
		margin: 1rem;
	}
}

/* Tables */
.wp-block-table table {
	border-radius: var(--br-md);
    overflow: hidden;
	text-align: left !important;
}
.wp-block-table td, .wp-block-table th {border: none !important;}
.wp-block-table thead {
    border-bottom: 3px solid;
    background: var(--blue2) !important;
    color: var(--bright);
}
.wp-block-table tbody tr:nth-child(odd) {background-color: var(--white);}
.wp-block-table tbody tr:nth-child(even) {background-color: var(--blue3);}
.wp-block-table tfoot {
	font-weight: var(--bold);
	background: var(--black);
	color: var(--white);
}

.highlight-content {
	background: var(--blue2);
	color: var(--white);
	padding: 1rem;
	border-radius: var(--br-md);
	margin-bottom: 1rem;
}
.highlight-content p:last-child, .highlight-content ul:last-child {margin-bottom: 0;}

.bg-quote {
	background: var(--blue3);
	color: var(--black);
	padding: 1rem;
	margin: 1rem 0;
	border-radius: var(--br-md);
}
.simple-quote {
	border-left: 4px solid var(--blue);
	padding-left: calc(1rem - 4px);
	font-weight: var(--light);
	font-size: 1.1rem;
	margin: 2.5rem 0;
}
.bg-quote p:last-child, .simple-quote p:last-child {margin-bottom: 0;}

/* Banner */
.contact-banner {
	background: var(--blue);
	color: var(--white);
}
.contact-banner p {font-size: 1.1rem;}

/* Stats / Case Studies */
.fig-stats {
	background: var(--white);
	border: 1px solid var(--br-grey);
	border-radius: var(--br-md);
	text-align: center;
	padding: 3rem 2rem;
	margin-top: 2rem;
}
.fig-stat-box display {
	font-size: 1.9rem;
	font-weight: var(--bold);
	margin-bottom: .5rem;
	display: block;
}
.fig-stat-box p {color: var(--grey);}
.case-stats {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 1rem;
}
.stat-box {
	flex: 1;
	padding: 1rem;
	background: #f5f5f5;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	
	background: var(--blue);
	color: var(--white);
	text-align: center;
	border-radius: var(--br-sm);
}
.stat-box display {
	font-size: 1.5rem;
	font-weight: var(--bold);
}
.stat-box p:last-child, .fig-stat-box p:last-child {margin-bottom: 0;}
@media only screen and (min-width:800px) {
	.fig-stats {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		gap: 1rem;
	}
	.fig-stat-box:before {
		content: "";
		position: absolute;
		left: 0;
		width: 1px;
		height: 80%;
		margin-top: 5%;
		background: var(--br-grey);
	}
	.fig-stat-box:first-child:before {content: none;}
	.fig-stat-box {
		flex: 1;
		padding: 0 1rem;
		position: relative;
	}
}
@media only screen and (max-width:799px) {
	.fig-stats {padding: 1.5rem 1rem;}
	.fig-stat-box {padding-bottom: 1.5rem;}
	.fig-stat-box:last-child {padding-bottom: 0;}
	.stat-box display {font-size: 1.25rem;}
	.stat-box p {font-size: .9rem;}
}
@media only screen and (max-width:576px) {
	.case-stats {gap: .5rem;}
	.stat-box {padding: .5rem;}
	.stat-box display {font-size: 1.1rem;}
	.stat-box p {font-size: .8rem;}
	.fig-stat-box p {font-size: .9rem;}
}

.blue-bg .stat-box {background: var(--blue2);}
.grey-bg .stat-box {background: var(--black);}
	
.case-logo, .case-industry {
	margin-top: 1rem;
	padding: .75rem;
	position: absolute;
	max-width: 45%;
	border-radius: var(--br-md);
	background: var(--white);
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.case-logo {margin-left: 1rem;}
.case-logo img {
	min-height: 40px;
	max-height: 45px;
	max-width: 150px;
}
.case-industry {
	right: 0;
	margin-right: 2rem;
	font-weight: var(--bold);
	color: var(--grey);
}

.step-btns .prev, .step-btns .next {
    display: inline-block;
    padding-top: 20px;
    width: 20px;
    height: 20px;
	background-color: var(--br-grey);
	-webkit-mask: url('/wp-content/uploads/2025/02/caret-right.svg') center / contain no-repeat;
	mask: url('/wp-content/uploads/2025/02/caret-right.svg') center / contain no-repeat;
}
.step-btns .prev:hover, .step-btns .next:hover {cursor: pointer;}
.step-btns .next:hover, .step-btns .next:focus {transform: scale(1.2);}
.step-btns .prev {transform: rotate(-180deg);}
.step-btns .prev:hover, .step-btns .prev:focus {transform: scale(1.2) rotate(-180deg);}
.btn-counter {
	padding: 12px 50px;
	text-align: center;
	color: var(--black);
	border: 1px solid var(--br-grey);
	background: var(--blue3);
	border-radius: 50px;
	display: inline-block;
}
.br-grey-bg .step-btns .prev, .br-grey-bg .step-btns .next {background-color: var(--blue3);}
@media only screen and (max-width:576px) {
	.btn-counter {padding: 12px 25px;}
	.case-logo {
		margin-top: .5rem;
    	margin-left: .5rem;
		max-width: 60%;
	}
	.case-logo img {
		min-height: 30px;
		max-height: 35px;
	}
	.case-industry {
		font-size: .9rem;
		bottom: .5rem;
		margin-right: 1.5rem;
		max-width: 90%;
    }
}

/* FEATURED */
/* Case Studies */
@media only screen and (min-width:992px) {
	.boxes-new {
		display: flex;
		align-items: stretch;
	}
	.same-h-new {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		flex: 1;
		min-height: 300px;
	}
	.case-img-wrap {
		flex: 1;
		min-height: 300px;
		height: 100%;
		display: flex;
	}
	.same-h-new img.case-img-full {
		width: 100%;
		height: 100%;
		min-height: 300px;
		object-fit: cover;
		display: block;
		aspect-ratio: 7/4;
		max-height: 100%;
		flex-shrink: 0;
	}
}

/* Partners */
.partner-box {
	background: var(--white);
	padding: 1.5rem;
	border-radius: var(--br-sm);
	border: 1px solid var(--blue4);
}
@media only screen and (max-width:992px) {
	.partner-box {padding: 1rem;}
}

/* Misc */
.boxes {display: flex;}
.same-h {
	display: flex;
    flex-direction: column;
	height: 100%;
	flex: 1;
}
.same-h.justify {justify-content: center;}
.push-down {margin-top: auto;}
.placeholder {
	min-height: 100px;
	height: 100%;
	width: 100%;
	background: var(--grey);
}

.tldr {
	background: var(--blue);
	color: var(--white);
	border-radius: var(--br-md);
	padding: 1rem;
	margin-bottom: 1rem;
}
.tldr .sub {color: var(--white);}

.img-placeholder {
	width: 100%;
	padding-bottom: 100%;
	background: var(--bright);
}

.contact-details {
	padding-left: 1rem;
	border-left: 2px solid var(--blue2);
}

@media only screen and (min-width:992px) {
	.boxes-new {
		display: flex;
		align-items: stretch;
	}
	.same-h-new {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		flex: 1;
		min-height: 300px;
	}
	.case-img-wrap {
		flex: 1;
		min-height: 300px;
		height: 100%;
		display: flex;
	}
	.same-h-new img.case-img-full {
		width: 100%;
		height: 100%;
		min-height: 300px;
		object-fit: cover;
		display: block;
		aspect-ratio: 7/4;
		max-height: 100%;
		flex-shrink: 0;
	}
}

/* Services */
.service-img-box {
	display: block;
	aspect-ratio: 5/6;
}
.service-img-box img {
	object-fit: cover;
	height: 100%;
}
.service-btn {
	width: 100%;
	padding: 12px;
	text-align: left;
	margin: 0 auto;
	background: transparent;
	border: 1px solid var(--br-grey);
	border-radius: 50px;
	margin-bottom: 1rem;
}
.service-btn:hover, .service-btn:focus {
	background: var(--blue3);
	border-color: var(--black);
	outline: none;
}
.service-btn.active {
	background: var(--black);
	color: var(--white);
	border-color: var(--black);
}
.service-btn .btn-icon img {
	max-height: 20px;
	max-width: 20px;
	filter: brightness(0);
	margin-top: -3px;
}
.service-btn.active .btn-icon img {filter: invert(1) sepia(1) hue-rotate(200deg);}

.service-section-h .row.full-height {
	display: flex;
	align-items: stretch;
}
.buttons-col {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.text-column {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 100%;
}
.text-button-row {
	display: flex;
	align-items: flex-start;
}
.d-flex.hide {display: none !important;}	
@media only screen and (min-width:992px) {
	.img-abs {position: absolute;}
	.service-section-h {min-height: 33%;}
}
	
.flipper .service-btn {color: var(--white);}
.flipper .service-btn .btn-icon img {filter: invert(1) sepia(1) hue-rotate(200deg);}
.flipper .service-btn:hover, .flipper .service-btn:focus {
	color: var(--black);
	background: var(--bright);
	border-color: var(--bright);
}
.flipper .service-btn.active {
    background: var(--white);
    color: var(--black);
    border-color: var(--white);
}
.flipper .service-btn:hover .btn-icon img, .flipper .service-btn.active .btn-icon img {filter: none;}
	
.br-grey-bg .service-btn {border: 1px solid var(--grey);}
@media only screen and (min-width:992px) {
	.service-btn {width: 100%;}
	.service-btn:last-child {margin-bottom: 0;}
}
@media only screen and (min-width:1400px) {
	.service-btn {width: 80%;}
}
@media only screen and (min-width:1500px) {
	.service-btn {width: 75%;}
}
@media only screen and (min-width:1600px) {
	.service-btn {width: 80%;}
}
@media only screen and (min-width:2000px) {
	.service-btn {width: 65%;}
}
@media only screen and (max-width:991px) {
	.same-h.service-img-box {
		height: auto;
	}
	.service-buttons {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 10px;
		-webkit-overflow-scrolling: touch;
	}
	.service-btn {
		width: auto;
		padding: 12px 35px 12px 12px;
		flex: 0 0 auto;
		white-space: nowrap;
	}
}

/* Steps */
.steps-container h3 {font-size: 1.25rem;}
.steps-container h3 span {font-weight: var(--bold);}
.service-img {max-width: 80%;}

/* Team */
.team-details {
	padding: 2rem;
	text-align: center;
	color: var(--black);
	background: var(--white);
	border-radius: var(--br-md);
	margin-left: 3rem;
	margin-right: 3rem;
	margin-top: -6rem;
	-moz-box-shadow: var(--moz-box-shadow);
	-webkit-box-shadow: var(--webkit-box-shadow);
	box-shadow: var(--box-shadow);
}
.team-details p:last-child {margin-bottom: 0;}
.headshot {
	width: 100%;
	aspect-ratio: .95 / 1;
	overflow: hidden;
	margin-bottom: 1rem;
	border-radius: var(--br-md);
	background: var(--bright);
}
.bright-bg .headshot {background: var(--white);}
.headshot img {
	height: 100%;
    width: 100%;
    object-fit: cover;
}
@media only screen and (max-width:1200px) {
	.team-details {
		padding: 1.5rem;
		margin-left: 1rem;
		margin-right: 1rem;
		margin-top: -5rem;
	}
}

/* Accordions */
.accordions-group {
	border-top: 1px solid var(--br-grey);
	padding-top: .5rem;
}
.accordions {
	margin-bottom: 15px;
	border-bottom: 1px solid var(--br-grey);
	padding-bottom: 1rem;
}
.accordions button {
	color: var(--black);
	position: relative;
	display: block;
 	width: 100%;
	background: transparent;
	border: none;
	text-align: left;
	font-size: 1.6rem;
	color: var(--blue);
	font-weight: var(--bold);
	padding: 1rem 1rem 1rem 0;
}
.accordions button:after {
    content: "";
    float: right;
	width: 20px;
	height: 20px;
	right: 0;
	margin-top: 10px;
    position: absolute;
    transform: rotate(-90deg);
    transition: var(--transition);
	-webkit-transition: var(--transition);
	background-color: var(--blue);
	-webkit-mask: url('/wp-content/uploads/2025/02/caret-right.svg') center / contain no-repeat;
}
.accordions button.collapsed:after {transform: rotate(90deg);}
.accordions button:focus {outline: none;}
p.accordions-title {margin-bottom: 0;}
.accordions-content p:last-child {margin-bottom: 0;}

.br-grey-bg .accordions {border-bottom: 1px solid var(--grey);}
.br-grey-bg .accordions button {color: var(--blue2);}
.br-grey-bg .accordions button:after {background-color: var(--blue2);}

.grey-bg .accordions button {color: var(--blue3);}
.grey-bg .accordions button:after {background-color: var(--blue3);}

.blue-bg .accordions button, .blue2-bg .accordions button {color: var(--white);}
.blue-bg .accordions button:after, .blue2-bg .accordions button:after {background-color: var(--white);}

.blue-bg {background-color: var(--blue);}
.blue2-bg {background-color: var(--blue2);}
.blue3-bg {background-color: var(--blue3);}
.black-bg, .grey-bg, .blue-bg, .blue2-bg {color: var(--white);}

@media only screen and (max-width:767px) {
	.accordions button {font-size: 1.3rem;}
	.accordions button:after {margin-top: 5px;}
}

/* Google maps */
.map {
    position: relative;
    width: 100%;
    padding-top: 30%;
    overflow: hidden;
}
@media only screen and (max-width:767px) {
	.map {padding-top: 70%;}
}

/* Social media */
.socials {margin-bottom: 1rem;}
@media only screen and (min-width:767px) {
	.socials .row {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
	}
	.socials .col-md-3 {flex: 1 1 22%;}
}
a.social-link {color: var(--cta);}
a.social-link:hover, a.social-link:focus {text-decoration: none;}
.socials p {padding-top: 1rem;}
.social-icon {padding-bottom: 1rem;}
.social-icon:last-child {margin-right: 0;}
.social-icon:before {
    content: "";
    display: inline-block;
    vertical-align: top;
    width: 30px;
    height: 30px;
	background-color: var(--cta);
}
.social-icon:hover:before {background-color: var(--cta-focus);}

.clean-socials .social-icon:before {
	width: 25px;
    height: 25px;
	margin-top: 7px;
	margin-left: 7px;
	background-color: var(--grey);
	transition: var(--transition);
	-webkit-transition: var(--transition);
}
.clean-socials .social-icon:hover:before, .clean-socials .social-icon:focus:before {transform: scale(1.05);}
.clean-socials .social-icon {
	position: relative;
	margin-right: .5rem;
}
.clean-socials .social-icon:after {
    content: "";
	width: 38px;
	height: 38px;
	border: 1px solid var(--blue4);
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50px;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}

.flipper .clean-socials .social-icon:before {background-color: var(--bright);}
.br-grey-bg .clean-socials .social-icon:after {border-color: var(--grey);}

.social-icon.li:before {-webkit-mask: url('/wp-content/uploads/2025/10/linkedin.svg') center / contain no-repeat;}
.social-icon.ig:before {-webkit-mask: url('/wp-content/uploads/2024/12/instagram.svg') center / contain no-repeat;}
.social-icon.fb:before {-webkit-mask: url('/wp-content/uploads/2025/10/facebook.svg') center / contain no-repeat;}
.social-icon.yt:before {-webkit-mask: url('/wp-content/uploads/2024/12/youtube.svg') center / contain no-repeat;}
.social-icon.tt:before {-webkit-mask: url('/wp-content/uploads/2024/12/tiktok.svg') center / contain no-repeat;}
.social-icon.x:before {
	transform: scale(.9);
	-webkit-mask: url('/wp-content/uploads/2024/12/twitter-x.svg') center / contain no-repeat;
}
.social-icon.wa:before {-webkit-mask: url('/wp-content/uploads/2025/09/whatsapp.svg') center / contain no-repeat;}

/* Forminator */
#main .forminator-design--material .forminator-input, #main .forminator-design--material .forminator-input:hover, #main .forminator-design--material .forminator-input:focus, #main .forminator-design--material .forminator-input:active {
	color: var(--black) !important;
	border-color: var(--black) !important;
}
#main .forminator-design--material .forminator-radio span[aria-hidden]:not(.forminator-radio-image) {border-color: var(--bright) !important;}
#main .forminator-design--material .forminator-label:not([class*="forminator-floating-"]), #main .forminator-design--material .forminator-radio, #main .forminator-design--material .forminator-textarea, #main .forminator-design--material .forminator-textarea:hover, #main .forminator-design--material .forminator-textarea:focus, #main .forminator-design--material .forminator-textarea:active {
	color: var(--black) !important;
}
#main .forminator-design--material .forminator-is_active .forminator-label[class*="forminator-floating-"] {
	color: var(--blue) !important;
}
#main .forminator-design--material .forminator-is_active .forminator-input--wrap:after, #main .forminator-design--material .forminator-input--wrap:after, #main .forminator-design--material .forminator-radio span[aria-hidden]:before, #main .forminator-design--material .forminator-radio span[aria-hidden]:after {
	background-color: var(--blue) !important;
}
#main .forminator-design--material:hover .forminator-textarea--wrap:after, #main .forminator-design--material .forminator-is_active .forminator-textarea--wrap:after, #main .forminator-design--material .forminator-radio input:checked + span[aria-hidden], #main .forminator-design--material .forminator-radio:hover span.forminator-radio-image, #main .forminator-design--material .forminator-radio input:checked ~ span.forminator-radio-image {border-color: var(--grey) !important;}

.forminator-ui.forminator-custom-form[data-design=material] .forminator-input-with-phone:not(.iti--allow-dropdown) .forminator-input--wrap {left: 0 !important;}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-floating--input.forminator-has_phone:not(.iti--allow-dropdown) {padding-left: 0 !important;}
.iti__country-container {display: none !important;}

#main .forminator-ui.forminator-design--material .forminator-button-submit {
	background: var(--blue) !important;
	border-radius: 50px;
	font-weight: var(--bold) !important;
	font-size: 1rem !important;
}
#main .forminator-ui.forminator-design--material .forminator-button-submit:hover, #main .forminator-ui.forminator-design--material .forminator-button-submit:focus {
	background: var(--black) !important;
	color: var(--white) !important;
}
#main .forminator-design--material .forminator-label[class*="forminator-floating-"] {
    padding-left: 0;
}
#main .forminator-field-textarea {margin-top: 2rem;}
#main .forminator-textarea {
	padding: 0;
	border-radius: 0;
    padding-top: 15px !important;
	border: none !important;
    border-bottom: 1px solid var(--grey) !important;
}
#main .forminator-design--material .forminator-textarea--wrap:hover:after, #main .forminator-design--material .forminator-is_active .forminator-textarea--wrap:after {
    border: none !important;
    border-bottom: 2px solid var(--blue) !important;
}

#main .forminator-design--material .forminator-response-message.forminator-success, #main .forminator-design--material .forminator-response-message.forminator-success, #main .forminator-design--material .forminator-response-message.forminator-success {
    box-shadow: inset 4px 0 0 0 var(--blue), 1px 1px 4px 0 rgba(0, 0, 0, 0.3) !important;
    -moz-box-shadow: inset 4px 0 0 0 var(--blue), 1px 1px 4px 0 rgba(0,0,0,0.3) !important;
    -webkit-box-shadow: inset 4px 0 0 0 var(--blue), 1px 1px 4px 0 rgba(0, 0, 0, 0.3) !important;
	border-radius: var(--br-sm);
}

/* FOOTER */
footer {
	margin-bottom: 15px;
	padding-top: 4rem;
	padding-bottom: 4rem;
	background: var(--black);
	color: var(--white);
}
footer p {font-size: .95rem;}
footer .caveat {font-size: 90%;}
footer ul {
	list-style: none;
	padding-inline-start: 0;
}
footer ul li {
	margin-bottom: 1rem;
	font-size: 95%;
}
footer ul li.menu-spacer {padding-top: 1rem;}
footer ul a, footer a {color: var(--white);}
footer ul a:hover, footer ul a:focus, footer a:hover, footer a:focus {color: var(--blue4);}
footer .current-menu-item a {
	opacity: .5;
	pointer-events: none;
}

footer a.social-link {color: var(--white);}
footer .social-icon:before {background-color: var(--white);}
footer .social-icon:hover:before, footer .social-icon:focus:before {background-color: var(--yellow);}

.footer-contacts span {margin-right: 2rem;}
footer hr {
	border-top: 1px solid var(--bright);
	margin-bottom: 3rem;
}

.footer-logo {
    display: flex;
    align-items: flex-end;
    gap: 10px;
}
.footer-logo img, img.footer-icon {
    max-height: 100px;
	max-width: 300px;
    width: auto;
	margin-bottom: 1rem;
}
@media only screen and (min-width: 992px) {
	footer .policies ul li {
		display: inline;
		margin-right: 1rem;
	}
}
@media only screen and (max-width: 767px) {
	.footer-container {padding-top: 1rem;}
	footer p.lead {padding-top: 2rem;}
}

/* XXL breakpoint */
@media only screen and (max-width: 575px) {
	.hide-mob {display: none;}
}
@media only screen and (min-width: 576px) {
	.px-sm-15 {
		padding-left: 15px !important;
        padding-right: 15px !important;
	}
}
@media only screen and (max-width: 767px) {
	.py-sm-15 {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.wp-block-columns, .px-15 {
		padding-left: 15px;
		padding-right: 15px;
	}
	.container-fluid .container-fluid .fluid-xxl-max, .container-fluid .container-fluid .fluid-max {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
@media only screen and (min-width: 768px) {
	.py-15 {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.fluid-xxl-max, .fluid-max, .wp-block-columns {
		margin-left: 5%;
		margin-right: 5%;
	}
	.fluid-max-lg .px-15 {
		padding-left: 15px;
		padding-right: 15px;
	}
	.container-fluid .container-fluid .fluid-xxl-max, .container-fluid .container-fluid .fluid-max {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.px-md-15 {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}
@media only screen and (min-width: 768px) and (max-width:1200px) {
	.fluid-max.fluid-max-services {
		margin-left: 0;
		margin-right: 0;
	}
}
@media only screen and (min-width: 992px) {
	.px-lg-15 {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}
@media only screen and (min-width: 1200px) and (max-width:1600px) {
	.fluid-max.fluid-max-services {
		margin-left: 5%;
		margin-right: 5%;
	}
}
@media only screen and (min-width: 1600px) {
	.container.container-xxl-fluid {
		width: 100%;
		max-width: 100%;
		padding-right: 15px;
		padding-left: 15px;
		margin-right: auto;
		margin-left: auto;
	}
	.fluid-xxl-max, .fluid-max, .wp-block-columns {
		margin-left: 10%;
		margin-right: 10%;
	}
	.container-fluid .container-fluid .fluid-xxl-max, .container-fluid .container-fluid .fluid-max {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.text-xxl-center {text-align: center;}
	.pt-xxl-2, .py-xxl-2 {padding-top: 3rem !important;}
	.pt-xxl-3, .py-xxl-3 {padding-top: 5rem !important;}
	.pb-xxl-3, .py-xxl-3 {padding-bottom: 5rem !important;}
	.pt-xxl-5, .py-xxl-5 {padding-top: 10rem !important;}
	.pb-xxl-5, .py-xxl-5 {padding-bottom: 10rem !important;}
	.mt-xxl-0, .my-xxl-0 {margin-top: 0;}
	.mt-xxl-2, .my-xxl-2 {margin-top: 1.5rem;}
	.mt-xxl-3, .my-xxl-3 {margin-top: 5rem;}
	.mb-xxl-3, .my-xxl-3 {margin-bottom: 5rem;}
	.mt-xxl-5, .my-xxl-5 {margin-top: 10rem;}
	.mb-xxl-5, .my-xxl-5 {margin-bottom: 10rem;}
	.col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-auto {
		position: relative;
		width: 100%;
		padding-right: 15px;
		padding-left: 15px;
	}
	.col-xxl-15 {
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		max-width: 20%;
	}
	.col-xxl-2 {
		-ms-flex: 0 0 16.666667%;
		flex: 0 0 16.666667%;
		max-width: 16.666667%;
	}
	.col-xxl-3 {
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}
	.col-xxl-4 {
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
  .col-xxl-5 {
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}
	.col-xxl-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;	
	}
	.col-xxl-7 {
		-ms-flex: 0 0 58.333333%;
		flex: 0 0 58.333333%;
		max-width: 58.333333%;
	}
	.col-xxl-8 {
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}
	.col-xxl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }
	.offset-xxl-1 {margin-left: 8.333333%;}
}