/* Mandrake Responsive V9 - produto individual e header adaptativo */
:root{
  --mg-v9-blue:#0057ff;
  --mg-v9-blue-dark:#003fc2;
  --mg-v9-ink:#061126;
  --mg-v9-muted:#60708a;
  --mg-v9-border:rgba(0,87,255,.16);
  --mg-v9-shadow:0 18px 54px rgba(15,23,42,.10);
}

/* Header: acompanha melhor a largura da tela sem ficar apertado no centro */
.mg-header-inicio-inner{
  width:min(92vw, 1640px)!important;
  max-width:1640px!important;
}
@media (max-width:760px){
  .mg-header-inicio-inner{width:calc(100% - 1rem)!important;}
  .mg-inicio-logo-card{max-width:calc(100vw - 5rem)!important;}
}

/* Página de produto: largura fluida real para desktop grande, notebook e mobile */
.mg-product-detail-main{
  width:min(92vw, 1500px)!important;
  max-width:1500px!important;
  padding-top:5.7rem!important;
  padding-left:0!important;
  padding-right:0!important;
  padding-bottom:2.5rem!important;
}
.mg-product-detail-main .mg-product-breadcrumb{
  margin-bottom:1rem!important;
}
.mg-product-detail-main > section.grid:first-of-type{
  display:grid!important;
  grid-template-columns:minmax(420px, .96fr) minmax(420px, 1.04fr)!important;
  gap:clamp(1.1rem,2.2vw,2rem)!important;
  align-items:start!important;
}
.mg-product-detail-main .mg-client-card{
  border-radius:clamp(1.2rem,1.8vw,1.7rem)!important;
  box-shadow:var(--mg-v9-shadow)!important;
  border-color:var(--mg-v9-border)!important;
  background:rgba(255,255,255,.96)!important;
}
.mg-product-detail-main .mg-gallery-main{
  width:100%!important;
  height:clamp(420px, 40vw, 680px)!important;
  max-height:calc(100vh - 8.5rem)!important;
  aspect-ratio:auto!important;
  border-radius:clamp(1rem,1.6vw,1.45rem)!important;
  background:linear-gradient(135deg,#f8fbff,#eaf2ff)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.mg-product-detail-main .mg-gallery-main img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:clamp(.45rem,1.3vw,1rem)!important;
}
.mg-product-detail-main .mg-client-card:has(.mg-client-title){
  padding:clamp(1.25rem,2vw,2rem)!important;
}
.mg-product-detail-main .mg-client-title{
  font-size:clamp(2.3rem,4vw,4.8rem)!important;
  line-height:.95!important;
  letter-spacing:-.075em!important;
  max-width:11ch!important;
}
.mg-product-detail-main .mg-client-card .text-4xl{
  font-size:clamp(1.85rem,2.8vw,3rem)!important;
  line-height:1!important;
  color:var(--mg-v9-blue)!important;
}
.mg-product-detail-main .choice{
  min-width:2.65rem!important;
  min-height:2.65rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  padding:.65rem .9rem!important;
}
.mg-product-detail-main .mg-product-actions.two{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.8rem!important;
}
.mg-product-detail-main .mg-client-btn{
  min-height:3.2rem!important;
  border-radius:1rem!important;
}
.mg-product-detail-main .mg-client-grid.cols-2.mt-6{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1rem!important;
}

/* Desktop muito largo: usa melhor o espaço mas mantém leitura confortável */
@media (min-width:1600px){
  .mg-product-detail-main{width:min(78vw, 1560px)!important;max-width:1560px!important;}
  .mg-product-detail-main > section.grid:first-of-type{grid-template-columns:minmax(560px,.95fr) minmax(560px,1.05fr)!important;}
  .mg-product-detail-main .mg-gallery-main{height:clamp(560px,34vw,760px)!important;}
}

/* Notebook / janela reduzida: vira uma página de compra clara, sem esmagar */
@media (max-width:1080px){
  .mg-product-detail-main{
    width:min(94vw, 880px)!important;
    padding-top:5.2rem!important;
  }
  .mg-product-detail-main > section.grid:first-of-type{
    grid-template-columns:1fr!important;
    gap:1rem!important;
  }
  .mg-product-detail-main .mg-gallery-main{
    height:min(62vh, 620px)!important;
  }
  .mg-product-detail-main .mg-client-title{
    max-width:none!important;
    font-size:clamp(2.1rem,8vw,4rem)!important;
  }
}

/* Mobile e janelas estreitas: imagem menor, ações sem sobrepor a barra inferior */
@media (max-width:760px){
  .mg-product-detail-main{
    width:calc(100% - 1rem)!important;
    padding-top:4.75rem!important;
    padding-bottom:calc(10rem + env(safe-area-inset-bottom,0px))!important;
  }
  .mg-product-detail-main .mg-gallery-main{
    height:clamp(285px, 54vh, 460px)!important;
    border-radius:1.05rem!important;
  }
  .mg-product-detail-main .mg-gallery-main img{padding:.35rem!important;}
  .mg-product-detail-main .mg-client-card{border-radius:1.12rem!important;padding:1rem!important;}
  .mg-product-detail-main .mg-client-grid.cols-3{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.55rem!important;
  }
  .mg-product-detail-main .mg-client-chip{
    width:100%!important;
    justify-content:flex-start!important;
    border-radius:.9rem!important;
    padding:.65rem .75rem!important;
  }
  .mg-product-detail-main .mg-client-title{
    font-size:clamp(2rem,10vw,3rem)!important;
    letter-spacing:-.06em!important;
  }
  .mg-product-detail-main .mg-product-actions.two{
    grid-template-columns:1fr!important;
    gap:.55rem!important;
  }
  .mg-product-detail-main .mg-client-grid.cols-2.mt-6{
    grid-template-columns:1fr!important;
  }
  .mg-client-sticky-buy{
    display:flex!important;
    bottom:calc(5.35rem + env(safe-area-inset-bottom,0px))!important;
    left:.55rem!important;
    right:.55rem!important;
    z-index:2147482500!important;
    border-radius:1rem!important;
    padding:.55rem!important;
  }
  .mg-client-sticky-buy .mg-client-btn{
    min-height:3.05rem!important;
    border-radius:.9rem!important;
    font-size:.88rem!important;
  }
  .mg-client-mobile-bar{
    display:grid!important;
    z-index:2147482600!important;
  }
}

/* Em tablet/desktop a barra mobile e a compra fixa não aparecem */
@media (min-width:761px){
  .mg-client-sticky-buy{display:none!important;}
}
@media (min-width:901px){
  .mg-client-mobile-bar{display:none!important;}
}
