/* ============================================================
   Veilong Header — navy / gold, Sora
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&display=swap');

:root{
  --navy:#12294A;
  --navy-deep:#0B1B33;
  --navy-crumb:#12294A;
  --gold:#E8C766;
  --gold-lt:#F0D68A;
  --ink:#10233B;
  --muted:#9FB0C9;
  --line:rgba(255,255,255,.12);
}
.vh{
  font-family:'Sora',system-ui,-apple-system,sans-serif;
  position:relative; z-index:9000;
  width:100%;
  -webkit-font-smoothing:antialiased;
}
.vh *{ box-sizing:border-box; }
.vh-wrap{ max-width:1440px; margin:0 auto; padding:0 32px; }

/* ================= UTILITY BAR ================= */
.vh-top{ background:var(--navy-deep); color:var(--muted); font-size:12.5px; padding:5px 0; }
.vh-top-inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:38px; flex-wrap:wrap; }
.vh-top-left{ display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.vh-ship, .vh-hotline{ display:inline-flex; align-items:center; gap:7px; white-space:nowrap; color:#9FB0C9; }
.vh-ship svg, .vh-hotline svg{ width:14px; height:14px; color:var(--gold); flex-shrink:0; }
.vh-top b{ color:#fff; font-weight:600; }

.vh-top-right{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.vh-top-right a{
  color:var(--muted); text-decoration:none; font-size:12.5px; font-weight:500;
  transition:color .18s ease; white-space:nowrap;
}
.vh-top-right a:hover{ color:var(--gold); }
.vh-signup{ color:#fff !important; font-weight:600 !important; }
.vh-signup:hover{ color:var(--gold) !important; }
.vh-divider{ width:1px; height:12px; background:var(--line); display:inline-block; }

/* GTranslate — tame whatever markup the plugin outputs */
.vh-gt{ display:inline-flex; align-items:center; line-height:1; }
.vh-gt:empty{ display:none; }
.vh-gt .gtranslate_wrapper,
.vh-gt .gt_container,
.vh-gt > div{ display:inline-flex !important; align-items:center; margin:0 !important; }
.vh-gt select{
  background:transparent; color:var(--muted); border:1px solid var(--line);
  border-radius:6px; padding:5px 26px 5px 10px; font-family:'Sora',sans-serif;
  font-size:12px; cursor:pointer; outline:none;
  -webkit-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-opacity='.6' stroke-width='3' stroke-linecap='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 9px center;
}
.vh-gt select option{ color:#111; }
.vh-gt select:hover{ border-color:var(--gold); color:#fff; }
.vh-gt a{ color:var(--muted) !important; }
.vh-gt img{ display:inline-block; vertical-align:middle; }

/* ================= MAIN BAR ================= */
.vh-main{ background:var(--navy); padding:10px 0; }
.vh-main-inner{
  display:flex; align-items:center; gap:26px; min-height:82px; padding-top:12px; padding-bottom:12px;
}

/* brand */
.vh-brand{ display:flex; align-items:center; gap:13px; text-decoration:none; flex-shrink:0; }
.vh-logo-img{
  display:block; height:48px; width:auto; max-width:190px; object-fit:contain;
  transition:transform .2s ease, opacity .2s ease;
}
.vh-brand:hover .vh-logo-img{ transform:translateY(-1px); }
.vh-logo-img.is-placeholder{ opacity:.9; }
.vh-brand-text{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.vh-brand-name{
  color:#fff; font-size:21px; font-weight:700; line-height:1.05; letter-spacing:-.01em;
}
.vh-brand-tag{
  color:#9FB0C9; font-size:10.5px; font-weight:500; letter-spacing:.02em; line-height:1.2;
  white-space:nowrap;
}

/* search */
.vh-search{ position:relative; flex:1; min-width:0; }
.vh-search-form{
  display:flex; align-items:stretch; background:#fff; border-radius:8px;
  overflow:hidden; border:2px solid transparent;
  transition:border-color .18s ease, box-shadow .18s ease;
}
.vh-search.is-open .vh-search-form,
.vh-search-form:focus-within{
  border-color:var(--gold); box-shadow:0 0 0 4px rgba(232,199,102,.22);
}
.vh-search-ico{
  width:17px; height:17px; align-self:center; margin-left:16px;
  color:#9AA1AB; flex-shrink:0; pointer-events:none;
}
.vh .vh-search-input{
  flex:1; min-width:0; border:none !important; outline:none; background:transparent;
  padding:14px 12px !important; margin:0;
  font-family:'Sora',sans-serif; font-size:14px; color:var(--ink);
  box-shadow:none !important; border-radius:0 !important; height:auto;
}
.vh .vh-search-input::placeholder{ color:#9AA1AB; }
.vh .vh-search-input::-webkit-search-cancel-button{ display:none; }
.vh-search-clear{
  align-self:center; width:22px; height:22px; margin-right:8px; padding:0;
  border:none; border-radius:50%; background:#EEF0F3; color:#6B7280;
  display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0;
  transition:background .16s ease, color .16s ease;
}
.vh-search-clear svg{ width:11px; height:11px; }
.vh-search-clear:hover{ background:var(--navy); color:#fff; }
.vh-search-btn{
  flex-shrink:0; border:none; cursor:pointer;
  background:var(--gold); color:var(--navy);
  font-family:'Sora',sans-serif; font-size:13.5px; font-weight:700; letter-spacing:.02em;
  padding:0 34px; transition:background .18s ease;
}
.vh-search-btn:hover{ background:var(--gold-lt); }

/* results dropdown */
.vh-results{
  position:absolute; top:calc(100% + 10px); left:0; right:0; z-index:60;
  background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:0 26px 60px -20px rgba(10,24,54,.55), 0 0 0 1px rgba(10,24,54,.06);
  max-height:70vh; overflow-y:auto;
  animation:vh-drop .18s cubic-bezier(.4,0,.2,1);
}
.vh-results[hidden]{ display:none; }
@keyframes vh-drop{ from{ opacity:0; transform:translateY(-6px); } to{ opacity:1; transform:none; } }

.vh-res-item{
  display:flex; align-items:center; gap:14px; padding:11px 16px;
  text-decoration:none; color:var(--ink); border-bottom:1px solid #F0F2F5;
  transition:background .14s ease;
}
.vh-res-item:last-of-type{ border-bottom:none; }
.vh-res-item:hover, .vh-res-item.is-active{ background:#F7F8FA; }
.vh-res-img{
  width:48px; height:48px; flex-shrink:0; border-radius:7px; object-fit:cover;
  background:#EEF0F3;
}
.vh-res-body{ flex:1; min-width:0; }
.vh-res-cat{
  display:block; font-size:9.5px; font-weight:600; letter-spacing:.12em;
  text-transform:uppercase; color:#8A929C; margin-bottom:2px;
}
.vh-res-name{
  display:block; font-size:13.5px; font-weight:600; color:var(--ink);
  line-height:1.35; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.vh-res-name mark{ background:rgba(232,199,102,.32); color:inherit; padding:0 1px; border-radius:2px; }
.vh-res-sku{ font-size:11px; color:#9AA1AB; font-weight:400; }
.vh-res-meta{ text-align:right; flex-shrink:0; }
.vh-res-price{ font-size:14px; font-weight:700; color:var(--navy); white-space:nowrap; }
.vh-res-price del{ display:none; }
.vh-res-stock{ font-size:10px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; margin-top:3px; }
.vh-res-stock.in{ color:#2E9E5B; }
.vh-res-stock.out{ color:#C0392B; }

.vh-res-foot{
  display:block; text-align:center; padding:13px 16px; text-decoration:none;
  background:#F7F8FA; color:var(--navy);
  font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  transition:background .16s ease, color .16s ease;
}
.vh-res-foot:hover{ background:var(--gold); color:var(--navy); }
.vh-res-empty{ padding:30px 16px; text-align:center; color:#8A929C; font-size:13.5px; }
.vh-res-loading{ padding:22px 16px; text-align:center; color:#8A929C; font-size:13px; }
.vh-res-loading::after{
  content:""; display:inline-block; width:13px; height:13px; margin-left:8px;
  vertical-align:-2px; border:2px solid #D8DCE2; border-top-color:var(--gold);
  border-radius:50%; animation:vh-spin .7s linear infinite;
}
@keyframes vh-spin{ to{ transform:rotate(360deg); } }

/* cart */
.vh-cart{
  display:flex; flex-direction:column; align-items:center; gap:3px;
  text-decoration:none; color:#fff; flex-shrink:0; padding:4px 2px;
  transition:color .18s ease;
}
.vh-cart:hover{ color:var(--gold); }
.vh-cart-ico{ position:relative; display:block; }
.vh-cart-ico svg{ width:25px; height:25px; display:block; }
.vh-cart-badge{
  position:absolute; top:-7px; right:-9px; min-width:19px; height:19px;
  background:var(--gold); color:var(--navy); border-radius:20px;
  font-size:11px; font-weight:700; line-height:19px; text-align:center; padding:0 5px;
  font-variant-numeric:tabular-nums;
}
.vh-cart-badge[hidden]{ display:none; }
.vh-cart-label{ font-size:11px; font-weight:500; letter-spacing:.02em; }

.vh-icobtn{
  display:none; width:42px; height:42px; flex-shrink:0; padding:0;
  background:rgba(255,255,255,.08); border:1px solid var(--line); border-radius:8px;
  color:#fff; cursor:pointer; align-items:center; justify-content:center;
  transition:background .18s ease, border-color .18s ease;
}
.vh-icobtn svg{ width:19px; height:19px; }
.vh-icobtn:hover{ background:rgba(232,199,102,.16); border-color:var(--gold); color:var(--gold); }

/* ================= BREADCRUMBS ================= */
.vh-navbar{ background:var(--navy-crumb); border-top:1px solid var(--line); }
.vh-navbar-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:24px; min-height:48px;
}
.vh-crumbs{
  display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  padding:8px 0; font-size:12.5px; margin-left:auto;
}
.vh-crumbs a, .vh-crumbs span[aria-current]{
  color:var(--muted); text-decoration:none; transition:color .18s ease;
  display:inline-flex; align-items:center; gap:6px;
}
.vh-crumbs a:hover{ color:var(--gold); }
.vh-crumbs span[aria-current]{ color:#fff; font-weight:600; }
.vh-crumb-home svg{ width:14px; height:14px; }
.vh-crumb-sep{ width:12px; height:12px; color:rgba(255,255,255,.28); flex-shrink:0; }

/* ================= RESPONSIVE ================= */
@media (max-width:1100px){
  .vh-brand-tag{ display:none; }
  .vh-main-inner{ gap:18px; }
  .vh-search-btn{ padding:0 24px; }
}

@media (max-width:860px){
  .vh-wrap{ padding:0 18px; }
  .vh-top{ font-size:11.5px; }
  .vh-top-inner{ min-height:0; padding:8px 0; gap:10px; justify-content:center; }
  .vh-top-left{ gap:14px; justify-content:center; width:100%; }
  .vh-top-right{ justify-content:center; width:100%; gap:12px; }
  .vh-hotline{ display:none; }

  .vh-main-inner{ min-height:66px; gap:14px; }
  .vh-brand-name{ font-size:18px; }
  .vh-logo-img{ height:38px; max-width:150px; }

  /* search collapses into a slide-down panel */
  .vh-search{
    position:absolute; top:100%; left:0; right:0; z-index:50;
    background:var(--navy); padding:0 18px;
    max-height:0; overflow:hidden; opacity:0;
    transition:max-height .28s ease, opacity .2s ease, padding .28s ease;
  }
  .vh-search.is-open{ max-height:400px; opacity:1; padding:12px 18px 16px; }
  .vh-main{ position:relative; }
  .vh-icobtn{ display:flex; }
  .vh-cart-label{ display:none; }
  .vh-search-btn{ padding:0 20px; font-size:12.5px; }

  .vh-crumbs{ min-height:40px; font-size:11.5px; gap:7px; }
  .vh-crumbs .vh-crumb-home span{ display:none; }
}

@media (max-width:480px){
  .vh-ship b{ font-weight:500; }
  .vh-brand-name{ font-size:16px; }
  .vh-res-img{ width:42px; height:42px; }
  .vh-res-meta{ display:none; }
}

@media (prefers-reduced-motion:reduce){
  .vh *, .vh *::before, .vh *::after{
    animation-duration:.01ms !important; transition-duration:.01ms !important;
  }
}

/* ================= STICKY MAIN BAR ================= */
.vh-sentinel{ height:0; }
.vh-main.is-stuck{
  position:fixed; top:0; left:0; right:0; z-index:9500;
  box-shadow:0 10px 30px -12px rgba(9,26,65,.5);
  animation:vh-drop-in .22s ease;
}
@keyframes vh-drop-in{ from{ transform:translateY(-100%); } to{ transform:none; } }
/* set while re-measuring so the slide-in doesn't replay on every resize */
.vh-main.no-anim{ animation:none !important; }
body.admin-bar .vh-main.is-stuck{ top:32px; }
@media screen and (max-width:782px){
  body.admin-bar .vh-main.is-stuck{ top:46px; }
}

/* ================= PRIMARY NAV ================= */
.vh-nav{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.vh-nav-close{ display:none; }

.vh-nav .vh-nav-link{
  display:inline-flex; align-items:center; gap:7px;
  background:none; border:none; cursor:pointer;
  font-family:'Sora',sans-serif; font-size:12px; font-weight:600;
  letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); text-decoration:none;
  padding:14px 14px; position:relative; white-space:nowrap;
  transition:color .18s ease;
}
/* simple: gold hover on every link, current page stays gold */
.vh-nav .vh-nav-link:hover,
.vh-nav .vh-nav-link.is-current,
.vh-nav .vh-nav-drop-btn[aria-expanded="true"]{ color:var(--gold); }
.vh-nav .vh-nav-link:focus-visible{ outline:none; color:var(--gold); box-shadow:0 0 0 2px rgba(232,199,102,.5); border-radius:5px; }

.vh-nav-chev{ width:12px; height:12px; transition:transform .22s ease; }
.vh-nav-drop-btn[aria-expanded="true"] .vh-nav-chev{ transform:rotate(180deg); }

/* ---- categories dropdown ---- */
.vh-nav-has-drop{ position:relative; }
.vh-drop{
  position:absolute; top:calc(100% - 4px); left:0; z-index:70;
  width:min(680px,90vw); background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:0 26px 60px -20px rgba(10,24,54,.55), 0 0 0 1px rgba(10,24,54,.06);
  animation:vh-fade .18s cubic-bezier(.4,0,.2,1);
}
.vh-drop[hidden]{ display:none; }
@keyframes vh-fade{ from{ opacity:0; transform:translateY(-6px); } to{ opacity:1; transform:none; } }

.vh-drop-inner{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2px; padding:10px; max-height:60vh; overflow-y:auto;
}
.vh-drop-item{
  display:flex; align-items:center; gap:12px; padding:10px 12px;
  border-radius:9px; text-decoration:none; color:var(--ink);
  transition:background .15s ease;
}
.vh-drop-item:hover{ background:#F7F8FA; }
.vh-drop-thumb{
  width:42px; height:42px; flex-shrink:0; border-radius:8px; background:#F2F4F7;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.vh-drop-thumb img{ width:76%; height:76%; object-fit:contain; display:block; }
.vh-drop-ini{ font-size:15px; font-weight:800; color:#8A929C; text-transform:uppercase; }
.vh-drop-txt{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.vh-drop-name{
  font-size:13px; font-weight:600; color:var(--ink); line-height:1.3;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.vh-drop-count{ font-size:10.5px; font-weight:500; color:#9AA1AB; letter-spacing:.02em; }
.vh-drop-all{
  display:block; text-align:center; padding:13px; text-decoration:none;
  background:#F7F8FA; color:var(--navy);
  font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  transition:background .16s ease, color .16s ease;
}
.vh-drop-all:hover{ background:var(--gold); color:var(--navy); }

/* ================= SCRIM ================= */
.vh-scrim{
  position:fixed; inset:0; z-index:9400; background:rgba(9,26,65,.5);
  opacity:0; transition:opacity .26s ease;
}
.vh-scrim[hidden]{ display:none; }
.vh-scrim.show{ opacity:1; }

/* ================= MODALS ================= */
.vh-overlay{
  position:fixed; inset:0; z-index:99999;
  display:flex; align-items:center; justify-content:center; padding:20px;
  background:rgba(9,26,65,.62); backdrop-filter:blur(3px);
  opacity:0; transition:opacity .25s ease;
  font-family:'Sora',system-ui,sans-serif;
}
.vh-overlay[hidden]{ display:none; }
.vh-overlay.is-open{ opacity:1; }

.vh-modal{
  position:relative; background:#fff; width:min(560px,96vw); max-height:90vh;
  overflow-y:auto; border-radius:16px; padding:clamp(26px,4vw,42px);
  box-shadow:0 40px 80px -30px rgba(9,26,65,.6);
  transform:translateY(14px) scale(.985); transition:transform .27s cubic-bezier(.4,0,.2,1);
  text-align:left;
}
.vh-overlay.is-open .vh-modal{ transform:none; }

.vh-modal-x{
  position:absolute; top:18px; right:18px; width:38px; height:38px; padding:0;
  border:1px solid #E6E8EC; background:#fff; border-radius:8px; cursor:pointer;
  color:var(--navy); display:flex; align-items:center; justify-content:center;
  transition:border-color .18s ease, color .18s ease, background .18s ease;
}
.vh-modal-x svg{ width:16px; height:16px; }
.vh-modal-x:hover{ border-color:var(--gold); color:var(--gold); background:rgba(232,199,102,.1); }

.vh-modal-eyebrow{
  display:flex; align-items:center; gap:10px;
  font-size:11px; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:#B8952F;
}
.vh-modal-eyebrow::before{ content:""; width:22px; height:2px; border-radius:2px; background:var(--gold); }
.vh-modal-title{
  font-size:clamp(22px,3vw,29px); font-weight:800; text-transform:uppercase;
  letter-spacing:.01em; color:var(--navy); margin:13px 0 12px; line-height:1.12;
}
.vh-modal-lede{
  font-size:14px; line-height:1.7; color:#6B7280; margin:0 0 26px; max-width:46ch;
}

.vh-modal-stats{
  display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:26px;
}
.vh-modal-stats > div{
  background:#F7F8FA; border-radius:10px; padding:14px 12px; text-align:center;
}
.vh-modal-stats b{
  display:block; font-size:9.5px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:#9AA1AB; margin-bottom:5px;
}
.vh-modal-stats span{ font-size:13.5px; font-weight:700; color:var(--navy); }

.vh-modal-cta{
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--gold); color:var(--navy); text-decoration:none;
  font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  padding:14px 28px; border-radius:9px;
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}
.vh-modal-cta:hover{
  background:var(--gold-lt); transform:translateY(-2px);
  box-shadow:0 10px 24px -8px rgba(232,199,102,.65);
}

/* ===== larger modal variant ===== */
.vh-modal.vh-modal-lg{ width:min(760px,96vw); padding:0; }

/* ===== ABOUT ===== */
.vh-modal-about{ overflow:hidden; }
.vh-modal-about .vh-modal-x{
  top:16px; right:16px; background:rgba(255,255,255,.9); backdrop-filter:blur(4px); z-index:3;
}

.vh-about-hero{
  position:relative;
  display:block;
  background:
    linear-gradient(135deg, rgba(9,20,42,.86) 0%, rgba(18,41,74,.82) 100%),
    url('https://veilong.ph/wp-content/uploads/2026/07/Image-88-1-scaled.png') center/cover no-repeat;
  color:#fff; padding:38px 40px 34px;
  border-radius:18px 18px 0 0;
  overflow:hidden;
}
.vh-about-hero-copy{ position:relative; z-index:1; min-width:0; }
.vh-about-hero .vh-modal-eyebrow{ color:var(--gold); margin-bottom:12px; }
.vh-about-hero .vh-modal-title{ color:#fff; font-size:28px; margin-bottom:14px; }
.vh-about-lede{
  font-size:14.5px; line-height:1.65; color:rgba(255,255,255,.78);
  font-weight:400; max-width:44ch;
}

/* pillars */
.vh-about-pillars{
  display:grid; grid-template-columns:repeat(3,1fr); gap:18px;
  padding:32px 40px 8px;
}
.vh-about-pillar{
  display:flex; flex-direction:column; align-items:flex-start;
  padding:20px 18px; border:1px solid var(--line-lt,#E6E8EC); border-radius:12px;
  background:#F8F9FB;
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.vh-about-pillar:hover{
  border-color:var(--gold); transform:translateY(-3px);
  box-shadow:0 14px 28px -14px rgba(11,27,51,.28);
}
.vh-about-ico{
  width:38px; height:38px; border-radius:10px;
  background:rgba(232,199,102,.18); color:#B8952F;
  display:flex; align-items:center; justify-content:center; margin-bottom:13px;
}
.vh-about-ico svg{ width:20px; height:20px; }
.vh-about-pillar h4{
  font-size:13px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
  color:var(--navy); margin:0 0 6px; line-height:1.2;
}
.vh-about-pillar p{
  font-size:13px; line-height:1.55; color:#5B6472; margin:0;
}

/* stats */
.vh-about-stats{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border-top:1px solid #EEF0F3; margin-top:24px;
  padding:20px 40px 32px;
}
.vh-about-stats > div{
  text-align:center; padding:6px 8px;
  border-right:1px solid #EEF0F3;
}
.vh-about-stats > div:last-child{ border-right:none; }
.vh-about-stats b{
  display:block; font-size:24px; font-weight:800; color:var(--navy);
  letter-spacing:-.01em; line-height:1.1;
}
.vh-about-stats span{
  display:block; margin-top:5px; font-size:10.5px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:#8A929C;
}

.vh-rows{ display:flex; flex-direction:column; gap:8px; }
.vh-row{
  display:flex; align-items:center; gap:14px; text-decoration:none; color:inherit;
  padding:11px; margin:-11px; border-radius:10px; transition:background .18s ease;
}
a.vh-row:hover{ background:#F7F8FA; }
.vh-row-ico{
  width:42px; height:42px; flex-shrink:0; border-radius:10px;
  background:rgba(232,199,102,.2); color:#B8952F;
  display:flex; align-items:center; justify-content:center;
  transition:background .18s ease, color .18s ease;
}
.vh-row-ico svg{ width:19px; height:19px; fill:currentColor; }
a.vh-row:hover .vh-row-ico{ background:var(--gold); color:var(--navy); }
.vh-row h4{
  margin:0 0 3px; font-size:10px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:#9AA1AB;
}
.vh-row p{ margin:0; font-size:14px; font-weight:500; color:var(--ink); line-height:1.4; }

/* ================= NAV RESPONSIVE ================= */
@media (max-width:1024px){
  .vh-nav .vh-nav-link{ padding:14px 10px; font-size:11.5px; letter-spacing:.06em; }
  .vh-drop-inner{ grid-template-columns:1fr; }
}

@media (max-width:860px){
  .vh-navbar-inner{ min-height:0; justify-content:flex-start; }

  /* nav becomes a drawer */
  .vh-nav{
    position:fixed; top:0; left:0; bottom:0; z-index:9600;
    width:min(320px,86vw); background:var(--navy);
    flex-direction:column; align-items:stretch; gap:0; flex-wrap:nowrap;
    padding:64px 16px 24px; overflow-y:auto;
    transform:translateX(-102%); transition:transform .3s cubic-bezier(.4,0,.2,1);
    box-shadow:0 0 60px rgba(9,26,65,.35);
  }
  .vh-nav.is-open{ transform:none; }

  .vh-nav-close{
    display:flex; position:absolute; top:16px; right:16px;
    width:38px; height:38px; padding:0; align-items:center; justify-content:center;
    background:rgba(255,255,255,.08); border:1px solid var(--line);
    border-radius:8px; color:#fff; cursor:pointer;
  }
  .vh-nav-close svg{ width:16px; height:16px; }

  .vh-nav .vh-nav-link{
    width:100%; justify-content:space-between;
    padding:15px 12px; font-size:13px; letter-spacing:.06em;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .vh-nav-has-drop{ position:static; width:100%; }
  .vh-nav .vh-drop{
    position:static; width:100%; box-shadow:none; border-radius:8px;
    margin:8px 0 12px; animation:none; background:rgba(255,255,255,.04);
  }
  .vh-nav .vh-drop-inner{ grid-template-columns:1fr; max-height:none; padding:6px; }
  .vh-nav .vh-drop-item{ padding:9px 10px; }
  .vh-nav .vh-drop-name{ color:#fff; }
  .vh-nav .vh-drop-count{ color:var(--muted); }
  .vh-nav .vh-drop-item:hover{ background:rgba(255,255,255,.08); }
  .vh-nav .vh-drop-thumb{ background:rgba(255,255,255,.1); }
  .vh-nav .vh-drop-all{ background:rgba(232,199,102,.16); color:var(--gold); border-radius:8px; }

  .vh-crumbs{ margin-left:0; padding:9px 0; }

  .vh-modal-stats{ grid-template-columns:1fr; gap:8px; }
  .vh-modal-stats > div{ display:flex; align-items:center; justify-content:space-between; text-align:left; }
  .vh-modal-stats b{ margin-bottom:0; }

  /* About: stack the hero, reduce padding */
  .vh-modal.vh-modal-lg{ width:min(600px,96vw); }
  .vh-about-hero{ padding:28px 24px 22px; }
  .vh-about-hero .vh-modal-title{ font-size:24px; }
  .vh-about-pillars{ grid-template-columns:1fr; gap:12px; padding:24px 24px 4px; }
  .vh-about-pillar{ flex-direction:row; gap:14px; padding:16px; align-items:flex-start; }
  .vh-about-pillar > div{ flex:1; }
  .vh-about-ico{ margin-bottom:0; flex-shrink:0; }
  .vh-about-stats{ grid-template-columns:repeat(2,1fr); padding:18px 24px 24px; gap:14px 0; }
  .vh-about-stats > div:nth-child(2n){ border-right:none; }
  .vh-about-stats b{ font-size:20px; }
}

@media (max-width:480px){
  .vh-modal{ padding:26px 20px; }
  .vh-modal-x{ top:14px; right:14px; width:34px; height:34px; }
  .vh-row-ico{ width:38px; height:38px; }
  .vh-modal-cta{ width:100%; }
}

/* ============================================================
   MOBILE APP-STYLE HEADER + BOTTOM TAB BAR
   Replaces the desktop utility/main/nav rows entirely below the
   breakpoint — a different layout, not a squeezed version of the
   desktop one. Desktop is untouched above the breakpoint.
   ============================================================ */
.vh-mbar{ display:none; }
.vh-bbar{ display:none; }

@media (max-width:860px){
  .vh-top, .vh-main, .vh-crumbs{ display:none; }

  .vh-mbar{
    display:block; background:var(--navy); padding:12px 14px 10px;
  }
  .vh-mbar-top{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
  .vh-mbar-brand{ display:flex; align-items:center; gap:9px; text-decoration:none; min-width:0; flex:1; }
  .vh-mbar-avatar{
    height:34px; width:auto; flex-shrink:0;
    display:flex; align-items:center; justify-content:center;
  }
  .vh-mbar-avatar img{ height:100%; width:auto; max-width:120px; object-fit:contain; display:block; }
  .vh-mbar-brandtext{ display:flex; flex-direction:column; gap:1px; min-width:0; }
  .vh-mbar-name{ font-size:15px; font-weight:800; color:#fff; letter-spacing:-.01em; }
  .vh-mbar-tag{
    font-size:10px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }
  .vh-mbar-gt{ flex-shrink:0; font-size:11px; }
  .vh-mbar-gt .gtranslate_wrapper{ font-size:11px; }

  .vh-mbar-search form{
    display:flex; align-items:center; gap:8px;
    background:#fff; border-radius:11px; padding:0 12px; height:42px; margin-bottom:10px;
  }
  .vh-mbar-search svg{ color:#9AA1AB; flex-shrink:0; }
  .vh-mbar-search input{
    flex:1; border:0; outline:0; height:100%; font-family:inherit; font-size:12.5px; color:var(--ink);
    background:transparent; min-width:0;
  }
  .vh-mbar-search input::placeholder{ color:#A6ADB8; }

  .vh-mbar-tabs{
    display:flex; gap:20px; overflow-x:auto; -webkit-overflow-scrolling:touch;
    scrollbar-width:none; padding-bottom:2px;
  }
  .vh-mbar-tabs::-webkit-scrollbar{ display:none; }
  .vh-mbar-tab{
    flex-shrink:0; font-size:12.5px; font-weight:600; color:rgba(255,255,255,.6);
    text-decoration:none; padding-bottom:8px; border-bottom:2px solid transparent; white-space:nowrap;
  }
  .vh-mbar-tab.is-current{ color:#fff; border-bottom-color:var(--gold); }

  /* ---- bottom tab bar: white background, navy-muted inactive state,
     gold icon + navy label on active/hover — matches reference exactly. ---- */
  .vh-bbar{
    --bbar-pad:9px;
    display:grid; grid-template-columns:repeat(5,1fr); align-items:start;
    position:fixed; left:0; right:0; bottom:0; z-index:9300;
    width:100%; min-height:64px;
    background:#fff;
    border-top:1px solid rgba(18,41,74,.08);
    padding:var(--bbar-pad) 4px calc(var(--bbar-pad) + env(safe-area-inset-bottom)) 4px;
    box-shadow:0 -8px 22px rgba(16,35,59,.07);
  }
  .vh-bbar-item{
    display:flex; flex-direction:column; align-items:center; justify-content:flex-start;
    gap:4px; background:none; border:0; font-family:inherit; cursor:pointer; text-decoration:none;
    color:#9BA6B4; padding:6px 2px 7px; border-radius:12px;
    transition:color .18s ease;
  }
  .vh-bbar-item svg{ color:#9BA6B4; transition:color .18s ease, transform .18s ease; }
  .vh-bbar-item span{
    font-size:9px; font-weight:500; letter-spacing:.01em; text-transform:none; color:#9BA6B4;
    transition:color .18s ease, font-weight .18s ease;
  }

  .vh-bbar-item:hover svg,
  .vh-bbar-item.is-current svg{ color:var(--gold); transform:translateY(-1px); }
  .vh-bbar-item:hover span,
  .vh-bbar-item.is-current span{ color:var(--navy); font-weight:700; }

  .vh-bbar-cart-wrap{ position:relative; }
  .vh-bbar-cart-wrap .vh-cart-badge{
    top:-5px; right:-9px; background:var(--gold); color:var(--navy-deep);
    border:2px solid #fff;
  }

  /* FAB sits in its own grid cell, raised above the shared baseline via
     a fixed offset relative to --bbar-pad (not a magic number
     disconnected from the rest of the bar) */
  .vh-bbar-fab{
    justify-content:flex-start; padding-top:0; margin-top:calc(-1 * var(--bbar-pad) - 17px);
  }
  .vh-bbar-fab-circle{
    width:54px; height:54px; border-radius:50%;
    background:linear-gradient(150deg, var(--gold-lt,#F0D68A) 0%, var(--gold) 55%, var(--gold-dk,#C9A23F) 100%);
    display:flex; align-items:center; justify-content:center; color:var(--navy-deep);
    box-shadow:0 0 0 5px #fff, 0 10px 22px -4px rgba(232,199,102,.55);
  }
  .vh-bbar-fab:hover span,
  .vh-bbar-fab.is-current span{ color:#9BA6B4; font-weight:500; }
  .vh-bbar-fab span{ color:#9BA6B4; margin-top:1px; }

  /* keep fixed bottom bar from covering page content */
  body{ padding-bottom:70px; }

  /* mobile category modal — grid of cards, not the drawer's dark-context list */
  .vh-modal-cats{ padding-top:26px; }

  .vh-catmodal-head{ margin-bottom:16px; padding-right:36px; }
  .vh-catmodal-title{
    display:flex; align-items:center; gap:10px;
    font-size:19px; font-weight:800; color:var(--navy); margin:0 0 4px;
  }
  .vh-catmodal-title::before{
    content:""; width:20px; height:3px; border-radius:3px; background:var(--gold); flex-shrink:0;
  }
  .vh-catmodal-sub{ font-size:12.5px; color:var(--muted); margin:0; }

  .vh-catmodal-search{
    display:flex; align-items:center; gap:9px;
    background:#F7F8FA; border:1px solid #ECEEF1; border-radius:11px;
    padding:0 13px; height:44px; margin-bottom:16px;
  }
  .vh-catmodal-search svg{ color:#9AA1AB; flex-shrink:0; }
  .vh-catmodal-search input{
    flex:1; border:0; outline:0; height:100%; background:transparent;
    font-family:inherit; font-size:13px; color:var(--ink); min-width:0;
  }
  .vh-catmodal-search input::placeholder{ color:#A6ADB8; }

  .vh-catmodal-list{
    display:grid; grid-template-columns:repeat(2,1fr); gap:10px;
    max-height:52vh; overflow-y:auto; margin-bottom:16px; padding-right:2px;
  }
  .vh-catmodal-list .vh-drop-item{
    flex-direction:column; align-items:center; text-align:center; gap:10px;
    padding:16px 10px; border:1px solid #EEF0F3; border-radius:14px;
  }
  .vh-catmodal-list .vh-drop-item:hover{ background:#FBFBFC; border-color:#E3E6EB; }
  .vh-catmodal-list .vh-drop-thumb{ width:64px; height:64px; border-radius:12px; }
  .vh-catmodal-list .vh-drop-thumb img{ width:68%; height:68%; }
  .vh-catmodal-list .vh-drop-txt{ align-items:center; width:100%; gap:6px; }
  .vh-catmodal-list .vh-drop-name{
    white-space:normal; text-align:center; font-size:13px; font-weight:700; color:var(--navy);
  }
  .vh-catmodal-list .vh-drop-count{
    display:inline-block; background:#F0F2F5; color:#6B7280;
    font-size:9.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
    padding:3px 9px; border-radius:20px;
  }
  .vh-catmodal-list .vh-drop-item[hidden]{ display:none; }

  .vh-catmodal-empty{
    text-align:center; color:var(--muted); font-size:13px;
    padding:32px 10px; margin:0 0 16px;
  }

  .vh-modal-cats .vh-drop-all{
    display:block; border-radius:11px; background:var(--gold); color:var(--navy-deep);
    font-weight:800; box-shadow:0 6px 16px rgba(232,199,102,.35);
  }
  .vh-modal-cats .vh-drop-all:hover{ background:var(--gold-lt); color:var(--navy-deep); }
}
