/* Vital Story: cabecalho unificado. Alterar aqui para todas as paginas. */
.vs-header{background:linear-gradient(135deg,#251c1c,#3a2e2e)!important;color:#fff!important;border-bottom:2px solid #c9a86a!important;padding:12px clamp(12px,3vw,36px)!important;box-shadow:0 4px 20px #0002!important;position:relative;z-index:100;box-sizing:border-box;width:100%;max-width:100%;}
.vs-header *{box-sizing:border-box}
.vs-header .vs-header-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;max-width:1240px!important;width:100%!important;margin:0 auto!important;flex-wrap:wrap!important;}
.vs-header .vs-brand{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important;flex:0 1 auto!important;text-decoration:none!important;color:#d8b678!important;white-space:normal!important;}
.vs-header .vs-brand-logo{width:57px!important;height:57px!important;min-width:57px!important;object-fit:cover!important;border-radius:50%!important;border:2px solid #c9a86a!important;box-shadow:0 0 12px #c9a86a55!important;}
.vs-header .vs-brand-copy{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important;}
.vs-header .vs-brand-name{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(19px,2vw,29px)!important;font-weight:700!important;font-style:italic!important;line-height:1.12!important;color:#d8b678!important;letter-spacing:.2px!important;}
.vs-header .vs-brand-slogan{font-family:Arial,sans-serif!important;color:#f5ded0!important;font-size:clamp(10px,1vw,12px)!important;letter-spacing:.5px!important;line-height:1.25!important;font-weight:500!important;}
.vs-header .vs-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:8px!important;min-width:0!important;width:auto!important;margin:0!important;padding:0!important;}
.vs-header .vs-nav .vs-nav-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:38px!important;padding:9px 14px!important;margin:0!important;width:auto!important;max-width:100%!important;background:#c9a86a!important;border:1px solid #d9bd84!important;border-radius:999px!important;box-shadow:0 4px 12px #0002!important;color:#fff!important;font-family:Arial,sans-serif!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;text-align:center!important;opacity:1!important;white-space:normal!important;cursor:pointer!important;transition:background .15s,transform .15s!important;}
.vs-header .vs-nav .vs-nav-button:hover,.vs-header .vs-nav .vs-nav-button:focus-visible{background:#b5904f!important;color:#fff!important;transform:translateY(-1px)!important;}
.vs-header .vs-nav .vs-nav-button:focus-visible{outline:2px solid #fff!important;outline-offset:2px!important;}
.vs-header .vs-nav .vs-nav-button .cart-badge{position:static!important;transform:none!important;margin-left:3px!important;}
.vs-header .vs-nav .vs-nav-button .cart-icon{color:#fff!important;stroke:#fff!important;flex-shrink:0!important;}
.vs-header .vs-nav .vs-nav-button.vs-cart{font-size:14px!important;}
@media(max-width:820px){.vs-header .vs-header-inner{flex-direction:column!important;align-items:center!important;gap:12px!important}.vs-header .vs-nav{justify-content:center!important;width:100%!important}.vs-header .vs-brand{justify-content:center!important}}
@media(max-width:540px){.vs-header{padding:12px 10px!important}.vs-header .vs-brand-logo{width:48px!important;height:48px!important;min-width:48px!important}.vs-header .vs-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.vs-header .vs-nav .vs-nav-button{width:100%!important;min-width:0!important;padding:10px 7px!important;font-size:12px!important}.vs-header .vs-brand-name{font-size:22px!important}}

/* Painel administrativo: marca a esquerda, menu a direita na mesma linha. */
@media (min-width: 1101px) {
  .vs-header.vs-admin-header .vs-header-inner {
    max-width: none!important;
    width: 100%!important;
    display: flex!important;
    flex-direction: row!important;
    flex-wrap: nowrap!important;
    align-items: center!important;
    justify-content: space-between!important;
    gap: 20px!important;
  }
  .vs-header.vs-admin-header .vs-brand {
    flex: 0 0 auto!important;
    justify-content: flex-start!important;
    margin: 0!important;
  }
  .vs-header.vs-admin-header .vs-nav {
    display: flex!important;
    flex: 0 1 auto!important;
    width: auto!important;
    justify-content: flex-end!important;
    align-items: center!important;
    flex-wrap: nowrap!important;
    gap: 7px!important;
    margin: 0 0 0 auto!important;
  }
  .vs-header.vs-admin-header .vs-nav .vs-nav-button {
    white-space: nowrap!important;
    padding: 9px 11px!important;
    font-size: 12px!important;
  }
}
@media (min-width: 541px) and (max-width: 1100px) {
  .vs-header.vs-admin-header .vs-header-inner {
    display: flex!important;
    flex-direction: row!important;
    align-items: flex-start!important;
    justify-content: space-between!important;
    flex-wrap: wrap!important;
    max-width: none!important;
  }
  .vs-header.vs-admin-header .vs-brand {justify-content:flex-start!important;}
  .vs-header.vs-admin-header .vs-nav {
    display:flex!important;
    width:auto!important;
    flex:1 1 520px!important;
    justify-content:flex-end!important;
    flex-wrap:wrap!important;
  }
}
@media (max-width: 540px) {
  .vs-header.vs-admin-header .vs-header-inner {
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .vs-header.vs-admin-header .vs-brand {justify-content:flex-start!important;}
  .vs-header.vs-admin-header .vs-nav {
    display:grid!important;
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    justify-content:stretch!important;
  }
  .vs-header.vs-admin-header .vs-nav .vs-nav-button {white-space:normal!important;}
}
