/* Start Global Variables */
:root {
    --main-color: #2196f3;
    --main-color-half-opacity: rgb(33 150 243 / 50%);
    --padding-top: 70px;
    --padding-bottom: 70px;
    --section-background: #fafafa;
}
/* End Global Variables */
/* Start Rules */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}
body {
    font-family: "Changa", sans-serif;
}
.safi-container {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}
/* Small */
@media (min-width: 768px) {
    .safi-container {
        width: 750px;
    }
}
/* Medium */
@media (min-width: 992px) {
    .safi-container {
        width: 970px;
    }
}
/* Large */
@media (min-width: 1200px) {
    .safi-container {
        width: 1170px;
    }
}
ul {
    list-style: none;
}
/* End Rules */
/* Start Components */
.safi-special-heading h3 {
    margin-top: 0;
    font-size: 40px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 80px;
}
.safi-special-heading h3 span {
    position: relative;
}
.safi-special-heading h3 span::before {
    position: absolute;
    content: "";
    bottom: 0;
    right: -100%;
    height: 2px;
    width: 100%;
    background-color: var(--main-color);
    transition: 0.3s;
}
.safi-special-heading h3 span::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: -100%;
    height: 2px;
    width: 100%;
    background-color: var(--main-color);
    transition: 0.3s;
}
.safi-special-heading h3:hover span::before {
    /* right: -50%; */
    width: calc(100% + 60%);
}
.safi-special-heading h3:hover span::after {
    /* left: -50%; */
    width: calc(100% + 60%);
}
@media (max-width: 767px) {
    .safi-special-heading h3 span::before {
        right: -45%;
        width: 45%;
    }
    .safi-special-heading h3 span::after {
        left: -45%;
        width: 45%;
    }
    .safi-special-heading h3:hover span::before {
        /* right: -50%; */
        width: 96%;
    }
    .safi-special-heading h3:hover span::after {
        /* left: -50%; */
        width: 96%;
    }
}
.safi-special-btn-more {
    position: relative;
    display: block;
    width: fit-content;
    margin: 100px auto 0;
    padding: 10px 20px;
    background-color: var(--main-color);
    color: white;
    outline: 0;
    font-size: 20px;
    text-decoration: none;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}
.safi-special-btn-more::before {
    position: absolute;
    content: "";
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 300px);
    height: 1px;
    background-color: #9e9e9e;
}
.safi-modal {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    background-color: rgb(0 0 0 / 50%);
    width: 100%;
    height: 100%;
}
.safi-modal .safi-modal-dialog {
    width: 600px;
    background-color: #fff;
    padding: 20px;
    border-radius: 4px;
}
@media (max-width: 676px) {
    .safi-modal .safi-modal-dialog {
        width: 500px;
    }
}
@media (max-width: 556px) {
    .safi-modal .safi-modal-dialog {
        width: 400px;
    }
}
.safi-modal .safi-modal-header {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 1px solid #ccc;
}
.safi-modal .safi-modal-header h4 {
    margin: -2px 0;
    font-size: 20px;
    font-weight: normal;
}
.safi-modal .safi-modal-header .safi-modal-mark-close {
    display: block;
    cursor: pointer;
    background-color: #f00;
    color: #fff;
    padding: 2px 6px;
    border-radius: 50%;
    text-align: center;
    font-weight: bold;
}
.safi-modal .safi-modal-body {
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
}
.safi-modal .safi-modal-footer {
    margin-top: 20px;
    float: left;
}
.safi-modal .safi-modal-footer .safi-modal-btn-close {
    border: 0;
    background-color: #f00;
    padding: 8px 20px;
    border-radius: 4px;
    outline: 0;
    color: #fff;
    cursor: pointer;
}
.safi-form-row {
    display: flex;
    flex-wrap: wrap;
}
.safi-form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 25px;
}
.safi-form-group.safi-form-col-12 {
    width: 100%;
}
@media (min-width: 768px) {
    .safi-form-group.safi-form-col-md-6 {
        width: 50%;
        flex: 0 0 auto;
        padding: 0 5px;
    }
}
@media (max-width: 767px) {
    .safi-form-group.safi-form-col-lg-6 {
        width: 100% !important;
        padding: 0;
    }
}
.safi-form-group label {
    margin-bottom: 15px;
    font-size: 15px;
    color: #555;
}
.safi-form-input,
.safi-form-textarea {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    outline: 0;
}
.safi-form-input:focus,
.safi-form-textarea:focus {
    border-color: var(--main-color);
}
.safi-form-btn-send {
    border: 0;
    padding: 10px 25px;
    background-color: var(--main-color);
    color: white;
    outline: 0;
    border-radius: 4px;
    font-size: 16px;
    cursor: pointer;
}
.safi-shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}
.safi-shadow-md {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
.safi-shadow-lg {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}
.safi-text-white {
    color: white;
}
.safi-star-color {
    color: orange !important;
}
.safi-text-center {
    text-align: center;
}
#safi-scroll-top {
    display: none;
    position: fixed;
    z-index: 1000;
    top: 85%;
    right: 5%;
    background-color: var(--main-color);
    color: white;
    border: 0;
    outline: 0;
    padding: 10px 15px;
    font-size: 22px;
    border-radius: 10px;
    transition: 0.3s;
    cursor: pointer;
}
.safi-d-block {
    display: block !important;
}
.safi-d-inline-block {
    display: inline-block !important;
}
.safi-d-flex {
    display: flex !important;
}
.safi-flex-direction-column {
    flex-direction: column;
}
.safi-align-items-center {
    align-items: center;
}
.safi-align-items-baseline {
    align-items: baseline;
}
.safi-justify-content-between {
    justify-content: space-between;
}
.safi-justify-content-center {
    justify-content: center;
}
.safi-w-15 {
    width: 15%;
}
.safi-w-25 {
    width: 25%;
}
.safi-w-50 {
    width: 50%;
}
.safi-w-75 {
    width: 75%;
}
.safi-w-100 {
    width: 100%;
}
.safi-m-0 {
    margin: 0 !important;
}
.safi-m-auto {
    margin: auto !important;
}
.safi-mx-auto {
    margin-left: auto !important;
    margin-right: auto !important;
}
.safi-my-auto {
    margin-top: auto !important;
    margin-left: auto !important;
}
.safi-mx-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.safi-my-0 {
    margin-top: 0 !important;
    margin-left: 0 !important;
}
.safi-mt-0 {
    margin-top: 0 !important;
}
.safi-mt-1 {
    margin-top: 0.25rem !important;
}
.safi-mt-1 {
    margin-top: 0.25rem !important;
}
.safi-mt-2 {
    margin-top: 0.5rem !important;
}
.safi-mt-3 {
    margin-top: 0.75rem !important;
}
.safi-mt-4 {
    margin-top: 1rem !important;
}
.safi-mt-5 {
    margin-top: 1.5rem !important;
}
.safi-mb-0 {
    margin-bottom: 0 !important;
}
.safi-mb-1 {
    margin-bottom: 0.25rem !important;
}
.safi-mb-1 {
    margin-bottom: 0.25rem !important;
}
.safi-mb-2 {
    margin-bottom: 0.5rem !important;
}
.safi-mb-3 {
    margin-bottom: 0.75rem !important;
}
.safi-mb-4 {
    margin-bottom: 1rem !important;
}
.safi-mb-5 {
    margin-bottom: 1.5rem !important;
}
.safi-ml-0 {
    margin-left: 0 !important;
}
.safi-ml-1 {
    margin-left: 0.25rem !important;
}
.safi-ml-2 {
    margin-left: 0.5rem !important;
}
.safi-ml-3 {
    margin-left: 0.75rem !important;
}
.safi-ml-4 {
    margin-left: 1rem !important;
}
.safi-ml-5 {
    margin-left: 1.5rem !important;
}
.safi-mr-0 {
    margin-right: 0 !important;
}
.safi-mr-1 {
    margin-right: 0.25rem !important;
}
.safi-mr-2 {
    margin-right: 0.5rem !important;
}
.safi-mr-3 {
    margin-right: 0.75rem !important;
}
.safi-mr-4 {
    margin-right: 1rem !important;
}
.safi-mr-5 {
    margin-right: 1.5rem !important;
}
.safi-border-rounded {
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}
.safi-alert-container {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
}
.safi-alert-container-close {
    text-align: left;
}
.safi-alert-close {
    display: inline-block;
    margin-bottom: 5px;
    background-color: #e91e63;
    border-radius: 50%;
    padding: 0 5px;
    color: white;
    cursor: pointer;
}
.safi-alert:nth-child(2) {
    margin-top: 0;
}
.safi-alert {
    padding: 10px 5px;
    font-size: 15px;
    border-radius: 3px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.safi-alert-primary {
    color: #084298;
    background-color: #cfe2ff;
    border-color: #b6d4fe;
}
.safi-alert-info {
    color: #055160;
    background-color: #cff4fc;
    border-color: #b6effb;
}
.safi-alert-success {
    color: #0f5132;
    background-color: #d1e7dd;
    border-color: #badbcc;
}
.safi-alert-danger {
    color: #842029;
    background-color: #f8d7da;
    border-color: #f5c2c7;
}
.safi-alert-warning {
    color: #664d03;
    background-color: #fff3cd;
    border-color: #ffecb5;
}
.safi-table-responsive {
    overflow-y: auto;
}
.safi-table {
    width: 100%;
    min-width: 1140px;
    text-align: center;
    border-collapse: collapse;
}
.safi-table tbody tr:nth-child(odd) {
    background-color: #f2f2f2;
}
.safi-table td,
.safi-table th {
    border: 1px solid #ccc;
    padding: 20px 10px;
}
.safi-table thead th,
.safi-table thead td {
    border-top: 0 !important;
}
.safi-table tbody tr:last-of-type th,
.safi-table tbody tr:last-of-type td {
    border-bottom: 0 !important;
}
.safi-table td:first-of-type,
.safi-table th:first-of-type {
    border-right: 0 !important;
}
.safi-table td:last-of-type,
.safi-table th:last-of-type {
    border-left: 0 !important;
}
#safi-overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    cursor: progress;
}

#safi-overlay .spinner {
    position: absolute;
    left: 50%;
    top: 50%;
}

#safi-overlay .spinner-border {
    width: 4rem;
    height: 4rem;
    border: 0.25em solid #fff;
    border-right-color: transparent;
}
.safi-btn-search {
    display: block;
    width: fit-content;
    border: 0;
    background-color: #4caf50;
    padding: 7px 20px;
    color: white;
    border-radius: 5px;
    cursor: pointer;
}
/* End Components */
/* Start Header */
header {
    background-color: var(--main-color);
    color: white;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 2;
}
header .safi-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}
header .safi-logo span {
    font-weight: bold;
    font-size: 18px;
}
header nav {
    display: flex;
    align-items: center;
    min-height: 80px;
}
header nav .safi-toggle-menu {
    display: none;
    font-size: 20px;
    cursor: pointer;
}
header nav ul {
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width: 767px) {
    header nav .safi-toggle-menu {
        display: inline-block;
    }
    header nav ul {
        display: none;
    }
    header nav .safi-toggle-menu.active + ul {
        position: absolute;
        display: flex;
        flex-direction: column;
        top: 100%;
        left: 0;
        width: 100%;
        margin: 0;
        background-color: var(--main-color);
        padding: 0 0 17px;
    }
}
header nav ul li a {
    display: block;
    position: relative;
    color: white;
    padding: 15px;
    text-decoration: none;
    font-size: 15px;
}
header nav ul li a:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    color: white;
    background-color: white;
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
}
header nav ul li:hover a::before,
header nav ul li.active a::before {
    width: 70%;
}
header nav ul li.safi-dropdown a {
    position: relative;
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 65px;
    padding: 10px 30px;
    background-color: var(--main-color);
}
header nav ul li.safi-dropdown:hover ul.safi-dropdown-menu {
    display: flex;
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu::before {
    position: absolute;
    content: "";
    top: -15px;
    left: 1px;
    border-width: 15px;
    border-style: solid;
    border-color: white transparent transparent transparent;
}
@media (max-width: 767px) {
    header nav ul li.safi-dropdown:hover ul.safi-dropdown-menu {
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
    }
    header nav ul li.safi-dropdown ul.safi-dropdown-menu::before {
        left: 50.5%;
        transform: translateX(-50.5%);
        -webkit-transform: translateX(-50.5%);
        -moz-transform: translateX(-50.5%);
        -ms-transform: translateX(-50.5%);
        -o-transform: translateX(-50.5%);
    }
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu li {
    padding: 0 0 15px;
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu li a {
    padding: 15px 0;
    position: relative;
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu li a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    color: white;
    background-color: white;
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
}
header nav ul li.safi-dropdown ul.safi-dropdown-menu li:hover a::before {
    width: 70%;
}
header nav ul li button {
    background: transparent;
    border: 0;
    color: white;
    cursor: pointer;
    font-size: 20px;
    margin-right: 10px;
}
@media (max-width: 767px) {
    header nav ul li button {
        margin-right: 0;
        margin-top: 10px;
    }
}
/* End Header */
/* Start Landing */
.safi-landing {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    position: relative;
}
.safi-landing .safi-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media (max-width: 767px) {
    .safi-landing .safi-container {
        flex-direction: column;
    }
}
.safi-landing .safi-info {
    width: 550px;
}
@media (max-width: 767px) {
    .safi-landing .safi-info {
        width: 100%;
    }
}
.safi-landing .safi-info h3 {
    margin-bottom: 60px;
    font-size: 32px;
    position: relative;
}
.safi-landing .safi-info h3::before {
    position: absolute;
    content: "";
    width: 30%;
    height: 2px;
    background-color: var(--main-color-half-opacity);
    bottom: -15px;
    right: 0;
}
@media (max-width: 991px) {
    .safi-landing .safi-info h3::before {
        width: 50%;
    }
}
@media (max-width: 767px) {
    .safi-landing .safi-info h3::before {
        width: 30%;
    }
}
.safi-landing .safi-info p {
    font-size: 18px;
    line-height: 1.8;
    color: #777;
    margin: 0 0px 50px;
}
.safi-landing .safi-image {
    text-align: center;
}
@media (max-width: 767px) {
    .safi-landing .safi-image {
        display: none;
    }
}
.safi-landing .safi-info .safi-shopping-now {
    display: inline-block;
    text-decoration: none;
    color: white;
    background-color: var(--main-color);
    padding: 10px 20px;
    border-radius: 4px;
}
/* End Landing */
/* End Categories */
.safi-categories {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-categories .safi-categories-content .safi-boxes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}
.safi-categories .safi-categories-content .safi-boxes .safi-box {
    background-color: white;
    padding: 0;
}
.safi-categories .safi-categories-content .safi-boxes .safi-box img {
    height: 172px;
    max-height: 172px;
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid #efefef;
}
.safi-categories .safi-categories-content .safi-boxes .safi-box .safi-info {
    padding: 25px;
}
.safi-categories .safi-categories-content .safi-boxes .safi-box .safi-info h4 {
    margin: 0 0 50px;
    font-size: 18px;
    font-weight: normal;
    color: #555;
    position: relative;
}
.safi-categories
    .safi-categories-content
    .safi-boxes
    .safi-box
    .safi-info
    h4::after {
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    width: 50%;
    height: 1px;
    background-color: var(--main-color);
}
.safi-categories
    .safi-categories-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btn-more {
    display: block;
    width: fit-content;
    margin: auto;
    text-decoration: none;
    background-color: var(--main-color);
    padding: 10px 20px;
    outline: 0;
    color: white;
    border-radius: 4px;
    font-size: 14px;
}
/* End Categories */
/* Start Products */
.safi-products {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-products .safi-products-content .safi-boxes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}
.safi-products .safi-products-content .safi-boxes .safi-box {
    background-color: white;
    padding: 0;
}
.safi-products .safi-products-content .safi-boxes .safi-box img {
    height: 235px;
    max-height: 235px;
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid #efefef;
}
.safi-products .safi-products-content .safi-boxes .safi-box .safi-info {
    padding: 25px;
}
.safi-products .safi-products-content .safi-boxes .safi-box .safi-info h4 {
    margin: 0 0 30px;
    font-size: 18px;
    font-weight: normal;
    color: #555;
    position: relative;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    h4::after {
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    width: 50%;
    height: 1px;
    background-color: var(--main-color);
}
.safi-products .safi-products-content .safi-boxes .safi-box .safi-description {
    margin: 0 0 30px;
    color: #666;
    line-height: 1.6;
    font-size: 15px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-price-store-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-price-store-container
    .safi-price,
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-price-store-container
    .safi-store {
    font-size: 18px;
    color: #888;
    font-weight: 600;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-ratings {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 30px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-ratings
    i {
    margin-left: 5px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-show,
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-add-cart {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: white;
    border-radius: 4px;
    padding: 8px 15px;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    outline: 0;
    border: 0;
    cursor: pointer;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-show
    i,
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-add-cart
    i {
    margin-left: 8px;
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-show {
    background-color: var(--main-color);
}
.safi-products
    .safi-products-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btns
    .safi-btn-add-cart {
    background-color: #27ae60;
    border: 0;
    outline: 0;
    cursor: pointer;
}
/* End Products */
/* Start Stores */
.safi-stores {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-stores .safi-stores-content .safi-boxes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}
.safi-stores .safi-stores-content .safi-boxes .safi-box {
    background-color: white;
    padding: 0;
}
.safi-stores .safi-stores-content .safi-boxes .safi-box img {
    height: 175px;
    max-height: 175px;
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid #efefef;
}
.safi-stores .safi-stores-content .safi-boxes .safi-box .safi-info {
    padding: 25px;
}
.safi-stores .safi-stores-content .safi-boxes .safi-box .safi-info h4 {
    margin: 0 0 50px;
    font-size: 18px;
    font-weight: normal;
    color: #555;
    position: relative;
}
.safi-stores .safi-stores-content .safi-boxes .safi-box .safi-info h4::after {
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    width: 50%;
    height: 1px;
    background-color: var(--main-color);
}
.safi-stores
    .safi-stores-content
    .safi-boxes
    .safi-box
    .safi-info
    .safi-btn-more {
    display: block;
    width: fit-content;
    margin: auto;
    text-decoration: none;
    outline: 0;
    background-color: var(--main-color);
    padding: 10px 20px;
    color: white;
    border-radius: 4px;
    font-size: 14px;
}
/* End Stores */
/* Start Contact Us */
.safi-contact-us {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-contact-us .safi-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media (max-width: 767px) {
    .safi-contact-us .safi-content {
        flex-direction: column;
    }
}
.safi-contact-us .safi-content .safi-form-card {
    width: 49%;
    border-top: 2px solid var(--main-color);
    padding: 35px 20px;
}
@media (max-width: 767px) {
    .safi-contact-us .safi-content .safi-form-card {
        width: 100%;
        margin-bottom: 20px;
    }
}
.safi-contact-us .safi-content .safi-form-card .safi-form-row {
    display: flex;
    flex-wrap: wrap;
}
.safi-contact-us .safi-content .safi-form-card .safi-form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 25px;
}
@media (min-width: 768px) {
    .safi-contact-us
        .safi-content
        .safi-form-card
        .safi-form-group.safi-form-col-md-6 {
        width: 50%;
        flex: 0 0 auto;
        padding: 0 5px;
    }
}
@media (max-width: 767px) {
    .safi-contact-us
        .safi-content
        .safi-form-card
        .safi-form-group.safi-form-col-lg-6 {
        width: 100% !important;
        padding: 0;
    }
}
.safi-contact-us
    .safi-content
    .safi-form-card
    .safi-form-group.safi-form-col-12 {
    width: 100%;
}
.safi-contact-us .safi-content .safi-form-card .safi-form-group label {
    margin-bottom: 15px;
    font-size: 15px;
    color: #555;
}
.safi-contact-us .safi-content .safi-form-card .safi-form-input,
.safi-contact-us .safi-content .safi-form-card .safi-form-textarea {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    outline: 0;
}
.safi-contact-us .safi-content .safi-form-card .safi-form-input:focus,
.safi-contact-us .safi-content .safi-form-card .safi-form-textarea:focus {
    border-color: var(--main-color);
}
.safi-contact-us .safi-content .safi-form-card .safi-form-btn-send {
    border: 0;
    padding: 10px 25px;
    background-color: var(--main-color);
    color: white;
    outline: 0;
    border-radius: 4px;
    font-size: 16px;
    cursor: pointer;
}
.safi-contact-us .safi-content .safi-map-card {
    width: 49%;
    border-top: 2px solid var(--main-color);
    padding: 35px 20px;
}
@media (max-width: 767px) {
    .safi-contact-us .safi-content .safi-map-card {
        width: 100%;
    }
}
.safi-contact-us .safi-content .safi-map-card .location,
.safi-contact-us .safi-content .safi-map-card .email,
.safi-contact-us .safi-content .safi-map-card .phone {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 25px;
}
.safi-contact-us .safi-content .safi-map-card .safi-info h4 {
    margin: 0 0 10px;
    font-size: 16px;
    font-weight: 500;
}
.safi-contact-us .safi-content .safi-map-card .safi-info span {
    font-size: 14px;
    color: #555;
    display: inline-block;
    direction: ltr;
}
.safi-contact-us .safi-content .safi-map-card i {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--main-color);
    color: white;
    width: 35px;
    height: 35px;
    font-size: 17px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    transition: 0.3s;
}
.safi-contact-us .safi-content .safi-map-card i:hover {
    background-color: white;
    color: var(--main-color);
    border: 2px solid var(--main-color);
} /* End Contact Us */
/* Start Footer */
footer {
    padding: 25px 10px;
    background-color: var(--main-color);
    color: white;
}
footer .safi-container {
    text-align: center;
}
footer h5 {
    font-size: 16px;
    margin: 10px auto 25px;
}
footer .safi-social-icons {
    margin-bottom: 35px;
}
footer .safi-social-icons i {
    font-size: 22px;
    margin: 0 10px;
    cursor: pointer;
}
footer .safi-copyright span:first-child {
    font-weight: bold;
    text-decoration: underline;
}
/* End Footer */

/*--- Start Pages Style ---*/
#safi-page {
    margin-top: 5rem;
}
#safi-page .safi-special-heading h3 {
    margin-top: 0;
    font-size: 40px;
    font-weight: normal;
    text-align: right;
    margin-bottom: 80px;
}
#safi-page .safi-special-heading h3 span {
    position: relative;
    display: block;
}
#safi-page .safi-special-heading h3 span::before {
    content: unset;
}
#safi-page .safi-special-heading h3 span::after {
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    height: 2px;
    width: 25%;
    background-color: rgb(33 150 243 / 50%);
    transition: 0.3s;
}
#safi-page .safi-special-heading h3:hover span::after {
    width: 100%;
}
@media (max-width: 767px) {
    #safi-page .safi-special-heading h3:hover span::after {
        width: 100%;
    }
}
/* Start Cart Page */
.safi-cart {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-cart .safi-cart-content {
    display: flex;
    justify-content: space-between;
}
@media (max-width: 991px) {
    .safi-cart .safi-cart-content {
        flex-direction: column;
    }
}
.safi-cart .safi-cart-content .safi-cart-checkout {
    max-height: 279px;
    min-height: 279px;
    padding: 25px;
    width: 29.5%;
}
@media (max-width: 991px) {
    .safi-cart .safi-cart-content .safi-cart-checkout {
        max-height: unset;
        width: 100%;
        margin-bottom: 2rem;
    }
}
.safi-cart .safi-cart-content .safi-cart-checkout .safi-total {
    font-weight: normal;
    font-size: 22px;
    margin: 0 0 15px;
    letter-spacing: 1px;
}
.safi-cart .safi-cart-content .safi-cart-checkout .safi-price {
    color: #888;
}
.safi-cart .safi-cart-content .safi-cart-checkout .safi-products-count-label {
    font-size: 18px;
    font-weight: normal;
    margin-bottom: 15px;
}
.safi-cart .safi-cart-content .safi-cart-checkout .safi-products-count-value {
    font-size: 20px;
    color: #888;
}
.safi-cart .safi-cart-content .safi-cart-checkout .safi-btn-modal-buy {
    display: block;
    margin-top: 25px;
    border: 0;
    background-color: #4caf50;
    color: white;
    padding: 8px 20px;
    outline: 0;
    width: 100%;
    cursor: pointer;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}
.safi-cart .safi-cart-content .safi-cart-products {
    width: 69.5%;
    display: flex;
    flex-direction: column;
    padding: 25px;
}
@media (max-width: 991px) {
    .safi-cart .safi-cart-content .safi-cart-products {
        width: 100%;
    }
}
.safi-cart .safi-cart-content .safi-cart-products .safi-cart-product {
    padding: 10px 10px 15px;
    margin-bottom: 20px;
    border-bottom: 1px solid #aaa;
}
.safi-cart
    .safi-cart-content
    .safi-cart-products
    .safi-cart-product
    .safi-cart-product-details {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media (max-width: 767px) {
    .safi-cart
        .safi-cart-content
        .safi-cart-products
        .safi-cart-product
        .safi-cart-product-details {
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }
}
.safi-cart .safi-cart-content .safi-cart-products .safi-cart-product a {
    width: 20%;
    text-align: center;
}
.safi-cart .safi-cart-content .safi-cart-products .safi-cart-product img {
    width: 120px;
    height: 120px;
}
.safi-cart
    .safi-cart-content
    .safi-cart-products
    .safi-cart-product
    .safi-cart-product-info {
    margin: 0 1rem;
    width: 50%;
}
@media (max-width: 767px) {
    .safi-cart
        .safi-cart-content
        .safi-cart-products
        .safi-cart-product
        .safi-cart-product-info {
        width: 100%;
    }
}
.safi-cart
    .safi-cart-content
    .safi-cart-products
    .safi-cart-product
    .safi-cart-product-info
    .safi-cart-product-info-title {
    margin-top: 0;
    margin-bottom: 20px;
    font-weight: 500;
}
.safi-cart
    .safi-cart-content
    .safi-cart-products
    .safi-cart-product
    .safi-cart-product-info
    .safi-cart-product-info-shop,
.safi-cart-product-info-price {
    display: block;
    color: #555;
}
.safi-cart
    .safi-cart-content
    .safi-cart-products
    .safi-cart-product
    .safi-cart-product-info
    .safi-cart-product-info-shop {
    margin-bottom: 15px;
}
.safi-cart-product .safi-cart-product-action {
    gap: 5px;
    width: 30%;
}
@media (max-width: 767px) {
    .safi-cart-product .safi-cart-product-action {
        width: 100%;
    }
}
.safi-cart-product .safi-cart-product-action label {
    display: inline-block;
    font-size: 14px;
    margin-bottom: 5px;
}
.safi-cart-product .safi-cart-product-action .safi-input {
    display: block;
    margin-bottom: 5px;
    outline: 0;
    padding: 5px;
    font-size: 14px;
    width: 100%;
}
.safi-cart-product .safi-cart-product-action .safi-cart-product-action-btns {
    gap: 5px;
}
.safi-cart-product .safi-cart-product-action .safi-cart-product-action-delete,
.safi-cart-product .safi-cart-product-action .safi-cart-product-action-update {
    border: 0;
    padding: 5px;
    font-size: 15px;
    border-radius: 4px;
    cursor: pointer;
    width: 50%;
}
.safi-cart-product
    .safi-cart-product-action
    .safi-cart-product-action-update.increase {
    background-color: #2196f3;
    color: white;
}
.safi-cart-product
    .safi-cart-product-action
    .safi-cart-product-action-update.decrease {
    background-color: orange;
}
.safi-cart-product .safi-cart-product-action .safi-cart-product-action-delete {
    background-color: red;
    color: white;
}
.safi-btn-confirm-buy {
    border: 0;
    background-color: #4caf50;
    color: #fff;
    outline: 0;
    padding: 6px 20px;
    border-radius: 5px;
    cursor: pointer;
}
/* End Cart Page */
/* Start Auth Page */
.safi-auth {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-auth .safi-auth-card {
    width: 600px;
    margin: auto;
    padding: 20px;
}
@media (max-width: 650px) {
    .safi-auth .safi-auth-card {
        width: 500px;
    }
}
@media (max-width: 550px) {
    .safi-auth .safi-auth-card {
        width: 450px;
    }
}
@media (max-width: 500px) {
    .safi-auth .safi-auth-card {
        width: 400px;
    }
}
.safi-auth .safi-auth-card-header {
    padding: 20px 0px;
    border-bottom: 1px solid #ccc;
}
.safi-auth .safi-auth-card-header h4 {
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 1px;
    margin: 0;
}
.safi-auth .safi-auth-card-body {
    padding: 20px 0;
    margin-top: 20px;
}
/*  End Auth Page */
/* Start Show Product Page */
.safi-show-product {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-show-product .safi-show-product-content {
    display: flex;
    justify-content: space-between;
}
@media (max-width: 991px) {
    .safi-show-product .safi-show-product-content {
        flex-direction: column;
    }
}
.safi-show-product .safi-show-product-content .safi-show-product-content-info {
    width: 69.5%;
    padding: 2rem;
}
@media (max-width: 991px) {
    .safi-show-product
        .safi-show-product-content
        .safi-show-product-content-info {
        width: 100%;
    }
}
.safi-show-product .safi-show-product-content .safi-show-product-content-btns {
    padding: 0 0 1rem;
    border-bottom: 1px solid #ccc;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-btns
    button {
    display: flex;
    align-items: center;
    text-decoration: none;
    border: 0;
    border-radius: 4px;
    padding: 8px 15px;
    outline: 0;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    cursor: pointer;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-btns
    .safi-btn-add-cart {
    color: white;
    background-color: #27ae60;
    outline: 0;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-btns
    .safi-btn-rating {
    color: white;
    background-color: var(--main-color);
    outline: 0;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    li.product {
    color: black;
    font-size: 20px;
    font-weight: 600;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    li {
    color: #666;
    margin-top: 5px;
    margin-bottom: 5px;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    li
    span {
    color: #000;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-basic {
    line-height: 2;
    margin-top: 0;
    padding: 0;
    font-size: 17px;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-specifications {
    margin-bottom: 0;
    margin-top: 20px;
    margin-bottom: 25px;
    padding-right: 20px;
    font-size: 17px;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-specifications
    li:not(:last-child) {
    margin-bottom: 20px;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-specifications
    li {
    line-height: 1.7;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-specifications
    li
    label {
    position: relative;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    .safi-show-product-content-info-specifications
    li
    label::before {
    position: absolute;
    content: "";
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    border-width: 7px;
    border-style: solid;
    border-color: transparent #888 transparent transparent;
}
.safi-show-product
    .safi-show-product-content
    .safi-show-product-content-info
    h5 {
    margin: 0;
    font-size: 20px;
    font-weight: 400;
    text-decoration: underline;
}
.safi-show-product .safi-show-product-content .safi-show-product-content-image {
    width: 29.5%;
    display: flex;
    align-items: flex-start;
    padding: 2rem;
    height: 50%;
}
@media (max-width: 991px) {
    .safi-show-product
        .safi-show-product-content
        .safi-show-product-content-image {
        width: 100%;
    }
}
#safi-modal-rating ul.stars .li-star {
    margin: 0 1px;
    cursor: pointer;
}
#safi-modal-rating ul.stars .li-star i {
    font-size: 22px;
    cursor: pointer;
}
#safi-modal-rating .safi-btn-confirm-rating {
    border: 0;
    background-color: #4caf50;
    color: #fff;
    outline: 0;
    padding: 6px 20px;
    border-radius: 5px;
    cursor: pointer;
}
/* End Show Product Page */
/* Start Orders Page */
.safi-orders {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-orders .safi-btn-show-order {
    text-decoration: none;
    color: #fff;
    background-color: #03a9f4;
    padding: 2px 15px;
    font-size: 13px;
    border: 0;
    outline: 0;
    border-radius: 4px;
}
.safi-orders .safi-orders-content .safi-order-title {
    font-weight: 400;
    color: #333;
}
/* End Orders Page */
/* Start Show Order Page */
.safi-show-order {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
.safi-show-order .safi-show-order-content .safi-order-title {
    font-weight: 400;
    color: #333;
}
.safi-show-order .safi-show-order-content .safi-show-order-card {
    padding: 20px 10px 0;
}
.safi-show-order
    .safi-show-order-content
    .safi-show-order-card
    .safi-form-group {
    margin-bottom: 10px;
}
.safi-show-order .safi-show-order-content .safi-show-order-card label {
    margin-bottom: 0 !important;
}
.safi-show-order .safi-show-order-content .safi-show-order-card .show-value {
    background-color: #e2e2e2;
    padding: 13px 10px;
    border-radius: 4px;
    margin-top: 10px;
}
.safi-show-order .safi-show-order-content .safi-order-products-title {
    margin-top: 2rem;
}

/* End Show Order Page */
/*--- End Pages Style ---*/
/* Start Profile Page */
.safi-profile {
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}
#safi-page .safi-profile .safi-special-heading h3 span::after {
    bottom: -20px;
}
.safi-profile .safi-profile-content .safi-profile-title {
    font-weight: 400;
    color: #333;
}
.safi-profile .safi-profile-content .safi-profile-update-title {
    margin-top: 2.5rem;
}
.safi-profile .safi-profile-content .safi-profile-card {
    padding: 35px 25px 10px;
}
.safi-profile
    .safi-profile-content
    .safi-profile-card
    .safi-form-group.safi-profile-data {
    margin-bottom: 10px;
}
.safi-profile
    .safi-profile-content
    .safi-profile-card
    .safi-form-group.safi-profile-data
    label {
    margin-bottom: 0 !important;
}
.safi-profile
    .safi-profile-content
    .safi-profile-card
    .safi-form-group.safi-profile-data
    .show-value {
    background-color: #e2e2e2;
    padding: 13px 10px;
    border-radius: 4px;
    margin-top: 10px;
}
.safi-profile .safi-profile-content .safi-profile-card-update {
    padding-top: 15px;
}
.safi-profile .safi-profile-content .safi-profile-card-update p {
    color: #666;
    display: inline-block;
    margin-bottom: 2rem;
    border-bottom: 1px solid #666;
    padding-bottom: 10px;
}
.safi-profile
    .safi-profile-content
    .safi-profile-card-update
    .safi-profile-btn-update {
    border: 0;
    background-color: #4caf50;
    color: #fff;
    padding: 6px 20px;
    outline: 0;
    border-radius: 5px;
    cursor: pointer;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}
/* End Profile Page */
.safi-shop-map {
    margin-top: 3rem;
    border: 1px solid #eee;
}
.safi-shop-map label {
    display: block;
    margin: 25px 15px;
    font-size: 18px;
    font-weight: 600;
    color: #777;
}
.safi-shop-info {
    margin-bottom: 40px;
    padding: 10px;
}
.safi-shop-info .title {
    display: inline-block;
    color: #777;
    margin-left: 10px;
}
.safi-shop-info .value {
    font-weight: 400;
}
.safi-show-product-ratings {
    margin-top: 3rem;
    padding: 20px;
}
.safi-show-product-ratings h3 {
    margin: 10px 0 0;
    border-bottom: 1px solid #777;
    color: #777;
    padding-bottom: 10px;
    width: fit-content;
    display: block;
    font-size: 20px;
    font-weight: 500;
}
.safi-show-product-ratings .content {
    margin: 35px 0 0;
}
.safi-show-product-ratings .content ul {
    padding-right: 15px;
}
.safi-show-product-ratings .content ul li {
    padding: 5px 10px;
    background-color: #eee;
    border-radius: 5px;
}
.safi-show-product-ratings .content ul li:not(:last-child) {
    margin-bottom: 20px;
}
.safi-show-product-ratings .content ul li p {
    margin: 20px 0px;
}
.safi-show-product-ratings .content ul li .user {
    position: relative;
    margin-right: 25px;
    color: #777;
    font-size: 18px;
    padding-bottom: 5px;
    border-bottom: 1px solid #777;
    width: fit-content;
}
.safi-show-product-ratings .content ul li .user i {
    position: absolute;
    right: -23px;
    font-size: 15px;
    top: 1px;
}