:root {
  --brand: #b30000;
  --brand-dark: #8b0000;
  --radius: 15px
}

body {
  background: #f6f7f9
}

header a {
  text-decoration: none
}

header a:hover {
  opacity: .85
}

.whats-pill {
  position: relative;
  padding: .55rem .95rem;
  border-radius: 9999px;
  color: #fff;
  background: #25D366;
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;
  transition: transform .2s, filter .2s
}

.whats-pill i {
  font-size: 1.1rem
}

.whats-pill::before {
  content: "";
  position: absolute;
  inset: auto -20% -60% -20%;
  height: 160%;
  border-radius: 45% 55% 60% 40%;
  background: rgba(255, 255, 255, .22);
  transform: translateY(60%) rotate(0);
  transition: transform .5s;
  z-index: -1
}

.whats-pill:hover {
  transform: translateY(-1px);
  filter: brightness(1.02)
}

.whats-pill:hover::before {
  transform: translateY(30%) rotate(15deg)
}

.social-btn {
  --size: 42px;
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;
  position: relative;
  transition: transform .2s, filter .2s
}

.social-btn i {
  font-size: 1.05rem;
  z-index: 1
}

.social-btn.instagram {
  background: linear-gradient(45deg, #f58529, #dd2a7b, #8134af, #515bd4);
  background-size: 200% 200%
}

.social-btn.facebook {
  background: #1877F2
}

.social-btn.email {
  background: #222
}

.social-btn::after {
  content: "";
  position: absolute;
  width: 140%;
  height: 140%;
  top: 60%;
  left: 50%;
  background: rgba(255, 255, 255, .18);
  border-radius: 45% 55% 40% 60%;
  transform: translate(-50%, -50%) rotate(0) scale(.9);
  transition: transform .45s
}

.social-btn:hover {
  transform: translateY(-2px);
  filter: saturate(1.15)
}

.social-btn.instagram:hover {
  animation: igFlow .8s linear forwards
}

.social-btn:hover::after {
  transform: translate(-50%, -58%) rotate(18deg) scale(1)
}

.social-btn.tiktok {
  background: linear-gradient(45deg, #25F4EE, #FE2C55);
  color: #fff;
  transition: transform .3s ease, box-shadow .3s ease
}

.social-btn.tiktok:hover {
  animation: igFlow .8s linear forwards
}

@keyframes igFlow {
  0% {
    background-position: 0% 50%
  }

  100% {
    background-position: 100% 50%
  }
}

.navbar {
  background: linear-gradient(90deg, var(--brand-dark), var(--brand))
}

.hero {
  min-height: 380px;
  background: radial-gradient(1200px 400px at 70% -10%, rgba(255, 255, 255, .15), transparent), linear-gradient(135deg, #1f2023, #3b3f45);
  color: #fff;
  display: flex;
  align-items: center;
  position: relative
}

.hero .tag {
  background: rgba(255, 255, 255, .15);
  padding: .25rem .6rem;
  border-radius: 999px;
  font-size: .9rem
}

.hero h1 {
  font-weight: 800;
  letter-spacing: .3px
}

.hero .icon-bg {
  position: absolute;
  right: 5%;
  bottom: -20px;
  opacity: .08;
  font-size: 22rem
}

.search-card {
  margin-top: -60px;
  border: 0;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .08)
}

.card {
  transition: transform .25s ease, box-shadow .25s ease;
  border-radius: var(--radius)
}

.card:hover {
  transform: scale(1.03);
  box-shadow: 0 10px 25px rgba(0, 0, 0, .15);
  z-index: 2
}

.thumb {
  height: 300px;
  background: #e9ecef;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius)
}

.thumb i {
  font-size: 4rem;
  color: #6c757d
}

.price {
  color: var(--brand-dark);
  font-weight: 800;
  font-size: 1.1rem
}

.btn-estoque {
  background: linear-gradient(90deg, var(--brand), var(--brand-dark));
  color: #fff;
  font-weight: bold;
  border-radius: 50px;
  padding: 12px 35px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .2);
  transition: all .3s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none
}

.btn-estoque:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .3);
  color: #fff
}

footer {
  background: #1f2023;
  color: #fff
}

.footer-logo {
  position: relative;
  margin-top: -90px;
  z-index: 2;
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius);
  background: #fff;
  padding: 20px
}

footer small {
  font-size: .85rem
}

@media (max-width:767.98px) {
  footer small {
    display: block;
    margin-top: 10px
  }
}

@media (min-width: 992px) {
  .navbar-nav .nav-item {
    margin: 0 20px;
  }
}

.navbar .nav-link {
  color: #fff !important;
  font-weight: 500 position: relative;
  padding: 0.6rem 1rem;
  /* aumenta área clicável */
  border-radius: 50px;
  /* deixa arredondado */
  transition: all 0.3s ease;
  /* animação suave */
}

.navbar .nav-link:hover {
  background: rgba(255, 255, 255, 0.2);
  /* fundo branco com transparência */
  color: #fff !important;
  /* mantém o texto branco */
}

/*
 * Personalização da Paginação do Bootstrap 5
 */

/* Altera o estilo do item ATIVO (selecionado) */
.pagination .page-item.active .page-link {
  background-color: var(--brand-dark);
  border-color: var(--brand-dark);
  /* É uma boa prática mudar a cor da borda também */
  color: #fff;
  /* Fundamental: Mude a cor do texto para branco para garantir a legibilidade */
}

/* Opcional: Altera a cor do link ao passar o mouse (hover) para combinar com sua marca */
.pagination .page-link {
  color: var(--brand-dark);
}

.pagination .page-link:hover {
  color: var(--brand-dark);
}

/* Opcional: Remove o sombreamento azul (box-shadow) ao focar no link */
.page-link:focus {
  box-shadow: none;
  /* ou personalize com a cor da sua marca: box-shadow: 0 0 0 0.25rem rgba(var(--brand-rgb), 0.25); */
}