@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,700;9..144,800&display=swap");

/* Texturas usadas como fundo do site */
:root {
  --paper-url: url("../Elementos%20para%20o%20site/FundoPapelBranco1.png");
  --paper-two-url: url("../Elementos%20para%20o%20site/FundoPapelBranco2.png");
  --brasil-url: url("../Elementos%20para%20o%20site/BrasilCamadasFundo.png");
}

html {
  scroll-padding-top: 84px;
}

body {
  color: #241611;
  background:
    linear-gradient(rgba(246, 237, 220, .88), rgba(246, 237, 220, .9)),
    var(--paper-url);
  background-size: cover;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Tipografia de destaque */
.display-font {
  font-family: Impact, Haettenschweiler, "Arial Black", sans-serif;
  letter-spacing: 0;
  line-height: .9;
}

.subtitle-font {
  font-family: "Fraunces", Georgia, "Times New Roman", serif;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.02;
  text-shadow: 0 3px 14px rgba(36, 22, 17, .54);
}

.primary-cta {
  box-shadow:
    0 0 0 3px rgba(246, 237, 220, .82),
    8px 10px 0 rgba(36, 22, 17, .22);
}

.desktop-cta {
  box-shadow:
    0 0 0 2px rgba(246, 237, 220, .9),
    7px 9px 0 rgba(36, 22, 17, .18);
}

@media (min-width: 1024px) {
  .primary-cta {
    padding-inline: 2.35rem;
    padding-block: 1.1rem;
    font-size: 1.05rem;
  }
}

/* Superfícies com textura de papel */
.paper-panel {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .86), rgba(246, 237, 220, .72)),
    var(--paper-two-url);
  background-size: cover;
  border: 1px solid rgba(36, 22, 17, .18);
}

/* Fundos das seções principais */
.hero-bg {
  background-image:
    linear-gradient(90deg, rgba(36, 22, 17, .78), rgba(36, 22, 17, .45), rgba(36, 22, 17, .16)),
    var(--brasil-url);
  background-size: cover;
  background-position: center;
}

.texture-band {
  background-image:
    linear-gradient(180deg, rgba(49, 87, 44, .94), rgba(36, 22, 17, .92)),
    url("../Elementos%20para%20o%20site/PapelCamadas2.png");
  background-size: cover;
  background-position: center;
}

/* Recortes e formas orgânicas */
.cutout {
  filter: drop-shadow(13px 18px 0 rgba(36, 22, 17, .15));
  pointer-events: none;
  user-select: none;
}

.organic {
  clip-path: polygon(8% 11%, 91% 2%, 98% 82%, 13% 96%, 0 42%);
}

.organic-alt {
  clip-path: polygon(2% 19%, 86% 0, 100% 48%, 89% 100%, 11% 91%, 0 47%);
}

.registration-panel {
  border-radius: .35rem;
}

/* Estado do menu após rolagem */
.nav-scrolled {
  background: rgba(246, 237, 220, .9);
  box-shadow: 0 12px 35px rgba(36, 22, 17, .12);
  backdrop-filter: blur(14px);
  border-color: rgba(36, 22, 17, .12);
}

#siteHeader:not(.nav-scrolled) .brand-text {
  color: #f6eddc;
  text-shadow: 0 2px 16px rgba(36, 22, 17, .62);
}

/* Animação de entrada */
.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .7s ease, transform .7s ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.timeline-line {
  background: repeating-linear-gradient(
    to bottom,
    rgba(36, 22, 17, .36) 0,
    rgba(36, 22, 17, .36) 9px,
    transparent 9px,
    transparent 18px
  );
}

/* Redução de movimento */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
