/* V5.5 — Loja premium DESKTOP.
   Segurança: nenhuma regra existe fora de media queries >= 1024px. */

@media (min-width: 1024px) {
  /* Cabeçalho exclusivo da página Produtos */
  #produtos .page {
    width: min(1360px, calc(100% - 64px)) !important;
    max-width: 1360px !important;
    margin-inline: auto !important;
    padding-top: 64px !important;
    padding-bottom: 110px !important;
  }
  #produtos .page-head {
    position: relative !important;
    margin-bottom: 26px !important;
    padding: 0 0 30px !important;
    border-bottom: 1px solid rgba(255,255,255,.075) !important;
  }
  #produtos .page-head::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -1px !important;
    width: 78px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg,#b88749,#e7c789) !important;
    box-shadow: 0 0 18px rgba(224,189,132,.18) !important;
  }
  #produtos .page-head .kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
    color: #dcb879 !important;
    letter-spacing: .20em !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
  }
  #produtos .page-head h2 {
    margin: 0 0 8px !important;
    font-size: clamp(52px,4.2vw,68px) !important;
    line-height: .96 !important;
    letter-spacing: -.025em !important;
  }
  #produtos .page-head p {
    margin: 0 !important;
    max-width: 620px !important;
    color: #aaa39b !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  /* Filtros premium */
  #produtos .product-filters {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  #produtos .product-filter {
    min-height: 44px !important;
    padding: 10px 20px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 999px !important;
    background: rgba(18,18,20,.86) !important;
    color: #c7c0b7 !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    letter-spacing: .01em !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease !important;
  }
  #produtos .product-filter:hover {
    transform: translateY(-1px) !important;
    border-color: rgba(224,189,132,.42) !important;
    background: rgba(31,28,24,.92) !important;
    color: #f0d39d !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.18) !important;
  }
  #produtos .product-filter.active {
    border-color: #d9ad69 !important;
    background: linear-gradient(135deg,#edcc8c,#c8954f) !important;
    color: #15120e !important;
    box-shadow: 0 10px 28px rgba(199,151,78,.20), inset 0 1px 0 rgba(255,255,255,.35) !important;
  }

  /* Grid: 2 colunas no desktop médio */
  #produtos .product-grid {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 22px !important;
    align-items: stretch !important;
  }

  /* Card horizontal de loja real: imagem | conteúdo */
  #produtos .product-card-public {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(172px, 41%) minmax(0,1fr) !important;
    min-width: 0 !important;
    min-height: 322px !important;
    height: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 20px !important;
    background: linear-gradient(145deg,rgba(22,22,24,.97),rgba(12,12,14,.99)) !important;
    box-shadow: 0 18px 44px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025) !important;
    cursor: pointer !important;
    isolation: isolate !important;
    transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease !important;
  }
  #produtos .product-card-public::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 3 !important;
    pointer-events: none !important;
    border-radius: inherit !important;
    box-shadow: inset 0 0 0 1px rgba(218,174,104,0) !important;
    transition: box-shadow .24s ease !important;
  }
  #produtos .product-card-public:hover {
    transform: translateY(-5px) !important;
    border-color: rgba(222,180,111,.34) !important;
    box-shadow: 0 28px 62px rgba(0,0,0,.34), 0 0 28px rgba(193,143,73,.06) !important;
  }
  #produtos .product-card-public:hover::after {
    box-shadow: inset 0 0 0 1px rgba(222,180,111,.12) !important;
  }

  #produtos .product-photo {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 322px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: radial-gradient(circle at 50% 35%,#29231c,#0f0f11 72%) !important;
  }
  #produtos .product-photo::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: linear-gradient(90deg,transparent 68%,rgba(10,10,12,.50) 100%), linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.22)) !important;
  }
  /* Fotos reais extras somente no desktop; o src mobile original permanece intacto. */
  #produtos .product-photo img[src$="/shampoo-masculino.png"] {
    content: url("/assets/products/shampoo-masculino-desktop-premium.png") !important;
  }
  #produtos .product-photo img[src$="/oleo-barba.png"] {
    content: url("/assets/products/oleo-barba-desktop-premium.png") !important;
  }

  #produtos .product-photo > img,
  #produtos .product-photo-empty img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    transform: scale(1.001) !important;
    filter: contrast(1.03) saturate(.96) brightness(.96) !important;
    transition: transform .32s ease, filter .32s ease !important;
  }
  #produtos .product-card-public:hover .product-photo > img,
  #produtos .product-card-public:hover .product-photo-empty img {
    transform: scale(1.045) !important;
    filter: contrast(1.04) saturate(1.02) brightness(1.02) !important;
  }
  #produtos .product-photo-empty {
    width: 100% !important;
    height: 100% !important;
    min-height: 322px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
  }
  #produtos .product-category {
    z-index: 4 !important;
    top: 16px !important;
    left: 16px !important;
    padding: 6px 10px !important;
    border: 1px solid rgba(229,190,126,.42) !important;
    border-radius: 999px !important;
    background: rgba(10,10,12,.78) !important;
    color: #e4bd79 !important;
    backdrop-filter: blur(9px) !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: .11em !important;
    box-shadow: 0 8px 20px rgba(0,0,0,.18) !important;
  }

  #produtos .product-card-body {
    position: relative !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-rows: minmax(0,1fr) auto !important;
    gap: 22px !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 26px 26px 24px !important;
    background: linear-gradient(180deg,rgba(19,19,21,.96),rgba(12,12,14,.985)) !important;
  }
  #produtos .product-card-body > div:first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 11px !important;
    min-width: 0 !important;
    overflow: visible !important;
  }
  #produtos .product-card-body h3 {
    width: 100% !important;
    margin: 0 !important;
    color: #f5f1eb !important;
    font-family: "Cormorant Garamond",serif !important;
    font-size: clamp(25px,1.7vw,31px) !important;
    line-height: 1.04 !important;
    font-weight: 700 !important;
    letter-spacing: -.015em !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  #produtos .product-card-body p,
  #produtos .product-card-body .expandable-copy {
    display: block !important;
    width: 100% !important;
    max-width: 34ch !important;
    margin: 0 !important;
    color: #a9a39c !important;
    font-size: 12px !important;
    line-height: 1.58 !important;
    white-space: normal !important;
    overflow: visible !important;
    max-height: none !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    overflow-wrap: anywhere !important;
  }

  #produtos .product-card-bottom {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    align-items: end !important;
    gap: 14px !important;
    min-width: 0 !important;
    margin-top: auto !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(255,255,255,.075) !important;
  }
  #produtos .product-card-bottom > div {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    min-width: 0 !important;
  }
  #produtos .product-card-bottom strong {
    margin: 0 !important;
    color: #e2b568 !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    white-space: nowrap !important;
  }
  #produtos .product-card-bottom small {
    margin: 0 !important;
    color: #8f8982 !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
  }
  #produtos .product-card-bottom .primary-action {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    border-radius: 11px !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    letter-spacing: .01em !important;
    cursor: pointer !important;
    box-shadow: 0 10px 24px rgba(196,146,72,.12) !important;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease !important;
  }
  #produtos .product-card-bottom .primary-action:hover:not(:disabled) {
    transform: translateY(-2px) !important;
    filter: brightness(1.075) saturate(1.03) !important;
    box-shadow: 0 15px 32px rgba(196,146,72,.26) !important;
  }
  #produtos .product-card-bottom .primary-action:disabled {
    cursor: not-allowed !important;
    opacity: .46 !important;
    box-shadow: none !important;
  }

  /* skeleton acompanha o novo grid */
  #produtos .product-skeleton {
    min-height: 322px !important;
    aspect-ratio: auto !important;
    border-radius: 20px !important;
  }
}

@media (min-width: 1440px) {
  #produtos .product-grid {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 20px !important;
  }
  #produtos .product-card-public {
    grid-template-columns: minmax(158px,40%) minmax(0,1fr) !important;
    min-height: 334px !important;
  }
  #produtos .product-photo,
  #produtos .product-photo-empty {
    min-height: 334px !important;
  }
  #produtos .product-card-body {
    padding: 23px 21px 21px !important;
    gap: 18px !important;
  }
  #produtos .product-card-body h3 {
    font-size: clamp(23px,1.55vw,28px) !important;
  }
  #produtos .product-card-body p,
  #produtos .product-card-body .expandable-copy {
    max-width: 30ch !important;
    font-size: 11.5px !important;
  }
  #produtos .product-card-bottom strong {
    font-size: 28px !important;
  }
}

@media (min-width: 1800px) {
  #produtos .page {
    width: min(1400px, calc(100% - 96px)) !important;
    max-width: 1400px !important;
  }
  #produtos .product-grid {
    gap: 24px !important;
  }
  #produtos .product-card-public {
    grid-template-columns: minmax(176px,41%) minmax(0,1fr) !important;
    min-height: 350px !important;
  }
  #produtos .product-photo,
  #produtos .product-photo-empty {
    min-height: 350px !important;
  }
}
