/* @font-face {
    font-family: Peignot;
    src: url("https://orizon.sgp1.cdn.digitaloceanspaces.com/shebha/static/fonts/peignot.regular.ttf");
}

@font-face {
    font-family: Galvji;
    src: url("https://orizon.sgp1.cdn.digitaloceanspaces.com/shebha/static/fonts/Galvji.ttc");
} */
/* @import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&display=swap'); */
@font-face {
    font-family: 'quichesans';
    src: url('../fonts/quichesans.otf');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'IvyMode';
    src: url('../fonts/IvyMode.woff');
    font-weight: normal;
    font-style: normal;
}

.libre-caslon-display-regular, h1, h2, h3, h4, h5, h6 {
    font-family: "quichesans", serif !important;
    font-style: normal;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    position: relative;
    border: none;
    outline: none;
    font-family: "IvyMode", serif;
    font-weight: 400;
    font-style: normal;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 102px;
}

/* h1,
h2,
h3 {
    font-family: Peignot;
} */

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #DCCCBD;
}

::-webkit-scrollbar-thumb {
    background: #483225;
}

::-webkit-scrollbar-thumb:hover {
    background: #35241b;
}

button{
    border-radius: 0;
}

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    /* padding: 24px 8vw; */
    z-index: 99;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    transition-duration: 0.3s;
    height: 13vh;
}

.navbar .left-side {
    display: flex;
    align-items: center;
    gap: 7vw;
}

.navbar svg {
    stroke: #DCCCBD;
}

.navbar.active svg, .navbar.open svg {
    stroke: #483225;
}

.navbar.active,
.navbar.open {
    background-color: rgba(251, 251, 251, 0.81);
    backdrop-filter: blur(2px);
    height: auto;
}

.navbar .logo-container .logo {
    display: block;
    height: 54px;
    text-decoration: none;
    width: fit-content;
}

.navbar .logo-container .logo img {
    height: 100%;
}

.navbar .logo-container .logo span {
    display: none;
}

.navbar .logo-container .icon-container {
    display: none;
}
.navbar .logo-container .icon-container .close-icon {
    display: none;
}
.navbar .logo-container .icon-container .close-icon, .navbar .logo-container .icon-container .menu-icon {
    padding: 1rem;
    cursor: pointer;
}

.navbar nav {
    display: flex;
    align-items: center;
    gap: 4.8vw;
}

.navbar .nav-link {
    color: #716158;
    text-decoration: none;
    font-size: 20px;
    font-weight: 300;
    padding: 2px;
    font-family: Peignot;
    
}

.navbar.active .nav-link,
.navbar.open .nav-link {
    color: #483225;
}

.nav-link .icon-container {
    display: none;
}

.navbar-cart-icon {
    display: flex;
}

.navbar-cart-icon svg {
    width: 32px;
}

.navbar-cart-icon span {
    position: absolute;
    top: -8px;
    right: -8px;
    font-size: 12px;
    background-color: #dc3545;
    color: #ffffff !important;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 18px;
    height: 18px;
    z-index: 1;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.navbar .right-side{
    display: flex;
    align-items: center;
    gap: 2rem;
}
.navbar .search-btn, .navbar .search-box button.close{
    width: 1.8rem;
    background-color: transparent;
}
.navbar .search-box{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #eee;
    z-index: -1;
    opacity: 0;
    transition: 0.3s;
}
.navbar .active-search{
    z-index: 2;
    opacity: 1;
}
.navbar .search-box .search-container{
    display: flex;
    flex-direction: row;
    max-width: 600px;
    margin: auto;
    padding: 1rem;
    gap: 2rem;
}
.navbar .search-box .search-container .input-container{
    flex: 1;
    display: flex;
    background-color: #48322527;
}
.navbar .search-box .search-container .input-container button.search{
    width: 4.5rem;
    padding: 0.25rem 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #fff;
    background-color: #483225;
}
.navbar .search-box .search-container .input-container .search span{
    font-size: 12px;
}
.navbar .search-box .search-container input{
    padding: 0.5rem 0.5rem 0.5rem 1rem;
    background-color: transparent;
    width: 100%;
}


/* Global styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Peignot', sans-serif;
}

/* Footer styles */
.footer {
    background-color: #483225; 
}

.footer .cont {
    display: grid;
    grid-template-columns: 2fr 4fr 1fr;
    justify-items: center;
    align-items: start;
    padding-top: 3rem;
    padding-bottom: 3rem;
    color: #DCCCBD;
}

.logo-container {
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    /* text-align: center; */
    gap: 10px;
}

.logo-container .logo {
    width: 25px;
    height: auto;
}

.logo-container .brand-name {
    color: #DCCCBD;
    font-size: 24px;
    font-weight: bold;
    margin: 0;
}

.footer-links {
    text-align: center;
    color: #DCCCBD;
    background: #39271d;
    padding: 1.5rem;
}

.footer-links p {
    margin: 0;
}

.footer-links a {
    color: #DCCCBD;
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s ease-in-out;
}

.footer-links a:hover {
    color: #E3B084; /* Light gold color from the brand theme */
}

.social-container span {
    display: block;
    color: #DCCCBD;
    font-size: 16px;
    margin-bottom: 12px;
}

.social-icons {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
}

.social-icons a img {
    width: 32px;
    height: 32px;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.social-icons a:hover img {
    transform: scale(1.1);
    opacity: 0.8;
}

.links-container {
    display: flex;
    justify-content: center;
    gap: 80px;
}

.links-container .column {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.links-container .column h5{
    font-size: 18px;
    font-weight: bold;
    margin: 0;
}

.links-container a {
    color: #DCCCBD;
    text-decoration: none;
    font-size: 16px;
    transition: color 0.3s ease-in-out;
}

.links-container a:hover {
    color: #E3B084; /* Light gold color from the brand theme */
}

/* Responsive design */
@media screen and (max-width: 992px) {
    .links-container {
        gap: 50px;
    }
}
@media screen and (max-width: 768px) {
    .navbar {
        height: 9vh;
    }
    .footer .cont {
        padding-top: 40px;
        padding-bottom: 40px;
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .links-container {
        flex-wrap: wrap;
        gap: 20px;
        justify-content: left;
    }

    .footer-links {
        padding: 1rem;
    }

    .social-container {
        order: 3;
        text-align: center;
    }

    .social-icons {
        justify-content: center;
    }
    .logo-container {
        align-items: center;
        text-align: center;
    }
}


.products-section {
    background: #ffffff;
    width: 100%;
    /* min-height: 100vh; */
    /* padding: 0 6vw; */
}

.products-header {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.4vw;
    padding: 1rem;
    text-align: center;

}

.products-section .products-header h2 {
    font-size: calc(3vw + 16px);
    word-spacing: 0.4vw;
    color: #483225;
    width: max-content;
}

.products-section .products-header .title-separator {
    flex: 1;
    height: 2px;
    background-color: #483225;
    position: relative;
    top: -1vw;
    opacity: 0.6;
}

.products-section .content-container {
    display: flex;
    align-items: stretch;
    gap: 24px;
    flex-wrap: wrap;
    margin: 24px 0;
}

.product-card {
    width: calc((100% - 48px) / 3);
    padding: 6px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 4px;
}

.product-card .product-card-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.product-card .img-container {
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    overflow: hidden;
    margin-bottom: 4px;
    box-shadow: 0px 0px 8px 2px #32323232;
    margin-bottom: 8px;
}

.product-card .img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-card .product-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 4px;
}

.product-card .product-header h2 {
    font-size: calc(0.4vw + 14px);
    color: #483225;
    /* font-family: Galvji; */
    letter-spacing: 1.5px;
}

.product-card .product-header span {
    font-size: calc(0.4vw + 12px);
    color: #483225;
    font-weight: bold;
}

.product-card .product-description {
    color: #483225;
    font-size: calc(0.5vw + 10px);
    text-align: justify;
    margin: 16px 0;
}

.product-card .btns-container {
    display: flex;
    gap: 6px;
    align-items: stretch;
    margin-top: 4px;
}

.product-card .btns-container .btn {
    background-color: #483225;
    color: #fff;
    flex: 1;
    padding: 8px 4px;
    cursor: pointer;
    font-size: calc(0.5vw + 10px);
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    transition-duration: 0.1s;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    text-decoration: none;
}

.product-card .btns-container .btn img {
    width: 16px;
}

.product-card .btns-container .btn-secondary {
    background-color: #fff;
    color: #483225;
    border: 1px solid #483225;
}

.product-card .btns-container .btn-secondary .dark-icon {
    display: none;
}

.product-card .btns-container .btn:hover {
    opacity: 0.9;
}

.product-card .btns-container .btn:active {
    transform: scale(1.04);
    -webkit-transform: scale(1.04);
    -moz-transform: scale(1.04);
    -ms-transform: scale(1.04);
    -o-transform: scale(1.04);
}

.see-more-btn-container {
    padding: 12px;
    display: flex;
    justify-content: center;
}

.see-more-btn-container .see-more-btn {
    font-size: calc(0.5vw + 12px);
    padding: 8px 36px;
    background-color: #ffffff;
    color: #483225;
    border: 1px solid #483225;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    cursor: pointer;
    transition-duration: 0.1s;
    text-decoration: none;
}

.see-more-btn-container .see-more-btn:hover {
    background-color: #483225;
    color: #ffffff;
}

.floating-btn {
    position: fixed;
    bottom: 16px;
    right: 16px;
    width: 56px;
    height: 56px;
    background-color: #483225;
    color: #DCCCBD;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition-duration: 0.1s;
    box-shadow: 0px 0px 2px 2px #ffffff32;
    display: none;
    z-index: 10;
}

.floating-btn:hover {
    opacity: 0.9;
}

.floating-btn img {
    width: 24px;
}

.floating-btn .dark-icon {
    display: none;
}

.floating-btn span {
    width: 22px;
    height: 22px;
    background-color: #dc3545;
    color: #ffffff;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -8px;
    right: 0px;
    font-size: 14px;
}

.floating-btn span[count="0"] {
    display: none;
}
/* add to cart droplist  */
.add-to-cart-group{
    position: relative;
    display: flex;
    flex: 1;
}
.add-to-cart-group ul{
    position: absolute;
    bottom: calc(100% + 4px);
    right: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-height: 0px;
    transition: 0.5s;
    transition-timing-function: ease-in-out;
    overflow: hidden;
}
.add-to-cart-group ul li{
    flex-grow: 1;
}
.add-to-cart-group ul li button{
    width: 100%;
    background-color: #483225;
    color: #ccc;
    padding: 0.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: small;
    transition: 0.3s;
}
.add-to-cart-group ul li button:hover{
    background-color: #5e4232;
}
.add-to-cart-group .open-options{
    flex-grow: 1;
    padding: 0.3rem 1rem;
    background-color: transparent;
    border:1px solid #fff;
    color: #fff;
    transition: 0.3s;
    border-radius: 0;
}
.add-to-cart-group .open-options:hover {
    background-color: #fff;
    color: #483225;
}
.open-menu{
    max-height: 500px !important;
}

@media screen and (max-width: 860px) {
    .floating-btn {
        display: flex;
    }

    .navbar .logo-container .logo {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        height: 36px;
    }

    .navbar .logo-container .logo span {
        display: inline;
        color: #716158;
        font-size: 14px;
    }

    .navbar.active .logo-container .logo span,
    .navbar.open .logo-container .logo span {
        color: #483225;
    }

    /* .navbar {
        padding:10px 24px 10px 3rem;
    } */

    .navbar .left-side {
        flex-direction: column;
        gap: 24px;
        width: 100%;
    }

    .navbar .right-side {
        display: none;
    }

    .navbar.active,
    .navbar.open {
        box-shadow: 0px 0px 2px 2px rgba(4, 4, 4, 0.19);
    }

    .navbar nav {
        display: none;
    }

    .navbar.open nav {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        gap: 24px;
    }

    .navbar .logo-container .icon-container {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .navbar .logo-container .icon-container img,
    .navbar .logo-container .icon-container svg {
        width: 18px;
    }

    .navbar .logo-container .icon-container svg.menu-icon {
        stroke: #716158;
    }
    
    .navbar.active .logo-container .icon-container svg.menu-icon {
        stroke: #483225;
    }

    .navbar .logo-container .icon-container svg.close-icon {
        color: #DCCCBD;
    }
    
    .navbar.active .logo-container .icon-container svg.close-icon,
    .navbar.open .logo-container .icon-container svg.close-icon {
        color: #483225;
    }
    
    .navbar .logo-container .icon-container img.close-icon,
    .navbar .logo-container .icon-container svg.close-icon {
        display: none;
    }

    .navbar.open .logo-container .icon-container img.close-icon,
    .navbar.open .logo-container .icon-container svg.close-icon {
        display: flex;
    }

    .navbar .logo-container .icon-container img.menu-icon,
    .navbar .logo-container .icon-container svg.menu-icon {
        display: flex;
    }

    .navbar.open .logo-container .icon-container img.menu-icon,
    .navbar.open .logo-container .icon-container svg.menu-icon {
        display: none;
    }

    .navbar .logo-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        flex-direction: row;
    }

    html {
        scroll-padding-top: 84px;
    }

    .nav-link {
        display: flex;
        gap: 8px;
    }

    .nav-link .icon-container {
        width: 24px;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

    .nav-link .icon-container img,
    .nav-link .icon-container svg {
        width: 20px;
    }

    .nav-link span {
        color: rgba(72, 50, 37, 0.64);
        font-family: Peignot;
    }
}

@media screen and (max-width: 960px) {
    .product-card {
        width: calc((100% - 24px) / 2);
    }
}

@media screen and (max-width: 680px) {
    .product-card .btns-container {
        flex-direction: column;
    }

    .products-section .content-container {
        gap: 12px;
    }

    .product-card {
        width: calc((100% - 12px) / 2);
    }

    .products-section {
        padding: 0;
    }

    .product-card .product-description {
        color: #483225;
        font-size: calc(0.5vw + 10px);
        text-align: justify;
        margin: 8px 0;
    }
}


/* custom container */
.cont{
    padding-left: 6rem;
    padding-right: 6rem;
}
@media screen and (max-width: 992px) {
    .cont{
        padding-left: 3rem;
        padding-right: 3rem;
    }
}
@media screen and (max-width: 768px) {
    .cont{
        padding-left: 1rem;
        padding-right: 1rem;
    }
}