@layer common {
    .product-card-2 {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        border: .3rem solid var(--primary-border-color);
        border-radius: .6rem;

        & > .image {
            position: relative;
            text-align: center;
            padding: 1rem;
            background-color: white;
            border-start-start-radius: .6rem;
            border-start-end-radius: .6rem;

            img.product {
                max-height: min(40vh, 12rem);
            }

            & > .manufacturer {
                position: absolute;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                top: 5px;
                right: 5px;
                background: #fbfbfba3;
                padding: .1rem;
                border-radius: 0.2rem;

                & > .logo {
                    height: 1rem;
                }

                .name {
                    font-size: .5rem;
                    font-weight: 500;
                    color: var(--primary-color);
                }
            }
        }

        & > .main {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            gap: 1rem;
            background-color: var(--neutral-border-color);
            padding: 1rem;
            flex: 1;
            justify-content: space-between;

            & > a.title {
                font-size: 1rem;
                color: var(--primary-color);
                flex: 1;
                text-decoration: none;

                &:hover {
                    text-decoration: underline;
                }
            }

            & > .bottom {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: .5rem;
                flex: 0;

                & > .price {
                    font-size: 1.2rem;
                    font-weight: 500;
                    color: var(--cart-action-color);
                }

                & > .action {
                    display: flex;
                    flex-direction: row;
                    flex-wrap: nowrap;
                    justify-content: center;
                    border: .3rem solid #9BCAF2;
                    border-radius: .5rem;
                    padding: .5rem 1rem;
                    background-color: #C9E2FD;
                    font-weight: 500;
                    color: #1B607C;
                    text-decoration: none;

                    &:hover {
                        border-color: color-mix(in srgb, #9BCAF2, black 15%);
                    }
                }
            }
        }
    }
}
