body.bvpcp-mobile-home-active{
    background:#f5f6f8;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

.bvpcp-mobile-home-active .entry-header,
.bvpcp-mobile-home-active .page-header{display:none!important}

/*
 * The replacement homepage starts immediately after the existing Neytri/header search UI.
 * These resets are homepage-only and intentionally do not alter cart/checkout pages.
 */
.bvpcp-mobile-home-active .site-content,
.bvpcp-mobile-home-active .content-area,
.bvpcp-mobile-home-active .site-main,
.bvpcp-mobile-home-active #main,
.bvpcp-mobile-home-active #primary{
    margin-top:0!important;
    padding-top:0!important;
}

/* Common Neytri / Elementor / WordPress header wrappers that can reserve legacy hero space. */
.bvpcp-mobile-home-active header.site-header,
.bvpcp-mobile-home-active #header-wrapper,
.bvpcp-mobile-home-active .site-header,
.bvpcp-mobile-home-active .wdt-header-menu,
.bvpcp-mobile-home-active .wdt-header-menu-wrapper,
.bvpcp-mobile-home-active .wdt-header-wrapper,
.bvpcp-mobile-home-active .elementor-location-header,
.bvpcp-mobile-home-active .elementor-location-header > .elementor,
.bvpcp-mobile-home-active .elementor-location-header .elementor-section-wrap{
    margin-bottom:0!important;
    padding-bottom:0!important;
    min-height:0!important;
}

/* JS adds this class only to the actual ancestor producing excess space. */
.bvpcp-mobile-home-active .bvpcp-collapse-header-spacer{
    margin-bottom:0!important;
    padding-bottom:0!important;
    min-height:0!important;
    height:auto!important;
}

.bvpcp-home{
    margin:0!important;
    padding:0 0 82px!important;
    background:#f5f6f8;
    min-height:70vh;
}

.bvpcp-home-shell{
    max-width:720px;
    margin:0 auto;
    padding:8px 12px 28px;
}

/* Banner */
.bvpcp-banner-slider{
    position:relative;
    margin:0 0 14px;
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    box-shadow:0 2px 10px rgba(22,32,48,.045);
}

.bvpcp-banner-track{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
}
.bvpcp-banner-track::-webkit-scrollbar{display:none}
.bvpcp-banner-slide{flex:0 0 100%;scroll-snap-align:start}
.bvpcp-banner-slide a{display:block}
.bvpcp-banner-slide img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:12/5;
    object-fit:cover;
}

/* Reset theme button rules completely so banner pagination stays as small dots. */
.bvpcp-banner-dots{
    position:absolute;
    z-index:4;
    left:50%;
    bottom:9px;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin:0!important;
    padding:5px 7px!important;
    border:0!important;
    border-radius:999px;
    background:rgba(255,255,255,.78);
    box-shadow:0 1px 5px rgba(22,32,48,.08);
    backdrop-filter:blur(4px);
}

.bvpcp-banner-dots button,
.bvpcp-banner-dots button:hover,
.bvpcp-banner-dots button:focus,
.bvpcp-banner-dots button:active{
    appearance:none!important;
    -webkit-appearance:none!important;
    display:block!important;
    flex:0 0 7px!important;
    width:7px!important;
    min-width:7px!important;
    max-width:7px!important;
    height:7px!important;
    min-height:7px!important;
    max-height:7px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    outline:0!important;
    background:#d2d7de!important;
    box-shadow:none!important;
    line-height:0!important;
    font-size:0!important;
    cursor:pointer;
    opacity:1!important;
}

.bvpcp-banner-dots button.is-active,
.bvpcp-banner-dots button.is-active:hover,
.bvpcp-banner-dots button.is-active:focus{
    background:#18233c!important;
    width:7px!important;
    min-width:7px!important;
    max-width:7px!important;
    height:7px!important;
    min-height:7px!important;
    max-height:7px!important;
}

/* Homepage category sections */
.bvpcp-home-sections{
    display:flex;
    flex-direction:column;
    gap:13px;
}

.bvpcp-category-section{
    background:#fff;
    border:1px solid #e4e8ed;
    border-radius:18px;
    padding:15px 11px 14px;
    box-shadow:0 2px 10px rgba(22,32,48,.035);
    overflow:hidden;
}

.bvpcp-section-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 2px 12px;
}

.bvpcp-section-heading h2{
    margin:0!important;
    padding:0!important;
    color:#182033!important;
    font-family:inherit!important;
    font-size:20px!important;
    line-height:1.15!important;
    letter-spacing:-.35px!important;
    font-weight:800!important;
    text-transform:none!important;
}

.bvpcp-section-heading>a{
    display:inline-flex;
    align-items:center;
    gap:3px;
    color:#148b4b!important;
    font-family:inherit!important;
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:750!important;
    letter-spacing:-.05px;
    text-decoration:none!important;
    white-space:nowrap;
}

.bvpcp-section-heading>a span{
    display:inline-block;
    font-size:19px;
    line-height:12px;
    font-weight:500;
    transform:translateY(-.5px);
}

.bvpcp-category-row{
    display:flex;
    gap:8px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding:1px 0 3px;
    overscroll-behavior-inline:contain;
}
.bvpcp-category-row::-webkit-scrollbar{display:none}

.bvpcp-category-card{
    flex:0 0 calc((100% - 24px)/4);
    min-width:0;
    scroll-snap-align:start;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:7px;
    color:#20283a!important;
    text-align:center;
    text-decoration:none!important;
}

.bvpcp-category-image-wrap{
    width:100%;
    aspect-ratio:1/1;
    display:grid;
    place-items:center;
    overflow:hidden;
    padding:5px;
    border:1px solid #e5e9ee;
    border-radius:13px;
    background:#fbfcfd;
    box-shadow:0 1px 3px rgba(22,32,48,.025);
}

.bvpcp-category-image-wrap img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}

.bvpcp-category-name{
    width:100%;
    min-height:27px;
    display:-webkit-box;
    overflow:hidden;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    color:#20283a;
    font-family:inherit;
    font-size:10.8px;
    line-height:1.22;
    letter-spacing:-.08px;
    font-weight:700;
}

.bvpcp-empty-state{
    padding:24px 12px;
    color:#6f7b8e;
    font-size:13px;
    text-align:center;
}

.bvpcp-bottom-nav{
    position:fixed;
    z-index:9998;
    left:0;
    right:0;
    bottom:0;
    height:70px;
    padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
    display:grid;
    grid-template-columns:repeat(5,1fr);
    background:#fff;
    border-top:1px solid #e2e6ea;
    box-shadow:0 -4px 14px rgba(22,32,48,.06);
}

.bvpcp-bottom-nav a{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    color:#667386;
    font-size:19px;
    line-height:1;
    text-decoration:none!important;
}
.bvpcp-bottom-nav small{font-size:11px;font-weight:650}
.bvpcp-bottom-nav a.is-active{color:#148c4b}
.bvpcp-mobile-home-active footer{padding-bottom:74px}

@media(min-width:768px){
    .bvpcp-bottom-nav{display:none}
    .bvpcp-home{padding-bottom:20px!important}
}

@media(max-width:359px){
    .bvpcp-home-shell{padding-left:8px;padding-right:8px}
    .bvpcp-category-section{padding-left:8px;padding-right:8px}
    .bvpcp-category-row{gap:6px}
    .bvpcp-category-card{flex-basis:calc((100% - 18px)/4)}
    .bvpcp-category-name{font-size:9.9px}
    .bvpcp-section-heading h2{font-size:18.5px!important}
    .bvpcp-section-heading>a{font-size:12px!important}
}
