.shu-travel-globe-wrap,
.theshu-travels-globe-wrap {
	box-sizing: border-box;
	width: min(760px, 52vw) !important;
	height: min(760px, 52vw) !important;
	min-width: 340px !important;
	min-height: 340px !important;
	margin: 0 auto !important;
	position: relative !important;
	background: transparent !important;
	border: 0 !important;
	overflow: visible !important;
	text-align: center;
}

#theshu-travels-globe {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.shu-travel-globe-note,
.theshu-travels-note {
	margin-top: .5rem;
	color: var(--wp--preset--color--dark-grey, #666);
	font-size: var(--wp--preset--font-size--small, .875rem);
}

.shu-travel-globe-the2shu {
	align-items: center;
	display: grid;
	grid-template-columns: minmax(360px, 1.25fr) minmax(300px, .75fr);
	gap: clamp(30px, 6vw, 90px);
	min-height: min(820px, 90vh);
	overflow-x: clip;
	overflow-y: visible;
	padding: 30px clamp(18px, 4vw, 64px) 50px 0;
}

.shu-travel-globe-the2shu .shu-travel-globe-wrap {
	margin-left: max(-8vw, -120px) !important;
	margin-right: 0 !important;
	width: min(760px, 62vw) !important;
	height: min(760px, 62vw) !important;
}

.shu-travel-globe-search {
	max-width: 520px;
	padding: 60px 0;
}

.shu-travel-globe-search h2 {
	font-size: clamp(2rem, 4vw, 3.8rem);
}

.shu-travel-globe-search .search-form {
	display: flex;
	gap: .5rem;
}

.shu-travel-globe-search .search-field {
	border: 1px solid #aaa;
	border-radius: 99px;
	box-sizing: border-box;
	min-width: 0;
	padding: 14px 20px;
	width: 100%;
}

.shu-travel-globe-search .search-submit {
	background: #111;
	border: 0;
	border-radius: 99px;
	color: #fff;
	cursor: pointer;
	padding: 12px 20px;
}

.theshu-location-lookup {
	border: 1px solid var(--wp--preset--color--light-grey, #e5e5e5);
	border-radius: 16px;
	padding: clamp(1rem, 3vw, 1.75rem);
	margin: 0 0 2rem;
	background: #fafafa;
}

.theshu-location-lookup-row {
	display: flex;
	gap: .75rem;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 1rem;
}

.theshu-location-lookup input[type="text"] {
	flex: 1 1 260px;
	min-height: 42px;
	border: 1px solid var(--wp--preset--color--medium-grey, #999);
	border-radius: 8px;
	padding: .55rem .75rem;
	font: inherit;
}

.theshu-location-lookup .button {
	min-height: 42px;
	border-radius: 8px;
	padding: .55rem 1rem;
	cursor: pointer;
}

.theshu-location-status { margin-top: .875rem; font-size: .925rem; color: #666; }
.theshu-location-status.is-error { color: #9b1c1c; }
.theshu-location-result { margin-top: 1rem; display: grid; gap: .875rem; }
.theshu-location-preview code { white-space: normal; }

@media (max-width: 900px) {
	.shu-travel-globe-wrap,
	.theshu-travels-globe-wrap {
		width: min(86vw, 680px) !important;
		height: min(86vw, 680px) !important;
	}
	.shu-travel-globe-the2shu {
		grid-template-columns: 1fr;
		padding-right: 0;
	}
	.shu-travel-globe-the2shu .shu-travel-globe-wrap {
		margin-left: -10vw !important;
		margin-right: auto !important;
		width: min(104vw, 680px) !important;
		height: min(104vw, 680px) !important;
	}
	.shu-travel-globe-search {
		padding: 20px clamp(18px, 4vw, 64px) 80px;
		text-align: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	#theshu-travels-globe { animation: none !important; }
}
