

/**********************/
/*	TYPOGRAPHY	*/
/**********************/
:root,
[data-bs-theme=light] {
	--bs-primary: #1f35ff;
	--bs-secondary: #ff7707;
	--bs-tertiary: #ffea00;
	--bs-blue: #0f6fd8;
	--bs-blue-light: #f3f8fb;
	--bs-blue-dark: #1e1671;
	--bs-blue-dark2: #0b0d39;
	--bs-pink: #fd2590;
	--bs-red: #e91c28;
	--bs-red-light: #f96464;
	--bs-orange: #f97204;
	--bs-yellow: #ffea00;
	--bs-yellow-light: #fdfcdc;
	--bs-green: #31b275;
	--bs-cyan: #0ecfcf;
	--bs-dark: #020202;
	--bs-dark2: #010521;
	--bs-light: #f9f9f9;
	--bs-gray: #6c757d;
	--bs-gray-dark: #343a40;
	--bs-gray-100: #f8f9fa;
	--bs-gray-200: #e9ecef;
	--bs-gray-300: #dee2e6;
	--bs-gray-400: #ced4da;
	--bs-gray-500: #adb5bd;
	--bs-gray-600: #6c757d;
	--bs-gray-700: #495057;
	--bs-gray-800: #343a40;
	--bs-gray-900: #212529;
	--bs-accent: #daff45;
	--bs-blue-light-rgb: 243, 248, 251;
	--bs-blue-rgb: 15, 111, 216;
	--bs-blue-dark-rgb: 11, 13, 57;
	--bs-blue-dark2-rgb: 30, 22, 113;
	--bs-pink-rgb: 253, 37, 144;
	--bs-red-rgb: 233, 28, 40;
	--bs-red-light-rgb: 249, 100, 100;
	--bs-orange-rgb: 249, 114, 4;
	--bs-yellow-rgb: 255, 234, 0;
	--bs-yellow-light-rgb: 253, 252, 220;
	--bs-green-rgb: 49, 178, 117;
	--bs-cyan-rgb: 14, 207, 207;
	--bs-dark-rgb: 2, 2, 2;
	--bs-dark2-rgb: 1, 5, 33;
	--bs-light-rgb: 249, 249, 249;
	--bs-primary-rgb: 31, 53, 255;
	--bs-secondary-rgb: 255, 119, 7;
	--bs-transparent: transparent;
	--bs-heading-color: #020202;
	--color-body: #87868a;
	--color-body-bg: #ffffff;
	--color-page-bg: transparent;
	--color-header-top-bg: transparent;
	--color-navbar-bg: transparent;
	--color-title-bg: #f6f6f6;
	--color-footer-bg: #f6f6f6;
	
	--bs-border-radius: 3px;
}

body {
	padding: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--color-body);
	font-family: "Poppins", sans-serif;
	position: relative;
	overflow-x: hidden;
	background-color: var(--color-body-bg);
}
.page-container {
	position: relative;
	background-color: var(--color-page-bg);
}
a {
	text-decoration: none;
	outline: none;
	transition: all 0.4s ease-in-out;
	color: var(--bs-dark);
}
a:hover,
a:focus,
a:active {
	outline: none;
	text-decoration: none;
	color: var(--bs-primary);
}
small {
	font-size: 80%;
	line-height: 20px;
}
h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
	font-family: "Manrope", sans-serif;
	font-weight: 500;
}
h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a
h4 a,
.h4 a,
h5 a,
.h5 a,
h6 a,
.h6 a {
	color: inherit;
}
blockquote {
	border-left: 10px solid #f0f1f6;
	padding-left: 30px;
}
iframe {
	width: 100%;
}
.placeholder {
	background-color: transparent;
	opacity: 0.8;
	cursor: inherit;
	vertical-align: initial;
	font-weight: bold;
}

/**********************/
/* HELPER CLASS */
/**********************/
/* Text Size */
.text-sm {
	font-size: calc(1.375rem + 1.5vw);
}
.text-md {
	font-size: calc(1.425rem + 2.1vw);
	line-height: 1.1;
}
.text-lg {
	font-size: calc(1.475rem + 2.7vw);
	line-height: 1.1;
}
.text-xl {
	font-size: calc(1.525rem + 3.3vw);
	line-height: 1.1;
}
.text-xx {
	font-size: calc(1.575rem + 3.9vw);
	line-height: 1.1;
}

/* Text Color */
.text-primary {
	color: var(--bs-primary) !important;
}
.text-secondary {
	color: var(--bs-secondary) !important;
}
.text-tertiary {
	color: var(--bs-tertiary) !important;
}
.text-dark2 {
	color: var(--bs-dark2);
}
.text-accent {
	color: var(--bs-accent);
}
.text-green {
	color: var(--bs-green);
}
.text-red {
	color: var(--bs-red);
}
.text-red-light {
	color: var(--bs-red-light);
}
.text-blue {
	color: var(--bs-blue);
}
.text-blue-light {
	color: var(--bs-blue-light);
}
.text-blue-dark {
	color: var(--bs-blue-dark);
}
.text-blue-dark2 {
	color: var(--bs-blue-dark2);
}
.text-cyan {
	color: var(--bs-cyan);
}
.text-orange {
	color: var(--bs-orange);
}
.text-pink {
	color: var(--bs-pink);
}
.text-yellow {
	color: var(--bs-yellow);
}
.text-yellow-light {
	color: var(--bs-yellow-light);
}
.text-gray {
	color: var(--bs-gray);
}
.text-gray-dark {
	color: var(--bs-gray-dark);
}
.text-gray-100 {
	color: var(--bs-gray-100);
}
.text-gray-200 {
	color: var(--bs-gray-200);
}
.text-gray-300 {
	color: var(--bs-gray-300);
}
.text-gray-400 {
	color: var(--bs-gray-400);
}
.text-gray-500 {
	color: var(--bs-gray-500);
}
.text-gray-600 {
	color: var(--bs-gray-600);
}
.text-gray-700 {
	color: var(--bs-gray-700);
}

/* Background Color */
.bg-primary {
	background-color: var(--bs-primary) !important;
}
.bg-secondary {
	background-color: var(--bs-secondary) !important;
}
.bg-dark2 {
	background-color: var(--bs-dark2) !important;
}
.bg-accent {
	background-color: var(--bs-accent) !important;
}
.bg-green {
	background-color: var(--bs-green) !important;
}
.bg-red {
	background-color: var(--bs-red) !important;
}
.bg-red-light {
	background-color: var(--bs-red-light) !important;
}
.bg-blue {
	background-color: var(--bs-blue) !important;
}
.bg-blue-light {
	background-color: var(--bs-blue-light) !important;
}
.bg-blue-dark {
	background-color: var(--bs-blue-dark) !important;
}
.bg-blue-dark2 {
	background-color: var(--bs-blue-dark2) !important;
}
.bg-cyan {
	background-color: var(--bs-cyan) !important;
}
.bg-orange {
	background-color: var(--bs-orange) !important;
}
.bg-pink {
	background-color: var(--bs-pink) !important;
}
.bg-yellow {
	background-color: #ffea00 !important;
}
.bg-yellow-light {
	background-color: var(--bs-yellow-light) !important;
}
.bg-transparent {
	background-color: var(--bs-transparent) !important;
}

/* Border Style */
.border-solid {
	border-style: solid;
}
.border-dashed {
	border-style: dashed;
}
.border-dotted {
	border-style: dotted;
}
.border-double {
	border-style: double;
}
.border-ridge {
	border-style: ridge;
}
.border-inset {
	border-style: inset;
}
.border-outset {
	border-style: outset;
}

/* Border Color */
.border-primary {
	border-color: var(--bs-primary) !important;
}
.border-secondary {
	border-color: var(--bs-secondary) !important;
}
.border-tertiary {
	border-color: var(--bs-tertiary) !important;
}
.border-dark {
	border-color: var(--bs-dark2) !important;
}
.border-green {
	border-color: var(--bs-green) !important;
}
.border-red {
	border-color: var(--bs-red) !important;
}
.border-red-light {
	border-color: var(--bs-red-light) !important;
}
.border-blue {
	border-color: var(--bs-blue) !important;
}
.border-blue-light {
	border-color: var(--bs-blue-light) !important;
}
.border-blue-dark {
	border-color: var(--bs-blue-dark) !important;
}
.border-blue-dark2 {
	border-color: var(--bs-blue-dark2) !important;
}
.border-cyan {
	border-color: var(--bs-cyan) !important;
}
.border-orange {
	border-color: var(--bs-orange) !important;
}
.border-pink {
	border-color: var(--bs-pink) !important;
}
.border-yellow {
	border-color: var(--bs-yellow) !important;
}
.border-yellow-light {
	border-color: var(--bs-yellow-light) !important;
}
.border-transparent {
	border-color: var(--bs-transparent) !important;
}

/* Background Image Repeat */
.repeat {
	background-repeat: repeat;
}
.no-repeat {
	background-repeat: no-repeat;
}
.repeat-x {
	background-repeat: repeat-x;
}
.repeat-y {
	background-repeat: repeat-y;
}

/* Background Image position */
.bg-center-center {
	background-position: center center;
}
.bg-center-left {
	background-position: center left;
}
.bg-center-right {
	background-position: center right;
}
.bg-top-center {
	background-position: top center;
}
.bg-top-left {
	background-position: top left;
}
.bg-top-right {
	background-position: top right;
}
.bg-bottom-center {
	background-position: bottom center;
}
.bg-bottom-left {
	background-position: bottom left;
}
.bg-bottom-right {
	background-position: bottom right;
}

/* Background Image Size */
.bg-auto {
	background-size: auto;
}
.bg-cover {
	background-size: cover;
}
.bg-contain {
	background-size: contain;
}
/* Background Image Attachment */
.bg-scroll {
	background-attachment: scroll;
}
.bg-fixed {
	background-attachment: fixed;
}

.text-justify {
	text-align: justify !important;
}
.float-center {
	margin-left: auto;
	margin-right: auto;
}
.sticky-top {
	top: 100px;
	z-index: 9;
}

/**********************/
/* PRELOADER */
/**********************/
.preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #ffffff;
	z-index: 999999;
	height: 100%;
}
.preloader-spinner {
	width: 40px;
	height: 40px;
	background-color: var(--bs-primary);
	border-radius: 50%;
	position: relative;
	top: 50%;
	margin: -20px auto auto auto;
	-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
	animation: sk-scaleout 1.0s infinite ease-in-out;
}
@-webkit-keyframes sk-scaleout {
	0% { -webkit-transform: scale(0) }
	100% {
	-webkit-transform: scale(1.0);
	opacity: 0;
	}
}
@keyframes sk-scaleout {
	0% { 
	-webkit-transform: scale(0);
	transform: scale(0);
	} 100% {
	-webkit-transform: scale(1.0);
	transform: scale(1.0);
	opacity: 0;
	}
}

/**********************/
/* LAYOUT */
/**********************/
.view .node-teaser .contextual,
.view .node .contextual {
	top: 36px;
}
.hs-block {
	max-width: 100%;
	padding: 0;
	margin-bottom: 0;
}
.hs-inline-block {
	display: inline-block;
}
.layout--hs-section,
.hs-layout-region,
.hs-region-container,
.hs-block,
.hs-block-container,
.hs-block .field {
	position: relative;
}
.layout-builder {
	background-color: transparent;
}
.layout--hs-section,
.full-width {
	width: 100%;
}
.layout--hs-section,
.full-width .hs-row {
	margin-left: auto;
	margin-right: auto;
}
.hs-section .hs-layout-region {
	flex: 0 0 auto;
}
.no-gutter .hs-layout-region {
	padding: 0;
}
.hs-section-1-col .full-width .hs-layout-region {
	padding-left: 0;
	padding-right: 0;
}
.hs-overlay {
	overflow: hidden;
}
.hs-overlay:before,
.hs-region-overlay .hs-region-container:before {
	content: "";
}
.hs-overlay:before,
.hs-region-overlay .hs-region-container:before,
.hs-section-overlay .bg-overlay,
.hs-section-overlay .bg-hover-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
}
.hs-section-overlay .bg-hover-overlay {
	display: none;
}
.hs-section-overlay:hover .bg-hover-overlay {
	display: block;
}
.layout-builder-discard-changes {
	padding-top: 100px;
	padding-bottom: 100px;
}
.layout-builder-discard-changes .dialog-cancel {
	margin-left: 15px;
}
.hs-dropcap:first-letter {
	display: inline-block;
	float: left;
	font-size: 50px;
	line-height: 1;
	margin-right: 5px;
}
.hs-block img {
	vertical-align: middle;
	display: inline-block;
}
.hs-image-full img {
	width: 100%;
	height: auto;
}
.hs-image-block.hs-border-radius {
	overflow: hidden;
}

/**********************/
/* HEADER */
/**********************/
/*	Header Top	*/
.header-top {
	padding: 10px 0;
	background-color: var(--color-header-top-bg);
	border-bottom: 1px solid #f6f6f6;
}
.header-top .topbar-list li {
	margin-right: 10px;
}
.header-top .topbar-list li a {
	color: var(--bs-dark);
}
.header-top .topbar-list li a i {
	color: #f96464;
}
.header-top .topbar-list li a:hover {
	color: #f96464;
}
.header-top .topbar-list li:last-child {
	margin-right: 0;
}

/*	Sticky Header	*/
.sticky-header .header-content,
.sticky-header .sticky .header-content {
	transition: 0.5s;
	position: relative;
}

/**********************/
/* NAVBAR */
/**********************/
.menu {
	list-style-type: none;
	padding-left: 0;
	margin: 0;
}
/*	Navbar Default	*/
.navbar {
	padding-top: 18px;
	padding-bottom: 18px;
	background-color: var(--color-navbar-bg);
}
.navbar-brand .logo {
	max-height: 50px;
}
.navbar .navbar-nav .dropdown-menu .dropdown-item {
	display: block;
	width: 100%;
	padding: 5px 0;
	font-size: 15px;
	line-height: 15px;
	font-weight: 500;
	color: var(--bs-dark);
	border: 0;
	position: relative;
}
.navbar .navbar-nav .dropdown-menu .dropdown-submenu {
	margin-bottom: 10px;
}
.navbar .navbar-nav .dropdown-menu .dropdown-submenu:last-child {
	margin-bottom: 0;
}
.navbar .navbar-nav .dropdown-toggle:after {
	content: '';
	background: none;
	border-radius: 0;
	border: none;
	border-bottom: 1px solid #555555;
	border-right: 1px solid #555555;
	display: block;
	height: 5px;
	width: 5px;
	margin-top: -2px;
	pointer-events: none;
	position: absolute;
	right: -10px;
	top: 50%;
	-webkit-transform-origin: 66% 66%;
	-ms-transform-origin: 66% 66%;
	transform-origin: 66% 66%;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navbar .navbar-nav .nav-item .nav-link:hover.dropdown-toggle:after {
	color: var(--bs-primary);
}
.navbar .navbar-nav .dropdown-item:focus,
.navbar .navbar-nav .dropdown-item:hover {
	color: var(--bs-primary);
	text-decoration: none;
	background-color: transparent;
}
.navbar .navbar-nav .dropdown-item:focus .dropdown-toggle:after,
.navbar .navbar-nav .dropdown-item:hover.dropdown-toggle:after {
	color: var(--bs-primary);
}
.navbar .navbar-nav .dropdown-submenu {
	position: relative;
}
.navbar .navbar-nav .dropdown-submenu a::after {
	transform: rotate(-45deg);
	position: absolute;
	right: 17px;
	top: 17px;
}
.navbar .navbar-toggler {
	margin-left: 15px;
}
.navbar .icon-bar {
	width: 20px;
	height: 3px;
	margin-bottom: 4px;
	background-color: var(--bs-dark);
	display: block;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.navbar .navbar-toggler:focus {
	outline: 0px;
}
.navbar .navbar-toggler .icon-bar-top {
	transform: rotate(45deg);
	transform-origin: 10% 190%;
}
.navbar .navbar-toggler .icon-bar-middle {
	opacity: 0;
}
.navbar .navbar-toggler .icon-bar-bottom {
	transform: rotate(-45deg);
	transform-origin: 10% -80%;
}
.navbar .navbar-toggler.collapsed .icon-bar-top {
	transform: rotate(0);
}
.navbar .navbar-toggler.collapsed .icon-bar-middle {
	opacity: 1;
}
.navbar .navbar-toggler.collapsed .icon-bar-bottom {
	transform: rotate(0);
}
.navbar .navbar-nav .nav-item {
	padding: 0 16px;
}
.navbar .navbar-nav .nav-item .nav-link {
	color: var(--bs-dark);
	position: relative;
	padding: 2px 0;
}
.navbar .navbar-nav .nav-item .nav-link.is-active,
.navbar .navbar-nav .nav-item .active.dropdown-toggle,
.navbar .navbar-nav .dropdown-menu .dropdown-item.is-active,
.navbar .navbar-nav .dropdown-menu .active.dropdown-item {
	color: var(--bs-primary);
	background-color: transparent;
}
.navbar .navbar-nav .dropdown-toggle.is-active:after,
.navbar .navbar-nav .nav-item .active.dropdown-toggle:after {
	border-color: var(--bs-primary);
}
.navbar .navbar-nav .dropdown-menu li .dropdown-item.dropdown-title {
	font-size: 18px;
}

.navbar-icons {
	display: flex;
	flex-wrap: wrap;
}
.navbar-icons .nav-link {
	cursor: pointer;
	font-size: 1.5rem;
	color: var(--bs-dark);
	padding: 0;
	margin-left: 15px;
	display: flex;
	align-items: center;
}
.navbar-icons .nav-link:hover {
	color: var(--bs-primary);
}

.header-account .dropdown-toggle:after {
	display: none;
}
.header-account .dropdown-menu {
	left: auto;
	right: 0;
	min-width: 12rem;
	padding: 20px 30px;
	margin-top: 20px;
	background-color: #ffffff;
	background-clip: padding-box;
	border: 0;
	border-radius: 2px;
	box-shadow: 0px 3px 11px 0px rgba(0, 0, 0, 0.09);
}
.header-account .dropdown-menu .navbar-nav {
	display: block;
	padding: 0;
}
.header-account .dropdown-menu .nav-item {
	padding: 0;
	margin-bottom: 10px;
}
.header-account .dropdown-menu .navbar-nav .nav-item:last-child {
	margin-bottom: 0;
}
.header-account .dropdown-menu .nav-item .nav-link {
	display: block;
	width: 100%;
	margin-bottom: 0;
	margin-left: 0;
	padding: 5px 0;
	font-size: 15px;
	line-height: 15px;
	font-weight: 500;
	color: var(--bs-dark);
	border: 0;
	position: relative;
}

/**********************/
/* Page Title */
/**********************/
.page-title-wrap {
	padding: 100px 0;
	background-color: var(--color-title-bg);
}
.page-title-small {
	padding: 15px 0;
}
.page-title-small .page-title {
	font-size: 22px;
}
.page-title-medium {
	padding: 40px 0;
}
.page-title-medium .page-title {
	font-size: 28px;
}
.page-title-large {
	padding: 100px 0;
}

.page-title-left .page-title-row {
	justify-content: start;
}
.page-title-center .page-title-row {
	justify-content: center;
	text-align: center;
}
.page-title-right .page-title-row {
	justify-content: end;
	text-align: right;
}
.page-title-justify .page-title-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.page-title-justify .page-title {
	margin-bottom: 0;
}
.page-title-wrap.text-light * {
	color: var(--bs-white);
}

/**********************/
/* Breadcrumb */
/**********************/
.page-title-wrap .breadcrumb {
	display: inline-flex;
	background: transparent;
	margin-bottom: 0;
}
.breadcrumb li a:empty {
	display: none;
}
.page-title-wrap.text-light .breadcrumb-item a:hover {
	opacity: .8;
}
.page-title-wrap.text-light .breadcrumb-item,
.page-title-wrap.text-light .breadcrumb-item+.breadcrumb-item::before {
	color: #bbbbbb;
}

/**********************/
/* TASK BAR */
/**********************/
.dismissible-message {
	position: fixed;
	z-index: 999;
	bottom: 20px;
	right: 20px;
	max-width: 100%;
}
.dismissible-message .col-md-12 {
	padding: 0;
}
.dismissible-message .region .alert:last-child {
	margin-bottom: 0;
}

/**********************/
/* LOCAL TASKS */
/**********************/
.block-local-tasks-block .tabs.primary {
	text-align: center;
}
.block-local-tasks-block .tabs.primary li {
	display: inline-block;
	margin-right: 5px;
}
.block-local-tasks-block .tabs.primary li:last-child {
	margin-right: 0;
}
.block-local-tasks-block .tabs.primary li a {
	display: block;
	padding: 3px 12px;
	background-color: #eaeaea;
	border-radius: var(--bs-border-radius);
}
.block-local-tasks-block .tabs.primary li a:hover {
	background-color: #999999;
	color: #ffffff;
}
.block-local-tasks-block .tabs.primary li a.active {
	background-color: var(--bs-primary);
	color: #ffffff;
}

/**********************/
/* Block Title */
/**********************/
.title-container {
	max-width: 580px;
}
.title-main {
	margin-bottom: 0;
}

/**********************/
/* Sidebar */
/**********************/
.sidebar .block {
	margin-bottom: 40px;
}
.sidebar .block-title {
	font-size: 22px;
	margin-bottom: 30px;
}
.sidebar .navbar-nav li {
	border-bottom: 1px solid #f6f6f6;
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.sidebar .navbar-nav li:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.sidebar .navbar-nav li a {
	display: block;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	padding-left: 25px;
	position: relative;
	color: var(--bs-dark);
}
.sidebar .navbar-nav li a:before {
	content: "";
	left: 0;
	top: 14px;
	width: 8px;
	height: 8px;
	z-index: 1;
	position: absolute;
	border-radius: 100%;
	background-color: var(--bs-dark);
}
.sidebar .navbar-nav li a.active {
	color: var(--bs-primary);
}
.sidebar .navbar-nav li a.active:before {
	background-color: var(--bs-primary);
}

/**********************/
/* Footer */
/**********************/
.footer {
	padding-top: 100px;
	background-color: var(--color-footer-bg);
}
.footer .block-title {
	font-size: 20px;
	margin-bottom: 1.5rem;
}
.footer-bottom {
	border-top: 1px solid #f7f7f7;
	margin-top: 40px;
}
.footer-bottom * {
	margin-bottom: 0;
}
.footer.text-light,
.footer.text-light * {
	color: #b3b3b3;
}
.footer.bg-dark a:hover {
	color: var(--bs-primary);
}
.footer.text-light .footer-bottom {
	border-color: #272727;
}
.footer .list-unstyled li:not(.list-inline-item) {
	margin-bottom: 10px;
}

/**********************/
/* Button */
/**********************/
.btn {
	padding: 10px 25px;
	font-size: 1rem;
	box-shadow: none;
	transition: all 0.4s ease-in-out;
	border-radius: 3px;
}
.btn:hover {
	transform: translateY(-0.15rem);
}
.btn:hover,
.btn:focus,
.btn-close:focus {
	box-shadow: none;
}

/* Button Size */
.btn.btn-xl {
	padding: 20px 50px;
	font-size: 18px;
}
.btn.btn-lg {
	padding: 16px 40px;
	font-size: 16px;
}
.btn.btn-sm {
	padding: 10px 20px;
	font-size: 13px;
}
.btn.btn-xs {
	padding: 8px 16px;
	font-size: 12px;
}

/* Button Style */
.btn.btn-primary {
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
	color: #ffffff;
}
.btn.btn-primary:hover,
.btn.btn-primary:focus {
	background-color: var(--bs-dark);
	border-color: var(--bs-dark);
}
.btn-primary.btn-hover:hover {
	background-color: transparent;
}

.btn-primary.btn-hover:hover:after {
	background-color: var(--bs-dark);
}

.btn.btn-default {
	background-color: var(--bs-primary);
	color: #ffffff;
}
.btn.btn-default:hover,
.btn.btn-default:focus {
	background: var(--bs-dark);
	color: #ffffff;
	border-color: var(--bs-dark);
}
.btn.btn-white {
	background: var(--bs-white);
	color: var(--bs-dark);
}
.btn.btn-white:hover,
.btn.btn-white:focus {
	background: var(--bs-primary);
	color: #ffffff;
}
.btn.btn-black {
	background: var(--bs-black);
	color: var(--bs-white);
}
.btn.btn-black:hover,
.btn.btn-black:focus {
	background: #f0f1f6;
	color: var(--bs-dark);
}
.btn-warning i {
	color: var(--bs-dark);
}
.btn-warning:hover {
	background: var(--bs-primary);
	color: #ffffff;
	border-color: var(--bs-primary);
}
.btn-warning:hover i {
	color: #ffffff;
}
.btn-warning:focus {
	background: var(--bs-primary);
	color: #ffffff;
	border-color: var(--bs-primary);
}
.btn-warning:focus i {
	color: #ffffff;
}
.btn.btn-link {
	background-color: transparent;
	border: none;
	padding: 0;
	color: var(--bs-dark);
	text-decoration: none;
}
.btn.btn-link:hover,
.btn.btn-link:focus {
	color: var(--bs-primary);
}

.btn-yellow {
	background: var(--bs-yellow);
	color: var(--bs-dark);
}
.btn-yellow:hover {
	background: var(--bs-white);
	color: var(--bs-dark);
}

.btn-dark {
	background: var(--bs-dark);
	color: var(--bs-white);
}
.btn-dark:hover {
	background: var(--bs-primary);
	border-color: var(--bs-primary);
}

.hs-button i {
	display: inline-block;
	vertical-align: middle;
	font-size: 120%;
	margin-left: 8px;
}

.btn.btn-play {
	padding: 0;
}
.btn.btn-play .icon {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: var(--bs-primary);
	color: #ffffff;
	line-height: 70px;
	font-size: 28px;
	display: block;
}
.btn.btn-play-animation {
	position: relative;
}
.btn.btn-play-animation:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	display: block;
	width: 80px;
	height: 80px;
	background: #3452ff;
	border-radius: 50%;
	animation: pulse-border 1500ms ease-out infinite;
}

@keyframes pulse-border {
	0% {
	transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
	opacity: 1; }
	100% {
	transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
	opacity: 0; }
}

.hs-video-block.hs-border-radius {
	overflow: hidden;
}
.video-overlay .btn {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 1;
}
	
/**********************/
/* Form */
/**********************/
.form-control {
	font-size: 0.85rem;
	line-height: 1.7;
	border: 1px solid rgba(8, 60, 130, 0.07);
	box-shadow: 0rem 0rem 1.25rem rgba(30, 34, 40, 0.04);
	transition: all 0.4s ease-in-out;
	padding-top: 0.6rem;
	padding-bottom: 0.6rem;
}
.form-control:focus {
	box-shadow: none;
	border-color: var(--bs-primary);
}
textarea.form-control,
.form-floating > textarea.form-control {
	height: auto;
	line-height: 1.5;
}
.form-select {
	border-radius: 3px;
	transition: all 0.4s ease-in-out;
}
.form-select:focus {
	box-shadow: none;
	border-color: var(--bs-primary);
}
[type="radio"] + span + label,
[type="radio"] + label {
		position: relative;
		display: inline-block;
		cursor: pointer;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
}
.form-control-lg {
	height: 80px;
	padding: 40px;
	font-size: 14px;
}
.form-dark .form-control {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.1);
	color: #ffffff;
}
.form-dark .form-control::-moz-placeholder {
	color: #ffffff;
}
.form-dark .form-control::-ms-input-placeholder {
	color: #ffffff;
}
.form-dark .form-control::-webkit-input-placeholder {
	color: #ffffff;
}
.form-check {
	line-height: 1.5;
}
.form-check-input {
	box-shadow: none !important;
}
.form-check-input:checked {
	border-color: var(--bs-primary);
	background-color: var(--bs-primary);
}
.form-actions {
	margin-top: 15px;
}

/* user form */
.auth-user-form {
	margin: 0 auto;
	box-shadow: 0 0 0 0.05rem rgba(8, 60, 130, 0.06), 0rem 0rem 1.25rem rgba(30, 34, 40, 0.04);
	border-radius: 0.4rem;
}
.auth-user-form .form-header {
	margin-bottom: 20px;
}
.auth-user-form .form-item,
.auth-user-form details {
	margin-bottom: 30px;
}
.auth-user-form .description {
	font-style: italic;
	font-size: 0.65rem;
	line-height: 1.3;
	margin-top: 3px;
}
.auth-user-form .button {
	width: 100%;
}
.auth-user-form-footer {
	text-align: center;
	margin-top: 25px;
}
.auth-user-form .form-link a {
	color: var(--bs-primary);
}

/**********************/
/* Contact */
/**********************/
.contact-form .form-item {
	margin-bottom: 16px;
}
.contact-form .form-control {
	margin: 0;
	background-color: transparent;
}
.contact-form .form-item-name,
.contact-form .form-type-email {
	width: calc(50% - 8px);
	float: left;
}
.contact-form .form-item-name {
	margin-right: 16px;
}
.contact-form .form-control {
	border: 1px solid rgba(8, 60, 130, 0.1);
	padding-top: 0.68rem;
	padding-bottom: 0.68rem;
}

/**********************/
/* Search */
/**********************/
.search-form form {
	position: relative;
}
.search-form .form-control {
	margin: 0;
	padding-right: 2.75rem;
}
.search-form form .form-actions {
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
}
.search-form form .search-button {
	font-family: 'hsicons'; 
	display: inline-block;
	font-size: 1.5rem;
	color: var(--bs-primary);
	background-color: transparent !important;
	border: none !important;
	padding: 0;
	height: 100%;
	width: 50px;
}
.sidebar .search-form form .form-item {
	width: 100%;
}
#offcanvas-search {
	bottom: auto;
	height: auto;
}
#offcanvas-search .region {
	width: 100%;
}
#offcanvas-search .search-form form:before {
	content: "\ef9e";
	font-family: "hsicons";
	display: block;
	position: absolute;
	font-size: 1.6rem;
	color: #959ca9;
	top: 50%;
	left: 0;
	right: auto;
	transform: translateY(-50%);
	z-index: 1;
}
#offcanvas-search .search-form .form-control {
	font-size: 1.1rem;
	border-top: 0;
	border-left: 0;
	border-right: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	padding-left: 2.5rem;
	padding-right: 0.75rem;
}
#offcanvas-search .search-button {
	display: none;
}

/**********************/
/* Offcanvas */
/**********************/
.offcanvas {
	z-index: 999999;
}
.offcanvas.offcanvas-end,
.offcanvas.offcanvas-start {
	max-width: 450px;
}
.offcanvas .offcanvas-header {
	padding: 30px 40px;
}
.offcanvas .offcanvas-header .btn-close {
	padding: 0.75rem 0.75rem;
	margin-top: -0.75rem;
	margin-right: -0.75rem;
	margin-bottom: -0.75rem;
}
.offcanvas .offcanvas-body {
	padding: 30px 40px 60px 40px;
}
.offcanvas .block-title {
	font-size: 22px;
	margin-bottom: 30px;
}

/**********************/
/* Scroll to Top */
/**********************/
.back-to-top {
	position: fixed;
	bottom: 60px;
	right: 30px;
	z-index: 999;
	width: 45px;
	height: 45px;
	line-height: 45px;
	display: none;
	text-align: center;
	font-size: 16px;
	color: #ffffff !important;
	background: var(--bs-primary);
	cursor: pointer;
	-webkit-transition: all .3s ease-out 0s;
	transition: all .3s ease-out 0s;
	border-radius: 50px;
}
.back-to-top.curve {
	border-radius: 5px;
}
.back-to-top.square {
	border-radius: 0;
}
.back-to-top:hover {
	background-color: #081828;
	-webkit-box-shadow: 0 1rem 3rem rgba(35, 38, 45, 0.15);
	box-shadow: 0 1rem 3rem rgba(35, 38, 45, 0.15);
	-webkit-transform: translate3d(0, -5px, 0);
	transform: translate3d(0, -5px, 0);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.js-off-canvas-dialog-open .dialog-off-canvas-main-canvas .back-to-top {
	display: none !important;
}

/**********************/
/* Teaser */
/**********************/
.grid .grid-item {
	margin-bottom: 25px;
}
.grid-nopading .grid-item {
	padding: 0;
	margin-bottom: 0;
}
.grid-offset .grid-item:first-child {
	margin-top: 80px;
}
.teaser-item img {
	width: 100%;
}

/**********************/
/* Blog */
/**********************/
.blog-teaser {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
	border: 1px solid rgb(0, 0, 0, .05);
}
.blog-teaser .post-image {
	position: relative;
	overflow: hidden;
}
.blog-teaser .post-image img {
	width: 100%;
	-webkit-transition: transform 400ms;
	-moz-transition: transform 400ms;
	-o-transition: transform 400ms;
	transition: transform 400ms;
}
.blog-teaser .post-image:hover img {
	-ms-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-o-transform: scale(1.1);
	-moz-transform: scale(1.1);
	transform: scale(1.1);
}
.blog-teaser-1 .post-link {
	color: var(--bs-primary);
}
.blog-teaser-1 .post-link:hover {
	color: var(--bs-yellow);
}
.blog-teaser-1 .post-media .blog-category a:hover {
	background-color: var(--bs-yellow);
	color: var(--bs-dark);
}
.blog-teaser-3 .post-image {
	height: 100%;
}
.blog-teaser-3 .post-image img {
	min-height: 100%;
}
.blog-teaser-4 {
	position: relative;
}
.blog-teaser-4 .post-content-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 30px 30px 30px
}
.blog-teaser-4 .post-title a {
	color: #ffffff;
}
.blog-teaser-4 .post-title a:hover {
	color: var(--bs-yellow);
}
.blog-teaser-4 .post-media a {
	display: block;
	position: relative;
}
.blog-teaser-4 .post-media a:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,.5);
}
.blog-teaser-4 .post-meta-item {
	font-size: 13px;
}
.blog-teaser-4 .post-meta-item a {
	background-color: #ffffff;
	padding: 3px 10px;
	margin-right: 3px;
	border-radius: 3px;
}
.blog-teaser-4 .post-meta-item a:hover {
	color: var(--bs-dark);
	background-color: var(--bs-yellow);
}
.post-media {
	position: relative;
	min-height : 100px;
}
.post-media .blog-category {
	position: absolute;
	top: 20px;
	left: 20px;
}
.post-media .blog-category a {
	font-size: 14px;
	background-color: #fafafa;
	padding: 5px 15px;
	border-radius: 3px;
}
.post-meta {
	line-height: 1;
}
.field--name-field-media-oembed-video {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.field--name-field-media-oembed-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.post-content-wrap {
	padding: 35px;
}
.post-author-image .field--name-user-picture {
	position: relative;
	overflow: hidden;
	width: 40px;
	height: 40px;
	border-radius: 50px;
}
.post-author-image img {
	max-width: 40px;
	height: auto;
}
.post-link i {
	font-size: 18px;
}
.blog-popular-post .blog-post,
.blog-recent-post .blog-post	{
	border-bottom: 1px solid #f6f6f6;
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.blog-popular-post .blog-post:last-child,
.blog-recent-post .blog-post:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
.blog-popular-post .post-image img,
.blog-recent-post .post-image img {
	max-width: 60px;
	height: auto;
	border-radius: 3px;
}
.blog-popular-post .post-title,
.blog-recent-post .post-title {
	font-size: 15px;
	font-weight: 500;
}
.blog-popular-post .post-date,
.blog-recent-post .post-date {
	font-size: 12px;
	color: gray;
}
.blog-category li {
	border-bottom: 1px solid #f6f6f6;
		margin-bottom: 10px;
		padding-bottom: 10px;
}
.blog-category li:last-child {
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.blog-category li a {
	position: relative;
	display: block;
	padding-right: 20px;
	font-weight: 500;
}
.blog-category li a:after {
	content: "\eeea";
	font-family: hsicons;
	position: absolute;
	right: 0;
}

/**********************/
/* Tags */
/**********************/
.tags {
	display: flex;
	flex-wrap: wrap;
}
.tags a {
	display: block;
	padding: 10px 15px;
	line-height: 1;
	color: #999999;
	background-color:#f0f0f0;
	border-radius: 3px;
}
.tags .field__items {
	display: flex;
}
.tags .field__item:not(:last-child) {
	margin-right: .5em;
}
.tags li {
	margin: 0 4px 4px 0;
}
.tag-cloud li {
	display: inline-block;
	margin: 0 3px 0 0;
	position:relative;
	font-size: 12px;
}
.tag-cloud li a {
	border: 1px solid #f1f1f1;
	background-color: #f9f9f9;
	border-radius: 3px;
	padding: 10px 12px;
	line-height: 1;
	float: left;
	color: #666666;
	transition: all 0.2s ease-in-out;
}
.tag-cloud li a:hover {
	border-color: var(--bs-primary);
	background-color: var(--bs-primary);
	color: #ffffff;
	transform: translateY(-0.15rem);
	box-shadow: 0rem 0.25rem 0.75rem rgb(30 34 40 / 5%);
}

/**********************/
/* Comment */
/**********************/
.comment-wrapper {
	overflow: hidden;
	border: 1px solid #F5F5F5;
	padding: 30px;
}
.comment-wrapper .form-item {
	margin-bottom: 25px;
}
.comment__meta img {
	max-width: 60px;
	border-radius: 50%;
}
.comment-form .filter-wrapper,
.comment-form #cke_1_bottom {
	display: none;
	visibility: hidden;
}
/**
 * Indent threaded comments.
 */
.indented {
	margin-left: 1.5em; /* LTR */
}
[dir="rtl"] .indented {
	margin-right: 1.5em;
	margin-left: 0;
}
.comment .links a {
	display: block;
	background-color: #eaeaea;
	border-radius: 3px;
	padding: 3px 15px;
}
.comment ul.inline {
	display: flex;
	align-items: center;
}
.comment ul.inline li {
	padding: 0;
}
.comment ul.inline li:not(:last-child) {
	margin-right: 0.5em;
}

/**********************/
/* Pagination */
/**********************/
.pagination {
	flex-wrap: wrap;
	margin-top: 20px;
	margin-bottom: 0;
}
.pagination .page-item {
	margin-right: 7px;
}
.pagination .page-link {
	padding: 10px 16px;
	font-size: 14px;
	line-height: 1;
	color: var(--bs-dark);
	border-radius: 3px !important;
	background: #f0f1f6;
	transition: all 0.4s ease-in-out;
}
.pagination .page-link:focus {
	box-shadow: none;
}
.pagination .page-link:hover {
	background: var(--bs-primary);
	border-color: var(--bs-primary);
	color: #ffffff;
}
.pagination .page-item.active .page-link {
	color: #ffffff;
	background: var(--bs-primary);
	border-color: var(--bs-primary);
}

/**********************/
/* Service */
/**********************/
.service-teaser .service-content {
	border: 1px solid #eeeff1;
	border-radius: 5px;
	padding: 50px 40px;
	padding-bottom: 50px;
}
.service-teaser .service-content:hover {
	-webkit-box-shadow: 20px 0 60px rgba(14, 27, 56, 0.15);
	box-shadow: 5px 0 15px rgba(14, 27, 56, 0.08);
}
.service-teaser .service-icon,
.service-teaser .service-icon i {
	line-height: 1;
	font-size: 50px;
}
.service-teaser .service-icon i {
	color: var(--bs-heading-color);
	display: inline-block;
	transition: all 0.7s;
}
.service-teaser .service-content:hover .service-icon i {
	color: var(--bs-primary);
	transform: scale(1.1);
}
.service-teaser .service-title {
	margin-bottom: 45px;
}
.service-teaser .service-content:hover .service-title a {
	color: var(--bs-primary);
}
.service-teaser .service-body {
	margin-bottom: 30px;
	-webkit-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	-ms-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	-o-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	transition: all .5s cubic-bezier(.4,1.7,.7,.8);
}
.service-teaser:hover .service-body {
	-webkit-transform: translateY(-23px);
	-ms-transform: translateY(-23px);
	-o-transform: translateY(-23px);
	transform: translateY(-23px);
}
.service-teaser .post-link-wrap {
	position: absolute;
	bottom: 0;
	opacity: 0;
	-webkit-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	-ms-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	-o-transition: all .5s cubic-bezier(.4,1.7,.7,.8);
	transition: all .5s cubic-bezier(.4,1.7,.7,.8);
}
.service-teaser:hover .post-link-wrap {
	bottom: 35px;
	opacity: 1;
}
.service-teaser .post-link {
	width: 50px;
	height: 50px;
	border-radius: 100%;
	color: #ffffff;
	background-color: var(--bs-primary);
}
.service-teaser .post-link:hover {
	background-color: var(--bs-dark);
}

/**********************/
/* Team */
/**********************/
.team-teaser {
	margin-bottom: 25px;
	box-shadow: 0 1px 6px rgb(0 0 0 / 7%);
	border-radius: 5px;
	position: relative;
	overflow: hidden;
	transition: .4s;
}
.team-teaser:hover {
	transform: translateY(-5px);
}
.team-teaser .team-thumbnail {
	position: relative;
}
.team-teaser .team-thumbnail .team-social {
	position: absolute;
	top: 50%;
	right: 20px;
	text-align: center;
	z-index: 10;
	transform: translateY(-50%);
}
.team-social .social-icon {
	display: inline-block;
	font-size: 18px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	background-color: #f9f9f9;
	border-radius: 50%;
}
.team-teaser .team-thumbnail .team-social .social-icon {
	display: block;
	margin: 0 0 10px;
	transform: translateY(25px);
	transition: .4s;
	visibility: hidden;
	opacity: 0;
	background-color: #ffffff;
	border-radius: 50%;
}
.team-teaser .team-thumbnail .team-social .social-icon:first-child {
	transition-delay: .2s;
}
.team-teaser .team-thumbnail .team-social .social-icon:nth-child(2) {
		transition-delay: .3s;
}
.team-teaser .team-thumbnail .team-social .social-icon:nth-child(3) {
		transition-delay: .4s;
}
.team-teaser .team-thumbnail .team-social .social-icon:nth-child(4) {
		transition-delay: .5s;
}
.team-teaser:hover .team-thumbnail .team-social .social-icon {
	transform: translateY(0);
	visibility: visible;
	opacity: 1;
}
.team-teaser .team-meta {
	padding: 20px;
}

/* Team Teaser 1 */
.team-teaser-1:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 20px;
	width: 0;
	height: 2px;
	background-color: #333333;
	border-radius: 5px;
	transition: .4s;
}
.team-teaser-1:hover:after {
	width: 65%;
}
.team-teaser-1 .team-meta {
	padding-left: 25px;
	padding-right: 25px;
}
/* Team Teaser 2 */
.team-teaser-2 .team-thumbnail .team-social {
	margin-top: -40px;
}
.team-teaser-2 .team-meta {
	position: absolute;
	bottom: 10px;
	left: 10px;
	right: 10px;
	overflow: hidden;
	border-radius: 5px;
	background-color: rgba(255, 255, 255, .9);
}
.team-teaser-2 .team-meta:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: -2px;
	left: 0;
	right: 0;
	background-color: rgba(255, 255, 255, .9);
	transform: translateY(100%);
	transition: transform 0.48s ease;
}
.team-teaser-2:hover .team-meta:before {
	transform: translateY(0);
}
.team-teaser-2 .team-name,
.team-teaser-2 .team-position {
	position: relative;
	line-height: 1;
}
.team-teaser-2 .team-name:after {
	content: "";
	display: block;
	margin: 3% auto 4% auto;
	width: 35%;
	height: 1px;
	background-color: #333333;
	opacity: 0.5;
	transform: scale(0);
	transition: transform 0.25s;
}
.team-teaser-2:hover .team-name:after {
	transform: scale(1);
	opacity: 0.5;
	transition-delay: 0.15s;
	transition-duration: 0.2s;
}

/**********************/
/* Portfolio */
/**********************/
.portfolio-teaser {
	overflow: hidden;
}
.portfolio-teaser,
.portfolio-teaser a {
	position: relative;
}
.portfolio-teaser .portfolio-term {
	font-size: 12px;
}
.portfolio-teaser .portfolio-term .field__item {
	display: inline-block;
}
.portfolio-teaser .portfolio-term .field__items .field__item {
	margin-right: 8px;
}
.portfolio-teaser .portfolio-term .field__items .field__item:last-child {
	margin-right: 0;
}
.portfolio-teaser .portfolio-link a {
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-align: center;
	background-color: rgba(255,255,255,.8);
	color: var(--bs-dark);
	transition: all 0.5s;
}
.portfolio-teaser .portfolio-link i {
	display: block;
	line-height: 50px;
	font-size: 25px;
}
/* Portfolio 1 */
.portfolio-teaser-1 .portfolio-img {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}
.portfolio-teaser-1 .portfolio-img img {
	transition: ease-in-out 600ms;
}
.portfolio-teaser-1:hover .portfolio-img img {
	transform: translatey(-10px) translatex(-5px) scale(1.05);
}
.portfolio-teaser-1 .portfolio-term a {
	display: block;
	padding-bottom: 5px;
}
.portfolio-teaser-1 .portfolio-term a:before {
	content:"";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
	width: 0;
	background-color: var(--bs-primary);
	transition: all 0.5s;
}
.portfolio-teaser .portfolio-term a:hover:before {
	width: 100%;
}
/* Portfolio 2 */
.portfolio-teaser-2 {
	border-radius: 5px;
	-webkit-box-shadow: 0 0 3px #eaeaea;
		box-shadow: 0 0 3px #eaeaea;
}
.portfolio-teaser-2 .portfolio-img {
	position: relative;
	-webkit-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-moz-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-ms-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-o-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
}
.portfolio-teaser-2:hover .portfolio-img {
	transform: translateY(-15px);
}
.portfolio-teaser-2 .portfolio-img img {
	transition: ease-in-out 600ms;
}
.portfolio-teaser-2:hover .portfolio-img img {
	transform: translatey(-10px) translatex(-5px) scale(1.05);
}
.portfolio-teaser-2 .portfolio-content-wrap {
	padding: 30px;
	position: relative;
}
.portfolio-teaser-2 .portfolio-content {
	position: relative;
	padding-bottom: 30px;
	-webkit-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-moz-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-ms-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-o-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
}
.portfolio-teaser-2:hover .portfolio-content {
	transform: translateY(15px);
}
.portfolio-teaser-2 .portfolio-meta {
	position: relative;
	z-index: 1;
	justify-content: space-between;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 20px;
	line-height: 20px;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-term {
	display: flex;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-term a {
	text-transform: uppercase;
	position: relative;
	display: flex;
	justify-content: center;
	cursor: pointer;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-term a:hover {
	color: #ffffff;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-term a:before {
	content: "";
	text-align: center;
	width: 100%;
	height: 2px;
	background-color: var(--bs-primary);
	opacity: 0.7;
	position: absolute;
	bottom: 1px;
	z-index: -1;
	padding: 0px 1px;
	-webkit-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-moz-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-ms-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	-o-transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
	transition: cubic-bezier(0.68, -0.55, 0.27, 1.55) 320ms;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-term a:hover:before {
	height: 18px;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-link {
	font-size: 20px;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-link a {
	background-color: var(--bs-light);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	text-align: center;
}
.portfolio-teaser-2 .portfolio-meta .portfolio-link a:hover {
	background-color: var(--bs-primary);
	color: var(--bs-white);
	transform: rotate(-45deg);
}
.portfolio-teaser-2 .portfolio-meta .portfolio-link i {
	display: block;
	line-height: 40px;
}

/* Portfolio 3, 4, 5 */
.portfolio-teaser-3,
.portfolio-teaser-4,
.portfolio-teaser-5 {
	border-radius: 5px;
	-webkit-box-shadow: 0 0 3px #eaeaea;
	box-shadow: 0 0 3px #eaeaea;
}
.portfolio-teaser-3:before,
.portfolio-teaser-4:before,
.portfolio-teaser-5:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: #1c1c1c;
	opacity: 0;
	transition: all 0.5s;
}
.portfolio-teaser-3:hover:before,
.portfolio-teaser-4:hover:before,
.portfolio-teaser-5:hover:before {
	opacity: 0.9;
}
.portfolio-teaser-3 .portfolio-content,
.portfolio-teaser-4 .portfolio-content,
.portfolio-teaser-5 .portfolio-content {
	position: absolute;
	left: 0;
	padding: 30px;
}
.portfolio-teaser-3 .portfolio-content {
	top: 0;
	bottom: 0;
	right: 0;
	padding: 0 30px;
}
.portfolio-teaser-3 .portfolio-label {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.7s;
}
.portfolio-teaser-3:hover .portfolio-label {
	transform: translateY(-100px);
}
.portfolio-teaser-3 .portfolio-title {
	position: relative;
	display: inline-block;
	padding: 15px 20px;
}
.portfolio-teaser-3 .portfolio-title {
	background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(#ffffff, #ffffff);
	background-size: 0% 2px, 100% 100%;
	background-position: 100% 100%, 0 100%;
	background-repeat: no-repeat;
	transition: 0.5s linear;
	border-radius: 3px;
}
.portfolio-teaser-3:hover .portfolio-title {
	background-size: 0% 2px, 50% 2px;
	background-position: 100% 100%, 50% 100%;
}
.portfolio-teaser-3 .portfolio-term {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.7s;
	transition-delay: 0.6s;
	opacity: 0;
}
.portfolio-teaser-3:hover .portfolio-title a,
.portfolio-teaser-3:hover .portfolio-term a {
	color: #ffffff;
	transition-delay: 0.1s;
}
.portfolio-teaser-3 .portfolio-title a:hover,
.portfolio-teaser-3 .portfolio-term a:hover {
	color: var(--bs-primary);
}
.portfolio-teaser-3:hover .portfolio-term,
.portfolio-teaser-4:hover .portfolio-content,
.portfolio-teaser-5:hover .portfolio-content {
	opacity: 1;
}
.portfolio-teaser-3:hover .portfolio-term {
	transform: translateY(-100px);
}
.portfolio-teaser-3 .portfolio-link {
	opacity: 0;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.7s;
	transition-delay: 0.8s;
}
.portfolio-teaser-3:hover .portfolio-link {
	opacity: 1;
	transform: translateY(-100px);
}
.portfolio-teaser-3 .portfolio-link a:hover {
	background-color: var(--bs-primary);
}
.portfolio-teaser-3 .portfolio-link i {
	color: var(--bs-dark);
}
.portfolio-teaser-3 .portfolio-link a:hover i {
	color: var(--bs-white);
}
.portfolio-teaser-4:before {
	opacity: .3;
	background-color: transparent;
	background: linear-gradient(to right, var(--bs-primary), var(--bs-secondary));
	transition: all 0.7s;
}
.portfolio-teaser-4 .portfolio-content {
	top: 30px;
	left: 10px;
	right: 10px;
}
.portfolio-teaser-4:hover .portfolio-title a,
.portfolio-teaser-4:hover .portfolio-term a {
	color: #ffffff;
}
.portfolio-teaser-4 .portfolio-title a:hover {
	opacity: .8;
}
.portfolio-teaser-4 .portfolio-term a:hover {
	color: var(--bs-secondary);
}
.portfolio-teaser-4 .portfolio-link a {
	color: var(--bs-dark);
	background-color: #ffffff;
	opacity: 0;
	transform: translateX(-60px);
	transition: all 0.7s;
	
}
.portfolio-teaser-4:hover .portfolio-link a {
	opacity: 1;
	transform: translateY(0px);
}
.portfolio-teaser-4 .portfolio-link a:hover {
	transform: scale(1.1);
}
.portfolio-teaser-5:before {
	opacity: .5;
}
.portfolio-teaser-5 .portfolio-content {
	top: 30px;
	left: 30px;
	bottom: 30px;
	max-width: 400px;
}
.portfolio-teaser-5 .portfolio-title a {
	color: #ffffff;
}
.portfolio-teaser-5 .portfolio-title a:hover {
	color: var(--bs-primary);
}
.portfolio-teaser-5 .portfolio-term .field__item a {
	padding: 5px 10px;
	background-color: #ffffff;
	border-radius: 2px;
}
.portfolio-teaser-5 .portfolio-term .field__item a:hover {
	color: #ffffff;
	background-color: var(--bs-primary);
}
.portfolio-teaser-5 .portfolio-link {
	position: absolute;
	bottom: 30px;
}
.portfolio-teaser-5 .portfolio-link a {
	background-color: #ffffff;
	transform: rotate(-45deg);
}
.portfolio-teaser-5 .portfolio-link a:hover {
	color: #ffffff;
	background-color: var(--bs-primary);
	transform: rotate(0deg);
}

/* Portfolio Single */
.node-type-portfolio .portfolio-meta {
	padding: 30px;
	border-radius: 5px;
	position: relative;
	overflow: hidden;
	color: #dddddd;
}
.portfolio-meta-item-title {
	color: #ffffff;
}
.portfolio-meta-heading,
.portfolio-meta-item {
	padding: 10px 0;
	border-bottom: 1px solid #0d6efd;
}
.node-type-portfolio .portfolio-category a {
	color: #dddddd;
}
.node-type-portfolio .portfolio-category a:hover {
	color: #ffffff;
}
.node-type-portfolio .portfolio-category .field__item {
	display: inline-block;
	margin-right: 8px;
}
.portfolio-post-image .field__items .field__item {
	margin-bottom: 25px;
}
.portfolio-post-image img {
	border-radius: 5px;
}

/**********************/
/* Testimonial */
/**********************/
.testimonial-teaser-2 {
	border-radius: 5px;
	border: 1px solid rgb(0, 0, 0, .05);
	box-shadow: 0px 1px 5px 0px rgb(8, 15, 30, .03);
	padding: 3rem;
}
.testimonial-teaser .testimonial-position {
	/*font-size: 12px;*/
}
.testimonial-image img {
	position: relative;
	width: 3.5rem;
	max-height: 3.5rem;
	overflow: hidden;
	border-radius: 50%;
}
.testimonial-meta {
	position: relative;
}
.testimonial-content:before {
	content: "\eedb";
	font-family: hsicons;
	position: absolute;
	top: -2.5rem;
	right: -2.5rem;
	color: rgba(52, 63, 82, 0.04);
	font-size: 8rem;
	line-height: 1;
}

/* Ratings */
.ratings {
	display: inline-block;
	position: relative;
	width: 5rem;
	height: 0.8rem;
}
.ratings:after,
.ratings:before {
	display: inline-block;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 0;
	color: #fcc032;
	content: "\2605\2605\2605\2605\2605";
	overflow: hidden;
}
.ratings:before {
	color: rgba(38, 43, 50, 0.1);
}
.ratings.one:after {
	content: "\2605";
}
.ratings.two:after {
	content: "\2605\2605";
}
.ratings.three:after {
	content: "\2605\2605\2605";
}
.ratings.four:after {
	content: "\2605\2605\2605\2605";
}
.custom-control .ratings {
	height: 0.9rem;
}
.ratings-wrapper span {
	display: inline-block;
}
.ratings-wrapper span.ratings {
	vertical-align: -1px;
}

/**********************/
/* Accordion */
/**********************/
.accordion,
.accordion-item,
.accordion-button,
.accordion-button:focus,
.accordion-button:not(.collapsed) {
	background-color: transparent;
	border-radius: 0;
	border: none;
	box-shadow: none;
}
.accordion .accordion-item:last-of-type {
	border-radius: 0;
	margin-bottom: 0 !important;
}

.accordion-button {
	font-size: inherit;
	padding-top: 10px;
	padding-bottom: 10px;
}
.accordion-button:after {
	content: "\ecf4";
	font-family: hsicons;
	line-height: 1;
	background: none !important;
	font-weight: 900;
}
.accordion-button:not(.collapsed):after {
	content: "\ec80";
}
.accordion-body p:last-child {
	margin-bottom: 0;
}

/**********************/
/* Block */
/**********************/
.hs-block-block .block {
	margin-bottom: 0;
}
.hs-block-block .block .block-title {
	display: none;
}

/**********************/
/* Icon Box */
/**********************/
.hs-icon-box-block {
	transition: all 0.4s ease-in-out;
}
.box-icon {
	display: inline-block;
	font-size: 45px;
	line-height: 1;
}
.box-icon i {
	display: block;
	width: 1em;
	height: 1em;
}
.box-image {
	overflow: hidden;
	line-height: 1;
}
.box-title {
	margin-bottom: 15px;
}
.icon-position-left .box-icon,
.icon-position-right .box-icon {
	margin-bottom: 0;
}
.icon-position-left .box-icon {
	margin-right: 15px;
}
.icon-position-right .box-icon {
	margin-left: 15px;
}
.icon-position-left .box-icon i,
.icon-position-right .box-icon i {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
.box-text p:last-child {
	margin-bottom: 0;
}

/* ICON ANIMATION */
.icon-slide-up .box-media-wrap,
.icon-zoom .box-media-wrap {
	transform: translate3d(0, 0, 0);
	transition: transform 0.3s cubic-bezier(0.21, 0.6, 0.44, 2.18);
}
.icon-slide-up:hover .box-media-wrap {
	transform: translateY(-5px) translate3d(0, -5px, 0);
}
.icon-zoom:hover .box-media-wrap {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.hs-icon-box-block .box-link span {
	padding: 15px 0;
}
.hs-icon-box-block .box-link i {
	display: block;
	transform: translateX(0px);
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.hs-icon-box-block:hover .box-link i {
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	padding: 15px;
		text-align: center;
		border-radius: 50%;
		background-color: var(--bs-primary);
	color: #ffffff;
}
.hs-icon-box-block:hover .box-link-text i {
	transform: translateX(8px);
}
.hs-icon-box-block .box-link-no-text i {
	padding: 15px 0;
}

/**********************/
/* Image Box */
/**********************/
.hs-image-box-block.image-background .box-content-wrap {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	padding: 40px;
	overflow: hidden
}
.hs-image-box-block.image-background .box-content {
	max-width: 50%;
}
.hs-image-box-block.image-background .box-image img {
	width: 100%;
	-webkit-transition: all 2s;
	transition: all 2s;
}
.hs-image-box-block.image-background:hover .box-image img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.image-position-left .box-image,
.image-position-right .box-image {
	margin-bottom: 0;
}
.image-position-left .box-image {
	margin-right: 15px;
}
.image-position-right .box-image {
	margin-left: 15px;
}
.hs-image-box-block .box-link {
	margin-top: 20px;
}
.hs-image-box-block.image-background .box-link {
	margin-top: 30px;
}

.box-text p:last-child {
	margin-bottom: 0;
}

/**********************/
/* Icon List */
/**********************/
.list-content {
	padding: 0;
	margin-bottom: 0;
	list-style-position: inside;
}
.list-content .list-item {
	margin-bottom: 15px;
}
.list-content .list-item:last-child {
	margin-bottom: 0 !important;
}
.list-text {
	padding-left: 5px;
}
.icon-list {
	list-style: none;
}
.icon-list .list-icon {
	display: flex;
}
.icon-list .list-text {
	align-self: center;
}
.list-content.d-inline-flex .list-item {
	margin-right: 15px;
	margin-bottom: 0;
	padding-right: 15px;
}
.list-content.d-inline-flex .list-item:last-child {
	margin-right: 0 !important;
	padding-right: 0 !important;
}

/*
.list-item::marker {
	content: counter(list-item);
}
*/


/*
.list-content {
	list-style: none;
	list-style-position: outside;
}
.list-item {
	display: flex;
}
.list-item::before {
	content: counter(list-item) ".";
}
*/



/**********************/
/* Gallery */
/**********************/
.hs-gallery-block .field--name-field-hs-gallery .field__item {
	text-align: center;
}
.hs-gallery-block .field--name-field-hs-gallery .field__item img {
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}
.hs-gallery .grid-item {
		flex: 0 0 auto;
}
.hs-gallery .grid-1 {
	width: 100%;
}
.hs-gallery .grid-2 {
	width: 50%;
}
.hs-gallery .grid-3 {
	width: 33.3%;
}
.hs-gallery .grid-4 {
	width: 25%;
}
.hs-gallery .grid-5 {
	width: 20%;
}
.hs-gallery .grid-6 {
	width: 16.6%;
}
@media (max-width: 767px) {
	.hs-gallery .grid-md-1 {
		width: 100%;
	}
	.hs-gallery .grid-md-2 {
		width: 50%;
	}
	.hs-gallery .grid-md-3 {
		width: 33.3%;
	}
	.hs-gallery .grid-md-4 {
		width: 25%;
	}
	.hs-gallery .grid-md-5 {
		width: 20%;
	}
	.hs-gallery .grid-md-6 {
		width: 16.6%;
	}
}
@media (max-width: 575px) {
	.hs-gallery .grid-sm-1 {
		width: 100%;
	}
	.hs-gallery .grid-sm-2 {
		width: 50%;
	}
	.hs-gallery .grid-sm-3 {
		width: 33.3%;
	}
	.hs-gallery .grid-sm-4 {
		width: 25%;
	}
	.hs-gallery .grid-sm-5 {
		width: 20%;
	}
	.hs-gallery .grid-sm-6 {
		width: 16.6%;
	}
}

/**********************/
/* Pricing Table */
/**********************/
.hs-pricing-table-block {
	box-shadow: 0px 4px 28px 0px rgb(8, 15, 30, .06);
	padding: 2rem;
}
.pricing-title {
	margin-bottom: 15px
}
.pricing-period {
	margin-left: 5px;
}
.pricing-features .field__item {
	display: flex;
	margin-bottom: 5px;
}
.pricing-features .field__item:before {
	content: "\eee4";
	font-family: hsicons;
	color: var(--bs-primary);
	font-size: 13px;
	align-items: center;
	height: 25px;
	width: 20px;
	flex: 0 0 20px;
	justify-content: center;
	display: flex;
	margin-right: 10px;
}
.pricing-button {
	margin-top: 40px;
}

/**********************/
/* Counter */
/**********************/
.count-number {
	font-size: 45px;
	line-height: 1;
}
.count-number span {
	font-size: 90%;
}
.counter-title {
	font-size: 16px;
	margin-bottom: 0;
}
.hs-counter-block.text-end .count-number {
	justify-content: start;
}
.hs-counter-block.text-center .count-number {
	justify-content: center;
}
.hs-counter-block.text-end .count-number {
	justify-content: end;
}

/**********************/
/* Progress */
/**********************/
/* Progress Bar */
.progressbar {
	overflow: hidden; 
	width: 100%;
}
.progressbar .progress-title {
	display: inline-block;
	margin-bottom: 0;
	font-size: 13px;
}
.progress-item {
	position: relative;
	display: block;
	margin-bottom: 10px;
	margin-top: 8px;
	background: var(--bs-primary);
	height: 6px;
	width: 100%;
}
.progress-bar {
	width: 100%;
	background: #f2f2f2;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	overflow: initial;
}
.progress-complete {
	position: absolute;
	left: -13px;
	display: block;
	top: -35px;
	color: #555555;
	font-size: 14px;
}

/* Progress Circle */
.progress-circle svg.radial-progress {
	height: auto;
	max-width: 140px;
	transform: rotate(-90deg);
	width: 100%;
}
.progress-circle svg.radial-progress circle {
	fill: rgba(0,0,0,0);
	stroke: #999;
	stroke-dashoffset: 219.91148575129; /* Circumference */
	stroke-width: 6;
}
.progress-circle svg.radial-progress circle.incomplete {
	opacity: 0.25;
}
.progress-circle svg.radial-progress circle.complete {
	stroke-dasharray: 219.91148575129; /* Circumference */
}
.progress-circle svg.radial-progress text {
	text-anchor: middle;
	font-size: 12px;
}

/**********************/
/* Slider */
/**********************/
/* Slick */
.slick-arrow {
	position: absolute;
	width: 46px;
	height: 46px;
	position: absolute;
	top: calc(50% - 46px);
	cursor: pointer;
	z-index: 2;
	border: none;
	background-color: rgb(194, 194, 196, 0.5);
	border-radius: 50%;
	border: none;
	opacity: 0;
	transition: all 0.3s ease;
}
.slick-prev {
	left: 20px;
}
.slick-next {
	right: 20px;
}
.slick-slider:hover .slick-arrow {
	opacity: 1;
}
.slick-arrow:focus {
	background-color: rgb(194, 194, 196, 0.5);
}
.slick-arrow:hover {
	background-color: var(--bs-primary);
}
.slick-arrow:before {
	font-family: "hsicons";
	display: block;
}
.slick-prev.slick-arrow:before {
	content: "\e946";
}
.slick-next.slick-arrow:before {
	content: "\e947";
}
.slick-arrow:hover:before {
	color: #ffffff;
}
.slick-arrow:focus:before {
	color: #ffffff;
}
.slider [data-animation-in] {
	opacity: 0;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	transition: opacity 0.5s ease 0.3s;
	transition: 1s;
}
.slick-slider.slick-dotted {
	margin-bottom: 0;
}
.slick-dots {
	bottom: 15px;
}
.slick-dots li button {
	transition: all 0.3s ease;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
	outline: none;
}
.slick-dots li button:before {
	color: #ffffff;
	font-size: 8px;
	opacity: .35;
}
.slick-dots li.slick-active button:before {
	opacity: .75;
	color: #ffffff;
	font-size: 10px;
}
/* Slider Bock */
.hs-slider-block .slick-slide > div {
	display: flex;
}
.hs-slider-block .slide {
	position: relative;
	height: 100%;
	transition: 1s;
}
.hs-slider-block .slick-track {
	display: flex;
}
.hs-slider-block .slick-slide {
	height: inherit !important;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: hidden;
}
.hs-slider-block .slide-img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
}
.hs-slider-block .slide-content {
	padding: 100px 0;
}
.hs-slider-block .slide-content .top-title,
.hs-slider-block .slide-content .slide-title,
.hs-slider-block .slide-content .slide-text {
	color: inherit;
}
.hs-slider-block .slide-content .top-title {
	margin-bottom: 15px;
}
.hs-slider-block .slide-content .slide-title {
	margin-bottom: 25px;
}
.hs-slider-block .slide-content .slide-link {
	margin-top: 50px;
}

/* IMAGE ZOOM */
@-webkit-keyframes zoomInImage {
	from {
		transform: scale3d(1, 1, 1);
		transition: 1s;
	}
	to {
		transform: scale3d(1.1, 1.1, 1.1);
		transition: 1s;
	}
}
@keyframes zoomInImage {
	from {
		transform: scale3d(1, 1, 1);
		transition: 1s;
	}
	to {
		transform: scale3d(1.1, 1.1, 1.1);
		transition: 1s;
	}
}
.animate__zoomInImage {
	-webkit-animation-name: zoomInImage;
	animation-name: zoomInImage;
}

@-webkit-keyframes zoomOutImage {
	from {
		transform: scale3d(1.1, 1.1, 1.1);
		transition: 1s;
	}
	to {
		transform: scale3d(1, 1, 1);
		transition: 1s;
	}
}

@keyframes zoomOutImage {
	from {
		transform: scale3d(1.1, 1.1, 1.1);
		transition: 1s;
	}
	to {
		transform: scale3d(1, 1, 1);
		transition: 1s;
	}
}
.animate__zoomOutImage {
	-webkit-animation-name: zoomOutImage;
	animation-name: zoomOutImage;
	transition: 1s;
}


/* Animation style */
.float-1 {
	animation: zoomInOutRotate 8s infinite alternate;
}
.float-2 {
	animation: rotate 5s infinite alternate;
}
.float-3 {
	animation: float-1 12s infinite alternate;
}
.float-4 {
	animation: float-2 6s infinite alternate;
}
.float-5 {
	animation: zoomInOutRotate 6s infinite alternate;
}
.float-6 {
	animation: zoomInOutRotate 5s infinite alternate;
}
.zoomin {
	animation: zoomin;
	animation-duration: 5s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
	opacity: 0.0;
}
.opacitypulse {
	animation: opacityPulse;
	animation-duration: 5s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
	opacity: 1;
}
.rotate {
	animation-name: rotate; 
	animation-duration: 20s; 
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}
.zoominout {
	animation-name: zoomInOut;
	animation-duration: 5s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}
.zoominoutrotate {
	animation-name: zoomInOutRotate;
	animation-duration: 5s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}

.shape-1 {
	position: absolute;
	left: 5%;
	top: 17%;
	-webkit-animation: round-01 7s linear infinite;
	animation: round-01 7s linear infinite;
	z-index: -1;
}

.up-down {
	-webkit-animation: up-down 7s infinite;
	animation: up-down 7s infinite;
}
.tilt-right {
	-webkit-animation: tilt-right 7s linear infinite;
	animation: tilt-right 7s linear infinite;
}
.tilt-left {
	-webkit-animation: tilt-left 7s linear infinite;
	animation: tilt-left 7s linear infinite;
}

@keyframes tilt-right {
	0% {
		transform: rotate(15deg);
	}
	50% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(15deg);
	}
}
@keyframes tilt-left {
	0% {
		transform: rotate(-15deg);
	}
	50% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(-15deg);
	}
}

@-webkit-keyframes zoomin {
	0% {
		-webkit-transform: scale(0.1, 0.1);
		opacity: 0.0;
	}
	50% {
		opacity: 1.0;
	}
	100% {
		-webkit-transform: scale(1.2, 1.2);
		opacity: 0.0;
	}
}
@-webkit-keyframes opacityPulse {
	0% {
		opacity: 0.0;
	}
	50% {
		opacity: 1.0;
	}
	100% {
		opacity: 0.0;
	}
}

@keyframes float-1 {
	0% {
		transform: translate(0px, 0px) rotate(0deg) scale(1);
	}
	50% {
		transform: translate(30px, 40px) rotate(0deg) scale(1);
	}
	100% {
		transform: translate(0px, 0px) rotate(0deg) scale(1);
	}
}

@keyframes float-2 {
	0% {
		transform: translate(0px, 0px) rotate(0deg) scale(1);
	}
	50% {
		transform: translate(30px, -30px) rotate(0deg) scale(1);
	}
	100% {
		transform: translate(0px, 0px) rotate(0deg) scale(1);
	}
}

@keyframes rotate {
	from {
		transform: rotate(0deg);
	}
	to { 
		transform: rotate(360deg);
	}
}

@keyframes zoomInOut {
	0% {
	-webkit-transform: scale(0.7);
	transform: scale(0.7);
	opacity: 0;
	}
	50% {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
	}
	100% {
	-webkit-transform: scale(0.7);
	transform: scale(0.7);
	opacity: 0;
	}
}

@keyframes zoomInOutRotate {
	0% {
	-webkit-transform: rotate(0deg) scale(0.7);
	transform: rotate(0deg) scale(0.7);
	opacity: 0;
	}
	50% {
	-webkit-transform: rotate(180deg) scale(1);
	transform: rotate(180deg) scale(1);
	opacity: 1;
	}
	100% {
	-webkit-transform: rotate(360deg) scale(0.7);
	transform: rotate(360deg) scale(0.7);
	opacity: 0;
	}
}

@keyframes up-down {
	0% {
	transform: translateY(30px);
	}
	50% {
	transform: translateY(0px);
	}
	100% {
	transform: translateY(30px);
	}
}


.user-logged-in .animate-transtion:hover {
	animation: none;
	z-index: 1;
	min-width: 100px;
}



/* Filter */
.image-grayscale img,
.image-white img,
.image-black img {
	transition: all 0.4s ease-in-out;
}
.image-grayscale img {
	filter: grayscale(100%);
}
.image-grayscale img:hover {
	filter: grayscale(0);
}
.image-white img {
	filter: brightness(0) invert(1);
}
.image-black img {
	filter: brightness(0);
}
.image-white img:hover,
.image-black img:hover {
	filter: none;
}

/**********************/
/* NEWSLETTER */
/**********************/
.simplenews-subscriber-form form {
	position: relative;
}
.simplenews-subscriber-form form .form-email {
	padding-right: 150px;
	padding-top: 12px;
	padding-bottom: 12px;
	height: 48px;
}
.simplenews-subscriber-form form .form-actions {
	position: absolute;
	top: 0;
	right: 0;
}
.simplenews-subscriber-form form .form-actions .button {
	padding: 10px 25px;
	border-radius: 0 5px 5px 0;
	border: none;
	height: 48px;
}
.simplenews-subscriber-form form .description {
	display: none;
}

/**********************/
/* 404 ERROR PAGE */
/**********************/
.error-404 {
	padding: 100px 0 100px 0;
}
.error-404-number {
	color: #eeeeee;
	display: block;
	font-size: 15em;
	font-weight: 600;
	line-height: 1;
}

/* TOOLTIP */
.flag-link {
	position: relative;
	display: inline-block;
}
.flag-link::before {
	position: absolute;
	top: -33px;
	left: 50%;
	margin-left: -50px;
	background-color: #2b222a;
	border-radius: 3px;
	color: #ffffff;
	content: attr(title);
	padding: 5px;
	text-transform: none;
	transition: all 0.5s ease;
	width: 100px;
}
.flag-link::after {
	position: absolute;
	top: -4px;
	left: 50%;
	margin-left: -3px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #2B222A;
	content: "";
	font-size: 0;
	line-height: 0;
	margin-left: -5px;
	width: 0;
}
.flag-link::before,
.flag-link::after {
	color: #efefef;
	font-family: monospace;
	font-size: 12px;
	opacity: 0;
	pointer-events: none;
	text-align: center;
}
.flag-link:focus::before,
.flag-link:focus::after,
.flag-link:hover::before,
.flag-link:hover::after {
	opacity: 1;
	transition: all 0.75s ease;
}
.js-flag-message {
	position: absolute;
	display: block;
	width: 200px;
	text-align: center;
	right: 40px;
	top: 40px;
	z-index: 999;
	font-size: 11px;
	font-style: italic;
}



/**********************/
/* DRUPAL COMMERCE */
/**********************/
/* CART */
.cart-form tbody tr td,
.cart-form thead tr th {
	text-align: center;
	border: none;
}
td.subtotal-title {
	padding: 10px 0 10px 5px;
}
.cart-form .delete-order-item {
	background-image: url("../images/close.png");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	background-color: transparent !important;
	background-size: 15px;
	padding: 8px;
	box-shadow: none;
	border: none;
}
.cart--cart-block,
.cart-block--summary {
	position: relative;
}
.cart-block--summary__count {
	display: block;
	position: absolute;
	top: -8px;
	right: -10px;
	line-height: 20px;
	width: 20px;
	height: 20px;
	background-color: var(--bs-primary);
	text-align: center;
	border-radius: 50%;
	font-size: 10px;
	color: #ffffff;
}
.cart-block--contents {
	width: 300px;
	right: 0;
	padding: 0;
	margin-top: 20px;
	color: #555555;
	background: #ffffff;
	border: 1px solid #eaeaea;
	box-shadow: 0 5px 9px rgba(0, 0, 0, 0.1);
	text-align: left;
}
.cart-block--contents__inner {
	padding: 15px;
}
.cart-block--contents__items {
	overflow-x: hidden;
	overflow-y: auto;
	max-height: 300px;
	font-size: 12px;
}
.light-cart_icon i {
	color: #ffffff;
}
.cart--cart-block img {
	width: 60px;
}
.cart--cart-block table,
.cart--cart-block table tbody,
.cart--cart-block tbody tr td,
.layout-checkout-form .layout-region-checkout-secondary table tbody,
.layout-checkout-form .layout-region-checkout-secondary tbody tr td {
	border: none;
}
.cart--cart-block table tr {
	border-bottom: 1px solid #f3f3f3;
}
.cart--cart-block tbody tr td {
	padding: 8px 5px;
}
.cart--cart-block td.views-field-quantity {
	padding-right: 0;
}
.cart--cart-block .cart-block-count {
	position: absolute;
	top: 0;
	left: 15px;
	display: table;
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-size: 9px;
	background: #eaeaea;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
}
.cart--cart-block .cart-block-link {
	font-weight: 600;
	margin-top: 10px;
	text-align: right;
	padding: 5px;
	line-height: normal;
}
.cart--cart-block .cart-block-link a {
	padding: 0 25px;
	background-color: var(--bs-primary);
	color: #ffffff;
	height: 40px;
	line-height: 40px;
	text-align: center;
	display: block;
}
.cart--cart-block .cart-block-link a:hover {
	color: #ffffff;
	background-color: #333333;
}
.cart--cart-block .cart-block-empty {
	padding: 20px;
}
.page-title .field-order-number .field__label,
.page-title .field-order-number .field-item {
	float: none;
	display: inline-block;
}

/* CHECKOUT */
label,
.customer-information .field_label,
.customer-information .field__label {
	font-weight: 600;
}
.commerce-checkout-flow legend {
	border-bottom: 2px solid #d7d7d7;
	padding-bottom: 5px;
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: 600;
	color: var(--bs-primary);
}
.commerce-checkout-flow .form-composite > legend {
	border: none;
	font-size: inherit;
	color: inherit;
	border-bottom: 1px solid #f4f4f4;
}
.commerce-checkout-flow input:not(.button),
.commerce-checkout-flow .form-select {
	width: 100%;
}
.commerce-checkout-flow input.form-radio {
	width: auto;
}
.commerce-checkout-flow .address-container-inline {
	display: flex;
	width: 100%;
}
.commerce-checkout-flow .address-container-inline .form-item {
	width: 100%;
	margin-right: 15px;
}
div.address-container-inline > .form-item:last-child {
	margin-right: 0;
}
.credit-card-form__expiration .form-select {
	min-width: 90px;
}
#shipping-information-wrapper {
	margin-bottom: 60px;
}
.checkout-pane-shipping-information .button {
	margin-top: 20px;
}
.layout-checkout-form .layout-region-checkout-secondary img {
	width: 70px;
	overflow: hidden;
}
.layout-region-checkout-secondary {
	margin-bottom: 30px;
}

table,
.table {
	margin: 0;
}
.layout-region-checkout-secondary .order-total-line {
	border-bottom: none;
}
.order-total-line,
.order-total-line__total {
	padding: 10px;
	color: var(--bs-dark);
}
.order-total-line__total {
	background-color: #efefef;
	font-weight: 500;
}
.layout-checkout-form .order-total-line__total {
	background-color: #efefef;
}
table .views-field-edit-quantity .form-item,
table .views-field-remove-button .button {
	margin: 0;
}
.checkout-pane-order-summary {
	padding: 40px 25px;
	background-color: #f8f8f8;
}
.layout-checkout-form .layout-region-checkout-secondary table tr {
	border-bottom: 1px solid #efefef;
}
.checkout-pane-review .fieldset-legend a {
	color: #27b160;
}
.layout-checkout-form .form-actions a {
	font-weight: 600;
	margin-left: 10px;
}
.checkout-progress--step:before {
	content: counter(checkout-progress) "";
	counter-increment: checkout-progress;
	display: inline-block;
	width: 25px;
	height: 25px;
	text-align: center;
	line-height: 25px;
	margin-right: 8px;
	background-color: #f6f6f6;
}
.checkout-progress .checkout-progress--step__current:before,
.checkout-progress .checkout-progress--step__previous:before {
	background-color: #27b160;
	color: #ffffff;
}
.field--name-purchased-entity {
	margin-bottom: 25px;
}

.commerce-order-item-add-to-cart-form .field--name-quantity,
.commerce-order-item-add-to-cart-form .field--name-quantity .form-type-number {
	position: relative;
}
.commerce-order-item-add-to-cart-form input[type=number]::-webkit-inner-spin-button,
.commerce-order-item-add-to-cart-form input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.commerce-order-item-add-to-cart-form input[type=number] {
	-moz-appearance: textfield;
}
.commerce-order-item-add-to-cart-form .field--name-quantity input {
	width: 50px;
	height: 45px;
	line-height: 45px;
	display: block;
	margin: 0;
	padding: 0;
	margin-left: 50px;
	border-radius: 0;
	text-align: center;
}
.commerce-order-item-add-to-cart-form .field--name-quantity input:focus {
	outline: 0;
}
.commerce-order-item-add-to-cart-form .field--name-quantity input,
.quantity-button {
	border: 1px solid #eeeeee;
}
.quantity-button {
	position: absolute;
	bottom: 0;
	left: 0;
	cursor: pointer;
	width: 50px;
	height: 45px;
	line-height: 43px;
	text-align: center;
	font-size: 17px;
	font-weight: 600;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}
.quantity-button.quantity-up {
	left: 100px;
	border-left: none;
	border-radius: 0 3px 3px 0;
}
.quantity-button.quantity-down {
	border-right: none;
	border-radius: 3px 0 0 3px;
}
.product-post legend,
.product-post label {
	margin-bottom: 10px;
	display: block;
}
.product--rendered-attribute {
	margin-bottom: 15px;
}
.product--rendered-attribute .form-item {
	margin: 0;
	margin-right: 2px;
	padding: 0;
}
.product--rendered-attribute .form-item:last-child {
	margin-right: 0;
}
.product--rendered-attribute label {
	margin-bottom: 0;
}
.product--rendered-attribute label.option .product-attribute {
	border: 1px solid #eaeaea;
	background-color: #ffffff;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 10px;
	color: #555555;
	padding: 5px 10px;
	border-radius: 20px;
}
.product--rendered-attribute label.option .product-attribute--color,
.product--rendered-attribute label.option .product-attribute--size {
	padding: 2px !important;
}
.product--rendered-attribute label.option,
.product--rendered-attribute__selected ~ label.option {
		border: none !important;
}
.product--rendered-attribute label.option .product-attribute--color,
.product--rendered-attribute label.option .product-attribute--size,
.product--rendered-attribute label.option .product-attribute--color .field__item,
.product--rendered-attribute label.option .product-attribute--size .field__item,
.product-badge .badge-label {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	position: relative;
	overflow: hidden;
}
.product--rendered-attribute label.option .product-attribute--color .field__item,
.product--rendered-attribute label.option .product-attribute--color .color_field__swatch {
	padding: 0 !important;
	height: 28px !important;
	width: 28px !important;
	line-height: 28px;
}
.product--rendered-attribute label.option .product-attribute--size .field__item {
	padding: 0 !important;
	height: 24px !important;
	width: 24px !important;
	line-height: 24px;
}
.product--rendered-attribute label.option:hover .product-attribute,
.product--rendered-attribute__selected ~ label.option .product-attribute {
	border-color: var(--bs-dark);
}
.product--rendered-attribute__selected ~ label.option .product-attribute {
	background-color: var(--bs-dark);
	color: #ffffff;
}
.product--rendered-attribute label.option .product-attribute--color {
	background-color: #ffffff !important;
	color: initial;
}

.product--rendered-attribute label.option .product-attribute {
	padding: 4px 8px;
}
.product-teaser .product--rendered-attribute label.option .product-attribute--color .field__item,
.product-teaser .product--rendered-attribute label.option .product-attribute--size .field__item {
	height: 22px !important;
	width: 22px !important;
	line-height: 22px;
}
.product-teaser .product--rendered-attribute label.option .product-attribute--size .field__item {
	height: 20px !important;
	width: 20px !important;
	line-height: 20px;
}

/**********************/
/* PRODUCTS */
/**********************/
.product-title {
	font-weight: 500;
	line-height: 1.2;
	color: #333333;
}
.product-post .product-title {
	font-size: 20px;
}
.product-post .field-field-short-description {
	border-top: 1px solid #eaeaea;
	margin-top: 15px;
	padding-top: 30px;
}
.product-item-wrap {
	border: 1px solid #fcfcfc;
	margin-bottom: 30px;
	background-color: #ffffff;
	padding: 10px;
}
.product-item,
.product-list-meta {
	overflow: hidden;
	position: relative;
}
.product-list-meta {
	padding: 10px 0 0 0;
	display: block;
	height: 110px;
	text-align: center;
}
.product-post .commerce-order-item-add-to-cart-form .field--name-quantity {
	width: 160px;
}
.product-post .product-add-cart .form-actions {
	margin-top: 0;
	margin-bottom: 0;
	position: relative;
	width: calc(100% - 160px);
}
.product-post .product-add-cart .form-actions,
.commerce-order-item-add-to-cart-form .field--name-quantity {
	float: left;
}
.product-post .commerce-order-item-add-to-cart-form .field--name-quantity label {
	display: none;
}
.product-post .product-content-wrap .form-actions input[type="submit"] {
	width: 100%;
	padding: 0 15px;
	height: 45px;
	border-radius: 3px;
	transform: none !important;
}
.product-item .btn,
.product-item .button {
	padding: 15px;
	border-radius: 0;
	font-size: 12px;
	line-height: 1;
}
.product-item .product-detail-btn {
	margin-top: 50%;
	padding: 12px 15px;
}
.product-item .button,
.product-item .product-add-cart {
	display: block;
	width: 100%;
}
.product-item-wrap .form-item-qty {
	display: none !important;
	visibility: hidden !important;
}
.product-item:hover .product-add-cart,
.product-item:hover .product-add-cart .button {
	margin: 0;
}
.product-meta {
	padding: 10px 0;
}
.product-price,
.product-old-price {
	display: inline-block;
}
.product-price {
	color: var(--bs-primary);
	font-weight: 500;
}
.product-old-price {
	font-weight: normal;
	font-size: 14px;
	margin-right:5px;
	color: #b3b3b3;
}
.product-post .product-meta {
	border-top: 1px solid #f0f0f0;
	margin-top: 20px;
	padding-top: 20px;
}
.product-post .product-meta .form-item-qty label {
	display: none;
}
.product-post .product-icon-wrap,
.product-post .product-icon,
.product-post .product-add-cart {
	display: inline-block;
}
.product-post .product-variation-wrap {
	position: relative;
	margin-top: 20px;
}
.product-post .product-add-cart {
	width: 100%;
}
.product-post .product-price-wrap {
	margin-bottom: 10px;
}
.product-post .product-price {
	font-size: 25px;
}
.product-post .product-old-price {
	font-size: 17px;
}
.product-post .product-meta .field--label-inline .field__label {
	min-width: 110px;
	font-weight: 500;
	color: var(--bs-dark);
}
.product-post .product-meta .product-meta-item {
	margin-bottom: 7px;
}
.product-post .product-icon {
	margin-right: 10px;
	padding-right: 20px;
	position: relative;
}
.product-post .product-icon:last-child {
	margin: 0;
	padding: 0;
}
.product-post .product-icon:after {
	content: "|";
	position: absolute;
	right: 0;
	top: 3px;
	line-height: 13px;
	opacity: 0.3;
}
.product-post .product-icon:last-child:after {
	display: none;
}
.product-post .product-icon i,
.product-post .product-icon .flag-title {
	display: block;
	float: left;
	line-height: 15px;
}
.product-post .product-icon i {
	height: auto;
	width: auto;
	font-size: 15px;
	margin-right: 10px;
}
.product-post .field-sku,
.product-post .field-field-stock-level {
	display: inline-block;
}
.product-post .field-field-stock-level p {
	margin: 0;
}
.product-post .product-stock,
.product-post .product-stock.out-stock .available-stock,
.product-post .product-stock.in-stock .out-of-stock {
	display: none;
}
.product-post .product-stock .available-stock,
.product-post .product-stock .out-of-stock {
	display: inline-block;
	font-size: 13px;
	padding: 5px 10px;
	border-radius: 3px;
	line-height: 1;
}
.product-post .product-stock .out-of-stock {
	color: red;
	background-color: rgb(255, 0, 0, .1);
}
.product-post .product-stock .available-stock {
	color: green;
	background-color: rgb(0, 128, 0, .1);
}

.product-info .panel-heading .panel-title > a:after {
	left: auto;
	right: 0;
	border: none;
}
.product-info .panel-heading .panel-title > a {
	padding: 12px 45px 12px 0;
	border: none;
	border-bottom: 1px solid #eeeeee;
	font-weight: 600;
	font-size: 20px;
}
.product-info .panel-group .panel-heading + .panel-collapse .panel-body {
	border: none;
	padding: 20px 0;
}

.slider-nav {
	position: relative;
	overflow: hidden;
	margin-top: 10px;
}
.slider-nav .slick-slider {
	margin-left: -5px;
	margin-right: -5px;
}
.slider-nav .slick-slide {
	padding: 0 5px;
}

/* PRODUCT TEASER */
.product-teaser {
	position: relative;
	width: 100%;
	background-color: transparent;
}
.product-teaser .product-image {
	position: relative;
	overflow: hidden;
}
.product-teaser,
.product-teaser .product-add-cart,
.product-teaser .product-meta-wrap,
.product-teaser input[type="submit"],
.product-teaser .commerce-order-item-add-to-cart-form .form-actions .cart-link-icon,
.product-teaser .product-price-container,
.product-teaser .commerce-order-item-add-to-cart-form,
.product-teaser .commerce-order-item-add-to-cart-form .form-actions,
.product-teaser .product-image img,
.product-teaser .product-icon-wrap {
	-webkit-transition: 0.5s;
	-khtml-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
/* PRODUCT TEASER ICON PLACEMENT */
.product-teaser .product-icon-wrap {
	position:absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
}
.product-teaser .product-icon {
	display: inline-block;
	text-align: center;
	margin-bottom: 5px;
	transform: translateX(60px);
	opacity: 0;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.product-teaser .product-icon:last-child {
	margin-bottom: 0;
}
.product-teaser .product-icon i {
	width: 40px;
	height: 40px;
	line-height: 40px;
	display: block;
	box-shadow: 0 15px 25px rgba(0,0,0,.08);
	background-color: #ffffff;
	color: #555555;
	border-radius: 50%;
}
.product-teaser .product-image .product-icon:nth-child(2) {
	transition: all 0.5s;
}
.product-teaser .product-image .product-icon:nth-child(3) {
	transition: all 0.5s 0.2s;
}
.product-teaser .product-image .product-icon:nth-child(4) {
	transition: all 0.5s 0.4s;
}
.product-teaser .product-icon:hover i {
	background: #333333;
	color: #ffffff;
}
.product-teaser .product-icon .action-unflag i {
	background: var(--bs-primary);
	color: #ffffff;
}
.product-teaser:hover .product-icon {
	opacity: 1;
	transform: translateX(0px);
}
.product-teaser .flag-link::before {
	top: 6px;
	left: auto;
	right: 46px;
	margin: 0;
}
.product-teaser .flag-link::after {
	top: 50%;
	left: -6px;
	margin-top: -4px;
	margin-left: 0;
	border-left: 5px solid #2B222A;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}

.product-icon i {
	font-size: 17px;
}
.product-icon .flag-title {
	display: none;
}

.product-teaser .product-meta-wrap {
	padding: 15px 0 0 0;
	position: relative;
}
.product-teaser .product-meta {
	padding: 0;
}
.product-teaser .product-title {
	width: 100%;
	margin-bottom: 5px;
}
.product-teaser .product-title .field--name-title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.product-teaser .product-ratings {
	margin-bottom: 5px;
}
.product-teaser:hover .product-badge {
	z-index: 1;
}
.product-teaser .product-price {
	font-size: 16px;
}
.product-teaser .product-add-cart,
.product-teaser .commerce-order-item-add-to-cart-form {
	padding: 0;
	margin: 0;
	position: relative;
}
.product-teaser .product-add-cart {
	margin-top: 12px;
}
.product-teaser-no-attribute .product-variation-wrap .form-item,
.product-teaser.has-no-options .has-option-variation .form-actions,
.product-teaser.has-options .has-no-option-variation .form-actions {
	display: none;
}
.product-teaser .product-add-cart .form-actions {
	position: absolute;
	top: -35px;
	left: 0;
	overflow: hidden;
	font-size: 17px;
	z-index: 1;
	margin: 0;
}
.product-teaser .product-add-cart input[type="submit"] {
	padding: 0 0 0 22px !important;
	border: none !important;
	background-color: transparent !important;	
}
.product-teaser .product-add-cart .form-actions .button--add-to-cart,
.product-teaser .product-add-cart .form-actions .button-product-select {
	font-size: 17px;
	font-weight: 500;
	line-height: 1;
	color: var(--bs-primary) !important;
}
.product-teaser .product-add-cart .form-actions .cart-link-icon {
	position: absolute;
	left: 0;
	color: var(--bs-primary);
}
.product-teaser .product-add-cart .form-actions .button-product-select i {
	margin-right: 5px;
}
.product-teaser .product-add-cart .form-actions .button--add-to-cart,
.product-teaser .product-add-cart .form-actions .button-product-select,
.product-teaser .product-add-cart .form-actions .cart-link-icon {
	display: block;
	transform: translateY(25px);
}
.product-teaser:hover .product-add-cart .form-actions .button--add-to-cart,
.product-teaser:hover .product-add-cart .form-actions .button-product-select,
.product-teaser:hover .product-add-cart .form-actions .cart-link-icon {
	transform: translateY(0px);
}
.product-teaser:hover .product-price-wrap {
	position: relative;
	overflow: hidden;
}
.product-teaser:hover	.product-price-container {
	transform: translateY(-25px);
}
.product-teaser .commerce-order-item-add-to-cart-form .field--name-quantity,
.product-teaser .field--name-purchased-entity legend {
	display: none !important;
}

.product-teaser .product--rendered-attribute {
	margin-bottom: 10px;
}
.product-teaser .attribute-widgets .product--rendered-attribute:last-child,
.product-teaser .field--name-purchased-entity {
	margin-bottom: 0;
}
.product-teaser .product--rendered-attribute .form-item {
	vertical-align: top;
}

.taxonomy-term.vocabulary-brand {
	background: #eeeeee;
	padding: 20px;
	float: left;
	margin-bottom: 25px;
	width: 100%;
}
.path-taxonomy .taxonomy-term.vocabulary-brand .field-description {
	padding-top: 20px;
}
.views-element-container header {
	margin-bottom: 15px;
}
.product-catalog header {
	margin-bottom: 0;
}

/* LIST GRID SWITCH */
.product-catalog .switch-icon {
	position: absolute;
	top: 15px;
	left: 0;
}
.switch-icon span {
	display: inline-block;
	margin-right: 5px;
	cursor: pointer;
}
.switch-icon .active {
	color: var(--bs-primary);
}
.list-grid {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}
.list-grid .product-teaser-container {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.list-grid .product-teaser .product-image {
	-ms-flex: 0 0 30%;
	flex: 0 0 30%;
	max-width: 30%;
}
.list-grid .product-teaser .product-meta-wrap {
	-ms-flex: 0 0 70%;
	flex: 0 0 70%;
	max-width: 70%;
	text-align: left;
}
.list-grid .product-teaser .product-meta-wrap {
	padding: 25px 15px 15px 30px;
}
.list-grid .product-teaser .product-add-cart .form-actions {
	transform: none !important;
	opacity: 1;
	bottom: 0;
}
.list-grid .product-teaser .product-teaser-bg,
.product-teaser .product-desc {
	display: none;
}
.list-grid .product-teaser .product-desc {
	display: block;
}
.list-grid .product-teaser .product-desc,
.list-grid .product-teaser .product-desc p {
	margin-top: 8px;
}
.list-grid .product-teaser .product-title {
	font-size: 17px;
}
.list-grid .product-teaser .product-add-cart {
	padding-bottom: 42px;
}
.list-grid .product-teaser:hover .product-price-wrap {
	opacity: 1;
}
.product-list-wrap {
	text-align: left;
	width: 100%;
}
.product-list-wrap:hover {
	-webkit-transform: scale(0.99);
	transform: scale(0.99);
	-webkit-box-shadow: 0 0 8px rgba(0,0,0,0.07);
	box-shadow: 0 0 8px rgba(0,0,0,0.07);
}
.product-list-wrap .product-teaser {
	margin: 0;
	padding: 0;
}
.product-list-wrap .product-image,
.product-list-wrap .product-meta-wrap {
	padding: 5px 15px;
}
.product-list-wrap .product-meta-wrap {
	padding-top: 20px;
}
.product-list-wrap .product-image .field-field-image {
	display: table;
	width: 100%;
	height: 100%;
}
.product-list-wrap .product-image .field-field-image .field-item {
	display: table-cell;
	vertical-align: middle;
}
.product-list-wrap .product-ratings {
	margin-top: 0;
	margin-bottom: 5px;
}

/* PRODUCT CATEGORY IMAGE */
.product-category {
	position: relative;
	overflow: hidden;
}
.product-category .product-category-name-wrap {
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 10px;
	z-index: 1;
}
.product-category-name-wrap a {
	display: block;
	background-color: #ffffff;
	padding: 10px 15px;
	text-align: center;
	border-radius: 2px;
}
.product-category:hover .product-category-name-wrap a {
	background-color: var(--bs-dark);
	color: #ffffff;
}
.product-category .product-category-name {
	display: flex;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 500;
}
.product-category .product-category-count {
	background-color: var(--bs-dark);
	display: block;
	color: #ffffff;
	width: 20px;
	height: 20px;
	line-height: 20px;
	border-radius: 50%;
	font-size: 11px;
	margin-left: 10px;
	position: relative;
}
.product-category:hover .product-category-name-wrap a .product-category-count {
	color: var(--bs-dark);
	background-color: #ffffff;
}

/* PRODUCT BRAND */
.brand-logo img {
	-webkit-transition: 0.5s;
	transition: 0.5s;
	opacity: 0.6;
}
.brand-logo:hover img {
	opacity: 1;
}
.grid-item .brand-logo {
	padding: 15px 30px;
	border: 1px solid rgba(0,0,0,0.02);
	margin-top: -1px;
	margin-left: -1px;
}

/* PRODUCT BADGES */
.product-badge {
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 1;
}
.product-badge .badge-label {
	font-size: 12px;
	text-align:center;
	display: block;
	color: #ffffff;
	width: 45px;
	height: 45px;
	line-height: 45px;
}
.product-badge .badge-new {
	background-color: #00a500;
}
.product-badge .badge-sale {
	background-color: #1f35ff;
}
.product-badge .badge-hot {
	background-color: #ff4e00;
}
.product-icon-left .product-badge {
	left: auto;
	right: 10px;
}
.btn-curve .product-badge .badge-label {
	height: auto;
	line-height: 24px;
}

/* RATING STARS */
.product-ratings .form-item {
	margin: 0;
}
.product-ratings .vote-form input,
.product-ratings .vote-form .form-select,
.product-ratings .vote-form .form-submit {
	display: none;
}
.br-theme-css-stars .br-widget {
	height: 20px;
	line-height: 20px;
}
.product-teaser .br-theme-css-stars .br-widget {
	height: 20px;
}
.product-teaser .br-theme-css-stars .br-widget a {
	float: none;
	font-size: 20px;
	margin-right: 1px;
	line-height: 1;
}
.br-theme-css-stars .br-widget a:last-child {
	margin-right: 0;
}
.br-theme-css-stars .br-widget a.br-selected:after {
	color: #f6d000;
}
.vote-result {
	color: #999999;
	font-size: 13px;
}
.vote-result p {
	margin-bottom: 0;
}

.product-category-link {
	position: relative;
	display: inline-block;
	padding-right: 25px;
}
.product-category-link .list-count {
	position: absolute;
	right: 0;
	top: 3px;
	width: 15px;
	height: 15px;
	background-color: #333333;
	color: #ffffff;
	text-align: center;
	line-height: 17px;
	font-size: 9px;
}

/* FACETS */
.item-list__checkbox,
.facet-list,
.js-facets-widget {
	padding: 0;
}
.facet-item {
	list-style-type: none;
	width: 100%;
	padding-top: 5px;
	padding-bottom: 5px;
}
.facets-checkbox {
	margin: 4px 0 0;
	margin-top: 1px;
	line-height: normal;
	display: inline-block;
	top: 3px;
	width: 15px;
	height: 15px;
	position: relative;;
}

.js-facets-checkbox-links label {
	margin: 0;
	font-weight: normal;
}
.facet-item label span {
	display: inline-block;
}
.facet-item__count {
	font-size: 13px;
	margin-left: 2px;
}
.facet-list .is-active {
	color: #222222;
	font-weight: 600;
}
.facet-list .is-active .js-facet-deactivate {
	color: var(--bs-primary);
}

.facet-list .toggle-btn {
	padding: 0;
	border: none;
	background: none;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-top: 5px;
}
/* CHECKBOXES */
.facet-list [type="checkbox"] {
	position: absolute;
	left: -9999px;
	visibility: hidden;
}
.facet-list [type="checkbox"] + label {
	position: relative;
	display: inline-block;
	padding-left: 30px;
	line-height: 20px;
	cursor: pointer;
	-webkit-user-select: none; 
}
.facet-list [type="checkbox"] + label:before,
.facet-list [type="checkbox"] + label:after {
	position: absolute;
	left: 0;
	z-index: 1;
	content: "";
	-webkit-transition: background-color .25s;
	transition: background-color .25s; 
}
.facet-list [type="checkbox"] + label:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	margin-top: 2px;
}
.facet-list [type="checkbox"]:not(:checked) + label:before {
	top: 10px;
	left: 6px;
	width: 0;
	height: 0;
	border: 3px solid transparent;
	-webkit-transform: rotateZ(45deg);
	-ms-transform: rotate(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 100% 100%;
	-ms-transform-origin: 100% 100%;
	transform-origin: 100% 100%;
}
.facet-list [type="checkbox"]:not(:checked) + label:after {
	top: 0;
	z-index: 0;
	width: 20px;
	height: 20px;
	border: 2px solid #babad3;
	background-color: transparent;
}
.facet-list [type="checkbox"]:checked + label:before {
	top: 1px;
	left: 2px;
	width: 6px;
	height: 12px;
	border-top: 2px solid transparent;
	border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	border-left: 2px solid transparent;
	-webkit-transform: rotateZ(45deg);
	-ms-transform: rotate(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 100% 100%;
	-ms-transform-origin: 100% 100%;
	transform-origin: 100% 100%;
}
.facet-list [type="checkbox"]:checked + label:after {
	top: 0;
	z-index: 0;
	width: 20px;
	height: 20px;
	border: 2px solid #2ba9e0;
	background-color: #2ba9e0;
}
.facet-list [type="checkbox"]:disabled + label {
	color: #777777;
	cursor: not-allowed;
}
.facet-list [type="checkbox"]:disabled:checked + label:after {
	opacity: 0.3;
}

/* VIEWS EXPOSED FILTER */
.views-exposed-form {
	margin-bottom: 15px;
	padding: 0;
}
.views-exposed-form form {
	display: flex;
	background-color: #ffffff;
}
.views-exposed-form form .form-item * {
	color: #555555 !important;
}
.views-exposed-form .form-item,
.views-exposed-form .form-actions {
	display: inline-block;
	margin: 0 0 0 5px;
	float: none;
}
.views-exposed-form select {
	padding-left: 15px;
	border: 1px solid #ecedee;
	display: inline-block;
	width: auto;
}

.header .views-exposed-form {
	margin-bottom: 0;
}
.header .views-exposed-form form {
	border: 1px solid #eaeaea;
	max-width: 600px;
	position: relative;
	padding-right: 50px;
}
.header .views-exposed-form input,
.header .views-exposed-form .nice-select {
	border: none;
	margin-top: 0;
	height: 48px;
	line-height: 48px;
	width: 100%;
}
.header .views-exposed-form .nice-select {
	border: none;
	min-width: 130px;
}
.header .views-exposed-form .form-item {
	position: relative;
}
.header .views-exposed-form .form-item:before {
	content: "";
	width: 1px;
	height: 22px;
	background-color: #eaeaea;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -11px;
}
.header .views-exposed-form form .form-item:first-child:before {
	display: none;
}
.header .views-exposed-form .form-item,
.header .views-exposed-form .form-actions {
	margin: 0;
}
.header .views-exposed-form .js-form-type-textfield {
	width: 100%;
}
.header .views-exposed-form .form-actions {
	position: absolute;
	top: -1px;
	right: -1px;
}

.product-catalog .views-exposed-form {
	text-align: right;
}
.product-catalog .views-exposed-form .form-item label {
	text-transform: uppercase;
	font-size: 12px;
	margin-right: 5px;
}
.product-catalog .views-exposed-form .form-item .select-wrapper {
	display: inline-block;
}
.product-catalog .views-exposed-form .form-actions {
	display: none;
}

/**********************/
/* Tabs */
/**********************/
.tab-plain .nav .nav-link {
	border: none;
	color: var(--bs-dark);
}
.tab-plain .nav .nav-link.active {
	font-weight: 600;
}
.tab-plain .nav-tabs,
.tab-btn .nav-tabs {
	border: none;
}
.tab-btn .nav .nav-link {
	padding: 8px 30px;
	color: #010521;
	background: #f0f1f6;
	margin-right: 5px;
	border-radius: 3px;
}
.tab-btn .nav .nav-link.active {
	background: #3452ff;
	color: #ffffff;
	border-radius: 3px;
}

.tab-default .nav .nav-link {
	padding: 8px 30px;
	color: #010521;
}
.tab-default .nav .nav-link.active {
	background: #3452ff;
	color: #ffffff;
}
.tab-border-bottom .nav-link {
	padding-left: 0;
	margin-right: 10px;
	font-size: 18px;
	color: #898b96;
}
.tab-border-bottom .nav-link.active {
	background: transparent;
	color: #3452ff;
}
.tab-border-bottom .nav-link span {
	position: relative;
}
.tab-border-bottom .nav-link span:before {
	content: "";
	position: absolute;
	left: 0;
	width: 0;
	bottom: -2px;
	height: 2px;
	background: #3452ff;
	transition: all 0.4s ease-in-out;
}
.tab-border-bottom .nav-link:hover span:before,
.tab-border-bottom .nav-link.active span:before {
	width: 100%;
}

.tab-box .nav {
	background: #f0f1f6;
	padding: 5px;
	border-radius: 30px;
	display: inline-flex;
}
.tab-box .nav .nav-link {
	padding: 10px 30px;
	color: #898b96;
	border-radius: 30px;
}
.tab-box .nav .nav-link.active {
	background: #ffffff;
	color: #f97204;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.tns-horizontal {
	display: flex;
}
.tns-horizontal .tns-item {
	flex: 0 0 auto;
}


/* Ajax Progress */
.ajax-progress {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(255,255,255,.4);
	z-index: 9;
	display: flex;
	align-items: center;
	justify-content: center;
}
@keyframes spin {
	from {
		transform: rotate(0);
	}
	to{
		transform: rotate(359deg);
	}
}
.ajax-progress .throbber {
	width: 30px;
	height: 30px;
	border: 3px solid var(--bs-primary);
	border-top: 3px solid transparent;
	border-radius: 50%;
	animation: spin .5s linear 0s infinite;
	background-color: transparent !important;
	background: none !important;
}

/**********************/
/* TABLE */
/**********************/
table {
	width: 100%;
	margin-bottom: 20px;
	border: 1px solid #ecedee;
}
table tbody {
	border-top: none;
	border-bottom: 1px solid #ecedee;
}
table tr.even,
table tr.odd,
th {
	background-color: transparent;
	border-bottom: 1px solid #ecedee;
}
thead tr th,
thead tr td,
tbody tr th,
tbody tr td {
	padding: 8px;
	line-height: 142%;
	vertical-align: middle;
	border-right: 1px solid #efefef;
}
td.active {
	background-color: transparent;
}
table thead th {
	font-weight: 500;
}
table tr {
	border-bottom: 1px solid #eeeeee;
}

.flipped-table table {
	text-align: center;
	table-layout: fixed;
}
.flipped-table table th,
.flipped-table table td {
	border-right: 1px solid #efefef;
	padding: 15px;
}
.flipped-table table th {
	background-color: #f8f8f8;
	font-size: 16px;
	width: 280px;
	padding: 15px 25px;
}
table .flag i {
	display: none;
}

.page-highlighted {
	position: fixed;
	z-index: 99;
	width: 100%;
	bottom: 70px;
}