.itgs-root,
.itgs-root * {
	box-sizing: border-box;
}

.itgs-root {
	--itgs-gold: #e9c97a;
	--itgs-gold-dark: #b88a35;
	--itgs-gold-soft: #f5e7bf;
	--itgs-maroon: #a72c30;
	--itgs-cream: #fff9ee;
	--itgs-paper: #ffffff;
	--itgs-text: #3f2b21;
	--itgs-muted: #746b62;
	--itgs-line: #eadfce;
	font-family: inherit;
	position: relative;
	z-index: 99998;
}

#itgs-root .itgs-trigger {
	position: fixed;
	right: 0;
	top: 48%;
	z-index: 99998;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 7px;
	width: 42px;
	height: 118px;
	padding: 11px 7px;
	border: 0;
	border-radius: 10px 0 0 10px;
	background: var(--itgs-maroon) !important;
	box-shadow: 0 5px 18px rgba(35, 24, 10, 0.22);
	color: #ffffff !important;
	font: 500 13px/1 Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	transform: translateY(-50%);
	cursor: pointer;
}

.itgs-mobile-trigger {
	display: none;
}

#itgs-root .itgs-trigger:hover,
#itgs-root .itgs-trigger:focus-visible {
	background: var(--itgs-gold) !important;
	color: var(--itgs-text) !important;
}

.itgs-trigger-label {
	display: block;
	letter-spacing: 0.14em;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}

.itgs-trigger-icon {
	display: block;
	width: 15px;
	height: 15px;
	border: 2px solid currentColor;
	border-radius: 50%;
	position: relative;
}

.itgs-trigger-icon::after {
	content: '';
	position: absolute;
	width: 7px;
	height: 2px;
	right: -6px;
	bottom: -3px;
	background: currentColor;
	transform: rotate(45deg);
	transform-origin: left center;
}

#itgs-root .itgs-panel {
	position: fixed;
	top: 86px;
	right: 18px;
	bottom: 20px;
	z-index: 99999;
	display: flex;
	flex-direction: column;
	width: min(360px, calc(100vw - 36px));
	min-height: 460px;
	border: 1px solid var(--itgs-line);
	border-radius: 14px;
	background: var(--itgs-paper);
	box-shadow: 0 18px 54px rgba(35, 24, 10, 0.24);
	color: var(--itgs-text);
	opacity: 0;
	visibility: hidden;
	transform: translateX(24px);
	transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
	overflow: hidden;
}

#itgs-root .itgs-panel.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}

.itgs-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 15px 16px 14px;
	border-bottom: 1px solid var(--itgs-line);
	background: var(--itgs-cream);
}

#itgs-root .itgs-header,
#itgs-root .itgs-content,
#itgs-root .itgs-footer {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	transform: none !important;
}

.itgs-header > div {
	flex: 1 1 auto;
	min-width: 0;
}

#itgs-root .itgs-eyebrow {
	margin: 0 0 2px;
	color: var(--itgs-text);
	font: 400 16px/1.15 Georgia, 'Times New Roman', serif !important;
	letter-spacing: 0;
	text-transform: none;
}

#itgs-root .itgs-header h2 {
	margin: 0;
	color: var(--itgs-muted);
	max-width: none;
	font: 400 12px/1.25 Arial, sans-serif !important;
	white-space: nowrap;
}

#itgs-root .itgs-minimise {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 1px solid var(--itgs-gold-dark) !important;
	border-radius: 50%;
	background: var(--itgs-gold) !important;
	color: var(--itgs-text) !important;
	font: 400 20px/1 Arial, sans-serif !important;
	text-transform: none !important;
	cursor: pointer;
}

.itgs-content {
	flex: 1;
	overflow-y: auto;
	overflow-x: hidden;
	min-width: 0;
	padding: 14px 16px;
}

.itgs-screen,
.itgs-options {
	width: 100%;
	min-width: 0;
}

.itgs-question {
	margin: 0 0 15px;
	color: var(--itgs-text);
	font: 400 19px/1.4 Georgia, 'Times New Roman', serif;
}

.itgs-options {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

#itgs-root .itgs-option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	width: 100%;
	min-height: 43px;
	padding: 9px 12px;
	border: 1px solid var(--itgs-gold-dark) !important;
	border-radius: 8px;
	background: var(--itgs-gold) !important;
	color: var(--itgs-text) !important;
	font: 400 14px/1.3 Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-align: left;
	margin-right: 0 !important;
	margin-left: 0 !important;
	transform: none !important;
	cursor: pointer;
}

#itgs-root .itgs-option > span:first-child {
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	text-indent: 0 !important;
	transform: none !important;
}

#itgs-root .itgs-option:hover,
#itgs-root .itgs-option:focus-visible {
	border-color: var(--itgs-gold-dark) !important;
	background: var(--itgs-gold-soft) !important;
	color: var(--itgs-text) !important;
}

.itgs-option-arrow {
	flex: 0 0 auto;
	color: var(--itgs-text);
	font-size: 20px;
	line-height: 1;
}

#itgs-root .itgs-back {
	margin: -5px 0 15px;
	padding: 6px 0;
	border: 0;
	background: transparent !important;
	color: var(--itgs-gold-dark);
	font: 600 13px/1.2 Arial, sans-serif !important;
	text-transform: none !important;
	cursor: pointer;
}

.itgs-selected-category {
	display: inline-block;
	margin: 0 0 14px auto;
	padding: 10px 13px;
	border-radius: 10px 10px 2px 10px;
	background: var(--itgs-cream);
	color: var(--itgs-text);
	font: 400 14px/1.35 Arial, sans-serif;
}

.itgs-ready-compass {
	display: block;
	width: auto;
	height: 142px;
	max-width: 135px;
	margin: 18px auto 14px;
	object-fit: contain;
}

.itgs-screen-ready {
	text-align: center;
}

.itgs-ready-copy {
	margin: 0 auto 7px;
	max-width: 310px;
	color: var(--itgs-muted);
	font: 400 15px/1.55 Arial, sans-serif;
}

.itgs-ready-callout {
	margin: 0 0 20px;
	color: var(--itgs-text);
	font: 400 24px/1.3 Georgia, 'Times New Roman', serif;
}

#itgs-root .itgs-primary,
#itgs-root .itgs-secondary {
	display: block;
	width: 100%;
	min-height: 44px;
	padding: 10px 14px;
	border-radius: 8px;
	font: 500 14px/1.2 Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	cursor: pointer;
}

#itgs-root .itgs-primary {
	margin-bottom: 9px;
	border: 1px solid var(--itgs-gold);
	background: var(--itgs-gold) !important;
	color: var(--itgs-text) !important;
}

#itgs-root .itgs-primary:hover,
#itgs-root .itgs-primary:focus-visible {
	background: var(--itgs-gold-soft) !important;
	border-color: var(--itgs-gold-dark) !important;
	color: var(--itgs-text) !important;
}

#itgs-root .itgs-secondary {
	border: 1px solid var(--itgs-gold-dark) !important;
	background: var(--itgs-cream) !important;
	color: var(--itgs-text) !important;
}

#itgs-root .itgs-secondary:hover,
#itgs-root .itgs-secondary:focus-visible {
	background: var(--itgs-gold-soft) !important;
	color: var(--itgs-text) !important;
}

.itgs-footer {
	padding: 12px 20px;
	border-top: 1px solid var(--itgs-line);
	color: var(--itgs-muted);
	font: 400 12px/1.3 Arial, sans-serif;
	text-align: center;
}

.itgs-trigger[hidden],
.itgs-screen[hidden] {
	display: none !important;
}

@media (max-width: 782px) {
	.itgs-trigger {
		display: none !important;
	}

	#itgs-root .itgs-mobile-trigger {
		position: fixed;
		right: 0;
		bottom: 0;
		z-index: 2147483000;
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 33.333%;
		min-height: 56px;
		padding: 10px 8px;
		border: 0;
		border-left: 1px solid rgba(255, 255, 255, 0.3);
		background: var(--itgs-maroon) !important;
		color: #ffffff !important;
		font: 500 14px/1.2 Arial, sans-serif !important;
		letter-spacing: 0 !important;
		text-transform: none !important;
		text-indent: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		margin: 0 !important;
		cursor: pointer;
	}

	#it-mobile-contact-bar {
		right: auto !important;
		left: 0 !important;
		z-index: 2147482999 !important;
		display: flex !important;
		width: 66.6667% !important;
		max-width: 66.6667% !important;
	}

	#it-mobile-contact-bar > *,
	#it-mobile-contact-open,
	#it-mobile-whatsapp {
		flex: 1 1 50% !important;
		width: 50% !important;
		max-width: none !important;
		min-width: 0 !important;
		min-height: 56px !important;
		padding: 10px 6px !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		font: 500 14px/1.2 Arial, sans-serif !important;
		letter-spacing: 0 !important;
		text-transform: none !important;
		text-indent: 0 !important;
	}

	#itgs-root .itgs-panel {
		top: 10px;
		right: 8px;
		bottom: 64px;
		left: 8px;
		width: auto;
		min-height: 0;
		border-radius: 12px 12px 0 0;
	}

	#itgs-root .itgs-eyebrow {
		font-size: 15px !important;
	}

	#itgs-root .itgs-header h2 {
		font-size: 11px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.itgs-panel {
		transition: none;
	}
}
