.elementor-kit-6{--e-global-color-primary:#0F1041;--e-global-color-secondary:#C6944F;--e-global-color-text:#0F1041;--e-global-color-accent:#659ACD;--e-global-color-5117c9f:#FFFFFF;--e-global-color-e31e873:#F4F4F5;--e-global-color-eb7bcf8:#EBF2FB;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:70px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1em;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:38px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.3em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.3em;--e-global-typography-0f55be4-font-family:"Montserrat";--e-global-typography-0f55be4-font-size:22px;--e-global-typography-0f55be4-font-weight:600;--e-global-typography-0f55be4-text-transform:uppercase;--e-global-typography-0f55be4-line-height:1em;--e-global-typography-c7387b4-font-family:"Inter";--e-global-typography-c7387b4-font-size:18px;--e-global-typography-c7387b4-font-weight:500;--e-global-typography-c7387b4-line-height:1.2em;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:15px;}.elementor-kit-6 a{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-6 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 h2{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-6 h3{font-family:var( --e-global-typography-0f55be4-font-family ), Sans-serif;font-size:var( --e-global-typography-0f55be4-font-size );font-weight:var( --e-global-typography-0f55be4-font-weight );text-transform:var( --e-global-typography-0f55be4-text-transform );line-height:var( --e-global-typography-0f55be4-line-height );}.elementor-kit-6 h4{font-family:"Montserrat", Sans-serif;font-size:22px;font-weight:600;line-height:1em;}.elementor-kit-6 h5{font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:600;line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1340px;}.e-con{--container-max-width:1340px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(min-width:2400px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-0f55be4-font-size );line-height:var( --e-global-typography-0f55be4-line-height );}}@media(max-width:1366px){.elementor-kit-6{--e-global-typography-primary-font-size:65px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-0f55be4-font-size );line-height:var( --e-global-typography-0f55be4-line-height );}}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-primary-font-size:50px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-0f55be4-font-size );line-height:var( --e-global-typography-0f55be4-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-primary-font-size:35px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-0f55be4-font-size );line-height:var( --e-global-typography-0f55be4-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */.quote_button .elementor-button-text, .service_button .elementor-button-text {
    text-align: left!important;
}
.quote_button span.quote, .service_button span.quote {
    display: block;
    font-size: 26px;
    font-weight: 600;
}
.icon_title span {
    display:block;
    color: var( --e-global-color-5117c9f );
}
.service_button span.quote {
 color: var(--e-global-color-primary);  
}
.main_menu .jet-mega-menu-list > .jet-mega-menu-item--top-level:not(:first-child)::before {
    content: '';
    display: block;
    width: 1px;
    height: 15px;
    background: var(--e-global-color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.two_tone_tit span {
    color: var(--e-global-color-accent);
}
.dummy_link p {
    display: inline-block;
    width: 90px;
    position:relative;
}
.slavery.dummy_link p {
    width: 125px;
}
.dummy_link p:after {
    content:'';
    position: absolute;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' id='uuid-dc43f4e1-307b-4548-b68f-1c7ec7cc4c89' viewBox='0 0 20 15.65'><g id='uuid-1d3f01dd-c093-4b3f-86d8-9a744919c501'><path fill='%23229CD1' fill-rule='evenodd' d='M12.81,15.41s5-5.03,6.95-6.99c.16-.16.24-.38.24-.59s-.08-.43-.24-.59C17.81,5.28,12.81.24,12.81.24c-.16-.16-.37-.24-.58-.24s-.43.08-.59.25c-.33.33-.33.86,0,1.18l5.53,5.56H.83c-.46,0-.83.38-.83.84s.37.84.83.84h16.33l-5.53,5.56c-.32.32-.32.85,0,1.18.16.17.38.25.59.25s.42-.08.58-.24Z'></path></g></svg>") no-repeat center;
    background-size: cover;
    width: 16px;
    height: 10px;
    display: block;
    top: 6px;
    right: -20px;
}
/* Navy content panel */
.pageheader > .pageheader-panel, .testimonial_section > .testimonial-panel {
	position: relative;
	width: var(--panel-width);
	flex: 0 0 var(--panel-width);
	min-height: inherit;

	/* Do not clip the actual content container */
	background: transparent !important;
	clip-path: none;
	overflow: visible;

	/*
	 * Keeps the content aligned with the main website container.
	 * Change 1340px to your normal Elementor content width.
	 */
	padding-top: 0;
	padding-right: clamp(45px, 5vw, 90px);
	padding-bottom: 0;
	padding-left: max(25px, calc((100vw - 1340px) / 2));

	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;

	z-index: 1;
}
.pageheader, .testimonial_section {
	--panel-width: 62%;
	--slant-position: 84%;
}
/* Create the slanted navy background separately */
.pageheader > .pageheader-panel::before, .testimonial_section > .testimonial-panel::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;

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

	clip-path: polygon(
		0 0,
		100% 0,
		var(--slant-position) 100%,
		0 100%
	);
}
.centered-listing-grid .jet-listing-grid__items {
    justify-content: center;
}

.testimonial_section > .testimonial-panel::before {
    background: var(--e-global-color-eb7bcf8);
}
/* Allow the Elementor widgets to use the available width */
.pageheader > .pageheader-panel > .elementor-element, .testimonial_section > .testimonial-panel > .elementor-element {
	width: 100%;
	max-width: 100%;
}

/* Make sure longer headings can wrap */
.pageheader-panel .elementor-heading-title {
	white-space: normal;
	text-wrap: balance;
}
.pageheader::after {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: var(--panel-width);
	z-index: 3;
	pointer-events: none;

	background: var(--e-global-color-accent);

	clip-path: polygon(
		calc(100% - 4px) 0,
		100% 0,
		calc(var(--slant-position) + 4px) 100%,
		var(--slant-position) 100%
	);
}
/* Main testimonial layout */
.testimonial_quote .elementor-blockquote {
	position: relative;
	margin: 0;
	padding: 0 0 0 105px;
	border: 0;
}

/* Position Elementor's quotation mark beside the text */
.testimonial_quote .elementor-blockquote::before {
	position: absolute;
	top: -10px;
	left: 0;

	width: 75px;
	margin: 0;

	font-size: 82px;
	line-height: 1;
	color: rgba(16, 22, 79, 0.08)!important;
}

/*
 * Gutenberg places the testimonial inside this paragraph,
 * rather than directly inside Elementor's content paragraph.
 */
.testimonial_quote .elementor-blockquote > .wp-block-paragraph {
	margin: 0 0 18px;
	padding: 0;

	font-size: clamp(20px, 2vw, 28px);
	font-weight: 600;
	line-height: 1.4;
	color: var(--e-global-color-primary);
}

/* Hide Elementor's empty content paragraph when Gutenberg follows it */
.testimonial_quote .elementor-blockquote__content:has(+ .wp-block-paragraph) {
	display: none;
}

/* Hide the additional empty paragraph Gutenberg creates */
.testimonial_quote .elementor-blockquote > p:not([class]) {
	display: none;
}

/* Author details */
.testimonial_quote .e-q-footer {
	margin: 0;
	padding: 0;
}

.testimonial_quote .elementor-blockquote__author {
	font-size: 17px;
	font-style: normal;
	font-weight: 500;
	line-height: 1.5;
	color: var(--e-global-color-primary);
}
/* Main timeline row */
.gp-timeline {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    width: 100%;
}

/* Horizontal connecting line */
.gp-timeline::before {
    content: "";
    position: absolute;
    top: 55px;
    left: 10%;
    right: 10%;
    height: 2px;
    background: #dbe2eb;
    z-index: 0;
}

/* Individual timeline entry */
.gp-timeline-item {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 1 1 20%;
    flex-direction: column;
    align-items: center;
    min-width: 0;
}

/* Icon circle */
.gp-timeline-icon {
    position: relative;
    z-index: 2;
}

.gp-timeline-icon .elementor-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    padding: 0;
    border-radius: 50%;
    background: #0c174e;
    color: #ffffff;
    box-shadow: 0 8px 22px rgba(12, 23, 78, 0.15);
}

.gp-timeline-icon .elementor-icon svg {
    width: 42px;
    height: 42px;
}

/* Text underneath each icon */
.gp-timeline-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 250px;
    margin-top: 18px;
    text-align: center;
}

.gp-timeline-content .elementor-heading-title {
    margin: 0 0 10px;
}

.gp-timeline-content .elementor-widget-text-editor {
    margin-bottom: 0;
}
.gp-surveybooker {
    width: 100%;
    overflow: hidden;
    background: #ffffff;
}

.gp-surveybooker iframe {
    display: block;
    width: 100%;
    min-height: 1100px;
    border: 0;
}



/* Lead profile cards */
.team-lead-card {
    overflow: hidden;
    border-radius: 12px;
}

/* Keep the profile images consistent */
.team-lead-card img {
    width: 100%;
    height: 235px;
    object-fit: cover;
    object-position: center top;
    display: block;
}

/* Support panel */
.team-support-card {
    padding: 32px 28px;
    border-radius: 12px;
}


/* Photograph area */
.team-secondary-image {
    width: 100%;
    min-height: 190px;
    flex: 0 0 190px;
    background: #f1f1f3;
}

/* Future uploaded photographs */
.team-secondary-image img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    object-position: center top;
    display: block;
}

/* Biography area */
.team-secondary-content {
    width: 100%;
    flex: 1;
    padding: 24px;
}

/* Prevent long headings from forcing columns wider */
.team-featured-grid h2,
.team-featured-grid h3,
.team-secondary-grid h2,
.team-secondary-grid h3 {
    overflow-wrap: anywhere;
}

.block_management_text h3 .elementor-headline-text-wrapper:nth-of-type(1){
    display: block;
}
.block_management_text h3 .elementor-headline-dynamic-wrapper {
    font-size: 34px;
}
.coverage_list .elementor-icon-list-items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 10px;
}

.coverage_list .elementor-icon-list-item {
    margin: 0 !important;
}

/* =========================================
   SHARED GOLDSMITHS FORM STYLING
   Applies to popup + main contact form
========================================= */

.goldsmiths-contact-form .jet-form-builder,
.block-management-popup .jet-form-builder {
	row-gap: 14px;
}

.goldsmiths-contact-form .wp-block-group.is-layout-flex,
.block-management-popup .wp-block-group.is-layout-flex {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 22px;
	width: 100%;
}

.goldsmiths-contact-form .jet-form-builder-row,
.block-management-popup .jet-form-builder-row {
	width: 100%;
	margin: 0;
}

.goldsmiths-contact-form .jet-form-builder__label,
.block-management-popup .jet-form-builder__label {
	margin-bottom: 7px;
}

.goldsmiths-contact-form .jet-form-builder__label-text,
.block-management-popup .jet-form-builder__label-text {
	color: #11144B;
	font-size: 14px;
	line-height: 1.3;
	font-weight: 600;
}

.goldsmiths-contact-form .jet-form-builder__required,
.block-management-popup .jet-form-builder__required {
	color: #D49A3A;
}


/* =========================================
   INPUTS
========================================= */

.goldsmiths-contact-form .jet-form-builder__field,
.block-management-popup .jet-form-builder__field {
	width: 100%;
	min-height: 50px;
	padding: 12px 14px;
	border: 1px solid #D9DEE7 !important;
	border-radius: 8px;
	background: #fff !important;
	color: #11144B !important;
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
	transition:
		border-color .2s ease,
		box-shadow .2s ease;
}

.goldsmiths-contact-form textarea.jet-form-builder__field,
.block-management-popup textarea.jet-form-builder__field {
	min-height: 120px !important;
	resize: vertical;
}

.goldsmiths-contact-form .jet-form-builder__field:focus,
.block-management-popup .jet-form-builder__field:focus {
	outline: none;
	border-color: #6FA8DC !important;
	box-shadow: 0 0 0 3px rgba(111,168,220,.15);
}


/* =========================================
   PHONE FIELD
========================================= */

.goldsmiths-contact-form .iti,
.block-management-popup .iti {
	width: 100%;
}

.goldsmiths-contact-form .iti input,
.block-management-popup .iti input {
	width: 100%;
	min-height: 50px;
	border: 1px solid #D9DEE7 !important;
	border-radius: 8px;
}


/* =========================================
   SUBMIT BUTTON
========================================= */

.goldsmiths-contact-form .jet-form-builder__submit-wrap,
.block-management-popup .jet-form-builder__submit-wrap {
	width: 100%;
}

.goldsmiths-contact-form .jet-form-builder__submit,
.block-management-popup .jet-form-builder__submit {
	width: 100%;
	min-height: 54px;
	display: flex;
	align-items: center;
	justify-content: center !important;

	padding: 14px 24px;
	border: 0;
	border-radius: 9px;

	background: #D5A04B;
	color: #fff;

	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .02em;

	cursor: pointer;

	transition:
		transform .2s ease,
		opacity .2s ease;
}

.goldsmiths-contact-form .jet-form-builder__submit:hover,
.block-management-popup .jet-form-builder__submit:hover {
	transform: translateY(-1px);
	opacity: .92;
}


/* =========================================
   BLOCK MANAGEMENT POPUP ONLY
========================================= */

.elementor-popup-modal:has(.block-management-popup) {
	align-items: flex-start !important;
	overflow-y: auto !important;
	padding: 24px 15px !important;
}

.elementor-popup-modal:has(.block-management-popup) .dialog-widget-content {
	margin: 0 auto !important;
	max-height: calc(100vh - 48px);
	overflow-y: auto;
	border-radius: 18px;
}

.elementor-popup-modal:has(.block-management-popup) .dialog-message {
	max-height: none !important;
	overflow: visible !important;
}

.block-management-popup {
	background: #fff;
	border-radius: 18px;
	overflow: hidden;
}

.block-management-popup .e-con-inner {
	max-width: 680px;
	padding: 38px 46px 34px;
}

.block-management-popup h3 {
	margin: 0 0 10px;
	color: #11144B;
	font-size: 30px;
	line-height: 1.15;
	font-weight: 600;
	letter-spacing: -0.02em;
}

.block-management-popup .elementor-widget-heading:first-child h3 {
	color: #6FA8DC;
	font-size: 20px;
	text-transform: uppercase;
	letter-spacing: .02em;
	font-weight: 600;
}

.block-management-popup .elementor-widget-text-editor {
	margin-bottom: 20px;
}

.block-management-popup .elementor-widget-text-editor p {
	margin: 0;
	color: #4c5061;
	font-size: 16px;
	line-height: 1.6;
}


/* =========================================
   POPUP CLOSE BUTTON
========================================= */

.elementor-popup-modal .dialog-close-button {
	top: 18px !important;
	right: 20px !important;
	font-size: 20px;
	color: #11144B;
}


/* =========================================
   MAIN CONTACT ENQUIRY CARDS
========================================= */

.enquiry-option {
	position: relative;
	padding-right: 58px !important;
	cursor: pointer;

	transition:
		transform .2s ease,
		box-shadow .2s ease,
		border-color .2s ease,
		background-color .2s ease;
}

.enquiry-option::after {
	content: "";
	position: absolute;
	right: 24px;
	top: 50%;

	width: 9px;
	height: 9px;

	border-top: 2px solid #6699CB;
	border-right: 2px solid #6699CB;

	transform: translateY(-50%) rotate(45deg);

	transition: transform .2s ease;
}

.enquiry-option:hover {
	transform: translateX(3px);
	border-color: #6699CB !important;
	box-shadow: 0 5px 18px rgba(15,16,65,.08);
}

.enquiry-option:hover::after {
	transform: translate(4px,-50%) rotate(45deg);
}

.enquiry-option.is-selected {
	background: #EEF5FB !important;
	border-color: #6699CB !important;
}

.enquiry-option.is-selected::after {
	border-color: #D5A04B;
}
.single-post .elementor-widget-theme-post-content h2 a,
.single-post .elementor-widget-text-editor h2 a {
	font: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	color: inherit;
	text-decoration: none;
}
.single-post .elementor-widget-theme-post-content h2 a:hover,
.single-post .elementor-widget-text-editor h2 a:hover {
	color: #6699CB;
}
.advice-download-box {
	margin: 32px 0;
	padding: 28px 30px;
	background: #eef5fb;
	border-radius: 12px;
}

.advice-download-eyebrow {
	margin: 0 0 8px;
	color: #6699cb;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.advice-download-box h3 {
	margin: 0 0 10px;
	color: #11144b;
}

.advice-download-box p {
	margin: 0 0 18px;
}

.advice-download-button {
	display: inline-flex;
	align-items: center;
	padding: 12px 18px;
	background: #d5a04b;
	color: #fff !important;
	border-radius: 8px;
	text-decoration: none !important;
	font-weight: 600;
}

.advice-download-button:hover {
	opacity: .92;
}
/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

	.goldsmiths-contact-form .wp-block-group.is-layout-flex,
	.block-management-popup .wp-block-group.is-layout-flex {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.block-management-popup .e-con-inner {
		padding: 38px 24px 28px;
	}

	.block-management-popup h3 {
		font-size: 25px;
	}
}
/* =========================================
   CAREERS ENQUIRY POPUP
========================================= */

.careers-enquiry-popup {
	padding: 24px 30px 22px;
}

/* Reduce Elementor widget spacing */
.careers-enquiry-popup .elementor-widget {
	margin-bottom: 0;
}

.careers-enquiry-popup .jet-form-builder {
	row-gap: 12px;
}

/* Labels */
.careers-enquiry-popup .jet-form-builder__label {
	margin-bottom: 5px;
}

.careers-enquiry-popup .jet-form-builder__label-text {
	font-size: 14px;
	line-height: 1.3;
	color: #11144B;
	font-weight: 600;
}

/* Fields */
.careers-enquiry-popup .jet-form-builder__field {
	min-height: 44px;
	padding: 9px 12px;
	border: 1px solid #D9DEE7 !important;
	border-radius: 6px;
	background: #fff !important;
}

/* Textarea */
.careers-enquiry-popup textarea.jet-form-builder__field {
	min-height: 80px !important;
	height: 80px !important;
	resize: vertical;
}


/* =========================================
   COMPACT CV UPLOAD
========================================= */

.careers-enquiry-popup .field-type-media-field {
	margin-top: 2px;
}

/* Upload wrapper */
.careers-enquiry-popup .jet-form-builder-file-upload {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	column-gap: 12px;
	row-gap: 4px;
}

/* Make actual upload control compact */
.careers-enquiry-popup .jet-form-builder-file-upload__fields {
	grid-column: 1 / -1;
}

/* Style native upload field */
.careers-enquiry-popup
.jet-form-builder-file-upload__input {
	width: 100%;
	min-height: 42px;
	padding: 5px 8px !important;
	border: 1px solid #D9DEE7 !important;
	border-radius: 6px;
	background: #fff !important;
	font-size: 13px;
}

/* File-size note */
.careers-enquiry-popup
.jet-form-builder-file-upload__message {
	margin: 3px 0 0;
	color: #737887;
	font-size: 11px;
	line-height: 1.3;
}

/* Remove unused vertical space around previews */
.careers-enquiry-popup
.jet-form-builder-file-upload__content:empty {
	display: none;
}

.careers-enquiry-popup
.jet-form-builder-file-upload__files:empty {
	display: none;
}


/* =========================================
   BUTTON
========================================= */

.careers-enquiry-popup .jet-form-builder__submit-wrap {
	width: 100%;
	margin-top: 2px;
}

.careers-enquiry-popup .jet-form-builder__submit {
	width: 100%;
	min-height: 48px;
	display: flex;
	justify-content: center !important;
	align-items: center;

	background: #D5A04B;
	color: #fff;
	border: 0;
	border-radius: 7px;

	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
}


/* =========================================
   CONFIDENTIALITY TEXT
========================================= */

.careers-enquiry-popup
.elementor-widget-text-editor:last-child p {
	margin: 8px 0 0;
	text-align: center;
	font-size: 12px;
	color: #737887;
}
.careers-enquiry-popup .jet-form-builder-file-upload__files:empty {
	display: none;
}

.careers-enquiry-popup .jet-form-builder-file-upload__loader {
	display: none;
}
.careers-enquiry-popup .jet-form-builder-file-upload {
	margin: 0;
}

.careers-enquiry-popup .jet-form-builder-file-upload__content {
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}
/* =========================================
   GOLDSMITHS JOB APPLICATION FORM
   ========================================= */

#application_form {
    display: none;
}

#application_form.is-open {
    display: block;
}


/* Main form panel */
#application_form .jet-form-builder {
    max-width: 900px;
    margin: 0 auto;
    padding: 42px 46px;
    background: #f7f9fb;
    border-radius: 16px;
}


/* -----------------------------------------
   FIELD SPACING
   ----------------------------------------- */

#application_form .jet-form-builder-row {
    margin: 0 0 18px;
}

#application_form .wp-block-group {
    gap: 24px;
    margin: 0;
}

#application_form .wp-block-group > .jet-form-builder-row {
    flex: 1 1 0;
    min-width: 0;
    margin-bottom: 18px;
}

/* Remove empty Gutenberg paragraph gaps */
#application_form p:empty {
    display: none;
}


/* -----------------------------------------
   LABELS
   ----------------------------------------- */

#application_form .jet-form-builder__label {
    margin-bottom: 7px;
}

#application_form .jet-form-builder__label-text {
    color: #11144B;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 600;
}

#application_form .jet-form-builder__required {
    color: #D5A04B;
}


/* -----------------------------------------
   INPUTS
   ----------------------------------------- */

#application_form input[type="text"],
#application_form input[type="email"],
#application_form input[type="tel"],
#application_form select,
#application_form textarea {
    width: 100%;
    min-height: 50px;
    padding: 12px 14px;
    background: #ffffff;
    border: 1px solid #d9dee7;
    border-radius: 8px;
    color: #11144B;
    font-size: 15px;
    line-height: 1.4;
    box-sizing: border-box;
    transition: border-color .2s ease, box-shadow .2s ease;
}

#application_form textarea {
    min-height: 110px;
    resize: vertical;
}

#application_form input:focus,
#application_form select:focus,
#application_form textarea:focus {
    outline: none;
    border-color: #6699CB;
    box-shadow: 0 0 0 3px rgba(102,153,203,.14);
}


/* Placeholder colour */
#application_form ::placeholder {
    color: #7d8491;
    opacity: 1;
}


/* -----------------------------------------
   PHONE FIELD
   ----------------------------------------- */

#application_form .iti {
    width: 100%;
}

#application_form .phone-field-wrap {
    width: 100%;
}


/* -----------------------------------------
   FILE UPLOADS
   Fix JetFormBuilder's large blank space
   ----------------------------------------- */

#application_form .jet-form-builder-file-upload__content {
    min-height: 0 !important;
    min-width: 0 !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

#application_form .jet-form-builder-file-upload__files:empty {
    display: none;
}

#application_form .jet-form-builder-file-upload__loader {
    display: none;
}

#application_form .jet-form-builder-file-upload__fields {
    margin-top: 0;
}

#application_form input[type="file"] {
    width: 100%;
    padding: 11px 12px;
    background: #ffffff;
    border: 1px dashed #b8c1ce;
    border-radius: 8px;
    color: #11144B;
    font-size: 14px;
    box-sizing: border-box;
}

#application_form input[type="file"]::file-.elementor-kit-6-button {
    margin-right: 12px;
    padding: 9px 14px;
    border: 0;
    border-radius: 6px;
    background: #11144B;
    color: #ffffff;
    font-weight: 600;
    cursor: pointer;
}

#application_form .jet-form-builder-file-upload__message {
    margin-top: 6px;
    color: #6b7080;
    font-size: 12px;
}


/* -----------------------------------------
   CONSENT
   ----------------------------------------- */

#application_form .field-type-switcher {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 18px;
    background: #eef5fb;
    border-radius: 8px;
}

#application_form .field-type-switcher .jet-form-builder__label {
    margin: 0;
    flex: 1;
}

#application_form .field-type-switcher .jet-form-builder__label-text {
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
}


/* -----------------------------------------
   SUBMIT BUTTON
   ----------------------------------------- */

#application_form .jet-form-builder__submit-wrap {
    margin-top: 8px;
}

#application_form .jet-form-builder__submit {
    min-height: 50px;
    padding: 13px 28px;
    background: #D5A04B;
    border: 0;
    border-radius: 7px;
    color: #11144B;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: transform .2s ease, opacity .2s ease;
}

#application_form .jet-form-builder__submit:hover {
    opacity: .9;
    transform: translateY(-1px);
}
.application-success {
    background: #EEF5FB;
    border-top: 1px solid #D9DEE7;
    border-bottom: 1px solid #D9DEE7;
    padding: 18px 24px;
    text-align: center;
    color: #11144B;
    font-size: 17px;
    line-height: 1.45;
    font-weight: 600;
}

/* -----------------------------------------
   RESPONSIVE
   ----------------------------------------- */

@media (max-width: 767px) {

    #application_form .jet-form-builder {
        padding: 30px 22px;
        border-radius: 12px;
    }

    #application_form .wp-block-group {
        display: block !important;
    }

    #application_form .wp-block-group > .jet-form-builder-row {
        width: 100%;
    }

}
/* =========================================
   MOBILE
========================================= */
/* Wrapped horizontal timeline */
@media (max-width: 1366px) and (min-width: 768px) {

    .gp-timeline::before {
        display: none;
    }

    .gp-timeline > .e-con {
        position: relative;
        z-index: 1;
    }

    .gp-timeline > .e-con::before {
        content: "";
        position: absolute;
        top: 45px; /* centre of the round icon */
        left: 50%;
        width: calc(100% + 30px);
        height: 2px;
        background: #dce4ed;
        z-index: -1;
    }

}

/* LAPTOP / TABLET LANDSCAPE – 3 items per row */
@media (max-width: 1366px) and (min-width: 1025px) {

    .gp-timeline::before {
        display: none;
    }

    .gp-timeline > .e-con {
        position: relative;
        z-index: 1;
    }

    .gp-timeline > .e-con::before {
        content: "";
        display: block;
        position: absolute;
        top: 45px;
        height: 2px;
        background: #dce4ed;
        z-index: -1;
        width: auto;
    }

    /* First item of each row */
    .gp-timeline > .e-con:nth-child(3n + 1)::before {
        left: 50%;
        right: -15px;
    }

    /* Middle item – line passes all the way behind */
    .gp-timeline > .e-con:nth-child(3n + 2)::before {
        left: -15px;
        right: -15px;
    }

    /* Last item */
    .gp-timeline > .e-con:nth-child(3n)::before {
        left: -15px;
        right: 50%;
    }

}


@media (max-width: 1024px) and (min-width: 768px) {

    .gp-timeline::before {
        display: none;
    }

    .gp-timeline > .e-con {
        position: relative;
        z-index: 1;
    }

    .gp-timeline > .e-con::before {
        content: "";
        position: absolute;
        top: 45px;
        height: 2px;
        background: #dce4ed;
        z-index: -1;
    }

  .gp-timeline > .e-con:nth-child(odd)::before {
    left: 60%;
    right: -15px;
}

.gp-timeline > .e-con:nth-child(even)::before {
    left: -15px;
    right: 60%;
}

}
@media (max-width: 767px) {

	.careers-enquiry-popup {
		padding: 20px 22px;
	}

	.careers-enquiry-popup .jet-form-builder {
		row-gap: 10px;
	}

}

/* Short laptop screens */
@media (max-height: 800px) {

	.elementor-popup-modal:has(.block-management-popup) {
		padding-top: 15px !important;
		padding-bottom: 15px !important;
	}

	.elementor-popup-modal:has(.block-management-popup) .dialog-widget-content {
		max-height: calc(100vh - 30px);
	}

	.block-management-popup .e-con-inner {
		padding-top: 30px;
		padding-bottom: 28px;
	}
}

/* Tablet */
@media (max-width: 1024px) {
    .gp-timeline {
        gap: 18px;
    }

    .gp-timeline::before {
        top: 45px;
    }

    .gp-timeline-icon .elementor-icon {
        width: 90px;
        height: 90px;
    }

    .gp-timeline-icon .elementor-icon svg {
        width: 34px;
        height: 34px;
    }

    .gp-timeline-content {
        max-width: 190px;
    }

    .gp-timeline-content .elementor-heading-title {
        font-size: 22px;
    }

    .gp-timeline-content .elementor-widget-text-editor {
        font-size: 14px;
    }
    	.pageheader {
		--panel-width: 72%;
		min-height: 340px;
	}

	.pageheader > .pageheader-panel {
		padding-left: 45px;
		padding-right: 70px;
	}
}

/* Mobile vertical timeline */
@media (max-width: 767px) {
    .gp-timeline {
        flex-direction: column;
        gap: 34px;
    }

    .gp-timeline::before {
        top: 45px;
        bottom: 45px;
        left: 48%;
        right: auto;
        width: 2px;
        height: auto;
    }

    .gp-timeline-item {
        flex-direction: row;
        align-items: center;
        width: 100%;
        gap: 20px;
    }

    .gp-timeline-icon {
        flex: 0 0 90px;
    }

    .gp-timeline-icon .elementor-icon {
        width: 90px;
        height: 90px;
    }

    .gp-timeline-content {
        align-items: flex-start;
        max-width: none;
        margin-top: 4px;
        text-align: left;
    }

    .gp-timeline-content .elementor-heading-title {
        text-align: left;
    }

    .gp-timeline-content .elementor-widget-text-editor {
        text-align: left;
    }
     .team-lead-card img {
        height: 220px;
    }

    .team-secondary-image,
    .team-secondary-image img {
        min-height: 210px;
        height: 210px;
        flex-basis: 210px;
    }
    .gp-surveybooker iframe {
        min-height: 1350px;
    }
     .coverage_list .elementor-icon-list-items {
        grid-template-columns: 1fr;
    }
	.testimonial_quote .elementor-blockquote {
		padding-left: 65px;
	}

	.testimonial_quote .elementor-blockquote::before {
		top: -5px;
		width: 48px;
		font-size: 58px;
	}

	.testimonial_quote
	.elementor-blockquote > .wp-block-paragraph {
		font-size: 19px;
	}
	.pageheader, .testimonial_section  {
		--panel-width: 100%;
		min-height: 300px;
		background-position: center !important;
	}

	.pageheader > .pageheader-panel, .testimonial_section > .testimonial-panel {
		width: 100%;
		flex-basis: 100%;

		clip-path: none;

		background: linear-gradient(
			90deg,
			rgba(16, 22, 79, 0.97) 0%,
			rgba(16, 22, 79, 0.88) 65%,
			rgba(16, 22, 79, 0.72) 100%
		);

		padding: 40px 25px;
	}

	.pageheader::after {
		display: none;
	}


	.enquiry-option::after {
		top: 50%;
		right: 24px;

		transform: translateY(-50%) rotate(135deg);
	}

	.enquiry-option:hover::after {
		transform: translateY(-45%) rotate(135deg);
	}


}/* End custom CSS */