/* Importa as variáveis do arquivo externo (assumindo que esteja no mesmo diretório) */
@import url('./variables.css');
@import url('./scroll-top-btn.css');
@import url('./loading-overlay.css');
@import url('./nav.css');
@import url('./hero-presentation.css');
@import url('./registro.css');
@import url('./home/card-area.css');
@import url('./animation.css');

html {
  scroll-behavior: smooth;

  background-color: rgb(205, 202, 93),
    rgba(100, 149, 237, 0.6),
    rgba(138, 43, 226, 0.5),
    rgba(173, 216, 230, 0.5)
}

/* Corpo da página */
body {
  /* background-color: var(--color-background); */
  /* background-image: var(--bg-pattern); */
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  color: var(--color-text-primary);
  margin: 0;
  padding: 0;
}

/* Cabeçalho */
header {
  background-color: var(--color-primary);
  color: var(--color-text-primary);
  text-align: center;
  padding: var(--spacing-lg) 0;
  font-family: var(--font-family-base);
}

header h1 {
  color: var(--color-text-light);
  font-size: var(--font-size-xl);
  font-weight: 700;
}

header p {
  margin-top: 0.5rem;
  color: var(--color-text-light);
  font-size: var(--font-size-lg);
}

/* Main e Seções */
main {
  opacity: 1;
  filter: blur(0);
}

/* Oculta ou esmaece quando overlay está ativo */
main.desactive {
  opacity: 0.3;
  filter: blur(2px);
}

/* ===================
   SPA VIEW SECTIONS
   =================== */
.view-section {
  display: none;
}

.view-section.active {
  display: block;
}

section {
  background-color: var(--color-surface);
  padding: var(--spacing-lg);
}

section h2 {
  color: var(--color-primary);
  font-family: var(--font-family-base);
  font-size: var(--font-size-lg);
  font-weight: 600;
  margin-bottom: 1rem;
}

/* ===================
   SECTION TITLES - ESTILO PREMIUM
   =================== */
.section-title {
  position: relative;
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  color: #1f2937;
  margin-bottom: 0.5rem;
}

.section-title::after {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: linear-gradient(90deg, transparent, #C8A253, transparent);
  border-radius: 2px;
}

.section-title-wrapper {
  text-align: center;
  margin-bottom: 2.5rem;
}

.section-subtitle {
  color: #6b7280;
  font-size: 1.05rem;
  margin-top: 1rem;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* Variação com linha à esquerda */
.section-title-left {
  position: relative;
  padding-left: 1rem;
  font-size: 1.75rem;
  font-weight: 700;
  color: #1f2937;
}

.section-title-left::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, #C8A253, #a8863f);
  border-radius: 2px;
}

@media (min-width: 768px) {
  .section-title {
    font-size: 2.5rem;
  }

  .section-title::after {
    width: 80px;
    height: 4px;
  }

  .section-subtitle {
    font-size: 1.125rem;
  }
}

section p,
section ul {
  color: var(--color-text-secondary);
  font-size: var(--font-size-base);
  line-height: 1.6;
}

section ul {
  padding-left: 1.25rem;
}

/* Rodapé */
footer {
  background-color: #e5e7eb;
  text-align: center;
  padding: var(--spacing-md) 0;
  color: var(--color-secondary);
  font-family: var(--font-family-base);
  font-size: 0.875rem;
}

/* Links gerais */
a {
  color: var(--color-link);
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover,
a:focus {
  color: var(--color-link-hover);
  outline: none;
}

/* Botões */
.button {
  background-color: var(--color-primary);
  color: white;
  border: none;
  padding: var(--spacing-sm) var(--spacing-md);
  border-radius: 0.375rem;
  font-size: var(--font-size-base);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.button:hover,
.button:focus {
  background-color: var(--color-primary-dark);
  outline: none;
}

/* Card (caso use) */
.card {
  background-color: var(--color-surface);
  padding: var(--spacing-lg);
  border-radius: 0.5rem;
  box-shadow: 0 1px 3px rgb(0 0 0 / 0.1);
  margin-bottom: var(--spacing-lg);
}

/* backgorund-logo */
.backgorund-imagen-logo {
  background: url("../images/logo/SiffermannLogoTipo.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* backgorund-imagen */
.backgorund-imagen {
  background: url("../images/background-about.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* backgorund-imagen-capa */
.backgorund-imagen-capa {
  background: url("../images/background-capa.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.backgorund-imagen-capa-light {
  position: relative;
  background:
    linear-gradient(to bottom,
      rgba(255, 255, 255, 0.65) 0%,
      rgba(250, 250, 250, 0.35) 40%,
      rgba(255, 255, 255, 0.75) 100%);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: lighten;
  filter: brightness(1.2) contrast(1.05) saturate(1.1);
  transition: filter 0.8s ease, transform 0.6s ease;
}

/**
* RESPOSIVIDADES
*/

@media (max-width: 780px) {
  .backgorund-imagen-logo {
    width: 20rem !important;
    height: 20rem !important;
  }

  h2 {
    font-size: 1.2rem !important;
  }

  p {
    font-size: .9rem !important;
    line-height: 1.4 !important;
  }
}