/* Font Awesome icon compatibility for the Porto ecommerce demo. */
.fa,
.fas,
.far,
.fab,
.svg-inline--fa {
    line-height: 1;
}

.header-icon .fas,
.header-icon .far,
.header-icon .svg-inline--fa {
    width: 1em;
    height: 1em;
    font-size: 2.7rem;
}

.header-search .search-toggle .fas,
.header-search .search-toggle .svg-inline--fa {
    width: 1em;
    height: 1em;
    font-size: 2.4rem;
}

.header-search-wrapper .btn,
.mobile-menu-container .search-wrapper .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.header-search-wrapper .btn .fas,
.header-search-wrapper .btn .svg-inline--fa {
    width: 1em;
    height: 1em;
    color: #222529;
    font-size: 1.6rem;
    pointer-events: none;
}

.mobile-menu-container .search-wrapper .btn .fas,
.mobile-menu-container .search-wrapper .btn .svg-inline--fa {
    color: #fff;
}

.cart-toggle .cart-icon,
.cart-toggle .svg-inline--fa.fa-shopping-cart {
    display: inline-block;
    width: 1em;
    height: 1em;
    margin: 6px 3px 0;
    color: #222529;
    font-size: 2.6rem;
    vertical-align: middle;
    opacity: 0.9;
}

.info-boxes-slider i.fa,
.info-boxes-slider .svg-inline--fa {
    margin: 0 3px 0 2px;
    font-size: 35px;
    line-height: 35px;
}

.info-boxes-slider .fa-dollar-sign,
.info-boxes-slider .fa-headset,
.info-boxes-slider .svg-inline--fa.fa-dollar-sign,
.info-boxes-slider .svg-inline--fa.fa-headset {
    font-size: 37px;
}

.product-action i.fa,
.product-action .svg-inline--fa {
    line-height: 32px;
}

.product-default .btn-add-cart .svg-inline--fa {
    display: none;
}

.product-default:hover .btn-add-cart.product-type-simple .svg-inline--fa {
    display: inline-block;
}

.product-action .fa-shopping-cart,
.product-action .svg-inline--fa.fa-shopping-cart {
    margin-right: 4px;
}

.social-icon i,
.social-icon .svg-inline--fa {
    width: 1em;
    height: 1em;
    color: inherit;
    font-size: inherit;
}

.sticky-navbar .sticky-info i.fa,
.sticky-navbar .sticky-info .svg-inline--fa {
    width: 1em;
    height: 1em;
    margin-bottom: 0.2rem;
    font-size: 27px;
    font-weight: 400;
}

.sticky-navbar .sticky-info .sticky-cart-icon {
    display: inline-block;
    margin-bottom: 0.2rem;
    line-height: 1;
}

.sticky-navbar .sticky-info .sticky-cart-icon .cart-count {
    top: 3px;
    right: -4px;
}

.feature-boxes-container .feature-box .feature-box-icon .fa,
.feature-boxes-container .feature-box .feature-box-icon .svg-inline--fa {
    width: 1em;
    height: 1em;
    margin-top: -2px;
    font-size: 40px;
}

#scroll-top > .svg-inline--fa {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 24px;
    height: 24px;
    margin: auto;
    font-size: 2rem;
}

#scroll-top > i.fa {
    font-size: 2rem;
}

.icon-search:before,
.icon-search-3:before,
.icon-magnifier:before {
    content: "\f002";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-user-2:before {
    content: "\f007";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-heart:before,
.icon-wishlist-2:before {
    content: "\f004";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
}

.icon-shopping-cart:before,
.minicart-icon:before {
    content: "\f07a";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-shipping:before {
    content: "\f0d1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-money:before {
    content: "\f155";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-support:before,
.icon-earphones-alt:before {
    content: "\f590";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-credit-card:before {
    content: "\f09d";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
}

.icon-action-undo:before {
    content: "\f2ea";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-home:before {
    content: "\f015";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-bars:before {
    content: "\f0c9";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-angle-up:before {
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-facebook:before {
    content: "\f39e";
    font-family: "Font Awesome 5 Brands";
    font-weight: 400;
}

.icon-twitter:before {
    content: "\f099";
    font-family: "Font Awesome 5 Brands";
    font-weight: 400;
}

.icon-instagram:before {
    content: "\f16d";
    font-family: "Font Awesome 5 Brands";
    font-weight: 400;
}

.icon-angle-left:before {
    content: "\f104";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-angle-right:before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-left-open:before,
.icon-left-open-big:before,
.icon-left-dir:before,
.icon-left:before {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-right-open:before,
.icon-right-open-big:before,
.icon-right-dir:before,
.icon-right:before {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-up-open-big:before,
.icon-up-dir:before {
    content: "\f077";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-down-open-big:before,
.icon-down-dir:before {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-cancel:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-plus:before {
    content: "\f067";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-minus:before {
    content: "\f068";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.icon-spin1:before,
.icon-spin2:before,
.icon-spin3:before,
.icon-spin4:before,
.icon-spin5:before,
.icon-spin6:before {
    content: "\f110";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

/* Carousel nav arrows — always visible, Font Awesome based */
.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    color: #222529 !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 5;
}

.owl-carousel.show-nav-hover .owl-nav {
    opacity: 1 !important;
    visibility: visible !important;
    transition: none;
}

.owl-carousel .owl-nav .owl-prev i,
.owl-carousel .owl-nav .owl-next i,
.owl-carousel .owl-nav .owl-prev .svg-inline--fa,
.owl-carousel .owl-nav .owl-next .svg-inline--fa {
    display: inline-block !important;
    color: inherit !important;
    font-size: inherit;
    line-height: 1;
    opacity: 1 !important;
    visibility: visible !important;
}

.owl-carousel.nav-big .owl-nav .owl-prev,
.owl-carousel.nav-big .owl-nav .owl-next {
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.92) !important;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    font-size: 22px;
}

.owl-carousel.nav-outer .owl-nav .owl-prev,
.owl-carousel.nav-outer .owl-nav .owl-next,
.owl-carousel.nav-image-center .owl-nav .owl-prev,
.owl-carousel.nav-image-center .owl-nav .owl-next {
    background: #fff !important;
    border: 1px solid #e7e7e7;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    font-size: 14px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
}

.owl-carousel .owl-nav .owl-prev:hover,
.owl-carousel .owl-nav .owl-next:hover {
    color: var(--dm-red) !important;
    background: var(--dm-white) !important;
}
