/**
 * Technetium PHP Framework
 * @version 3.0
 * @author Tony Leung <tony.leung@cruzium.com>
 * @copyright Copyright (c) 2023 Cruzium Digital
 * @license https://opensource.org/license/gpl-3-0/ GPL-3.0-only
 *
 * This stylesheet contains custom styles for individual sites.
 */

@charset "utf-8";

/* css variables */
:root {
	--aria-outline: 2px solid rgba(var(--bs-primary-rgb), 0.5);
	--slide-panel-width: 320px;
}
html {
	font-size: 16px;
}
html.large {
	font-size: 18px;
}
html.xlarge {
	font-size: 20px;
}
@media print {
	html {
		font-size: 16px;
	}
}

/* html tags */
img {
	max-width: 100%;
}
figcaption {
	margin-top: var(--bs-spacer-2);
}


/* form elements */
form hr {
	border-top: 1px solid #EEEEEE;
}
.form-title {
	font-size: 1.625rem;
}
.form-label > .required,
.col-form-label > .required {
	color: var(--bs-danger);
}
.form-actions {
	display: flex;
}
.form-actions .btn:not(.btn-link) {
	box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.15);
}
.form-actions-stacked {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.form-actions-stacked > .btn:not(.btn-link) {
	width: 100%;
}
.form-actions-stacked > .btn + .btn {
	margin-top: 1.25rem;
}
@media (max-width: 767px) {
	.form-actions {
		flex-direction: column;
	}
	.form-actions .btn {
		width: 100%;
	}
	.form-actions .btn + .btn {
		margin-top: 0.75rem;
	}
}
@media (min-width: 768px) {
	.form-actions:not(.form-actions-stacked) .btn:not(:last-child) {
		margin-right: 1.875rem;
	}
}


/* shared classes */
.checklist {
	--checklist-icon-color: inherit;
	padding: 0;
	list-style: none;
}
.checklist-item {
	position: relative;
	padding-left: 1.75em;
}
.checklist-primary {
	--checklist-icon-color: var(--bs-primary);
}
.checklist-secondary {
	--checklist-icon-color: var(--bs-secondary);
}
.checklist-success {
	--checklist-icon-color: var(--bs-success);
}
.checklist-warning {
	--checklist-icon-color: var(--bs-warning);
}
.checklist-danger {
	--checklist-icon-color: var(--bs-danger);
}
.checklist-info {
	--checklist-icon-color: var(--bs-info);
}
.checklist-item:before {
	content: '\f00c';
	width: 1em;
	position: absolute;
	left: 0;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: var(--checklist-icon-color);
	line-height: var(--bs-body-line-height);
}
.checklist-item:last-child {
	margin-bottom: 0;
}

.font-size-toggle,
.language-toggle {
	display: flex;
	align-items: baseline;
}
.font-size-toggle .btn,
.language-toggle .btn {
	--bs-btn-padding-x: 0.25rem;
	--bs-btn-padding-y: 0.25rem;
	--bs-btn-border-color: transparent;
	--bs-btn-border-radius: 0;
	--bs-btn-font-size: 0.875rem;
	--bs-btn-color: var(--bs-black);
	--bs-btn-hover-color: var(--bs-primary);
	--bs-btn-active-border-color: transparent;
	--bs-btn-active-color: var(--bs-primary);
	position: relative;
	line-height: 1;
	text-decoration: none;
	vertical-align: baseline;
}
.font-size-toggle {
	margin-bottom: -0.125em;
}
.font-size-toggle .btn:before {
	content: 'A';
}
.font-size-toggle .btn[data-font-size="normal"] {
	--bs-btn-font-size: 16px;
}
.font-size-toggle .btn[data-font-size="large"] {
	--bs-btn-font-size: 20px;
}
.font-size-toggle .btn[data-font-size="xlarge"] {
	--bs-btn-font-size: 24px;
}

.img-ornament {
	background-repeat: no-repeat;
	background-size: cover;
}
.img-ornament > img {
	-webkit-mask-size: cover;
	-webkit-mask-position: center;
}
.img-ornament-bottom-right {
	background-position: right bottom;
}
.img-ornament-bottom-right > img {
	-webkit-mask-image: url(../../images/img-mask-br.png);
}
.img-ornament-bottom-right.img-ornament-warning {
	background-image: url(../../images/img-ornament-br-warning.png);
}
.img-ornament-top-left {
	background-position: left top;
}
.img-ornament-top-left > img {
	-webkit-mask-image: url(../../images/img-mask-tl.png);
}
.img-ornament-top-left.img-ornament-primary {
	background-image: url(../../images/img-ornament-tl-primary.png);
}

.meta-list {
	margin-bottom: calc(var(--bs-spacer-3) - var(--bs-spacer-1));
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.meta-list-item {
	margin: 0 0 var(--bs-spacer-1) 0;
	padding: 0;
}
.meta-list-item:not(:last-child) {
	margin-right: var(--bs-spacer-3);
}

.remark {
	font-size: 0.9em;
	color: #707070;
	line-height: normal;
}
.remark a {
	color: inherit;
}


/* page structure */
.page-wrapper {
	--logo-size: 3rem;
	max-width: 1920px;
	margin-left: auto;
	margin-right: auto;
	box-shadow: 0 0 20px rgba(var(--bs-black-rgb), 0.05);
}
@media (min-width: 576px) {
	.page-wrapper {
		--logo-size: 3.125rem;
	}
}
@media (min-width: 992px) {
	.page-wrapper {
		--logo-size: 3.75rem;
	}
}
@media (min-width: 1200px) {
	.page-wrapper {
		--logo-size: 4rem;
	}
}
@media (min-width: 1400px) {
	.page-wrapper {
		--logo-size: 5rem;
	}
}

.page-header {
	z-index: 9;
}
.page-header .logo {
	height: var(--logo-size);
	margin-top: var(--bs-spacer-3);
	margin-bottom: var(--bs-spacer-3);
}
.page-header .logo img {
	height: 100%;
	display: block;
}
.page-header .logo + .logo {
	margin-left: calc(var(--logo-size) * 0.16);
}
.page-header .logo.operator {
	padding-top: calc(var(--logo-size) * 0.2625);
	padding-bottom: calc(var(--logo-size) * 0.2125);
}
.page-header .hgroup {
	--hgroup-padding-y: var(--bs-spacer-1);
	--slogan-size: 6rem;
	--account-nav-bg: var(--bs-warning);
	padding: var(--hgroup-padding-y) 0;
	flex-basis: 100%;
	display: flex;
	justify-content: flex-end;
}
.page-header .hgroup > * + * {
	margin-left: var(--bs-spacer-2);
}
.page-header .hgroup .font-size-toggle,
.page-header .hgroup .language-toggle {
	align-self: flex-end;
}
.page-header .hgroup .slogan {
	display: none;
}
.page-header .hgroup .account-nav {
	position: relative;
	margin-top: calc(var(--hgroup-padding-y) * -1);
	margin-bottom: calc(var(--hgroup-padding-y) * -1);
	margin-left: 0;
	padding-top: var(--hgroup-padding-y);
	padding-bottom: var(--hgroup-padding-y);
	background-color: var(--account-nav-bg);
	display: flex;
	align-items: flex-end;
}
.page-header .hgroup .account-nav:before {
	content: '';
	margin-top: calc(var(--hgroup-padding-y) * -1);
	margin-bottom: calc(var(--hgroup-padding-y) * -1);
	border-top: calc(var(--hgroup-padding-y) * 2 + 2.25rem + 2px) solid var(--bs-body-bg);
	border-right: calc(var(--hgroup-padding-y) * 2 + 2.25rem + 2px) solid var(--account-nav-bg);
}
.page-header .hgroup .account-nav:after {
	content: '';
	width: 50vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: 100%;
	background-color: inherit;
	z-index: -1;
}
.page-header .hgroup .account-nav .btn {
	--bs-btn-padding-x: 0.25rem;
	--bs-btn-padding-y: 0.25rem;
	--bs-btn-border-color: transparent;
	--bs-btn-border-radius: 0;
	--bs-btn-font-size: 0.875rem;
	--bs-btn-color: var(--bs-white);
	--bs-btn-hover-color: var(--bs-white);
	--bs-btn-active-border-color: transparent;
	--bs-btn-active-color: var(--bs-white);
	line-height: 1;
	white-space: nowrap;
}
@media (min-width: 768px) {
	.page-header .hgroup {
		--hgroup-padding-y: var(--bs-spacer-2);
		--slogan-size: calc(var(--logo-size) + var(--bs-spacer-3) * 2 - var(--bs-spacer-2) * 2);
		margin-left: auto;
		flex-basis: 0;
		align-self: flex-end;
	}
	.page-header .hgroup .account-nav:before {
		margin-right: -2rem;
		border-top: calc(var(--slogan-size) + var(--hgroup-padding-y) * 2) solid var(--bs-body-bg);
		border-right: calc(var(--slogan-size) + var(--hgroup-padding-y) * 2) solid var(--account-nav-bg);
	}
	.page-header .hgroup .account-nav .btn {
		--bs-btn-padding-y: 0.25rem;
		--bs-btn-font-size: 1rem;
	}
}
@media (min-width: 992px) {
	.page-header .hgroup > * + * {
		margin-left: var(--bs-spacer-3);
	}
	.page-header .hgroup .slogan {
		height: var(--slogan-size);
		display: block;
	}
	.page-header .hgroup .slogan img {
		height: 100%;
	}
}

.main-nav {
	display: none;
}
@media (min-width: 992px) {
	.main-nav {
		position: relative;
		background-color: var(--bs-primary);
		display: block;
	}
	.main-nav .nav-item:not(:last-child) {
		border-bottom: 1px solid var(--bs-gray-400);
	}
	.main-nav .nav-link {
		white-space: nowrap;
	}
	.main-nav > .container > .nav {
		position: relative;
		top: auto;
		box-shadow: none;
		background-color: transparent;
		opacity: 1;
		z-index: auto;
		justify-content: space-between;
	}
	.main-nav > .container > .nav > .nav-item {
		border-bottom: 0;
		display: block;
	}
	.main-nav > .container > .nav > .nav-item:not(:last-child) {
		margin-right: var(--bs-spacer-2);
	}
	.main-nav > .container > .nav > .nav-item > .nav-link {
		--bs-nav-link-padding-x: var(--bs-spacer-2);
		--bs-nav-link-color: var(--bs-white);
	}
	.main-nav > .container > .nav > .nav-item > .nav-link:hover,
	.main-nav > .container > .nav > .nav-item > .nav-link:focus {
		--bs-nav-link-hover-color: var(--bs-white);
	}
	.main-nav > .container > .nav > .nav-item.active > .nav-link {
		--bs-nav-link-color: var(--bs-white);
	}
	.main-nav > .container > .nav > .nav-item.has-children > .nav-link:after {
		content: '\f107';
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
	}
	.main-nav > .container > .nav > .nav-item > .nav {
		min-width: 10rem;
		height: auto;
		position: absolute;
		margin-top: 0;
		margin-left: calc(var(--bs-spacer-2) - var(--bs-spacer-3));
		box-shadow: 0 0 10px rgba(var(--bs-black-rgb), 0.1);
		background-color: var(--bs-body-bg);
		opacity: 0;
		visibility: hidden;
		display: block;
		transition-property: opacity;
	}
	.main-nav > .container > .nav > .nav-item:hover > .nav {
		opacity: 1;
		visibility: visible;
	}
}

.mobile-nav {
	position: relative;
	background-color: var(--bs-primary);
	color: var(--bs-white);
	display: flex;
	align-items: center;
}
.mobile-nav .nav-brand {
	padding: 0 var(--bs-spacer-3);
	font-family: 'Calibri', Arial, Helvetica, sans-serif;
  	font-size: 1rem;
	font-weight: bold;
	opacity: 0;
	display: flex;
	align-items: center;
	transition-property: opacity;
}
.mobile-nav .nav-brand > img {
	height: 32px;
	margin-right: var(--bs-spacer-2);
}
.is-sticky .mobile-nav .nav-brand {
	opacity: 1;
}
.mobile-nav .nav {
	width: 100%;
	margin: 0;
	background-color: var(--bs-body-bg);
	display: none;
}
.mobile-nav .nav-item {
	display: flex;
	flex-wrap: wrap;
}
.mobile-nav .nav-item:not(:last-child) {
	border-bottom: 1px solid var(--bs-gray-400);
}
.mobile-nav .nav-link {
	flex-grow: 1;
}
.mobile-nav .nav-opener {
	margin-right: var(--bs-spacer-2);
	padding: var(--bs-spacer-3);
	border: none;
	background-color: transparent;
	color: inherit;
	line-height: 1;
	transition-property: transform;
}
.mobile-nav .nav-opener > span:before {
	content: '\f107';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}
.mobile-nav .nav-item.opened .nav-opener {
	transform: scaleY(-1);
}
.mobile-nav > .nav {
	position: absolute;
	top: 100%;
	box-shadow: 0 0 10px rgba(var(--bs-black-rgb), 0.1);
	z-index: 9;
}
.mobile-nav > .nav > .nav-item .nav {
	padding-left: var(--bs-spacer-3);
}
.mobile-nav-mask {
	width: 100%;
	height: 0;
	top: 100%;
	position: absolute;
	background-color: rgba(var(--bs-white-rgb), 0.5);
	opacity: 0;
	z-index: -1;
	transition-property: opacity;
}
body.mm-opened .mobile-nav-mask {
	height: 100vh;
	opacity: 1;
	z-index: 0;
}
.mobile-nav-trigger {
	margin-left: auto;
	padding: var(--bs-spacer-1) var(--bs-spacer-3);
}
.mobile-nav-trigger .hamburger {
	--hamburger-size: 40px;
	--hamburger-stroke-height: 3px;
	--hamburger-color: var(--bs-white);
	--hamburger-hover-color: var(--bs-white);
}
@media (min-width: 992px) {
	.mobile-nav {
		display: none;
	}
}

.page-body {
	margin: 0 auto;
	background-image: url(../../images/bg.png);
	background-position: center top;
	flex-grow: 1;
}
.page-body:after {
	content: '';
	width: 100%;
	height: 100px;
	background-image: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	display: block;
}
@media (min-width: 1200px) {
	.page-body {
		background-size: 100%;
	}
}

.page-footer {
	margin-top: -100px;
	padding: var(--bs-spacer-4) 0 var(--bs-spacer-3) 0;
}
.page-footer:before {
	content: '';
	height: 150px;
	margin-bottom: var(--bs-spacer-4);
	background-image: url(../../images/footer-separator.svg);
	background-position: center;
	background-size: auto 100%;
	display: block;
}
@media (min-width: 768px) {
	.page-footer:before {
		height: 200px;
	}
}
@media (min-width: 992px) {
	.page-footer:before {
		height: 250px;
	}
}
.page-footer .floating-badge {
	width: 160px;
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	z-index: 8;
}
.page-footer .floating-badge:before {
	content: '';
	padding-bottom: 101.792115%;
	background-image: url(../../images/membership.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	filter: drop-shadow(3px 3px 5px rgba(var(--bs-black-rgb), 0.25));
	display: block;
}
.page-footer .floating-badge > span {
	width: 50%;
	position: absolute;
	top: 21.830986%;
	left: 34.050179%;
	font-size: var(--bs-fs-6);
	font-weight: 600;
	color: #227abd;
	line-height: 1.2;
	text-align: center;
	transform: translate(-50%, -50%);
}
@media (min-width: 576px) {
	.page-footer .floating-badge {
		width: 200px;
	}
	.page-footer .floating-badge > span {
		font-size: var(--bs-fs-5);
	}
}
@media (min-width: 768px) {
	.page-footer .floating-badge {
		width: 240px;
		right: 2rem;
	}
	.page-footer .floating-badge > span {
		font-size: var(--bs-fs-4);
	}
}
@media (min-width: 992px) {
	.page-footer .floating-badge {
		bottom: 2rem;
		right: 3rem;
	}
}
@media (min-width: 1200px) {
	.page-footer .floating-badge {
		width: 280px;
	}
}
.page-footer .sitemap-block .nav-item {
	margin-bottom: var(--bs-spacer-2);
}
.page-footer .sitemap-block .nav-link {
	--bs-nav-link-padding-x: 0;
	--bs-nav-link-padding-y: 0;
	--bs-nav-link-font-size: 1em;
	--bs-nav-link-color: var(--bs-gray-600);
	display: inline;
}
.page-footer .sitemap-block .nav-link[href="#"],
.page-footer .sitemap-block .nav-link[href="javascript:;"] {
	pointer-events: none;
}
.page-footer .sitemap-block > .nav {
	flex-wrap: wrap;
}
.page-footer .sitemap-block > .nav > .nav-item {
	margin-bottom: var(--bs-spacer-4);
}
.page-footer .sitemap-block > .nav > .nav-item:not(:last-child) {
	margin-right: var(--bs-spacer-5);
}
.page-footer .sitemap-block > .nav > .nav-item > .nav-link {
	--bs-nav-link-font-size: var(--bs-fs-4);
	--bs-nav-link-color: var(--bs-warning);
}
.page-footer .sitemap-block .nav .nav {
	margin-top: var(--bs-spacer-3);
	display: block;
}
@media (min-width: 992px) {
	.page-footer .sitemap-block {
		margin-bottom: var(--bs-spacer-4);
	}
}
.page-footer .legal-block {
	padding: var(--bs-spacer-3) 0;
	font-size: 0.875rem;
	display: flex;
	align-items: center;
	flex-direction: column;
}
.page-footer .legal-block > :not(:last-child) {
	margin-bottom: var(--bs-spacer-1);
}
.page-footer .legal-block .footer-links {
	padding: 0;
	list-style: none;
	display: flex;
}
.page-footer .legal-block .footer-links .nav-item {
	margin: 0;
	display: flex;
}
.page-footer .legal-block .footer-links .nav-item:not(:last-child):after {
	content: '|';
	margin: 0 var(--bs-spacer-1);
}
.page-footer .legal-block .footer-links .nav-link {
	--bs-nav-link-padding-x: 0;
	--bs-nav-link-padding-y: 0;
	--bs-nav-link-font-size: 1em;
	--bs-nav-link-color: var(--bs-body-color);
}
.page-footer .legal-block .wcag-conformance img {
	height: 2rem;
}
@media (min-width: 576px) {
	.page-footer .legal-block {
		font-size: 1rem;
	}
}
@media (min-width: 992px) {
	.page-footer .legal-block {
		flex-direction: row;
	}
	.page-footer .legal-block > :not(:last-child) {
		margin-bottom: 0;
		margin-right: var(--bs-spacer-4);
	}
	.page-footer .legal-block .last-update {
		margin-left: auto;
	}
}
@media (min-width: 1400px) {
	.page-footer .legal-block > :not(:last-child) {
		margin-right: var(--bs-spacer-5);
	}
}

.section > .container > hr:first-child {
	margin-top: 0;
	margin-bottom: var(--section-padding-y);
}
.section > .container > hr:last-child {
	margin-top: var(--section-padding-y);
	margin-bottom: 0;
}
.section-title {
	color: var(--bs-info);
}
.section-subtitle {
	margin-bottom: var(--bs-spacer-1);
	font-size: 1rem;
	font-weight: normal;
	color: var(--bs-gray-600);
	text-transform: uppercase;
	display: block;
}
html[lang^="zh-"] .section-subtitle {
	margin-bottom: var(--bs-spacer-2);
}
.section-header {
	margin-bottom: var(--bs-spacer-4);	
}
.section-actions {
	margin-top: var(--bs-spacer-4);
}


/* module styles */
.article-block {
	font-size: var(--bs-fs-5);
}
.article-block .section-actions {
	padding-top: var(--bs-spacer-4);
	border-top: var(--bs-border-width) solid var(--bs-border-color);
}
.article-title {
	font-size: var(--bs-fs-2);
}
.article-cover {
	margin-bottom: var(--bs-spacer-3);
}
.article-cover img {
	width: 100%;
	display: block;
}
.article-meta {
	padding: 0;
	list-style: none;
	font-size: var(--bs-body-font-size);
	display: flex;
}
.article-meta > li:not(:last-child) {
	margin-right: var(--bs-spacer-3);
}
.article-pagination .btn-article {
	max-width: 100%;
	overflow: hidden;
	color: var(--bs-secondary);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
}
.article-pagination .btn-article > * + * {
	margin-left: 1.25rem;
}
.article-pagination .btn-article .icon {
	font-size: 2.5rem;
	line-height: 1.2;
}
.article-pagination .btn-article .label {
	display: none;
}
@media (min-width: 576px) {
	.article-pagination .btn-article .label {
		overflow: hidden;
		font-size: 1.375rem;
		font-weight: 500;
		display: flex;
		flex-direction: column;
	}
	.article-pagination .btn-article .label small {
		font-size: inherit;
		font-weight: inherit;
	}
	.article-pagination .btn-article .label .title {
		display: none;
	}
}
@media (min-width: 768px) {
	.article-pagination .btn-article .label small {
		font-size: 85%;
	}
	.article-pagination .btn-article .label .title {
		max-width: 100%;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		display: block;
	}
}
@media (min-width: 992px) {
	.article-block > .container,
	.article-pagination > .container {
		max-width: 880px;
	}
}

.calendar .filter,
.calendar .legend {
	padding-top: 0;
	padding-bottom: 0;
}
.calendar-wrapper {
	position: relative;
}
.calendar-wrapper.loading:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	background: rgba(0, 0, 0, 0) url(../../images/ajax-double-ring.svg) no-repeat center / 5rem;
	z-index: 9;
}
.calendar-wrapper.loading > * {
	opacity: 0.5;
}
@media (max-width: 991px) {
	.calendar .filter form {
		margin-bottom: 0;
	}
	.calendar .filter .filter-panel-trigger,
	.calendar .legend {
		display: none;
	}
}
@media (min-width: 992px) {
	.calendar .filter,
	.calendar .legend {
		padding-bottom: var(--bs-spacing-4);
	}
	.calendar .filter-horizontal .filter-panel {
		flex-basis: 50%;
		flex-grow: 0;
	}
}

.cards-calendar .view-toggler {
	margin-bottom: 1.25rem;
	justify-content: flex-end;
}
.cards-calendar .view-toggler .nav-item + .nav-item {
	margin-left: 0.75rem;
}
.cards-calendar .view-toggler .nav-link {
	width: calc(3rem + 2px);
	height: calc(3rem + 2px);
	padding: 0.5rem 0.25rem;
	border: 1px solid var(--bs-secondary);
	border-radius: 0.5rem;
	font-size: 1.5rem;
	color: var(--bs-secondary);
	line-height: 1.3;
	text-align: center;
	transition-property: border-color, background-color, color;
}
.cards-calendar .view-toggler .nav-link:hover,
.cards-calendar .view-toggler .nav-link.active {
	background-color: var(--bs-secondary);
	color: var(--bs-white);
}
@media (min-width: 992px) {
	.cards-calendar .view-toggler .nav-item + .nav-item {
		margin-left: 1.25rem;
	}	
	.cards-calendar .view-toggler .nav-link {
		width: auto;
		height: auto;
		padding: 1rem 2rem;
		border-color: #BABABA;
		border-radius: calc(1rem + 1.5em + 1px);
		font-size: inherit;
		color: inherit;
	}
	.cards-calendar .view-toggler .nav-link:hover,
	.cards-calendar .view-toggler .nav-link.active {
		border-color: transparent;
	}
}
.cards-calendar a.card:before {
	display: none;
}
.cards-calendar .grid-view .card {
	max-width: 22rem;
	margin-bottom: var(--bs-spacer-4);
	margin-left: auto;
	margin-right: auto;
	padding: 5px 15px 15px 15px;
	border-width: 12px 1px 1px 1px;
	border-style: solid;
	border-color: var(--bs-primary);
	display: flex;
	flex-direction: column;
	align-items: normal;
}
.cards-calendar .grid-view .card .event-heading {
	margin-top: 0.625rem;
	margin-bottom: 0;
	order: 3;
	flex-wrap: wrap;
}
.cards-calendar .grid-view .card .event-heading .event-title {
	margin: 0 auto 0 0;
	font-size: 1.25rem;
}
.cards-calendar .grid-view .card .event-heading .event-code {
	font-size: 1rem;
	color: var(--bs-grey);
	line-height: 1.5;
	white-space: nowrap;
}
.cards-calendar .grid-view .card .event-date {
	width: 100%;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--bs-primary);
	font-size: 1.25rem;
	font-weight: 500;
	color: var(--bs-primary);
	text-align: center;
	text-transform: uppercase;
}
.cards-calendar .grid-view .card .event-date .event-date-day {
	font-size: 5.25rem;
	line-height: 1.2;
}
.cards-calendar .grid-view .card .event-time {
	margin: 1rem 0 0 0;
	font-size: 1rem;
	font-weight: 500;
	color: var(--bs-primary);
}
.cards-calendar .grid-view .card .event-venue {
	margin-top: 0.625rem;
	order: 4;
	display: flex;
}
.cards-calendar .grid-view .card .event-venue-dot {
	width: 1rem;
	height: 1rem;
	margin-top: 0.25rem;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
}
.cards-calendar .grid-view .card .event-venue-desc {
	margin-left: 0.25em;
}
.cards-calendar .grid-view .card .event-venue-dot + .event-venue-desc {
	margin-left: 0.25em;
}
.cards-calendar .grid-view .card .event-remark {
	margin-top: 0.625rem;
	order: 5;
}
.cards-calendar .grid-view .card .event-remark .badge {
	--bs-badge-font-size: 1em;
}
.cards-calendar .grid-view a.card {
	text-decoration: none;
	transition-property: box-shadow, transform;
}
.cards-calendar .grid-view a.card:hover {
	transform: scale(1.025);
}
.cards-calendar .grid-view a.card:hover:after {
	display: none;
}
@media (max-width: 991px) {
	.cards-calendar .grid-view > .row {
		margin-left: -6px;
		margin-right: -6px;
	}
	.cards-calendar .grid-view > .row > [class*=col] {
		padding-left: 6px;
		padding-right: 6px;
	}
	.cards-calendar .grid-view .card {
		border-radius: 8px;
	}
}
@media (min-width: 576px) {
	.cards-calendar .grid-view .card {
		max-width: none;
	}
}
@media (min-width: 992px) {
	.cards-calendar .grid-view .card {
		padding: 10px 20px 20px 20px;
		border-top-width: 30px;
	}
	.cards-calendar .grid-view .card .event-title {
		font-size: 1.625rem;
	}
	.cards-calendar .grid-view .card .event-date {
		padding-bottom: 20px;
		font-size: 1.375rem;
	}
	.cards-calendar .grid-view .card .event-date .event-date-day {
		font-size: 7.5rem;
	}
	.cards-calendar .grid-view .card .event-time {
		margin-top: 20px;
		font-size: 1.375rem;
	}
}
.cards-calendar .list-view .card-cushion {
	padding: 1rem 1.5rem;
	border-radius: 0.625rem;
	background: var(--bs-gray-600);
	font-weight: bold;
	color: var(--bs-white);
	text-align: center;
}
.cards-calendar .list-view .card {
	--bs-card-border-width: 0;
	--bs-card-border-radius: 0;
	--bs-card-bg: transparent;
	margin-bottom: 0;
	padding: 1.25rem 1.125rem;
	font-size: 1.375rem;
	text-decoration: none;
	flex-direction: row;
}
.cards-calendar .list-view .card:before {
	display: none;
}
.cards-calendar .list-view .card:hover {
	box-shadow: none;
}
.cards-calendar .list-view .card + .card {
	border-top: 1px solid #E6E6E6;
}
.cards-calendar .list-view .card > * {
	padding-left: 0.375rem;
	padding-right: 0.375rem;
}
.cards-calendar .list-view .card .event-venue {
	order: 0;
}
.cards-calendar .list-view .card .event-remark,
.cards-calendar .list-view .card .event-badge {
	order: 4;
}
.cards-calendar .list-view .card .event-remark {
	font-size: 0.85em;
}
.cards-calendar .list-view .card .event-body {
	flex-grow: 1;
	order: 1;
}
.cards-calendar .list-view .card .event-body .event-heading {
	margin: 0;
	color: inherit;
	order: 1;
}
.cards-calendar .list-view .card .event-body .event-heading .event-title {
	font-size: 1.5rem;
	line-height: 1.5;
}
.cards-calendar .list-view .card .event-body .event-heading .event-code {
	font-size: 1rem;
	white-space: nowrap;
}
.cards-calendar .list-view .card .event-body .event-time {
	color: #909090;
}
.cards-calendar .list-view .card .event-venue {
	flex-shrink: 0;
}
.cards-calendar .list-view .card .event-venue-dot {
	width: 1.5rem;
	height: 1.5rem;
	margin-top: 0.28125rem;
	margin-bottom: 0.28125rem;
	border-radius: 50%;
	display: block;
}
@media (min-width: 768px) {
	.cards-calendar .list-view .card .event-body .event-time {
		width: 14rem;
		color: inherit;
	}
}
@media (min-width: 992px) {
	.cards-calendar .list-view .card-cushion {
		padding-left: 3rem;
		padding-right: 3rem;
	}
	.cards-calendar .list-view .card {
		padding-left: 2.25rem;
		padding-right: 2.25rem;
	}
	.cards-calendar .list-view .card > * {
		padding-left: 0.75rem;
		padding-right: 0.75rem;
	}
}

.cards-highlight .card {
	margin-bottom: var(--bs-gutter-x);
}
.cards-highlight a.card {
	text-decoration: none;
}
.cards-highlight .btn.card {
	--bs-btn-padding-x: 0;
	--bs-btn-padding-y: 0;
	--bs-btn-hover-bg: var(--bs-white);
}
.cards-highlight a.card:before,
.cards-highlight .btn.card:before {
	content: '';
	position: absolute;
	inset: -1px;
	border: 3px solid transparent;
	border-radius: var(--bs-card-border-radius);
	transition-property: border-color;
}
.cards-highlight a.card:hover:before,
.cards-highlight .btn.card:hover:before {
	border-color: var(--bs-primary);
}
.cards-highlight .card-image {
	padding: var(--bs-spacer-4) var(--bs-spacer-4) 0 var(--bs-spacer-4);
}
.cards-highlight .card-title {
	margin-bottom: 0;
	font-size: var(--bs-fs-6);
	color: var(--bs-gray);
	text-align: center;
}
.cards-highlight .card-body {
	display: flex;
	align-items: center;
	justify-content: center;
}
@media (min-width: 576px) {
	.cards-highlight .card-title {
		font-size: var(--bs-fs-5);
	}
}

.cards-post .card {
	--bs-card-border-width: 0;
	--bs-card-border-radius: 0;
	--bs-card-title-color: var(--bs-info);
	margin-bottom: var(--bs-spacer-3);
	box-shadow: 0 0 10px rgba(var(--bs-black-rgb), 0.1);
}
.cards-post .card-image {
	padding: calc(var(--bs-card-spacer-y) * 0.5) calc(var(--bs-card-spacer-x) * 0.5);
}
.cards-post .card-image .img-holder {
	height: 0;
	padding-bottom: 133.333333%;
}
.cards-post .card-title {
	padding-bottom: var(--bs-card-title-spacer-y);
	border-bottom: var(--bs-border-width) solid var(--bs-border-color);
	font-size: var(--bs-fs-5);
}
.cards-post .card-body {
	display: flex;
	flex-direction: column;
}
.cards-post .card-body .card-meta {
	margin-top: auto;
	padding-top: var(--bs-spacer-2);
}
@media (min-width: 576px) {
	.cards-post .card {
		flex-direction: row;
	}
	.cards-post .card-image {
		padding-right: 0;
		flex-basis: 33.333333%;
		flex-shrink: 0;
	}
}

.error-block .section-icon {
	font-size: 80px;
	color: var(--bs-primary);
}
.error-block .section-title {
	font-size: 2.5rem;
}
.error-block .section-body {
	text-align: center;
}
@media (min-width: 992px) {
	.error-block {
		font-size: var(--bs-fs-5);
	}
	.error-block .section-icon {
		font-size: 120px;
	}
	.error-block .section-title {
		font-size: 4.5rem;
	}
}

.event-block .card {
	--bs-card-spacer-x: 1.5rem;
	--bs-card-spacer-y: 1.25rem;
	--bs-card-border-color: var(--bs-border-color);
	--bs-card-bg: #f7f7f7;
	--bs-card-cap-padding-x: var(--bs-card-spacer-x);
	--bs-card-cap-padding-y: var(--bs-card-spacer-y);
	--bs-card-cap-bg: var(--bs-secondary);
	--bs-card-cap-color: var(--bs-white);
	margin: 0;
	padding: 0;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: normal;
}
.event-block .card-header {
	border-bottom: none;
}
.event-block .card-header .event-code {
	margin-top: var(--bs-spacer-2);
	display: inline-block;
	opacity: 0.75;
}
.event-block .card-title {
	margin-bottom: 0;
	margin-right: 1.5rem;
	font-size: var(--bs-fs-2);
}
.event-block .card-body {
	flex-basis: auto;
}
.event-block .card-body dl dt {
	font-weight: normal;
	color: var(--bs-info);
}
@media (max-width: 575px) {
	.event-block .card-body dl dt {
		width: calc(var(--bs-gutter-x) * 0.5 + 1.2em);
		padding-right: 0;
		flex-basis: 0;
	}
	.event-block .card-body dl dt .label {
		display: none;
	}
	.event-block .card-body dl dd {
		min-width: calc(100% - var(--bs-gutter-x) * 0.5 - 1.2em);
		margin-left: 0;
	}
}
@media (min-width: 768px) {
	.event-block .card-header {
		display: flex;
	}
	.event-block .card-header .event-code {
		margin-top: 0;
		margin-left: auto;
		padding: calc(var(--bs-fs-2) * 0.6 - 0.75em) 0;
	}
}
@media (min-width: 992px) {
	.event-block .card {
		--bs-card-spacer-x: 3.75rem;
	}
}


.filter form {
	max-width: none;
}
.filter .card-body {
	overflow: visible;
	display: flex;
}
.filter .filter-panel {
	width: var(--slide-panel-width);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 100%;
	background: var(--bs-white);
	display: flex;
	flex-direction: column;
	z-index: 29;
	transition-property: transform;
}
.filter .filter-panel-header {
	min-height: 4.8rem;
	padding: 1.5rem 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.filter .filter-panel-header > * {
	padding: 0 0.5rem;
}
.filter .filter-panel-header .filter-panel-title {
	font-size: 1.5rem;
}
.filter .filter-panel-header .filter-panel-close {
	position: absolute;
	left: 0.75rem;
}
.filter .filter-panel-header .filter-panel-close .btn {
	margin: -0.5rem;
	padding: 0.5rem;
	border: none;
	font-size: 1.5rem;
	color: var(--bs-primary);
}
.filter .filter-panel-header .filter-panel-close .btn .icon {
	margin: 0;
}
.filter .filter-panel-scroller {
	overflow: auto;
	padding: 0 1.5rem;
	flex-basis: 0;
	flex-grow: 1;
}
.filter .filter-panel-scroller .form-label {
	margin-bottom: var(--bs-spacer-3);
	margin-left: -1.5rem;
	margin-right: -1.5rem;
	padding: 1.25rem 1.5rem;
	background: #F7F7F7;
	font-weight: normal;
	color: #909090;
	display: block;
}
.filter .filter-panel-actions {
	margin-top: auto;
	box-shadow: 0 -0.25rem 0.625rem rgba(0, 0, 0, 0.05);
	padding: 1.5rem;
	display: block;
}
.filter .filter-panel-actions .btn {
	width: 100%;
	box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.15);
}
.filter .filter-panel-actions .btn + .btn {
	margin-top: 0.625rem;
}
.filter .filter-panel-actions .btn-link {
	box-shadow: none;
}
.filter .filter-panel-trigger {
	margin-left: auto;
	padding: 0 calc(var(--bs-gutter-x) * 0.5) 0 0;
}
.filter .filter-panel-trigger .btn {
	width: calc(3.5rem + 2px);
	height: calc(3.5rem + 2px);
	padding: 1rem 0.5rem;
	line-height: 1.5rem;
}
.filter .filter-panel-trigger .btn.animated {
	animation: shockwaveJump 1s ease-out infinite;
}
.filter .filter-panel-trigger .btn.animated:before,
.filter .filter-panel-trigger .btn.animated:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	border-radius: 0.5rem;
}
.filter .filter-panel-trigger .btn.animated:before {
	animation: shockwave 1s .5s ease-out infinite;
}
.filter .filter-panel-trigger .btn.animated:after {
	animation: shockwave 1s .65s ease-out infinite;
}
@keyframes shockwaveJump {
	0% {
		transform: scale(1);
	}
	40% {
		transform: scale(1.08);
	}
	50% {
		transform: scale(0.98);
	}
	55% {
		transform: scale(1.02);
	}
	60% {
		transform: scale(0.98);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes shockwave {
	0% {
		transform: scale(1);
		box-shadow: 0 0 2px rgba(0,0,0,0.15), inset 0 0 1px rgba(0,0,0,0.15);
	}
	95% {
		box-shadow: 0 0 50px rgba(0,0,0,0), inset 0 0 30px rgba(0,0,0,0);
	}
	100% {
		transform: scale(2.25);

	}
}
.filter .filter-panel-trigger .icon {
	margin: 0;
}
.filter .filter-panel-mask {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
	opacity: 0;
	z-index: -1;
	-webkit-transition-property: opacity, z-index;
	-moz-transition-property: opacity, z-index;
	transition-property: opacity, z-index;
}
.filter .filter-panel .accordion {
	--bs-accordion-btn-padding-x: 1.5rem;
	--bs-accordion-btn-padding-y: 1rem;
	--bs-accordion-btn-border-width: 0;
	--bs-accordion-btn-border-radius: 0;
	--bs-accordion-btn-bg: transparent;
	--bs-accordion-btn-font-size: 1.1875rem;
	--bs-accordion-btn-font-weight: normal;
	--bs-accordion-btn-color: var(--bs-dark);
	--bs-accordion-btn-active-bg: var(--bs-accordion-btn-bg);
	--bs-accordion-btn-active-color: var(--bs-accordion-btn-color);
	--bs-accordion-opener-height: 2px;
	--bs-accordion-opener-bg: var(--bs-dark);
	--bs-accordion-body-padding-x: 1.5rem;
	--bs-accordion-body-padding-y: 0.75rem;
	--bs-accordion-body-bg: transparent;
	margin: -0.875rem -1.5rem;
}
.filter .filter-panel .accordion > .card:not(:last-child) {
	border-bottom: 1px solid #F7F7F7;
}
.filter .filter-panel .accordion > .card > .collapse > .card-body,
.filter .filter-panel .accordion > .card > .collapsing > .card-body {
	margin-left: 0;
	margin-right: 0;
	display: block;
}
.filter .filter-panel.opened {
	transform: translateX(-100%);
}
.filter .filter-panel.opened + .filter-panel-mask {
	opacity: 1;
	z-index: 21;
}
body.filter-panel-opened {
	overflow: hidden;
}
.filter .form-control {
	height: calc(3.5rem + 2px);
	padding-top: 1rem;
	padding-bottom: 1rem;
	border-color: #bababa;
	background-color: var(--bs-white) !important;
	font-size: 1.166667rem;
	line-height: 1.5rem;
}
.filter .keyword {
	position: relative;
}
.filter .keyword .form-control {
	padding-right: calc(3rem + 1.125em);
}
.filter .keyword .btn {
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	padding: 1rem 1.5rem;
	font-size: 1.25rem;
	color: #bababa;
	line-height: 1.5rem;
}
.filter .keyword .btn .icon {
	margin: 0;
}
@media (min-width: 992px) {
	.filter .filter-panel {
		z-index: auto;
	}
	.filter .filter-panel:not(.offcanvas-lg) {
		width: auto;
		position: static;
		background: transparent;
		-webkit-transition-property: none;
		-moz-transition-property: none;
		transition-property: none;
	}
	.filter .filter-panel:not(.offcanvas-lg) .filter-panel-header,
	.filter .filter-panel:not(.offcanvas-lg) .filter-panel-scroller > .form-group > label,
	.filter .filter-panel:not(.offcanvas-lg) .filter-panel-actions {
		display: none;
	}
	.filter .filter-panel:not(.offcanvas-lg) .filter-panel-scroller {
		overflow: visible;
		padding-left: 0;
		padding-right: 0;
	}
	.filter .filter-panel:not(.offcanvas-lg) ~ .filter-panel-trigger {
		display: none;
	}
}
.filter-horizontal .card {
	overflow: visible;
	margin: 0 0 var(--bs-spacer-3) 0;
	padding: 0;
	border: none;
	background-color: transparent;
	flex-direction: column;
	align-items: normal;
}
.filter-horizontal .card-header {
	margin-bottom: 1.5em;
	padding: 0;
	border-bottom: none;
	background: none;
}
.filter-horizontal .card-body {
	min-height: 0;
	margin-left: calc(var(--bs-gutter-x) * -0.5);
	margin-right: calc(var(--bs-gutter-x) * -0.5);
	padding: 0;
	flex-basis: auto;
}
.filter-horizontal .filter-keyword {
	flex-basis: 50%;
	flex-grow: 1;
}
.filter-horizontal .filter-keyword .form-group {
	margin-bottom: 0;
	padding: 0 calc(var(--bs-gutter-x) * 0.5);
}
.filter-horizontal .filter-actions {
	display: none;
}
@media (min-width: 992px) {
	.filter-horizontal .form-group > label {
		display: none;
	}
	.filter-horizontal .filter-panel {
		--slide-panel-width: 30vw;
	}
	.filter-horizontal .filter-keyword .form-group,
	.filter-horizontal .filter-panel:not(.offcanvas-lg) .form-group {
		margin-bottom: 0;
		padding-left: calc(var(--bs-gutter-x) * 0.5);
		padding-right: calc(var(--bs-gutter-x) * 0.5);
	}
	.filter-horizontal .filter-panel:not(.offcanvas-lg) {
		flex-basis: 50%;
		flex-grow: 1;
		order: 0;
	}
	.filter-horizontal .filter-panel:not(.offcanvas-lg) .filter-panel-scroller {
		display: flex;
	}
	.filter-horizontal .filter-panel:not(.offcanvas-lg) .filter-panel-scroller .form-group {
		flex-basis: 0;
		flex-grow: 1;
	}
	.filter-horizontal .filter-panel:not(.offcanvas-lg) + .filter-panel-trigger {
		display: none;
	}
	.filter-horizontal .filter-actions {
		padding-left: calc(var(--bs-gutter-x) * 0.5);
		padding-right: calc(var(--bs-gutter-x) * 0.5);
		white-space: nowrap;
		order: 2;
		display: block;
	}
	.filter-horizontal .filter-actions .btn {
		border-radius: calc(0.75em + 1rem + 1px);
		line-height: 1.78125rem;
	}
	.filter-horizontal .keyword {
		flex-basis: 0;
		flex-grow: 1;
	}
}
.filter-vertical .card {
	margin: 0;
	border-color: var(--bs-primary);
}
.filter-vertical .card-header {
	border-bottom: none;
	background-color: var(--bs-primary);
}
.filter-vertical .card-title {
	font-size: 1.1875rem;
	font-weight: 500;
	color: var(--bs-white);
}
.filter-vertical .card-body {
	overflow: visible;
	padding: 1.875rem 1.25rem;
	flex-direction: row;
}
.filter-vertical .filter-actions .btn {
	width: 100%;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	font-size: 1.1875rem
}
.filter-vertical .filter-actions .btn + .btn {
	margin-top: 0.75rem;
}
@media (max-width: 991px) {
	.filter-vertical .card {
		overflow: visible;
		padding: 0;
		border: none;
		border-radius: 0;
		background-color: transparent;
	}
	.filter-vertical .card-header {
		display: none;
	}
	.filter-vertical .card-body {
		margin-left: calc(var(--bs-gutter) * -0.5);
		margin-right: calc(var(--bs-gutter) * -0.5);
		padding: 0;
	}
	.filter-vertical .card-body .filter-keyword {
		padding-left: calc(var(--bs-gutter) * 0.5);
		padding-right: calc(var(--bs-gutter) * 0.5);
		flex-basis: 0;
		flex-grow: 1;
	}
	.filter-vertical .card-body .filter-keyword .form-group {
		margin: 0;
	}
	.filter-vertical .filter-actions {
		display: none;
	}
}
@media (min-width: 992px) {
	.filter-vertical .card-body {
		flex-direction: column;
	}
	.filter-vertical .filter-panel-trigger {
		display: none;
	}
	.filter-vertical .form-control {
		height: calc(1.5em + 1rem + 2px);
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
		border-radius: calc(0.75em + 0.5rem + 1px);
		font-size: 1rem;
	}
	.filter-vertical .keyword .form-control {
		padding-right: 2.75rem;
	}
	.filter-vertical .keyword .btn {
		padding: 0.5rem 0.75rem;
		border-radius: calc(0.75em + 0.5rem + 1px);
		font-size: 1rem;
		color: var(--bs-primary);
	}
}

@media (min-width: 992px) {
	.form-block > .container {
		max-width: 880px;
	}
}
.form-block-sm > .container {
	max-width: 540px;
}

.hero {
	--section-padding-y: 0;
}
.hero .swiper-slide .img-holder {
	padding-bottom: 30.3125%;
}

.jumbotron {
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	border-radius: 0;
}
.jumbotron > .container {
	display: flex;
	align-items: center;
}
.jumbotron-image {
	margin-left: -15px;
	flex-basis: 50%;
}
.jumbotron-image .img-sizer {
	min-height: 200px;
	padding-bottom: 100%;
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
.jumbotron-body {
	margin-left: auto;
	flex-basis: 0;
	flex-grow: 1;
}
.jumbotron-title {
	font-size: var(--bs-fs-1);
	font-weight: 500;
	color: var(--bs-white);
	letter-spacing: 0.05em;
	text-align: right;
}
html[lang^="zh-"] .jumbotron-title {
	letter-spacing: 0.2em;
}
@media (min-width: 576px) {
	.jumbotron-image {
		flex-basis: 40%;
	}
}
@media (min-width: 768px) {
	.jumbotron-image {
		flex-basis: 35%;
	}
}
@media (min-width: 992px) {
	.jumbotron-image {
		margin-left: 0;
		flex-basis: 30%;
	}
}
@media (min-width: 1200px) {
	.jumbotron-image {
		flex-basis: 25%;
	}
}
@media (min-width: 1600px) {
	.jumbotron-image {
		flex-basis: 20%;
	}
}
@media print {
	.jumbotron {
		padding-top: 30px;
		background: none;
	}
	.jumbotron-image {
		display: none;
	}
	.jumbotron-body {
		position: relative;
	}
	.jumbotron-title {
		text-align: left;
	}
}

.map-block .section-body {
	padding-bottom: var(--bs-spacer-3);
	border-bottom: 1px solid var(--bs-border-color);
}
.map-block .location-defination {
	font-size: var(--bs-fs-5);
	display: flex;
	align-items: flex-start;
}
.map-block .location-defination-icon {
	margin-right: var(--bs-spacer-3);
	font-size: 2rem;
	line-height: 1.05;
}
.map-block .location-defination-label {
	font-size: 1.125rem;
	font-weight: 500;
	color: var(--bs-info);
}
.map-block .location-defination + .location-defination {
	margin-top: var(--bs-spacer-3);
	padding-top: var(--bs-spacer-3);
	border-top: 1px solid var(--bs-border-color);
}
.map-block .map-container {
	min-height: 400px;
	margin-bottom: 2.5rem;
	padding-bottom: 66.666667%;
}
@media (min-width: 768px) {
	.map-block .location-defination-icon {
		font-size: 3rem;
	}
}
@media (min-width: 992px) {
	.map-block .map-container {
		margin-bottom: 0;
	}
}

.tab .nav-pills {
	--bs-border-color: var(--bs-gray-300);
	overflow: hidden;
	border: var(--bs-border-width) solid var(--bs-border-color);
	border-radius: var(--bs-border-radius);
}
.tab .nav-pills > .nav-item:not(:last-child) {
	border-right: var(--bs-border-width) solid var(--bs-border-color);
}
.tab .nav-link {
	border-radius: 0;
	background-color: var(--bs-white);
}

.text-block {
	font-size: var(--bs-fs-5);
}
.text-block-image {
	position: relative;
	margin-bottom: var(--bs-spacer-4);
}
.text-block-image img {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.text-block-image .swiper {
	--swiper-theme-color: var(--bs-info);
	--swiper-pagination-bottom: auto;
}
.text-block-image .swiper-pagination {
	position: relative;
}
.text-block-content {
	position: relative;
}
@media (min-width: 992px) {
	.text-block-image {
		margin-bottom: 0;
	}
}


/* page specific styles */
body.home .hero:after {
	content: '';
	height: 80px;
	position: relative;
	margin-top: -25px;
	background-image: url(../../images/header-separator.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	display: block;
	z-index: 1;
}
@media (min-width: 576px) {
	body.home .hero:after {
		height: 100px;
		margin-top: -30px;
	}
}
@media (min-width: 768px) {
	body.home .hero:after {
		height: 135px;
		margin-top: -45px;
	}
}
@media (min-width: 1600px) {
	body.home .hero:after {
		height: 175px;
		margin-top: -60px;
	}
}
body.home .text-block-content {
	padding-left: var(--bs-spacer-4);
	padding-right: var(--bs-spacer-4);
}
