:root {
    --brand: #0d6efd;
    --brand-ink: #0b2847;
    --soft: #f7f9fc;
}

body {
    background: #fff;
    color: #122;
    width: 100%;
    max-width: 1400px;
    margin: auto;
    border: 1px solid #eee;
}

.brand-ink {
    color: var(--brand-ink);
}

.topbar {
    background: var(--soft);
    font-size: .9rem;
}

.navbar .form-control {
    border-radius: 999px;
}

.navbar .btn-search {
    border-radius: 999px;
}

.hero {
    background: radial-gradient(80% 60% at 10% 20%, #e7f1ff 0%, #ffffff 70%);
}

.part-card {
    transition: box-shadow .2s ease, transform .2s ease;
    border: 1px solid #eef2f7;
}

.part-card:hover {
    box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
    transform: translateY(-2px);
}

.part-thumb {
    aspect-ratio: 4 / 3;
    object-fit: contain;
    background: #fafbfd;
    border-bottom: 1px solid #f1f3f5;
}

.cart-thumb {
    width: 48px;
    height: 48px;
    object-fit: contain;
    background: #fafbfd;
    border: 1px solid #f1f3f5;
    border-radius: .5rem;
}

footer .footer-title {
    font-weight: 700;
    font-size: 1rem;
}

.splide__slide {
    display: flex;
    align-items: center;
    justify-content: center;
}

.splide__slide .card {
    width: 100%;
}

.cursor-pointer {
    cursor: pointer;
}

.brand-ink {
    color: var(--brand-ink);
}

.category-chip {
    display: inline-flex;
    gap: .35rem;
    align-items: center;
    padding: .4rem .7rem;
    border: 1px solid #e9ecef;
    border-radius: 999px;
    background: #fff;
    font-size: .9rem;
}

.category-chip i {
    font-size: 1rem;
}

a {
    text-decoration: none !important;
}