:root {
	--colRed: #AC141A;
	--colGrey: #70727A;
	--colLightBlue: #BACADD;
	--colBlack: #0E150E;
	--bgTurq: #E9EEF2;
	--bgBlueDark: #0A2240;
	--bgBlueLight: #194986;
}

.w-300 { font-weight: 300!important; }
.w-500 { font-weight: 500!important; }
.w-600 { font-weight: 600!important; }
.hl-black { color: #000!important; }
.hl-red { color: var(--colRed)!important; }
.hl-blue { color: var(--bgBlueLight)!important; }
.hl-grey { color: var(--colGrey)!important; }
.hl-black-s { color: var(--colBlack)!important; }
.bg-turq { background: var(--bgTurq)!important; }
.bg-blue-dark { background: var(--bgBlueDark)!important; }
.bg-blue-light { background: var(--bgBlueLight)!important; }
.bg-white { background: #fff!important; }

.text-underline { text-decoration: underline!important; }
.text-strike { text-decoration: line-through!important; }
.text-italic { font-style: italic!important; }

.no-border { border: none!important}
.br-6 { border-radius: 6px!important; }
.br-8 { border-radius: 8px!important; }
.br-10 { border-radius: 10px!important; }
.br-12 { border-radius: 12px!important; }
.br-20 { border-radius: 20px!important; }

.gap-4 { gap: 4px; }
.gap-6 { gap: 6px; }
.gap-8 { gap: 8px; }
.gap-10 { gap: 10px; }
.gap-12 { gap: 12px; }
.gap-16 { gap: 16px; }
.gap-20 { gap: 20px; }

.m-2x { margin: 2rem !important }
.mt-2x, .my-2x { margin-top: 2rem!important; }
.mr-2x, .mx-2x { margin-right: 2rem!important; } 
.mb-2x, .my-2x { margin-bottom: 2rem!important; } 
.ml-2x, .mx-2x { margin-left: 2rem!important; }

.p-2x { padding: 2rem !important }
.pt-2x, .py-2x { padding-top: 2rem!important; }
.pr-2x, .px-2x { padding-right: 2rem!important; } 
.pb-2x, .py-2x { padding-bottom: 2rem!important; } 
.pl-2x, .px-2x { padding-left: 2rem!important; }

.btn { border-radius: 50px; font-weight: 700; font-size: 1.06666rem; line-height: 1; text-align: center; padding: 14px 20px; }
.btn-sm { padding: 12px 24px; }
.btn-lg { padding: 18px 30px; }
.btn-white {color: #000; background-color: #fff; border-color: #fff; font-weight: 400; }
.btn-white:hover { border-color: #194986; }
.btn-transp { background: #fff; color: #000; border-color: #000; }

.stretch-view { width: 100vw; margin-left: -50vw; left: 50%; position: relative; }
.clamp { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.clamp-2 { -webkit-line-clamp: 2; height: 2.8rem; }
.clamp-3 { -webkit-line-clamp: 3; height: 4rem; }

.f-sm-1 { font-size: .93333rem!important; }
.f-sm-2 { font-size: .86666rem!important; }
.f-sm-3 { font-size: .8rem!important; }

.f-lg-1 { font-size: 1.0666rem!important; }
.f-lg-2 { font-size: 1.1333!important; }
.f-lg-3 { font-size: 1.2rem!important; }

.lh-1 { line-height: 1; }
.lh-20 { line-height: 1.3333; }

.cuico {
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
}

.cuico.cuico-cart { background: url(/img/misc/cuico-cart.png) no-repeat 0 0 / contain; }
.cuico.cuico-check { background: url(/img/misc/cuico-check.png) no-repeat 0 0 / contain; }

.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { justify-content: space-between; }
@media screen and (max-width: 478px) {
	.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,
	.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper { display: flex; align-items: center; margin-bottom: 10px; }
	.elementor-widget-image-box.elementor-position-left .elementor-image-box-content,
	.elementor-widget-image-box.elementor-position-right .elementor-image-box-content { text-align: left; }
	.elementor-widget-image-box.elementor-position-left .elementor-image-box-img { margin-right: 1rem!important; margin-bottom: 0; }
	.elementor-widget-image-box.elementor-position-right .elementor-image-box-img { margin-left: 1rem!important; margin-bottom: 0; order: 2; }

	.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,
	.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { display: flex; align-items: center; margin-bottom: 10px; }
	.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-content,
	.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-content { text-align: left; }
	.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon { margin-right: 1rem!important; margin-bottom: 0; }
	.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon { margin: 0 0 0 1rem!important; order: 2; }
}