* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
    text-decoration: none;
    list-style: none;
}
:root {
    --primary-color: hsl(26, 100%, 55%);
    --secondary-color: hsl(25, 100%, 94%);
    --tertiary-color: #778beb;
    --white-color: #fff;
    --dark-color: #1d2025;
    --black-color: #000000a5;
    --Grayish-blue: #b6bcc8;
    --Dark-grayish-blue: #68707d;
    --Light-grayish-blue: #f7f8fd;
    --font-medium: 400;
    --font-bold: 700;
}
body {
    font-family: "Kumbh Sans", serif;
}
header {
    width: 80%;
    margin: auto;
    padding: 15px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: solid 2px var(--secondary-color);
    .fa-xmark,
    .fa-bars {
        display: none;
        cursor: pointer;
    }
}
header .logo {
    font-weight: var(--font-bold);
    color: var(--dark-color);
}
header nav ul {
    display: flex;
    align-items: center;
    li  {
        font-weight: var(--font-medium);
        margin: 0 10px;
        position: relative; 
        &::before {
            position: absolute;
            content: "";
            width: 0;
            height: 3px;
            background-color: var(--primary-color);
            left: 0;
            bottom: -32px;
            transition: 0.3s;
        }
        &:hover::before {
            width: 100%;
        }
        a {
            color: var(--black-color);
            &:hover {
                color: var(--dark-color);
            }
        }
    }
}
.active {
    display: none;
}
header .right-nav {
    width: 40%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    .cart {
        margin-right: 30px;
        font-size: 20px;
        position: relative;
        svg {
            cursor: pointer;
        }
        .count-item {
            position: absolute;
            top: -10px;
            right: -10px;
            background: var(--primary-color);
            color: var(--white-color);
            font-size: 12px;
            padding: 2px 7px;
            border-radius: 50%;
            display: none;
        }
        .shop {
            position: absolute;
            width: 350px;
            min-height: 230px;
            max-height: 460px;
            background: var(--white-color);
            top: 50px;
            left: -150px;
            overflow: auto;
            scrollbar-width: thin;
            border-radius: 8px;
            box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.4);
            z-index: 2222;
            h6 {
                padding: 20px;
                border-bottom: solid 2px var(--secondary-color);
            }
            .cart-items {
                padding: 20px;
                .massage {
                    margin-top: 40px;
                    text-align: center;
                    font-size: 16px;
                    color: var(--Dark-grayish-blue);
                }
            }
            .cart-item {
                display: flex;
                justify-content: space-between;
                align-items: center;
                flex-wrap: wrap;
                &:not(:first-child) {
                    padding-top: 10px;
                    border-top: solid 2px var(--secondary-color);
                }
                img {
                    width: 50px;
                    height: 50px;
                    border-radius: 7px;
                }
                .cart-item-info {
                    margin: 0 10px;
                    p {
                        padding: 4px 0;
                        font-size: 14px;
                        color: var(--Grayish-blue);
                        span {
                            color: var(--dark-color);
                            font-weight: var(--font-bold);
                        }
                    }
                }
            }
            button {
                all: unset;
                cursor: pointer;
            }
            button.remove-btn {
                color: var(--Dark-grayish-blue);
                font-size: 18px;
            }
            button.check-btn {
                width: 100%;
                padding: 10px 0;
                margin: 20px auto;
                background: var(--primary-color);
                text-align: center;
                font-weight: var(--font-bold);
                border-radius: 5px;
            }
        }
    }
    .profile {
        margin: 0 10px;
        img {
            width: 50px;
            border-radius: 50%;
            cursor: pointer;
            &:hover {
                border: solid 2px var(--primary-color);
            }
        }
    }
}
.container {
    width: 80%;
    margin: auto;
    padding: 0 20px;
    height: calc(100vh - 86px);
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 0 20px;
    
}
.container .images {
    display: flex;
    flex-direction: column;
    .main img {
        width: 400px;
    }
    .active-img {
        border: solid 3px var(--primary-color);
        opacity: 0.7;
    }
    img {
        border-radius: 8px;
        cursor: pointer;
        &:hover {
            opacity: 0.7;
        }
        
    }
    .sub {
        display: flex;
        align-items: center;
        justify-content: space-between;
        img {
            width: 80px;
            margin-top: 30px;
        }
    }
}
.container .products {
    width: 45%;
    p {
        color: var(--Dark-grayish-blue);
        text-transform: uppercase;
    }
    h1 {
        font-size: 40px;
        margin: 20px 0;
    }
    .title {
        color: var(--Dark-grayish-blue);
        text-transform: capitalize;
    }
    .price {
        margin: 20px 0;
        .new-price {
            font-size: 25px;
            color: var(--dark-color);
            font-weight: var(--font-bold);
            display: flex;
            align-items: center;
            span {
                margin-left: 10px;
                font-size: 12px;
                color: var(--white-color);
                background: var(--dark-color);
                border-radius: 5px;
                padding: 2px 5px;
            }
        }
        .old-price {
            margin-top: 5px;
            font-size: 16px;
            color: var(--Dark-grayish-blue);
            text-decoration: line-through;
        }
    }
    .add-to-cart {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
        .counter {
            display: flex;
            align-items: center;
            background: var(--Grayish-blue);
            border-radius: 7px;
            .count {
                padding: 0 20px;
                font-weight: var(--font-bold);
            }
            button {
                all: unset;
                cursor: pointer;
                padding: 3px 15px;
                margin-bottom: 8px;
                color: var(--primary-color);
                font-size: 25px;
                font-weight: var(--font-bold);
            }
        }
        .add-btn {
            all: unset;
            background: var(--primary-color);
            color: var(--dark-color);
            padding: 12px 0;
            text-align: center;
            flex: 1;
            border-radius: 7px;
            font-weight: var(--font-bold);
            cursor: pointer;
        }
    }
}

.show-products {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--black-color);
    .images {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        width: 100%;
        .main {
            position: relative;
            img {
                height: 500px;
                width: 500px;
                pointer-events: none;
                &:hover {
                    opacity: 1;
                }
            }
        }
        img {
            width: 80%;
            margin: 0 7px;
        }
    }
}
.container .images .main .arrows.first {
    display: none;
}
.images .main {
    .arrows {
        width: 100%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        .fa-chevron-left {
            position: absolute;
            left: -10px;
        }
        .fa-chevron-right {
            position: absolute;
            right: -10px;
        }
        svg {
            padding: 10px;
            color: var(--dark-color);
            background: var(--white-color);
            border-radius: 50%;
            width: 20px;
            height: 20px;
            cursor: pointer;
            &:hover {
                color: var(--primary-color);
            }
        }
    }
}
.show-products .close {
    position: absolute;
    top: -40px;
    right: -20px;
    font-size: 30px;
    color: var(--primary-color);
    cursor: pointer;
}

@media (max-width: 992px) {
    .container {
        width: 100%;
    }
    .container .products {
        width: 80%;
    }
}
/* Mobile Screen */
@media (max-width: 768px) {
    header {
        width: 100%;
        height: 60px;
        padding: 0 20px;
        .fa-xmark,
        .fa-bars {
            display: block;
        }
        .right-nav {
            .cart {
                margin-right: 10px;
                .shop {
                    position: fixed;
                    left: 10px;
                    top: 70px;
                    width: calc(100% - 20px);
                }
            }
            .profile {
                img {
                    width: 30px;
                }
            }
        }
    }
    header .logo {
        margin-bottom: 10px;
    }
    .menu {
        font-size: 20px;
        cursor: pointer;
        color: var(--dark-color);
    }
    .fa-xmark {
        font-size: 20px;
        position: fixed;
        top: 20px;
        left: 20px;
        
    }
    header nav ul {
        display: none;
        position: fixed;
        left: 0;
        top: 0;
        height: 100vh;
        width: 70%;
        background: var(--white-color);
        padding-top: 80px;
        z-index: 99999;
        li {
            margin: 0 0 20px 20px;
            &::before {
                bottom: -10px;
            }
            a {
                font-weight: var(--font-bold);
            }
        }
    }
    .container {
        flex-direction: column;
    }
    .container .products {
        width: 100%;
    }
    .container .images .main .arrows.first {
        display: block;
    }
    .container .images {
        .main {
            position: relative;
            .arrows {
                top: calc(50% - 20px);
                .fa-chevron-left {
                    left: 10px;
                }
                .fa-chevron-right {
                    right: 10px;
                }
                svg {
                    padding: 10px;
                    width: 15px;
                    height: 15px;
                }
            }
        }
        .main img {
            width: 80vw;
            height: 300px;
            margin: auto;
            pointer-events: none;
        }
        .sub {
            display: none;
        }
    }
}
@media (max-width: 575px) {
    .container .images {
        .main img {
            width: 100vw;
            height: 270px;
        }
    }
    
    .container .products {
        p {
            font-size: 14px;
        }
        .title {
            text-transform: capitalize;
        }
        h1 {
            font-size: 25px;
            margin: 5px 0;
        }
        .price {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .add-to-cart {
            flex-direction: column;
            gap: 10px;
            width: 100%;
            div, .add-btn {
                justify-content: space-between;
                width: 100%;
            }
        }
    }
}