.home-page .top-nav {
    margin: 1rem auto 0;
    max-width: 1180px;
    border-radius: 24px;
    background: rgba(255, 248, 241, 0.9) !important;
    border: 1px solid rgba(107, 45, 58, 0.1);
    box-shadow: 0 16px 40px rgba(47, 27, 31, 0.08);
}

.home-page .navbar-brand {
    font-size: 1.5rem;
    color: var(--wine);
}

.home-shell {
    padding: 2rem 0 2.5rem;
}

.home-hero {
    padding: 2.5rem;
    margin-bottom: 1.5rem;
    position: relative;
    overflow: hidden;
}

.home-hero::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -5rem;
    width: 16rem;
    height: 16rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(185, 146, 94, 0.3), transparent 68%);
}

.hero-kicker {
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.78rem;
    color: var(--gold);
    font-weight: 700;
}

.hero-copy {
    max-width: 38rem;
    color: rgba(47, 27, 31, 0.78);
    margin-bottom: 0;
}

.search-panel {
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.product-card {
    border: none;
    border-radius: 24px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 45px rgba(47, 27, 31, 0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 55px rgba(47, 27, 31, 0.15);
}

.product-card img {
    height: 280px;
    object-fit: cover;
}

.product-card .card-body {
    padding: 1.4rem;
}

.product-price {
    color: var(--wine);
}

.empty-state {
    padding: 2rem;
    text-align: center;
}
