/* ==========================================================================
   VAPOR URBANO — tema filho do Ultimo (ultimo/vaporurbano)
   Carregado depois de custom.css. Tudo que é específico da marca fica aqui.
   ========================================================================== */

:root{
  --vu-orange:#F39A1E;
  --vu-orange-dark:#A35A00;
  --vu-orange-hover:#E0870C;
  --vu-brown:#4A2E12;
  --vu-brown-deep:#2E1C0B;
  --vu-black:#0B0A09;
  --vu-ink:#1A1410;
  --vu-muted:#6B6158;
  --vu-bg:#F4F2EF;
  --vu-card:#FFFFFF;
  --vu-soft:#EFEBE6;
  --vu-line:#E4DED6;
  --vu-line-2:#D6CEC4;
  --vu-cream:#FFF1DE;
  --vu-radius:22px;
  --vu-font:'Inter', ui-sans-serif, system-ui, sans-serif;
  --vu-display:'Anton', Impact, 'Arial Narrow', sans-serif;
  --vu-label:'Barlow Condensed', 'Arial Narrow', sans-serif;
}

/* ---------- Base ---------- */
html, body, .wrapper, .page{ background:var(--vu-bg) !important; }
body{ font-family:var(--vu-font); color:var(--vu-ink); }
a{ color:var(--vu-orange-dark); }
a:hover{ color:#7A4300; }
h1,h2,h3,.page-title h1,.product-name h1{ color:var(--vu-ink); }
.page-title h1, .category-title h1{
  font-family:var(--vu-display); font-weight:400; text-transform:uppercase; letter-spacing:.01em; font-size:42px; line-height:1.05;
}
.main-container, .main-top-container, .main-bottom-container{ background:transparent !important; }
.main.container{ background:transparent !important; }

/* ---------- Botões ---------- */
button.button span, .button, a.button, .btn-cart span,
.buttons-set button.button span, .cart .button span{
  font-family:var(--vu-label); font-weight:700; letter-spacing:.06em; text-transform:uppercase;
}
button.button span, a.button{
  background:var(--vu-orange) !important; color:var(--vu-black) !important;
  border-radius:999px !important; border:0 !important;
}
button.button:hover span, a.button:hover{ background:var(--vu-orange-hover) !important; color:var(--vu-black) !important; }
button.button span span{ background:transparent !important; padding:0 !important; }
button.button span{ padding:0 22px; line-height:46px; height:46px; font-size:16px; }
input.input-text, select, textarea{
  border:1px solid var(--vu-line-2) !important; border-radius:12px !important; background:#fff !important; color:var(--vu-ink);
}
input.input-text, select{ height:44px; padding:0 14px; }
input.input-text:focus, select:focus, textarea:focus{ border-color:var(--vu-orange) !important; outline:2px solid rgba(243,154,30,.25); }

/* ---------- Header ---------- */
.header-container, .header-container2, .header-container3,
.header-primary-container, .header-m-container, .header-m-primary-container{ background:#000 !important; }
.header-container{ border-bottom:1px solid #2A2118; }

/* Faixa superior laranja (bloco CMS block_header_top_left) */
.header-top-container, .header-m-top-container{ background:var(--vu-orange) !important; border:0 !important; }
.header-top, .header-top a, .header-m-top, .header-m-top a{ color:var(--vu-black) !important; }
.vu-topbar{
  display:flex; flex-wrap:wrap; justify-content:center; gap:6px 36px; padding:8px 0;
  font-family:var(--vu-label); font-weight:700; font-size:15px; letter-spacing:.06em; text-transform:uppercase; text-align:center;
}
.header-top .left-column, .header-top .item-left{ float:none; width:100%; }

.header-primary{ padding-top:12px; padding-bottom:12px; }
.header .logo img, .header-m-primary .logo img{ max-height:76px; width:auto; border-radius:50%; }
.header .logo{ margin:0; }

/* Busca */
#search, .form-search input.input-text{
  height:48px !important; border-radius:999px !important; background:#17130F !important;
  border:1px solid #3A2C1D !important; color:#F6F1EA !important; padding:0 64px 0 20px !important; font-size:15px;
}
#search::placeholder{ color:#B9AEA1; }
.form-search .button-search, .form-search button.button{
  position:absolute; right:4px; top:4px; width:40px; height:40px; border-radius:50% !important;
  background:var(--vu-orange) !important; color:var(--vu-black) !important; border:0 !important;
}
.form-search .button-search .icon, .form-search button.button .icon{ color:var(--vu-black) !important; background:transparent !important; }
.form-search{ position:relative; }

/* Links do usuário e mini carrinho */
.user-menu, .user-menu a, .header .links a, .top-links a, .welcome-msg,
.header .dropdown-heading, .header .dropdown-heading .label, .header .mini-cart .dropdown-heading{
  color:#F6F1EA !important;
}
.header .links a:hover, .user-menu a:hover{ color:var(--vu-orange) !important; }
.header .mini-cart .dropdown-heading .icon, .header .dropdown-heading .icon{ color:var(--vu-orange) !important; background:transparent !important; }
.mini-cart .count, .header .count{
  background:var(--vu-orange) !important; color:var(--vu-black) !important; border-radius:11px; font-weight:700;
}
.dropdown-menu, .mini-cart .block-content{ background:#fff; color:var(--vu-ink); border-radius:16px; border:1px solid var(--vu-line); }
.mini-cart .block-content a{ color:var(--vu-ink) !important; }

/* Menu principal (UltraMegamenu) */
.nav-container, .nav-container .nav, .nav-container.sticky-container{ background:#000 !important; border-top:1px solid #1E1812; }
#nav, .nav-regular{ background:transparent !important; }
.nav-regular li.level0 > a, #nav > li > a{
  font-family:var(--vu-label) !important; font-weight:600 !important; font-size:17px !important;
  letter-spacing:.04em; text-transform:uppercase; color:#F6F1EA !important; background:transparent !important;
  line-height:50px !important; padding:0 14px !important;
}
.nav-regular li.level0:hover > a, .nav-regular li.level0.active > a, #nav > li.active > a{ color:var(--vu-orange) !important; background:transparent !important; }
.nav-regular li.level0 > a .caret{ border-top-color:#F6F1EA; }
.nav-regular .nav-panel, .nav-regular li.level0 > .nav-panel--dropdown{
  background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:0 0 18px 18px; box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.nav-regular .nav-panel a{ color:var(--vu-ink) !important; }
.nav-regular .nav-panel a:hover{ color:var(--vu-orange-dark) !important; }
.nav-regular li.nav-item--ofertas > a, .nav-regular li.level0.vu-ofertas > a{ color:var(--vu-orange) !important; }
.mobnav-trigger, .skip-link{ color:#F6F1EA !important; }
.mobnav-trigger .trigger-icon .line{ background:#F6F1EA !important; }

/* ---------- Breadcrumbs ---------- */
.breadcrumbs, .breadcrumbs a{ color:var(--vu-muted); font-size:13px; }
.breadcrumbs strong{ color:var(--vu-ink); }

/* ---------- Grade de produtos (listagem e sliders) ---------- */
.products-grid .item, .itemslider .item, .category-products-grid .item{
  background:var(--vu-card) !important; border:1px solid var(--vu-line) !important; border-radius:var(--vu-radius) !important;
  overflow:hidden; box-shadow:none !important; transition:transform .2s ease, box-shadow .2s ease;
}
.products-grid .item:hover, .itemslider .item:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(26,20,16,.10) !important; }
.products-grid .item .product-image-wrapper, .itemslider .item .product-image-wrapper{ background:var(--vu-soft); border-radius:0; }
.products-grid .product-name, .products-grid .product-name a, .itemslider .product-name a{
  color:var(--vu-ink) !important; font-weight:600; font-size:15px; line-height:1.35;
}
.price-box .price, .products-grid .price-box .price{ color:var(--vu-ink) !important; font-weight:700; }
.products-grid .price-box .price{ font-size:22px; }
.old-price .price{ color:var(--vu-muted) !important; font-weight:500; }
.special-price .price{ color:var(--vu-ink) !important; }
.sticker-wrapper .sticker, .sticker.sale, .sticker.new{
  background:var(--vu-orange) !important; color:var(--vu-black) !important; border-radius:999px !important;
  font-family:var(--vu-label); font-weight:700; letter-spacing:.06em; text-transform:uppercase;
}
.products-grid .actions .btn-cart span, .itemslider .btn-cart span{ width:100%; }

/* Toolbar e sidebar de categoria */
.toolbar, .pager, .sorter{ border-color:var(--vu-line) !important; background:transparent !important; }
.sidebar .block, .block-layered-nav{ background:#fff; border:1px solid var(--vu-line) !important; border-radius:18px; padding:16px 18px; }
.sidebar .block-title, .block-layered-nav .block-title{ border:0 !important; }
.sidebar .block-title strong, .block-layered-nav dt{
  font-family:var(--vu-label); font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--vu-ink);
}

/* ---------- Página de produto ---------- */
.product-view .product-name h1{
  font-family:var(--vu-display); font-weight:400; text-transform:uppercase; font-size:44px; line-height:1.02;
}
.product-view .price-box .price{ font-size:38px; }
.product-view .img-box .product-image{ background:#fff; border:1px solid var(--vu-line); border-radius:28px; overflow:hidden; }
.product-view .add-to-cart button.btn-cart span{ height:58px; line-height:58px; font-size:20px; padding:0 34px; }
.product-view .qty-wrapper input.qty{ height:58px; border-radius:999px !important; text-align:center; }
.product-view .box-additional .tabs a, .gen-tabs .tabs a{
  font-family:var(--vu-label); font-weight:700; letter-spacing:.06em; text-transform:uppercase; border-radius:999px;
}
.gen-tabs .tabs a.current{ background:var(--vu-orange) !important; color:var(--vu-black) !important; }
.swatch-link, .configurable-swatch-list .swatch-link{ border-radius:12px !important; }
.configurable-swatch-list .selected .swatch-link, .swatch-link.selected{ border-color:var(--vu-orange) !important; }

/* ---------- Rodapé ---------- */
.footer-container, .footer-container2, .footer-container3,
.footer-top-container, .footer-primary-container, .footer-bottom-container{ background:#000 !important; color:#F6F1EA; }
.footer-container{ border-top:1px solid #2A2118; }
.footer, .footer p, .footer li, .footer span{ color:#D8CFC4; }
.footer a{ color:#F6F1EA !important; }
.footer a:hover{ color:var(--vu-orange) !important; }
.footer .block-title, .footer h6, .footer .vu-ftitle{
  font-family:var(--vu-label) !important; font-weight:700 !important; font-size:16px !important; letter-spacing:.14em; text-transform:uppercase;
  color:var(--vu-orange) !important; border:0 !important;
}
.footer-bottom-container{ border-top:1px solid #1E1812; }
.footer-bottom, .footer-bottom p, .footer-bottom span{ color:#B9AEA1 !important; font-size:13px; }
.footer .newsletter .input-text{ background:#17130F !important; border-color:#3A2C1D !important; color:#F6F1EA !important; border-radius:999px !important; }
#scroll-to-top{ background:var(--vu-orange) !important; color:var(--vu-black) !important; border-radius:50%; }
.vu-fbrand img{ width:110px; height:110px; border-radius:50%; object-fit:cover; }
.vu-fbrand p{ margin-top:14px; color:#B9AEA1; font-size:14px; line-height:1.6; }
.vu-flinks{ list-style:none; margin:0; padding:0; }
.vu-flinks li{ margin:0 0 10px; font-size:14px; }
.vu-pay{ display:flex; flex-wrap:wrap; gap:8px; }
.vu-pay span{ padding:8px 14px; border:1px solid #3A2C1D; border-radius:8px; font-size:13px; font-weight:600; color:#F6F1EA !important; }
.vu-legal{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 24px; }
.vu-legal b{ color:var(--vu-orange); }

/* ==========================================================================
   HOME — seções (CMS page "home")
   ========================================================================== */
.cms-home .main.container{ max-width:none !important; width:100% !important; padding:0 !important; }
.cms-home .main .page-title, .cms-home .col-main > .std > .page-title{ display:none; }
.cms-home .slideshow-wrapper-additional{ display:none; }

.vu-home{ font-family:var(--vu-font); color:var(--vu-ink); }
.vu-home *{ box-sizing:border-box; }
.vu-wrap{ max-width:1280px; margin:0 auto; padding:0 24px; }
.vu-eyebrow{ margin:0 0 6px; font-family:var(--vu-label); font-weight:700; font-size:15px; letter-spacing:.16em; text-transform:uppercase; color:var(--vu-orange-dark); }
.vu-h2{ margin:0; font-family:var(--vu-display); font-weight:400; font-size:48px; line-height:1; text-transform:uppercase; color:var(--vu-ink); }
.vu-head{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:28px; }
.vu-more{ font-weight:600; font-size:15px; color:var(--vu-orange-dark) !important; }
.vu-section{ padding:72px 0 24px; }

/* Botões da home */
.vu-btn{ display:inline-flex; align-items:center; gap:10px; height:56px; padding:0 28px; border-radius:999px;
  font-family:var(--vu-label); font-weight:700; font-size:18px; letter-spacing:.06em; text-transform:uppercase; text-decoration:none !important; }
.vu-btn--dark{ background:var(--vu-black); color:#F6F1EA !important; }
.vu-btn--dark:hover{ background:#2A1F14; color:#fff !important; }
.vu-btn--outline{ border:2px solid var(--vu-black); color:var(--vu-black) !important; }
.vu-btn--outline:hover{ background:var(--vu-black); color:#F6F1EA !important; }

/* Hero */
.vu-hero{ position:relative; overflow:hidden; background:var(--vu-orange); color:var(--vu-black); }
.vu-hero__sky{ position:absolute; left:0; right:0; bottom:0; width:100%; height:220px; }
.vu-hero__smoke{ position:absolute; right:-40px; top:20px; width:640px; height:320px; opacity:.35; }
.vu-hero__inner{ position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:40px; padding-top:72px; padding-bottom:180px; }
.vu-hero__text{ flex:1 1 520px; min-width:0; }
.vu-hero__pill{ display:inline-block; margin:0 0 16px; padding:6px 14px; border-radius:999px; background:var(--vu-black); color:var(--vu-orange);
  font-family:var(--vu-label); font-weight:700; font-size:14px; letter-spacing:.12em; text-transform:uppercase; }
.vu-hero h1{ margin:0; font-family:var(--vu-display); font-weight:400; font-size:clamp(56px, 8vw, 112px); line-height:.92; letter-spacing:.01em;
  text-transform:uppercase; color:#fff; -webkit-text-stroke:3px var(--vu-black); text-shadow:6px 6px 0 var(--vu-black); }
.vu-hero p.vu-hero__sub{ margin:24px 0 0; max-width:520px; font-size:19px; line-height:1.5; font-weight:500; color:#2A1A08; }
.vu-hero__ctas{ margin-top:32px; display:flex; flex-wrap:wrap; gap:12px; }
.vu-hero__card{ flex:0 1 380px; display:flex; justify-content:center; }
.vu-hero__card a{ width:340px; max-width:100%; min-height:420px; background:var(--vu-black); border-radius:28px; box-shadow:14px 14px 0 var(--vu-brown);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:24px; text-decoration:none !important; }
.vu-hero__card img{ max-width:100%; max-height:240px; object-fit:contain; }
.vu-hero__card .t{ font-family:var(--vu-display); font-size:26px; text-transform:uppercase; color:#F6F1EA; text-align:center; }
.vu-hero__card .p{ font-weight:700; font-size:22px; color:var(--vu-orange); }

/* Diferenciais */
.vu-perks{ background:#fff; border-bottom:1px solid var(--vu-line); }
.vu-perks .vu-wrap{ display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:20px; padding-top:28px; padding-bottom:28px; }
.vu-perk{ display:flex; gap:14px; align-items:center; }
.vu-perk__ic{ flex:0 0 48px; height:48px; border-radius:14px; background:var(--vu-cream); color:var(--vu-orange-dark); display:flex; align-items:center; justify-content:center; }
.vu-perk b{ display:block; font-size:15px; color:var(--vu-ink); }
.vu-perk span.s{ font-size:14px; color:var(--vu-muted); }

/* Categorias */
.vu-cats{ display:grid; grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); gap:16px; }
.vu-cat{ display:flex; flex-direction:column; justify-content:space-between; height:200px; padding:20px; background:#fff; border:1px solid var(--vu-line);
  border-radius:var(--vu-radius); color:var(--vu-ink) !important; text-decoration:none !important; transition:transform .2s, border-color .2s; }
.vu-cat:hover{ transform:translateY(-3px); border-color:var(--vu-orange); }
.vu-cat__n{ width:52px; height:52px; border-radius:50%; background:var(--vu-orange); color:var(--vu-black); display:flex; align-items:center; justify-content:center;
  font-family:var(--vu-display); font-size:22px; }
.vu-cat__t{ display:block; font-family:var(--vu-display); font-size:26px; line-height:1.05; text-transform:uppercase; }
.vu-cat__s{ display:block; margin-top:6px; font-size:13px; color:var(--vu-muted); }

/* Marcas */
.vu-brands{ display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:12px; }
.vu-brand{ height:96px; display:flex; align-items:center; justify-content:center; background:#fff; box-shadow:inset 0 0 0 1px var(--vu-line);
  border-radius:18px; color:var(--vu-black) !important; font-family:var(--vu-label); font-weight:700; font-size:18px; letter-spacing:.08em;
  text-transform:uppercase; text-decoration:none !important; transition:box-shadow .2s; }
.vu-brand:hover{ box-shadow:inset 0 0 0 2px var(--vu-orange); }
.vu-brand img{ max-height:56px; max-width:80%; object-fit:contain; }

/* Vitrines (slider do Ultimo dentro da home) */
.vu-showcase .block-title, .vu-showcase .section-title{ display:none; }
.vu-showcase .itemslider-wrapper, .vu-showcase .itemslider{ margin:0; }

/* Banners duplos */
.vu-duo{ display:grid; grid-template-columns:repeat(auto-fit, minmax(320px, 1fr)); gap:20px; padding-top:20px; padding-bottom:20px; }
.vu-duo a{ min-height:260px; padding:36px; border-radius:26px; display:flex; flex-direction:column; justify-content:flex-end; text-decoration:none !important; }
.vu-duo .a1{ background:var(--vu-brown); color:#F6F1EA !important; }
.vu-duo .a2{ background:#fff; box-shadow:inset 0 0 0 1px var(--vu-line); color:var(--vu-black) !important; }
.vu-duo .k{ font-family:var(--vu-label); font-weight:700; font-size:15px; letter-spacing:.16em; text-transform:uppercase; }
.vu-duo .a1 .k{ color:var(--vu-orange); }
.vu-duo .a2 .k, .vu-duo .a2 .m{ color:var(--vu-orange-dark); }
.vu-duo .t{ margin-top:6px; font-family:var(--vu-display); font-size:44px; line-height:1; text-transform:uppercase; }
.vu-duo .m{ margin-top:18px; font-weight:600; }

/* Faixa de marca (catálogo por marca) */
.vu-band{ background:#fff; border-top:1px solid var(--vu-line); border-bottom:1px solid var(--vu-line); margin-top:48px; }
.vu-band .vu-section{ padding-bottom:64px; }

/* Como comprar */
.vu-steps{ display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:20px; }
.vu-step{ padding:28px; border:1px solid var(--vu-line); border-radius:var(--vu-radius); background:transparent; }
.vu-step .n{ font-family:var(--vu-display); font-size:64px; line-height:1; color:var(--vu-orange-dark); }
.vu-step h3{ margin:14px 0 6px; font-family:var(--vu-display); font-weight:400; font-size:26px; text-transform:uppercase; }
.vu-step p{ margin:0; color:var(--vu-muted); line-height:1.55; }

/* Chamada da roleta */
.vu-spin{ position:relative; overflow:hidden; border-radius:30px; background:var(--vu-orange); color:var(--vu-black); padding:48px;
  display:flex; flex-wrap:wrap; align-items:center; gap:32px; margin:56px 0 80px; }
.vu-spin svg{ flex:0 0 auto; }
.vu-spin__t{ flex:1 1 360px; min-width:0; }
.vu-spin h2{ margin:0; font-family:var(--vu-display); font-weight:400; font-size:52px; line-height:1; text-transform:uppercase; color:var(--vu-black); }
.vu-spin p{ margin:12px 0 0; font-size:17px; font-weight:500; color:#2A1A08; }
.vu-spin .vu-btn{ height:60px; font-size:19px; padding:0 32px; }

/* ---------- Responsivo ---------- */
@media (max-width: 767px){
  .vu-wrap{ padding:0 16px; }
  .vu-h2{ font-size:32px; }
  .vu-section{ padding-top:44px; }
  .vu-hero__inner{ padding-top:36px; padding-bottom:130px; gap:24px; }
  .vu-hero h1{ -webkit-text-stroke:2px var(--vu-black); text-shadow:4px 4px 0 var(--vu-black); }
  .vu-hero__card{ display:none; }
  .vu-hero__sky{ height:110px; }
  .vu-hero__smoke{ display:none; }
  .vu-cats{ display:flex; overflow-x:auto; gap:10px; padding-bottom:6px; scroll-snap-type:x mandatory; }
  .vu-cat{ flex:0 0 150px; height:150px; scroll-snap-align:start; }
  .vu-cat__t{ font-size:20px; }
  .vu-brands{ grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; }
  .vu-brand{ height:64px; font-size:13px; }
  .vu-duo .t{ font-size:32px; }
  .vu-spin{ padding:26px 22px; text-align:center; justify-content:center; margin:36px 0 48px; }
  .vu-spin h2{ font-size:34px; }
  .vu-spin .vu-btn{ width:100%; justify-content:center; }
  .page-title h1, .category-title h1{ font-size:32px; }
  .product-view .product-name h1{ font-size:32px; }
}

/* ---------- Ilustrações e ícones (SVG em CSS: o WAF do servidor bloqueia SVG inline no conteúdo do CMS) ---------- */
.vu-hero::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:220px; background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1440 220%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M0 220V120h60V90h40v30h50V60h70v60h40V100h60V40h30V20h20v20h30v80h50V80h60v40h40V70h80v50h50V110h40V50h60v70h40V90h70v30h60V60h40V30h40v30h30v60h60V100h50v20h60V70h70v50h40V90h40v130z%22 fill=%22%234A2E12%22/%3E%3Cpath d=%22M0 220V160h90v-30h60v30h80v-50h50v50h120v-20h70v20h90v-40h60v40h110v-30h70v30h100v-50h60v50h120v-20h80v20h90v-30h60v30h120v60z%22 fill=%22%232E1C0B%22/%3E%3C/svg%3E") no-repeat bottom center / 100% 100%; pointer-events:none; }
.vu-hero::before{ content:""; position:absolute; right:-40px; top:20px; width:640px; height:320px; opacity:.35; background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 600 300%22 fill=%22none%22 stroke=%22%23C9750A%22 stroke-width=%2210%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M40 220c0-60 60-90 110-70 10-60 90-90 140-40 40-40 120-20 120 50 50 0 80 40 70 80%22/%3E%3Cpath d=%22M120 140c10-40 60-60 100-40%22/%3E%3C/svg%3E") no-repeat center / contain; pointer-events:none; }
.vu-hero__inner{ z-index:1; }
.vu-device{ display:block; width:120px; height:220px; background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 220%22%3E%3Crect x=%2222%22 y=%2210%22 width=%2276%22 height=%22200%22 rx=%2230%22 fill=%22%23211A13%22 stroke=%22%23F39A1E%22 stroke-width=%223%22/%3E%3Crect x=%2244%22 y=%220%22 width=%2232%22 height=%2234%22 rx=%2210%22 fill=%22%23F39A1E%22/%3E%3Ccircle cx=%2260%22 cy=%22150%22 r=%2210%22 fill=%22%23F39A1E%22/%3E%3Crect x=%2240%22 y=%2270%22 width=%2240%22 height=%2250%22 rx=%228%22 fill=%22%233A2C1D%22/%3E%3C/svg%3E") no-repeat center / contain; }
.vu-perk__ic::before{ content:""; width:24px; height:24px; background:no-repeat center / contain; }
.vu-ic-truck::before{ background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A35A00%22 stroke-width=%222%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 7h11v9H3zM14 10h4l3 3v3h-7z%22/%3E%3Ccircle cx=%227%22 cy=%2217.5%22 r=%221.8%22/%3E%3Ccircle cx=%2217%22 cy=%2217.5%22 r=%221.8%22/%3E%3C/svg%3E"); }
.vu-ic-card::before{ background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A35A00%22 stroke-width=%222%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%226%22 width=%2218%22 height=%2212%22 rx=%222%22/%3E%3Cpath d=%22M3 10h18%22/%3E%3C/svg%3E"); }
.vu-ic-shield::before{ background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A35A00%22 stroke-width=%222%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l8 3v6c0 4.5-3.4 8-8 9-4.6-1-8-4.5-8-9V6z%22/%3E%3Cpath d=%22M8.5 12l2.5 2.5 4.5-5%22/%3E%3C/svg%3E"); }
.vu-ic-chat::before{ background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A35A00%22 stroke-width=%222%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20l1.3-3.8A8 8 0 1112 20a8 8 0 01-4-1z%22/%3E%3C/svg%3E"); }
.vu-wheel{ flex:0 0 180px; width:180px; height:180px; background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 200 200%22%3E%3Ccircle cx=%22100%22 cy=%22100%22 r=%2294%22 fill=%22%230B0A09%22/%3E%3Cpath d=%22M100 100L100 12A88 88 0 0 1 176 56Z%22 fill=%22%23F6F1EA%22/%3E%3Cpath d=%22M100 100L176 56A88 88 0 0 1 176 144Z%22 fill=%22%234A2E12%22/%3E%3Cpath d=%22M100 100L176 144A88 88 0 0 1 100 188Z%22 fill=%22%23F6F1EA%22/%3E%3Cpath d=%22M100 100L100 188A88 88 0 0 1 24 144Z%22 fill=%22%234A2E12%22/%3E%3Cpath d=%22M100 100L24 144A88 88 0 0 1 24 56Z%22 fill=%22%23F6F1EA%22/%3E%3Cpath d=%22M100 100L24 56A88 88 0 0 1 100 12Z%22 fill=%22%234A2E12%22/%3E%3Ccircle cx=%22100%22 cy=%22100%22 r=%2218%22 fill=%22%23F39A1E%22 stroke=%22%230B0A09%22 stroke-width=%226%22/%3E%3C/svg%3E") no-repeat center / contain; }
.vu-arrow{ font-size:20px; line-height:1; }
@media (max-width: 767px){
  .vu-hero::after{ height:110px; }
  .vu-hero::before{ display:none; }
  .vu-wheel{ flex-basis:120px; width:120px; height:120px; }
}

/* ---------- Header: ajustes sobre a marcação real do Ultimo + Mirasvit ---------- */
.header-top .welcome-msg, .header-top .item-left.hide-below-960{ display:none !important; }
.header-top .left-column, .header-top .right-column{ float:none !important; width:100% !important; }
.navi-wrapper, .nav-container .inner-container, #mainmenu{ background:transparent !important; }
.header .logo-wrapper, .header .logo{ display:flex; align-items:center; }
.header .logo strong{ display:none; }

/* Busca Mirasvit (estilo "amazon") dentro da coluna central */
#header-search, .header .search-wrapper{ display:block !important; height:auto !important; }
form.searchautocomplete{
  position:relative !important; top:auto !important; right:auto !important; left:auto !important;
  width:100% !important; max-width:640px; margin:0 auto !important; padding:0 !important; height:48px;
  display:flex; align-items:center; background:transparent !important; border:0 !important; box-shadow:none !important;
}
form.searchautocomplete > label{ display:none !important; }
form.searchautocomplete .nav{
  flex:1 1 auto; width:auto !important; height:48px; margin:0 !important; position:relative;
  background:#17130F !important; border:1px solid #3A2C1D !important; border-radius:999px !important; overflow:visible;
}
form.searchautocomplete .nav-search-in{ display:none !important; }
form.searchautocomplete .nav-input{ width:100% !important; height:46px; margin:0 !important; padding:0 !important; }
form.searchautocomplete .nav-input input.input-text{
  width:100% !important; height:46px !important; margin:0 !important; border:0 !important; background:transparent !important;
  color:#F6F1EA !important; padding:0 64px 0 22px !important; border-radius:999px !important; box-shadow:none !important; font-size:15px;
}
form.searchautocomplete .nav-input input.input-text::placeholder{ color:#B9AEA1; }
form.searchautocomplete .nav-submit-button{ position:absolute !important; right:4px; top:4px; width:40px; height:40px; margin:0 !important; z-index:3; }
form.searchautocomplete .nav-submit-button button.button{
  width:40px !important; height:40px !important; padding:0 !important; border:0 !important; border-radius:50% !important;
  background:#F39A1E url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%230B0A09%22 stroke-width=%222.6%22 stroke-linecap=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%227%22/%3E%3Cpath d=%22M20 20l-3.5-3.5%22/%3E%3C/svg%3E") no-repeat center / 18px 18px !important; font-size:0 !important; color:transparent !important; cursor:pointer;
}
form.searchautocomplete .nav-submit-button button.button span{ display:none !important; }
form.searchautocomplete .searchautocomplete-loader{ right:56px !important; top:15px !important; }
form.searchautocomplete .searchautocomplete-placeholder{
  top:56px !important; left:0 !important; right:auto !important; width:100% !important; z-index:1000;
  background:#fff; border:1px solid var(--vu-line); border-radius:16px; overflow:hidden; box-shadow:0 18px 40px rgba(0,0,0,.18);
}
form.searchautocomplete .searchautocomplete-placeholder a{ color:var(--vu-ink) !important; }

/* Links da conta e carrinho na coluna direita */
.header .user-menu{ display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:6px 16px; }
.header .top-links ul.links{ display:flex; flex-wrap:wrap; gap:4px 14px; margin:0; }
.header .top-links ul.links li{ margin:0 !important; padding:0 !important; border:0 !important; }
.header .top-links ul.links a{ font-size:13px; font-weight:600; }
@media (min-width: 960px){
  .header-primary .mini-cart .dropdown-heading{
    display:inline-flex; align-items:center; gap:8px; height:46px; padding:0 18px !important;
    background:#17130F !important; border:1px solid #3A2C1D !important; border-radius:999px; font-weight:700;
  }
}
.header-m-container .mini-cart .dropdown-heading{ background:transparent !important; border:0 !important; height:auto; padding:0 !important; }
.header-m-container .mini-cart .dropdown-heading .icon{ font-size:20px !important; color:#F6F1EA !important; }

/* Header mobile do Ultimo (skip links) */
.header-m-container .skip-link, .header-m-container .skip-link:hover, .skip-links .skip-link{
  background:transparent !important; color:#F6F1EA !important; border:0 !important;
}
.header-m-container .skip-link .icon, .header-m-container .skip-link .ic{ color:#F6F1EA !important; background:transparent !important; }
.header-m-container .skip-active, .header-m-container .skip-link.skip-active{ background:#17130F !important; color:#F39A1E !important; }
.header-m-container .skip-links-wrapper, .header-m-primary .inner-container{ background:transparent !important; border:0 !important; }
.header-m-container .logo img{ max-height:60px; }
.header-m-container .skip-content{ background:#000 !important; }
@media (max-width: 959px){
  form.searchautocomplete{ max-width:none; }
}

/* ---------- Rodapé: ajustes ---------- */
.footer-top-container{ display:none !important; }
.vu-flogo{ display:block; width:110px; height:110px; border-radius:50%; background:#000 url("../images/logo.png") no-repeat center / cover; }
.footer-bottom .vu-legal{ width:100%; }
.footer .newsletter .block-title, .footer .newsletter label, .footer .block-subscribe .block-title{
  font-family:var(--vu-label) !important; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--vu-orange) !important; font-size:16px;
}
.footer .newsletter button.button span{ height:44px; line-height:44px; }

form.searchautocomplete .nav-submit-button{ background:none !important; width:40px !important; border:0 !important; box-shadow:none !important; }
form.searchautocomplete .nav-submit-button::before, form.searchautocomplete .nav-submit-button::after{ display:none !important; }

.vu-cat__n{ flex:0 0 auto; }
@media (max-width: 767px){ .vu-cat__n{ width:40px; height:40px; font-size:18px; } }

/* Mobile: o Ultimo já mostra o logo no header mobile; esconde o logo regular para não duplicar */
@media (max-width: 959px){
  .header-primary .logo-wrapper--regular{ display:none !important; }
  .logo-wrapper--mobile .logo img{ max-height:64px; width:auto; border-radius:50%; }
}


/* ==========================================================================
   Sobrescreve o que vem do painel do Ultimo (design_default.css gerado):
   fonte Bitter, cores do menu mobile e dos painéis
   ========================================================================== */
h1, h2, h3, h4, h5, .main-font, .section-title, .block-title, .block .block-title strong{
  font-family:var(--vu-display) !important; font-weight:400 !important; letter-spacing:.01em;
}
.products-grid .product-name, .products-list .product-name, h3.product-name, .product-name a,
.block-layered-nav dt, .block-layered-nav dd, .footer h6, .vu-ftitle{
  font-family:var(--vu-font) !important; font-weight:600 !important;
}
.footer .vu-ftitle, .footer h6{ font-family:var(--vu-label) !important; font-weight:700 !important; }

/* ---------- Menu mobile (UltraMegamenu em modo acordeão) ---------- */
#header-nav.skip-content, .header-mobile #header-nav{ background:#000 !important; padding:6px 0 10px !important; border:0 !important; }
.nav-mobile, .nav-mobile > ul{ background:transparent !important; }
.nav-mobile .nav-item.level0 > a{
  background:transparent !important; color:#F6F1EA !important;
  font-family:var(--vu-label) !important; font-weight:600 !important; font-size:18px !important;
  letter-spacing:.05em; text-transform:uppercase; line-height:52px !important; padding:0 16px !important;
  border-bottom:1px solid #2A2118 !important;
}
.nav-mobile .nav-item.level0:last-child > a{ border-bottom:0 !important; }
.nav-mobile .nav-item.level0.active > a, .nav-mobile .nav-item.level0 > a:hover, .nav-mobile .nav-item.level0.item-active > a{ color:#F39A1E !important; background:transparent !important; }
.nav-mobile .opener, .nav-mobile .opener:before, .nav-mobile .opener:after{ color:#F39A1E !important; border-color:#F39A1E !important; background-color:transparent !important; }
.nav-mobile .nav-submenu, .nav-mobile .nav-panel, .nav-mobile .nav-panel--dropdown, .nav-mobile li.level1 > a{
  background:#17130F !important; border:0 !important; box-shadow:none !important; border-radius:0 !important;
}
.nav-mobile .nav-submenu a, .nav-mobile .nav-panel a{
  color:#D8CFC4 !important; font-family:var(--vu-font) !important; font-size:15px !important; font-weight:500 !important;
  text-transform:none !important; line-height:46px !important; padding:0 16px 0 30px !important; background:transparent !important;
}
.nav-mobile .nav-submenu a:hover{ color:#F39A1E !important; }
.header-mobile .skip-content--style a, .header-m-container .skip-content a{ color:#F6F1EA !important; }
.header-mobile .skip-content--style a:hover{ color:#F39A1E !important; }
.header-m-container .skip-content .links li{ border-color:#2A2118 !important; }

/* ---------- Busca Mirasvit, template "default" (servido no celular) ---------- */
#search_mini_form .form-search{ position:relative; width:100%; }
#search_mini_form .form-search > label, #search_mini_form .nav-search-in{ display:none !important; }
#search_mini_form input.input-text{
  width:100% !important; height:48px !important; margin:0 !important; background:#17130F !important;
  border:1px solid #3A2C1D !important; border-radius:999px !important; color:#F6F1EA !important;
  padding:0 60px 0 20px !important; font-size:15px; box-shadow:none !important;
}
#search_mini_form input.input-text::placeholder{ color:#B9AEA1; }
#search_mini_form button.search-button{
  position:absolute !important; right:4px !important; top:4px !important; width:40px !important; height:40px !important;
  padding:0 !important; margin:0 !important; border:0 !important; border-radius:50% !important; font-size:0 !important; color:transparent !important;
  background:#F39A1E url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%230B0A09%22 stroke-width=%222.6%22 stroke-linecap=%22round%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%227%22/%3E%3Cpath d=%22M20 20l-3.5-3.5%22/%3E%3C/svg%3E") no-repeat center / 18px 18px !important;
}
#search_mini_form button.search-button span, #search_mini_form button.search-button span span{ display:none !important; background:none !important; }
#search_mini_form .searchautocomplete-placeholder{ top:56px !important; left:0 !important; width:100% !important; border-radius:16px; overflow:hidden; z-index:1000; }
#header-search.skip-content{ background:#000 !important; padding:10px 0 !important; }


/* ---------- Dropdown do menu (desktop) ---------- */
.nav-regular:not(.nav-mobile) li.level0 > .nav-panel--dropdown, .nav-regular:not(.nav-mobile) li.level0 > ul.level0{
  min-width:280px !important; padding:10px 0 !important; border-radius:0 0 18px 18px !important;
}
.nav-regular:not(.nav-mobile) .nav-panel--dropdown a, .nav-regular:not(.nav-mobile) ul.level0 a{
  display:block; white-space:nowrap; font-family:var(--vu-font) !important; font-size:15px !important; font-weight:500 !important;
  text-transform:none !important; line-height:40px !important; padding:0 22px !important; background:transparent !important;
}
.nav-regular:not(.nav-mobile) .nav-panel--dropdown a:hover, .nav-regular:not(.nav-mobile) ul.level0 a:hover{
  background:#FFF1DE !important; color:#A35A00 !important;
}


/* ---------- Mobile: painel da conta + barra de ícones ---------- */
@media (max-width: 959px){
  /* a busca fica sempre visível no mobile, então o ícone de lupa sai da barra */
  .header-m-container .skip-search{ display:none !important; }
  .header-m-container .skip-links--4 .skip-link{ width:33.3333% !important; }

  #header-account.skip-content{ background:#000 !important; padding:6px 0 10px !important; border:0 !important; }
  #header-account ul.links{ display:block !important; width:100% !important; margin:0 !important; padding:0 !important; }
  #header-account ul.links li{
    display:block !important; float:none !important; width:100% !important; margin:0 !important; padding:0 !important;
    border:0 !important; border-bottom:1px solid #2A2118 !important; background:transparent !important;
  }
  #header-account ul.links li:last-child{ border-bottom:0 !important; }
  #header-account ul.links li a{
    display:flex !important; align-items:center; gap:14px; width:100% !important; height:auto !important;
    background:transparent !important; color:#F6F1EA !important; text-align:left !important;
    font-family:var(--vu-label) !important; font-weight:600 !important; font-size:18px !important;
    letter-spacing:.05em; text-transform:uppercase; line-height:52px !important; padding:0 16px !important; box-sizing:border-box;
  }
  #header-account ul.links li a:hover, #header-account ul.links li a:active{ color:#F39A1E !important; background:#17130F !important; }
  #header-account ul.links li a::before{
    font-family:"Font Awesome 6 Free"; font-weight:900; font-size:17px; color:#F39A1E; width:22px; text-align:center; flex:0 0 22px;
    content:"\f007";
  }
  #header-account ul.links li a[href*="wishlist"]::before{ content:"\f004"; }
  #header-account ul.links li a[href*="account/login"]::before{ content:"\f2f6"; }
  #header-account ul.links li a[href*="account/logout"]::before{ content:"\f2f5"; }
  #header-account ul.links li a[href*="account/create"]::before{ content:"\f234"; }
  #header-account ul.links li a[href*="checkout/cart"]::before{ content:"\f07a"; }
}


/* ==========================================================================
   Páginas institucionais (CMS) — .vu-page
   ========================================================================== */
.cms-page-view .page-title{ max-width:820px; margin:8px auto 8px; padding:0 4px; border:0 !important; }
.cms-page-view .page-title h1{ font-size:46px; }
.vu-page{ max-width:820px; margin:0 auto 64px; padding:32px 36px 40px; background:#fff; border:1px solid var(--vu-line); border-radius:24px;
  font-size:16px; line-height:1.7; color:#3D342C; }
.vu-page > *:first-child{ margin-top:0; }
.vu-page__lead{ font-size:19px; line-height:1.6; color:var(--vu-ink); font-weight:500; padding-bottom:18px; margin-bottom:8px; border-bottom:1px solid var(--vu-line); }
.vu-page h2{ margin:34px 0 10px; font-size:26px; line-height:1.15; text-transform:uppercase; color:var(--vu-ink); }
.vu-page h3{ margin:0 0 4px; font-family:var(--vu-font) !important; font-weight:700 !important; font-size:17px; text-transform:none; color:var(--vu-ink); }
.vu-page p{ margin:0 0 14px; }
.vu-page ul, .vu-page ol{ margin:0 0 16px; padding-left:22px; }
.vu-page ul{ list-style:disc; }
.vu-page ol{ list-style:decimal; }
.vu-page li{ margin:0 0 8px; }
.vu-page strong{ color:var(--vu-ink); }
.vu-page a{ color:var(--vu-orange-dark); font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.vu-page a:hover{ color:#7A4300; }
/* Como comprar: passos numerados */
.vu-page ol.vu-steps-list{ list-style:none; padding:0; counter-reset:vustep; margin:24px 0; }
.vu-page ol.vu-steps-list > li{ position:relative; counter-increment:vustep; padding:0 0 22px 64px; margin:0; }
.vu-page ol.vu-steps-list > li::before{ content:counter(vustep, decimal-leading-zero); position:absolute; left:0; top:0;
  width:46px; height:46px; border-radius:50%; background:var(--vu-orange); color:var(--vu-black);
  font-family:var(--vu-display); font-size:20px; display:flex; align-items:center; justify-content:center; }
/* FAQ */
.vu-faq details{ border:1px solid var(--vu-line); border-radius:14px; margin:0 0 10px; background:#FDFCFA; }
.vu-faq details[open]{ border-color:var(--vu-orange); background:#fff; }
.vu-faq summary{ cursor:pointer; list-style:none; padding:14px 48px 14px 18px; font-weight:600; color:var(--vu-ink); position:relative; }
.vu-faq summary::-webkit-details-marker{ display:none; }
.vu-faq summary::after{ content:"+"; position:absolute; right:18px; top:50%; transform:translateY(-50%); font-size:22px; color:var(--vu-orange-dark); }
.vu-faq details[open] summary::after{ content:"\2212"; }
.vu-faq details p{ margin:0; padding:0 18px 16px; }
@media (max-width: 767px){
  .vu-page{ padding:22px 18px 26px; border-radius:18px; font-size:15px; }
  .vu-page__lead{ font-size:17px; }
  .vu-page h2{ font-size:22px; }
  .cms-page-view .page-title h1{ font-size:32px; }
  .vu-page ol.vu-steps-list > li{ padding-left:56px; }
}


/* ==========================================================================
   Cores de destaque do painel do Ultimo (azul #3EC2DF/#5BD2EC, verde #A5DB00)
   trocadas pela paleta da marca. O Ultimo pinta o <button> inteiro no hover/focus,
   então a cor vai no botão e o <span> interno fica transparente.
   ========================================================================== */
button.button, a.button, .footer button.button, .btn-cart, .btn-checkout{
  background-color:#F39A1E !important; color:#0B0A09 !important; border:0 !important; border-radius:999px !important;
}
button.button span, button.button:hover span, button.button:focus span, button.button span span{ background:transparent !important; color:inherit !important; }
button.button:hover, button.button:focus, a.button:hover, a.button:focus,
.footer button.button:hover, .footer button.button:focus,
.product-view button.btn-cart:hover, button.btn-checkout:hover, .amcart-related-block button.button.add-tocart:hover{
  background-color:#E0870C !important; color:#0B0A09 !important;
}
button.button:focus-visible, a.button:focus-visible{ outline:3px solid rgba(243,154,30,.45) !important; outline-offset:2px; }

/* Links e nomes de produto no hover */
h2.product-name a:hover, h3.product-name a:hover, h4.product-name a:hover, h5.product-name a:hover, h6.product-name a:hover,
strong.product-name a:hover, .product-name a:hover, .sideacco li.current > a{ color:#A35A00 !important; }
.footer a:hover{ color:#F39A1E !important; }

/* Selos, ícones e rótulos */
.sticker.new, .cat-label-label1{ background-color:#F39A1E !important; color:#0B0A09 !important; }
li.level0 > a > span > .cat-label-label1.pin-bottom::before{ border-top-color:#F39A1E !important; }
.ib-hover:hover, .feature-icon-hover:hover .ib, .ib-ef-1:hover, .feature-icon-hover:hover .ib-ef-1,
.ib-hover.icon-color-productview:hover, .feature-icon-hover:hover .ib.icon-color-productview{ background-color:#F39A1E !important; color:#0B0A09 !important; }
.ib-ef-1::after{ box-shadow:0 0 0 4px #F39A1E !important; }
.menu-trigger .menu-trigger-inner:hover, .menu-trigger.active .menu-trigger-inner{ background-color:#17130F !important; color:#F39A1E !important; }
.sideacco .nav-item > a:hover, .nav-vert .nav-item.level0:hover > a{ background-color:#FFF1DE !important; color:#A35A00 !important; }

/* Setas de slider, paginação e ordenação */
.owl-controls.clickable .owl-buttons div:hover, .footer .owl-controls.clickable .owl-buttons div:hover{ background-color:#F39A1E !important; color:#0B0A09 !important; }
.pager .pages li a:hover, .sorter .view-mode a:hover, .sorter .sort-by .category-asc:hover, .sorter .sort-by .category-desc:hover, .add-to-links a:hover{
  background-color:#F39A1E !important; color:#0B0A09 !important;
}
.pager .pages .current{ background-color:#0B0A09 !important; color:#F6F1EA !important; }

/* ===== Cabeçalho desktop: logo | busca | conta + carrinho em uma linha ===== */
@media (min-width: 960px){
  .header-primary .hp-blocks-holder{ display:flex !important; align-items:center; gap:32px; }
  .header-primary .hp-blocks-holder::before, .header-primary .hp-blocks-holder::after{ display:none !important; }
  .header-primary .hp-block{ float:none !important; width:auto !important; margin:0 !important; padding:0 !important; }
  .header-primary .hp-block.left-column{ flex:0 0 auto; }
  .header-primary .hp-block.central-column{ flex:1 1 auto; min-width:0; }
  .header-primary .hp-block.right-column{ flex:0 0 auto; }
  .header-primary .hp-block > .item{ float:none !important; margin:0 !important; padding:0 !important; }
  .header-primary .logo-wrapper--regular{ width:auto !important; }
  .header .user-menu{ flex-wrap:nowrap !important; gap:22px; }
  .header .user-menu > *{ float:none !important; margin:0 !important; }
  .header .user-menu .account-links{ order:1; }
  .header .user-menu .mini-cart{ order:2; }
  .header .top-links ul.links{ flex-wrap:nowrap !important; gap:20px; float:none !important; }
  .header .top-links ul.links li{ float:none !important; }
  .header .top-links ul.links a{
    display:inline-flex !important; align-items:center; gap:8px; padding:6px 0 !important;
    background:transparent !important; line-height:1.2; white-space:nowrap;
  }
  .header .top-links ul.links a::before{
    font-family:FontAwesome; font-weight:normal; font-size:18px; color:var(--vu-orange); content:"\f007";
  }
  .header .top-links ul.links a[href*="account/login"]::before{ content:"\f090"; }
  .header .top-links ul.links a[href*="account/logout"]::before{ content:"\f08b"; }
  .header .top-links ul.links a[href*="wishlist"]::before{ content:"\f004"; }
  .header .top-links ul.links a[href*="checkout/cart"]::before{ content:"\f07a"; }
  .header .top-links ul.links a[href*="account/create"]::before{ content:"\f234"; }
}
/* Links e carrinho: sem o fundo de destaque do Ultimo */
.links > li > a:hover, .header .links > li > a:hover{ background-color:transparent !important; color:var(--vu-orange) !important; }
.top-links .links > li > a{ background-image:none !important; }
.header-container .dropdown.open > .dropdown-heading.cover > *, .header-container .dropdown.open > .dropdown-heading.cover > span{
  background-color:transparent !important; color:#F6F1EA !important;
}
.header .mini-cart.open > .dropdown-heading, .header .mini-cart .dropdown-heading:hover{ background-color:#000 !important; border-color:var(--vu-orange) !important; }
/* Demais usos do rosa do Ultimo (#DE2666) */
.ib, .footer .ib, .footer span.icon{ background-color:var(--vu-orange) !important; color:#0B0A09 !important; }
.ib-ef-2, .ib-ef-3{ box-shadow:0 0 0 4px var(--vu-orange) !important; }
.ib-ef-2::after, .ib-ef-3::after{ background-color:var(--vu-orange) !important; }
.ib-ef-2b:hover, .feature-icon-hover:hover .ib-ef-2b, .ib-ef-3a:hover, .feature-icon-hover:hover .ib-ef-3a, .ib-ef-3b{ color:var(--vu-orange) !important; }
.slideshow-wrapper .owl-controls .owl-page.active span, .slideshow-wrapper .owl-controls.clickable .owl-page.active:hover span{ background-color:var(--vu-orange) !important; }
.footer-bottom a:hover{ color:var(--vu-orange) !important; }
@media (min-width: 960px) and (max-width: 1199px){
  .header .top-links ul.links{ gap:16px; }
  .header .top-links ul.links a{ font-size:0 !important; gap:0; }
  .header .top-links ul.links a::before{ font-size:20px; }
  .header-primary .hp-blocks-holder{ gap:22px; }
  .header .user-menu{ gap:16px; }
}
.header-container .mini-cart .dropdown-content, .header-container .mini-cart .block-content{ border-radius:14px; box-shadow:0 12px 30px rgba(0,0,0,.18); }

/* ==========================================================================
   Carrinho e minicarrinho: só "Finalizar" em laranja; demais ações secundárias
   ========================================================================== */
.cart .btn-continue, .cart .btn-update,
#shipping-zip-form button.button, #co-shipping-method-form button.button, #discount-coupon-form button.button,
.mini-cart .actions button.button:not(.btn-checkout){
  background:transparent !important; color:var(--vu-ink) !important;
  box-shadow:inset 0 0 0 1.5px var(--vu-ink); border-radius:999px !important;
}
.cart .btn-continue:hover, .cart .btn-update:hover,
#shipping-zip-form button.button:hover, #co-shipping-method-form button.button:hover, #discount-coupon-form button.button:hover,
.mini-cart .actions button.button:not(.btn-checkout):hover{
  background:var(--vu-ink) !important; color:#F6F1EA !important;
}
.cart .btn-continue span, .cart .btn-update span,
#shipping-zip-form button.button span, #co-shipping-method-form button.button span, #discount-coupon-form button.button span{
  height:42px !important; line-height:42px !important; font-size:15px !important; padding:0 20px !important;
}
.cart .btn-continue span span, .cart .btn-update span span{ padding:0 !important; }

/* Página do carrinho */
.checkout-cart-index .page-title h1{ margin-bottom:6px; }
.cart .cart-table-wrapper{ background:#fff; border:1px solid var(--vu-line); border-radius:20px; padding:6px 22px 4px; }
.cart .data-table{ border:0 !important; background:transparent !important; }
.cart .data-table th, .cart .data-table td{ border:0 !important; background:transparent !important; }
.cart .data-table thead th{
  padding:16px 8px 12px !important; font-family:var(--vu-sans, "Inter", sans-serif) !important; font-size:11px !important;
  font-weight:700 !important; letter-spacing:.12em; text-transform:uppercase; color:var(--vu-muted, #6B6158) !important;
  border-bottom:1px solid var(--vu-line) !important;
}
.cart .data-table tbody td{ padding:20px 8px !important; vertical-align:middle !important; border-bottom:1px solid var(--vu-line) !important; }
.cart .data-table tbody tr:last-child td{ border-bottom:0 !important; }
.cart .data-table .product-image img{ width:96px; height:96px; object-fit:cover; border-radius:14px; background:#F4F2EF; display:block; }
.cart .data-table h2.product-name{ margin:0 !important; font-family:"Inter", sans-serif !important; font-size:16px !important; font-weight:600 !important; text-transform:none !important; letter-spacing:0 !important; }
.cart .data-table h2.product-name a{ color:var(--vu-ink) !important; }
.cart .data-table .price{ font-weight:600; color:var(--vu-ink); }
.cart .data-table .col-total .price{ font-size:17px; font-weight:700; }

/* Quantidade: seletor em pílula */
.cart .plus_qty{ display:inline-flex !important; align-items:center; border:1.5px solid var(--vu-line-2, #D9D1C7); border-radius:999px; background:#fff; overflow:hidden; }
.cart .plus_qty a.decrement_qty, .cart .plus_qty a.increment_qty{
  display:inline-flex !important; align-items:center; justify-content:center; width:38px; height:40px;
  font-size:18px; font-weight:600; color:var(--vu-ink) !important; text-decoration:none !important;
}
.cart .plus_qty a.decrement_qty:hover, .cart .plus_qty a.increment_qty:hover{ background:#F4F2EF; color:var(--vu-orange-text, #A35A00) !important; }
.cart .plus_qty input.qty{
  width:40px !important; height:40px !important; border:0 !important; border-radius:0 !important;
  text-align:center; font-weight:700; padding:0 !important; box-shadow:none !important; background:transparent !important;
}
.cart ul.cart-links{ margin:8px 0 0 !important; padding:0 !important; list-style:none; text-align:center; }
.cart ul.cart-links a{ font-size:13px; color:var(--vu-muted, #6B6158) !important; text-decoration:underline !important; }
.cart ul.cart-links a:hover{ color:#B3261E !important; }

/* Ações abaixo da lista: continuar como link, atualizar discreto */
.cart .data-table tfoot td{ padding:16px 0 4px !important; border:0 !important; background:transparent !important; }
.cart .data-table tfoot td{ display:flex !important; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
.cart button.btn-continue{ box-shadow:none !important; }
.cart button.btn-continue span{ padding:0 4px !important; text-transform:none !important; letter-spacing:0 !important; font-family:"Inter", sans-serif !important; font-weight:600 !important; }
.cart button.btn-continue span span::before{ content:"\2190\00a0"; }
.cart button.btn-continue:hover{ background:transparent !important; color:var(--vu-orange-text, #A35A00) !important; }

/* Cartões de frete, cupom e resumo */
.cart .cart-collaterals .shipping, .cart .cart-collaterals .discount, .cart .totals{
  background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:20px !important;
  padding:22px 24px !important; margin-bottom:20px !important; box-shadow:none !important;
}
.cart .cart-collaterals h2{
  font-family:var(--vu-label) !important; font-size:20px !important; font-weight:700 !important;
  letter-spacing:.03em !important; text-transform:uppercase !important; color:var(--vu-ink) !important; margin:0 0 10px !important;
}
.cart .cart-collaterals p, .cart .cart-collaterals label{ font-size:14px; color:var(--vu-muted, #6B6158); }
.cart .cart-collaterals .buttons-set{ border:0 !important; padding:0 !important; margin:12px 0 0 !important; }
.cart .sp-methods dt{ font-weight:700; margin-top:12px; }
.cart .sp-methods dd ul{ margin:6px 0 0 !important; padding:0 !important; }
.cart .sp-methods dd li{ display:flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid var(--vu-line); border-radius:12px; margin-bottom:8px; }
.cart .sp-methods input[type=radio]{ accent-color:var(--vu-orange); }

/* Resumo do pedido */
.cart .totals{ background:#fff !important; }
.cart .totals .totals-inner{ padding:0 !important; border:0 !important; background:transparent !important; }
.cart #shopping-cart-totals-table td{ padding:6px 0 !important; font-size:14px; color:var(--vu-ink-2, #3D342C); border:0 !important; }
.cart #shopping-cart-totals-table tbody td.a-right:first-child{ text-align:left !important; }
.cart #shopping-cart-totals-table tfoot td{ padding-top:14px !important; border-top:1px solid var(--vu-line) !important; font-size:16px; }
.cart #shopping-cart-totals-table tfoot td:first-child{ text-align:left !important; }
.cart #shopping-cart-totals-table tfoot .price{ font-size:26px; font-weight:800; color:var(--vu-ink); }
.cart .totals ul.checkout-types{ margin:18px 0 0 !important; padding:0 !important; list-style:none; }
.cart .totals ul.checkout-types li{ margin:0 !important; }
.cart .totals button.btn-checkout{ width:100%; display:block; }
.cart .totals button.btn-checkout span{ height:58px !important; line-height:58px !important; font-size:21px !important; letter-spacing:.06em; }
.cart .totals ul.checkout-types::after{
  content:"Pagamento seguro · Pix, cartão e boleto"; display:block; margin-top:12px; text-align:center;
  font-size:12.5px; color:var(--vu-muted, #6B6158);
}

@media (min-width: 960px){
  .checkout-cart-index .cart{ display:grid; grid-template-columns:minmax(0,1fr) 380px; column-gap:28px; align-items:start; }
  .checkout-cart-index .cart > .page-title{ grid-column:1 / -1; }
  .checkout-cart-index .cart > #cart-form, .checkout-cart-index .cart > form.the-cart-form{ grid-column:1; grid-row:2; }
  .checkout-cart-index .cart > .cart-collaterals{ display:contents; }
  .checkout-cart-index .cart .cart-right-column{ grid-column:2; grid-row:2 / span 2; width:auto !important; float:none !important; margin:0 !important; position:sticky; top:20px; }
  .checkout-cart-index .cart .cart-left-column{ grid-column:1; grid-row:3; width:auto !important; float:none !important; margin:20px 0 0 !important; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .checkout-cart-index .cart .cart-left-column > div{ width:auto !important; float:none !important; margin:0 !important; }
  .checkout-cart-index .cart .cart-left-column > div:empty, .checkout-cart-index .cart .cart-left-column > .grid-full{ display:none; }
  .checkout-cart-index .cart .totals{ width:auto !important; float:none !important; margin:0 !important; }
}
@media (max-width: 959px){
  .cart .cart-table-wrapper{ padding:4px 14px; }
  .cart .totals button.btn-checkout span{ font-size:19px !important; }
}

/* Minicarrinho */
.mini-cart .dropdown-content{ width:340px; padding:16px 18px !important; }
.mini-cart .block-subtitle{ font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--vu-muted, #6B6158); margin-bottom:10px; }
.mini-cart .mini-products-list li.item{ padding:10px 0 !important; border-bottom:1px solid var(--vu-line) !important; }
.mini-cart .mini-products-list .product-image img{ border-radius:10px; }
.mini-cart .mini-products-list .product-name a{ font-weight:600; color:var(--vu-ink) !important; }
.mini-cart .subtotal{ display:flex; justify-content:space-between; align-items:baseline; padding:12px 0 !important; font-weight:600; }
.mini-cart .subtotal .price{ font-size:18px; font-weight:800; color:var(--vu-ink); }
.mini-cart .actions{ display:flex !important; gap:10px; padding:0 !important; margin:0 !important; border:0 !important; }
.mini-cart .actions button.button{ flex:1 1 0; margin:0 !important; float:none !important; min-width:0; }
.mini-cart .actions button.button span{
  height:40px !important; line-height:40px !important; font-size:14px !important; padding:0 12px !important;
  letter-spacing:.04em !important; white-space:nowrap;
}
/* Ajustes da grade do carrinho */
.cart .cart-table-wrapper{ width:auto !important; }
.cart .data-table{ width:100% !important; min-width:0 !important; table-layout:auto; }
.cart .totals{ display:block !important; }
.cart .data-table tfoot button.button{ float:none !important; margin:0 !important; }
@media (min-width: 960px) and (max-width: 1199px){
  .checkout-cart-index .cart{ grid-template-columns:minmax(0,1fr) 330px; column-gap:22px; }
  .cart .data-table .col-unit-price, .cart .data-table th.col-unit-price{ display:none !important; }
  .checkout-cart-index .cart .cart-left-column{ grid-template-columns:1fr; }
}
.cart .data-table tfoot td{ display:table-cell !important; text-align:right !important; }
.cart .data-table tfoot button.button{ display:inline-block !important; vertical-align:middle; }
.cart .data-table tfoot button.btn-continue{ float:left !important; }

/* Menu principal entre 960 e 1279px: cabe em uma linha */
@media (min-width:960px) and (max-width:1279px){
  .nav-regular li.level0 > a{ padding:0 9px !important; font-size:16px !important; letter-spacing:.02em !important; }
}
/* Botão "Menu" do Ultimo (aparece quando o menu não cabe) */
.mobnav-trigger, .mobnav-trigger .menu-trigger-inner{
  background:transparent !important; color:#F6F1EA !important; font-family:var(--vu-label) !important;
  font-weight:700 !important; font-size:17px !important; letter-spacing:.08em; text-transform:uppercase;
}
.mobnav-trigger:hover .menu-trigger-inner, .mobnav-trigger.active .menu-trigger-inner{ color:#F39A1E !important; }
.mobnav-trigger .trigger-icon .line{ background-color:#F39A1E !important; }

/* Carrinho no celular */
.cart .cart-collaterals .shipping, .cart .cart-collaterals .discount, .cart .totals{ box-sizing:border-box !important; }
@media (max-width:959px){
  .cart .cart-collaterals{ width:auto !important; margin-left:0 !important; margin-right:0 !important; }
  .cart .cart-collaterals > div, .cart .cart-left-column > div{ width:100% !important; float:none !important; margin-left:0 !important; margin-right:0 !important; }
  .cart .data-table thead{ display:none !important; }
  .cart .data-table tbody tr{ display:grid !important; grid-template-columns:84px minmax(0,1fr); column-gap:14px; row-gap:8px; align-items:center; padding:16px 0; border-bottom:1px solid var(--vu-line); }
  .cart .data-table tbody tr:last-child{ border-bottom:0; }
  .cart .data-table tbody td{ display:block !important; padding:0 !important; border:0 !important; width:auto !important; text-align:left !important; }
  .cart .data-table tbody td:first-child{ grid-row:1 / span 3; align-self:start; }
  .cart .data-table .product-image img{ width:84px; height:84px; }
  .cart .data-table tbody td .cell-label{ display:none !important; }
  .cart .data-table tbody td.a-center{ display:flex !important; align-items:center; gap:14px; }
  .cart .data-table tbody tr td.col-unit-price{ display:none !important; }
  .cart ul.cart-links{ margin:0 !important; }
  .cart .data-table tbody td.col-total .price{ font-size:17px; }
  .cart .data-table tfoot td{ text-align:center !important; padding-top:14px !important; }
  .cart .data-table tfoot button.btn-continue{ float:none !important; display:block !important; margin:0 auto 10px !important; }
}

/* ==========================================================================
   Listagem de produtos (categoria, busca): grade estável e cards
   ========================================================================== */
.category-products-grid.itemgrid{
  display:grid !important; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; margin:0 0 24px !important; padding:0 !important;
}
.category-products-grid.itemgrid::before, .category-products-grid.itemgrid::after{ display:none !important; content:none !important; }
.category-products-grid.itemgrid > li.item{
  width:auto !important; float:none !important; clear:none !important; margin:0 !important; height:auto !important;
  padding:12px 12px 16px !important; display:flex !important; flex-direction:column; position:relative;
  background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:18px !important; box-shadow:none !important;
  transition:box-shadow .2s ease, border-color .2s ease;
}
.category-products-grid.itemgrid > li.item:hover{
  margin:0 !important; padding:12px 12px 16px !important; z-index:1;
  border-color:var(--vu-line-2) !important; box-shadow:0 10px 28px rgba(26,20,16,.10) !important;
}
.category-products-grid li.item .product-image-wrapper{ max-width:none !important; width:100%; margin:0 0 12px !important; }
.category-products-grid li.item .product-image img{ width:100% !important; height:auto !important; border-radius:12px; }
.category-products-grid li.item h2.product-name{
  margin:0 0 8px !important; font-family:"Inter", sans-serif !important; font-size:15px !important; font-weight:600 !important;
  line-height:1.35 !important; text-transform:none !important; letter-spacing:0 !important;
}
.category-products-grid li.item h2.product-name a{ color:var(--vu-ink) !important; }
.category-products-grid li.item .price-box{ margin:0 !important; }
.category-products-grid li.item .price-box .price{ font-size:20px; font-weight:800; color:var(--vu-ink); }
.category-products-grid li.item .actions{
  position:static !important; bottom:auto !important; left:auto !important; right:auto !important;
  margin-top:auto !important; padding:14px 0 0 !important; width:100%; display:block !important; visibility:visible !important; opacity:1 !important;
}
.category-products-grid li.item .actions button.btn-cart{ width:100% !important; max-width:100%; margin:0 !important; float:none !important; display:block; }
.category-products-grid li.item .actions button.btn-cart > span{
  height:44px !important; line-height:44px !important; padding:0 10px !important; font-size:15px !important; letter-spacing:.04em !important; white-space:nowrap;
  display:flex !important; align-items:center; justify-content:center; gap:8px;
}
.category-products-grid li.item .actions button.btn-cart > span > span{ display:inline-block !important; width:auto !important; height:auto !important; line-height:1.1 !important; padding:0 !important; margin:0 !important; background:none !important; }
.category-products-grid li.item .actions button.btn-cart .ic{ display:none !important; }
@media (max-width: 959px){
  .category-products-grid.itemgrid{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
  .category-products-grid.itemgrid > li.item, .category-products-grid.itemgrid > li.item:hover{ padding:8px 8px 12px !important; border-radius:14px !important; }
  .category-products-grid li.item h2.product-name{ font-size:13.5px !important; }
  .category-products-grid li.item .price-box .price{ font-size:17px; }
  .category-products-grid li.item .actions button.btn-cart > span{ letter-spacing:.02em !important; font-size:12.5px !important; height:auto !important; min-height:40px; line-height:1.15 !important; padding:6px 8px !important; white-space:normal; text-align:center; }
  .category-products-grid li.item .actions button.btn-cart .ic{ display:none !important; }
}

/* Parcelamento e Pix (Fazendosite_Parcelamento) */
.vu-pay-info{ margin:6px 0 0; font-size:13px; line-height:1.4; color:var(--vu-muted); }
.vu-pay-info p{ margin:0 !important; }
.vu-pay-info strong{ color:var(--vu-ink); font-weight:700; }
.vu-pay-off{
  display:inline-block; margin-left:2px; padding:1px 7px; border-radius:999px; vertical-align:1px;
  background:#E5F4EA; color:#1E7A3C; font-size:11px; font-weight:700; line-height:1.5;
}
.product-shop .vu-pay-info{ font-size:15px; margin-top:8px; }
.product-shop .vu-pay-off{ font-size:12px; }

/* Página do produto: descrição e avaliações */
.box-description .std ul{ list-style:disc outside !important; padding-left:22px !important; margin:6px 0 16px !important; }
.box-description .std li{ list-style:inherit !important; margin:4px 0 !important; }
.box-description .std h3{
  font-family:var(--vu-label) !important; font-weight:700 !important; font-size:20px !important;
  letter-spacing:.03em; text-transform:uppercase; color:var(--vu-ink); margin:18px 0 6px !important;
}
.box-reviews .form-add .heading, .box-reviews h2, .box-reviews .heading{
  font-family:var(--vu-label) !important; font-weight:700 !important; font-size:22px !important;
  letter-spacing:.03em; text-transform:uppercase; color:var(--vu-ink) !important;
}
.box-reviews .review-nologged{ font-size:14px; color:var(--vu-muted); }

/* Vitrines em carrossel (home, relacionados, compre também) */
.vu-section.vu-wrap{ padding-left:24px !important; padding-right:24px !important; }
@media (max-width: 767px){ .vu-section.vu-wrap{ padding-left:16px !important; padding-right:16px !important; } }
.vu-showcase .itemslider{ margin:0 -8px !important; width:auto !important; }
.itemslider .owl-wrapper{ display:flex !important; }
.itemslider .owl-item{ float:none !important; display:flex !important; padding:6px 8px 10px; box-sizing:border-box; }
.itemslider .owl-item > .item, .itemslider .item{
  flex:1 1 auto; width:auto !important; height:auto !important; margin:0 !important; float:none !important;
  display:flex !important; flex-direction:column; padding:10px 10px 14px !important; box-sizing:border-box;
}
.itemslider .item:hover{ transform:none !important; box-shadow:0 8px 22px rgba(26,20,16,.10) !important; border-color:var(--vu-line-2) !important; }
.itemslider .item .product-image-wrapper, .itemslider .item > a.product-image{ max-width:none !important; width:100%; background:none !important; margin:0 0 10px !important; display:block; }
.itemslider .item .product-image img{ width:100% !important; height:auto !important; border-radius:12px; }
.itemslider .item .product-item-details{ display:flex; flex-direction:column; flex:1 1 auto; text-align:left; }
.itemslider .item .product-name{ display:block; margin:0 0 8px !important; text-align:left; }
.itemslider .item .product-name a{ font-family:"Inter", sans-serif !important; font-size:14.5px !important; font-weight:600 !important; text-transform:none !important; letter-spacing:0 !important; }
.itemslider .item .price-box{ text-align:left; margin:0 !important; }
.itemslider .item .price-box .price{ font-size:19px !important; font-weight:800; }
.itemslider .item .actions{ position:static !important; margin-top:auto !important; padding:12px 0 0 !important; width:100%; display:block !important; opacity:1 !important; visibility:visible !important; }
.itemslider .item .actions button.btn-cart{ width:100% !important; max-width:100%; margin:0 !important; float:none !important; display:block; }
.itemslider .item .actions button.btn-cart > span{ display:flex !important; align-items:center; justify-content:center; width:auto !important; height:42px !important; line-height:42px !important; padding:0 8px !important; font-size:14px !important; letter-spacing:.04em !important; white-space:nowrap; }
.itemslider .item .actions button.btn-cart > span > span{ display:inline-block !important; width:auto !important; height:auto !important; line-height:1.1 !important; padding:0 !important; background:none !important; }
.itemslider .item .actions button.btn-cart .ic{ display:none !important; }
.box-related .itemslider{ margin:0 -8px !important; width:auto !important; }
.box-related .section-title, .box-up-sell .section-title{ font-family:var(--vu-label) !important; font-size:24px !important; font-weight:700 !important; text-transform:uppercase; letter-spacing:.03em; color:var(--vu-ink) !important; }
@media (max-width: 767px){
  .itemslider .item .actions button.btn-cart > span{ white-space:normal; height:auto !important; min-height:40px; line-height:1.15 !important; padding:6px 6px !important; font-size:12.5px !important; letter-spacing:.02em !important; }
  .itemslider .owl-item{ padding:4px 5px 8px; }
  .vu-showcase .itemslider, .box-related .itemslider{ margin:0 -5px !important; }
}

/* Texto do botão de compra ocupa a largura do botão (evita quebra palavra a palavra) */
.category-products-grid li.item .actions button.btn-cart > span > span:not(.ic),
.itemslider .item .actions button.btn-cart > span > span:not(.ic){ display:block !important; flex:1 1 auto; width:100% !important; text-align:center; }
.category-products-grid li.item .actions button.btn-cart, .itemslider .item .actions button.btn-cart{ padding:0 !important; }
.category-products-grid li.item .actions button.btn-cart > span > span, .itemslider .item .actions button.btn-cart > span > span{ font-size:inherit !important; letter-spacing:inherit !important; }
@media (max-width: 767px){ .category-products-grid li.item .actions button.btn-cart > span, .itemslider .item .actions button.btn-cart > span{ font-size:13.5px !important; } }

/* ==========================================================================
   Revisão geral das telas com produto
   ========================================================================== */

/* Botão de compra fora da grade/carrossel (lista, comparar, página) */
.products-list button.btn-cart, .compare-table button.btn-cart{ padding:0 !important; width:100% !important; max-width:260px; margin:0 0 10px !important; float:none !important; display:block; }
.products-list button.btn-cart > span, .compare-table button.btn-cart > span{
  display:flex !important; align-items:center; justify-content:center; height:44px !important; line-height:1.1 !important;
  padding:0 12px !important; font-size:15px !important; letter-spacing:.04em !important; white-space:nowrap;
}
.products-list button.btn-cart > span > span, .compare-table button.btn-cart > span > span{ display:block !important; width:100%; text-align:center; font-size:inherit !important; padding:0 !important; height:auto !important; line-height:1.1 !important; background:none !important; }
.products-list button.btn-cart .ic, .compare-table button.btn-cart .ic{ display:none !important; }

/* Modo lista */
.products-list > li.item{
  background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:18px !important;
  padding:16px !important; margin:0 0 16px !important; box-shadow:none !important;
}
.products-list > li.item:hover{ box-shadow:0 10px 28px rgba(26,20,16,.08) !important; }
.products-list .product-image img{ border-radius:12px; }
.products-list h2.product-name{ font-family:"Inter", sans-serif !important; font-size:18px !important; font-weight:700 !important; text-transform:none !important; letter-spacing:0 !important; margin:0 0 8px !important; }
.products-list h2.product-name a{ color:var(--vu-ink) !important; }
.products-list .desc{ font-size:14px; color:var(--vu-muted); }
.products-list .price-box .price{ font-size:22px; font-weight:800; }
.products-list .right-column{ display:flex; flex-direction:column; gap:10px; }
.products-list .right-column .price-box{ margin:0 0 4px !important; }
@media (max-width: 767px){
  .products-list > li.item{ display:grid !important; grid-template-columns:110px minmax(0,1fr); column-gap:12px; padding:12px !important; }
  .products-list > li.item > .product-image-wrapper{ grid-row:1 / span 2; width:auto !important; float:none !important; margin:0 !important; padding:0 !important; }
  .products-list > li.item > .product-shop, .products-list > li.item > .right-column{ width:auto !important; float:none !important; margin:0 !important; padding:0 !important; }
  .products-list h2.product-name{ font-size:15px !important; }
  .products-list .desc{ display:none; }
  .products-list .price-box .price{ font-size:18px; }
  .products-list button.btn-cart{ max-width:none; }
  .products-list button.btn-cart > span{ font-size:13.5px !important; height:40px !important; }
}

/* Comparar (link e página) */
.products-list .add-to-links, .product-view .add-to-links{ margin:0 !important; padding:0 !important; }
.products-list .add-to-links a, .product-view .add-to-links a{ font-size:13px; color:var(--vu-muted) !important; }
.products-list .add-to-links .icon, .product-view .add-to-links .icon{ background:transparent !important; color:var(--vu-muted) !important; box-shadow:none !important; width:24px !important; height:24px !important; line-height:24px !important; }
.catalog-product-compare-index{ background:var(--vu-bg) !important; padding:20px 16px; }
.catalog-product-compare-index > div{ overflow-x:auto; }
.compare-table{ background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:16px; }
.compare-table th, .compare-table td{ border-color:var(--vu-line) !important; vertical-align:top; }
.compare-table .product-name, .compare-table h2.product-name{ font-family:"Inter", sans-serif !important; font-size:15px !important; font-weight:700 !important; text-transform:none !important; letter-spacing:0 !important; }
.compare-table .product-image img{ border-radius:12px; }
.compare-table .std h3{ font-family:var(--vu-label) !important; font-size:17px !important; font-weight:700 !important; text-transform:uppercase; letter-spacing:.03em; margin:12px 0 4px !important; }
.compare-table .std ul{ list-style:disc outside !important; padding-left:18px !important; margin:4px 0 8px !important; }
.compare-table .std li{ list-style:inherit !important; }

/* Destaque do termo buscado (Mirasvit) */
.searchindex-highlight{ background:var(--vu-cream, #FFF1DE) !important; color:inherit !important; border-radius:4px; padding:0 2px; box-shadow:inset 0 -2px 0 var(--vu-orange); }

/* Autocomplete da busca (Mirasvit) */
.searchautocomplete-placeholder{
  background:#fff !important; border:1px solid var(--vu-line) !important; border-radius:16px !important;
  box-shadow:0 18px 40px rgba(0,0,0,.18) !important; padding:6px !important; overflow:hidden; z-index:1000;
}
.searchautocomplete-placeholder .top{ display:none; }
.searchautocomplete-placeholder ul{ margin:0 !important; padding:0 !important; list-style:none; }
.searchautocomplete-placeholder ul li{
  display:grid !important; grid-template-columns:56px minmax(0,1fr) auto; grid-template-rows:auto auto; column-gap:12px; align-items:center;
  padding:8px 10px !important; margin:0 !important; border:0 !important; border-radius:12px; cursor:pointer; background:transparent !important;
}
.searchautocomplete-placeholder ul li:hover, .searchautocomplete-placeholder ul li.active{ background:#F4F2EF !important; }
.searchautocomplete-placeholder .searchautocomlete-image{ grid-row:1 / span 2; width:56px !important; height:56px !important; margin:0 !important; float:none !important; }
.searchautocomplete-placeholder .searchautocomlete-image img{ width:56px !important; height:56px !important; object-fit:cover; border-radius:10px; }
.searchautocomplete-placeholder a.name{
  grid-column:2; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  font-family:"Inter", sans-serif !important; font-size:14px !important; font-weight:600 !important; line-height:1.3 !important;
  color:var(--vu-ink) !important; text-decoration:none !important; text-transform:none !important; margin:0 !important;
}
.searchautocomplete-placeholder .highlight:not(.name){ display:none !important; }
.searchautocomplete-placeholder .price-box{ grid-column:3; grid-row:1 / span 2; text-align:right; margin:0 !important; float:none !important; }
.searchautocomplete-placeholder .price-box .price{ font-size:15px !important; font-weight:800; color:var(--vu-ink) !important; }
.searchautocomplete-placeholder .vu-pay-card{ display:none !important; }
.searchautocomplete-placeholder .vu-pay-info{ margin:2px 0 0; font-size:12px; }
.searchautocomplete-placeholder .vu-pay-off{ display:none; }
.searchautocomplete-placeholder .clearfix{ display:none; }
.searchautocomplete-placeholder .all{ border-top:1px solid var(--vu-line); margin:6px 0 0 !important; padding:10px 10px 6px !important; text-align:center; background:transparent !important; }
.searchautocomplete-placeholder .all a{ font-weight:700; color:var(--vu-orange-dark, #A35A00) !important; text-decoration:none !important; }
@media (max-width: 767px){
  .searchautocomplete-placeholder ul li{ grid-template-columns:48px minmax(0,1fr) auto; }
  .searchautocomplete-placeholder .searchautocomlete-image, .searchautocomplete-placeholder .searchautocomlete-image img{ width:48px !important; height:48px !important; }
  .searchautocomplete-placeholder .vu-pay-info{ display:none; }
}

/* Página do produto: quantidade em pílula, estoque e miniatura única */
.product-view .qty-wrapper{ display:inline-flex !important; align-items:center; border:1.5px solid var(--vu-line-2); border-radius:999px; background:#fff; overflow:hidden; margin:0 12px 0 0 !important; height:52px; vertical-align:middle; }
.product-view .qty-wrapper label{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.product-view .qty-wrapper .qty-buttons-wrapper{ display:contents !important; }
.product-view .qty-wrapper input.qty{
  order:2; width:44px !important; height:50px !important; border:0 !important; border-radius:0 !important; background:transparent !important;
  text-align:center; font-weight:700; font-size:16px; padding:0 !important; box-shadow:none !important; margin:0 !important;
}
.product-view .qty-wrapper .qty-button{
  position:static !important; display:flex !important; align-items:center; justify-content:center; width:42px !important; height:50px !important;
  margin:0 !important; background:none !important; border:0 !important; cursor:pointer; color:var(--vu-ink); font-size:22px; font-weight:600; line-height:1;
}
.product-view .qty-wrapper .qty-button.decrease{ order:1; }
.product-view .qty-wrapper .qty-button.increase{ order:3; }
.product-view .qty-wrapper .qty-button::before, .product-view .qty-wrapper .qty-button::after{ display:none !important; }
.product-view .qty-wrapper .qty-button.decrease::before{ content:"\2212"; display:block !important; position:static !important; border:0 !important; width:auto; height:auto; transform:none; }
.product-view .qty-wrapper .qty-button.increase::before{ content:"+"; display:block !important; position:static !important; border:0 !important; width:auto; height:auto; transform:none; }
.product-view .qty-wrapper .qty-button:hover{ background:#F4F2EF !important; color:var(--vu-orange-dark, #A35A00); }
.product-view .add-to-cart{ display:flex !important; align-items:center; flex-wrap:wrap; gap:12px 0; }
.product-view .add-to-cart button.btn-cart{ flex:1 1 220px; margin:0 !important; }
.product-view .availability{ font-size:13px !important; color:var(--vu-muted) !important; }
.product-view .availability.in-stock span{ display:inline-block; padding:2px 9px; border-radius:999px; background:#E5F4EA; color:#1E7A3C !important; font-weight:700; }
.product-view .availability.out-of-stock span{ display:inline-block; padding:2px 9px; border-radius:999px; background:#FDECEA; color:#B3261E !important; font-weight:700; }
.product-view .more-images.count-1{ display:none !important; }

/* Barra lateral (filtros, vistos recentemente) */
.sidebar .block-title, .sidebar .block-title strong, .sidebar .block-title span{
  font-family:var(--vu-label) !important; font-size:18px !important; font-weight:700 !important; line-height:1.15 !important;
  letter-spacing:.03em !important; text-transform:uppercase; color:var(--vu-ink) !important;
}
.sidebar .block-viewed li, .sidebar .block-viewed .product-name a{ font-size:13.5px; font-weight:600; color:var(--vu-ink) !important; }
@media (max-width: 767px){ .products-list .add-to-links{ display:none !important; } }
.sidebar .block-compare button.button{ background:transparent !important; color:var(--vu-ink) !important; box-shadow:inset 0 0 0 1.5px var(--vu-ink); }
.sidebar .block-compare button.button:hover{ background:var(--vu-ink) !important; color:#F6F1EA !important; }
.sidebar .block-compare button.button span{ height:40px !important; line-height:40px !important; font-size:15px !important; }
#shipping-zip-form label[for=postcode]{ text-transform:uppercase; }
.product-view .add-to-cart{ flex-wrap:nowrap !important; }
.product-view .add-to-cart button.btn-cart{ flex:1 1 auto !important; min-width:0; }
@media (max-width: 480px){ .product-view .add-to-cart button.btn-cart span{ font-size:17px !important; padding:0 12px !important; } .product-view .qty-wrapper{ margin-right:10px !important; } .product-view .qty-wrapper .qty-button{ width:36px !important; } .product-view .qty-wrapper input.qty{ width:34px !important; } }

/* Painel do carrinho no celular (fundo preto) */
@media (max-width: 959px){
  .header-m-container #header-cart, .header-mobile #header-cart{ padding:16px 18px 20px !important; }
  #header-cart.skip-content .block-subtitle{ color:#A99F95 !important; }
  #header-cart.skip-content .mini-products-list li.item{ border-bottom-color:#2E241B !important; }
  #header-cart.skip-content .product-name a{ color:#F6F1EA !important; }
  #header-cart.skip-content .product-details, #header-cart.skip-content .product-details strong{ color:#C9BFB4 !important; }
  #header-cart.skip-content .product-details .price{ color:#F39A1E !important; }
  #header-cart.skip-content .subtotal{ border-color:#2E241B !important; }
  #header-cart.skip-content .subtotal .label{ color:#C9BFB4 !important; font-weight:600; }
  #header-cart.skip-content .subtotal .price{ color:#F6F1EA !important; }
  #header-cart.skip-content .actions button.button:not(.btn-checkout){ color:#F6F1EA !important; box-shadow:inset 0 0 0 1.5px #F6F1EA !important; }
  #header-cart.skip-content .actions button.button:not(.btn-checkout):hover{ background:#F6F1EA !important; color:#0B0A09 !important; }
  #header-cart.skip-content .btn-remove, #header-cart.skip-content .btn-edit{ opacity:.8; }
}

/* ==========================================================================
   Cadastro de cliente (template persistent/customer/form/register.phtml)
   ========================================================================== */
.customer-account-create .col-main{ width:100% !important; float:none !important; padding:0 !important; }
.vu-reg{
  display:grid; grid-template-columns:minmax(0,1fr); gap:20px; max-width:1080px; margin:24px auto 56px; padding:0 16px; box-sizing:border-box;
  font-family:var(--vu-font); color:var(--vu-ink);
}
.vu-reg *, .vu-reg *::before, .vu-reg *::after{ box-sizing:border-box; }

/* Apresentação */
.vu-reg__intro{
  position:relative; overflow:hidden; background:#17130F; color:#F6F1EA; border-radius:var(--vu-radius); padding:26px 24px;
}
.vu-reg__intro::after{
  content:""; position:absolute; right:-70px; top:-70px; width:200px; height:200px; border-radius:50%;
  background:radial-gradient(circle, rgba(243,154,30,.45), rgba(243,154,30,0) 70%); pointer-events:none;
}
.vu-reg__kicker{ margin:0 0 6px !important; font-family:var(--vu-label); font-weight:700; font-size:14px; letter-spacing:.14em; text-transform:uppercase; color:var(--vu-orange); }
.vu-reg h1.vu-reg__title{
  margin:0 0 10px !important; font-family:var(--vu-display) !important; font-weight:400 !important; font-size:44px !important; line-height:1 !important;
  text-transform:uppercase; letter-spacing:.01em; color:#F6F1EA !important; border:0 !important; padding:0 !important;
}
.vu-reg__lead{ margin:0 0 14px !important; color:rgba(246,241,234,.78); font-size:15px; }
.vu-reg__perks{ list-style:none !important; margin:0 0 18px !important; padding:0 !important; display:grid; gap:10px; }
.vu-reg__perks li{ display:flex !important; align-items:center; gap:12px; margin:0 !important; font-size:15px; font-weight:600; color:#F6F1EA; list-style:none !important; }
.vu-reg__perk-ic{ flex:0 0 36px; width:36px; height:36px; border-radius:12px; background:rgba(243,154,30,.16) center/20px no-repeat; }
.vu-reg__perk-ic--box{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F39A1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8l-9-5-9 5 9 5 9-5z'/%3E%3Cpath d='M3 8v8l9 5 9-5V8'/%3E%3Cpath d='M12 13v8'/%3E%3C/svg%3E"); }
.vu-reg__perk-ic--pin{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F39A1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.vu-reg__perk-ic--heart{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F39A1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1-1.1a5.5 5.5 0 0 0-7.8 7.8l1 1.1L12 21l7.8-7.5 1-1.1a5.5 5.5 0 0 0 0-7.8z'/%3E%3C/svg%3E"); }
.vu-reg__login{ margin:0 !important; font-size:14px; color:rgba(246,241,234,.78); }
.vu-reg__login a{ color:var(--vu-orange) !important; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.vu-reg__login--bottom{ display:none; text-align:center; margin-top:14px !important; color:var(--vu-muted); }
.vu-reg__login--bottom a{ color:var(--vu-orange-dark) !important; }

/* Cartão do formulário */
.vu-reg__card{ background:#fff; border:1px solid var(--vu-line); border-radius:var(--vu-radius); padding:22px 18px 24px; }
.vu-reg__card .messages{ margin:0 0 16px !important; }
.vu-reg__form{ margin:0; }
.vu-reg__section{ border:0 !important; margin:0 0 22px !important; padding:0 !important; min-width:0; }
.vu-reg__section + .vu-reg__section{ border-top:1px solid var(--vu-line) !important; padding-top:20px !important; }
.vu-reg__legend{
  display:flex; align-items:center; gap:10px; width:100%; margin:0 0 14px !important; padding:0 !important; float:left;
  font-family:var(--vu-label) !important; font-weight:700 !important; font-size:22px !important; line-height:1.1;
  letter-spacing:.03em; text-transform:uppercase; color:var(--vu-ink) !important; border:0 !important;
}
.vu-reg__legend + *{ clear:both; }
.vu-reg__step{
  display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%;
  background:var(--vu-orange); color:var(--vu-black); font-family:var(--vu-font); font-size:14px; font-weight:800; letter-spacing:0;
}

/* Linhas e campos */
.vu-reg__row{ display:grid; gap:0 14px; grid-template-columns:minmax(0,1fr); }
.vu-f{ margin:0 0 14px; min-width:0; position:relative; }
.vu-f > label, .vu-f--widget label{
  display:block; margin:0 0 6px !important; font-size:13.5px !important; font-weight:600 !important; color:var(--vu-ink) !important;
  text-transform:none !important; letter-spacing:0 !important; float:none !important; width:auto !important;
}
.vu-f > label em{ font-style:normal; font-weight:500; color:var(--vu-muted); }
.vu-reg input.input-text, .vu-reg select{
  display:block; width:100% !important; max-width:none !important; height:50px !important; padding:0 14px !important; margin:0 !important;
  font-size:16px !important; font-family:var(--vu-font) !important; color:var(--vu-ink) !important;
  background:#fff !important; border:1.5px solid var(--vu-line-2) !important; border-radius:12px !important; box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.vu-reg select{ appearance:none; -webkit-appearance:none; padding-right:36px !important;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1410' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center/16px no-repeat !important; }
.vu-reg input.input-text::placeholder{ color:#A79C90; }
.vu-reg input.input-text:focus, .vu-reg select:focus{ border-color:var(--vu-orange) !important; outline:0 !important; box-shadow:0 0 0 4px rgba(243,154,30,.2) !important; }
.vu-reg input.input-text[readonly]{ background:var(--vu-bg) !important; color:var(--vu-muted) !important; }
.vu-reg input.validation-failed, .vu-reg select.validation-failed{ border-color:#C4321F !important; }
.vu-reg input.validation-failed:focus, .vu-reg select.validation-failed:focus{ box-shadow:0 0 0 4px rgba(196,50,31,.15) !important; }
.vu-reg input.validation-passed{ border-color:var(--vu-line-2) !important; }
.vu-reg .validation-advice{ margin:6px 0 0 !important; padding:0 0 0 20px !important; background:none !important; font-size:13px !important; color:#B3261E !important; position:relative; }
.vu-reg .validation-advice::before{ content:"!"; position:absolute; left:0; top:1px; width:15px; height:15px; border-radius:50%; background:#B3261E; color:#fff; font-size:11px; font-weight:800; line-height:15px; text-align:center; }
.vu-f__hint{ margin:6px 0 0; font-size:12.5px; color:var(--vu-muted); }
.vu-reg .validation-failed ~ .vu-f__hint{ display:none; }
.vu-f__note{ margin:-4px 0 14px; padding:10px 12px; border-radius:12px; font-size:13.5px; line-height:1.4; }
.vu-f .vu-f__note{ margin:8px 0 0; }
.vu-f__note--warn{ background:var(--vu-cream); color:#5C3A06; }
.vu-f__note--info{ background:var(--vu-bg); color:var(--vu-ink); }
.vu-f__note a{ color:var(--vu-orange-dark) !important; font-weight:700; text-decoration:underline; }
.vu-f__wrap{ position:relative; }

/* CEP */
.vu-reg__row--cep{ grid-template-columns:minmax(0,180px) auto; align-items:center; justify-content:start; gap:0 16px; }
.vu-reg__row--cep .vu-f{ margin-bottom:14px; }
.vu-reg__cep-help{ margin-top:12px; font-size:13.5px; font-weight:600; color:var(--vu-orange-dark) !important; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.vu-spinner{ position:absolute; right:14px; top:50%; width:18px; height:18px; margin-top:-9px; border-radius:50%; border:2.5px solid var(--vu-line-2); border-top-color:var(--vu-orange); animation:vu-spin .7s linear infinite; }
.vu-spinner[hidden]{ display:none; }
@keyframes vu-spin{ to{ transform:rotate(360deg); } }
.vu-reg__addr{ transition:opacity .25s ease; }
.vu-reg__addr.is-collapsed{ display:none; }
.vu-reg__row--num{ grid-template-columns:minmax(0,170px) minmax(0,1fr); }
.vu-reg__row--city{ grid-template-columns:minmax(0,1fr) 110px; }

/* Empresa (CNPJ) */
.vu-reg__pj{ margin:2px 0 14px; padding:16px 16px 2px; border-radius:16px; background:var(--vu-bg); border:1px solid var(--vu-line); }
.vu-reg__pj[hidden]{ display:none; }
.vu-reg__pj-title{ margin:0 0 12px !important; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--vu-muted); }

/* Caixas de seleção */
.vu-check{ display:flex !important; align-items:flex-start; gap:10px; margin:0 0 12px !important; cursor:pointer; font-size:14px !important; font-weight:500 !important; color:var(--vu-ink) !important; text-transform:none !important; letter-spacing:0 !important; }
.vu-check input{ flex:0 0 20px; width:20px; height:20px; margin:0 !important; accent-color:var(--vu-orange); cursor:pointer; }
.vu-check--sm{ margin:8px 0 0 !important; font-size:13px !important; color:var(--vu-muted) !important; align-items:center; }
.vu-check--sm input{ flex-basis:17px; width:17px; height:17px; }

/* Senha */
.vu-reg #password{ padding-right:52px !important; }
.vu-eye{
  position:absolute; right:4px; top:4px; width:42px; height:42px; border:0 !important; border-radius:10px; cursor:pointer; padding:0 !important;
  background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B6158' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/22px no-repeat !important;
}
.vu-eye.is-on{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A35A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.9 17.9A10.4 10.4 0 0 1 12 19c-6.4 0-10-7-10-7a18 18 0 0 1 5.1-5.9M9.9 5.2A9.3 9.3 0 0 1 12 5c6.4 0 10 7 10 7a18 18 0 0 1-2.2 3.2'/%3E%3Cpath d='M14.1 14.2a3 3 0 1 1-4.2-4.2'/%3E%3Cpath d='M2 2l20 20'/%3E%3C/svg%3E") !important; }
.vu-eye:hover{ background-color:var(--vu-bg) !important; }
.vu-meter{ height:5px; margin:10px 0 0; border-radius:99px; background:var(--vu-line); overflow:hidden; }
.vu-meter span{ display:block; height:100%; width:0; border-radius:inherit; transition:width .2s ease, background-color .2s ease; }
.vu-meter[data-score="1"] span{ width:25%; background:#C4321F; }
.vu-meter[data-score="2"] span{ width:50%; background:#E0870C; }
.vu-meter[data-score="3"] span{ width:75%; background:#7FA82B; }
.vu-meter[data-score="4"] span{ width:100%; background:#1E7A3C; }

/* Extras (newsletter, captcha, lembrar) */
.vu-reg__extras{ margin:0 0 18px; padding:16px 0 0; border-top:1px solid var(--vu-line); }
.vu-reg__extras ul.form-list, .vu-reg__extras .form-list{ margin:0 !important; padding:0 !important; list-style:none; }
.vu-reg__extras li{ margin:0 0 10px !important; }
.vu-reg__extras .remember-me-box{ display:flex; align-items:center; gap:8px; font-size:14px; }
.vu-reg__extras .remember-me-box input{ accent-color:var(--vu-orange); width:18px; height:18px; }
.vu-reg__extras .remember-me-box label{ font-weight:500 !important; text-transform:none !important; letter-spacing:0 !important; font-size:14px !important; }
.vu-reg__extras .remember-me-popup{ display:none !important; }
.vu-reg__extras .remember-me-box a.hide, .vu-reg__extras .remember-me-box a{ font-size:13px; color:var(--vu-muted) !important; }
.vu-reg__extras .captcha-image img{ border-radius:10px; }

/* Botão */
.vu-reg__submit{
  position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:58px; margin:0; padding:0 20px;
  border:0; border-radius:999px; cursor:pointer; background:var(--vu-orange); color:var(--vu-black);
  font-family:var(--vu-label); font-weight:700; font-size:21px; letter-spacing:.06em; text-transform:uppercase;
  transition:background-color .15s ease, transform .1s ease;
}
.vu-reg__submit:hover{ background:var(--vu-orange-hover); }
.vu-reg__submit:active{ transform:scale(.99); }
.vu-reg__submit:focus-visible{ outline:3px solid rgba(243,154,30,.45); outline-offset:3px; }
.vu-reg__submit.is-busy{ cursor:progress; color:transparent; }
.vu-reg__submit.is-busy::after{ content:""; position:absolute; left:50%; top:50%; width:22px; height:22px; margin:-11px 0 0 -11px; border-radius:50%; border:3px solid rgba(11,10,9,.25); border-top-color:var(--vu-black); animation:vu-spin .7s linear infinite; }
.vu-reg__terms{ margin:14px 0 0 !important; text-align:center; font-size:12.5px; color:var(--vu-muted); line-height:1.5; }
.vu-reg__terms a{ color:var(--vu-ink) !important; text-decoration:underline; text-underline-offset:2px; }

/* Login social */
.vu-reg__social{ display:grid; gap:10px; margin:0 0 18px; }
.vu-reg__social-btn{
  display:flex; align-items:center; justify-content:center; gap:10px; height:48px; border-radius:999px; border:1.5px solid var(--vu-line-2);
  background:#fff center left 18px/20px no-repeat; color:var(--vu-ink) !important; font-weight:600; font-size:15px; text-decoration:none !important;
}
.vu-reg__social-btn:hover{ background-color:var(--vu-bg); }
.vu-reg__or{ display:flex; align-items:center; gap:12px; margin:6px 0 0 !important; font-size:12.5px; color:var(--vu-muted); }
.vu-reg__or::before, .vu-reg__or::after{ content:""; flex:1; height:1px; background:var(--vu-line); }

@media (min-width: 640px){
  .vu-reg__row--2{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .vu-reg__card{ padding:30px 32px 32px; }
}
@media (min-width: 960px){
  .vu-reg{ grid-template-columns:340px minmax(0,1fr); gap:28px; align-items:start; margin-top:36px; padding:0 24px; }
  .vu-reg__intro{ position:sticky; top:24px; padding:34px 30px; min-height:420px; display:flex; flex-direction:column; }
  .vu-reg__intro .vu-reg__login{ margin-top:auto !important; padding-top:18px; border-top:1px solid rgba(246,241,234,.14); }
  .vu-reg h1.vu-reg__title{ font-size:56px !important; }
  .vu-reg__card{ padding:34px 40px 36px; }
}
@media (max-width: 959px){
  .vu-reg__perks{ display:none; }
  .vu-reg__lead{ display:none; }
  .vu-reg__intro{ padding:22px 20px; }
  .vu-reg__intro .vu-reg__login{ display:none; }
  .vu-reg__login--bottom{ display:block; }
}
@media (max-width: 479px){
  .vu-reg{ padding:0 12px; margin-top:16px; }
  .vu-reg__card{ padding:20px 16px 22px; border-radius:18px; }
  .vu-reg__intro{ border-radius:18px; }
  .vu-reg h1.vu-reg__title{ font-size:38px !important; }
  .vu-reg__row--num{ grid-template-columns:minmax(0,1fr); }
}


/* "Manter conectado" (persistent) — cadastro, login e checkout */
#remember-me-box.vu-remember{ display:flex !important; align-items:flex-start; gap:10px; margin:0 0 12px !important; padding:0 !important; list-style:none !important; float:none !important; width:auto !important; }
#remember-me-box.vu-remember input{ flex:0 0 20px; width:20px; height:20px; margin:1px 0 0 !important; accent-color:var(--vu-orange); cursor:pointer; float:none !important; }
#remember-me-box.vu-remember label{ display:block !important; float:none !important; width:auto !important; margin:0 !important; padding:0 !important; cursor:pointer; text-transform:none !important; letter-spacing:0 !important; font-weight:400 !important; }
.vu-remember__title{ display:block; font-size:14px; font-weight:500; color:var(--vu-ink); line-height:1.35; }
.vu-remember__hint{ display:block; margin-top:2px; font-size:12.5px; color:var(--vu-muted); line-height:1.4; }

/* Header mobile: menu | logo horizontal (Design > Cabeçalho > logo pequeno) | conta e carrinho */
@media (max-width: 959px){
  .header-m-primary .inner-container{ position:relative; }
  .header-m-primary .logo-wrapper--mobile{ position:absolute; left:64px; top:0; height:64px; z-index:3; display:flex !important; align-items:center; width:auto !important; margin:0 !important; padding:0 !important; }
  .header-m-primary .logo-wrapper--mobile .logo{ display:block; width:auto !important; padding:0 !important; margin:0 !important; }
  .header-m-primary .logo-wrapper--mobile .logo img{ display:block; width:auto !important; height:40px !important; max-height:none !important; border-radius:0 !important; box-shadow:none !important; }
  .header-m-primary .after-mobile-logo{ display:none !important; }
  .header-m-container .skip-links-wrapper{ position:relative; display:flex !important; flex-wrap:wrap; align-items:center; padding:0 !important; margin:0 !important; }
  .header-m-container .skip-links-wrapper::before, .header-m-container .skip-links-wrapper::after{ display:none !important; }
  .header-m-container .header-m-primary .skip-links-wrapper.skip-links--4 .skip-link:not(.skip-search){ float:none !important; width:52px !important; height:64px !important; max-height:none !important; line-height:normal !important; display:flex !important; align-items:center; justify-content:center; padding:0 !important; }
  .header-m-container .skip-links-wrapper .skip-link .icon, .header-m-container .skip-links-wrapper .skip-link .ic{ font-size:22px !important; width:auto !important; height:auto !important; line-height:1 !important; }
  .header-m-container .skip-nav{ order:1; margin-right:auto; }
  .header-m-container .skip-account{ order:3; }
  .header-m-container #mini-cart{ order:4; position:static !important; width:auto !important; float:none !important; }
  .header-m-container #header-cart{ position:absolute !important; left:0; right:0; top:64px; z-index:20; width:auto !important; }
  .header-m-container .skip-links-wrapper > .skip-content{ order:9; flex:0 0 100%; width:100% !important; }
  .header-m-container .skip-links-wrapper > #header-search{ order:10; }
  .header-m-container .skip-links-clearer{ display:none; }
}
@media (max-width: 374px){
  .header-m-primary .logo-wrapper--mobile .logo img{ height:30px !important; }
}


/* ==========================================================================
   Home: carrossel de banners (.vu-slider) + banner "Entrega no mesmo dia" (.vu-hero--express)
   ========================================================================== */
.vu-slider{ position:relative; overflow:hidden; }
.vu-slider__track{ display:flex; align-items:stretch; transition:transform .6s cubic-bezier(.22,.61,.36,1); will-change:transform; }
.vu-slider__track > .vu-slide{ flex:0 0 100%; min-width:0; }
.vu-slider__dots{ position:absolute; left:0; right:0; bottom:22px; z-index:3; display:flex; justify-content:center; gap:10px; pointer-events:none; }
.vu-slider__dot{ pointer-events:auto; width:12px; height:12px; padding:0; border:2px solid #F6F1EA; border-radius:999px; background:transparent; cursor:pointer; transition:width .25s ease, background-color .25s ease; }
.vu-slider__dot.is-active{ width:34px; background:#F6F1EA; }
.vu-slider__dot:focus-visible, .vu-slider__arrow:focus-visible{ outline:3px solid #fff; outline-offset:2px; }
.vu-slider__arrow{
  position:absolute; top:50%; z-index:3; width:48px; height:48px; margin-top:-24px; padding:0; border:0; border-radius:50%; cursor:pointer;
  background:rgba(11,10,9,.55) center/22px no-repeat; transition:background-color .2s ease;
}
.vu-slider__arrow:hover{ background-color:rgba(11,10,9,.85); }
.vu-slider__arrow--prev{ left:16px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F6F1EA' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E"); }
.vu-slider__arrow--next{ right:16px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F6F1EA' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E"); }
.vu-slider:not(.is-ready) .vu-slider__dots, .vu-slider:not(.is-ready) .vu-slider__arrow{ display:none; }
@media (prefers-reduced-motion: reduce){ .vu-slider__track{ transition:none; } }

/* Título do 2º banner (h2 com o mesmo visual do h1 do primeiro) */
.vu-hero .vu-hero__title{ margin:0; font-family:var(--vu-display); font-weight:400; font-size:clamp(56px, 8vw, 112px); line-height:.92; letter-spacing:.01em; text-transform:uppercase; }

/* Banner "Entrega no mesmo dia": noite na cidade, preto com laranja */
.vu-hero--express{ background:radial-gradient(120% 90% at 85% 15%, #2A1F14 0%, #0B0A09 60%); color:#F6F1EA; }
.vu-hero--express::before{
  right:auto; left:-60px; top:40px; width:560px; height:300px; opacity:.5;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 560 300' fill='none' stroke='%23F39A1E' stroke-linecap='round'%3E%3Cpath d='M20 60h220' stroke-width='6' opacity='.55'/%3E%3Cpath d='M90 100h300' stroke-width='4' opacity='.35'/%3E%3Cpath d='M0 150h180' stroke-width='8' opacity='.25'/%3E%3Cpath d='M140 200h260' stroke-width='3' opacity='.3'/%3E%3Cpath d='M40 250h140' stroke-width='5' opacity='.2'/%3E%3C/svg%3E") no-repeat left top / contain;
}
.vu-hero--express::after{
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 220' preserveAspectRatio='none'%3E%3Cpath d='M0 220V120h60V90h40v30h50V60h70v60h40V100h60V40h30V20h20v20h30v80h50V80h60v40h40V70h80v50h50V110h40V50h60v70h40V90h70v30h60V60h40V30h40v30h30v60h60V100h50v20h60V70h70v50h40V90h40v130z' fill='%23241A12'/%3E%3Cg fill='%23F39A1E'%3E%3Crect x='170' y='78' width='8' height='10'/%3E%3Crect x='190' y='98' width='8' height='10'/%3E%3Crect x='330' y='58' width='8' height='10'/%3E%3Crect x='350' y='88' width='8' height='10' opacity='.6'/%3E%3Crect x='560' y='92' width='8' height='10'/%3E%3Crect x='700' y='70' width='8' height='10' opacity='.6'/%3E%3Crect x='870' y='72' width='8' height='10'/%3E%3Crect x='1010' y='50' width='8' height='10'/%3E%3Crect x='1030' y='80' width='8' height='10' opacity='.6'/%3E%3Crect x='1250' y='88' width='8' height='10'/%3E%3C/g%3E%3Cpath d='M0 220V160h90v-30h60v30h80v-50h50v50h120v-20h70v20h90v-40h60v40h110v-30h70v30h100v-50h60v50h120v-20h80v20h90v-30h60v30h120v60z' fill='%23140F0B'/%3E%3C/svg%3E") no-repeat bottom center / 100% 100%;
}
.vu-hero--express .vu-hero__pill{ display:inline-flex; align-items:center; gap:8px; background:var(--vu-orange); color:var(--vu-black); }
.vu-hero--express .vu-hero__pill::before{ content:""; width:16px; height:16px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2L4 14h7l-1 8 9-12h-7z' fill='%230B0A09'/%3E%3C/svg%3E") center / contain no-repeat; }
.vu-hero--express .vu-hero__title{ color:#F6F1EA; }
.vu-hero--express .vu-hero__title em{ font-style:normal; color:var(--vu-orange); }
.vu-hero--express p.vu-hero__sub{ color:rgba(246,241,234,.82); }
.vu-hero--express p.vu-hero__sub strong{ color:#F6F1EA; }
.vu-btn--orange{ background:var(--vu-orange); color:var(--vu-black) !important; }
.vu-btn--orange:hover{ background:var(--vu-orange-hover); color:var(--vu-black) !important; }
.vu-btn--outline-light{ border:2px solid #F6F1EA; color:#F6F1EA !important; }
.vu-btn--outline-light:hover{ background:#F6F1EA; color:var(--vu-black) !important; }

/* Cartão: relógio às 9h30 + moto + São Paulo */
.vu-express-card{ flex:0 1 380px; display:flex; justify-content:center; }
.vu-express-card__box{
  width:340px; max-width:100%; min-height:420px; padding:34px 28px 30px; border-radius:28px; background:var(--vu-orange); color:var(--vu-black);
  box-shadow:14px 14px 0 #4A2E12; display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center;
}
.vu-clock{ position:relative; width:170px; height:170px; border-radius:50%; background:#F6F1EA; border:8px solid var(--vu-black); box-shadow:inset 0 0 0 4px #F6F1EA, inset 0 0 0 6px rgba(11,10,9,.15); }
.vu-clock::before{
  content:""; position:absolute; inset:6px; border-radius:50%;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg stroke='%230B0A09' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M50 6v8M94 50h-8M50 94v-8M6 50h8'/%3E%3C/g%3E%3Cg stroke='%230B0A09' stroke-width='1.6' stroke-linecap='round' opacity='.5'%3E%3Cpath d='M72 11.9l-2 3.5M88.1 28l-3.5 2M88.1 72l-3.5-2M72 88.1l-2-3.5M28 88.1l2-3.5M11.9 72l3.5-2M11.9 28l3.5 2M28 11.9l2 3.5'/%3E%3C/g%3E%3C/svg%3E") center / 100% no-repeat;
}
.vu-clock__h, .vu-clock__m{ position:absolute; left:50%; bottom:50%; border-radius:6px; background:var(--vu-black); transform-origin:50% 100%; }
.vu-clock__h{ width:8px; height:42px; margin-left:-4px; transform:rotate(285deg); }
.vu-clock__m{ width:6px; height:62px; margin-left:-3px; transform:rotate(180deg); background:#C4321F; }
.vu-clock::after{ content:""; position:absolute; left:50%; top:50%; width:16px; height:16px; margin:-8px 0 0 -8px; border-radius:50%; background:var(--vu-black); box-shadow:0 0 0 4px #F6F1EA; }
.vu-express-card__time{ font-family:var(--vu-display); font-size:44px; line-height:1; text-transform:uppercase; }
.vu-express-card__row{ display:flex; align-items:center; gap:10px; font-weight:700; font-size:16px; line-height:1.25; text-align:left; }
.vu-express-card__ic{ flex:0 0 40px; width:40px; height:40px; border-radius:12px; background:var(--vu-black) center / 26px no-repeat; }
.vu-ic-moto{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%23F39A1E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='22' r='4'/%3E%3Ccircle cx='25' cy='22' r='4'/%3E%3Cpath d='M11 22h8l3-7h-6l-3 4H8'/%3E%3Cpath d='M22 15l-2-5h-3'/%3E%3Cpath d='M3 12h7M1 16h5'/%3E%3C/svg%3E"); }
.vu-ic-pin{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F39A1E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.vu-express-card__rows{ display:grid; gap:10px; margin-top:4px; }

@media (max-width: 767px){
  .vu-slider__arrow{ display:none !important; }
  .vu-slider__dots{ bottom:14px; }
  .vu-hero .vu-hero__title{ -webkit-text-stroke:2px var(--vu-black); }
  .vu-hero--express .vu-hero__title{ -webkit-text-stroke:0; text-shadow:none; }
  .vu-express-card{ display:none; }
  .vu-hero--express::before{ width:320px; height:170px; top:20px; opacity:.4; }
  .vu-hero--express::after{ height:110px; }
}

/* Setas no canto inferior direito, ao lado das bolinhas (não cobrem o texto) */
.vu-slider__arrow{ top:auto; bottom:14px; margin-top:0; width:40px; height:40px; background-size:18px; }
.vu-slider__arrow--prev{ left:auto; right:72px; }
.vu-slider__arrow--next{ right:24px; }
