/* =========================================================
   RESPONSIVE.CSS — All media queries live here
   ========================================================= */

/* Large desktops */
@media (max-width: 1399.98px) {
  .zv-nav__link { padding: 10px 11px; font-size: .88rem; }
  .zv-mega__inner { grid-template-columns: 1fr 260px; gap: 24px; }
}

/* Desktops */
@media (max-width: 1199.98px) {
  :root { --header-height: 78px; }
  .zv-logo img { height: 46px; }
  .zv-nav__link { padding: 10px 9px; font-size: .83rem; letter-spacing: .03em; }
  .zv-mainbar__inner { gap: 14px; }
  .zv-mega { padding: 24px 0 20px; }
  .zv-mega__inner { grid-template-columns: 1fr 230px; gap: 20px; }
  .zv-mega__cols { grid-template-columns: repeat(2, 1fr); gap: 18px 22px; }
  .zv-mega .zv-catgrid { grid-template-columns: repeat(4, 1fr); gap: 12px; }
  .zv-mega .zv-catgrid .zv-cat:nth-child(5) { display: none; }
}

/* Tablets landscape */
@media (max-width: 991.98px) {
  :root { --header-height: 72px; }
  :root { --topbar-height: 0px; }
  .zv-topbar { display: none; }
  .zv-logo { margin-right: auto; }
  .zv-logo img { height: 42px; }
  .zv-searchbar__tags { display: none !important; }
  .zv-mega { display: none; }
}

/* Tablets portrait */
@media (max-width: 767.98px) {
  :root { --header-height: 66px; --topbar-height: 0px; }
  .zv-logo img { height: 38px; }
  .zv-icon-btn { width: 40px; height: 40px; font-size: 1.05rem; }
  .zv-actions { gap: 2px; }
  .zv-offcanvas { width: 100%; max-width: 100%; }
  .zv-searchbar__input { font-size: .95rem; }
}

/* Mobiles */
@media (max-width: 575.98px) {
  :root { --header-height: 62px; }
  .container-zv { padding-inline: 14px; }
  .zv-logo img { height: 34px; }
  .zv-searchbar__inner { gap: 8px; }
  .zv-searchbar__input { font-size: .9rem; }
  .zv-cart__thumb { width: 68px; height: 78px; }
  .zv-offcanvas__body { padding: 16px; }
  .zv-catgrid--mobile { gap: 10px; }
  .zv-catgrid--mobile .zv-cat__name { font-size: .82rem; }
}

/* Small mobiles */
@media (max-width: 375.98px) {
  .zv-logo img { height: 30px; }
  .zv-icon-btn { width: 36px; height: 36px; }
  .zv-btn { padding: 12px 16px; font-size: .86rem; }
  .zv-catgrid--mobile { grid-template-columns: 1fr; }
}

/* Center the logo on tablet & mobile */
@media (max-width: 991.98px) {
  .zv-mainbar__inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
  }
  .zv-logo { margin-right: 0 !important; justify-self: center; }
  .zv-actions { justify-self: end; }
  .zv-burger { justify-self: start; }
}

/* ---------- Hero carousel ---------- */
@media (max-width: 1199.98px) {
  .zv-hero__content { max-width: 500px; }
  .zv-hero__nav { width: 42px; height: 42px; }
  .zv-hero__nav--prev { left: 12px; }
  .zv-hero__nav--next { right: 12px; }
}

@media (max-width: 991.98px) {
  .zv-hero__slide { height: 460px; }
  .zv-hero__veil--left,
  .zv-hero__veil--right,
  .zv-hero__veil--full { background: linear-gradient(180deg, rgba(8,26,49,.25) 0%, rgba(8,26,49,.55) 55%, rgba(8,26,49,.82) 100%); }
  .zv-hero__inner,
  .zv-hero__slide--left .zv-hero__inner,
  .zv-hero__slide--right .zv-hero__inner,
  .zv-hero__slide--center .zv-hero__inner { justify-content: center !important; text-align: center !important; align-items: flex-end; padding-bottom: 66px; }
  .zv-hero__content { max-width: 640px; margin-inline: auto; }
  .zv-hero__kicker,
  .zv-hero__slide--left .zv-hero__kicker,
  .zv-hero__slide--center .zv-hero__kicker { margin-inline: auto !important; }
  .zv-hero__cta,
  .zv-hero__slide--left .zv-hero__cta,
  .zv-hero__slide--center .zv-hero__cta { justify-content: center !important; }
  .zv-hero__meta,
  .zv-hero__slide--left .zv-hero__meta { justify-content: center !important; }
  
}

@media (max-width: 767.98px) {
  .zv-hero__slide { height: 420px; }
  .zv-hero__nav { display: none; }
  .zv-hero__meta { display: none; }
  .zv-hero__text { margin-bottom: 20px; }
}

@media (max-width: 575.98px) {
  .zv-hero__slide { height: 400px; }
  .zv-hero__inner { padding-bottom: 58px; }
  .zv-hero__cta .zv-btn { padding: 11px 16px; font-size: .82rem; }
  
}

/* ---------- Marquee & Collections ---------- */
@media (max-width: 991.98px) {
  .zv-marquee__item { font-size: .85rem; padding-inline: 24px; }
  .zv-colslide { flex: 0 0 50%; max-width: 50%; }
  .zv-colcard { height: 370px; }
}

@media (max-width: 575.98px) {
  .zv-colslide { flex: 0 0 100%; max-width: 100%; }
}

@media (max-width: 575.98px) {
  .zv-collections { padding: 52px 0; }
  .zv-marquee__item { font-size: .78rem; padding-inline: 18px; }
  .zv-colcard { height: 330px; }
  .zv-colcard__name { font-size: 1.05rem; }
}

/* ---------- Latest Products ---------- */
@media (max-width: 1199.98px) {
  .zv-pgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
}

@media (max-width: 991.98px) {
  .zv-products { padding: 62px 0 72px; }
  .zv-pgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .zv-offcanvas--quick { width: 420px; }
  .zv-pcard__act { opacity: 1; transform: none; }
  .zv-pcard__cart { opacity: 1; transform: none; }
}

@media (max-width: 575.98px) {
  .zv-products { padding: 52px 0 62px; }
  .zv-pgrid { grid-template-columns: 1fr; gap: 18px; }
  .zv-pcard__body { padding: 16px 18px 20px; }
  .zv-pcard__name { font-size: .95rem; }
  .zv-pcard__now { font-size: 1.05rem; }
  .zv-pcard__was { font-size: .8rem; }
  .zv-pcard__act { width: 36px; height: 36px; font-size: .9rem; opacity: 1; transform: none; }
  .zv-pcard__cart { font-size: .72rem; padding: 11px 14px; left: 14px; right: 14px; opacity: 1; transform: none; }
  .zv-offcanvas--quick { width: 100%; max-width: 100%; }
  .zv-products__all--mobile {
    display: inline-flex;
    margin: 28px auto 0;
    width: 100%;
    justify-content: center;
  }
}

/* ---------- Why Zivora ---------- */
@media (max-width: 1199.98px) {
  .zv-why__grid { gap: 16px; }
  .zv-why__card { padding: 32px 22px 28px; }
  .zv-why::after { width: 620px; height: 620px; }
}

@media (max-width: 991.98px) {
  .zv-why { padding: 76px 0 84px; }
  .zv-why__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .zv-why__card:nth-child(even) { transform: none; }
  .zv-why__card:nth-child(even):hover { transform: translateY(-10px); }
  .zv-why__head { margin-bottom: 46px; }
}

@media (max-width: 575.98px) {
  .zv-why { padding: 58px 0 66px; }
  .zv-why__grid { grid-template-columns: 1fr; gap: 14px; }
  .zv-why__card { padding: 26px 20px 24px; }
  .zv-why__icon { width: 56px; height: 56px; margin-bottom: 22px; border-radius: 16px; }
  .zv-why__icon svg { width: 26px; height: 26px; }
  .zv-why__num { font-size: 2.3rem; }
  .zv-why::after { display: none; }
}

/* ---------- About Us ---------- */
@media (max-width: 1199.98px) {
  .zv-about__grid { gap: 44px; }
}

@media (max-width: 991.98px) {
  .zv-about { padding: 74px 0 82px; }
  .zv-about__grid { grid-template-columns: 1fr; gap: 44px; }
  .zv-about__media { max-width: 560px; margin-inline: auto; width: 100%; }
  .zv-about__frame:first-child { aspect-ratio: 4 / 3.4; }
}

@media (max-width: 767.98px) {
  .zv-about__points { grid-template-columns: 1fr; }
}

@media (max-width: 575.98px) {
  .zv-about { padding: 56px 0 64px; }
  .zv-about__media { padding-bottom: 46px; }
  .zv-about__frame--sm { width: 54%; right: -6px; border-width: 6px; }
  .zv-about__lead { font-size: .95rem; }
  .zv-about__cta .zv-btn { width: 100%; justify-content: center; }
}

/* ---------- Promo Cards ---------- */
@media (max-width: 1199.98px) {
  .zv-promo__card { aspect-ratio: 16 / 6.6; min-height: 160px; }
  .zv-promo__content { padding: 22px 26px; max-width: 66%; }
}

@media (max-width: 991.98px) {
  .zv-promo { padding: 70px 0; }
  .zv-promo__grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
  .zv-promo__card { aspect-ratio: 16 / 7; min-height: 150px; }
  .zv-promo__title { font-size: 1.15rem; }
  .zv-promo__text { font-size: .8rem; margin-bottom: 10px; }
}

@media (max-width: 767.98px) {
  .zv-promo { padding: 60px 0; }
  .zv-promo__grid { grid-template-columns: 1fr; }
  .zv-promo__card { aspect-ratio: 16 / 6.8; min-height: 160px; }
  .zv-promo__content { max-width: 64%; padding: 22px 26px; }
}

@media (max-width: 575.98px) {
  .zv-promo { padding: 50px 0; }
  .zv-promo__card { aspect-ratio: 16 / 7.2; min-height: 150px; }
  .zv-promo__content { max-width: 76%; padding: 20px 22px; }
  .zv-promo__title { font-size: 1.2rem; }
  .zv-promo__text { font-size: .78rem; }
}

/* ---------- Trending Products ---------- */
@media (max-width: 1199.98px) {
  .zv-trendslide { flex: 0 0 33.3333%; max-width: 33.3333%; }
}

@media (max-width: 991.98px) {
  .zv-trend { padding: 72px 0 82px; }
  .zv-trend__tabs { display: none; }
  .zv-trend__select { display: block; width: auto; min-width: 240px; max-width: 300px; margin-left: auto; }
  .zv-trend__head { gap: 16px; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
  .zv-trend__nav { display: grid; width: 40px; height: 40px; }
  .zv-trend__nav--prev { left: 12px; }
  .zv-trend__nav--next { right: 12px; }
  .zv-trendslide { flex: 0 0 50%; max-width: 50%; }
  .zv-trendslide .zv-pcard__act,
  .zv-trendslide .zv-pcard__cart { opacity: 1; transform: none; }
}


@media (max-width: 767.98px) {
  .zv-trendslide { flex: 0 0 50%; max-width: 50%; }
  .zv-trend__select { min-width: 200px; max-width: 260px; }
}

@media (max-width: 575.98px) {
  .zv-trendslide { flex: 0 0 100%; max-width: 100%; }
  .zv-trend__head { flex-wrap: wrap; }
  .zv-trend__select { width: 100%; max-width: 100%; min-width: 0; margin-left: 0; }
}



@media (max-width: 575.98px) {
  .zv-trend { padding: 56px 0 64px; }
  .zv-trendslide { padding: 8px 12px; }
  .zv-trendwrap { padding: 20px 14px 32px; margin: -20px -14px -32px; }
}

/* ---------- Banner Carousel ---------- */
@media (max-width: 991.98px) {
  .zv-bnr__nav { width: 40px; height: 40px; opacity: 1; }
  .zv-bnr__nav--prev { left: 12px; }
  .zv-bnr__nav--next { right: 12px; }
}

@media (max-width: 575.98px) {
  .zv-bnr__nav { display: none; }
  .zv-bnr__dots { bottom: 10px; }
  .zv-bnr__dots button { width: 18px; height: 3px; }
  .zv-bnr__dots button.is-active { width: 30px; }
}

/* ===== Blog section ===== */
@media (max-width: 1199.98px) {
  .zv-blog__nav--prev { left: -8px; }
  .zv-blog__nav--next { right: -8px; }
}
@media (max-width: 991.98px) {
  .zv-blog { padding: 62px 0 70px; }
  .zv-blogslide { flex: 0 0 50%; max-width: 50%; }
  .zv-blog__head .zv-blog__all { display: none; }
  .zv-blog__all--mobile {
    display: inline-flex;
    margin: 26px auto 0;
    justify-content: center;
  }
  .zv-blog .container-zv { text-align: center; }
  .zv-blog__head { text-align: left; margin-bottom: 30px; }
  .zv-blog__nav { width: 40px; height: 40px; }
  .zv-blog__nav--prev { left: 4px; }
  .zv-blog__nav--next { right: 4px; }
  .zv-blogcard__title,
  .zv-blogcard__text { text-align: left; }
}
@media (max-width: 575.98px) {
  .zv-blog { padding: 52px 0 60px; }
  .zv-blogslide { flex: 0 0 100%; max-width: 100%; }
  .zv-blogcard__title { font-size: 1.05rem; }
  .zv-blogcard__title,
  .zv-blogcard__text { text-align: left; }
}


/* ---------- Need Help / Zivora Standard ---------- */
@media (max-width: 1199.98px) {
  .zv-standard { padding: 78px 0 84px; }
  .zv-standard__grid { gap: 18px; }
  .zv-standardcard { padding: 22px; min-height: 230px; }
  .zv-standardcard__title { font-size: 1.15rem; }
}
@media (max-width: 991.98px) {
  .zv-standard { padding: 66px 0 72px; }
  .zv-standard__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767.98px) {
  .zv-standard { padding: 56px 0 62px; }
  .zv-standard__head { flex-direction: column; align-items: flex-start; gap: 18px; }
  .zv-standard__cta { padding: 12px 26px; }
}
@media (max-width: 575.98px) {
  .zv-standard__grid { grid-template-columns: 1fr; }
  .zv-standardcard { min-height: 0; }
}

/* ---------- Footer ---------- */
@media (max-width: 1199.98px){
  .zv-footer__main{grid-template-columns:1.4fr 1fr 1fr;gap:26px 22px;}
  .zv-fcol--app{grid-column:span 3;}
  .zv-fapps{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 991.98px){
  .zv-footer{padding-top:46px;}
  .zv-fnews{grid-template-columns:1fr;padding:22px 16px;}
  .zv-footer__main{grid-template-columns:1fr 1fr;padding:38px 16px 32px;}
  .zv-fbottom__inner{padding:16px;}
  .zv-fcol--brand{grid-column:span 2;}
  .zv-fcol--app{grid-column:span 2;}
}
@media (max-width: 575.98px){
  .zv-fnews__form{flex-direction:column;}
  .zv-fnews__form .zv-btn{justify-content:center;width:100%;}
  .zv-footer__main{grid-template-columns:1fr;padding:32px 14px 26px;}
  .zv-fcol--brand,.zv-fcol--app{grid-column:span 1;}
  .zv-fapps{grid-template-columns:1fr;}
  .zv-fbottom__inner{flex-direction:column;text-align:center;padding:14px;}
}

/* ---------- CONTACT PAGE ---------- */
@media (max-width:1199px){
  .zv-cchannels__grid{grid-template-columns:repeat(2,1fr);}
  .zv-cform__grid{grid-template-columns:1fr;}
}
@media (max-width:991px){
  .zv-chero{padding:58px 0 58px;}
  .zv-cform__card{padding:26px;}
}
@media (max-width:575px){
  .zv-cchannels__grid{grid-template-columns:1fr;gap:14px;}
  .zv-form__row{grid-template-columns:1fr;}
  .zv-cform__card{padding:20px;}
  .zv-cinfo__card--dark{padding:22px;}
}
@media (max-width:1199px){
  .zv-cinfo__map{min-height:320px;}
}
@media (max-width:575px){
  .zv-cinfo__map{min-height:260px;}
}
@media (max-width:575px){
  .zv-form__actions{flex-direction:column;align-items:stretch;}
  .zv-form__submit{justify-content:center;}
  .zv-dial__pop{width:260px;}
}

/* ===== BLOG LIST PAGE ===== */
@media (max-width: 1199.98px) {
  .zv-blogpage__grid { grid-template-columns: 270px 1fr; gap: 26px; }
  .zv-bfeat { grid-template-columns: 1fr; }
  .zv-bfeat__media { min-height: 260px; }
}
@media (max-width: 991.98px) {
  .zv-blogpage { padding: 34px 0 64px; }
  .zv-blogpage__grid { grid-template-columns: 1fr; }
  .zv-bside { position: static; grid-template-columns: 1fr; }
  .zv-bposts { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
@media (max-width: 575.98px) {
  .zv-bposts { grid-template-columns: 1fr; }
  .zv-bfeat__body { padding: 22px 18px; }
}

/* Blog list page grid keeps cards full-width of their grid cell */
@media (max-width: 1199.98px) {
  .zv-bposts .zv-blogslide { flex: none; max-width: none; padding: 0; }
}

/* ===== BLOG DETAIL PAGE ===== */
@media (max-width: 1199.98px) {
  .zv-article__grid { grid-template-columns: 56px minmax(0,1fr) 280px; gap: 26px; }
}
@media (max-width: 991.98px) {
  .zv-ahero { padding: 72px 0 52px; }
  .zv-ahero__veil { background: linear-gradient(180deg, rgba(8,22,44,.72) 0%, rgba(8,22,44,.92) 70%); }
  .zv-article { padding: 40px 0 56px; }
  .zv-article__grid { grid-template-columns: 1fr; }
  .zv-share-rail { display: none; }
  .zv-aside { position: static; grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767.98px) {
  .zv-cmtform__row { grid-template-columns: 1fr; }
  .zv-pnav { grid-template-columns: 1fr; }
  .zv-pnav__item--next { text-align: left; align-items: flex-start; }
}
@media (max-width: 575.98px) {
  .zv-ahero { padding: 58px 0 44px; }
  .zv-aside { grid-template-columns: 1fr; }
  .zv-author { flex-direction: column; gap: 14px; }
  .zv-quote { padding: 46px 20px 22px; }
  .zv-post__lead { font-size: 1.02rem; }
  .zv-related { padding-bottom: 56px; }
}
@media (max-width: 991.98px) { .zv-related .zv-bposts { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px) { .zv-related .zv-bposts { grid-template-columns: 1fr; } }

/* ---------- ABOUT PAGE ---------- */
@media (max-width: 1199.98px) {
  .zv-abcompany__grid { gap: 40px; }
  .zv-abfound__grid { gap: 20px; }
  .zv-abwhy__grid { gap: 16px; }
  .zv-abcta__box { padding: 38px 34px; }
}
@media (max-width: 991.98px) {
  .zv-abstats__grid { grid-template-columns: repeat(2, 1fr); margin-top: -34px; }
  .zv-abcompany { padding: 62px 0 70px; }
  .zv-abcompany__grid { grid-template-columns: 1fr; gap: 46px; }
  .zv-abcompany__media { max-width: 560px; margin-inline: auto; width: 100%; }
  .zv-abjourney { padding: 66px 0 72px; }
  .zv-abtl { grid-template-columns: repeat(2, 1fr); gap: 34px 24px; }
  .zv-abtl::before { display: none; }
  .zv-abfound { padding: 66px 0 72px; }
  .zv-abfound__grid { grid-template-columns: repeat(2, 1fr); }
  .zv-fcard__social { opacity: 1; transform: translate(-50%, 0); }
  .zv-abwhy { padding: 66px 0 72px; }
  .zv-abwhy__grid { grid-template-columns: repeat(2, 1fr); }
  .zv-abcta__box { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 575.98px) {
  .zv-abstats__grid { grid-template-columns: 1fr; margin-top: -26px; }
  .zv-abstat { padding: 22px 18px; }
  .zv-abcompany { padding: 52px 0 58px; }
  .zv-abcompany__media { padding-bottom: 52px; }
  .zv-abcompany__frame--sm { width: 52%; right: -6px; border-width: 6px; }
  .zv-abcompany__badge { padding: 12px 16px; left: 0; }
  .zv-abmv { grid-template-columns: 1fr; }
  .zv-abcompany__cta .zv-btn { width: 100%; justify-content: center; }
  .zv-abtl { grid-template-columns: 1fr; }
  .zv-abfound { padding: 52px 0 58px; }
  .zv-abfound__grid { grid-template-columns: 1fr; }
  .zv-abwhy { padding: 52px 0 58px; }
  .zv-abwhy__grid { grid-template-columns: 1fr; }
  .zv-abcta { padding: 52px 0 60px; }
  .zv-abcta__box { padding: 28px 22px; border-radius: 18px; }
  .zv-abcta__actions { width: 100%; }
  .zv-abcta__actions .zv-btn { width: 100%; justify-content: center; }
}

/* ---------- PRIVACY POLICY PAGE ---------- */
@media (max-width: 1199.98px) {
  .zv-pp__grid { grid-template-columns: 250px minmax(0, 1fr); gap: 24px; }
  .zv-ppbody { padding: 28px 26px 32px; }
  .zv-pphi__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 991.98px) {
  .zv-pphi__grid { margin-top: -34px; }
  .zv-pp { padding: 46px 0 62px; }
  .zv-pp__grid { grid-template-columns: 1fr; }
  .zv-ppside { position: static; }
  .zv-pptoc { grid-template-columns: repeat(2, 1fr); display: grid; max-height: none; }
  .zv-ppcards { grid-template-columns: repeat(2, 1fr); }
  .zv-ppcontact { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .zv-pphi__grid { grid-template-columns: 1fr; margin-top: -26px; }
  .zv-ppbody { padding: 22px 18px 26px; border-radius: 16px; }
  .zv-pptoc { grid-template-columns: 1fr; }
  .zv-ppcards, .zv-ppcards--2 { grid-template-columns: 1fr; }
  .zv-ppsec__title { font-size: 1.12rem; }
  .zv-pptable__row { grid-template-columns: 1fr; gap: 4px; }
  .zv-pptable__row--head { display: none; }
  .zv-pptable__row span:nth-child(3) { font-size: .78rem; color: var(--color-muted); }
}

/* ---------- Shop list page ---------- */
@media (max-width: 1199.98px) {
  .zv-shopgrid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 991.98px) {
  .zv-shopgrid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
  .zv-shopbar { padding: 10px 12px; }
  .zv-shopsort { margin-left: auto; }
}
@media (max-width: 575.98px) {
  .zv-shopgrid { grid-template-columns: 1fr; }
  .zv-shopbar__count { order: 3; width: 100%; }
  .zv-shopsort { margin-left: 0; flex: 1; }
}

/* ================= PRODUCT DETAIL PAGE ================= */
@media (max-width: 1199.98px) {
  .zv-pdp__grid { gap: 34px; }
  .zv-pgrid--4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .zv-rev__summary { grid-template-columns: 200px minmax(0, 1fr); row-gap: 26px; }
  .zv-rev__cta { grid-column: 1 / -1; border-left: 0; padding-left: 0; padding-top: 22px; border-top: 1px solid var(--color-border); }
}
@media (max-width: 991.98px) {
  .zv-pdp { padding: 30px 0 6px; }
  .zv-pdp__grid { grid-template-columns: 1fr; gap: 34px; }
  .zv-gal { position: static; }
  .zv-ptrust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zv-ppanel__grid { grid-template-columns: 1fr; gap: 26px; }
  .zv-shipgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zv-pgrid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zv-ptabs__bar { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .zv-ptabs__bar::-webkit-scrollbar { display: none; }
  .zv-ptab { white-space: nowrap; padding: 13px 14px; font-size: .88rem; }
}
@media (max-width: 767.98px) {
  .zv-gal__thumbs { overflow-x: auto; padding-bottom: 4px; }
  .zv-gal__thumbs::-webkit-scrollbar { display: none; }
  .zv-gal__thumb { flex: 0 0 74px; }
  .zv-crumb { flex-wrap: wrap; row-gap: 4px; }
  .zv-gal__thumb img { height: 54px; }
  .zv-gal__nav { opacity: 1; width: 38px; height: 38px; }
  .zv-gal__hint { display: none; }
  .zv-ptrust { grid-template-columns: 1fr; }
  .zv-specgrid { grid-template-columns: 1fr; }
  .zv-shipgrid { grid-template-columns: 1fr; }
  .zv-pgrid--4 { grid-template-columns: 1fr; }
  .zv-rev__summary { grid-template-columns: 1fr; padding: 24px 20px; }
  .zv-rev__score { border-right: 0; padding-right: 0; border-bottom: 1px solid var(--color-border); padding-bottom: 20px; }
  .zv-rform { padding: 22px 18px; }
  .zv-rform__grid { grid-template-columns: 1fr; }
  .zv-ritem { padding: 20px 18px; }
  .zv-ritem__foot { flex-wrap: wrap; gap: 14px; }
  .zv-replybtn { margin-left: 0; }
  .zv-buyrow__cart, .zv-buyrow__buy { flex: 1 1 100%; }
  .zv-related { padding: 44px 0 60px; margin-top: 40px; }
}

/* Review upload */
@media (max-width: 767.98px) {
  .zv-rupload__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .zv-rupload__drop { flex-wrap: wrap; gap: 10px; }
  .zv-rupload__btn { margin-left: 58px; }
}

/* Cart page */
@media (max-width: 1199.98px) {
  .zv-cartpage__grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; }
}
@media (max-width: 991.98px) {
  .zv-cartpage__grid { grid-template-columns: 1fr; }
  .zv-cartside { position: static; }
  .zv-cartrow { grid-template-columns: 92px minmax(0, 1fr); row-gap: 14px; }
  .zv-cartrow__qty { grid-column: 1 / 2; }
  .zv-cartrow__price { grid-column: 2 / 3; text-align: right; align-self: center; }
}
@media (max-width: 575.98px) {
  .zv-cartpage { padding: 50px 0 50px; }
  .zv-cartrow { grid-template-columns: 74px minmax(0, 1fr); padding: 13px; gap: 12px; }
}

/* ============ CHECKOUT PAGE ============ */
@media (max-width: 1199.98px) {
  .zv-copage__grid { grid-template-columns: minmax(0,1fr) 350px; gap: 34px; }
  .zv-copage { background: linear-gradient(90deg, #fff 0 62%, var(--color-ivory) 62% 100%); }
}
@media (max-width: 991.98px) {
  .zv-costeps { display: none; }
  .zv-cohead__inner { padding: 12px 0; }
  .zv-cohead__logo img { height: 34px; }
  .zv-copage { background: #fff; padding: 24px 0 60px; }
  .zv-copage__grid { grid-template-columns: 1fr; gap: 22px; }
  .zv-cosum { order: -1; }
  .zv-cosum__inner { position: static; }
  .zv-cosum__body {
    background: var(--color-ivory); border: 1px solid var(--color-border);
    border-radius: 16px; padding: 18px; margin-top: 10px;
  }
  .zv-cocard { padding: 22px 18px 24px; }
  .zv-cofoot__inner { flex-direction: column; text-align: center; }
  .zv-cofoot ul { justify-content: center; gap: 14px; }
}
@media (max-width: 575.98px) {
  .zv-cofields { grid-template-columns: 1fr; }
  .zv-addrmodal .modal-dialog { margin: 0; min-height: 100%; align-items: stretch; }
  .zv-addrmodal .modal-content { min-height: 100vh; border-radius: 0; }
  .zv-addrmodal__body { max-height: calc(100vh - 162px); padding: 18px 16px; }
  .zv-addrmodal__head { padding: 18px 16px 14px; }
  .zv-addrmodal__foot { padding: 14px 16px 18px; }
  .zv-cocard__head { flex-wrap: wrap; }
  .zv-copowered { margin-left: 44px; }
  .zv-copay__row { flex-wrap: wrap; }
  .zv-copay__badge { margin-left: 54px; }
  .zv-cosum__total strong { font-size: 1.3rem; }
  .zv-cocoupon { flex-direction: column; }
  .zv-cocoupon button { width: 100%; }
}

/* ===== ORDER CONFIRMATION ===== */
@media (max-width: 1199.98px) {
  .zv-confgrid { grid-template-columns: 1fr; }
}
@media (max-width: 991.98px) {
  .zv-conf { padding: 40px 0 60px; }
  .zv-confhero { padding: 40px 24px 34px; border-radius: 20px; }
  .zv-confmeta { grid-template-columns: repeat(2, 1fr); }
  .zv-conftrack { padding: 22px 20px 6px; }
  .zv-steps { flex-wrap: wrap; gap: 18px 0; }
  .zv-steps li { flex: 0 0 33.333%; }
  .zv-steps li:nth-child(4)::before { display: none; }
  .zv-confnext { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 575.98px) {
  .zv-confhero__tick { width: 76px; height: 76px; }
  .zv-confmeta { grid-template-columns: 1fr; }
  .zv-confhero__cta .zv-btn { width: 100%; justify-content: center; }
  .zv-confcard { padding: 20px 16px; border-radius: 18px; }
  .zv-steps { display: block; padding-bottom: 16px; }
  .zv-steps li { display: grid; grid-template-columns: 40px 1fr; align-items: center;
    column-gap: 14px; text-align: left; padding: 0 0 18px; }
  .zv-steps li::before { top: -8px; left: 19px; width: 3px; height: 26px; }
  .zv-steps li:last-child { padding-bottom: 0; }
  .zv-steps__dot { margin: 0; grid-row: span 2; }
  .zv-confitem { gap: 12px; }
  .zv-confitem__media { width: 62px; height: 62px; }
  .zv-confnext { grid-template-columns: 1fr; }
}

/* ============ OTP VERIFICATION ============ */
@media (max-width: 991.98px) {
  .zv-otp { grid-template-columns: 1fr; min-height: 0; }
  .zv-otp__aside { padding: 34px 24px 44px; }
  .zv-otp__lead { margin-top: 26px; }
  .zv-otp__headline br { display: none; }
  .zv-otp__perks { display: none; }
  .zv-otp__badge { margin-top: 24px; }
  .zv-otp__main { padding: 34px 20px 60px; }
}
@media (max-width: 575.98px) {
  .zv-otp__logo img { height: 38px; margin-inline: auto; }
  .zv-otp__asideinner { text-align: center; }
  .zv-otp__text { margin-inline: auto; }
  .zv-otp__card { padding: 22px 18px; border-radius: 18px; }
  .zv-otp__mark { margin: 18px auto 14px; }
  .zv-otp__title, .zv-otp__sub { text-align: center; }
  .zv-otpinputs { gap: 7px; }
  .zv-otpinputs input { height: 50px; font-size: 1.12rem; border-radius: 10px; }
  .zv-otp__meta { flex-direction: column; align-items: stretch; text-align: center; gap: 8px; }
}

/* ============ USER DASHBOARD ============ */
@media (min-width: 992px) {
  .zv-dashnav.collapse { display: flex !important; }
}
@media (max-width: 1199.98px) {
  .zv-statgrid { grid-template-columns: repeat(3, 1fr); }
  .zv-recgrid, .zv-wgrid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 991.98px) {
  /* pull the grid up so the menu button straddles the hero edge (half in, half out) */
  .zv-dashgrid { display: flex; flex-direction: column; gap: 18px; margin-top: -28px; }
  /* let sidebar children sit directly in the column so help card can go last */
  .zv-dashside { display: contents; }
  .zv-dashside__toggle {
    display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%;
    background: #fff; border: 1px solid var(--color-border); border-radius: 14px;
    padding: 14px 16px; font-weight: 600; color: var(--color-heading);
    order: 1; box-shadow: 0 12px 28px rgba(15, 37, 68, .16);
  }
  .zv-dashnav { display: none; order: 2; }
  .zv-dashnav.show, .zv-dashnav.collapsing { display: flex; }
  .zv-dashmain { order: 3; min-width: 0; }
  .zv-dashhelp { order: 4; }
  .zv-orow { grid-template-columns: 56px minmax(0, 1fr) auto; row-gap: 10px; }
  .zv-orow__amt { grid-column: 2; }
  .zv-orow__btn { grid-column: 3; }
  .zv-addrgrid, .zv-pfrow { grid-template-columns: 1fr; }
  .zv-track__steps li { font-size: .7rem; }
  .zv-dashhero__meta { flex-wrap: wrap; row-gap: 6px; }
}
@media (max-width: 767.98px) {
  .zv-recgrid, .zv-wgrid { grid-template-columns: repeat(2, 1fr); }
  .zv-dashhero { padding: 34px 0 80px; }
  .zv-dashhero__inner { flex-direction: column; align-items: flex-start; }
  .zv-statgrid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .zv-statgrid .zv-stat:last-child { grid-column: 1 / -1; }
  .zv-track__prod img { width: 58px; height: 58px; }
  .zv-dashcard__head { flex-wrap: wrap; gap: 8px; }
}
@media (max-width: 575.98px) {
  .zv-recgrid, .zv-wgrid { grid-template-columns: 1fr; }
  .zv-dashcard { padding: 16px; }
  .zv-dashhero__left { flex-direction: column; align-items: flex-start; }
  .zv-dashhero__avatar { width: 68px; height: 68px; flex-basis: 68px; font-size: 1.4rem; }
  .zv-dashhero__name { font-size: 1.65rem; }
  .zv-dashhero__meta { flex-direction: column; align-items: flex-start; gap: 4px; }
  .zv-stat { padding: 14px; gap: 10px; }
  .zv-stat__ico { width: 40px; height: 40px; flex: 0 0 40px; font-size: 1rem; }
  .zv-stat b { font-size: 1.15rem; }
  .zv-stat small { font-size: .76rem; }
  .zv-orow { grid-template-columns: 52px minmax(0, 1fr); }
  .zv-orow .zv-otag { grid-column: 2; justify-self: start; }
  .zv-orow__amt { grid-column: 1 / -1; }
  .zv-orow__btn { grid-column: 1 / -1; justify-content: center; }
  /* vertical timeline for the shipment tracker */
  .zv-track__steps { flex-direction: column; align-items: stretch; gap: 0; }
  .zv-track__steps li {
    flex: 0 0 auto; width: 100%; text-align: left;
    padding: 0 0 20px 30px; font-size: .82rem; min-height: 22px;
  }
  .zv-track__steps li:last-child { padding-bottom: 0; }
  .zv-track__steps li span { top: 1px; left: 0; transform: none; }
  .zv-track__steps li::before,
  .zv-track__steps li:first-child::before { display: block; content: ""; left: 6px; top: 8px; width: 2px; height: 100%; }
  .zv-track__steps li:last-child::before { display: none; }
}


/* ===== Wishlist page ===== */
@media (max-width: 991.98px) {
  .zv-wishpage { padding: 50px 0 64px; }
  .zv-wishgrid { grid-template-columns: repeat(2, 1fr); }
  .zv-wishbar { flex-direction: column; align-items: flex-start; }
  .zv-wishbar__right { width: 100%; }
  .zv-wishbar__right .zv-btn { flex: 1; justify-content: center; }
}
@media (max-width: 575.98px) {
  .zv-wishgrid { grid-template-columns: 1fr; }
}

/* ===== My Orders page ===== */
@media (max-width: 991.98px) {
  /* no top padding so the dashboard menu button overlaps the hero like on Overview */
  .zv-ordpage { padding: 0 0 70px; }
  .zv-ordpage .zv-dashmain { padding-top: 6px; }
  .zv-ordsearch { min-width: 100%; }
  .zv-ordbar { flex-direction: column; align-items: stretch; gap: 12px; }
  .zv-ordtabs { width: 100%; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .zv-ordtabs::-webkit-scrollbar { display: none; }
  .zv-ordtabs button { flex: 0 0 auto; }
  .zv-ordcard__top { padding: 14px 16px; }
  .zv-ordcard__items, .zv-ordcard__foot, .zv-ordtrack { padding-left: 16px; padding-right: 16px; }
  .zv-ordcard__eta { margin-left: 16px; margin-right: 16px; }
}
@media (max-width: 767.98px) {
  .zv-ordcard__top { flex-direction: column; align-items: flex-start; gap: 10px; }
  .zv-ordcard__meta { gap: 10px 14px; font-size: .78rem; }
  .zv-ordcard__right { width: 100%; justify-content: space-between; }
  .zv-orditem { flex-wrap: wrap; gap: 12px; }
  .zv-orditem__img { width: 62px; height: 62px; flex: 0 0 62px; }
  .zv-orditem__info { flex: 1 1 60%; }
  .zv-orditem__price { width: 100%; text-align: right; }
  .zv-ordcard__eta { font-size: .8rem; line-height: 1.5; }
  .zv-ordcard__foot { gap: 8px; }
  .zv-ordcard__foot .zv-ordbtn { flex: 1 1 calc(50% - 4px); justify-content: center; font-size: .82rem; padding: 9px 10px; }
  .zv-ordtrack .zv-track__steps { flex-direction: column; align-items: flex-start; gap: 14px; }
  .zv-ordtrack .zv-track__steps li { width: 100%; text-align: left; display: flex; align-items: center; gap: 10px; }
  .zv-ordtrack .zv-track__steps li::before { display: none; }
  .zv-ordfoot { flex-direction: column; align-items: stretch; }
  .zv-ordfoot .zv-btn { justify-content: center; }
}
@media (max-width: 575.98px) {
  .zv-ordcard__id { font-size: .86rem; }
  .zv-ordcard__amt { font-size: 1rem; }
  .zv-orditem__info h6 { font-size: .9rem; }
  .zv-ordcard__foot .zv-ordbtn { flex: 1 1 100%; }
  .zv-ordempty { padding: 34px 18px; }
}

/* ===== Order detail page ===== */
@media (max-width: 991.98px){
  .zv-odsplit{grid-template-columns:1fr}
  .zv-odhead{padding:22px}
  .zv-odhead__right{text-align:left}
  .zv-odhead__acts{justify-content:flex-start}
  .zv-odback{margin-top:4px}
}
@media (max-width: 767.98px){
  .zv-odhead{gap:16px;padding:20px 18px}
  .zv-odhead__id{font-size:1.2rem;line-height:1.35;word-break:break-word}
  .zv-odhead__meta{font-size:.78rem;gap:6px 14px}
  .zv-odhead__amt{font-size:1.4rem}
  .zv-odhead__acts .zv-ordbtn{flex:1 1 calc(50% - 5px);justify-content:center}
  .zv-odcard{padding:18px 16px;border-radius:16px}
  .zv-odcard__head{flex-wrap:wrap;gap:8px}
  .zv-odcard__head h5{font-size:.95rem}
  .zv-odsteps{flex-direction:column;gap:0;text-align:left}
  .zv-odsteps li{display:grid;grid-template-columns:32px 1fr;column-gap:12px;text-align:left;padding-bottom:16px}
  .zv-odsteps li::before{top:0;left:15px;width:2px;height:100%}
  .zv-odsteps__dot{margin:0}
  .zv-odsteps b,.zv-odsteps em{grid-column:2}
  /* keep the ETA line flowing as text instead of flex columns */
  .zv-odeta{display:block;font-size:.82rem;line-height:1.6;padding:12px 14px}
  .zv-odeta i{margin-right:6px}
  .zv-odlog li{flex-direction:column;gap:2px}
  .zv-odlog li span{min-width:0}
  .zv-oditems .zv-orditem{align-items:flex-start}
  .zv-odbtns{width:100%}
  .zv-odbtns .zv-ordbtn{flex:1 1 calc(50% - 4px);justify-content:center}
  .zv-odsum__total b{font-size:1.1rem}
}
@media (max-width: 575.98px){
  .zv-odhead__acts .zv-ordbtn{flex:1 1 100%}
  .zv-odhead__amt{font-size:1.3rem}
  .zv-oditems .zv-orditem__img{width:56px;height:56px;flex:0 0 56px}
  .zv-odpay li,.zv-odsum__list li{font-size:.82rem;gap:10px}
  .zv-odpay li b{text-align:right;word-break:break-word}
}


/* ===== Dashboard wishlist ===== */
@media (max-width: 1199.98px){
  .zv-wlgrid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
}
@media (max-width: 991.98px){
  .zv-wlpage{ padding: 0 0 70px; }
  .zv-wlpage .zv-dashmain{ padding-top: 6px; min-width: 0; }
  .zv-wlhead{ flex-direction:column; align-items:flex-start; gap:14px; padding:18px; }
  .zv-wlhead__acts{ width:100%; }
  .zv-wlbar{ flex-direction:column; align-items:stretch; gap:12px; }
  /* tabs scroll horizontally instead of wrapping into many rows */
  .zv-wltabs{ width:100%; overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .zv-wltabs::-webkit-scrollbar{ display:none; }
  .zv-wltabs button{ flex:0 0 auto; }
  .zv-wltools{ flex-direction:row; width:100%; }
  .zv-wlsearch{ flex:1 1 auto; min-width:0; }
  .zv-wlsearch input{ width:100%; min-width:0; }
  .zv-wlsort{ flex:0 0 auto; }
}
@media (max-width: 767.98px){
  .zv-wlgrid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .zv-wlcard__body{ padding:14px; gap:6px; }
  .zv-wlcard__title{ font-size:14.5px; }
  .zv-wlcard__price b{ font-size:16px; }
  /* actions always visible on touch devices */
  .zv-wlcard__acts{ opacity:1; transform:none; }
  .zv-wlcard__foot{ flex-wrap:wrap; }
  .zv-wlcard__foot .zv-wlbtn{ font-size:.8rem; padding:9px 10px; }
}
@media (max-width: 575.98px){
  .zv-wlgrid{ grid-template-columns:1fr; }
  .zv-wlhead{ padding:16px; }
  .zv-wlhead__sub{ font-size:13px; }
  .zv-wlhead__acts .zv-wlbtn{ flex:1 1 calc(50% - 5px); justify-content:center; }
  .zv-wltools{ flex-direction:column; }
  .zv-wlsort select{ width:100%; }
  .zv-wlcard__media{ aspect-ratio: 4 / 3; }
  .zv-wlempty{ padding:40px 16px; }
}


/* ---- Dashboard addresses ---- */
@media (max-width: 1199.98px) {
  .zv-adgrid { gap: 14px; }
}
@media (max-width: 991.98px) {
  /* menu button hero edge par aadha-aadha baithe */
  .zv-adpage { padding: 0 0 70px; }
  .zv-adpage .zv-dashmain { padding-top: 6px; min-width: 0; }
  .zv-adgrid { grid-template-columns: 1fr; }
  .zv-adpage .zv-wlhead { flex-direction: column; align-items: flex-start; gap: 14px; padding: 18px; }
  .zv-adpage .zv-wlhead__acts { width: 100%; }
  .zv-adpage .zv-wlhead__acts .zv-wlbtn { flex: 1; justify-content: center; }
  .zv-adnote { align-items: flex-start; }
}
@media (max-width: 767.98px) {
  /* actions flow with the card instead of being absolutely pinned */
  .zv-adpage .zv-adgrid .zv-coaddrpick { padding: 18px 16px; }
  .zv-adpage .zv-adgrid .zv-coaddrpick__acts {
    position: static; display: flex; width: 100%; margin-top: 14px; padding-top: 12px;
  }
  .zv-adpage .zv-adgrid .zv-coaddrpick__tick { top: 16px; right: 16px; }
  .zv-adpage .zv-adgrid .zv-coaddrpick__body { padding-right: 34px; }
  .zv-adpage .zv-adgrid .zv-coaddrpick__body small { font-size: .82rem; line-height: 1.6; }
  .zv-adempty { padding: 22px 16px; }
}
@media (max-width: 575.98px) {
  .zv-adpage .zv-wlhead__title { font-size: 1.4rem; }
  .zv-adpage .zv-wlhead__sub { font-size: .8rem; }
  .zv-adnote { padding: 14px; }
  .zv-adnote p { font-size: .8rem; }
  .zv-adpage .zv-adgrid .zv-coaddrpick__acts { flex-wrap: wrap; }
  .zv-adpage .zv-adgrid .zv-coaddrpick__acts .zv-addrbtn--edit { flex: 1; justify-content: center; }
  .zv-addrtype__opt { flex: 1 1 calc(33.333% - 7px); justify-content: center; }
  .zv-addrmodal__foot { flex-direction: column-reverse; }
  .zv-addrmodal__foot .zv-btn { width: 100%; justify-content: center; }
}


/* ===== Profile settings ===== */
@media (max-width: 991.98px){
  /* dashboard menu button hero edge par aadha-aadha baithe */
  .zv-pfpage{ padding: 0 0 70px; }
  .zv-pfpage .zv-dashmain{ padding-top: 6px; min-width: 0; }
  .zv-pfpage .zv-wlhead{ flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px; }
  .zv-pfpage .zv-wlhead__acts{ width: 100%; }
  .zv-pfcard{ padding:22px 18px; }
  .zv-pfavatar{ gap:18px; }
  .zv-pfavatar__txt{ min-width: 0; flex: 1 1 auto; }
  .zv-pfavatar__badge{ margin-left:0; }
  /* tabs never wrap into stacked rows */
  .zv-pftabs{ width:100%; overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; scrollbar-width:none; }
  .zv-pftabs::-webkit-scrollbar{ display:none; }
  .zv-pftab{ flex:0 0 auto; }
}
@media (max-width: 767.98px){
  .zv-pfpage .zv-wlhead__title{ font-size:1.45rem; }
  .zv-pfpage .zv-wlhead__sub{ font-size:.82rem; }
  .zv-pfavatar{ flex-direction:column; align-items:flex-start; text-align:left; }
  .zv-pfavatar__acts{ width:100%; }
  .zv-pfavatar__acts .zv-btn{ flex:1 1 auto; justify-content:center; }
  .zv-pfavatar__badge{ position:static; margin-top:4px; }
  .zv-pfcard__head h6{ font-size:.98rem; }
  .zv-pfcard__foot{ flex-wrap:wrap; gap:10px; }
  .zv-pfcard__foot .zv-btn{ flex:1 1 calc(50% - 5px); justify-content:center; }
  /* keep the country dropdown inside the viewport */
  .zv-pfphone .zv-dial__pop{ width:min(300px, calc(100vw - 64px)); }
}
@media (max-width: 575.98px){
  .zv-pfpage .zv-wlhead{ padding:16px; }
  .zv-pftabs{ gap:6px; }
  .zv-pftab{ padding:10px 14px; font-size:.8rem; }
  .zv-pfcard{ padding:18px 14px; border-radius:16px; }
  .zv-pfavatar{ gap:14px; }
  .zv-pfavatar__pic > span{ width:78px; height:78px; font-size:1.5rem; }
  /* email/phone verify rows stack so the tag never squeezes the input */
  .zv-pfverify{ flex-wrap:wrap; align-items:stretch; }
  .zv-pfverify > .zv-coinput,
  .zv-pfverify > .zv-pfphone{ flex:1 1 100%; min-width:0; }
  .zv-pfverify__tag{ align-self:flex-start; }
  .zv-pfcard__foot .zv-btn{ flex:1 1 100%; }
  .zv-pfdanger .zv-btn{ width:100%; }
  .zv-pfmeter__txt{ font-size:.75rem; }
  /* date picker popover fits small screens */
  .zv-gcal{ width:min(300px, calc(100vw - 44px)); left:0; right:auto; }
  .zv-gcal__day{ font-size:.8rem; }
}


/* ---- Track order page ---- */
@media (max-width: 991.98px) {
  .zv-track { padding: 36px 0 12px; }
  .zv-track__card { padding: 24px 20px; border-radius: 18px; }
  .zv-track__eta { grid-template-columns: 1fr 1fr; }
  .zv-track__grid { grid-template-columns: 1fr; }
  .zv-trkhelp__grid { grid-template-columns: 1fr; }
  .zv-trkline { grid-template-columns: 1fr; padding: 20px 0 24px; }
  .zv-trkline::before { left: 17px; right: auto; top: 30px; bottom: 30px; width: 2px; height: auto; }
  .zv-trkline li { display: flex; align-items: flex-start; gap: 14px; text-align: left; padding: 9px 0; }
  .zv-trkline__dot { margin: 0; flex: 0 0 auto; }
}
@media (max-width: 575.98px) {
  .zv-track__cardhead { flex-direction: column; }
  .zv-track__eta { grid-template-columns: 1fr; }
  .zv-track__actions .zv-btn,
  .zv-track__foot .zv-btn { width: 100%; justify-content: center; }
  .zv-trkact li { grid-template-columns: 1fr; }
  .zv-trkact em { grid-column: 1; }
  .zv-track__sumhead h3 { font-size: 1.25rem; }
  .zv-track__summary { padding: 22px 18px 6px; }
}

/* ---- User Profile Dropdown Mobile spacing ---- */
@media (max-width: 991.98px) {
  .zv-user-dropdown {
    top: calc(100% + 4px) !important;
    padding: 6px 4px !important;
  }
  .zv-user-dropdown .dropdown-item {
    padding: 6px 12px !important;
  }
  .zv-user-dropdown .dropdown-header {
    padding: 6px 12px !important;
  }
  .zv-user-dropdown .dropdown-divider {
    margin: 4px 0 !important;
  }
}
