/* Custom Code for Cisero Theme 
/* Based on Bootstrap 5.3 
/* 25.03.2023 by @zen */

body {
	font-family: "Source Sans 3", "Helvetica", "Arial", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 400;
}

b, strong {
	font-weight: 500;
}

main {
	background-color: var(--bs-white);
}

a {
	color: var(--bs-gray-900);
	text-decoration: none;
}

a:hover {
	color: var(--bs-gray-600);
	text-decoration: none;
}

.btn:hover a {
	color: #fff;
}

.btn.btn-primary {
	background-color: #6E12C8;
	border-color : #4d0d8c;
}

.btn.btn-primary:hover {
	background-color: #B71DF9;
	border-color : #8d05c7;
}

a, .nav-link {
	cursor: pointer;
}

.lost_password a:hover {
	text-decoration: underline;
}
.page-subheading {
	font-weight: 600;
}
.text-smaller {
	font-size: smaller;
}
.text-center {
	text-align: center !important;
}
.clearfix {
    display: block;
    clear: both;
    content: "";
}
#shop-logo a img {
	max-width: 190px;
	height: auto;
	width: 100%;
	transition: all 0.3s ease-in-out;
}

.navbar-dark .navbar-nav .nav-link {
	color: var(--bs-white);
	font-weight: 600;
}

#slogan {
	text-transform: uppercase;
	padding: 8px;
	letter-spacing: 2px;
}

#slogan p span {
	text-transform: initial;
	font-weight: 100;
	letter-spacing: 0;
}

#headertopmenu, #header-blocks {
	transition: all 0.3s ease;
}

#headertopmenu.sticky {
	margin-top: 0;
}

#topmenu .dropdown-item {
	font-size: 14px;
	padding: 8px 22px;
}

#top_column {
	position: relative;
}

#columns {
	margin-top: 2rem;
}

#center_column #hometext {
	font-size: 1.8rem;
	font-weight: 800;
	letter-spacing: 1px;
	line-height: 3rem;
	color: #210594;
	padding-top: 0 !important;
}

.homepage_sepline {
	max-width: 920px;
	margin: auto;
}

.homepage_text {
	padding: 15px;
	margin: 30px auto 20px;
	font-size: 150%;
	color: #00375f;
	font-weight: 600;
	max-width: 1000px;
	text-align: justify;
}

.homeimg_content {
	max-width: 1000px;
	margin: auto;
	display: block;
}

 .hero-section {
    background-color: var(--light-bg);
    padding: 2rem 0;
    border-radius: 0.5rem;
    margin-bottom: 3rem;
}
        
.product-card {
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    margin-bottom: 2rem;
}
    
.product-card:hover {
    transform: translateY(-5px);
}
    
.product-card img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}
        
.product-card .card-body {
   padding: 1.5rem;
}
        
.btn-custom {
    background-color: var(--primary-color);
    border: none;
    padding: 0.8rem 1.5rem;
    border-radius: 2rem;
    font-weight: 500;
    transition: all 0.3s ease;
}
        
.btn-custom:hover {
    background-color: var(--secondary-color);
    transform: scale(1.05);
}
        
.feature-icon {
    font-size: 2.5rem;
    color: var(--accent-color);
    margin-bottom: 1rem;
}
        
.section-divider {
    height: 3px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    margin: 3rem 0;
    border-radius: 3px;
}
        
.list-custom li {
    margin-bottom: 0.8rem;
    position: relative;
    padding-left: 1.5rem;
}
    
.list-custom li:before {
    content: '✓';
    color: var(--secondary-color);
    position: absolute;
    left: 0;
    font-weight: bold;
}
        
.handymessage-section {
    background-color: #e9f7f6;
    border-radius: 0.5rem;
    padding: 2rem;
    margin-top: 3rem;
    border-left: 5px solid var(--secondary-color);
}

.page-heading {
	text-transform: uppercase;
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 2rem;
}
.product-name {
	font-size: 1.3rem;
	margin-bottom: 0.5rem;
}
.cart_ref,
.cart_att {
	font-weight: lighter;
	font-size: 0.8rem;
}
.cart_total {
	    min-width: 75px;
}
.unvisible {
	display: none;
}
.heading-counter {
	font-size: 0.4em;
	margin-top: 10px;
}
#order_step,
#order_step .nav-link {
	color: var(--bs-secondary);
	background: #eee !important;
	border-radius: 0 !important;
}
#order_step .nav-link.completed {
	color: var(--bs-dark);
	background: #ccc !important;
	height: 100%;
}
#order_step .nav-link.active {
	color: var(--bs-white);
	background: #292929 !important;
	height: 100%;
}
.address.card-body p {
	margin-bottom: 2px;
}
ul.price {
	list-style-type: none;
	padding: 0;
}
ul.address {
	list-style-type: none;
}

.cart_quantity_button .btn-outline-dark {
	border: var(--bs-border-width) solid var(--bs-border-color);
	padding: 0 13px;
}

body.identity .input-group-text {
	min-width: 12rem;
}

/* Footer */

#footer, #footer a,
#copyright-footer {
	color: var(--bs-white);
	text-decoration: none;
	width: 100%;
	font-weight: 300;
	font-size: 14px;
	line-height: 33px;
}

#footer .title_block, #footer #headingMyaccountfooter a,
#footer .accordion-button {
    color: #fff;
	font-weight: 500;
	letter-spacing: 0.5px;
	font-size: 16px;
}

#footer .accordion-button::after {
	filter: brightness(0) invert(1);
}

#footer .accordion {
	--bs-accordion-bg: inherit;
	--bs-accordion-btn-bg: inherit;
}

#footer .accordion-item {
	border: 0;
}

#footer .accordion-button:not(.collapsed) {
	color: #f0bc10;
	background-color: inherit;
	box-shadow: none;
}

#footer .accordion-header button.accordion-button:hover,
#footer #headingMyaccountfooter a:hover {
	color: #f0bc10;
}

#footer .logofoot img {
	max-height: 210px;
	width: auto;
}

@media (min-width: 768px) {
	#footer .collapse {
    	display: block;
    	height: auto !important;
    	visibility: visible;
  	}
	#footer .accordion-button {
		display: none;
	}
	#footer .accordion-item {
		border: 0;
		color: ;
		background: none;
	}
	#footer .accordion-body {
		padding-left: 0;
	}
}

@media (max-width: 767.98px) {
	#footer .accordion-body {
		padding: 5px 10px;
	}
	#footer .accordion-button {
		width: calc(100% + 20px);
		margin-left: -10px;
	}
}

/* copyright Footer */

#copyright-footer {
	border-top: 1px solid #333;
}

#copyright-footer .foot-payment {
	margin-bottom: 0;
}

.foot-payment li {
	display: inline-block;
	vertical-align: middle;
}

.foot-payment li a {
	font-size: 26px;
	color: #aaa;
}

.foot-payment li a:hover {
	color: #fc4f7d;
}

.foot-payment li i {
	margin: 0 5px;
	transition: 0.3s ease;
}

/* Scoll to TOP */

#scrolltop {
	position: fixed;
	bottom: 60px;
	right: 20px;
	font-size: 18px;
	color: #fff;
	cursor: pointer;
	z-index: 30;
	background: #f0bc10;
	width: 40px;
	height: 40px;
	overflow: hidden;
	display: block;
	text-align: center;
	opacity: 1;
	transition: all 0.5s ease-in-out 0s;
	transform: scale(1);
	padding: 5px 0;
	border-radius: 4px;
}

#scrolltop .fa.fa-angle-double-up {
	font-size: 13px;
}

#scrolltop.scrollhide{
    bottom: -100px;
    opacity: 0;
    transform: scale(0); 
}
#scrolltop:hover{
    background-color: #333;
    color: #fff
}

/* Breadcrumbs */

.breadcrumbs {
	display: block;
	background: #f3f3f3;
	padding: 10px 16px;
}
.breadcrumbs .items,
.breadcrumbs .items a {
	font-size: 13px;
	color: #a3a3a3;
	margin: 0;
	padding: 0;
	list-style: none none;
}
.breadcrumbs .items > li {
	display: inline-block;
	vertical-align: top;
}
.breadcrumbs .item a {
	display: inline-block;
	text-decoration: none;
}
.breadcrumbs .item:not(:last-child) a:hover {
	text-decoration: underline;
}
.breadcrumbs .item:not(:last-child)::after {
	font-family: "Font Awesome 5 Free";
	font-size: 14px;
	line-height: 22px;
	content: "\f105";
	margin: 0 5px 0 6px;
	vertical-align: top;
	display: inline-block;
	font-weight: 900;
	overflow: hidden;
	text-align: center;
}
.breadcrumbs .item:not(:last-child) a:visited {
	color: #333;
}
.breadcrumbs strong {
	font-weight: 400;
}
#my-account-menu a:hover {
	background-color: #666;
}
#authentication .input-group-text {
	min-width: 100px;
}
#add_address .input-group-text {
	inline-size: 143px;
	overflow-wrap: break-word;
	white-space: normal;
	font-size: 0.85rem;
	text-align: left;
}
td.delivery_option_radio {
	width: 60px !important;
}
td.delivery_option_logo {
	width: 100px !important;
}
td.delivery_option_price {
	min-width: 160px;
	text-align: right;
	padding-right: 20px;
}
.order_carrier_content .delivery_options label {
	display: block;
}
.order_carrier_content .order_carrier_logo {
	width: 60px;
	height: auto;
}

.order_carrier_content table.resume.align-middle.table {
	margin: 0.5rem 0;
	border: 0 solid transparent;
}

#carrier_area #cgv {
	margin-right: 15px;
}

.payment_module {
	margin: 1rem 0 3rem;
	padding: 1.5rem;
	display: block;
	background: rgb(34,193,195);
	background: #ADD8E6;
	border-radius: 15px;
	transition: all 0.2s linear 0s;
	position: relative;
	overflow: hidden;
}

.payment_module:before {
    content: "\f054";
    font-family: FontAwesome;
	font-size: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0px;
    height: 100%;
    width: 50px;
    border-radius: 0 50% 50% 0;
    transform: scale(0,1);
    transform-origin: left center;
	transition: all 0.2s linear 0s;
}

.payment_module:hover {
	background: #9bd5e8;
	color: #fff;
	text-indent: 45px;
}

.payment_module:hover:before {
   transform: scale(1,1);
   text-indent: 0px;
   background: #E6BAAC;
}

.payment_module.payplugPayment a {
	background: none;
	width: 100%;
	display: block;
}

.payment_module.payplugPayment a:hover {
	background: none;
	color: #fff;
}

.payment_module.payplugPayment a img {
	margin-right: 2rem;
}

.payment_module.payplugPayment a::after {
	margin-top: -18px;
}

.table#cart_summary  > :not(:first-child) {
	border-top: 0;
}

#cart_summary .cart_discount {
	text-align: center;
	background-color: #eee;
}

#cart_summary #total_discount {
	text-align: right;
}

#order-detail-content .cart_quantity {
	width: 125px;
}

.submit {
	margin-top: 1.3rem;
}

.checkbox-lg .form-check-input{
	scale: 1.5;
	border: 2px solid #666;
 }

/* Account Create OPC */
#OpcAccountCreate .page-heading, #opc_invoice_address .page-subheading {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.8rem;
	margin-top: 1rem;
	margin-bottom: 0.45rem;
}

/* Errors Fancybox */
.fancybox-inner .fancybox-error {
	padding: 30px 15px;
	white-space: normal;
}

/* BX-Slider arrows correction */

#thumbs_list .bx-wrapper .bx-controls-direction a::before,
#thumbs_list .bx-wrapper .bx-controls-direction a::after {
	padding-left: 0;
}

#thumbs_list .bx-wrapper .bx-controls-direction a {
	height: 22px;
	width: 22px;
}

#index .beesblogpopularposts-title,
#index .beesblogrecentposts-title {
	font-size: 25px;
}

.beesblogpopularposts-content,
.beesblogrecentposts-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between; 
    height: 100%; 
}
.beesblogpopularposts-content .btn-primary,
.beesblogrecentposts-content .btn-primary {
    margin-top: auto;
}

#home-page-tabs {
	border: 0;
}

/* Responsives Rules */

@media (max-width: 767.98px) {
	.table_block table,
	.table_block thead,
	.table_block tbody,
	.table_block th,
	.table_block td,
	.table_block tr {
		display: block;
		border-bottom: 0;
	}
	.table_block tfoot {
		display: inline;
	}
	.table_block .cart_item {
		position: relative;
	}
	.table_block .cart_avail {
		position: absolute;
		top: 10px;
	}
	.table_block .unvisible,
	.table_block thead tr,
	.table_block #cart_summary .cart_total_price #cart_voucher {
		display: none;
	}
	
	.table_block > .table-bordered >:not(caption) > * > * {
		border-width: 0;
	}
	.table_block .cart_total_price > td#total_product,
	.table_block .cart_total_price > td#total_price_container,
	.table_block .cart_total_delivery > td#total_shipping {
		border-top: 0;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_quantity {
		float: left;
		border-left: 0;
		border-right: 0;
		padding: 2px 0 0 0;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_quantity > .cart_quantity_input {
		width: 60px;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_quantity > .cart_quantity_button {
		position: relative;
		left: 70px;
    	bottom: 37px;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_quantity::before {
		content: "x";
		float: left;
		left: 13px;
		line-height: 34px;
		position: relative;
	}
	.table_block .cart_quantity_button a.btn {
		border: 0;
		background-color: #eee;
		margin-top: 1px;
	}
	.table_block .cart_quantity_button a.button-minus {
		margin-right: 10px;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_unit {
		float: left;
		border-right: 0;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_delete > div {
		float: right;
	}
	.table_block #cart_summary > tbody > tr.cart_item > td.cart_total {
		margin-top: 25px;
	}		
	.table_block #cart_summary > tbody > tr.cart_item:last-of-type {
		border-bottom: 1px solid #ddd;
	}
	.table_block #cart_summary .cart_total > span.price {
		position: relative;
		top: -39px;
	}
	.order_carrier_content .table_block .delivery_option_radio,
	.table_block .delivery_option_logo {
		display: inline-block;
	}
	.order_carrier_content td.delivery_option_price {
		border-top: 1px solid #ccc;
		background-color: #efefef;
	}
	#cart_summary .text-end {
		text-align: center !important;
		display: inline-block;
		width: calc(50% - 34px);
		margin: 15px;
	}
	#cart_summary .cart_total_price {
		text-align: center;
	}
	#cart_summary .cart_discount {
		display: none;
	}
}
@media (max-width: 991.98px) {
    
    #shop-logo .navbar.navbar-expand-lg {
        margin-right: 30px;
    }

	#slide-dots {
		display: none;
	}
	
	#search_block_top {
		margin-bottom: 8px;
		margin-top: 2px;
	}		
	#search_query_block {
		max-width: 100%;
		background-color: #fff;
		border-right: 0;
		border-top: 0;
		border-left: 0;
	}	
	#search_query_block::placeholder {
		color: #cdcdcd;
		text-transform: none;
		font-weight: 300;
		font-size: 0.8rem;
	}
	#search_block_top .input-group-text {
		background-color: #fff;
		border-radius: 0;
		border-top: 0;
		border-right: 0;
		border-color: #cdcdcd;
		color: #cdcdcd;
	}
	#headertopmenu {
		padding-top: 0;
		padding-bottom: 0;
	}
}
@media (max-width: 451.98px) {
	.table_block #cart_summary .cart_total > span.price {
		position: relative;
		top: 5px;
		height: 34px;
		display: block;
		right: 0;
	}
	#shop-logo a img {
		max-width: 180px;
		margin-top: 5px;
	}
	body.identity .input-group-text {
 	    min-width: 100%;
	}
	#prefooter.p-5 {
		padding: 0 !important;
		overflow: hidden;
	}
	#prefooter #newsletter_block_left {
		padding-bottom: 2rem;
    	margin-bottom: 2rem;
    	margin-top: 0;
	}
	#prefooter #newsletter_block_left .newsletter-card {
  		padding: 15px;
		margin: 0;
		border-radius: 0;
	}
	#prefooter #newsletter_block_left form {
		margin-bottom: 3rem;
	}
}
@media (max-width: 419.98px) {
	#shop-logo {
		margin-left: -10px;
		margin-right: 10px;
	}
	
	#shop-logo .navbar {
    	margin-right: 10px !important;
	}
	
	#shop-logo a img {
		max-width: 150px;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	#header-blocks .topaction {
		margin-left: 20px;
		margin-right: -20px;
	}
}
@media (min-width: 992px) {
	.txt-lg {
		text-align: right;
	}
	#new_account_form .my-cust {
		margin-bottom: 2.45rem;
	}
	.topaction {
		margin-top: 5px;
	}
}

@media (min-width: 992px) and (max-width:1199.98px) {
	.topaction {
    	margin-top: -139px;
  	}
	#header_user a.nav-link span,
	#cart_block .ajax_cart_total,
	.sticky #cart_block .ajax_cart_quantity {
		display: none;
	}
	.navbar-expand-lg .navbar-nav .nav-link {
	    padding: 7px;
	}
	
}

@media (min-width:1199.98px) and (max-width:1399.98px) {
	.topaction {
    	margin-left: 35px;
    	margin-right: -35px;
 	 }
	#header_user a.nav-link span,
	#cart_block .ajax_cart_total {
		display: none;
	}
}

@media (min-width: 1400px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		max-width: 1950px;
	}
}