@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Spartan:wght@400;500;600;700&display=swap');

@media screen and (min-width: 1150px) {
    :root {
        /* ... Custom properties (variables) defined here ... */
        --header-height: 4rem;
    
        /* Colors */
        --first-color: #2d71f8; /* #0658F6 */
        --first-color-alt: #ffffff;
        --title-color: hsl(0, 0%, 0%); /* hsl(0, 0%, 13%) */
        --text-color: hsl(153, 10%, 22%); /* hsl(154, 13%, 32%) */
        --text-color-light: hsl(60, 1%, 56%);
        --body-color: #ffffff;
        --container-color: hsl(0, 0%, 93%);
        --border-color-alt: hsl(113, 15%, 90%); /* --border-color: hsl(129, 36%, 85%); */
        --border-color: rgb(184, 183, 183);
    
        /* Font and Typography */
        --body-font: 'Lato', sans-serif;
        --second-font: 'Spartan', sans-serif;
        --big-font-size: 4rem;
        --h1-font-size: 2.75rem;
        --h2-font-size: 2rem;
        --h3-font-size: 1.75rem;
        --h4-font-size: 1.5rem;
        --large-font-size: 1.25rem;
        --normal-font-size: 1rem;
        --small-font-size: 0.875rem;
        --tiny-font-size: 0.75rem;
    
        /* Font Weight */
        --weight-400: 400;
        --weight-500: 500;
        --weight-600: 600;
        --weight-700: 700;
    
        /* Transition */
        --transition: cubic-bezier(0, 0, 0.05, 1);
    } 

    /* Base */
    /*================= Base =================*/
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    input, textarea, body {
        color: var(--text-color);
        font-family: var(--body-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-400);
    }

    body {
        background-color: var(--body-color);
        display: flex;
        flex-direction: column;
        min-height: 100vh;
    }

    main {
        flex: 1;
    }

    h1, h2, h3, h4 {
        font-family: var(--second-font);
        color: var(--title-color);
        font-weight: var(--weight-600);
    }

    ul {
        list-style: none;
    }

    a {
        text-decoration: none;
    }

    img {
        max-width: 100%;
    }

    button, textarea, input {
        background-color: transparent;
        border: none;
        outline: none;
        cursor: pointer;
    }

    button {
        cursor: pointer;
    }

    textarea, input {
        cursor: text;
    }

    /* Reusable Class */
    /*================= Reusable Class =================*/
    .container {
        max-width: 75vw;
        margin-inline: auto;
    }

    .form__input {
        border: 1px solid var(--border-color-alt);
        padding-inline: 1rem;
        height: 45px;
        border-radius: 0.25rem;
        font-size: var(--small-font-size);
    }

    .grid {
        display: grid;
        gap: 1.5rem;
    }

    .section {
        padding-block: 2rem;
    }

    .section--lg {
        padding-block: 2.5rem;
    }

    .section__title {
        font-size: var(--h4-font-size);
        margin-bottom: 1.5rem;
    }

    .section__title span {
        color: var(--first-color);
    }

    .new__price {
        color: var(--first-color);
        font-weight: var(--weight-600);
    }

    .old__price {
        color: var(--text-color-light);
        text-decoration: line-through;
    }

    .desktop__off {
        display: none !important;
    }

    .loading__overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 9999;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .overlay__loading {
        font-size: var(--h2-font-size);
        color: var(--first-color-alt);
        margin-right: 1.5rem;
    }

    @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }

    .overlay__spinner {
        border: 4px solid rgba(255, 255, 255, 0.3);
        border-top: 4px solid #ffffff;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        animation: spin 1s linear infinite;
    }

    .button__spinner {
        border: 4px solid rgba(197, 197, 197, 0.3);
        border-top: 4px solid #ffffff;
        border-radius: 50%;
        width: 2rem;
        height: 2rem;
        animation: spin 1s linear infinite;
    }

    /*================= Header & Nav =================*/
    .header__top {
        background-color: #5d93ff;
        padding-block: 0.75rem;
    }

    .header__container {
        display: flex;
        align-items: center;
        justify-content: space-around;
    }

    .header__news {
        color: var(--first-color-alt);
        font-size: var(--large-font-size);
    }

    .nav, .nav__menu, .nav__list, .header__user-actions, .sub__nav__list {
        display: flex;
        align-items: center;
    }

    .nav {
        height: calc(var(--header-height) + 2.5rem);
        justify-content: space-between;
    }

    .nav__top {
        width: 17%;
    }

    .nav__logo {
        width: 25vw;
    }

    .nav__links {
        display: none;
    }

    .nav__menu {
        width: 75%;
        justify-content: space-between;
        gap: 1.5rem;
    }

    .nav__list {
        column-gap: 2rem;
    }

    .nav__link {
        color: var(--title-color);
        font-weight: var(--weight-700);
        white-space: nowrap;
        transition: all 0.2s var(--transition);
    }

    .nav__link i {
        font-weight: var(--weight-500);
    }

    .sub__nav__background {
        background-color: var(--first-color);
    }

    .sub__nav__list {
        justify-content: space-between;
        height: 3.5rem;
        max-width: 1320px;
        margin-inline: auto;
        padding-inline: 0.75rem;
    }

    .sub__nav__element {
        display: flex;
        align-items: center;
        position: relative;
        height: 3.5rem;
        padding: 0rem 2rem;
    }

    .sub__nav__element:hover {
        background-color: var(--first-color-alt);
        border-radius: 1.25rem;
        box-shadow: 0 -1px 5px 0 hsla(0, 0%, 0%, 0.1);
    }

    .sub__nav__element:hover .sub__nav__link {
        color: var(--first-color);
    }

    .sub__nav__link {
        color: var(--first-color-alt);
        transition: all 0.2s var(--transition);
        white-space: nowrap;
    }

    .sub__nav__subcategories {
        display: grid;
        gap: 0.75rem;
        position: absolute;
        top: 3.5rem;
        white-space: nowrap;
        box-shadow: 0 0 15px hsla(0, 0%, 0%, 0.25);
        background-color: var(--body-color);
        color: var(--first-color);
        border-radius: 0.5rem;
        z-index: 3;
    }

    .sub__nav__subcategories__styles {
        padding: 1rem 0rem;
        text-transform: capitalize;
    }

    .sub__nav__subcategory {
        color: var(--first-color);
        display: flex;
        gap: 1.5rem;
        justify-content: space-between;
    }

    .sub__nav__sub__element {
        position: relative;
        padding: 0rem 1rem;
    }

    .sub__nav__subcategories__2 {
        display: grid;
        gap: 0.75rem;
        position: absolute;
        white-space: nowrap;
        box-shadow: 0 0 15px hsla(0, 0%, 0%, 0.25);
        color: var(--first-color);
        background-color: var(--body-color);
        border-radius: 0.5rem;
        top: -0.75rem;
        left: 100%;
        padding: 0.75rem;
    }

    #category-list {
        position: absolute;
        background-color: var(--first-color);
        border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;
        z-index: 9999;
        margin-top: 0.375rem;
    }

    .category__nav__container {
        max-width: 1350px;
        margin-inline: auto;
        padding-inline: 0.75rem;
    }

    .category__nav__list {
        margin: 1rem 3.5rem 1rem 1rem;
    }

    .header__search {
        position: relative;
        width: 50%;
    }

    .header__search .form__input {
        width: 100%;
    }

    .search__btn {
        position: absolute;
        top: 24%;
        right: 1.25rem;
        cursor: pointer;
    }

    .header__user-actions {
        column-gap: 1.25rem;
    }

    .header__action-btn {
        position: relative;
    }

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

    .header__action-btn .count {
        position: absolute;
        top: -0.625rem;
        right: -0.625rem;
        background-color: var(--first-color);
        color: var(--first-color);
        color: var(--body-color);
        height: 18px;
        width: 18px;
        line-height: 18px;
        border-radius: 50%;
        text-align: center;
        font-size: var(--tiny-font-size);
    }

    .cart__modal {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
        position: fixed;
        top: 0rem;
        right: 0rem;
        padding: 1.5rem 2.5rem;
        width: 25rem;
        background-color: var(--first-color-alt);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        z-index: 10000;
        transition: all 10s var(--transition);
    }

    .cart__modal__top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid var(--border-color);
    }

    .cart__modal__tile {
        font-size: var(--h4-font-size);
        font-weight: var(--weight-500);
    }

    #cart-modal-close {
        font-size: var(--h2-font-size);
        padding-bottom: 0.25rem;
        cursor: pointer;
    }

    .modal__content {
        display: grid;
        grid-template-columns: 4fr 12fr 3fr;
        gap: 1.5rem;
    }

    .cart__modal__image {
        display: flex;
        justify-content: center;
    }

    .cart__modal__img {
        height: 5rem;
        object-fit: contain;
    }

    #cart-modal-names {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
    }

    #cart-modal-name {
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
    }

    .cart__modal__variant__name {
        font-size: var(--small-font-size);
        font-weight: var(--weight-500);
    }

    #cart-modal-quanity {
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
    }

    .cart__spinner {
        border: 4px solid rgba(197, 197, 197, 0.3);
        border-top: 4px solid #ffffff;
        border-radius: 50%;
        width: 2rem;
        height: 2rem;
        animation: spin 1s linear infinite;
    }

    /* Active Link */
    .active-link, .nav__link:hover, .sub__nav__link:hover {
        color: var(--title-color);
    }

    /* Master Nav */
    .master__nav {
        display: flex;
        justify-content: space-between;
        height: 2.5rem;
    }

    /*================= Home =================*/
    .home {
        position: relative;
        background: linear-gradient(102deg, rgba(45, 113, 248, 1) 0%, rgb(167 195 248) 85%, rgb(76, 130, 255) 100%);
    }

    .intro__wave {
        position: absolute;
        bottom: -0.125rem;
        width: 100%;
    }

    .home__container {
        grid-template-columns: 80fr 60fr;
        align-items: center;
        padding-block: 6rem 8rem;
        gap: 3.5rem;
        margin-bottom: 3rem;
        color: var(--first-color-alt);
    }

    .home__top {    
        font-size: var(--h2-font-size);
        font-family: var(--second-font);
        font-weight: var(--weight-600);
        display: block;
    }

    .home__title {
        font-size: var(--h1-font-size);
        font-weight: var(--weight-700);
        line-height: 1.4;
        white-space: nowrap;
        color: var(--first-color-alt);
    }

    .home__title span {
        font-size: var(--big-font-size);
    }

    .home__description {
        font-size: var(--h4-font-size);
        margin-block: 0.5rem 1.75rem;
        line-height: 1.4;
    }

    .home__button {
        color: var(--first-color-alt);
        font-size: var(--h3-font-size);
        font-weight: var(--weight-700);
        display: inline-block;
        background-color: var(--first-color);
        border-radius: 0.375rem;
        width: 80%;
        height: 3.5rem;
        text-align: center;
        align-content: center;
        transition: 0.3s;
    }

    .home__button:hover {
        color: var(--first-color);
        background-color: var(--first-color-alt);
    }

    .home__img {
        display: flex;
        justify-content: center;
    }

    .home__image {
        width: 80%;
    }

    /*================= Buttons =================*/
    .btn {
        display: inline-block;
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        padding-inline: 1.75rem;
        height: 49px;
        line-height: 49px;
        border-radius: .25rem;
        font-family: var(--second-font);
        font-size: var(--small-font-size);
        font-weight: var(--weight-700);
        transition: all 0.4s var(--transition);
    }

    .btn:hover {
        background-color: transparent;
        color: var(--first-color);
    }

    .btn--md {
        font-family: var(--body-font);
        height: 45px;
        line-height: 42px;
    }

    .btn--md,
    .btn--sm {
        font-family: var(--body-font);
    }

    .btn--md {
        height: 45px;
        line-height: 42px;
    }

    .btn--sm {
        height: 40px;
        line-height: 36px;
    }

    .flex {
        display: flex;
        align-items: center;
        column-gap: 0.5rem;
    }

    .modern__button {
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        width: 100%;
        height: 3rem;
        line-height: 3rem;
        border-radius: 5rem;
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        transition: all 0.4s var(--transition);
    }

    .modern__button:hover {
        background-color: var(--first-color-alt);
        color: var(--first-color);
    }

    /*================= CATEGORIES =================*/
    .categories {
        overflow: hidden;
    }

    .category__item {
        text-align: center;
        border: 1px solid var(--border-color-alt);
        padding: 0.625rem 0.625rem 1.25rem;
        border-radius: 1.25rem;
    }

    .category__img {
        border-radius: 0.75rem;
        margin-bottom: 1.25rem;
    }

    .category__title {
        color: var(--text-color);
        font-size: var(--small-font-size);
        margin-top: 1.25rem;
    }

    /* Swiper Class*/
    .swiper {
        overflow: initial;
    }

    .swiper-button-next::after,
    .swiper-button-prev::after {
        content: '';
    }
    
    .swiper-button-next,
    .swiper-button-prev {
        top: -1.875rem;
        background-color: var(--first-color-alt);
        border: 1px solid var(--border-color-alt);
        width: 30px;
        height: 30px;
        border-radius: 50%;
        color: var(--first-color);
        font-size: var(var(--tiny-font-size));
    }

    .swiper-button-prev {
        left: initial;
        right: 2.5rem;
    }

    .swiper-button-next {
        right: 0;
    }

    /*================= JOIN HOME =================*/
    .join {
        position: relative;
        background: linear-gradient(102deg, rgba(45, 113, 248, 1) 0%, rgb(96, 143, 253) 100%);
        margin-block: 3rem;
        color: var(--first-color-alt);
    }

    .second__wave {
        position: absolute;
        bottom: -0.125rem;
        width: 100%;
    }

    .join__content {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        align-items: center;
        padding-block: 4rem 10rem;
    }

    .join__title__home {
        font-size: var(--h2-font-size);
        text-align: center;
        color: var(--first-color-alt);
    }

    .join__items {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        color: var(--first-color-alt);
    }

    .join__item {
        font-size: var(--large-font-size);
        font-weight: var(--weight-500);
        color: var(--first-color-alt);
    }

    .join__item span {
        font-weight: var(--weight-600);
    }

    .join__button {
        color: var(--first-color);
        font-size: var(--h3-font-size);
        font-weight: var(--weight-700);
        display: inline-block;
        background-color: var(--first-color-alt);
        border-radius: 0.375rem;
        width: 20%; 
        height: 3.5rem;
        text-align: center;
        align-content: center;
        transition: 0.3s;
    }

    .join__button:hover {
        color: var(--first-color-alt);
        background-color: var(--first-color);
    }

    /*================= PRODUCTS =================*/
    .products__container {
        grid-template-columns: repeat(4, 1fr);
    }

    .product__item {
        border: 1px solid var(--border-color-alt);
        border-radius: 1.5rem;
        transition: all 0.2s var(--transition);
    }

    .product__banner {
        padding: 0.625rem 0.75rem 0.75rem;
        position: relative;
    }

    .image__container {
        position: relative;
        width: 100%;
        padding-top: 100%;
    }
    
    .product__img {
        position: absolute;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: all 1.5s var(--transition);
    }

    .product__item:hover .product__img {
        transform: scale(1.05);
    }

    .product__actions {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        column-gap: 0.5rem;
        transition: all 0.2s var(--transition);
    }

    .action__btn {
        width: 40px;
        height: 40px;
        line-height: 42px;
        text-align: center;
        border-radius: 50%;
        background-color: var(--first-color-alt);
        border: 1px solid var(--border-color-alt);
        color: var(--text-color);
        font-size: var(--small-font-size);
        position: relative;
    }

    .action__btn::before, 
    .action__btn::after {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        transition: all 0.3s cubic-bezier(0.071, 1.7, 0.77, 1.24);
    }

    .action__btn::before {
        content: '';
        top: -2px;
        border: 0.5rem solid transparent;
        border-top-color: var(--first-color);
    }

    .action__btn::after {
        content: attr(aria-label);
        bottom: 100%;
        background-color: var(--first-color);
        color: var(--body-color);
        font-size: var(--tiny-font-size);
        white-space: nowrap;
        padding-inline: 0.625rem;
        border-radius: 0.25rem;
        line-height: 2.58;
    }

    .product__badge {
        position: absolute;
        left: 1.25rem;
        top: 1.25rem;
        background-color: var(--first-color);
        color: var(--body-color);
        padding: 0.25rem 0.625rem;
        border-radius: 2.5rem;
        font-size: var(--tiny-font-size);
    }

    .product__badge.light-pink {
        background-color: hsl(341, 100%, 67%);
    }

    .product__badge.light-green {
        background-color: hsl(155, 20%, 67%);
    }

    .product__badge.light-orange {
        background-color: hsl(24, 100%, 73%);
    }

    .product__badge.light-pink {
        background-color: hsl(202, 53%, 76%);
    }

    .product__content {
        padding: 0 1.25rem 1.125rem;
        position: relative;
    }

    .product__category {
        color: var(--text-color-light);
        font-size: var(--small-font-size);
        text-transform: capitalize;
    }

    .product__title {
        font-size: var(--normal-font-size);
        margin-block: 0.75rem 0.5rem;
    }

    .product__ratings {
        color: hsl(24, 100%, 50%);
        font-size: var(--tiny-font-size);
        margin-bottom: 0.75rem;
    }

    .product__ratings__stars {
        display: flex;
        align-items: center;
    }

    .product__ratings__stars img {
        width: 0.75rem;
    }

    .total__reviews {
        margin-left: 0.25rem;
    }

    .product__price .new_price {
        font-size: var(--large-font-size);
    }

    .cart__btn {
        position: absolute;
        bottom: 1.6rem;
        right: 1.25rem;
    }

    /* Active Tab */
    .tab__item:not(.active-tab) {
        display: none;
    }

    /* Product Hover */
    .product__img.hover, 
    .product__actions, 
    .action__btn::before, 
    .action__btn::after, 
    .product__item:hover .product__img.default {
        opacity: 0;
    }

    .product__item:hover {
        box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.1);
    }

    .product__item:hover .product__img.hover,
    .product__item:hover .product__actions,
    .action__btn:hover::before,
    .action__btn:hover::after {
        opacity: 1;
    }

    .action__btn:hover::before,
    .action__btn:hover::after {
        transform: translateX(-50%) translateY(-0.5rem);
    }

    .action__btn:hover {
        background-color: var(--first-color);
        border: var(--first-color);
        color: var(--body-color);
    }

    .product__shopify__import {
        padding-block: 1rem;
    }

    .product__shopify__import button {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 1rem;
    }

    /*================= DEALS =================*/
    .deals__container {
        grid-template-columns: repeat(2, 1fr);
    }

    .deals__item:nth-child(1) {
        background-image: url(/static/image/deals-1.jpg);
    }

    .deals__item:nth-child(2) {
        background-image: url(/static/image/deals-2.png);
    }

    .deals__item {
        padding: 3rem;
        background-size: cover;
        background-position: center;
        display: flex;
        flex-direction: column;
        row-gap: 1.5rem;
    }
    
    .deals__brand {
        color: var(--first-color);
        font-size: var(--h3-font-size);
        margin-bottom: 0.25rem;
    }

    .deals__category {
        font-family: var(--second-font);
        font-size: var(--small-font-size);
    }

    .deals__title {
        max-width: 240px;
        font-size: var(--large-font-size);
        font-weight: var(--weight-400);
        line-height: 1.3;
    }

    .deals__price .new__price,
    .deals__price .old__price {
        font-size: var(--large-font-size);
    }

    .deals__price .new__price {
        color: hsl(352, 100%, 60%);
    }

    .deals__countdown-text {
        margin-bottom: 0.25rem;
    }

    .countdown {
        display: flex;
        column-gap: 1.5rem;
    }

    .countdown__amount {
        content: ':';
        color: var(--title-color);
        font-size: var(--large-font-size);
        position: absolute;
        right: -25%;
        top: 20%;
    }

    .countdown__period {
        background-color: var(--first-color);
        color: var(--body-color);
        width: 60px;
        height: 50px;
        line-height: 50px;
        text-align: center;
        border-radius: 0.25rem;
        font-size: var(--large-font-size);
        font-weight: var(--weight-600);
        margin-bottom: 0.5rem;
    }

    .unit {
        font-size: var(--small-font-size);
        text-align: center;
        display: block;
    }

    .deals__btn .btn {
        background-color: transparent;
        color: var(--first-color);
    }

    /*================= NEW ARRIVALS =================*/
    .new__arrivals {
        overflow: hidden;
    }

    /*================= SHOWCASE =================*/
    .showcase__container {
        grid-template-columns: repeat(4, 1fr);
        padding-bottom: 3rem;
    }

    .showcase__wrapper .section__title {
        font-size: var(--normal-font-size);
        border-bottom: 1px solid --border-color-alt;
        padding-bottom: 0.75rem;
        margin-bottom: 2rem;
        position: relative;
    }

    .showcase__wrapper .section__title::before {
        content: '';
        position: absolute;
        left: 0;
        bottom: -1.3px;
        width: 50px;
        height: 2px;
        background-color: var(--first-color);
    }

    .showcase__item {
        display: flex;
        align-items: center;
        column-gap: 1.5rem;
        height: 7rem;
    }

    .showcase__item:not(:last-child) {
        margin-bottom: 1.5rem;
    }

    .showcase__img-box {
        width: 5rem;
        height: 5rem;
    }

    .showcase__img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .showcase__content {
        width: calc(100% - 110px);
    }

    .showcase__title {
        font-size: var(--small-font-size);
        font-weight: var(--weight-500);
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 0.5rem;
    }

    /*================= FOOTER =================*/
    .footer {
        background: rgb(13,87,235);
        background: linear-gradient(160deg, rgba(13,87,235,1) 0%, rgba(45,113,248,1) 50%, rgba(118,164,255,1) 80%);
    }

    .footer__container {
        display: flex;
        padding-block: 4rem 3rem;
        justify-content: space-between;
        gap: 1rem;
    }

    .footer__main {
        display: flex;
        flex-direction: column;
        gap: 2.5rem;
    }

    .footer__logo {
        width: 15rem;
        text-align: center;
    }

    .language__currency {
        width: max-content;
    }

    .footer__title {
        font-size: var(--normal-font-size);
        color: var(--first-color-alt);
        padding-bottom: 0.375rem;
        white-space: nowrap;
    }

    .footer__selector {
        gap: 0.75rem;
    }

    .footer__payment {
        width: 15rem;
    }

    .footer__column {
        flex: 0 0 auto;
        width: max-content;
    }

    .footer__titles {
        font-size: var(--large-font-size);
        color: var(--first-color-alt);
        padding-bottom: 1rem;
    }

    .footer__link {
        color: var(--first-color-alt);
        font-size: var(--normal-font-size);
        padding: 0.5rem 0rem;
        display: block;
        transition: all 0.3s var(--transition);
    }

    .footer__link:hover {
        color:var(--first-color);
        margin-left: 0.25rem;
        background-color: var(--first-color-alt);
        padding-left: 0.5rem;
        border-radius: 0.25rem;
    }

    .footer__bottom {
        display: flex;
        justify-content: space-between;
        padding-bottom: 1.25rem;
        border-top: 1px solid var(--border-color-alt);
    }

    .copyright, .designer {
        color: var(--first-color-alt);
        font-size: var(--small-font-size);
    }

    #currency-modal {
        position: fixed;
        z-index: 1000;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0,0,0,0.5);
    }

    .currency__modal__content {
        background-color: white;
        margin: 10%;
        padding: 1.5rem;
        border-radius: 0.5rem;
        margin-inline: 10%;
    }

    .currency__modal__close {
        color: #aaa;
        float: right;
        font-size: var(--h2-font-size);
        font-weight: bold;
        line-height: 1.5rem;
    }

    #currency-list {
        max-height: 300px;
        overflow-y: auto;
    }
    
    #currency-list li {
        padding: 10px;
        cursor: pointer;
        border-bottom: 1px solid #ddd;
    }
    
    #currency-list li:hover {
        background-color: #f0f0f0;
    }

    /*================= BREADCRUMB =================*/
    .breadcrumb {
        padding-block: 1.5rem;
    }

    .breadcrumb__list {
        column-gap: 0.75rem;
    }

    .breadcrumb__link {
        columns: var(--text-color);
        font-size: var(--normal-font-size);
        white-space: nowrap;
    }

    /*================= SHOP =================*/
    .products {
        padding-block: 2rem;
    }
    
    .total__products {
        margin-bottom: 2.5rem;
    }

    .total__products span {
        color: var(--first-color);
        font-weight: var(--weight-600);
    }

    .sort__container {
        margin-bottom: 1.5rem;
        display: flex;
        justify-content: right;
        gap: 0.5rem;
        align-items: center;
    }

    .sort__input {
        border: 1px solid var(--border-color-alt);
        height: 1.75rem;
        padding-inline: 0.5rem;
        border-radius: 0.25rem;
        font-size: var(--normal-font-size);
    }

    .pagination {
        display: flex;
        column-gap: 0.625rem;
        margin-top: 2.75rem;
    }

    .pagination__link {
        display: inline-block;
        width: 34px;
        height: 34px;
        line-height: 34px;
        text-align: center;
        border-radius: 0.25rem;
        color: var(--text-color);
        font-size: var(--small-font-size);
        font-weight: var(--weight-700);
        transition: all 0.15s var(--transition);
    }

    .pagination__link.active,
    .pagination__link:hover {
        background-color: var(--first-color);
        color: var(--body-color);
    }

    .pagination__link.icon {
        border-top-right-radius: 50%;
        border-bottom-right-radius: 50%;
    }

    /*================= COLLECTION SHOP =================*/
    .car__parts {
        display: grid;
        gap: 2rem;
    }

    .category__page__title {
        color: var(--first-color);
        font-size: var(--h1-font-size);
        margin-bottom: 1rem;
    }

    .category__page__subtitle {
        color: var(--first-color);
        font-size: var(--h4-font-size);
    }   

    .collection__subcategories {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 3rem;
    }

    .subcategory__item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
    }

    .subcategory__circle {
        width: 15vw;
        height: 15vw;
        border-radius: 50%;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.2);
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }

    .subcategory__circle::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background: #000;
        opacity: 0.02;
        pointer-events: none;
    }

    .subcategory__title {
        font-size: var(--large-font-size);
    }

    .collection__featured {
        padding-block: 1.5rem;
    }

    .featured__titles {
        color: var(--first-color);
        font-size: var(--h3-font-size);
        margin-bottom: 1rem;
    }

    .category__container {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        gap: 0.5rem;
    }

    .category__container .product__title {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 1.5em; 
    }

    .check__all__button {
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        width: 100%;
        height: 3rem;
        line-height: 3rem;
        border-radius: 0.25rem;
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        transition: all 0.4s var(--transition);
        text-align: center;
    }

    /* Modal */
    .modal {
        display: none; /* Hidden by default */
        position: fixed; /* Stay in place */
        z-index: 1; /* Sit on top */
        left: 0;
        top: 0;
        width: 100%; /* Full width */
        height: 100%; /* Full height */
        overflow: auto; /* Enable scroll if needed */
        background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
    }
    
    .modal-content {
        background-color: #fefefe;
        margin: auto; /* Center the modal */
        padding: 1.75rem 2.5rem;
        width: 30%;
        border-radius: 1rem;
        position: relative; /* Position relative for centering */
        top: 50%; /* Position from the top */
        transform: translateY(-50%); /* Translate upwards by half its height */
    }

    #modal-heading {
        padding-bottom: 0.5rem;
    }

    #modal-heading a {
        color: var(--first-color);
        font-size: var(--h3-font-size);
    }

    #child-category-list a {
        padding-block: 0.25rem;
        color: var(--first-color);
        font-size: var(--normal-font-size);
        font-family: var(--second-font);
        font-weight: var(--weight-500);
    }
    
    .close-button {
        color: #aaa;
        float: right;
        font-size: var(--h2-font-size);
        font-weight: bold;
        line-height: 1.5rem;
    }
    
    .close-button:hover,
    .close-button:focus {
        color: black;
        text-decoration: none;
        cursor: pointer;
    }

    /*================= CAR PARTS SHOP =================*/
    .car__parts__image {
        width: 60%;
        object-fit: cover;
    }

    /*================= CAR PARTS SHOP =================*/
    .car__parts__image {
        width: 60%;
        object-fit: cover;
    }

    /*================= DETAILS =================*/
    .details {
        padding-block: 1.5rem;
    }

    .details__container {
        display: grid;
        gap: 1.5rem;
        grid-template-columns: 5.5fr 6.5fr;
    }

    .details__image__container {
        position: relative;
        width: 100%;
        padding-top: 100%;
        margin-bottom: 0.5rem;
    }
    
    .details__img {
        position: absolute;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: all 1.5s var(--transition);
    }

    .main__image {
        border: 0px solid var(--border-color-alt);
        border-radius: 1.5rem;
    }

    .details__small__images {
        grid-template-columns: repeat(4, 1fr);
        column-gap: 0.625rem;
        display: grid;
    }

    .details__small-img {
        cursor: pointer;
        border: 1px solid var(--border-color-alt);
        border-radius: 0.5rem;
    }

    .details__title {
        font-size: var(--h2-font-size);
    }

    .details__brands {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .details__brand {
        font-size: var(--large-font-size);
        margin-block: 1rem;
    }

    .details__brand a {
        color: var(--first-color);
    }

    .details__brand span {
        color: var(--first-color);
    }

    .product__rating {
        display: flex;
        align-items: center;
        color: hsl(24, 100%, 50%);
        font-size: var(--normal-font-size);
    }

    .product__rating p:first-child {
        margin-right: 0.25rem;
        font-size: var(--normal-font-size);
    }

    .product__rating p:nth-of-type(2) {
        margin-left: 0.25rem;
        font-size: var(--normal-font-size);
    }

    .product__rating .stars {
        display: inline-flex;
        align-items: center;
    }

    .product__rating .stars img {
        width: 1rem;
        height: 1rem;
    }

    .details__price__shipping {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
        border-top: 1.5px solid var(--border-color-alt);
        border-bottom: 1.5px solid var(--border-color-alt);
        padding-block: 1rem;
        margin-block: 1rem;
    }

    .details__price {
        display: flex;
        align-items: center;
        gap: 1.25rem;
    }

    .details__price .new__price {
        font-size: var(--h2-font-size);
        font-weight: var(--weight-500);
    }

    .details__price .old__price {
        font-size: var(--h4-font-size);
    }

    .details__price img {
        width: 60%;
    }

    .details__payment__method {
        width: 38%;
        object-fit: contain;
    }

    .details__top__choice {
        background-color: #FFDF5A;
        font-weight: var(--weight-700);
        padding: 0.5rem 1rem;
        border-radius: 0.25rem;
        white-space: nowrap;
    }

    .details__delivery__date {
        color: var(--title-color);
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
    }

    #shipping-date {
        font-weight: var(--weight-600);
    }

    #detail-delivery-country {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        color: var(--first-color);
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
    }

    #detail-delivery-country img {
        width: 1.75rem;
    }

    #detail-delivery-country p {
        padding-top: 0.25rem;
    }

    .shipping__modal {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
        align-items: center;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: white;
        padding: 3rem;
        border-radius: 2rem;
        box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
        z-index: 1000;
    }

    .shipping__modal__title {
        color: var(--first-color);
        font-size: var(--large-font-size);
    }

    #shipping-modal-background {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 500;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .short__description {
        margin-top: 2rem;
        line-height: 1.5rem;
        display: grid;
        gap: 2rem;
    }

    .short__description div {
        display: grid;
        gap: 0.5rem;
    }

    .short__description h1 {
        font-size: var(--h4-font-size);
    }

    .short__description h2 {
        color: var(--first-color);
        font-size: var(--large-font-size);
    }

    .short__description h3 {
        font-size: var(--normal-font-size);
    }

    .short__description ol {
        padding-left: 1rem;
    }

    .variant__section {
        display: flex;
        gap: 1rem;
        align-items: center;
        margin-bottom: 1rem;
    }

    .product__list {
        display: flex;
        gap: 1rem;
    }

    .product__secure {
        display: flex;
        flex-direction: column;
        padding: 1rem;
        border-radius: 0.75rem;
        gap: 0.5rem;
        text-align: center;
        width: 23%;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.075);
        align-items: center;
    }

    .product__secure img {
        width: 30%;
    }

    .product__secure h4 {
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        line-height: var(--h4-font-size);
        font-weight: var(--weight-600);
    }

    .variant__label {
        margin-block: 1rem;
    }

    .variant__dropdown {
        border: 1px solid var(--border-color-alt);
        font-size: var(--small-font-size);
        padding-block: 0.5rem;
        border-radius: 0.25rem;
        padding-inline: 0.25rem 0.5rem;
    }

    .list__item,
    .meta__list {
        font-size: var(--small-font-size);
        margin-bottom: 0.75rem;
    }

    .details__color,
    .details__size {
        column-gap: 0.75rem;
    }

    .details__color {
        margin-block: 2rem 1.5rem;
    }

    .details__size {
        margin-bottom: 2.5rem;
    }

    .details__color-title,
    .details__size-title {
        font-size: var(--small-font-size);
        font-weight: var(--weight-600);
    }

    .color__list,
    .size__list {
        display: flex;
        column-gap: 0.25rem;
    }

    .color__link {
        width: 26px;
        height: 26px;
        border-radius: 50%;
        display: block;
    }

    .size__link {
        border: 1px solid var(--border-color-alt);
        padding: 0.375rem 0.75rem 0.5rem;
        color: var(--text-color);
        font-size: var(--small-font-size);
    }

    .size-active {
        background-color: var(--first-color);
        color: var(--body-color);
    }

    .details__action {
        display: flex;
        column-gap: 0.75rem;
        margin-bottom: 1.5rem;
    }

    .details__action button {
        width: 25%;
        white-space: nowrap;
        height: 40px;
        line-height: 36px;
        font-family: var(--body-font);
        display: inline-block;
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        padding-inline: 1.75rem;
        border-radius: .25rem;
        font-size: var(--small-font-size);
        font-weight: var(--weight-700);
        transition: all 0.4s var(--transition);
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .details__action button:hover {
        background-color: transparent;
        color: var(--first-color);
    }

    .details__safe__checkout {
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin-bottom: 1.5rem;
    }

    .details__safe__checkout img {
        max-width: 47%;
        object-fit: contain;
        border-radius: 0.5rem;
    }

    .quantity,
    .details__action-btn {
        border: 1px solid var(--border-color-alt);
        font-size: var(--small-font-size);
    }

    .details__button {
        height: 2.5rem;
        font-family: var(--body-font);
        background-color: var(--first-color);
        color: var(--body-color);
        border-radius: 5rem;
        font-size: var(--normal-font-size);
        line-height: var(--normal-font-size);
        font-weight: var(--weight-500);
        transition: all 0.4s var(--transition);
    }

    .quantity {
        max-width: 4rem;
        padding-inline: 1rem 0.5rem;
        border-radius: 0.25rem;
        height: 100%;
    }

    .details__action-btn {
        color: var(--text-color);
        line-height: 40px;
        padding-inline: 0.75rem;
    }

    .details__meta {
        border-top: 1px solid var(--border-color-alt);
        padding-top: 1rem;
    }

    .details__intro__container {
        margin-bottom: 1.5rem;
        padding: 1.25rem 1.5rem;
        border-radius: 0.75rem;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.2);
    }

    .details__intro__title {
        color: var(--first-color);
        font-size: var(--large-font-size);
        margin-bottom: 0.375rem;
    }

    .details__description-title {
        color: var(--first-color);
        font-size: var(--h3-font-size);
    }

    .details__description {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.375rem;
        padding: 2rem;
        margin-bottom: 2.5rem;
    }

    .related__products {
        margin-bottom: 2.5rem;
    }

    .related__products__title {
        color: var(--first-color);
        font-size: var(--h3-font-size);
        margin-bottom: 1rem;
    }

    /*================= PRODUCT NOT FOUND =================*/
    .product__not__found__container {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        text-align: center;
    }

    .product__not__found__title {
        font-size: var(--h4-font-size);
    }

    /*================= CART =================*/
    .table__container {
        overflow-x: auto;
    }

    .table {
        table-layout: fixed;
        margin-bottom: 2rem;
        border-collapse: collapse;
        width: 100%;
    }

    .table tr {
       border-top: 1px solid var(--border-color-alt);
    }

    .table tr:last-child {
        border-bottom: 1px solid var(--border-color-alt);
    }

    .table tr th:nth-child(1),
    .table tr td:nth-child(1) {
        width: 216px;
    }

    .table tr th:nth-child(2),
    .table tr td:nth-child(2) {
        width: 400px;
    }

    .table tr th:nth-child(3),
    .table tr td:nth-child(3) {
        width: 108px;
    }

    .table tr th:nth-child(4),
    .table tr td:nth-child(4) {
        width: 220px;
    }

    .table tr th:nth-child(5),
    .table tr td:nth-child(5) {
        width: 200px;
    }

    .table tr th:nth-child(6),
    .table tr td:nth-child(6) {
        width: 152px;
    }

    .cart__quantity__container {
        display: flex;
        gap: 0.5rem;
        padding: 0.75rem;
    }

    .table tr th,
    .table tr td {
        padding: 0.5rem;
        text-align: center;
    }

    .table__description,
    .table__price,
    .table__subtotal,
    .table__trash,
    .table__stock {
        font-size: var(--normal-font-size);
    }

    .table__title,
    .table__stock {
        color: var(--first-color);
    }

    .table__title {
        font-size: var(--normal-font-size);
    }

    .table__description {
        max-width: 250px;
        margin-inline: auto;
    }

    .table__trash {
        color: var(--text-color-light);
    }

    .cart__container {
        display: grid;
        grid-template-columns: 3fr 7fr;
        gap: 1.5rem;
        margin-bottom: 1.5rem;
        padding: 0.75rem 1rem;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.075);
        border-radius: 0.375rem;
    }

    .cart__img {
        height: 5rem;
        object-fit: contain;
    }

    .cart__content {
        display: grid;
        gap: 0.5rem;
    }

    .cart__price {
        font-size: var(--large-font-size);
        font-weight: var(--weight-500);
    }

    .cart__quantity__remove {
        display: flex;
        gap: 1.5rem;
    }

    .quantity__stepper {
        display: flex;
        border: 2px solid var(--first-color);
        border-radius: 2rem;
        padding-inline: 2rem;
        width: 30%;
    }

    .quantity__stepper button {
        font-size: var(--large-font-size);
    }

    .cart__quantity {
        text-align: center;
        width: 100%;
        font-size: var(--large-font-size);
        font-weight: var(--weight-500);
        padding-block: 0.5rem;
    }

    .cart__actions {
        display: flex;
        justify-content: flex-end;
        gap: 1.75rem;
        margin-top: 1.5rem;
    }

    .cart__buttons {
        display: flex;
        justify-content: center;
        gap: 0.5rem;
        width: 100%;
        padding-block: 1rem 0.75rem;
        color: var(--body-color);
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        border-radius: 5rem;
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        transition: all 0.3s var(--transition);
    }

    .cart__buttons:hover {
        color: var(--first-color);
        background-color: var(--first-color-alt);
    }

    .cart__update__button {
        display: flex;
        align-items: center;
        background-color: var(--first-color);
        color: var(--body-color);
        border-radius: 5rem;
        transition: all 0.4s var(--transition);
        justify-content: center;
        gap: 0.5rem;
        width: 100%;
        padding-block: 0.5rem 0.25rem;
        font-family: var(--second-font);
        font-size: var(--small-font-size);
        font-weight: var(--weight-500);
    }

    .divider {
        position: relative;
        text-align: center;
        margin-block: 3rem;
    }

    .divider::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        border-top: 2px solid var(--border-color-alt);
    }

    .divider i {
        color: var(--text-color-light);
        background-color: var(--body-color);
        font-size: 1.25rem;
        padding-inline: 1.25rem;
        position: relative;
        z-index: 10;
    }

    .cart__group {
        display: flex;
        gap: 1.5rem;
        align-items: flex-start;
        margin-top: 3rem;
    }

    .cart__coupon__title {
        white-space: nowrap;
    }

    .cart__coupon {
        width: 30vw;
    }

    .coupon__form {
        display: grid;
        gap: 1.5rem;
    }

    .cart__total {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.25rem;
        padding: 1.75rem;
    }

    .cart__total-table {
        margin-bottom: 1.5rem;
        border-collapse: collapse;
        width: 100%;
    }

    .cart__total-table tr td {
        border: 1px solid var(--border-color-alt);
        padding: 0.75rem 0.5rem;
        width: 50%;
    }

    .cart__total-title {
        font-size: var(--small-font-size);
    }

    .cart__total-price {
        color: var(--first-color);
        font-weight: var(--weight-700);
    }

    .cart__total__buttons {
        display: flex;
        gap: 2rem;
    }

    .cart__total__buttons .cart__buttons {
        width: 100%;
    }

    /*================= LOGIN/SIGN_UP =================*/
    .login-register__container {
        grid-template-columns: repeat(2, 1fr);
        align-items: flex-start;
    }

    .login,
    .register {
        border: 1px solid var(--border-color-alt);
        padding: 2rem;
        border-radius: 0.5rem;
    }

    .login__create-account {
        margin-bottom: 1.5rem;
        font-size: var(--h4-font-size);
        color: var(--title-color);
        font-weight: var(--weight-700);
    }

    .login__flash {
        background-color: lightgreen;
        padding: 0.75rem;
        text-align: center;
    }

    /*================= CHECKOUT =================*/
    .checkout__header__container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 4rem;
        margin-left: 12.5vw;
        margin-bottom: 1rem;
        margin-right: 12.5vw;
    }

    .checkout__logo__container {
        width: 12.5vw;
    }

    .checkout__secure__badge {
        width: 12.5vw;
    }

    .checkout__timer {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        background-color: var(--first-color);
        text-align: center;
        padding-block: 1rem;
        margin-bottom: 1.5rem;
    }

    .checkout__timer h4 {
        color: var(--first-color-alt);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
    }
    
    .checkout {
        padding-bottom: 3rem;
    }

    .checkout__containers {
        display: grid;
        grid-template-columns: 10fr 8fr;
        gap: 2rem;
    }

    .checkout__container {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    
    .checkout__left {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .checkout__right {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    
    .checkout__item {
        padding: 10px;
        border: 1px solid #ccc;
    }

    .checkout__purchase {
        display: grid;
        gap: 0.5rem;
    }

    .checkout__purchase p {
        margin-left: 2rem;
    }

    .checkout__sections {
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.075);
        padding: 1.5rem 1.25rem;
        border-radius: 0.5rem;
    }

    .checkout__top__title {
        font-size: var(--large-font-size);
        font-weight: var(--weight-500);
        margin-bottom: 0.5rem;
    }

    .checkout__titles {
        margin-bottom: 0.75rem;
    }

    .checkout__summary {
        display: flex;
        justify-content: space-between;
    }

    .checkout__summary__content {
        color: var(--first-color);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        margin-bottom: 0.5rem;
    }

    .checkout__summary__price {
        color: var(--first-color);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        text-align: right;
        margin-bottom: 0.5rem;
    }

    .checkout__summary__total {
        color: var(--first-color);
        font-size: var(--large-font-size);
        font-weight: var(--weight-600);
        margin-top: 0.5rem;
    }

    .checkout__input {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .checkout__inputs {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .error__message {
        color: var(--text-error-color);
        font-size: var(--normal-font-size);
        line-height: 1rem;
    }

    .checkout__button {
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        width: 100%;
        height: 3rem;
        line-height: 3rem;
        border-radius: 5rem;
        font-family: var(--second-font);
        font-size: var(--normal-font-size);
        font-weight: var(--weight-500);
        transition: all 0.4s var(--transition);
    }

    .checkout__shipping {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .city__postal__code {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .payment__error {
        position: fixed;
        top: 0;
        left: 0;
        text-align: center;
        width: 100%;
        z-index: 9999;
        background-color: #90EE90;
        line-height: 1.5rem;
        padding: 0.5rem;
    }

    .expiry__cvc {
        grid-template-columns: 3fr 3fr;
        gap: 1rem;
    }

    .card__input {
        display: grid;
        gap: 0.5rem;
    }

    .card__input label {
        font-size: var(--normal-font-size);
        padding-left: 0.25rem;
    }

    .card__element {
        height: 2.75rem;
        font-size: var(--normal-font-size);
        padding-inline: 1rem;  
        align-content: center;
        border-radius: 0.25rem;
        background-color: var(--second-color);
        box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.25);
        transition: border-color 0.3s ease, box-shadow 0.3s ease;
    }

    .card__holder__element {
        font-size: var(--normal-font-size);
        padding-inline: 1rem;
        padding: 0.9375rem;
        border-radius: 0.25rem;
        background-color: var(--second-color);
        box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.25);
        transition: border-color 0.3s ease, box-shadow 0.3s ease;
    }

    .expiry__cep {
        grid-template-columns: 4fr 6fr;
        gap: 1rem;
    }

    .checkout__grid {
        display: grid;
        gap: 1rem;
    }

    #delivery-date-info {
        color: var(--first-color);
    }

    .shipping__options {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .shipping__option {
        display: flex;
        gap: 0.75rem;
    }

    .checkout__products {
        display: grid;
        grid-template-columns: 3fr 7fr;
        gap: 1.5rem;
        margin-bottom: 0.5rem;
        padding: 0.675rem 1rem;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.075);
        border-radius: 0.375rem;
    }

    .checkout__image {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        width: 100%;
        padding-top: 100%;
    }

    .checkout__img {
        position: absolute;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .checkout__products__content {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
    }

    .checkout__products__titles {
        color: var(--first-color);
        font-size: var(--normal-font-size);
        line-height: 1.25rem;
    }

    .checkout__disclaimer__text {
        font-size: var(--normal-font-size);
        font-weight: var(--weight-400);
    }

    .checkout__header {
        display: flex;
        justify-content: left;
    }

    .checkout__footer__container {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        padding-block: 1.5rem;
    }

    .checkout__footer__links {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.5rem;
    }

    .checkout__footer__link {
        color: var(--first-color-alt);
        font-size: var(--small-font-size);
    }

    .checkout__loading {
        font-size: var(--h2-font-size);
        color: var(--first-color-alt);
        margin-right: 1.5rem;
    }

    .spinner {
        border: 4px solid rgba(255, 255, 255, 0.3);
        border-top: 4px solid #ffffff;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        animation: spin 1s linear infinite;
    }

    /*================= PAYMENT SUCCESS =================*/
    .payment__success {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        margin-bottom: 5rem;
    }

    .payment__success__top {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        align-items: center;
    }

    .payment__success__title {
        font-size: var(--h2-font-size);
    }

    .payment__success__image {
        width: 5rem;
    }

    .payment__success__subtitle {
        text-align: center;
        font-size: var(--normal-font-size);
    }

    .payment__success__summary {
        display: grid;
        gap: 0.5rem;
        grid-template-columns: 1fr 1fr;
    }

    .payment__success__titles {
        text-align: center;
        font-size: var(--h3-font-size);
        margin-bottom: 0.5rem;
    }

    /*================= MY ACCOUNT =================*/
    .account__container {
        display: grid;
        gap: 1.5rem;
        grid-template-columns: 2fr 8fr;
        margin-bottom: 2rem;
    }

    .account__tab {
        padding: 1rem 2rem;
        border: 1px solid var(--border-color-alt);
        color: var(--title-color);
        font-size: var(--small-font-size);
        display: flex;
        align-items: center;
        column-gap: 0.625rem;
        cursor: pointer;
    }

    .account__tab:not(:first-child) {
        border-top: none;
        white-space: nowrap;
    }

    .account__tab:first-child {
        border-radius: 10px 10px 0 0;
    }

    .account__tab:last-child {
        border-radius: 0 0 10px 10px;
    }

    .account__tab.active-tab {
        background-color: var(--first-color);
        color: var(--body-color);
    }

    .tab__content:not(.active-tab) {
        display: none;
    }

    .tab__content {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.75rem;
    }

    .tab__header {
        background: linear-gradient(90deg, rgba(45,113,248,1) 0%, rgba(130,172,255,1) 100%);
        padding: 1.75rem 2rem 1.375rem 2.5rem;
        justify-content: space-between;
        border-radius: 0.5rem 0.5rem 0rem 0rem;
        
    }

    .tab__header h3 {
        color: var(--first-color-alt);
        font-size: var(--h4-font-size);
    }

    .tab__header a {
        background-color: var(--first-color-alt);
        font-size: var(--normal-font-size);
        font-family: var(--body-font);
        font-weight: var(--weight-600);
        border: 2px solid var(--first-color-alt);
        border-radius: .375rem;
        color: var(--first-color);
        padding-inline: 2rem;
        line-height: 3rem;
        transition: all 0.4s var(--transition);
    }

    .tab__body {
        padding: 1.75rem;
    }

    .orders__container {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .order__container {
        display: grid;
        gap: 1rem;
        border-radius: 0.5rem;
        border: 1.5px solid var(--border-color-alt);
    }

    .order__summary {
        display: flex;
        background-color: #e8e8e8;
        gap: 3rem;
        font-size: var(--normal-font-size);
        padding: 1rem 2rem;
        border-radius: 0.4rem 0.4rem 0rem 0rem;
    }

    .order__summary__titles {
        font-weight: var(--weight-500);
    }

    .order__sub__container {
        display: flex;
        margin: 0rem 1.5rem;
        margin-bottom: 1rem;
    }

    .order__items {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        width: 70%;
    }

    .order__item {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .order__item__image__wrap {
        display: flex;
        align-items: center;
        width: 15%;
    }

    .order__item__image {
        width: 80%;
        aspect-ratio: 1/1;
        object-fit: contain;
        padding-right: 0.5rem;
    }

    .order__item__quantity {
        white-space: nowrap;
        font-size: var(--small-font-size);
    }

    .order__item__title {
        width: 60%;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .order__item__title button {
        background-color: var(--first-color);
        border: 2px solid var(--first-color);
        color: var(--body-color);
        width: 30%;
        height: 1.5rem;
        border-radius: 5rem;
        transition: all 0.4s var(--transition);white-space: nowrap;
    }

    .order__item__title button:hover {
        background-color: var(--first-color-alt);
        color: var(--first-color);
    }

    .order__item__price {
        width: 10%;
        white-space: nowrap;
    }

    .order__info {
        width: 30%;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .order__info a, .order__info p {
        border: 1.5px solid var(--border-color-alt);
        padding: 0.25rem 1rem;
        border-radius: 2rem;
        text-align: center;
    }

    .edit__account {
        padding: 1rem;
        grid-template-columns: 3fr 10fr;
        align-items: center;
    }

    .body__container {
        padding: 1rem;
        grid-template-columns: 10fr 10fr;
    }

    .body__container__titles {
        padding: 0rem 0rem 0.5rem 0rem;
    }

    .body__container__border {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.75rem;
        padding: 1rem;
    }

    .placed__order-table {
        border-collapse: collapse;
        width: 100%;
    }

    .placed__order-table tr th {
        color: var(--title-color);
        text-align: left;
    }

    .placed__order-table tr th,
    .placed__order-table tr td {
        border: 1px solid var(--border-color-alt);
        padding: 0.5rem;
        font-size: var(--small-font-size);
    }

    .inner__table {
        border-collapse: collapse;
        width: 100%;
    }

    .inner__table tr td {
        border-top: 1px solid var(--border-color-alt);
        border-bottom: none;
        border-left: none;
        border-right: none;
        padding: 8px;
    }

    .inner__table tr:first-child td {
        border-top: none;
    }

    .inner__column1 {
        width: 45%; /* Set width for the first column */
    }
    
    .inner__column2 {
        width: 20%; /* Set width for the second column */
    }

    .inner__column3 {
        width: 35%; /* Set width for the third column */
        white-space: nowrap;
    }

    .clickable__row {
        transition: background-color 0.3s, opacity 0.3s; /* Smooth transition for background color and opacity change */
    }

    .clickable__row:hover {
        cursor: pointer;
        opacity: 0.8;
        background-color: #f0f0f0;
    }

    .override-clickable__row {
        transition: none; /* Remove transition */
    }
    
    .override-clickable__row:hover {
        cursor: auto; /* Remove pointer cursor */
        opacity: 1; /* Override opacity */
        background-color: transparent; /* Override background color */
    }

    .view__order,
    .edit {
        counter-reset: var(--first-color);
    }

    .address {
        font-style: normal;
        font-size: var(--small-font-size);
        line-height: 1.5rem;
    }

    .city {
        margin-bottom: 0.25rem;
    }

    .edit {
        font-size: var(--small-font-size);
    }

    /*================= BUSINESS MANAGER =================*/
    .business__container {
        grid-template-columns: 2fr 10fr;
    }

    .business__tabs {
        border: 1px solid var(--border-color-alt);
        display: inline-block;
        border-radius: 0.75rem;
    }

    .business__tab {
        padding: 1rem 2rem;
        color: var(--title-color);
        font-size: var(--small-font-size);
        display: flex;
        align-items: center;
        column-gap: 0.625rem;
        cursor: pointer;
    }

    .business__tab.active-tab {
        background-color: var(--first-color);
        color: var(--body-color);
    }

    .business__tab.active-tab:first-child {
        border-radius: 0.25rem 0.25rem 0rem 0rem ;
    }

    .business__tab.active-tab:last-child {
        border-radius: 0rem 0rem 0.25rem 0.25rem;
    }

    .business__tab:not(:last-child) {
        border-bottom: 1px solid var(--border-color-alt);
    }

    /*================= BUSINESS BUYER HOME =================*/
    .buyer__home__title {
        margin-bottom: 1.5rem;
    }

    /*================= BUSINESS SELLER PRODUCTS =================*/
    .business__products__container {
        position: relative;
        width: 15%;
        padding-top: 15%;
    }
    
    .business__products__img {
        position: absolute;
        top: 0%;
        left: 0%;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .business__products-title {
        color: var(--title-color);
        width: 100%;
    }

    .business__products-table {
         border-collapse: collapse;
         width: 100%;
    }

    .business__products-table tr:hover {
        background-color: lightgray;
        box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.1);
   }

    .business__products-table tr th {
        color: var(--title-color);
        text-align: left;
    }

    .business__products-table tr th,
    .business__products-table tr td {
        border: 1px solid var(--border-color-alt);
        border-width: 1px 0;
        padding: 0.5rem;
        font-size: var(--small-font-size);
    }

    .product__name {
        display: flex;
        column-gap: 2rem;
        align-items: center;
    }

    .tracking__number {
        display: flex;
        justify-content: center;
    }

    /*================= BUSINESS SELLER ORDERS =================*/
    .seller__order__container {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        margin-block: 3rem;
    }

    .seller__order__subcontainer {
        display: grid;
        grid-template-columns: 1fr 8fr 4fr 1fr 1fr 6fr;
        align-items: center;
        gap: 2rem;
        padding: 2rem;
        border-radius: 2rem;
        box-shadow: 0rem 0rem 1rem 0rem rgba(0, 0, 0, 0.1);
    }

    .seller__order__items {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .seller__order__item {
        display: flex;
        align-items: center;
        gap: 0.75rem;
    }

    .seller__item__overview {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        width: 70%;
    }

    .seller__links {
        display: flex;
        gap: 1rem;
    }

    .seller__item__price {
        white-space: nowrap;
        width: 20%;
    }

    .seller__order__column {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        align-items: center;
    }

    .seller__order__nowrap {
        white-space: nowrap;
    }

    /*================= CREATE & EDIT PRODUCT =================*/
    .edit__title {
       justify-content: space-between;
       margin-bottom: 1.5rem;
    }

    .button__container {
        display: flex;
        gap: 1.5rem;
    }

    .edit__border {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.25rem;
        padding: 2rem;
    }

    .edit__main {
        grid-template-columns: repeat(1, 1fr);
    }

    .edit__description {
        height: 15rem;
        border: 1px solid var(--border-color-alt);
        padding: 1rem;
        border-radius: 0.25rem;
        font-size: var(--small-font-size);
    }

    .edit__submain {
        display: flex;
        gap: 1rem;
        grid-template-columns: 2fr 4fr 4fr 4fr 4fr 4fr;
    }

    .status__dropdown {
        border: 1px solid var(--border-color-alt);
        font-size: var(--small-font-size);
        padding-block: 0.75rem;
        border-radius: 0.25rem;
    }

    .edit__categories {
        grid-template-columns: repeat(4, 1fr);
    }

    .single__category {
        cursor: pointer;
        border: 1px solid var(--border-color-alt);
        border-radius: 0.375rem;
        padding-inline: 0.75rem;
        height: 3.75rem;
        display: flex;
        justify-content: space-between;
    }

    .edit__media {
        display: flex;
        justify-content: space-evenly;
        margin-bottom: 2rem;
    }

    .edit__media__sub {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        width: 30rem;
    }

    .edit__image__container {
        display: flex;
        justify-content: center;
    }

    .edit__image {
        width: 15rem;
        height: 15rem;
        object-fit: contain;
    }

    .edit__all-media {
        grid-template-columns: repeat(8, 1fr);
    }

    .all__media__container {
        position: relative;
        width: 100%;
        padding-top: 100%;
        margin-bottom: 0.5rem;
    }

    .all__media__image {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.5rem;
        position: absolute;
        top: 0%;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .selected .selected__img {
        border: 2px solid var(--first-color);
    }

    input[type="file"] {
        display: none;
    }

    .edit__file-btn {
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: var(--first-color);
        color: var(--body-color);
        height: 2rem;
        border-radius: 0.25rem;
        font-size: var(--small-font-size);
        font-weight: var(--weight-700);
        transition: all 0.4s var(--transition);
        height: 3rem;
    }

    .variant__title {
        justify-content: space-between;
    }

    .variant__container {
        grid-template-columns: repeat(1, 1fr);
        border: 1px solid var(--border-color-alt);
        border-radius: 0.25rem;
        padding: 1.5rem;
        margin-bottom: 1rem;
    }

    .delete__space {
        grid-template-columns: 16fr 2fr;
    }

    /*================= EDIT VARIANTS =================*/
    .edit__variant {
        grid-template-columns: repeat(4, 1fr);
    }

    .variant__image {
        border: 2px solid var(--first-color);
    }

    /*================= PENDING ORDERS =================*/
    .pending__border {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.5rem;
        padding: 2rem;
    }

    .linking__container {
        grid-template-columns: 1fr 1fr;
    }

    .small__linking__border {
        border: 1px solid var(--border-color-alt);
        border-radius: 0.5rem;
        padding: 0.75rem;
    }

    .linking__container__small {
        grid-template-columns: 3fr 7fr;
        align-items: center;
    }

    .product_image {
        height: 5rem;
    }

    .link__insert__container {
        display: grid;
        align-items: center;
        gap: 1rem;
    }

    .link__insert__container .form__input {
        width: 100%;
    }

    .checkbox__container {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .top__container {
        display: flex;
        justify-content: space-between;
    }

    .mapping__images {
        width: 3rem;
    }

    .mapped__image {
        width: 100%;
        height: 7.5rem;
        object-fit: contain;
    }

    .variant__linking__container {
        grid-template-columns: 4fr 10fr 1fr 8fr;
        align-items: center;
        margin-bottom: 0.5rem;
    }

    .order__button {
        width: 100%;
    }

    .missing__address {
        text-align: center;
        background-color: #90EE90;
        line-height: 2.75rem;
    }

    .total__prices {
        display: flex; 
        flex-direction: column; 
        align-items: flex-end;
    }

    /*================= INTEGRATION GUIDE =================*/
    .integration__steps {
        font-size: var(--large-font-size);
        color: var(--title-color);
        display: grid;
        gap: 0.75rem;
    }

    /*================= COMPANY PAGE =================*/
    .cover__image {
        height: 15rem;
        width: 100%;
        object-fit: cover;
        padding-top: 2rem;
    }

    .company__page__container {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7%;
    }

    .company__page__logo {
        width: 20%;
    }

    .company__overview {
        max-width: 35%;
    }

    .company__name {
        font-size: var(--h1-font-size);
        font-weight: var(--weight-700);
        margin-bottom: 0.5rem;
    }

    .company__rating__container {
        display: flex;
        align-items: center;
        gap: 0.75rem;
    }

    .company__rating__stars {
        color: hsl(24, 100%, 50%);
        font-size: var(--h3-font-size);
    }

    .comapny__rating__numeric {
        color: var(--first-color);
        font-size: var(--large-font-size);
        padding-top: 0.5rem;
    }

    .company__description {
        font-size: var(--normal-font-size);
        margin-top: 0.5rem;
    }

    .company__badges {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .status__badge {
        font-size: var(--normal-font-size);
        font-weight: var(--weight-600);
        padding-block: 1.375rem 1rem;
        padding-inline: 1.5rem;
        border-radius: 1rem;
        text-align: center;
    }

    .premium__badge {
        background-color: rgb(188,241,209);
    }

    .verfied__badge {
        background-color: hsl(202, 53%, 76%);
    }

    /*================= JOIN DROPSHIPPING =================*/
    .join__container {
        display: flex;
        flex-direction: column;
        gap: 5rem;
        margin: 3.5rem 0rem;
    }

    .join__top {
        grid-template-columns: 80fr 60fr;
        align-items: center;
    }

    .join__title {
        font-size: var(--h1-font-size);
        color: var(--first-color);
        margin-bottom: 1.5rem;
        text-align: left;
        line-height: 1.5;
        white-space: nowrap;
    }

    .join__subtitle {
        font-size: var(--h4-font-size);
        margin-bottom: 1rem;
        line-height: 1.6;
        text-align: left;
    }

    .join__middle {
        position: relative;
        background: linear-gradient(102deg, rgba(45, 113, 248, 1) 0%, rgb(96, 143, 253) 100%);
        color: var(--first-color-alt);
    }

    .join__titles {
        font-size: var(--h2-font-size);
        color: var(--first-color);
        text-align: center;
    }

    .join__second__wave {
        margin-bottom: -0.5rem;
    }

    .join__text {
        font-size: var(--large-font-size);
        color: var(--title-color);
        line-height: 1.6;
        text-align: center;
    }

    .join__description {
        grid-template-columns: repeat(3, 1fr);
        margin: 2.5rem 5rem;
        gap: 5rem;
        height: 12.5rem;
    }

    .join__box {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        align-items: center;
        border-radius: 0.5rem;
        padding: 1.5rem 3rem;
        box-shadow: 0rem 0rem 10rem 0rem rgba(0, 0, 0, 0.1);
    }

    .join__box img {
        width: 70%;
    }

    .join__box__title {
        font-size: var(--h4-font-size);
        font-weight: var(--weight-500);
        white-space: nowrap;
    }

    .join__conclusion {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        text-align: center;
    }

    .join__conclusion h4 {
        width: 62.5%;
    }

    .join__dropshipping__buttton {
        font-size: var(--h3-font-size);
        background-color: var(--first-color);
        color: var(--body-color);
        border-radius: 0.375rem;
        padding: 0.75rem;
        width: 50%;
    }

    /*================= DROPSHIPPING SIGNUP =================*/
    .ds__title {
        font-size: var(--h4-font-size);
    }
    
    .ds__form__container {
        grid-template-columns: 15fr 90fr;
        align-items: center;
    }

    /*================= INSTITUTIONAL PAGES =================*/
    .institutional__container {
        padding-top: 2rem;
        padding-bottom: 3rem;
        gap: 2.75rem;
    }

    .institutional__title {
        color: var(--first-color);
        font-size: var(--h1-font-size);
        text-align: center;
    }

    .institutional__description {
        font-size: var(--large-font-size);
        line-height: 2rem;
    }

    .institutional__item, .institutional__item p {
        line-height: 2rem;
    }

    .institutional__titles {
        color: var(--first-color);
        font-size: var(--h3-font-size);
        margin-bottom: 0.5rem;
    }

    .institutional__item span {
        font-weight: var(--weight-700);
    }

    .institutional__item button {
        margin-top: 0.75rem;
        width: 100%;
        font-size: var(--large-font-size);
        font-weight: var(--weight-600);
    }

    /*================= LEGAL PAGES =================*/
    .legal__container {
        padding-top: 2rem;
        padding-bottom: 4rem;
        gap: 1.5rem;
    }

    .legal__title {
        color: var(--first-color);
        font-size: var(--h1-font-size);
        text-align: center;
    }

    .legal__item {
        line-height: 1.375rem;
    }

    .legal__titles {
        color: var(--first-color);
        font-size: var(--h4-font-size);
        margin-bottom: 0.5rem;
    }

    .legal__subtitle {
        color: var(--first-color);
        font-size: var(--normal-font-size);
    }

    .legal__item span {
        font-weight: var(--weight-700);
    }

    .legal__item button {
        margin-top: 0.75rem;
        width: 100%;
        font-size: var(--large-font-size);
        font-weight: var(--weight-600);
    }

    /*================= CONTACT PAGES =================*/
    .contact__container {
        margin-bottom: 3.5rem;
    }

    .contact__title {
        font-size: var(--h4-font-size);
        font-weight: var(--weight-600);
    }

    .contact__top {
        grid-template-columns: repeat(2, 1fr);
    }

    .contact__message {
        height: 15rem;
        border: 1px solid var(--border-color-alt);
        padding: 1rem;
        border-radius: 0.25rem;
        font-size: var(--small-font-size);
    }

}