:root {
  --salon-primary-color: #FF0066; /* valor padrão */
  --salon-text-on-primary: #000000; /* Valor Padrão para text em contraste */
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* 🔹 Garante que o body ocupe 100% da altura da tela */
}

main {
    flex-grow: 1; /* 🔹 Expande o conteúdo para ocupar o espaço vazio */
}

footer {
    /* background-color: #f8f9fa; Cor opcional */
    padding: 10px 0;
    text-align: center;
}

.theme-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-left: auto;
}

.theme-toggle i {
  font-size: 1.25rem;
}

.theme-toggle:focus {
  outline: none;
}

.full_area{
  min-width: 100%;
  padding-bottom: 5px;
}

.hero_area.with-content {
  min-height: 100vh;
}

.hero_area .hero_bg_box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}

.hero_area .hero_bg_box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right top;
     object-position: right top;
}

.color-square {
  min-width: 100px;
  width: 100%;
  min-height: 100px;
  height: 100%;
}
.color-base {
  background-color: var(--salon-primary-color);
}
.color-primary {
  background-color: #FF0066;
}
.color-second {
  background-color: #6600ff;
}