:root {
	--bs-primary-rgb: 189,18,24;
	--bs-btn-bg: #BD1218;
	--bs-body-font-size: 0.9rem;
}
.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: #BD1218;
	--bs-btn-border-color: #BD1218;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #780e11;
	--bs-btn-hover-border-color: #780e11;
	--bs-btn-focus-shadow-rgb: 156,90,255;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #780e11;
	--bs-btn-active-border-color: #780e11;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(2,6,23,.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #BD1218;
	--bs-btn-disabled-border-color: #BD1218;
}
.btn.btn-primary {
    --bs-btn-font-size: 14px;
    --bs-btn-padding-x: 2.35rem;
}
.offcanvas {
	--bs-offcanvas-width: 560px;
}

body {
	padding-top: 48px;
	font-family: "Libre Baskerville", serif;
}
html {
	scroll-behavior: smooth;
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
	max-width: 1366px;
}

.text-uppercase {
	text-transform: uppercase !important;
}
.pointer {
	cursor: pointer;
}

footer {
	background-color: #BD1218;
}

.libre-baskerville {
	font-family: "Libre Baskerville", serif;
}

#mobileNavBar {
	width: 224px;
}

.homeBanner {
	min-height: 600px;
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: top center;
}
.parallax {
	height: 400px; /* Adjust as needed */
/*	background-attachment: fixed;*/
/*	background-position: center;*/
	background-position: 50% 0px;
	background-repeat: no-repeat;
/*	background-size: cover;*/
	background-size: auto 200%;
}
.valign-wrapper {
	position: relative;
	height: 100%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.valign-wrapper .valign {
	display: block;
}
.loadingOverlay {
	position: absolute;
	top: 0;
	left: 0;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #ffffff;
	z-index: 999;
	min-height: 60px;
}


.product-detail label.radio {
	cursor: pointer;
}
.product-detail label.radio input {
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
	pointer-events: none;
}
.product-detail label.radio span {
	padding: 2px 9px;
	border: 2px solid #BD1218;
	display: inline-block;
	color: #BD1218;
	border-radius: 3px;
	text-transform: uppercase;
}
.product-detail label.radio input:checked + span {
	border-color: #BD1218;
	background-color: #BD1218;
	color: #fff;
}

/*STRIPE*/
.hidden {
	display: none;
}
#payment-message {
	font-size: 16px;
	line-height: 20px;
	padding-top: 12px;
	text-align: center;
	font-weight: bold;
}
#payment-element {
	margin-bottom: 24px;
}

/* Buttons and links */
#payment-form button {
	background: #5469d4;
	font-family: Arial, sans-serif;
	color: #ffffff;
	border-radius: 4px;
	border: 0;
	padding: 12px 16px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	display: block;
	transition: all 0.2s ease;
	box-shadow: 0px 4px 5.5px 0px rgba(0, 0, 0, 0.07);
	width: 100%;
}
#payment-form button:hover {
	filter: contrast(115%);
}
#payment-form button:disabled {
	opacity: 0.5;
	cursor: default;
}

#offcanvasCartBody .input-group button {
	line-height: 0.5;
}
#offcanvasCartBody .input-group button i {
	font-size: 12px;
}

/* spinner/processing state, errors */
.spinner,
.spinner:before,
.spinner:after {
	border-radius: 50%;
}
.spinner {
	color: #ffffff;
	font-size: 22px;
	text-indent: -99999px;
	margin: 0px auto;
	position: relative;
	width: 20px;
	height: 20px;
	box-shadow: inset 0 0 0 2px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
}
.spinner:before,
.spinner:after {
	position: absolute;
	content: "";
}
.spinner:before {
	width: 10.4px;
	height: 20.4px;
	background: #5469d4;
	border-radius: 20.4px 0 0 20.4px;
	top: -0.2px;
	left: -0.2px;
	-webkit-transform-origin: 10.4px 10.2px;
	transform-origin: 10.4px 10.2px;
	-webkit-animation: loading 2s infinite ease 1.5s;
	animation: loading 2s infinite ease 1.5s;
}
.spinner:after {
	width: 10.4px;
	height: 10.2px;
	background: #5469d4;
	border-radius: 0 10.2px 10.2px 0;
	top: -0.1px;
	left: 10.2px;
	-webkit-transform-origin: 0px 10.2px;
	transform-origin: 0px 10.2px;
	-webkit-animation: loading 2s infinite ease;
	animation: loading 2s infinite ease;
}

@-webkit-keyframes loading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes loading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.btn-outline-black {
	font-weight: 600;
	padding: 12px 30px;
	border-radius: 30px;
	color: #ffffff;
	background: #2f2f2f;
	border-color: #2f2f2f;
}

#about #sello {
	display: block;
	width: 40%;
	margin: 0 auto 20px;
}

@media (max-width: 767px) {
	.carousel-inner .carousel-item > div {
		display: none;
	}
	.carousel-inner .carousel-item > div:first-child {
		display: block;
	}
}
.carousel-inner .carousel-item.active,
.carousel-inner .carousel-item-next,
.carousel-inner .carousel-item-prev {
	display: flex;
}

/* medium and up screens */
@media (min-width: 768px) {
	.carousel-inner .carousel-item-end.active,
	.carousel-inner .carousel-item-next {
		transform: translateX(33.33%);
	}
	.carousel-inner .carousel-item-start.active, 
	.carousel-inner .carousel-item-prev {
		transform: translateX(-33.33%);
	}
}

.carousel-inner .carousel-item-end,
.carousel-inner .carousel-item-start { 
	transform: translateX(0);
}

#shareCarousel .card {
	border: none;
}
.mb-6{
	margin-bottom: 3.6rem !important;
}
.carousel-control-next-icon, .carousel-control-prev-icon {
	width: 1rem;
}
.carousel-control-next-icon {
    background-image: url("../img/arrow-right.png");
}
.carousel-control-prev-icon {
    background-image: url("../img/arrow-left.png");
}

@media only screen and (max-width: 575px) {
	#offcanvasCartBody {
		font-size: 8px;
	}
	.valign-wrapper.block-wrapper {
		display: block;
	}
}

@media only screen and (min-width: 576px) {
	#about #sello {
		position: absolute;
		width: 14%;
		top: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		margin: 0;
	}
}

@media only screen and (min-width: 992px) {
	body {
		padding-top: 56px;
	}
	.parallax {
		background-size: 140% auto;
	}
	.homeBanner {
		background-size: 100% auto;
		min-height: auto;
		height: 600px;
	}
	.carousel-control-next, .carousel-control-prev {
		width: 8%;
	}
}



