/* Spinner and Alert styles - extracted from Bootstrap */
@keyframes spinner-border {
to {
transform: rotate(360deg);
}
}

.spinner-border {
display: inline-block;
width: 2rem;
height: 2rem;
vertical-align: -0.125em;
border-radius: 50%;
border: 0.25em solid currentcolor;
border-right-color: transparent;
animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
width: 1rem;
height: 1rem;
border-width: 0.2em;
}

.text-primary {
color: var(--color-copper) !important;
}

/* Bootstrap Grid Base Styles */
.container,
.container-fluid {
	width: 100%;
	padding-right: calc(var(--bs-gutter-x) * 0.5);
	padding-left: calc(var(--bs-gutter-x) * 0.5);
	margin-right: auto;
	margin-left: auto;
}

.row {
	--bs-gutter-x: 2.4rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(-1 * var(--bs-gutter-y));
	margin-right: calc(-0.5 * var(--bs-gutter-x));
	margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.row > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	padding-right: calc(var(--bs-gutter-x) * 0.5);
	padding-left: calc(var(--bs-gutter-x) * 0.5);
	margin-top: var(--bs-gutter-y);
}

:root {
	/* --body-bg: #ececeb; */
	--body-bg: var(--color-gray-alpha);
	--body-color: var(--color-dark-blue);
	--font-size-base: 2rem;
	--line-height-base: 1.3;
	--font-weight-base: 400;
	--container-padding-x: 4.8rem;
	--grid-gutter-x: 2.4rem;
	--section-padding-y: 6rem;
}
@media (max-width: 1439.98px) {
	:root {
		--container-padding-x: 3rem;
	}
}
@media (max-width: 991.98px) {
	:root {
		--font-size-base: 1.4rem;
		--line-height-base: 1.357;
		--grid-gutter-x: 2rem;
		--section-padding-y: 4rem;
	}
}
@media (max-width: 767.98px) {
	:root {
		--container-padding-x: 2rem;
		--section-padding-y: 3rem;
	}
}

html {
	font-size: 10px;
}
@media (max-width: 1727.98px) {
	html {
		font-size: 0.5787037037vw;
	}
}
@media (max-width: 991.98px) {
	html {
		font-size: 10px;
	}
}
@media (max-width: 374.98px) {
	html {
		font-size: 8px;
	}
}

body {
	margin: 0;
	font-size: var(--font-size-base);
	line-height: var(--line-height-base);
	font-weight: var(--font-weight-base);
	font-family: var(--font-redhat);
	background: var(--body-bg);
	color: var(--body-color);
	min-width: 320px;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: flex;
	flex-direction: column;
}
body.menu-opened, body.request-section-opened {
	overflow: hidden;
}
@media (max-width: 767.98px) {
	body {
		-webkit-text-size-adjust: none;
	}
}

input,
textarea,
select {
	color: var(--body-color);
	vertical-align: middle;
	font: 100% var(--font-redhat);
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
	-webkit-appearance: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

button::-moz-focus-inner,
input[type=reset]::-moz-focus-inner,
input[type=button]::-moz-focus-inner,
input[type=submit]::-moz-focus-inner {
	border: none;
	padding: 0;
}

form,
fieldset {
	margin: 0;
	padding: 0;
	border-style: none;
}

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
	outline: none !important;
}

.wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 100dvh;
}

.container, .container-fluid {
	--bs-gutter-x: calc(var(--container-padding-x) * 2);
}
@media (max-width: 1439.98px) {
	.container, .container-fluid {
		max-width: 100%;
	}
}
.container.container-regular {
	max-width: 100%;
}
@media (min-width: 992px) {
	.container.container-regular {
		--bs-gutter-x: calc(6.95% * 2);
	}
}

h1, .h1 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h1 a, .h1 a {
	color: inherit;
}
h1 a:hover, .h1 a:hover {
	color: inherit;
}

h2, .h2 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h2 a, .h2 a {
	color: inherit;
}
h2 a:hover, .h2 a:hover {
	color: inherit;
}

h3, .h3 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h3 a, .h3 a {
	color: inherit;
}
h3 a:hover, .h3 a:hover {
	color: inherit;
}

h4, .h4 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h4 a, .h4 a {
	color: inherit;
}
h4 a:hover, .h4 a:hover {
	color: inherit;
}

h5, .h5 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h5 a, .h5 a {
	color: inherit;
}
h5 a:hover, .h5 a:hover {
	color: inherit;
}

h6, .h6 {
	word-wrap: break-word;
	margin: 0 0 1.5rem;
}
h6 a, .h6 a {
	color: inherit;
}
h6 a:hover, .h6 a:hover {
	color: inherit;
}

h1, .h1 {
	font-size: 5rem;
	text-transform: uppercase;
}
@media (max-width: 991.98px) {
	h1, .h1 {
		font-size: 2.8rem;
	}
}

h2, .h2 {
	font-size: 4rem;
	text-transform: uppercase;
}
@media (max-width: 991.98px) {
	h2, .h2 {
		font-size: 2rem;
	}
}

h3, .h3 {
	font-family: var(--font-pearl-sans);
	font-size: 4rem;
	text-transform: uppercase;
}
@media (max-width: 991.98px) {
	h3, .h3 {
		font-size: 2rem;
	}
}

h4, .h4 {
	font-size: 20px;
}
@media (max-width: 991.98px) {
	h4, .h4 {
		font-size: 18px;
	}
}

h5, .h5 {
	font-size: 18px;
}
@media (max-width: 991.98px) {
	h5, .h5 {
		font-size: 16px;
	}
}

h6, .h6 {
	font-size: 16px;
}
@media (max-width: 991.98px) {
	h6, .h6 {
		font-size: 14px;
	}
}

p {
	margin: 0 0 2.6rem;
}
@media (max-width: 991.98px) {
	p {
		margin-bottom: 1.8998rem;
	}
}

img {
	max-width: 100%;
	height: auto;
}
img.lazyload {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}
img.lazyload.lazyloaded {
	opacity: 1;
	visibility: visible;
}

.row {
	--bs-gutter-x: var(--grid-gutter-x);
}

.page-full-height .main {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.page-full-height .main > * {
	flex-shrink: 0;
}

@media (min-width: 992px) {
	.bg-lg-white {
		background: #fff;
	}
}

.currentColor {
	color: currentColor !important;
}

.animation {
	--animation-offset: 3rem;
	--animation-transition-duration: 0.3s;
	opacity: 1;
	visibility: visible;
}
.animation:not(.shown):not(.showing) {
	opacity: 0;
	visibility: hidden;
}
.animation.showing {
	transition-duration: var(--animation-transition-duration);
	transition-property: opacity, visibility, transform;
}
.animation img.lazyload {
	opacity: 1;
	visibility: visible;
	transition-property: none;
}
.animation.animation-top {
	transform: translate(0, 0);
}
.animation.animation-top:not(.shown):not(.showing) {
	transform: translate(0, calc(var(--animation-offset) * -1));
}
.animation.animation-bottom {
	transform: translate(0, 0);
}
.animation.animation-bottom:not(.shown):not(.showing) {
	transform: translate(0, var(--animation-offset));
}
.animation.animation-left {
	transform: translate(0, 0);
}
.animation.animation-left:not(.shown):not(.showing) {
	transform: translate(calc(var(--animation-offset) * -1), 0);
}
.animation.animation-right {
	transform: translate(0, 0);
}
.animation.animation-right:not(.shown):not(.showing) {
	transform: translate(var(--animation-offset), 0);
}

.animation-child-elements {
	--animation-offset: 3rem;
	--animation-transition-delay: 0.3s;
	--animation-transition-duration: 0.5s;
}
.animation-child-elements:not(.shown):not(.showing) {
	opacity: 1;
	visibility: visible;
}
.animation-child-elements > * {
	opacity: 1;
	visibility: visible;
}
.animation-child-elements > *:not(.shown):not(.showing) {
	opacity: 0;
	visibility: hidden;
}
.animation-child-elements > *.showing {
	transition-delay: var(--animation-transition-delay);
	transition-duration: var(--animation-transition-duration);
	transition-property: opacity, visibility, transform;
}
.animation-child-elements.animation-top > * {
	transform: translate(0, 0);
}
.animation-child-elements.animation-top > *:not(.shown):not(.showing) {
	transform: translate(0, calc(var(--animation-offset) * -1));
}
.animation-child-elements.animation-bottom > * {
	transform: translate(0, 0);
}
.animation-child-elements.animation-bottom > *:not(.shown):not(.showing) {
	transform: translate(0, var(--animation-offset));
}
.animation-child-elements.animation-left > * {
	transform: translate(0, 0);
}
.animation-child-elements.animation-left > *:not(.shown):not(.showing) {
	transform: translate(calc(var(--animation-offset) * -1), 0);
}
.animation-child-elements.animation-right > * {
	transform: translate(0, 0);
}
.animation-child-elements.animation-right > *:not(.shown):not(.showing) {
	transform: translate(var(--animation-offset), 0);
}

.btn {
	--bs-btn-font-size: 1.2rem;
	--bs-btn-line-height: 2.333px;
	--bs-btn-font-weight: 700;
	--bs-btn-font-family: var(--font-pearl-sans);
	--bs-btn-padding-x: 2rem;
	--bs-btn-padding-y: 2rem;
	--bs-btn-border-width: 1px;
	--bs-btn-border-radius: 999.9rem;
	position: relative;
	display: inline-block;
	vertical-align: top;
	outline: 0 !important;
	letter-spacing: 0;
	text-transform: uppercase;
	min-width: 0;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s ease;
	white-space: normal;
	box-shadow: none;
	padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
	font-size: var(--bs-btn-font-size);
	line-height: var(--bs-btn-line-height);
	font-weight: var(--bs-btn-font-weight);
	font-family: var(--bs-btn-font-family);
	color: var(--bs-btn-color);
	background-color: var(--bs-btn-bg);
	border: solid var(--bs-btn-border-width) var(--bs-btn-border-color);
	border-radius: var(--bs-btn-border-radius);
}
.btn:hover, .btn:focus, .btn:active {
	text-decoration: none;
	box-shadow: none !important;
	color: var(--bs-btn-hover-color);
	background-color: var(--bs-btn-hover-bg);
	border-color: var(--bs-btn-hover-border-color);
}
.btn.disabled, .btn:disabled, .btn[disabled] {
	cursor: not-allowed;
	pointer-events: none;
	opacity: 0.5;
}
.btn-sm {
	--bs-btn-font-size: 1px;
	--bs-btn-line-height: 1.25;
	--bs-btn-padding-x: 1px;
	--bs-btn-padding-y: 1px;
}
.btn-outline-primary {
	--bs-btn-color: var(--color-copper);
	--bs-btn-bg: transparent;
	--bs-btn-border-color: var(--bs-btn-color);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--color-copper);
	--bs-btn-hover-border-color: var(--bs-btn-hover-bg);
	--bs-btn-active-color: var(--bs-btn-hover-color);
	--bs-btn-active-bg: var(--bs-btn-hover-bg);
	--bs-btn-active-border-color: var(--bs-btn-hover-border-color);
}
.btn-outline-secondary {
	--bs-btn-color: var(--color-dark-blue);
	--bs-btn-bg: transparent;
	--bs-btn-border-color: var(--color-dark-blue);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--color-dark-blue);
	--bs-btn-hover-border-color: var(--color-dark-blue);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--color-dark-blue);
	--bs-btn-active-border-color: var(--color-dark-blue);
}
.btn input {
	position: absolute;
	z-index: 12;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border: 0;
	width: 100%;
	height: 100%;
	background: none;
	opacity: 0;
	padding: 0;
	overflow: hidden;
	text-indent: -9999px;
}
@media (max-width: 991.98px) {
	.btn {
		--bs-btn-font-size: 1rem;
		/* --bs-btn-line-height: 1.4; */
		--bs-btn-padding-x: 2rem;
		--bs-btn-padding-y: 2rem;
	}
}

.btn-menu {
	--btn-menu-width: 3rem;
	--btn-menu-height: var(--btn-menu-width);
	--btn-menu-border-width: 0;
	--btn-menu-border-radius: 0;
	--btn-menu-burger-ico-line-width: 1.8rem;
	--btn-menu-burger-active-ico-line-width: 2.3rem;
	--btn-menu-burger-ico-line-height: 0.2rem;
	--btn-menu-burger-ico-line-distance: 0.4rem;
	--btn-menu-burger-ico-line-border-radius: 0;
	--btn-menu-burger-ico-line-deg: 45deg;
	--btn-menu-color: currentColor;
	--btn-menu-bg-color: transparent;
	--btn-menu-border-color: transparent;
	--btn-menu-burger-ico-color: var(--btn-menu-color);
	--btn-menu-hover-color: var(--btn-menu-color);
	--btn-menu-hover-bg-color: var(--btn-menu-bg-color);
	--btn-menu-hover-border-color: var(--btn-menu-border-color);
	--btn-menu-hover-opacity: 1;
	display: inline-block;
	vertical-align: top;
	position: relative;
	overflow: hidden;
	width: var(--btn-menu-width);
	max-width: var(--btn-menu-width);
	flex: 0 0 var(--btn-menu-width);
	height: var(--btn-menu-height);
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	color: var(--btn-menu-color);
	background: var(--btn-menu-bg-color);
	border: var(--btn-menu-border-width) solid var(--btn-menu-border-color);
	border-radius: var(--btn-menu-border-radius);
	cursor: pointer;
	font-size: 0;
	line-height: 0;
}
.btn-menu > span {
	position: absolute;
	z-index: 5;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: var(--btn-menu-burger-ico-line-width);
	max-width: 100%;
	height: var(--btn-menu-burger-ico-line-height);
	background-color: currentColor;
	border-radius: var(--btn-menu-burger-ico-line-border-radius);
	transition: all 0.3s ease;
}
.btn-menu > span:nth-child(1):not(.menu-opened .btn-menu > span:nth-child(1)) {
	margin-top: calc((var(--btn-menu-burger-ico-line-distance) + var(--btn-menu-burger-ico-line-height)) * -1);
}
.menu-opened .btn-menu > span:nth-child(1) {
	transform: translate(-50%, -50%) rotate(var(--btn-menu-burger-ico-line-deg));
	width: var(--btn-menu-burger-active-ico-line-width);
}
.menu-opened .btn-menu > span:nth-child(2) {
	opacity: 0;
}
.btn-menu > span:nth-child(3):not(.menu-opened .btn-menu > span:nth-child(3)) {
	margin-top: calc(var(--btn-menu-burger-ico-line-distance) + var(--btn-menu-burger-ico-line-height));
}
.menu-opened .btn-menu > span:nth-child(3) {
	transform: translate(-50%, -50%) rotate(calc(var(--btn-menu-burger-ico-line-deg) * -1));
	width: var(--btn-menu-burger-active-ico-line-width);
}

.btn-arrow {
	display: inline-block;
	vertical-align: top;
	position: relative;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	background: none;
	border: 0;
	padding: 0;
	width: 4.8rem;
	height: 4.8rem;
	flex-shrink: 0;
	color: var(--color-copper);
}
.btn-arrow::before {
	content: "";
	position: absolute;
	z-index: 5;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	transform: translate(-50%, -50%);
	-webkit-mask-image: url(../images/arrow-right-brown-02.svg);
	        mask-image: url(../images/arrow-right-brown-02.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	width: 100%;
	height: 100%;
	background-color: currentColor;
}
.btn-arrow:hover {
	color: var(--color-dark-blue);
}
@media (max-width: 991.98px) {
	.btn-arrow {
		width: 3.8rem;
		height: 3.8rem;
	}
}

.btn-arrow-circle {
	display: inline-block;
	vertical-align: top;
	width: 5.7rem;
	height: 5.7rem;
	padding: 0;
	position: relative;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	border-radius: 100%;
	color: var(--color-copper);
	background-color: var(--color-gray-alpha);
	border: 0;
	text-decoration: none;
}
.btn-arrow-circle::before {
	content: "";
	position: absolute;
	z-index: 5;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	transform: translate(-50%, -50%);
	-webkit-mask-image: url(../images/arrow-right-brown-01.svg);
	        mask-image: url(../images/arrow-right-brown-01.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 2.8rem 2.8rem;
	        mask-size: 2.8rem 2.8rem;
	width: 2.8rem;
	height: 2.8rem;
	background-color: currentColor;
}
.btn-arrow-circle:hover {
	color: var(--color-copper);
	background-color: #fff;
}
.btn-arrow-circle.disabled, .btn-arrow-circle:disabled, .btn-arrow-circle[disabled] {
	cursor: not-allowed;
	pointer-events: none;
	background-color: var(--color-gray-alpha-70);
}
@media (max-width: 991.98px) {
	.btn-arrow-circle {
		width: 4.6rem;
		height: 4.6rem;
		color: var(--color-dark-blue);
		background-color: transparent;
	}
	.btn-arrow-circle::before {
		-webkit-mask-size: 2.2rem 2.2rem;
		        mask-size: 2.2rem 2.2rem;
		width: 2.2rem;
		height: 2.2rem;
	}
	.btn-arrow-circle.disabled, .btn-arrow-circle:disabled, .btn-arrow-circle[disabled] {
		background-color: transparent;
	}
}

.btn-plus {
	--btn-plus-size: 4.7rem;
	--btn-plus-lines-width: 1px;
	--btn-plus-color: var(--color-copper);
	display: inline-block;
	vertical-align: top;
	position: relative;
	overflow: hidden;
	width: var(--btn-plus-size);
	height: var(--btn-plus-size);
	flex-shrink: 0;
	color: var(--btn-plus-color);
	background: none;
	padding: 0;
	font-size: 0;
	line-height: 0;
}
.btn-plus::before, .btn-plus::after {
	content: "";
	position: absolute;
	z-index: 5;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-color: currentColor;
}
.btn-plus::before {
	width: 100%;
	height: var(--btn-plus-lines-width);
}
.btn-plus::after {
	width: var(--btn-plus-lines-width);
	height: 100%;
}
.btn-plus:hover {
	color: var(--color-dark-blue);
}
@media (max-width: 991.98px) {
	.btn-plus {
		--btn-plus-size: 3.7rem;
	}
}

.form-control {
	--input-height: 4.4rem;
	--input-border-width: 0 0 1px;
	--input-border-radius: 0;
	--input-disabled-opacity: 0.5;
	--input-font-size: 2rem;
	--input-font-weight: 400;
	--input-font-family: var(--font-redhat);
	--input-padding-x: 0;
	--input-padding-y: 0.2rem;
	--input-text-color: var(--color-dark-blue);
	--input-placeholder-color: var(--input-text-color);
	--input-bg-color: transparent;
	--input-border-color: var(--input-text-color);
	--input-text-active-color: var(--input-text-color);
	--input-bg-active-color: var(--input-bg-color);
	--input-border-active-color: var(--input-border-color);
	display: block;
	width: 100%;
	height: var(--input-height);
	font: var(--input-font-weight) var(--input-font-size) var(--input-font-family);
	color: var(--input-text-color);
	background-color: var(--input-bg-color);
	border: solid var(--input-border-color);
	border-width: var(--input-border-width);
	padding: var(--input-padding-y) var(--input-padding-x);
	margin: 0;
	box-shadow: none;
	border-radius: var(--input-border-radius);
	-webkit-appearance: none;
}
.form-control::-moz-placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.form-control::placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.form-control:focus, .form-control:active {
	outline: none;
	color: var(--input-text-active-color);
	background-color: var(--input-bg-active-color);
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
/* Exclude request-section & explore-form from unified focus */
.request-section .form-control:focus,
.request-section .form-control:active,
.explore-form .form-control:focus,
.explore-form .form-control:active {
	border: solid var(--input-border-active-color);
	border-width: var(--input-border-width);
	box-shadow: none;
}
@media (max-width: 991.98px) {
	.form-control {
		--input-height: 5.1rem;
		--input-font-size: 1.6rem;
	}
}

.form-control-regular {
	--input-height: 3.9rem;
	--input-border-width: 1px;
	--input-border-radius: 0.8rem;
	--input-disabled-opacity: 0.5;
	--input-font-size: 2rem;
	--input-font-weight: 400;
	--input-font-family: var(--font-redhat);
	--input-padding-x: 2rem;
	--input-padding-y: 0.2rem;
	--input-text-color: var(--color-dark-blue);
	--input-placeholder-color: var(--input-text-color);
	--input-bg-color: var(--color-gray-alpha-35);
	--input-border-color: transparent;
	--input-text-active-color: var(--input-text-color);
	--input-bg-active-color: var(--input-bg-color);
	--input-border-active-color: var(--input-border-color);
	display: block;
	width: 100%;
	height: var(--input-height);
	font: var(--input-font-weight) var(--input-font-size) var(--input-font-family);
	color: var(--input-text-color);
	background-color: var(--input-bg-color);
	border: 1px solid transparent;
	padding: var(--input-padding-y) var(--input-padding-x);
	margin: 0;
	box-shadow: none;
	border-radius: var(--input-border-radius);
	-webkit-appearance: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.form-control-regular::-moz-placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.form-control-regular::placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.form-control-regular:focus, .form-control-regular:active {
	outline: none;
	color: var(--input-text-active-color);
	background-color: var(--input-bg-active-color);
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
@media (max-width: 991.98px) {
	.form-control-regular {
		--input-height: 4rem;
		--input-border-radius: 0.6rem;
		--input-font-size: 1.4rem;
		--input-padding-x: 1.6rem;
	}
}

.select-default {
	--select-default-height: 4.6rem;
	--select-default-border-width: 0rem;
	--select-default-border-radius: 0;
	--select-default-disabled-opacity: 0.5;
	--select-default-font-size: 2rem;
	--select-default-line-height: 1.25;
	--select-default-font-weight: 400;
	--select-default-font-family: var(--font-redhat);
	--select-default-padding-x: 0;
	--select-default-padding-x-right: 2.5rem;
	--select-default-padding-y: calc((var(--select-default-height) - (var(--select-default-border-width) * 2) - (var(--select-default-font-size) * var(--select-default-line-height))) * 0.5);
	--select-default-arrow-width: 1.8rem;
	--select-default-arrow-height: 1.1rem;
	--select-default-arrow-right: 0rem;
	--select-default-arrow-image: url(../images/arrow-down-dark-blue-01.svg);
	--select-default-text-color: var(--color-dark-blue);
	--select-default-border-color: var(--select-default-text-color);
	--select-default-background-color: transparent;
	display: block;
	width: 100%;
	height: var(--select-default-height);
	min-height: 0;
	font: var(--select-default-font-weight) var(--select-default-font-size)/var(--select-default-line-height) var(--select-default-font-family);
	padding: var(--select-default-padding-y) var(--select-default-padding-x-right) var(--select-default-padding-y) var(--select-default-padding-x);
	margin: 0;
	border: solid var(--select-default-border-color);
	border-width: 0 0 1px;
	border-radius: var(--select-default-border-radius);
	color: var(--select-default-text-color);
	box-shadow: none;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-image: var(--select-default-arrow-image);
	background-color: var(--select-default-background-color);
	background-repeat: no-repeat;
	background-position: calc(100% - var(--select-default-arrow-right)) 50%;
	background-size: var(--select-default-arrow-width) var(--select-default-arrow-height);
	outline: 0;
}
.select-default::-ms-expand {
	display: none;
}
.select-default::-moz-placeholder {
	color: inherit;
	opacity: 1;
}
.select-default::placeholder {
	color: inherit;
	opacity: 1;
}
.select-default:focus {
	outline: none;
	box-shadow: none;
}
.select-default.disabled, .select-default:disabled, .select-default[disabled] {
	cursor: not-allowed;
	pointer-events: none;
	opacity: var(--select-default-disabled-opacity);
}
.select-default.select-default-lg {
	--select-default-height: 6.7rem;
	--select-default-font-size: 5rem;
	--select-default-line-height: 1.1;
	--select-default-font-weight: 100;
	--select-default-font-family: var(--font-pearl-sans);
}
@media (max-width: 991.98px) {
	.select-default {
		--select-default-height: 5.1rem;
		--select-default-font-size: 1.6rem;
		--select-default-padding-x-right: 3rem;
		--select-default-arrow-width: 1.4rem;
		--select-default-arrow-height: 0.8rem;
		--select-default-arrow-right: 0.5rem;
	}
	.select-default.select-default-lg {
		--select-default-height: 5.2rem;
		--select-default-font-size: 2.8rem;
		--select-default-font-weight: 400;
	}
}

.select-default-regular {
	--select-default-regular-height: 3.9rem;
	--select-default-regular-border-width: 0rem;
	--select-default-regular-border-radius: 0.8rem;
	--select-default-regular-disabled-opacity: 0.5;
	--select-default-regular-font-size: 2rem;
	--select-default-regular-line-height: 1.25;
	--select-default-regular-font-weight: 400;
	--select-default-regular-font-family: var(--font-redhat);
	--select-default-regular-padding-x: 1.6rem;
	--select-default-regular-padding-x-right: calc(var(--select-default-regular-height) - var(--select-default-regular-border-width) * 2);
	--select-default-regular-padding-y: calc((var(--select-default-regular-height) - (var(--select-default-regular-border-width) * 2) - (var(--select-default-regular-font-size) * var(--select-default-regular-line-height))) * 0.5);
	--select-default-regular-arrow-width: 1.6rem;
	--select-default-regular-arrow-height: 1rem;
	--select-default-regular-arrow-right: 1.5rem;
	--select-default-regular-arrow-image: url(../images/arrow-down-dark-blue-01.svg);
	--select-default-regular-text-color: var(--color-dark-blue);
	--select-default-regular-border-color: transparent;
	--select-default-regular-background-color: var(--color-gray-alpha-35);
	display: block;
	width: 100%;
	height: var(--select-default-regular-height);
	min-height: 0;
	font: var(--select-default-regular-font-weight) var(--select-default-regular-font-size)/var(--select-default-regular-line-height) var(--select-default-regular-font-family);
	padding: var(--select-default-regular-padding-y) var(--select-default-regular-padding-x-right) var(--select-default-regular-padding-y) var(--select-default-regular-padding-x);
	margin: 0;
	border: var(--select-default-regular-border-width) solid var(--select-default-regular-border-color);
	border-radius: var(--select-default-regular-border-radius);
	color: var(--select-default-regular-text-color);
	box-shadow: none;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-image: var(--select-default-regular-arrow-image);
	background-color: var(--select-default-regular-background-color);
	background-repeat: no-repeat;
	background-position: calc(100% - var(--select-default-regular-arrow-right)) 50%;
	background-size: var(--select-default-regular-arrow-width) var(--select-default-regular-arrow-height);
	outline: 0;
}
.select-default-regular::-ms-expand {
	display: none;
}
.select-default-regular::-moz-placeholder {
	color: inherit;
	opacity: 1;
}
.select-default-regular::placeholder {
	color: inherit;
	opacity: 1;
}
.select-default-regular:focus {
	outline: none;
	box-shadow: none;
}
.select-default-regular.disabled, .select-default-regular:disabled, .select-default-regular[disabled] {
	cursor: not-allowed;
	pointer-events: none;
	opacity: var(--select-default-regular-disabled-opacity);
}
@media (max-width: 991.98px) {
	.select-default-regular {
		--select-default-regular-height: 4rem;
		--select-default-regular-border-radius: 0.6rem;
		--select-default-regular-font-size: 1.4rem;
	}
}

.nice-select {
	--nice-select-height: 4rem;
	--nice-select-border-width: 1px;
	--nice-select-border-radius: 0.8rem;
	--nice-select-disabled-opacity: 0.5;
	--nice-select-font-size: 1.5rem;
	--nice-select-line-height: 1.25;
	--nice-select-font-weight: 400;
	--nice-select-font-family: var(--font-redhat);
	--nice-select-padding-x: 1.6rem;
	--nice-select-padding-x-right: var(--nice-select-height);
	--nice-select-arrow-offset-right: 1.5rem;
	--nice-select-arrow-size: 1.2rem;
	--nice-select-arrow-width: 1px;
	--nice-select-text-color: var(--color-dark-blue);
	--nice-select-placeholder-text-color: var(--nice-select-text-color);
	--nice-select-bg-color: #f2f2f1;
	--nice-select-border-color: transparent;
	--nice-select-arrow-color: var(--nice-select-text-color);
	--nice-select-dropdown-border-radius: var(--nice-select-border-radius);
	--nice-select-dropdown-z-index: 50;
	--nice-select-dropdown-top-offset: 0;
	--nice-select-dropdown-border-width: var(--nice-select-border-width);
	--nice-select-dropdown-box-shadow: none;
	--nice-select-dropdown-max-height: 20rem;
	--nice-select-dropdown-option-font-size: var(--nice-select-font-size);
	--nice-select-dropdown-option-line-height: var(--nice-select-line-height);
	--nice-select-dropdown-option-font-weight: var(--nice-select-font-weight);
	--nice-select-dropdown-option-font-family: var(--nice-select-font-family);
	--nice-select-dropdown-option-padding-x: var(--nice-select-padding-x);
	--nice-select-dropdown-option-padding-y: calc((var(--nice-select-height) - (var(--nice-select-border-width) * 2) - (var(--nice-select-font-size) * var(--nice-select-line-height))) * 0.5);
	--nice-select-dropdown-bg-color: var(--nice-select-bg-color);
	--nice-select-dropdown-border-color: var(--nice-select-border-color);
	--nice-select-dropdown-option-color: var(--nice-select-text-color);
	--nice-select-dropdown-option-hover-color: var(--color-copper);
	--nice-select-dropdown-option-hover-bg-color: var(--nice-select-dropdown-bg-color);
	--nice-select-dropdown-option-selected-color: var(--nice-select-dropdown-option-hover-color);
	--nice-select-dropdown-option-selected-bg-color: var(--nice-select-dropdown-option-hover-bg-color);
	width: 100%;
	height: var(--nice-select-height);
	color: var(--nice-select-placeholder-text-color);
	background-color: var(--nice-select-bg-color);
	border: var(--nice-select-border-width) solid var(--nice-select-border-color);
	border-radius: var(--nice-select-border-radius);
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	font-size: var(--nice-select-font-size);
	line-height: var(--nice-select-line-height);
	font-weight: var(--nice-select-font-weight);
	font-family: var(--nice-select-font-family);
	outline: none;
	position: relative;
	text-align: left;
	transition: all 0.3s ease;
	padding-left: var(--nice-select-padding-x);
	padding-right: var(--nice-select-padding-x-right);
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	white-space: nowrap;
	cursor: pointer;
}
.nice-select:hover {
    border-color: transparent;
}
.nice-select.has-error {
	border-color: var(--color-error) !important;
	border-width: 2px !important;
}
.nice-select::before {
	content: "";
	/* display: var(--nice-select-arrow-via-css); */
	position: absolute;
	z-index: 5;
	top: 50%;
	right: var(--nice-select-arrow-offset-right);
	transform: translate(0, -50%) rotate(45deg);
	width: var(--nice-select-arrow-size);
	height: var(--nice-select-arrow-size);
	border: solid var(--nice-select-arrow-color);
	border-width: 0 var(--nice-select-arrow-width) var(--nice-select-arrow-width) 0;
	margin-top: calc(var(--nice-select-arrow-size) * -0.3);
	transition: all 0.3s ease;
}
.nice-select::after {
	content: "";
	/* display: var(--nice-select-arrow-via-image); */
	display: none;
	position: absolute;
	z-index: 5;
	top: 50%;
	right: var(--nice-select-arrow-offset-right);
	transform: translate(0, -50%);
	width: var(--nice-select-image-arrow-width);
	height: var(--nice-select-image-arrow-height);
	-webkit-mask-image: var(--nice-select-image-arrow-url);
	        mask-image: var(--nice-select-image-arrow-url);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: var(--nice-select-image-arrow-width) var(--nice-select-image-arrow-height);
	        mask-size: var(--nice-select-image-arrow-width) var(--nice-select-image-arrow-height);
	color: var(--nice-select-arrow-color);
	background-color: currentColor;
	transition: all 0.3s ease;
}
.nice-select .current {
	display: block;
	position: relative;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.nice-select .nice-select-dropdown {
	position: absolute;
	z-index: var(--nice-select-dropdown-z-index);
	top: 100%;
	left: calc(var(--nice-select-border-width) * -1);
	right: calc(var(--nice-select-border-width) * -1);
	margin-top: var(--nice-select-dropdown-top-offset);
	background-color: var(--nice-select-dropdown-bg-color);
	border: var(--nice-select-dropdown-border-width) solid var(--nice-select-dropdown-border-color);
	border-radius: var(--nice-select-dropdown-border-radius);
	box-shadow: var(--nice-select-dropdown-box-shadow);
	transform-origin: 50% 0;
	transform: scale(0.75) translateY(var(--nice-select-height));
	transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out, border-color 0.2s ease, box-shadow 0.2s ease;
	pointer-events: none;
	opacity: 0;
}
.nice-select .list {
	list-style: none;
	margin: 0;
	padding: 0;
	border-radius: var(--nice-select-dropdown-border-radius);
	overflow-x: hidden;
	overflow-y: auto;
	max-height: var(--nice-select-dropdown-max-height);
}
.nice-select .option {
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: left;
	outline: none;
	font-size: var(--nice-select-dropdown-option-font-size);
	line-height: var(--nice-select-dropdown-option-line-height);
	font-weight: var(--nice-select-dropdown-option-font-weight);
	font-family: var(--nice-select-dropdown-option-font-family);
	padding: var(--nice-select-dropdown-option-padding-y) var(--nice-select-dropdown-option-padding-x);
	color: var(--nice-select-dropdown-option-color);
}
.nice-select .option:hover, .nice-select .option.focus {
	color: var(--nice-select-dropdown-option-hover-color);
	background-color: var(--nice-select-dropdown-option-hover-bg-color);
}
.nice-select .option.selected, .nice-select .option.selected.focus {
	color: var(--nice-select-dropdown-option-selected-color);
	background-color: var(--nice-select-dropdown-option-selected-bg-color);
}
.nice-select .option.disabled {
	display: none;
}
.nice-select.open {
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
.nice-select.open::before {
	transform: translate(0, -50%) rotate(225deg);
	margin-top: calc(var(--nice-select-arrow-size) * 0.3);
}
.nice-select.open::after {
	transform: translate(0, -50%) rotate(180deg);
}
.nice-select.open .nice-select-dropdown {
	opacity: 1;
	pointer-events: all;
	transform: scale(1) translateY(0);
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
/* Exclude request-section dropdown from copper effect */
.request-section .nice-select.open .nice-select-dropdown {
	border-color: var(--nice-select-dropdown-border-color);
	box-shadow: var(--nice-select-dropdown-box-shadow);
}
.nice-select.filled {
	color: var(--nice-select-text-color);
}
.nice-select.disabled {
	cursor: not-allowed;
	pointer-events: none;
	opacity: var(--nice-select-disabled-opacity);
}
@media (max-width: 991.98px) {
	.nice-select {
		--nice-select-height: 4rem;
		--nice-select-border-radius: 0.6rem;
		--nice-select-font-size: 1.4rem;
	}
}

.custom-radio {
	--custom-radio-margin-bottom: 0;
	--custom-radio-font-size: 1.2rem;
	--custom-radio-line-height: 1.333;
	--custom-radio-font-weight: 700;
	--custom-radio-font-family: var(--font-pearl-sans);
	--custom-radio-text-color: var(--color-dark-blue);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	position: relative;
	gap: 0 0.8rem;
	color: var(--custom-radio-text-color);
	font-size: var(--custom-radio-font-size);
	line-height: var(--custom-radio-line-height);
	font-weight: var(--custom-radio-font-weight);
	font-family: var(--custom-radio-font-family);
	text-transform: uppercase;
	margin: 0 0 var(--custom-radio-margin-bottom);
	position: relative;
	padding-inline-start: 2.4rem;
}
.custom-radio input[type=radio] {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: -999.9rem;
}
.custom-radio input[type=radio] + .custom-radio-btn {
	position: absolute;
	z-index: 5;
	inset-block-start: 50%;
	inset-inline-start: 0;
	transform: translate(0, -50%);
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 100%;
	background-color: rgba(182, 128, 98, 0.2);
}
.custom-radio input[type=radio] + .custom-radio-btn::before {
	content: "";
	position: absolute;
	z-index: 5;
	inset: 0.2rem;
	border-radius: 100%;
	background-color: var(--color-copper);
	transition: all 0.3s ease;
	opacity: 0;
}
.custom-radio input[type=radio] ~ .custom-radio-ico {
	position: relative;
	overflow: hidden;
	width: 3.2rem;
	height: 3.2rem;
	flex-shrink: 0;
}
.custom-radio input[type=radio] ~ .custom-radio-ico img {
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
}
.custom-radio input[type=radio]:checked + .custom-radio-btn::before {
	opacity: 1;
}
@media (max-width: 991.98px) {
	.custom-radio {
		padding-inline-start: 3.1rem;
	}
	.custom-radio input[type=radio] + .custom-radio-btn {
		inset-inline-start: 0.7rem;
	}
}

.custom-checkbox {
	--custom-checkbox-margin-bottom: 0;
	--custom-checkbox-text-left-offset: 2.4rem;
	--custom-checkbox-width: 1.6rem;
	--custom-checkbox-height: var(--custom-checkbox-width);
	--custom-checkbox-border-width: 0.2rem;
	--custom-checkbox-top: 0.2rem;
	--custom-checkbox-left: 0;
	--custom-checkbox-font-size: 1.6rem;
	--custom-checkbox-line-height: 1.323;
	--custom-checkbox-font-weight: 400;
	--custom-checkbox-font-family: var(--font-redhat);
	--custom-checkbox-text-color: var(--color-dark-blue);
	--custom-checkbox-bg-color: #f0e6e0;
	--custom-checkbox-border-color: var(--custom-checkbox-bg-color);
	--custom-checkbox-checked-bg-color: var(--color-copper);
	--custom-checkbox-checked-border-color: var(--custom-checkbox-border-color);
	--custom-checkbox-link-color: var(--custom-checkbox-text-color);
	--custom-checkbox-link-text-decoration: none;
	--custom-checkbox-link-hover-color: var(--custom-checkbox-text-color);
	--custom-checkbox-link-hover-text-decoration: underline;
	display: block;
	position: relative;
	color: var(--custom-checkbox-text-color);
	font-size: var(--custom-checkbox-font-size);
	line-height: var(--custom-checkbox-line-height);
	font-weight: var(--custom-checkbox-font-weight);
	font-family: var(--custom-checkbox-font-family);
	margin: 0 0 var(--custom-checkbox-margin-bottom);
}
.custom-checkbox input[type=checkbox] {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: -999.9rem;
}
.custom-checkbox input[type=checkbox] + span {
	display: block;
	position: relative;
	padding-left: var(--custom-checkbox-text-left-offset);
}
.custom-checkbox input[type=checkbox] + span::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: var(--custom-checkbox-top);
	left: var(--custom-checkbox-left);
	width: var(--custom-checkbox-width);
	height: var(--custom-checkbox-height);
	background-color: var(--custom-checkbox-bg-color);
	border: var(--custom-checkbox-border-width) solid var(--custom-checkbox-border-color);
	transition: all 0.3s ease;
	border-radius: 100%;
}
.custom-checkbox input[type=checkbox] + span a {
	color: var(--custom-checkbox-link-color);
	-webkit-text-decoration: var(--custom-checkbox-link-text-decoration);
	        text-decoration: var(--custom-checkbox-link-text-decoration);
}
.custom-checkbox input[type=checkbox] + span a:hover {
	color: var(--custom-checkbox-link-hover-color);
	-webkit-text-decoration: var(--custom-checkbox-link-hover-text-decoration);
	        text-decoration: var(--custom-checkbox-link-hover-text-decoration);
}
.custom-checkbox input[type=checkbox]:checked + span::before {
	background-color: var(--custom-checkbox-checked-bg-color);
	border-color: var(--custom-checkbox-checked-border-color);
}
@media (max-width: 991.98px) {
	.custom-checkbox {
		--custom-checkbox-top: 0.2rem;
		--custom-checkbox-font-size: 1.2rem;
		--custom-checkbox-line-height: 1.333;
	}
}

.custom-bs-dropdown {
	--custom-bs-dropdown-height: 4.5rem;
	--custom-bs-dropdown-border-width: 0rem;
	--custom-bs-dropdown-padding-x: 0;
	--custom-bs-dropdown-border-radius: 0;
	--custom-bs-dropdown-font-size: 2rem;
	--custom-bs-dropdown-line-height: 1.25;
	--custom-bs-dropdown-font-weight: 400;
	--custom-bs-dropdown-font-family: var(--font-redhat);
	--custom-bs-dropdown-color: var(--color-dark-blue);
	position: relative;
}
.custom-bs-dropdown .dropdown-toggle {
	--dropdown-toggle-border-width: 0 0 1px;
	--dropdown-toggle-padding-x: var(--custom-bs-dropdown-padding-x);
	--dropdown-toggle-padding-x-right: var(--custom-bs-dropdown-height);
	--dropdown-toggle-padding-y: calc((var(--custom-bs-dropdown-height) - (var(--custom-bs-dropdown-border-width) * 2) - (var(--custom-bs-dropdown-font-size) * var(--custom-bs-dropdown-line-height))) * 0.5);
	--dropdown-toggle-font-size: var(--custom-bs-dropdown-font-size);
	--dropdown-toggle-line-height: var(--custom-bs-dropdown-line-height);
	--dropdown-toggle-font-weight: var(--custom-bs-dropdown-font-weight);
	--dropdown-toggle-font-family: var(--custom-bs-dropdown-font-family);
	--dropdown-toggle-arrow-size: 1rem;
	--dropdown-toggle-arrow-line-width: 1px;
	--dropdown-toggle-arrow-right: 0.5rem;
	--dropdown-toggle-text-color: var(--custom-bs-dropdown-color);
	--dropdown-toggle-bg-color: transparent;
	--dropdown-toggle-border-color: var(--dropdown-toggle-text-color);
	--dropdown-toggle-arrow-color: var(--dropdown-toggle-text-color);
	white-space: normal;
	display: block;
	position: relative;
	width: 100%;
	color: var(--custom-bs-dropdown-color);
	background: var(--dropdown-toggle-bg-color);
	border: solid var(--dropdown-toggle-border-color);
	border-width: var(--dropdown-toggle-border-width);
	padding: var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x-right) var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x);
	font-size: var(--dropdown-toggle-font-size);
	line-height: var(--dropdown-toggle-line-height);
	font-weight: var(--dropdown-toggle-font-weight);
	font-family: var(--dropdown-toggle-font-family);
	text-align: left;
}
.custom-bs-dropdown .dropdown-toggle::after {
	content: "";
	position: absolute;
	z-index: 5;
	top: 50%;
	right: var(--dropdown-toggle-arrow-right);
	transform: translate(0, -50%) rotate(45deg);
	vertical-align: top;
	width: var(--dropdown-toggle-arrow-size);
	height: var(--dropdown-toggle-arrow-size);
	margin: calc(var(--dropdown-toggle-arrow-size) * -0.25) 0 0;
	border: solid var(--dropdown-toggle-arrow-color);
	border-width: 0 var(--dropdown-toggle-arrow-line-width) var(--dropdown-toggle-arrow-line-width) 0;
	transition: all 0.3s ease;
}
.custom-bs-dropdown .dropdown-menu {
	--bs-dropdown-zindex: 1000;
	--bs-dropdown-min-width: 100%;
	--bs-dropdown-max-width: 100%;
	--bs-dropdown-spacer: 0;
	--bs-dropdown-divider-margin-y: 0;
	--bs-dropdown-box-shadow: none;
	--bs-dropdown-border-width: var(--custom-bs-dropdown-border-width);
	--bs-dropdown-border-radius: var(--custom-bs-dropdown-border-radius);
	--bs-dropdown-inner-border-radius: var(--bs-dropdown-border-radius);
	--bs-dropdown-item-border-radius: var(--bs-dropdown-border-radius);
	--bs-dropdown-font-size: var(--custom-bs-dropdown-font-size);
	--bs-dropdown-link-font-size: var(--bs-dropdown-font-size);
	--bs-dropdown-link-line-height: var(--custom-bs-dropdown-line-height);
	--bs-dropdown-link-font-weight: var(--custom-bs-dropdown-font-weight);
	--bs-dropdown-link-font-family: var(--custom-bs-dropdown-font-family);
	--bs-dropdown-padding-x: 0;
	--bs-dropdown-padding-y-top: 0.9rem;
	--bs-dropdown-padding-y-bottom: 0;
	--bs-dropdown-header-padding-x: 0;
	--bs-dropdown-header-padding-y: 0;
	--bs-dropdown-item-padding-x: var(--custom-bs-dropdown-padding-x);
	--bs-dropdown-item-padding-y: 0;
	--bs-dropdown-color: #000;
	--bs-dropdown-bg: transparent;
	--bs-dropdown-border-color: transparent;
	--bs-dropdown-link-color: var(--bs-dropdown-color);
	--bs-dropdown-link-hover-color: var(--color-copper);
	--bs-dropdown-link-hover-bg: var(--bs-dropdown-bg);
	--bs-dropdown-link-active-color: var(--bs-dropdown-link-hover-color);
	--bs-dropdown-link-active-bg: var(--bs-dropdown-link-hover-bg);
	--bs-dropdown-link-disabled-color: var(--bs-dropdown-link-color);
	--bs-dropdown-divider-bg: var(--bs-dropdown-link-color);
	--bs-dropdown-header-color: var(--bs-dropdown-link-color);
	text-align: start;
	max-width: var(--bs-dropdown-max-width);
	box-shadow: var(--bs-dropdown-box-shadow);
	padding-top: var(--bs-dropdown-padding-y-top);
	padding-bottom: var(--bs-dropdown-padding-y-bottom);
	position: relative !important;
	inset: auto !important;
	transform: none !important;
}
.custom-bs-dropdown .dropdown-menu > li {
	position: relative;
	padding-bottom: 0.8rem;
}
.custom-bs-dropdown .dropdown-menu > li:last-child {
	padding-bottom: 0;
}
.custom-bs-dropdown .dropdown-menu .dropdown-item {
	display: block;
	width: 100%;
	font-size: var(--bs-dropdown-link-font-size);
	line-height: var(--bs-dropdown-link-line-height);
	font-weight: var(--bs-dropdown-link-font-weight);
	font-family: var(--bs-dropdown-link-font-family);
	text-align: left;
	text-decoration: none;
	white-space: normal;
	border: 0;
}
.custom-bs-dropdown .dropdown-menu .dropdown-item mark, .custom-bs-dropdown .dropdown-menu .dropdown-item .mark {
	padding: 0;
	background: none;
	color: var(--color-copper);
}
@media (max-width: 991.98px) {
	.custom-bs-dropdown {
		--custom-bs-dropdown-height: 5.1rem;
		--custom-bs-dropdown-font-size: 1.6rem;
	}
	.custom-bs-dropdown .dropdown-menu {
		--bs-dropdown-padding-y-top: 10px;
		--bs-dropdown-padding-y-bottom: var(--bs-dropdown-padding-y-top);
		border-bottom: 1px solid #000;
	}
}

.input-item {
	display: block;
	width: 100%;
	margin: 0 0 1.9rem;
}
@media (max-width: 991.98px) {
	.input-item {
		margin-bottom: 0.3rem;
	}
	.input-item .input-item-title {
		display: block;
		font-size: 1.4rem;
		line-height: 1.2;
		padding-top: 0.6rem;
		margin-bottom: -0.6rem;
	}
}

.swiper-scrollbar.swiper-scrollbar-horizontal {
	position: relative;
	overflow: hidden;
	background: none;
	height: 3px;
	border-radius: 0;
	position: relative;
	inset: auto;
	width: 100%;
}
.swiper-scrollbar.swiper-scrollbar-horizontal::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset-block: 1px;
	inset-inline: 0;
	background-color: var(--color-dark-blue);
}
.swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag {
	position: absolute;
	z-index: 10;
	inset-block: 0;
	inset-inline-start: 0;
	background-color: var(--color-dark-blue);
	border-radius: 0;
	font-size: 0;
	line-height: 0;
}

.btn-row {
	text-align: center;
	padding-top: 20px;
}

.modal-backdrop {
	--bs-backdrop-opacity: 1;
	--bs-backdrop-zindex: 1050;
	--bs-backdrop-bg: rgba(254, 253, 253, 0.2);
	--bs-backdrop-filter: blur(1rem);
	-webkit-backdrop-filter: var(--bs-backdrop-filter);
	        backdrop-filter: var(--bs-backdrop-filter);
}

.sep-item {
	color: var(--color-dark-blue);
	border-color: currentColor;
	margin: 0;
	opacity: 1;
}

.reverse-corner {
	--reverse-corner-size: 1rem;
	--reverse-corner-color: #ececeb;
	position: absolute;
	z-index: 15;
	overflow: hidden;
	width: var(--reverse-corner-size);
	height: var(--reverse-corner-size);
}
.reverse-corner::before {
	content: "";
	position: absolute;
	z-index: 15;
	width: 200%;
	height: 200%;
	border-radius: 50%;
}
.reverse-corner.reverse-corner-t-s {
	inset-block-start: 0;
	inset-inline-start: 0;
}
.reverse-corner.reverse-corner-t-s::before {
	inset-block-start: 0;
	inset-inline-start: 0;
	box-shadow: calc(var(--reverse-corner-size) * -0.5) calc(var(--reverse-corner-size) * -0.5) 0 0 var(--reverse-corner-color);
}
.reverse-corner.reverse-corner-t-e {
	inset-block-start: 0;
	inset-inline-end: 0;
}
.reverse-corner.reverse-corner-t-e::before {
	inset-block-start: 0;
	inset-inline-end: 0;
	box-shadow: calc(var(--reverse-corner-size) * 0.5) calc(var(--reverse-corner-size) * -0.5) 0 0 var(--reverse-corner-color);
}
.reverse-corner.reverse-corner-b-s {
	inset-block-end: 0;
	inset-inline-start: 0;
}
.reverse-corner.reverse-corner-b-s::before {
	--reverse-corner-color: #fff;
	inset-block-end: 0;
	inset-inline-start: 0;
	box-shadow: calc(var(--reverse-corner-size) * -0.5) calc(var(--reverse-corner-size) * 0.5) 0 0 var(--reverse-corner-color);
}
.reverse-corner.reverse-corner-b-e {
	inset-block-end: 0;
	inset-inline-end: 0;
}
.reverse-corner.reverse-corner-b-e::before {
	inset-block-end: 0;
	inset-inline-end: 0;
	box-shadow: calc(var(--reverse-corner-size) * 0.5) calc(var(--reverse-corner-size) * 0.5) 0 0 var(--reverse-corner-color);
}
/* Request card nav corner visibility controlled by active tab */
.request-card-nav .reverse-corner.reverse-corner-b-e,
.request-card-nav .reverse-corner.reverse-corner-b-s {
	opacity: 1;
	/* transition: opacity .2s ease-in-out; */
}
/* When Explore tab is NOT active, show its bottom-end corner */
.request-card-nav ul > li:first-child:not(.active) .reverse-corner.reverse-corner-b-e {
	opacity: 1;
}
/* When Request tab is NOT active, show its bottom-start corner */
.request-card-nav ul > li:nth-child(2):not(.active) .reverse-corner.reverse-corner-b-s {
	opacity: 0;
}
@media (max-width: 991.98px) {
	.reverse-corner {
		--reverse-corner-size: 0.8rem;
	}
}

.main-nav {
	--main-nav-gutter: 4rem;
	position: relative;
	z-index: 100;
	font-size: 1.2rem;
	line-height: 1.333;
	font-weight: 700;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	padding-inline-end: 12.8%;
}
.main-nav > ul {
	list-style: none;
	margin: 0 calc(var(--main-nav-gutter) * -0.5);
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.main-nav > ul > li {
	display: flex;
	margin-inline: calc(var(--main-nav-gutter) * 0.5);
}
.main-nav > ul > li > a {
	text-decoration: none;
	color: inherit;
	padding-block: 1rem;
}
.main-nav > ul > li > a:hover {
	text-decoration: none;
}
.main-nav > ul > li:hover > a, .main-nav > ul > li.active > a {
	color: var(--color-copper);
}

.radio-group {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem 2.4rem;
}
@media (max-width: 991.98px) {
	.radio-group {
		gap: 0.9rem 1.1rem;
	}
}

.heading {
	text-align: center;
	padding-bottom: 11.5rem;
}
.heading h2, .heading .h2 {
	font-size: 1.6rem;
	line-height: 1.3125;
	font-weight: 700;
	color: var(--color-copper);
}
.heading h2:last-child, .heading .h2:last-child {
	margin-bottom: 0;
}
@media (max-width: 991.98px) {
	.heading {
		padding-bottom: 4.5rem;
	}
	.heading h2, .heading .h2 {
		font-size: 1.2rem;
	}
}

.info-card {
	display: flex;
	width: 100%;
	flex-direction: column;
}
.info-card .info-card-image {
	width: 100%;
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	aspect-ratio: 0.87/1;
	margin: 0 0 3rem;
}
.info-card .info-card-image:last-child {
	margin-bottom: 0;
}
.info-card .info-card-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.info-card .info-card-body {
	width: 100%;
	font-size: var(--font-size-base);
	line-height: var(--line-height-base);
	font-weight: var(--font-weight-base);
}
.info-card .info-card-body h3, .info-card .info-card-body .h3 {
	margin-bottom: 0.6rem;
}
.info-card .info-card-body h3 small, .info-card .info-card-body .h3 small, .info-card .info-card-body h3 .small, .info-card .info-card-body .h3 .small {
	display: block;
	font-size: 1.2rem;
	line-height: 1.333;
	font-weight: 700;
	font-family: inherit;
	padding-bottom: 0.6rem;
	color: var(--color-copper);
}
.info-card .info-card-body p:last-child {
	margin-bottom: 0;
}
.info-card .info-card-footer {
	width: 100%;
	padding-top: 2rem;
	margin-top: auto;
}
@media (max-width: 991.98px) {
	.info-card .info-card-image {
		aspect-ratio: 0.85/1;
		margin-bottom: 2.1rem;
	}
	.info-card .info-card-image:last-child {
		margin-bottom: 0;
	}
	.info-card .info-card-body h3, .info-card .info-card-body .h3 {
		margin-bottom: 1.4rem;
	}
	.info-card .info-card-body h3 small, .info-card .info-card-body .h3 small, .info-card .info-card-body h3 .small, .info-card .info-card-body .h3 .small {
		font-size: 1rem;
		padding-bottom: 1.4rem;
	}
}

.service-card {
	margin: 0 0 8.3rem;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row-reverse;
	width: 100%;
}
.service-card .service-card-image {
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	width: 61.3%;
	flex-shrink: 0;
}
.service-card .service-card-image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
.service-card figcaption {
	width: 38.7%;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	padding-inline-end: 5rem;
}
.service-card figcaption .service-card-heading {
	width: 100%;
}
.service-card figcaption .service-card-heading h3, .service-card figcaption .service-card-heading .h3 {
	line-height: 1.2;
}
.service-card figcaption .service-card-heading h3:last-child, .service-card figcaption .service-card-heading .h3:last-child {
	margin-bottom: 0;
}
.service-card figcaption .service-card-body {
	width: 100%;
	padding-top: 2rem;
	margin-top: auto;
	margin-bottom: -0.8rem;
}
.service-card figcaption .service-card-body p:last-child {
	margin-bottom: 0;
}
@media (min-width: 992px) {
	.service-card.service-card-vertical {
		flex-direction: column;
	}
	.service-card.service-card-vertical .service-card-image {
		width: 100%;
		margin-bottom: 6.9rem;
	}
	.service-card.service-card-vertical figcaption {
		width: 100%;
		max-width: 75%;
		display: block;
		padding-bottom: 8rem;
		padding-inline-end: 0;
	}
	.service-card.service-card-vertical figcaption .service-card-heading {
		padding-top: 0;
	}
	.service-card.service-card-vertical figcaption:first-child .service-card-heading {
		margin-top: -1.1rem;
	}
	.service-card.service-card-vertical figcaption:last-child {
		padding-bottom: 0;
	}
	.service-card.service-card-vertical figcaption .service-card-body {
		padding-top: 10.4rem;
	}
	.service-card.service-card-vertical.service-card-vertical-reverse {
		flex-direction: column-reverse;
		margin-bottom: 1.6rem;
	}
	.service-card.service-card-vertical.service-card-vertical-reverse .service-card-image {
		margin-top: 8.3rem;
		padding-bottom: 0;
	}
	.service-card.service-card-vertical.service-card-vertical-reverse figcaption .service-card-heading {
		margin-top: -1.2rem;
	}
}
@media (max-width: 991.98px) {
	.service-card {
		margin-bottom: 4.4rem;
		display: block;
	}
	.service-card .service-card-image {
		border-radius: 0.8rem;
		width: 100%;
		aspect-ratio: 1.85/1;
		margin-bottom: 4.1rem;
	}
	.service-card .service-card-image img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
	}
	.service-card figcaption {
		width: 100%;
		display: block;
		padding-inline-end: 0;
	}
	.service-card figcaption .service-card-heading {
		padding-top: 0;
		padding-bottom: 1.2rem;
	}
	.service-card figcaption .service-card-heading h3, .service-card figcaption .service-card-heading .h3 {
		line-height: 1.3;
	}
	.service-card figcaption .service-card-body {
		padding-top: 0;
		margin-top: 0;
		margin-bottom: 0;
	}
}

.image-card {
	margin: 0;
	width: 100%;
}
.image-card .image-card-image {
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	width: 100%;
	aspect-ratio: 0.85/1;
}
.image-card .image-card-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.image-card figcaption {
	padding-top: 2.6rem;
}
.image-card figcaption h3, .image-card figcaption .h3 {
	font-size: 1.2rem;
	line-height: 1.2;
	font-weight: 700;
	color: inherit;
}
.image-card figcaption h3:last-child, .image-card figcaption .h3:last-child {
	margin-bottom: 0;
}
@media (max-width: 991.98px) {
	.image-card .image-card-image {
		aspect-ratio: 0.82/1;
		border-radius: 0.5rem;
	}
	.image-card figcaption {
		padding-top: 1.2rem;
	}
}

.statistic-card {
	margin-bottom: 3rem;
	font-size: 2.4rem;
	line-height: 1.333;
	font-weight: 400;
	font-family: var(--font-pearl-sans);
}
.statistic-card .statistic-card-val {
	display: block;
	font-size: 13rem;
	line-height: 1.1;
	font-weight: inherit;
	padding-bottom: 0.5rem;
	margin-bottom: 1.4rem;
	color: var(--color-copper);
	border-bottom: 1px solid var(--color-dark-blue);
}
.statistic-card .statistic-card-title {
	display: block;
}
@media (max-width: 991.98px) {
	.statistic-card {
		margin-bottom: 3.4rem;
		font-size: 1.2rem;
		line-height: 1.333;
	}
	.statistic-card .statistic-card-val {
		font-size: 6.5rem;
		line-height: 1;
		padding-bottom: 0.1rem;
		margin-bottom: 0.8rem;
	}
	.statistic-card .statistic-card-title {
		text-transform: uppercase;
	}
}

.modal-message-card {
	text-align: center;
	padding: 18.7rem 5rem 14.6rem;
}
.modal-message-card .modal-message-card-body {
	max-width: 93rem;
	margin-inline: auto;
}
.modal-message-card h3, .modal-message-card .h3 {
	line-height: 1.2;
	margin-bottom: 4.3rem;
}
.modal-message-card p {
	max-width: 50rem;
	margin-inline: auto;
}
.modal-message-card p:last-child {
	margin-bottom: 0;
}
@media (max-width: 991.98px) {
	.modal-message-card {
		padding: 6.7rem 2rem 4.6rem;
		font-size: 1.6rem;
		line-height: 1.3125;
	}
	.modal-message-card h3, .modal-message-card .h3 {
		line-height: 1.4;
		margin-bottom: 4.6rem;
		margin-inline: -1rem;
	}
	.modal-message-card p {
		max-width: 100%;
		margin-inline: 0;
	}
}

.request-form {
	width: 100%;
}
.request-form .request-form-title {
	display: block;
	font-size: 1.2rem;
	line-height: 1.333;
	font-weight: 700;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	color: var(--color-copper);
	margin-bottom: 1.2rem;
}
.request-form .request-form-inputs-group .dropdown-active-sep {
	border-color: #000;
	margin: 0;
	opacity: 1;
	position: relative;
	inset-block-start: -1.7rem;
	opacity: 0;
}
.request-form .request-form-inputs-group.request-form-inputs-group-opened .dropdown-active-sep {
	opacity: 1;
}
.request-form .request-form-section {
	padding-bottom: 0.5rem;
}
.request-form .request-form-section + .request-form-section {
	padding-top: 0.4rem;
}
.request-form .request-form-section:last-child {
	padding-bottom: 0;
}
.request-form .request-form-section.request-form-section-round-trip {
	display: none;
}
.round-trip-opened .request-form .request-form-section.request-form-section-round-trip {
	display: block;
}
.request-form .request-form-section .row {
	--bs-gutter-x: 1.6rem;
}
.request-form .request-form-footer {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
.request-form .request-form-footer .request-form-footer-holder {
	padding-inline-start: 0.8rem;
}
.request-form .request-form-footer .request-form-footer-btn {
	margin-inline-start: auto;
	padding-inline-start: 2rem;
	flex-shrink: 0;
}
@media (min-width: 992px) {
	.request-form .request-form-title.request-form-title-mb-lg {
		margin-bottom: 3.3rem;
	}
	.request-form .explore-form.explore-form-regular {
		margin-top: -2rem;
	}
}
@media (max-width: 991.98px) {
	.request-form .request-form-title {
		letter-spacing: 0.05rem;
		margin-bottom: 1.9rem;
	}
	.request-form .request-form-section {
		padding-bottom: 1.9rem;
	}
	.request-form .request-form-section + .request-form-section {
		padding-top: 0.4rem;
	}
	.request-form .request-form-section:last-child {
		padding-bottom: 0;
	}
	.request-form .request-form-footer {
		padding-top: 0.8rem;
	}
	.request-form .request-form-footer .request-form-footer-holder {
		padding-inline-start: 0.5rem;
	}
	.request-form .request-form-footer .request-form-footer-holder .custom-checkbox {
		text-transform: uppercase;
	}
	.request-form .request-form-footer .request-form-footer-btn {
		padding-inline-start: 1.5rem;
	}
	.request-form .request-form-footer.request-form-footer-one-col {
		display: block;
		padding-top: 0;
		margin-top: -0.8rem;
	}
	.request-form .request-form-footer.request-form-footer-one-col .request-form-footer-btn {
		text-align: end;
		padding-top: 2.3rem;
		padding-inline-start: 0;
		margin-inline-end: -0.3rem;
	}
}

.subscribe-form {
	--subscribe-form-btn-cell-width: 12.9rem;
	width: 100%;
}
.subscribe-form .subscribe-form-body {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	z-index: 10;
}
.subscribe-form .subscribe-form-cell {
	width: calc((100% - var(--subscribe-form-btn-cell-width)) * 0.5);
	flex-shrink: 0;
	padding-inline-end: 2rem;
	position: relative;
	z-index: 10;
}
.subscribe-form .subscribe-form-btn {
	width: var(--subscribe-form-btn-cell-width);
	flex-shrink: 0;
	padding-bottom: 1.9rem;
}
.subscribe-form .subscribe-form-btn .btn {
	display: block;
	width: 100%;
	min-width: 0;
}
.subscribe-form .subscribe-form-check {
	padding-top: 0.7rem;
	padding-inline: 0.5rem;
}
@media (min-width: 992px) {
	.subscribe-form .subscribe-form-check .custom-checkbox {
		--custom-checkbox-text-left-offset: 3.1rem;
		--custom-checkbox-top: 0.2rem;
		--custom-checkbox-font-size: 1.7rem;
		--custom-checkbox-line-height: 1.235;
	}
}
@media (max-width: 991.98px) {
	.subscribe-form {
		--subscribe-form-btn-cell-width: 100%;
	}
	.subscribe-form .subscribe-form-body {
		display: block;
	}
	.subscribe-form .input-item {
		margin-bottom: 1.2rem;
	}
	.subscribe-form .subscribe-form-cell {
		width: 100%;
		padding-inline-end: 0;
	}
	.subscribe-form .subscribe-form-btn {
		padding-top: 1.9rem;
		padding-bottom: 0;
	}
	.subscribe-form .subscribe-form-btn .btn {
		display: inline-block;
		width: auto;
	}
	.subscribe-form .subscribe-form-check {
		padding-top: 1.5rem;
		padding-inline: 0;
	}
}

.explore-card {
	--btn-arrow-circle-width: 5.7rem;
	width: 100%;
	position: relative;
}
.explore-card .explore-card-dropdown {
	--explore-card-dropdown-height: 5.7rem;
	--explore-card-dropdown-border-width: 0rem;
	--explore-card-dropdown-padding-x: 0.8rem;
	--explore-card-dropdown-margin-inline-start: 3.6rem;
	--explore-card-dropdown-margin-inline-end: 10.6rem;
	--explore-card-dropdown-border-radius: 0;
	--explore-card-dropdown-font-size: 5rem;
	--explore-card-dropdown-line-height: 1.1;
	--explore-card-dropdown-font-weight: 100;
	--explore-card-dropdown-font-family: var(--font-pearl-sans);
	--explore-card-dropdown-color: #fff;
	position: relative;
}
.explore-card .explore-card-dropdown .dropdown-toggle {
	--dropdown-toggle-border-width: var(--explore-card-dropdown-border-width);
	--dropdown-toggle-padding-x: var(--explore-card-dropdown-padding-x);
	--dropdown-toggle-padding-x-right: var(--explore-card-dropdown-height);
	--dropdown-toggle-padding-y: calc((var(--explore-card-dropdown-height) - (var(--explore-card-dropdown-border-width) * 2) - (var(--explore-card-dropdown-font-size) * var(--explore-card-dropdown-line-height))) * 0.5);
	--dropdown-toggle-font-size: var(--explore-card-dropdown-font-size);
	--dropdown-toggle-line-height: var(--explore-card-dropdown-line-height);
	--dropdown-toggle-font-weight: var(--explore-card-dropdown-font-weight);
	--dropdown-toggle-font-family: var(--explore-card-dropdown-font-family);
	--dropdown-toggle-arrow-size: 1rem;
	--dropdown-toggle-arrow-line-width: 1px;
	--dropdown-toggle-arrow-right: var(--explore-card-dropdown-padding-x);
	--dropdown-toggle-text-color: var(--explore-card-dropdown-color);
	--dropdown-toggle-bg-color: transparent;
	--dropdown-toggle-border-color: var(--dropdown-toggle-text-color);
	--dropdown-toggle-arrow-color: var(--dropdown-toggle-text-color);
	display: block;
	position: relative;
	color: var(--explore-card-dropdown-color);
	background: var(--dropdown-toggle-bg-color);
	border: solid currentColor;
	border-width: 0 0 1px;
	padding: var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x-right) var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x);
	font-size: var(--dropdown-toggle-font-size);
	line-height: var(--dropdown-toggle-line-height);
	font-weight: var(--dropdown-toggle-font-weight);
	font-family: var(--dropdown-toggle-font-family);
	text-align: left;
	text-transform: uppercase;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-inline-start: var(--explore-card-dropdown-margin-inline-start);
	margin-inline-end: var(--explore-card-dropdown-margin-inline-end);
	width: calc(100% - var(--explore-card-dropdown-margin-inline-start) - var(--explore-card-dropdown-margin-inline-end));
}
.explore-card .explore-card-dropdown .dropdown-toggle::after {
	content: "";
	position: absolute;
	z-index: 5;
	top: 50%;
	right: var(--dropdown-toggle-arrow-right);
	transform: translate(0, -50%) rotate(45deg);
	vertical-align: top;
	width: var(--dropdown-toggle-arrow-size);
	height: var(--dropdown-toggle-arrow-size);
	margin: calc(var(--dropdown-toggle-arrow-size) * -0.25) 0 0;
	border: solid var(--dropdown-toggle-arrow-color);
	border-width: 0 var(--dropdown-toggle-arrow-line-width) var(--dropdown-toggle-arrow-line-width) 0;
	transition: all 0.3s ease;
}
.explore-card .explore-card-dropdown .dropdown-menu {
	--bs-dropdown-zindex: 1000;
	--bs-dropdown-min-width: 100%;
	--bs-dropdown-max-width: 100%;
	--bs-dropdown-spacer: 0;
	--bs-dropdown-divider-margin-y: 0;
	--bs-dropdown-box-shadow: none;
	--bs-dropdown-border-width: var(--explore-card-dropdown-border-width);
	--bs-dropdown-border-radius: 0 0 1rem 1rem;
	--bs-dropdown-inner-border-radius: 0;
	--bs-dropdown-item-border-radius: 0;
	--bs-dropdown-font-size: 0;
	--bs-dropdown-link-font-size: 2rem;
	--bs-dropdown-link-line-height: 1.2;
	--bs-dropdown-link-font-weight: 400;
	--bs-dropdown-link-font-family: var(--font-redhat);
	--bs-dropdown-padding-x: 0;
	--bs-dropdown-padding-y-top: 1.4rem;
	--bs-dropdown-padding-y-bottom: 4.2rem;
	--bs-dropdown-header-padding-x: 0;
	--bs-dropdown-header-padding-y: 0;
	--bs-dropdown-item-padding-x: 0;
	--bs-dropdown-item-padding-y: 0;
	--bs-dropdown-color: var(--explore-card-dropdown-color);
	--bs-dropdown-bg: var(--color-copper);
	--bs-dropdown-border-color: var(--bs-dropdown-color);
	--bs-dropdown-link-color: currentColor;
	--bs-dropdown-link-hover-color: var(--bs-dropdown-link-color);
	--bs-dropdown-link-hover-bg: transparent;
	--bs-dropdown-link-active-color: var(--bs-dropdown-link-hover-color);
	--bs-dropdown-link-active-bg: var(--bs-dropdown-link-hover-bg);
	--bs-dropdown-link-disabled-color: var(--bs-dropdown-link-color);
	--bs-dropdown-divider-bg: var(--bs-dropdown-link-color);
	--bs-dropdown-header-color: var(--bs-dropdown-link-color);
	text-align: start;
	max-width: var(--bs-dropdown-max-width);
	box-shadow: var(--bs-dropdown-box-shadow);
	padding-top: var(--bs-dropdown-padding-y-top);
	padding-bottom: var(--bs-dropdown-padding-y-bottom);
	background: linear-gradient(90deg, #6e5343, #ae8267, #ae8267, #af8d7f);
	inset: 100% 0 auto !important;
	transform: none !important;
}
.explore-card .explore-card-dropdown .dropdown-menu > li {
	position: relative;
	padding-bottom: 0.9rem;
	margin-inline-start: var(--explore-card-dropdown-margin-inline-start);
	margin-inline-end: var(--explore-card-dropdown-margin-inline-end);
}
.explore-card .explore-card-dropdown .dropdown-menu > li:last-child {
	border-bottom: 1px solid currentColor;
	padding-bottom: 1.8rem;
}
.explore-card .explore-card-dropdown .dropdown-menu .dropdown-item {
	display: inline-block;
	vertical-align: top;
	width: auto;
	font-size: var(--bs-dropdown-link-font-size);
	line-height: var(--bs-dropdown-link-line-height);
	font-weight: var(--bs-dropdown-link-font-weight);
	font-family: var(--bs-dropdown-link-font-family);
	text-align: start;
	text-decoration: none;
	white-space: normal;
	border: 0;
}
.explore-card .explore-card-dropdown .dropdown-menu .dropdown-item:hover {
	opacity: 0.75;
}
.explore-card .explore-card-body {
	width: 100%;
}
.explore-card .explore-card-btn {
	position: absolute;
	z-index: 10;
	inset-block-start: 0;
	inset-inline-end: 3.5rem;
}
@media (max-width: 991.98px) {
	.explore-card {
		--btn-arrow-circle-width: 4.6rem;
		display: block;
	}
	.explore-card .explore-card-dropdown {
		--explore-card-dropdown-height: 5.3rem;
		--explore-card-dropdown-padding-x: 0;
		--explore-card-dropdown-margin-inline-start: var(--container-padding-x);
		--explore-card-dropdown-margin-inline-end: var(--container-padding-x);
		--explore-card-dropdown-font-size: 2rem;
		--explore-card-dropdown-line-height: 1.2;
		--explore-card-dropdown-font-weight: 400;
	}
	.explore-card .explore-card-dropdown .dropdown-toggle {
		--dropdown-toggle-border-width: var(--explore-card-dropdown-border-width);
		--dropdown-toggle-padding-x: var(--explore-card-dropdown-padding-x);
		--dropdown-toggle-padding-x-right: 3rem;
		--dropdown-toggle-arrow-right: 1.2rem;
	}
	.explore-card .explore-card-dropdown .dropdown-menu {
		--bs-dropdown-padding-y-top: 1rem;
		--bs-dropdown-padding-y-bottom: 0;
		--bs-dropdown-item-padding-x: 0;
		--bs-dropdown-font-size: 1.6rem;
		--bs-dropdown-link-font-size: var(--bs-dropdown-font-size);
		position: relative !important;
		inset: auto !important;
		background: none;
	}
	.explore-card .explore-card-dropdown .dropdown-menu > li {
		padding-bottom: 0.5rem;
	}
	.explore-card .explore-card-dropdown .dropdown-menu > li:last-child {
		padding-bottom: 1rem;
	}
	.explore-card .explore-card-body {
		width: 100%;
	}
	.explore-card .explore-card-btn {
		position: relative;
		inset-block-start: auto;
		inset-inline-end: auto;
		padding-top: 2.3rem;
		padding-inline: var(--container-padding-x);
		text-align: end;
	}
	.explore-card .explore-card-btn .btn-arrow-circle {
		color: #fff;
	}
}

.explore-form {
	width: 100%;
	color: #fff;
	position: relative;
}
.explore-form .explore-form-input {
	width: 100%;
	border-bottom: 1px solid currentColor;
}
.explore-form .explore-form-input .explore-form-floating-label {
	display: block;
	width: 100%;
	position: relative;
	margin: 0;
}
.explore-form .explore-form-input .explore-form-floating-label .form-control {
	--input-height: 6.5rem;
	--input-border-width: 0;
	--input-border-radius: 0;
	--input-disabled-opacity: 0.5;
	--input-font-size: 5rem;
	--input-font-weight: 100;
	--input-font-family: var(--font-pearl-sans);
	--input-padding-x: 0;
	--input-padding-y: 0.2rem;
	--input-text-color: #fff;
	--input-placeholder-color: var(--input-text-color);
	--input-bg-color: transparent;
	--input-border-color: transparent;
	--input-text-active-color: var(--input-text-color);
	--input-bg-active-color: var(--input-bg-color);
	--input-border-active-color: var(--input-border-color);
	display: block;
	width: 100%;
	height: var(--input-height);
	font: var(--input-font-weight) var(--input-font-size) var(--input-font-family);
	color: var(--input-text-color);
	background-color: var(--input-bg-color);
	border: solid var(--input-border-color);
	border-width: var(--input-border-width);
	padding-block: var(--input-padding-y);
	padding-inline-start: var(--input-padding-x);
	padding-inline-end: var(--input-height);
	margin: 0;
	box-shadow: none;
	border-radius: var(--input-border-radius);
	-webkit-appearance: none;
}
.explore-form .explore-form-input .explore-form-floating-label .form-control::-moz-placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.explore-form .explore-form-input .explore-form-floating-label .form-control::placeholder {
	color: var(--input-placeholder-color);
	opacity: 1;
}
.explore-form .explore-form-input .explore-form-floating-label .form-control::-webkit-search-decoration, .explore-form .explore-form-input .explore-form-floating-label .form-control::-webkit-search-cancel-button, .explore-form .explore-form-input .explore-form-floating-label .form-control::-webkit-search-results-button, .explore-form .explore-form-input .explore-form-floating-label .form-control::-webkit-search-results-decoration {
	-webkit-appearance: none;
}
.explore-form .explore-form-input .explore-form-floating-label .form-control:focus, .explore-form .explore-form-input .explore-form-floating-label .form-control:active {
	outline: none;
	box-shadow: none;
	color: var(--input-text-active-color);
	background-color: var(--input-bg-active-color);
	border-color: var(--input-border-active-color);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear {
	--explore-form-clear-size: 4rem;
	--explore-form-clear-border-width: 0;
	--explore-form-clear-border-radius: 0;
	--explore-form-clear-z-index: 10;
	--explore-form-clear-ico-size: 70%;
	--explore-form-clear-ico-line-width: 1px;
	--explore-form-clear-ico-line-border-radius: 0;
	--explore-form-clear-opacity: 1;
	--explore-form-clear-white-filter: none;
	--explore-form-clear-color: currentColor;
	--explore-form-clear-bg: transparent;
	--explore-form-clear-border-color: var(--explore-form-clear-bg);
	--explore-form-clear-hover-ico-size: calc(var(--explore-form-clear-ico-size) + 10%);
	--explore-form-clear-hover-color: var(--explore-form-clear-color);
	--explore-form-clear-hover-bg: var(--explore-form-clear-bg);
	--explore-form-clear-hover-border-color: var(--explore-form-clear-bg);
	--explore-form-clear-hover-opacity: 1;
	--explore-form-clear-focus-shadow: none;
	--explore-form-clear-focus-opacity: 1;
	--explore-form-clear-disabled-opacity: 0;
	position: absolute;
	z-index: 10;
	inset-block-start: 50%;
	inset-inline-end: 0;
	transform: translate(0, -50%);
	overflow: hidden;
	z-index: var(--explore-form-clear-z-index);
	width: var(--explore-form-clear-size);
	height: var(--explore-form-clear-size);
	padding: 0;
	color: var(--explore-form-clear-color);
	background: var(--explore-form-clear-bg);
	border: var(--explore-form-clear-border-width) solid var(--explore-form-clear-border-color);
	border-radius: var(--explore-form-clear-border-radius);
	opacity: var(--explore-form-clear-opacity);
	cursor: pointer;
	/* pointer-events: none; */
	font-size: 0;
	line-height: 0;
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear::before, .explore-form .explore-form-input .explore-form-floating-label .explore-form-clear::after {
	content: "";
	position: absolute;
	z-index: var(--explore-form-clear-z-index);
	top: 50%;
	left: 50%;
	width: var(--explore-form-clear-ico-size);
	height: var(--explore-form-clear-ico-line-width);
	background-color: var(--explore-form-clear-color);
	border-radius: var(--explore-form-clear-ico-line-border-radius);
	transition: all 0.3s ease;
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear:hover {
	text-decoration: none;
	color: var(--explore-form-clear-hover-color);
	background-color: var(--explore-form-clear-hover-bg);
	border-color: var(--explore-form-clear-hover-border-color);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear:hover::before, .explore-form .explore-form-input .explore-form-floating-label .explore-form-clear:hover::after {
	width: var(--explore-form-clear-hover-ico-size);
	background-color: var(--explore-form-clear-hover-color);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-clear:focus {
	outline: 0;
	box-shadow: var(--explore-form-clear-focus-shadow);
}
.explore-form .explore-form-input .explore-form-floating-label .explore-form-label {
	position: absolute;
	z-index: 10;
	inset-block-start: 0;
	inset-inline: 0;
	transition: all 0.3s ease;
	font-size: 5rem;
	line-height: 1.1;
	font-weight: 100;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-block: 0.5rem;
	margin-top: 0;
	pointer-events: none;
}
.explore-form .explore-form-results {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 2rem;
	line-height: 1.2;
	font-weight: 400;
	font-family: var(--font-redhat);
	color: inherit;
	max-height: 25rem;
	overflow-y: auto;
}
.explore-form .explore-form-results > li {
	border-bottom: 1px solid currentColor;
	/* display: none; */
}
.explore-form .explore-form-results > li > a {
	color: inherit;
	text-decoration: none;
	display: block;
	padding-block: 1.7rem;
}
.explore-form .explore-form-results > li > a .qs-airport-title {
	display: inline;
}
.explore-form .explore-form-results > li > a .qs-airport-code {
	display: inline;
	text-transform: uppercase;
}
.explore-form .explore-form-results > li > a:hover {
	color: inherit;
	text-decoration: none;
	color: var(--color-dark-blue);
}
/* ── Global airport dropdown card design (used in Quicksearch, request-form, quickbook edit) ── */
.qb-airport-results {
	position: absolute;
	top: calc(100% + 2px);
	left: 0;
	z-index: 500;
	min-width: 36rem;
	width: max-content;
	max-width: 56rem;
	background: #fff;
	border-radius: 0.8rem;
	box-shadow: 0 8px 32px rgba(0,30,69,0.18);
	max-height: 24rem;
	overflow-y: auto;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #001e45;
	/* reset inline styles from .explore-form .explore-form-results */
	font-family: inherit;
	font-weight: 400;
}
.qb-airport-results .qs_list_item {
	cursor: pointer;
	padding: 1rem 1.4rem;
	border-bottom: 1px solid rgba(0,30,69,0.08);
	transition: background 0.15s;
}
.qb-airport-results .qs_list_item:last-child {
	border-bottom: none;
}
.qb-airport-results .qs_list_item:hover {
	background: rgba(0,30,69,0.07);
}
.qb-airport-results .qs-airport-title {
	font-weight: 400;
	display: inline;
}
.qb-airport-results .qs-airport-code {
	font-weight: 500;
	text-transform: uppercase;
	color: #b68062;
	display: inline;
}
.explore-form.focus .explore-form-floating-label .explore-form-label, .explore-form.filled .explore-form-floating-label .explore-form-label {
	font-size: 2.1rem;
	padding-block: 0;
	margin-top: -1.8rem;
}
.explore-form.focus .explore-form-input .explore-form-floating-label .explore-form-clear, .explore-form.filled .explore-form-input .explore-form-floating-label .explore-form-clear {
	--explore-form-clear-opacity: 1;
	pointer-events: all;
}
.explore-form.explore-form-regular {
	color: var(--color-dark-blue);
}
.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label::after {
	content: "";
	position: absolute;
	z-index: 10;
	inset-block-start: 50%;
	inset-inline-end: 0.4rem;
	width: 1rem;
	height: 1rem;
	border: solid currentColor;
	border-width: 0 1px 1px 0;
	transform: translate(0, -50%) rotate(45deg);
}
.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label .form-control {
	--input-text-color: var(--color-dark-blue);
}
.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label .explore-form-label {
	text-transform: none;
}
.explore-form.explore-form-regular.focus .explore-form-floating-label .explore-form-label, .explore-form.explore-form-regular.filled .explore-form-floating-label .explore-form-label {
	font-size: 1.6rem;
	padding-block: 0;
	margin-top: -0.5rem;
}
@media (max-width: 991.98px) {
	.explore-form .explore-form-input .explore-form-floating-label .form-control {
		--input-height: 4rem;
		--input-font-size: 2rem;
	}
	.explore-form .explore-form-input .explore-form-floating-label .explore-form-label {
		font-size: 2rem;
		line-height: 1.2;
		padding-block: 0.8rem;
	}
	.explore-form .explore-form-results {
		font-size: 1.4rem;
		max-height: 15rem;
	}
	.explore-form .explore-form-results > li > a {
		padding-block: 1rem;
	}
	.explore-form.focus .explore-form-floating-label .explore-form-label, .explore-form.filled .explore-form-floating-label .explore-form-label {
		font-size: 1.2rem;
		padding-block: 0;
		margin-top: -1rem;
	}
	.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label::after {
		inset-inline-end: 0.8rem;
	}
	.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label .form-control {
		--input-height: 5.2rem;
		--input-font-size: 2.8rem;
	}
	.explore-form.explore-form-regular .explore-form-input .explore-form-floating-label .explore-form-label {
		font-size: 2.8rem;
		line-height: 1.143;
		padding-block: 1rem;
	}
	.explore-form.explore-form-regular.focus .explore-form-floating-label .explore-form-label, .explore-form.explore-form-regular.filled .explore-form-floating-label .explore-form-label {
		font-size: 1.2rem;
		padding-block: 0;
		margin-top: 0.4rem;
	}
}

.request-box {
	position: absolute;
	z-index: 20;
	inset-block-start: 0;
	inset-inline: 0;
	color: var(--color-dark-blue);
	background-color: #fff;
	border-start-end-radius: 1rem;
	border-end-start-radius: 1rem;
	border-end-end-radius: 1rem;
	padding: 2.7rem 4rem 3.2rem;
}
.request-box .request-box-title {
	display: block;
	color: inherit;
	font-size: 1.2rem;
	line-height: 1.25;
	font-weight: 700;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	margin-bottom: 1.4rem;
}
.request-box .request-box-title:last-child {
	margin-bottom: 0;
}
.request-box .request-box-heading {
	padding-bottom: 2rem;
}
.request-box .request-box-heading .request-box-nav-group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 1.6rem;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav {
	background-color: rgba(182, 128, 98, 0.2);
	padding: 0.4rem 0.3rem;
	border-radius: 999.9rem;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.6rem;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li {
	display: flex;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li > button {
	font-size: 1.2rem;
	line-height: 1.333;
	font-weight: 700;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	padding: 0.8rem 1.2rem;
	color: var(--color-dark-blue);
	background: transparent;
	border: 0;
	border-radius: 999.9rem;
	position: relative;
	overflow: hidden;
	text-align: center;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li > button::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	transition: all 0.3s ease;
	opacity: 0;
	border-radius: 999.9rem;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li > button span {
	position: relative;
	z-index: 5;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li.active > button {
	color: #fff;
}
.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li.active > button::before {
	opacity: 1;
}
.request-box .request-box-heading .request-box-nav-group .round-trip-radio-group {
	display: none;
}
.request-box .request-box-body {
	width: 100%;
}
.request-box .request-box-body .request-box-tab {
	display: none;
}
.request-box .request-box-body .request-box-tab.active {
	display: block;
}
.request-box.round-trip-tab-active .request-box-heading .request-box-nav-group .round-trip-radio-group {
	display: flex;
}
.request-box.round-trip-tab-active .request-box-heading .request-box-nav-group .customer-radio-group {
	display: none;
}
@media (max-width: 991.98px) {
	.request-box {
		border-start-end-radius: 0;
		border-end-start-radius: 0;
		border-end-end-radius: 0;
		padding: 3rem var(--container-padding-x);
		max-height: calc(100dvh - var(--header-height) - 3.4rem);
		overflow-y: auto;
	}
	.request-box .request-box-heading {
		padding-bottom: 3rem;
	}
	.request-box .request-box-heading .request-box-nav-group {
		display: block;
		gap: 0;
	}
	.request-box .request-box-heading .request-box-nav-group .request-box-nav {
		padding-inline: 0.5rem;
		margin-bottom: 1.5rem;
	}
	.request-box .request-box-heading .request-box-nav-group .request-box-nav:last-child {
		margin-bottom: 0;
	}
	.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul {
		gap: 0 1rem;
		flex-wrap: nowrap;
		justify-content: space-between;
	}
	.request-box .request-box-heading .request-box-nav-group .request-box-nav > ul > li > button {
		font-size: 1rem;
		line-height: 1.5;
		letter-spacing: 0.05rem;
		text-transform: none;
		padding-inline: 1.6rem;
	}
	.request-box .request-box-heading .request-box-nav-group .radio-group {
		margin-inline: -0.3rem;
	}
	.request-box .request-box-heading .request-box-nav-group .radio-group:not(.round-trip-radio-group) {
		padding-top: 0.4rem;
		margin-bottom: -0.2rem;
	}
}

.request-card {
	position: relative;
	border-radius: 1rem;
	background: linear-gradient(90deg, #6e5343, #ae8267, #ae8267, #af8d7f);
}

.request-card.request-card-form-opened {
    border-radius: unset;
    border-start-start-radius: 1rem;
}

.request-card .request-card-nav {
	position: relative;
	overflow: hidden;
	z-index: 10;
	font-size: 1.4rem;
	line-height: 1.357;
	font-weight: 400;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	color: #fff;
}
.request-card .request-card-nav > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
}
.request-card .request-card-nav > ul > li {
	display: flex;
	position: relative;
	z-index: 8;
}
.request-card .request-card-nav > ul > li > .request-card-nav-btn {
	text-decoration: none;
	color: inherit;
	background: none;
	border: 0;
	padding: 0.9rem 2.9rem;
	/* border-start-start-radius: 1rem; */
	border-start-end-radius: 1rem;
	border-end-start-radius: 1rem;
	position: relative;
	z-index: 10;
	transition: color 0.3s ease, background-color 0.3s ease;
	text-transform: uppercase;
}
.request-card .request-card-nav > ul > li > .request-card-nav-btn .request-card-nav-btn-text {
	position: relative;
	z-index: 10;
	font-size: 1rem;
	font-weight: 400;
	font-family: var(--font-pearl-sans);
	line-height: 1.6;
	letter-spacing: 0.05rem;
}
.request-card .request-card-nav > ul > li > .request-card-nav-btn:hover {
	text-decoration: none;
	color: inherit;
}
.request-card .request-card-nav > ul > li:nth-child(1) .reverse-corner-b-e {
	--reverse-corner-color: #fff;
	/* transition: all 0.3s ease; */
	opacity: 0;
}
.request-card .request-card-nav > ul > li:nth-child(2)::after {
	content: "";
	position: absolute;
	z-index: 5;
	inset-block: 0;
	inset-inline-start: calc(100% - 1.5rem);
	width: 999.9rem;
	background-color: #ececeb;
}
.request-card .request-card-nav > ul > li:nth-child(2) > .request-card-nav-btn {
	color: var(--color-dark-blue);
	background-color: #fff;
	padding-inline: 7rem;
}
.request-card .request-card-nav > ul > li:nth-child(3) {
	display: none;
}
.request-card .request-card-body {
	width: 100%;
	position: relative;
}
.request-card .request-card-body .request-card-holder {
	padding: 3rem 3.6rem 3.7rem;
	position: relative;
}
.request-card .request-card-body .request-box {
	transition: all 0.3s ease;
	/* opacity: 0; */
	pointer-events: none;
}
.request-card.request-card-form-opened .request-card-nav > ul > li:nth-child(1) .reverse-corner-b-e {
	opacity: 1;
}
.request-card.request-card-form-opened .request-card-nav > ul > li:nth-child(2) > .request-card-nav-btn {
	border-end-start-radius: 0;
}
.request-card.request-card-form-opened .request-card-body .request-box {
	opacity: 1;
	pointer-events: all;
}
@media (max-width: 991.98px) {
	.request-card {
		margin-inline: calc(var(--container-padding-x) * -1);
		border-radius: 0;
		background: none;
	}
	.request-card .request-card-nav {
		font-size: 0.9rem;
		line-height: 1.556;
	}
	.request-card .request-card-nav > ul {
		position: relative;
		z-index: 5;
	}
	.request-card .request-card-nav > ul > li {
		flex-shrink: 0;
		width: calc((100% - 5.1rem) * 0.5);
	}
	.request-card .request-card-nav > ul > li > .request-card-nav-btn {
		overflow: hidden;
		width: 100%;
		text-align: center;
		padding: 1rem;
		border-start-start-radius: 0.8rem;
		border-start-end-radius: 0.8rem;
		border-end-start-radius: 0.8rem;
	}
	.request-card .request-card-nav > ul > li .request-section-close {
		--request-section-close-size: 100%;
		--request-section-close-border-width: 0;
		--request-section-close-border-radius: 0;
		--request-section-close-z-index: 10;
		--request-section-close-ico-size: 54%;
		--request-section-close-ico-line-width: 0.2rem;
		--request-section-close-ico-line-border-radius: 999.9rem;
		--request-section-close-opacity: 1;
		--request-section-close-white-filter: none;
		--request-section-close-color: #fff;
		--request-section-close-bg: none;
		--request-section-close-border-color: var(--request-section-close-bg);
		display: inline-block;
		vertical-align: top;
		position: relative;
		overflow: hidden;
		z-index: var(--request-section-close-z-index);
		width: var(--request-section-close-size);
		height: 3.4rem;
		padding: 0;
		color: var(--request-section-close-color);
		background: var(--request-section-close-bg);
		border: var(--request-section-close-border-width) solid var(--request-section-close-border-color);
		border-radius: var(--request-section-close-border-radius);
		opacity: var(--request-section-close-opacity);
		cursor: pointer;
		font-size: 0;
		line-height: 0;
	}
	.request-card .request-card-nav > ul > li .request-section-close::before, .request-card .request-card-nav > ul > li .request-section-close::after {
		content: "";
		position: absolute;
		z-index: var(--request-section-close-z-index);
		top: 50%;
		left: 50%;
		width: var(--request-section-close-ico-size);
		height: var(--request-section-close-ico-line-width);
		background-color: var(--request-section-close-color);
		border-radius: var(--request-section-close-ico-line-border-radius);
		transition: all 0.3s ease;
	}
	.request-card .request-card-nav > ul > li .request-section-close::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.request-card .request-card-nav > ul > li .request-section-close::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	.request-card .request-card-nav > ul > li:nth-child(1) > .request-card-nav-btn {
		border-end-start-radius: 0;
	}
	.request-card .request-card-nav > ul > li:nth-child(1) > .request-card-nav-btn::before {
		content: "";
		position: absolute;
		z-index: 1;
		inset-block: 0;
		inset-inline-start: 0;
		width: 100vw;
		background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	}
	.request-card .request-card-nav > ul > li:nth-child(2)::after {
		display: none;
	}
	.request-card .request-card-nav > ul > li:nth-child(2) > .request-card-nav-btn {
		padding-inline: 1rem;
	}
	.request-card .request-card-nav > ul > li:nth-child(3) {
		display: block;
		width: 5.1rem;
	}
	.request-card .request-card-nav .request-card-nav-bg {
		position: absolute;
		z-index: 1;
		inset-block: 0;
		inset-inline-start: 0;
		inset-inline-end: 10rem;
		overflow: hidden;
		pointer-events: none;
	}
	.request-card .request-card-nav .request-card-nav-bg::before {
		content: "";
		position: absolute;
		z-index: 1;
		inset-block-end: 0;
		inset-inline-start: 0;
		width: 100vw;
		height: 2rem;
		background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	}
	.request-card .request-card-body {
		background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	}
	.request-card .request-card-body .request-card-holder {
		padding: var(--container-padding-x);
	}
	.request-card.request-card-form-opened .request-card-body .request-card-holder {
		display: none;
	}
	.request-card.request-card-form-opened .request-card-body .request-box {
		position: relative;
		inset-block-start: auto;
		inset-inline: auto;
	}
	body:not(.request-section-opened) .request-card.request-card-form-opened .request-card-body .request-box {
		pointer-events: none;
	}
}

.info-banner {
	margin: 0;
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
}
.info-banner .info-banner-image {
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	width: 56%;
	margin-inline-end: 9rem;
	flex-shrink: 0;
	aspect-ratio: 1.43/1;
}
.info-banner .info-banner-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.info-banner figcaption {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.info-banner figcaption .info-banner-heading {
	width: 100%;
}
.info-banner figcaption .info-banner-heading h2, .info-banner figcaption .info-banner-heading .h2 {
	line-height: 1.2;
}
.info-banner figcaption .info-banner-heading h2:last-child, .info-banner figcaption .info-banner-heading .h2:last-child {
	margin-bottom: 0;
}
.info-banner figcaption .info-banner-body {
	width: 100%;
	padding-top: 1.5rem;
	margin-top: auto;
}
.info-banner figcaption .info-banner-body p:last-child {
	margin-bottom: 0;
}
.info-banner figcaption .info-banner-footer {
	width: 100%;
	padding-top: 4.4rem;
}
@media (min-width: 992px) {
	.info-banner.info-banner-reverse {
		flex-direction: row-reverse;
	}
	.info-banner.info-banner-reverse .info-banner-image {
		width: 61.4%;
		margin-inline-start: 9rem;
		margin-inline-end: 0;
		aspect-ratio: 1.78/1;
	}
}
@media (max-width: 991.98px) {
	.info-banner {
		display: block;
	}
	.info-banner .info-banner-image {
		width: auto;
		margin-inline: calc(var(--container-padding-x) * -1);
		aspect-ratio: 1.15/1;
		margin-bottom: 4.3rem;
		border-radius: 0;
	}
	.info-banner .info-banner-image:last-child {
		margin-bottom: 0;
	}
	.info-banner figcaption {
		display: block;
	}
	.info-banner figcaption .info-banner-heading h2, .info-banner figcaption .info-banner-heading .h2 {
		line-height: 1.3;
	}
	.info-banner figcaption .info-banner-body {
		padding-top: 2.1rem;
		margin-top: 0;
	}
	.info-banner figcaption .info-banner-footer {
		text-align: center;
		padding-top: 4.4rem;
	}
}

.benefits-list {
	--benefits-list-gutter: 3rem;
	--benefits-list-item-width: 33.33%;
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	overflow: hidden;
}
.benefits-list > li {
	display: flex;
	padding: 4.8rem calc(var(--benefits-list-gutter) * 0.5) 6.2rem;
	max-width: var(--benefits-list-item-width);
	flex: 0 0 var(--benefits-list-item-width);
	position: relative;
}
.benefits-list > li .benefits-list-item {
	margin: 0;
	width: 100%;
	text-align: center;
}
.benefits-list > li .benefits-list-item .benefits-list-ico {
	position: relative;
	overflow: hidden;
	width: 6rem;
	height: 6rem;
	margin-inline: auto;
}
.benefits-list > li .benefits-list-item .benefits-list-ico img {
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
}
.benefits-list > li .benefits-list-item figcaption {
	padding-top: 2.1rem;
}
.benefits-list > li .benefits-list-item figcaption h3, .benefits-list > li .benefits-list-item figcaption .h3 {
	font-size: 1.6rem;
	line-height: 1.323;
}
.benefits-list > li .benefits-list-item figcaption h3:last-child, .benefits-list > li .benefits-list-item figcaption .h3:last-child {
	margin-bottom: 0;
}
@media (min-width: 992px) {
	.benefits-list > li:nth-child(3n+4)::before {
		content: "";
		position: absolute;
		z-index: 5;
		inset-block-start: 0;
		inset-inline-start: 0;
		width: 999.9rem;
		height: 1px;
		background-color: currentColor;
	}
}
@media (max-width: 991.98px) {
	.benefits-list {
		--benefits-list-gutter: 0;
		--benefits-list-item-width: 100%;
		overflow: visible;
		display: block;
	}
	.benefits-list > li {
		display: block;
		padding: 0.5rem 0;
		border-bottom: 1px solid currentColor;
		max-width: 100%;
	}
	.benefits-list > li:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}
	.benefits-list > li .benefits-list-item {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		text-align: start;
		width: 100%;
		max-width: 90%;
		min-height: 4.3rem;
	}
	.benefits-list > li .benefits-list-item .benefits-list-ico {
		width: 3.2rem;
		height: 3.2rem;
		margin-inline-end: 0.8rem;
	}
	.benefits-list > li .benefits-list-item figcaption {
		padding-top: 0;
		flex-grow: 1;
	}
	.benefits-list > li .benefits-list-item figcaption h3, .benefits-list > li .benefits-list-item figcaption .h3 {
		font-size: 1.2rem;
		line-height: 1.333;
	}
}

.logos-list {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 108rem;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0 9rem;
}
.logos-list::before {
	content: "";
	position: absolute;
	z-index: 5;
	inset-block-start: 0;
	inset-inline: -999.9rem;
	height: 1px;
	background-color: currentColor;
}
.logos-list > li {
	position: relative;
	padding-block: 2rem;
	height: 14.5rem;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
.logos-list > li::before {
	content: "";
	position: absolute;
	z-index: 5;
	inset-block-end: 0;
	inset-inline: -999.9rem;
	height: 1px;
	background-color: currentColor;
}
.logos-list > li > figure {
	margin: 0;
	position: relative;
	overflow: hidden;
}
.logos-list > li > figure img {
	display: inline-block;
	vertical-align: top;
	max-width: 22.4rem;
	max-height: 6.8rem;
}
@media (max-width: 991.98px) {
	.logos-list {
		max-width: 100%;
		gap: 0 1.2rem;
	}
	.logos-list > li {
		padding-block: 0.5rem;
		height: 5.7rem;
	}
	.logos-list > li > figure img {
		max-width: 11.7rem;
		max-height: 3.6rem;
		transform: scale(0.75);
	}
}

.info-cards-carousel {
	--swiper-slide-gutter: 2.4rem;
	position: relative;
	font-size: 1rem;
	line-height: 1.5;
}
.info-cards-carousel .info-cards-carousel-wrapper {
	position: relative;
	overflow: hidden;
}
.info-cards-carousel .swiper-container {
	position: relative;
	overflow: visible;
	margin-inline: calc(var(--swiper-slide-gutter) * -0.5);
}
.info-cards-carousel .swiper-slide {
	display: flex;
	height: auto;
	padding-inline: calc(var(--swiper-slide-gutter) * 0.5);
}
@media (max-width: 991.98px) {
	.info-cards-carousel {
		--swiper-slide-gutter: 2rem;
	}
	.info-cards-carousel .info-cards-carousel-wrapper {
		overflow: visible;
	}
	.info-cards-carousel .swiper-slide {
		width: auto;
	}
	.info-cards-carousel .info-card {
		width: 24.6rem;
		flex-shrink: 0;
	}
}

.image-cards-carousel {
	--swiper-slide-gutter: 3rem;
	position: relative;
	font-size: 0;
	line-height: 0;
}
.image-cards-carousel .image-cards-carousel-wrapper {
	position: relative;
	overflow: hidden;
}
.image-cards-carousel .swiper-container {
	position: relative;
	overflow: visible;
	margin-inline: calc(var(--swiper-slide-gutter) * -0.5);
}
.image-cards-carousel .swiper-slide {
	display: flex;
	height: auto;
	padding-inline: calc(var(--swiper-slide-gutter) * 0.5);
}
.image-cards-carousel .swiper-slide > a {
	display: flex;
	width: 100%;
	color: inherit;
	text-decoration: none;
}
.image-cards-carousel .swiper-slide > a:hover, .image-cards-carousel .swiper-slide > a:focus {
	color: inherit;
	text-decoration: none;
}
.image-cards-carousel .swiper-scrollbar {
	margin-top: 4.1rem;
}
@media (max-width: 991.98px) {
	.image-cards-carousel {
		--swiper-slide-gutter: 2rem;
	}
	.image-cards-carousel .image-cards-carousel-wrapper {
		overflow: visible;
	}
	.image-cards-carousel .swiper-slide {
		width: auto;
	}
	.image-cards-carousel .image-card {
		width: 24.6rem;
	}
}
@media (min-width: 992px) {
	.image-cards-carousel.gallery-images {
		margin-left: -1.2rem;
		margin-right: -1.2rem;
	}
	.image-cards-carousel.gallery-images .image-cards-carousel-wrapper {
		overflow: visible;
	}
	.image-cards-carousel.gallery-images .swiper-container {
		padding-right: 9rem;
	}
	.image-cards-carousel.gallery-images .image-card .image-card-image {
		aspect-ratio: 369/494;
	}
}

.request-widget {
	border-radius: 999.9rem;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	padding: 0.7rem 0.8rem;
}
.request-widget .request-widget-btns {
	list-style: none;
	margin: 0 -0.5rem;
	padding: 0 0 0 1.4rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.request-widget .request-widget-btns > li {
	display: flex;
	flex-shrink: 0;
	padding-inline: 0.5rem;
}
.request-widget .request-widget-btns > li:nth-child(1) {
	width: 48%;
}
.request-widget .request-widget-btns > li:nth-child(2) {
	width: 52%;
}
.request-widget .request-widget-btns > li .request-widget-btn {
	display: block;
	width: 100%;
	border: 0;
	font-size: 1rem;
	line-height: 1.6;
	font-weight: 400;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
	text-align: center;
}
.request-widget .request-widget-btns > li .request-widget-btn.request-widget-btn-explore {
	color: #fff;
	background: none;
	padding: 0.2rem 0;
	letter-spacing: 0.05rem;
	text-decoration: underline;
	text-underline-offset: 0.8rem;
}
.request-widget .request-widget-btns > li .request-widget-btn.request-widget-btn-service {
	color: var(--color-dark-blue);
	background-color: #fff;
	border-radius: 999.9rem;
	width: 100%;
	padding: 1.2rem 0.5rem;
}

/* select-dropdown */
.select-dropdown {
	position: relative;
	font-size: 1.7rem;
	line-height: 1.176;
}
@media (max-width: 767.98px) {
	.select-dropdown {
		font-size: 1.4rem;
		line-height: 1.4;
	}
}
.select-dropdown .btn-toggle {
	display: block;
	text-decoration: none;
	background: var(--color-gray-alpha-35);
	border-radius: 0.6rem;
	padding: 1.9rem 6rem 1.9rem 1.5rem;
	position: relative;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	border: 1px solid transparent;
	transition: 0.3s ease-out;
	transition-property: border, background;
}
@media (max-width: 767.98px) {
	.select-dropdown .btn-toggle {
		padding: 0.9rem 4rem 0.9rem 1.5rem;
	}
}
@media (max-width: 767.98px) {
	.select-dropdown .btn-toggle {
		background: #fff;
		padding-right: 6rem;
	}
}
.select-dropdown .btn-toggle::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.8rem;
	transform: translate(0, -50%);
	width: 2.4rem;
	aspect-ratio: 1;
	-webkit-mask: url("../images/icon-arrow-down.svg") no-repeat;
	        mask: url("../images/icon-arrow-down.svg") no-repeat;
	-webkit-mask-size: contain;
	        mask-size: contain;
	background: currentColor;
}
@media (max-width: 767.98px) {
	.select-dropdown .btn-toggle::after {
		right: 0.8rem;
	}
}
@media (max-width: 767.98px) {
	.select-dropdown .btn-toggle::after {
		right: 1.4rem;
	}
}
.select-dropdown ul {
	margin: 0;
	padding: 0;
	list-style: none;
	background: var(--color-gray-alpha-35);
	border-radius: 0.6rem;
	overflow: hidden;
	display: none;
}
.select-dropdown .nice-select .list {
	display: block;
}
@media (max-width: 767.98px) {
	.select-dropdown ul {
		background: #fff;
	}
}
.select-dropdown ul li a {
	display: block;
	text-decoration: none;
	padding: 2rem 1.6rem;
}
@media (max-width: 767.98px) {
	.select-dropdown ul li a {
		padding: 1rem 1.6rem;
	}
}
.select-dropdown ul li a:hover {
	background: var(--color-gray-alpha-35);
}
.select-dropdown.open .btn-toggle {
	border-color: var(--color-dark-blue);
}
.select-dropdown.selected .btn-toggle {
	border-color: var(--color-dark-blue);
	background: #fff;
}

/* swiper-control */
.swiper-control {
	display: flex;
	align-items: center;
	gap: 2rem;
	justify-content: flex-start;
	font-size: 1.6rem;
}
.swiper-control .swiper-next,
.swiper-control .swiper-prev {
	flex-shrink: 0;
	width: 1.5rem;
	height: 1.6rem;
	background: url("../images/icon-arrow-right.svg") no-repeat;
	background-size: contain;
	cursor: pointer;
}
.swiper-control .swiper-fraction {
	width: auto;
}
.swiper-control .swiper-prev {
	transform: scale(-1, 1);
}

#header {
	position: absolute;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
}
#header .container-fluid {
	padding-block: 4.8rem;
}
#header .logo {
	display: block;
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 31.1rem;
}
#header .logo a {
	color: inherit;
}
#header .logo img,
#header .logo svg {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
#header .logo svg path {
	transition: all 0.3s ease;
}
.menu-opened #header .logo svg path {
	fill: currentColor;
}
@media (max-width: 991.98px) {
	.menu-opened #header {
		color: #fff;
		background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	}
	#header .container-fluid {
		padding-top: 5.5rem;
		padding-bottom: 3rem;
	}
	#header .logo {
		max-width: 17.2rem;
	}
	#header .header-btns {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 1rem;
	}
	#header .header-btns > li {
		display: flex;
	}
	#header .header-btns > li .header-ico-btn {
		position: relative;
		overflow: hidden;
		width: 3rem;
		height: 3rem;
		color: inherit;
	}
	#header .header-btns > li .header-ico-btn img,
	#header .header-btns > li .header-ico-btn svg {
		position: absolute;
		z-index: 10;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		max-width: 100%;
		max-height: 100%;
	}
	#header .header-btns > li .header-ico-btn svg path {
		transition: all 0.3s ease;
		fill: currentColor;
	}
}

.mobile-menu {
	--mobile-menu-top: 0;
	--mobile-menu-bottom: 0;
	--mobile-menu-left: 0;
	--mobile-menu-right: 0;
	--mobile-menu-transform: none;
	--mobile-menu-opacity: 0;
	--mobile-menu-z-index: 98;
	--mobile-menu-width: auto;
	--mobile-menu-top-padding: calc(var(--header-height) + 2rem);
	--mobile-menu-bottom-padding: 1.8rem;
	--mobile-menu-side-padding: var(--container-padding-x);
	--mobile-menu-nav-font-size: 2rem;
	--mobile-menu-nav-line-height: 1.2;
	--mobile-menu-nav-font-weight: 400;
	--mobile-menu-nav-font-family: var(--font-pearl-sans);
	--mobile-menu-footer-top-padding: 2.5rem;
	--mobile-menu-bg: #ececeb;
	--mobile-menu-color: #fff;
	--mobile-menu-nav-color: var(--mobile-menu-color);
	--mobile-menu-nav-active-color: var(--mobile-menu-color);
	position: fixed;
	z-index: var(--mobile-menu-z-index);
	top: var(--mobile-menu-top);
	left: var(--mobile-menu-left);
	right: var(--mobile-menu-right);
	bottom: var(--mobile-menu-bottom);
	width: var(--mobile-menu-width);
	max-width: 100vw;
	overflow: hidden;
	color: var(--mobile-menu-color);
	transition: all 0.3s ease;
	transform: var(--mobile-menu-transform);
	opacity: var(--mobile-menu-opacity);
	pointer-events: none;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
}
.menu-opened .mobile-menu {
	transform: translate(0, 0);
	pointer-events: all;
	opacity: 1;
}
.mobile-menu .mobile-menu-wrapper {
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	overflow-x: hidden;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	width: 100%;
}
.mobile-menu .mobile-menu-body {
	width: 100%;
	padding-top: var(--mobile-menu-top-padding);
}
.mobile-menu .mobile-menu-body:last-child {
	padding-bottom: var(--mobile-menu-bottom-padding);
}
.mobile-menu .mobile-menu-nav {
	color: var(--mobile-menu-nav-color);
	font-size: var(--mobile-menu-nav-font-size);
	line-height: var(--mobile-menu-nav-line-height);
	font-weight: var(--mobile-menu-nav-font-weight);
	font-family: var(--mobile-menu-nav-font-family);
	text-transform: uppercase;
}
.mobile-menu .mobile-menu-nav > ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.mobile-menu .mobile-menu-nav > ul > li {
	border-bottom: 1px solid currentColor;
}
.mobile-menu .mobile-menu-nav > ul > li > a {
	display: block;
	color: inherit;
	text-decoration: none;
	padding: 2.5rem 3rem;
}
.mobile-menu .mobile-menu-nav > ul > li > a:hover {
	color: inherit;
	text-decoration: none;
}
.mobile-menu .mobile-menu-nav > ul > li.active > a {
	color: var(--mobile-menu-nav-active-color);
}
.mobile-menu .mobile-menu-footer {
	width: 100%;
	margin-top: auto;
	padding: var(--mobile-menu-footer-top-padding) var(--mobile-menu-side-padding) var(--mobile-menu-bottom-padding);
	font-size: 1.2rem;
	line-height: 1.333;
}
.mobile-menu .mobile-menu-footer h3, .mobile-menu .mobile-menu-footer .h3 {
	font-size: inherit;
	line-height: inherit;
	margin-bottom: 0;
	color: inherit;
}
.mobile-menu .mobile-menu-footer .mobile-menu-footer-btns {
	--mobile-menu-footer-btns-gutter: 1rem;
	list-style: none;
	margin: 0 calc(var(--mobile-menu-footer-btns-gutter) * -0.5);
	padding: 0.4rem 0 0;
	display: flex;
	flex-wrap: wrap;
}
.mobile-menu .mobile-menu-footer .mobile-menu-footer-btns > li {
	display: flex;
	padding-inline: calc(var(--mobile-menu-footer-btns-gutter) * 0.5);
}
.mobile-menu .mobile-menu-footer .mobile-menu-footer-btns > li:nth-child(1) {
	width: 51%;
}
.mobile-menu .mobile-menu-footer .mobile-menu-footer-btns > li:nth-child(2) {
	width: 49%;
}
.mobile-menu .mobile-menu-footer .mobile-menu-footer-btns > li .btn {
	--bs-btn-font-size: 1.2rem;
	--bs-btn-line-height: 1.333;
	--bs-btn-padding-x: 0.5rem;
	--bs-btn-padding-y: 1.1rem;
	width: 100%;
}
@media (min-width: 992px) {
	.mobile-menu {
		display: none !important;
	}
}

.main {
	position: relative;
	padding-top: var(--header-height);
}

.request-section {
	position: relative;
	z-index: 101;
	padding-top: 6rem;
	padding-bottom: 8rem;
}
@media (min-width: 992px) {
	.request-section {
		position: sticky;
		top: 0;
		width: 100%;
		background-color: #ececeb;
		padding-block: 2rem;
		margin-top: 4rem;
		/* margin-bottom: 6rem; */
	}
}
@media (max-width: 991.98px) {
	.request-section {
		padding-block: 0;
		position: fixed;
		z-index: 150;
		inset-block-end: 0;
		inset-inline: 0;
		transition: all 0.3s ease;
		opacity: 0;
		pointer-events: none;
	}
	.request-section-opened:not(.menu-opened) .request-section {
		opacity: 1;
		pointer-events: all;
	}
	/* Prevent AOS from making request-section visible on mobile — body class controls it instead */
	.request-section[data-aos],
	.request-section[data-aos].aos-animate {
		opacity: 0 !important;
		transform: none !important;
		transition: all 0.3s ease !important;
		pointer-events: none !important;
	}
	.request-section-opened:not(.menu-opened) .request-section[data-aos],
	.request-section-opened:not(.menu-opened) .request-section[data-aos].aos-animate {
		opacity: 1 !important;
		pointer-events: all !important;
	}
}

.hero-section {
	position: relative;
	overflow: hidden;
	padding-block: 4.1rem;
}
.hero-section .hero-section-body {
	display: flex;
	flex-direction: column-reverse;
}
.hero-section .hero-section-image {
	width: 100%;
	margin: 0 0 8.2rem;
	position: relative;
	overflow: hidden;
	border-radius: 1rem;
	aspect-ratio: 2.08/1;
}
.hero-section .hero-section-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.hero-section h1, .hero-section .h1 {
	width: 100%;
	max-width: 80%;
}
.hero-section h1:last-child, .hero-section .h1:last-child {
	margin-bottom: 0;
}
@media (max-width: 991.98px) {
	.hero-section {
		padding-top: 2rem;
		padding-bottom: 0;
	}
	.hero-section .hero-section-body {
		display: block;
	}
	.hero-section .hero-section-image {
		width: auto;
		margin-bottom: 0;
		margin-inline: calc(var(--container-padding-x) * -1);
		border-radius: 0;
		aspect-ratio: 0.77/1;
	}
	.hero-section .hero-section-image img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
	}
	.hero-section h1, .hero-section .h1 {
		width: auto;
		max-width: none;
		margin-bottom: 4rem;
		margin-inline: -0.5rem;
		line-height: 1.321;
	}
}

.info-cards-section {
	position: relative;
	overflow: hidden;
	padding-top: 4.1rem;
	padding-bottom: 20rem;
}
.info-cards-section .heading {
	padding-bottom: 14.4rem;
}
@media (max-width: 991.98px) {
	.info-cards-section {
		padding-top: 7rem;
		padding-bottom: 4.9rem;
	}
	.info-cards-section .heading {
		padding-bottom: 6.8rem;
	}
}

.service-cards-section {
	position: relative;
	overflow: hidden;
	padding-top: 11.6rem;
	padding-bottom: 11.9rem;
}
.service-cards-section .services-section-footer {
	text-align: center;
	padding-top: 0.5rem;
}
@media (min-width: 992px) {
	.service-cards-section.service-cards-section-padding-block-lg {
		padding-top: 17.6rem;
		padding-bottom: 17.9rem;
	}
}
@media (max-width: 991.98px) {
	.service-cards-section {
		padding-top: 6.8rem;
		padding-bottom: 4.8rem;
	}
	.service-cards-section .services-section-footer {
		padding-top: 0;
	}
	.service-cards-section.service-cards-section-padding-block-lg {
		padding-top: 2.4rem;
	}
}

.info-banner-section {
	position: relative;
	overflow: hidden;
	padding-top: 11.6rem;
	padding-bottom: 8rem;
}
@media (min-width: 992px) {
	.info-banner-section.info-banner-section-regular {
		padding-block: 17.6rem;
	}
	.info-banner-section.info-banner-section-padding-block-lg {
		padding-top: 7.4rem;
		padding-bottom: 17.9rem;
	}
}
@media (max-width: 991.98px) {
	.info-banner-section {
		padding-top: 6.7rem;
		padding-bottom: 3rem;
	}
	.info-banner-section.info-banner-section-padding-block-lg {
		padding-top: 11rem;
		padding-bottom: 4.5rem;
	}
}

.image-cards-section {
	position: relative;
	overflow: hidden;
	padding-top: 8.4rem;
	padding-bottom: 8rem;
}
@media (max-width: 991.98px) {
	.image-cards-section {
		padding-top: 1.8rem;
		padding-bottom: 4.4rem;
	}
}

.other-services-section {
	position: relative;
	overflow: hidden;
	padding-top: 9.6rem;
	padding-bottom: 12rem;
}
.other-services-section .heading {
	padding-bottom: 7.8rem;
}
.other-services-section .other-services-section-body {
	position: relative;
	max-width: 90%;
	margin-inline: auto;
}
.other-services-section .other-services-section-body::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset-block-start: 0;
	inset-block-end: 0;
	inset-inline: -999.9rem;
	background: url(../images/bg-line-dark-blue-01.webp) repeat 0 0;
	background-size: 1px 11.3rem;
}
.other-services-section .other-services-section-body-text {
	position: relative;
	z-index: 5;
	text-align: center;
	font-size: 5rem;
	line-height: 2.26;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
}
.other-services-section .other-services-section-body-text span a {
	color: inherit;
	text-decoration: none;
}
.other-services-section .other-services-section-body-text span a:hover {
	color: var(--color-copper);
	text-decoration: none;
}
.other-services-section .other-services-section-body-text figure {
	display: inline-block;
	vertical-align: middle;
	margin: 0 3.5rem;
	position: relative;
	inset-block-start: -0.4rem;
	overflow: hidden;
	width: 14.9rem;
	aspect-ratio: 1.67/1;
	border-radius: 0.4rem;
}
.other-services-section .other-services-section-body-text figure img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.other-services-section .other-services-section-footer {
	text-align: center;
	padding-top: 7.4rem;
}
@media (max-width: 991.98px) {
	.other-services-section {
		padding-top: 6.7rem;
		padding-bottom: 3rem;
	}
	.other-services-section .heading {
		padding-bottom: 6.7rem;
	}
	.other-services-section .other-services-section-body {
		max-width: 100%;
		margin-inline: 0;
	}
	.other-services-section .other-services-section-body::before {
		background-image: url(../images/bg-line-dark-blue-02.webp);
		background-size: 1px 5.6rem;
		border-bottom: 1px solid currentColor;
	}
	.other-services-section .other-services-section-body-text {
		font-size: 2rem;
		line-height: 2.8;
	}
	.other-services-section .other-services-section-body-text figure {
		margin-inline: 2rem;
		inset-block-start: -0.1rem;
		width: 6rem;
		border-radius: 0.2rem;
	}
	.other-services-section .other-services-section-footer {
		padding-top: 7.2rem;
	}
}

.benefits-section {
	position: relative;
	overflow: hidden;
	padding-top: 8rem;
	padding-bottom: 1.8rem;
}
.benefits-section .benefits-section-body {
	width: 100%;
}
.benefits-section .benefits-section-body h2, .benefits-section .benefits-section-body .h2 {
	font-size: 5rem;
	margin-bottom: 2.9rem;
}
.benefits-section .benefits-section-body p {
	max-width: 77%;
}
.benefits-section .benefits-section-body p:last-child {
	margin-bottom: 0;
}
.benefits-section .benefits-section-btn-row {
	padding-top: 2rem;
	padding-bottom: 8rem;
	margin-top: auto;
	width: 100%;
}
.benefits-section .benefits-section-items {
	max-width: 85.5%;
	margin-top: -3.2rem;
	margin-inline-start: auto;
}
@media (max-width: 991.98px) {
	.benefits-section {
		padding-top: 1.9rem;
		padding-bottom: 3.6rem;
	}
	.benefits-section .benefits-section-card {
		padding: 2.9rem var(--container-padding-x) 3.6rem;
		border-radius: 0.8rem;
		background-color: #fff;
	}
	.benefits-section .benefits-section-card .benefits-section-card-footer {
		padding-top: 6.1rem;
	}
	.benefits-section .benefits-section-body {
		font-size: 1.2rem;
		line-height: 1.333;
	}
	.benefits-section .benefits-section-body h2, .benefits-section .benefits-section-body .h2 {
		font-size: 2rem;
		line-height: 1.3;
		margin-bottom: 2.2rem;
	}
	.benefits-section .benefits-section-body p {
		max-width: 100%;
	}
	.benefits-section .benefits-section-items {
		max-width: 100%;
		margin-top: 0;
		margin-inline-start: 0;
		padding-top: 5.7rem;
	}
}

.subscribe-section {
	position: relative;
	overflow: hidden;
	padding-top: 5.9rem;
	padding-bottom: 12.3rem;
	color: var(--color-dark-blue);
	background-color: #fff;
}
.subscribe-section .subscribe-section-wrapper {
	max-width: 109.4rem;
	margin-inline: auto;
}
.subscribe-section .subscribe-section-heading {
	text-align: center;
	padding-bottom: 6.2rem;
}
.subscribe-section .subscribe-section-heading .subscribe-section-ico {
	position: relative;
	overflow: hidden;
	width: 6rem;
	height: 6rem;
	margin-bottom: 0.2rem;
	margin-inline: auto;
}
.subscribe-section .subscribe-section-heading .subscribe-section-ico img {
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
}
.subscribe-section .subscribe-section-heading h2, .subscribe-section .subscribe-section-heading .h2 {
	margin-bottom: 0.4rem;
}
.subscribe-section .subscribe-section-heading h2:last-child, .subscribe-section .subscribe-section-heading .h2:last-child {
	margin-bottom: 0;
}
.subscribe-section .subscribe-section-heading p:last-child {
	margin-bottom: 0;
}
@media (max-width: 991.98px) {
	.subscribe-section {
		padding-top: 3.6rem;
		padding-bottom: 7.2rem;
		background: none;
	}
	.subscribe-section .subscribe-section-wrapper {
		max-width: 100%;
		margin-inline: 0;
		padding: 3rem 2rem 3.6rem;
		background-color: #fff;
		border-radius: 0.8rem;
	}
	.subscribe-section .subscribe-section-heading {
		text-align: start;
		padding-bottom: 2.6rem;
		font-size: 1.2rem;
		line-height: 1.333;
	}
	.subscribe-section .subscribe-section-heading h2, .subscribe-section .subscribe-section-heading .h2 {
		line-height: 1.3;
		margin-bottom: 2.3rem;
	}
	.subscribe-section .subscribe-section-heading h2:last-child, .subscribe-section .subscribe-section-heading .h2:last-child {
		margin-bottom: 0;
	}
}

.statistic-section {
	position: relative;
	overflow: hidden;
	padding-top: 3.1rem;
	padding-bottom: 2rem;
}
@media (max-width: 991.98px) {
	.statistic-section {
		padding-top: 3.7rem;
		padding-bottom: 1rem;
	}
}

.logos-section {
	position: relative;
	overflow: hidden;
	padding-top: 5.5rem;
	padding-bottom: 8rem;
}
.logos-section .heading {
	padding-bottom: 7.7rem;
}
.logos-section .heading h2, .logos-section .heading .h2 {
	color: var(--color-dark-blue);
}
@media (max-width: 991.98px) {
	.logos-section {
		padding-top: 8.1rem;
		padding-bottom: 3.5rem;
	}
	.logos-section .heading {
		padding-bottom: 2.7rem;
	}
}

.text-section {
	position: relative;
	overflow: hidden;
	padding-top: 13.6rem;
	padding-bottom: 17.9rem;
}
.text-section h2, .text-section .h2 {
	font-size: 5rem;
	margin-bottom: 2.6rem;
}
.text-section .text-section-body {
	max-width: 73%;
}
.text-section .text-section-footer {
	padding-top: 8.8rem;
}
@media (max-width: 991.98px) {
	.text-section {
		padding-top: 2.8rem;
		padding-bottom: 4.7rem;
	}
	.text-section h2, .text-section .h2 {
		font-size: 2rem;
		line-height: 1.3;
		margin-bottom: 2.1rem;
	}
	.text-section .text-section-body {
		max-width: 100%;
	}
	.text-section .text-section-footer {
		padding-top: 2.5rem;
		text-align: center;
	}
}

.request-widget-section {
	position: fixed;
	z-index: 95;
	inset-block-end: var(--container-padding-x);
	inset-inline: 0;
}

#footer {
	margin-top: auto;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.25;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
}
#footer a {
	color: inherit;
	text-decoration: none;
}
#footer a:hover {
	color: var(--color-dark-blue);
	text-decoration: none;
}
#footer .container {
	padding-block: 8.1rem;
}
#footer .footer-body {
	width: 100%;
	position: relative;
	z-index: 10;
}
#footer .footer-logo {
	display: block;
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 19.5rem;
	margin-top: 0.5rem;
}
#footer .footer-logo img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
#footer .footer-nav {
	--footer-nav-gutter: 9rem;
	--footer-nav-col-width: 50%;
	max-width: 63rem;
	margin-top: -0.9rem;
}
#footer .footer-nav nav {
	display: flex;
	flex-wrap: wrap;
	margin-inline: calc(var(--footer-nav-gutter) * -0.5);
	font-size: 1.4rem;
	line-height: 1.25;
	font-weight: 400;
	font-family: var(--font-pearl-sans);
	text-transform: uppercase;
}
#footer .footer-nav nav > ul {
	list-style: none;
	margin: 0;
	padding: 0 calc(var(--footer-nav-gutter) * 0.5);
	width: var(--footer-nav-col-width);
	flex-shrink: 0;
}
#footer .footer-nav nav > ul > li {
	padding-block: 1.1rem;
	border-bottom: 1px solid currentColor;
}
#footer .footer-nav nav > ul > li:last-child {
	border-bottom: 0;
}
#footer p {
	margin-bottom: 2.2rem;
}
#footer .footer-dropdowns {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.2rem;
	padding-bottom: 7.9rem;
}
#footer .footer-dropdown {
	--footer-dropdown-height: 4rem;
	--footer-dropdown-border-width: 1px;
	--footer-dropdown-padding-x: 2rem;
	--footer-dropdown-border-radius: 2rem;
	--footer-dropdown-font-size: 1.2rem;
	--footer-dropdown-line-height: 1.25;
	--footer-dropdown-font-weight: 700;
	--footer-dropdown-font-family: var(--font-pearl-sans);
	--footer-dropdown-color: currentColor;
	position: relative;
}
#footer .footer-dropdown .dropdown-toggle {
	--dropdown-toggle-border-width: var(--footer-dropdown-border-width);
	--dropdown-toggle-padding-x: var(--footer-dropdown-padding-x);
	--dropdown-toggle-padding-x-right: 5rem;
	--dropdown-toggle-padding-y: calc((var(--footer-dropdown-height) - (var(--footer-dropdown-border-width) * 2) - (var(--footer-dropdown-font-size) * var(--footer-dropdown-line-height))) * 0.5);
	--dropdown-toggle-font-size: var(--footer-dropdown-font-size);
	--dropdown-toggle-line-height: var(--footer-dropdown-line-height);
	--dropdown-toggle-font-weight: var(--footer-dropdown-font-weight);
	--dropdown-toggle-font-family: var(--footer-dropdown-font-family);
	--dropdown-toggle-arrow-size: 0.8rem;
	--dropdown-toggle-arrow-line-width: var(--footer-dropdown-border-width);
	--dropdown-toggle-arrow-right: 2.6rem;
	--dropdown-toggle-text-color: var(--footer-dropdown-color);
	--dropdown-toggle-bg-color: transparent;
	--dropdown-toggle-border-color: var(--dropdown-toggle-text-color);
	--dropdown-toggle-arrow-color: var(--dropdown-toggle-text-color);
	white-space: normal;
	display: block;
	position: relative;
	width: 100%;
	color: var(--footer-dropdown-color);
	background: var(--dropdown-toggle-bg-color);
	border: var(--dropdown-toggle-border-width) solid var(--dropdown-toggle-border-color);
	padding: var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x-right) var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x);
	font-size: var(--dropdown-toggle-font-size);
	line-height: var(--dropdown-toggle-line-height);
	font-weight: var(--dropdown-toggle-font-weight);
	font-family: var(--dropdown-toggle-font-family);
	text-transform: uppercase;
	text-align: start;
	border-radius: 999.9rem;
	transition: none;
}
#footer .footer-dropdown .dropdown-toggle::after {
	content: "";
	position: absolute;
	z-index: 5;
	top: 50%;
	right: var(--dropdown-toggle-arrow-right);
	transform: translate(0, -50%) rotate(45deg);
	vertical-align: top;
	width: var(--dropdown-toggle-arrow-size);
	height: var(--dropdown-toggle-arrow-size);
	margin: calc(var(--dropdown-toggle-arrow-size) * -0.25) 0 0;
	border: solid var(--dropdown-toggle-arrow-color);
	border-width: 0 var(--dropdown-toggle-arrow-line-width) var(--dropdown-toggle-arrow-line-width) 0;
	transition: all 0.3s ease;
}
#footer .footer-dropdown .dropdown-toggle.show {
	background-color: #af8873;
	border-bottom-color: transparent;
	border-radius: var(--footer-dropdown-border-radius) var(--footer-dropdown-border-radius) 0 0;
}
#footer .footer-dropdown .dropdown-toggle.show::after {
	transform: translate(0, -50%) rotate(225deg);
	margin-top: calc(var(--dropdown-toggle-arrow-size) * 0.25);
}
#footer .footer-dropdown .dropdown-menu {
	--bs-dropdown-zindex: 1000;
	--bs-dropdown-min-width: 100%;
	--bs-dropdown-max-width: 100%;
	--bs-dropdown-spacer: 0;
	--bs-dropdown-divider-margin-y: 0;
	--bs-dropdown-box-shadow: none;
	--bs-dropdown-border-width: var(--footer-dropdown-border-width);
	--bs-dropdown-border-radius: 0 0 var(--footer-dropdown-border-radius) var(--footer-dropdown-border-radius);
	--bs-dropdown-inner-border-radius: var(--bs-dropdown-border-radius);
	--bs-dropdown-item-border-radius: var(--bs-dropdown-border-radius);
	--bs-dropdown-font-size: var(--footer-dropdown-font-size);
	--bs-dropdown-link-font-size: var(--bs-dropdown-font-size);
	--bs-dropdown-link-line-height: var(--footer-dropdown-line-height);
	--bs-dropdown-link-font-weight: var(--footer-dropdown-font-weight);
	--bs-dropdown-link-font-family: var(--footer-dropdown-font-family);
	--bs-dropdown-padding-x: 0;
	--bs-dropdown-padding-y-top: 0;
	--bs-dropdown-padding-y-bottom: 0;
	--bs-dropdown-header-padding-x: 0;
	--bs-dropdown-header-padding-y: 0;
	--bs-dropdown-item-padding-x: var(--footer-dropdown-padding-x);
	--bs-dropdown-item-padding-y: calc((var(--footer-dropdown-height) - (var(--footer-dropdown-border-width) * 2) - (var(--footer-dropdown-font-size) * var(--footer-dropdown-line-height))) * 0.5);
	--bs-dropdown-color: var(--footer-dropdown-color);
	--bs-dropdown-bg: #af8873;
	--bs-dropdown-border-color: var(--bs-dropdown-color);
	--bs-dropdown-link-color: var(--bs-dropdown-color);
	--bs-dropdown-link-hover-color: var(--color-dark-blue);
	--bs-dropdown-link-hover-bg: transparent;
	--bs-dropdown-link-active-color: var(--bs-dropdown-link-hover-color);
	--bs-dropdown-link-active-bg: var(--bs-dropdown-link-hover-bg);
	--bs-dropdown-link-disabled-color: var(--bs-dropdown-link-color);
	--bs-dropdown-divider-bg: var(--bs-dropdown-link-color);
	--bs-dropdown-header-color: var(--bs-dropdown-link-color);
	text-align: left;
	max-width: var(--bs-dropdown-max-width);
	box-shadow: var(--bs-dropdown-box-shadow);
	padding-top: var(--bs-dropdown-padding-y-top);
	padding-bottom: var(--bs-dropdown-padding-y-bottom);
	border-width: 0 var(--footer-dropdown-border-width) var(--footer-dropdown-border-width);
	margin-top: -1px !important;
	inset: 100% 0 auto !important;
	transform: none !important;
}
#footer .footer-dropdown .dropdown-menu > li {
	position: relative;
}
#footer .footer-dropdown .dropdown-menu .dropdown-item {
	display: block;
	width: 100%;
	font-size: var(--bs-dropdown-link-font-size);
	line-height: var(--bs-dropdown-link-line-height);
	font-weight: var(--bs-dropdown-link-font-weight);
	font-family: var(--bs-dropdown-link-font-family);
	text-align: left;
	text-decoration: none;
	white-space: normal;
	border: 0;
}
#footer .footer-payment-logos {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
#footer .footer-payment-logos > li > figure {
	position: relative;
	overflow: hidden;
	height: 3rem;
	margin: 0;
}
#footer .footer-payment-logos > li > figure img {
	display: block;
	width: auto;
	height: 100%;
	max-height: 100%;
}
#footer .footer-bottom {
	padding-top: 9.9rem;
}
#footer .footer-bottom p:last-child {
	margin-bottom: 0;
}
@media (min-width: 992px) {
	#footer .footer-body > .row > div[class^=col-]:nth-child(1) {
		width: 23.7%;
	}
	#footer .footer-body > .row > div[class^=col-]:nth-child(2) {
		width: 51.7%;
	}
	#footer .footer-body > .row > div[class^=col-]:nth-child(3) {
		width: 24.6%;
	}
	#footer .footer-bottom > .row > div[class^=col-]:nth-child(1) {
		width: 24%;
	}
	#footer .footer-bottom > .row > div[class^=col-]:nth-child(2) {
		width: 24%;
	}
}
@media (max-width: 991.98px) {
	#footer {
		font-size: 1.4rem;
	}
	#footer .container {
		--bs-gutter-x: 6rem;
		padding-top: 3.8rem;
		padding-bottom: 13.2rem;
	}
	#footer .footer-logo {
		max-width: 14.6rem;
		margin-top: 0;
		margin-bottom: 4.9rem;
	}
	#footer .footer-nav {
		--footer-nav-gutter: 2rem;
		max-width: none;
		margin-top: 0;
		margin-bottom: 5.4rem;
	}
	#footer .footer-nav nav {
		font-size: 1rem;
		line-height: 1.4;
	}
	#footer .footer-nav nav > ul > li {
		padding-block: 1rem;
	}
	#footer p {
		margin-bottom: 2rem;
	}
	#footer .footer-by {
		display: block;
		padding-bottom: 2.5rem;
	}
	#footer .footer-dropdowns {
		padding-bottom: 2rem;
		gap: 0.8rem;
	}
	#footer .footer-dropdown .dropdown-toggle {
		--dropdown-toggle-padding-x-right: 5rem;
		--footer-dropdown-font-size: 1rem;
		--dropdown-toggle-arrow-right: 2.6rem;
	}
	#footer .footer-payment-logos {
		justify-content: flex-start;
		gap: 1.6rem 2.6rem;
		margin-bottom: 2.7rem;
	}
	#footer .footer-payment-logos > li > figure {
		height: 2rem;
	}
	#footer .footer-bottom {
		padding-top: 4.9rem;
	}
}

/* DaisyUI v5 already applies background-color: oklch(0% 0 0 / 0.4) on dialog.modal[open].
   AuthModal and TermsModal each add a second bg-black/40 inner div for the blurred overlay.
   The two layers compound to ~64% opaque black, looking pitch-black on light backgrounds.
   Reset the dialog's own background so the inner div is the sole overlay (matching intent). */
dialog.modal[open] {
	background-color: transparent;
}

.modal {
	--bs-modal-width: calc(100% - (6.95% * 2));
	--bs-modal-padding: 1.5rem;
	--bs-modal-margin: 3rem;
	--bs-modal-zindex: 1055;
	--bs-modal-border-width: 1px;
	--bs-modal-border-radius: 2rem;
	--bs-modal-box-shadow: none;
	--bs-modal-inner-border-radius: 0;
	--bs-modal-color: var(--color-dark-blue);
	--bs-modal-bg: #fff;
	--bs-modal-border-color: var(--color-dark-blue);
	--bs-modal-btn-close-top: 4.4rem;
	--bs-modal-btn-close-right: 4.1rem;
}
.modal .modal-dialog {
	width: 100%;
	max-width: var(--bs-modal-width);
	margin-left: auto;
	margin-right: auto;
}
.modal .modal-content {
	position: relative;
}
.modal .btn-close {
	position: absolute;
	top: var(--bs-modal-btn-close-top);
	right: var(--bs-modal-btn-close-right);
}
@media (max-width: 991.98px) {
	.modal {
		--bs-modal-width: calc(100% - (var(--container-padding-x) * 2) - 0.8rem);
		--bs-modal-btn-close-top: 1.6rem;
		--bs-modal-btn-close-right: 1.9rem;
	}
}

/* contact-form-section */
.contact-form-section {
	padding: 1rem 0;
}
@media (max-width: 767.98px) {
	.contact-form-section {
		padding-bottom: 6rem;
	}
}
.contact-form-section .title-block {
	text-align: center;
	padding: 0 0 4rem;
}
@media (max-width: 991.98px) {
	.contact-form-section .title-block {
		padding-bottom: 5.6rem;
	}
}
@media (max-width: 767.98px) {
	.contact-form-section .title-block {
		font-size: 1.2rem;
		padding-bottom: 4.4rem;
	}
}
.contact-form-section .title-block h1, .contact-form-section .title-block .h1 {
	text-transform: uppercase;
	line-height: 1;
	margin: 0 0 1.9rem;
}
@media (min-width: 768px) {
	.contact-form-section .title-block h1, .contact-form-section .title-block .h1 {
		font-size: 4rem;
	}
}
@media (max-width: 767.98px) {
	.contact-form-section .title-block h1, .contact-form-section .title-block .h1 {
		font-size: 2rem;
		margin-bottom: 0.6rem;
	}
}
.contact-form-section .title-block p:last-child {
	margin-bottom: 0;
}
.contact-form-section .title-block .ico-txt-block {
	display: flex;
	text-align: left;
	align-items: flex-start;
	gap: 0.8rem;
}
@media (min-width: 992px) {
	.contact-form-section .title-block .ico-txt-block {
		display: none;
	}
}
.contact-form-section .title-block .ico-txt-block .ico {
	flex-shrink: 0;
	width: 3rem;
	height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0.4rem 0 0;
}
.contact-form-section .title-block .ico-txt-block .ico img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
.contact-form-section .text-block {
	text-align: center;
	font-size: 1.6rem;
	padding: 2rem 0;
	max-width: 60rem;
	margin: 0 auto;
	transition: opacity 0.3s ease-out;
}
@media (max-width: 767.98px) {
	.contact-form-section .text-block {
		font-size: 1.4rem;
		padding: 1.6rem 0;
	}
}
@media (max-width: 767.98px) {
	.contact-form-section .text-block {
		font-size: 1.2rem;
		padding: 0.6rem 0;
	}
}
.contact-form-section .text-block p:last-child {
	margin-bottom: 0;
}
.contact-form-section .form-container {
	position: relative;
}
.contact-form-section .form-container .tab {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease-out;
	padding: 2rem 0 0;
}
@media (max-width: 767.98px) {
	.contact-form-section .form-container .tab {
		padding-top: 2.8rem;
	}
}
.contact-form-section .form-container .tab.active {
	position: relative;
	z-index: 15;
	opacity: 1;
	pointer-events: auto;
}
.contact-form-section .form-container .tab.active ~ .text-block {
	opacity: 0;
	pointer-events: none;
}

.contact-form h3, .contact-form .h3 {
	font: inherit;
	font-weight: bold;
	font-size: 1.9rem;
	text-transform: none;
}
@media (max-width: 767.98px) {
	.contact-form h3, .contact-form .h3 {
		font-size: 1.3rem;
		font-family: var(--font-pearl-sans);
		text-transform: uppercase;
		text-align: center;
		margin-bottom: 2rem;
	}
}
.contact-form .form-group {
	margin: 0 0 1.8rem;
}
@media (max-width: 767.98px) {
	.contact-form .form-group {
		margin-bottom: 1.2rem;
	}
}
.contact-form .form-group > label {
	display: block;
	font-size: 1.6rem;
	margin: 0 0 0.5rem;
}
.contact-form .form-group .nice-select {
	margin-top: 0;
}
.contact-form .form-group .form-control {
	--input-border-radius: .8rem;
	--input-height: 4rem;
	--input-font-size: 1.7rem;
	--input-padding-x: 1.6rem;
	border: 1px solid transparent;
	background: var(--color-gray-alpha-35);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.contact-form .form-group .form-control:focus {
	outline: none;
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
@media (max-width: 767.98px) {
	.contact-form .form-group .form-control {
		--input-font-size: 1.6rem;
	}
}

.contact-form .form-group textarea.form-control {
	min-height: 12.6rem;
	resize: vertical;
}
@media (max-width: 767.98px) {
	.contact-form .form-group textarea.form-control {
		min-height: 9.4rem;
	}
}
.contact-form .form-group .select-default-regular {
	--select-default-regular-font-size: 1.7rem;
}

/* password-form-section */
.password-form-section {
	padding: 1rem 0;
}
@media (max-width: 767.98px) {
	.password-form-section {
		padding-bottom: 6rem;
	}
}
.password-form-section .title-block {
	text-align: center;
	padding: 0 0 4rem;
}
@media (max-width: 991.98px) {
	.password-form-section .title-block {
		padding-bottom: 5.6rem;
	}
}
@media (max-width: 767.98px) {
	.password-form-section .title-block {
		font-size: 1.2rem;
		padding-bottom: 4.4rem;
	}
}
.password-form-section .title-block h1, .password-form-section .title-block .h1 {
	text-transform: uppercase;
	line-height: 1;
	margin: 0 0 1.9rem;
}
@media (min-width: 768px) {
	.password-form-section .title-block h1, .password-form-section .title-block .h1 {
		font-size: 4rem;
	}
}
@media (max-width: 767.98px) {
	.password-form-section .title-block h1, .password-form-section .title-block .h1 {
		font-size: 2rem;
		margin-bottom: 0.6rem;
	}
}
.password-form-section .title-block p:last-child {
	margin-bottom: 0;
}

.password-form h3, .password-form .h3 {
	font: inherit;
	font-weight: bold;
	font-size: 1.9rem;
	text-transform: none;
}
@media (max-width: 767.98px) {
	.password-form h3, .password-form .h3 {
		font-size: 1.3rem;
		font-family: var(--font-pearl-sans);
		text-transform: uppercase;
		text-align: center;
		margin-bottom: 2rem;
	}
}
.password-form .form-group {
	margin: 0 0 1.8rem;
}
@media (max-width: 767.98px) {
	.password-form .form-group {
		margin-bottom: 1.2rem;
	}
}
.password-form .form-group > label {
	display: block;
	font-size: 1.6rem;
	margin: 0 0 0.5rem;
}
@media (max-width: 767.98px) {
	.password-form .form-group > label {
		font-size: 1.4rem;
		font-weight: bold;
	}
}
.password-form .form-group .nice-select {
	margin-top: 0;
}
.password-form .form-group .form-control {
	--input-border-radius: .6rem;
	--input-height: 4rem;
	--input-font-size: 1.7rem;
	--input-padding-x: 1.6rem;
	border: 1px solid transparent;
	background: var(--color-gray-alpha-35);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.password-form .form-group .form-control:focus {
	outline: none;
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}
@media (max-width: 767.98px) {
	.password-form .form-group .form-control {
		--input-font-size: 1.6rem;
		background: #fff;
	}
}
.password-form .form-group textarea.form-control {
	min-height: 12.6rem;
	resize: vertical;
}
@media (max-width: 767.98px) {
	.password-form .form-group textarea.form-control {
		min-height: 9.4rem;
	}
}

.password-page-content-min {
	min-height: 55vh;
}
@media (max-width: 767.98px) {
	.password-page-content-min {
		min-height: 50vh;
	}
}
@media (max-width: 767.98px) {
	.contact-form .form-group .select-default-regular {
		--select-default-regular-font-size: 1.6rem;
		background-color: #fff;
	}
}
.contact-form .custom-checkbox {
	margin: 0 0 1.6rem;
}
.contact-form .custom-checkbox input[type=checkbox] + span::before {
	--custom-checkbox-bg-color: $white;
	border-width: 1px;
	border-color: var(--color-dark-blue);
}
@media (max-width: 767.98px) {
	.contact-form .custom-checkbox {
		--custom-checkbox-font-size: 1.4rem;
		--custom-checkbox-width: 1.6rem;
		--custom-checkbox-text-left-offset: 2.4rem;
		--custom-checkbox-top: .4rem;
		padding-top: 1rem;
	}
}
.contact-form .form-txt {
	font-size: 1.6rem;
}
@media (max-width: 767.98px) {
	.contact-form .form-txt {
		font-size: 1.2rem;
	}
}
.contact-form .form-txt p {
	margin: 0;
}
.contact-form .form-btn {
	/* text-align: right; */
	padding: 0.4rem 0 0;
}
@media (max-width: 767.98px) {
	.contact-form .form-btn {
		text-align: center;
		padding: 2rem 0 0;
	}
}
.contact-form .form-btn .btn {
	text-transform: uppercase;
}
@media (max-width: 767.98px) {
	.contact-form .form-btn .btn {
		/* --bs-btn-line-height: 1.5; */
		--bs-btn-font-size: 1rem;
	}
}
.contact-form .form-links {
	font-size: 1.6rem;
	padding: 1.4rem 0 5.6rem;
}
@media (max-width: 767.98px) {
	.contact-form .form-links {
		font-size: 1.2rem;
		text-align: center;
		padding-top: 0.5rem;
		padding-bottom: 1.2rem;
	}
}
.contact-form .form-links p {
	margin: 0;
}

/* contact-info-section */
.contact-info-section {
	margin-top: auto;
	padding: 5rem 0 9rem;
}
@media (max-width: 991.98px) {
	.contact-info-section {
		padding: 3rem 0 5rem;
	}
}
@media (max-width: 767.98px) {
	.contact-info-section {
		padding: 2rem 0 3rem;
	}
}
.contact-info-section h2, .contact-info-section .h2 {
	text-transform: uppercase;
	font-size: 1.6rem;
	margin: 0 0 4.5rem;
	font-weight: bold;
}
@media (max-width: 991.98px) {
	.contact-info-section h2, .contact-info-section .h2 {
		margin-bottom: 3rem;
	}
}
@media (max-width: 767.98px) {
	.contact-info-section h2, .contact-info-section .h2 {
		font-size: 1.4rem;
	}
}
.contact-info-section .row {
	--bs-gutter-x: 12.8rem;
}
@media (max-width: 991.98px) {
	.contact-info-section .row {
		--bs-gutter-x: 3rem;
	}
}

/* airport-info-section */
.airport-info-section {
	padding: 5.4rem 0;
}
@media (max-width: 991.98px) {
	.airport-info-section {
		padding: 5rem 0;
	}
}
@media (max-width: 767.98px) {
	.airport-info-section {
		padding: 3.5rem 0 1.6rem;
	}
}
.airport-info-section .row-holder {
	--bs-gutter-x: 3.6rem;
}
@media (min-width: 1200px) {
	.airport-info-section .row-holder .col-lg-8 {
		width: 70.5%;
	}
}
@media (min-width: 1200px) {
	.airport-info-section .row-holder .col-lg-4 {
		width: 29.5%;
	}
}
.airport-info-section .heading {
	text-align: left;
	padding-bottom: 2.5rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .heading {
		padding-bottom: 1.4rem;
	}
}
.airport-info-section .heading h2, .airport-info-section .heading .h2 {
	display: block;
	margin: 0;
	font-size: 1.2rem;
	line-height: 1;
}
@media (max-width: 767.98px) {
	.airport-info-section .heading h2, .airport-info-section .heading .h2 {
		margin: 0 0 1.6rem;
	}
}
.airport-info-section .heading h1, .airport-info-section .heading .h1 {
	margin: 0;
}
@media (max-width: 767.98px) {
	.airport-info-section .heading h1, .airport-info-section .heading .h1 {
		font-size: 2rem;
	}
}
.airport-info-section .heading h1 sup, .airport-info-section .heading .h1 sup {
	font-size: 0.6em;
	top: -0.6em;
}
.airport-info-section .descr {
	max-width: 84.2rem;
	padding: 0 0 4.6rem;
}
@media (max-width: 991.98px) {
	.airport-info-section .descr {
		padding-bottom: 4rem;
	}
}
@media (max-width: 767.98px) {
	.airport-info-section .descr {
		padding-bottom: 2.6rem;
	}
}
.airport-info-section .headline {
	border-bottom: 1px solid;
	margin: 0 0 1.6rem;
	padding: 0 0 1.8rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .headline {
		padding: 0;
		margin: 0 0 1.3rem;
		border-bottom: 0;
	}
}
.airport-info-section .headline h2, .airport-info-section .headline .h2 {
	margin: 0;
	text-transform: uppercase;
	font-size: 2.4rem;
	line-height: 1;
	color: var(--color-copper);
}
@media (max-width: 767.98px) {
	.airport-info-section .headline h2, .airport-info-section .headline .h2 {
		font-size: 1.2rem;
		font-weight: bold;
	}
}
.airport-info-section .services-list {
	margin: 0;
	padding: 0.4rem 0 6.2rem;
	list-style: none;
	-moz-columns: 4;
	     columns: 4;
	-moz-column-gap: 2rem;
	     column-gap: 2rem;
	font-size: 1.7rem;
	line-height: 1.235;
}
@media (max-width: 991.98px) {
	.airport-info-section .services-list {
		font-size: 1.6rem;
	}
}
@media (max-width: 767.98px) {
	.airport-info-section .services-list {
		-moz-columns: 2;
		     columns: 2;
		font-size: 1rem;
		padding: 0 0 7.5rem;
	}
}
.airport-info-section .services-list > li {
	-moz-column-break-inside: avoid;
	     break-inside: avoid;
	padding: 0 0 1.1rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .services-list > li {
		padding-bottom: 0.9rem;
	}
}
.airport-info-section .contact-list {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.7rem;
	line-height: 1.3;
}
@media (max-width: 991.98px) {
	.airport-info-section .contact-list {
		font-size: 1.6rem;
	}
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list {
		font-size: 1.7rem;
		border-top: 1px solid;
		margin: 0 -2rem;
	}
}
.airport-info-section .contact-list > li {
	padding: 0 0 1.6rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list > li {
		border-bottom: 1px solid;
		padding: 3rem 2rem;
		position: relative;
	}
}
@media (min-width: 768px) {
	.airport-info-section .contact-list > li + li {
		border-top: 1px solid;
		padding-top: 1.6rem;
	}
}
.airport-info-section .contact-list > li h3, .airport-info-section .contact-list > li .h3 {
	text-transform: uppercase;
	font-size: inherit;
	line-height: inherit;
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list > li h3, .airport-info-section .contact-list > li .h3 {
		font-size: 2rem;
		margin: 0 4rem 0 0;
	}
}
.airport-info-section .contact-list > li .opener {
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	height: 8.6rem;
	z-index: 15;
	cursor: pointer;
}
.airport-info-section .contact-list > li .opener::after, .airport-info-section .contact-list > li .opener::before {
	content: "";
	width: 3.2rem;
	height: 1px;
	background: currentColor;
	position: absolute;
	right: 2rem;
	top: 50%;
	transition: transform 0.3s ease-out;
}
.airport-info-section .contact-list > li .opener::after {
	transform: rotate(90deg);
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list > li .opener {
		display: block;
	}
}
.airport-info-section .contact-list > li.active .opener::after {
	transform: rotate(360deg);
}
.airport-info-section .contact-list > li .row {
	--bs-gutter-x: 2rem;
}
.airport-info-section .contact-list > li h4, .airport-info-section .contact-list > li .h4 {
	margin: 0;
	font: inherit;
	font-weight: 700;
}
.airport-info-section .contact-list > li p:last-child {
	margin-bottom: 0;
}
.airport-info-section .contact-list > li .col-info {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list > li .col-info {
		display: none;
	}
	.airport-info-section .contact-list > li .col-info > .row {
		padding-top: 1.6rem;
	}
}
.airport-info-section .contact-list > li .contact-items {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.3rem 0;
	font-size: 1.4rem;
}
@media (max-width: 767.98px) {
	.airport-info-section .contact-list > li .contact-items {
		padding-top: 1rem;
	}
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	.airport-info-section .contact-list > li .contact-items {
		font-size: 1.6rem;
	}
}
.airport-info-section .contact-list > li .contact-items > li {
	display: flex;
	align-items: center;
	gap: 0 0.8rem;
}
.airport-info-section .contact-list > li .contact-items > li .ico {
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.airport-info-section .contact-list > li .contact-items > li .ico img {
	display: block;
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
.airport-info-section .contact-list > li .contact-items > li a {
	text-decoration: none;
}
.airport-info-section .contact-list > li .contact-items > li a:hover {
	text-decoration: underline;
}
.airport-info-section .map-airport {
	height: 52.4rem;
	border-radius: 1.6rem;
}
@media (max-width: 991.98px) {
	.airport-info-section .map-airport {
		margin-bottom: 7.2rem;
	}
}
@media (max-width: 767.98px) {
	.airport-info-section .map-airport {
		height: 42.8rem;
	}
}
.airport-info-section .map-airport a[href^="http://maps.google.com/maps"] {
	display: none !important;
}
.airport-info-section .map-airport a[href^="https://maps.google.com/maps"] {
	display: none !important;
}
.airport-info-section .map-airport .gmnoprint a, .airport-info-section .map-airport .gmnoprint span, .airport-info-section .map-airport .gm-style-cc {
	display: none;
}
.airport-info-section .map-airport .gmnoprint div {
	background: none !important;
}
.airport-info-section .map-airport .gm-style .gm-style-iw-c {
	box-shadow: none;
	background: none;
	padding: 0;
	border-radius: 0;
	max-width: none !important;
	max-height: none !important;
}
.airport-info-section .map-airport .gm-style .gm-style-iw-c .gm-style-iw-chr {
	display: none;
}
.airport-info-section .map-airport .gm-style .gm-style-iw-c .gm-style-iw-d {
	margin: 0;
	padding: 0;
	overflow: visible !important;
	max-height: none !important;
}
.airport-info-section .map-airport .gm-style .gm-style-iw-tc {
	display: none;
}
.airport-info-section .map-airport .infowindow {
	width: 234px;
	border: 1px solid var(--color-dark-blue);
	background: #fff;
	border-radius: 20px;
	padding: 26px;
	font-size: 12px;
	line-height: 1.33334;
	font-weight: var(--font-weight-base);
	font-family: var(--font-redhat);
}
.airport-info-section .map-airport .infowindow .items {
	margin: 0;
	padding: 0;
	list-style: none;
}
.airport-info-section .map-airport .infowindow .items > li {
	padding: 12px 0;
	border-top: 1px solid var(--color-dark-blue);
	display: flex;
	align-items: center;
	gap: 10px;
}
.airport-info-section .map-airport .infowindow .items > li:first-child {
	border-top: 0;
	padding-top: 0;
}
.airport-info-section .map-airport .infowindow .items > li:last-child {
	padding-bottom: 0;
}
.airport-info-section .map-airport .infowindow .items > li p {
	margin: 0;
}
.airport-info-section .map-airport .infowindow .items > li .val {
	flex-shrink: 0;
	font-size: 16px;
	text-transform: none;
	line-height: 1;
	margin: 0 0 0 auto;
}

/* marquee-section */
.marquee-section {
	padding: 10.8rem 0 18rem;
	overflow: hidden;
}
@media (max-width: 991.98px) {
	.marquee-section {
		padding: 6rem 0 10rem;
	}
}
@media (max-width: 767.98px) {
	.marquee-section {
		padding: 0 0 5.2rem;
	}
}
.marquee-section .marquee-bar {
	--gap: 7.2rem;
	margin: 0;
	border: solid;
	border-width: 1px 0;
	padding: 1.6rem 0;
}
@media (max-width: 991.98px) {
	.marquee-section .marquee-bar {
		--gap: 4rem;
	}
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar {
		--gap: 2.4rem;
		padding: 0;
		border-top: 0;
	}
}
.marquee-section .marquee-bar .marquee3k__wrapper {
	display: flex;
	gap: var(--gap);
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar .marquee3k__wrapper {
		transform: none !important;
		display: block;
	}
}
.marquee-section .marquee-bar ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex !important;
	align-items: center;
	gap: var(--gap);
	flex-shrink: 0;
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar ul {
		flex-wrap: wrap;
		width: 100%;
		gap: 0;
	}
	.marquee-section .marquee-bar ul + ul {
		display: none !important;
	}
}
.marquee-section .marquee-bar ul > li {
	flex-shrink: 0;
	white-space: nowrap;
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar ul > li {
		width: 50%;
		flex-shrink: 0;
		padding: 1rem 0.5rem;
		border-top: 1px solid;
		border-bottom: 1px solid;
		margin-bottom: -1px;
	}
	.marquee-section .marquee-bar ul > li:nth-child(4n+3) figure, .marquee-section .marquee-bar ul > li:nth-child(4n) figure {
		flex-direction: row;
	}
	.marquee-section .marquee-bar ul > li:nth-child(4n-1) {
		padding-left: 3.2rem;
	}
	.marquee-section .marquee-bar ul > li:nth-child(4n-2) {
		padding-right: 3rem;
	}
}
.marquee-section .marquee-bar ul > li a {
	text-decoration: none;
	transition-property: none !important;
	display: block;
}
.marquee-section .marquee-bar ul > li a:hover {
	opacity: 0.7;
}
.marquee-section .marquee-bar ul > li figure {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 2.4rem;
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar ul > li figure {
		flex-direction: row-reverse;
	}
}
.marquee-section .marquee-bar ul > li figure .img {
	flex-shrink: 0;
	width: 18.5rem;
}
@media (max-width: 991.98px) {
	.marquee-section .marquee-bar ul > li figure .img {
		width: 10rem;
	}
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar ul > li figure .img {
		width: 6rem;
	}
}
.marquee-section .marquee-bar ul > li figure .img img, .marquee-section .marquee-bar ul > li figure .img video {
	display: block;
	width: 100%;
	aspect-ratio: 185/111;
	-o-object-fit: cover;
	   object-fit: cover;
	border-radius: 0.6rem;
	opacity: 1;
	visibility: visible;
}
.marquee-section .marquee-bar ul > li figure figcaption {
	white-space: nowrap;
	text-transform: uppercase;
	font-weight: 100;
	font-size: 10rem;
	line-height: 1;
}
@media (max-width: 991.98px) {
	.marquee-section .marquee-bar ul > li figure figcaption {
		font-size: 6rem;
	}
}
@media (max-width: 767.98px) {
	.marquee-section .marquee-bar ul > li figure figcaption {
		font-size: 2rem;
		font-weight: normal;
	}
}

/* intro-section */
.intro-section {
	padding: 4.2rem 0 7.4rem;
}
@media (max-width: 991.98px) {
	.intro-section {
		padding: 4rem 0 2rem;
	}
}
@media (max-width: 767.98px) {
	.intro-section {
		padding: 1.8rem 0;
	}
	.intro-section + .service-cards-section {
		padding-top: 2.6rem;
		padding-bottom: 0;
	}
}
.intro-section h1, .intro-section .h1 {
	margin-bottom: 1rem;
}
@media (min-width: 992px) {
	.intro-section.intro-section-regular {
		padding-top: 8.3rem;
		padding-bottom: 14.7rem;
	}
	.intro-section.intro-section-regular h1, .intro-section.intro-section-regular .h1 {
		margin-bottom: 2.6rem;
	}
	.intro-section.intro-section-padding-block-lg {
		padding-top: 3.6rem;
		padding-bottom: 16.3rem;
	}
	.intro-section.intro-section-padding-block-lg h1:last-child, .intro-section.intro-section-padding-block-lg .h1:last-child {
		margin-bottom: 0;
	}
}
@media (max-width: 991.98px) {
	.intro-section.intro-section-regular {
		padding-bottom: 2.5rem;
	}
	.intro-section.intro-section-regular h1, .intro-section.intro-section-regular .h1 {
		margin-bottom: 3.3rem;
	}
}

/* accordion-section */
.accordion-section {
	padding: 10rem 0;
	overflow: hidden;
}
@media (max-width: 991.98px) {
	.accordion-section {
		padding: 6rem 0;
	}
}
@media (max-width: 767.98px) {
	.accordion-section {
		padding: 4rem 0 3rem;
	}
}
.service-cards-section + .accordion-section {
	padding-top: 1rem;
}
.accordion-section .accordion {
	margin: 0 -9999px;
}
.accordion-section .accordion > li {
	padding: 0 9999px;
}
.accordion-section .heading {
	padding-bottom: 6rem;
}
@media (max-width: 767.98px) {
	.accordion-section .heading {
		padding-bottom: 2.8rem;
	}
}
@media (min-width: 768px) {
	.accordion-section .heading h2, .accordion-section .heading .h2 {
		color: inherit;
	}
}

/* accordion */
.accordion {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 1px solid;
}
.accordion > li {
	border-bottom: 1px solid;
}
.accordion > li .title-opener {
	cursor: pointer;
	padding: 3.2rem 6rem 3.2rem 0;
	position: relative;
	text-decoration: none;
}
@media (max-width: 767.98px) {
	.accordion > li .title-opener {
		padding-top: 2.1rem;
		padding-bottom: 2.1rem;
		min-height: 8.8rem;
		display: flex;
		align-items: center;
	}
}
.accordion > li .title-opener .h1 {
	margin: 0;
	line-height: 1;
}
@media (max-width: 767.98px) {
	.accordion > li .title-opener .h1 {
		font-size: 2rem;
		line-height: 1.3;
	}
}
.accordion > li .title-opener::after, .accordion > li .title-opener::before {
	content: "";
	width: 3.2rem;
	height: 1px;
	background: currentColor;
	position: absolute;
	right: 0;
	top: 50%;
	transition: transform 0.3s ease-out;
}
.accordion > li .title-opener::after {
	transform: rotate(90deg);
}
.accordion > li .drop {
	display: none;
}
.accordion > li .drop > .holder {
	padding: 0 0 3.4rem;
	opacity: 0;
	transition: opacity 0.3s linear;
}
.accordion > li .drop > .holder p:last-child {
	margin-bottom: 0;
}
.accordion > li.active .drop .holder {
	opacity: 1;
	transition: opacity 0.3s 0.3s linear;
}
.accordion > li.active .title-opener::after {
	transform: rotate(360deg);
}
@media (min-width: 992px) {
	.accordion.accordion-regular > li .title-opener {
		transition: all 0.3s ease;
		padding-top: 2.8rem;
	}
	.accordion.accordion-regular > li .title-opener h2, .accordion.accordion-regular > li .title-opener .h2 {
		margin-bottom: 0;
	}
	.accordion.accordion-regular > li.active .title-opener {
		padding-bottom: 1.6rem;
	}
}
@media (max-width: 991.98px) {
	.accordion.accordion-regular > li .title-opener {
		transition: all 0.3s ease;
	}
	.accordion.accordion-regular > li .title-opener h2, .accordion.accordion-regular > li .title-opener .h2 {
		margin-bottom: 0;
	}
	.accordion.accordion-regular > li .drop {
		font-size: 1.2rem;
		line-height: 1.333;
	}
	.accordion.accordion-regular > li .drop > .holder {
		padding-bottom: 2.4rem;
	}
	.accordion.accordion-regular > li.active .title-opener {
		min-height: 5rem;
		padding-bottom: 1.8rem;
	}
}

/* stat-section */
.stat-section {
	padding: 11.5rem 0;
	overflow: hidden;
}
@media (max-width: 991.98px) {
	.stat-section {
		padding: 6rem 0;
	}
}
@media (max-width: 767.98px) {
	.stat-section {
		padding: 4rem 0 3rem;
	}
}
.stat-section .heading {
	padding-bottom: 10.8rem;
}
@media (max-width: 991.98px) {
	.stat-section .heading {
		padding-bottom: 6rem;
	}
}
@media (max-width: 767.98px) {
	.stat-section .heading {
		padding-bottom: 2.7rem;
	}
}
@media (min-width: 768px) {
	.stat-section .heading h2, .stat-section .heading .h2 {
		color: inherit;
	}
}
.stat-section .stat-list {
	margin: 0 -9999px;
}
.stat-section .stat-list > li {
	padding-left: 9999px;
	padding-right: 9999px;
}

.stat-list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid;
}
.stat-list > li {
	border-bottom: 1px solid;
	padding: 4.5rem 0;
}
@media (max-width: 991.98px) {
	.stat-list > li {
		padding: 3rem 0;
	}
}
@media (max-width: 767.98px) {
	.stat-list > li {
		padding: 2.1rem 0 1rem;
	}
	.stat-list > li .stat-item {
		padding-bottom: 2rem;
	}
}

.stat-item {
	display: flex;
	gap: 3.2rem;
}
@media (max-width: 991.98px) {
	.stat-item {
		gap: 1.8rem;
	}
}
.stat-item .circle-progress {
	flex-shrink: 0;
	width: 138px;
	aspect-ratio: 1;
	position: relative;
}
@media (max-width: 1199.98px) {
	.stat-item .circle-progress {
		width: 100px;
	}
}
@media (max-width: 991.98px) {
	.stat-item .circle-progress {
		width: 80px;
	}
}
.stat-item .circle-progress > img {
	display: block;
}
.stat-item .circle-progress .circle-progress-item {
	width: 138px;
	aspect-ratio: 1;
	font-size: 1.6rem;
	border-radius: 50%;
	overflow: hidden;
	text-align: center;
	position: relative;
	/* --percent: 0; */
	flex-shrink: 0;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
@media (max-width: 1199.98px) {
	.stat-item .circle-progress .circle-progress-item {
		transform: translate(-50%, -50%) scale(0.7);
	}
}
@media (max-width: 991.98px) {
	.stat-item .circle-progress .circle-progress-item {
		transform: translate(-50%, -50%) scale(0.6);
	}
}
.stat-item .circle-progress .circle-progress-item .value {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
}
.stat-item .circle-progress .circle-progress-item svg {
	position: relative;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}
.stat-item .circle-progress .circle-progress-item svg circle {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1;
	stroke-dasharray: 1 3;
}
@media (max-width: 991.98px) {
	.stat-item .circle-progress .circle-progress-item svg circle {
		stroke-width: 3;
		stroke-dasharray: 2 8;
	}
}
.stat-item .circle-progress .circle-progress-item svg circle:last-of-type {
	--stroke-dasharray: 422px;
	stroke-dasharray: var(--stroke-dasharray);
	/* stroke-dashoffset will be set inline by React for perfect sync */
	stroke: var(--color-copper);
	stroke-width: 4;
}
@media (max-width: 991.98px) {
	.stat-item .circle-progress .circle-progress-item svg circle:last-of-type {
		stroke-width: 7;
	}
}
.stat-item .descr {
	flex-grow: 1;
	width: 1%;
	padding-top: 0.3rem;
}
@media (max-width: 767.98px) {
	.stat-item .descr {
		padding-top: 0;
	}
}
.stat-item .descr .h1 {
	margin: 0 0 2rem;
	line-height: 1;
}
@media (max-width: 991.98px) {
	.stat-item .descr .h1 {
		margin-bottom: 1rem;
	}
}
@media (max-width: 767.98px) {
	.stat-item .descr .h1 {
		font-size: 4rem;
	}
}
.stat-item .descr p {
	margin: 0 0 1rem;
}
@media (max-width: 767.98px) {
	.stat-item .descr p {
		margin-bottom: 0.5rem;
	}
}
.stat-item .descr p small, .stat-item .descr p .small {
	font-size: 1.7rem;
}
@media (max-width: 991.98px) {
	.stat-item .descr p small, .stat-item .descr p .small {
		font-size: 1.2rem;
	}
}
.stat-item .descr p:last-child {
	margin-bottom: 0;
}

/* carousel-info-section */
.carousel-info-section {
	padding: 10rem 0;
}
@media (max-width: 991.98px) {
	.carousel-info-section {
		padding: 6rem 0;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section {
		padding: 4rem 0;
		overflow: hidden;
	}
}
.carousel-info-section:last-child {
	padding-bottom: 22rem;
}
@media (max-width: 991.98px) {
	.carousel-info-section:last-child {
		padding-bottom: 16rem;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section:last-child {
		padding-bottom: 7rem;
	}
}
.carousel-info-section .heading {
	padding-bottom: 5.1rem;
}
@media (max-width: 991.98px) {
	.carousel-info-section .heading {
		padding-bottom: 2.6rem;
	}
}
.carousel-info-section .heading h2, .carousel-info-section .heading .h2 {
	margin-bottom: 4rem;
}
@media (max-width: 991.98px) {
	.carousel-info-section .heading h2, .carousel-info-section .heading .h2 {
		margin-bottom: 3.7rem;
	}
}
.carousel-info-section .swiper {
	--gap-x: 2rem;
	margin: 0 calc(var(--gap-x) * -0.5);
	position: relative;
	padding-top: 4.4rem;
}
@media (max-width: 767.98px) {
	.carousel-info-section .swiper {
		--gap-x: 1rem;
		margin-inline: 0;
		padding-inline: 0.4rem;
		padding-top: 0;
		overflow: visible;
	}
}
.carousel-info-section .swiper .swiper-slide {
	padding: 0 calc(var(--gap-x) * 0.5);
	height: auto;
	display: flex;
	width: 33.3333%;
}
@media (max-width: 991.98px) {
	.carousel-info-section .swiper .swiper-slide {
		width: 50%;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section .swiper .swiper-slide {
		width: 80%;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section .swiper .swiper-slide > * {
		flex-shrink: 0;
		width: 100%;
	}
}
@media (min-width: 768px) {
	.carousel-info-section .swiper .swiper-slide > * {
		flex-shrink: 0;
		width: 100%;
	}
}
.carousel-info-section .swiper .swiper-fraction {
	position: absolute;
	top: 0;
	right: 0;
	padding: 0 calc(var(--gap-x) * 0.5);
	font-weight: bold;
	font-size: 1.6rem;
	margin: 0;
	text-align: right;
	bottom: auto;
}
@media (max-width: 767.98px) {
	.carousel-info-section .swiper .swiper-fraction {
		display: none;
	}
}
.carousel-info-section .swiper .swiper-scrollbar {
	margin: 4.4rem calc(var(--gap-x) * 0.5) 0;
	width: auto;
}
.carousel-info-section .text-box {
	background: var(--color-gray-alpha-35);
	border-radius: 1rem;
	padding: 6.4rem 4rem 3rem;
	text-align: center;
	aspect-ratio: 482/452;
}
@media (max-width: 991.98px) {
	.carousel-info-section .text-box {
		padding: 3rem;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section .text-box {
		padding: 3rem;
		/* background: #fff; */
		width: 100%;
		font-size: inherit;
		aspect-ratio: 482/452;
	}
}
.carousel-info-section .text-box h3, .carousel-info-section .text-box .h3 {
	text-transform: uppercase;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 0.7em;
}
@media (max-width: 991.98px) {
	.carousel-info-section .text-box h3, .carousel-info-section .text-box .h3 {
		font-size: 1.6rem;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section .text-box h3, .carousel-info-section .text-box .h3 {
		font-size: 1.6rem;
	}
}
.carousel-info-section .text-box p:last-child {
	margin-bottom: 0;
}
.carousel-info-section .text-box .ico {
	height: 7rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 2.4rem 0 4rem;
}
@media (max-width: 767.98px) {
	.carousel-info-section .text-box .ico {
		height: 3.6rem;
		margin-top: 0.6rem;
		margin-bottom: 2.4rem;
	}
}
.carousel-info-section .text-box .ico img {
	display: block;
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
@media (max-width: 767.98px) {
	.carousel-info-section .text-box.mobile-width-type2 {
		width: 100%;
		padding-left: 3rem;
		padding-right: 3rem;
		aspect-ratio: 482/452;
		padding-bottom: 3rem;
	}
}
.carousel-info-section .img-box {
	margin: 0;
	aspect-ratio: 482/452;
	position: relative;
}
@media (max-width: 767.98px) {
	.carousel-info-section .img-box {
		width: 100%;
	}
}
.carousel-info-section .img-box img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	border-radius: 1rem;
}
.carousel-info-section .btn-row {
	padding-top: 4.8rem;
	margin-bottom: -2rem;
}
.carousel-info-section.carousel-info-section-regular {
	padding-top: 17.5rem;
	padding-bottom: 18.3rem;
}
.carousel-info-section.carousel-info-section-regular .heading {
	padding-bottom: 5.1rem;
}
.carousel-info-section.carousel-info-section-regular .heading h2, .carousel-info-section.carousel-info-section-regular .heading .h2 {
	margin-bottom: 4rem;
}
.carousel-info-section.carousel-info-section-regular .text-box {
	padding-top: 10.4rem;
	min-height: 45.2rem;
}
@media (max-width: 991.98px) {
	.carousel-info-section.carousel-info-section-regular {
		padding-top: 6.8rem;
		padding-bottom: 4.8rem;
	}
	.carousel-info-section.carousel-info-section-regular .heading {
		padding-bottom: 2.6rem;
	}
	.carousel-info-section.carousel-info-section-regular .heading h2, .carousel-info-section.carousel-info-section-regular .heading .h2 {
		margin-bottom: 3.7rem;
	}
	.carousel-info-section.carousel-info-section-regular .heading h3, .carousel-info-section.carousel-info-section-regular .heading .h3 {
		max-width: 90%;
		margin-inline: auto;
	}
	.carousel-info-section.carousel-info-section-regular .text-box {
		padding-top: 2.6rem;
		min-height: 23.1rem;
	}
}
@media (max-width: 767.98px) {
	.carousel-info-section.carousel-info-section-regular .text-box {
		width: 100%;
		min-height: auto;
		aspect-ratio: 482/452;
	}
}

/* map-section */
.map-section .title {
	padding: 14rem 0 17.4rem;
}
@media (max-width: 991.98px) {
	.map-section .title {
		padding: 10rem 0;
	}
}
@media (max-width: 767.98px) {
	.map-section .title {
		padding: 1.3rem 0 3.4rem;
	}
	.map-section .title .h1 {
		margin: 0;
	}
}
.map-section .map-holder {
	position: relative;
}
.map-section .services-items {
	position: absolute;
	z-index: 5;
	left: 5rem;
	top: 3.5rem;
	width: 18.7rem;
	background: #ececeb;
	border-radius: 2rem;
	padding: 1.7rem 1rem 2rem 2.4rem;
}
@media (max-width: 991.98px) {
	.map-section .services-items {
		left: 3rem;
		top: 3rem;
	}
}
@media (max-width: 767.98px) {
	.map-section .services-items {
		top: auto;
		left: 2rem;
		bottom: 2rem;
		border: 1px solid;
		width: 17.7rem;
	}
}
.map-section .services-items .ttl {
	display: block;
	font-size: 1.7rem;
	margin: 0 0 1.8rem;
}
.map-section .services-items ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.2rem;
	font-weight: bold;
	text-transform: uppercase;
	font-family: var(--font-pearl-sans);
	line-height: 1.333;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
.map-section .services-items ul li a {
	display: block;
	text-decoration: none;
	padding-left: 2.6rem;
	position: relative;
}
.map-section .services-items ul li a::before {
	position: absolute;
	content: "";
	left: 0;
	top: 0.2rem;
	width: 1.2rem;
	height: 1.2rem;
	border: 1px solid;
	border-radius: 50%;
	transition: all 0.3s ease-out;
}
.map-section .services-items ul li.active a::before {
	background: currentColor;
}

.filter {
	padding: 0 0 2.4rem;
}
@media (max-width: 767.98px) {
	.filter {
		display: none;
	}
}
.filter nav {
	display: flex;
	align-items: center;
	gap: 1.2rem;
}
@media (max-width: 991.98px) {
	.filter nav {
		overflow-x: auto;
		overflow-y: hidden;
		padding: 0 calc(var(--bs-gutter-x) * 0.5);
		margin: 0 calc(var(--bs-gutter-x) * -0.5);
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.filter nav::-webkit-scrollbar {
		display: none;
	}
}
.filter nav .ttl {
	flex-shrink: 0;
	font-size: 1.6rem;
}
.filter nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1.1rem;
	font-size: 1.2rem;
	line-height: 2rem;
	text-transform: uppercase;
	font-family: var(--font-pearl-sans);
	font-weight: bold;
}
@media (max-width: 991.98px) {
	.filter nav ul {
		flex-wrap: nowrap;
		flex-shrink: 0;
	}
}
@media (max-width: 767.98px) {
	.filter nav ul {
		font-size: 1rem;
	}
}
.filter nav ul li a {
	display: block;
	text-decoration: none;
	background: #fff;
	padding: 0.5rem 2.1rem;
	border-radius: 99px;
}
.filter nav ul li.active a, .filter nav ul li a:hover {
	background: var(--color-dark-blue);
	color: #fff;
}

.map {
	height: 64rem;
}
@media (max-width: 767.98px) {
	.map {
		height: 51rem;
		border-top: 1px solid;
	}
}
.map a[href^="http://maps.google.com/maps"] {
	display: none !important;
}
.map a[href^="https://maps.google.com/maps"] {
	display: none !important;
}
.map .gmnoprint a, .map .gmnoprint span, .map .gm-style-cc {
	display: none;
}
.map .gmnoprint div {
	background: none !important;
}
.map > div {
	background: var(--color-gray) !important;
}
.map .gm-style .gm-style-iw-c {
	box-shadow: none;
	background: none;
	padding: 0;
	border-radius: 0;
	max-width: none !important;
	max-height: none !important;
}
.map .gm-style .gm-style-iw-c .gm-style-iw-chr {
	display: none;
}
.map .gm-style .gm-style-iw-c .gm-style-iw-d {
	margin: 0;
	padding: 0;
	overflow: visible !important;
	max-height: none !important;
}
.map .gm-style .gm-style-iw-tc {
	display: none;
}
.map .infowindow {
	color: var(--color-copper);
	border: 1px solid;
	background: rgba(255, 255, 255, 0.7);
	padding: 0.5rem 2rem;
	border-radius: 99px;
	text-transform: uppercase;
	font-family: var(--font-pearl-sans);
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.3;
	text-decoration: none;
	display: block;
}
@media (max-width: 767.98px) {
	.map .infowindow {
		font-size: 1.4rem;
	}
}
.map .infowindow sup {
	font-size: 0.5em;
	top: 0.6em;
	line-height: 1;
	vertical-align: top;
}

/* info-stat-section */
.info-stat-section {
	background: var(--color-gray);
	border: solid #000;
	border-width: 1px 0;
	padding: 3.5rem 0 1.5rem;
	text-transform: uppercase;
}
@media (max-width: 767.98px) {
	.info-stat-section {
		background: none;
		padding: 3rem 0 0.8rem;
		border-bottom: 0;
	}
}
.info-stat-section h3, .info-stat-section .h3 {
	font-size: 10rem;
	line-height: 1;
	margin: 0 0 1.5rem;
	border-bottom: 1px solid #000;
	padding: 0 0 1rem;
}
@media (max-width: 767.98px) {
	.info-stat-section h3, .info-stat-section .h3 {
		font-size: 4rem;
		padding-bottom: 0;
		margin-bottom: 0.7rem;
	}
}
.info-stat-section h4, .info-stat-section .h4 {
	margin: 0 0 3rem;
	font-size: 2.4rem;
}
@media (max-width: 767.98px) {
	.info-stat-section h4, .info-stat-section .h4 {
		font-size: 1.2rem;
		margin-bottom: 3.5rem;
	}
}

/* airport-list-section */
/* .airport-list-section {
	padding: 10rem 0;
} */
@media (max-width: 991.98px) {
	.airport-list-section {
		padding: 10rem 0;
	}
}
@media (max-width: 767.98px) {
	.airport-list-section {
		padding: 6rem 0;
	}
}
.airport-list-section .swiper {
	margin: 0 -2rem;
}
@media (min-width: 992px) {
	.airport-list-section .swiper {
		overflow: visible;
		transform: translate(3.2rem, 0);
	}
}
@media (max-width: 767.98px) {
	.airport-list-section .swiper {
		padding-top: 2.8rem;
	}
}
.airport-list-section .swiper .swiper-slide {
	width: 33.3333%;
	padding: 0 2rem;
}
@media (max-width: 991.98px) {
	.airport-list-section .swiper .swiper-slide {
		width: 100%;
	}
}
.airport-list-section .swiper .swiper-control {
	padding: 0 2rem;
}
.airport-list-section .list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.airport-list-section .list > li {
	position: relative;
	-moz-column-break-inside: avoid;
	     break-inside: avoid;
	padding: 1.4rem 0;
}
@media (max-width: 767.98px) {
	.airport-list-section .list > li {
		padding: 0 0 2rem;
	}
}
.airport-list-section .list > li::before {
	position: absolute;
	content: "";
	top: 0;
	left: -3.2rem;
	bottom: 0;
	width: 1px;
	background: currentColor;
}
@media (max-width: 991.98px) {
	.airport-list-section .list > li::before {
		display: none;
	}
}
.airport-list-section .list > li h3, .airport-list-section .list > li .h3 {
	text-transform: uppercase;
	margin: 0 0 1.6rem;
	font-size: 2.4rem;
	line-height: 1;
}
@media (max-width: 991.98px) {
	.airport-list-section .list > li h3, .airport-list-section .list > li .h3 {
		font-size: 2rem;
		margin-bottom: 0.9rem;
	}
}
.airport-list-section .list > li ul {
	margin: 0;
	padding: 0 0 1.2rem;
	list-style: none;
	font-size: 1.6rem;
	display: flex;
	flex-direction: column;
	gap: 1.4rem;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	.airport-list-section .list > li ul {
		font-size: 2rem;
	}
}
@media (max-width: 767.98px) {
	.airport-list-section .list > li ul {
		font-size: 1.4rem;
		gap: 1rem;
	}
}
.airport-list-section .list > li ul li a {
	text-decoration: none;
}
.airport-list-section .list > li ul li a:hover {
	opacity: 0.7;
}
.airport-list-section .list > li ul li sub {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.2rem;
	font-family: var(--font-pearl-sans);
	color: var(--color-copper);
	padding-left: 0.8rem;
	bottom: 0;
}

/* =====================================================
   Airport Detail Page Styles
   ===================================================== */
.airport-header {
	padding-bottom: 2rem;
}

.airport-header .country-label {
	display: block;
	font-size: 1.4rem;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-copper);
	letter-spacing: 0.1em;
	margin-bottom: 0.5rem;
	font-family: var(--font-pearl-sans);
}

.airport-header h1 {
	font-size: 4rem;
	color: var(--color-dark-blue);
	margin-bottom: 1.5rem;
	font-family: var(--font-pearl-sans);
}

.airport-header h1 sup {
	font-size: 2rem;
	font-weight: 400;
	color: #666;
	vertical-align: super;
}

.airport-header .airport-description {
	font-size: 1.6rem;
	line-height: 1.6;
	color: #333;
	max-width: 800px;
	font-family: var(--font-redhat);
}

@media (max-width: 767.98px) {
	.airport-header h1 {
		font-size: 2.8rem;
	}
	.airport-header h1 sup {
		font-size: 1.4rem;
	}
}

/* Products Section */
.products-section {
	padding: 4rem 0;
	position: relative;
	overflow: hidden;
}

/* Horizontal Scroll Container - Match image-cards-carousel */
.products-section .products-scroll-container {
	--slide-gutter: 3rem;
	position: relative;
	font-size: 0;
	line-height: 0;
}

.products-section .products-scroll {
	display: flex;
	gap: 0;
	overflow-x: auto;
	overflow-y: hidden;
	padding-bottom: 2rem;
	margin-inline: calc(var(--slide-gutter) * -0.5);
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}

/* Custom Scrollbar - Match swiper-scrollbar */
.products-section .products-scrollbar {
	position: relative;
	height: 2px;
	background: rgba(0, 30, 69, 0.1);
	margin-top: 4.1rem;
	border-radius: 1px;
}

.products-section .products-scrollbar-thumb {
	position: absolute;
	height: 100%;
	background: var(--color-dark-blue);
	border-radius: 1px;
	transition: left 0.1s ease;
}

/* Product Card - Match image-card dimensions */
.products-section .product-card {
	flex: 0 0 auto;
	width: 24.6rem;
	background: #ffffff;
	/* margin-right: -1px; */
	border: 1px solid var(--color-gray);
	border-radius: 1rem;
	overflow: hidden;
	scroll-snap-align: start;
	padding-inline: calc(var(--slide-gutter) * 0.5);
	/* transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1); */
}

.products-section .product-card:hover {
	border-color: var(--color-copper);
}

/* Expanded Card */
.products-section .product-card-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 38rem; /* Match image-card aspect ratio approximately */
	font-size: 1.4rem;
	line-height: 1.4;
}

.products-section .product-card-body {
	display: flex;
	flex-direction: row;
	flex: 1;
}

.products-section .product-card-left {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
}

.products-section .product-card-right {
	flex: 0 0 45%;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	animation: slideInRight 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.products-section .product-card-right {
	flex: 0 0 40%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 2rem 2rem 2rem 0;
	gap: 1.5rem;
	animation: slideInRight 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes slideInRight {
	from {
		opacity: 0;
		transform: translateX(20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.products-section .product-card-right .product-image {
	width: 100%;
	max-width: 26rem;
	height: 16rem;
	margin: 0;
	border-radius: 4px;
	overflow: hidden;
}

.products-section .product-card-right .product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.products-section .product-header {
	padding: 2rem;
}

.products-section .product-name {
	font-size: 1.6rem;
	font-weight: 600;
	color: var(--color-dark-blue);
	text-transform: uppercase;
	margin-bottom: 1rem;
	font-family: var(--font-pearl-sans);
	line-height: 1.3;
}

.products-section .product-price {
	font-size: 2.2rem;
	font-weight: 400;
	color: var(--color-dark-blue);
	font-family: var(--font-pearl-sans);
}

.products-section .product-price sup {
	font-size: 1.2rem;
	font-weight: 400;
	vertical-align: super;
}

.products-section .product-description {
	padding: 0 2rem;
	margin-bottom: 1.5rem;
	font-size: 1.3rem;
	line-height: 1.6;
	color: #555;
	font-family: var(--font-redhat);
	animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.products-section .product-content {
	padding: 0 2rem 1.5rem;
	margin-top: auto;
}

.products-section .product-content-right {
	padding: 1.5rem 0 0;
}

.products-section .product-image {
	margin-bottom: 1.5rem;
	border-radius: 4px;
	overflow: hidden;
}

.products-section .product-image img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.products-section .product-features {
	list-style: none;
	padding: 0;
	margin: 0;
}

.products-section .product-features li {
	display: flex;
	align-items: flex-start;
	gap: 0.8rem;
	margin-bottom: 0.8rem;
	font-size: 1.3rem;
	color: var(--color-dark-blue);
	font-family: var(--font-redhat);
}

.products-section .product-features .feature-icon {
	color: var(--color-dark-blue);
	font-weight: bold;
	flex-shrink: 0;
}

.products-section .product-footer {
	padding: 1.5rem 2rem;
	border-top: 1px solid #f0f0f0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	margin-top: auto;
	height: 6rem;
}

.products-section .product-footer .btn-book,
.products-section .product-footer .btn-close {
	/* padding: 0.8rem 2rem; */
	border: 1px solid var(--color-copper);
	border-radius: 50px;
	background: transparent;
	color: var(--color-copper);
	font-size: 1.2rem;
	font-weight: 600;
	text-transform: uppercase;
	font-family: var(--font-pearl-sans);
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.products-section .product-footer .btn-book:hover,
.products-section .product-footer .btn-close:hover {
	background: var(--color-copper);
	color: #fff;
}

.products-section .product-footer .btn-expand {
	width: 36px;
	height: 36px;
	border: 1px solid var(--color-copper);
	border-radius: 50%;
	background: transparent;
	color: var(--color-copper);
	font-size: 3.5rem;
	font-weight: 100;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.products-section .product-footer .btn-expand:hover {
	border-color: var(--color-copper);
	background: var(--color-copper);
	color: #fff;
}

.products-section .no-products {
	width: 100%;
	text-align: center;
	padding: 4rem;
	color: #666;
	font-size: 1.6rem;
	font-family: var(--font-redhat);
}

/* Service Tabs for Products Section */
.products-section .service-tabs {
	display: flex;
	align-items: center;
	gap: 0;
	margin-bottom: 3rem;
	/* border-bottom: 1px solid #ccc; */
}

.products-section .service-tab {
	font-family: var(--font-pearl-sans);
	font-size: 1.4rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #666;
	padding: 1.2rem 0;
	margin-right: 3rem;
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	transition: color 0.2s ease, border-color 0.2s ease;
	margin-bottom: -1px;
}

.products-section .service-tab:hover {
	color: var(--color-dark-blue);
}

.products-section .service-tab.active {
	color: var(--color-copper);
	border-bottom-color: var(--color-copper);
}

.back-section {
	padding: 2rem 0 6rem;
}

.back-section .btn {
	font-size: 1.4rem;
}

/* Products Section - Responsive */
@media (min-width: 992px) {
	.products-section .product-card {
		width: 26rem;
	}
	
	.products-section .product-card.expanded {
		width: 56rem;
	}
	
	.products-section .product-card-inner {
		min-height: 42rem;
	}
}

@media (max-width: 991.98px) {
	.products-section .products-scroll-container {
		--slide-gutter: 2rem;
	}
	
	.products-section .product-card {
		width: 24.6rem;
	}
	
	.products-section .product-card.expanded {
		width: 40rem;
	}
	
	.products-section .product-card-inner {
		min-height: 36rem;
	}
}

@media (max-width: 767.98px) {
	.products-section .service-tabs {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	
	.products-section .service-tab {
		font-size: 1.2rem;
		padding: 1rem 0;
		margin-right: 2rem;
		white-space: nowrap;
	}
}

/* Products Carousel (Swiper-based) */
.products-carousel {
	--slide-gutter: 3rem;
	position: relative;
}

.products-carousel .products-cards-carousel-wrapper {
	overflow: visible;
}

.products-carousel .swiper-container {
	overflow: visible;
}

.products-carousel .swiper-slide {
	width: auto !important;
	height: auto;
	/* margin-right: -1px; */
	/* padding-inline: calc(var(--slide-gutter) * 0.5); */
}

.products-carousel .swiper-slide .product-card {
	width: 30rem;
	height: auto;
	margin-right: 0;
	padding-inline: 0;
}

.products-carousel .swiper-slide .product-card.expanded {
	width: 56rem;
	border: 1px solid var(--color-copper);
}

.products-carousel .swiper-scrollbar {
	position: relative;
	height: 2px;
	background: rgba(0, 30, 69, 0.1);
	margin-top: 4.1rem;
	border-radius: 1px;
}

@media (max-width: 991.98px) {
	.products-carousel {
		--slide-gutter: 2rem;
	}
	
	.products-carousel .swiper-slide .product-card {
		width: 24.6rem;
	}
	
	.products-carousel .swiper-slide .product-card.expanded {
		width: 40rem;
	}
}

/* ================================
   Product Detail Page Styles
   ================================ */

.product-page {
	background: var(--body-bg);
}

.product-detail-section {
	padding: 4rem 0 6rem;
}

.product-detail-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: start;
}

@media (max-width: 991.98px) {
	.product-detail-wrapper {
		grid-template-columns: 1fr;
		gap: 3rem;
	}
}

/* Product Gallery */
.product-gallery {
	position: sticky;
	top: 12rem;
}

.product-main-image {
	/* background: #fff; */
	border-radius: 1.2rem;
	overflow: hidden;
}

.product-main-image img {
	border-radius: 1.2rem;
	width: 100%;
	height: auto;
	/* max-height: 50rem; */
	/* object-fit: contain; */
}

.product-thumbnails {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 1.6rem;
}

.thumbnail-btn {
	width: 8rem;
	height: 8rem;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 0.8rem;
	overflow: hidden;
	cursor: pointer;
	transition: border-color 0.3s ease;
	background: #fff;
}

.thumbnail-btn:hover,
.thumbnail-btn.active {
	border-color: var(--color-copper);
}

.thumbnail-btn img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 991.98px) {
	.product-gallery {
		position: relative;
		top: auto;
	}
	
	.thumbnail-btn {
		width: 6rem;
		height: 6rem;
	}
}

/* Product Page Styles - Scoped under .product-page */
.product-page .product-info {
	background: #fff;
	border-radius: 1.2rem;
	padding: 3rem;
}

.product-page .product-header {
	margin-bottom: 2.4rem;
	padding-bottom: 2.4rem;
	border-bottom: 1px solid var(--color-gray);
}

.product-page .product-title {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin: 0 0 1.6rem;
	line-height: 1.2;
}

.product-page .product-price {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.product-page .product-price .price-label {
	font-size: 1.4rem;
	color: var(--color-dark-blue);
}

.product-page .product-price .price-value {
	font-family: var(--font-pearl-sans);
	font-size: 3rem;
	color: var(--color-dark-blue);
}

.product-page .product-price .price-value sup {
	font-size: 1.8rem;
	vertical-align: super;
}

.product-page .stock-status {
	font-size: 1.2rem;
	font-weight: 600;
	padding: 0.4rem 1rem;
	border-radius: 2rem;
}

.product-page .stock-status.in-stock {
	background: rgba(34, 197, 94, 0.15);
	color: #16a34a;
}

.product-page .stock-status.out-of-stock {
	background: rgba(239, 68, 68, 0.15);
	color: #dc2626;
}

/* Product Short Description */
.product-page .product-short-description {
	font-size: 1.6rem;
	line-height: 1.6;
	color: var(--color-dark-blue);
	margin-bottom: 2.4rem;
}

.product-page .product-short-description p {
	margin-bottom: 1rem;
}

.product-page .product-short-description strong {
	color: var(--color-copper);
}

/* Product Options Form */
.product-page .product-options-form {
	margin-top: 2rem;
}

.product-page .options-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

@media (max-width: 767.98px) {
	.product-page .options-grid {
		grid-template-columns: 1fr;
	}
}

.product-page .product-options-form .form-group {
	margin-bottom: 0;
}

.product-page .product-options-form .form-label {
	display: block;
	font-size: 1.2rem;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin-bottom: 0.8rem;
	letter-spacing: 0.02em;
}

.product-page .product-options-form .form-control-regular,
.product-page .product-options-form .select-default-regular {
	--input-height: 4.4rem;
	--input-font-size: 1.6rem;
}

/* Product SKU */
.product-page .product-sku {
	margin-top: 2.4rem;
	padding-top: 2rem;
	border-top: 1px solid var(--color-gray);
	font-size: 1.5rem;
	color: var(--color-dark-blue);
	opacity: 0.7;
}

.product-page .product-sku .sku-label {
	font-weight: 600;
	margin-right: 0.5rem;
}

/* Product Actions */
/* .product-page .product-actions {
	margin-top: 2.4rem;
} */

.product-page .btn-add-to-cart {
	width: 100%;
	padding: 1.6rem 2rem;
	font-size: 1.4rem;
}

/* Product Tabs Section */
.product-page .product-tabs-section {
	padding: 0 0 6rem;
}

.product-page .product-tabs,
.modal-box .product-tabs {
	background: #fff;
	border-radius: 1.2rem;
	overflow: hidden;
}

.product-page .tabs-header,
.modal-box .tabs-header {
	display: flex;
	border-bottom: 1px solid var(--color-gray);
}

.product-page .tab-btn,
.modal-box .tab-btn {
	flex: 0 0 auto;
	padding: 1.6rem 3rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--color-dark-blue);
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	transition: color 0.3s ease, border-color 0.3s ease;
	margin-bottom: -1px;
}

.product-page .tab-btn:hover,
.modal-box .tab-btn:hover {
	color: var(--color-copper);
}

.product-page .tab-btn.active,
.modal-box .tab-btn.active {
	color: var(--color-copper);
	border-bottom-color: var(--color-copper);
}

.product-page .tabs-content,
.modal-box .tabs-content {
	padding: 3rem;
}

.product-page .tab-panel,
.modal-box .tab-panel {
	display: none;
}

.product-page .tab-panel.active,
.modal-box .tab-panel.active {
	display: block;
}

.product-page .product-description-content {
	font-size: 1.6rem;
	line-height: 1.8;
	color: var(--color-dark-blue);
}

.product-page .product-description-content p {
	margin-bottom: 1.6rem;
}

.product-page .product-description-content b,
.product-page .product-description-content strong {
	font-weight: 600;
}

.product-page .product-description-content ul,
.product-page .product-description-content ol {
	margin: 1.6rem 0;
	padding-left: 2rem;
}

.product-page .product-description-content li {
	margin-bottom: 0.8rem;
}

/* More Information Tab - Info Table */
.product-page .product-more-info {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
}

.product-page .info-table {
	width: 100%;
	border-collapse: collapse;
}

.product-page .info-table tr {
	border-bottom: 1px solid var(--color-gray);
}

.product-page .info-table tr:last-child {
	border-bottom: none;
}

.product-page .info-table th,
.product-page .info-table td {
	padding: 1.2rem 0;
	text-align: left;
	vertical-align: top;
}

.product-page .info-table th {
	width: 30%;
	font-weight: 600;
	color: var(--color-dark-blue);
}

.product-page .info-table td {
	width: 70%;
	color: var(--color-dark-blue);
}

@media (max-width: 991.98px) {
	.product-page .product-detail-section {
		padding: 3rem 0 4rem;
	}
	
	.product-page .product-info {
		padding: 2rem;
	}
	
	.product-page .product-title {
		font-size: 2.2rem;
	}
	
	.product-page .product-price .price-value {
		font-size: 2.6rem;
	}
	
	.product-page .tabs-content,
	.modal-box .tabs-content {
		padding: 2rem;
	}
	
	.product-page .tab-btn,
	.modal-box .tab-btn {
		padding: 1.2rem 2rem;
		font-size: 1rem;
	}
}


/* Reusable close modal button (styled like btn-expand) */
.btn-close-modal {
	width: 3rem;
	height: 3rem;
	min-width: 3rem;
	min-height: 3rem;
	border: 1px solid var(--color-copper);
	border-radius: 50%;
	background: transparent;
	color: var(--color-copper);
	font-size: 1rem;
	font-weight: 100;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	padding: 0;
	line-height: 1;
}

.btn-close-modal:hover {
	border-color: var(--color-copper);
	background: var(--color-copper);
	color: #fff;
}

.btn-close-modal svg {
	width: 18px;
	height: 18px;
}

/* Product page v2 */
.product-gallery-hero {
    border-radius: 1.2rem;
    overflow: hidden;
}

/* ================================================================= */
/*  Cart Page Styles – Scoped under .cart-page                        */
/* ================================================================= */

/* Page title */
.cart-page .cart-title {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	line-height: 1.2;
	margin: 0;
}

/* Cart item card */
.cart-page .cart-item {
	background: #fff;
	border-radius: 1.2rem;
	padding: 3rem;
	border: 1px solid var(--color-gray);
	transition: box-shadow 0.3s ease;
}

.cart-page .cart-item:hover {
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
}

@media (max-width: 767.98px) {
	.cart-page .cart-item {
		padding: 2rem;
	}
}

/* Item name */
.cart-page .cart-item-name {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	font-weight: 400;
	color: var(--color-dark-blue);
	line-height: 1.3;
	margin: 0;
	word-break: break-word;
}

/* Item price (row total) */
.cart-page .cart-item-price {
	font-family: var(--font-pearl-sans);
	font-size: 2.4rem;
	font-weight: 400;
	color: var(--color-copper);
	white-space: nowrap;
}

.cart-page .cart-item-price sup {
	font-size: 1.4rem;
	vertical-align: super;
}

/* Options section */
.cart-page .cart-options {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--color-gray);
}

.cart-page .cart-options-grid {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.cart-page .cart-options-grid > * {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.6rem;
}

.cart-page .cart-options-grid > *:last-child {
	border-bottom: none;
}

@media (max-width: 767.98px) {
	.cart-page .cart-options-grid > * {
		flex-direction: column;
		gap: 0.3rem;
	}
}

/* Option label */
.cart-page .cart-option-label {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	color: var(--color-dark-blue);
	letter-spacing: 0.01em;
	/* white-space: nowrap; */
}

.cart-page .cart-option-label::after {
	content: ":";
	margin-right: 0.4rem;
}

/* Option value */
.cart-page .cart-option-value {
	display: inline-block;
	font-size: 1.4rem;
	color: var(--color-dark-blue);
	line-height: 1.4;
	margin: 0;
}

@media (max-width: 767.98px) {
	.cart-page .cart-option-label {
		font-size: 1.2rem;
	}

	.cart-page .cart-option-value {
		font-size: 1.2rem;
	}
}

/* Qty / unit-price row */
.cart-page .cart-qty-row {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--color-gray);
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.cart-page .cart-qty-text {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
}

.cart-page .cart-qty-text .qty-num {
	font-weight: 600;
}

.cart-page .cart-qty-text .price-unit {
	font-weight: 600;
}

/* Action buttons (edit / remove) */
.cart-page .cart-action-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem;
	border-radius: 0.8rem;
	color: var(--color-dark-blue);
	transition: all 0.2s ease;
	cursor: pointer;
	background: none;
	border: none;
}

.cart-page .cart-action-btn:hover {
	color: var(--color-copper);
	background: rgba(182, 128, 98, 0.1);
}

.cart-page .cart-action-btn.remove:hover {
	color: #dc2626;
	background: rgba(239, 68, 68, 0.08);
}

.cart-page .cart-action-btn svg {
	width: 2rem;
	height: 2rem;
}

/* ---- Summary sidebar ---- */

.cart-page .cart-summary {
	background: #fff;
	border-radius: 1.2rem;
	padding: 3rem;
	border: 1px solid var(--color-gray);
	position: sticky;
	top: 2rem;
}

@media (max-width: 767.98px) {
	.cart-page .cart-summary {
		padding: 2rem;
	}
}

.cart-page .cart-summary-title {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin: 0 0 2.4rem;
	padding-bottom: 2.4rem;
	border-bottom: 1px solid var(--color-gray);
	line-height: 1.2;
}

/* Summary rows */
.cart-page .cart-summary-rows {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.cart-page .cart-summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.cart-page .cart-summary-label {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.65;
}

.cart-page .cart-summary-value {
	font-size: 1.6rem;
	font-weight: 600;
	color: var(--color-dark-blue);
}

/* Divider */
.cart-page .cart-summary-divider {
	border: none;
	border-top: 1px solid var(--color-gray);
	margin: 0.8rem 0;
}

/* Grand total */
.cart-page .cart-total-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.cart-page .cart-total-label {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	/* font-weight: 700; */
	color: var(--color-dark-blue);
}

.cart-page .cart-total-value {
	font-family: var(--font-pearl-sans);
	font-size: 2.4rem;
	/* font-weight: 700; */
	color: var(--color-copper);
}

.cart-page .cart-total-value sup {
	font-size: 1.4rem;
	vertical-align: super;
}

/* Checkout button */
.cart-page .btn-checkout {
	display: block;
	width: 100%;
	margin-top: 3rem;
	padding: 1.6rem 2rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.4rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #fff;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	border: none;
	border-radius: 0.6rem;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
}

.cart-page .btn-checkout:hover {
	opacity: 0.9;
	box-shadow: 0 4px 16px rgba(110, 83, 67, 0.35);
}

/* Continue shopping link */
.cart-page .cart-continue-link {
	display: block;
	text-align: center;
	font-size: 1.4rem;
	margin-top: 1.6rem;
	color: var(--color-copper);
	text-decoration: none;
	transition: text-decoration 0.2s ease;
}

.cart-page .cart-continue-link:hover {
	text-decoration: underline;
}

/* Empty cart state */
.cart-page .cart-empty {
	text-align: center;
	padding: 6rem 2rem;
}

.cart-page .cart-empty-icon {
	width: 8rem;
	height: 8rem;
	color: var(--color-gray);
	margin: 0 auto 2.4rem;
}

.cart-page .cart-empty-title {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin: 0 0 1.6rem;
	line-height: 1.2;
}

.cart-page .cart-empty-text {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.6;
	max-width: 40rem;
	margin: 0 auto 2.4rem;
	line-height: 1.5;
}

/* ================================================================= */
/*  Checkout Page Styles – Scoped under .checkout-page                */
/* ================================================================= */

/* Page title */
.checkout-page .checkout-title {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	line-height: 1.2;
	margin: 0;
}

.checkout-page .checkout-subtitle {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.6;
	margin: 0.8rem 0 0;
}

/* ---- Payment methods card ---- */

.checkout-page .checkout-methods-card {
	background: #fff;
	border-radius: 1.2rem;
	padding: 3rem;
	border: 1px solid var(--color-gray);
}

@media (max-width: 767.98px) {
	.checkout-page .checkout-methods-card {
		padding: 2rem;
	}
}

.checkout-page .checkout-no-methods {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.6;
	text-align: center;
	padding: 3rem 0;
}

/* Single method row */
.checkout-page .checkout-method-row {
	display: flex;
	align-items: flex-start;
	gap: 1.6rem;
	padding: 2.4rem 1rem;
	cursor: pointer;
	transition: background 0.2s ease;
	border-radius: 0.8rem;
}

.checkout-page .checkout-method-row:hover {
	background: rgba(0, 30, 69, 0.02);
}

.checkout-page .checkout-method-row.selected {
	background: rgba(0, 30, 69, 0.04);
}

/* Radio button */
.checkout-page .checkout-method-radio {
	appearance: none;
	-webkit-appearance: none;
	width: 1.6rem;
	height: 1.6rem;
	border: 0.1rem solid var(--color-dark-blue);
	border-radius: 50%;
	flex-shrink: 0;
	margin-top: 0.2rem;
	cursor: pointer;
	position: relative;
	/* background-color: #f0e6e0; */
	transition: all 0.3s ease;
}

.checkout-page .checkout-method-radio:checked {
	background-color: var(--color-copper);
	/* border-color: #f0e6e0; */
}

.checkout-page .checkout-method-radio:checked::after {
	display: none;
}

/* Method info block */
.checkout-page .checkout-method-info {
	flex: 1;
	min-width: 0;
}

.checkout-page .checkout-method-header {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	flex-wrap: wrap;
}

/* Method icon */
.checkout-page .checkout-method-icon {
	height: 3rem;
	width: auto;
	object-fit: contain;
	flex-shrink: 0;
}

/* Method title */
.checkout-page .checkout-method-title {
	font-family: var(--font-pearl-sans);
	font-size: 1.8rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	letter-spacing: 0.03em;
}
.checkout-page .checkout-method-description {
	font-family: var(--font-redhat);
	font-size: 1.3rem;
	font-weight: 400;
	margin: 1rem 0 0;
	line-height: 1.5;
}

/* Divider between methods */
.checkout-page .checkout-method-divider {
	border: none;
	border-top: 1px solid var(--color-gray);
	margin: 0 1rem;
}

/* ---- Summary sidebar ---- */

.checkout-page .checkout-summary {
	background: #fff;
	border-radius: 1.2rem;
	padding: 3rem;
	border: 1px solid var(--color-gray);
	position: sticky;
	top: 2rem;
}

@media (max-width: 767.98px) {
	.checkout-page .checkout-summary {
		padding: 2rem;
	}
}

.checkout-page .checkout-summary-title {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin: 0 0 2.4rem;
	padding-bottom: 2.4rem;
	border-bottom: 1px solid var(--color-gray);
	line-height: 1.2;
}

/* Summary rows */
.checkout-page .checkout-summary-rows {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.checkout-page .checkout-summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.checkout-page .checkout-summary-label {
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.65;
}

.checkout-page .checkout-summary-value {
	font-size: 1.6rem;
	font-weight: 600;
	color: var(--color-dark-blue);
}

/* Divider */
.checkout-page .checkout-summary-divider {
	border: none;
	border-top: 1px solid var(--color-gray);
	margin: 0.8rem 0;
}

/* Grand total */
.checkout-page .checkout-total-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.checkout-page .checkout-total-label {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	color: var(--color-dark-blue);
}

.checkout-page .checkout-total-value {
	font-family: var(--font-pearl-sans);
	font-size: 2.4rem;
	color: var(--color-copper);
}

.checkout-page .checkout-total-value sup {
	font-size: 1.4rem;
	vertical-align: super;
}

/* KWD total row */
.checkout-page .checkout-kwd-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 0.4rem;
}

.checkout-page .checkout-kwd-label {
	font-size: 1.4rem;
	color: var(--color-dark-blue);
	opacity: 0.65;
	line-height: 1.4;
}

.checkout-page .checkout-kwd-note {
	font-size: 1.2rem;
	font-style: italic;
	opacity: 0.8;
}

.checkout-page .checkout-kwd-value {
	font-family: var(--font-pearl-sans);
	font-size: 1.8rem;
	color: var(--color-copper);
	white-space: nowrap;
}

.checkout-page .checkout-kwd-value sup {
	font-size: 1rem;
	vertical-align: super;
}

/* Place Your Order button */
.checkout-page .btn-place-order {
	display: block;
	width: 100%;
	margin-top: 3rem;
	padding: 1.6rem 2rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.4rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #fff;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	border: none;
	border-radius: 0.6rem;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
}

.checkout-page .btn-place-order:hover:not(:disabled) {
	opacity: 0.9;
	box-shadow: 0 4px 16px rgba(110, 83, 67, 0.35);
}

.checkout-page .btn-place-order:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Helper text below button */
.checkout-page .checkout-helper-text {
	display: block;
	text-align: center;
	font-size: 1.3rem;
	margin-top: 1.2rem;
	color: var(--color-dark-blue);
	opacity: 0.5;
	font-style: italic;
}

/* ── Billing Address Accordion ─────────────────────────────── */

.checkout-page .checkout-billing-accordion {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.35s ease-out;
}
.checkout-page .checkout-billing-accordion.open {
	grid-template-rows: 1fr;
}
.checkout-page .checkout-billing-accordion-inner {
	overflow: hidden;
}

.checkout-page .checkout-billing-content {
	padding: 0 2.4rem 2.4rem;
}

.checkout-page .checkout-billing-divider {
	border: none;
	border-top: 1px solid var(--color-gray);
	margin: 0 0 2rem;
}

.checkout-page .checkout-billing-heading {
	font-family: var(--font-redhat);
	font-size: 1.8rem;
	font-weight: 500;
	color: var(--color-dark-blue);
	margin: 0 0 1.6rem;
	text-transform: unset;
	letter-spacing: 0.05em;
}

/* Address display */
.checkout-page .checkout-billing-display {
	margin-bottom: 1.6rem;
}

.checkout-page .checkout-billing-address-text {
	font-size: 1.5rem;
	line-height: 1.7;
	color: var(--color-dark-blue);
	margin-bottom: 1.2rem;
}

.checkout-page .checkout-billing-address-text p {
	margin: 0;
}

.checkout-page .checkout-billing-edit-btn {
	display: inline-block;
	padding: 0.6rem 2rem;
	font-size: 1.3rem;
	font-weight: 600;
	font-family: var(--font-pearl-sans);
	color: var(--color-dark-blue);
	background: transparent;
	border: 1.5px solid var(--color-dark-blue);
	border-radius: 0.4rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.checkout-page .checkout-billing-edit-btn:hover {
	background: var(--color-dark-blue);
	color: #fff;
}

/* Billing address form */
.checkout-page .checkout-billing-form .checkout-billing-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 2.4rem;
}

@media (max-width: 767.98px) {
	.checkout-page .checkout-billing-form .checkout-billing-form-grid {
		grid-template-columns: 1fr;
	}
}

.checkout-page .checkout-billing-form .form-group {
	margin: 0 0 1.6rem;
}

.checkout-page .checkout-billing-form .form-group > label {
	display: block;
	font-size: 1.4rem;
	margin: 0 0 0.4rem;
	color: var(--color-dark-blue);
}

.checkout-page .checkout-billing-form .form-group .form-control {
	--input-border-radius: .6rem;
	--input-height: 4rem;
	--input-font-size: 1.5rem;
	--input-padding-x: 1.4rem;
	border: 1px solid transparent;
	background: var(--color-gray-alpha-35);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.checkout-page .checkout-billing-form .form-group .form-control:focus {
	outline: none;
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}

/* SearchableSelect inside billing form */
.checkout-page .checkout-billing-form .form-group .searchable-select-trigger {
	height: 4rem;
	font-size: 1.5rem;
	border-radius: 0.6rem;
	border: 1px solid transparent;
	background: var(--color-gray-alpha-35);
	padding-left: 1.4rem;
	font-family: var(--font-redhat);
	color: var(--color-dark-blue);
}

.checkout-page .checkout-billing-form .form-group .searchable-select-trigger:focus {
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}

.checkout-page .checkout-billing-form .form-group .searchable-select-dropdown {
	max-height: 24rem;
	overflow-y: auto;
}

/* Form action buttons */
.checkout-page .checkout-billing-form-actions {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-top: 0.4rem;
	justify-content: flex-end;
}

.checkout-page .checkout-billing-update-btn,
.checkout-page .checkout-billing-cancel-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.7rem 2.4rem;
	font-size: 1.3rem;
	font-weight: 600;
	font-family: var(--font-pearl-sans);
	border-radius: 0.4rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	min-height: 3.6rem;
}

.checkout-page .checkout-billing-update-btn {
	color: var(--color-dark-blue);
	background: transparent;
	border: 1.5px solid var(--color-dark-blue);
}

.checkout-page .checkout-billing-update-btn:hover {
	background: var(--color-dark-blue);
	color: #fff;
}

.checkout-page .checkout-billing-update-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.checkout-page .checkout-billing-cancel-btn {
	color: var(--color-dark-blue);
	background: transparent;
	border: 1.5px solid var(--color-gray);
	opacity: 0.7;
}

.checkout-page .checkout-billing-cancel-btn:hover {
	opacity: 1;
	border-color: var(--color-dark-blue);
}

/* Terms & Conditions */
.checkout-page .checkout-terms-row {
	margin-top: 2rem;
	padding-top: 1.6rem;
	/* border-top: 1px solid var(--color-gray); */
}

.checkout-page .checkout-terms-row .custom-checkbox span {
	font-size: 1.4rem;
}

/* ================================================================= */
/*  Checkout Result Pages (Success / Failure)                         */
/* ================================================================= */

/* Card container */
.checkout-page .checkout-result-card {
	background: #fff;
	border-radius: 1.2rem;
	padding: 4rem 3rem;
	border: 1px solid var(--color-gray);
	text-align: center;
}

@media (max-width: 767.98px) {
	.checkout-page .checkout-result-card {
		padding: 3rem 2rem;
	}
}

/* Top accent border */
.checkout-page .checkout-result-card--success {
	border-top: 4px solid #16a34a;
}

.checkout-page .checkout-result-card--failure {
	border-top: 4px solid #dc2626;
}

/* Icon */
.checkout-page .checkout-result-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 9rem;
	height: 9rem;
	border-radius: 50%;
	margin: 0 auto 2.4rem;
}

.checkout-page .checkout-result-icon--success {
	background: rgba(22, 163, 74, 0.08);
	color: #16a34a;
}

.checkout-page .checkout-result-icon--failure {
	background: rgba(220, 38, 38, 0.08);
	color: #dc2626;
}

/* Heading */
.checkout-page .checkout-result-title {
	font-family: var(--font-pearl-sans);
	font-size: 2.8rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	line-height: 1.2;
	margin: 0 0 1.2rem;
	letter-spacing: 0.04em;
}

/* Subtitle text */
.checkout-page .checkout-result-subtitle {
	font-family: var(--font-redhat);
	font-size: 1.6rem;
	color: var(--color-dark-blue);
	opacity: 0.6;
	margin: 0 0 2.4rem;
	line-height: 1.5;
	max-width: 48rem;
	margin-left: auto;
	margin-right: auto;
}

/* Order ID highlight box */
.checkout-page .checkout-result-order-id {
	display: inline-flex;
	align-items: center;
	gap: 1.2rem;
	background: var(--color-gray-alpha-35);
	border-radius: 0.8rem;
	padding: 1.2rem 2.4rem;
	margin-bottom: 3.2rem;
}

.checkout-page .checkout-result-order-id-label {
	font-family: var(--font-redhat);
	font-size: 1.4rem;
	color: var(--color-dark-blue);
	opacity: 0.6;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.checkout-page .checkout-result-order-id-value {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	color: var(--color-copper);
	letter-spacing: 0.04em;
}

/* Details section */
.checkout-page .checkout-result-details {
	text-align: left;
	margin-bottom: 3.2rem;
}

.checkout-page .checkout-result-details-heading {
	font-family: var(--font-pearl-sans);
	font-size: 1.8rem;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin: 0 0 1.6rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid var(--color-gray);
	letter-spacing: 0.04em;
}

/* Details table */
.checkout-page .checkout-result-table {
	width: 100%;
	border-collapse: collapse;
}

.checkout-page .checkout-result-table tr {
	border-bottom: 1px solid var(--color-gray-alpha-35);
}

.checkout-page .checkout-result-table tr:last-child {
	border-bottom: none;
}

.checkout-page .checkout-result-table td {
	padding: 1.2rem 0;
	font-family: var(--font-redhat);
	font-size: 1.5rem;
	color: var(--color-dark-blue);
	vertical-align: top;
}

.checkout-page .checkout-result-table-label {
	width: 40%;
	opacity: 0.6;
	font-weight: 500;
}

.checkout-page .checkout-result-table-value {
	font-weight: 600;
	word-break: break-word;
}

/* Empty state text */
.checkout-page .checkout-result-empty {
	font-family: var(--font-redhat);
	font-size: 1.5rem;
	color: var(--color-dark-blue);
	opacity: 0.5;
	margin: 2rem 0 3.2rem;
}

/* Action buttons */
.checkout-page .checkout-result-actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.6rem;
}

.checkout-page .checkout-result-btn {
	display: inline-block;
	max-width: 32rem;
	width: 100%;
	padding: 1.6rem 2rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.4rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #fff;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	border: none;
	border-radius: 0.6rem;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
	text-decoration: none;
}

.checkout-page .checkout-result-btn:hover {
	opacity: 0.9;
	box-shadow: 0 4px 16px rgba(110, 83, 67, 0.35);
}

.checkout-page .checkout-result-btn-secondary {
	display: inline-block;
	padding: 0.8rem 2rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.3rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--color-dark-blue);
	background: transparent;
	border: 1.5px solid var(--color-dark-blue);
	border-radius: 0.4rem;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
	text-decoration: none;
	text-align: center;
}

.checkout-page .checkout-result-btn-secondary:hover {
	background: var(--color-dark-blue);
	color: #fff;
}

@media (max-width: 767.98px) {
	.checkout-page .checkout-result-title {
		font-size: 2.2rem;
	}
	.checkout-page .checkout-result-order-id {
		flex-direction: column;
		gap: 0.4rem;
		padding: 1rem 2rem;
	}
	.checkout-page .checkout-result-table-label {
		width: 45%;
	}
}

/* ── Quick Book Form ──────────────────────────────────────── */

/* DatePicker inside Quick Book form */
.request-form .qb-datepicker {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--color-dark-blue) !important;
	border-radius: 0 !important;
	color: var(--color-dark-blue) !important;
	font-family: var(--font-pearl-sans) !important;
	font-size: 1.6rem !important;
	padding: 0.6rem 0 !important;
	width: 100% !important;
	cursor: pointer !important;
	margin-top: 0.15rem;
}
.request-form .qb-datepicker::placeholder {
	color: rgba(0, 30, 69, 0.45) !important;
}
.request-form .qb-datepicker:focus {
	outline: none !important;
	border-bottom-color: var(--color-dark-blue) !important;
	box-shadow: none !important;
}
.request-form .react-datepicker-wrapper {
	width: 100%;
}
.request-form .react-datepicker-popper {
	z-index: 9999 !important;
}
/* Quick Book calendar: date on left, time on right */
.pearl-datepicker-calendar.qb-calendar {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: auto !important;
}
.qb-calendar .react-datepicker__month-container {
	float: none !important;
	flex: 0 0 auto;
}
.qb-calendar .react-datepicker__time-container {
	float: none !important;
	flex: 0 0 10rem;
	width: 10rem !important;
	border-left: 1px solid var(--color-gray) !important;
	border-top: none !important;
}
.qb-calendar .react-datepicker__time-container .react-datepicker__time-box {
	width: 100% !important;
}
.qb-calendar .react-datepicker__navigation--next {
	right: 11.2rem !important;
}
/* .qb-calendar .react-datepicker__time-list {
	height: 18.4rem !important;
} */
@media (max-width: 991.98px) {
	.request-form .qb-datepicker {
		font-size: 1.4rem !important;
	}
}

/* Validation errors */
.qb-field-error {
	color: var(--color-copper);
	font-size: 1.1rem;
	line-height: 1.3;
	margin-top: 0.3rem;
}
.request-form .input-item,
.request-form .passenger-dropdown-wrap {
	min-height: 4.8rem;
}

/* Submit button hover: copper gradient + white arrow */
.request-form .request-form-footer-btn .btn-arrow-circle:hover {
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	color: #fff;
}

/* Add-journey button (Multi-City) — same circle size as btn-arrow-circle */
.btn-add-circle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 5.7rem;
	height: 5.7rem;
	padding: 0;
	border-radius: 100%;
	background-color: var(--color-gray-alpha);
	/* border: 1px solid var(--color-dark-blue); */
	color: var(--color-dark-blue);
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
	flex-shrink: 0;
}
.btn-add-circle-icon {
	width: 4rem;
	height: 4rem;
	stroke-width: 1;
}
.btn-add-circle:hover {
	background-color: var(--color-dark-blue);
	color: #fff;
}
@media (max-width: 991.98px) {
	.btn-add-circle {
		width: 4.6rem;
		height: 4.6rem;
	}
	.btn-add-circle-icon {
		width: 2rem;
		height: 2rem;
	}
}

/* Passenger dropdown */
.passenger-dropdown-wrap {
	position: relative;
}
.passenger-dropdown-toggle {
	display: flex !important;
	align-items: center !important;
	gap: 0.8rem;
	position: relative;
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--color-dark-blue) !important;
	border-radius: 0 !important;
	color: var(--color-dark-blue) !important;
	font-family: var(--font-pearl-sans) !important;
	font-size: 1.6rem;
	padding: 0.6rem 1.6rem 0.6rem 0 !important;
	width: 100% !important;
	cursor: pointer !important;
	text-align: left !important;
	margin-top: 0.15rem;
}
.passenger-dropdown-toggle::after {
	content: "";
	position: absolute;
	inset-block-start: 50%;
	inset-inline-end: 0.4rem;
	width: 1rem;
	height: 1rem;
	border: solid currentColor;
	border-width: 0 1px 1px 0;
	transform: translate(0, -70%) rotate(45deg);
	transition: transform 0.3s ease;
}
.passenger-dropdown-toggle.open::after {
	transform: translate(0, -30%) rotate(-135deg);
}
@media (max-width: 991.98px) {
	.passenger-dropdown-toggle {
		font-size: 1.4rem !important;
	}
}

.passenger-dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 100;
	background: #fff;
	border-radius: 0.8rem;
	box-shadow: 0 10px 40px rgba(0,30,69,0.2);
	padding: 1.2rem 1.6rem;
	margin-top: 0.4rem;
	min-width: 18rem;
}

.passenger-dropdown-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.6rem 0;
	color: var(--color-dark-blue);
	font-family: var(--font-pearl-sans);
	font-size: 1.4rem;
}

.passenger-counter {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
.passenger-counter button {
	width: 2.8rem;
	height: 2.8rem;
	border-radius: 50%;
	border: 1px solid var(--color-gray);
	background: var(--color-gray-alpha-35);
	color: var(--color-dark-blue);
	font-size: 1.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.15s;
}
.passenger-counter button:hover:not(:disabled) {
	background: var(--color-copper);
	color: #fff;
	border-color: var(--color-copper);
}
.passenger-counter button:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}
.passenger-counter span {
	min-width: 2rem;
	text-align: center;
	font-weight: 600;
}

/* Airport search dropdown inside request form */
.request-form .explore-form-regular {
	position: relative;
}
/* request-form: anchoring context only — card design comes from global .qb-airport-results */
.request-form {
	position: relative;
}

/* Hide chevron when clear button is visible in From/To fields */
.request-form .explore-form-regular .explore-form-floating-label:has(.explore-form-clear)::after {
	display: none;
}
/* Resize and position clear button to match chevron in From/To fields */
.request-form .explore-form-regular .explore-form-clear {
	--explore-form-clear-size: 1.8rem !important;
	--explore-form-clear-ico-size: 80% !important;
	--explore-form-clear-ico-line-width: 1.5px !important;
	inset-inline-end: 0 !important;
}

/*# sourceMappingURL=styles.css.map */

/* ============================================
   Customer Account Pages
   ============================================ */

/* ---- Fade-in animation ---- */

@keyframes accountFadeUp {
  from {
    opacity: 0;
    transform: translateY(1rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.account-fade-in {
  animation: accountFadeUp 0.5s ease-out both;
}

.account-fade-in-delay-1 {
  animation-delay: 0.1s;
}

.account-fade-in-delay-2 {
  animation-delay: 0.2s;
}

/* ---- Layout ---- */

.account-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh;
}

.account-container {
  max-width: 100%;
  margin: 2rem auto;
  padding: 0 4rem;
}

.account-greeting {
  font-family: var(--font-pearl-sans);
  font-size: 4rem;
  font-weight: 700;
  color: var(--color-dark-blue);
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 4rem;
}

.account-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 3rem;
  align-items: start;
}

/* ---- Sidebar ---- */

.account-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.account-sidebar-nav {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.account-sidebar-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 0;
  font-family: var(--font-pearl-sans);
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: var(--color-dark-blue);
  text-decoration: none;
  transition: color 0.2s;
}

.account-sidebar-link:hover {
  color: var(--color-copper);
}

.account-sidebar-link.active {
  color: var(--color-copper);
  font-weight: 700;
}

.account-sidebar-indicator {
  flex-shrink: 0;
  color: var(--color-copper);
  stroke-width: 2.5;
}

.account-sidebar-signout {
  margin-top: 1rem;
}

.account-signout-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1.25rem;
  font-family: var(--font-pearl-sans);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: var(--color-dark-blue);
  border: 1.5px solid var(--color-dark-blue);
  border-radius: 9999px;
  background: transparent;
  cursor: pointer;
  transition: all 0.2s;
}

.account-signout-btn:hover {
  background: var(--color-dark-blue);
  color: #fff;
}

/* ---- Account content area ---- */

.account-content {
  min-width: 0;
  font-size: 2rem;
}

.account-page-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh;
}

.account-error {
  padding: 2rem 0;
  color: #dc2626;
}

.account-empty {
  padding: 2rem 0;
  color: #6b7280;
}

.account-section-title {
  font-family: var(--font-pearl-sans);
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--color-dark-blue);
  margin: 0 0 0.5rem;
}

.account-divider {
  border: none;
  border-top: 2px solid var(--color-dark-blue);
  margin: 0 0 1.5rem;
}

/* ---- Profile page ---- */

.account-info {
  padding: 2rem 0;
}

.account-info-name {
  font-size: 2rem;
  font-weight: 600;
  color: var(--color-dark-blue);
  margin: 0 0 0.25rem;
}

.account-info-email {
  font-size: 2rem;
  margin: 0 0 1.25rem;
}

.account-info-actions {
  display: flex;
  gap: 0.5rem;
}

.account-btn {
  padding: 0.5rem 1.5rem;
  font-family: var(--font-pearl-sans);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: var(--color-dark-blue);
  border: 1.5px solid var(--color-dark-blue);
  border-radius: 9999px;
  background: transparent;
  cursor: pointer;
  transition: all 0.2s;
}

.account-btn:hover {
  background: var(--color-dark-blue);
  color: #fff;
}

/* ---- Orders table ---- */

.account-orders-table-wrapper {
  overflow-x: auto;
  position: relative;
}

.account-table-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  z-index: 10;
}

.account-orders-table-wrapper.is-loading .account-orders-table {
  filter: blur(3px);
  pointer-events: none;
  user-select: none;
}

.account-orders-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 2rem;
}

.account-orders-table thead th {
  font-family: var(--font-pearl-sans);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--color-dark-blue);
  text-align: left;
  padding: 0.75rem 0.5rem;
  border-bottom: 1px solid var(--color-dark-blue);
}

.account-orders-table tbody tr {
  border-bottom: 1px dashed var(--color-dark-blue);
}

.account-orders-table tbody td {
  padding: 1rem 0.5rem;
  color: var(--color-dark-blue);
  vertical-align: top;
}

.account-order-id-link {
  font-weight: 600;
  color: var(--color-dark-blue);
  text-decoration: none;
}

.account-order-id-link:hover {
  color: var(--color-copper);
}

.account-status-cell {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.account-status-icon {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}

.account-status-icon--confirmed {
  color: green;
}

.account-status-icon--cancelled {
  color: #dc2626;
}

.account-status-icon--pending {
  color: #d97706;
}

.account-view-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.35rem 1rem;
  font-family: var(--font-pearl-sans);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: var(--color-dark-blue);
  border: 1.5px solid var(--color-dark-blue);
  border-radius: 9999px;
  text-decoration: none;
  transition: all 0.2s;
}

.account-view-btn:hover {
  background: var(--color-dark-blue);
  color: #fff;
}

/* ---- View All Orders ---- */

.account-view-all-orders {
  display: flex;
  justify-content: center;
  padding: 1.5rem 0 0.5rem;
}

/* ---- Pagination ---- */

.account-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  padding: 1rem 0;
  font-size: 2rem;
}

.account-pagination-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  color: var(--color-dark-blue);
  background: transparent;
  border: 1.5px solid var(--color-dark-blue);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s;
}

.account-pagination-btn:hover:not(:disabled) {
  background: var(--color-dark-blue);
  color: #fff;
}

.account-pagination-btn:disabled {
  opacity: 0.3;
  cursor: default;
}

.account-pagination-icon {
  width: 1rem;
  height: 1rem;
  stroke-width: 2.5;
}

.account-pagination-info {
  color: var(--color-dark-blue);
}

/* ---- Order detail page ---- */

.account-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 1.75rem;
  color: var(--color-copper);
  text-decoration: none;
  margin-bottom: 1rem;
  transition: opacity 0.2s;
}

.account-back-link:hover {
  opacity: 0.7;
}

.order-detail-summary {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem;
  padding: 1rem 0 1.5rem;
}

.order-detail-summary-item {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  /* font-size: 0.9rem; */
  color: var(--color-dark-blue);
}

.order-detail-label {
  /* font-size: 0.75rem; */
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  /* color: #6b7280; */
}

.order-detail-status {
  text-transform: capitalize;
}

.order-detail-subtitle {
  font-family: var(--font-pearl-sans);
  font-size: 2rem;
  font-weight: 700;
  /* letter-spacing: 0.05em; */
  color: var(--color-dark-blue);
  margin: 1.5rem 0 0.75rem;
}

/* .order-detail-items-table tbody td {
  font-size: 0.85rem;
} */

.order-item-name {
  font-weight: 600;
  margin-bottom: 0.15rem;
}

.order-item-sku {
  font-size: 1.4rem;
  color: #6b7280;
  margin-bottom: 0.25rem;
}

.order-item-options {
  margin-top: 0.35rem;
  padding-left: 0.5rem;
  border-left: 2px solid var(--color-gray);
}

.order-item-option {
  font-size: 1.5rem;
  color: #6b7280;
  line-height: 1.6;
}

.order-item-option-label {
  font-weight: 600;
  color: var(--color-dark-blue);
}

.order-item-option-value {
  color: #6b7280;
}

/* ---- Order totals ---- */

.order-detail-totals {
  margin-top: 1.5rem;
  max-width: 320px;
  margin-left: auto;
}

.order-detail-total-row {
  display: flex;
  justify-content: space-between;
  padding: 0.4rem 0;
  color: var(--color-dark-blue);
}

.order-detail-grand-total {
  font-weight: 700;
  border-top: 1.5px solid var(--color-dark-blue);
  margin-top: 0.5rem;
  padding-top: 0.75rem;
}

/* ---- Order addresses ---- */

.order-detail-addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px dashed var(--color-gray);
}

.order-detail-address-text {
  font-family: inherit;
  color: var(--color-dark-blue);
  line-height: 1.6;
  white-space: pre-line;
  margin: 0;
}

/* ---- Responsive ---- */

@media (max-width: 768px) {
  .account-layout {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .account-sidebar {
    border-bottom: 1px solid var(--color-gray);
    padding-bottom: 1rem;
  }

  .account-sidebar-nav {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .account-sidebar-link {
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--color-gray);
    border-radius: 9999px;
    font-size: 0.75rem;
  }

  .account-sidebar-link.active {
    border-color: var(--color-copper);
    background: var(--color-copper);
    color: #fff;
  }

  .account-sidebar-indicator {
    display: none;
  }

  .account-greeting {
    font-size: 1.5rem;
  }

  .order-detail-addresses {
    grid-template-columns: 1fr;
  }

  .account-orders-table {
    font-size: 0.8rem;
  }
}

/* policy-content */
.text-section-body.policy-content {
	line-height: 1.75;
}
.text-section-body.policy-content h2 {
	font-size: 2.6rem;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 1.6rem;
	padding-bottom: 0.9rem;
	border-bottom: 2px solid var(--color-copper);
}
.text-section-body.policy-content p {
	margin-bottom: 1.4rem;
}
.text-section-body.policy-content ul,
.text-section-body.policy-content ol {
	padding-left: 2.2rem;
	margin-bottom: 1.4rem;
}
.text-section-body.policy-content ul li {
	list-style-type: disc;
	margin-bottom: 0.5rem;
}
.text-section-body.policy-content ol > li {
	list-style-type: decimal;
	margin-bottom: 0.9rem;
}
.text-section-body.policy-content ol > li > ul {
	margin-top: 0.6rem;
	list-style-type: circle;
}
.text-section-body.policy-content a {
	color: var(--color-copper);
	text-decoration: underline;
	text-underline-offset: 3px;
	word-break: break-all;
}
.text-section-body.policy-content table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 1.8rem;
	font-size: 1.6rem;
}
.text-section-body.policy-content table th {
	padding: 0.8rem 1.2rem;
	border: 1px solid rgba(0, 30, 69, 0.2);
	background-color: var(--color-dark-blue);
	color: #fff;
	font-weight: 600;
	text-align: left;
}
.text-section-body.policy-content table td {
	padding: 0.7rem 1.2rem;
	border: 1px solid rgba(0, 30, 69, 0.15);
	vertical-align: top;
}
.text-section-body.policy-content table tbody tr:nth-child(even) {
	background-color: rgba(0, 30, 69, 0.03);
}
.policy-section + .policy-section {
	margin-top: 4rem;
	padding-top: 4rem;
	border-top: 1px solid rgba(0, 30, 69, 0.1);
}
@media (max-width: 991.98px) {
	.text-section-body.policy-content h2 {
		font-size: 2rem;
	}
	.text-section-body.policy-content table {
		font-size: 1.3rem;
	}
	.policy-section + .policy-section {
		margin-top: 2.5rem;
		padding-top: 2.5rem;
	}
}

/* ============================================
   Quickbook Page
   ============================================ */

/* ---- Journey toolbar ---- */
.qb-toolbar {
	background: var(--color-dark-blue);
	color: #fff;
	position: sticky;
	top: 0;
	z-index: 50;
	box-shadow: 0 2px 12px rgba(0,0,0,0.25);
}
.qb-toolbar-inner {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
}
.qb-journey-badge {
	font-family: var(--font-pearl-sans);
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	background: var(--color-copper);
	color: #fff;
	padding: 1rem;
	border-radius: 999.9rem;
	white-space: nowrap;
	flex-shrink: 0;
}
.qb-toolbar-cols {
	display: grid;
	grid-template-columns: 2fr 2fr 1.5fr 1.5fr 1fr;
	flex: 1;
	gap: 2rem;
	min-width: 0;
	align-items: start;
}
/* When a leg label (Onward/Return badge) is the first child, add an extra auto column */
.qb-toolbar-cols:has(.qb-toolbar-col--leg-label) {
	grid-template-columns: auto 2fr 2fr 1.5fr 1.5fr 1fr;
}
.qb-toolbar-col {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	min-width: 0;
	justify-content: center;
}
.qb-toolbar-label {
	font-family: var(--font-pearl-sans);
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.6);
}
.qb-toolbar-value {
	font-family: var(--font-pearl-sans);
	font-size: 1.3rem;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 22rem;
}
.qb-toolbar-modify {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #fff;
	background: transparent;
	border: 1.5px solid rgba(255,255,255,0.45);
	border-radius: 999.9rem;
	padding: 1rem 1.8rem;
	cursor: pointer;
	transition: background 0.2s, border-color 0.2s;
	flex-shrink: 0;
}
.qb-toolbar-modify:hover {
	background: rgba(255,255,255,0.12);
	border-color: #fff;
}

/* ---- Journey tabs (roundtrip) — styled like request-box-nav ---- */
.qb-toolbar-two-journey {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.8rem;
	min-width: 0;
}
.qb-toolbar-tabs-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
/* Divider between the tabs row and the flight card row */
.qb-toolbar-tabs-row + .qb-fc-row {
	border-top: 1px solid rgba(255,255,255,0.18);
	padding-top: 0.6rem;
}
.qb-toolbar-two-journey--review {
	display: flex;
	flex-direction: row;
	gap: 0;
	flex: 1;
	min-width: 0;
}
.qb-toolbar-two-journey--review > .qb-fc-row {
	flex: 1;
	min-width: 0;
	padding-right: 2rem;
}
.qb-toolbar-two-journey--review > .qb-fc-row + .qb-fc-row {
	border-left: 1px solid rgba(255,255,255,0.18);
	padding-left: 2rem;
	padding-right: 0;
}
.qb-toolbar-tabs {
	background-color: rgba(182, 128, 98, 0.2);
	padding: 0.4rem 0.3rem;
	border-radius: 999.9rem;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	width: fit-content;
	/* margin-inline: auto; */
}
.qb-toolbar-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.7rem 1.4rem;
	color: rgba(255,255,255,0.7);
	background: transparent;
	border: 0;
	border-radius: 999.9rem;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	white-space: nowrap;
	transition: color 0.2s;
}
.qb-toolbar-tab::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, #6e5343, #ae8267, #af8d7f);
	opacity: 0;
	border-radius: 999.9rem;
	transition: opacity 0.25s ease;
}
.qb-toolbar-tab > * {
	position: relative;
	z-index: 2;
}
.qb-toolbar-tab--active {
	color: #fff;
}
.qb-toolbar-tab--active::before {
	opacity: 1;
}
.qb-toolbar-tab:not(.qb-toolbar-tab--active):hover {
	color: rgba(255,255,255,0.95);
}

/* ---- Flight card (toolbar redesign) ---- */
.qb-fc-row {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	flex: 1;
	min-width: 0;
}
.qb-toolbar-flight-card {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	flex: 1;
	min-width: 0;
}
.qb-fc-endpoint {
	display: flex;
	flex-direction: column;
	gap: 0;
	flex-shrink: 0;
	min-width: 0;
}
.qb-fc-endpoint--right {
	text-align: right;
	align-items: flex-end;
}
.qb-fc-iata {
	font-family: var(--font-pearl-sans);
	font-size: 1.5rem;
	font-weight: 600;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.06em;
}
.qb-fc-time {
	font-family: var(--font-pearl-sans);
	font-size: 2.4rem;
	font-weight: 700;
	color: #fff;
	line-height: 1;
	margin-top: 0.3rem;
}
.qb-fc-date {
	font-family: var(--font-pearl-sans);
	font-size: 0.85rem;
	font-weight: 500;
	color: rgba(255,255,255,0.6);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-top: 0.2rem;
}
.qb-fc-city {
	font-family: var(--font-pearl-sans);
	font-size: 0.85rem;
	font-weight: 400;
	color: rgba(255,255,255,0.6);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-top: 0.1rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 16rem;
}
.qb-fc-route {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	min-width: 4rem;
}
.qb-fc-route-track {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 0 1.5rem;
}
.qb-fc-route-dot {
	width: 1.5rem;
	height: 1.5rem;
	border: 2px solid var(--color-copper);
	border-radius: 50%;
	flex-shrink: 0;
}
.qb-fc-route-line {
	flex: 1;
	border-top: 2px dashed rgba(255,255,255,0.28);
	height: 0;
}
.qb-fc-route-plane {
	width: 3rem;
	height: 3rem;
	flex-shrink: 0;
}
.qb-fc-badge {
	font-size: 1rem;
	padding: 0.45rem 0.9rem;
}
.qb-fc-pax {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	font-family: var(--font-pearl-sans);
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.7);
	white-space: nowrap;
}
.qb-toolbar-meta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.6rem;
	flex-shrink: 0;
}
.qb-toolbar-pax {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.75);
	white-space: nowrap;
}
@media (max-width: 991.98px) {
	.qb-fc-iata { font-size: 1.25rem; }
	.qb-fc-time { font-size: 1.8rem; }
	.qb-fc-route { min-width: 2.5rem; }
}
@media (max-width: 575.98px) {
	.qb-fc-date,
	.qb-fc-city { display: none; }
	.qb-fc-iata { font-size: 1.1rem; }
	.qb-fc-time { font-size: 1.5rem; }
}

/* ---- Edit row ---- */
.qb-edit-row {
	background: #f5f6f8;
	border-top: 1px solid rgba(0,30,69,0.15);
}
.qb-edit-row .input-item {
	margin-bottom: 0;
}
/* Clip label wrapper to uniform row height */
.qb-edit-row .explore-form-floating-label {
	height: 4.4rem;
	overflow: visible;
}
/* Airport inputs: override --input-height to target value so the variable-driven
   height AND padding-inline-end both resolve correctly, then fix font/color/padding */
.qb-edit-row .explore-form {
	position: relative;
}
.qb-edit-row .explore-form-input .explore-form-floating-label .form-control {
	--input-height: 4.4rem;
	height: 4.4rem;
	font-size: 2.5rem;
	font-weight: 400;
	color: #001e45;
	padding: 0 1.2rem;
	padding-inline-end: 1.2rem;
}
/* Airport results dropdown in edit row */
/* qb-edit-row: inherits card design from global .qb-airport-results — no overrides needed */
/* Hide chevron when clear button is visible in From/To fields */
.qb-edit-row .explore-form-regular .explore-form-floating-label:has(.explore-form-clear)::after {
	display: none;
}
/* Size and position the clear button to match the chevron */
.qb-edit-row .explore-form-regular .explore-form-clear {
	--explore-form-clear-size: 1.8rem !important;
	--explore-form-clear-ico-size: 80% !important;
	--explore-form-clear-ico-line-width: 1.5px !important;
	inset-inline-end: 0 !important;
}
/* Datepicker and passenger dropdown – same uniform height */
.qb-edit-row .qb-datepicker,
.qb-edit-row .passenger-dropdown-toggle {
	height: 4.4rem;
	font-size: 1.4rem;
	padding: 0 1.2rem;
	box-sizing: border-box;
	margin-top: 0.15rem;
	font-family: var(--font-pearl-sans);
}
.qb-edit-actions {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding-top: 0.4rem;
	flex-shrink: 0;
	justify-content: flex-end;
}
.qb-edit-btn {
	--bs-btn-font-size: 1.2rem !important;
	--bs-btn-padding-x: 2rem !important;
	white-space: nowrap;
}

/* ---- Step tabs ---- */
.qb-step-tabs {
	background: #fff;
	border-bottom: 2px solid rgba(0,30,69,0.1);
}
.qb-tabs-row {
	display: flex;
	align-items: center;
	gap: 0;
	padding: 0;
}
.qb-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(0,30,69,0.45);
	background: transparent;
	border: none;
	border-bottom: 3px solid transparent;
	padding: 1.5rem 2rem;
	cursor: pointer;
	transition: color 0.2s, border-color 0.2s;
	position: relative;
	bottom: -2px;
}
.qb-tab:hover {
	color: var(--color-dark-blue);
}
.qb-tab.active {
	color: var(--color-dark-blue);
	border-bottom-color: var(--color-copper);
}
.qb-tab-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.4rem;
	height: 2.4rem;
	border-radius: 50%;
	background: rgba(0,30,69,0.12);
	font-size: 1.1rem;
	font-weight: 700;
	flex-shrink: 0;
	transition: background 0.2s, color 0.2s;
}
.qb-tab.active .qb-tab-number {
	background: var(--color-copper);
	color: #fff;
}
.qb-tab-check {
	font-size: 1.1rem;
	color: var(--color-copper);
}
.qb-tab-divider {
	color: rgba(0,30,69,0.25);
	font-size: 1.6rem;
	padding: 0 0.5rem;
	user-select: none;
}

/* ---- Section header ---- */
.qb-products-section {
	padding-top: 3rem;
	padding-bottom: 8rem; /* room for sticky bottom bar */
}
.qb-section-header {
	margin-bottom: 2rem;
}
.qb-section-title {
	font-family: var(--font-pearl-sans);
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-dark-blue);
}

/* ---- Selected product card state ---- */
.products-section .product-card.selected {
	border-color: var(--color-copper);
	/* box-shadow: 0 0 0 2px var(--color-copper), 0 8px 24px rgba(182,128,98,0.2); */
}
.products-section .product-card.selected .product-name {
	color: var(--color-copper);
}

/* ---- btn-selected (replaces btn-book in select mode) ---- */
.products-section .btn-selected {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #fff;
	background: var(--color-copper);
	border: 1px solid var(--color-copper);
	border-radius: 50px;
	cursor: pointer;
	transition: opacity 0.2s;
}
.products-section .btn-selected:hover {
	opacity: 0.85;
}

/* ---- Bottom bar ---- */
.qb-bottom-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 50;
	background: var(--color-dark-blue);
	box-shadow: 0 -2px 16px rgba(0,0,0,0.25);
}
.qb-bottom-bar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
	gap: 2rem;
}
.qb-bottom-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border: none;
	border-radius: 999.9rem;
	padding: 0.9rem 2rem;
	cursor: pointer;
	transition: opacity 0.2s, background 0.2s;
	white-space: nowrap;
}
.qb-bottom-btn-back {
	background: transparent;
	color: rgba(255,255,255,0.75);
	border: 1.5px solid rgba(255,255,255,0.35);
}
.qb-bottom-btn-back:hover {
	color: #fff;
	border-color: #fff;
}
.qb-bottom-btn-continue {
	background: var(--color-copper);
	color: #fff;
}
.qb-bottom-btn-continue:hover:not(:disabled) {
	opacity: 0.88;
}
.qb-bottom-btn-continue:disabled,
.qb-bottom-btn-continue.disabled {
	opacity: 0.4;
	cursor: default;
}
.qb-bottom-price {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: #fff;
}
.qb-price-prefix {
	font-family: var(--font-pearl-sans);
	font-size: 1.1rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.6);
}
.qb-price-value {
	font-family: var(--font-pearl-sans);
	font-size: 2.2rem;
	/* font-weight: 700; */
	color: #fff;
}

/* ---- Not-available badge (BLT) ---- */
.products-section .qb-not-available {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999.9rem;
	padding: 0.9rem 1.8rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(0, 30, 69, 0.35);
	border: 1.5px solid rgba(0, 30, 69, 0.18);
	background: transparent;
	cursor: not-allowed;
	user-select: none;
}

/* ---- Responsive ---- */
@media (max-width: 991.98px) {
	.qb-toolbar-inner {
		flex-wrap: wrap;
		gap: 1rem;
	}
	.qb-toolbar-cols {
		grid-template-columns: repeat(3, 1fr);
		gap: 1rem;
	}
	.qb-toolbar-cols:has(.qb-toolbar-col--leg-label) {
		grid-template-columns: auto repeat(3, 1fr);
	}
	.qb-toolbar-value {
		font-size: 1.2rem;
		max-width: 16rem;
	}
	.qb-section-title {
		font-size: 1.5rem;
	}
}
@media (max-width: 575.98px) {
	.qb-toolbar-cols {
		grid-template-columns: 1fr 1fr;
		gap: 0.8rem;
		width: 100%;
	}
	.qb-toolbar-cols:has(.qb-toolbar-col--leg-label) {
		grid-template-columns: 1fr 1fr;
	}
	.qb-tab {
		font-size: 1.1rem;
		padding: 1.2rem 1.2rem;
		gap: 0.5rem;
	}
	.qb-bottom-btn {
		font-size: 1.1rem;
		padding: 0.8rem 1.2rem;
	}
	.qb-price-value {
		font-size: 1.8rem;
	}
	.qb-section-title {
		font-size: 1.3rem;
	}
}

/* ======================================================================
   QB ONEWAY REVIEW PAGE
   ====================================================================== */

/* ---- Layout ---- */
.qbr-main {
	padding-bottom: 10rem; /* room for sticky bottom bar */
}
.qbr-content {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

/* ---- Journey toolbar ---- */
.qbr-toolbar {
	position: sticky;
	top: 0;
	z-index: 40;
	background: var(--color-dark-blue, #001e45);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.qbr-toolbar-inner {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
	flex-wrap: wrap;
}
.qbr-back-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.8);
	background: transparent;
	border: 1.5px solid rgba(255, 255, 255, 0.3);
	border-radius: 999.9rem;
	padding: 0.5rem 1.2rem;
	cursor: pointer;
	transition: color 0.15s, border-color 0.15s;
	flex-shrink: 0;
}
.qbr-back-btn:hover {
	color: #fff;
	border-color: rgba(255, 255, 255, 0.7);
}
.qbr-journey-summary {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	flex-wrap: wrap;
}
.qbr-journey-chip {
	display: inline-flex;
	flex-direction: column;
	gap: 0.1rem;
}
.qbr-chip-label {
	font-family: var(--font-pearl-sans);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.5);
	line-height: 1;
}
.qbr-chip-value {
	font-family: var(--font-redhat);
	font-size: 1.3rem;
	color: #fff;
	line-height: 1.2;
}
.qbr-journey-arrow {
	width: 1.4rem;
	height: 1.4rem;
	color: var(--color-copper, #b68062);
	flex-shrink: 0;
}
.qbr-journey-divider {
	width: 1px;
	height: 2.4rem;
	background: rgba(255, 255, 255, 0.18);
	flex-shrink: 0;
}

/* ---- Section header ---- */
.qbr-section {
	margin-bottom: 3rem;
}

/* .qbr-section-label {
	font-family: var(--font-pearl-sans);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.6);
	flex-shrink: 0;
} */

.qbr-section-iata {
	color: var(--color-copper, #b68062);
}

/* ---- Product card ---- */
.qbr-product-card {
	background: #fff;
	border-radius: 0 0 2rem 2rem;
	box-shadow: 0 4px 24px rgba(0, 30, 69, 0.1);
	padding: 4rem;
}
.qbr-product-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1.6rem;
	flex-wrap: wrap;
}

.qbr-product-body {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--color-gray);
}

.qbr-product-footer {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--color-gray);
}
.qbr-product-name {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	/* font-weight: 700; */
	color: var(--color-dark-blue, #001e45);
	margin: 0;
}
.qbr-product-price {
	font-family: var(--font-pearl-sans);
	font-size: 2.5rem;
	color: var(--color-copper, #b68062);
	white-space: nowrap;
}
.qbr-product-price sup {
	font-size: 0.6em;
	vertical-align: super;
}

/* ---- BLT alert ---- */
.qbr-blt-alert {
	margin-bottom: 1.6rem;
}

/* ---- Options grid ---- */
.qbr-options-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.6rem 2.4rem;
	align-items: center;
}
.qbr-options-grid .form-group {
	margin-bottom: 0;
}
.qbr-options-grid .form-group > label {
	display: block;
	font-size: 1.2rem;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-dark-blue);
	margin-bottom: 0.6rem;
	letter-spacing: 0.02em;
}
.qbr-options-grid .form-group .form-control {
	--input-border-radius: 0.6rem;
	--input-height: 4rem;
	--input-font-size: 1.6rem;
	--input-padding-x: 1.6rem;
	border: 1px solid transparent;
	background: var(--color-gray-alpha-35);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.qbr-options-grid .form-group .form-control:focus,
.qbr-options-grid .form-group .form-control:active {
	border-color: var(--color-copper);
	box-shadow: 0 0 0 3px rgba(182, 128, 98, 0.15);
}

/* ---- Bottom bar ---- */
.qbr-bottom-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 50;
	background: var(--color-dark-blue, #001e45);
	box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.25);
}
.qbr-bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 1.4rem;
	padding-bottom: 1.4rem;
	gap: 2.4rem;
}
.qbr-price-summary {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
}
.qbr-price-line {
	display: flex;
	align-items: baseline;
	gap: 0.8rem;
}
.qbr-price-line-label {
	font-family: var(--font-pearl-sans);
	font-size: 1.1rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.55);
	min-width: 7rem;
}
.qbr-price-line-value {
	font-family: var(--font-pearl-sans);
	font-size: 1.5rem;
	color: #fff;
}
.qbr-price-line-value sup {
	font-size: 0.65em;
	vertical-align: super;
}
.qbr-price-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.15);
	margin: 0.3rem 0;
}
.qbr-price-total .qbr-price-line-label {
	color: rgba(255, 255, 255, 0.8);
	font-weight: 700;
}
.qbr-price-total .qbr-price-line-value {
	font-size: 2rem;
	color: var(--color-copper, #b68062);
}
.qbr-add-to-cart-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	font-family: var(--font-pearl-sans);
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #fff;
	background: var(--color-copper, #b68062);
	border: none;
	border-radius: 999.9rem;
	padding: 1rem 2.2rem;
	cursor: pointer;
	white-space: nowrap;
	transition: opacity 0.2s;
	flex-shrink: 0;
}
.qbr-add-to-cart-btn:hover:not(:disabled) {
	opacity: 0.88;
}
.qbr-add-to-cart-btn:disabled {
	opacity: 0.5;
	cursor: default;
}

/* ---- Responsive ---- */
@media (max-width: 991.98px) {
	.qbr-options-grid {
		grid-template-columns: 1fr;
	}
	.qbr-product-name {
		font-size: 1.7rem;
	}
	.qbr-journey-summary {
		gap: 0.6rem;
	}
}
@media (max-width: 575.98px) {
	.qbr-toolbar-inner {
		gap: 1rem;
	}
	.qbr-bottom-inner {
		flex-direction: column;
		align-items: stretch;
		gap: 1.2rem;
	}
	.qbr-add-to-cart-btn {
		justify-content: center;
		width: 100%;
	}
	.qbr-product-header {
		flex-direction: column;
		gap: 0.6rem;
	}
	.qbr-price-line-label {
		min-width: 5.5rem;
	}
}

