/*
Theme Name:		 TSG Theme
Theme URI: 		 http://transnationalstrategy.com/
Description:	 Transnationl Strategy Theme
Author:			 Stuart Bogle
Author URI:		 http://stuartbogle.com/
Template:		 hello-elementor
Version:		 1.0.0
Text Domain:	 tsg
*/

/****************************
GENERAL
*****************************/
body {
	font-size: 16px;
}

a {
	color: #1569C1;
}

.hidden {
	height: 0px;
	width: 0px;
	overflow: hidden;
	position: absolute;
	top: -999999px;
}

#hotspot_details,
.is-hidden {
	display: none !important;
}

:focus {
	outline: none;
}

.width-auto {
	width: auto !important;
}

.width-stretch {
	flex: 1;
}

.height-full {
	height: 100% !important;
}

@media only screen and (min-width: 768px) {
	.hero-image:after {
		content: '';
		position: absolute;
		top: -1px;
		left: 0;
		width: 100px;
		height: 100.5%;
		background: #1b3f95;
		-webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
		clip-path: polygon(0 0, 0% 100%, 100% 0);
		z-index: 1;
	}

	.page-team .hero-image:after {
		content: '';
		left: -1px;
	}
}

/****************************
GLOBE
*****************************/

.globeGl {
	border: none !important;
}

/****************************
HEADER
*****************************/
.header .elementor-widget-search-form {
	margin-bottom: 5px;
}

.header .elementor-widget-search-form .elementor-search-form__container {
	float: right;
}

@media only screen and (max-width: 767px) {
	.header .elementor-nav-menu--toggle:focus {
		border: 0 !important;
	}

	.header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		margin-top: 46px;
	}
}


/****************************
HOME
*****************************/
.home-intro h1>span {
	color: #1b3f95;
	font-weight: 700;
}

.home-news .elementor-widget {
	margin-bottom: 0;
}

/****************************
FOCUS
*****************************/
@media only screen and (min-width: 1025px) {
	.focus-blocks {
		min-height: 250px;
	}
}

/****************************
CLIENT SERVICES
*****************************/
.client-services-info .cta .elementor-widget {
	margin-bottom: 0;
}

/****************************
PRACTICE GROUP
*****************************/
.title-block {
	margin-bottom: 0 !important;
}

.practice-group-team-loop .elementor-widget-heading,
.team-members-list .elementor-posts-container .team .elementor-widget-heading {
	margin-bottom: 10px;
}

/* Modal */
.team-member-modal {
	margin-bottom: 0 !important;
}

.premium-modal-box-modal-body,
.premium-modal-box-modal-body>iframe {
	min-height: 400px;
}

.premium-modal-box-modal-body>iframe html {
	margin-top: 0 !important;
}

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

	.premium-modal-box-modal-body,
	.premium-modal-box-modal-body>iframe {
		min-height: 500px;
	}
}

/****************************
TEAMS
*****************************/
.team-members-list .elementor-posts-container .team .elementor-image {
	height: 100px;
	width: 100px;
}

.team-members-list .elementor-posts-container .team .elementor-image>img {
	height: 100px;
	width: 100px;
	-o-object-fit: cover;
	object-fit: cover;
}

.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button,
.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container,
.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container .elementor-button-wrapper,
.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container .elementor-button-wrapper>a {
	height: 100%;
}

.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container .elementor-button-wrapper>a>span {
	height: 100%;
	margin-right: 0 !important;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container .elementor-button-wrapper>a>span>span.elementor-button-icon {
	margin-right: 0;
}

.team-members-list .elementor-posts-container .team .team-link .elementor-widget-button .elementor-widget-container .elementor-button-wrapper>a>span>span.elementor-button-icon>i {
	font-size: 20px;
}

.single-teams .team-member-profile .elementor-widget-heading {
	margin-bottom: 10px;
}

/* HERO FIX */
.page-team .hero-map:after {
	content: '';
	position: absolute;
	z-index: 1;
	margin-top: -7px;
	width: 100%;
	height: 7px;
	background-color: #fff;
}

/* MODAL */
.premium-modal-box-modal .premium-modal-box-modal-header {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.single-teams .team-member-profile .cta .elementor-shortcode>a {
	color: #333 !important;
}

.single-teams .team-member-profile .cta .elementor-icon>i {
	margin-top: 3px !important;
}

.single-team-focus-area .elementor-shortcode {
	margin-bottom: 20px;
}

.single-team-focus-area .elementor-shortcode ul {
	list-style: none;
}

.single-team-focus-area .elementor-shortcode ul li {
	font-style: italic;
}

.single-team-focus-area .elementor-shortcode ul li::before {
	content: "\2022";
	color: #3a8bea;
	font-weight: bold;
	display: inline-block;
	width: 1em;
	margin-left: -1em;
}

.single-team-focus-area .elementor-shortcode ul li a {
	cursor: pointer;
}

.single-team-publications .elementor-shortcode {
	padding: 0 20px 5px 20px;
}

.single-team-publications .elementor-shortcode h6 {
	font-size: 16px;
	font-weight: 400;
	color: #333;
}

/****************************
PUBLICATIONS & MEDIA
*****************************/
.publications-loop .elementor-widget-heading,
.publications-loop .elementor-widget-text-editor {
	margin-bottom: 0;
}


/****************************
CONTACT
*****************************/
.gravity-contact-form .gform_wrapper {
	margin-top: 0;
}

.gravity-contact-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gravity-contact-form .gform_wrapper textarea {
	border: 1px solid #e8eef1 !important;
	border-radius: 0;
	padding: 8px;
	margin-top: 0;
}

.gravity-contact-form .gform_wrapper .gfield_checkbox li input,
.gravity-contact-form .gform_wrapper .gfield_checkbox li input[type=checkbox],
.gravity-contact-form .gform_wrapper .gfield_radio li input[type=radio] {
	vertical-align: top;
	margin-top: 3px;
}

.gravity-contact-form .gform_footer.top_label {
	text-align: center;
}

.gravity-contact-form .gform_footer.top_label>input[type=submit] {
	background-color: #3a8bea;
	border: 1px solid #3a8bea;
	border-radius: 0;
	color: #fff;
}

.gravity-contact-form .gform_footer.top_label>input[type=submit]:hover,
.gravity-contact-form .gform_footer.top_label>input[type=submit]:focus,
.gravity-contact-form .gform_footer.top_label>input[type=submit]:active {
	background-color: #1b3f95;
	border: 1px solid #1b3f95;
	color: #fff;
}

.gravity-contact-form .gform_wrapper .hidden_label .gfield_label {
	display: none;
}

.gravity-contact-form .gform_wrapper .top_label div.ginput_container {
	margin-top: 0;
}

/* Placeholder colour */
.gravity-contact-form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file])::-webkit-input-placeholder {
	color: #333 !important;
}

.gravity-contact-form .gform_wrapper textarea::-webkit-input-placeholder {
	color: #333 !important;
}

.gravity-contact-form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file])::-moz-placeholder {
	color: #333 !important;
}

.gravity-contact-form .gform_wrapper textarea::-moz-placeholder {
	color: #333 !important;
}

.gravity-contact-form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):-ms-input-placeholder {
	color: #333 !important;
}

.gravity-contact-form .gform_wrapper textarea:-ms-input-placeholder {
	color: #333 !important;
}

.gravity-contact-form input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):-moz-placeholder {
	color: #333 !important;
}

.gravity-contact-form .gform_wrapper textarea:-moz-placeholder {
	color: #333 !important;
}



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

	.gform_wrapper .top_label li.gfield.gf_left_half,
	.gform_wrapper .top_label li.gfield.gf_left_half,
	.gform_wrapper .top_label li.gfield.gf_left_half,
	.gform_wrapper .top_label li.gfield.gf_right_half {
		margin-top: 0 !important;
	}
}


/*div.wpforms-container-full .wpforms-form input[type=text],
div.wpforms-container-full .wpforms-form input[type=email],
div.wpforms-container-full .wpforms-form textarea {
	border: 1px solid #e8eef1;
	border-radius: 0;
}
div.wpforms-container-full .wpforms-form .wpforms-submit-container {
	text-align: center;
}
div.wpforms-container-full .wpforms-form button.contact-submit[type=submit] {
	background-color: #3a8bea;
    border: 1px solid #3a8bea;
    color: #fff;
}
div.wpforms-container-full .wpforms-form button.contact-submit[type=submit]:hover,
div.wpforms-container-full .wpforms-form button.contact-submit[type=submit]:active,
div.wpforms-container-full .wpforms-form button.contact-submit[type=submit]:focus {
	background-color: #1b3f95;
    border: 1px solid #1b3f95;
    color: #fff;
}
@media only screen and (max-width: 767px) {
	div.wpforms-container-full .wpforms-form .wpforms-one-half {
		width: 100%;
		margin-left: 0;
		float: none;
	}
}*/

/****************************
PUBLICATIONS PAGINATION
*****************************/
.publications-pagination {
	margin: 30px 0;
	text-align: center;
}

.pagination-controls {
	margin-bottom: 15px;
}

.pagination-btn {
	display: inline-block;
	padding: 8px 12px;
	margin: 0 2px;
	background-color: #fff;
	border: 1px solid #ddd;
	color: #1569C1;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.pagination-btn:hover {
	background-color: #f5f5f5;
	border-color: #1569C1;
}

.pagination-btn.active {
	background-color: #1569C1;
	border-color: #1569C1;
	color: #fff;
}

.pagination-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.pagination-ellipsis {
	display: inline-block;
	padding: 8px 4px;
	color: #999;
}

.pagination-info {
	color: #666;
	font-size: 14px;
	margin-top: 10px;
}