:root { --vibe-blue: #08baf1; --vibe-purple: #654cf0; --vibe-pink: #ed24bd; --vibe-ink: #12152b; --vibe-muted: #697386; }
.vibe-intro,.vibe-categories,.vibe-brands{background:#fff}.vibe-products,.vibe-why{background:#f7f9ff}.vibe-intro-grid{display:grid;grid-template-columns:minmax(260px,.75fr) 1.7fr;gap:70px;align-items:center}.vibe-experience{position:relative;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border-radius:28px;color:#fff;background:linear-gradient(140deg,var(--vibe-blue),var(--vibe-purple) 58%,var(--vibe-pink));box-shadow:0 25px 55px rgba(85,70,220,.22)}.vibe-experience::after{position:absolute;width:220px;height:220px;right:-70px;bottom:-80px;border:35px solid rgba(255,255,255,.11);border-radius:50%;content:""}.vibe-experience strong{font-size:96px;line-height:1}.vibe-experience strong span{color:#ff8ee1}.vibe-experience p{margin-top:12px;font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.vibe-kicker{display:block;margin-bottom:12px;color:var(--vibe-purple);font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.vibe-intro-copy h2,.vibe-section-heading h2{color:var(--vibe-ink);font-size:clamp(32px,3.2vw,50px);line-height:1.1}.vibe-intro-copy p{max-width:820px;margin-top:18px;color:var(--vibe-muted);font-size:17px;line-height:1.8}.vibe-link-button{display:inline-flex;align-items:center;gap:10px;margin-top:25px;padding:14px 22px;border-radius:10px;color:#fff;background:linear-gradient(105deg,var(--vibe-blue),var(--vibe-purple) 58%,var(--vibe-pink));font-weight:700}.vibe-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:38px}.vibe-heading-center{justify-content:center;text-align:center}.vibe-view-more{display:inline-flex;align-items:center;gap:8px;padding-bottom:5px;border-bottom:2px solid var(--vibe-purple);color:var(--vibe-purple);font-weight:700}.vibe-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.vibe-product-card{overflow:hidden;border:1px solid #e7eaf4;border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(25,38,80,.06);transition:transform .25s ease,box-shadow .25s ease}.vibe-product-card:hover{transform:translateY(-7px);box-shadow:0 20px 44px rgba(55,48,145,.13)}.vibe-product-media{position:relative;height:280px;overflow:hidden;background:#f5f7fb}.vibe-product-media>img{width:100%;height:100%;object-fit:contain;padding:20px;transition:transform .35s ease}.vibe-product-card:hover .vibe-product-media>img{transform:scale(1.045)}.vibe-product-placeholder{display:grid;height:100%;place-items:center;color:#a8afc1;font-size:42px}.vibe-quick-view{position:absolute;right:16px;bottom:16px;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--vibe-blue),var(--vibe-purple));box-shadow:0 8px 22px rgba(78,66,210,.26)}.vibe-quick-view span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.vibe-stock-badge{position:absolute;top:14px;left:14px;padding:6px 10px;border-radius:20px;color:#fff;background:#20243b;font-size:11px;font-weight:700}.vibe-product-info{padding:20px}.vibe-product-info>span{color:var(--vibe-purple);font-size:12px;font-weight:700;text-transform:uppercase}.vibe-product-info h3{margin-top:7px;font-size:18px}.vibe-product-info h3 a{color:var(--vibe-ink)}.vibe-product-brand{min-height:20px;margin:5px 0 12px;color:var(--vibe-muted);font-size:13px}.vibe-product-info>strong{color:var(--vibe-ink);font-size:19px}.vibe-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.vibe-category-card{position:relative;display:flex;min-height:190px;flex-direction:column;align-items:flex-start;justify-content:center;padding:28px;overflow:hidden;border:1px solid #e9eaf4;border-radius:18px;color:var(--vibe-ink);background:#fff;box-shadow:0 10px 30px rgba(30,42,85,.05);transition:.25s ease}.vibe-category-card:hover{color:#fff;border-color:transparent;background:linear-gradient(140deg,var(--vibe-blue),var(--vibe-purple) 62%,var(--vibe-pink));transform:translateY(-5px)}.vibe-category-icon{display:grid;width:52px;height:52px;margin-bottom:18px;place-items:center;border-radius:14px;color:var(--vibe-purple);background:#f0efff;font-size:24px}.vibe-category-card:hover .vibe-category-icon{color:#fff;background:rgba(255,255,255,.16)}.vibe-category-name{font-size:18px;font-weight:800}.vibe-category-card small{margin-top:5px;color:var(--vibe-muted)}.vibe-category-card:hover small{color:rgba(255,255,255,.8)}.vibe-category-card>i{position:absolute;right:22px;bottom:22px}.vibe-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.vibe-benefit-grid article{padding:34px 26px;border-radius:18px;background:#fff;text-align:center;box-shadow:0 12px 34px rgba(25,38,80,.06)}.vibe-benefit-grid article>span{display:grid;width:62px;height:62px;margin:0 auto 20px;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(135deg,var(--vibe-blue),var(--vibe-purple));font-size:27px}.vibe-benefit-grid h3{margin-bottom:10px;color:var(--vibe-ink);font-size:19px}.vibe-benefit-grid p{color:var(--vibe-muted);line-height:1.7}.vibe-brand-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}.vibe-brand-card{display:grid;width:min(260px,calc(50% - 12px));height:145px;place-items:center;padding:24px;border:1px solid #e8eaf2;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(25,38,80,.06)}.vibe-brand-card img{width:100%;height:88px;object-fit:contain}.vibe-brand-card strong{font-size:24px}.vibe-empty-state{padding:40px;border:1px dashed #ccd1df;border-radius:16px;color:var(--vibe-muted);background:#fff;text-align:center}
/* Older template sections are replaced by the live homepage sections above. */
.slider-category,.product-category,.product-tab-area,.brand-area,.offer-text-area,.blog-area,.service-area,.news-letter{display:none!important}
@media(max-width:1199px){.vibe-product-grid,.vibe-category-grid,.vibe-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.vibe-intro-grid{grid-template-columns:1fr;gap:30px}.vibe-experience{min-height:250px}.vibe-experience strong{font-size:76px}.vibe-section-heading{align-items:flex-start;flex-direction:column}.vibe-heading-center{align-items:center}.vibe-product-grid,.vibe-category-grid,.vibe-benefit-grid{grid-template-columns:1fr}.vibe-product-media{height:300px}.vibe-brand-card{width:100%}}

/* Promotional Brand Showcase cards. */
.vibe-brand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.vibe-brand-card{position:relative;display:grid;width:auto;height:auto;min-height:330px;grid-template-columns:44% 56%;align-items:center;place-items:initial;padding:0;overflow:hidden;border:1px solid #dfe6f2;border-radius:20px;background:linear-gradient(120deg,#eaf7fb 0%,#e8f3fb 48%,#f1ebfb 100%);box-shadow:0 14px 38px rgba(25,38,80,.07)}
.vibe-brand-card:nth-child(even){background:linear-gradient(120deg,#eef8f7 0%,#edf4fb 48%,#f3eafa 100%)}
.vibe-brand-visual{position:relative;display:grid;height:100%;min-height:330px;place-items:center;padding:32px}
.vibe-brand-rings{position:absolute;width:250px;max-width:90%;aspect-ratio:1;border:1px solid rgba(83,83,218,.13);border-radius:50%;box-shadow:0 0 0 25px rgba(73,150,230,.035),0 0 0 50px rgba(108,76,240,.025)}
.vibe-brand-card .vibe-brand-visual img{position:relative;z-index:1;width:100%;height:190px;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(25,38,80,.13))}
.vibe-brand-visual>strong{position:relative;z-index:1;display:grid;width:130px;height:130px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--vibe-blue),var(--vibe-purple),var(--vibe-pink));font-size:54px}
.vibe-brand-content{position:relative;z-index:2;padding:36px 38px 36px 16px}
.vibe-brand-content p{max-width:340px;margin-bottom:18px;color:#727785;font-size:16px;line-height:1.6}
.vibe-brand-content h3{max-width:360px;margin-bottom:24px;color:#30333a;font-size:clamp(27px,2.2vw,42px);font-weight:800;line-height:1.12;text-transform:uppercase}
.vibe-brand-shop{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:10px;padding:12px 22px;border-radius:10px;color:#fff;background:linear-gradient(105deg,var(--vibe-blue),var(--vibe-purple) 58%,var(--vibe-pink));box-shadow:0 12px 25px rgba(91,65,222,.22);font-size:14px;font-weight:800;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease}
.vibe-brand-shop:hover{color:#fff;box-shadow:0 17px 30px rgba(91,65,222,.3);transform:translateY(-3px)}
.vibe-brand-shop i{transition:transform .25s ease}.vibe-brand-shop:hover i{transform:translateX(4px)}
@media(max-width:1199px){.vibe-brand-card{grid-template-columns:42% 58%}.vibe-brand-content{padding-right:24px}.vibe-brand-content h3{font-size:30px}}
@media(max-width:991px){.vibe-brand-grid{grid-template-columns:1fr}.vibe-brand-card,.vibe-brand-visual{min-height:300px}}
@media(max-width:767px){.vibe-brand-card{grid-template-columns:1fr;text-align:center}.vibe-brand-visual{min-height:220px;padding:25px 30px 5px}.vibe-brand-rings{width:180px}.vibe-brand-card .vibe-brand-visual img{height:145px}.vibe-brand-content{padding:20px 25px 30px}.vibe-brand-content p,.vibe-brand-content h3{margin-right:auto;margin-left:auto}.vibe-brand-content h3{font-size:28px}}

/* Refined Company Introduction. */
.vibe-intro{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)}
.vibe-intro::before{position:absolute;top:-180px;right:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(101,76,240,.08),transparent 68%);content:"";pointer-events:none}
.vibe-intro-grid{position:relative;grid-template-columns:minmax(330px,.82fr) 1.55fr;gap:clamp(45px,6vw,90px)}
.vibe-experience{min-height:430px;align-items:flex-start;justify-content:flex-end;padding:42px;isolation:isolate;border:1px solid rgba(255,255,255,.32);background:linear-gradient(145deg,#08baf1 0%,#654cf0 55%,#ed24bd 100%);box-shadow:0 30px 70px rgba(80,61,205,.25)}
.vibe-experience::before{position:absolute;z-index:-1;inset:1px;border-radius:27px;background:linear-gradient(145deg,rgba(255,255,255,.13),transparent 48%);content:""}
.vibe-experience::after{right:-72px;bottom:-75px;width:245px;height:245px;border-width:42px}
.vibe-experience-label{position:absolute;top:34px;left:34px;padding:9px 14px;border:1px solid rgba(255,255,255,.28);border-radius:30px;background:rgba(255,255,255,.12);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(8px)}
.vibe-experience-number{display:flex;align-items:flex-start;line-height:.82}.vibe-experience-number strong{font-size:clamp(100px,9vw,145px);font-weight:800;letter-spacing:-.08em}.vibe-experience-number>span{margin:4px 0 0 10px;color:#ff9be4;font-size:50px;font-weight:800}
.vibe-experience p{margin:20px 0 0;font-size:18px;letter-spacing:.12em}
.vibe-experience-note{display:flex;align-items:center;gap:8px;margin-top:20px;color:rgba(255,255,255,.78);font-size:14px}.vibe-experience-note i{color:#8ff2ff}
.vibe-experience-orbit{position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.15);border-radius:50%}.vibe-orbit-one{top:70px;right:-35px;width:220px;height:220px}.vibe-orbit-two{top:105px;right:0;width:150px;height:150px}
.vibe-intro-copy{padding:18px 0}.vibe-intro-copy h2{max-width:760px;margin-bottom:24px;letter-spacing:-.025em}.vibe-intro-copy p{margin-top:13px}
.vibe-intro-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}.vibe-intro-highlights>div{display:grid;grid-template-columns:42px 1fr;column-gap:11px;align-items:center;padding:14px;border:1px solid #e7e9f4;border-radius:13px;background:#fff;box-shadow:0 8px 24px rgba(30,42,85,.045)}.vibe-intro-highlights span{grid-row:1/3;display:grid;width:42px;height:42px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--vibe-blue),var(--vibe-purple));font-size:18px}.vibe-intro-highlights strong{color:var(--vibe-ink);font-size:14px}.vibe-intro-highlights small{color:var(--vibe-muted);font-size:11px;line-height:1.35}.vibe-link-button{min-height:50px;padding-right:24px;padding-left:24px;box-shadow:0 13px 28px rgba(91,65,222,.2);transition:transform .25s ease,box-shadow .25s ease}.vibe-link-button:hover{color:#fff;box-shadow:0 18px 34px rgba(91,65,222,.28);transform:translateY(-3px)}
@media(max-width:1199px){.vibe-intro-grid{grid-template-columns:minmax(300px,.75fr) 1.4fr;gap:45px}.vibe-intro-highlights{grid-template-columns:1fr}.vibe-intro-highlights>div{max-width:430px}}
@media(max-width:767px){.vibe-intro-grid{grid-template-columns:1fr}.vibe-experience{min-height:340px;padding:30px}.vibe-experience-label{top:25px;left:25px}.vibe-experience-number strong{font-size:105px}.vibe-experience-number>span{font-size:40px}.vibe-intro-copy{padding:0}.vibe-intro-highlights>div{max-width:none}}

/* Readable experience card text and consistent section-heading panels. */
.vibe-experience>p {
    position: relative;
    z-index: 2;
    color: #fff !important;
    text-shadow: 0 2px 8px rgba(34, 25, 120, .2);
}

.vibe-experience-note {
    position: relative;
    z-index: 2;
    color: rgba(255, 255, 255, .9) !important;
}

.vibe-section-heading {
    position: relative;
    overflow: hidden;
    padding: 24px 28px;
    border: 1px solid #e5e7f3;
    border-radius: 18px;
    background: linear-gradient(110deg, #f2f9ff 0%, #f4f2ff 58%, #fff1fb 100%);
    box-shadow: 0 10px 28px rgba(39, 48, 92, .055);
}

.vibe-intro-heading {
    position: relative;
    margin-bottom: 24px;
    padding: 24px 28px;
    overflow: hidden;
    border: 1px solid #e5e7f3;
    border-radius: 18px;
    background: linear-gradient(110deg, #f2f9ff 0%, #f4f2ff 58%, #fff1fb 100%);
    box-shadow: 0 10px 28px rgba(39, 48, 92, .055);
}

.vibe-intro-heading h2 {
    margin-bottom: 0;
}

.vibe-section-heading::after {
    position: absolute;
    top: -65px;
    right: -35px;
    width: 145px;
    height: 145px;
    border: 24px solid rgba(101, 76, 240, .045);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.vibe-section-heading > * {
    position: relative;
    z-index: 1;
}

.vibe-section-heading .vibe-kicker {
    margin-bottom: 8px;
}

.testimonials-slider .section-capture {
    width: min(1320px, calc(100% - 30px));
    margin: 0 auto 38px;
    padding: 24px 28px;
    overflow: hidden;
    border: 1px solid #e5e7f3;
    border-radius: 18px;
    background: linear-gradient(110deg, #f2f9ff 0%, #f4f2ff 58%, #fff1fb 100%);
    box-shadow: 0 10px 28px rgba(39, 48, 92, .055);
}

.testimonials-slider .section-capture .section-title {
    margin: 0;
}

@media (max-width: 767px) {
    .vibe-section-heading,
    .vibe-intro-heading,
    .testimonials-slider .section-capture {
        padding: 19px 20px;
        border-radius: 14px;
    }
}

/* Stable homepage details and a visible white image overlay on hover. */
.vibe-products .vibe-product-media::after {
    position: absolute;
    z-index: 2;
    inset: 0;
    background: rgba(255, 255, 255, .72);
    opacity: 0;
    content: "";
    pointer-events: none;
    transition: opacity .25s ease;
}

.vibe-products .vibe-product-card:hover .vibe-product-media::after {
    opacity: 0;
}

.vibe-products .vibe-product-media .vibe-quick-view {
    z-index: 3;
}

.vibe-intro .vibe-experience {
    width: 100%;
    max-width: 350px;
    min-height: 350px;
    justify-self: center;
    padding: 32px;
}

.vibe-intro .vibe-experience-number strong {
    font-size: clamp(86px, 8vw, 112px);
}

.vibe-products .vibe-stock-badge {
    z-index: 4;
}

.vibe-products .vibe-product-info {
    width: 100%;
}

@media (max-width: 1199px) {
    .vibe-intro .vibe-experience {
        min-height: 300px;
        padding: 28px;
    }
}

@media (max-width: 767px) {
    .vibe-intro .vibe-experience {
        min-height: 270px;
        padding: 24px;
    }

    .vibe-intro .vibe-experience-label {
        top: 20px;
        left: 20px;
    }

    .vibe-intro .vibe-experience-number strong {
        font-size: 82px;
    }

    .vibe-intro .vibe-experience-number > span {
        font-size: 34px;
    }

    .vibe-intro .vibe-experience p,
    .vibe-intro .vibe-experience-note {
        margin-top: 12px;
    }
}

.vibe-products .vibe-product-info h3 {
    display: -webkit-box;
    width: 100%;
    min-height: 55px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.vibe-products .vibe-product-info h3 a {
    color: #12152b;
    overflow-wrap: anywhere;
}

.vibe-products .vibe-product-brand {
    width: 100%;
    min-height: 23px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vibe-products .vibe-product-pricing {
    width: 100%;
    min-height: 34px;
    flex-wrap: wrap;
    align-items: baseline;
}

.vibe-products .vibe-product-pricing s,
.vibe-products .vibe-product-pricing strong {
    line-height: 1.2;
    white-space: nowrap;
}

@media (max-width: 479px) {
    .vibe-products .vibe-product-info {
        min-height: 175px;
        padding: 21px 20px 24px;
    }

    .vibe-products .vibe-product-pricing strong {
        font-size: 21px;
    }
}

/* Professional product-card information and pricing panel. */
.vibe-product-meta-row {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 13px;
}

.vibe-product-info .vibe-product-category,
.vibe-product-info .vibe-product-brand-badge {
    display: inline-flex;
    max-width: 48%;
    min-height: 28px;
    align-items: center;
    margin: 0;
    padding: 5px 10px;
    overflow: hidden;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .06em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.vibe-product-info .vibe-product-category {
    color: #5b4ce5;
    background: #efedff;
}

.vibe-product-info .vibe-product-brand-badge {
    color: #157695;
    background: #e8f8fd;
}

.vibe-product-info h3 {
    padding-bottom: 18px;
    border-bottom: 1px solid #eceef4;
}

.vibe-product-pricing {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: end;
    padding-top: 18px;
}

.vibe-mrp-price,
.vibe-final-price {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.vibe-mrp-price small,
.vibe-final-price small {
    color: #8a93a6;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.vibe-mrp-price s {
    color: #9aa2b2;
    font-size: 14px;
    line-height: 1.2;
}

.vibe-final-price {
    padding-left: 18px;
    border-left: 1px solid #e7e9f0;
}

.vibe-final-price strong {
    color: #12152b;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.05;
}

@media (max-width: 479px) {
    .vibe-product-pricing {
        gap: 12px;
    }

    .vibe-final-price {
        padding-left: 12px;
    }

    .vibe-final-price strong {
        font-size: 20px;
    }
}

/* Product hover eye and focused quick-view modal. */
.vibe-product-media .vibe-quick-view{top:50%;right:auto;bottom:auto;left:50%;width:52px;height:52px;border:0;opacity:0;transform:translate(-50%,-35%);transition:opacity .25s ease,transform .25s ease,box-shadow .25s ease}.vibe-product-card:hover .vibe-quick-view,.vibe-quick-view:focus-visible{opacity:1;transform:translate(-50%,-50%)}.vibe-product-media .vibe-quick-view:hover{box-shadow:0 13px 28px rgba(78,66,210,.38)}
.vibe-quickview-modal{position:fixed;z-index:99999;inset:0;display:grid;padding:24px;place-items:center;visibility:hidden;opacity:0;transition:opacity .25s ease,visibility .25s ease}.vibe-quickview-modal.is-open{visibility:visible;opacity:1}.vibe-quickview-backdrop{position:absolute;inset:0;border:0;background:rgba(5,9,20,.72);backdrop-filter:blur(6px)}.vibe-quickview-dialog{position:relative;width:min(1050px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;border-radius:22px;background:#fff;box-shadow:0 35px 90px rgba(0,0,0,.35)}.vibe-quickview-header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid #e8eaf2}.vibe-quickview-header span{color:var(--vibe-purple);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.vibe-quickview-header h2{margin-top:3px;color:var(--vibe-ink);font-size:22px}.vibe-quickview-header>button{display:grid;width:42px;height:42px;place-items:center;border:1px solid #e2e5ef;border-radius:11px;color:var(--vibe-ink);background:#fff;font-size:20px}.vibe-quickview-body{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;padding:34px}.vibe-quickview-main-image{display:grid;height:430px;padding:24px;place-items:center;overflow:hidden;border:1px solid #e7e9f1;border-radius:18px;background:#f7f8fc}.vibe-quickview-main-image img{display:block;width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain}.vibe-quickview-thumbnails{display:flex;gap:10px;margin-top:12px;overflow-x:auto}.vibe-quickview-thumb{width:72px;height:72px;flex:0 0 72px;padding:6px;overflow:hidden;border:1px solid #e2e5ef;border-radius:11px;background:#fff}.vibe-quickview-thumb.is-active{border:2px solid var(--vibe-purple)}.vibe-quickview-thumb img{width:100%;height:100%;object-fit:contain}.vibe-quickview-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.vibe-quickview-meta{margin-bottom:10px;color:var(--vibe-purple);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.vibe-quickview-content h3{color:var(--vibe-ink);font-size:clamp(30px,3vw,44px);line-height:1.12}.vibe-quickview-price{display:flex;align-items:center;gap:12px;margin-top:22px}.vibe-quickview-price s{color:#9aa1af;font-size:17px}.vibe-quickview-price strong{color:var(--vibe-purple);font-size:27px}.vibe-quickview-description{width:100%;margin-top:26px;padding-top:22px;border-top:1px solid #e8eaf2}.vibe-quickview-description h4{margin-bottom:9px;color:var(--vibe-ink);font-size:15px}.vibe-quickview-description p{color:var(--vibe-muted);font-size:15px;line-height:1.75;white-space:pre-line}.vibe-book-now{display:inline-flex;min-width:210px;min-height:54px;align-items:center;justify-content:center;gap:11px;margin-top:30px;padding:12px 24px;border-radius:12px;color:#fff;background:linear-gradient(105deg,#20bd63,#149f50);box-shadow:0 14px 28px rgba(24,164,81,.24);font-weight:800;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease}.vibe-book-now:hover{color:#fff;box-shadow:0 18px 34px rgba(24,164,81,.34);transform:translateY(-3px)}body.vibe-modal-open{overflow:hidden}
@media(max-width:767px){.vibe-product-media .vibe-quick-view{opacity:1;transform:translate(-50%,-50%)}.vibe-quickview-modal{padding:12px}.vibe-quickview-dialog{max-height:calc(100vh - 24px);border-radius:17px}.vibe-quickview-body{grid-template-columns:1fr;gap:25px;padding:22px}.vibe-quickview-main-image{height:310px}.vibe-quickview-content{justify-content:flex-start}.vibe-book-now{width:100%}}

/* Product-card hover treatment matching the reference. */
.vibe-product-card {
    border-radius: 22px;
    background: #fff;
}

.vibe-product-media {
    background: #f4f6fb;
    transition: background-color .3s ease;
}

.vibe-product-card:hover .vibe-product-media {
    background: #fff;
}

.vibe-product-media .vibe-quick-view {
    width: 64px;
    height: 64px;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: #2864ee;
    box-shadow: 0 13px 28px rgba(40, 100, 238, .28);
    font-size: 21px;
}

.vibe-product-media .vibe-quick-view:hover {
    color: #fff;
    background: #174fd0;
    box-shadow: 0 17px 34px rgba(40, 100, 238, .38);
}

/* Final product-card composition based on the supplied reference. */
.vibe-product-grid {
    align-items: stretch;
}

.vibe-product-card {
    display: flex;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e5e8f1;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(42, 51, 94, .07);
}

.vibe-product-card:hover {
    border-color: #dfe3ef;
    background: #fff;
    box-shadow: 0 22px 48px rgba(45, 52, 104, .13);
    transform: translateY(-7px);
}

.vibe-product-media {
    height: 350px;
    flex: 0 0 350px;
    border-radius: 0;
    background: #fff;
}

.vibe-product-card:hover .vibe-product-media {
    background: #fff;
}

.vibe-product-media > img {
    padding: 30px 27px 20px;
    object-fit: contain;
}

.vibe-product-card:hover .vibe-product-media > img {
    transform: scale(1.035);
}

.vibe-product-info {
    display: flex;
    min-height: 190px;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px 26px 28px;
    background: #fff;
}

.vibe-product-info > span {
    margin-bottom: 9px;
    color: #654cf0;
    font-size: 13px;
    font-weight: 800;
}

.vibe-product-info h3 {
    margin: 0;
    font-size: 21px;
    line-height: 1.3;
}

.vibe-product-brand {
    min-height: auto;
    margin: 10px 0 22px;
    color: #748096;
    font-size: 15px;
}

.vibe-product-pricing {
    margin-top: auto;
    gap: 13px;
}

.vibe-product-pricing s {
    color: #949db0;
    font-size: 15px;
}

.vibe-product-pricing strong {
    color: #12152b;
    font-size: 24px;
    font-weight: 800;
}

.vibe-product-media .vibe-quick-view {
    width: 64px;
    height: 64px;
    opacity: 0;
    color: #fff;
    background: #2864ee;
    transform: translate(-50%, -38%) scale(.92);
}

.vibe-product-card:hover .vibe-quick-view,
.vibe-product-media .vibe-quick-view:focus-visible {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

@media (max-width: 767px) {
    .vibe-product-card {
        border-radius: 22px;
    }

    .vibe-product-media {
        height: 320px;
        flex-basis: 320px;
    }

    .vibe-product-media .vibe-quick-view {
        width: 58px;
        height: 58px;
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }
}

/* Professional Product Categories cards. */
.vibe-categories {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #fff 0%, #f8faff 100%);
}

.vibe-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.vibe-category-card {
    position: relative;
    display: grid;
    min-height: 210px;
    grid-template-columns: 82px 1fr 46px;
    gap: 22px;
    align-items: center;
    justify-content: initial;
    padding: 30px;
    overflow: hidden;
    border: 1px solid #e2e6f1;
    border-radius: 20px;
    color: var(--vibe-ink);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 14px 38px rgba(30, 42, 85, .065);
    transition: border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}

.vibe-category-card::before {
    position: absolute;
    top: -85px;
    right: -80px;
    width: 190px;
    height: 190px;
    border: 30px solid rgba(101, 76, 240, .035);
    border-radius: 50%;
    content: "";
    transition: transform .35s ease;
}

.vibe-category-card:hover {
    border-color: rgba(101, 76, 240, .25);
    color: var(--vibe-ink);
    background: #fff;
    box-shadow: 0 22px 48px rgba(64, 51, 160, .14);
    transform: translateY(-6px);
}

.vibe-category-card:hover::before {
    transform: scale(1.18);
}

.vibe-category-number {
    position: absolute;
    top: 17px;
    right: 20px;
    color: #ccd1e2;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
}

.vibe-category-icon {
    position: relative;
    z-index: 1;
    display: grid;
    width: 82px;
    height: 82px;
    margin: 0;
    place-items: center;
    border-radius: 22px;
    color: #fff;
    background: linear-gradient(140deg, var(--vibe-blue), var(--vibe-purple) 65%, var(--vibe-pink));
    box-shadow: 0 14px 28px rgba(82, 65, 212, .22);
    font-size: 32px;
    transition: transform .3s ease;
}

.vibe-category-card:hover .vibe-category-icon {
    color: #fff;
    background: linear-gradient(140deg, var(--vibe-pink), var(--vibe-purple) 55%, var(--vibe-blue));
    transform: rotate(-4deg) scale(1.05);
}

.vibe-category-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.vibe-category-name {
    color: var(--vibe-ink);
    font-size: 21px;
    font-weight: 800;
}

.vibe-category-description {
    display: block;
    margin-top: 8px;
    overflow: visible;
    color: var(--vibe-muted);
    font-size: 14px;
    line-height: 1.55;
    white-space: normal;
    overflow-wrap: anywhere;
}

.vibe-category-card small,
.vibe-category-card:hover small {
    margin-top: 13px;
    padding: 5px 10px;
    border-radius: 20px;
    color: var(--vibe-purple);
    background: #f0efff;
    font-size: 11px;
    font-weight: 700;
}

.vibe-category-arrow {
    position: relative;
    z-index: 1;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid #dfe2ef;
    border-radius: 50%;
    color: var(--vibe-purple);
    background: #fff;
    transition: color .25s ease, background .25s ease, transform .25s ease;
}

.vibe-category-card:hover .vibe-category-arrow {
    border-color: transparent;
    color: #fff;
    background: var(--vibe-purple);
    transform: translate(3px, -3px);
}

@media (max-width: 991px) {
    .vibe-category-card {
        grid-template-columns: 68px 1fr 42px;
        gap: 17px;
        padding: 24px;
    }

    .vibe-category-icon {
        width: 68px;
        height: 68px;
        border-radius: 18px;
        font-size: 27px;
    }
}

@media (max-width: 767px) {
    .vibe-category-grid {
        grid-template-columns: 1fr;
    }

    .vibe-category-card {
        min-height: 180px;
    }
}

@media (max-width: 479px) {
    .vibe-category-card {
        grid-template-columns: 58px 1fr;
        gap: 15px;
        padding: 22px 18px;
    }

    .vibe-category-icon {
        width: 58px;
        height: 58px;
        border-radius: 16px;
        font-size: 24px;
    }

    .vibe-category-arrow {
        display: none;
    }
}

/* Categories: icon-free, single-row automatic scroller. */
.vibe-category-grid {
    display: flex;
    grid-template-columns: none;
    gap: 20px;
    padding: 8px 4px 22px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    cursor: grab;
}

.vibe-category-grid::-webkit-scrollbar {
    display: none;
}

.vibe-category-grid:active {
    cursor: grabbing;
}

.vibe-category-card {
    min-width: 360px;
    min-height: 190px;
    flex: 0 0 calc((100% - 40px) / 3);
    grid-template-columns: 1fr 46px;
    scroll-snap-align: start;
}

.vibe-category-copy {
    padding-right: 8px;
}

@media (max-width: 1199px) {
    .vibe-category-card {
        min-width: 340px;
        flex-basis: calc((100% - 20px) / 2);
    }
}

@media (max-width: 767px) {
    .vibe-category-grid {
        display: flex;
        grid-template-columns: none;
    }

    .vibe-category-card {
        min-width: min(330px, 88vw);
        flex-basis: min(330px, 88vw);
        grid-template-columns: 1fr 42px;
    }
}

@media (max-width: 479px) {
    .vibe-category-card {
        min-width: 86vw;
        min-height: 175px;
        flex-basis: 86vw;
        grid-template-columns: 1fr;
    }
}

.vibe-product-pricing{display:flex;align-items:center;gap:10px}.vibe-product-pricing s{color:#9aa1b2;font-size:14px}.vibe-product-pricing strong{color:var(--vibe-ink);font-size:19px}
.vibe-products-more{display:flex;justify-content:center;margin-top:38px}.vibe-products-more .vibe-view-more{min-height:50px;padding:12px 23px;border:0;border-radius:11px;color:#fff;background:linear-gradient(105deg,var(--vibe-blue),var(--vibe-purple) 58%,var(--vibe-pink));box-shadow:0 13px 28px rgba(91,65,222,.22);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.vibe-products-more .vibe-view-more:hover{color:#fff;box-shadow:0 18px 34px rgba(91,65,222,.3);transform:translateY(-3px)}
.vibe-quickview-availability{display:inline-flex;min-height:30px;align-items:center;margin-top:15px;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:800;text-transform:uppercase}.vibe-quickview-availability.is-in-stock{color:#137a42;background:#e6f8ee}.vibe-quickview-availability.is-out-of-stock{color:#b32929;background:#ffeded}
.vibe-quickview-colors{width:100%;margin-top:16px}.vibe-quickview-colors>span{display:block;margin-bottom:8px;color:var(--vibe-muted);font-size:11px;font-weight:800;text-transform:uppercase}.vibe-quickview-colors>div{display:flex;flex-wrap:wrap;gap:8px}.vibe-quickview-colors button{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dfe3ed;border-radius:20px;background:#fff;color:var(--vibe-ink);font-size:11px}.vibe-quickview-colors button i{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--quick-color);box-shadow:0 0 0 1px #ccd2df}.vibe-quickview-colors button.is-active{border-color:var(--vibe-purple);box-shadow:0 0 0 2px rgba(101,76,240,.1)}

/* Contact information. */
.vibe-contact{position:relative;overflow:hidden;background:linear-gradient(180deg,#f7f9ff 0%,#fff 100%)}
.vibe-contact-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}.vibe-contact-card{position:relative;display:grid;min-height:190px;grid-template-columns:64px 1fr;gap:18px;align-items:center;padding:28px;overflow:hidden;border:1px solid #e2e6f1;border-radius:20px;color:var(--vibe-ink);background:#fff;box-shadow:0 14px 38px rgba(30,42,85,.07);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.vibe-contact-card::after{position:absolute;top:-65px;right:-65px;width:150px;height:150px;border:25px solid rgba(101,76,240,.035);border-radius:50%;content:""}.vibe-contact-card:hover{border-color:rgba(101,76,240,.24);color:var(--vibe-ink);box-shadow:0 22px 46px rgba(64,51,160,.13);transform:translateY(-5px)}.vibe-contact-icon{position:relative;z-index:1;display:grid;width:64px;height:64px;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(140deg,var(--vibe-blue),var(--vibe-purple) 62%,var(--vibe-pink));box-shadow:0 12px 25px rgba(82,65,212,.22);font-size:25px}.vibe-contact-copy{position:relative;z-index:1;display:flex;min-width:0;flex-direction:column}.vibe-contact-copy small{margin-bottom:7px;color:var(--vibe-purple);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.vibe-contact-copy strong{color:var(--vibe-ink);font-size:19px;line-height:1.35}.vibe-contact-copy>span:not(.vibe-contact-actions){margin-top:7px;color:var(--vibe-muted);font-size:14px;line-height:1.5}.vibe-contact-arrow{position:absolute;z-index:2;right:18px;bottom:18px;color:var(--vibe-purple)}.vibe-contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.vibe-contact-actions a{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:8px;color:#fff;background:var(--vibe-purple);font-size:12px;font-weight:700}.vibe-contact-actions a:last-child{background:#20b65a}.vibe-contact-actions a:hover{color:#fff;filter:brightness(.93)}
@media(max-width:991px){.vibe-contact-grid{grid-template-columns:1fr 1fr}.vibe-contact-address{grid-column:1/-1}}@media(max-width:767px){.vibe-contact-grid{grid-template-columns:1fr}.vibe-contact-address{grid-column:auto}.vibe-contact-card{min-height:165px;padding:23px;grid-template-columns:56px 1fr}.vibe-contact-icon{width:56px;height:56px;border-radius:15px;font-size:22px}}

/* Category slider controls and compact section spacing. */
.vibe-categories.section-ptb {
    padding-bottom: 85px;
}

.vibe-categories .vibe-section-heading {
    margin-bottom: 20px;
}

.vibe-category-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-bottom: 16px;
}

.vibe-category-nav {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border: 1px solid #dfe3f0;
    border-radius: 12px;
    color: var(--vibe-purple);
    background: #fff;
    box-shadow: 0 8px 22px rgba(41, 48, 91, .07);
    font-size: 18px;
    transition: color .25s ease, border-color .25s ease, background .25s ease, transform .25s ease;
}

.vibe-category-nav:hover {
    border-color: transparent;
    color: #fff;
    background: linear-gradient(135deg, var(--vibe-blue), var(--vibe-purple) 58%, var(--vibe-pink));
    transform: translateY(-2px);
}

.vibe-category-nav:focus-visible {
    outline: 3px solid rgba(101, 76, 240, .22);
    outline-offset: 3px;
}

.vibe-category-progress {
    position: relative;
    width: 110px;
    height: 4px;
    overflow: hidden;
    border-radius: 10px;
    background: #e5e7f1;
}

.vibe-category-progress i {
    position: absolute;
    top: 0;
    left: 0;
    width: 25%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--vibe-blue), var(--vibe-purple), var(--vibe-pink));
    transition: width .3s ease;
}

@media (max-width: 767px) {
    .vibe-categories.section-ptb {
        padding-bottom: 65px;
    }

    .vibe-category-controls {
        justify-content: center;
    }

    .vibe-category-progress {
        width: 90px;
    }
}

/* Section heading backgrounds belong to the text only, not the full header row. */
.vibe-section-heading,
.vibe-intro-heading,
.testimonials-slider .section-capture {
    overflow: visible;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.vibe-section-heading::after {
    display: none;
}

.vibe-intro-heading {
    margin-bottom: 24px;
}

.vibe-kicker {
    display: inline-flex;
    width: fit-content;
    min-height: 34px;
    align-items: center;
    margin-bottom: 13px;
    padding: 7px 14px;
    border: 1px solid rgba(101, 76, 240, .13);
    border-radius: 9px;
    background: linear-gradient(110deg, #eaf8ff 0%, #f0edff 62%, #fff0fa 100%);
    box-shadow: 0 7px 18px rgba(62, 54, 145, .07);
}

.vibe-heading-center .vibe-kicker {
    margin-right: auto;
    margin-left: auto;
}

.testimonials-slider .section-capture {
    width: auto;
    margin: 0 0 38px;
}

.testimonials-slider .section-title h2 {
    display: inline-block;
    padding: 12px 20px;
    border: 1px solid #e5e7f3;
    border-radius: 12px;
    background: linear-gradient(110deg, #f2f9ff 0%, #f4f2ff 58%, #fff1fb 100%);
    box-shadow: 0 8px 22px rgba(39, 48, 92, .055);
}

@media (max-width: 767px) {
    .vibe-section-heading,
    .vibe-intro-heading,
    .testimonials-slider .section-capture {
        padding: 0;
        border-radius: 0;
    }
}
