/* ============================================================
   ViVuViet Design System
   Ocean blue + teal/emerald, orange/gold accents
   ============================================================ */
:root{
  --vv-ocean:#0A6EBD; --vv-ocean-deep:#084C82; --vv-ocean-soft:#E7F1FA;
  --vv-teal:#12B3A6; --vv-emerald:#0FA47A;
  --vv-sunrise:#FF9F1C; --vv-gold:#FFC145;
  --vv-ink:#12303F; --vv-muted:#5B7280;
  --vv-line:#E2ECF3; --vv-soft:#F4F8FB; --vv-white:#FFFFFF;
  --vv-grad:linear-gradient(120deg,var(--vv-ocean) 0%,var(--vv-teal) 100%);
  --vv-grad-deep:linear-gradient(120deg,var(--vv-ocean-deep) 0%,var(--vv-ocean) 100%);
  --vv-shadow-sm:0 4px 14px rgba(10,110,189,.08);
  --vv-shadow:0 14px 40px rgba(10,110,189,.14);
  --vv-shadow-lg:0 24px 60px rgba(8,76,130,.18);
  --vv-radius:16px; --vv-radius-lg:22px; --vv-radius-pill:999px;
  --vv-container:1200px;
  --vv-font:'Be Vietnam Pro',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
body.vv-site{font-family:var(--vv-font);color:var(--vv-ink);background:var(--vv-white);line-height:1.65;}
.vv-site h1,.vv-site h2,.vv-site h3,.vv-site h4{font-family:var(--vv-font);color:var(--vv-ink);line-height:1.18;font-weight:800;letter-spacing:-.01em;margin:0 0 .5em;}
.vv-site h1{font-size:clamp(2rem,4.5vw,3.4rem);}
.vv-site h2{font-size:clamp(1.6rem,3.2vw,2.4rem);}
.vv-site h3{font-size:clamp(1.15rem,2vw,1.45rem);}
.vv-container{max-width:var(--vv-container);margin-inline:auto;padding-inline:20px;}
.vv-section{padding:clamp(3rem,6vw,5.5rem) 0;}
.vv-eyebrow{display:inline-block;font-weight:700;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--vv-teal);margin-bottom:.6rem;}
.vv-lead{color:var(--vv-muted);font-size:1.08rem;max-width:60ch;}
.vv-center{text-align:center;} .vv-center .vv-lead{margin-inline:auto;}
/* Buttons */
.vv-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;font-size:.98rem;padding:.85rem 1.6rem;border-radius:var(--vv-radius-pill);border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;line-height:1;}
.vv-btn:hover{transform:translateY(-2px);}
.vv-btn-primary{background:var(--vv-grad);color:#fff;box-shadow:var(--vv-shadow-sm);}
.vv-btn-primary:hover{box-shadow:var(--vv-shadow);color:#fff;}
.vv-btn-accent{background:linear-gradient(120deg,var(--vv-sunrise),var(--vv-gold));color:#3a2400;}
.vv-btn-ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.6);}
.vv-btn-ghost:hover{background:#fff;color:var(--vv-ocean-deep);}
.vv-btn-outline{background:#fff;color:var(--vv-ocean);border-color:var(--vv-line);}
.vv-btn-outline:hover{border-color:var(--vv-ocean);color:var(--vv-ocean-deep);}
.vv-btn-lg{padding:1.05rem 2rem;font-size:1.05rem;}
.vv-btn-block{width:100%;}
/* Badges */
.vv-badge{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;font-size:.78rem;padding:.3rem .7rem;border-radius:var(--vv-radius-pill);}
.vv-badge-sale{background:linear-gradient(120deg,var(--vv-sunrise),var(--vv-gold));color:#3a2400;}
.vv-badge-hot{background:#ffe9e6;color:#d64530;}
.vv-badge-soft{background:var(--vv-ocean-soft);color:var(--vv-ocean-deep);}
/* Cards */
.vv-card{background:#fff;border:1px solid var(--vv-line);border-radius:var(--vv-radius-lg);overflow:hidden;box-shadow:var(--vv-shadow-sm);transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column;}
.vv-card:hover{transform:translateY(-6px);box-shadow:var(--vv-shadow);}
.vv-card-media{position:relative;aspect-ratio:16/11;overflow:hidden;}
.vv-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.vv-card:hover .vv-card-media img{transform:scale(1.06);}
.vv-card-body{padding:1.15rem 1.25rem 1.35rem;display:flex;flex-direction:column;gap:.55rem;flex:1;}
.vv-grid{display:grid;gap:1.5rem;}
.vv-grid-3{grid-template-columns:repeat(3,1fr);}
.vv-grid-4{grid-template-columns:repeat(4,1fr);}
.vv-grid-2{grid-template-columns:repeat(2,1fr);}
.vv-star{color:var(--vv-gold);}
.vv-price{color:var(--vv-ocean-deep);font-weight:800;font-size:1.3rem;}
.vv-price-old{color:var(--vv-muted);text-decoration:line-through;font-size:.95rem;font-weight:500;}
.vv-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--vv-muted);font-size:.9rem;}
.vv-meta span{display:inline-flex;align-items:center;gap:.35rem;}
/* Responsive grids */
@media(max-width:992px){.vv-grid-4{grid-template-columns:repeat(2,1fr);}.vv-grid-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.vv-grid-4,.vv-grid-3,.vv-grid-2{grid-template-columns:1fr;}}
img{max-width:100%;height:auto;}
.vv-site *{box-sizing:border-box;}
/* ============================================================
   HEADER + FOOTER
   ============================================================ */
.vv-topbar{background:var(--vv-ocean-deep);color:#dbeafe;font-size:.85rem;}
.vv-topbar .vv-container{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.45rem;}
.vv-topbar a{color:#dbeafe;text-decoration:none;}
.vv-topbar-left{display:flex;gap:1.3rem;flex-wrap:wrap;}
.vv-topbar-left span{display:inline-flex;align-items:center;gap:.4rem;}
.vv-topbar-social{display:flex;gap:.9rem;}
@media(max-width:768px){.vv-topbar{display:none;}}

.vv-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.92);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--vv-line);transition:box-shadow .25s ease,padding .25s ease;}
.vv-header.is-stuck{box-shadow:0 8px 30px rgba(8,76,130,.10);}
.vv-header-inner{display:flex;align-items:center;gap:1.5rem;padding-block:.85rem;}
.vv-logo{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;font-weight:800;font-size:1.5rem;letter-spacing:-.02em;flex-shrink:0;}
.vv-logo .pin{width:34px;height:34px;display:grid;place-items:center;background:var(--vv-grad);border-radius:12px;color:#fff;box-shadow:var(--vv-shadow-sm);}
.vv-logo b{color:var(--vv-ocean);} .vv-logo i{color:var(--vv-teal);font-style:normal;}
.vv-nav{display:flex;gap:.35rem;margin-inline:auto;}
.vv-nav a{position:relative;text-decoration:none;color:var(--vv-ink);font-weight:600;font-size:.98rem;padding:.55rem .85rem;border-radius:10px;transition:color .2s,background .2s;}
.vv-nav a:hover,.vv-nav a.current{color:var(--vv-ocean);background:var(--vv-ocean-soft);}
.vv-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0;}
.vv-icon-btn{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--vv-ink);background:transparent;border:1px solid transparent;cursor:pointer;text-decoration:none;position:relative;transition:background .2s,color .2s,border-color .2s;}
.vv-icon-btn:hover{background:var(--vv-ocean-soft);color:var(--vv-ocean);}
.vv-hotline{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;padding-inline:.4rem;}
.vv-hotline .ico{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--vv-ocean-soft);color:var(--vv-ocean);flex-shrink:0;}
.vv-hotline small{display:block;color:var(--vv-muted);font-size:.72rem;line-height:1;margin-bottom:2px;}
.vv-hotline strong{color:var(--vv-ocean-deep);font-size:1.02rem;line-height:1;}
.vv-cart-count{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--vv-sunrise);color:#3a2400;font-size:.7rem;font-weight:800;display:grid;place-items:center;}
.vv-cta-header{white-space:nowrap;}
.vv-burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--vv-line);background:#fff;cursor:pointer;flex-direction:column;gap:5px;align-items:center;justify-content:center;}
.vv-burger span{width:22px;height:2px;background:var(--vv-ink);border-radius:2px;transition:.25s;}

/* Mobile drawer */
.vv-drawer{position:fixed;inset:0 0 0 auto;width:min(86vw,340px);background:#fff;z-index:1000;transform:translateX(100%);transition:transform .3s ease;box-shadow:var(--vv-shadow-lg);display:flex;flex-direction:column;padding:1.2rem;overflow-y:auto;}
.vv-drawer.open{transform:translateX(0);}
.vv-drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;}
.vv-drawer nav{display:flex;flex-direction:column;gap:.2rem;}
.vv-drawer nav a{padding:.8rem .6rem;border-radius:10px;text-decoration:none;color:var(--vv-ink);font-weight:600;border-bottom:1px solid var(--vv-line);}
.vv-drawer nav a:hover{background:var(--vv-ocean-soft);color:var(--vv-ocean);}
.vv-overlay{position:fixed;inset:0;background:rgba(8,32,52,.45);z-index:999;opacity:0;visibility:hidden;transition:.3s;}
.vv-overlay.open{opacity:1;visibility:visible;}
.vv-drawer-cta{margin-top:1rem;}

@media(max-width:960px){
  .vv-nav,.vv-hotline,.vv-cta-header,.vv-actions .vv-icon-btn.search{display:none;}
  .vv-burger{display:flex;}
  .vv-header-inner{gap:.75rem;}
}

/* Footer */
.vv-footer{background:var(--vv-ocean-deep);color:#c7dbef;margin-top:4rem;}
.vv-footer a{color:#c7dbef;text-decoration:none;transition:color .2s;}
.vv-footer a:hover{color:#fff;}
.vv-footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem;padding-block:3.5rem 2.5rem;}
.vv-footer h4{color:#fff;font-size:1rem;margin:0 0 1.1rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;}
.vv-footer .vv-logo{color:#fff;} .vv-footer .vv-logo b,.vv-footer .vv-logo i{color:#fff;}
.vv-footer-desc{margin:1rem 0 1.2rem;line-height:1.7;font-size:.95rem;}
.vv-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem;font-size:.95rem;}
.vv-footer-contact li{display:flex;gap:.6rem;align-items:flex-start;margin-bottom:.7rem;font-size:.95rem;}
.vv-footer-contact .ico{color:var(--vv-gold);flex-shrink:0;margin-top:2px;}
.vv-social{display:flex;gap:.6rem;margin-top:1rem;}
.vv-social a{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#fff;}
.vv-social a:hover{background:var(--vv-teal);}
.vv-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-block:1.3rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.88rem;}
@media(max-width:900px){.vv-footer-top{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.vv-footer-top{grid-template-columns:1fr;gap:1.6rem;}.vv-footer-bottom{flex-direction:column;text-align:center;}}
/* ============================================================ HOMEPAGE ============================================================ */
.vv-hero{position:relative;color:#fff;overflow:hidden;}
.vv-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.03);} 
.vv-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(8,45,82,.86) 0%,rgba(8,76,130,.66) 45%,rgba(18,179,166,.35) 100%);}
.vv-hero-inner{position:relative;z-index:2;max-width:var(--vv-container);margin-inline:auto;padding:clamp(4rem,9vw,7.5rem) 20px clamp(6rem,10vw,8.5rem);}
.vv-hero .vv-eyebrow{color:var(--vv-gold);} 
.vv-hero h1{color:#fff;max-width:16ch;text-shadow:0 2px 30px rgba(0,0,0,.25);}
.vv-hero-sub{font-size:clamp(1.15rem,2.4vw,1.6rem);font-weight:600;color:#eaf6ff;margin:.2rem 0 .8rem;}
.vv-hero-text{max-width:56ch;color:#dceaf6;font-size:1.08rem;margin-bottom:2rem;}
.vv-hero-btns{display:flex;gap:1rem;flex-wrap:wrap;}
.vv-hero-stats{display:flex;gap:2.5rem;margin-top:3rem;flex-wrap:wrap;}
.vv-hero-stats b{display:block;font-size:2rem;font-weight:800;color:#fff;}
.vv-hero-stats span{color:#cfe4f4;font-size:.92rem;}
/* Search */
.vv-search-wrap{max-width:var(--vv-container);margin:-3.5rem auto 0;padding-inline:20px;position:relative;z-index:5;}
.vv-search{background:#fff;border-radius:var(--vv-radius-lg);box-shadow:var(--vv-shadow-lg);padding:1.4rem;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:1rem;align-items:end;}
.vv-search .f{display:flex;flex-direction:column;gap:.4rem;}
.vv-search label{font-weight:700;font-size:.8rem;color:var(--vv-ink);}
.vv-search input,.vv-search select{padding:.8rem .85rem;border:1px solid var(--vv-line);border-radius:12px;font:inherit;background:var(--vv-soft);}
.vv-search .vv-btn{height:auto;padding-block:.95rem;}
@media(max-width:900px){.vv-search{grid-template-columns:1fr 1fr;}.vv-search .vv-btn{grid-column:1/-1;}}
@media(max-width:560px){.vv-search{grid-template-columns:1fr;}}
/* Destinations */
.vv-dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.vv-dest-card{position:relative;border-radius:var(--vv-radius-lg);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--vv-shadow-sm);display:block;text-decoration:none;color:#fff;}
.vv-dest-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.vv-dest-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(6,30,52,.9) 0%,rgba(6,30,52,.15) 55%,transparent 100%);}
.vv-dest-card:hover img{transform:scale(1.08);}
.vv-dest-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1.1rem 1.2rem;}
.vv-dest-body h3{color:#fff;margin:0 0 .2rem;font-size:1.25rem;}
.vv-dest-body p{color:#dbe9f5;font-size:.85rem;margin:0 0 .5rem;opacity:.95;}
.vv-dest-tours{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:700;background:rgba(255,255,255,.18);backdrop-filter:blur(4px);padding:.25rem .6rem;border-radius:999px;}
@media(max-width:900px){.vv-dest-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.vv-dest-grid{grid-template-columns:1fr 1fr;gap:.9rem;}}
/* Tour cards grid */
.vv-tours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
@media(max-width:960px){.vv-tours-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.vv-tours-grid{grid-template-columns:1fr;}}
.vv-tour-card .vv-card-media{aspect-ratio:16/10;}
.vv-tour-badges{position:absolute;top:.8rem;left:.8rem;display:flex;gap:.4rem;z-index:2;}
.vv-tour-code{color:var(--vv-teal);font-weight:700;font-size:.8rem;letter-spacing:.03em;}
.vv-tour-title{font-size:1.12rem;font-weight:800;line-height:1.3;margin:.1rem 0;}
.vv-tour-title a{color:var(--vv-ink);text-decoration:none;}
.vv-tour-title a:hover{color:var(--vv-ocean);}
.vv-tour-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:.6rem;padding-top:.6rem;border-top:1px solid var(--vv-line);}
.vv-tour-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.8rem;}
.vv-rating-inline{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--vv-muted);}
/* Why choose */
.vv-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.vv-why-item{display:flex;gap:1rem;padding:1.5rem;background:#fff;border:1px solid var(--vv-line);border-radius:var(--vv-radius);box-shadow:var(--vv-shadow-sm);}
.vv-why-ico{width:52px;height:52px;flex-shrink:0;display:grid;place-items:center;border-radius:14px;background:var(--vv-ocean-soft);color:var(--vv-ocean);}
.vv-why-item h3{font-size:1.08rem;margin:0 0 .3rem;}
.vv-why-item p{color:var(--vv-muted);font-size:.92rem;margin:0;}
@media(max-width:900px){.vv-why-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.vv-why-grid{grid-template-columns:1fr;}}
/* Section variants */
.vv-bg-soft{background:var(--vv-soft);}
.vv-sec-head{margin-bottom:2.5rem;}
.vv-sec-head.row{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;}
/* Reviews */
.vv-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.vv-review{background:#fff;border:1px solid var(--vv-line);border-radius:var(--vv-radius);padding:1.6rem;box-shadow:var(--vv-shadow-sm);display:flex;flex-direction:column;gap:1rem;}
.vv-review-stars{color:var(--vv-gold);font-size:1.05rem;}
.vv-review p{color:#33475b;font-style:italic;margin:0;flex:1;}
.vv-review-user{display:flex;align-items:center;gap:.8rem;}
.vv-avatar{width:46px;height:46px;border-radius:50%;background:var(--vv-grad);color:#fff;display:grid;place-items:center;font-weight:800;}
.vv-review-user b{display:block;font-size:.95rem;}
.vv-review-user span{color:var(--vv-muted);font-size:.82rem;}
@media(max-width:900px){.vv-reviews-grid{grid-template-columns:1fr;}}
/* Blog */
.vv-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
@media(max-width:900px){.vv-blog-grid{grid-template-columns:1fr;}}
.vv-blog-card .vv-card-media{aspect-ratio:16/10;}
.vv-blog-meta{font-size:.8rem;color:var(--vv-muted);}
.vv-blog-card h3{font-size:1.1rem;margin:.2rem 0;}
.vv-blog-card h3 a{color:var(--vv-ink);text-decoration:none;} .vv-blog-card h3 a:hover{color:var(--vv-ocean);}
/* CTA band */
.vv-cta-band{background:var(--vv-grad-deep);color:#fff;border-radius:var(--vv-radius-lg);padding:clamp(2.5rem,5vw,4rem);text-align:center;position:relative;overflow:hidden;}
.vv-cta-band h2{color:#fff;} .vv-cta-band p{color:#dbeafe;max-width:52ch;margin:0 auto 1.6rem;font-size:1.1rem;}
.vv-cta-phone{font-size:2rem;font-weight:800;color:#fff;display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.4rem;}
.vv-cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;}
/* Promo */
.vv-promo{background:linear-gradient(120deg,#fff7ed,#fffbeb);}
/* ============================ TOUR LIST PAGE ============================ */
.vv-page-hero{background:var(--vv-grad-deep);color:#fff;padding:clamp(2.5rem,5vw,4rem) 0;}
.vv-page-hero .vv-container{position:relative;z-index:2;}
.vv-page-hero h1{color:#fff;margin-bottom:.4rem;}
.vv-breadcrumb{font-size:.9rem;color:#cfe4f4;margin-bottom:.6rem;}
.vv-breadcrumb a{color:#cfe4f4;text-decoration:none;} .vv-breadcrumb a:hover{color:#fff;}
.vv-list-wrap{display:grid;grid-template-columns:280px 1fr;gap:2rem;align-items:start;}
.vv-filters{background:#fff;border:1px solid var(--vv-line);border-radius:var(--vv-radius);padding:1.4rem;position:sticky;top:90px;box-shadow:var(--vv-shadow-sm);}
.vv-filters h3{font-size:1.05rem;margin:0 0 1rem;padding-bottom:.7rem;border-bottom:2px solid var(--vv-ocean-soft);}
.vv-filter-group{margin-bottom:1.2rem;}
.vv-filter-group label{display:block;font-weight:700;font-size:.85rem;margin-bottom:.45rem;color:var(--vv-ink);}
.vv-filter-group select,.vv-filter-group input{width:100%;padding:.6rem .7rem;border:1px solid var(--vv-line);border-radius:10px;font:inherit;background:var(--vv-soft);}
.vv-filter-actions{display:flex;flex-direction:column;gap:.5rem;}
.vv-list-main{min-width:0;}
.vv-list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.4rem;flex-wrap:wrap;}
.vv-list-count{color:var(--vv-muted);font-size:.95rem;}
.vv-list-count b{color:var(--vv-ink);}
.vv-sort{display:flex;align-items:center;gap:.5rem;}
.vv-sort select{padding:.55rem .7rem;border:1px solid var(--vv-line);border-radius:10px;font:inherit;background:#fff;}
.vv-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
.vv-mobile-filter-toggle{display:none;}
.vv-pagination{display:flex;justify-content:center;gap:.4rem;margin-top:2.5rem;flex-wrap:wrap;}
.vv-pagination a,.vv-pagination span{min-width:42px;height:42px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--vv-line);text-decoration:none;color:var(--vv-ink);font-weight:600;padding:0 .6rem;}
.vv-pagination a:hover{border-color:var(--vv-ocean);color:var(--vv-ocean);}
.vv-pagination .current{background:var(--vv-grad);color:#fff;border-color:transparent;}
.vv-no-results{grid-column:1/-1;text-align:center;padding:3rem;background:var(--vv-soft);border-radius:16px;color:var(--vv-muted);}
@media(max-width:1100px){.vv-list-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:900px){
  .vv-list-wrap{grid-template-columns:1fr;}
  .vv-filters{position:static;display:none;}
  .vv-filters.open{display:block;}
  .vv-mobile-filter-toggle{display:inline-flex;}
}
@media(max-width:560px){.vv-list-grid{grid-template-columns:1fr;}}