/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/.pnpm/next@15.5.22_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!../../node_modules/.pnpm/next@15.5.22_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!../../packages/tokens/src/tokens.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Tokens MANIÁ como CSS custom properties — importar uma vez no layout raiz de cada app.
 * Fonte da verdade: MANIA Portal.dc.html (protótipo aprovado). Ver colors.ts/typography.ts
 * para os mesmos valores em TS (uso em componentes/lógica).
 */
:root {
  --verde: #607848;
  --verde2: #4d6139;
  --igapo: #0c4a45;
  --igapo2: #0a3d39;
  --dossel: #2f6b4f;
  --palha: #cca878;
  --buriti: #e2a33c;
  --urucum: #c7522a;
  --rio: #1b8a8f;
  --terra: #5b4632;
  --ink: #2a2018;
  --cinza: #6e6353;
  --tapioca: #f7f2e9;
  --areia: #e7dcc6;
  --linha: #decfb8;
  --card: #fff;
  --fs: 1;

  --serif: "Fraunces", Georgia, serif;
  --sans: "Inter", system-ui, sans-serif;

  --bg: var(--tapioca);

  --weave-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='24'%3E%3Cg fill='none' stroke='%23E7DCC6' stroke-width='1' opacity='0.6'%3E%3Cpath d='M0,12 Q12,2 24,12 T48,12'/%3E%3Cpath d='M0,12 Q12,22 24,12 T48,12'/%3E%3C/g%3E%3C/svg%3E");
  --weave-terra: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='24'%3E%3Cg fill='none' stroke='%235B4632' stroke-width='1' opacity='0.5'%3E%3Cpath d='M0,12 Q12,2 24,12 T48,12'/%3E%3Cpath d='M0,12 Q12,22 24,12 T48,12'/%3E%3C/g%3E%3C/svg%3E");
}

html[data-contrast="1"] {
  --bg: #fff;
  --ink: #111;
  --cinza: #333;
  --terra: #222;
  --linha: #777;
}

@keyframes sway {
  0%,
  100% {
    transform: rotate(-1.4deg);
  }
  50% {
    transform: rotate(1.4deg);
  }
}

@keyframes heroSway {
  0%,
  100% {
    transform: rotate(-1deg);
  }
  50% {
    transform: rotate(1deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}

/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/.pnpm/next@15.5.22_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!../../node_modules/.pnpm/next@15.5.22_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!./src/app/globals.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  font-size: calc(16px * var(--fs));
}

body {
  font-family: var(--sans);
  color: var(--ink);
  background: var(--bg);
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--verde);
  text-decoration: none;
}
a:hover {
  color: var(--igapo);
}

.mania-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.mania-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-weight: 600;
  font-size: 0.95rem;
  padding: 13px 24px;
  border-radius: 40px;
  border: none;
  cursor: pointer;
  transition: transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.18s, opacity 0.15s;
  background: var(--igapo);
  color: #fff;
}
.mania-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(12, 74, 69, 0.25);
}
.mania-btn:focus-visible {
  outline: 3px solid var(--buriti);
  outline-offset: 2px;
}
.mania-btn--gold {
  background: var(--buriti);
  color: var(--igapo);
}
.mania-btn--urucum {
  background: var(--urucum);
  color: #fff;
}
.mania-btn--verde {
  background: var(--verde);
  color: #fff;
}
.mania-btn--ghost {
  background: transparent;
  color: #fff;
  border: 1.5px solid rgba(204, 168, 120, 0.7);
}
.mania-btn--ghostdark {
  background: transparent;
  color: var(--igapo);
  border: 1.5px solid var(--verde);
}
.mania-btn--sm {
  padding: 9px 16px;
  font-size: 0.85rem;
}

.mania-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--urucum);
}
.mania-kicker::before {
  content: "";
  width: 26px;
  height: 2px;
  border-radius: 2px;
  background: var(--palha);
  flex-shrink: 0;
}

.mania-sec {
  font-family: var(--serif);
  font-size: clamp(27px, 3.7vw, 40px);
  font-weight: 600;
  color: var(--igapo);
  line-height: 1.08;
  letter-spacing: -0.01em;
  margin: 10px 0;
}

.mania-consent-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border: 1.5px solid;
  border-radius: 999px;
  padding: 3px 10px;
}

