/* INTEGRALL v11.3.1 — camada visual enxuta
   Mantém a identidade editorial, reduz ruído e preserva a proporção natural das fotos. */

:root{
  --clean-ink:#251d19;
  --clean-muted:#756c65;
  --clean-line:#e6ded5;
  --clean-cream:#f8f4ee;
  --clean-white:#fff;
  --clean-wine:#4a0a1a;
}

html body #catalogSurface .premium-header-inner{max-width:1360px;margin-inline:auto}
html body #catalogSurface .premium-nav{justify-content:center}
html body #catalogSurface .premium-nav-left{gap:clamp(18px,2.3vw,34px)}
html body #catalogSurface .premium-nav button{font-size:.64rem;letter-spacing:.13em}

html body #catalogSurface .premium-purpose{
  min-height:0!important;
  padding-top:clamp(56px,7vw,88px)!important;
  padding-bottom:clamp(56px,7vw,88px)!important;
}
html body #catalogSurface .premium-purpose-copy{padding-top:0!important;padding-bottom:0!important}
html body #catalogSurface .premium-purpose-copy>p:last-child{max-width:500px!important;margin-top:18px!important}
html body #catalogSurface .premium-values{gap:14px!important}
html body #catalogSurface .premium-values article{min-height:120px!important;padding:22px 18px!important}

html body #catalogSurface .premium-collections{
  padding-top:clamp(58px,7vw,86px)!important;
  padding-bottom:clamp(54px,7vw,78px)!important;
}
html body #catalogSurface .premium-category-grid{gap:16px!important}
html body #catalogSurface .premium-category-card{min-height:390px!important}
html body #catalogSurface .premium-category-card small{max-width:220px}

html body #catalogSurface .premium-catalog{
  background:var(--clean-white)!important;
  border-top:1px solid var(--clean-line);
}
html body #catalogSurface .premium-catalog-wrap{padding-top:clamp(58px,7vw,84px)!important}
html body #catalogSurface .premium-catalog-head{max-width:680px!important;margin-bottom:34px!important}
html body #catalogSurface .premium-catalog-head h2{margin-bottom:10px!important}
html body #catalogSurface .catalog-controls{margin-bottom:34px!important}
html body #catalogSurface .commerce-toolbar{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(160px,.34fr) minmax(160px,.34fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
html body #catalogSurface .commerce-toolbar .field,
html body #catalogSurface .commerce-toolbar .select{min-height:48px!important;background:#fff!important;border-color:var(--clean-line)!important}
html body #catalogSurface .advanced-filter-box{margin-top:10px!important;border:1px solid var(--clean-line)!important;background:#fff!important}
html body #catalogSurface .advanced-filter-box>summary{padding:14px 16px!important;font-size:.7rem!important;letter-spacing:.09em!important}
html body #catalogSurface .result-row{margin-top:15px!important;color:var(--clean-muted)!important}

/* O consultor aparece apenas em páginas de vinho e começa recolhido. */
html body #catalogSurface .wine-finder{margin:0 0 18px!important;padding:0!important;border:0!important;background:transparent!important}
html body #catalogSurface .wine-finder-disclosure{border:1px solid var(--clean-line);background:var(--clean-cream)}
html body #catalogSurface .wine-finder-disclosure>summary{
  min-height:54px;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:18px;
  cursor:pointer;list-style:none;color:var(--clean-ink);font-family:var(--premium-serif);font-size:1.02rem;
}
html body #catalogSurface .wine-finder-disclosure>summary::-webkit-details-marker{display:none}
html body #catalogSurface .wine-finder-disclosure>summary::after{content:'+';font:400 1.25rem/1 var(--premium-serif);color:var(--clean-wine)}
html body #catalogSurface .wine-finder-disclosure[open]>summary::after{content:'−'}
html body #catalogSurface .wine-finder-disclosure>summary small{font:600 .58rem/1 var(--premium-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--clean-muted)}
html body #catalogSurface .wine-finder-content{padding:0 18px 20px}
html body #catalogSurface .wine-finder-head{padding-top:18px!important}

/* Grade: quatro colunas no desktop, duas no celular e cartões sem excesso. */
html body #catalogSurface .premium-catalog .product-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(34px,4vw,56px) clamp(12px,1.6vw,22px)!important;
  align-items:start!important;
}
html body #catalogSurface .premium-catalog .card{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  text-align:left!important;
}
html body #catalogSurface .premium-catalog .card-image{
  aspect-ratio:4/5!important;
  background:#f4f1ec!important;
  border-radius:0!important;
  overflow:hidden!important;
}
/* R3: a foto principal nunca é esticada nem recortada. A cópia ao fundo só preenche a moldura. */
html body #catalogSurface .premium-catalog .card-image-fill{
  display:block!important;object-fit:cover!important;opacity:.14!important;
  filter:blur(16px) saturate(.62) brightness(1.06)!important;transform:scale(1.09)!important;
}
html body #catalogSurface .premium-catalog .card-image .card-image-main{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:clamp(6px,1.1vw,14px)!important;
  transform:none!important;
  transition:opacity .32s ease,transform .5s ease!important;
}
html body #catalogSurface .premium-catalog .card-image .card-image-hover{
  position:absolute!important;inset:0!important;z-index:2;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;display:block;
  object-fit:contain!important;object-position:center!important;padding:clamp(6px,1.1vw,14px)!important;opacity:0;transition:opacity .3s ease;pointer-events:none;background:transparent!important;
}
@media (hover:hover) and (pointer:fine){
  html body #catalogSurface .premium-catalog .card[data-has-alternate-image="true"]:hover .card-image .card-image-main{opacity:0!important}
  html body #catalogSurface .premium-catalog .card[data-has-alternate-image="true"]:hover .card-image .card-image-hover{opacity:1!important}
}
html body #catalogSurface .premium-catalog .card-body{padding:15px 0 0!important;align-items:stretch!important}
html body #catalogSurface .premium-catalog .card .category,
html body #catalogSurface .premium-catalog .card .unit,
html body #catalogSurface .premium-catalog .card .promotion-badge,
html body #catalogSurface .premium-catalog .card .card-rating,
html body #catalogSurface .premium-catalog .card .stock-note{display:none!important}
html body #catalogSurface .premium-catalog .card h2{
  min-height:0!important;margin:0!important;color:var(--clean-ink)!important;
  font-size:clamp(1rem,1.35vw,1.24rem)!important;line-height:1.2!important;
}
html body #catalogSurface .premium-catalog .card-meta-clean{
  margin:7px 0 0;color:var(--clean-muted);font-size:.72rem;line-height:1.35;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
html body #catalogSurface .premium-catalog .price-row{margin-top:12px!important;align-items:end!important}
html body #catalogSurface .premium-catalog .price{font-size:1rem!important;color:var(--clean-ink)!important}
html body #catalogSurface .premium-catalog .price-old{font-size:.68rem!important}
html body #catalogSurface .premium-catalog .card-actions{margin-top:10px!important;min-height:0!important}
html body #catalogSurface .premium-catalog .card-actions .btn{
  width:auto!important;min-height:32px!important;padding:4px 0!important;border:0!important;background:transparent!important;
  color:var(--clean-wine)!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;
}
html body #catalogSurface .premium-catalog .badge{top:10px!important;left:10px!important;font-size:.52rem!important;padding:7px 9px!important}
html body #catalogSurface .card-gallery-nav,
html body #catalogSurface .card-gallery-dots,
html body #catalogSurface .card-gallery-counter{display:none!important}

/* Página do produto: uma foto por vez e informações secundárias recolhíveis. */
html body #catalogSurface .product-details-inline{
  background:#fff!important;
}
html body #catalogSurface .product-details-body{max-width:1260px!important;margin-inline:auto!important}
html body #catalogSurface .product-detail-heading{max-width:760px!important;margin-bottom:28px!important}
html body #catalogSurface .product-detail-heading h2{font-size:clamp(2rem,3.4vw,3.7rem)!important;line-height:1.02!important}
html body #catalogSurface .product-details-grid,
html body #catalogSurface .product-details-inline.is-wine-detail .product-details-grid{
  display:grid!important;
  grid-template-columns:minmax(340px,.93fr) minmax(330px,.77fr)!important;
  gap:clamp(34px,5vw,78px)!important;
  align-items:start!important;
}
html body #catalogSurface .product-gallery,
html body #catalogSurface .product-details-inline.is-wine-detail .product-gallery{
  display:flex!important;flex-direction:column!important;gap:12px!important;min-width:0!important;
}
html body #catalogSurface .gallery-main,
html body #catalogSurface .product-details-inline.is-wine-detail .gallery-main{
  width:min(100%,620px)!important;height:auto!important;min-height:0!important;max-height:none!important;
  aspect-ratio:4/5!important;background:#f5f1eb!important;grid-column:auto!important;grid-row:auto!important;
}
html body #catalogSurface .gallery-main .smart-image-main,
html body #catalogSurface .product-details-inline.is-wine-detail .gallery-main .smart-image-main{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center!important;padding:clamp(6px,1vw,12px)!important;
}
html body #catalogSurface .gallery-main .smart-image-fill,
html body #catalogSurface .product-details-inline.is-wine-detail .gallery-main .smart-image-fill{
  display:block!important;object-fit:cover!important;opacity:.13!important;filter:blur(18px) saturate(.62) brightness(1.06)!important;transform:scale(1.09)!important;
}
html body #catalogSurface .gallery-thumbs,
html body #catalogSurface .product-details-inline.is-wine-detail .gallery-thumbs{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:min(100%,620px)!important;
}
html body #catalogSurface .gallery-thumb{
  display:grid!important;grid-template-columns:52px 1fr!important;align-items:center!important;gap:10px!important;
  min-height:72px!important;padding:7px!important;border:1px solid var(--clean-line)!important;background:#fff!important;text-align:left!important;
}
html body #catalogSurface .gallery-thumb img{width:52px!important;height:58px!important;object-fit:contain!important;background:#fff!important}
html body #catalogSurface .gallery-thumb-label{display:grid;gap:3px;min-width:0}
html body #catalogSurface .gallery-thumb-label strong{font:600 .68rem/1.2 var(--premium-sans);color:var(--clean-ink)}
html body #catalogSurface .gallery-thumb-label small{font:.62rem/1.3 var(--premium-sans);color:var(--clean-muted)}
html body #catalogSurface .gallery-thumb.active{border-color:var(--clean-wine)!important;box-shadow:0 0 0 1px var(--clean-wine) inset}
html body #catalogSurface .gallery-nav{width:42px!important;height:42px!important;border-radius:999px!important;background:rgba(255,255,255,.92)!important}

html body #catalogSurface .product-info,
html body #catalogSurface .product-details-inline.is-wine-detail .product-info{
  position:static!important;top:auto!important;padding:0!important;overflow:visible!important;
}
html body #catalogSurface .product-selected-by{display:none!important}
html body #catalogSurface .product-seller-row{margin-bottom:12px!important}
html body #catalogSurface .modal-commerce-heading{padding-bottom:18px!important;margin-bottom:18px!important;border-bottom:1px solid var(--clean-line)}
html body #catalogSurface .product-option-row{margin-top:16px!important}
html body #catalogSurface .product-purchase-actions{display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;margin-top:12px!important}
html body #catalogSurface .product-purchase-actions .primary{min-height:52px!important}

html body #catalogSurface .product-extra-panel{
  margin-top:12px;border-top:1px solid var(--clean-line);border-bottom:1px solid var(--clean-line);background:#fff;
}
html body #catalogSurface .product-extra-panel+ .product-extra-panel{margin-top:-1px}
html body #catalogSurface .product-extra-panel>summary{
  min-height:52px;padding:14px 2px;display:flex;align-items:center;justify-content:space-between;gap:15px;
  list-style:none;cursor:pointer;color:var(--clean-ink);font:500 .78rem/1.3 var(--premium-sans);letter-spacing:.06em;text-transform:uppercase;
}
html body #catalogSurface .product-extra-panel>summary::-webkit-details-marker{display:none}
html body #catalogSurface .product-extra-panel>summary::after{content:'+';font:400 1.35rem/1 var(--premium-serif);color:var(--clean-wine)}
html body #catalogSurface .product-extra-panel[open]>summary::after{content:'−'}
html body #catalogSurface .product-extra-panel>div{margin:0 0 20px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html body #catalogSurface .product-extra-panel .product-delivery-title{display:none!important}
html body #catalogSurface .product-extra-panel .product-copy h3{display:none!important}
html body #catalogSurface .product-extra-panel .meta-grid{margin-top:18px!important}
html body #catalogSurface .product-extra-panel .specialist-card{display:flex!important}
html body #catalogSurface .product-alerts-grid{grid-template-columns:1fr!important}
html body #catalogSurface .wine-quick-facts{order:3!important}

@media (min-width:901px){
  html body #catalogSurface .wine-purchase-bar{display:none!important}
}

html body #catalogSurface .premium-closing{padding-top:clamp(72px,8vw,108px)!important;padding-bottom:clamp(72px,8vw,108px)!important}
html body #catalogSurface .premium-footer-grid{grid-template-columns:minmax(230px,1.3fr) repeat(3,minmax(150px,.7fr))!important;gap:38px!important}
html body #catalogSurface .premium-newsletter{display:none!important}

@media (max-width:1050px){
  html body #catalogSurface .premium-catalog .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body #catalogSurface .product-details-grid,
  html body #catalogSurface .product-details-inline.is-wine-detail .product-details-grid{grid-template-columns:minmax(300px,.9fr) minmax(300px,.8fr)!important;gap:32px!important}
}

@media (max-width:760px){
  html body #catalogSurface .premium-nav-left{gap:0!important}
  html body #catalogSurface .premium-nav button{font-size:.74rem!important}
  html body #catalogSurface .premium-purpose{padding:54px 20px!important}
  html body #catalogSurface .premium-purpose-image{min-height:280px!important}
  html body #catalogSurface .premium-values{grid-template-columns:1fr 1fr!important}
  html body #catalogSurface .premium-values article:last-child{grid-column:1/-1}
  html body #catalogSurface .premium-collections{padding:56px 20px!important}
  html body #catalogSurface .premium-category-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
  html body #catalogSurface .premium-category-card{min-height:300px!important}
  html body #catalogSurface .premium-category-card small{display:none!important}
  html body #catalogSurface .premium-catalog-wrap{padding-inline:16px!important;padding-top:54px!important}
  html body #catalogSurface .commerce-toolbar{grid-template-columns:1fr 1fr!important}
  html body #catalogSurface .commerce-toolbar .search-smart-wrap{grid-column:1/-1}
  html body #catalogSurface .premium-catalog .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 10px!important}
  html body #catalogSurface .premium-catalog .card h2{font-size:.98rem!important}
  html body #catalogSurface .premium-catalog .card-meta-clean{font-size:.66rem}
  html body #catalogSurface .premium-catalog .price{font-size:.9rem!important}
  html body #catalogSurface .premium-catalog .card-actions .btn{font-size:.52rem!important}
  html body #catalogSurface .product-details-body{padding-inline:17px!important}
  html body #catalogSurface .product-details-grid,
  html body #catalogSurface .product-details-inline.is-wine-detail .product-details-grid{grid-template-columns:1fr!important;gap:24px!important}
  html body #catalogSurface .gallery-main,
  html body #catalogSurface .product-details-inline.is-wine-detail .gallery-main{width:100%!important;max-height:none!important;min-height:0!important;height:auto!important}
  html body #catalogSurface .gallery-thumbs,
  html body #catalogSurface .product-details-inline.is-wine-detail .gallery-thumbs{width:100%!important}
  html body #catalogSurface .gallery-thumb{grid-template-columns:42px 1fr!important;min-height:64px!important}
  html body #catalogSurface .gallery-thumb img{width:42px!important;height:50px!important}
  html body #catalogSurface .product-purchase-actions{grid-template-columns:1fr!important}
  html body #catalogSurface .product-purchase-actions .ghost{min-height:44px!important}
  html body #catalogSurface .premium-footer-grid{grid-template-columns:1fr 1fr!important;gap:30px 18px!important}
  html body #catalogSurface .premium-footer-brand{grid-column:1/-1}
}

@media (max-width:350px){
  html body #catalogSurface .premium-catalog .product-grid{grid-template-columns:1fr!important}
  html body #catalogSurface .premium-category-grid{grid-template-columns:1fr!important}
}

@media (prefers-reduced-motion:reduce){
  html body #catalogSurface .premium-catalog .card-image-main,
  html body #catalogSurface .premium-catalog .card-image-hover{transition:none!important}
}

/* A paginação limita a grade a 12 itens; renderizar todos evita quadros vazios
   durante rolagem rápida, impressão e captura de tela. */
html body #catalogSurface #productGrid{
  content-visibility:visible!important;
  contain-intrinsic-size:auto!important;
}
html body #catalogSurface #productGrid .card-image-main,
html body #catalogSurface #productGrid .card-image-hover,
html body #catalogSurface #productGrid .card-image-fill{
  content-visibility:visible!important;
}

/* v11.3.1 — áreas de toque sem aumentar o ruído visual. */
html body #catalogSurface .premium-icon-btn,
html body #catalogSurface .premium-cart,
html body #catalogSurface .premium-menu,
html body #catalogSurface .hero-video-toggle,
html body #catalogSurface .gallery-nav,
html body #catalogSurface .icon-btn,
html body #catalogSurface .close-btn{
  min-width:44px!important;
  min-height:44px!important;
}
html body #catalogSurface .premium-nav button,
html body #catalogSurface .premium-text-link,
html body #catalogSurface .hero-shop-cta,
html body #catalogSurface .product-extra-panel>summary,
html body #catalogSurface .advanced-filter-box>summary,
html body #catalogSurface .wine-finder-disclosure>summary,
html body #catalogSurface .product-purchase-actions .btn,
html body #catalogSurface .premium-catalog .card-actions .btn{
  min-height:44px!important;
  display:inline-flex;
  align-items:center;
}
html body #catalogSurface .premium-catalog .card-actions .btn{
  padding-block:9px!important;
}
html body #catalogSurface .quantity-control button,
html body #catalogSurface [data-plus],
html body #catalogSurface [data-minus]{
  min-width:44px!important;
  min-height:44px!important;
}
@media (max-width:760px){
  html body #catalogSurface .premium-catalog .card-actions .btn{font-size:.68rem!important}
  html body #catalogSurface .premium-text-link{padding-block:8px!important}
}


/* R3 natural product image safeguards */
html body #catalogSurface .cart-item img,
html body #catalogSurface .related-card img{object-fit:contain!important;background:#fff!important}
