
/* === MTSoftware theme (v4 final hero/menu) === */

/* NAVBAR */
nav.navbar.navbar-dark { background:#111827 !important; box-shadow:0 2px 10px rgba(0,0,0,.2); }
nav.navbar .navbar-brand { color:#fff !important; font-weight:800; letter-spacing:.4px; font-size:1.35rem !important; text-transform:uppercase; }
nav.navbar .navbar-nav .nav-link { color:#e8ecf2 !important; font-size:1.125rem !important; font-weight:700; padding:.65rem 1rem; }
nav.navbar .navbar-nav .nav-link:hover, 
nav.navbar .navbar-nav .nav-link:focus { color:#fff !important; text-decoration:none; }
nav.navbar .navbar-nav .nav-link.active, 
nav.navbar .navbar-nav .nav-link[aria-current="page"] { color:#fff !important; position:relative; }
nav.navbar .navbar-nav .nav-link.active::after, 
nav.navbar .navbar-nav .nav-link[aria-current="page"]::after {
  content:""; position:absolute; left:12%; right:12%; bottom:.35rem;
  height:3px; border-radius:3px; background:#0d6efd;
}

/* BODY offset */
body { padding-top: 74px; }
@media (min-width: 992px){ body { padding-top: 80px; }}

/* HERO (already pushed down) */
section.hero-section {
  background: linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)), url('../img/hero.jpg');
  background-size: cover; background-position: center;
  min-height: 520px; 
  display:flex; align-items:flex-start; justify-content:center;
  padding-top: 140px; padding-bottom: 110px;
  text-align:center;
}
section.hero-section h1.display-5 { 
  font-size: clamp(2rem, 4.5vw, 2.6rem);
  line-height: 1.2;
  color:#fff; 
  text-shadow:0 6px 18px rgba(0,0,0,.5);
}
section.hero-section .lead { 
  color:#e5e7eb; 
  font-weight:500; 
  font-size: clamp(1rem, 2vw, 1.12rem);
  text-shadow:0 4px 12px rgba(0,0,0,.4);
}

/* Product cards */
.product-card { transition: transform .2s, box-shadow .2s; }
.product-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }

/* Helpers */
.object-cover { object-fit: cover; }

.object-contain { object-fit: contain; }
.media-frame,
.card-media-frame,
.detail-media-frame {
  background: #fff;
  border: 1px solid rgba(17,24,39,.08);
  overflow: hidden;
}
.card-media-frame { border-radius: .75rem .75rem 0 0; }
.detail-media-frame { border-radius: .9rem; }
.media-frame img,
.card-media-frame img,
.detail-media-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  background: #fff;
  padding: .85rem;
}
.detail-media-frame img { padding: 1rem; }

footer.footer a { text-decoration: none; }
/* Mata a legenda "Apenas para fins ilustrativos" em todos os detalhes */
.ratio + p.small.text-muted { display: none !important; }

/* Uniformização de imagens do catálogo e detalhes */
.catalog-media,
.card-media-frame,
.media-frame,
.detail-media-frame {
  display: flex;
  align-items: center;
  justify-content: center;
}

.catalog-media,
.card-media-frame,
.media-frame {
  min-height: 220px;
}

.detail-media-frame {
  min-height: clamp(320px, 36vw, 520px);
  max-height: 520px;
}

.media-frame img,
.card-media-frame img,
.detail-media-frame img,
.catalog-media img,
.product-card img {
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center center;
  display: block;
}

.detail-media-frame img {
  padding: 1.1rem;
}

@media (max-width: 767.98px) {
  .catalog-media,
  .card-media-frame,
  .media-frame {
    min-height: 190px;
  }

  .detail-media-frame {
    min-height: 260px;
    max-height: 380px;
  }
}
