/* Variables */
:root {
	--color-primary: #173247;
	--color-secondary: #4C8CCA;
	--color-secondary-alt: #BED3E0;  
	--color-blue-light: #84C3FF;
	--color-grey: #C6CCCF;
	--color-grey-light: #F4F7F9;
	--error-red: #e80000;
	--font-primary: "Manrope", sans-serif;
	--font-secondary: "Helvetica Neue", sans-serif;;
	--section-padding: 10dvh;
	--clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%, 0% 50px);
	--little-clip-path: polygon(22px 0, 100% 0, 100% 100%, 0 100%, 0 22px);
}

.with-pattern {
	width: 100%;
    overflow-x: hidden;
}

iframe {
	display: none;
}


body {
	font-family: var(--font-primary);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: var(--color-primary);
	overflow-x: hidden;
}
body.locked {
	overflow: hidden;
}
body.locked:before {
	content: '';
    background-color: #000;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
    opacity: 0.3;
}

/* Min Viewport - 415px Max Viewport - 1600px */

/* 60px -  28px */
h1, .h1 {
	font-size: 1.75rem;
	font-size: clamp(1.75rem, 1.04957805907173rem + 2.70042194092827vw, 3.75rem);
	font-weight: 500;
	line-height: 110%;
	margin-bottom: 30px;
}
/* 28px -  20px */
h2, .h2 {
	font-size: 1.25rem;
	font-size: clamp(1.25rem, 1.0748945147679325rem + 0.6751054852320675vw, 1.75rem);
	font-weight: 500;
	line-height: 110%;
	margin-bottom: 30px;
}
/* 25px -  20px */
h3, .h3 {
	font-size: 1.25rem;
	font-size: clamp(1.25rem, 1.1405590717299579rem + 0.42194092827004226vw, 1.5625rem);
	font-weight: 500;
	line-height: 140%;
	margin-bottom: 30px;
}
/* 20px -  20px */
h4, .h4 {
	font-size: 0.875rem;
	font-size: clamp(0.875rem, 0.7436708860759493rem + 0.5063291139240507vw, 1.25rem);
	font-weight: 300;
	line-height: 110%;
	margin-bottom: 30px;
}
h5, .h5 {
	font-weight: 300;
	line-height: 140%;
	margin-bottom: 30px;
}
h6, .h6 {
	font-weight: 300;
	line-height: 140%;
	margin-bottom: 30px;
}

.word {
	display: inline-block;
	opacity: 0;
}

body.page h1 > span.key, body.page .h1 > span.key,
body.page h2 > span.key, body.page .h2 > span.key,
body.page h3 > span.key, body.page .h3 > span.key,
body.page h4 > span.key, body.page .h4 > span.key,
body.page h5 > span.key, body.page .h5 > span.key,
body.page h6 > span.key, body.page .h6 > span.key {
	color: var(--color-secondary);
}

/* 20px - 16px */
p, .p {
	font-size: 1rem;
	font-size: clamp(1rem, 0.9124472573839663rem + 0.33755274261603374vw, 1.25rem);
	font-weight: 300;
}

b, strong {
    font-weight: 600;
}

ul {
	font-size: 1rem;
	font-size: clamp(1rem, 0.9124472573839663rem + 0.33755274261603374vw, 1.25rem);
	font-weight: 300;
}

ol {
	font-size: 1rem;
	font-size: clamp(1rem, 0.9124472573839663rem + 0.33755274261603374vw, 1.25rem);
	font-weight: 300;
}

a {
	color: inherit;
}

.small,
.small > p {
	font-size: 14px !important;
}

.tagline {
	text-transform: uppercase;
	font-family: var(--font-secondary);
	font-size: 0.75rem;
	font-size: clamp(0.75rem, 0.6186708860759493rem + 0.5063291139240507vw, 1.125rem);	
	color: var(--color-secondary);
	font-weight: 400;
}


/* Colors -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.color-scheme-light {
	color: var(--color-primary);
}
.color-scheme-dark {
	color: #fff;
}
.color-scheme-dark .flickity-button {
	color: #ffffff;
}
.color-scheme-dark .flickity-page-dots .dot {
	background: #ffffff;
}

.bg_primary {
	background-color: var(--color-primary);
}
.bg_secondary {
	background-color: var(--color-secondary);
}
.bg_transparent {
	background-color: transparent;
}
.bg_grey-light {
	background-color: var(--color-grey-light);
}
.bg_white {
	background-color: #fff;
}

.color_secondary {
	color: var(--color-secondary);
}


/* Buttons -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.btn {
	border-radius: 0;
	padding: 16px 30px;
}
.btn.btn-sm {
	padding: 7px 20px;
}

.btn-primary {
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
}
.btn-primary:hover {
	background-color: var(--color-grey-light);
	border-color: var(--color-grey-light);
	color: var(--color-primary);
}

.btn-outline-primary {
	border-color: var(--color-secondary);
	color: var(--color-secondary);
}
.btn-outline-primary:hover {
	border-color: var(--color-secondary);
	background-color: var(--color-secondary);
	color: #fff;
}

.btn-outline-secondary {
	color: #fff;
	border-color: #fff;
}
.btn-outline-secondary:hover {
	background-color: var(--color-grey-light);
	border-color: var(--color-grey-light);
	color: var(--color-primary);	
}

.btn-text {
	padding: 0;
	color: var(--color-secondary);
	font-size: 18px;
	text-align: left;
	border: 0 !important;
}
.btn-text svg {
	margin-left: 10px;
	transition: 0.5s;	
}
.btn-text svg path {
	fill: currentColor;
}
.btn-text:hover {
	color: var(--color-secondary);
}
.btn-text:hover svg {
	margin-left: 15px;
}


.show-hide svg {
	transform: rotate(90deg);
}
.show-hide:hover svg {
	margin-left: 10px !important;
	transform: rotate(0deg);
}
.show-hide.active {
	color: var(--color-secondary);
}
.show-hide.active svg {
	transform: rotate(-90deg);
}


/* Images -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.imageHolder {
	overflow: hidden;
}
.imageHolder img {
	width: 100%;
    height: 100%;
    object-position: center center;
    object-fit: cover;
}


.videoHolder {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.videoHolder video {
	width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}


.imageHolder.bg {
	position: absolute;
    top: 0;
    left: 0;
	overflow: hidden;
    width: 100%;
    height: 100%;
}

.imageHolder.no_cover {
    display: flex;
    align-items: center;
    justify-content: center;
}
.imageHolder.no_cover img {
	width: 100%;
    height: auto;
    object-position: unset;
    object-fit: unset;
}

.imageHolder.overlay:before {
	content: '';
    background: rgb(23, 50, 71);
    background: linear-gradient(90deg, rgba(23, 50, 71, 1) 45%, rgba(23, 50, 71, 0) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    mix-blend-mode: multiply;
}
.imageHolder.overlay.bottom-up:before {
    background: linear-gradient(0deg, rgba(23, 50, 71, 1) 0%, rgba(23, 50, 71, 0) 80%);
}

svg path {
	fill: currentColor;
}


/* Pattern */
.bigBoy {
    width: 50%;
    position: absolute;
    height: 150%;
    top: 15%;
    right: 0;
    z-index: 0;
    overflow: hidden;
    background-image: url(../img/OMB_Pattern.svg);
    background-size: 1400px auto;
    opacity: 0.2;
}
.bigBoy svg {
	display: none;
}


.main > *.pt-desktop-0 {
	padding-top: 0;
}
.main > *.pb-desktop-0 {
	padding-bottom: 0;
}


section {
	position: relative;
}
.unhooked {
	position: unset;
	overflow: unset;
}
.wrapped {
	max-width: 1445px;
    margin: auto;
}

.container {
	z-index: 1;
}

.intro p:last-child {
	margin-bottom: 0;
}




/* Header -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.topbar {
	background-color: var(--color-primary);
	color: var(--color-grey-light);
	position: relative;
	z-index: 4;
}

/* Utility Menu */
#utility-menu {
	padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
}
#utility-menu > li > a,
.topbar a:not(.btn) {
	color: var(--color-grey);
    text-decoration: none;
    display: block;
    margin: 0 20px;
    font-size: 14px;
}
.topbar a:not(.btn):hover {
	color: #fff;
}
.topbar .search svg {
    margin-left: 5px;
    position: relative;
    top: -1px;
    width: 15px;
}

.searchHolder {
	position: relative;
	
}
.searchHolder .close {
	display: none;
}
#searchform {
	display: flex;
    background-color: #fff;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    right: 55px;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.5s;
    visibility: hidden;
	opacity: 0;
	width: 330px;
}
#searchform input {
	border: 0;
	padding: 6px 12px;
	flex-grow: 1;
}
#searchform button {
	background: var(--color-secondary);
    font-size: 15px;
    font-weight: 500;
    margin: 0;
    color: #fff;
    border: 1px solid #fff !important;
	min-height: 36px;
} 
.searchHolder.active .search .text {
	opacity: 0;
}
.searchHolder.active .search .open {
	display: none;
}
.searchHolder.active .search .close {
	display: inline;
}
.searchHolder.active #searchform {
	visibility: visible;
	opacity: 1;
}


/* Header */
header {
	position: sticky;
	top: -1px;
	z-index: 99;
	padding: 15px 0;
	background-color: transparent;
	transition: 0.5s;
}

header.light {
	color: #fff;
}

header.active {
	background-color: #fff;
	color: var(--color-primary);
}

header.sticky {
	background-color: #fff;
	color: var(--color-primary);
}

.single-post header:not(.active):not(.sticky) {
	color: #fff;
}


.logo svg {
	height: auto;
}


/* Menu -------------------------------------------------------------------------------------------------------------------------------------------------------> */
nav {
	flex-grow: 1;
	max-width: 1100px;
}
#main-menu {
	padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    justify-content: space-between;
/*     font-size: 1rem;
    font-size: clamp(1rem, 0.9562236286919831rem + 0.16877637130801687vw, 1.125rem); */
	font-size: 16px;
}
#main-menu > li > a {
	text-decoration: none;
	color: currentColor;
	font-weight: 400;
}
#main-menu > li > a:hover {
	color: var( --color-blue-light);
}
#main-menu > li > a > svg {
	margin-left: 8px;
}
#main-menu > li > .megamenu {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    left: 0;
    width: 100%;
    transition: 0.5s;
    color: var(--color-primary);
    top: 100%;
    background: #fff;
    background: linear-gradient(90deg, rgba(255,255,255,1) 80%, var(--color-grey-light) 80%);  
	max-height: calc(100dvh - var(--combined-height));
	overflow: scroll;
}
#main-menu > li > .megamenu > .container {
	display: flex;
}
#main-menu > li > .megamenu > .container > ul.sub-menu {
    list-style: none;
    columns: 2;
    position: relative;
    gap: 50px;
    width: 65%;
    padding: 25px 50px 50px 0;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li {
	break-inside: avoid;
	margin: 0 0 25px 0;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a {
	text-decoration: none;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a > .label {
	display: block;
    font-size: 18px;
    font-weight: 400;
    line-height: 110%;
    margin-bottom: 7px;
    color: currentColor;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a > .label > svg {
	margin-left: 8px;
	transition: 0.5s;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a:hover > .label {
	color: var( --color-blue-light);
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a:hover > .label > svg {
	margin-left: 18px;
}
#main-menu > li > .megamenu > .container > ul.sub-menu > li > a > .description {
	display: block;
    font-size: 14px;
    font-weight: 300;
}
#main-menu > li ul.cta-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: var(--color-grey-light);
	width: 35%;
	padding: 50px 0 50px 50px;
	position: relative;
}
#main-menu > li ul.cta-menu > li > .label {
	margin-bottom: 35px;
    display: block;
    line-height: 150%;
    font-size: 28px;
    line-height: 1.3;
    font-weight: 400;
}
#main-menu > li ul.cta-menu > li > .post .label {
	font-size: 18px;
    line-height: 1.2;
    font-weight: 400;
    display: block;
    margin: 0 0 5px 0;
}
#main-menu > li ul.cta-menu > li > .post .description {
	display: block;
    font-size: 14px;
    font-weight: 300;
}
#main-menu > li ul.cta-menu > li > .post .link {
	font-weight: 400;
}
#main-menu > li ul.cta-menu > li > .post .imageHolder {
	clip-path: var(--little-clip-path);
    aspect-ratio: 15 / 12;
	width: 40%;
	margin-top: 5px;
}

#main-menu > li ul.cta-menu > .big > .label {
    position: relative;
    z-index: 2;
    color: #fff;
    margin: 40px 0 30px 0;
}
#main-menu > li ul.cta-menu > .big .post {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    flex-direction: column;
}
#main-menu > li ul.cta-menu > .big .post .imageHolder {
	margin: 0;
    width: 140%;
    aspect-ratio: unset;
    clip-path: unset;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}
#main-menu > li ul.cta-menu > .big .post .imageHolder:after {
	content: '';
    background: linear-gradient(0deg, rgba(23, 50, 71, 1) 0%, rgba(23, 50, 71, 0) 90%);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#main-menu > li ul.cta-menu > .big .post .content {
	width: 100%;
    position: absolute;
    bottom: 35px;
    left: 0;
    padding-left: 50px !important;
    color: #fff;
}
#main-menu > li ul.cta-menu > .big .post .label {
	display: none;
}

#main-menu > li.active > .megamenu {
    opacity: 1;
    visibility: visible;			
}


/* Main -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.main {
	margin-top: calc( (var(--header-height) * -1) - 1px );
}

.main > *,
.section {
	padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
}


/* Hero -------------------------------------------------------------------------------------------------------------------------------------------------------> */
#hero {
	display: flex;
    justify-content: center;
    align-items: end;
    min-height: calc(100dvh - var(--topbar-height));
    padding-top: calc(var(--section-padding) * 3);
    z-index: 2;
}
#hero .h1 {
	margin-bottom: 25px;
}


/* Hero - Small */
#hero.small {
	min-height: 0;
}

/* Hero - Contact */
#hero.contact {
	align-items: center;
}
#hero.contact .contact_details a {
	text-decoration: none;
}

/* Hero - Small Image */
#hero.small_image .imageHolder {
	clip-path: var(--clip-path);
}


#hero.bg_transparent .tagline {
	color: #fff;
}

/* Hero - Values Page */
.page-values #hero.small_image {
	padding-top: calc(var(--section-padding) * 2);
}
.page-values #hero.small_image .contentHolder {
	max-width: 560px;
}
.page-values #hero.small_image .h1 {
	margin-right: -25px;
    text-wrap: balance;
}

.page-contact #hero .h1 {
	max-width: 525px;
}
.page-contact #hero p {
	max-width: 462px;	
}




.tax-service-category #hero .imageHolder img {
/* 	transform: scaleX(-1); */
    position: relative;
    z-index: -1;
}
.tax-service-category #hero .h1 {
	font-size: 44px;
}

.single-service #hero .imageHolder img {
/* 	transform: scaleX(-1); */
    position: relative;
    z-index: -1;
}
.single-service #hero .h1 {
	font-size: 44px;
}


/* Form -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.formHolder {
	padding-bottom: 40px;
}
.nf-form-fields-required {
	display: none;
}
.nf-input-limit {
    margin-top: 0 !important;
}
.nf-error-msg, .ninja-forms-req-symbol {
    color: var(--error-red) !important;
    font-size: 12px;
    font-weight: 600;
    margin: 0 !important;
    position: absolute;
    right: 0;
}
.nf-error.listimage-wrap .nf-field-element ul,
.nf-error .ninja-forms-field {
    border-color: var(--error-red) !important;
}
.nf-form-cont input {
	font-size: 1rem; /* 18 - 16 */
	font-size: clamp(1rem, 0.9562236286919831rem + 0.16877637130801687vw, 1.125rem);
    border-radius: 0;
    padding: 15px 25px;	
    border-width: 1px;
    background-color: transparent;
    border-style: solid;
    border-color: #BED3E0;
    color: var(--color-primary);
}
.nf-form-cont input::placeholder {
	color:  var(--color-secondary-alt);
}
.nf-form-cont textarea {
	font-size: 1rem; /* 18 - 16 */
	font-size: clamp(1rem, 0.9562236286919831rem + 0.16877637130801687vw, 1.125rem);
    border-radius: 0;
    padding: 15px 25px;
    border-width: 1px;
    background-color: transparent;
    border-style: solid;
    display: block;
    height: 188px !important;
    border-color: #BED3E0;
    color: var(--color-primary);
}
.nf-form-cont textarea::placeholder {
	color:  var(--color-secondary-alt);
}
.nf-after-form-content .nf-error-msg {
	background-color: var(--error-red);
    color: #fff !important;
    border: 1px solid var(--error-red);
    left: 0;
    right: 0;
    bottom: 0;
    padding: 5px;
    text-align: center;
}
.nf-form-cont .submit-container {
	margin-bottom: 0;
}

/* Form - Careers */
#form.careers .row {
	margin: 0 -60px;
    background-color: #fff;
    padding: 65px 50px;
    clip-path: var(--clip-path);
}
#form.careers .formWrapper {
	margin-left: 18%;
}


/* Team */
.single-team .main > section:first-of-type {
	padding-top: calc(var(--section-padding)* 2);
}

.single-team .team_feature {
	clip-path: var(--clip-path);
}

.single-team .main .sticky {
	position: sticky;
	top: 150px;
}


.settify {
	
}
.settify iframe {
	
}
.settify iframe h1 {
	
}
.single-team .formWrapper {
	background-color: var(--color-primary);
	color: #fff;
	padding: 50px;
}



/* Contact */
.page-contact #form p {
	max-width: 400px;
}



/* CTA -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.cta {
	display: flex;
    align-items: end;
    min-height: 775px;	
    position: relative;
}
.cta.default .tagline {
	color: #fff;
}

.cta.no_image {
    min-height: 0;	
}
.cta.no_image .row {
    background-color: #fff;
    padding: 65px 50px;
    clip-path: var(--clip-path);
    margin: 0;
}


.single-service .cta .h1 {
	font-size: 44px;
}

.tax-service-category .cta .h1 {
	font-size: 44px;
}

.holder {
    position: relative;
    display: block;
    background-color: #fff;
    padding: 50px 23px 25px;
    height: 100%;
}
.holder.hovered .icon {
	position: absolute;
    top: 25px;
    right: 25px;
    visibility: hidden; 
    opacity: 0;
    transition: 0.5s;
    width: 30px;
    aspect-ratio: 1;
    z-index: 1;
}
.holder.hovered .icon svg {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.holder.hovered .icon svg path {
	fill :#fff;
}
.holder.hovered p:last-child {
	margin-bottom: 0;
}
.holder.hovered:hover {
	background-color: var(--color-primary);
 	color: #fff;
}
a.holder.hovered:hover .icon {
	visibility: visible;
    opacity: 1;	
}
a.holder.hovered:hover .icon:hover {
	transform: rotate(90deg);
}
.holder.hovered:hover .btn svg {
	margin-left: 15px;
}


.hovered {
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 45px 100%, 0% 100%, 0% 0%);
	transition: 0.5s;
	text-decoration: none;	
}
.hovered:hover {
	clip-path: polygon(30px 0%, 100% 0%, 100% 100%, 30px 100%, 0% 100%, 0% 30px);
}


/* Holder - Team */
.holder.team {
	padding: 0;
	background-color: transparent;
}
.holder.team:hover {
	background-color: transparent !important;
	color: inherit;
}


/* Slider - Team */
.slider.team .slide {
	width: 330px;
	padding: 8px;
	text-decoration: none;
}
.holder.team .p {
	font-weight: 400;
}
.holder.team p {
	font-weight: 300;
	font-size: 0.875rem;
	font-size: clamp(0.875rem, 0.7874472573839663rem + 0.33755274261603374vw, 1.125rem);
}
a.holder.team .imageHolder img {
	transform: scale(1);
	transition: 0.8s;
}
a.holder.team:hover .imageHolder img {
	transform: scale(1.05);
}

.holder.team .position {
	color: var(--color-secondary);
}
.holder.team .accreditation {
	color: var(--color-secondary);
}


/* Team - All */
.team.list .h4.department {
	border-bottom: 1px solid var(--color-secondary-alt);
	padding: 0 0 15px;
    margin: 35px 0 15px;
}
.team.list .items {
	margin-left: -7px;
	margin-right: -7px;	
}
.team.list .item {
	padding: 40px 7px;
}


/* Service Categories */
.service_categories .h3 {
	font-weight:  400;
}
.service_categories .items {
    margin-left: -3.5px;
    margin-right: -3.5px;
}
.service_categories .items > .item {
    padding: 12px 7px;
}


/* Services - All */
.services.all .h3 {
	font-weight:  400;
}
.services.all .items {
    margin-left: -3.5px;
    margin-right: -3.5px;
}
.services.all .items > .item {
    padding: 12px 7px;
}


a.service_category {
	background-color: var(--color-grey-light);
}


/* Testimonials */
.testimonials .h1 {
	max-width: 500px;
}

.WidgetBackground__Container-sc-1ho7q3r-0 {
	padding: 0 !important;
}


/* Accordion -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.accordion {
	border-top: 1px dashed var(--color-secondary-alt);
}
.accordion-item {
	border-radius: 0 !important;
    border: 0;
    border-bottom: 1px dashed var(--color-secondary-alt);
    background-color: transparent;
    color: inherit;
}
.accordion-button {
	background-color: transparent !important;
    border-radius: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 40px;
    box-shadow: none !important;
    align-items: start;
    justify-content: space-between;
    line-height: 1.4;
    margin-bottom: 0;
    color: inherit;
    cursor: pointer;
}
.accordion-button::after {
	background-image: none !important;
    background-color: currentColor;
    mask-image: url('../img/icon/icon-plus.svg');
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100% auto;
    transition: 0.5s;
    position: relative;
    top: 7px;
    margin-left: 50px;
}
.accordion-button:hover {
	color: var(--color-secondary);
}
.accordion-button:not(.collapsed)::after {
    transform: rotate(-135deg);
}
.accordion-body {
	padding-left: 0;
    padding-right: 0;
    padding-top: 0;
}
    

/* Accordion - Services */
.accordion#services {
	border-top: 1px solid var(--color-secondary-alt);	
}
.accordion#services .accordion-item {
	border-bottom: 1px solid var(--color-secondary-alt);
}
.accordion#services .accordion-button::after {
    mask-image: url('../img/icon/icon-arrow-rotated.svg');
    width: 50px;
    height: 46px;
    transform: rotate(90deg);
    margin-top: 0;
}
.accordion#services .accordion-button:hover:after {
    transform: rotate(135deg);
}
.accordion#services .accordion-button:not(.collapsed):after {
	transform: rotate(270deg);
}
.accordion#services .accordion-body {
    padding-bottom: 75px;
}


/* Accordion - Enquiry */
.accordion#enquiry {
	border: 0;
	position: fixed;
    bottom: 0;
    width: 526px;
    z-index: 1;
}
.accordion#enquiry .accordion-item {
	border: 0;
}
.accordion#enquiry .accordion-button {
	background-color: var(--color-primary) !important;
    padding: 35px 40px;
}
.accordion#enquiry .accordion-button::after {
	-webkit-mask-image: url('../img/icon/icon-arrow-rotated.svg');
    mask-image: url('../img/icon/icon-arrow-rotated.svg');
	width: 30px;
    height: 30px;
    margin-top: 0;  
}
.accordion#enquiry .accordion-button:hover:after {
	transform: rotate(-45deg);	
}
.accordion#enquiry .accordion-button:not(.collapsed) {
	color: #fff;
}
.accordion#enquiry .accordion-button:not(.collapsed):after {
	transform: rotate(-180deg);
}
.accordion#enquiry .accordion-collapse {
	border-radius: 0;
}
.accordion#enquiry .accordion-body {
	background-color: var(--color-primary);
	padding: 0 40px;	
}
.accordion#enquiry .accordion-body .formHolder {
	overflow: hidden;
}
.accordion#enquiry .nf-form-cont input {
	border-color: var(--color-secondary-alt);
	color: #fff;	
}
.accordion#enquiry .nf-form-cont input:focus-visible {
	outline: #BED3E0 solid 1px;
}
.accordion#enquiry .nf-form-cont textarea {
	border-color: var(--color-secondary-alt);
	color: #fff;	
}
.accordion#enquiry .nf-form-cont textarea:focus-visible {
	outline: #BED3E0 solid 1px;
}


/* Layout Two */
.layout_two {
	position: relative;
}
.layout_two .holder {
	clip-path: var(--clip-path);
}


/* Columns */
.columns .with-pattern {
	overflow: hidden;
    position: relative;
    height: 100%;
    min-height: 260px;
}
.columns .pattern {
	top: 50%;
    position: absolute;
    width: 100%;
    left: 0;
    height: 50%;
}
.columns .pattern img {
	width: 1400px;
    position: absolute;
    left: 0;
    object-position: top center;
}


/* Video */
.video .imageHolder {
    min-height: 560px;
    height: 100%;
}
.video .play {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.video .pattern {
	bottom: var(--section-padding);
    position: absolute;
    width: 100%;
    left: 50%;
    height: 234px;
    min-height: 0;
    overflow: unset;
    z-index: -1;
    top: 48%;
}
.video .pattern img {
	width: 1400px;
    position: absolute;
    left: 0;
    object-position: top center;
}
.btn.play {
	border-radius: 100%;
    border-color: currentColor;
    color: #fff;
    width: 115px;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.btn.play:hover {
	background-color: #fff;
	color: var(--color-primary);
	border-color: #fff;
}


/* Items - Default */
.items .sticky {
	position: sticky;
    top: 180px;
}

.items .h2 {
	margin-bottom: 30px;
}

.page-values .items .h2 {
	margin-bottom: 100px;
}


/* Items - Timeline */
.items.timeline .items {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.items.timeline .items .flickity-viewport {
    flex-grow: 1;
    order: 1;
    width: 100%;
    margin-bottom: 60px;
}
.items.timeline .flickity-page-dots {
    position: relative;
    width: auto;
    bottom: auto;
    order: 3;
    margin: 0 30px;
}
.items.timeline .flickity-button {
	position: relative;
	left: auto;
    right: auto;
    background-color: transparent;
    padding: 0;
    box-shadow: none !important;
    top: 12px;
}
.items.timeline .flickity-button:before {
	content: '';
    width: 27px;
    height: 4px;
    position: absolute;
    background-color: var(--color-primary);
    top: 50%;
    transform: translateY(-50%);
    left: 16px;
}
.items.timeline .flickity-prev-next-button.previous {
    order: 2;
}
.items.timeline .flickity-prev-next-button.previous:before {
	
}
.items.timeline .flickity-prev-next-button.next {
    order: 4;
}
.items.timeline .flickity-prev-next-button.next:before {
	left: 2px;
}




.items.timeline .item {
	border-right: 1px solid var(--color-secondary-alt);
	min-height: 100%;
}
.items.timeline .item .h3 {
	color: var(--color-secondary);
}
.items.timeline .item p:last-child {
	margin-bottom: 0;
}

/* Items - Careers */
.items.careers .item {
	background-color: var(--color-grey-light);
	display: flex;
    flex-direction: column;
}
.items.careers .item .btn-text {
	margin-left: auto;
}

/* Items - Community */
.items.community .holder {
	background-color: #fff;
    height: 100%;
    padding: 30px;
}
.items.community .item .imageHolder {
	height: 216px;
}
.items.community .item .imageHolder img {
    max-width: 180px;
}
.items.community .btn-text {
	text-align: center;
    max-width: 181px;
    line-height: 1.2;
    color: inherit;
    font-size: 20px;
}

/* Values */
.items.values ul {
	list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
}

.content-balance {
	text-wrap: balance;	
}



/* Map */
#map iframe {
	display: block;
	width: 100%;
}


/* Images - Gallery */
.gallery {
	display: flex;
	gap: 10px;
}
.gallery_item {
	width: 33.3333%;
}


/* News */
.news .post .content .p {
	font-weight: 400;
} 
.news .post .content p {
	font-size: 0.875rem; /* 18px - 14px */
	font-size: clamp(0.875rem, 0.7874472573839663rem + 0.33755274261603374vw, 1.125rem);
	margin-bottom: 10px;
}
.news .post .btn-text {
	color: var(--color-primary);
}


/* News - All */
.news.default .post {
	background-color: var(--color-grey-light);
	margin: 10px 0;
}
.news.default .post .content {
	padding: 10px 40px !important;	
}
.news.default .post .content .p {
	font-size: 1.25rem;
	font-size: clamp(1.25rem, 1.0748945147679325rem + 0.6751054852320675vw, 1.75rem);
}


/* Latest News */
.news.latest {
	margin: 0 12px;
}
.news.latest .bg_primary {
	clip-path: var(--clip-path);
}
.news.latest .post:not(:first-child) {
	margin-top: 18px;
}
.news.latest .post h4 {
	margin-bottom: 10px;
}
.news.latest .post p {
	font-size: 14px;
    line-height: 130%;
}
 
.news .post .imageHolder {
	max-width: 25%;
    aspect-ratio: 1;	
    width: 100%;
}


/* Pagination */
.pagination {
	display: flex;
    justify-content: center;
}
.pagination > * {
	margin: 0 10px;
    text-decoration: none;
}


.post-items {
	display: none;
}
.post-items.active {
	display: block;
}


/* Content */
.content_main h1,
.content_extended h1 {
	font-weight: 500;
}
.content_main h2,
.content_extended h2 {
	font-weight: 500;
}
.content_main h3,
.content_extended h3 {
	font-weight: 500;
}
.content_main h4,
.content_extended h4 {
	font-weight: 500;	
}
.content_main h5,
.content_extended h5 {
	font-weight: 500;	
}
.content_main h6,
.content_extended h6 {
	font-weight: 500;	
}


.content.single_post h1 {
/*
	font-weight: 500;
	line-height: 1.7;
*/
}
.content.single_post h2 {
/* 	font-weight: 500; */
/* 	line-height: 1.7; */
}
.content.single_post h3 {
/*
	font-weight: 500;
	line-height: 1.7;
*/
}
.content.single_post h4 {
	font-weight: 500;
	line-height: 1.7;	
}
.content.single_post h5 {
	font-weight: 500;
	line-height: 1.7;	
}
.content.single_post h6 {
	font-weight: 500;
	line-height: 1.7;	
}


/* Services - Custom */
.services.custom ul {
	list-style: none;
    padding: 0;
    margin: 0;
}
.services.custom ul li {
	margin: 10px 0;
	cursor: pointer;
	font-weight: 400;
}
.services.custom ul li.active {
	color: var(--color-secondary);
}
.services.custom ul li:hover {
	color: var(--color-secondary);
}
.services.custom .item {
	display: none;
	background-color: var(--color-grey-light);
	padding: 40px;
	position: relative;
	overflow: hidden;
}
.services.custom .item .imageHolder:not(.pattern) {
    position: relative;
    z-index: 1;
}
.services.custom .item .h3 {
	position: relative;
    z-index: 1;
    color: var(--color-secondary);
}
.services.custom .item .contentHolder {
	position: relative;
    z-index: 1;
}
.services.custom .item.active {
	display: block;
}
.services.custom .pattern {
	top: 0;
    position: absolute;
    width: 100%;
    left: 0;
    height: 160px;
}
.services.custom .pattern img {
	width: 1400px;
    position: absolute;
    left: 0;
    object-position: top center;
}


/* Services - Quick Links */
.services.quick_links {
	margin: 0 12px;
}
.services.quick_links .bg_primary {
	clip-path: var(--clip-path);
}
.services.quick_links .imageHolder {
	clip-path: var(--clip-path);
}


/* News */
.category-tabs {
	list-style: none;
    border-bottom: 1px solid var(--color-secondary-alt);
    display: flex;
    padding: 0 0 12px 0;
    margin: 0 0 45px 0;
    flex-wrap: wrap;
/*
    flex-wrap: nowrap;
    justify-content: space-between;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;  
*/
}
.category-tabs li {
	min-width: max-content;
	margin: 0 10px;
	cursor: pointer;
}
.category-tabs li.active {
	color: var(--color-secondary);
}


/* Tabs */
.tabs {
	list-style: none;
    margin: 0;
    padding: 0;
    flex: 0 0 auto;
    width: 33.33333333%;
    color: #fff;
}
.tabs li {
	margin: 20px 0;
}
.tabs .btn-text {
	color: inherit;
}
.tabs .btn-text:hover,
.tabs .btn-text.active {
	color: var(--color-secondary);
}
.tab-content .h3 {
	color: var(--color-secondary);
}


/* Service - Single -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.sidebar {
	background-color: #fff;
	padding: 40px 40px 30px;
}
.sidebar .h3 {
	margin-bottom: 25px;
}
.sidebar > ul {
	list-style: none;
    margin: 0;
    padding: 0;
    color: var(--color-primary);
}
.sidebar > ul > li {
	margin: 15px 0;
}
.sidebar > ul > li > a {
	color: inherit;
}


/* Footer -------------------------------------------------------------------------------------------------------------------------------------------------------> */
footer {
	padding: 100px 0 50px;
	font-size: 14px;
}
footer .logo svg {
	width: 133px;
}
footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: inherit;
}
footer ul li a {
	display: block;
    padding: 5px 0;
}
footer p {
	font-size: inherit;
}
footer .h6 {
	color: var(--color-grey);
	font-weight: 300;
	margin: 0 0 20px 0;
}
footer a {
	text-decoration: none;
}
.website-by svg {
	position: relative;
    top: -2px;
    width: 35px;
    margin-left: 2px;	
}
.socials svg {
    max-width: 20px;
    height: 17px;
}


/* Search Post -------------------------------------------------------------------------------------------------------------------------------------------------------> */
.search_post {
	text-decoration: none;
	display: block;
}
.search_post p {
	font-size: 15px;
}
.search_post .type {
	text-transform: uppercase;
	font-weight: 500;
	font-size: 12px;
}




.memorandum .text-center {
	margin: 0 !important;
    width: 100%;
    max-width: 100%;
}
.memorandum .content-balance {
    text-wrap: unset;
}
.memorandum ol {
	
}
.memorandum ol li::marker {
	font-weight: 500;
	color: var(--color-secondary);
}
.memorandum ol li {
	margin: 25px 0;
} 



@media screen and (max-width: 1400px) {
	
	#hero.layout_one .accordion {
	    width: 452px;
	}

}


@media screen and (max-width: 1200px) {

	.topbar {
		font-size: 14px;
	}
	header {
		font-size: 14px;
	}

	.logo svg {
		width: 65px;
	}
	
	#main-menu {
		font-size: 14px;
	}

	/* Hero */
	#hero.layout_one .accordion {
	    width: 376px;
	}

}


@media screen and (max-width: 992px) {

	header {
		background-color: var(--color-primary);	
		color: #fff;
	}
	header .container {
		position: relative;
	}
	
	.logo svg {
		width: 50px;
	}
	
	.searchHolder {
        position: absolute;
        right: 27px;
        color: #fff;
    }

	/* Nav Icon */
	#nav-icon {
		width: 50px;
        height: 40px;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		cursor: pointer;
	}
	#nav-icon span {
		display: block;
		position: absolute;
		height: 2px;
		width: 30px;
		background: currentcolor;
		opacity: 1;
		left: 9px;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	#nav-icon span:nth-child(1) {
		top: 12px;
	}
	#nav-icon span:nth-child(2),
	#nav-icon span:nth-child(3) {
		top: 20px;
	}
	#nav-icon span:nth-child(4) {
		top: 29px;
	}
	#nav-icon.open span:nth-child(1) {
		top: 20px;
		width: 0%;
		left: 50%;
	}
	#nav-icon.open span:nth-child(2) {
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#nav-icon.open span:nth-child(3) {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#nav-icon.open span:nth-child(4) {
		top: 20px;
		width: 0%;
		left: 50%;
	}
	
	nav {
        position: fixed;
        top: 73px;
        left: 0;
        width: 100%;
        display: none;
        background-color: #fff;
        padding: 15px 0 25px 0;
        font-weight: 500;
        overflow: scroll;
        height: 100%;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
	
	
	/* Main Menu */
	#main-menu {
		max-width: 758px;
		margin: auto;
		flex-direction: column;	
		font-size: 16px;
	}
	#main-menu > li > a {
		display: flex;
        padding: 12px 30px;
        line-height: 1.5;
        align-items: center;	
        justify-content: space-between;
	}
	#main-menu > li > a svg {
		transform: rotate(-90deg);
        margin: 2px 0 0 20px !important;
	}
	#main-menu > li > a > .label {
		font-weight: 500;
	}
	#main-menu > li > .megamenu {
	    opacity: 1;
	    visibility: visible;
	    max-height: unset;
	    color: var(--color-primary);
	    top: 0;
	    background: none;
	    max-height: unset;
	    overflow: scroll;
	    left: 0;
        position: relative;
		display: none;
	}
	#main-menu > li.active > .megamenu {
		display: block;
	}
	#main-menu > li > .megamenu > .container > ul.sub-menu {
	    columns: unset;
	    gap: 0;
	    width: 100%;
	    padding: 0;
	}
	#main-menu > li > .megamenu > .container > ul.sub-menu > li {
	    margin: 0;
	}
	#main-menu > li > .megamenu > .container > ul.sub-menu > li > a {
		padding: 15px 10px 15px 30px;
        display: block;
	}
	#main-menu > li > .megamenu > .container > ul.sub-menu > li > a > .label {
	    font-size: 14px;
	    margin: 0;
	}
	#main-menu > li > .megamenu > .container > ul.sub-menu > li > a > .description {
		display: none;
	}
	
    
	/* Utility Menu */   
	#utility-menu {
		max-width: 760px;
        margin: 35px auto 0;
        justify-content: space-between;
        font-size: 13px;
        width: 100%;
        padding: 10px 30px;
        position: fixed;
        bottom: 0;
        left: 0;
        margin: 0;
        background-color: #fff;  
	}        
	#utility-menu > li > a {
	    color: var(--color-primary);
	    margin: 0;
	}
	
	
	header.active {
		background-color: #fff;
		color: var(--color-primary);
	}
	header.active nav {
	    display: block;
	}
	

	/* Hero */
	#hero.layout_one .accordion {
	    width: 336px;
	}
	#hero.layout_one .accordion .accordion-button {
	    padding: 30px 20px;
	}
	#hero.layout_one .accordion .accordion-body {
	    padding: 0 20px 20px;
	}
	
	
	/* Sidebar */
	.sidebar {
	    padding: 40px 15px 30px;
	}

	
	/* Footer */
	footer .logo svg {
		width: 83px;
	}

}


@media screen and (max-width: 768px) {
	
	:root {
		--header-height: 88px;
		--section-padding: 6dvh;
		--clip-path: polygon(30px 0%, 100% 0%, 100% 100%, 0% 100%, 0% 30px);
	}
	
	.imageHolder.overlay:before {
    	background: linear-gradient(0deg, rgba(23, 50, 71, 1) 40%, rgba(23, 50, 71, 0) 100%);
        height: 80%;
	}
	.imageHolder.overlay.bottom-up:before {
	    background: rgba(23, 50, 71, 1);
	    height: 100%;
	}
	
	.btn.play {
	    width: 67px;
	}
	.btn.play svg {
		width: 20px;
	}
	
	.main > * {
	    padding-top: var(--section-padding);
	    padding-bottom: var(--section-padding);
	}
	
	.main > *:first-child {
	    margin-top: 0;
	}
	
	.pt-mobile-0 {
		padding-top: 0;
	}
	.pb-mobile-0 {
		padding-bottom: 0;
	}
	
	
	header > .container > .row > .col-12 {
		padding-left: 30px;
        padding-right: 25px;
	}
	
	.main > * > .container > .row > .col-12,
	.wrapped > .container > .row > .col-12,
	footer > .container > .row > .col-12 {
        padding-left: 30px;
        padding-right: 30px;
	}
	
	.main > * > .container > .row > .col-6:nth-child(odd) {
		padding-left: 30px;
	}
	.main > * > .container > .row > .col-6:nth-child(even) {
		padding-right: 30px;
	}
	
	.main > * > .container > .row > .col-12.smaller,
	.wrapped > .container > .row > .col-12.smaller {
        padding-left: 15px;
        padding-right: 15px;
	}
	
	#form.careers > .container > .row > .col-12 {
        padding-left: 18px;
        padding-right: 18px;
    }
	
	.cut_top-left {
	    clip-path: polygon(35px 0%, 100% 0%, 100% 100%, 35px 100%, 0% 100%, 0% 35px);
	}
	
	.w-sm-100 {
		width: 100%;
	}
	

	/* Main Menu */
	#main-menu {
        max-width: 539px;
        padding-bottom: 115px;
    }
    
    /* Utility Menu */
    #utility-menu {
        max-width: 540px;
	}


	/* Hero - Layout One */
	#hero.layout_one {
		padding-bottom: 80px;
	}
	#hero.layout_one .accordion {
	    width: 100%;
	    max-width: 510px;
	}
	#hero.layout_one .accordion .accordion-button {
        padding: 23px 20px;
    }
    #hero.layout_one .accordion .accordion-body .formHolder {
	    padding-bottom: 10px;
	    padding-top: 10px;
	}


	/* Accordion */
	.accordion-button {
	    padding-bottom: 17px;
	}
	.accordion-button::after {
	    margin-top: 0;
	}
	
	/* Accordion - Services */
	.accordion#services .accordion-body {
	    padding-bottom: 10px;
	}
	.accordion#services .accordion-button::after {
	    width: 25px;
	    height: 25px;
	}

	
	/* Service Categories */
	.service_categories .h3 {
		margin-right: 35px;	
	}
	.service_categories .items {
		margin-left: -15px;
        margin-right: -15px;
	}
	.service_categories .items > .item {
	    padding: 5px 0;
	}
	

	/* Services - All */
	.services.all .h3 {
		margin-right: 35px;	
	}
	.services.all .items{
		margin-left: -15px;
        margin-right: -15px;
	}
	.services.all .items > .item {
		padding: 5px 0;
	}
	.services.all .holder.hovered:hover {
		background-color: #fff;
	}
	
	
	/* Holder */
	.holder.hovered {
		padding: 25px 20px;
	}
	.holder.hovered .icon {
	    visibility: visible;
	    opacity: 1;
	    right: 10px;
	}

	.holder.hovered .icon svg path {
	    fill: var(--color-primary);
	}
	.holder.hovered:hover {
	    clip-path: none;
	    background-color: var(--color-grey-light);
	    color: unset;
	}
	.holder.hovered:hover .icon:hover {
	    transform: none !important;
	}
	
	
	/* Holder - Team */
	.slider.team .slide {
		width: 270px;
	}
	
	.holder.team {
		padding: 0;
	}
	.holder.team .icon {
		display: none;
	}
	
	
	/* Tabs */
	.tabs {
	    width: 100%;
	}
	
	
	/* News - Latest */
	.news.latest {
	    margin: 0;
	}
	.news.latest .bg_primary {
	    clip-path: none;
	}
	.news.latest .post {
	    flex-direction: column;
	    clip-path: var(--clip-path) !important;
	}
	.news.latest .post .thumbnail {
	    width: 100%;
	    max-height: 180px;
	    max-width: 100%;
	    aspect-ratio: unset;
	}

	/* News - Default */
	.news.default .post {
	    flex-direction: column;
	}
	.news .post .imageHolder {
	    max-width: 100%;
	}
	.news.default .post .content {
	    padding: 15px 15px !important;
	}
		

	/* Team - List */
	.team.list .items {
	    margin-left: -12px;
	    margin-right: -12px;
	}
	.team.list .item {
    	padding: 20px 7px;
	}

	
	/* Content - Video */
	.video {
		overflow: hidden;
	}
	.video .imageHolder {
	    min-height: 0;
	}
	.video .pattern {
	    height: 180px;
	    top: 60%;
	}
	
	
	/* Map */
	#map iframe {
		height: 300px;
	}
	
	
	/* Content - Layout Two */
	.content.layout_two .imageHolder.bg {
	    position: relative;
        margin: 0 auto -40px;
        max-width: 515px;
	}	

	
	/* CTA */
	.cta {
        min-height: 450px;
    }
    .cta > .container > .row > .col-12 {
        padding-left: 18px;
        padding-right: 18px;
    }
    .cta .imageHolder img {
	    object-position: left center;
	}
	
	/* CTA - No Image */
	.cta.no_image .row {
	    padding: 65px 0;
	}
	
	.items .sticky {
	    position: unset;
	    top: 0;
	}
	
	
	
	/* Timeline */
	.items.timeline .flickity-page-dots {
	    margin: 0 5px;
	}
	.items.timeline .flickity-page-dots .dot {
	    margin: 0 5px;
	}
	.items.timeline .flickity-button {
	    top: 8px;
	}
	
	
	
	
	
	
	/* Careers */
	.items.careers .item .btn-text {
    	margin-left: 0;
	}

	#form.careers .row {
	    margin: 0;
	    padding: 55px 0;
	}
	#form.careers .formWrapper {
		margin-left: 0;
	}
	
	
	/* Items - Default */
	.page-values .items .h2 {
	    margin-bottom: 10px;
	}
	
	/* Values */
	.items.values ul li {
		width: 50%;
	}
		
	/* Items - Community */
	.items.community .holder {
	    display: flex;
	    align-items: center;
	    height: auto;
	    position: relative;
	    padding: 25px 20px;
	}
	.items.community .holder .imageHolder {
		height: 80px;
        max-width: 80px;
        margin-right: 25px;
	}
	.items.community .holder .imageHolder.no_cover img {
	    max-width: 100%;
	}
	.items.community .btn-text {
	    text-align: left;
	    max-width: unset;
	    font-size: 18px;
	}
	.items.community .btn-text svg {
		position: absolute;
		right: 14px;
		top: 50%;
		transform: translateY(-50%);
	}
	
	
	/* Form */
	.nf-form-cont input {
	    padding: 12px 15px;
	}
	.nf-form-cont textarea {
		padding: 12px 15px;
	}

	
	/* Gallery */
	.gallery {
		display: block;
		gap: 0;
	}
	.gallery:after {
		content: 'flickity';
		display: none;
	}
	.gallery .gallery_item {
		width: 80%;
	}

	
	/* Services - Custom */
	.services.custom ul {
		overflow: scroll;
        display: flex;
        flex-wrap: nowrap;
        margin-right: -30px;
        margin-left: -30px;
        -ms-overflow-style: none;
        scrollbar-width: none;
		padding-left: 20px;
	}
	.services.custom ul::-webkit-scrollbar {
		display: none;
	}
	.services.custom ul li {
	    min-width: max-content;
	    margin: 0 10px;
	}
	.services.custom .item {
		padding: 30px 20px;	
	}
	
	.single-team .formWrapper {
	    padding: 40px 15px;
	}
		

	/* Footer */
	footer {
		padding: 40px 0;
	}
	footer .h6.toggle {
		border-top: 1px solid #5a6c7a;
        font-size: 20px;
        padding: 20px 0;
        margin: 0;
        display: flex;
        justify-content: space-between;
	}
	footer .h6.toggle .indicator {
		position: relative;
	    top: -2px;
	}
	ul.menu {
		visibility: hidden;
		opacity: 0;
		display: none;
		margin: 0 0 20px 0;
	}
	ul.menu.active {
		visibility: visible;
		opacity: 1;
		display: block;
	}
	
	footer ul li a {
	    padding: 12px 0;
	}
	
	.socials {
	    max-width: 90px;
	}

}


@media screen and (max-width: 575px) {

	/* Hero */
	#hero.layout_one .accordion {
	    width: auto;
	    left: 15px;
	    right: 15px;
	}
	
	/* Contact - Layout Two */
	.content.layout_two .imageHolder.bg {
       	margin: 0 15px -40px;
        max-width: 100%;
        width: calc(100% - 30px);
        height: 216px;
    }
    .content.layout_two .imageHolder.bg img {
	    object-position: left center;
    }
	
}

/* omb-hub:start — Property hub v7 (Oct 2026), ported from the approved local mockup (index.html in the project repo).
   "Cut corner": the logo's 45-degree corner and blue triangle are the only ornament. Exact brand palette (T755 OMB
   Branding V2). Typography is the live site's own: Manrope (theme --font-primary), Helvetica Neue taglines
   (--font-secondary), the theme's clamp scale, headings 500, body Light 300, normal tracking.
   Scoped to .hub-sec sections. Motion: transform and opacity only. */

:root {
	--hub-navy: #173349;
	--hub-blue: #4C8CCA;
	--hub-mist: #F6F9FB;
	--hub-stone: #C6CCCF;
	--hub-deep: #0E2232; /* navy taken darker: gradient pools */
	--hub-line: rgba(23, 51, 73, .14);

	/* The theme's own type scale (style.css h1-h4, p, .tagline, team meta), so the hub scales like every other page */
	--hub-fs-h1: clamp(1.75rem, 1.04957805907173rem + 2.70042194092827vw, 3.75rem);
	--hub-fs-h2: clamp(1.25rem, 1.0748945147679325rem + 0.6751054852320675vw, 1.75rem);
	--hub-fs-h3: clamp(1.25rem, 1.1405590717299579rem + 0.42194092827004226vw, 1.5625rem);
	--hub-fs-h4: clamp(0.875rem, 0.7436708860759493rem + 0.5063291139240507vw, 1.25rem);
	--hub-fs-p: clamp(1rem, 0.9124472573839663rem + 0.33755274261603374vw, 1.25rem);
	--hub-fs-meta: clamp(0.875rem, 0.7874472573839663rem + 0.33755274261603374vw, 1.125rem);
	--hub-fs-tagline: clamp(0.75rem, 0.6186708860759493rem + 0.5063291139240507vw, 1.125rem);
	--hub-fs-hero: 44px; /* .tax-service-category #hero .h1 and .cta .h1 */

	--hub-s1: .25rem; --hub-s2: .5rem; --hub-s3: .75rem; --hub-s4: 1rem; --hub-s5: 1.5rem;
	--hub-s6: 2rem; --hub-s7: 3rem; --hub-s8: 4rem; --hub-s9: 6rem; --hub-s10: 8rem;
	--hub-gutter: 1rem;
	--hub-section: clamp(4rem, 2.5rem + 6vw, 8rem);
	--hub-cut: clamp(2.25rem, 1.25rem + 3vw, 4.5rem);
	--hub-cut-sm: 1.25rem;
	--hub-overhang: 3rem;

	/* Depth: base (mist) -> elevated (white panels) -> floating (photos over edges, cards on navy, lifted controls) */
	--hub-shadow-elevated: 0 1px 2px rgba(23,51,73,.05), 0 10px 24px -12px rgba(23,51,73,.14), 0 32px 64px -32px rgba(23,51,73,.22);
	--hub-shadow-floating: 0 2px 6px rgba(23,51,73,.08), 0 24px 48px -18px rgba(23,51,73,.30), 0 60px 120px -48px rgba(23,51,73,.42);
	--hub-shadow-on-deep: 0 2px 8px rgba(4,12,19,.28), 0 30px 60px -22px rgba(4,12,19,.6);

	--hub-ease-out: cubic-bezier(.22, 1, .36, 1);
	--hub-spring: var(--hub-ease-out);
	--hub-spring-pop: cubic-bezier(.34, 1.56, .64, 1);
}
@supports (transition-timing-function: linear(0, 1)) {
	:root {
		/* Damped springs (zeta .78 and .55), sampled into linear() */
		--hub-spring: linear(0, 0.084 3.6%, 0.263 7.1%, 0.461 10.7%, 0.638 14.3%, 0.778 17.9%, 0.88 21.4%, 0.947 25%, 0.988 28.6%, 1.009 32.1%, 1.018 35.7%, 1.02 39.3%, 1.018 42.9%, 1.014 46.4%, 1.01 50%, 1.007 53.6%, 1.004 57.1%, 1.002 60.7%, 1.001 64.3%, 1);
		--hub-spring-pop: linear(0, 0.103 3.3%, 0.331 6.7%, 0.589 10%, 0.815 13.3%, 0.98 16.7%, 1.079 20%, 1.122 23.3%, 1.123 26.7%, 1.101 30%, 1.069 33.3%, 1.038 36.7%, 1.012 40%, 0.996 43.3%, 0.987 46.7%, 0.984 50%, 0.986 53.3%, 0.989 56.7%, 0.993 60%, 0.997 63.3%, 1 66.7%, 1.001 70%, 1);
	}
}
@media (min-width: 1024px) {
	:root { --hub-gutter: 2rem; --hub-overhang: 6rem; --hub-cut-sm: 1.5rem; }
}

/* Section plumbing: neutralise the theme's section padding, container and centred 8-column wrapper ------------- */
.main > .hub-sec {
	position: relative;
	isolation: isolate;
	padding-top: var(--hub-section);
	padding-bottom: var(--hub-section);
	color: var(--hub-navy);
	font-size: var(--hub-fs-p);
	font-weight: 300;
	line-height: 1.5;
}
.main > .hub-sec > .container { max-width: calc(77.5rem + 2 * var(--hub-gutter)); padding-left: var(--hub-gutter); padding-right: var(--hub-gutter); }
.main > .hub-sec > .container > .row { margin-left: 0; margin-right: 0; }
.main > .hub-sec > .container > .row > [class*="col-"] { padding-left: 0; padding-right: 0; }
.main > .hub-sec .col-lg-8.offset-lg-2 { flex: 0 0 100%; width: 100%; max-width: 100%; margin-left: 0; text-align: left; }
.main > .hub-sec .content-balance { text-wrap: wrap; text-align: left; } /* the column carries .text-center (!important) */
.main > .hub-sec .h1:empty,
.main > .hub-sec .tagline:empty { display: none; }
.hub-sec p, .hub-sec ul, .hub-sec ol, .hub-sec li, .hub-sec dl, .hub-sec dt, .hub-sec dd, .hub-sec figure, .hub-sec blockquote {
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}
.hub-sec ul, .hub-sec ol { padding: 0; list-style: none; }
.hub-sec h1, .hub-sec h2, .hub-sec h3 { margin: 0; font-size: inherit; font-weight: inherit; line-height: inherit; }
.hub-sec p { text-wrap: pretty; }
.hub-sec img { display: block; max-width: 100%; }

/* Surfaces */
.main > .hub-tone-deep {
	color: #fff;
	background:
		radial-gradient(60% 75% at 100% 0%, rgba(76,140,202,.34) 0%, rgba(76,140,202,0) 62%),
		radial-gradient(55% 70% at 0% 100%, rgba(14,34,50,.95) 0%, rgba(14,34,50,0) 70%),
		radial-gradient(38% 45% at 42% 38%, rgba(76,140,202,.13) 0%, rgba(76,140,202,0) 70%),
		var(--hub-navy);
}
.main > .hub-tone-mist {
	background:
		radial-gradient(55% 60% at 100% 0%, rgba(76,140,202,.09) 0%, rgba(76,140,202,0) 70%),
		radial-gradient(45% 55% at 0% 100%, rgba(198,204,207,.42) 0%, rgba(198,204,207,0) 70%),
		var(--hub-mist);
}
.main > .hub-tone-white { background: #fff; }
/* WP Rocket's lazy render adds content-visibility: auto to below-the-fold sections once it has analysed a page. That
   implies paint containment, which cuts off the photos that hang over section edges (and their shadows), and collapses
   off-screen sections to zero height. Hub sections opt out. */
.main > .hub-sec[data-wpr-lazyrender] { content-visibility: visible; }
.main > .hub-grain::after { /* SVG fractal noise over the gradients */
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	opacity: .2;
	mix-blend-mode: soft-light;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
	background-size: 220px 220px;
}
.main > .hub-grain-soft::after { opacity: .07; mix-blend-mode: multiply; }

/* Type ---------------------------------------------------------------------------------------------------------- */
.hub-sec .hub-display,
.hub-sec h2.h1 {
	font-family: var(--font-primary);
	font-weight: 500;
	letter-spacing: normal;
	text-wrap: balance;
}
.hub-sec .hub-t-hero { font-size: var(--hub-fs-hero); line-height: 1.1; }
.hub-sec .hub-t-h2,
.hub-sec h2.h1 { font-size: var(--hub-fs-h1); line-height: 1.1; }
.hub-sec .hub-t-h3 { font-size: var(--hub-fs-h3); line-height: 1.4; }
.hub-sec .hub-lead { font-size: var(--hub-fs-p); line-height: 1.5; }
.hub-sec .hub-muted { color: inherit; }
.hub-sec .hub-marker { /* the theme's tagline, marked with the logo's blue corner */
	display: inline-flex;
	align-items: center;
	gap: var(--hub-s3);
	font-family: var(--font-secondary);
	font-size: var(--hub-fs-tagline);
	font-weight: 400;
	line-height: 1.4;
	text-transform: uppercase;
	color: var(--hub-blue);
}
.hub-tone-deep .hub-marker { color: #fff; }
.hub-sec .hub-marker::before { content: ""; flex: none; width: .75rem; height: .75rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); }

/* Photos: cut like the logo; blue corner; multiply colour layer; shade from the bottom ---------------------------- */
.hub-sec .hub-photo { position: relative; --hub-tint: rgba(76,140,202,.3); --hub-shade-stop: 45%; }
.hub-sec .hub-photo::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: calc(var(--hub-cut) - .75rem);
	height: calc(var(--hub-cut) - .75rem);
	background: var(--hub-blue);
	clip-path: polygon(0 0, 100% 0, 0 100%);
}
.hub-sec .hub-photo__frame {
	position: relative;
	height: 100%;
	overflow: hidden;
	background: var(--hub-deep);
	clip-path: polygon(var(--hub-cut) 0, 100% 0, 100% 100%, 0 100%, 0 var(--hub-cut));
}
.hub-sec .hub-photo__frame img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.hub-sec .hub-photo__frame::before { content: ""; position: absolute; inset: 0; z-index: 1; background: var(--hub-tint); mix-blend-mode: multiply; pointer-events: none; }
.hub-sec .hub-photo__frame::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(0,0,0,.6) 0%, rgba(0,0,0,0) var(--hub-shade-stop)); pointer-events: none; }

/* Controls ------------------------------------------------------------------------------------------------------ */
.hub-sec .hub-btn {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	min-height: 3.5rem;
	padding: 0 var(--hub-s6);
	font-family: var(--font-primary);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1;
	text-decoration: none;
	color: #fff;
	background: var(--hub-navy);
	transition: transform .5s var(--hub-spring);
	-webkit-tap-highlight-color: transparent;
}
.hub-sec .hub-btn::before { /* the logo's blue corner */
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: .875rem;
	height: .875rem;
	background: var(--hub-blue);
	clip-path: polygon(0 0, 100% 0, 0 100%);
	transform-origin: 0 0;
	transition: transform .55s var(--hub-spring-pop);
}
.hub-sec .hub-btn::after { /* lift shadow, revealed with opacity only */
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	box-shadow: var(--hub-shadow-floating);
	opacity: 0;
	transition: opacity .35s var(--hub-ease-out);
}
.hub-sec .hub-btn:hover { transform: translateY(-2px); color: #fff; }
.hub-sec .hub-btn:hover::before { transform: scale(1.5); }
.hub-sec .hub-btn:hover::after { opacity: 1; }
.hub-sec .hub-btn:active { transform: translateY(0) scale(.97); }
.hub-sec .hub-btn:active::after { opacity: .4; }
.hub-sec .hub-btn:focus-visible { outline: 2px solid var(--hub-blue); outline-offset: 3px; }
.hub-sec .hub-btn--light,
.hub-sec .hub-btn--light:hover { color: var(--hub-navy); background: #fff; }
.hub-sec .hub-btn--light::after { box-shadow: var(--hub-shadow-on-deep); }
.hub-sec .hub-btn--light:focus-visible { outline-color: #fff; }

/* Standalone text links: resting underline, blue line wipes in on hover */
.hub-sec .hub-link {
	position: relative;
	display: inline-block;
	padding-bottom: .2rem;
	font-size: 18px; /* the theme's .btn-text */
	font-weight: 400;
	color: var(--hub-blue);
	text-decoration: none;
	transition: transform .4s var(--hub-spring), opacity .2s var(--hub-ease-out);
}
.hub-sec .hub-link::before,
.hub-sec .hub-link::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; }
.hub-sec .hub-link::before { background: var(--hub-stone); }
.hub-sec .hub-link::after { background: var(--hub-blue); transform: scaleX(0); transform-origin: 0 50%; transition: transform .55s var(--hub-spring); }
.hub-sec .hub-link:hover { color: var(--hub-blue); }
.hub-sec .hub-link:hover::after { transform: scaleX(1); }
.hub-sec .hub-link:active { transform: translateY(1px); opacity: .7; }
.hub-sec .hub-link:focus-visible { outline: 2px solid var(--hub-blue); outline-offset: 4px; }
.hub-tone-deep .hub-link::before { background: rgba(255,255,255,.32); }
.hub-tone-deep .hub-link:focus-visible { outline-color: #fff; }

/* Hero ---------------------------------------------------------------------------------------------------------- */
.main > .hub-hero {
	--hub-hero-pb: clamp(3rem, 2rem + 4vw, 6rem);
	z-index: 2;
	padding-top: calc(var(--header-height, 88px) + clamp(2rem, 1rem + 4vw, 4.5rem));
	padding-bottom: var(--hub-hero-pb);
}
.hub-hero__grid { display: grid; gap: var(--hub-s7); }
.hub-hero__copy { display: grid; align-content: start; gap: var(--hub-s5); }
.hub-sec .hub-hero__lead { max-width: 34rem; }
.hub-hero__actions { padding-top: var(--hub-s2); }
.hub-sec .hub-hero__media { aspect-ratio: 4 / 5; margin-bottom: calc(-1 * (var(--hub-hero-pb) + var(--hub-overhang))); filter: drop-shadow(0 30px 40px rgba(4,12,19,.28)); }
.hub-hero__media img { object-position: 50% 40%; }
@media (min-width: 640px) and (max-width: 1023px) { .hub-sec .hub-hero__media { aspect-ratio: 3 / 2; } }
@media (min-width: 1024px) {
	.hub-hero__grid { grid-template-columns: 7fr 5fr; gap: var(--hub-s8); }
	.hub-hero__copy { padding-top: var(--hub-s6); padding-bottom: var(--hub-s4); gap: var(--hub-s6); }
	.hub-sec .hub-hero__media { aspect-ratio: auto; min-height: 36rem; }
}
/* One orchestrated moment: the hero settles in on load */
@keyframes hub-rise { from { opacity: 0; transform: translateY(1.25rem); } to { opacity: 1; transform: none; } }
@keyframes hub-settle { from { opacity: 0; transform: scale(1.06); } to { opacity: 1; transform: none; } }
@keyframes hub-pop { from { opacity: 0; transform: scale(0); } to { opacity: 1; transform: none; } }
.hub-hero__copy > * { animation: hub-rise .9s var(--hub-spring) both; }
.hub-hero__copy > :nth-child(2) { animation-delay: 80ms; }
.hub-hero__copy > :nth-child(3) { animation-delay: 160ms; }
.hub-hero__copy > :nth-child(4) { animation-delay: 240ms; }
.hub-hero__media .hub-photo__frame img { animation: hub-settle 1.1s var(--hub-spring) both; }
.hub-sec .hub-hero__media::before { transform-origin: 0 0; animation: hub-pop .7s var(--hub-spring-pop) .45s both; }

/* Services ------------------------------------------------------------------------------------------------------ */
.main > .hub-services { z-index: 1; padding-top: calc(var(--hub-overhang) + var(--hub-section) * .6); }
.hub-panel-shadow { filter: drop-shadow(0 1px 1px rgba(23,51,73,.05)) drop-shadow(0 14px 22px rgba(23,51,73,.09)) drop-shadow(0 40px 48px rgba(23,51,73,.08)); }
.hub-panel { position: relative; background: #fff; padding: var(--hub-s7) var(--hub-s5) var(--hub-s5); clip-path: polygon(var(--hub-cut) 0, 100% 0, 100% 100%, 0 100%, 0 var(--hub-cut)); }
.hub-services__intro { display: grid; gap: var(--hub-s5); }
.hub-services__lead { display: grid; justify-items: start; gap: var(--hub-s5); }
.hub-services__groups { display: grid; gap: var(--hub-s7); margin-top: var(--hub-s7); }
.hub-sec .hub-group-label { margin: 0 0 var(--hub-s3); font-size: var(--hub-fs-h4); font-weight: 300; line-height: 1.1; } /* the theme's team department label */
.hub-sec .hub-svc {
	position: relative;
	isolation: isolate;
	padding: var(--hub-s5) 3.25rem var(--hub-s5) var(--hub-s4);
	border-top: 1px solid var(--hub-line);
	transition: transform .45s var(--hub-spring);
}
.hub-sec .hub-svc:last-child { border-bottom: 1px solid var(--hub-line); }
.hub-sec .hub-svc::before { content: ""; position: absolute; inset: -1px 0 0; z-index: -1; background: var(--hub-mist); opacity: 0; transition: opacity .3s var(--hub-ease-out); }
.hub-sec .hub-svc::after { content: ""; position: absolute; top: -1px; left: 0; width: .875rem; height: .875rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); transform: scale(0); transform-origin: 0 0; transition: transform .55s var(--hub-spring-pop); }
.hub-sec .hub-svc:hover::before, .hub-sec .hub-svc:focus-within::before { opacity: 1; }
.hub-sec .hub-svc:hover::after, .hub-sec .hub-svc:focus-within::after { transform: scale(1); }
.hub-sec .hub-svc:active { transform: scale(.985); }
.hub-sec .hub-svc:has(a:focus-visible) { outline: 2px solid var(--hub-blue); outline-offset: -2px; }
.hub-sec .hub-svc h3 { font-size: var(--hub-fs-h3); font-weight: 400; line-height: 1.4; } /* the theme's service card title */
.hub-sec .hub-svc a { color: inherit; text-decoration: none; }
.hub-sec .hub-svc a::after { content: ""; position: absolute; inset: 0; } /* whole row is the link */
.hub-sec .hub-svc a::before { /* arrow: the theme's own icon */
	content: "";
	position: absolute;
	top: 50%;
	right: var(--hub-s4);
	width: 1.25rem;
	height: 1.25rem;
	margin-top: -.625rem;
	background-color: var(--hub-blue);
	-webkit-mask: url('../img/icon/icon-arrow.svg') center / contain no-repeat;
	mask: url('../img/icon/icon-arrow.svg') center / contain no-repeat;
	transition: transform .5s var(--hub-spring);
}
.hub-sec .hub-svc:hover a::before, .hub-sec .hub-svc:focus-within a::before { transform: translateX(4px); }
.hub-sec .hub-svc a:focus-visible { outline: none; }
.hub-sec .hub-svc p { margin-top: var(--hub-s1); font-size: 14px; line-height: 1.5; } /* the theme's .small card copy */
@media (min-width: 768px) {
	.hub-panel { padding: var(--hub-s8) var(--hub-s7) var(--hub-s7); }
	.hub-sec .hub-svc { padding-left: var(--hub-s5); padding-right: 3.5rem; }
	.hub-services__groups { grid-template-columns: 1fr 1fr; gap: var(--hub-s6); margin-top: var(--hub-s8); }
}
@media (min-width: 1024px) {
	.hub-services__intro { grid-template-columns: 5fr 6fr; justify-content: space-between; align-items: end; gap: var(--hub-s8); }
}

/* 2025 rules ---------------------------------------------------------------------------------------------------- */
.hub-rules__grid { display: grid; gap: var(--hub-s7); align-items: center; }
.hub-sec .hub-rules__media { aspect-ratio: 4 / 3; --hub-tint: rgba(76,140,202,.2); --hub-shade-stop: 50%; }
.hub-rules__media img { object-position: 45% 70%; }
.hub-rules__copy { display: grid; align-content: start; gap: var(--hub-s5); }
.hub-sec .hub-rules__body { max-width: 36rem; }
.hub-sec .hub-points { display: grid; margin: var(--hub-s2) 0; background: #fff; color: var(--hub-navy); box-shadow: var(--hub-shadow-on-deep); }
.hub-sec .hub-points > div { padding: var(--hub-s5); }
.hub-sec .hub-points > div + div { border-top: 1px solid var(--hub-line); }
.hub-sec .hub-points dt { font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; }
.hub-sec .hub-points dd { margin-top: var(--hub-s2); }
@media (min-width: 640px) {
	.hub-sec .hub-points { grid-template-columns: 1fr 1fr; }
	.hub-sec .hub-points > div + div { border-top: 0; border-left: 1px solid var(--hub-line); }
}
@media (min-width: 1024px) {
	.hub-rules__grid { grid-template-columns: 6fr 6fr; gap: var(--hub-s8); }
	.hub-sec .hub-rules__media { aspect-ratio: auto; align-self: stretch; min-height: 34rem; }
}

/* Process ------------------------------------------------------------------------------------------------------- */
.hub-process__head { display: grid; gap: var(--hub-s5); }
.hub-sec .hub-process__head p { max-width: 34rem; }
.hub-sec .hub-steps { display: grid; gap: var(--hub-s6); margin-top: var(--hub-s8); counter-reset: hub-step; }
.hub-sec .hub-step { position: relative; padding-left: 4.75rem; counter-increment: hub-step; }
.hub-sec .hub-step::before { /* node: the logo mark with the step number */
	content: counter(hub-step);
	position: absolute;
	top: 0;
	left: 0;
	display: grid;
	place-items: center;
	width: 3.25rem;
	height: 3.25rem;
	font-size: var(--hub-fs-h3);
	font-weight: 500;
	line-height: 1;
	color: #fff;
	background: var(--hub-navy);
	clip-path: polygon(.875rem 0, 100% 0, 100% 100%, 0 100%, 0 .875rem);
}
.hub-sec .hub-step h3::before { content: ""; position: absolute; top: 0; left: 0; width: .5rem; height: .5rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); }
.hub-sec .hub-step::after { content: ""; position: absolute; top: 4rem; bottom: calc(-1 * var(--hub-s6) + .75rem); left: 1.625rem; width: 1px; background: var(--hub-stone); }
.hub-sec .hub-step:last-child::after { display: none; }
.hub-sec .hub-step h3 { margin: var(--hub-s2) 0; }
@media (min-width: 1024px) {
	.hub-process__head { grid-template-columns: 6fr 5fr; justify-content: space-between; align-items: end; gap: var(--hub-s8); }
	.hub-sec .hub-steps { grid-template-columns: repeat(4, 1fr); }
	.hub-sec .hub-step { padding: 5rem var(--hub-s5) 0 0; }
	.hub-sec .hub-step::after { top: 1.625rem; bottom: auto; left: 4.25rem; right: calc(-1 * var(--hub-s6) + 1rem); width: auto; height: 1px; }
	.hub-sec .hub-step h3 { margin-top: 0; }
}

/* Team ---------------------------------------------------------------------------------------------------------- */
.hub-team__grid { display: grid; gap: var(--hub-s7); align-items: center; }
.hub-sec .hub-team__portrait { aspect-ratio: 4 / 5; --hub-tint: rgba(76,140,202,.15); --hub-shade-stop: 35%; }
.hub-team__portrait img { object-position: 50% 15%; }
.hub-team__copy { display: grid; align-content: start; gap: var(--hub-s5); }
.hub-sec .hub-quote { position: relative; margin-top: var(--hub-s4); padding: 4.25rem 0 0; border: 0; }
/* Manrope's quote glyph is 0.24em tall, 0.145em below the top of a line-height:1 box: 12rem draws a ~46px mark */
.hub-sec .hub-quote::before { content: "\201C"; position: absolute; top: -1.75rem; left: -.125rem; font-size: 12rem; font-weight: 500; line-height: 1; color: var(--hub-blue); }
.hub-sec .hub-quote p { font-size: var(--hub-fs-h2); font-weight: 300; line-height: 1.4; text-wrap: balance; }
.hub-sec .hub-quote-by { font-size: var(--hub-fs-meta); color: var(--hub-blue); } /* the theme's team position line */
.hub-sec .hub-people { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--hub-s6) var(--hub-s4); margin-top: var(--hub-s9); }
.hub-sec .hub-person { position: relative; transition: transform .45s var(--hub-spring); }
.hub-sec .hub-person::before { /* blue corner on hover / focus */
	content: "";
	position: absolute;
	z-index: 4;
	top: 0;
	left: 0;
	width: calc(var(--hub-cut-sm) - .375rem);
	height: calc(var(--hub-cut-sm) - .375rem);
	background: var(--hub-blue);
	clip-path: polygon(0 0, 100% 0, 0 100%);
	transform: scale(0);
	transform-origin: 0 0;
	transition: transform .55s var(--hub-spring-pop);
}
.hub-sec .hub-person__frame {
	position: relative;
	display: grid;
	overflow: hidden;
	aspect-ratio: 856 / 1063;
	background: var(--hub-stone);
	clip-path: polygon(var(--hub-cut-sm) 0, 100% 0, 100% 100%, 0 100%, 0 var(--hub-cut-sm));
}
.hub-sec .hub-person__frame::before { content: ""; position: absolute; inset: 0; z-index: 1; background: rgba(76,140,202,.1); mix-blend-mode: multiply; pointer-events: none; }
.hub-sec .hub-person__frame::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(0,0,0,.6) 0%, rgba(0,0,0,0) 40%); pointer-events: none; }
.hub-sec .hub-person__media { grid-area: 1 / 1; overflow: hidden; }
.hub-sec .hub-person__media img { width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .8s var(--hub-spring); }
.hub-sec .hub-person__name { grid-area: 1 / 1; align-self: end; z-index: 2; padding: var(--hub-s4); color: #fff; }
.hub-sec .hub-person__link { color: inherit; text-decoration: none; }
.hub-sec .hub-person__link::after { content: ""; position: absolute; inset: 0; z-index: 3; } /* whole photo is the link */
.hub-sec .hub-person__link:focus-visible { outline: none; }
.hub-sec .hub-person__name strong { display: block; font-size: var(--hub-fs-p); font-weight: 400; line-height: 1.1; } /* the theme's team name */
.hub-sec .hub-person__name span { display: block; margin-top: .25rem; font-size: var(--hub-fs-meta); line-height: 1.5; }
.hub-sec .hub-person__focus { margin-top: var(--hub-s3); font-size: var(--hub-fs-meta); line-height: 1.5; color: var(--hub-blue); } /* the theme's accreditation line */
.hub-sec .hub-person:hover img, .hub-sec .hub-person:focus-within img { transform: scale(1.045); }
.hub-sec .hub-person:hover::before, .hub-sec .hub-person:focus-within::before { transform: scale(1); }
.hub-sec .hub-person:active { transform: scale(.985); }
.hub-sec .hub-person:has(.hub-person__link:focus-visible) { outline: 2px solid var(--hub-blue); outline-offset: 4px; }
.hub-sec .hub-team__more { margin-top: var(--hub-s7); }
@media (min-width: 640px) and (max-width: 1023px) { .hub-sec .hub-team__portrait { aspect-ratio: 4 / 3; } }
@media (min-width: 768px) { .hub-sec .hub-people { grid-template-columns: repeat(4, 1fr); gap: var(--hub-s6) var(--hub-s5); } }
@media (min-width: 1024px) {
	.hub-team__grid { grid-template-columns: 5fr 6fr; gap: var(--hub-s9); }
	.hub-sec .hub-people { gap: var(--hub-s6); }
}

/* Reviews (the theme's Elfsight Google reviews row) --------------------------------------------------------------- */
.main > .hub-reviews > .container > .row.mb-4 { margin-bottom: var(--hub-s7) !important; }
.main > .hub-reviews .h1 { max-width: none; }
.hub-reviews [class*="elfsight-app-"] { min-height: 22rem; }
/* The widget fades colours on hover; keep its motion to transform and opacity like the rest of the page */
.hub-reviews [class*="elfsight-app-"] * { transition-property: transform, opacity !important; }

/* FAQs (the theme's Bootstrap accordion, restyled) ---------------------------------------------------------------- */
.main > .hub-faq > .container > .row { row-gap: var(--hub-s7); }
.main > .hub-faq > .container > .row > .col-md-5,
.main > .hub-faq > .container > .row > .col-md-5 > div { display: grid; align-content: start; gap: var(--hub-s5); }
.hub-sec .hub-guides { display: grid; gap: var(--hub-s3); margin-top: calc(-1 * var(--hub-s2)); }
.hub-faq .accordion { border-top: 1px solid var(--hub-line); }
.hub-faq .accordion-item { border-bottom: 1px solid var(--hub-line); }
.hub-faq .accordion-button {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--hub-s5);
	width: 100%;
	padding: var(--hub-s5) 0;
	font-family: var(--font-primary);
	font-size: var(--hub-fs-h3);
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
	color: var(--hub-navy);
	transition: transform .45s var(--hub-spring);
}
.hub-faq .accordion-button:hover,
.hub-faq .accordion-button:not(.collapsed) { color: var(--hub-navy); }
.hub-faq .accordion-button::before { content: ""; position: absolute; inset: 0 calc(-1 * var(--hub-s4)); z-index: -1; background: var(--hub-mist); opacity: 0; transition: opacity .3s var(--hub-ease-out); }
.hub-faq .accordion-button:hover::before { opacity: 1; }
.hub-faq .accordion-button::after { /* square plus / minus */
	flex: none;
	top: 0;
	width: 2.25rem;
	height: 2.25rem;
	margin: -.125rem 0 0;
	-webkit-mask-image: none;
	mask-image: none;
	background-color: transparent;
	background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor) !important;
	background-repeat: no-repeat;
	background-position: center;
	background-size: .875rem 2px, 2px .875rem;
	box-shadow: inset 0 0 0 1px var(--hub-line);
	transform: none;
	transition: transform .5s var(--hub-spring);
}
.hub-faq .accordion-button.collapsed:hover::after { transform: rotate(90deg); }
.hub-faq .accordion-button:not(.collapsed)::after { transform: rotate(180deg); background-size: .875rem 2px, 2px 0; }
.hub-faq .accordion-button:active { transform: translateY(1px); }
.hub-faq .accordion-button:focus-visible { z-index: 3; outline: 2px solid var(--hub-blue); outline-offset: 2px; }
.hub-faq .collapsing { transition: none; }
.hub-faq .accordion-body { padding: 0 var(--hub-s9) var(--hub-s5) 0; }
.hub-faq .accordion-collapse.show .accordion-body { animation: hub-faq-in .5s var(--hub-spring) both; }
@keyframes hub-faq-in { from { opacity: 0; transform: translateY(-.375rem); } to { opacity: 1; transform: none; } }
.hub-faq .accordion-body a { color: inherit; font-weight: 400; text-decoration: underline; text-decoration-color: var(--hub-blue); text-decoration-thickness: 2px; text-underline-offset: .25em; transition: opacity .2s var(--hub-ease-out); }
.hub-faq .accordion-body a:hover { text-decoration-color: currentColor; }
.hub-faq .accordion-body a:active { opacity: .65; }
.hub-faq .accordion-body a:focus-visible { outline: 2px solid var(--hub-blue); outline-offset: 3px; }
@media (max-width: 639px) { .hub-faq .accordion-body { padding-right: 0; } }
@media (max-width: 1023px) {
	.main > .hub-faq > .container > .row > [class*="col-"] { flex: 0 0 auto; width: 100%; margin-left: 0; margin-top: 0 !important; }
}
@media (min-width: 1024px) {
	.main > .hub-faq { padding-bottom: calc(var(--hub-section) + var(--hub-overhang)); }
	.main > .hub-faq > .container > .row > .col-md-5 { flex: 0 0 auto; width: 33.3333%; }
	.main > .hub-faq > .container > .row > .col-md-6 { flex: 0 0 auto; width: 58.3333%; margin-left: 8.3333%; }
}

/* CTA ----------------------------------------------------------------------------------------------------------- */
.main > .hub-cta { z-index: 2; }
.hub-cta__grid { display: grid; gap: var(--hub-s7); align-items: center; }
.hub-cta__copy { display: grid; align-content: start; justify-items: start; gap: var(--hub-s6); }
.hub-sec .hub-cta__copy .hub-t-h2 { font-size: var(--hub-fs-hero); } /* .tax-service-category .cta .h1 */
.hub-sec .hub-cta__media { aspect-ratio: 4 / 3; filter: drop-shadow(0 30px 40px rgba(4,12,19,.28)); --hub-tint: rgba(23,51,73,.3); }
.hub-cta__media img { object-position: 72% 35%; }
@media (min-width: 1024px) {
	.hub-cta__grid { grid-template-columns: 6fr 5fr; gap: var(--hub-s9); }
	.hub-sec .hub-cta__media { aspect-ratio: 5 / 4; margin-top: calc(-1 * (var(--hub-section) + var(--hub-overhang))); }
}

/* Conveyancing page (service post 135, Oct 2026): quote card, checklists, fee list, timed steps, team mini card ---- */
.hub-sec .hub-hero__alt,
.hub-sec .hub-cta__alt { font-size: var(--hub-fs-meta); }
.hub-sec .hub-hero__alt a,
.hub-sec .hub-cta__alt a { color: #fff; text-decoration: underline; text-decoration-color: var(--hub-blue); text-decoration-thickness: 2px; text-underline-offset: .25em; transition: opacity .2s var(--hub-ease-out); }
.hub-sec .hub-hero__alt a:hover,
.hub-sec .hub-cta__alt a:hover { color: #fff; text-decoration-color: currentColor; }
.hub-sec .hub-hero__alt a:active,
.hub-sec .hub-cta__alt a:active { opacity: .7; }
.hub-sec .hub-hero__alt a:focus-visible,
.hub-sec .hub-cta__alt a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (min-width: 1024px) { .hub-hero__grid--form { align-items: start; } }

/* Hero quote card: the overhang device carries the enquiry form (Ninja Form 2, restyled inside the card only) */
.hub-sec .hub-quote-card {
	position: relative;
	z-index: 3;
	align-self: start;
	margin-bottom: calc(-1 * (var(--hub-hero-pb) + var(--hub-overhang)));
	padding: var(--hub-s7) var(--hub-s5) var(--hub-s5);
	color: var(--hub-navy);
	background: #fff;
	box-shadow: var(--hub-shadow-on-deep);
	animation: hub-rise .9s var(--hub-spring) .2s both;
}
.hub-sec .hub-quote-card::before { content: ""; position: absolute; top: 0; left: 0; width: 1.75rem; height: 1.75rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); }
.hub-sec .hub-quote-card h2 { font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; }
.hub-sec .hub-quote-card > p { margin-top: var(--hub-s2); }
.hub-quote-card__form { margin-top: var(--hub-s5); }
.hub-quote-card .nf-form-content { padding: 0; max-width: none; }
.hub-quote-card nf-fields-wrap { display: grid; gap: var(--hub-s3); }
.hub-quote-card .nf-field-container { margin: 0; }
.hub-quote-card .nf-field-element input,
.hub-quote-card .nf-field-element textarea {
	display: block;
	width: 100%;
	height: auto;
	padding: .875rem 1rem;
	font-family: var(--font-primary);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: var(--hub-navy);
	background: var(--hub-mist);
	border: 1px solid var(--hub-stone);
	border-radius: 0;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.hub-quote-card .nf-field-element textarea { height: 8rem !important; min-height: 8rem; resize: vertical; }
.hub-quote-card .nf-field-element input::placeholder,
.hub-quote-card .nf-field-element textarea::placeholder { color: rgba(23, 51, 73, .72); opacity: 1; }
.hub-quote-card .nf-field-element input:hover,
.hub-quote-card .nf-field-element textarea:hover { border-color: rgba(23, 51, 73, .45); }
.hub-quote-card .nf-field-element input:focus,
.hub-quote-card .nf-field-element textarea:focus { outline: 2px solid var(--hub-blue); outline-offset: 0; border-color: var(--hub-blue); background: #fff; }
.hub-quote-card .nf-error .ninja-forms-field { border-color: var(--error-red) !important; }
.hub-quote-card .nf-form-fields-required { display: block; margin: 0 0 var(--hub-s3); font-size: 14px; }
.hub-quote-card .nf-form-fields-required .ninja-forms-req-symbol { position: static; margin: 0 .2em !important; font-size: inherit; font-weight: inherit; color: inherit !important; } /* the theme floats it to the edge */
.hub-quote-card .submit-container { margin: var(--hub-s2) 0 0; }
.hub-quote-card .submit-container .nf-field-element { display: flex; }
.hub-quote-card .submit-container .nf-element {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	min-height: 3.5rem;
	padding: 0 var(--hub-s6);
	font-family: var(--font-primary);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1;
	color: #fff;
	background: var(--hub-navy);
	border: 0 !important;
	border-radius: 0;
	cursor: pointer;
	transition: transform .5s var(--hub-spring);
}
.hub-quote-card .submit-container .nf-element svg { display: none; }
.hub-quote-card .submit-container .nf-element::before { content: ""; position: absolute; top: 0; left: 0; width: .875rem; height: .875rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); transform-origin: 0 0; transition: transform .55s var(--hub-spring-pop); }
.hub-quote-card .submit-container .nf-element::after { content: ""; position: absolute; inset: 0; z-index: -1; box-shadow: var(--hub-shadow-floating); opacity: 0; transition: opacity .35s var(--hub-ease-out); }
.hub-quote-card .submit-container .nf-element:hover { color: #fff; transform: translateY(-2px); }
.hub-quote-card .submit-container .nf-element:hover::before { transform: scale(1.5); }
.hub-quote-card .submit-container .nf-element:hover::after { opacity: 1; }
.hub-quote-card .submit-container .nf-element:active { transform: translateY(0) scale(.97); }
.hub-quote-card .submit-container .nf-element:focus-visible { outline: 2px solid var(--hub-blue); outline-offset: 3px; }
.hub-quote-card .nf-response-msg { padding: var(--hub-s4); background: var(--hub-mist); }
@media (min-width: 768px) { .hub-sec .hub-quote-card { padding: var(--hub-s7) var(--hub-s6) var(--hub-s6); } }

/* Buying / selling checklists, marked with the logo's corner */
.hub-sides { display: grid; gap: var(--hub-s7); margin-top: var(--hub-s7); }
.hub-sec .hub-side h3 { font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; }
.hub-sec .hub-side__more { margin-top: var(--hub-s5); }
.hub-sec .hub-checklist { display: grid; gap: var(--hub-s3); margin-top: var(--hub-s4); padding-top: var(--hub-s5); border-top: 1px solid var(--hub-line); }
.hub-sec .hub-checklist li { position: relative; padding-left: var(--hub-s6); }
.hub-sec .hub-checklist li::before { content: ""; position: absolute; top: .45em; left: 0; width: .75rem; height: .75rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); }
.hub-sec .hub-panel-foot { margin-top: var(--hub-s7); padding-top: var(--hub-s5); border-top: 1px solid var(--hub-line); }
@media (min-width: 768px) { .hub-sides { grid-template-columns: 1fr 1fr; gap: var(--hub-s8); margin-top: var(--hub-s8); } }

/* Disclosure: what the seller must give, who does what, a sellers' call to action */
.hub-rules__media--review img { object-position: 58% 40%; }
.hub-sec .hub-must-give { padding: var(--hub-s5); background: #fff; color: var(--hub-navy); box-shadow: var(--hub-shadow-on-deep); }
.hub-sec .hub-must-give h3 { font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; }
.hub-sec .hub-must-give .hub-checklist { padding-top: 0; border-top: 0; }
.hub-sec .hub-who-does { display: grid; gap: var(--hub-s4); }
.hub-sec .hub-who-does dt { font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; }
.hub-sec .hub-who-does dd { margin-top: var(--hub-s1); }
.hub-sec .hub-disclosure-cta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--hub-s4) var(--hub-s6); }
@media (min-width: 640px) { .hub-sec .hub-who-does { grid-template-columns: 1fr 1fr; gap: var(--hub-s6); } }

/* Fees: the four parts of a quote */
.hub-fees__grid { display: grid; gap: var(--hub-s7); }
.hub-fees__intro { display: grid; align-content: start; justify-items: start; gap: var(--hub-s5); }
.hub-sec .hub-fee-list { border-top: 1px solid var(--hub-line); }
.hub-sec .hub-fee-list > div { display: grid; gap: var(--hub-s2); padding: var(--hub-s5) 0; border-bottom: 1px solid var(--hub-line); }
.hub-sec .hub-fee-list dt { font-size: var(--hub-fs-h3); font-weight: 400; line-height: 1.4; }
.hub-sec .hub-fee-list dt span { display: block; margin-top: var(--hub-s1); font-size: var(--hub-fs-meta); font-weight: 300; line-height: 1.5; color: var(--hub-blue); }
@media (min-width: 768px) { .hub-sec .hub-fee-list > div { grid-template-columns: 5fr 7fr; gap: var(--hub-s6); } }
@media (min-width: 1024px) { .hub-fees__grid { grid-template-columns: 4fr 7fr; gap: var(--hub-s9); align-items: start; } }

/* Process: when each step happens */
.hub-sec .hub-step__when { margin-bottom: var(--hub-s1); font-size: var(--hub-fs-meta); color: var(--hub-blue); }
.hub-sec .hub-step .hub-step__when + h3 { margin-top: 0; }
@media (min-width: 1024px) {
	.hub-sec .hub-steps--five { grid-template-columns: repeat(5, 1fr); }
	.hub-sec .hub-steps--five .hub-step { padding-right: var(--hub-s4); }
}

/* Team: name on the portrait, a mini card for who runs the file day to day */
.hub-sec .hub-portrait__name { position: absolute; z-index: 2; left: var(--hub-s5); right: var(--hub-s5); bottom: var(--hub-s5); color: #fff; }
.hub-sec .hub-portrait__name strong { display: block; font-size: var(--hub-fs-p); font-weight: 400; line-height: 1.1; }
.hub-sec .hub-portrait__name span { display: block; margin-top: .25rem; font-size: var(--hub-fs-meta); line-height: 1.5; }
.hub-sec .hub-mini { display: grid; grid-template-columns: 5.5rem 1fr; gap: var(--hub-s4); align-items: center; padding: var(--hub-s4) 0; border-top: 1px solid var(--hub-line); border-bottom: 1px solid var(--hub-line); }
.hub-sec .hub-mini__photo { position: relative; aspect-ratio: 856 / 1063; overflow: hidden; background: var(--hub-stone); clip-path: polygon(.75rem 0, 100% 0, 100% 100%, 0 100%, 0 .75rem); }
.hub-sec .hub-mini__photo img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.hub-sec .hub-mini__photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: rgba(76,140,202,.1); mix-blend-mode: multiply; pointer-events: none; }
.hub-sec .hub-mini__photo::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 45%); pointer-events: none; }
.hub-sec .hub-mini__name { font-size: var(--hub-fs-p); font-weight: 400; line-height: 1.1; }
.hub-sec .hub-mini__name a { color: inherit; text-decoration: none; transition: opacity .2s var(--hub-ease-out); }
.hub-sec .hub-mini__name a:hover { text-decoration: underline; text-decoration-color: var(--hub-blue); text-decoration-thickness: 2px; text-underline-offset: .25em; }
.hub-sec .hub-mini__name a:active { opacity: .7; }
.hub-sec .hub-mini__name a:focus-visible { outline: 2px solid var(--hub-blue); outline-offset: 3px; }
.hub-sec .hub-mini__role { margin-top: .25rem; font-size: var(--hub-fs-meta); color: var(--hub-blue); }
.hub-cta__media--team img { object-position: 60% 40%; }

/* Trusts page components ---------------------------------------------------------------------------- */
/* Family trust or unit trust: one table with aligned rows on wide screens; on phones each row stacks with its own column
   labels (explicit ARIA roles in the markup keep the table semantics when display changes). */
.hub-compare__grid { display: grid; gap: var(--hub-s7); }
.hub-compare__intro { display: grid; align-content: start; justify-items: start; gap: var(--hub-s5); }
.hub-sec .hub-compare__intro p { margin: 0; }
.hub-sec .hub-compare { width: 100%; margin: 0; border-collapse: collapse; }
.hub-sec .hub-compare th,
.hub-sec .hub-compare td { text-align: left; vertical-align: top; border: 0; background: none; }
.hub-sec .hub-compare thead th { padding: 0 var(--hub-s5) var(--hub-s4) 0; font-size: var(--hub-fs-h3); font-weight: 500; line-height: 1.4; color: var(--hub-navy); }
.hub-sec .hub-compare thead th span { display: inline-flex; align-items: center; gap: var(--hub-s3); }
.hub-sec .hub-compare thead th span:not(.visually-hidden)::before { content: ""; flex: none; width: .75rem; height: .75rem; background: var(--hub-blue); clip-path: polygon(0 0, 100% 0, 0 100%); }
.hub-sec .hub-compare tbody tr { border-top: 1px solid var(--hub-line); }
.hub-sec .hub-compare tbody tr:last-child { border-bottom: 1px solid var(--hub-line); }
.hub-sec .hub-compare tbody th { padding: var(--hub-s5) var(--hub-s5) var(--hub-s5) 0; font-size: var(--hub-fs-meta); font-weight: 300; line-height: 1.5; color: var(--hub-blue); }
.hub-sec .hub-compare tbody td { padding: var(--hub-s5) var(--hub-s5) var(--hub-s5) 0; font-size: var(--hub-fs-p); font-weight: 300; line-height: 1.5; color: var(--hub-navy); }
@media (max-width: 767px) {
	.hub-sec .hub-compare thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.hub-sec .hub-compare,
	.hub-sec .hub-compare tbody,
	.hub-sec .hub-compare tr,
	.hub-sec .hub-compare th,
	.hub-sec .hub-compare td { display: block; }
	.hub-sec .hub-compare tbody tr { padding: var(--hub-s5) 0; }
	.hub-sec .hub-compare tbody th { padding: 0 0 var(--hub-s2); }
	.hub-sec .hub-compare tbody td { padding: var(--hub-s3) 0 0; }
	.hub-sec .hub-compare tbody td::before { content: attr(data-label); display: block; font-size: var(--hub-fs-meta); font-weight: 400; line-height: 1.5; }
}
@media (min-width: 768px) {
	.hub-sec .hub-compare thead th:first-child { width: 24%; }
	.hub-sec .hub-compare thead th:not(:first-child) { width: 38%; }
}
@media (min-width: 1024px) { .hub-compare__grid { grid-template-columns: 4fr 8fr; gap: var(--hub-s9); align-items: start; } }

/* Trusts page photo crops */
.hub-rules__media--partners img { object-position: 50% 30%; }
.hub-cta__media--meeting img { object-position: 50% 40%; }

/* FAQ on a mist band: the hover wash is white instead of mist */
.main > .hub-faq.hub-tone-mist .accordion-button::before { background: #fff; }

/* Buying page components ----------------------------------------------------------------------------- */
/* Two people under the portrait: one shared rule between the cards instead of a doubled border */
.hub-sec .hub-minis { display: grid; }
.hub-sec .hub-minis .hub-mini + .hub-mini { border-top: 0; }

/* Buying page photo crops */
.hub-rules__media--meeting img { object-position: 50% 40%; }
.hub-cta__media--coffee img { object-position: 74% 40%; }

@media (prefers-reduced-motion: reduce) {
	.hub-sec *, .hub-sec *::before, .hub-sec *::after { animation: none !important; transition: none !important; }
}
/* omb-hub:end */
