/**
 * 3d Leisure custom styles.
 *
 * Moved out of Appearance > Customise > Additional CSS on 14 Sep 2026.
 * Enqueued from functions.php at priority 999 so it loads after all
 * Total theme stylesheets - keep it that way or override order breaks.
 */

.sub_page_hero_section .vcex-post-terms {
	display: none
}


.vcex-post-terms__item--21 {
	display: none
}

.report_icon_box {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.report_icon_box .vcex-icon-box-text {
	text-align: center;
}

.report_icon_box .vcex-icon-box-symbol {
	width: 80px;
	height: 80px;
	border-radius: 99px
}

.report_icon_box.green .vcex-icon-box-symbol  {
	background: #51B021;
}

.report_icon_box.amber .vcex-icon-box-symbol  {
	background: #FFD100;
}

.report_icon_box.red .vcex-icon-box-symbol  {
	background: #FF3D00;
}

.report_icon_box .vcex-icon-box-symbol img {
	width: 40px;
	height: 80px;
}

.timeline_block .vcex-icon-box-heading {
	display: flex;
	flex-direction: column-reverse;
}

.timeline_block .wpex-badge {
	font-size: 16px;
	margin-bottom: 10px
}



.wpex-post-cards-entry:hover .case_study_card_title {
	color: var(--wpex-palette-554-color)
}

/* TOP BAR */

.top_bar_buttons {
	padding: 5px 20px;
	font-size: 14px;
	background: #fff;
	color: var(--wpex-palette-555-color)
}

.top_bar_buttons:hover {
	background: var(--wpex-palette-555-color);
	color: #fff
}


/* HEADER */



#menu-main-menu > li > .sub-menu {
	margin-top: 20px;
	border-bottom: 4px solid var(--wpex-palette-554-color)
}

.search-toggle-li {
	height: 40px;
	width: 40px;
	background: var(--wpex-palette-554-color);
	border-radius: 99px;
	padding: 8px 12px;
	margin-left: 10px
}

.search-toggle-li:hover {
	background: #fff;
}

.search-toggle-li:hover svg {
	color: var(--wpex-palette-555-color)
}

.is-sticky .search-toggle-li:hover {
	background: var(--wpex-palette-555-color);
}

.is-sticky .search-toggle-li svg {
	color: #fff
}

.main-navigation-ul>.menu-item>a {
	padding-block: 0px;
}

.wpex-carousel__item,
.wpex-carousel__item .cloned{
	opacity: 0.5;
	transition: opacity 0.3s ease-in-out
}

.wpex-carousel__item.active {
	opacity: 1 !important
}

.vcex-icon-box-text {
	text-align: left
}

#steps .vcex-icon-box-symbol img {
	max-height: 600px !important;
	object-fit: cover
}




/* TYPOGRAPHY */


.talk_title {
	font-size: 63px;
	font-weight: 700;
	letter-spacing: -2px;
	line-height: 0.9;
}

.blue_text {
	color: var(--wpex-palette-554-color)
}

.simple_cta_with_form p a:hover {
	opacity: 0.6
}

.gender_pay_gap_content h2 {
	margin: 40px 0px 20px 0px
}

.gender_pay_gap_content h3 {
	margin: 0px 0px 10px 0px
}


/* BUTTONS */

.sticky_dl_button {
	display: none !important
}

.theme-button.small {
	padding: 7px 20px;
	font-size: 12px;
}

.theme-button.medium {
	padding: 15px 40px;
	font-size: 18px;
	font-weight: 600;
}

.theme-button.large {
	padding: 20px 60px;
	font-size: 22px;
	font-weight: 600;
}

.outline_button {
	background-color: transparent;
	border: 2px solid var(--wpex-palette-554-color);
	color: var(--wpex-palette-555-color)
}

.outline_button:hover {
	background-color: var(--wpex-palette-554-color);
	border: 2px solid var(--wpex-palette-554-color);
	color: #fff
}

.white_button {
	background-color: #ffffff;
	color: var(--wpex-palette-555-color)
}

.white_button:hover {
	background-color: #ffffff80;
	color: #ffffff
}

.white_outline_button {
	outline: 2px solid #fff;
	outline-offset: -2px;
	background: transparent;
}

.white_outline_button:hover {
	background: #fff;
	color: var(--wpex-palette-555-color)
}

.white_outline_button {
	outline: 2px solid #fff;
	outline-offset: -2px;
	background: transparent;
}

.white_outline_button:hover {
	background: #fff;
	color: var(--wpex-palette-555-color)
}

.top_bar_contact {
	width: 100%
}

.top_bar_buttons .vcex-button-icon {
	padding-right: 0px
}

.top_bar_search_button {
	padding: 5px 10px
}

.sticky_dl_button {
	display: none;
}

.wpex-carousel__arrow {
	height: 50px !important;
	width: 50px !important;
	font-size: var(--wpex-carousel-arrow-font-size, 14px);
	border-radius: 99px !important;
	background: transparent;
	border: 2px solid var(--wpex-palette-554-color)
}

.wpex-carousel__arrow svg {
	fill: var(--wpex-palette-555-color)
}

.wpex-carousel__arrow:hover {
	background: var(--wpex-palette-554-color);
	border: 2px solid var(--wpex-palette-554-color)
}

.wpex-carousel__arrow:hover svg {
	fill: #fff
}





/* IMAGES */

.left_image {
	position: relative;
	display: inline-block;
}

.left_image img {
	display: block;
}

.left_image:after {
	content: "";
	position: absolute;
	inset: 0;
	transform: translate(calc(-10px), calc(10px));
	border: 2px solid #4a90e2; pointer-events: none;
	z-index: 99
}

.right_image {
	position: relative;
	display: inline-block;
}

.right_image img {
	display: block;
}

.right_image:after {
	content: "";
	position: absolute;
	inset: 0;
	transform: translate(calc(10px), calc(-10px));
	border: 2px solid #4a90e2; pointer-events: none;
	z-index: 99
}






/* CHARTS */

.gender_pay_gap_charts h2 {
	font-size: 22px;
	margin-bottom: 30px;
	text-align: center;
	min-height: 50px
}






/* ICON BOXES */


.tdl_icon_box .vcex-icon-box-content,
.tdl_icon_box .vcex-icon-box-heading{
	text-align: center
}

.spa_icon_box img {
	aspect-ratio: 1/1;
	object-fit: cover
}

.wellness_360_icon_box img {
	width: 150px
}

.wellness_360_icon_box h3 {
	Font-size: 30px;
	font-weight: 700;
	margin-bottom: 20px
}

.gender_pay_icon_box .vcex-icon-box-content p {
    position: relative;
    padding-left: 20px;
}

.gender_pay_icon_box .vcex-icon-box-content p {
	margin-bottom: 5px
}

.gender_pay_icon_box .vcex-icon-box-content p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
}
.gender_pay_icon_box .vcex-icon-box-content p:nth-child(1)::before {
    background-color: var(--wpex-palette-554-color);
}

.gender_pay_icon_box .vcex-icon-box-content p:nth-child(2)::before {
    background-color: var(--wpex-palette-1649-color);
}



/* CARDS */


.sector_card_icon {
	padding-left: 30px;
	margin-bottom: -35px;
	z-index: 200
}

.sector_card_image,
.sector_card_image img {
	aspect-ratio: 3/4;
	object-fit: cover
}

.sector_card .overlay-content {
	padding: 40px;
}

.related-post img {
	border-radius: 15px;
	aspect-ratio: 4/2;
	object-fit: cover
}



/* CAROUSELS */


.team_caro .wpex-carousel--bleed-end .wpex-carousel__stage-outer::before {
	top: -10px;
}



/* MODALS */


.team_caro .wpex-modal {
	background: transparent;
	box-shadow: none
}

.team_caro .wpex-close-modal { height: 40px;
	width: 40px;
	background: var(--wpex-palette-554-color);
	border-radius: 99px;
}

.team_caro .wpex-modal__body {
	filter: drop-shadow(0px 0px 10px #00000080);
}

.team_caro .wpex-close-modal svg {
	fill: #fff
}

.team_caro .wpex-close-modal:hover {
	background: var(--wpex-palette-555-color);
}



/* TESTIMONIALS */


.testimonial_grid .wpex-post-cards-grid .wpex-post-cards-entry:nth-child(odd) {
	padding: 30px 40px 40px 40px
}

.testimonial_grid .wpex-post-cards-grid .wpex-post-cards-entry:nth-child(even) {
	background-color: var(--wpex-palette-625-color);
	padding: 30px 40px 40px 40px
}



/* FORMS */


.form .gform-theme--foundation .gform_fields {
	row-gap: 15px;
}

.form .gfield_label {
	font-size: 18px;
	color: var(--wpex-palette-555-color)
}

.form .gfield_required,
.form .gform-field-label--type-sub {
	font-size: 14px;
	font-weight: 600;
	color: var(--wpex-palette-554-color)
}

.form .gform_button {
	background-color: var(--wpex-palette-554-color) !important;
	padding: 15px 30px !important;
	font-size: 18px !important
}

.form .gform_button:hover {
	background-color: var(--wpex-palette-555-color) !important;
}

.brochure_form .gform_confirmation_message {
	margin-block-start: 0px !important;
	background: transparent !important;
	border-inline-start: none !important;
	color: var(--wpex-palette-555-color) !important;
}


.newsletter_cta .gform-theme--foundation .gform_fields {
	row-gap: 15px;
}

.newsletter_cta .gfield_label {
	color: #ffffff !important;
	font-size: 16px !important
}

.newsletter_cta .gform-field-label{
	color: #ffffff !important
}

.newsletter_cta .gfield_required,
.newsletter_cta .gform-field-label--type-sub {
	font-weight: 500;
	color: #ffffff80
}

.newsletter_cta .gform-body .gform-button--width-full {
	background-color: var(--wpex-palette-554-color) !important;
	padding: 15px 20px !important;
	font-size: 18px !important
}

.newsletter_cta .gform-body .gform-button--width-full:hover {
	background-color: #ffffff !important;
	color: var(--wpex-palette-555-color) !important;
}


#contact_form .gform-theme--foundation .gform_fields {
	row-gap: 15px;
}

#contact_form .gfield_label {
	font-size: 18px;
	color: #ffffff
}

#contact_form .gfield_required,
#contact_form .gform-field-label--type-sub {
	font-size: 14px;
	font-weight: 600;
	color: #ffffff
}

#contact_form .gfield_description,
#contact_form .gform-field-label{
	color: #ffffff
}

#contact_form .gform_button {
	background-color: #ffffff !important;
	color:var(--wpex-palette-555-color);
	padding: 15px 30px !important;
	font-size: 18px !important
}

#contact_form .gform_button:hover {
	background-color: var(--wpex-palette-555-color) !important;
	color: #ffffff
}



/* TEMPLATE BLOCKS */


.sub_page_hero_section {
	min-height: 65vh !important
}

.text_left_img_right_block .vc_row,
.text_right_img_left_block .vc_row {
	padding: 0px 20px
}



/* ANIMATED TEXT STRIP */


.marquee {
	overflow: hidden;
	width: 100%;
}

.track {
	display: flex;
	width: max-content;
	animation: scroll 18s linear infinite;
}

.track span {
	white-space: nowrap;
	padding-right: 4rem;
	font-size: 28px;
	font-weight: 700;
	color: #fff
}

@keyframes scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}



/* FOOTER */


.footer_logo_caro .wpex-mb-20 {
	margin-block-end: 0px;
}



/* RECAPTCHA BADGE */

.grecaptcha-badge {
	width: 70px !important;
	overflow: hidden !important;
	transition: all 0.3s ease !important;
	left: 0px !important;
	z-index: 999
}

.grecaptcha-badge:hover {
	width: 256px !important;
}

/* NL LANDING PAGE */


.nl_email_button {
	background-color: var(--wpex-palette-554-color);
	padding: 10px 20px;
	border-radius: 5px
}

.nl_email_button:hover {
	background-color: #ffffff;
	color: var(--wpex-palette-555-color) !important;
	padding: 10px 20px;
	border-radius: 5px
}

.nl_services_icon_box img {
	aspect-ratio: 4/3;
	object-fit: cover;
clip-path: polygon(0 8%, 100% 0%, 100% 100%, 0% 100%);
}







@media (min-width: 640px) {


}


@media only screen and (min-width: 768px) {

	.top_bar_contact {
		width: auto
	}

	.track span {
		font-size: 30px;
	}

	.sub_page_hero_section {
		min-height: 60vh !important
	}

	.talk_title {
		font-size: 90px;
	}

}

@media only screen and (min-width: 1024px) {

	.sub_page_hero_section {
		min-height: 65vh !important
	}

	.post_content .left_col {
		padding-right: 60px
	}

}



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

	.sector_card_image,
	.sector_card_image img {
		aspect-ratio: 1/1;
		object-fit: cover
	}

	.sector_card_icon {
		margin-bottom: -28px;
	}

	.sector_card_icon img {
		max-width: 85%;
	}

}




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

	.top-bar-full-width,
	.site-footer-full-width,
	.footer-bottom-full-width,
	.header-one.header-full-width,
	.header-five.header-full-width,
	.header-seven.header-full-width,
	.header-eight.header-full-width,
	.header-nine.header-full-width,
	.header-two.header-full-width #site-header-inner, 	.header-two.header-full-width .main-navigation, 	.header-full-width .mobile-toggle-nav {
		padding-inline: 45px;
	}


	.homepage_hero {
		min-height: 90vh
	}

	.sub_page_hero_section {
		min-height: 75vh !important
	}

	/* TEMPLATE BLOCKS */

	.text_left_img_right_block .vc_row,
	.text_right_img_left_block .vc_row {
		padding: 0px
	}

	.text_left_img_right_block .left_col {
		padding: 40px 4vw 40px 0
	}

	.text_right_img_left_block .right_col {
		padding: 40px 0px 40px 4vw
	}

	.two_col_two_img_left .right_col {
		padding: 40px 0px 0px 5vh
	}

	.two_col_two_img_right .left_col {
		padding: 40px 5vh 0px 0px
	}

	.sector_section .left_col {
		background: #fff;
		padding: 30px 20px
	}

	.talk_title {
		font-size: 7rem;
		font-weight: 700;
		letter-spacing: -5px
	}

	.track span {
		font-size: 38px;
	}

	.sector_section .right_col {
		padding-left: 10vh
	}

	.sticky_dl_button {
		display: inline-block;
		position: sticky;
		width: auto;
		transform: rotate(-90deg) translateX(-50%);
		transform-origin: top left;
		left: 5px;
		top: 50%;
		z-index: 100;
	}

}


@media only screen and (min-width: 1366px) {

	.sub_page_hero_section {
		min-height: 50vh !important
	}

	.talk_title {
		font-size: 10rem;
		font-weight: 700;
		letter-spacing: -5px
	}

	.track span {
		font-size: 48px;
	}

	/* 	.sector_card_image,
	.sector_card_image img {
	aspect-ratio: 3/4;
	object-fit: cover
} */


}


@media only screen and (min-width: 1440px) {

	.homepage_hero {
		min-height: 85vh
	}

	.sticky_dl_button {
		left: 30px;
	}

	.sector_card_image,
	.sector_card_image img {
		aspect-ratio: 3/4;
		object-fit: cover
	}

}


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


}
