/* Shared mobile-sized layout: visible on PC and phones. */
.ch24 {
	--ch-yellow: #ffda2b;
	--ch-muted: #b7c0ca;
	box-sizing: border-box;
	width: 100%;
	max-width: 500px;
	margin: 0 auto !important;
	background: #15181c;
	color: #f7f8fa;
	line-height: 1.6;
	scroll-margin-top: 80px;
	overflow: hidden;
}
.ch24 * {
	box-sizing: border-box;
}
.ch24 .ux-text,
.ch24 p,
.ch24 .accordion-inner {
	font-size: 14px;
	line-height: 1.65;
	color: var(--ch-muted);
}
.ch24 .ux-text {
	margin-bottom: 12px;
}
.ch24 .ux-text > :last-child {
	margin-bottom: 0;
}
.ch24 p {
	margin: 0 0 12px;
}
.ch24 h1,
.ch24 h2,
.ch24 h3 {
	color: #f7f8fa;
	line-height: 1.25;
	letter-spacing: -0.4px;
	margin: 0 0 12px;
}
.ch24 h1 {
	font-size: 32px;
}
.ch24 h2 {
	font-size: 25px;
}
.ch24 h3 {
	font-size: 19px;
}
.ch24 .ch-yellow {
	color: var(--ch-yellow);
}
.ch24 .ch-eyebrow p {
	font-size: 10px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--ch-yellow);
}
.ch24 .ch-lead p {
	font-size: 15px;
}
.ch24 .ch-caption p {
	font-size: 12px;
	line-height: 1.6;
}
.ch24 .ch-reassure p {
	font-size: 11px;
	text-align: center;
	line-height: 1.7;
}
.ch24 .row {
	width: 100%;
	max-width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
}
.ch24 .row > .col {
	padding: 0 19px 16px !important;
	min-width: 0;
}
.ch24 .row .row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.ch24 .row > .ch-banner-col {
	padding: 0 !important;
}
.ch24 .ch-banner-image {
	width: 100% !important;
	margin: 0 !important;
}
.ch24 .ch-banner-image img {
	width: 100%;
	height: auto;
	display: block;
}
.ch24.ch-banner-section {
	padding: 0 !important;
}
.ch24.ch-hero {
	padding: 22px 0 10px !important;
}
.ch24 .ch-pill {
	display: inline-block;
	border: 1px solid #ffda2b66;
	background: #ffda2b0d;
	border-radius: 99px;
	padding: 5px 11px;
}
.ch24 .ch-pill p {
	font-size: 10px;
	color: var(--ch-yellow);
}
.ch24 .ch-arrival-title {
	border-left: 3px solid var(--ch-yellow);
	padding-left: 12px;
	margin: 20px 0 8px;
}
.ch24 .ch-arrival-title h2 {
	font-size: 30px;
	line-height: 1.25;
	color: var(--ch-yellow);
}
.ch24.ch-section {
	padding: 28px 0 10px !important;
	border-top: 1px solid #ffffff0e;
}
.ch24.ch-alt {
	background: #1b1f24;
}
.ch24.ch-services {
	padding: 0 0 14px !important;
}
.ch24 .ch-card > .col-inner,
.ch24 .ch-contact-card > .col-inner {
	padding: 20px;
	border: 1px solid #ffffff1c;
	border-radius: 15px;
	background: #242a31;
}
.ch24 .ch-card-featured > .col-inner {
	border-color: #ffda2b66;
}
.ch24 .ch-service-image {
	margin-bottom: 17px;
}
.ch24 .ch-service-image img {
	width: 100%;
	border-radius: 10px;
	height: auto;
}
.ch24 .ch-card p {
	font-size: 13px;
}
.ch24 .ch-benefit-row > .col {
	padding: 0 5px 10px !important;
}
.ch24 .ch-benefit > .col-inner {
	height: 100%;
	padding: 15px 12px;
	border: 1px solid #ffffff16;
	border-radius: 12px;
	background: #252b32;
}
.ch24 .ch-benefit h3 {
	font-size: 15px;
}
.ch24 .ch-benefit p {
	font-size: 12px;
}
.ch24 .ch-benefit > .col-inner > .ux-text:last-child {
	margin-bottom: 0;
}
.ch24 .row > .ch-step-col {
	padding: 15px 0 !important;
	border-bottom: 1px solid #ffffff16;
}
.ch24 .ch-step-col h3 {
	font-size: 17px;
}
.ch24 .ch-step-col p {
	font-size: 13px;
}
.ch24 .ch-step-number p {
	font-size: 12px;
	color: var(--ch-yellow);
}
.ch24 .ch-area-pill,
.ch24 .ch-tag {
	display: inline-block;
	vertical-align: top;
	margin: 0 6px 8px 0;
	border: 1px solid #ffffff1c;
	border-radius: 6px;
	padding: 6px 10px;
	background: #ffffff04;
}
.ch24 .ch-area-pill p {
	font-size: 12px;
}
.ch24 .ch-tag p {
	font-size: 10px;
	line-height: 1.5;
}
.ch24 .accordion-title {
	font-size: 14px;
	color: white;
	border-color: #ffffff1c;
	min-height: 48px;
	line-height: 1.5;
	padding: 14px 12px 14px 38px;
}
.ch24 .accordion-title.active {
	color: var(--ch-yellow);
	background: #ffda2b09;
}
.ch24 .accordion-inner {
	padding: 16px;
}
.ch24 .accordion-inner p {
	font-size: 13px;
}
.ch24 .toggle {
	color: var(--ch-yellow);
}
.ch24.ch-footer {
	background: #111418;
	border-top: 1px solid #ffffff1c;
	padding: 28px 0 95px !important;
}
.ch24 .ch-copyright p {
	font-size: 10px;
	color: #8b96a4;
	margin-top: 15px;
}
.ch24.ch-dock-section {
	height: 0;
	min-height: 0;
	padding: 0 !important;
	overflow: visible;
}
.ch24.ch-dock-section .row > .col {
	padding: 0 5px !important;
}
body.ch24-site {
	background: #080b10;
}
body.ch24-site #wrapper {
	width: 100%;
	max-width: 500px;
	margin: auto;
	box-shadow: 0 0 70px #0008;
	background: #15181c;
}
body.ch24-site #main {
	background: #15181c;
}
body.ch24-site .page-wrapper {
	padding-top: 0;
	padding-bottom: 0;
}
body.ch24-site #header,
body.ch24-site #footer {
	width: 100%;
	max-width: 500px;
	margin: auto;
}
body.ch24-site #header .header-wrapper.stuck {
	left: 0;
	right: 0;
	width: 100%;
	max-width: 500px;
	margin: auto;
}
body.ch24-site #header .hide-for-medium {
	display: none !important;
}
body.ch24-site #header .show-for-medium {
	display: block !important;
}
body.ch24-site #header .header-inner {
	padding-left: 16px;
	padding-right: 16px;
}
body.ch24-site .scroll-to-bullets {
	display: none !important;
}
.ch24-header {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	line-height: 1.3;
	color: #ffda2b;
}
.ch24-header span {
	color: #fff;
}
.ch24 a:focus-visible {
	outline: 2px solid white;
	outline-offset: 3px;
}
@media (max-width: 359px) {
	.ch24 h1 {
		font-size: 28px;
	}
	.ch24 h2 {
		font-size: 23px;
	}
	.ch24 .ch-arrival-title h2 {
		font-size: 26px;
	}
	.ch24 .row > .col {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.ch24 .ch-benefit h3 {
		font-size: 14px;
	}
}

/* Dedicated button classes take precedence over Flatsome defaults.
Font family and weight remain controlled by Flatsome Typography. */
.ch24 a.button.ch-btn {
	--ch-btn-bg: #ffda2b;
	--ch-btn-hover: #ffe66a;
	--ch-btn-color: #15181c;
	--ch-btn-border: transparent;
	--ch-btn-min-height: 50px;
	--ch-btn-size: 14px;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: var(--ch-btn-min-height) !important;
	margin: 0 0 12px !important;
	padding: 13px 14px !important;
	border: 1px solid var(--ch-btn-border) !important;
	border-radius: 11px !important;
	background: var(--ch-btn-bg) !important;
	color: var(--ch-btn-color) !important;
	font-size: var(--ch-btn-size) !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	text-align: center !important;
	white-space: normal !important;
	box-shadow: none !important;
	text-shadow: none !important;
	opacity: 1 !important;
	filter: none !important;
	transform: none !important;
	transition:
		background-color 0.15s ease,
		color 0.15s ease !important;
}
.ch24 a.button.ch-btn:visited {
	color: var(--ch-btn-color) !important;
}
.ch24 a.button.ch-btn:hover,
.ch24 a.button.ch-btn:active {
	background: var(--ch-btn-hover) !important;
	color: var(--ch-btn-color) !important;
	text-decoration: none !important;
	box-shadow: none !important;
}
.ch24 a.button.ch-btn.ch-btn-secondary {
	--ch-btn-bg: #2b323b;
	--ch-btn-hover: #38424f;
	--ch-btn-color: #fff;
	--ch-btn-border: #ffffff22;
}
.ch24 a.button.ch-btn.ch-btn-small {
	--ch-btn-size: 13px;
	--ch-btn-min-height: 44px;
}
.ch24 a.button.ch-btn > span,
.ch24 a.button.ch-footer-link > span {
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	text-transform: inherit !important;
	text-decoration: none !important;
	white-space: inherit !important;
}
.ch24 a.button.ch-btn::before,
.ch24 a.button.ch-btn::after,
.ch24 a.button.ch-footer-link::before,
.ch24 a.button.ch-footer-link::after {
	content: none !important;
}
.ch24.ch-dock-section a.button.ch-btn {
	--ch-btn-size: 12px;
	--ch-btn-min-height: 46px;
	margin: 0 !important;
	padding: 12px 8px !important;
}
.ch24 a.button.ch-footer-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	min-height: 44px !important;
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 12px 12px 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: #c1c9d2 !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	transform: none !important;
	opacity: 1 !important;
	white-space: normal !important;
}
.ch24 a.button.ch-footer-link:hover,
.ch24 a.button.ch-footer-link:active {
	background: transparent !important;
	color: #ffda2b !important;
	text-decoration: underline !important;
	text-underline-offset: 4px;
}
.ch24 .ux-text a:not(.button) {
	color: #ffda2b !important;
	text-decoration: none !important;
}
.ch24 .ux-text a:not(.button):hover {
	color: #ffe98a !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.ch24 a.accordion-title {
	color: #f7f8fa !important;
	text-decoration: none !important;
	background: transparent !important;
	box-shadow: none !important;
}
.ch24 a.accordion-title.active,
.ch24 a.accordion-title:hover {
	color: #ffda2b !important;
	background: #ffda2b09 !important;
}
a.ch24-header-call {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 36px !important;
	height: auto !important;
	width: auto !important;
	max-width: 100% !important;
	padding: 6px 10px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 99px !important;
	background: #d93b39 !important;
	color: #fff !important;
	font-size: 10px !important;
	line-height: 1.4 !important;
	text-align: center !important;
	text-transform: none !important;
	text-decoration: none !important;
	letter-spacing: 0 !important;
	white-space: nowrap !important;
	box-shadow: none !important;
	transform: none !important;
	opacity: 1 !important;
}
a.ch24-header-call:hover,
a.ch24-header-call:active {
	background: #bc2d2c !important;
	color: #fff !important;
	text-decoration: none !important;
}
.ch24 a.button.ch-btn:focus-visible,
.ch24 a.button.ch-footer-link:focus-visible,
a.ch24-header-call:focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 3px !important;
}
@media (max-width: 359px) {
	a.ch24-header-call {
		font-size: 9px !important;
		padding: 6px 8px !important;
	}
}

/* Native Flatsome off-canvas menu, contained inside the 500px site frame. */
body.ch24-site .mfp-wrap.ch24-menu-modal {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
	max-width: 500px !important;
	height: 100% !important;
	height: 100dvh !important;
	margin: 0 auto !important;
	overflow: hidden !important;
	transform: none !important;
	isolation: isolate;
}
body.ch24-site.ch24-menu-open .mfp-bg {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
	max-width: 500px !important;
	height: 100% !important;
	height: 100dvh !important;
	margin: 0 auto !important;
	background: #080b10 !important;
	opacity: 0.65 !important;
}
body.ch24-site .ch24-menu-modal .mfp-container {
	padding: 0 !important;
	left: 0 !important;
	top: 0 !important;
	width: 100% !important;
	height: 100% !important;
}
body.ch24-site .ch24-menu-modal .mfp-content {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	display: block !important;
	width: 100% !important;
	max-width: 500px !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #151a20 !important;
	color: #f5f7fa !important;
	box-shadow: none !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	transform: none !important;
	opacity: 1 !important;
	overscroll-behavior: contain;
}
body.ch24-site .ch24-menu-modal .sidebar-menu,
body.ch24-site .ch24-menu-modal #main-menu {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 100% !important;
	padding: 26px 20px calc(28px + env(safe-area-inset-bottom)) !important;
	background: #151a20 !important;
}
body.ch24-site .ch24-menu-modal .mfp-close {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	min-height: 44px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 1px solid #ffffff22 !important;
	border-radius: 12px !important;
	background: #252d37 !important;
	color: #fff !important;
	opacity: 1 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transform: none !important;
	z-index: 20 !important;
}
body.ch24-site .ch24-menu-modal .mfp-close:hover {
	background: #364250 !important;
	color: #ffda2b !important;
}
.ch24-menu-head {
	padding: 4px 52px 22px 0;
	border-bottom: 1px solid #ffffff16;
	margin-bottom: 22px;
}
.ch24-menu-brand {
	display: flex !important;
	align-items: center !important;
	min-height: 48px !important;
	color: #ffda2b !important;
	text-decoration: none !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	font-size: 19px !important;
}
.ch24-menu-brand img {
	display: block !important;
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	max-height: 62px !important;
	object-fit: contain;
	object-position: left center;
}
body.ch24-site .ch24-menu-modal .nav-sidebar {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar > li {
	margin: 0 0 9px !important;
	border: 0 !important;
	background: transparent !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar > li > a:not(.toggle) {
	display: flex !important;
	align-items: center !important;
	min-height: 52px !important;
	margin: 0 !important;
	padding: 13px 16px !important;
	border: 1px solid #ffffff13 !important;
	border-radius: 12px !important;
	background: #212832 !important;
	color: #eef2f6 !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar > li > a:not(.toggle):hover,
body.ch24-site
.ch24-menu-modal
.nav-sidebar
> li.current-menu-item
> a:not(.toggle) {
	background: #ffda2b12 !important;
	border-color: #ffda2b77 !important;
	color: #ffda2b !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar .toggle {
	right: 8px !important;
	color: #ffda2b !important;
	min-width: 44px;
	min-height: 44px;
}
body.ch24-site .ch24-menu-modal .nav-sidebar li.has-child > a:not(.toggle) {
	padding-right: 52px !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar .children {
	border-left: 1px solid #ffda2b44;
	margin: 8px 0 16px 17px !important;
	padding-left: 12px !important;
	background: transparent !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar .children a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 9px 10px !important;
	color: #b8c4d1 !important;
	text-transform: none !important;
	text-decoration: none !important;
	font-size: 13px !important;
}
body.ch24-site .ch24-menu-modal .nav-sidebar .children a:hover {
	color: #ffda2b !important;
}
.ch24-menu-contact {
	margin-top: 26px;
	padding-top: 21px;
	border-top: 1px solid #ffffff16;
}
a.ch24-menu-call {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 50px !important;
	padding: 13px 12px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: #ffda2b !important;
	color: #15181c !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	box-shadow: none !important;
}
a.ch24-menu-call:hover {
	background: #ffe66a !important;
	color: #15181c !important;
}
body.ch24-site .ch24-menu-modal a:focus-visible,
body.ch24-site .ch24-menu-modal button:focus-visible {
	outline: 2px solid #ffda2b !important;
	outline-offset: 3px !important;
}
body.admin-bar.ch24-site .mfp-wrap.ch24-menu-modal,
body.admin-bar.ch24-site.ch24-menu-open .mfp-bg {
	top: 32px !important;
	height: calc(100% - 32px) !important;
	height: calc(100dvh - 32px) !important;
}
@media (max-width: 782px) {
	body.admin-bar.ch24-site .mfp-wrap.ch24-menu-modal,
	body.admin-bar.ch24-site.ch24-menu-open .mfp-bg {
		top: 46px !important;
		height: calc(100% - 46px) !important;
		height: calc(100dvh - 46px) !important;
	}
}

/* Footer: structured native rows, plus compatibility for the first supplied block. */
.ch24.ch-footer {
	padding: 26px 0 calc(88px + env(safe-area-inset-bottom)) !important;
}
.ch24.ch-footer > .section-content > .row > .col {
	padding-bottom: 0 !important;
}
.ch24.ch-footer h2 {
	font-size: 24px;
	line-height: 1.35;
}
.ch24.ch-footer h3 {
	font-size: 13px;
	line-height: 1.5;
	margin-top: 20px;
	margin-bottom: 12px;
	color: #ffda2b;
}
.ch24.ch-footer .ch-footer-navrow {
	margin-top: 8px !important;
	margin-bottom: 12px !important;
}
.ch24.ch-footer .row > .ch-footer-navcell,
.ch24.ch-footer .row > .ch-footer-tagcell {
	padding: 0 5px 10px !important;
	min-width: 0;
}
.ch24.ch-footer .ch-footer-navcell a.button.ch-footer-link {
	display: flex !important;
	width: 100% !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	background: #1d242c !important;
	border: 1px solid #ffffff16 !important;
	border-radius: 9px !important;
	color: #d4dde7 !important;
	line-height: 1.5 !important;
}
.ch24.ch-footer .ch-footer-navcell a.button.ch-footer-link:hover {
	background: #ffda2b0d !important;
	border-color: #ffda2b66 !important;
	color: #ffda2b !important;
	text-decoration: none !important;
}
.ch24.ch-footer .ch-footer-tagrow {
	align-items: stretch;
}
.ch24.ch-footer .ch-footer-tagcell > .col-inner {
	height: 100%;
	padding: 10px 11px;
	border: 1px solid #ffffff19;
	border-radius: 8px;
	background: #ffffff03;
}
.ch24.ch-footer .ch-footer-tagcell .ux-text {
	margin: 0 !important;
}
.ch24.ch-footer .ch-footer-tagcell p {
	font-size: 11px;
	line-height: 1.6;
	color: #adb9c7;
	margin: 0 !important;
	overflow-wrap: anywhere;
}
.ch24.ch-footer .ch-copyright {
	border-top: 1px solid #ffffff14;
	padding-top: 16px;
	margin-top: 12px !important;
	margin-bottom: 0 !important;
}
.ch24.ch-footer .ch-copyright p {
	margin: 0 !important;
	font-size: 11px;
	line-height: 1.6;
	color: #8795a5;
}
/* Support older footer HTML while its UX Block is being updated. */
.ch24.ch-footer .ch-brand {
	font-size: 23px;
	line-height: 1.4;
	color: #f7f8fa;
	margin-bottom: 12px;
}
.ch24.ch-footer .ch-brand span {
	color: #ffda2b;
}
.ch24.ch-footer .ch-footer-links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin: 18px 0 !important;
	padding: 0 !important;
}
.ch24.ch-footer .ch-footer-links > a {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 44px !important;
	padding: 9px 13px !important;
	border: 1px solid #ffffff19 !important;
	border-radius: 8px !important;
	background: #1d242c !important;
	color: #c6d1de !important;
	text-decoration: none !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
}
.ch24.ch-footer .ch-footer-links > a:hover {
	color: #ffda2b !important;
	border-color: #ffda2b66 !important;
}
.ch24.ch-footer .ch-tags {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-top: 12px !important;
}
.ch24.ch-footer .ch-tags > span,
.ch24.ch-footer .ch-tags > a {
	display: block !important;
	max-width: 100% !important;
	padding: 7px 10px !important;
	border: 1px solid #ffffff19 !important;
	border-radius: 7px !important;
	background: #ffffff03 !important;
	color: #adb9c7 !important;
	font-size: 11px !important;
	line-height: 1.6 !important;
	overflow-wrap: anywhere;
	text-decoration: none !important;
}
body.ch24-site.ch24-has-footer #footer .absolute-footer {
	display: none !important;
}

/* Bottom contact bar: the section itself is fixed as a direct child of body. */
body.ch24-site > .ch24.ch-dock-section {
	position: fixed !important;
	top: auto !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: 500px !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 auto !important;
	padding: 0 !important;
	z-index: 1000 !important;
	transform: none !important;
	filter: none !important;
	contain: none !important;
	overflow: visible !important;
	border: 0 !important;
	background: #15181cf7 !important;
}
body.ch24-site > .ch24.ch-dock-section > .section-content {
	position: relative !important;
	top: auto !important;
	bottom: auto !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 10px 10px calc(10px + env(safe-area-inset-bottom)) !important;
	border-top: 1px solid #ffffff22 !important;
	background: #15181cf7 !important;
	transform: none !important;
}
body.ch24-site.ch24-has-dock #wrapper {
	padding-bottom: calc(
		var(--ch-dock-clearance, 60px) + env(safe-area-inset-bottom)
	) !important;
}
body.ch24-site.ch24-has-dock .ch24.ch-footer {
	padding-bottom: 22px !important;
}
body.ch24-site.ch24-menu-open > .ch24.ch-dock-section {
	visibility: hidden !important;
	pointer-events: none !important;
}
body.ch24-site:has(.ch24.ch-footer) #footer .absolute-footer {
	display: none !important;
}

/* Requested compact 60px bottom contact bar; safe area is added separately. */
body.ch24-site {
	--ch-dock-clearance: 60px;
}
body.ch24-site > .ch24.ch-dock-section > .section-content {
	box-sizing: border-box !important;
	height: calc(60px + env(safe-area-inset-bottom)) !important;
	padding: 6px 10px calc(6px + env(safe-area-inset-bottom)) !important;
}
body.ch24-site > .ch24.ch-dock-section .button.ch-btn {
	min-height: 46px !important;
	height: 46px !important;
	padding: 8px !important;
}
/* Yellow shared header and sticky header; dark controls retain contrast. */
body.ch24-site #header .header-wrapper,
body.ch24-site #header .header-main,
body.ch24-site #header .header-bg-color {
	background: #ffda2b !important;
}
body.ch24-site #header .header-main {
	border-bottom: 1px solid #d6b722 !important;
	box-shadow: 0 3px 15px #00000014;
}
body.ch24-site #header .header-main .nav > li > a,
body.ch24-site #header .header-main .nav > li > a > i,
body.ch24-site #header .header-main .nav-icon {
	color: #15181c !important;
}
body.ch24-site #header .header-main .nav-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	min-height: 40px;
	border-radius: 10px;
}
body.ch24-site #header .header-main .nav-icon:hover {
	background: #15181c0d !important;
}
body.ch24-site #header a.ch24-header-call {
	background: #15181c !important;
	color: #ffda2b !important;
	border: 1px solid #15181c !important;
	border-radius: 99px !important;
	box-shadow: none !important;
}
body.ch24-site #header a.ch24-header-call:hover {
	background: #2b323b !important;
	color: #ffe77a !important;
}
body.ch24-site #header .ch24-header {
	color: #15181c !important;
}
body.ch24-site #header .ch24-header span {
	color: #15181c !important;
}

/* The close button sits beside the logo, inside the visible popup content. */
body.ch24-site .ch24-menu-modal .ch24-menu-head {
	position: relative !important;
	min-height: 64px;
	padding: 4px 58px 20px 0 !important;
	overflow: visible !important;
}
body.ch24-site .ch24-menu-modal .ch24-menu-head > button.ch24-menu-close {
	position: absolute !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	top: 0 !important;
	right: 0 !important;
	left: auto !important;
	bottom: auto !important;
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	min-height: 44px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 1px solid #ffda2b88 !important;
	border-radius: 12px !important;
	background: #ffda2b !important;
	color: #15181c !important;
	font-size: 32px !important;
	line-height: 1 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	box-shadow: none !important;
	z-index: 2147483647 !important;
	cursor: pointer !important;
	text-indent: 0 !important;
	text-decoration: none !important;
}
body.ch24-site .ch24-menu-modal .ch24-menu-close::before,
body.ch24-site .ch24-menu-modal .ch24-menu-close::after {
	content: none !important;
}
body.ch24-site .ch24-menu-modal .ch24-menu-close:hover {
	background: #ffe981 !important;
}
body.ch24-site .ch24-menu-modal .ch24-menu-close:focus-visible {
	outline: 2px solid white !important;
	outline-offset: 3px !important;
}
body.ch24-site .ch24-menu-modal:has(.ch24-menu-close) .mfp-close {
	display: none !important;
}
/* Match specificity of the theme's navigation rules, including nested text. */
body.ch24-site #header .header-main a.ch24-header-call,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: linear-gradient(135deg, #f05b36, #df352b) !important;
	color: #fff !important;
	border: 1px solid #fff6 !important;
	border-radius: 12px !important;
	min-height: 38px !important;
	padding: 7px 11px !important;
	font-size: 12px !important;
	line-height: 1.4 !important;
	box-shadow: 0 3px 9px #a4472220 !important;
	white-space: nowrap !important;
}
body.ch24-site #header .header-main a.ch24-header-call span,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call span {
	color: #fff !important;
}
body.ch24-site #header .header-main a.ch24-header-call:hover {
	background: #cc3026 !important;
	color: #fff !important;
}
.ch24-phone-pulse {
	display: inline-block;
	animation: ch24-phone-glow 1.8s ease-in-out infinite;
}
@keyframes ch24-phone-glow {
	0%,
	100% {
		opacity: 1;
	}
	50% {
		opacity: 0.58;
	}
}
/* Two compact side buttons, positioned inside the same centered 500px frame. */
body.ch24-site > .ch24-floating-contacts {
	position: fixed !important;
	bottom: calc(80px + env(safe-area-inset-bottom)) !important;
	left: 0 !important;
	right: 0 !important;
	top: auto !important;
	width: 100% !important;
	max-width: 500px !important;
	box-sizing: border-box !important;
	margin: 0 auto !important;
	padding: 0 12px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	gap: 12px !important;
	pointer-events: none !important;
	z-index: 1001 !important;
	transform: none !important;
}
body.ch24-site > .ch24-floating-contacts > a {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	flex: 0 0 44px !important;
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	min-height: 44px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 2px solid #ffffffcf !important;
	border-radius: 50% !important;
	text-decoration: none !important;
	font-size: 12px !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	pointer-events: auto !important;
	opacity: 1 !important;
	transform: none !important;
	animation: ch24-contact-ring 2.1s ease-out infinite;
}
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call {
	background: #ffda2b !important;
	color: #15181c !important;
	--ch-ring: 255, 218, 43;
}
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo {
	background: #0878dc !important;
	color: #fff !important;
	--ch-ring: 8, 120, 220;
	animation-delay: 0.6s;
}
.ch24-float-call svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}
@keyframes ch24-contact-ring {
	0% {
		box-shadow: 0 0 0 0 rgba(var(--ch-ring), 0.5);
	}
	75%,
	100% {
		box-shadow: 0 0 0 8px rgba(var(--ch-ring), 0);
	}
}
body.ch24-site > .ch24-floating-contacts > a:focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 4px !important;
}
body.ch24-site.ch24-menu-open > .ch24-floating-contacts {
	visibility: hidden !important;
	pointer-events: none !important;
}
body.ch24-site.ch24-menu-open > .ch24-floating-contacts > a {
	pointer-events: none !important;
}
@media (max-width: 359px) {
	body.ch24-site #header .header-main a.ch24-header-call {
		font-size: 11px !important;
		padding: 7px 9px !important;
	}
	body.ch24-site > .ch24-floating-contacts {
		padding-right: 10px !important;
	}
}
@media (prefers-reduced-motion: reduce) {
	.ch24-phone-pulse,
	body.ch24-site > .ch24-floating-contacts > a {
		animation: none !important;
	}
}

/* Full-button effects: animated gradient, sparkle sweep and a brief gentle nudge.
Numbers remain steady; theme font settings are unchanged. */
.ch24-phone-pulse {
	animation: none !important;
	opacity: 1 !important;
}
.ch24 a.button.ch-btn,
body.ch24-site #header .header-main a.ch24-header-call,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call,
body.ch24-site a.ch24-menu-call,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo {
	--ch-fx-gradient: linear-gradient(
		110deg,
		#ffcf24 0%,
		#ffe887 25%,
		#ffc116 52%,
		#ffe96e 78%,
		#ffcf24 100%
	);
	--ch-fx-rgb: 255, 202, 27;
	position: relative !important;
	isolation: isolate !important;
	overflow: hidden !important;
	background: var(--ch-fx-gradient) !important;
	box-shadow:
		0 4px 16px rgba(var(--ch-fx-rgb), 0.25),
		inset 0 1px 0 #ffffff66 !important;
	animation: ch24-cta-nudge 4.4s ease-in-out infinite !important;
}
.ch24 a.button.ch-btn.ch-btn-secondary,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo {
	--ch-fx-gradient: linear-gradient(
		110deg,
		#0878d9 0%,
		#4abaff 26%,
		#086fcd 54%,
		#33a5f4 80%,
		#0878d9 100%
	);
	--ch-fx-rgb: 22, 143, 231;
}
body.ch24-site #header .header-main a.ch24-header-call,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call {
	--ch-fx-gradient: linear-gradient(
		110deg,
		#e6382e 0%,
		#ff9253 27%,
		#e94030 53%,
		#ff783d 79%,
		#e6382e 100%
	);
	--ch-fx-rgb: 239, 86, 49;
}
.ch24 a.button.ch-btn::before,
body.ch24-site #header .header-main a.ch24-header-call::before,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call::before,
body.ch24-site a.ch24-menu-call::before,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call::before,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	border-radius: inherit !important;
	background-image: var(--ch-fx-gradient) !important;
	background-size: 230% 100% !important;
	opacity: 1 !important;
	pointer-events: none !important;
	z-index: -1 !important;
	animation: ch24-gradient-drift 3s ease-in-out infinite !important;
}
.ch24 a.button.ch-btn::after,
body.ch24-site #header .header-main a.ch24-header-call::after,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call::after,
body.ch24-site a.ch24-menu-call::after,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call::after,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo::after {
	content: "" !important;
	position: absolute !important;
	top: -30% !important;
	left: -55% !important;
	display: block !important;
	width: 45% !important;
	height: 160% !important;
	border: 0 !important;
	background-image:
		linear-gradient(
			105deg,
			transparent 10%,
			#ffffff12 27%,
			#ffffffa3 49%,
			#ffffff22 64%,
			transparent 83%
		),
		radial-gradient(circle at 34% 25%, #fff 0 1px, transparent 2.5px),
		radial-gradient(circle at 60% 72%, #fff 0 1.3px, transparent 3px) !important;
	pointer-events: none !important;
	z-index: 1 !important;
	opacity: 0;
	animation: ch24-sparkle-sweep 2.9s ease-in-out infinite !important;
}
.ch24 a.button.ch-btn > span,
body.ch24-site #header .header-main a.ch24-header-call > span,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call > span,
body.ch24-site a.ch24-menu-call > span,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call > span,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo > span,
.ch24 a.button.ch-btn > svg,
body.ch24-site #header .header-main a.ch24-header-call > svg,
body.ch24-site #header .header-main .nav > li > a.ch24-header-call > svg,
body.ch24-site a.ch24-menu-call > svg,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-call > svg,
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo > svg {
	position: relative;
	z-index: 2;
}
.ch24.ch-dock-section a.button.ch-btn-secondary {
	animation-delay: 0.3s !important;
}
body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo {
	animation-delay: 0.5s !important;
}
@keyframes ch24-gradient-drift {
	0%,
	100% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
}
@keyframes ch24-sparkle-sweep {
	0%,
	10% {
		transform: translateX(0) skewX(-10deg);
		opacity: 0;
	}
	18% {
		opacity: 0.85;
	}
	48% {
		transform: translateX(370%) skewX(-10deg);
		opacity: 0.7;
	}
	58%,
	100% {
		transform: translateX(400%) skewX(-10deg);
		opacity: 0;
	}
}
@keyframes ch24-cta-nudge {
	0%,
	64%,
	86%,
	100% {
		translate: 0 0;
		rotate: 0deg;
	}
	68% {
		translate: -1px 0;
		rotate: -0.55deg;
	}
	72% {
		translate: 1px 0;
		rotate: 0.55deg;
	}
	76% {
		translate: -1px 0;
		rotate: -0.4deg;
	}
	80% {
		translate: 1px 0;
		rotate: 0.35deg;
	}
	83% {
		translate: 0 0;
		rotate: 0deg;
	}
}
@media (prefers-reduced-motion: reduce) {
	.ch24 a.button.ch-btn,
	body.ch24-site #header .header-main a.ch24-header-call,
	body.ch24-site #header .header-main .nav > li > a.ch24-header-call,
	body.ch24-site a.ch24-menu-call,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-call,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo,
	.ch24 a.button.ch-btn::before,
	body.ch24-site #header .header-main a.ch24-header-call::before,
	body.ch24-site #header .header-main .nav > li > a.ch24-header-call::before,
	body.ch24-site a.ch24-menu-call::before,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-call::before,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo::before,
	.ch24 a.button.ch-btn::after,
	body.ch24-site #header .header-main a.ch24-header-call::after,
	body.ch24-site #header .header-main .nav > li > a.ch24-header-call::after,
	body.ch24-site a.ch24-menu-call::after,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-call::after,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo::after {
		animation: none !important;
		translate: 0 0 !important;
		rotate: 0deg !important;
	}
	.ch24 a.button.ch-btn::after,
	body.ch24-site #header .header-main a.ch24-header-call::after,
	body.ch24-site #header .header-main .nav > li > a.ch24-header-call::after,
	body.ch24-site a.ch24-menu-call::after,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-call::after,
	body.ch24-site > .ch24-floating-contacts > a.ch24-float-zalo::after {
		opacity: 0 !important;
	}
}
body.ch24-site .ch24-menu-modal .sidebar-menu {
	padding: 0 !important;
}
.ch24 .ch-area-pill p {
	margin-bottom: 0 !important;
}
@media (max-width: 549px) {
	body.ch24-site #header .header-inner {
		display: flex !important;
		align-items: center !important;
		padding: 0 14px !important;
		gap: 10px;
	}

	body.ch24-site #header .header-inner #logo {
		order: 0 !important;
		flex: 0 0 auto !important;
		width: auto !important;
		margin: 0 auto 0 0 !important;
		text-align: left !important;
		left: auto !important;
		right: auto !important;
		transform: none !important;
	}

	body.ch24-site #header #logo a {
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}

	body.ch24-site #header #logo img {
		width: auto !important;
		max-width: 70px !important;
		max-height: 52px !important;
		margin: 0 !important;
		object-fit: contain;
	}

	body.ch24-site #header .header-inner > .flex-left,
	body.ch24-site #header .header-inner > .flex-center,
	body.ch24-site #header .header-inner > .flex-right {
		order: 1 !important;
		flex: 0 0 auto !important;
	}
}