:root{--ink:#262220;--muted:#746e68;--paper:#f8f5f1;--card:#fff;--wine:#5b1f2a;--gold:#b78d51;--line:#e5ddd4;--soft:#f1ebe5;--shadow:0 12px 30px rgba(42,28,21,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.container{width:min(1160px,92vw);margin:auto}
header{position:sticky;top:0;z-index:40;background:rgba(31,29,28,.97);color:#fff}.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.05em}.mark{width:34px;height:34px;border:1px solid #d5b579;border-radius:50%;display:grid;place-items:center;color:#d5b579;font-size:12.65px}.links{display:flex;gap:16px;font-size:13.8px;color:#ddd}.topbtn{border:0;background:#fff;border-radius:999px;padding:9px 12px;font-size:12.65px;font-weight:900}
.hero{min-height:430px;color:#fff;background:linear-gradient(90deg,rgba(18,15,14,.92),rgba(18,15,14,.5) 60%,rgba(18,15,14,.18)),linear-gradient(120deg,#201a18,#5b1f2a);display:flex;align-items:flex-end}.hero-inner{padding:68px 0 58px;max-width:780px}.eyebrow{font-size:12.65px;text-transform:uppercase;letter-spacing:.15em;color:#e0bd83;font-weight:900}.hero h1{font:700 clamp(48.3px,7.245vw,82.8px)/.96 Georgia,serif;margin:12px 0 17px}.hero p{font-size:19.55px;line-height:1.58;max-width:680px;color:#eee8e2}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.btn{border:0;border-radius:11px;padding:11px 15px;font-weight:900}.light{background:#fff;color:var(--ink)}.wine{background:var(--wine);color:#fff}.outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}
.stats{background:#201e1d;color:#fff}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:13px 0}.stat{display:flex;gap:8px;align-items:center;color:#d9d3cd;font-size:12.65px}.stat b{display:block;color:#fff;font-size:13.8px}
section{padding:54px 0}.kicker{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#7f3545;font-weight:900}h2{font:700 43.7px/1.07 Georgia,serif;margin:7px 0 9px}.lead{color:var(--muted);line-height:1.55;max-width:760px}
.country-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:12.65px;color:#514b46}.chip:hover,.chip.active{background:var(--wine);color:#fff;border-color:var(--wine)}
.toolbar{position:sticky;top:68px;z-index:30;background:rgba(248,245,241,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:11px 0}.tools{display:grid;grid-template-columns:1.4fr 1fr auto;gap:8px}.search,.select{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;outline:none}.filterbtn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font-weight:900}.quick{display:flex;gap:7px;overflow:auto;padding-top:8px}
.layout{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start}.sidebar{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px;position:sticky;top:137px;box-shadow:var(--shadow)}.fsec{padding:10px 0;border-bottom:1px solid var(--line)}.fsec:last-child{border:0}.ftitle{font-size:12.65px;font-weight:900;margin-bottom:8px}.checks{display:grid;gap:6px}.check{font-size:11.5px;color:#5c554f;display:flex;gap:6px;align-items:center}.check input{accent-color:var(--wine)}.prices{display:grid;grid-template-columns:1fr 1fr;gap:6px}.prices input{width:100%;border:1px solid var(--line);border-radius:7px;padding:7px;font-size:11.5px}.clear{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px;font-size:11.5px;font-weight:900;margin-top:8px}
.results{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.count{font-size:12.65px;color:var(--muted)}.sort{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;font-size:11.5px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 8px 19px rgba(38,26,19,.05);transition:.18s;display:flex;flex-direction:column}.card:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(38,26,19,.1)}
.bottle{height:180px;background:linear-gradient(135deg,#f1ebe5,#e9e0d7);position:relative;display:grid;place-items:center}.bottle:before{content:"";width:40px;height:116px;border-radius:9px 9px 7px 7px;background:linear-gradient(90deg,#2b2320,#5b4639,#2b2320);box-shadow:0 8px 13px rgba(20,15,12,.18)}.bottle:after{content:"";position:absolute;top:19px;width:20px;height:15px;border-radius:2px;background:#c9aa76;box-shadow:0 28px 0 7px #fff}.bottle.has-image{background:#f1ebe5;overflow:hidden}.bottle.has-image:before,.bottle.has-image:after{display:none}.bottle.has-image img{max-height:166px;max-width:75%;width:auto;height:auto;object-fit:contain;display:block;border-radius:10px;box-shadow:0 5px 14px rgba(38,26,19,.08)}.country{position:absolute;top:9px;left:9px;background:rgba(255,255,255,.92);padding:5px 7px;border-radius:999px;font-size:10.35px;font-weight:900}.fav{position:absolute;right:8px;top:8px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.9)}
.body{padding:12px;display:flex;flex-direction:column;gap:5px;flex:1}.name{font-size:16.1px;font-weight:900;line-height:1.2}.producer{font-size:11.5px;color:var(--muted)}.meta{display:flex;gap:4px;flex-wrap:wrap}.tag{font-size:9.2px;background:var(--soft);color:#5c534c;border-radius:999px;padding:4px 6px}.foot{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:auto}.price{font-size:17.25px;font-weight:900;color:var(--wine)}.price small{display:block;color:#9a762e;font-size:9.2px;margin-top:1px}.view{border:0;background:var(--ink);color:#fff;border-radius:8px;padding:7px 9px;font-size:10.35px;font-weight:900}.cart-add{width:27px;padding:7px 0}
.guide{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px}.guidegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:15px}.guidebox{background:#fbf7f2;border-radius:12px;padding:12px}.guidebox b{display:block;font-size:12.65px;margin-bottom:4px}.guidebox span{color:var(--muted);font-size:10.35px;line-height:1.45}
.modalbg{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:10px;background:rgba(17,14,13,.72)}.modalbg.show{display:flex}.modal{width:min(580px,calc(100vw - 20px));max-height:calc(100vh - 20px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 100px rgba(0,0,0,.35)}.mhead{padding:15px 17px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.close{width:32px;height:32px;border:0;border-radius:50%;background:#f0ebe6}.mbody{padding:17px}.detail{display:grid;grid-template-columns:160px 1fr;gap:15px}.dbottle{min-height:230px;border-radius:12px;background:linear-gradient(135deg,#f1ebe5,#e8ded4);display:grid;place-items:center}.dbottle div{width:50px;height:145px;border-radius:11px 11px 8px 8px;background:linear-gradient(90deg,#2b2320,#5b4639,#2b2320);position:relative}.dbottle div:after{content:"";position:absolute;top:23px;left:15px;width:20px;height:13px;background:#c9aa76;box-shadow:0 30px 0 6px #fff}.dtitle{font:700 31.05px/1.05 Georgia,serif;margin:0 0 4px}.dproducer{color:var(--muted);font-size:12.65px}.dprice{font-size:24.15px;color:var(--wine);font-weight:900;margin:12px 0}.dmeta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.dmeta div{background:#fbf7f2;border-radius:9px;padding:8px;font-size:11.5px}.dmeta b{display:block;font-size:9.2px;text-transform:uppercase;color:#887e76;margin-bottom:2px}.mnote{margin-top:13px;background:#fbf7f2;border-radius:10px;padding:10px;font-size:11.5px;color:#6e665f;line-height:1.5}.mactions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
footer{padding:42px 0 70px;border-top:1px solid var(--line);color:#8e867e;font-size:12.65px}.footerrow{display:flex;justify-content:space-between;gap:15px}
@media(max-width:1000px){
  .layout{grid-template-columns:1fr}
  .grid{grid-template-columns:repeat(2,1fr)}
  #sidebar{width:min(340px,88vw)}
}
@media(max-width:720px){.links{display:none}.hero{min-height:480px}.hero-inner{padding:62px 0 46px}.stats-row{grid-template-columns:1fr 1fr}.tools{grid-template-columns:1fr auto}.tools .select{grid-column:1/-1}.grid{grid-template-columns:1fr 1fr}.bottle{height:150px}.name{font-size:14.95px}.producer{font-size:10.35px}.price{font-size:14.95px}.guidegrid{grid-template-columns:1fr 1fr}.detail{grid-template-columns:1fr}.dbottle{min-height:180px}.mactions{grid-template-columns:1fr}.modal{max-height:calc(100dvh - 12px)}}
@media(max-width:430px){.grid{grid-template-columns:1fr}.bottle{height:165px}}
.sidebar{padding:0;overflow:hidden}.sidebar-head{padding:14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.sidebar-title{font-size:17.25px}.filter-summary{display:block;font-size:10.35px;color:var(--muted);margin-top:2px}.sidebar-close{width:28px;height:28px;border:0;background:#f0ebe6;border-radius:50%}.filter-accordion{border-bottom:1px solid var(--line)}.filter-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:#fff;padding:11px 14px;font-size:12.65px;font-weight:900;text-align:left}.filter-box{display:none;padding:0 14px 11px}.filter-accordion.open .filter-box{display:block}.checks-scroll{max-height:180px;overflow:auto}.filter-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:11px 14px;background:#faf7f3;position:sticky;bottom:0}.apply-filter{border:0;background:var(--wine);color:#fff;border-radius:8px;padding:8px;font-size:11.5px;font-weight:900}.lang{border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;border-radius:999px;padding:7px 9px;font-size:11.5px}@media(max-width:1000px){.sidebar-head{position:sticky;top:0;background:#fff;z-index:2}}
/* Espaçamento entre blocos e retorno direto aos produtos */
.products-area-fix{padding-top:26px}
.results-products{margin-top:0}
.product-results{margin-top:0}
@media(max-width:720px){
  .products-area-fix{padding-top:18px}
}


/* Correção estrutural: filtros fora do fluxo do catálogo */
.layout{display:block}
.product-results{width:100%}
#sidebar{
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  width:min(360px,88vw);
  z-index:95;
  margin:0;
  border-radius:0 18px 18px 0;
  box-shadow:20px 0 50px rgba(0,0,0,.22);
  overflow:auto;
  background:#fffdf9;
  transform:translateX(-105%);
  visibility:hidden;
  opacity:0;
  transition:
    transform .28s cubic-bezier(.22,.7,.2,1),
    opacity .20s ease,
    visibility 0s linear .28s;
  will-change:transform;
}
#sidebar.open{
  transform:translateX(0);
  visibility:visible;
  opacity:1;
  transition:
    transform .28s cubic-bezier(.22,.7,.2,1),
    opacity .20s ease,
    visibility 0s linear 0s;
}
#filterBackdrop{
  position:fixed;
  inset:0;
  z-index:90;
  background:rgba(18,15,14,.48);
  backdrop-filter:blur(3px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:
    opacity .24s ease,
    visibility 0s linear .24s;
}
#filterBackdrop.show{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:
    opacity .24s ease,
    visibility 0s linear 0s;
}
.products-area-fix{padding-top:24px}
.products-area-fix .results{margin-bottom:14px}
.products-area-fix .grid{
  width:100%;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:1000px){
  .products-area-fix .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .products-area-fix{padding-top:18px}
  .products-area-fix .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .products-area-fix .grid{grid-template-columns:1fr}
}


/* Produtos: retorno ao formato da primeira versão */
.products-area-fix .grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
  width:100%;
}
.products-area-fix .card{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.products-area-fix .bottle{
  height:180px;
  min-height:180px;
  flex:none;
}
.products-area-fix .body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:12px;
  gap:5px;
}
.products-area-fix .name{
  font-size:16.1px;
  line-height:1.2;
}
.products-area-fix .producer{
  font-size:11.5px;
}
.products-area-fix .price{
  font-size:17.25px;
}
.products-area-fix .view{
  font-size:10.35px;
  padding:7px 9px;
}
@media(max-width:1000px){
  .products-area-fix .grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .products-area-fix .grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .products-area-fix .bottle{
    height:150px;
    min-height:150px;
  }
  .products-area-fix .name{font-size:14.95px}
  .products-area-fix .producer{font-size:10.35px}
  .products-area-fix .price{font-size:14.95px}
}
@media(max-width:430px){
  .products-area-fix .grid{
    grid-template-columns:1fr;
  }
  .products-area-fix .bottle{
    height:165px;
    min-height:165px;
  }
}


/* Filtro País: rolagem interna, igual à lista de uvas */
#countryChecks{
  max-height:180px;
  overflow-y:auto;
  padding-right:4px;
  overscroll-behavior:contain;
}
#countryChecks::-webkit-scrollbar,
#grapeChecks::-webkit-scrollbar{
  width:6px;
}
#countryChecks::-webkit-scrollbar-thumb,
#grapeChecks::-webkit-scrollbar-thumb{
  background:#d9cec5;
  border-radius:99px;
}
#countryChecks::-webkit-scrollbar-track,
#grapeChecks::-webkit-scrollbar-track{
  background:transparent;
}

/* Seletor de origem */
.origin-picker-wrap{position:relative;max-width:620px;margin-top:15px}
.origin-picker-btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  border-radius:12px;
  padding:13px 15px;
  font-size:13.8px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(38,26,19,.05);
}
.origin-picker-btn span:nth-child(2){flex:1;text-align:left;color:#5d5650}
.origin-picker-btn.active{border-color:var(--wine);box-shadow:0 0 0 3px rgba(91,31,42,.08)}
.picker-chevron{font-size:18.4px;transition:.2s}
.origin-picker-btn.active .picker-chevron{transform:rotate(180deg)}
.origin-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  z-index:35;
  display:none;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:8px;
  max-height:260px;
  overflow-y:auto;
  box-shadow:0 20px 40px rgba(38,26,19,.14);
}
.origin-menu.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.origin-option{
  border:1px solid transparent;
  background:#faf7f3;
  color:#4e4843;
  border-radius:9px;
  padding:9px 10px;
  text-align:left;
  font-size:12.65px;
  font-weight:700;
}
.origin-option:hover{background:#f1e9e2;border-color:#dccbc0}
.origin-option.selected{background:var(--wine);color:#fff}
@media(max-width:720px){
  .origin-menu.open{grid-template-columns:1fr}
  .origin-menu{max-height:250px}
}


/* Cards de produtos — primeira versão */
.products-area-fix .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;width:100%}
.products-area-fix .card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 8px 19px rgba(38,26,19,.05);display:flex;flex-direction:column;transition:.18s}
.products-area-fix .bottle{height:180px;min-height:180px;background:linear-gradient(135deg,#f1ebe5,#e9e0d7);position:relative;display:grid;place-items:center}
.products-area-fix .body{padding:12px;display:flex;flex-direction:column;gap:5px;flex:1}
@media(max-width:1000px){.products-area-fix .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.products-area-fix .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.products-area-fix .bottle{height:150px;min-height:150px}}
@media(max-width:430px){.products-area-fix .grid{grid-template-columns:1fr}.products-area-fix .bottle{height:165px;min-height:165px}}


/* Carrinho / pedido */
.cart-top{
  border:1px solid rgba(255,255,255,.16);
  background:#fff;color:var(--ink);border-radius:999px;
  padding:8px 11px;display:flex;align-items:center;gap:7px;
  font-size:12.075px;font-weight:900
}
.cart-count{
  min-width:19px;height:19px;border-radius:999px;
  background:var(--wine);color:#fff;display:grid;place-items:center;
  font-size:10.35px
}
.cart-backdrop{
  position:fixed;inset:0;z-index:119;
  background:rgba(18,15,14,.5);backdrop-filter:blur(2px);
  display:none
}
.cart-backdrop.show{display:block}
.cart-drawer{
  position:fixed;top:0;right:0;bottom:0;z-index:120;
  width:min(390px,94vw);background:#fff;
  transform:translateX(105%);transition:transform .24s ease;
  box-shadow:-20px 0 55px rgba(20,14,10,.22);
  display:flex;flex-direction:column
}
.cart-drawer.open{transform:translateX(0)}
.cart-drawer-head{
  padding:17px 18px;border-bottom:1px solid var(--line);
  display:flex;justify-content:space-between;gap:12px;align-items:start
}
.cart-drawer-head h3{font:700 29.9px/1.05 Georgia,serif;margin:5px 0 3px}
.cart-subtitle{display:block;font-size:11.5px;color:var(--muted)}
.cart-close{width:32px;height:32px;border:0;background:#f0ebe6;border-radius:50%}
.cart-items{flex:1;overflow:auto;padding:12px 15px;display:flex;flex-direction:column;gap:9px}
.cart-empty{
  margin:auto;text-align:center;color:var(--muted);
  max-width:240px;line-height:1.5;font-size:12.65px
}
.cart-row{
  border:1px solid var(--line);background:#fbf8f4;
  border-radius:12px;padding:10px
}
.cart-row-top{display:flex;justify-content:space-between;gap:10px}
.cart-row-name{font-size:13.8px;font-weight:900;line-height:1.25}
.cart-row-meta{font-size:10.925px;color:var(--muted);margin-top:3px}
.cart-remove{border:0;background:transparent;color:#8b8179;font-size:16.1px}
.cart-row-bottom{
  display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px
}
.cart-qty{display:flex;align-items:center;gap:5px}
.cart-qty button{
  width:23px;height:23px;border:1px solid var(--line);
  background:#fff;border-radius:7px
}
.cart-qty span{min-width:20px;text-align:center;font-size:11.5px}
.cart-row-price{font-size:12.65px;font-weight:900;color:var(--wine)}
.cart-bottom{
  border-top:1px solid var(--line);padding:14px 15px;background:#fff;
  box-shadow:0 -7px 20px rgba(38,26,19,.06)
}
.cart-total-row{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14.95px}
.cart-total-row strong{font-size:20.7px;color:var(--wine)}
.cart-note{font-size:10.35px;color:var(--muted);line-height:1.45;margin:7px 0 10px}
.cart-checkout{
  width:100%;border:0;background:#1f7a4e;color:#fff;
  border-radius:10px;padding:11px;font-size:12.65px;font-weight:900
}
.cart-continue{
  width:100%;border:1px solid var(--line);background:#fff;color:var(--ink);
  border-radius:10px;padding:9px;font-size:11.5px;font-weight:900;margin-top:7px
}
@media(max-width:720px){
  .cart-drawer{width:100%;max-width:420px}
}


.cart-toast{
 position:fixed;left:50%;bottom:20px;transform:translate(-50%,20px);
 background:#211f1e;color:#fff;border-radius:999px;padding:9px 13px;
 font-size:11.5px;opacity:0;pointer-events:none;z-index:120;transition:.2s
}
.cart-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:720px){
  .cart-top{padding:8px 10px}
  .cart-count{min-width:18px;height:18px}
}


/* Correção definitiva da imagem do rótulo:
   a ilustração de garrafa agora é um elemento HTML separado,
   nunca um pseudo-elemento CSS. */
.bottle:before,
.bottle:after{
  display:none !important;
  content:none !important;
}
.bottle{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#f1ebe5,#e9e0d7);
}
.bottle.has-image{
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f1ebe5;
}
.bottle.has-image img{
  position:relative;
  z-index:1;
  display:block;
  width:auto;
  height:auto;
  max-width:88%;
  max-height:100%;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 5px 14px rgba(38,26,19,.10);
}
.bottle-placeholder{
  width:40px;
  height:116px;
  border-radius:9px 9px 7px 7px;
  background:linear-gradient(90deg,#2b2320,#5b4639,#2b2320);
  box-shadow:0 8px 13px rgba(20,15,12,.18);
  position:relative;
}
.bottle-placeholder:before{
  content:"";
  position:absolute;
  top:-1px;
  left:10px;
  width:20px;
  height:15px;
  border-radius:2px;
  background:#c9aa76;
  box-shadow:0 28px 0 7px #fff;
}
.dbottle{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.dbottle > img{
  position:relative;
  z-index:1;
  width:auto;
  height:auto;
  max-width:82%;
  max-height:210px;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 5px 14px rgba(38,26,19,.10);
}
.dbottle .bottle-placeholder{
  width:50px;
  height:145px;
}


/* Destaque elegante para a foto do vinho */
.products-area-fix .bottle{
  height:220px;
  min-height:220px;
  padding:12px;
  background:linear-gradient(135deg,#f3eee9,#ebe3db);
}
.products-area-fix .bottle.has-image{
  padding:8px 10px 10px;
}
.products-area-fix .bottle.has-image img.wine-photo{
  max-width:94%;
  max-height:204px;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:14px;
  box-shadow:0 7px 18px rgba(38,26,19,.12);
}
.products-area-fix .bottle.has-image:after{
  display:none !important;
  content:none !important;
}
.products-area-fix .bottle.has-image .country{
  z-index:3;
  box-shadow:0 2px 8px rgba(38,26,19,.08);
}
.products-area-fix .bottle.has-image .fav{
  z-index:3;
  box-shadow:0 2px 8px rgba(38,26,19,.08);
}
@media(max-width:1000px){
  .products-area-fix .bottle{height:205px;min-height:205px}
  .products-area-fix .bottle.has-image img.wine-photo{max-height:189px}
}
@media(max-width:720px){
  .products-area-fix .bottle{height:190px;min-height:190px;padding:8px}
  .products-area-fix .bottle.has-image img.wine-photo{max-height:176px;max-width:94%;border-radius:12px}
}
@media(max-width:430px){
  .products-area-fix .bottle{height:205px;min-height:205px}
  .products-area-fix .bottle.has-image img.wine-photo{max-height:190px}
}



/* Filtro de preço: campos editáveis + slider sincronizado */
.price-inputs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-bottom:10px;
}
.price-inputs label{
  display:grid;
  gap:4px;
  font-size:9.2px;
  color:var(--muted);
}
.price-edit{
  width:100%;
  border:1px solid var(--line);
  border-radius:7px;
  padding:7px 8px;
  font-size:11.5px;
  color:var(--ink);
  background:#fff;
  outline:none;
}
.price-edit:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 2px rgba(183,141,81,.12);
}
.price-slider{
  position:relative;
  height:28px;
  margin:0 2px;
}
.price-track,
.price-fill{
  position:absolute;
  left:0;
  right:0;
  top:12px;
  height:4px;
  border-radius:999px;
}
.price-track{background:#e8dfd7}
.price-fill{background:var(--gold);right:auto}
.range{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:28px;
  margin:0;
  background:transparent;
  pointer-events:none;
  appearance:none;
  -webkit-appearance:none;
}
.range-min{z-index:2}
.range-max{z-index:3}
.range::-webkit-slider-runnable-track{height:4px;background:transparent}
.range::-moz-range-track{height:4px;background:transparent}
.range::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:16px;
  height:16px;
  margin-top:-6px;
  border-radius:50%;
  border:2px solid #fff;
  background:var(--wine);
  box-shadow:0 2px 7px rgba(38,26,19,.22);
  pointer-events:auto;
  cursor:pointer;
}
.range::-moz-range-thumb{
  width:16px;
  height:16px;
  border-radius:50%;
  border:2px solid #fff;
  background:var(--wine);
  box-shadow:0 2px 7px rgba(38,26,19,.22);
  pointer-events:auto;
  cursor:pointer;
}
.price-range-values{
  display:flex;
  justify-content:space-between;
  margin-top:2px;
  color:var(--muted);
  font-size:9.2px;
}


/* =========================================================
   CASA DE VINO — IDENTIDADE VISUAL FINAL
   ========================================================= */
:root{
  --ink:#332724;
  --muted:#756a63;
  --paper:#f7f3ed;
  --card:#fffdf9;
  --wine:#86151f;
  --wine-deep:#621018;
  --brown:#5b3328;
  --gold:#a5a7aa;
  --silver:#a5a8ad;
  --line:#ddd5cc;
  --soft:#eee8e0;
  --shadow:0 12px 32px rgba(57,38,30,.08);
}
body{
  background:var(--paper);
  color:var(--ink);
  position:relative;
  overflow-x:hidden;
}
body:before{
  content:none !important;
}
header,.hero,.stats,section,footer,.toolbar,.modalbg{position:relative;z-index:1}
header{
  background:rgba(247,243,237,.97);
  color:var(--ink);
  border-bottom:1px solid rgba(134,21,31,.12);
  backdrop-filter:blur(12px);
}
.nav{min-height:76px}
.brand{gap:9px}
.brand img{width:54px;height:54px;object-fit:contain;display:block}
.brand-text{font-size:13.8px;font-weight:900;letter-spacing:.12em;color:var(--wine);display:block;white-space:nowrap}
.links{color:var(--brown);font-size:12.65px;gap:20px}
.links a:hover{color:var(--wine)}
.mark{display:none}
.topbtn{background:var(--wine);color:#fff;border-radius:999px;padding:10px 14px}
.cart-top{border-color:rgba(134,21,31,.15);color:var(--wine);background:#fffdfa}
.cart-count{background:var(--wine)}
.lang{color:var(--brown);border-color:rgba(91,51,40,.18);background:rgba(255,255,255,.55)}
.hero{
  min-height:590px;
  background-image:linear-gradient(90deg,rgba(53,29,25,.80),rgba(86,29,31,.48) 50%,rgba(33,22,19,.20)),url('../assets/hero-casa-de-vino.png');
  background-size:cover;
  background-position:center 37%;
  color:#fff;
  align-items:flex-end;
}
.hero-vignette{position:absolute;inset:0;background:radial-gradient(circle at 72% 25%,rgba(255,255,255,.10),transparent 38%)}
.hero-inner{position:relative;z-index:1;padding:72px 0 66px;max-width:800px}
.hero-logo{width:168px;max-width:44vw;margin-bottom:14px;filter:drop-shadow(0 5px 18px rgba(0,0,0,.26))}
.eyebrow{color:#f0d9d1;letter-spacing:.20em}
.hero h1{font:700 clamp(49.45px,6.9vw,80.5px)/.98 Georgia,serif;max-width:800px}
.hero p{color:#f5eee9;max-width:690px;font-size:18.4px}
.btn.wine{background:var(--wine)}
.btn.light{background:#fffdf9;color:var(--wine)}
.btn.outline{border-color:rgba(255,255,255,.48)}
.stats{background:var(--wine-deep)}
.stat{color:#e8ddd8}.stat b{color:#fff}.stat span{color:#dbcac5}
section{background:transparent}
.kicker{color:var(--wine)}
h2{color:var(--brown)}
.lead{color:var(--muted)}
.guide{background:rgba(255,253,249,.94);border-color:rgba(134,21,31,.10);box-shadow:var(--shadow)}
.guidebox{background:#f4eee8;border:1px solid rgba(91,51,40,.06)}
.origin-picker-btn{background:#fffdf9;border-color:#d8cec5;box-shadow:0 8px 20px rgba(57,38,30,.05)}
.origin-picker-btn.active{border-color:var(--wine);box-shadow:0 0 0 3px rgba(134,21,31,.08)}
.origin-menu{background:#fffdf9}
.origin-option{background:#f7f1eb}
.origin-option.selected{background:var(--wine)}
.toolbar{background:rgba(247,243,237,.96);border-bottom-color:#ded5cd}
.search,.select,.filterbtn{background:#fffdf9;border-color:#d9d0c7}
.filterbtn{color:var(--wine)}
.sidebar{background:#fffdf9;border-color:#ded5cc;box-shadow:0 18px 45px rgba(57,38,30,.13)}
.filter-actions{background:#f7f2ec}
.apply-filter{background:var(--wine)}
.check input{accent-color:var(--wine)}
.card{background:#fffdf9;border-color:#ded5cc;box-shadow:0 9px 20px rgba(57,38,30,.06)}
.card:hover{box-shadow:0 18px 38px rgba(57,38,30,.12)}
.bottle{background:linear-gradient(135deg,#f0ece7,#e9dfd7)}
.bottle.has-image{background:#f2ede7}
.tag{background:#f1e8df;color:#6d4e42}
.price{color:var(--wine)}
.price small{color:#898e92}
.view{background:var(--wine)}
.footerrow{color:#887d75}
footer{border-top-color:#ddd4ca}
.cart-drawer{background:#fffdf9}
.cart-checkout{background:var(--wine)}
.cart-continue{background:#fffdf9}
.modal{background:#fffdf9}
.dtitle{color:var(--brown)}
.dprice{color:var(--wine)}
.dbottle{background:linear-gradient(135deg,#f0ece7,#e8ddd5)}

/* Slider de preço integrado à nova identidade */
.price-fill{background:var(--wine)}
.range::-webkit-slider-thumb{background:var(--wine)}
.range::-moz-range-thumb{background:var(--wine)}
.price-edit:focus{border-color:var(--wine);box-shadow:0 0 0 2px rgba(134,21,31,.10)}

@media(max-width:720px){
  .nav{min-height:68px}
  .brand img{width:47px;height:47px}
  .hero{min-height:550px;background-position:54% 35%}
  .hero-inner{padding:58px 0 48px}
  .hero-logo{width:148px}
}


.brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}
.brand img{
  width:58px;
  height:58px;
  object-fit:contain;
  display:block;
}
.cart-top{
  min-height:38px;
  white-space:nowrap;
}
@media(max-width:720px){
  .brand img{width:48px;height:48px}
  .brand-text{font-size:11.5px;letter-spacing:.10em}
  .cart-top span:not(.cart-count){display:none}
  .cart-top{padding:8px 10px}
}


@media(max-width:520px){
  .nav{
    gap:8px;
    min-height:64px;
  }
  .links,.lang{display:none}
  .brand-text{display:block}
  .topbtn{display:none}
  .cart-top{font-size:11.5px}
}


/* ===== Cesta lateral: correção definitiva ===== */
.cart-backdrop{
  position:fixed !important;
  inset:0 !important;
  z-index:9998 !important;
  display:none !important;
}
.cart-backdrop.show{display:block !important}
.cart-drawer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;
  z-index:9999 !important;
  width:min(390px,94vw) !important;
  height:100dvh !important;
  max-height:100dvh !important;
  margin:0 !important;
  transform:translateX(105%) !important;
  transition:transform .24s ease !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border-radius:18px 0 0 18px !important;
  box-shadow:-20px 0 55px rgba(20,14,10,.22) !important;
}
.cart-drawer.open{
  transform:translateX(0) !important;
}
.cart-drawer-head{
  flex:0 0 auto !important;
  position:relative !important;
  z-index:2 !important;
}
.cart-items{
  min-height:0 !important;
  flex:1 1 auto !important;
  overflow:auto !important;
}
.cart-bottom{
  flex:0 0 auto !important;
}
@media(max-width:720px){
  .cart-drawer{
    width:100% !important;
    max-width:420px !important;
    border-radius:16px 0 0 16px !important;
  }
}

/* ===== Vinhas: decoração começa no Guia Rápido e continua no catálogo ===== */
.catalog-decor-zone{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.catalog-decor-zone > *{
  position:relative;
  z-index:2;
}
#catalogDecor{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.catalog-decor-zone #catalogDecor{
  /* no-op guard in case the node is ever moved */
}
.catalog-decor-zone::before{
  content:"";
  position:absolute;
  left:-150px;
  top:20px;
  width:520px;
  height:430px;
  background:url('../assets/vine-silver.png') center/contain no-repeat;
  opacity:.10;
  transform:rotate(-4deg);
  pointer-events:none;
  z-index:0;
}
.catalog-decor-zone::after{
  content:"";
  position:absolute;
  right:-165px;
  bottom:70px;
  width:520px;
  height:430px;
  background:url('../assets/vine-silver.png') center/contain no-repeat;
  opacity:.08;
  transform:scaleX(-1) rotate(5deg);
  pointer-events:none;
  z-index:0;
}


.catalog-decor-zone section,
.catalog-decor-zone .toolbar,
.catalog-decor-zone footer{
  position:relative;
  z-index:2;
}


/* ===== Vinhas decorativas — começam no Guia Rápido ===== */
.catalog-decor-zone{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.catalog-decor-zone::before,
.catalog-decor-zone::after{
  content:"";
  position:absolute;
  z-index:0;
  pointer-events:none;
  width:560px;
  height:430px;
  background:url("../assets/vine-silver.png") center/contain no-repeat;
  opacity:.24;
}
.catalog-decor-zone::before{
  left:-145px;
  top:12px;
}
.catalog-decor-zone::after{
  right:-145px;
  bottom:40px;
  transform:scaleX(-1);
  opacity:.19;
}
.catalog-decor-zone > *{
  position:relative;
  z-index:1;
}


/* Transição refinada do painel de filtros */
#sidebar.open .sidebar-head{
  animation:filterHeaderIn .32s ease both;
}
@keyframes filterHeaderIn{
  from{opacity:.65;transform:translateX(-8px)}
  to{opacity:1;transform:translateX(0)}
}
@media (prefers-reduced-motion:reduce){
  #sidebar,#filterBackdrop{transition:none !important}
  #sidebar.open .sidebar-head{animation:none !important}
}


/* ===== Correção exclusiva: modal "Ver vinho" ===== */
#modalbg{
  position:fixed !important;
  inset:0 !important;
  z-index:9997 !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  padding:10px !important;
  background:rgba(17,14,13,.72) !important;
  overflow:auto !important;
  overscroll-behavior:contain;
}
#modalbg.show{
  display:flex !important;
}
#modalbg .modal{
  position:relative;
  flex:0 1 auto;
  max-height:calc(100dvh - 20px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}


body.modal-open{
  overflow:hidden !important;
}


/* Correção exclusiva: separação visual entre busca/filtros e resultados */
#catalogo.toolbar{
  position:sticky;
  top:68px;
  z-index:30;
  margin-bottom:0 !important;
}
.products-area-fix{
  clear:both;
  position:relative;
  z-index:1;
}
.products-area-fix .results{
  position:relative;
  z-index:2;
  padding-top:0;
  margin-top:0;
}


#catalogo + .products-area-fix{
  margin-top:0 !important;
  padding-top:24px !important;
}
@media(max-width:720px){
  #catalogo + .products-area-fix{
    padding-top:18px !important;
  }
}


/* Correção exclusiva: botões dos filtros com mesma largura */
.filter-actions .clear,
.filter-actions .apply-filter{
  width:100%;
  min-width:0;
}


/* Correção exclusiva: janela de filtros sem sobreposição dos botões */
#sidebar{
  display:block !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-bottom:0 !important;
}
#sidebar .filter-actions{
  position:static !important;
  bottom:auto !important;
  flex:none !important;
  margin-top:0 !important;
  z-index:auto !important;
}
#sidebar .filter-box{
  overflow:visible;
}


/* ===== CASA DE VINO — NOVA DIREÇÃO EDITORIAL ===== */
:root{
  --wine:#8f101b;
  --wine-dark:#640b13;
  --ink:#2f2724;
  --muted:#746963;
  --paper:#f7f4ef;
  --card:#fffdfa;
  --line:#e5ddd4;
  --gold:#b78d51;
  --shadow:0 18px 45px rgba(40,28,22,.09);
}
body{
  background:
    radial-gradient(circle at 8% 15%,rgba(143,16,27,.04),transparent 30%),
    radial-gradient(circle at 92% 38%,rgba(183,141,81,.04),transparent 26%),
    var(--paper);
}
.site-header{
  background:rgba(252,249,245,.90)!important;
  color:var(--ink)!important;
  border-bottom:1px solid rgba(229,221,212,.72);
  backdrop-filter:blur(18px);
}
.site-header .nav{min-height:76px}
.site-header .brand img{width:58px;height:58px;display:block}
.site-header .links{color:#5c514d}
.site-header .links a:hover{color:var(--wine)}
.nav-actions{display:flex;align-items:center;gap:8px}
.topbtn{
  background:var(--wine)!important;
  color:#fff!important;
  border-radius:999px!important;
}
.cart-top{
  background:#fff!important;
  color:var(--wine)!important;
  border:1px solid #dbcac0!important;
}
.editorial-hero{
  min-height:calc(100vh - 76px);
  position:relative;
  overflow:hidden;
  background:#2d1b1a!important;
  display:flex;
  align-items:flex-end;
}
.editorial-hero .hero-image{
  position:absolute;inset:0;
  background:url("../assets/hero-casa-de-vino.png") center center/cover no-repeat;
  transform:scale(1.015);
}
.editorial-hero .hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(25,15,14,.72),rgba(25,15,14,.34) 55%,rgba(25,15,14,.10)),
             linear-gradient(0deg,rgba(16,11,10,.48),transparent 50%);
}
.editorial-hero .hero-inner{
  position:relative;z-index:2;
  max-width:840px;
  padding:92px 0 76px;
}
.editorial-hero .hero-logo{
  width:176px;
  margin-bottom:30px;
}
.editorial-hero h1{
  font:700 clamp(52.9px,8.05vw,101.2px)/.92 Georgia,serif;
  letter-spacing:-.02em;
  margin:15px 0 20px;
  max-width:900px;
}
.editorial-hero h1 em{
  font-style:normal;color:#e4c789;
}
.editorial-hero p{
  max-width:640px;
  font-size:19.55px;
  line-height:1.6;
}
.hero-scroll{
  position:absolute;right:5vw;bottom:34px;
  z-index:2;
  color:#fff;opacity:.75;
  text-transform:uppercase;
  letter-spacing:.14em;font-size:10.35px;
}
.hero-scroll span{font-size:16.1px;margin-left:7px}
.editorial-stats{
  background:#211b19!important;
  border-top:1px solid rgba(255,255,255,.06);
}
.editorial-stats-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  padding:18px 0;
}
.editorial-stats-grid>div{
  display:flex;flex-direction:column;gap:3px;
  padding:4px 18px;border-right:1px solid rgba(255,255,255,.09);
}
.editorial-stats-grid>div:last-child{border-right:0}
.editorial-stats-grid strong{color:#fff;font:600 20.7px/1 Georgia,serif}
.editorial-stats-grid span{color:#c9c0b9;font-size:10.35px;text-transform:uppercase;letter-spacing:.1em}
.brand-story{
  padding:100px 0 74px;
}
.story-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;
}
.story-copy{padding-right:6vw}
.story-copy h2,.selection-strip h2,.guide-editorial h2{
  font:700 clamp(41.4px,4.83vw,66.7px)/1.02 Georgia,serif;
  letter-spacing:-.02em;
  margin:8px 0 14px;
  color:var(--ink);
}
.story-copy p{
  color:var(--muted);font-size:18.4px;line-height:1.75;max-width:520px;
}
.story-link{
  display:inline-flex;gap:8px;align-items:center;
  color:var(--wine);font-size:12.65px;font-weight:900;
  margin-top:18px;
}
.story-photo{
  aspect-ratio:1.04;
  border-radius:24px;overflow:hidden;
  box-shadow:var(--shadow);
}
.story-photo img{width:100%;height:100%;object-fit:cover;display:block}
.selection-strip{
  padding:54px 0 68px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.selection-strip .container{
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;
}
.selection-strip .strip-copy p{
  color:var(--muted);line-height:1.65;max-width:480px;
}
.strip-images{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
}
.strip-images img{
  width:100%;height:310px;object-fit:cover;border-radius:18px;
  filter:saturate(.94);
}
.strip-images img+img{margin-top:34px}
.guide-editorial{
  padding:56px 0 30px;
}
.occasion-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px;
}
.occasion-card{
  background:rgba(255,253,249,.82);
  border:1px solid var(--line);
  border-radius:18px;
  padding:20px;
  display:flex;flex-direction:column;gap:6px;
  transition:.2s ease;
}
.occasion-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 24px rgba(40,28,22,.07);
}
.occasion-card span{font-size:23px}
.occasion-card b{font-size:13.8px;color:var(--ink)}
.occasion-card small{font-size:10.35px;color:var(--muted)}
.catalog-decor-zone{
  overflow:hidden;
}
.catalog-decor-zone::before,
.catalog-decor-zone::after{
  opacity:.14!important;
}
.products-area-fix{
  padding-top:34px!important;
}
.products-area-fix .results{margin-bottom:16px}
.card{
  border-radius:19px!important;
  box-shadow:0 8px 24px rgba(40,28,22,.055)!important;
}
.bottle{
  height:230px!important;min-height:230px!important;
}
.bottle.has-image img.wine-photo{
  max-width:90%!important;max-height:214px!important;
}
footer{
  background:#f0ebe5;
  padding:54px 0 70px!important;
  border-top:1px solid var(--line);
}
.footer-brand{
  display:flex;align-items:center;gap:14px;
}
.footer-brand img{width:74px;height:74px;object-fit:contain}
.footer-brand span{font-size:11.5px;color:var(--muted)}
.footer-note{font-size:11.5px;color:#847a73}
@media(max-width:900px){
  .editorial-stats-grid{grid-template-columns:1fr 1fr;gap:10px}
  .editorial-stats-grid>div:nth-child(2){border-right:0}
  .story-grid,.selection-strip .container{grid-template-columns:1fr;gap:26px}
  .story-copy{padding-right:0}
  .occasion-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .site-header .nav{min-height:64px}
  .site-header .links{display:none}
  .topbtn{display:none}
  .editorial-hero{min-height:670px}
  .editorial-hero .hero-inner{padding:80px 0 54px}
  .editorial-hero .hero-logo{width:146px;margin-bottom:22px}
  .editorial-hero h1{font-size:59.8px}
  .editorial-hero p{font-size:17.25px}
  .hero-scroll{right:22px}
  .brand-story{padding:64px 0 50px}
  .selection-strip{padding:48px 0}
  .strip-images img{height:240px}
  .occasion-grid{grid-template-columns:1fr 1fr}
  .bottle{height:205px!important;min-height:205px!important}
}


/* =========================================================
   CASA DE VINO — TRANSIÇÕES DE SEÇÕES + ZOOM DOS PRODUTOS
   ========================================================= */

/* Seções entram suavemente quando chegam à viewport */
.reveal-on-scroll{
  opacity:0;
  transform:translateY(28px);
  transition:
    opacity .65s ease,
    transform .65s cubic-bezier(.22,.61,.36,1);
  will-change:opacity,transform;
}
.reveal-on-scroll.is-visible{
  opacity:1;
  transform:translateY(0);
}

/* Entrada alternativa para blocos visuais */
.reveal-soft{
  opacity:0;
  transform:scale(.985);
  transition:
    opacity .75s ease,
    transform .75s cubic-bezier(.22,.61,.36,1);
}
.reveal-soft.is-visible{
  opacity:1;
  transform:scale(1);
}

/* Zoom elegante no produto ao passar o mouse */
.card{
  transition:
    transform .24s ease,
    box-shadow .24s ease;
}
.card .bottle{
  overflow:hidden;
}
.card .bottle img.wine-photo{
  transition:
    transform .28s cubic-bezier(.22,.61,.36,1),
    filter .28s ease;
  transform-origin:center center;
}
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 34px rgba(40,28,22,.12)!important;
}
.card:hover .bottle img.wine-photo{
  transform:scale(1.055);
  filter:saturate(1.03);
}

/* Em cards sem foto, não criamos zoom em elementos decorativos */
.card:not(:has(img.wine-photo)):hover{
  transform:translateY(-4px);
}

/* Respeita acessibilidade / usuários que pedem menos movimento */
@media (prefers-reduced-motion:reduce){
  .reveal-on-scroll,
  .reveal-soft{
    opacity:1;
    transform:none;
    transition:none;
  }
  .card,
  .card:hover,
  .card .bottle img.wine-photo,
  .card:hover .bottle img.wine-photo{
    transform:none!important;
    transition:none!important;
    filter:none!important;
  }
}

/* No toque não há hover real; preservamos somente uma micro-interação */
@media (hover:none){
  .card:hover{
    transform:none;
    box-shadow:0 8px 24px rgba(40,28,22,.055)!important;
  }
  .card:hover .bottle img.wine-photo{
    transform:none;
    filter:none;
  }
}


/* ===== Catálogo: paginação + carregamento ao entrar na viewport ===== */
#grid.catalog-pending{
  min-height:240px;
}
#grid .product-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:
    opacity .42s ease,
    transform .42s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--product-delay,0ms);
}
#grid .product-reveal.product-ready{
  opacity:1;
  transform:translateY(0);
}
.pagination{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:6px;
  min-height:34px;
  margin:24px 0 8px;
}
.pagination button{
  min-width:32px;
  height:32px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  border-radius:9px;
  font-size:11.5px;
  font-weight:900;
}
.pagination button:hover{border-color:var(--wine)}
.pagination button.active{
  color:#fff;
  background:var(--wine);
  border-color:var(--wine);
}
.pagination button:disabled{
  opacity:.45;
  cursor:default;
}
.pagination .page-info{
  color:var(--muted);
  font-size:10.35px;
  margin:0 4px;
}
@media(max-width:720px){
  .pagination{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){
  #grid .product-reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* Grade de produtos: 4 por linha no desktop */
.products-area-fix .grid,
#grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
@media(max-width:1100px){
  .products-area-fix .grid,
  #grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:820px){
  .products-area-fix .grid,
  #grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:520px){
  .products-area-fix .grid,
  #grid{
    grid-template-columns:1fr !important;
  }
}


/* Favorito removido dos cards */
.products-area-fix .fav{
  display:none !important;
}


/* =========================================================
   CASA DE VINO 3.0 — VISUAL PREMIUM
   Camada visual/estrutural. IDs e fluxos funcionais existentes
   foram preservados.
   ========================================================= */

:root{
  --v30-wine:#7d101b;
  --v30-wine-dark:#540a12;
  --v30-ink:#292320;
  --v30-muted:#71665f;
  --v30-paper:#f7f3ee;
  --v30-cream:#fbf9f5;
  --v30-line:#e4dbd2;
  --v30-gold:#b99763;
  --v30-shadow:0 18px 55px rgba(42,28,20,.10);
}

/* HEADER */
.v30-header{
  position:sticky;
  top:0;
  z-index:200;
  background:rgba(251,249,245,.88);
  border-bottom:1px solid rgba(228,219,210,.72);
  backdrop-filter:blur(18px);
}
.v30-nav{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.v30-brand img{
  display:block;
  width:62px;
  height:62px;
  object-fit:contain;
}
.v30-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:30px;
  flex:1;
}
.v30-links a{
  position:relative;
  color:#4f4742;
  font-size:10.35px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:8px 0;
}
.v30-links a::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:2px;
  height:1px;
  background:var(--v30-wine);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
}
.v30-links a:hover::after{transform:scaleX(1)}
.v30-actions{display:flex;align-items:center;gap:8px}
.v30-explore{
  border:0;
  background:var(--v30-wine);
  color:#fff;
  border-radius:999px;
  padding:10px 15px;
  font-size:10.35px;
  font-weight:900;
  letter-spacing:.03em;
  transition:.2s ease;
}
.v30-explore:hover{
  background:var(--v30-wine-dark);
  transform:translateY(-1px);
}
.v30-cart{
  border:1px solid #d9cbc1!important;
  background:#fff!important;
  color:var(--v30-ink)!important;
  border-radius:999px!important;
  min-height:38px;
}
.v30-cart-icon{font-size:13.8px}

/* HERO */
.v30-hero{
  position:relative;
  min-height:calc(100vh - 76px);
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#fff;
  background:#241716;
}
.v30-hero-photo{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(24,13,12,.78),rgba(24,13,12,.36) 58%,rgba(24,13,12,.10)),
    linear-gradient(0deg,rgba(18,10,9,.55),transparent 55%),
    url("../assets/hero-casa-de-vino.png") center/cover no-repeat;
  transform:scale(1.018);
}
.v30-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:rgba(255,255,255,.18);
}
.v30-hero-inner{
  position:relative;
  z-index:2;
  max-width:790px;
  padding:92px 0 110px;
}
.v30-eyebrow{
  font-size:9.2px;
  letter-spacing:.28em;
  font-weight:900;
  color:#dfc9aa;
  margin-bottom:26px;
}
.v30-hero-logo{
  width:160px;
  display:block;
  margin-bottom:28px;
  filter:drop-shadow(0 8px 25px rgba(0,0,0,.22));
}
.v30-hero h1{
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(62.1px,8.05vw,110.4px);
  line-height:.91;
  letter-spacing:-.035em;
  margin:0 0 22px;
  font-weight:700;
}
.v30-hero h1 em{
  color:#e0bf83;
  font-style:normal;
}
.v30-hero-inner p{
  max-width:610px;
  color:rgba(255,255,255,.84);
  font-size:17.25px;
  line-height:1.7;
}
.v30-hero-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:30px;
}
.v30-btn-primary,.v30-btn-ghost{
  display:inline-flex;
  align-items:center;
  gap:9px;
  border-radius:999px;
  padding:12px 17px;
  font-size:10.35px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  transition:.22s ease;
}
.v30-btn-primary{
  background:#fff;
  color:var(--v30-wine);
}
.v30-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.16)}
.v30-btn-ghost{
  color:#fff;
  border:1px solid rgba(255,255,255,.42);
}
.v30-btn-ghost:hover{background:rgba(255,255,255,.09)}
.v30-hero-meta{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:26px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:13px;
  color:rgba(255,255,255,.64);
  font-size:9.2px;
  letter-spacing:.11em;
  text-transform:uppercase;
  white-space:nowrap;
}
.v30-hero-meta i{
  width:3px;height:3px;border-radius:50%;
  background:#d3b67e;
}

/* DISCOVERY */
.v30-discovery{
  position:relative;
  padding:110px 0 100px;
  background:var(--v30-paper);
  overflow:hidden;
}
.v30-discovery::before{
  content:"";
  position:absolute;
  right:-190px;top:20px;
  width:560px;height:430px;
  background:url("../assets/vine-silver.png") center/contain no-repeat;
  opacity:.10;
  pointer-events:none;
}
.v30-section-kicker{
  font-size:9.2px;
  color:var(--v30-wine);
  font-weight:900;
  letter-spacing:.26em;
  text-transform:uppercase;
}
.v30-discovery-head{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:65px;
  align-items:end;
  margin-top:14px;
}
.v30-discovery h2,
.v30-guide-head h2,
.v30-origin-intro h2,
.v30-catalog-intro h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(44.85px,5.175vw,74.75px);
  line-height:.98;
  letter-spacing:-.025em;
  color:var(--v30-ink);
  margin:0;
}
.v30-discovery h2 em,
.v30-origin-intro h2 em{
  color:var(--v30-wine);
  font-style:normal;
}
.v30-discovery-head p{
  color:var(--v30-muted);
  line-height:1.75;
  font-size:16.1px;
  max-width:460px;
  margin:0;
}
.v30-text-link{
  display:inline-flex;
  gap:8px;
  margin-top:18px;
  color:var(--v30-wine);
  font-size:10.35px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.v30-discovery-grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:14px;
  margin-top:50px;
}
.v30-discovery-main{
  position:relative;
  min-height:560px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--v30-shadow);
}
.v30-discovery-main img{
  width:100%;height:100%;object-fit:cover;
  display:block;
  transition:transform .75s cubic-bezier(.22,.61,.36,1);
}
.v30-discovery-main:hover img{transform:scale(1.025)}
.v30-discovery-main::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(25,15,13,.66),transparent 55%);
}
.v30-discovery-caption{
  position:absolute;
  left:28px;right:28px;bottom:26px;
  z-index:2;color:#fff;
  display:flex;flex-direction:column;gap:5px;
}
.v30-discovery-caption span,
.v30-discovery-side span{
  font-size:8.05px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#dfc9aa;
  font-weight:900;
}
.v30-discovery-caption strong{
  max-width:430px;
  font-family:Georgia,serif;
  font-size:28.75px;
  line-height:1.08;
}
.v30-discovery-side{
  display:grid;
  gap:14px;
}
.v30-discovery-side article{
  position:relative;
  min-height:273px;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 12px 35px rgba(42,28,20,.08);
}
.v30-discovery-side img{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;
  transition:transform .65s ease;
}
.v30-discovery-side article:hover img{transform:scale(1.035)}
.v30-discovery-side article::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(25,15,13,.62),transparent 60%);
}
.v30-discovery-side article div{
  position:absolute;left:20px;right:20px;bottom:18px;z-index:2;
  display:flex;flex-direction:column;gap:4px;color:#fff;
}
.v30-discovery-side strong{font-family:Georgia,serif;font-size:20.7px}

/* GUIDE */
#guia{
  padding:84px 0 95px!important;
  background:#fffdfa;
  border-top:1px solid var(--v30-line);
  border-bottom:1px solid var(--v30-line);
}
.v30-guide-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:40px;
  margin-top:12px;
}
.v30-guide-head p{
  color:var(--v30-muted);font-size:14.95px;max-width:350px;
}
.v30-occasion-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:33px;
}
.v30-occasion-card{
  min-height:150px;
  display:flex;flex-direction:column;
  justify-content:space-between;
  border:1px solid var(--v30-line);
  background:#fff;
  border-radius:18px;
  padding:18px;
  transition:.22s ease;
}
.v30-occasion-card:hover{
  border-color:#cbbcae;
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(42,28,20,.07);
}
.v30-occasion-card span{
  color:var(--v30-gold);
  font-size:10.35px;font-weight:900;
  letter-spacing:.15em;
}
.v30-occasion-card strong{
  font-family:Georgia,serif;
  font-size:21.85px;color:var(--v30-ink);
}
.v30-occasion-card small{
  color:var(--v30-muted);
  font-size:10.35px;line-height:1.45;
}

/* ORIGIN */
#paises{
  background:var(--v30-paper);
  padding:86px 0 82px!important;
}
.v30-origin-intro{
  max-width:650px;
}
.v30-origin-intro h2{margin-top:10px}
.v30-origin-intro p{
  color:var(--v30-muted);
  font-size:14.95px;line-height:1.7;
  max-width:470px;
  margin-top:15px;
}

/* CATALOG */
.v30-catalog-toolbar{
  top:76px!important;
  z-index:80!important;
  border-top:1px solid var(--v30-line);
  border-bottom:1px solid var(--v30-line);
  background:rgba(247,243,238,.94)!important;
  backdrop-filter:blur(14px);
}
.v30-products-start{
  background:var(--v30-paper);
  padding-top:28px!important;
}
.v30-catalog-intro{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:35px;
  padding:65px 0 26px;
}
.v30-catalog-intro h2{
  font-size:clamp(46px,5.175vw,69px);
  margin-top:8px;
}
.v30-catalog-intro p{
  max-width:400px;
  color:var(--v30-muted);
  font-size:14.95px;
  line-height:1.65;
  margin:0;
}
.v30-products-start .grid{
  gap:15px!important;
}
.v30-products-start .card{
  border-radius:18px!important;
  background:#fffdfa!important;
  border-color:rgba(228,219,210,.92)!important;
  box-shadow:0 9px 26px rgba(42,28,20,.055)!important;
}
.v30-products-start .card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 36px rgba(42,28,20,.10)!important;
}
.v30-products-start .bottle{
  height:235px!important;
  min-height:235px!important;
  background:linear-gradient(135deg,#f1ebe5,#e6ddd4)!important;
}
.v30-products-start .bottle.has-image img.wine-photo{
  max-width:92%!important;
  max-height:222px!important;
  border-radius:14px;
  transition:transform .28s cubic-bezier(.22,.61,.36,1);
}
.v30-products-start .card:hover img.wine-photo{
  transform:scale(1.055);
}
.v30-products-start .body{padding:14px!important}
.v30-products-start .name{
  font-family:Georgia,serif;
  font-size:17.25px!important;
}
.v30-products-start .producer{
  color:#7b7069;
}
.v30-products-start .price{
  color:var(--v30-wine)!important;
  font-size:18.4px!important;
}
.v30-products-start .view{
  background:var(--v30-ink)!important;
  border-radius:999px!important;
}
.v30-products-start .cart-add{
  background:var(--v30-wine)!important;
}

/* EXISTING ANIMATION SYSTEM — preserve behavior, refine timing */
.reveal-on-scroll,
.reveal-soft{
  will-change:opacity,transform;
}

/* RESPONSIVE */
@media(max-width:1050px){
  .v30-links{gap:18px}
  .v30-discovery-head{grid-template-columns:1fr .8fr;gap:35px}
  .v30-discovery-grid{grid-template-columns:1fr}
  .v30-discovery-side{grid-template-columns:1fr 1fr}
  .v30-discovery-side article{min-height:250px}
}
@media(max-width:820px){
  .v30-links{display:none}
  .v30-discovery-head{grid-template-columns:1fr;gap:16px}
  .v30-guide-head{display:block}
  .v30-occasion-grid{grid-template-columns:1fr 1fr}
  .v30-catalog-intro{display:block}
  .v30-catalog-intro p{margin-top:12px}
}
@media(max-width:720px){
  .v30-nav{min-height:66px}
  .v30-brand img{width:54px;height:54px}
  .v30-explore{display:none}
  .v30-hero{min-height:720px}
  .v30-hero-inner{padding:85px 0 100px}
  .v30-hero-logo{width:140px}
  .v30-hero h1{font-size:62.1px}
  .v30-hero-inner p{font-size:16.1px}
  .v30-hero-actions{flex-wrap:wrap}
  .v30-hero-meta{
    left:22px;right:22px;transform:none;
    justify-content:flex-start;
    flex-wrap:wrap;
    bottom:21px;
    white-space:normal;
  }
  .v30-discovery{padding:75px 0}
  .v30-discovery-grid{margin-top:32px}
  .v30-discovery-main{min-height:430px}
  .v30-discovery-side article{min-height:215px}
  .v30-occasion-grid{grid-template-columns:1fr 1fr}
  #paises{padding:65px 0!important}
  .v30-products-start .bottle{
    height:205px!important;
    min-height:205px!important;
  }
}
@media(max-width:500px){
  .v30-cart span:not(.cart-count):not(.v30-cart-icon){display:none}
  .v30-occasion-grid{grid-template-columns:1fr}
  .v30-discovery-side{grid-template-columns:1fr}
  .v30-discovery-side article{min-height:235px}
}

/* RESPEITO A REDUÇÃO DE MOVIMENTO */
@media(prefers-reduced-motion:reduce){
  .v30-btn-primary,.v30-btn-ghost,.v30-explore,.v30-occasion-card,
  .v30-discovery-main img,.v30-discovery-side img,.v30-products-start .card,
  .v30-products-start .card:hover img.wine-photo{
    transition:none!important;
    transform:none!important;
  }
}


/* ===== CASA DE VINO 3.0 — ETAPA 2 ===== */
.v30-origin-hero{padding:12px 0 34px}
.v30-origin-title-row{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:end;margin-top:10px}
.v30-origin-title-row h2,.v30-catalog-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(46px,5.52vw,73.6px);line-height:.96;letter-spacing:-.028em;color:var(--v30-ink);margin:0}
.v30-origin-title-row h2 em{color:var(--v30-wine);font-style:normal}
.v30-origin-copy{padding-bottom:6px;max-width:430px}
.v30-origin-copy p{color:var(--v30-muted);font-size:16.1px;line-height:1.7;margin:0 0 8px}
.v30-origin-copy span{color:#9a8c82;font-size:10.35px;letter-spacing:.08em;text-transform:uppercase}
.v30-origin-note{display:flex;align-items:center;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid var(--v30-line);color:#8a7b71;font-size:10.35px;letter-spacing:.08em;text-transform:uppercase}
.v30-origin-note-line{width:26px;height:1px;background:var(--v30-gold)}
.v30-catalog-heading{max-width:760px}
.v30-catalog-heading h2{margin:7px 0 10px}
.v30-catalog-heading p{max-width:650px;margin:0;color:var(--v30-muted);font-size:14.95px;line-height:1.7}
.v30-catalog-stat{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-bottom:3px}
.v30-catalog-stat strong{font-family:Georgia,"Times New Roman",serif;color:var(--v30-wine);font-size:32.2px;line-height:1}
.v30-catalog-stat span{color:#88786e;font-size:9.2px;text-transform:uppercase;letter-spacing:.14em}
.v30-catalog-helper{display:flex;align-items:center;justify-content:flex-end;padding:0 0 10px;color:#8a7b71;font-size:10.35px}
.v30-catalog-helper::before{content:"";width:22px;height:1px;background:var(--v30-gold);margin-right:8px}
.v30-products-start .results{background:rgba(255,253,249,.72);border-top:1px solid var(--v30-line);border-bottom:1px solid var(--v30-line);padding:11px 0!important}
.v30-products-start .results .count{font-weight:900;color:var(--v30-ink)}
.v30-products-start .results .sort{border-radius:999px!important;background:#fff!important}
.v30-products-start .card{position:relative}
.v30-products-start .bottle{border-bottom:1px solid rgba(228,219,210,.72)}
.v30-products-start .body{min-height:176px}
.v30-products-start .meta .tag{background:#f5efe9;color:#6b6058}
.v30-products-start .foot{padding-top:7px}
.v30-products-start .view{transition:transform .18s ease,background .18s ease}
.v30-products-start .view:hover{transform:translateY(-1px)}
.v30-products-start .cart-add{width:30px!important}
footer{background:#211b19!important;color:#fff!important;padding:72px 0 34px!important;border-top:1px solid rgba(255,255,255,.08)}
.v30-footer-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:40px}
.v30-footer-brand{display:flex;align-items:center;gap:18px}
.v30-footer-brand img{width:86px;height:86px;object-fit:contain}
.v30-footer-kicker{font-size:10.35px;letter-spacing:.2em;font-weight:900}
.v30-footer-brand p{color:rgba(255,255,255,.55);font-size:11.5px;margin:6px 0 0}
.v30-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px;align-content:start;justify-self:end}
.v30-footer-links a{color:rgba(255,255,255,.72);font-size:10.35px;text-transform:uppercase;letter-spacing:.12em;transition:color .18s ease}
.v30-footer-links a:hover{color:#fff}
.v30-footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:15px;margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.38);font-size:9.2px;text-transform:uppercase;letter-spacing:.09em}
@media(max-width:900px){
  .v30-origin-title-row{grid-template-columns:1fr;gap:22px}
  .v30-catalog-stat{align-items:flex-start;margin-top:16px}
  .v30-footer-wrap{grid-template-columns:1fr}
  .v30-footer-links{justify-self:start}
}
@media(max-width:720px){
  .v30-origin-title-row h2,.v30-catalog-heading h2{font-size:52.9px}
  .v30-catalog-helper{justify-content:flex-start}
  .v30-footer-wrap{gap:28px}
  .v30-footer-links{grid-template-columns:1fr 1fr;width:100%}
  .v30-footer-bottom{flex-direction:column}
}


/* =========================================================
   CASA DE VINO 3.0 — ETAPA 3
   Catálogo premium: cards, imagens, paginação e microinterações
   ========================================================= */

.v30-catalog-rule{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
  margin:0 0 22px;
  color:#988b81;
  font-size:9.2px;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.v30-catalog-rule span:first-child,
.v30-catalog-rule span:last-child{
  height:1px;
  background:var(--v30-line);
}

/* Result bar */
.v30-products-start .results{
  min-height:52px;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.v30-products-start .results .count{
  font-size:11.5px;
  letter-spacing:.04em;
}
.v30-products-start .results .sort,
.v30-products-start .results #pageSize{
  min-height:34px;
  padding:0 12px;
  border:1px solid var(--v30-line);
  font-size:10.35px;
  color:var(--v30-ink);
  box-shadow:none;
}

/* Product grid */
.v30-products-start .grid{
  align-items:stretch;
}
.v30-products-start .card{
  overflow:hidden;
  transform:translateZ(0);
  background:linear-gradient(180deg,#fffdfa 0%,#fffdfa 77%,#fbf8f4 100%)!important;
}

/* Image stage */
.v30-products-start .bottle{
  height:248px!important;
  min-height:248px!important;
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.75),transparent 52%),
    linear-gradient(145deg,#f1ebe5,#e8ded5)!important;
}
.v30-products-start .bottle::after{
  content:"";
  position:absolute;
  inset:auto 14% 10px;
  height:16px;
  border-radius:50%;
  background:rgba(67,50,40,.08);
  filter:blur(8px);
  z-index:0;
}
.v30-products-start .bottle.has-image img.wine-photo{
  position:relative;
  z-index:1;
  max-width:88%!important;
  max-height:226px!important;
  border-radius:15px;
  box-shadow:0 10px 25px rgba(42,28,20,.12);
  transition:transform .35s cubic-bezier(.22,.61,.36,1),filter .35s ease;
}
.v30-products-start .card:hover .bottle.has-image img.wine-photo{
  transform:scale(1.075) translateY(-2px);
  filter:saturate(1.02) contrast(1.01);
}
.v30-products-start .country{
  top:12px!important;
  left:12px!important;
  background:rgba(255,253,249,.91)!important;
  border:1px solid rgba(228,219,210,.86);
  box-shadow:0 5px 12px rgba(42,28,20,.06)!important;
  padding:6px 8px!important;
  font-size:9.2px!important;
}
.v30-products-start .body{
  padding:15px 15px 16px!important;
  min-height:188px;
}
.v30-products-start .name{
  font-size:18.4px!important;
  line-height:1.15!important;
}
.v30-products-start .producer{
  font-size:10.35px!important;
  line-height:1.45;
}
.v30-products-start .meta{
  margin-top:3px;
}
.v30-products-start .meta .tag{
  border:1px solid #ebe2d9;
  padding:4px 7px;
  font-size:8.05px;
}
.v30-products-start .foot{
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid #eee6de;
}
.v30-products-start .price{
  font-size:19.55px!important;
}
.v30-products-start .price small{
  font-size:8.05px!important;
  letter-spacing:.03em;
  color:#9b7851!important;
}
.v30-products-start .view{
  min-height:30px;
  padding:0 11px!important;
  font-size:9.2px!important;
  letter-spacing:.02em;
}
.v30-products-start .cart-add{
  width:31px!important;
  min-width:31px;
}

/* Cascade reveal: keep the staged appearance refined */
#grid .product-reveal{
  transition:
    opacity .46s ease,
    transform .46s cubic-bezier(.22,.61,.36,1);
}

/* Pagination */
.v30-products-start #pagination{
  margin:28px 0 8px!important;
  padding-top:17px;
  border-top:1px solid var(--v30-line);
}
.v30-products-start #pagination button{
  min-width:34px;
  height:34px;
  border-radius:10px;
  border-color:#e1d7cf;
  background:#fffdfa;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
.v30-products-start #pagination button:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:#cbbcae;
}
.v30-products-start #pagination button.active{
  background:var(--v30-wine);
  border-color:var(--v30-wine);
  color:#fff;
}
.v30-products-start #pagination .page-info{
  color:#8d8178;
}

/* subtle hover on whole card, without changing its functional area */
@media (hover:hover){
  .v30-products-start .card{
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
  }
  .v30-products-start .card:hover{
    transform:translateY(-5px);
    border-color:#d8ccc2!important;
    box-shadow:0 18px 38px rgba(42,28,20,.11)!important;
  }
}

/* mobile */
@media(max-width:720px){
  .v30-catalog-rule{margin-bottom:16px}
  .v30-products-start .results{
    flex-wrap:wrap;
  }
  .v30-products-start .bottle{
    height:210px!important;
    min-height:210px!important;
  }
  .v30-products-start .bottle.has-image img.wine-photo{
    max-height:192px!important;
  }
  .v30-products-start .body{
    min-height:170px;
    padding:13px!important;
  }
}
@media(max-width:460px){
  .v30-products-start .bottle{
    height:190px!important;
    min-height:190px!important;
  }
  .v30-products-start .bottle.has-image img.wine-photo{
    max-height:176px!important;
  }
}


/* =========================================================
   CASA DE VINO 3.0 — ETAPA 4
   Ficha do vinho + Minha cesta
   ========================================================= */

/* ---------- FICHA ---------- */
#modalbg{
  background:
    radial-gradient(circle at 50% 0%,rgba(143,16,27,.10),transparent 40%),
    rgba(24,17,15,.72)!important;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
#modalbg .modal{
  width:min(900px,calc(100vw - 26px))!important;
  max-height:min(86vh,780px)!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#fffdfa!important;
  box-shadow:0 32px 80px rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.55);
  transform:translateY(16px) scale(.985);
  opacity:0;
  transition:
    transform .28s cubic-bezier(.22,.61,.36,1),
    opacity .22s ease;
}
#modalbg.show .modal{
  transform:translateY(0) scale(1);
  opacity:1;
}
#modalbg .mhead{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  background:#fffdfa;
  border-bottom:1px solid #eee6de;
}
#modalbg .mhead .kicker{
  color:var(--v30-wine);
  font-size:9.2px;
  letter-spacing:.2em;
  font-weight:900;
  text-transform:uppercase;
}
#modalbg .close{
  width:34px;
  height:34px;
  border:1px solid #e4dbd2;
  border-radius:50%;
  background:#fff;
  color:#4b433e;
  transition:.18s ease;
}
#modalbg .close:hover{
  background:var(--v30-wine);
  color:#fff;
  border-color:var(--v30-wine);
  transform:rotate(4deg);
}
#modalbg .mbody{
  min-height:0;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:0!important;
}
#modalbg .dbottle{
  min-height:340px;
  background:
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.84),transparent 54%),
    linear-gradient(145deg,#f2ece6,#e7ddd4);
}
#modalbg .dbottle img{
  max-height:315px!important;
  border-radius:16px;
  box-shadow:0 14px 30px rgba(42,28,20,.13);
}
#modalbg .mbody .wine-detail{
  padding:24px 26px 28px;
}
#modalbg .mbody h2{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--v30-ink);
  letter-spacing:-.02em;
}
#modalbg .mbody .wine-price{
  color:var(--v30-wine);
  font-family:Georgia,"Times New Roman",serif;
}
#modalbg .mbody .btn{
  border-radius:999px!important;
  min-height:40px;
  padding:0 15px!important;
  transition:.18s ease;
}
#modalbg .mbody .btn:hover{
  transform:translateY(-1px);
}
@media(max-width:720px){
  #modalbg{
    align-items:flex-end!important;
    padding:0!important;
  }
  #modalbg .modal{
    width:100%!important;
    max-height:92vh!important;
    border-radius:22px 22px 0 0!important;
  }
  #modalbg .dbottle{
    min-height:250px;
  }
}

/* ---------- CESTA ---------- */
#cartBackdrop{
  background:rgba(20,14,12,.52)!important;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
#cartDrawer{
  width:min(440px,94vw)!important;
  background:#fffdfa!important;
  border-left:1px solid #eadfd6;
  box-shadow:-28px 0 65px rgba(30,20,16,.20)!important;
}
#cartDrawer .cart-drawer-head{
  position:relative;
  padding:21px 21px 17px;
  background:
    linear-gradient(180deg,#fffdfa,#f8f4ef);
  border-bottom:1px solid #eee6de;
}
.v30-cart-accent{
  color:var(--v30-wine);
  font-size:8.05px;
  letter-spacing:.22em;
  font-weight:900;
  margin-bottom:7px;
}
#cartDrawer .cart-drawer-head h3{
  font-family:Georgia,"Times New Roman",serif;
  font-size:31.05px!important;
  line-height:1;
  color:var(--v30-ink);
  margin:0;
}
#cartDrawer .cart-subtitle{
  color:#8b7d74;
  font-size:10.35px;
}
#cartDrawer .cart-close{
  width:34px!important;
  height:34px!important;
  border:1px solid #e3d9d0!important;
  background:#fff!important;
  border-radius:50%!important;
  color:#4b433e!important;
  transition:.18s ease;
}
#cartDrawer .cart-close:hover{
  background:var(--v30-wine)!important;
  color:#fff!important;
  border-color:var(--v30-wine)!important;
}
#cartDrawer .cart-items{
  padding:12px 14px 10px;
}
#cartDrawer .cart-row{
  border:1px solid #e9e1da;
  border-radius:15px;
  background:#fff;
  padding:13px;
  margin-bottom:9px;
  box-shadow:0 4px 12px rgba(42,28,20,.035);
  transition:.18s ease;
}
#cartDrawer .cart-row:hover{
  border-color:#d9cbc0;
  box-shadow:0 10px 20px rgba(42,28,20,.06);
}
#cartDrawer .cart-row-name{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--v30-ink);
  font-size:16.1px;
}
#cartDrawer .cart-row-meta{
  color:#8b7d74;
  font-size:9.2px;
  margin-top:3px;
}
#cartDrawer .cart-remove{
  width:28px!important;
  height:28px!important;
  border:1px solid #e4d9d0!important;
  background:#fff!important;
  color:#7d6e66!important;
  border-radius:50%!important;
  transition:.18s ease;
}
#cartDrawer .cart-remove:hover{
  background:#f5e8e8!important;
  color:var(--v30-wine)!important;
  border-color:#ddc2c2!important;
}
#cartDrawer .cart-qty{
  border:1px solid #e2d8cf;
  border-radius:999px;
  background:#fffdfa;
}
#cartDrawer .cart-qty button{
  transition:.15s ease;
}
#cartDrawer .cart-qty button:hover{
  color:var(--v30-wine);
}
#cartDrawer .cart-row-price{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--v30-wine);
  font-size:16.1px;
}
#cartDrawer .cart-bottom{
  padding:15px 17px 18px!important;
  border-top:1px solid #e8dfd6;
  background:#fffdfa;
}
#cartDrawer .cart-total-row strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:26.45px;
  color:var(--v30-ink);
}
#cartDrawer .cart-note{
  color:#8b7d74;
  font-size:9.2px;
  line-height:1.5;
  margin:8px 0 11px;
}
#cartDrawer .cart-checkout{
  width:100%;
  min-height:44px;
  border-radius:999px!important;
  background:var(--v30-wine)!important;
  font-size:10.35px!important;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  transition:.2s ease;
}
#cartDrawer .cart-checkout:hover{
  background:var(--v30-wine-dark)!important;
  transform:translateY(-1px);
}
#cartDrawer .cart-continue{
  width:100%;
  margin-top:8px;
  min-height:38px;
  border-radius:999px!important;
  border:1px solid #e1d6cc!important;
  background:#fff!important;
  color:#4e4540!important;
  font-size:10.35px!important;
  transition:.18s ease;
}
#cartDrawer .cart-continue:hover{
  border-color:#cbbcae!important;
}

/* abertura lateral mais elegante */
#cartDrawer{
  transform:translateX(105%);
  transition:transform .3s cubic-bezier(.22,.61,.36,1);
}
#cartDrawer.open{
  transform:translateX(0);
}
#cartBackdrop{
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease,visibility 0s linear .25s;
}
#cartBackdrop.show{
  opacity:1;
  visibility:visible;
  transition:opacity .25s ease,visibility 0s linear 0s;
}

@media(max-width:720px){
  #cartDrawer{
    width:100%!important;
    max-width:430px;
  }
}

@media(prefers-reduced-motion:reduce){
  #modalbg .modal,
  #modalbg .close,
  #cartDrawer,
  #cartBackdrop,
  #cartDrawer .cart-row,
  #cartDrawer .cart-remove,
  #cartDrawer .cart-checkout,
  #cartDrawer .cart-continue{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   CASA DE VINO 3.0 — ETAPA 5 / EXPERIÊNCIA MOBILE
   ========================================================= */
.v30-mobile-menu,.v30-mobile-panel,.v30-mobile-backdrop{display:none}
@media(max-width:720px){
  header .nav{min-height:66px!important;padding:0 14px!important;gap:8px!important}
  header .brand img{width:52px!important;height:52px!important}
  header .nav-actions{margin-left:auto;gap:6px!important}
  header .topbtn{display:none!important}
  header .cart-top{min-height:36px!important;padding:7px 9px!important}
  .v30-mobile-menu{
    display:grid!important;place-items:center;
    width:36px;height:36px;border:1px solid #dccfc5;
    background:#fff;color:var(--v30-ink);border-radius:50%;
    font-size:19.55px;line-height:1;transition:.18s ease;
  }
  .v30-mobile-panel{
    position:fixed;top:0;left:0;bottom:0;
    width:min(340px,88vw);z-index:300;
    display:flex;flex-direction:column;
    padding:18px 16px 22px;background:#fffdfa;
    box-shadow:18px 0 55px rgba(26,17,14,.20);
    transform:translateX(-105%);visibility:hidden;
    transition:transform .28s cubic-bezier(.22,.61,.36,1),visibility 0s linear .28s;
  }
  .v30-mobile-panel.open{transform:translateX(0);visibility:visible;transition:transform .28s cubic-bezier(.22,.61,.36,1),visibility 0s linear 0s}
  .v30-mobile-panel-head{
    display:flex;justify-content:space-between;align-items:center;
    padding-bottom:17px;border-bottom:1px solid #e8dfd7;
    color:var(--v30-wine);font-size:9.2px;font-weight:900;letter-spacing:.22em;
  }
  .v30-mobile-panel-head button{
    width:34px;height:34px;border:1px solid #e2d8cf;background:#fff;border-radius:50%;color:#4c4540
  }
  .v30-mobile-links{display:flex;flex-direction:column;padding-top:18px}
  .v30-mobile-links a{
    padding:15px 4px;border-bottom:1px solid #eee7e0;color:var(--v30-ink);
    font-size:13.8px;font-weight:800;
  }
  .v30-mobile-panel-cart{
    margin-top:auto;min-height:44px;border:0;border-radius:999px;
    background:var(--v30-wine);color:#fff;font-size:10.35px;font-weight:900;
    letter-spacing:.09em;text-transform:uppercase;
  }
  .v30-mobile-backdrop{
    position:fixed;inset:0;z-index:290;display:block;
    background:rgba(20,14,12,.45);backdrop-filter:blur(3px);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .22s ease,visibility 0s linear .22s;
  }
  .v30-mobile-backdrop.show{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s ease,visibility 0s linear 0s}
  .v30-hero{min-height:760px!important}
  .v30-hero-photo{background-position:56% center!important}
  .v30-hero-inner{padding:96px 20px 112px!important}
  .v30-hero-logo{width:132px!important}
  .v30-hero h1{font-size:59.8px!important;line-height:.94;max-width:350px}
  .v30-hero-inner p{font-size:16.1px;line-height:1.65;max-width:340px}
  .v30-hero-actions{gap:7px!important;margin-top:24px!important}
  .v30-btn-primary,.v30-btn-ghost{min-height:39px;padding:10px 13px;font-size:9.2px}
  .v30-hero-meta{left:20px!important;right:20px!important;bottom:20px!important;font-size:8.05px;flex-wrap:wrap}
  .v30-discovery{padding:68px 20px 62px!important}
  .v30-discovery h2{font-size:48.3px!important}
  .v30-discovery-grid{margin-top:28px!important;gap:10px!important}
  .v30-discovery-main{min-height:360px!important}
  .v30-discovery-side article{min-height:205px!important}
  #guia{padding:64px 20px!important}
  .v30-guide-head h2{font-size:46px!important}
  .v30-occasion-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .v30-occasion-card{min-height:140px!important;padding:15px!important}
  #paises{padding:64px 20px!important}
  .v30-origin-title-row{grid-template-columns:1fr!important;gap:22px!important}
  .v30-origin-title-row h2{font-size:48.3px!important}
  .v30-origin-copy{max-width:none}
  .v30-catalog-intro{display:block!important;padding:52px 20px 20px!important}
  .v30-catalog-heading h2{font-size:48.3px!important}
  .v30-catalog-helper{justify-content:flex-start!important;padding:0 20px 10px!important}
  .v30-catalog-rule{margin-left:20px!important;margin-right:20px!important}
  .v30-products-start .results{padding-left:20px!important;padding-right:20px!important}
  .v30-products-start .grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .v30-products-start .bottle{height:210px!important;min-height:210px!important}
  .v30-products-start .bottle.has-image img.wine-photo{max-height:192px!important}
  .v30-products-start .body{min-height:166px!important;padding:12px!important}
  .v30-products-start .name{font-size:16.1px!important}
  .v30-products-start .price{font-size:17.25px!important}
  footer{padding:56px 20px 30px!important}
}
@media(max-width:420px){
  .v30-hero h1{font-size:54.05px!important}
  .v30-occasion-grid{grid-template-columns:1fr!important}
  .v30-products-start .grid{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.v30-mobile-panel,.v30-mobile-backdrop,.v30-mobile-menu{transition:none!important}}


/* ===== CASA DE VINO 3.0 — ETAPA 6 / MICROINTERAÇÕES ===== */
#search,#filterButton,#pageSize{
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease;
}
#search:focus{
  border-color:#cdb9aa!important;
  box-shadow:0 0 0 4px rgba(125,16,27,.06)!important;
  background:#fffdfa!important;
}
#search::placeholder{color:#9d9086}

.quick .chip{
  transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.quick .chip:active{transform:scale(.98)}

.v30-products-start .view,
.v30-products-start .cart-add,
.v30-empty-clear{
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.v30-products-start .view:hover,
.v30-products-start .cart-add:hover{
  box-shadow:0 7px 16px rgba(42,28,20,.10);
}
.v30-press{transform:scale(.985)!important}

#filterSummary{transition:opacity .18s ease,transform .18s ease}
.filter-active-pulse{animation:filterPulse .35s ease}
@keyframes filterPulse{
  0%{opacity:.65;transform:scale(.98)}
  100%{opacity:1;transform:scale(1)}
}

.v30-status-fade{animation:statusFade .25s ease both}
@keyframes statusFade{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:translateY(0)}
}

/* Estado vazio refinado sem alterar a lógica existente */
.v30-products-start .grid .guide{
  min-height:300px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border:1px dashed #d9cbbf!important;
  border-radius:20px!important;
  background:rgba(255,253,249,.76)!important;
}
.v30-products-start .grid .guide::before{
  content:"⌕";
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  margin-bottom:12px;
  border-radius:50%;
  background:#f2e7e7;
  color:var(--v30-wine);
  font:25.3px Georgia,serif;
}
.v30-products-start .grid .guide b{
  font:700 26.45px Georgia,serif;
  color:var(--v30-ink);
}
.v30-products-start .grid .guide .lead{
  margin-top:7px!important;
  max-width:440px;
}

/* Loading discreto para imagens dos cards */
.v30-products-start .bottle.has-image img.wine-photo{
  opacity:0;
  animation:wineImageIn .38s ease forwards;
}
@keyframes wineImageIn{
  from{opacity:0;transform:scale(.985)}
  to{opacity:1;transform:scale(1)}
}

@media(prefers-reduced-motion:reduce){
  .filter-active-pulse,
  .v30-status-fade,
  .v30-products-start .bottle.has-image img.wine-photo,
  .v30-press{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    transform:none!important;
  }
}


/* =========================================================
   CASA DE VINO 3.0 — ETAPA 8 / RESPONSIVIDADE FINAL
   ========================================================= */

/* Base: evitar overflow horizontal em qualquer viewport */
html,body{
  max-width:100%;
  overflow-x:hidden;
}
img,svg{
  max-width:100%;
}
button,input,select{
  max-width:100%;
}

/* Header desktop: equilíbrio entre marca, navegação e ações */
@media(min-width:721px){
  header .nav{
    min-height:76px;
  }
  header .links{
    align-items:center;
    white-space:nowrap;
  }
}

/* Tablet */
@media(min-width:721px) and (max-width:1100px){
  .container{
    width:min(1040px,94vw);
  }
  .v30-nav{
    gap:14px!important;
  }
  .v30-links{
    gap:15px!important;
  }
  .v30-links a{
    font-size:9.2px!important;
  }
  .v30-explore{
    padding:9px 12px!important;
  }

  .v30-hero-inner{
    max-width:720px;
    padding-top:84px!important;
    padding-bottom:90px!important;
  }
  .v30-hero h1{
    font-size:87.4px!important;
  }

  .v30-discovery-head{
    grid-template-columns:1fr .9fr!important;
    gap:34px!important;
  }
  .v30-discovery-main{
    min-height:500px!important;
  }
  .v30-discovery-side article{
    min-height:243px!important;
  }

  .v30-occasion-grid{
    grid-template-columns:repeat(2,1fr)!important;
  }

  .v30-catalog-intro{
    gap:24px;
  }

  .v30-products-start .grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .v30-products-start .bottle{
    height:225px!important;
    min-height:225px!important;
  }
}

/* Mobile: preserve premium hierarchy while reducing density */
@media(max-width:720px){
  .container{
    width:min(100% - 32px,680px);
  }

  /* Hero */
  .v30-hero{
    min-height:720px!important;
  }
  .v30-hero-inner{
    padding-left:0!important;
    padding-right:0!important;
  }
  .v30-hero h1{
    max-width:330px;
  }
  .v30-hero-inner p{
    max-width:330px;
  }
  .v30-hero-actions{
    align-items:stretch!important;
  }
  .v30-btn-primary,.v30-btn-ghost{
    justify-content:center;
  }

  /* Discovery / guide spacing */
  .v30-discovery-head{
    gap:18px!important;
  }
  .v30-discovery-main{
    min-height:345px!important;
  }
  .v30-discovery-caption strong{
    max-width:300px;
  }
  .v30-guide-head p{
    max-width:330px;
  }

  /* Origin controls */
  #paises .origin-picker-wrap{
    max-width:none!important;
  }
  #paises .origin-menu{
    width:100%;
    left:0;
  }

  /* Catalog toolbar: prevent cramped controls */
  .v30-catalog-toolbar{
    position:sticky;
    top:66px!important;
  }
  .v30-catalog-toolbar .tools{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  .v30-catalog-toolbar .select{
    grid-column:1/-1!important;
  }
  .v30-catalog-toolbar .search{
    min-width:0!important;
  }
  .v30-catalog-toolbar .filterbtn{
    white-space:nowrap;
  }

  /* Result controls: stack cleanly */
  .v30-products-start .results{
    align-items:center;
    flex-wrap:wrap;
    gap:8px!important;
  }
  .v30-products-start .results .count{
    flex:1 1 auto;
    min-width:110px;
  }
  .v30-products-start .results .sort,
  .v30-products-start .results #pageSize{
    flex:0 0 auto;
  }

  /* Cards */
  .v30-products-start .card{
    min-width:0;
  }
  .v30-products-start .bottle{
    height:208px!important;
    min-height:208px!important;
  }
  .v30-products-start .bottle.has-image img.wine-photo{
    max-width:92%!important;
    max-height:190px!important;
  }
  .v30-products-start .body{
    min-width:0!important;
  }
  .v30-products-start .name,
  .v30-products-start .producer{
    overflow-wrap:anywhere;
  }
  .v30-products-start .foot{
    align-items:flex-end!important;
  }
  .v30-products-start .foot > div:last-child{
    flex-shrink:0;
  }

  /* Cesta + modal: use viewport width safely */
  #cartDrawer{
    max-width:100vw!important;
  }
  #modalbg .modal{
    max-width:100vw!important;
  }
}

/* Small phones */
@media(max-width:430px){
  .container{
    width:calc(100% - 24px);
  }
  .v30-hero{
    min-height:690px!important;
  }
  .v30-hero h1{
    font-size:52.9px!important;
  }
  .v30-hero-inner p{
    font-size:14.95px!important;
  }

  .v30-discovery{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  #guia,#paises{
    padding-left:12px!important;
    padding-right:12px!important;
  }

  .v30-products-start .grid{
    grid-template-columns:1fr!important;
  }
  .v30-products-start .bottle{
    height:215px!important;
    min-height:215px!important;
  }
  .v30-products-start .bottle.has-image img.wine-photo{
    max-height:198px!important;
  }

  .v30-products-start .results .count{
    width:100%;
    flex-basis:100%;
  }
  .v30-products-start .results .sort,
  .v30-products-start .results #pageSize{
    flex:1 1 0;
  }
}

/* Touch devices: remove hover-dependent transforms */
@media(hover:none){
  .v30-products-start .card:hover,
  .v30-products-start .card:hover img.wine-photo,
  .v30-discovery-main:hover img,
  .v30-discovery-side article:hover img{
    transform:none!important;
  }
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto!important;
  }
}


/* ===== CASA DE VINO 3.0 — ETAPA 9 / PUBLICAÇÃO ===== */
noscript{
  display:block;padding:10px 14px;background:#f3e5e6;color:#6f1c27;
  font:12.65px/1.5 system-ui,sans-serif;text-align:center;
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
}


/* =========================================================
   CASA DE VINO 3.0 — ETAPA 10 / PREMIUM MOTION
   ========================================================= */
:root{--v30-ease:cubic-bezier(.22,.61,.36,1)}
::selection{background:#7d101b;color:#fff}
#v30ScrollProgress{
  position:fixed;top:0;left:0;width:100%;height:2px;z-index:9999;
  transform:scaleX(0);transform-origin:left center;
  background:linear-gradient(90deg,#7d101b,#b99763);pointer-events:none
}
.v30-header{
  transition:background-color .35s ease,box-shadow .35s ease,border-color .35s ease
}
.v30-header.v30-scrolled{
  background:rgba(251,249,245,.97)!important;
  box-shadow:0 10px 30px rgba(42,28,20,.07);
  border-color:rgba(228,219,210,.95)
}
.v30-hero-inner>*{opacity:0;transform:translateY(22px)}
.v30-hero.is-ready .v30-eyebrow{animation:v30HeroIn .7s var(--v30-ease) .05s both}
.v30-hero.is-ready .v30-hero-logo{animation:v30HeroIn .75s var(--v30-ease) .12s both}
.v30-hero.is-ready h1{animation:v30HeroIn .85s var(--v30-ease) .20s both}
.v30-hero.is-ready p{animation:v30HeroIn .8s var(--v30-ease) .30s both}
.v30-hero.is-ready .v30-hero-actions{animation:v30HeroIn .75s var(--v30-ease) .40s both}
@keyframes v30HeroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.v30-hero-photo{transform:scale(1.04);transition:transform 1.6s var(--v30-ease)}
.v30-hero.is-ready .v30-hero-photo{transform:scale(1.012)}
.v30-reveal{
  opacity:0;transform:translateY(30px);
  transition:opacity .72s ease,transform .72s var(--v30-ease)
}
.v30-reveal.is-visible{opacity:1;transform:translateY(0)}
.v30-discovery-main img,.v30-discovery-side img{
  transition:transform .75s var(--v30-ease),filter .5s ease
}
.v30-discovery-main:hover img,.v30-discovery-side article:hover img{
  transform:scale(1.035);filter:saturate(1.02)
}
.v30-occasion-card{
  position:relative;overflow:hidden;
  transition:transform .32s var(--v30-ease),box-shadow .32s ease,border-color .25s ease
}
.v30-occasion-card:hover{
  transform:translateY(-5px);
  border-color:#ccbcae;
  box-shadow:0 18px 34px rgba(42,28,20,.08)
}
#originPickerBtn{
  transition:box-shadow .25s ease,border-color .25s ease,transform .22s var(--v30-ease)
}
#originPickerBtn:hover{border-color:#cdb9aa!important;box-shadow:0 10px 24px rgba(42,28,20,.06);transform:translateY(-1px)}
.origin-menu{
  transform-origin:top center;
  transform:translateY(-6px) scale(.985);
  opacity:0;
  transition:transform .22s var(--v30-ease),opacity .18s ease
}
.origin-menu.open{transform:translateY(0) scale(1);opacity:1}
.origin-option{transition:background-color .18s ease,transform .18s ease,border-color .18s ease}
.origin-option:hover{transform:translateX(2px)}
.v30-catalog-toolbar{transition:box-shadow .25s ease,background-color .25s ease}
.v30-catalog-toolbar.v30-toolbar-active{box-shadow:0 10px 24px rgba(42,28,20,.055)}
.v30-products-start .card{
  position:relative;isolation:isolate;
  transition:transform .34s var(--v30-ease),box-shadow .34s ease,border-color .28s ease
}
.v30-products-start .card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,.30),transparent 35%,transparent);
  opacity:0;transition:opacity .28s ease;pointer-events:none;z-index:3
}
.v30-products-start .card:hover::before{opacity:1}
.v30-products-start .card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 38px rgba(42,28,20,.11)!important
}
.v30-products-start .bottle.has-image img.wine-photo{
  transition:transform .42s var(--v30-ease),filter .3s ease
}
.v30-products-start .card:hover .bottle.has-image img.wine-photo{
  transform:scale(1.075) translateY(-3px);filter:saturate(1.03) contrast(1.01)
}
.v30-products-start .country{transition:transform .25s var(--v30-ease),box-shadow .25s ease}
.v30-products-start .card:hover .country{transform:translateY(-2px)}
.v30-btn-primary,.v30-btn-ghost,.v30-explore,
.v30-products-start .view,.v30-products-start .cart-add,.v30-empty-clear,
.cart-checkout,.cart-continue{
  will-change:transform
}
.v30-btn-primary,.v30-btn-ghost,.v30-explore{
  transition:transform .24s var(--v30-ease),box-shadow .24s ease,background-color .22s ease
}
.v30-btn-primary:hover,.v30-btn-ghost:hover,.v30-explore:hover{transform:translateY(-2px)}
#pagination button{
  transition:transform .2s var(--v30-ease),box-shadow .2s ease,background-color .2s ease,border-color .2s ease
}
#pagination button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 16px rgba(42,28,20,.08)}
#cartDrawer{transition:transform .34s var(--v30-ease),box-shadow .34s ease}
#cartDrawer .cart-row{transition:transform .2s var(--v30-ease),box-shadow .22s ease,border-color .22s ease}
#cartDrawer .cart-row:hover{transform:translateX(-2px)}
#modalbg .modal{transition:transform .34s var(--v30-ease),opacity .26s ease}
.v30-catalog-intro .v30-catalog-heading,.v30-catalog-intro .v30-catalog-stat{opacity:0;transform:translateY(16px)}
.v30-catalog-start-visible .v30-catalog-heading{animation:v30CatalogIn .65s var(--v30-ease) both}
.v30-catalog-start-visible .v30-catalog-stat{animation:v30CatalogIn .65s var(--v30-ease) .12s both}
@keyframes v30CatalogIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .v30-hero-inner>*,.v30-reveal,.v30-catalog-intro .v30-catalog-heading,.v30-catalog-intro .v30-catalog-stat{
    opacity:1!important;transform:none!important;animation:none!important
  }
  .v30-hero-photo,.v30-products-start .card,.v30-products-start .bottle.has-image img.wine-photo,
  .v30-occasion-card,.v30-discovery-main img,.v30-discovery-side img{
    transform:none!important;transition:none!important
  }
}
@media(hover:none){
  .v30-products-start .card:hover,.v30-products-start .card:hover .bottle.has-image img.wine-photo,
  .v30-discovery-main:hover img,.v30-discovery-side article:hover img,.v30-occasion-card:hover{
    transform:none!important
  }
}


/* =========================================================
   CASA DE VINO 3.0 — RECONSTRUÇÃO VISUAL
   Paleta: verde garrafa + marfim + bordô + champagne
   ========================================================= */
:root{
  --v3-forest:#1f2b25;
  --v3-forest-2:#27372f;
  --v3-burgundy:#6b2934;
  --v3-ivory:#f5f0e8;
  --v3-paper:#eee8df;
  --v3-white:#fffdf9;
  --v3-stone:#d9d0c5;
  --v3-muted:#746b62;
  --v3-champagne:#b49a70;
  --v3-line:#ddd4c9;
  --v3-shadow:0 18px 50px rgba(31,43,37,.10);
  --v3-ease:cubic-bezier(.22,.61,.36,1);
}
body{background:var(--v3-paper)!important;color:var(--v3-forest)!important}
html{scroll-behavior:smooth}
::selection{background:var(--v3-burgundy);color:#fff}

/* Header */
header.site-header{
  background:rgba(245,240,232,.91)!important;
  color:var(--v3-forest)!important;
  border-bottom:1px solid rgba(217,208,197,.8);
  backdrop-filter:blur(16px);
  box-shadow:0 5px 20px rgba(31,43,37,.03);
}
.v30-3-nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.v30-3-brand img{width:63px;height:63px;object-fit:contain;display:block}
.v30-3-links{display:flex;gap:28px;align-items:center;flex:1;justify-content:center}
.v30-3-links a{
  font-size:10.35px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;
  color:#4d554e;position:relative;padding:8px 0
}
.v30-3-links a:after{
  content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;
  background:var(--v3-burgundy);transform:scaleX(0);transition:transform .22s var(--v3-ease)
}
.v30-3-links a:hover:after{transform:scaleX(1)}
.v30-3-actions{display:flex;align-items:center;gap:8px}
.v30-3-catalog{
  border:0;background:var(--v3-burgundy);color:#fff;border-radius:999px;
  padding:10px 15px;font-size:10.35px;font-weight:900;transition:.2s var(--v3-ease)
}
.v30-3-catalog:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(107,41,52,.17)}
.v30-3-cart{
  display:flex;align-items:center;gap:7px;border:1px solid var(--v3-stone);
  background:var(--v3-white);color:var(--v3-forest);border-radius:999px;
  min-height:38px;padding:7px 10px;font-size:10.35px;font-weight:900
}
.v30-3-menu{display:none}

/* Hero */
.v30-3-hero{
  position:relative;min-height:680px;display:flex;align-items:center;
  color:#fff;overflow:hidden;background:var(--v3-forest)
}
.v30-3-hero-image{
  position:absolute;inset:0;background:url("../assets/hero-casa-de-vino-v3.jpg") center/cover no-repeat;
  transform:scale(1.02)
}
.v30-3-hero-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(22,31,26,.80),rgba(22,31,26,.44) 56%,rgba(22,31,26,.16)),
             linear-gradient(0deg,rgba(18,25,21,.45),transparent 58%)
}
.v30-3-hero-vine{
  position:absolute;right:-90px;bottom:-60px;width:520px;height:430px;
  background:url("../assets/vine-silver-v3.png") center/contain no-repeat;opacity:.10
}
.v30-3-hero-inner{position:relative;z-index:2;max-width:760px;padding:100px 0 130px}
.v30-3-hero-kicker{
  color:#d6c39e;font-size:9.2px;letter-spacing:.26em;font-weight:900;margin-bottom:24px
}
.v30-3-hero-logo{width:150px;display:block;margin-bottom:28px;filter:drop-shadow(0 8px 22px rgba(0,0,0,.22))}
.v30-3-hero h1{
  font:700 clamp(59.8px,8.05vw,105.8px)/.92 Georgia,serif;letter-spacing:-.035em;margin:0 0 20px
}
.v30-3-hero h1 em{color:#d6bb8e;font-style:normal}
.v30-3-hero p{max-width:590px;color:rgba(255,255,255,.82);font-size:17.25px;line-height:1.7;margin:0}
.v30-3-hero-actions{display:flex;gap:9px;margin-top:29px;flex-wrap:wrap}
.v30-3-primary,.v30-3-secondary{
  display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:12px 16px;
  font-size:10.35px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.22s var(--v3-ease)
}
.v30-3-primary{background:#fff;color:var(--v3-burgundy)}
.v30-3-secondary{border:1px solid rgba(255,255,255,.36);color:#fff}
.v30-3-primary:hover,.v30-3-secondary:hover{transform:translateY(-2px)}
.v30-3-hero-bottom{
  position:absolute;bottom:25px;left:50%;transform:translateX(-50%);z-index:2;
  display:flex;align-items:center;gap:12px;white-space:nowrap;color:rgba(255,255,255,.58);
  font-size:9.2px;text-transform:uppercase;letter-spacing:.12em
}
.v30-3-hero-bottom i{width:3px;height:3px;background:#c8b184;border-radius:50%}

/* Stats */
.v30-3-stats{background:var(--v3-forest)!important;color:#fff!important}
.v30-3-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:17px 0}
.v30-3-stats-grid>div{padding:4px 18px;border-right:1px solid rgba(255,255,255,.08)}
.v30-3-stats-grid>div:last-child{border-right:0}
.v30-3-stats-grid b{display:block;font:600 18.4px Georgia,serif;color:#fff}
.v30-3-stats-grid span{display:block;margin-top:4px;color:rgba(255,255,255,.53);font-size:9.2px;letter-spacing:.08em;text-transform:uppercase}

/* Discovery */
#descoberta{background:var(--v3-ivory)!important;padding:104px 0 95px!important;overflow:hidden}
.v30-3-discovery{position:relative}
#descoberta:after{
  content:"";position:absolute;right:-210px;top:40px;width:560px;height:430px;
  background:url("../assets/vine-silver-v3.png") center/contain no-repeat;opacity:.075;pointer-events:none
}
.v30-3-kicker{font-size:9.2px;letter-spacing:.25em;color:var(--v3-burgundy);font-weight:900;text-transform:uppercase}
.v30-3-discovery-head{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:end;margin-top:11px}
.v30-3-discovery h2,.v30-3-guide h2,.v30-3-origin-head h2,.v30-3-catalog-title h2{
  font:700 clamp(46px,5.52vw,73.6px)/.96 Georgia,serif;letter-spacing:-.03em;color:var(--v3-forest);margin:0
}
.v30-3-discovery h2 em,.v30-3-origin-head h2 em{color:var(--v3-burgundy);font-style:normal}
.v30-3-discovery-copy{max-width:430px}
.v30-3-discovery-copy p{color:var(--v3-muted);font-size:14.95px;line-height:1.72;margin:0}
.v30-3-discovery-copy a{
  display:inline-flex;gap:8px;margin-top:16px;color:var(--v3-burgundy);
  font-size:10.35px;font-weight:900;letter-spacing:.12em;text-transform:uppercase
}
.v30-3-discovery-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:12px;margin-top:46px}
.v30-3-discovery-large,.v30-3-discovery-column article{position:relative;border-radius:22px;overflow:hidden;box-shadow:var(--v3-shadow)}
.v30-3-discovery-large{min-height:540px}
.v30-3-discovery-large img,.v30-3-discovery-column img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--v3-ease)}
.v30-3-discovery-large:hover img,.v30-3-discovery-column article:hover img{transform:scale(1.035)}
.v30-3-discovery-large:after,.v30-3-discovery-column article:after{
  content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,28,24,.67),transparent 60%)
}
.v30-3-discovery-large>div,.v30-3-discovery-column article>div{
  position:absolute;left:22px;right:22px;bottom:19px;z-index:2;color:#fff
}
.v30-3-discovery-large small,.v30-3-discovery-column small{
  display:block;color:#d8c39d;font-size:8.05px;font-weight:900;letter-spacing:.18em
}
.v30-3-discovery-large strong{display:block;margin-top:5px;font:500 28.75px/1.08 Georgia,serif;max-width:420px}
.v30-3-discovery-column{display:grid;gap:12px}
.v30-3-discovery-column article{min-height:264px}
.v30-3-discovery-column strong{display:block;margin-top:4px;font:500 20.7px/1.1 Georgia,serif}

/* Guide */
#guia{background:#fffdf9!important;padding:84px 0 91px!important;border-top:1px solid var(--v3-line);border-bottom:1px solid var(--v3-line)}
.v30-3-guide-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:10px}
.v30-3-guide-head p{max-width:380px;color:var(--v3-muted);font-size:14.95px;line-height:1.6}
.v30-3-guide-note{font-size:9.2px;letter-spacing:.17em;color:#938374}
.v30-3-occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}
.v30-3-occasion{
  position:relative;min-height:166px;padding:18px;display:flex;flex-direction:column;
  border:1px solid var(--v3-line);border-radius:18px;background:#fff;
  transition:transform .28s var(--v3-ease),box-shadow .28s ease,border-color .2s ease
}
.v30-3-occasion:hover{transform:translateY(-4px);border-color:#cdbdad;box-shadow:0 16px 32px rgba(31,43,37,.08)}
.v30-3-occasion b{color:var(--v3-champagne);font-size:10.35px;letter-spacing:.14em}
.v30-3-occasion strong{margin-top:auto;font:500 23px Georgia,serif;color:var(--v3-forest)}
.v30-3-occasion span{font-size:10.35px;line-height:1.45;color:var(--v3-muted);margin-top:5px;max-width:180px}
.v30-3-occasion i{align-self:flex-end;margin-top:7px;color:var(--v3-burgundy);font-style:normal;font-size:16.1px}

/* Origin */
#paises{background:var(--v3-paper)!important;padding:88px 0 84px!important}
.v30-3-origin-head{max-width:680px}
.v30-3-origin-head h2{margin-top:9px}
.v30-3-origin-head p{max-width:460px;color:var(--v3-muted);font-size:14.95px;line-height:1.65;margin-top:13px}
#paises .origin-picker-wrap{margin-top:27px!important;max-width:700px!important}
#paises .origin-picker-btn{
  background:#fffdf9!important;border-color:#d7ccc0!important;box-shadow:0 10px 25px rgba(31,43,37,.05)!important;
  transition:.22s var(--v3-ease)
}
#paises .origin-picker-btn:hover{transform:translateY(-2px);border-color:#c4b3a3!important}
.v30-3-origin-foot{display:flex;align-items:center;gap:10px;margin-top:22px;color:#897b6d;font-size:9.2px;letter-spacing:.13em;text-transform:uppercase}
.v30-3-origin-foot span{width:25px;height:1px;background:var(--v3-champagne)}

/* Catalog */
.v30-products-start{background:var(--v3-ivory)!important}
.v30-3-catalog-title h2{margin-top:8px}
.v30-3-catalog-title p{max-width:570px;color:var(--v3-muted);font-size:14.95px;line-height:1.65;margin:11px 0 0}
.v30-3-catalog-count{display:flex;flex-direction:column;align-items:flex-end}
.v30-3-catalog-count b{font:600 33.35px Georgia,serif;color:var(--v3-burgundy)}
.v30-3-catalog-count span{font-size:9.2px;letter-spacing:.14em;color:#897b6d;text-transform:uppercase;margin-top:2px}
.v30-products-start .card{background:#fffdf9!important;border-color:#ded5cb!important}
.v30-products-start .bottle{background:linear-gradient(145deg,#ede6de,#e5dbd1)!important}
.v30-products-start .name{color:var(--v3-forest)}
.v30-products-start .price{color:var(--v3-burgundy)!important}
.v30-products-start .view{background:var(--v3-forest)!important}
.v30-products-start .cart-add{background:var(--v3-burgundy)!important}

/* Mobile */
@media(max-width:900px){
  .v30-3-links{gap:18px}
  .v30-3-discovery-head{grid-template-columns:1fr .9fr;gap:30px}
  .v30-3-discovery-grid{grid-template-columns:1fr}
  .v30-3-discovery-column{grid-template-columns:1fr 1fr}
  .v30-3-occasion-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .v30-3-nav{min-height:66px}
  .v30-3-brand img{width:53px;height:53px}
  .v30-3-links,.v30-3-catalog{display:none}
  .v30-3-menu{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d5c9be;background:#fffdf9;border-radius:50%;color:var(--v3-forest)}
  .v30-3-hero{min-height:690px}
  .v30-3-hero-inner{padding:85px 0 105px}
  .v30-3-hero-logo{width:132px}
  .v30-3-hero h1{font-size:55.2px}
  .v30-3-hero p{font-size:14.95px;max-width:330px}
  .v30-3-hero-bottom{left:18px;right:18px;transform:none;white-space:normal;flex-wrap:wrap;font-size:8.05px}
  .v30-3-stats-grid{grid-template-columns:1fr 1fr;padding:13px 0}
  .v30-3-stats-grid>div:nth-child(2){border-right:0}
  #descoberta{padding:70px 0!important}
  .v30-3-discovery-head{grid-template-columns:1fr;gap:18px}
  .v30-3-discovery h2{font-size:49.45px}
  .v30-3-discovery-grid{margin-top:30px}
  .v30-3-discovery-large{min-height:355px}
  .v30-3-discovery-column{grid-template-columns:1fr}
  .v30-3-discovery-column article{min-height:215px}
  #guia{padding:65px 0!important}
  .v30-3-guide-head{display:block}
  .v30-3-guide-note{display:block;margin-top:9px}
  .v30-3-occasion-grid{grid-template-columns:1fr 1fr;gap:8px}
  .v30-3-occasion{min-height:145px;padding:15px}
  #paises{padding:65px 0!important}
  .v30-3-origin-head h2{font-size:49.45px}
  .v30-3-origin-foot{line-height:1.4}
}
@media(max-width:430px){
  .v30-3-nav{padding:0 12px}
  .v30-3-cart span:not(.cart-count){display:none}
  .v30-3-hero h1{font-size:49.45px}
  .v30-3-hero-inner{padding-top:78px}
  .v30-3-occasion-grid{grid-template-columns:1fr}
}


/* Compatibility: legacy shell rules remain available to JS but do not compete visually. */
header.site-header .nav,
header.site-header .brand,
header.site-header .links,
header.site-header .nav-actions{
  all:unset;
}


:root{--c3-forest:#1f2b25;--c3-burg:#6b2934;--c3-ivory:#f5f0e8;--c3-paper:#eee8df;--c3-white:#fffdf9;--c3-stone:#d9d0c5;--c3-muted:#756b62;--c3-champ:#b49a70;--c3-line:#ded5ca;--c3-ease:cubic-bezier(.22,.61,.36,1)}
body{background:var(--c3-paper)!important;color:var(--c3-forest)!important}
header.site-header{position:sticky!important;top:0!important;z-index:220!important;background:rgba(245,240,232,.92)!important;color:var(--c3-forest)!important;border-bottom:1px solid rgba(217,208,197,.85)!important;backdrop-filter:blur(16px)!important}
.c3-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}.c3-brand img{width:63px;height:63px}.c3-nav{display:flex;align-items:center;justify-content:center;gap:29px;flex:1}.c3-nav a{font-size:10.35px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#4a534d;position:relative;padding:8px 0}.c3-nav a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--c3-burg);transform:scaleX(0);transition:.22s var(--c3-ease)}.c3-nav a:hover:after{transform:scaleX(1)}.c3-header-actions{display:flex;align-items:center;gap:8px}.c3-header-cta{border:0;background:var(--c3-burg);color:#fff;border-radius:999px;padding:10px 15px;font-size:10.35px;font-weight:900;transition:.22s var(--c3-ease)}.c3-header-cta:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(107,41,52,.18)}.c3-cart-button{border:1px solid var(--c3-stone);background:var(--c3-white);color:var(--c3-forest);border-radius:999px;min-height:38px;padding:7px 10px;font-size:10.35px;font-weight:900;display:flex;align-items:center;gap:7px}.c3-menu-button{display:none}
.c3-hero{position:relative;min-height:700px;display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--c3-forest)}.c3-hero-media{position:absolute;inset:0;background:url("../assets/hero-casa-de-vino-v3.jpg") center/cover no-repeat;transform:scale(1.015)}.c3-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,31,26,.82),rgba(22,31,26,.40) 58%,rgba(22,31,26,.12)),linear-gradient(0deg,rgba(17,24,20,.48),transparent 60%)}.c3-hero-content{position:relative;z-index:2;max-width:800px;padding:100px 0 120px}.c3-eyebrow{color:#d8c7a5;font-size:9.2px;letter-spacing:.27em;font-weight:900;margin-bottom:23px}.c3-hero-logo{width:150px;display:block;margin-bottom:28px}.c3-hero h1{font:700 clamp(63.25px,8.05vw,108.1px)/.92 Georgia,serif;letter-spacing:-.035em;margin:0 0 19px}.c3-hero h1 em{font-style:normal;color:#d7be92}.c3-hero p{max-width:600px;color:rgba(255,255,255,.82);font-size:17.25px;line-height:1.7;margin:0}.c3-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:29px}.c3-btn{display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:12px 16px;font-size:10.35px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.22s var(--c3-ease)}.c3-btn-light{background:#fff;color:var(--c3-burg)}.c3-btn-outline{color:#fff;border:1px solid rgba(255,255,255,.36)}.c3-btn:hover{transform:translateY(-2px)}.c3-hero-bottom{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:12px;white-space:nowrap;color:rgba(255,255,255,.60);font-size:9.2px;letter-spacing:.12em;text-transform:uppercase}.c3-hero-bottom i{width:3px;height:3px;background:#c8b184;border-radius:50%}
.c3-stats{background:var(--c3-forest)!important;color:#fff!important}.c3-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:16px 0}.c3-stats-grid>div{padding:5px 18px;border-right:1px solid rgba(255,255,255,.08)}.c3-stats-grid>div:last-child{border-right:0}.c3-stats-grid strong{display:block;color:#fff;font:600 19.55px Georgia,serif}.c3-stats-grid span{display:block;margin-top:4px;color:rgba(255,255,255,.54);font-size:9.2px;letter-spacing:.08em;text-transform:uppercase}
.c3-section-kicker{font-size:9.2px;letter-spacing:.25em;color:var(--c3-burg);font-weight:900;text-transform:uppercase}.c3-discovery h2,.c3-guide h2,.c3-origin-heading h2,.c3-catalog-heading h2{font:700 clamp(46px,5.52vw,74.75px)/.96 Georgia,serif;letter-spacing:-.03em;color:var(--c3-forest);margin:0}.c3-discovery h2 em,.c3-origin-heading h2 em{color:var(--c3-burg);font-style:normal}
#descoberta{background:var(--c3-ivory)!important;padding:105px 0 98px!important}.c3-discovery-head{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:end;margin-top:11px}.c3-discovery-copy{max-width:430px}.c3-discovery-copy p{color:var(--c3-muted);font-size:14.95px;line-height:1.72;margin:0}.c3-discovery-copy a{display:inline-flex;gap:8px;margin-top:16px;color:var(--c3-burg);font-size:10.35px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.c3-discovery-layout{display:grid;grid-template-columns:1.22fr .78fr;gap:12px;margin-top:46px}.c3-feature-card,.c3-side-cards article{position:relative;overflow:hidden;border-radius:22px;box-shadow:0 18px 48px rgba(31,43,37,.10)}.c3-feature-card{min-height:550px}.c3-feature-card img,.c3-side-cards img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--c3-ease)}.c3-feature-card:hover img,.c3-side-cards article:hover img{transform:scale(1.035)}.c3-feature-card:after,.c3-side-cards article:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,29,25,.66),transparent 58%)}.c3-feature-overlay,.c3-side-cards article>div{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;color:#fff}.c3-feature-overlay small,.c3-side-cards small{display:block;color:#d7c29b;font-size:8.05px;font-weight:900;letter-spacing:.18em}.c3-feature-overlay strong{display:block;margin-top:5px;max-width:420px;font:500 28.75px/1.08 Georgia,serif}.c3-side-cards{display:grid;gap:12px}.c3-side-cards article{min-height:269px}.c3-side-cards strong{display:block;margin-top:4px;font:500 20.7px/1.1 Georgia,serif}
#guia{background:#fffdf9!important;padding:86px 0 94px!important;border-top:1px solid var(--c3-line);border-bottom:1px solid var(--c3-line)}.c3-guide-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:10px}.c3-guide-head p{color:var(--c3-muted);font-size:14.95px;line-height:1.65;max-width:390px}.c3-guide-note{font-size:9.2px;letter-spacing:.17em;color:#8b7e72}.c3-occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}.c3-occasion{position:relative;min-height:165px;padding:18px;display:flex;flex-direction:column;border:1px solid var(--c3-line);border-radius:18px;background:#fff;transition:.28s var(--c3-ease)}.c3-occasion:hover{transform:translateY(-4px);border-color:#cdbdad;box-shadow:0 17px 33px rgba(31,43,37,.08)}.c3-occasion b{color:var(--c3-champ);font-size:10.35px;letter-spacing:.14em}.c3-occasion strong{margin-top:auto;font:500 23px Georgia,serif;color:var(--c3-forest)}.c3-occasion span{font-size:10.35px;line-height:1.45;color:var(--c3-muted);margin-top:5px}.c3-occasion i{align-self:flex-end;margin-top:7px;color:var(--c3-burg);font-style:normal}
#paises{background:var(--c3-paper)!important;padding:88px 0 85px!important}.c3-origin-heading{max-width:690px}.c3-origin-heading p{max-width:470px;color:var(--c3-muted);font-size:14.95px;line-height:1.65;margin:13px 0 0}#paises .origin-picker-wrap{margin-top:27px!important;max-width:700px!important}#paises .origin-picker-btn{background:#fffdf9!important;border-color:#d7ccc0!important;box-shadow:0 10px 25px rgba(31,43,37,.05)!important}.c3-origin-foot{display:flex;align-items:center;gap:10px;margin-top:22px;color:#897b6d;font-size:9.2px;letter-spacing:.13em;text-transform:uppercase}.c3-origin-foot span{width:25px;height:1px;background:var(--c3-champ)}
.v30-products-start{background:var(--c3-ivory)!important}.v30-products-start .c3-catalog-intro-wrap{display:flex;align-items:end;justify-content:space-between;gap:35px;padding:65px 0 26px}.c3-catalog-heading h2{margin-top:8px}.c3-catalog-heading p{max-width:570px;color:var(--c3-muted);font-size:14.95px;line-height:1.65;margin:11px 0 0}.c3-catalog-count{display:flex;flex-direction:column;align-items:flex-end}.c3-catalog-count strong{font:600 33.35px Georgia,serif;color:var(--c3-burg)}.c3-catalog-count span{font-size:9.2px;letter-spacing:.14em;color:#897b6d;text-transform:uppercase}.v30-products-start .card{background:#fffdf9!important;border-color:#ded5cb!important}.v30-products-start .bottle{background:linear-gradient(145deg,#ede6de,#e5dbd1)!important}.v30-products-start .name{color:var(--c3-forest)}.v30-products-start .price{color:var(--c3-burg)!important}.v30-products-start .view{background:var(--c3-forest)!important}.v30-products-start .cart-add{background:var(--c3-burg)!important}
footer{background:var(--c3-forest)!important;color:#fff!important;padding:68px 0 32px!important}.c3-footer-top{display:grid;grid-template-columns:1.2fr .8fr;gap:40px}.c3-footer-brand{display:flex;align-items:center;gap:17px}.c3-footer-brand img{width:84px;height:84px}.c3-footer-brand span{color:rgba(255,255,255,.55);font-size:11.5px}.c3-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;justify-self:end}.c3-footer-links a{color:rgba(255,255,255,.74);font-size:10.35px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.c3-footer-bottom{display:flex;justify-content:space-between;gap:15px;padding-top:18px;margin-top:23px;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.38);font-size:9.2px;text-transform:uppercase;letter-spacing:.09em}

@media(max-width:900px){.c3-nav{gap:18px}.c3-discovery-head{grid-template-columns:1fr .9fr;gap:32px}.c3-discovery-layout{grid-template-columns:1fr}.c3-side-cards{grid-template-columns:1fr 1fr}.c3-occasion-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){
  .c3-header-inner{min-height:66px}.c3-brand img{width:53px;height:53px}.c3-nav,.c3-header-cta{display:none}.c3-menu-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d5c9be;background:#fffdf9;border-radius:50%;color:var(--c3-forest)}
  .c3-mobile-panel{display:flex;position:fixed;inset:0 auto 0 0;width:min(340px,88vw);z-index:300;flex-direction:column;padding:18px 16px 22px;background:var(--c3-white);box-shadow:18px 0 55px rgba(26,17,14,.20);transform:translateX(-105%);visibility:hidden;transition:transform .30s var(--c3-ease),visibility 0s linear .30s}.c3-mobile-panel.open{transform:translateX(0);visibility:visible;transition:transform .30s var(--c3-ease),visibility 0s linear 0s}.c3-mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--c3-line);color:var(--c3-burg);font-size:9.2px;font-weight:900;letter-spacing:.2em}.c3-mobile-head button{width:34px;height:34px;border:1px solid var(--c3-stone);background:#fff;border-radius:50%}.c3-mobile-links{display:flex;flex-direction:column;padding-top:16px}.c3-mobile-links a{padding:15px 4px;border-bottom:1px solid #eee7e0;color:var(--c3-forest);font-size:13.8px;font-weight:800}.c3-mobile-cart{margin-top:auto;min-height:44px;border:0;border-radius:999px;background:var(--c3-burg);color:#fff;font-size:10.35px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.c3-mobile-backdrop{display:block;position:fixed;inset:0;z-index:290;background:rgba(20,14,12,.46);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s}.c3-mobile-backdrop.show{opacity:1;visibility:visible;pointer-events:auto}
  .c3-hero{min-height:690px}.c3-hero-content{padding:85px 0 106px}.c3-hero-logo{width:132px}.c3-hero h1{font-size:55.2px}.c3-hero p{font-size:14.95px;max-width:330px}.c3-hero-bottom{left:18px;right:18px;transform:none;white-space:normal;flex-wrap:wrap;font-size:8.05px}.c3-stats-grid{grid-template-columns:1fr 1fr}.c3-stats-grid>div:nth-child(2){border-right:0}.c3-discovery-head{grid-template-columns:1fr;gap:18px}.c3-discovery h2{font-size:49.45px}.c3-feature-card{min-height:355px}.c3-side-cards{grid-template-columns:1fr}.c3-side-cards article{min-height:215px}.c3-guide-head{display:block}.c3-guide-note{display:block;margin-top:9px}.c3-occasion-grid{grid-template-columns:1fr 1fr}.c3-occasion{min-height:145px;padding:15px}.c3-origin-heading h2{font-size:49.45px}.v30-products-start .c3-catalog-intro-wrap{display:block;padding:52px 0 20px}.c3-catalog-heading h2{font-size:49.45px}.c3-catalog-count{align-items:flex-start;margin-top:14px}
}
@media(max-width:430px){.c3-occasion-grid{grid-template-columns:1fr}.v30-products-start .grid{grid-template-columns:1fr!important}.c3-hero h1{font-size:49.45px}}
.c3-hero-content>*{opacity:0;transform:translateY(20px)}.c3-hero.is-ready .c3-eyebrow{animation:c3FadeIn .7s var(--c3-ease) .05s both}.c3-hero.is-ready .c3-hero-logo{animation:c3FadeIn .75s var(--c3-ease) .12s both}.c3-hero.is-ready h1{animation:c3FadeIn .85s var(--c3-ease) .20s both}.c3-hero.is-ready p{animation:c3FadeIn .78s var(--c3-ease) .30s both}.c3-hero.is-ready .c3-hero-actions{animation:c3FadeIn .72s var(--c3-ease) .40s both}@keyframes c3FadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.c3-hero-content>*{opacity:1!important;transform:none!important;animation:none!important}}


/* =========================================================
   CASA DE VINO — NOVO VISUAL
   "Modern Wine Atelier"
   ========================================================= */
:root{
  --nw-ink:#20221f;
  --nw-green:#5d6d61;
  --nw-green-dark:#34433a;
  --nw-aubergine:#5f3341;
  --nw-cream:#f7f3ec;
  --nw-paper:#ece7df;
  --nw-white:#fffdf9;
  --nw-line:#d8d1c7;
  --nw-muted:#746d64;
  --nw-copper:#b38e6d;
  --nw-shadow:0 20px 55px rgba(32,34,31,.09);
  --nw-ease:cubic-bezier(.22,.61,.36,1);
}

body{background:var(--nw-paper)!important;color:var(--nw-ink)!important}
html{scroll-behavior:smooth}
::selection{background:var(--nw-aubergine);color:#fff}

/* HEADER */
header.site-header{
  position:sticky!important;top:0!important;z-index:220!important;
  background:rgba(247,243,236,.92)!important;
  border-bottom:1px solid rgba(216,209,199,.85)!important;
  box-shadow:0 6px 22px rgba(32,34,31,.035)!important;
  backdrop-filter:blur(16px)!important;
}
.nw-header-inner{min-height:76px;display:flex;align-items:center;gap:14px}
.nw-brand img{width:55px;height:55px;display:block;object-fit:contain}
.nw-brand-sub{
  font-size:8.05px;letter-spacing:.20em;color:#83786c;font-weight:900;margin-right:22px
}
.nw-nav{display:flex;align-items:center;gap:24px;flex:1}
.nw-nav a{
  font-size:9.2px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#5c5b56;
  padding:9px 0;position:relative
}
.nw-nav a:after{
  content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;
  background:var(--nw-aubergine);transform:scaleX(0);transition:.22s var(--nw-ease)
}
.nw-nav a:hover:after{transform:scaleX(1)}
.nw-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.nw-explore{
  border:1px solid var(--nw-ink);background:var(--nw-ink);color:#fff;
  border-radius:999px;padding:9px 14px;font-size:9.2px;font-weight:900;
  transition:.22s var(--nw-ease)
}
.nw-explore:hover{transform:translateY(-2px);box-shadow:0 9px 18px rgba(32,34,31,.14)}
.nw-cart{
  min-height:38px;border:1px solid var(--nw-line);background:var(--nw-white);
  border-radius:999px;padding:7px 10px;color:var(--nw-ink);
  font-size:9.2px;font-weight:900;display:flex;align-items:center;gap:7px
}
.nw-menu{display:none}

/* MOBILE PANEL */
.nw-mobile-panel,.nw-mobile-backdrop{display:none}

/* HERO */
.nw-hero{
  position:relative;overflow:hidden;min-height:700px;
  background:var(--nw-cream);display:flex;align-items:center
}
.nw-hero-photo{
  position:absolute;right:0;top:0;bottom:0;width:51%;
  background:url("../assets/hero-casa-de-vino-v3.jpg") center/cover no-repeat;
}
.nw-hero-noise{
  position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 48% 38%,rgba(179,142,109,.09),transparent 32%)
}
.nw-hero-grid{
  position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;
  gap:48px;align-items:center;min-height:700px
}
.nw-hero-copy{padding:80px 0 92px;max-width:650px}
.nw-kicker,.nw-index{
  display:block;font-size:9.2px;letter-spacing:.22em;text-transform:uppercase;font-weight:900;color:var(--nw-aubergine)
}
.nw-hero h1{
  font:600 clamp(64.4px,7.245vw,101.2px)/.93 Georgia,serif;
  letter-spacing:-.035em;color:var(--nw-ink);margin:18px 0 18px
}
.nw-hero h1 em{font-style:normal;color:var(--nw-green-dark)}
.nw-hero-lead{max-width:560px;color:var(--nw-muted);font-size:17.25px;line-height:1.75;margin:0}
.nw-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}
.nw-btn{
  min-height:40px;border-radius:999px;padding:0 15px;display:inline-flex;align-items:center;gap:8px;
  font-size:9.2px;letter-spacing:.09em;font-weight:900;text-transform:uppercase;transition:.22s var(--nw-ease)
}
.nw-btn-dark{background:var(--nw-ink);color:#fff}
.nw-btn-light{background:transparent;color:var(--nw-ink);border:1px solid var(--nw-line)}
.nw-btn:hover{transform:translateY(-2px)}
.nw-proof{display:flex;gap:20px;flex-wrap:wrap;margin-top:31px;color:#8b8178;font-size:9.2px;letter-spacing:.08em;text-transform:uppercase}
.nw-proof b{color:var(--nw-ink)}
.nw-hero-product{display:flex;justify-content:flex-end;padding:32px 0}
.nw-hero-card{
  width:min(455px,92%);border-radius:28px;overflow:hidden;background:var(--nw-white);
  box-shadow:var(--nw-shadow);transform:rotate(1.2deg)
}
.nw-card-label{display:block;padding:13px 16px;color:#8a7d72;font-size:8.05px;font-weight:900;letter-spacing:.18em}
.nw-hero-card img{display:block;width:100%;height:420px;object-fit:cover}
.nw-hero-card-bottom{display:flex;justify-content:space-between;align-items:end;padding:16px 18px 18px}
.nw-hero-card-bottom small{display:block;color:var(--nw-aubergine);font-size:8.05px;letter-spacing:.15em;font-weight:900}
.nw-hero-card-bottom strong{display:block;margin-top:4px;font:500 21.85px Georgia,serif;color:var(--nw-ink);max-width:300px}
.nw-hero-card-bottom a{
  width:34px;height:34px;border:1px solid var(--nw-line);border-radius:50%;
  display:grid;place-items:center;color:var(--nw-ink);font-size:16.1px
}

/* STATS */
.nw-stats{background:var(--nw-ink)!important;color:#fff!important}
.nw-stats-row{display:grid;grid-template-columns:repeat(4,1fr);padding:15px 0}
.nw-stats-row>div{padding:7px 17px;border-right:1px solid rgba(255,255,255,.08)}
.nw-stats-row>div:last-child{border-right:0}
.nw-stats-row small{display:block;color:#a8998d;font-size:8.05px;letter-spacing:.18em}
.nw-stats-row strong{display:block;margin-top:5px;color:#fff;font:500 20.7px Georgia,serif}
.nw-stats-row span{display:block;margin-top:3px;color:rgba(255,255,255,.46);font-size:9.2px}

/* SECTIONS */
#descoberta,#guia,#paises{padding:95px 0!important}
#descoberta{background:var(--nw-cream)!important}
#guia{background:#fffdf9!important;border-top:1px solid var(--nw-line);border-bottom:1px solid var(--nw-line)}
#paises{background:var(--nw-paper)!important}
.nw-section-head,.nw-guide-top{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end}
.nw-section-head h2,.nw-guide-top h2,.nw-origin-copy h2,.nw-catalog-intro h2{
  font:600 clamp(48.3px,5.52vw,78.2px)/.95 Georgia,serif;color:var(--nw-ink);letter-spacing:-.03em;margin:8px 0 0
}
.nw-section-head h2 em,.nw-guide-top h2 em,.nw-origin-copy h2 em,.nw-catalog-intro h2 em{font-style:normal;color:var(--nw-green-dark)}
.nw-section-head p,.nw-guide-top p,.nw-origin-copy p,.nw-catalog-intro p{
  max-width:500px;color:var(--nw-muted);font-size:14.95px;line-height:1.75;margin:0
}

/* DISCOVERY */
.nw-discovery-grid{display:grid;grid-template-columns:1.18fr .91fr .91fr;gap:11px;margin-top:44px}
.nw-image-card{position:relative;min-height:415px;overflow:hidden;border-radius:22px;box-shadow:var(--nw-shadow)}
.nw-image-card-large{min-height:520px}
.nw-image-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--nw-ease)}
.nw-image-card:hover img{transform:scale(1.04)}
.nw-image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,31,28,.66),transparent 58%)}
.nw-image-card-caption{position:absolute;left:20px;right:20px;bottom:19px;z-index:2;color:#fff}
.nw-image-card-caption small{display:block;color:#d3b995;font-size:8.05px;letter-spacing:.16em;font-weight:900}
.nw-image-card-caption strong{display:block;margin-top:4px;font:500 23px/1.08 Georgia,serif}

/* GUIDE */
.nw-guide-top{margin-bottom:31px}
.nw-guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.nw-guide-card{
  min-height:155px;padding:17px;display:flex;flex-direction:column;
  border:1px solid var(--nw-line);border-radius:17px;background:#fff;
  transition:.28s var(--nw-ease)
}
.nw-guide-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(32,34,31,.08);border-color:#cbbfb1}
.nw-guide-card span{font-size:9.2px;letter-spacing:.16em;color:var(--nw-copper);font-weight:900}
.nw-guide-card strong{margin-top:auto;font:500 23px Georgia,serif;color:var(--nw-ink)}
.nw-guide-card small{margin-top:5px;max-width:180px;font-size:9.2px;line-height:1.5;color:var(--nw-muted)}
.nw-guide-card b{align-self:flex-end;color:var(--nw-aubergine);font-size:14.95px;margin-top:7px}

/* ORIGIN */
.nw-origin-copy{max-width:720px}
#paises .origin-picker-wrap{margin-top:27px!important;max-width:700px!important}
#paises .origin-picker-btn{
  background:#fffdf9!important;border:1px solid var(--nw-line)!important;
  border-radius:15px!important;box-shadow:0 9px 22px rgba(32,34,31,.05)!important
}

/* CATALOG */
.v30-products-start{background:var(--nw-cream)!important}
.nw-catalog-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:61px 0 23px}
.nw-catalog-number{display:flex;flex-direction:column;align-items:flex-end}
.nw-catalog-number strong{font:500 35.65px Georgia,serif;color:var(--nw-aubergine)}
.nw-catalog-number span{font-size:9.2px;letter-spacing:.16em;text-transform:uppercase;color:#8b8178;margin-top:3px}
.v30-products-start .card{background:#fffdf9!important;border:1px solid #ded7ce!important;box-shadow:0 7px 20px rgba(32,34,31,.045)!important}
.v30-products-start .bottle{background:linear-gradient(145deg,#eee8df,#e4ddd4)!important}
.v30-products-start .name{color:var(--nw-ink)}.v30-products-start .price{color:var(--nw-aubergine)!important}.v30-products-start .view{background:var(--nw-ink)!important}.v30-products-start .cart-add{background:var(--nw-aubergine)!important}

/* FOOTER */
footer{background:var(--nw-ink)!important;color:#fff!important;padding:70px 0 32px!important}
.nw-footer-top{display:grid;grid-template-columns:1.1fr .9fr;gap:40px}.nw-footer-brand{display:flex;align-items:center;gap:16px}.nw-footer-brand img{width:82px;height:82px}.nw-footer-brand span{color:rgba(255,255,255,.50);font-size:11.5px}.nw-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;justify-self:end}.nw-footer-links a{font-size:9.2px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.72)}.nw-footer-bottom{display:flex;justify-content:space-between;padding-top:18px;margin-top:23px;border-top:1px solid rgba(255,255,255,.08);font-size:9.2px;color:rgba(255,255,255,.34);letter-spacing:.09em;text-transform:uppercase}

/* Motion */
.nw-hero-copy>*{opacity:0;transform:translateY(18px)}
.nw-hero.is-ready .nw-kicker{animation:nwIn .65s var(--nw-ease) .03s both}
.nw-hero.is-ready h1{animation:nwIn .8s var(--nw-ease) .10s both}
.nw-hero.is-ready .nw-hero-lead{animation:nwIn .75s var(--nw-ease) .18s both}
.nw-hero.is-ready .nw-hero-actions{animation:nwIn .72s var(--nw-ease) .26s both}
.nw-hero.is-ready .nw-proof{animation:nwIn .68s var(--nw-ease) .34s both}
.nw-hero-card{opacity:0;transform:translateY(20px) rotate(1.2deg)}
.nw-hero.is-ready .nw-hero-card{animation:nwCardIn .9s var(--nw-ease) .18s both}
@keyframes nwIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes nwCardIn{from{opacity:0;transform:translateY(20px) rotate(1.2deg)}to{opacity:1;transform:translateY(0) rotate(1.2deg)}}

@media(max-width:950px){
  .nw-nav{gap:16px}.nw-brand-sub{display:none}.nw-hero-grid{grid-template-columns:1fr .9fr;gap:25px}
  .nw-hero-card img{height:360px}.nw-discovery-grid{grid-template-columns:1fr 1fr}.nw-image-card-large{grid-column:1/-1}.nw-guide-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .nw-header-inner{min-height:65px}.nw-brand img{width:52px;height:52px}.nw-nav,.nw-explore{display:none}
  .nw-menu{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--nw-line);background:var(--nw-white);border-radius:50%;color:var(--nw-ink)}
  .nw-mobile-panel{display:flex;position:fixed;inset:0 auto 0 0;width:min(330px,88vw);z-index:300;flex-direction:column;padding:18px 16px 22px;background:var(--nw-white);box-shadow:18px 0 55px rgba(26,17,14,.20);transform:translateX(-105%);visibility:hidden;transition:.3s var(--nw-ease)}
  .nw-mobile-panel.open{transform:translateX(0);visibility:visible}.nw-mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--nw-line);font-size:9.2px;letter-spacing:.19em;color:var(--nw-aubergine);font-weight:900}.nw-mobile-head button{width:34px;height:34px;border:1px solid var(--nw-line);background:#fff;border-radius:50%}.nw-mobile-links{display:flex;flex-direction:column;padding-top:15px}.nw-mobile-links a{padding:15px 4px;border-bottom:1px solid #eee8df;font-size:13.8px;color:var(--nw-ink);font-weight:800}.nw-mobile-cart{margin-top:auto;min-height:43px;border:0;border-radius:999px;background:var(--nw-aubergine);color:#fff;font-size:10.35px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
  .nw-mobile-backdrop{display:block;position:fixed;inset:0;z-index:290;background:rgba(20,18,16,.45);opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease}.nw-mobile-backdrop.show{opacity:1;visibility:visible;pointer-events:auto}
  .nw-hero{min-height:720px}.nw-hero-grid{grid-template-columns:1fr;min-height:720px}.nw-hero-photo{right:0;top:45%;bottom:0;width:100%;height:55%}.nw-hero-copy{padding:70px 0 20px;max-width:500px;z-index:3}.nw-hero h1{font-size:57.5px}.nw-hero-lead{font-size:14.95px;max-width:350px}.nw-hero-product{display:none}.nw-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:58%;background:linear-gradient(0deg,rgba(31,33,29,.68),transparent 70%);z-index:1}.nw-proof{margin-top:22px;color:#d2c8bd}.nw-hero-bottom{display:none}
  .nw-stats-row{grid-template-columns:1fr 1fr}.nw-stats-row>div:nth-child(2){border-right:0}
  #descoberta,#guia,#paises{padding:68px 0!important}.nw-section-head,.nw-guide-top{grid-template-columns:1fr;gap:18px}.nw-section-head h2,.nw-guide-top h2,.nw-origin-copy h2{font-size:50.6px}.nw-discovery-grid{grid-template-columns:1fr}.nw-image-card-large{min-height:370px;grid-column:auto}.nw-image-card{min-height:220px}
  .nw-guide-grid{grid-template-columns:1fr 1fr;gap:8px}.nw-guide-card{min-height:142px;padding:14px}
  .nw-origin-copy{max-width:650px}.nw-catalog-intro{display:block;padding:52px 0 20px}.nw-catalog-number{align-items:flex-start;margin-top:14px}
}
@media(max-width:430px){.nw-guide-grid{grid-template-columns:1fr}.v30-products-start .grid{grid-template-columns:1fr!important}.nw-hero h1{font-size:50.6px}.nw-brand-sub{display:none}}
@media(prefers-reduced-motion:reduce){.nw-hero-copy>*{opacity:1!important;transform:none!important;animation:none!important}.nw-hero-card{opacity:1!important;transform:rotate(1.2deg)!important;animation:none!important}}


/* =========================================================
   CASA DE VINO — NOVA DIREÇÃO VISUAL DOS CARDS
   ========================================================= */
.v30-products-start .grid{
  align-items:stretch;
}

.nw-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid #ddd6cc!important;
  border-radius:20px!important;
  background:#fffdf9!important;
  box-shadow:0 8px 22px rgba(32,34,31,.055)!important;
  transition:
    transform .30s var(--nw-ease),
    box-shadow .30s ease,
    border-color .24s ease;
}

.nw-card:hover{
  transform:translateY(-6px);
  border-color:#cfc5ba!important;
  box-shadow:0 20px 42px rgba(32,34,31,.12)!important;
}

/* imagem */
.nw-card-media{
  position:relative;
  height:290px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.80),transparent 56%),
    linear-gradient(145deg,#eee8df,#e5ddd4);
  isolation:isolate;
}

.nw-card-media::after{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:12px;
  height:18px;
  border-radius:50%;
  background:rgba(52,67,58,.09);
  filter:blur(9px);
  z-index:0;
}

.nw-card-photo{
  position:relative!important;
  z-index:1;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:18px 24px 14px;
  border-radius:0!important;
  box-shadow:none!important;
  transition:
    transform .42s var(--nw-ease),
    filter .35s ease;
}

.nw-card:hover .nw-card-photo{
  transform:scale(1.065) translateY(-3px);
  filter:saturate(1.03) contrast(1.01);
}

.nw-card-placeholder{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#8c8178;
  font-size:9.2px;
  letter-spacing:.18em;
  font-weight:900;
}

.nw-country-badge{
  position:absolute;
  top:12px;
  left:12px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:calc(100% - 24px);
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:999px;
  background:rgba(255,253,249,.88);
  color:#4b514c;
  font-size:8.05px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 6px 15px rgba(32,34,31,.06);
  backdrop-filter:blur(8px);
}

/* conteúdo */
.nw-card-content{
  display:flex;
  flex-direction:column;
  min-height:236px;
  padding:16px 16px 15px;
}

.nw-card-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  min-height:16px;
}

.nw-style,
.nw-vintage{
  font-size:8.05px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
}

.nw-style{
  color:var(--nw-aubergine);
}

.nw-vintage{
  color:#978a7f;
}

.nw-card-title{
  margin-top:8px;
  color:var(--nw-ink);
  font:600 23px/1.04 Georgia,serif;
  letter-spacing:-.02em;
  overflow-wrap:anywhere;
}

.nw-card-producer{
  margin-top:6px;
  color:#7e756d;
  font-size:10.35px;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.nw-card-tags{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:11px;
  min-height:24px;
}

.nw-card-tags span{
  max-width:100%;
  padding:5px 7px;
  border:1px solid #e2dbd3;
  border-radius:999px;
  background:#f7f3ed;
  color:#655e57;
  font-size:8.05px;
  line-height:1;
}

.nw-card-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding-top:13px;
  border-top:1px solid #eee7df;
}

.nw-card-price{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}

.nw-card-price small{
  color:#988b7f;
  font-size:6.9px;
  letter-spacing:.12em;
  font-weight:900;
}

.nw-card-price strong{
  color:var(--nw-aubergine);
  font:600 24.15px/1 Georgia,serif;
  white-space:nowrap;
}

.nw-card-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex-shrink:0;
}

.nw-card-view{
  min-height:34px;
  padding:0 12px;
  border:1px solid #d8d0c7;
  border-radius:999px;
  background:#fffdf9;
  color:var(--nw-ink);
  font-size:9.2px;
  font-weight:900;
  letter-spacing:.03em;
  transition:
    transform .18s var(--nw-ease),
    background .18s ease,
    color .18s ease,
    border-color .18s ease;
}

.nw-card-view span{
  margin-left:4px;
  font-size:11.5px;
}

.nw-card-view:hover{
  transform:translateY(-1px);
  background:var(--nw-ink);
  color:#fff;
  border-color:var(--nw-ink);
}

.nw-card-add{
  width:35px;
  height:35px;
  border:0;
  border-radius:50%;
  background:var(--nw-aubergine);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:20.7px;
  line-height:1;
  transition:
    transform .18s var(--nw-ease),
    box-shadow .18s ease,
    background .18s ease;
}

.nw-card-add:hover{
  transform:translateY(-2px) scale(1.03);
  box-shadow:0 8px 18px rgba(95,51,65,.22);
  background:#512b37;
}

.nw-card-add:active,
.nw-card-view:active{
  transform:scale(.97);
}

/* Entrada em cascata já existente: apenas refinamos a curva */
#grid .nw-card.product-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:
    opacity .46s ease,
    transform .46s var(--nw-ease);
  transition-delay:var(--product-delay,0ms);
}

#grid .nw-card.product-reveal.product-ready{
  opacity:1;
  transform:translateY(0);
}

/* Tablet */
@media(max-width:950px){
  .nw-card-media{height:260px}
  .nw-card-content{min-height:224px}
  .nw-card-title{font-size:20.7px}
}

/* Mobile */
@media(max-width:720px){
  .nw-card-media{height:218px}
  .nw-card-content{min-height:190px;padding:13px}
  .nw-card-title{font-size:18.4px}
  .nw-card-producer{font-size:9.2px}
  .nw-card-price strong{font-size:20.7px}
  .nw-card-view{padding:0 10px;font-size:8.05px}
  .nw-card-add{width:32px;height:32px;font-size:18.4px}
}

@media(max-width:430px){
  .nw-card-media{height:235px}
  .nw-card-content{min-height:194px}
  .nw-card-title{font-size:20.7px}
}

@media(prefers-reduced-motion:reduce){
  .nw-card,
  .nw-card-photo,
  .nw-card-view,
  .nw-card-add{
    transition:none!important;
    transform:none!important;
  }
}


/* ===== Indicação da Semana / atalhos contextuais ===== */
.weekly-filter-accordion{
  border-top:0!important;
}
.weekly-filter-accordion .filter-box{
  padding:8px 10px 11px!important;
}
.weekly-option{
  display:flex!important;
  align-items:center;
  gap:9px;
  padding:10px 11px!important;
  margin:0!important;
  border:1px solid #ddd2c8!important;
  border-radius:12px!important;
  background:#fbf7f2!important;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.weekly-option:hover{
  transform:translateY(-1px);
  border-color:#c9b8aa!important;
  box-shadow:0 7px 16px rgba(32,34,31,.05);
}
.weekly-option input{
  accent-color:#5f3341;
}
.weekly-option input:checked + span{
  color:#5f3341;
  font-weight:900;
}
.nw-weekly-card{
  cursor:pointer;
}
.nw-weekly-card::after{
  content:"INDICAÇÃO DA SEMANA";
  position:absolute;
  top:12px;
  right:12px;
  z-index:5;
  padding:6px 8px;
  border-radius:999px;
  background:rgba(255,253,249,.94);
  border:1px solid rgba(255,255,255,.8);
  color:#5f3341;
  font-size:6.9px;
  font-weight:900;
  letter-spacing:.11em;
  box-shadow:0 7px 16px rgba(32,34,31,.07);
}
.nw-guide-card[data-guide-action]{
  cursor:pointer;
}


/* Correção final do card Indicação da Semana */
.nw-weekly-card::after{content:none!important;display:none!important}
.nw-weekly-badge{
  position:absolute;top:12px;right:12px;z-index:6;
  padding:6px 8px;border-radius:999px;
  background:rgba(255,253,249,.94);
  border:1px solid rgba(255,255,255,.8);
  color:#5f3341;font-size:6.9px;font-weight:900;letter-spacing:.11em;
  box-shadow:0 7px 16px rgba(32,34,31,.07);
  backdrop-filter:blur(7px)
}

/* Quick filters use exactly the same state as the filter drawer */
#quick .chip.active{
  background:#5f3341!important;
  color:#fff!important;
  border-color:#5f3341!important;
}
#quick .chip{
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
#quick .chip:active{transform:scale(.98)}

.nw-weekly-card,
.nw-guide-card{
  cursor:pointer;
}

/* ===== 03 / Origens — revisão ===== */
.nw-origin-copy-v2{
  max-width:760px;
}
.nw-origin-copy-v2 strong{
  color:#5f3341;
  font-weight:900;
}
.nw-origin-actions{
  margin-top:20px;
}
.nw-origin-low-margin{
  min-height:40px;
  padding:0 14px;
  border:1px solid #d5c9bf;
  border-radius:999px;
  background:#fffdf9;
  color:#5f3341;
  font-size:9.2px;
  font-weight:900;
  letter-spacing:.05em;
  transition:.2s ease;
}
.nw-origin-low-margin:hover{
  border-color:#bda899;
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(32,34,31,.06);
}
.origin-option{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.origin-option-main{
  min-width:0;
}
.origin-low-margin{
  flex-shrink:0;
  padding:4px 6px;
  border-radius:999px;
  background:#f0e6df;
  color:#5f3341;
  font-size:6.9px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

/* ===== Seletor de origem — correção ===== */
#paises .origin-picker-wrap{position:relative;z-index:120}
#originPickerBtn{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:10px;cursor:pointer
}
#originMenu{
  position:relative!important;
  z-index:130!important;
  max-height:min(360px,52vh)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}
#originMenu:not(.open){display:none!important}
#originMenu.open{display:block!important}
#originMenu .origin-option{width:100%;box-sizing:border-box}
.low-margin-option{margin-top:7px}

/* Result row: somente quantidade por página */
.v30-products-start .results .count{
  display:none!important;
}
.v30-products-start .results{
  display:flex;
  justify-content:flex-end;
  align-items:center;
}

/* Seletor de origem: comportamento robusto em desktop e mobile */
#paises .origin-picker-wrap{
  position:relative!important;
  z-index:120!important;
  width:100%;
  max-width:700px!important;
}
#originPickerBtn{
  width:100%;
  cursor:pointer!important;
}
#originMenu{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:999!important;
  max-height:min(360px,52vh)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}
#originMenu.open{
  display:grid!important;
}
#originMenu:not(.open){
  display:none!important;
}
@media(max-width:720px){
  #originMenu.open{grid-template-columns:1fr!important}
}

/* ===== Auditoria final dos Filtros / Origem ===== */
#paises .origin-picker-wrap{
  position:relative!important;
  z-index:500!important;
}
#originMenu{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:9999!important;
  max-height:min(360px,52vh)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}
#originMenu.open{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
#originMenu:not(.open){
  display:none!important;
}
@media(max-width:720px){
  #originMenu.open{grid-template-columns:1fr!important}
}

/* ===== ETAPA 2 — 03 / ORIGENS ===== */
.nw-origin-section{position:relative;padding:96px 0 88px!important;background:#eee8df!important;border-top:1px solid #ded5ca;border-bottom:1px solid #ded5ca;overflow:hidden}
.nw-origin-intro{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end}
.nw-origin-intro h2{margin:8px 0 0;color:var(--nw-ink,#20221f);font:600 clamp(48.3px,5.52vw,78.2px)/.95 Georgia,serif;letter-spacing:-.03em}
.nw-origin-intro h2 em{font-style:normal;color:var(--nw-green-dark,#34433a)}
.nw-origin-intro p{max-width:510px;margin:0;color:var(--nw-muted,#746d64);font-size:14.95px;line-height:1.75}
.nw-origin-slider-shell{position:relative;z-index:2;margin-top:44px}
.nw-origin-slider-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px;color:#887b70;font-size:8.05px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.nw-origin-slider-nav{display:flex;gap:7px}
.nw-origin-arrow{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d2c8be;border-radius:50%;background:#fffdf9;color:#5f3341;font-size:20.7px;line-height:1;cursor:pointer;transition:.2s var(--nw-ease)}
.nw-origin-arrow:hover{transform:translateY(-2px);border-color:#bba99b;box-shadow:0 8px 17px rgba(32,34,31,.07)}
.nw-origin-slider{display:flex;gap:11px;width:100%;overflow-x:auto;overflow-y:hidden;padding:5px 2px 15px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c8beb5 transparent}
.nw-origin-slider::-webkit-scrollbar{height:6px}.nw-origin-slider::-webkit-scrollbar-thumb{background:#c8beb5;border-radius:999px}
.nw-origin-country{position:relative;flex:0 0 124px;min-height:134px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:17px 10px 14px;border:1px solid #d9d1c8;border-radius:19px;background:#fffdf9;color:#252723;cursor:pointer;transition:transform .24s var(--nw-ease),border-color .2s ease,background-color .2s ease,box-shadow .24s ease}
.nw-origin-country:hover{transform:translateY(-4px);border-color:#c3b4a7;box-shadow:0 13px 25px rgba(32,34,31,.08)}
.nw-origin-country.selected{border-color:#5f3341;background:#f7eff0;box-shadow:0 11px 24px rgba(95,51,65,.10)}
.nw-origin-flag{display:grid;place-items:center;width:54px;height:54px;font-size:42.55px;line-height:1}
.nw-origin-country-name{max-width:105px;color:#373932;font-size:10.35px;font-weight:900;letter-spacing:.05em;line-height:1.2;text-align:center;text-transform:uppercase}
.nw-origin-low{position:absolute;left:8px;right:8px;bottom:8px;padding:4px 5px;border-radius:999px;background:#f0e6df;color:#5f3341;font-size:5.75px;font-weight:900;letter-spacing:.07em;text-align:center;text-transform:uppercase}
@media(max-width:950px){.nw-origin-intro{grid-template-columns:1fr .9fr;gap:32px}}
@media(max-width:720px){.nw-origin-section{padding:70px 0 68px!important}.nw-origin-intro{grid-template-columns:1fr;gap:18px}.nw-origin-intro h2{font-size:50.6px}.nw-origin-slider-shell{margin-top:31px}.nw-origin-country{flex-basis:105px;min-height:116px}.nw-origin-flag{width:48px;height:48px;font-size:36.8px}}
@media(max-width:430px){.nw-origin-country{flex-basis:94px;min-height:106px;gap:8px}.nw-origin-flag{font-size:33.35px}.nw-origin-country-name{font-size:9.2px}}

/* ===== Correção das entradas de seção ===== */
.reveal-on-scroll,
.v30-reveal,
.reveal-soft{
  will-change:opacity,transform;
}
@media(prefers-reduced-motion:reduce){
  .reveal-on-scroll,
  .v30-reveal,
  .reveal-soft{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .nw-hero-copy>*,
  .nw-hero-card{
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
}

/* =========================================================
   FICHA DO VINHO — textos longos sem corte
   ========================================================= */
#modalbg{
  align-items:center!important;
  justify-content:center!important;
}
#modalbg .modal{
  width:min(680px,calc(100vw - 24px))!important;
  max-width:680px!important;
  max-height:calc(100dvh - 24px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  box-sizing:border-box;
}
#modalbg .mbody{
  min-width:0;
  overflow:visible;
}
#modalbg .wine-text-block{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto;
}
#modalbg .wine-text-block b{
  display:block;
  margin-bottom:6px;
}
#modalbg .wine-note-content{
  display:block;
  white-space:pre-wrap!important;
  overflow:visible!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  line-height:1.65;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
#modalbg .mactions{
  margin-top:14px;
  padding-bottom:2px;
}
@media(max-width:720px){
  #modalbg{
    align-items:flex-start!important;
    padding:8px!important;
  }
  #modalbg .modal{
    width:100%!important;
    max-width:none!important;
    max-height:calc(100dvh - 16px)!important;
    margin:0!important;
    border-radius:16px!important;
  }
  #modalbg .mbody{
    padding:15px!important;
  }
  #modalbg .wine-note-content{
    font-size:12.65px;
    line-height:1.7;
  }
}
@media(prefers-reduced-motion:reduce){
  #modalbg .modal{
    scroll-behavior:auto;
  }
}

/* =========================================================
   CASA DE VINO — BARRA DE ROLAGEM PERSONALIZADA
   ========================================================= */

/* Firefox */
html{
  scrollbar-width:thin;
  scrollbar-color:#a69b91 transparent;
  scrollbar-gutter:stable;
}

/* Chromium / Edge / Safari */
html::-webkit-scrollbar{
  width:10px;
  height:10px;
}

html::-webkit-scrollbar-track{
  background:rgba(238,232,223,.55);
}

html::-webkit-scrollbar-thumb{
  background:linear-gradient(
    180deg,
    #9a8d82 0%,
    #75685e 50%,
    #9a8d82 100%
  );
  border:2px solid rgba(238,232,223,.55);
  border-radius:999px;
}

html::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(
    180deg,
    #7c6d62 0%,
    #5f3341 50%,
    #7c6d62 100%
  );
}

html::-webkit-scrollbar-corner{
  background:transparent;
}

/* A ficha do vinho e outros containers com overflow mantêm a mesma linguagem. */
#modalbg .modal::-webkit-scrollbar,
#sidebar::-webkit-scrollbar{
  width:8px;
}

#modalbg .modal::-webkit-scrollbar-track,
#sidebar::-webkit-scrollbar-track{
  background:transparent;
}

#modalbg .modal::-webkit-scrollbar-thumb,
#sidebar::-webkit-scrollbar-thumb{
  background:#b7aca2;
  border-radius:999px;
}

#modalbg .modal::-webkit-scrollbar-thumb:hover,
#sidebar::-webkit-scrollbar-thumb:hover{
  background:#7a6d63;
}

#modalbg .modal,
#sidebar{
  scrollbar-width:thin;
  scrollbar-color:#b7aca2 transparent;
}

/* =========================================================
   AJUSTE — CABEÇALHO DA FICHA DO VINHO
   ========================================================= */
#modalbg .mhead{
  min-height:0!important;
  padding:10px 14px!important;
  align-items:center!important;
}
#modalbg .mhead b{
  font-size:10.35px!important;
  letter-spacing:.16em!important;
  line-height:1.1!important;
}
#modalbg .mhead .close{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
}

/* =========================================================
   AJUSTE — SCROLLBAR SEM SETAS
   ========================================================= */
html::-webkit-scrollbar-button,
#modalbg .modal::-webkit-scrollbar-button,
#sidebar::-webkit-scrollbar-button{
  display:none!important;
  width:0!important;
  height:0!important;
}

html::-webkit-scrollbar-corner,
#modalbg .modal::-webkit-scrollbar-corner,
#sidebar::-webkit-scrollbar-corner{
  background:transparent!important;
}

/* =========================================================
   SCROLLBAR — SETAS TOTALMENTE INVISÍVEIS
   ========================================================= */
html::-webkit-scrollbar-button,
html::-webkit-scrollbar-button:single-button,
html::-webkit-scrollbar-button:vertical:decrement,
html::-webkit-scrollbar-button:vertical:increment,
html::-webkit-scrollbar-button:horizontal:decrement,
html::-webkit-scrollbar-button:horizontal:increment,
#modalbg .modal::-webkit-scrollbar-button,
#modalbg .modal::-webkit-scrollbar-button:single-button,
#modalbg .modal::-webkit-scrollbar-button:vertical:decrement,
#modalbg .modal::-webkit-scrollbar-button:vertical:increment,
#modalbg .modal::-webkit-scrollbar-button:horizontal:decrement,
#modalbg .modal::-webkit-scrollbar-button:horizontal:increment,
#sidebar::-webkit-scrollbar-button,
#sidebar::-webkit-scrollbar-button:single-button,
#sidebar::-webkit-scrollbar-button:vertical:decrement,
#sidebar::-webkit-scrollbar-button:vertical:increment,
#sidebar::-webkit-scrollbar-button:horizontal:decrement,
#sidebar::-webkit-scrollbar-button:horizontal:increment{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Elimina qualquer preenchimento residual nos terminais da scrollbar. */
html::-webkit-scrollbar-track-piece:start,
html::-webkit-scrollbar-track-piece:end,
#modalbg .modal::-webkit-scrollbar-track-piece:start,
#modalbg .modal::-webkit-scrollbar-track-piece:end,
#sidebar::-webkit-scrollbar-track-piece:start,
#sidebar::-webkit-scrollbar-track-piece:end{
  background:transparent!important;
}

/* Firefox não exibe setas nativas na scrollbar fina; mantém somente o thumb. */
html,
#modalbg .modal,
#sidebar{
  scrollbar-width:thin;
}

/* =========================================================
   FICHA DO VINHO — AÇÕES FLUTUANTES
   ========================================================= */
#modalbg .wine-floating-actions{
  position:sticky;
  right:0;
  bottom:12px;
  z-index:25;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:9px;
  width:100%;
  min-height:50px;
  margin-top:10px;
  padding-top:8px;
  pointer-events:none;
}

#modalbg .wine-float-btn{
  pointer-events:auto;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.78);
  border-radius:50%;
  box-shadow:
    0 10px 24px rgba(32,34,31,.18),
    0 2px 4px rgba(32,34,31,.08);
  cursor:pointer;
  transition:
    transform .20s var(--nw-ease),
    box-shadow .20s ease,
    background-color .20s ease;
}

#modalbg .wine-float-btn:hover{
  transform:translateY(-3px) scale(1.03);
  box-shadow:
    0 15px 28px rgba(32,34,31,.22),
    0 3px 6px rgba(32,34,31,.08);
}

#modalbg .wine-float-btn:active{
  transform:scale(.96);
}

#modalbg .wine-float-cart{
  background:#5f3341;
  color:#fff;
  font-size:28.75px!important;
  font-family:Arial,sans-serif!important;
  font-weight:300!important;
  line-height:1!important;
}

#modalbg .wine-float-whatsapp{
  background:#2e7d54;
  color:#fff;
  padding:0!important;
}

#modalbg .wine-float-whatsapp svg{
  width:22px;
  height:22px;
  display:block;
  fill:currentColor;
}

#modalbg .wine-floating-actions::before{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:66px;
  border-radius:14px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0) 0%,
    rgba(255,253,249,.72) 62%,
    rgba(255,253,249,.94) 100%
  );
  pointer-events:none;
  z-index:-1;
}

@media(max-width:720px){
  #modalbg .wine-floating-actions{
    bottom:8px;
    min-height:48px;
  }
  #modalbg .wine-float-btn{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    flex-basis:44px;
  }
  #modalbg .wine-float-whatsapp svg{
    width:21px;
    height:21px;
  }
}

#modalbg .mactions{
  display:none!important;
}

/* =========================================================
   CARDS — BOLHAS DE FILTRO / TAGS
   Mais legíveis e aproximadamente 20% menores
   ========================================================= */
.nw-card-tags{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin-top:10px;
  min-height:20px;
}

.nw-card-tags span{
  max-width:100%;
  box-sizing:border-box;
  padding:4px 6px;
  border:1px solid #d1c6bb;
  border-radius:999px;
  background:#eee7df;
  color:#403a35;
  font-size:9.2px;
  line-height:1.05;
  font-weight:800;
  letter-spacing:.01em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.nw-card-tags span:nth-child(2){
  background:#f3ece5;
  color:#504840;
}

@media(max-width:720px){
  .nw-card-tags span{
    padding:4px 5px;
    font-size:8.625px;
  }
}

/* =========================================================
   ORIGENS — BANDEIRAS REAIS
   Evita que o navegador mostre "AR", "DE", "AU"... como
   letras de indicadores regionais em vez da bandeira.
   ========================================================= */
.nw-origin-flag{
  display:grid!important;
  place-items:center!important;
  width:62px!important;
  height:46px!important;
  overflow:hidden;
  line-height:1!important;
}
.nw-origin-flag-img{
  display:block;
  width:58px;
  height:auto;
  max-height:40px;
  object-fit:contain;
  border-radius:2px;
  box-shadow:0 2px 7px rgba(32,34,31,.10);
}
.nw-origin-flag-fallback{
  display:block;
  font-size:39.1px;
  line-height:1;
}
@media(max-width:720px){
  .nw-origin-flag{
    width:54px!important;
    height:42px!important;
  }
  .nw-origin-flag-img{
    width:52px;
    max-height:36px;
  }
}

.nw-origin-flag-img[src*="/za.png"]{
  display:block!important;
  width:60px!important;
  height:auto!important;
  max-height:40px!important;
  object-fit:contain!important;
}

/* Bandeiras — sombra sutil para destacar sobre o fundo claro */
.nw-origin-flag-img{
  filter:drop-shadow(0 2px 3px rgba(35,31,28,.16));
}

/* =========================================================
   FICHA DO VINHO — NOVO LAYOUT
   ========================================================= */
#modalbg .mbody{
  padding:18px 20px 20px!important;
}

#modalbg .wine-sheet-main{
  display:grid;
  grid-template-columns:minmax(210px,280px) minmax(0,1fr);
  gap:20px;
  align-items:stretch;
  margin-bottom:18px;
}

#modalbg .wine-sheet-image{
  min-height:318px!important;
  height:100%;
  border-radius:16px!important;
  overflow:hidden;
  background:linear-gradient(145deg,#f1ebe5,#e6dcd2);
}

#modalbg .wine-sheet-image .wine-photo{
  width:100%;
  height:100%;
  min-height:318px;
  object-fit:cover;
  display:block;
}

#modalbg .wine-sheet-image .bottle-placeholder{
  width:62px;
  height:176px;
}

#modalbg .wine-sheet-info{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

#modalbg .wine-sheet-location{
  color:#8a7d73;
  font-size:10.35px;
  line-height:1.4;
  margin-bottom:5px;
}

#modalbg .wine-sheet-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}

#modalbg .wine-sheet-heading .dtitle{
  margin:0 0 4px;
}

#modalbg .wine-sheet-heading .dprice{
  flex:0 0 auto;
  margin:0;
  white-space:nowrap;
}

#modalbg .dmeta{
  margin-top:0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

#modalbg .dmeta div{
  min-width:0;
  padding:10px 11px;
  border:1px solid rgba(215,205,195,.72);
  background:#fbf7f2;
}

#modalbg .wine-notes-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:2px;
  padding-bottom:4px;
}

#modalbg .wine-notes-grid .mnote{
  margin-top:0!important;
  min-width:0;
  height:auto!important;
  min-height:110px;
  box-sizing:border-box;
  padding:12px 13px;
  border:1px solid rgba(215,205,195,.72);
  background:#fbf7f2;
}

#modalbg .wine-notes-grid .wine-note-content{
  margin-top:1px;
}

#modalbg .wine-floating-actions{
  margin-top:12px;
  padding-top:8px;
}

@media(max-width:800px){
  #modalbg .wine-sheet-main{
    grid-template-columns:190px minmax(0,1fr);
    gap:15px;
  }
  #modalbg .wine-sheet-image,
  #modalbg .wine-sheet-image .wine-photo{
    min-height:270px!important;
  }
  #modalbg .dtitle{
    font-size:27.6px;
  }
}

@media(max-width:680px){
  #modalbg .mbody{
    padding:15px!important;
  }

  #modalbg .wine-sheet-main{
    grid-template-columns:1fr;
    gap:14px;
  }

  #modalbg .wine-sheet-image,
  #modalbg .wine-sheet-image .wine-photo{
    min-height:230px!important;
    max-height:300px;
  }

  #modalbg .wine-sheet-heading{
    display:block;
  }

  #modalbg .wine-sheet-heading .dprice{
    margin-top:8px;
  }

  #modalbg .wine-notes-grid{
    grid-template-columns:1fr;
    gap:9px;
  }

  #modalbg .wine-notes-grid .mnote{
    min-height:0;
  }
}

/* =========================================================
   FICHA DO VINHO — bandeiras reais no país
   ========================================================= */
.wine-sheet-flag{
  display:inline-block;
  width:22px;
  height:auto;
  max-height:14px;
  margin-right:4px;
  vertical-align:-2px;
  object-fit:contain;
  border-radius:2px;
  filter:drop-shadow(0 1px 2px rgba(35,31,28,.14));
}
.wine-sheet-flag-md{
  width:24px;
  max-height:16px;
}
#modalbg .wine-sheet-location{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:2px;
}
#modalbg .dmeta b + .wine-sheet-flag{
  margin-top:2px;
}

/* Cabeçalho da Ficha do Vinho — +30% */
#modalbg .mhead b{
  font-size:13.455px!important;
}

/* Cards — bandeira real no badge de país */
.nw-country-badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap;
}
.nw-country-badge-flag{
  display:block;
  width:22px;
  height:auto;
  max-height:14px;
  object-fit:contain;
  flex:0 0 auto;
  border-radius:2px;
  filter:drop-shadow(0 1px 2px rgba(35,31,28,.14));
}
.nw-country-badge-fallback{
  display:inline-block;
  font-size:12.65px;
  line-height:1;
}

/* =========================================================
   CASA DE VINO — ASSET DA LOGO OFICIAL
   ========================================================= */

/* Header: usar a arte real, mantendo proporção e área segura. */
.site-header .nw-brand{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
}
.site-header .nw-brand img{
  width:70px!important;
  height:70px!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}

/* Remove qualquer filtro visual aplicado por versões anteriores. */
.site-header .nw-brand img{
  filter:none!important;
}

/* Footer: versão branca da marca, proporcional ao espaço. */
.nw-footer-brand img{
  width:96px!important;
  height:96px!important;
  object-fit:contain!important;
  display:block!important;
  filter:none!important;
}

/* A logo tem uma pequena margem transparente própria; manter o
   conjunto visual compacto no header. */
@media(max-width:720px){
  .site-header .nw-brand img{
    width:60px!important;
    height:60px!important;
  }
  .nw-footer-brand img{
    width:84px!important;
    height:84px!important;
  }
}
@media(max-width:430px){
  .site-header .nw-brand img{
    width:56px!important;
    height:56px!important;
  }
}


/* ===== CAMADA VISUAL CONSOLIDADA V7 ===== */
/* =========================================================
   CASA DE VINO — REFATORAÇÃO VISUAL CONSERVADORA
   Camada final. Não altera lógica, dados, filtros ou assets.
   ========================================================= */
:root{
  --cv-bg:#f5f2ec;
  --cv-surface:#fffdfa;
  --cv-surface-2:#efebe4;
  --cv-ink:#20231f;
  --cv-muted:#716b63;
  --cv-soft:#928b82;
  --cv-line:#ded8cf;
  --cv-line-strong:#cec5ba;
  --cv-green:#34463c;
  --cv-green-2:#51675a;
  --cv-wine:#653543;
  --cv-wine-dark:#512a36;
  --cv-gold:#a98968;
  --cv-shadow-sm:0 5px 18px rgba(30,34,29,.055);
  --cv-shadow-md:0 16px 46px rgba(30,34,29,.085);
  --cv-shadow-lg:0 28px 80px rgba(30,34,29,.14);
  --cv-radius-sm:10px;
  --cv-radius:16px;
  --cv-radius-lg:24px;
  --cv-ease:cubic-bezier(.2,.8,.2,1);
  --cv-fast:180ms;
  --cv-normal:320ms;
}

html{scroll-padding-top:104px}
body{
  background:var(--cv-bg)!important;
  color:var(--cv-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.container{width:min(1180px,calc(100% - 40px))!important}
button,a,input,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{
  outline:2px solid var(--cv-wine)!important;
  outline-offset:3px!important;
}

/* ---------- Header ---------- */
header.site-header{
  min-height:72px!important;
  background:rgba(250,248,244,.90)!important;
  border-bottom:1px solid rgba(206,197,186,.72)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px) saturate(1.15)!important;
}
.nw-header-inner{min-height:72px!important;gap:18px!important}
.site-header .nw-brand img{width:61px!important;height:61px!important}
.nw-brand-sub{
  margin-right:14px!important;
  color:#857b71!important;
  font-size:7.475px!important;
  letter-spacing:.22em!important;
}
.nw-nav{gap:26px!important}
.nw-nav a{
  color:#5e615c!important;
  font-size:9.2px!important;
  letter-spacing:.13em!important;
  transition:color var(--cv-fast) ease!important;
}
.nw-nav a:hover{color:var(--cv-ink)!important}
.nw-nav a:after{background:var(--cv-wine)!important;bottom:0!important}
.nw-explore{
  min-height:46px!important;
  padding:0 20px!important;
  border:1px solid var(--cv-ink)!important;
  background:var(--cv-ink)!important;
  box-shadow:none!important;
}
.nw-explore:hover{box-shadow:0 9px 24px rgba(32,35,31,.13)!important}
.nw-explore,.nw-cart{font-size:11.96px!important;letter-spacing:.08em!important}
.nw-cart{
  min-height:46px!important;
  padding:0 16px!important;
  border-color:var(--cv-line)!important;
  background:rgba(255,253,250,.92)!important;
  color:var(--cv-ink)!important;
}
 .cart-count{
  min-width:21px!important;height:21px!important;
  display:grid!important;place-items:center!important;
  background:var(--cv-wine)!important;color:#fff!important;
  border-radius:999px!important;font-size:10.35px!important;
}

/* ---------- Hero ---------- */
.nw-hero{
  min-height:650px!important;
  background:linear-gradient(135deg,#f8f5ef 0%,#f1ece5 100%)!important;
  border-bottom:1px solid var(--cv-line)!important;
}
.nw-hero-photo{
  width:46%!important;
  left:auto!important;right:0!important;top:0!important;bottom:0!important;
  border-left:1px solid rgba(206,197,186,.54)!important;
  background-position:center!important;
}
.nw-hero-photo:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(245,242,236,.22),transparent 26%),linear-gradient(0deg,rgba(31,35,31,.12),transparent 42%);
}
.nw-hero-noise{
  background:radial-gradient(circle at 34% 34%,rgba(169,137,104,.09),transparent 32%)!important;
}
.nw-hero-grid{
  min-height:650px!important;
  grid-template-columns:1.08fr .92fr!important;
  gap:64px!important;
}
.nw-hero-copy{padding:88px 0 94px!important;max-width:610px!important}
.nw-kicker,.nw-index{
  color:var(--cv-wine)!important;
  font-size:9.2px!important;
  letter-spacing:.20em!important;
}
.nw-hero h1{
  max-width:610px!important;
  margin:20px 0 22px!important;
  color:var(--cv-ink)!important;
  font:500 clamp(59.8px,6.555vw,89.7px)/.94 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.045em!important;
}
.nw-hero h1 em{color:var(--cv-green)!important;font-style:normal!important}
.nw-hero-lead{
  max-width:510px!important;
  color:var(--cv-muted)!important;
  font-size:16.1px!important;
  line-height:1.72!important;
}
.nw-hero-actions{margin-top:30px!important;gap:10px!important}
.nw-btn{
  min-height:54px!important;
  padding:0 22px!important;
  border-radius:14px!important;
  font-size:11.96px!important;
  letter-spacing:.075em!important;
  transition:transform var(--cv-fast) var(--cv-ease),box-shadow var(--cv-fast) ease,background var(--cv-fast) ease!important;
}
.nw-btn-dark{background:var(--cv-ink)!important}
.nw-btn-dark:hover{box-shadow:0 10px 26px rgba(32,35,31,.16)!important}
.nw-btn-wine{
  border:1px solid var(--cv-wine)!important;
  background:var(--cv-wine)!important;
  color:#fff!important;
  box-shadow:0 9px 24px rgba(101,53,67,.14)!important;
}
.nw-btn-wine:hover{
  background:var(--cv-wine-dark)!important;
  border-color:var(--cv-wine-dark)!important;
  box-shadow:0 12px 30px rgba(101,53,67,.22)!important;
  transform:translateY(-2px)!important;
}
.nw-btn-wine span{font-size:1.322em!important;line-height:1!important}
.nw-btn-light{background:rgba(255,253,250,.55)!important;border-color:var(--cv-line-strong)!important}
.nw-proof{
  margin-top:34px!important;
  gap:24px!important;
  color:#8a837b!important;
  font-size:8.625px!important;
  letter-spacing:.08em!important;
}
.nw-proof b{color:var(--cv-ink)!important}
.nw-hero-product{justify-content:flex-end!important;padding:48px 0!important}
.nw-hero-card{
  width:min(390px,88%)!important;
  border:1px solid rgba(255,255,255,.64)!important;
  border-radius:22px!important;
  background:rgba(255,253,250,.94)!important;
  box-shadow:var(--cv-shadow-lg)!important;
  transform:translateX(8px) rotate(.5deg)!important;
  backdrop-filter:blur(5px)!important;
}
.nw-hero.is-ready .nw-hero-card{animation-name:cvCardIn!important}
@keyframes cvCardIn{from{opacity:0;transform:translateY(18px) translateX(8px) rotate(.5deg)}to{opacity:1;transform:translateY(0) translateX(8px) rotate(.5deg)}}
.nw-card-label{padding:12px 15px!important;color:#887e75!important}
.nw-hero-card img{height:330px!important;object-fit:cover!important}
.nw-hero-card-bottom{padding:15px 16px 17px!important}
.nw-hero-card-bottom small{color:var(--cv-wine)!important}
.nw-hero-card-bottom strong{font-size:20.7px!important;line-height:1.12!important}
.nw-hero-card-bottom a{border-color:var(--cv-line)!important;background:#fff!important}

/* ---------- Proof strip ---------- */
.nw-stats{background:var(--cv-ink)!important}
.nw-stats-row{padding:16px 0!important}
.nw-stats-row>div{padding:12px 22px!important}
.nw-stats-row small{color:#a99f96!important;font-size:11.96px!important}
.nw-stats-row strong{font-size:25.415px!important}
.nw-stats-row span{font-size:11.96px!important}

/* ---------- Editorial sections ---------- */
#descoberta,#guia,#paises{padding:84px 0!important}
#descoberta{background:#faf8f4!important}
#guia{background:var(--cv-surface)!important}
#paises{background:#f0ece6!important}
.nw-section-head,.nw-guide-top,.nw-origin-intro{
  gap:58px!important;
  align-items:end!important;
}
.nw-section-head h2,.nw-guide-top h2,.nw-origin-intro h2{
  color:var(--cv-ink)!important;
  font:500 clamp(44.85px,5.06vw,70.15px)/.97 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.035em!important;
}
.nw-section-head h2 em,.nw-guide-top h2 em,.nw-origin-intro h2 em{color:var(--cv-green)!important}
.nw-section-head p,.nw-guide-top p,.nw-origin-intro p{
  color:var(--cv-muted)!important;
  font-size:14.95px!important;
  line-height:1.72!important;
}
.nw-discovery-grid{gap:12px!important;margin-top:38px!important}
.nw-image-card{
  min-height:380px!important;
  border-radius:20px!important;
  box-shadow:none!important;
  border:1px solid rgba(206,197,186,.72)!important;
}
.nw-image-card-large{min-height:470px!important}
.nw-image-card-caption{left:20px!important;right:20px!important;bottom:20px!important}
.nw-image-card-caption strong{font-size:23px!important;line-height:1.1!important}
.nw-weekly-badge{top:14px!important;right:14px!important}

/* ---------- Occasion guide ---------- */
.nw-guide-top{margin-bottom:28px!important}
.nw-guide-grid{gap:10px!important}
.nw-guide-card{
  min-height:166px!important;
  padding:18px!important;
  border-color:var(--cv-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.nw-guide-card:hover{
  transform:translateY(-3px)!important;
  border-color:var(--cv-line-strong)!important;
  box-shadow:var(--cv-shadow-sm)!important;
}
.nw-guide-card span{color:var(--cv-gold)!important}
.nw-guide-card strong{font-size:23px!important;color:var(--cv-ink)!important}
.nw-guide-card small{color:var(--cv-muted)!important;font-size:15.525px!important;line-height:1.5!important}
.nw-guide-card b{color:var(--cv-wine)!important}

/* ---------- Origins ---------- */
.nw-origin-slider-shell{
  margin-top:34px!important;
  padding:18px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:22px!important;
  background:rgba(255,253,250,.68)!important;
  box-shadow:none!important;
}
.nw-origin-slider-top{margin-bottom:14px!important}
.nw-origin-slider-top>span{color:#777068!important}
.nw-origin-arrow{
  border-color:var(--cv-line)!important;
  background:#fff!important;
  color:var(--cv-ink)!important;
}
.nw-origin-country{
  flex-basis:118px!important;
  min-height:124px!important;
  padding:15px 10px 13px!important;
  border-color:var(--cv-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.nw-origin-country:hover{transform:translateY(-2px)!important;box-shadow:var(--cv-shadow-sm)!important}
.nw-origin-country.selected{
  border-color:rgba(101,53,67,.62)!important;
  background:#f8f0f2!important;
  box-shadow:0 7px 20px rgba(101,53,67,.08)!important;
}
.nw-origin-country-name{color:var(--cv-ink)!important}
.nw-origin-low{color:var(--cv-wine)!important}

/* ---------- Catalog introduction ---------- */
.cv-catalog-intro{
  padding:76px 0 26px;
  background:var(--cv-bg);
  border-top:1px solid var(--cv-line);
}
.cv-catalog-intro-inner{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:48px;
}
.cv-catalog-kicker{
  display:block;
  color:var(--cv-wine);
  font-size:9.2px;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
}
.cv-catalog-title{
  margin:9px 0 0;
  color:var(--cv-ink);
  font:500 clamp(44.85px,4.83vw,66.7px)/.98 Georgia,"Times New Roman",serif;
  letter-spacing:-.035em;
}
.cv-catalog-title em{color:var(--cv-green);font-style:normal}
.cv-catalog-copy{
  max-width:510px;
  margin:12px 0 0;
  color:var(--cv-muted);
  font-size:14.95px;
  line-height:1.7;
}
.cv-catalog-result{
  flex:0 0 auto;
  min-width:150px;
  padding:14px 16px;
  border:1px solid var(--cv-line);
  border-radius:14px;
  background:rgba(255,253,250,.76);
  text-align:right;
}
.cv-catalog-result strong{
  display:block;
  color:var(--cv-wine);
  font:500 27.6px/1 Georgia,"Times New Roman",serif;
}
.cv-catalog-result span{
  display:block;
  margin-top:5px;
  color:#8a837b;
  font-size:8.05px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

/* ---------- Search / catalog toolbar ---------- */
.toolbar#catalogo{
  top:72px!important;
  z-index:32!important;
  padding:12px 0 10px!important;
  background:rgba(245,242,236,.92)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(206,197,186,.86)!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px) saturate(1.1)!important;
}
.toolbar .tools{
  grid-template-columns:minmax(0,1.6fr) minmax(190px,.55fr) auto!important;
  gap:9px!important;
}
.toolbar .search,.toolbar .select,.toolbar .filterbtn{
  min-height:46px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:12px!important;
  background:rgba(255,253,250,.96)!important;
  color:var(--cv-ink)!important;
  box-shadow:none!important;
  transition:border-color var(--cv-fast) ease,box-shadow var(--cv-fast) ease,background var(--cv-fast) ease!important;
}
.toolbar .search{padding:0 15px!important;font-size:13.8px!important}
.toolbar .search::placeholder{color:#999087!important;opacity:1!important}
.toolbar .search:focus,.toolbar .select:focus{
  border-color:#b8aa9d!important;
  box-shadow:0 0 0 3px rgba(101,53,67,.06)!important;
  outline:none!important;
}
.toolbar .select{padding:0 38px 0 13px!important;font-size:11.5px!important}
.toolbar .filterbtn{
  min-width:108px!important;
  padding:0 15px!important;
  font-size:10.35px!important;
  font-weight:900!important;
}
.toolbar .filterbtn:hover{border-color:var(--cv-line-strong)!important;background:#fff!important}
#quick{
  padding-top:9px!important;
  padding-bottom:1px!important;
  scrollbar-width:none;
}
#quick::-webkit-scrollbar{display:none}
#quick .chip{
  flex:0 0 auto;
  min-height:31px!important;
  padding:0 11px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:999px!important;
  background:rgba(255,253,250,.82)!important;
  color:#5f5a54!important;
  font-size:10.35px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
#quick .chip:hover{border-color:var(--cv-line-strong)!important;background:#fff!important}
#quick .chip.active{
  border-color:var(--cv-wine)!important;
  background:var(--cv-wine)!important;
  color:#fff!important;
}

/* ---------- Catalog layout ---------- */
#productSection{
  padding:24px 0 82px!important;
  background:var(--cv-bg)!important;
}
#productSection .results-products{
  grid-template-columns:235px minmax(0,1fr)!important;
  gap:22px!important;
}
#productSection .results{
  min-height:38px!important;
  margin:0 0 12px!important;
  justify-content:flex-end!important;
}
#productSection #pageSize{
  min-height:34px!important;
  padding:0 32px 0 11px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#665f58!important;
  font-size:10.35px!important;
}
#productSection #grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}

/* Sidebar */
#sidebar{
  box-sizing:border-box!important;
  top:max(12px,env(safe-area-inset-top))!important;
  bottom:max(12px,env(safe-area-inset-bottom))!important;
  left:max(12px,env(safe-area-inset-left))!important;
  width:min(380px,calc(100vw - 24px))!important;
  height:auto!important;
  max-height:calc(100vh - 24px)!important;
  max-height:calc(100dvh - 24px)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  border:1px solid var(--cv-line)!important;
  border-radius:18px!important;
  background:rgba(255,253,250,.98)!important;
  box-shadow:0 24px 70px rgba(30,34,29,.18)!important;
}
#sidebar .sidebar-head{
  padding:15px 15px 13px!important;
  border-bottom:1px solid var(--cv-line)!important;
  background:transparent!important;
}
#sidebar .sidebar-title{color:var(--cv-ink)!important;font-size:14.95px!important}
#sidebar .filter-summary{margin-top:4px!important;color:#8a837a!important;font-size:9.2px!important}
#sidebar .sidebar-close{background:#f0ece6!important;color:#5d5b57!important}
#sidebar .filter-accordion{border-bottom:1px solid #e8e2da!important}
#sidebar .filter-toggle{
  min-height:43px!important;
  padding:0 14px!important;
  background:transparent!important;
  color:var(--cv-ink)!important;
  font-size:11.5px!important;
}
#sidebar .filter-toggle:hover{background:#faf7f2!important}
#sidebar .filter-toggle>span:last-child{
  display:inline-grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  transition:transform var(--cv-fast) var(--cv-ease)!important;
  transform-origin:center!important;
}
#sidebar .filter-accordion.open>.filter-toggle>span:last-child{transform:rotate(180deg)!important}
#sidebar .filter-box{padding:2px 14px 13px!important;background:transparent!important}
#sidebar .check{
  min-height:29px!important;
  color:#5f5a54!important;
  font-size:10.35px!important;
  line-height:1.3!important;
}
#sidebar .check input{accent-color:var(--cv-wine)!important}
#sidebar #countryChecks{max-height:190px!important;overflow-y:auto!important;padding-right:3px!important}
#sidebar #grapeChecks{max-height:210px!important;overflow-y:auto!important;padding-right:3px!important}
#sidebar .weekly-option{
  min-height:42px!important;
  padding:9px 10px!important;
  border-color:var(--cv-line)!important;
  border-radius:10px!important;
  background:#f7f3ed!important;
  box-shadow:none!important;
}
#sidebar .price-inputs input{
  min-height:35px!important;
  border-color:var(--cv-line)!important;
  background:#fff!important;
  border-radius:9px!important;
}
#sidebar .filter-actions{
  gap:7px!important;
  padding:11px!important;
  border-top:1px solid var(--cv-line)!important;
  background:#faf7f2!important;
}
#sidebar .clear,#sidebar .apply-filter{
  min-height:36px!important;
  border-radius:9px!important;
  font-size:9.2px!important;
}
#sidebar .clear{border-color:var(--cv-line)!important;background:#fff!important;color:var(--cv-ink)!important}
#sidebar .apply-filter{background:var(--cv-wine)!important;color:#fff!important}

/* ---------- Product cards ---------- */
#productSection .nw-card{
  border:1px solid var(--cv-line)!important;
  border-radius:18px!important;
  background:var(--cv-surface)!important;
  box-shadow:var(--cv-shadow-sm)!important;
  transform:translateY(0);
  transition:transform var(--cv-normal) var(--cv-ease),box-shadow var(--cv-normal) ease,border-color var(--cv-fast) ease!important;
}
#productSection .nw-card:hover{
  transform:translateY(-4px)!important;
  border-color:var(--cv-line-strong)!important;
  box-shadow:var(--cv-shadow-md)!important;
}
#productSection .nw-card-media{
  height:300px!important;
  background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.88),transparent 52%),linear-gradient(145deg,#f0ebe4,#e8e1d8)!important;
}
#productSection .nw-card-media::after{
  left:19%!important;right:19%!important;bottom:14px!important;height:13px!important;
  background:rgba(52,70,60,.10)!important;filter:blur(8px)!important;
}
#productSection .nw-card-photo{
  padding:17px 28px 15px!important;
  object-fit:contain!important;
  filter:none!important;
}
#productSection .nw-card:hover .nw-card-photo{transform:scale(1.045) translateY(-2px)!important;filter:none!important}
#productSection .nw-country-badge{
  top:11px!important;left:11px!important;
  padding:6px 8px!important;
  border:1px solid rgba(222,216,207,.88)!important;
  background:rgba(255,253,250,.92)!important;
  color:#4f544f!important;
  box-shadow:0 4px 12px rgba(30,34,29,.05)!important;
}
#productSection .nw-card-content{min-height:222px!important;padding:15px 15px 14px!important}
#productSection .nw-card-topline{min-height:15px!important}
#productSection .nw-style{color:var(--cv-wine)!important}
#productSection .nw-vintage{color:#958c83!important}
#productSection .nw-card-title{
  margin-top:8px!important;
  color:var(--cv-ink)!important;
  font:600 21.85px/1.08 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.018em!important;
}
#productSection .nw-card-producer{margin-top:5px!important;color:#7c756d!important;font-size:10.35px!important;line-height:1.45!important}
#productSection .nw-card-tags{gap:4px!important;margin-top:10px!important;min-height:21px!important}
#productSection .nw-card-tags span{
  padding:4px 6px!important;
  border-color:#dfd7ce!important;
  background:#f4efe9!important;
  color:#665f58!important;
  font-size:8.97px!important;
  font-weight:700!important;
}
#productSection .nw-card-footer{
  gap:10px!important;
  padding-top:12px!important;
  border-color:#ebe5dd!important;
}
#productSection .nw-card-price small{color:#9a9087!important;font-size:6.9px!important}
#productSection .nw-card-price strong{color:var(--cv-wine)!important;font:600 23px/1 Georgia,"Times New Roman",serif!important}
#productSection .nw-card-actions{gap:6px!important}
#productSection .nw-card-view{
  min-height:35px!important;
  padding:0 11px!important;
  border:1px solid var(--cv-line-strong)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--cv-ink)!important;
  font-size:9.2px!important;
}
#productSection .nw-card-view:hover{background:var(--cv-ink)!important;border-color:var(--cv-ink)!important;color:#fff!important}
#productSection .nw-card-add{
  width:35px!important;height:35px!important;
  border-radius:10px!important;
  background:var(--cv-wine)!important;
  box-shadow:none!important;
}
#productSection .nw-card-add:hover{background:var(--cv-wine-dark)!important;box-shadow:0 8px 18px rgba(101,53,67,.18)!important}

/* Empty/loading state */
#productSection #catalogStatus,#productSection #grid>.guide{
  border:1px solid var(--cv-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* Pagination */
#pagination{margin-top:27px!important;gap:6px!important}
#pagination button{
  min-width:36px!important;height:36px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--cv-ink)!important;
  box-shadow:none!important;
}
#pagination button.active{border-color:var(--cv-ink)!important;background:var(--cv-ink)!important;color:#fff!important}
#pagination button:hover:not(:disabled):not(.active){border-color:var(--cv-line-strong)!important;background:#faf7f2!important}

/* ---------- Wine detail modal ---------- */
#modalbg{padding:20px!important;background:rgba(20,22,20,.64)!important;backdrop-filter:blur(5px)!important}
#modalbg .modal{
  width:min(940px,calc(100vw - 40px))!important;
  max-height:min(780px,calc(100dvh - 40px))!important;
  border:1px solid rgba(255,255,255,.36)!important;
  border-radius:22px!important;
  background:var(--cv-surface)!important;
  box-shadow:var(--cv-shadow-lg)!important;
}
#modalbg .mhead{
  min-height:58px!important;
  padding:0 19px!important;
  align-items:center!important;
  border-bottom:1px solid var(--cv-line)!important;
  background:rgba(255,253,250,.94)!important;
}
#modalbg .mhead .kicker{color:var(--cv-wine)!important}
#modalbg .close{
  width:34px!important;height:34px!important;
  border:1px solid var(--cv-line)!important;
  background:#f5f1eb!important;
  color:#5c5b56!important;
}
#modalbg .mbody{padding:20px!important}
#modalbg .wine-sheet-main{grid-template-columns:minmax(230px,300px) minmax(0,1fr)!important;gap:24px!important;margin-bottom:18px!important}
#modalbg .wine-sheet-image{
  min-height:350px!important;
  border:1px solid #e3dbd2!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 50% 42%,#fff,transparent 56%),linear-gradient(145deg,#f0ebe4,#e6ddd4)!important;
}
#modalbg .wine-sheet-image .wine-photo{
  width:100%!important;height:350px!important;min-height:350px!important;
  padding:20px!important;
  object-fit:contain!important;
}
#modalbg .wine-sheet-heading{gap:18px!important;margin-bottom:16px!important}
#modalbg .dtitle{color:var(--cv-ink)!important;font:600 33.35px/1.04 Georgia,"Times New Roman",serif!important;letter-spacing:-.025em!important}
#modalbg .dproducer{color:var(--cv-muted)!important;font-size:11.5px!important}
#modalbg .dprice{color:var(--cv-wine)!important;font:600 25.3px/1 Georgia,"Times New Roman",serif!important}
#modalbg .dmeta{gap:8px!important}
#modalbg .dmeta div{
  padding:10px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:10px!important;
  background:#f8f5f0!important;
  color:#55514c!important;
}
#modalbg .dmeta b{color:#8f857c!important}
#modalbg .wine-notes-grid{gap:9px!important}
#modalbg .wine-notes-grid .mnote{
  min-height:104px!important;
  padding:12px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:12px!important;
  background:#f8f5f0!important;
}
#modalbg .wine-text-block b{color:var(--cv-ink)!important}
#modalbg .wine-note-content{color:#68615b!important;line-height:1.55!important}
#modalbg .wine-floating-actions{gap:8px!important}
#modalbg .wine-float-btn{box-shadow:0 8px 22px rgba(30,34,29,.12)!important}
#modalbg .wine-float-cart{background:var(--cv-wine)!important}

/* ---------- Cart drawer state guard ----------
   The legacy stylesheet disables transforms under prefers-reduced-motion.
   Transform is also the drawer's CLOSED/OPEN state, so it must never be
   neutralized. Motion preferences disable transition only, not state. */
#cartDrawer:not(.open){
  transform:translateX(calc(100% + 24px))!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:transform .34s var(--cv-ease),visibility 0s linear .34s,box-shadow .34s ease!important;
}
#cartDrawer.open{
  transform:translateX(0)!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transition:transform .34s var(--cv-ease),visibility 0s linear 0s,box-shadow .34s ease!important;
}
#cartBackdrop:not(.show){
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#cartBackdrop.show{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* ---------- Cart drawer ---------- */
#cartBackdrop{background:rgba(20,22,20,.50)!important;backdrop-filter:blur(3px)!important}
#cartDrawer{
  width:min(410px,calc(100vw - 14px))!important;
  border-left:1px solid var(--cv-line)!important;
  background:var(--cv-surface)!important;
  box-shadow:-18px 0 55px rgba(30,34,29,.16)!important;
}
.cart-drawer-head{
  padding:19px 18px!important;
  border-bottom:1px solid var(--cv-line)!important;
}
.cart-drawer-head h3{color:var(--cv-ink)!important;font:600 27.6px/1.05 Georgia,"Times New Roman",serif!important}
.cart-subtitle{color:var(--cv-muted)!important}
.cart-close{border-color:var(--cv-line)!important;background:#f3efe9!important}
.cart-items{padding:12px 14px!important}
.cart-row{
  padding:13px!important;
  border:1px solid var(--cv-line)!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.cart-row-name{color:var(--cv-ink)!important}
.cart-row-meta{color:var(--cv-muted)!important}
.cart-row-price{color:var(--cv-wine)!important}
.cart-qty button{border-color:var(--cv-line)!important;background:#f7f3ed!important}
.cart-bottom{
  padding:15px 16px 18px!important;
  border-top:1px solid var(--cv-line)!important;
  background:#faf7f2!important;
}
.cart-total-row strong{color:var(--cv-wine)!important}
.cart-checkout{min-height:44px!important;border-radius:11px!important;background:var(--cv-wine)!important}
.cart-continue{min-height:40px!important;border-color:var(--cv-line)!important;border-radius:11px!important;background:#fff!important}

/* ---------- Footer ---------- */
footer{padding:60px 0 30px!important;background:var(--cv-ink)!important}
.nw-footer-top{gap:45px!important}
.nw-footer-brand img{width:84px!important;height:84px!important}
.nw-footer-brand span{color:rgba(255,255,255,.48)!important}
.nw-footer-links a{color:rgba(255,255,255,.68)!important}
.nw-footer-links a:hover{color:#fff!important}
.nw-footer-bottom{color:rgba(255,255,255,.34)!important}

/* ---------- Responsive ---------- */
@media(max-width:1050px){
  .nw-nav{gap:17px!important}
  .nw-brand-sub{display:none!important}
  .nw-hero-grid{gap:34px!important}
  .nw-hero-card{width:min(350px,92%)!important}
  #productSection #grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:900px){
  .container{width:min(100% - 30px,1180px)!important}
  #productSection .results-products{grid-template-columns:1fr!important}
  #sidebar{
    position:fixed!important;
    top:max(8px,env(safe-area-inset-top))!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    left:max(8px,env(safe-area-inset-left))!important;
    width:min(380px,calc(100vw - 16px))!important;
    height:auto!important;
    max-height:calc(100vh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border-radius:18px!important;
    box-shadow:0 20px 58px rgba(30,34,29,.20)!important;
  }
  #sidebar .sidebar-head{position:sticky!important;top:0!important;z-index:3!important;background:#fffdf9!important}
  #sidebar .filter-actions{position:sticky!important;bottom:0!important;z-index:3!important}
}

@media(max-width:720px){
  html{scroll-padding-top:78px}
  .container{width:calc(100% - 28px)!important}
  header.site-header,.nw-header-inner{min-height:64px!important}
  .site-header .nw-brand img{width:54px!important;height:54px!important}
  .nw-explore{display:none!important}
  .nw-btn{min-height:50px!important;padding:0 18px!important;font-size:11.5px!important}
  .nw-cart span:not(.cart-count){display:none!important}
  .nw-cart{min-width:46px!important;justify-content:center!important;padding:0 10px!important}
  .nw-menu{width:38px!important;height:38px!important;border:1px solid var(--cv-line)!important;border-radius:11px!important;background:#fff!important;color:var(--cv-ink)!important}

  .nw-hero{min-height:680px!important;display:block!important}
  .nw-hero-grid{display:block!important;min-height:680px!important}
  .nw-hero-copy{padding:62px 0 26px!important;max-width:470px!important}
  .nw-hero h1{font-size:clamp(51.75px,14.95vw,67.85px)!important;max-width:470px!important}
  .nw-hero-lead{font-size:14.95px!important;max-width:390px!important}
  .nw-hero-photo{top:52%!important;bottom:0!important;width:100%!important;height:48%!important;border-left:0!important;border-top:1px solid rgba(206,197,186,.55)!important}
  .nw-hero:after{height:49%!important;background:linear-gradient(0deg,rgba(31,35,31,.34),transparent 72%)!important}
  .nw-proof{color:#7e756d!important;gap:15px!important}
  .nw-proof b{color:var(--cv-ink)!important}
  .nw-hero-product{display:none!important}

  .nw-stats-row{grid-template-columns:1fr 1fr!important}
  .nw-stats-row>div{padding:12px 14px!important}
  .nw-stats-row>div:nth-child(2){border-right:0!important}
  .nw-stats-row>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)!important}

  #descoberta,#guia,#paises{padding:68px 0!important}
  .nw-section-head,.nw-guide-top,.nw-origin-intro{grid-template-columns:1fr!important;gap:17px!important}
  .nw-section-head h2,.nw-guide-top h2,.nw-origin-intro h2{font-size:49.45px!important}
  .nw-discovery-grid{grid-template-columns:1fr!important;gap:10px!important;margin-top:30px!important}
  .nw-image-card,.nw-image-card-large{min-height:300px!important;grid-column:auto!important}
  .nw-guide-grid{grid-template-columns:1fr 1fr!important}
  .nw-guide-card{min-height:145px!important;padding:15px!important}
  .nw-guide-card small{font-size:14.375px!important}
  .nw-origin-slider-shell{margin-top:28px!important;padding:14px!important}
  .nw-origin-country{flex-basis:104px!important;min-height:112px!important}

  .cv-catalog-intro{padding:59px 0 20px!important}
  .cv-catalog-intro-inner{display:block!important}
  .cv-catalog-title{font-size:49.45px!important}
  .cv-catalog-copy{font-size:13.8px!important}
  .cv-catalog-result{display:inline-block!important;min-width:0!important;margin-top:18px!important;text-align:left!important}

  .toolbar#catalogo{top:64px!important;padding:9px 0!important}
  .toolbar .tools{grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important}
  .toolbar .search{min-width:0!important}
  .toolbar .select{grid-column:1/-1!important;min-height:39px!important}
  .toolbar .filterbtn{min-width:96px!important}
  #quick{gap:6px!important;padding-top:7px!important}
  #quick .chip{min-height:29px!important;font-size:9.2px!important}

  #productSection{padding:17px 0 65px!important}
  #productSection #grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  #productSection .nw-card-media{height:230px!important}
  #productSection .nw-card-photo{padding:14px 17px 12px!important}
  #productSection .nw-card-content{min-height:206px!important;padding:12px!important}
  #productSection .nw-card-title{font-size:18.4px!important}
  #productSection .nw-card-producer{font-size:9.2px!important}
  #productSection .nw-card-tags span{font-size:8.28px!important}
  #productSection .nw-card-price strong{font-size:19.55px!important}
  #productSection .nw-card-view{padding:0 9px!important;font-size:8.05px!important}
  #productSection .nw-card-add{width:33px!important;height:33px!important}

  #modalbg{padding:8px!important;align-items:flex-end!important}
  #modalbg .modal{width:100%!important;max-height:92dvh!important;border-radius:20px 20px 0 0!important}
  #modalbg .wine-sheet-main{grid-template-columns:1fr!important;gap:14px!important}
  #modalbg .wine-sheet-image,#modalbg .wine-sheet-image .wine-photo{height:260px!important;min-height:260px!important}
  #modalbg .wine-sheet-image .wine-photo{padding:14px!important}
  #modalbg .wine-sheet-heading{display:block!important}
  #modalbg .wine-sheet-heading .dprice{margin-top:9px!important}
  #modalbg .wine-notes-grid{grid-template-columns:1fr!important}
}

@media(max-width:560px){
  .nw-guide-grid{grid-template-columns:1fr!important}
  .nw-guide-card{min-height:126px!important}
  .nw-guide-card small{font-size:14.375px!important}
  #productSection #grid{grid-template-columns:1fr!important;gap:12px!important}
  #productSection .nw-card-media{height:270px!important}
  #productSection .nw-card-photo{padding:16px 30px 13px!important}
  #productSection .nw-card-content{min-height:196px!important;padding:14px!important}
  #productSection .nw-card-title{font-size:21.85px!important}
  #productSection .nw-card-producer{font-size:10.35px!important}
  #productSection .nw-card-price strong{font-size:23px!important}
  #productSection .nw-card-view{font-size:9.2px!important}
}

@media(max-width:420px){
  #sidebar{
    top:max(6px,env(safe-area-inset-top))!important;
    bottom:max(6px,env(safe-area-inset-bottom))!important;
    left:max(6px,env(safe-area-inset-left))!important;
    width:calc(100vw - 12px)!important;
    max-height:calc(100vh - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:16px!important;
  }
  #sidebar .filter-toggle{min-height:41px!important}
}


@media(max-width:390px){
  .container{width:calc(100% - 22px)!important}
  .nw-hero h1{font-size:49.45px!important}
  .toolbar .filterbtn{min-width:86px!important;padding:0 10px!important}
  #productSection .nw-card-media{height:250px!important}
}

@media(hover:none){
  #productSection .nw-card:hover,.nw-guide-card:hover,.nw-origin-country:hover{transform:none!important;box-shadow:var(--cv-shadow-sm)!important}
  #productSection .nw-card:hover .nw-card-photo{transform:none!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Accessibility: preserve drawer state even when animations are disabled. */
@media(prefers-reduced-motion:reduce){
  #cartDrawer,#cartBackdrop{transition:none!important}
  #cartDrawer:not(.open){transform:translateX(calc(100% + 24px))!important;visibility:hidden!important;pointer-events:none!important}
  #cartDrawer.open{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
  #cartBackdrop:not(.show){opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  #cartBackdrop.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
}


/* =========================================================
   CASA DE VINO — V8 / UX & ROBUSTEZ
   ========================================================= */

/* Active filters */
.active-filters{
  display:flex;flex-wrap:wrap;gap:7px;align-items:center;
  min-height:0;padding-top:0;overflow:hidden;
  transition:max-height .24s ease,padding .24s ease,opacity .2s ease;
}
.active-filters.has-items{padding-top:9px}
.active-filter-chip{
  min-height:30px;padding:0 10px;border:1px solid var(--cv-line)!important;
  border-radius:999px;background:#fff;color:var(--cv-ink);font-size:11.5px;font-weight:650;
  display:inline-flex;align-items:center;gap:7px;cursor:pointer;
}
.active-filter-chip:hover{border-color:var(--cv-line-strong)!important;background:#faf7f2}
.active-filter-chip b{font-size:16.1px;line-height:1;color:var(--cv-wine)}
.active-filter-clear{
  min-height:30px;padding:0 5px;border:0;background:transparent;color:var(--cv-wine);
  font-size:11.5px;font-weight:750;cursor:pointer;text-decoration:underline;text-underline-offset:3px;
}
.filterbtn .filter-count-badge{
  display:none;min-width:20px;height:20px;padding:0 6px;place-items:center;
  border-radius:999px;background:var(--cv-wine);color:#fff;font-size:10.35px;font-weight:800;
}
.filterbtn.has-filters .filter-count-badge{display:grid}

/* Filter metadata/search */
.filter-toggle-meta{display:flex;align-items:center;gap:8px}
.filter-group-count{
  display:none;min-width:19px;height:19px;padding:0 5px;place-items:center;
  border-radius:999px;background:#eee8e1;color:var(--cv-wine);font-size:10.35px;font-weight:800;
}
.filter-group-count.has-count{display:grid}
.filter-option-count{margin-left:auto;color:#9a9188;font-size:10.35px;font-variant-numeric:tabular-nums}
.filter-search{
  width:100%;min-height:38px;margin:0 0 9px;padding:0 11px;border:1px solid var(--cv-line)!important;
  border-radius:10px;background:#fff;color:var(--cv-ink);font:inherit;font-size:12.65px;
}
.filter-search::placeholder{color:#9b938a}

/* Catalog loading/error */
.catalog-skeleton{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;grid-column:1/-1}
.catalog-skeleton-card{min-height:440px;border:1px solid var(--cv-line);border-radius:16px;background:#fff;overflow:hidden}
.catalog-skeleton-card::before{
  content:"";display:block;height:260px;background:linear-gradient(90deg,#f1ede7 25%,#faf8f4 50%,#f1ede7 75%);
  background-size:200% 100%;animation:cvSkeleton 1.3s linear infinite;
}
.catalog-skeleton-card::after{content:"";display:block;width:70%;height:13px;margin:24px 16px;border-radius:999px;background:#eee9e2;box-shadow:0 25px 0 #f3efe9,0 63px 0 #eee9e2}
@keyframes cvSkeleton{to{background-position:-200% 0}}
.catalog-retry{margin-top:10px;min-height:38px;padding:0 14px;border:0;border-radius:10px;background:var(--cv-wine);color:#fff;font-weight:750;cursor:pointer}

/* Product interaction clarity */
#productSection .nw-card{cursor:pointer}
#productSection .nw-card-add{width:auto!important;min-width:35px!important;padding:0 10px!important;display:inline-flex!important;align-items:center!important;gap:6px!important;font-size:9.2px!important;font-weight:800!important;white-space:nowrap}
#productSection .nw-card-add-label{display:inline}
#productSection .nw-card-add.is-unavailable{background:#ded8d0!important;color:#766f67!important;cursor:not-allowed!important}
#productSection .nw-stock-note{display:inline-flex;align-items:center;margin-top:7px;color:#8a504f;font-size:10.35px;font-weight:700;letter-spacing:.02em}

/* Share action */
.wine-float-share{background:#fff!important;color:var(--cv-ink)!important;border:1px solid var(--cv-line)!important}

/* Better microtype */
#productSection .nw-card-price small{font-size:9.2px!important}
#productSection .nw-card-view{font-size:10.35px!important}
#productSection .nw-card-tags span{font-size:10.35px!important}
.nw-nav a{font-size:11.5px!important}

@media(max-width:900px){
  .catalog-skeleton{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .catalog-skeleton{grid-template-columns:1fr}
  #productSection .nw-card-add-label{display:none}
  #productSection .nw-card-add{width:35px!important;padding:0!important;justify-content:center!important}
  #productSection .nw-card-tags span{font-size:9.775px!important}
  #productSection .nw-card-view{font-size:10.35px!important}
}
@media(prefers-reduced-motion:reduce){
  .catalog-skeleton-card::before{animation:none}
}

/* =========================================================
   CASA DE VINO — V9 / PROMOÇÃO & CLASSIFICAÇÕES
   ========================================================= */
#productSection .nw-card-tags .nw-tag{position:relative;letter-spacing:.015em}
#productSection .nw-card-tags .nw-tag-style{
  border-color:rgba(52,70,60,.20)!important;
  background:rgba(52,70,60,.08)!important;
  color:var(--cv-green,#34463c)!important;
  font-weight:780!important;
}
#productSection .nw-card-tags .nw-tag-exclusive{
  border-color:#c29a4f!important;
  background:linear-gradient(135deg,#ead39b 0%,#c79a45 100%)!important;
  color:#302315!important;
  font-weight:900!important;
  box-shadow:0 4px 12px rgba(151,105,35,.18)!important;
  text-transform:uppercase;
  letter-spacing:.07em;
}
#productSection .nw-card-tags .nw-tag-premium{
  border-color:rgba(101,53,67,.28)!important;
  background:rgba(101,53,67,.09)!important;
  color:var(--cv-wine)!important;
  font-weight:850!important;
  text-transform:uppercase;
  letter-spacing:.055em;
}
#productSection .nw-card-tags .nw-tag-promotion{
  border-color:var(--cv-wine)!important;
  background:var(--cv-wine)!important;
  color:#fff!important;
  font-weight:850!important;
  text-transform:uppercase;
  letter-spacing:.055em;
}
#specialBox .special-filter-option{align-items:center}
#specialBox .special-filter-option input:checked + span{color:var(--cv-wine);font-weight:850}

/* V9 typography: all explicit font-size/font shorthand values above were increased by 15%. */
/* V9 inherited typography scale: browser-default 16px -> 18.4px (+15%). */
body{font-size:18.4px}
/* Relative child size is kept at its original ratio so it is not scaled twice. */
.nw-btn-wine span{font-size:1.15em!important}
/* V9 responsive accommodation for the larger typography. */
@media(max-width:720px){
  .nw-hero,.nw-hero-grid{min-height:740px!important}
  .nw-hero-photo{top:56%!important;height:44%!important}
}
@media(max-width:480px){
  .nw-hero,.nw-hero-grid{min-height:780px!important}
  .nw-hero-photo{top:60%!important;height:40%!important}
}


/* =========================================================
   V10 — HERO EDITORIAL / PRIMEIRA DOBRA
   Refino visual conservador: mantém conteúdo, CTAs e ações.
   ========================================================= */
@media (min-width:721px){
  .nw-hero{
    min-height:720px!important;
    isolation:isolate;
    background:
      radial-gradient(circle at 9% 14%,rgba(101,53,67,.085),transparent 23%),
      radial-gradient(circle at 41% 87%,rgba(52,70,60,.075),transparent 25%),
      linear-gradient(115deg,#fbf8f2 0%,#f6f1e9 51.5%,#e6ded3 51.5%,#e6ded3 100%)!important;
    border-bottom:1px solid rgba(206,197,186,.72)!important;
  }
  .nw-hero::before{
    content:"";
    position:absolute;
    z-index:0;
    width:520px;
    height:520px;
    left:-335px;
    top:78px;
    border:1px solid rgba(101,53,67,.11);
    border-radius:50%;
    box-shadow:0 0 0 72px rgba(101,53,67,.025),0 0 0 144px rgba(52,70,60,.018);
    pointer-events:none;
  }
  .nw-hero-photo{
    top:18px!important;
    right:18px!important;
    bottom:18px!important;
    width:47.5%!important;
    height:auto!important;
    overflow:hidden;
    border:0!important;
    border-radius:30px!important;
    background-position:center 47%!important;
    box-shadow:0 30px 80px rgba(35,29,26,.18)!important;
  }
  .nw-hero-photo::before{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    border-radius:inherit;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.20);
    pointer-events:none;
  }
  .nw-hero-photo:after{
    z-index:0;
    background:
      linear-gradient(90deg,rgba(35,31,27,.12),transparent 36%),
      linear-gradient(0deg,rgba(25,29,25,.34),transparent 48%),
      linear-gradient(180deg,rgba(255,247,235,.05),transparent 25%)!important;
  }
  .nw-hero-noise{
    z-index:0;
    opacity:1;
    background:
      radial-gradient(circle at 29% 20%,rgba(169,137,104,.09),transparent 24%),
      radial-gradient(circle at 36% 76%,rgba(52,70,60,.055),transparent 24%)!important;
  }
  .nw-hero-grid{
    min-height:720px!important;
    grid-template-columns:1.08fr .92fr!important;
    gap:42px!important;
  }
  .nw-hero-copy{
    position:relative;
    z-index:5;
    max-width:650px!important;
    padding:94px 0 96px!important;
  }
  .nw-kicker{
    display:inline-flex!important;
    align-items:center;
    gap:9px;
    width:max-content;
    padding:8px 12px 8px 10px;
    border:1px solid rgba(101,53,67,.16);
    border-radius:999px;
    background:rgba(255,253,250,.62);
    box-shadow:0 7px 22px rgba(55,44,38,.035);
    backdrop-filter:blur(8px);
  }
  .nw-kicker::before{
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:var(--cv-wine);
    box-shadow:0 0 0 4px rgba(101,53,67,.08);
  }
  .nw-hero h1{
    max-width:650px!important;
    margin:23px 0 24px!important;
    font-size:clamp(64px,6.15vw,90px)!important;
    line-height:.92!important;
    letter-spacing:-.052em!important;
  }
  .nw-hero h1 em{
    position:relative;
    color:var(--cv-green)!important;
  }
  .nw-hero h1 em::after{
    content:"";
    position:absolute;
    left:2px;
    right:9%;
    bottom:-7px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--cv-wine),rgba(101,53,67,0));
    opacity:.55;
  }
  .nw-hero-lead{
    max-width:535px!important;
    color:#676159!important;
    font-size:16.5px!important;
    line-height:1.72!important;
  }
  .nw-hero-actions{
    margin-top:34px!important;
    gap:11px!important;
  }
  .nw-hero-actions .nw-btn{
    min-height:54px!important;
    padding-inline:21px!important;
    box-shadow:0 9px 22px rgba(42,37,33,.05);
  }
  .nw-hero-actions .nw-btn-dark{
    background:#242822!important;
    border-color:#242822!important;
    box-shadow:0 12px 28px rgba(32,35,31,.13)!important;
  }
  .nw-hero-actions .nw-btn-light{
    background:rgba(255,253,250,.72)!important;
    backdrop-filter:blur(7px);
  }
  .nw-proof{
    display:grid!important;
    grid-template-columns:auto auto 1fr;
    max-width:545px;
    margin-top:42px!important;
    padding-top:17px;
    gap:0!important;
    border-top:1px solid rgba(124,112,101,.20);
    color:#837b72!important;
    font-size:9px!important;
    line-height:1.25;
  }
  .nw-proof span{
    min-height:34px;
    padding:0 18px;
    display:flex;
    align-items:center;
  }
  .nw-proof span:first-child{padding-left:0}
  .nw-proof span:not(:last-child){border-right:1px solid rgba(124,112,101,.17)}
  .nw-proof b{
    margin-right:5px;
    color:var(--cv-ink)!important;
    font:700 15px/1 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.015em;
  }
  .nw-hero-product{
    position:relative;
    z-index:6;
    padding:48px 0!important;
    align-items:center;
    justify-content:flex-end!important;
  }
  .nw-hero-card{
    width:min(430px,92%)!important;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.55)!important;
    border-radius:27px!important;
    background:rgba(255,253,250,.95)!important;
    box-shadow:0 34px 88px rgba(26,27,24,.24)!important;
    transform:translateX(28px) rotate(-.65deg)!important;
    backdrop-filter:blur(12px)!important;
  }
  .nw-hero.is-ready .nw-hero-card{animation-name:cvHeroCardInV10!important}
  @keyframes cvHeroCardInV10{
    from{opacity:0;transform:translateY(22px) translateX(28px) rotate(-.65deg) scale(.985)}
    to{opacity:1;transform:translateY(0) translateX(28px) rotate(-.65deg) scale(1)}
  }
  .nw-card-label{
    padding:14px 17px 13px!important;
    color:#7d736a!important;
    background:rgba(255,253,250,.96);
    border-bottom:1px solid rgba(222,216,207,.72);
  }
  .nw-hero-card img{
    height:365px!important;
    object-position:center 52%;
    filter:saturate(.94) contrast(1.025) brightness(.98);
  }
  .nw-hero-card-bottom{
    min-height:88px;
    padding:16px 17px 18px!important;
    background:rgba(255,253,250,.97);
  }
  .nw-hero-card-bottom small{
    margin-bottom:4px;
    color:var(--cv-wine)!important;
    letter-spacing:.17em!important;
  }
  .nw-hero-card-bottom strong{
    max-width:315px!important;
    font-size:22px!important;
    letter-spacing:-.025em;
  }
  .nw-hero-card-bottom a{
    width:44px!important;
    height:44px!important;
    flex:0 0 44px;
    display:grid!important;
    place-items:center;
    border:1px solid var(--cv-wine)!important;
    background:var(--cv-wine)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(101,53,67,.18);
    transition:transform var(--cv-fast) var(--cv-ease),background var(--cv-fast) ease!important;
  }
  .nw-hero-card-bottom a:hover{
    transform:translate(2px,-2px);
    background:var(--cv-wine-dark)!important;
  }
}

@media (min-width:721px) and (max-width:1100px){
  .nw-hero-grid{grid-template-columns:1.02fr .98fr!important;gap:24px!important}
  .nw-hero-copy{max-width:590px!important;padding:84px 0!important}
  .nw-hero h1{font-size:clamp(58px,6.9vw,76px)!important}
  .nw-hero-photo{width:46%!important}
  .nw-hero-card{width:min(360px,92%)!important;transform:translateX(10px) rotate(-.5deg)!important}
  .nw-hero.is-ready .nw-hero-card{animation-name:cvHeroCardInTablet!important}
  @keyframes cvHeroCardInTablet{
    from{opacity:0;transform:translateY(18px) translateX(10px) rotate(-.5deg)}
    to{opacity:1;transform:translateY(0) translateX(10px) rotate(-.5deg)}
  }
  .nw-hero-card img{height:330px!important}
  .nw-hero-actions .nw-btn{padding-inline:17px!important;font-size:11px!important}
}

@media (max-width:720px){
  .nw-hero{
    min-height:820px!important;
    background:
      radial-gradient(circle at 14% 10%,rgba(101,53,67,.08),transparent 26%),
      linear-gradient(180deg,#fbf8f2 0%,#f5efe7 58%,#e8dfd4 58%,#e8dfd4 100%)!important;
  }
  .nw-hero::before{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    left:-210px;
    top:80px;
    border:1px solid rgba(101,53,67,.10);
    border-radius:50%;
    pointer-events:none;
  }
  .nw-hero::after{display:none!important}
  .nw-hero-grid{min-height:820px!important}
  .nw-hero-copy{
    position:relative;
    z-index:4;
    padding:58px 0 28px!important;
    max-width:none!important;
  }
  .nw-kicker{
    display:inline-flex!important;
    align-items:center;
    gap:8px;
    width:max-content;
    max-width:100%;
    padding:7px 10px;
    border:1px solid rgba(101,53,67,.15);
    border-radius:999px;
    background:rgba(255,253,250,.68);
  }
  .nw-kicker::before{
    content:"";
    width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--cv-wine);
  }
  .nw-hero h1{
    margin:20px 0 21px!important;
    font-size:clamp(49px,14vw,64px)!important;
    line-height:.94!important;
    letter-spacing:-.048em!important;
  }
  .nw-hero-lead{font-size:15px!important;line-height:1.68!important;max-width:430px!important}
  .nw-hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:9px!important;
    margin-top:27px!important;
  }
  .nw-hero-actions .nw-btn{justify-content:center;min-height:49px!important;padding-inline:12px!important;font-size:10.4px!important}
  .nw-hero-actions .nw-btn-light{grid-column:1/-1;background:rgba(255,253,250,.70)!important}
  .nw-proof{
    display:grid!important;
    grid-template-columns:1fr 1fr 1.3fr;
    gap:0!important;
    margin-top:26px!important;
    padding-top:14px;
    border-top:1px solid rgba(124,112,101,.18);
    color:#7f776f!important;
    font-size:8.6px!important;
  }
  .nw-proof span{padding:0 9px;min-height:30px;display:flex;align-items:center}
  .nw-proof span:first-child{padding-left:0}
  .nw-proof span:not(:last-child){border-right:1px solid rgba(124,112,101,.15)}
  .nw-proof b{margin-right:4px;color:var(--cv-ink)!important;font-size:12px!important}
  .nw-hero-photo{
    left:14px!important;
    right:14px!important;
    top:auto!important;
    bottom:14px!important;
    width:auto!important;
    height:37%!important;
    overflow:hidden;
    border:0!important;
    border-radius:24px!important;
    background-position:center 50%!important;
    box-shadow:0 20px 52px rgba(37,31,27,.16)!important;
  }
  .nw-hero-photo:after{
    background:linear-gradient(0deg,rgba(28,32,28,.30),transparent 58%)!important;
  }
  .nw-hero-product{display:none!important}
}

@media (max-width:480px){
  .nw-hero{min-height:900px!important}
  .nw-hero-grid{min-height:900px!important}
  .nw-hero-copy{padding-top:45px!important}
  .nw-hero h1{font-size:clamp(46px,13.8vw,56px)!important}
  .nw-hero-actions{grid-template-columns:1fr!important}
  .nw-hero-actions .nw-btn-light{grid-column:auto}
  .nw-proof{grid-template-columns:1fr 1fr!important}
  .nw-proof span:last-child{grid-column:1/-1;border-top:1px solid rgba(124,112,101,.14);padding:9px 0 0;margin-top:8px}
  .nw-hero-photo{height:34%!important}
}


/* =========================================================
   V11 — Estilo do vinho, aviso por uva e embalagens na cesta
   ========================================================= */

/* Aviso contextual ao pesquisar/filtrar uvas */
.grape-notice-bg{
  position:fixed;
  inset:0;
  z-index:180;
  display:none;
  place-items:center;
  padding:clamp(16px,4vw,40px);
  background:rgba(25,24,21,.64);
  backdrop-filter:blur(8px);
}
.grape-notice-bg.show{display:grid}
.grape-notice{
  position:relative;
  width:min(520px,100%);
  padding:34px 34px 30px;
  border:1px solid rgba(101,53,67,.16);
  border-radius:22px;
  background:#fffdfa;
  box-shadow:0 28px 90px rgba(24,22,20,.22);
}
.grape-notice-kicker{
  display:block;
  margin-bottom:10px;
  color:var(--cv-wine,#653543);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.18em;
}
.grape-notice h3{
  margin:0;
  color:var(--cv-ink,#20231f);
  font:600 30px/1.06 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
}
.grape-notice p{
  margin:16px 0 24px;
  color:var(--cv-muted,#716b63);
  font-size:14px;
  line-height:1.7;
}
.grape-notice-confirm{
  min-height:46px;
  padding:0 22px;
  border:0;
  border-radius:12px;
  background:var(--cv-wine,#653543);
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  cursor:pointer;
}
.grape-notice-close{
  position:absolute;
  top:14px;
  right:14px;
  width:34px;
  height:34px;
  border:1px solid var(--cv-line,#ded8cf);
  border-radius:50%;
  background:#f5f1eb;
  color:#625d57;
  cursor:pointer;
}

/* Os dois conceitos ficam visualmente separados no filtro: Tipo x Estilo */
#typeBox .check span:nth-child(2){font-weight:650}
#styleBox .check span:nth-child(2){font-weight:700;color:var(--cv-wine,#653543)}

/* Embalagens aparecem apenas dentro de Minha Cesta */
#cartDrawer .gift-packaging{
  margin-top:6px;
  padding:0!important; /* neutraliza o padding global de <section> dentro da cesta */
  border:1px solid rgba(101,53,67,.14);
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(180deg,#fbf8f4 0%,#f8f3ed 100%);
  box-shadow:0 8px 24px rgba(30,34,29,.04);
}
#cartDrawer .gift-packaging-toggle{
  width:100%;
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 14px;
  border:0;
  background:transparent;
  color:var(--cv-ink,#20231f);
  text-align:left;
  cursor:pointer;
}
#cartDrawer .gift-packaging-toggle-copy{display:grid;gap:3px;min-width:0;flex:1}
#cartDrawer .gift-packaging-toggle-copy small{
  color:var(--cv-wine,#653543);
  font-size:7.2px;
  font-weight:800;
  letter-spacing:.16em;
}
#cartDrawer .gift-packaging-toggle-copy strong{
  font:600 14px/1.12 Georgia,"Times New Roman",serif;
  color:var(--cv-ink,#20231f);
}
#cartDrawer .gift-packaging-toggle-copy i{
  color:var(--cv-muted,#716b63);
  font-size:9px;
  font-style:normal;
  line-height:1.35;
}
#cartDrawer .gift-packaging-body{
  padding:0 12px 12px;
  border-top:1px solid rgba(101,53,67,.10);
}
#cartDrawer .gift-packaging-body[hidden]{display:none}
#cartDrawer .gift-package-list{display:grid;gap:8px}
#cartDrawer .gift-package-row{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:8px;
  border:1px solid #e6ded5;
  border-radius:10px;
  background:#fff;
}
#cartDrawer .gift-package-row.is-selected{border-color:rgba(101,53,67,.35);background:#fffaf9}
#cartDrawer .gift-package-media{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:8px;
  background:#f0ebe5;
}
#cartDrawer .gift-package-media img{width:100%;height:100%;object-fit:contain;padding:4px}
#cartDrawer .gift-package-media span{font-size:20px}
#cartDrawer .gift-package-info{min-width:0;display:grid;gap:3px}
#cartDrawer .gift-package-info strong{
  overflow:hidden;
  color:var(--cv-ink,#20231f);
  font-size:10px;
  line-height:1.25;
  text-overflow:ellipsis;
}
#cartDrawer .gift-package-info span{color:var(--cv-wine,#653543);font-size:9.4px;font-weight:800}
#cartDrawer .gift-package-add{
  min-height:28px;
  padding:0 9px;
  border:0;
  border-radius:8px;
  background:var(--cv-wine,#653543);
  color:#fff;
  font-size:8.5px;
  font-weight:800;
  cursor:pointer;
}
#cartDrawer .gift-package-qty{white-space:nowrap;transform:scale(.92);transform-origin:right center}
#cartDrawer .gift-package-unavailable{color:#91877e;font-size:7.6px;font-weight:800;text-transform:uppercase}
#cartDrawer .gift-package-empty{padding:8px 2px;color:var(--cv-muted,#716b63);font-size:10px}
#cartDrawer .cart-wine-items{display:grid;gap:9px}

@media(max-width:560px){
  .grape-notice-bg{align-items:end;padding:8px}
  .grape-notice{width:100%;padding:29px 22px 24px;border-radius:20px 20px 14px 14px}
  .grape-notice h3{font-size:26px}
  .grape-notice p{font-size:13px;line-height:1.62}
  .grape-notice-confirm{width:100%}
  #cartDrawer .gift-packaging-toggle{min-height:72px;padding:12px}
  #cartDrawer .gift-packaging-toggle-copy strong{font-size:13px}
  #cartDrawer .gift-packaging-toggle-copy i{font-size:8.7px}
  #cartDrawer .gift-package-row{grid-template-columns:44px minmax(0,1fr) auto}
  #cartDrawer .gift-package-media{width:44px;height:44px}
}

@media(prefers-reduced-motion:reduce){
  #cartDrawer .gift-packaging-toggle>b{transition:none!important}
}
#cartDrawer .gift-packaging-toggle-end{display:flex;align-items:center;gap:8px}
#cartDrawer .gift-packaging-toggle-end em{min-width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:var(--cv-wine,#653543);color:#fff;font-size:8px;font-style:normal;font-weight:800}
#cartDrawer .gift-packaging-toggle-end>b{font-size:15px;transition:transform .2s ease}
#cartDrawer .gift-packaging.open .gift-packaging-toggle-end>b{transform:rotate(180deg)}


/* =========================================================
   CASA DE VINO — V13 / CART COMPACTO, BANDEIRAS E FLUXO
   ========================================================= */
/* A seção fechada de embalagem ocupa ~60% da altura visual de um item de vinho da cesta. */
#cartDrawer .gift-packaging:not(.open){
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  flex:0 0 58px!important;
}
#cartDrawer .gift-packaging:not(.open) .gift-packaging-toggle{
  height:58px!important;
  min-height:58px!important;
  padding:8px 12px!important;
}
#cartDrawer .gift-packaging.open{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  flex:0 0 auto!important;
}
#cartDrawer .gift-packaging.open .gift-packaging-toggle{
  min-height:58px!important;
  padding:8px 12px!important;
}
#cartDrawer .gift-packaging-toggle-copy{gap:1px!important}
#cartDrawer .gift-packaging-toggle-copy small{font-size:6.7px!important;line-height:1.15!important}
#cartDrawer .gift-packaging-toggle-copy strong{font-size:12.5px!important;line-height:1.12!important}
#cartDrawer .gift-packaging-toggle-copy i{display:none!important}
#cartDrawer .gift-packaging-toggle-end{gap:6px!important}
#cartDrawer .gift-packaging-toggle-end em{min-width:18px!important;height:18px!important;font-size:7.5px!important}
#cartDrawer .gift-packaging-toggle-end>b{font-size:13px!important}

/* Bandeiras reais: evita sistemas que exibem emojis de bandeira como AR/CL/IT etc. */
#countryChecks .filter-country-label{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}
#countryChecks .filter-country-flag{
  width:21px!important;
  height:14px!important;
  flex:0 0 21px!important;
  display:block!important;
  object-fit:cover!important;
  border-radius:2px!important;
  box-shadow:0 0 0 1px rgba(32,35,31,.09)!important;
}
#countryChecks .country-flag-fallback{font-size:14px!important;line-height:1!important}
#cartDrawer .cart-row-meta{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
}
#cartDrawer .cart-country{display:inline-flex!important;align-items:center!important;gap:5px!important}
#cartDrawer .cart-country-flag{
  width:20px!important;
  height:13px!important;
  display:block!important;
  object-fit:cover!important;
  border-radius:2px!important;
  box-shadow:0 0 0 1px rgba(32,35,31,.09)!important;
}
#cartDrawer .cart-country .country-flag-fallback{font-size:13px!important;line-height:1!important}
#cartDrawer .cart-meta-separator{opacity:.55}

/* O aviso sobre uvas é deliberadamente modal: somente "Entendi" encerra a exibição. */
.grape-notice-bg.show{pointer-events:auto!important}

@media(max-width:560px){
  #cartDrawer .gift-packaging:not(.open),
  #cartDrawer .gift-packaging:not(.open) .gift-packaging-toggle{
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
  }
  #cartDrawer .gift-packaging:not(.open){flex-basis:56px!important}
  #cartDrawer .gift-packaging.open .gift-packaging-toggle{min-height:56px!important}
}

/* =========================================================
   CASA DE VINO — V16 / AJUDA DE ESCOLHA
   ========================================================= */
.help-choice-bg{
  position:fixed;
  inset:0;
  z-index:10040;
  display:none;
  place-items:center;
  padding:24px;
  background:rgba(25,27,24,.48);
  backdrop-filter:blur(8px);
}
.help-choice-bg.show{display:grid}
.help-choice{
  width:min(590px,calc(100vw - 32px));
  padding:32px;
  border:1px solid rgba(101,53,67,.16);
  border-radius:22px;
  background:linear-gradient(145deg,#fffdfa 0%,#f8f3ed 100%);
  box-shadow:0 30px 90px rgba(30,34,29,.22);
  color:var(--cv-ink,#20231f);
}
.help-choice-kicker{
  display:block;
  margin-bottom:10px;
  color:var(--cv-wine,#653543);
  font-size:9px;
  font-weight:850;
  letter-spacing:.17em;
}
.help-choice h3{
  margin:0;
  color:var(--cv-ink,#20231f);
  font:600 30px/1.06 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
}
.help-choice p{
  margin:15px 0 0;
  color:var(--cv-muted,#716b63);
  font-size:14px;
  line-height:1.68;
}
.help-choice p span{font-size:1.08em}
.help-choice-actions{
  display:grid;
  grid-template-columns:1fr 1.28fr;
  gap:10px;
  margin-top:25px;
}
.help-choice-button{
  min-height:48px;
  padding:0 16px;
  border-radius:12px;
  font-size:10px;
  font-weight:850;
  letter-spacing:.055em;
  cursor:pointer;
  transition:transform var(--cv-fast,180ms) var(--cv-ease,cubic-bezier(.2,.8,.2,1)),box-shadow var(--cv-fast,180ms) ease,background var(--cv-fast,180ms) ease;
}
.help-choice-button:hover{transform:translateY(-2px)}
.help-choice-quick{
  border:1px solid var(--cv-line-strong,#cec5ba);
  background:#fff;
  color:var(--cv-ink,#20231f);
}
.help-choice-sommelier{
  border:1px solid var(--cv-wine,#653543);
  background:var(--cv-wine,#653543);
  color:#fff;
  box-shadow:0 10px 24px rgba(101,53,67,.16);
}
.help-choice-sommelier:hover{background:var(--cv-wine-dark,#512a36)}

@media(max-width:560px){
  .help-choice-bg{align-items:end;padding:8px}
  .help-choice{width:100%;padding:27px 21px 22px;border-radius:20px 20px 14px 14px}
  .help-choice h3{font-size:26px}
  .help-choice p{font-size:13px;line-height:1.62}
  .help-choice-actions{grid-template-columns:1fr;gap:8px;margin-top:21px}
  .help-choice-button{width:100%;min-height:48px;font-size:10px}
}

@media(prefers-reduced-motion:reduce){
  .help-choice-button{transition:none!important}
}

/* =========================================================
   CASA DE VINO — V17 / HOMOLOGAÇÃO & PRODUÇÃO
   Estados de catálogo, recuperação e robustez visual.
   ========================================================= */
#catalogStatus{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px!important;
  color:var(--cv-ink,#20231f);
}
#catalogStatus>span:last-child{display:grid;gap:4px}
#catalogStatus b{font-size:13px;line-height:1.35}
#catalogStatus small{color:var(--cv-muted,#716b63);font-size:11px;line-height:1.45}
#catalogStatus.is-info{border-color:rgba(52,70,60,.18)!important;background:#fbfcfa!important}
#catalogStatus.is-error{border-color:rgba(101,53,67,.24)!important;background:#fff9f8!important}
.catalog-status-dot{
  width:9px;height:9px;margin-top:4px;flex:0 0 auto;border-radius:999px;background:var(--cv-green,#34463c);
  box-shadow:0 0 0 5px rgba(52,70,60,.08);
}
.catalog-status-icon{
  width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border-radius:999px;
  background:rgba(101,53,67,.10);color:var(--cv-wine,#653543);font-size:12px;font-weight:900;
}
.catalog-retry{justify-self:start;margin-top:7px}

.catalog-empty{
  grid-column:1/-1;
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:38px 28px;
  border:1px solid var(--cv-line,#ded8cf);
  border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#fbf8f4 100%);
  text-align:center;
}
.catalog-empty-kicker{
  color:var(--cv-wine,#653543);
  font-size:9px;
  font-weight:850;
  letter-spacing:.16em;
}
.catalog-empty h3{
  max-width:560px;
  margin:10px 0 8px;
  color:var(--cv-ink,#20231f);
  font:600 28px/1.08 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}
.catalog-empty p{
  max-width:570px;
  margin:0;
  color:var(--cv-muted,#716b63);
  font-size:12px;
  line-height:1.62;
}
.catalog-empty-actions{display:flex;gap:9px;margin-top:21px;flex-wrap:wrap;justify-content:center}
.catalog-empty-actions button{
  min-height:42px;padding:0 15px;border-radius:10px;font-size:10px;font-weight:850;cursor:pointer;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.catalog-empty-actions button:hover{transform:translateY(-1px)}
.catalog-empty-primary{border:1px solid var(--cv-wine,#653543);background:var(--cv-wine,#653543);color:#fff}
.catalog-empty-secondary{border:1px solid var(--cv-line-strong,#cec5ba);background:#fff;color:var(--cv-ink,#20231f)}

#productSection[aria-busy="true"]{cursor:progress}

@media(max-width:560px){
  #catalogStatus{padding:12px 13px!important}
  #catalogStatus b{font-size:12px}
  #catalogStatus small{font-size:10.5px}
  .catalog-empty{min-height:260px;padding:30px 18px}
  .catalog-empty h3{font-size:24px}
  .catalog-empty p{font-size:11.5px}
  .catalog-empty-actions{width:100%;display:grid;grid-template-columns:1fr}
  .catalog-empty-actions button{width:100%;min-height:44px}
}

@media(prefers-reduced-motion:reduce){
  .catalog-empty-actions button{transition:none!important}
}

/* =========================================================
   CASA DE VINO — V18 / NAVEGAÇÃO MOBILE
   ========================================================= */
@media(max-width:720px){
  .nw-proof{display:none!important}
}
