/* R86 — desktop: mesma lógica do mobile, composição própria para tela grande */
@media(min-width:821px){
  /* Busca única no cabeçalho; hero institucional e buscas inferiores saem do fluxo. */
  #publicApp>.wrap>.hero{display:none!important}
  body.r27-browse-mode #ggCatalogBrowse .r27-search-row{display:none!important}

  #r86DesktopSearch{
    flex:1 1 520px;
    max-width:620px;
    min-width:280px;
    margin:0 clamp(16px,2vw,34px);
  }
  #r86DesktopSearch form{
    display:grid;
    grid-template-columns:minmax(0,1fr) 42px;
    gap:8px;
    align-items:center;
    width:100%;
  }
  #r86DesktopSearch input{
    width:100%;
    height:44px;
    border:1px solid #e2ddd5;
    border-radius:999px;
    padding:0 18px;
    background:#fff;
    color:#211d19;
    outline:0;
    font-size:14px;
    transition:border-color .18s ease,box-shadow .18s ease;
  }
  #r86DesktopSearch input:focus{
    border-color:#c99718;
    box-shadow:0 0 0 3px rgba(201,151,24,.10);
  }
  #r86DesktopSearch button{
    width:42px;height:42px;min-width:42px;padding:0;
    border:1px solid #dfd8cf;border-radius:50%;background:#fff;
    display:grid;place-items:center;font-size:23px;line-height:1;color:#2a241f;
  }
  #r86DesktopSearch .r86-header-back,
  #r86DesktopSearch .r83-catalog-back{
    display:none!important;
    width:42px!important;height:42px!important;min-width:42px!important;
    padding:0!important;margin:0!important;border-radius:50%!important;
    border:1px solid #dfd8cf!important;background:#fff!important;
    color:#3d3027!important;font-size:22px!important;place-items:center!important;
  }
  body.r27-browse-mode #r86DesktopSearch form{
    grid-template-columns:42px minmax(0,1fr) 42px;
  }
  body.r27-browse-mode #r86DesktopSearch .r86-header-back,
  body.r27-browse-mode #r86DesktopSearch .r83-catalog-back{display:grid!important}

  /* Banner reduzido sem deformar a arte. */
  #ggBannerHost.gg-home-banner{
    width:min(94%,1440px)!important;
    max-width:1440px!important;
    margin:16px auto 18px!important;
  }
  #ggBannerHost .gg-banner-carousel{
    width:100%!important;
    aspect-ratio:3/1!important;
    max-height:480px!important;
    border-radius:18px!important;
  }
  #ggBannerHost .gg-banner-slide img{
    width:100%!important;height:100%!important;
    object-fit:cover!important;object-position:center!important;
  }

  /* Atalhos maiores e mais legíveis. */
  #r72QuickNav{justify-content:flex-start!important;margin:8px 0 8px!important;padding:4px 0 8px!important}
  #r72QuickNav button{min-height:48px!important;padding:0 19px!important;gap:10px!important;font-size:14px!important}
  #r72QuickNav svg{width:23px!important;height:23px!important}
  #r72QuickNav .r72-spark,#r72QuickNav button>span:first-child{font-size:22px!important;line-height:1!important}

  /* Categorias sobem imediatamente após os atalhos. */
  #ggHomeRails>.gg-type-section{padding-top:12px!important;margin-top:0!important}
  #ggHomeRails>.gg-type-section .gg-type-head{margin-bottom:18px!important}

  /* Mais produtos visíveis por faixa, mantendo proporção de desktop. */
  #ggHighlightRail,#ggNewestRail,#ggOfferRail{gap:16px!important}
  #ggHighlightRail .gg-rail-card,
  #ggNewestRail .gg-rail-card,
  #ggOfferRail .gg-rail-card{
    flex:0 0 calc((100% - 64px)/5)!important;
    min-width:210px!important;
  }

  /* Mesmas garantias visuais da ficha mobile, adequadas ao desktop. */
  #detailModal .r30-main-image,
  #detailModal .detail-gallery{overflow:hidden!important}
  #detailModal #r30MainProductImage,
  #detailModal .r30-main-image>img,
  #detailModal .detail-gallery>img{
    object-fit:contain!important;
    object-position:center center!important;
  }

  /* Renderização progressiva: conteúdo fora da tela não custa layout antecipadamente. */
  #productGrid .card{
    content-visibility:auto;
    contain-intrinsic-size:380px 520px;
  }
  #ggCatalogSentinel{grid-column:1/-1;height:2px;pointer-events:none}
}
@media(min-width:1600px){
  #ggHighlightRail .gg-rail-card,
  #ggNewestRail .gg-rail-card,
  #ggOfferRail .gg-rail-card{
    flex-basis:calc((100% - 80px)/6)!important;
    min-width:200px!important;
  }
}
