/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@import url('https://fonts.googleapis.com/css2?family=Anton&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Lobster&display=swap');
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-white: #fff;
    --spacing: 0.25rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --font-weight-medium: 500;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: "DM Sans", Arial, sans-serif;
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .\@container {
    container-type: inline-size;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip-path: none;
    white-space: normal;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .isolate {
    isolation: isolate;
  }
  .isolation-auto {
    isolation: auto;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .flow-root {
    display: flow-root;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .inline-table {
    display: inline-table;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-column {
    display: table-column;
  }
  .table-column-group {
    display: table-column-group;
  }
  .table-footer-group {
    display: table-footer-group;
  }
  .table-header-group {
    display: table-header-group;
  }
  .table-row {
    display: table-row;
  }
  .table-row-group {
    display: table-row-group;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .min-h-16 {
    min-height: calc(var(--spacing) * 16);
  }
  .w-full {
    width: 100%;
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .grow {
    flex-grow: 1;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .translate-none {
    translate: none;
  }
  .scale-3d {
    scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .touch-pinch-zoom {
    --tw-pinch-zoom: pinch-zoom;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .resize {
    resize: both;
  }
  .columns-2 {
    columns: 2;
  }
  .columns-3 {
    columns: 3;
  }
  .columns-4 {
    columns: 4;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .place-content-center {
    place-content: center;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .space-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 1;
    }
  }
  .space-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 1;
    }
  }
  .divide-x {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 0;
      border-inline-style: var(--tw-border-style);
      border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
      border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 1;
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-\[4px\] {
    border-radius: 4px;
  }
  .rounded-md {
    border-radius: calc(var(--radius) - 4px);
  }
  .rounded-s {
    border-start-start-radius: 0.25rem;
    border-end-start-radius: 0.25rem;
  }
  .rounded-ss {
    border-start-start-radius: 0.25rem;
  }
  .rounded-e {
    border-start-end-radius: 0.25rem;
    border-end-end-radius: 0.25rem;
  }
  .rounded-se {
    border-start-end-radius: 0.25rem;
  }
  .rounded-ee {
    border-end-end-radius: 0.25rem;
  }
  .rounded-es {
    border-end-start-radius: 0.25rem;
  }
  .rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-tl {
    border-top-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-tr {
    border-top-right-radius: 0.25rem;
  }
  .rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-br {
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-bl {
    border-bottom-left-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-x {
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }
  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }
  .border-bs {
    border-block-start-style: var(--tw-border-style);
    border-block-start-width: 1px;
  }
  .border-be {
    border-block-end-style: var(--tw-border-style);
    border-block-end-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-input {
    border-color: var(--input);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-repeat {
    background-repeat: repeat;
  }
  .mask-no-clip {
    mask-clip: no-clip;
  }
  .mask-repeat {
    mask-repeat: repeat;
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .text-clip {
    text-overflow: clip;
  }
  .text-ellipsis {
    text-overflow: ellipsis;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-current {
    color: currentcolor;
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .diagonal-fractions {
    --tw-numeric-fraction: diagonal-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .lining-nums {
    --tw-numeric-figure: lining-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .oldstyle-nums {
    --tw-numeric-figure: oldstyle-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .proportional-nums {
    --tw-numeric-spacing: proportional-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .slashed-zero {
    --tw-slashed-zero: slashed-zero;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .stacked-fractions {
    --tw-numeric-fraction: stacked-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .normal-nums {
    font-variant-numeric: normal;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .inset-ring {
    --tw-inset-ring-shadow: inset 0 0 0 1px var(--tw-inset-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.1))) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.06)));
    --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .sepia {
    --tw-sepia: sepia(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-grayscale {
    --tw-backdrop-grayscale: grayscale(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-invert {
    --tw-backdrop-invert: invert(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-sepia {
    --tw-backdrop-sepia: sepia(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[color\,box-shadow\] {
    transition-property: color,box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-none {
    transition-property: none;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .repeat-1 {
    animation-iteration-count: 1;
    --tw-animation-iteration-count: 1;
  }
  .repeat-2 {
    animation-iteration-count: 2;
    --tw-animation-iteration-count: 2;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .divide-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 1;
    }
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .zoom-in {
    --tw-enter-scale: 0;
  }
  .zoom-out {
    --tw-exit-scale: 0;
  }
  .group-data-\[disabled\=true\]\:pointer-events-none {
    &:is(:where(.group)[data-disabled="true"] *) {
      pointer-events: none;
    }
  }
  .group-data-\[disabled\=true\]\:opacity-50 {
    &:is(:where(.group)[data-disabled="true"] *) {
      opacity: 50%;
    }
  }
  .peer-disabled\:cursor-not-allowed {
    &:is(:where(.peer):disabled ~ *) {
      cursor: not-allowed;
    }
  }
  .peer-disabled\:opacity-50 {
    &:is(:where(.peer):disabled ~ *) {
      opacity: 50%;
    }
  }
  .selection\:bg-primary {
    & *::selection {
      background-color: var(--primary);
    }
    &::selection {
      background-color: var(--primary);
    }
  }
  .selection\:text-primary-foreground {
    & *::selection {
      color: var(--primary-foreground);
    }
    &::selection {
      color: var(--primary-foreground);
    }
  }
  .file\:inline-flex {
    &::file-selector-button {
      display: inline-flex;
    }
  }
  .file\:h-7 {
    &::file-selector-button {
      height: calc(var(--spacing) * 7);
    }
  }
  .file\:border-0 {
    &::file-selector-button {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .file\:bg-transparent {
    &::file-selector-button {
      background-color: transparent;
    }
  }
  .file\:text-sm {
    &::file-selector-button {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .file\:font-medium {
    &::file-selector-button {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .file\:text-foreground {
    &::file-selector-button {
      color: var(--foreground);
    }
  }
  .placeholder\:text-muted-foreground {
    &::placeholder {
      color: var(--muted-foreground);
    }
  }
  .hover\:bg-accent {
    &:hover {
      @media (hover: hover) {
        background-color: var(--accent);
      }
    }
  }
  .hover\:bg-primary\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-secondary\/80 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--secondary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
        }
      }
    }
  }
  .hover\:text-accent-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--accent-foreground);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .focus-visible\:border-ring {
    &:focus-visible {
      border-color: var(--ring);
    }
  }
  .focus-visible\:ring-\[3px\] {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:ring-ring\/50 {
    &:focus-visible {
      --tw-ring-color: var(--ring);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
      }
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .has-\[\>svg\]\:px-1\.5 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 1.5);
    }
  }
  .has-\[\>svg\]\:px-2\.5 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 2.5);
    }
  }
  .has-\[\>svg\]\:px-3 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .has-\[\>svg\]\:px-4 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .data-\[state\=checked\]\:border-primary {
    &[data-state="checked"] {
      border-color: var(--primary);
    }
  }
  .data-\[state\=checked\]\:bg-primary {
    &[data-state="checked"] {
      background-color: var(--primary);
    }
  }
  .data-\[state\=checked\]\:text-primary-foreground {
    &[data-state="checked"] {
      color: var(--primary-foreground);
    }
  }
  .md\:text-sm {
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .dark\:border-input {
    @media (prefers-color-scheme: dark) {
      border-color: var(--input);
    }
  }
  .dark\:bg-input\/30 {
    @media (prefers-color-scheme: dark) {
      background-color: var(--input);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
  }
  .dark\:hover\:bg-accent\/50 {
    @media (prefers-color-scheme: dark) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--accent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--accent) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:hover\:bg-input\/50 {
    @media (prefers-color-scheme: dark) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--input);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--input) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:data-\[state\=checked\]\:bg-primary {
    @media (prefers-color-scheme: dark) {
      &[data-state="checked"] {
        background-color: var(--primary);
      }
    }
  }
  .\[\&_svg\]\:pointer-events-none {
    & svg {
      pointer-events: none;
    }
  }
  .\[\&_svg\]\:shrink-0 {
    & svg {
      flex-shrink: 0;
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 3);
      height: calc(var(--spacing) * 3);
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
}
@property --tw-animation-delay {
  syntax: "*";
  inherits: false;
  initial-value: 0s;
}
@property --tw-animation-direction {
  syntax: "*";
  inherits: false;
  initial-value: normal;
}
@property --tw-animation-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-animation-fill-mode {
  syntax: "*";
  inherits: false;
  initial-value: none;
}
@property --tw-animation-iteration-count {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-t {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-b {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-s {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-e {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-mask {
  syntax: "*";
  inherits: false;
}
@property --shimmer-angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: 20deg;
}
@property --shimmer-image {
  syntax: "*";
  inherits: false;
}
@property --shimmer-text-fill {
  syntax: "*";
  inherits: false;
}
@media (prefers-reduced-motion: reduce) {
  .shimmer {
    animation: none;
    background-image: none;
    -webkit-text-fill-color: currentColor;
  }
}
:root {
  --pink: #ff397f;
  --pink-bright: #ff4b91;
  --magenta: #c72963;
  --magenta-dark: #80113e;
  --gold: #f6d36b;
  --cream: #fff8f2;
  --ink: #21131b;
  --white: #ffffff;
  --background: #fff8f2;
  --foreground: #21131b;
  --card: #ffffff;
  --card-foreground: #21131b;
  --primary: #c72963;
  --primary-foreground: #ffffff;
  --secondary: #f6d36b;
  --secondary-foreground: #21131b;
  --muted: #f9e8ee;
  --muted-foreground: #6d5260;
  --accent: #ff397f;
  --accent-foreground: #ffffff;
  --border: #e8ccd6;
  --input: #e8ccd6;
  --ring: #c72963;
  --radius: 1.25rem;
  --page-gutter: max(5vw, calc((100vw - 1280px) / 2), 1.25rem);
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;
}
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--cream);
  color: var(--ink);
  font-family: "DM Sans", Arial, sans-serif;
}
a {
  color: inherit;
  text-decoration: none;
}
button, a {
  -webkit-tap-highlight-color: transparent;
}
.section {
  padding: 8rem max(5vw, 1.5rem);
}
section[id] {
  scroll-margin-top: 2rem;
}
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 3px solid var(--magenta);
  outline-offset: 5px;
}
.site-header {
  position: absolute;
  z-index: 50;
  top: 0;
  left: 0;
  width: 100%;
  height: 94px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 2rem;
  padding: 0 max(4vw, 1.5rem);
  color: white;
  border-bottom: 1px solid rgba(255,255,255,.22);
}
.header-brand {
  display: flex;
  align-items: baseline;
  gap: .6rem;
  width: fit-content;
}
.header-brand__name {
  font-family: "Lobster", cursive;
  font-size: 1.75rem;
  line-height: 1;
}
.header-brand__number {
  padding: .2rem .48rem;
  border-radius: 5px;
  color: var(--ink);
  background: var(--gold);
  font-family: "Anton", sans-serif;
  font-size: 1.25rem;
  line-height: 1;
  letter-spacing: .04em;
  transform: rotate(-2deg);
}
.desktop-nav {
  display: flex;
  align-items: center;
  gap: clamp(1.4rem, 2.5vw, 2.7rem);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.desktop-nav a {
  position: relative;
  padding: .5rem 0;
}
.desktop-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: var(--gold);
  transition: width .25s ease;
}
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after {
  width: 100%;
}
.header-cta {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 999px;
  padding: .78rem 1.15rem;
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  transition: .25s ease;
}
.header-cta:hover {
  color: var(--ink);
  background: var(--gold);
  border-color: var(--gold);
  transform: translateY(-2px);
}
.mobile-menu {
  display: none;
}
.hero {
  min-height: 920px;
  height: min(1000px, 100vh);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr);
  align-items: center;
  padding: 8.5rem max(5vw, 1.5rem) 4rem;
  color: white;
  background: var(--pink) url('./textura-rosa.webp') center/cover;
}
.hero::after {
  content: "";
  position: absolute;
  inset: auto -5% -110px -5%;
  height: 180px;
  background: var(--gold);
  transform: rotate(-2.4deg);
  transform-origin: left;
  z-index: -1;
}
.hero__grain {
  position: absolute;
  inset: 0;
  z-index: -2;
  background: radial-gradient(circle at 75% 32%, rgba(255,255,255,.16), transparent 30%), linear-gradient(100deg, rgba(128,17,62,.38), transparent 46%);
  mix-blend-mode: multiply;
}
.hero__copy {
  z-index: 3;
  max-width: 750px;
  padding-top: 2rem;
}
.hero__eyebrow {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
  font-weight: 800;
  font-size: .82rem;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.hero__eyebrow i {
  width: 56px;
  height: 2px;
  background: var(--gold);
}
.hero__eyebrow b {
  display: inline-grid;
  place-items: center;
  min-width: 72px;
  padding: .45rem .65rem .36rem;
  color: var(--magenta-dark);
  background: var(--gold);
  font-family: "Anton", sans-serif;
  font-size: 1.22rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: .04em;
  border-radius: 5px;
  box-shadow: 5px 5px 0 rgba(128,17,62,.42);
  transform: rotate(2deg);
}
.hero h1 {
  margin: 0;
  font-family: "Anton", Impact, sans-serif;
  font-size: clamp(4.5rem, 7.25vw, 8.3rem);
  font-weight: 400;
  line-height: .89;
  letter-spacing: -.025em;
  text-transform: uppercase;
  text-wrap: balance;
}
.hero h1 em {
  position: relative;
  display: inline-block;
  color: var(--gold);
  font-family: "Lobster", cursive;
  font-size: .73em;
  font-weight: 400;
  text-transform: none;
  transform: rotate(-2deg);
  transform-origin: left;
  text-shadow: 0 8px 0 rgba(128,17,62,.26);
}
.hero__lead {
  max-width: 600px;
  margin: 2rem 0 0;
  font-size: clamp(1rem, 1.25vw, 1.22rem);
  line-height: 1.65;
  font-weight: 500;
  color: rgba(255,255,255,.92);
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  margin-top: 2rem;
}
.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  min-height: 52px;
  padding: .85rem 1.3rem;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.button:hover {
  transform: translateY(-3px);
}
.button--gold {
  background: var(--gold);
  color: var(--ink);
  box-shadow: 0 12px 30px rgba(96,21,53,.24);
}
.button--gold:hover {
  box-shadow: 0 18px 38px rgba(96,21,53,.32);
}
.button--ghost {
  border: 1px solid rgba(255,255,255,.6);
  color: white;
}
.button--ghost:hover {
  background: rgba(255,255,255,.12);
}
.button--dark {
  background: var(--ink);
  color: white;
}
.button--dark:hover {
  box-shadow: 0 15px 40px rgba(33,19,27,.25);
}
.hero__portrait {
  position: absolute;
  z-index: 2;
  right: clamp(-5rem, -2.5vw, -1.25rem);
  bottom: 0;
  width: min(52vw, 780px);
  height: 88%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.hero__portrait img {
  position: relative;
  z-index: 2;
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
  filter: drop-shadow(-18px 28px 22px rgba(80,12,42,.24));
}
.hero__portrait-glow {
  position: absolute;
  z-index: 0;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: var(--gold);
  top: 17%;
  right: 8%;
  box-shadow: 0 0 0 44px rgba(255,255,255,.08), 0 0 0 88px rgba(255,255,255,.04);
}
.hero__giant-number {
  position: absolute;
  z-index: 0;
  right: -.5vw;
  top: 9%;
  font-family: "Anton", sans-serif;
  font-size: min(29vw, 450px);
  line-height: 1;
  letter-spacing: -.045em;
  color: rgba(246,211,107,.14);
  -webkit-text-stroke: 3px rgba(246,211,107,.78);
  paint-order: stroke fill;
  filter: drop-shadow(12px 14px 0 rgba(128,17,62,.25));
  transform: rotate(-3deg);
}
.hero__seal {
  position: absolute;
  z-index: 4;
  right: 2.5vw;
  bottom: 7.5rem;
  width: 154px;
  aspect-ratio: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--gold);
  color: var(--magenta-dark);
  transform: rotate(8deg);
  box-shadow: 0 12px 0 var(--magenta-dark);
}
.hero__seal::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 2px dashed var(--magenta);
  border-radius: 50%;
}
.hero__seal span {
  font-size: .62rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.hero__seal strong {
  font-family: "Anton", sans-serif;
  font-size: 2.9rem;
  font-weight: 400;
  line-height: 1;
}
.hero__scroll {
  position: absolute;
  left: max(5vw, 1.5rem);
  bottom: 2.1rem;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: .65rem;
  color: var(--ink);
  font-size: .74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .11em;
}
.ticker {
  overflow: hidden;
  color: var(--ink);
  background: var(--gold);
  transform: rotate(-2.4deg) scale(1.03);
  transform-origin: center;
  margin-top: -37px;
  position: relative;
  z-index: 12;
  box-shadow: 0 8px 0 var(--magenta-dark);
}
.ticker__track {
  width: max-content;
  display: flex;
  align-items: center;
  animation: ticker 26s linear infinite;
}
.ticker__group {
  flex: none;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1.1rem .75rem;
}
.ticker span {
  font-family: "Anton", sans-serif;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: .025em;
}
.ticker i {
  color: var(--magenta);
  font-style: normal;
}
@keyframes ticker {
  to {
    transform: translateX(-50%);
  }
}
.section-kicker {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin-bottom: 2rem;
  color: var(--magenta);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .13em;
}
.section-kicker span {
  display: grid;
  place-items: center;
  width: 35px;
  height: 35px;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: "Anton", sans-serif;
  letter-spacing: .02em;
}
.section-kicker--light {
  color: var(--gold);
}
.manifesto {
  position: relative;
  background: var(--cream);
  padding-top: 11rem;
}
.manifesto > .section-kicker {
  max-width: 1450px;
  margin-left: auto;
  margin-right: auto;
}
.manifesto__grid {
  display: grid;
  grid-template-columns: 1.08fr .82fr;
  gap: clamp(3rem, 8vw, 9rem);
  max-width: 1450px;
  margin: 0 auto;
  align-items: center;
}
.manifesto__statement p {
  margin: 0 0 .5rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(2.4rem, 4.5vw, 5.8rem);
  line-height: 1;
  text-transform: uppercase;
}
.manifesto__statement h2 {
  margin: 0;
  color: var(--magenta);
  font-family: "Lobster", cursive;
  font-size: clamp(5.6rem, 9.8vw, 12rem);
  line-height: .82;
  font-weight: 400;
  transform: rotate(-3deg);
  transform-origin: left;
}
.brush-underline {
  display: block;
  width: 75%;
  height: 18px;
  margin-top: 1.3rem;
  background: var(--gold);
  clip-path: polygon(0 22%, 100% 0, 96% 73%, 4% 100%);
}
.manifesto__body {
  max-width: 560px;
  font-size: 1.05rem;
  line-height: 1.8;
  color: #614955;
}
.manifesto__body .lead-copy {
  color: var(--ink);
  font-size: clamp(1.35rem, 1.8vw, 1.8rem);
  line-height: 1.42;
  font-weight: 700;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-top: 1.4rem;
  color: var(--magenta);
  font-size: .84rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  border-bottom: 2px solid var(--gold);
  padding-bottom: .3rem;
}
.photo-story {
  max-width: 1450px;
  margin: 7rem auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(270px, .62fr);
  gap: clamp(1rem, 2.2vw, 2rem);
  align-items: end;
}
.photo-story figure, .sergipe__photo {
  margin: 0;
  position: relative;
  overflow: hidden;
  background: var(--magenta-dark);
}
.photo-story img, .sergipe__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.photo-story figure:hover img, .sergipe__photo:hover img {
  transform: scale(1.025);
}
.photo-story__main {
  aspect-ratio: 3 / 1.72;
  clip-path: polygon(0 3%, 100% 0, 98% 95%, 2% 100%);
}
.photo-story__side {
  width: 92%;
  aspect-ratio: 4 / 5.15;
  justify-self: end;
  transform: rotate(2.2deg) translateY(2.5rem);
  box-shadow: 15px 15px 0 var(--gold);
}
.photo-placeholder-label {
  position: absolute;
  z-index: 3;
  top: .8rem;
  left: .8rem;
  max-width: calc(100% - 1.6rem);
  padding: .42rem .65rem;
  color: white;
  background: rgba(33,19,27,.8);
  backdrop-filter: blur(7px);
  font-size: .69rem;
  line-height: 1.2;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.photo-story figcaption {
  position: absolute;
  z-index: 2;
  inset: auto 0 0;
  padding: 3.5rem 1.5rem 1.35rem;
  color: white;
  background: linear-gradient(transparent, rgba(33,19,27,.9));
}
.photo-story__main figcaption {
  display: flex;
  align-items: baseline;
  gap: .65rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(1.7rem,3vw,3.6rem);
  line-height: 1;
  text-transform: uppercase;
}
.photo-story__main figcaption strong {
  color: var(--gold);
  font-weight: 400;
}
.photo-story__side figcaption {
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 800;
}
.manifesto__quote {
  max-width: 1100px;
  margin: 8.5rem auto 0;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.5rem;
  align-items: start;
  padding: 3rem;
  border: 2px solid var(--ink);
  box-shadow: 12px 12px 0 var(--gold);
  background: white;
  transform: rotate(-1deg);
}
.manifesto__quote svg {
  color: var(--magenta);
  width: 42px;
  height: 42px;
}
.manifesto__quote p {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(2rem, 4vw, 4.6rem);
  font-weight: 400;
  line-height: 1.05;
  text-transform: uppercase;
}
.commitments {
  color: white;
  background: var(--magenta-dark);
  position: relative;
  overflow: hidden;
}
.commitments::before {
  content: "4013";
  position: absolute;
  right: -2rem;
  top: -6rem;
  font-family: "Anton", sans-serif;
  font-size: 27vw;
  line-height: 1;
  color: rgba(255,255,255,.025);
}
.commitments__header {
  position: relative;
  z-index: 1;
  max-width: 1450px;
  margin: 0 auto 4rem;
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 4rem;
  align-items: end;
}
.commitments h2, .journey h2, .sergipe h2, .participate h2 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(3.7rem, 6.8vw, 7.6rem);
  line-height: .94;
  font-weight: 400;
  text-transform: uppercase;
}
.commitments h2 em, .journey h2 em, .sergipe h2 em, .participate h2 em {
  color: var(--gold);
  font-family: "Lobster", cursive;
  font-size: .82em;
  font-weight: 400;
  text-transform: none;
}
.commitments__header > p {
  color: rgba(255,255,255,.72);
  font-size: 1.08rem;
  line-height: 1.7;
}
.commitment-list {
  position: relative;
  z-index: 1;
  max-width: 1450px;
  margin: 0 auto;
  border-top: 1px solid rgba(255,255,255,.25);
}
.commitment {
  display: grid;
  grid-template-columns: 54px 56px minmax(230px,.7fr) 1fr auto;
  gap: clamp(1rem, 2.4vw, 2.8rem);
  align-items: center;
  padding: 2.1rem .5rem;
  border-bottom: 1px solid rgba(255,255,255,.25);
  transition: background .25s ease, padding .25s ease;
}
.commitment:hover {
  background: var(--pink);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.commitment__number {
  color: var(--gold);
  font-family: "Anton", sans-serif;
  font-size: 1.35rem;
}
.commitment__icon {
  width: 33px;
  height: 33px;
  color: var(--gold);
  stroke-width: 1.5;
}
.commitment h3 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(1.65rem, 2.7vw, 3.1rem);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}
.commitment p {
  margin: 0;
  color: rgba(255,255,255,.73);
  font-size: .98rem;
  line-height: 1.55;
  max-width: 550px;
}
.commitment__arrow {
  color: var(--gold);
}
.journey {
  position: relative;
  overflow: hidden;
  background: var(--cream);
}
.journey__brush {
  position: absolute;
  top: 3rem;
  right: -8%;
  width: 68%;
  opacity: .42;
  pointer-events: none;
}
.journey__header {
  position: relative;
  z-index: 1;
  max-width: 1450px;
  margin: 0 auto 6rem;
}
.journey h2 em {
  color: var(--magenta);
}
.timeline {
  position: relative;
  z-index: 1;
  max-width: 1450px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5,1fr);
}
.timeline::before {
  content: "";
  position: absolute;
  top: 73px;
  left: 1%;
  right: 1%;
  height: 2px;
  background: var(--ink);
}
.timeline__item {
  padding-right: clamp(1rem,2vw,2.4rem);
}
.timeline__item > span {
  color: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 2.1rem;
}
.timeline__dot {
  position: relative;
  width: 19px;
  height: 19px;
  margin: 1.1rem 0 2rem;
  border-radius: 50%;
  background: var(--gold);
  border: 4px solid var(--ink);
  box-shadow: 0 0 0 5px var(--cream);
}
.timeline__item h3 {
  margin: 0 0 .7rem;
  font-family: "Anton", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  text-transform: uppercase;
}
.timeline__item p {
  margin: 0;
  color: #6e5260;
  font-size: .9rem;
  line-height: 1.6;
}
.sergipe {
  min-height: 790px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  align-items: center;
  color: white;
  background: var(--pink) url('./textura-rosa.webp') center/cover;
}
.sergipe::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, var(--magenta-dark), rgba(128,17,62,.2));
  mix-blend-mode: multiply;
}
.sergipe__word {
  position: absolute;
  right: -3vw;
  bottom: -4vw;
  z-index: -1;
  color: rgba(255,255,255,.09);
  font-family: "Anton", sans-serif;
  font-size: 24vw;
  line-height: .8;
  transform: rotate(-5deg);
}
.sergipe__layout {
  width: 100%;
  max-width: 1450px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(390px, .72fr);
  gap: clamp(3rem, 6vw, 7rem);
  align-items: center;
}
.sergipe__content {
  max-width: 820px;
  position: relative;
  z-index: 1;
}
.sergipe__content > p {
  max-width: 650px;
  margin: 2rem 0;
  color: rgba(255,255,255,.84);
  font-size: 1.15rem;
  line-height: 1.75;
}
.sergipe__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
}
.sergipe__chips span {
  display: flex;
  align-items: center;
  gap: .5rem;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 999px;
  padding: .72rem 1rem;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.sergipe__photo {
  aspect-ratio: 1.42 / 1;
  border: 8px solid var(--gold);
  box-shadow: 20px 20px 0 var(--magenta-dark);
  transform: rotate(2deg);
}
.sergipe__photo figcaption {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .8rem 1rem;
  color: var(--ink);
  background: var(--gold);
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .055em;
}
.participate {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  min-height: 680px;
  background: var(--gold);
}
.participate__texture {
  position: absolute;
  inset: 0;
  opacity: .09;
  background: url('./textura-rosa.webp') center/cover;
  mix-blend-mode: multiply;
}
.participate__copy, .participate .campaign-mark {
  position: relative;
  z-index: 1;
}
.participate__copy > p {
  margin: 0 0 1rem;
  color: var(--magenta);
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.participate h2 em {
  color: var(--magenta);
}
.participate .button {
  margin-top: 2rem;
}
.campaign-mark {
  justify-self: center;
  width: min(100%, 590px);
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "name number" "tag number" "office office";
  align-items: end;
  color: var(--magenta-dark);
  transform: rotate(-3deg);
}
.campaign-mark__name {
  grid-area: name;
  font-family: "Lobster", cursive;
  font-size: clamp(3.5rem, 6vw, 7.2rem);
  line-height: .75;
  white-space: nowrap;
}
.campaign-mark__tag {
  grid-area: tag;
  width: fit-content;
  margin: .7rem 0 0 1rem;
  padding: .25rem .75rem;
  background: white;
  border-radius: 999px;
  color: var(--magenta);
  font-size: .73rem;
  font-weight: 900;
}
.campaign-mark__number {
  grid-area: number;
  font-family: "Anton", sans-serif;
  font-size: clamp(7.2rem, 13vw, 14rem);
  line-height: .7;
  letter-spacing: -.03em;
  text-shadow: 7px 7px 0 rgba(255,255,255,.72);
}
.campaign-mark__office {
  grid-area: office;
  justify-self: end;
  margin-top: 1.1rem;
  padding: .35rem 1rem;
  color: white;
  background: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 1.25rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.campaign-mark--compact {
  width: 270px;
  display: flex;
  align-items: baseline;
  gap: .5rem;
  transform: none;
  color: white;
}
.campaign-mark--compact .campaign-mark__name {
  font-size: 2rem;
}
.campaign-mark--compact .campaign-mark__number {
  color: var(--gold);
  font-size: 2.25rem;
}
.campaign-mark--compact .campaign-mark__office {
  display: none;
}
.site-footer {
  padding: 4rem max(5vw,1.5rem) 2rem;
  color: white;
  background: var(--ink);
}
.site-footer__top {
  max-width: 1450px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(255,255,255,.18);
}
.site-footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.site-footer__links a:hover {
  color: var(--gold);
}
.site-footer__bottom {
  max-width: 1450px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  padding-top: 2rem;
  color: rgba(255,255,255,.55);
  font-size: .73rem;
}
.reveal {
  opacity: 1;
  animation: rise-in .65s cubic-bezier(.2,.7,.2,1) backwards;
}
.reveal--1 {
  animation-delay: .15s;
}
.reveal--2 {
  animation-delay: .28s;
}
.reveal--3 {
  animation-delay: .43s;
}
.reveal--4 {
  animation-delay: .56s;
}
.reveal--portrait {
  animation-delay: .36s;
}
@keyframes rise-in {
  from {
    opacity: 0;
    transform: translateY(28px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 1100px) {
  .desktop-nav {
    display: none;
  }
  .site-header {
    grid-template-columns: 1fr auto auto;
  }
  .mobile-menu {
    display: block;
    order: 3;
    position: relative;
  }
  .mobile-menu summary {
    list-style: none;
    display: grid;
    align-content: center;
    gap: 6px;
    width: 44px;
    height: 44px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 50%;
  }
  .mobile-menu summary::-webkit-details-marker {
    display: none;
  }
  .mobile-menu summary span {
    display: block;
    width: 18px;
    height: 2px;
    margin: 0 auto;
    background: white;
  }
  .mobile-menu nav {
    position: absolute;
    right: 0;
    top: 54px;
    width: min(82vw, 330px);
    display: grid;
    padding: 1rem;
    color: var(--ink);
    background: white;
    box-shadow: 0 20px 60px rgba(40,10,25,.25);
    border-radius: 16px;
  }
  .mobile-menu nav a {
    padding: 1rem;
    border-bottom: 1px solid #f0dde4;
    font-weight: 700;
  }
  .hero {
    grid-template-columns: 1fr .8fr;
  }
  .hero__portrait {
    right: -7rem;
    width: 64vw;
  }
  .hero__seal {
    right: 1.5rem;
  }
  .manifesto__grid {
    grid-template-columns: 1fr;
  }
  .manifesto__body {
    margin-left: auto;
  }
  .commitments__header {
    grid-template-columns: 1fr;
  }
  .timeline {
    grid-template-columns: repeat(3,1fr);
    gap: 3rem 0;
  }
  .timeline::before {
    display: none;
  }
  .sergipe__layout {
    grid-template-columns: 1fr;
  }
  .sergipe__photo {
    width: min(780px, 88%);
    margin-left: auto;
  }
  .participate {
    grid-template-columns: 1fr;
  }
  .participate .campaign-mark {
    justify-self: start;
  }
}
@media (max-width: 760px) {
  .section {
    padding: 6rem 1.25rem;
  }
  .site-header {
    position: absolute;
    height: 76px;
    padding: 0 1rem;
    gap: .75rem;
  }
  .header-brand__name {
    font-size: 1.45rem;
  }
  .header-brand__number {
    font-size: 1rem;
    padding: .17rem .4rem;
  }
  .header-cta {
    display: none;
  }
  .hero {
    min-height: 900px;
    height: auto;
    display: block;
    padding: 7.5rem 1.25rem 25rem;
  }
  .hero::after {
    bottom: -135px;
  }
  .hero h1 {
    font-size: clamp(3.65rem, 16.8vw, 5.2rem);
    line-height: .93;
  }
  .hero h1 em {
    font-size: .7em;
  }
  .hero__lead {
    font-size: 1rem;
    line-height: 1.55;
    max-width: 94%;
  }
  .hero__actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 390px;
  }
  .hero__portrait {
    right: -2rem;
    bottom: 0;
    height: 43%;
    width: 92vw;
  }
  .hero__portrait-glow {
    width: 300px;
    height: 300px;
    right: 0;
    top: 8%;
  }
  .hero__seal {
    width: 105px;
    right: 1rem;
    bottom: 5.8rem;
    box-shadow: 0 8px 0 var(--magenta-dark);
  }
  .hero__seal strong {
    font-size: 1.9rem;
  }
  .hero__giant-number {
    top: auto;
    bottom: 16rem;
    right: -1rem;
    font-size: 45vw;
    -webkit-text-stroke-width: 2px;
  }
  .hero__scroll {
    display: none;
  }
  .ticker {
    margin-top: -24px;
  }
  .ticker__group {
    padding: .85rem .6rem;
    gap: 1.2rem;
  }
  .ticker span {
    font-size: 1.05rem;
  }
  .manifesto {
    padding-top: 8.5rem;
  }
  .manifesto__statement h2 {
    font-size: 27vw;
  }
  .manifesto__body {
    margin-top: 3rem;
  }
  .photo-story {
    margin-top: 5rem;
    grid-template-columns: 1fr;
    gap: 1.4rem;
  }
  .photo-story__main {
    aspect-ratio: 1 / .86;
    clip-path: none;
  }
  .photo-story__main img {
    object-position: 57% center;
  }
  .photo-story__main figcaption {
    display: grid;
    gap: .15rem;
    font-size: 1.85rem;
  }
  .photo-story__side {
    width: 77%;
    justify-self: end;
    transform: rotate(2deg);
    box-shadow: 10px 10px 0 var(--gold);
  }
  .manifesto__quote {
    margin-top: 5rem;
    grid-template-columns: 1fr;
    padding: 2rem;
    box-shadow: 8px 8px 0 var(--gold);
  }
  .manifesto__quote p {
    font-size: 2.2rem;
  }
  .commitments__header {
    margin-bottom: 2.5rem;
    gap: 1.5rem;
  }
  .commitments h2, .journey h2, .sergipe h2, .participate h2 {
    font-size: clamp(3.2rem,14vw,4.3rem);
  }
  .commitment {
    grid-template-columns: 38px 40px 1fr auto;
    gap: .8rem;
    padding: 1.7rem .25rem;
  }
  .commitment:hover {
    padding-left: .7rem;
    padding-right: .7rem;
  }
  .commitment h3 {
    font-size: 1.65rem;
  }
  .commitment p {
    grid-column: 3 / -1;
  }
  .commitment__icon {
    width: 28px;
    height: 28px;
  }
  .journey__brush {
    width: 150%;
    top: 4rem;
    right: -75%;
  }
  .journey__header {
    margin-bottom: 4rem;
  }
  .timeline {
    grid-template-columns: 1fr;
    gap: 0;
    padding-left: 1.8rem;
  }
  .timeline::before {
    display: block;
    top: .5rem;
    bottom: .5rem;
    left: 7px;
    right: auto;
    width: 2px;
    height: auto;
  }
  .timeline__item {
    position: relative;
    padding: 0 0 3rem 1.2rem;
  }
  .timeline__dot {
    position: absolute;
    left: -2.22rem;
    top: 1.6rem;
    margin: 0;
  }
  .sergipe {
    min-height: 880px;
  }
  .sergipe__word {
    font-size: 45vw;
    bottom: 3rem;
    right: -4rem;
  }
  .sergipe__layout {
    gap: 3.5rem;
  }
  .sergipe__photo {
    width: calc(100% - 10px);
    margin: 0;
    border-width: 6px;
    box-shadow: 10px 10px 0 var(--magenta-dark);
  }
  .sergipe__photo figcaption {
    font-size: .68rem;
  }
  .participate {
    min-height: 760px;
    gap: 5rem;
  }
  .campaign-mark {
    width: 100%;
    grid-template-columns: 1fr auto;
  }
  .campaign-mark__name {
    font-size: clamp(3rem,14vw,4.7rem);
  }
  .campaign-mark__number {
    font-size: clamp(5.5rem,24vw,8rem);
  }
  .site-footer__top, .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
  .site-footer__links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem 2rem;
  }
}
.internal-page {
  min-height: 100vh;
  background: var(--cream);
}
.inner-hero {
  position: relative;
  isolation: isolate;
  min-height: 610px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 10rem max(5vw, 1.5rem) 6rem;
  color: white;
  background: var(--pink) url('./textura-rosa.webp') center/cover;
}
.inner-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(105deg, rgba(128,17,62,.74), rgba(128,17,62,.08));
}
.inner-hero::after {
  content: "";
  position: absolute;
  left: -4%;
  right: -4%;
  bottom: -88px;
  z-index: -1;
  height: 130px;
  background: var(--gold);
  transform: rotate(-2deg);
}
.inner-hero__number {
  position: absolute;
  right: -1.5vw;
  bottom: -2.5rem;
  z-index: -1;
  font-family: "Anton", sans-serif;
  font-size: clamp(13rem, 29vw, 31rem);
  line-height: .72;
  letter-spacing: -.045em;
  color: rgba(246,211,107,.08);
  -webkit-text-stroke: 3px rgba(246,211,107,.48);
  transform: rotate(-3deg);
}
.inner-hero__content {
  width: min(930px, 78vw);
  max-width: 1450px;
  margin: 0 auto 0 max(calc((100vw - 1450px) / 2), 0px);
}
.inner-hero h1 {
  margin: 0;
  font-family: "Anton", Impact, sans-serif;
  font-size: clamp(4.2rem, 7.8vw, 8.7rem);
  font-weight: 400;
  line-height: .87;
  letter-spacing: -.02em;
  text-transform: uppercase;
  text-wrap: balance;
}
.inner-hero h1 em {
  color: var(--gold);
  font-family: "Lobster", cursive;
  font-size: .7em;
  font-weight: 400;
  text-transform: none;
  text-shadow: 0 8px 0 rgba(128,17,62,.28);
}
.inner-hero__content > p {
  max-width: 760px;
  margin: 2rem 0 0;
  color: rgba(255,255,255,.88);
  font-size: clamp(1rem,1.35vw,1.25rem);
  line-height: 1.65;
}
.content-section {
  padding: 8rem max(5vw,1.5rem);
}
.content-section > * {
  max-width: 1450px;
  margin-left: auto;
  margin-right: auto;
}
.section-heading {
  margin-bottom: 4rem;
}
.section-heading h2, .story-intro h2, .territory-story h2, .mandate-tools h2 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(3.5rem,6.2vw,7rem);
  font-weight: 400;
  line-height: .94;
  text-transform: uppercase;
}
.section-heading h2 em, .story-intro h2 em, .territory-story h2 em, .mandate-tools h2 em {
  color: var(--magenta);
  font-family: "Lobster", cursive;
  font-size: .78em;
  font-weight: 400;
  text-transform: none;
}
.section-heading--light h2 {
  color: white;
}
.section-heading--light h2 em {
  color: var(--gold);
}
.lead-copy {
  color: var(--ink);
  font-size: clamp(1.25rem,1.7vw,1.7rem);
  font-weight: 700;
  line-height: 1.45;
}
.story-intro, .territory-story {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(330px,.76fr) minmax(0,1fr);
  gap: clamp(3.5rem,8vw,9rem);
  align-items: center;
}
.story-intro__copy, .territory-story__copy {
  max-width: 680px;
}
.story-intro__copy > p, .territory-story__copy > p {
  color: #624b57;
  line-height: 1.8;
}
.page-photo {
  position: relative;
  overflow: hidden;
  margin: 0;
  background: var(--magenta-dark);
  box-shadow: 18px 18px 0 var(--gold);
}
.page-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.page-photo:hover img {
  transform: scale(1.025);
}
.page-photo--portrait {
  aspect-ratio: .8 / 1;
  max-width: 620px;
  transform: rotate(-1.7deg);
}
.page-photo--landscape {
  aspect-ratio: 1.35 / 1;
  transform: rotate(1.5deg);
}
.page-photo figcaption {
  position: absolute;
  inset: auto 0 0;
  padding: 3.5rem 1.5rem 1.4rem;
  color: white;
  background: linear-gradient(transparent, rgba(33,19,27,.9));
  font-family: "Anton", sans-serif;
  font-size: clamp(1.5rem,2.5vw,3rem);
  text-transform: uppercase;
}
.fact-strip {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: .8rem;
  margin-top: 2.5rem;
}
.fact-strip > div {
  min-width: 0;
  padding: 1.15rem;
  border-top: 2px solid var(--gold);
  background: white;
}
.fact-strip svg {
  width: 21px;
  color: var(--magenta);
}
.fact-strip strong, .fact-strip span {
  display: block;
}
.fact-strip strong {
  margin-top: .55rem;
  font-family: "Anton", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
}
.fact-strip span {
  margin-top: .25rem;
  color: #806571;
  font-size: .72rem;
  line-height: 1.35;
}
.bio-section {
  position: relative;
  background: white;
}
.bio-timeline {
  border-top: 2px solid var(--ink);
}
.bio-timeline__item {
  display: grid;
  grid-template-columns: 150px minmax(0,1fr);
  gap: 3rem;
  padding: 2.2rem 0;
  border-bottom: 1px solid var(--border);
}
.bio-timeline__item > span {
  color: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 2.25rem;
}
.bio-timeline__item h3 {
  margin: .25rem 0 .5rem;
  font-family: "Anton", sans-serif;
  font-size: 1.65rem;
  font-weight: 400;
  text-transform: uppercase;
}
.bio-timeline__item p {
  max-width: 770px;
  margin: 0;
  color: #6f5662;
  line-height: 1.7;
}
.preview-note {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 1.5rem;
  align-items: start;
  max-width: 1450px;
  margin-top: 0;
  margin-bottom: 3rem;
  padding: 1.25rem 1.4rem;
  color: #674d59;
  background: #fff1c9;
  border-left: 5px solid var(--gold);
}
.preview-note strong {
  color: var(--magenta-dark);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.preview-note p {
  margin: 0;
  font-size: .9rem;
  line-height: 1.6;
}
.commitment-details {
  background: var(--cream);
}
.commitment-detail-list {
  border-top: 2px solid var(--ink);
}
.commitment-detail {
  display: grid;
  grid-template-columns: 135px minmax(0,1fr) 250px;
  gap: clamp(2rem,5vw,6rem);
  align-items: start;
  padding: 3.3rem 0;
  border-bottom: 1px solid var(--border);
}
.commitment-detail__index {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--magenta);
}
.commitment-detail__index span {
  font-family: "Anton", sans-serif;
  font-size: 2.5rem;
}
.commitment-detail__index svg {
  width: 34px;
  height: 34px;
  stroke-width: 1.6;
}
.commitment-detail h2 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(2.4rem,4.1vw,4.8rem);
  font-weight: 400;
  line-height: .98;
  text-transform: uppercase;
}
.commitment-detail p {
  max-width: 750px;
  color: #6c5360;
  line-height: 1.7;
}
.commitment-detail .commitment-detail__lead {
  color: var(--ink);
  font-size: 1.22rem;
  font-weight: 700;
}
.commitment-detail > strong {
  padding-top: .7rem;
  color: var(--magenta);
  font-size: .75rem;
  line-height: 1.5;
  text-transform: uppercase;
  letter-spacing: .08em;
  border-top: 2px solid var(--gold);
}
.mandate-tools, .listening-method {
  color: white;
  background: var(--magenta-dark);
}
.tool-grid, .method-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1px;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.18);
}
.tool-grid article, .method-grid article {
  padding: 2rem;
  background: var(--magenta-dark);
}
.tool-grid svg, .method-grid svg {
  width: 38px;
  height: 38px;
  color: var(--gold);
  stroke-width: 1.5;
}
.tool-grid h3, .method-grid h3 {
  margin: 2rem 0 .7rem;
  font-family: "Anton", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
}
.tool-grid p, .method-grid p {
  margin: 0;
  color: rgba(255,255,255,.7);
  line-height: 1.65;
}
.territory-story {
  grid-template-columns: minmax(0,.75fr) minmax(420px,1fr);
}
.listening-method {
  position: relative;
  overflow: hidden;
}
.listening-method::before {
  content: "SERGIPE";
  position: absolute;
  right: -3rem;
  bottom: -4rem;
  color: rgba(255,255,255,.025);
  font-family: "Anton", sans-serif;
  font-size: 18vw;
  line-height: .8;
}
.method-grid {
  position: relative;
  grid-template-columns: repeat(3,1fr);
}
.method-grid article {
  position: relative;
  min-height: 320px;
}
.method-grid article > span {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  color: rgba(255,255,255,.18);
  font-family: "Anton", sans-serif;
  font-size: 3rem;
}
.agenda-section {
  background: white;
}
.agenda-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 2rem;
  margin-bottom: 2rem;
}
.agenda-toolbar span {
  color: var(--magenta);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.agenda-toolbar h2 {
  margin: .35rem 0 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(2.5rem,4vw,4.6rem);
  font-weight: 400;
  text-transform: uppercase;
}
.agenda-status {
  padding: .55rem .85rem;
  color: var(--magenta-dark);
  background: var(--gold);
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.agenda-card {
  position: relative;
  display: grid;
  grid-template-columns: 170px 1fr auto;
  gap: clamp(2rem,5vw,6rem);
  align-items: center;
  padding: clamp(2rem,4vw,4rem);
  color: white;
  background: var(--magenta-dark);
  overflow: hidden;
}
.agenda-card time {
  display: flex;
  align-items: center;
  gap: .8rem;
}
.agenda-card time strong {
  color: var(--gold);
  font-family: "Anton", sans-serif;
  font-size: 5.5rem;
  font-weight: 400;
  line-height: .8;
}
.agenda-card time span {
  font-size: .72rem;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: .09em;
}
.agenda-card__type {
  color: var(--gold);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.agenda-card h3 {
  margin: .65rem 0 1rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(2rem,4vw,4.4rem);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}
.agenda-card p {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: .45rem 0;
  color: rgba(255,255,255,.72);
}
.agenda-card p svg {
  width: 17px;
  color: var(--gold);
}
.agenda-card__icon {
  width: 100px;
  height: 100px;
  color: rgba(246,211,107,.22);
  stroke-width: 1;
}
.agenda-section > .preview-note {
  margin-top: 2rem;
}
.agenda-empty {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 2.5rem;
  align-items: center;
  margin-top: 5rem;
  padding-top: 3rem;
  border-top: 1px solid var(--border);
}
.agenda-empty > span {
  color: var(--pink);
  font-family: "Anton", sans-serif;
  font-size: 5rem;
  opacity: .25;
}
.agenda-empty h3 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
}
.agenda-empty p {
  color: #705764;
}
.news-section {
  background: var(--cream);
}
.news-paths {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1.4rem;
}
.news-paths > a {
  position: relative;
  min-height: 390px;
  padding: 2rem;
  background: white;
  border: 1px solid var(--border);
  transition: transform .25s ease, box-shadow .25s ease;
}
.news-paths > a:hover {
  transform: translateY(-7px);
  box-shadow: 10px 10px 0 var(--gold);
}
.news-paths > a > span {
  position: absolute;
  right: 1.5rem;
  top: 1rem;
  color: #f4dfe7;
  font-family: "Anton", sans-serif;
  font-size: 5rem;
}
.news-paths svg {
  position: relative;
  width: 40px;
  height: 40px;
  color: var(--magenta);
  stroke-width: 1.4;
}
.news-paths h3 {
  position: relative;
  margin: 5rem 0 1rem;
  font-family: "Anton", sans-serif;
  font-size: 2.5rem;
  font-weight: 400;
  text-transform: uppercase;
}
.news-paths p {
  min-height: 80px;
  color: #6d5360;
  line-height: 1.65;
}
.news-paths strong {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-top: 2rem;
  color: var(--magenta);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.news-paths strong svg {
  width: 16px;
  height: 16px;
}
.transparency-section {
  background: white;
}
.identity-card {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  color: white;
  background: var(--magenta-dark);
}
.identity-card > div {
  padding: 2rem;
  border-right: 1px solid rgba(255,255,255,.18);
}
.identity-card span, .identity-card strong {
  display: block;
}
.identity-card span {
  margin-bottom: .65rem;
  color: var(--gold);
  font-size: .7rem;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.identity-card strong {
  font-family: "Anton", sans-serif;
  font-size: 1.45rem;
  font-weight: 400;
  text-transform: uppercase;
}
.transparency-section > .preview-note {
  margin-top: 2rem;
}
.transparency-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin-top: 4rem;
  background: var(--border);
  border: 1px solid var(--border);
}
.transparency-grid article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.4rem;
  min-height: 230px;
  padding: 2rem;
  background: var(--cream);
}
.transparency-grid svg {
  color: var(--magenta);
}
.transparency-grid span {
  color: var(--magenta);
  font-size: .7rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.transparency-grid h2 {
  margin: .55rem 0 .7rem;
  font-family: "Anton", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
}
.transparency-grid p {
  margin: 0;
  color: #6e5561;
  line-height: 1.65;
}
.form-section {
  max-width: 1450px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(300px,.7fr) minmax(430px,1fr);
  gap: clamp(3rem,8vw,8rem);
  align-items: start;
}
.form-section__intro > span {
  color: var(--magenta);
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.form-section__intro h2 {
  margin: .8rem 0 1.2rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(3rem,5vw,5.5rem);
  font-weight: 400;
  line-height: .95;
  text-transform: uppercase;
}
.form-section__intro > p {
  color: #705764;
  line-height: 1.75;
}
.form-section__intro .preview-note {
  grid-template-columns: 1fr;
  gap: .5rem;
  margin-top: 2rem;
}
.participation-form {
  padding: clamp(1.5rem,3vw,3rem);
  background: white;
  box-shadow: 16px 16px 0 var(--gold);
  border: 1px solid var(--border);
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.form-field {
  display: grid;
  gap: .55rem;
  margin-bottom: 1.2rem;
}
.form-field label {
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.form-field input, .form-field textarea {
  min-height: 50px;
  border-radius: 0;
  background: var(--cream);
}
.consent-row {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .75rem;
  align-items: start;
  margin-top: 1rem;
}
.consent-row label {
  color: #6d5360;
  font-size: .78rem;
  line-height: 1.55;
}
.form-preview-warning {
  margin: 1.5rem 0;
  padding: .7rem .9rem;
  color: var(--magenta-dark);
  background: #fff1c9;
  font-size: .75rem;
  font-weight: 700;
}
.form-submit {
  width: 100%;
  border-radius: 999px;
  background: var(--magenta-dark);
  color: white;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.form-success {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.2rem;
  padding: 3rem;
  color: white;
  background: var(--magenta-dark);
  box-shadow: 16px 16px 0 var(--gold);
}
.form-success svg {
  width: 42px;
  height: 42px;
  color: var(--gold);
}
.form-success h2 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: 2.5rem;
  font-weight: 400;
  text-transform: uppercase;
}
.form-success p {
  color: rgba(255,255,255,.72);
  line-height: 1.65;
}
.internal-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3rem;
  padding: 5rem max(5vw,1.5rem);
  background: var(--gold);
}
.internal-cta > div {
  max-width: 900px;
}
.internal-cta span {
  color: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 1.4rem;
}
.internal-cta h2 {
  margin: .3rem 0 .7rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(2.6rem,4.7vw,5.4rem);
  font-weight: 400;
  line-height: .95;
  text-transform: uppercase;
}
.internal-cta p {
  margin: 0;
  color: #60464f;
}
.internal-cta .button {
  flex: none;
}
@media (max-width: 1100px) {
  .inner-hero {
    min-height: 560px;
  }
  .story-intro, .territory-story {
    grid-template-columns: 1fr 1fr;
    gap: 3.5rem;
  }
  .fact-strip {
    grid-template-columns: 1fr;
  }
  .commitment-detail {
    grid-template-columns: 110px 1fr;
  }
  .commitment-detail > strong {
    grid-column: 2;
  }
  .tool-grid {
    grid-template-columns: 1fr 1fr;
  }
  .identity-card {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 760px) {
  .inner-hero {
    min-height: 520px;
    padding: 8rem 1.25rem 4rem;
  }
  .inner-hero__content {
    width: 100%;
    margin: 0;
  }
  .inner-hero h1 {
    font-size: clamp(3.45rem,16vw,5rem);
  }
  .inner-hero__number {
    right: -3rem;
    bottom: -1rem;
    font-size: 48vw;
    -webkit-text-stroke-width: 2px;
  }
  .content-section {
    padding: 5.5rem 1.25rem;
  }
  .section-heading h2, .story-intro h2, .territory-story h2, .mandate-tools h2 {
    font-size: clamp(3rem,14vw,4.4rem);
  }
  .story-intro, .territory-story {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .territory-story__copy {
    order: 2;
  }
  .page-photo {
    box-shadow: 10px 10px 0 var(--gold);
  }
  .page-photo--portrait {
    width: 90%;
  }
  .fact-strip {
    grid-template-columns: repeat(3,1fr);
    gap: .4rem;
  }
  .fact-strip > div {
    padding: .8rem .6rem;
  }
  .fact-strip span {
    font-size: .62rem;
  }
  .bio-timeline__item {
    grid-template-columns: 86px 1fr;
    gap: 1rem;
  }
  .bio-timeline__item > span {
    font-size: 1.65rem;
  }
  .preview-note {
    grid-template-columns: 1fr;
    gap: .5rem;
  }
  .commitment-detail {
    grid-template-columns: 1fr;
    gap: 1.3rem;
    padding: 2.5rem 0;
  }
  .commitment-detail__index {
    justify-content: flex-start;
    gap: 1.5rem;
  }
  .commitment-detail > strong {
    grid-column: 1;
  }
  .tool-grid, .method-grid, .news-paths, .transparency-grid {
    grid-template-columns: 1fr;
  }
  .method-grid article {
    min-height: 250px;
  }
  .agenda-toolbar {
    align-items: start;
    flex-direction: column;
  }
  .agenda-card {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }
  .agenda-card__icon {
    display: none;
  }
  .agenda-empty {
    grid-template-columns: 1fr;
    gap: .5rem;
  }
  .news-paths > a {
    min-height: 340px;
  }
  .identity-card {
    grid-template-columns: 1fr;
  }
  .identity-card > div {
    border-bottom: 1px solid rgba(255,255,255,.18);
  }
  .form-section {
    grid-template-columns: 1fr;
    padding: 5.5rem 1.25rem;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .participation-form {
    padding: 1.25rem;
    box-shadow: 9px 9px 0 var(--gold);
  }
  .internal-cta {
    align-items: flex-start;
    flex-direction: column;
    padding: 4rem 1.25rem;
  }
}
::selection {
  color: var(--ink);
  background: var(--gold);
}
main:focus {
  outline: none;
}
main {
  overflow-x: clip;
}
img {
  max-width: 100%;
}
p {
  text-wrap: pretty;
}
svg {
  flex-shrink: 0;
}
.section, .content-section {
  padding: clamp(4.5rem, 7vw, 7rem) var(--page-gutter);
}
.section-kicker {
  font-size: .875rem;
  letter-spacing: .09em;
  gap: .75rem;
  line-height: 1.45;
}
.section-kicker span {
  flex: 0 0 35px;
}
.content-section > *, .manifesto__grid, .photo-story, .commitments__header, .commitment-list, .journey__header, .timeline, .sergipe__layout, .site-footer__top, .site-footer__bottom {
  max-width: 1280px;
}
.skip-link {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 100;
  padding: 1rem 1.5rem;
  transform: translateY(-200%);
  color: var(--ink);
  background: var(--gold);
  font-weight: 700;
}
.skip-link:focus {
  transform: none;
}
.site-header {
  position: fixed;
  height: 84px;
  grid-template-columns: auto 1fr auto;
  padding-inline: var(--page-gutter);
  gap: 2rem;
  background: rgba(87, 12, 43, .9);
  backdrop-filter: blur(18px);
  border-bottom-color: rgba(255,255,255,.14);
}
.desktop-nav {
  justify-content: center;
  gap: clamp(1rem,1.7vw,2rem);
  font-size: .875rem;
  letter-spacing: .025em;
}
.desktop-nav a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.desktop-nav a[aria-current="page"] {
  color: var(--gold);
}
.desktop-nav a[aria-current="page"]::after {
  width: 100%;
}
.site-header a:focus-visible, .campaign-menu a:focus-visible, .campaign-menu button:focus-visible, .site-header button:focus-visible, .site-footer a:focus-visible, .commitment:focus-visible, .hero a:focus-visible {
  outline-color: var(--gold);
}
.header-cta {
  font-size: .875rem;
  white-space: nowrap;
}
.mobile-navigation {
  display: none;
}
.menu-trigger, .menu-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  min-height: 44px;
  min-width: 44px;
  cursor: pointer;
}
.menu-trigger {
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 999px;
  padding: .55rem .8rem;
  font-size: .875rem;
}
.campaign-menu {
  z-index: 70;
  width: min(90vw,430px);
  max-width: 430px;
  padding: 1.5rem;
  overflow-y: auto;
  color: white;
  background: var(--magenta-dark);
  border: 0;
}
.campaign-menu__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.campaign-menu [data-slot="sheet-title"] {
  color: var(--gold);
  font-size: .875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.campaign-menu nav {
  display: grid;
  margin-top: 1rem;
}
.campaign-menu nav a {
  display: grid;
  grid-template-columns: 24px 1fr auto;
  align-items: center;
  gap: .6rem;
  min-height: 59px;
  border-bottom: 1px solid rgba(255,255,255,.18);
  font-size: 1.25rem;
}
.campaign-menu nav a span {
  color: var(--gold);
  font-size: .75rem;
}
.campaign-menu nav a[aria-current="page"] {
  color: var(--gold);
}
.campaign-menu__signature {
  margin-top: auto;
  padding-top: 2rem;
  font-family: "Lobster", cursive;
  font-size: 1.7rem;
}
.campaign-menu__signature strong {
  margin-left: .5rem;
  color: var(--gold);
  font-family: "Anton", sans-serif;
  font-weight: 400;
}
.campaign-menu__signature > span {
  display: block;
  margin-top: .5rem;
  font-family: "DM Sans", sans-serif;
  font-size: .875rem;
}
.hero {
  min-height: 780px;
  height: auto;
  grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);
  padding: 10rem var(--page-gutter) 7rem;
}
.hero__copy {
  width: 100%;
  max-width: 700px;
  padding: 0;
}
.hero h1 {
  font-size: clamp(4rem,6.5vw,7rem);
  line-height: 1.18;
  letter-spacing: -.025em;
  text-wrap: initial;
}
.hero h1 em {
  margin-top: .1em;
  line-height: 1.2;
  font-size: .72em;
  text-shadow: 0 4px 0 rgba(128,17,62,.2);
}
.hero__lead {
  max-width: 530px;
  margin-top: 1.4rem;
}
.hero__eyebrow {
  font-size: .875rem;
  margin-bottom: 1rem;
  letter-spacing: .12em;
}
.hero__portrait {
  right: var(--page-gutter);
  width: 46%;
  height: 88%;
  bottom: 0;
}
.hero__portrait img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
  filter: drop-shadow(-12px 12px 18px rgba(80,12,42,.14));
}
.hero__portrait-glow {
  width: 83%;
  height: auto;
  aspect-ratio: 1;
  top: 24%;
  right: 0;
  box-shadow: 0 0 0 24px rgba(255,255,255,.07);
}
.hero__giant-number {
  top: 15%;
  right: 3%;
  font-size: min(25vw,350px);
  -webkit-text-stroke: 1px rgba(246,211,107,.5);
  filter: none;
}
.hero__seal {
  right: 0;
  bottom: 5rem;
  width: clamp(118px,11vw,150px);
  box-shadow: 0 7px 0 var(--magenta-dark);
  transform: rotate(4deg);
}
.hero__seal span {
  font-size: .75rem;
  letter-spacing: 0;
}
.hero__seal strong {
  font-size: 3.5rem;
}
.hero__scroll {
  left: var(--page-gutter);
  font-size: .75rem;
}
.hero::after {
  display: none;
}
.hero__scroll {
  color: white;
  bottom: 2.5rem;
}
.button {
  min-height: 52px;
  font-size: .875rem;
  letter-spacing: .015em;
  line-height: 1.4;
  white-space: normal;
}
.button:hover {
  transform: translateY(-2px);
}
.ticker {
  transform: rotate(-1.4deg) scale(1.03);
  box-shadow: 0 5px 0 var(--magenta-dark);
}
.ticker:hover .ticker__track {
  animation-play-state: paused;
}
.manifesto {
  padding-top: 8rem;
}
.manifesto__grid {
  grid-template-columns: minmax(0,1fr) minmax(0,.85fr);
  gap: 5rem;
}
.manifesto__statement p {
  font-size: clamp(2rem,3.7vw,4rem);
  line-height: 1.12;
}
.manifesto__statement h2 {
  font-size: clamp(5rem,8.5vw,9rem);
  line-height: 1.1;
}
.text-link {
  font-size: .875rem;
  min-height: 44px;
  line-height: 1.4;
  letter-spacing: .035em;
}
.photo-story {
  gap: 2rem;
  margin-top: 4.5rem;
  grid-template-columns: minmax(0,1.55fr) minmax(0,.65fr);
}
.photo-story__main {
  clip-path: none;
  border-radius: 4px;
  aspect-ratio: 1.6;
}
.photo-story__side {
  width: 100%;
  transform: rotate(1.5deg) translateY(1.5rem);
  box-shadow: 8px 8px 0 var(--gold);
  border-radius: 4px;
}
.photo-placeholder-label {
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
  line-height: 1.4;
  top: .75rem;
  left: .75rem;
  background: rgba(33,19,27,.85);
}
.photo-story__main figcaption {
  flex-wrap: wrap;
  font-size: clamp(1.75rem,2.8vw,3rem);
  line-height: 1.15;
}
.photo-story__side figcaption {
  font-size: 1rem;
}
.manifesto__quote {
  margin-top: 5.5rem;
  padding: 2.5rem;
  box-shadow: 8px 8px 0 var(--gold);
  transform: none;
}
.manifesto__quote p {
  font-size: clamp(1.85rem,3.6vw,3.8rem);
  line-height: 1.15;
}
.commitments h2, .journey h2, .sergipe h2, .participate h2 {
  font-size: clamp(3rem,5.4vw,5.7rem);
  line-height: 1.12;
}
.commitments h2 em, .journey h2 em, .sergipe h2 em, .participate h2 em {
  display: inline-block;
  line-height: 1.25;
}
.commitments__header {
  grid-template-columns: minmax(0,1fr) minmax(0,.58fr);
  gap: 3rem;
}
.commitment {
  grid-template-columns: 36px 36px minmax(0,.85fr) minmax(0,1fr) 24px;
  gap: 1.5rem;
  padding: 2rem 0;
}
.commitment:hover, .commitment:focus-visible {
  background: rgba(255,255,255,.065);
  padding-inline: 0;
}
.commitment h3 {
  font-size: clamp(1.6rem,2.1vw,2.35rem);
  line-height: 1.18;
}
.commitment p {
  color: rgba(255,255,255,.86);
  font-size: 1rem;
}
.commitment__arrow {
  transition: transform .2s ease;
}
.commitment:hover .commitment__arrow {
  transform: translateX(4px);
}
.journey__header {
  margin-bottom: 4rem;
}
.timeline__item h3 {
  line-height: 1.2;
}
.timeline__item p {
  font-size: 1rem;
}
.sergipe__layout {
  grid-template-columns: minmax(0,1fr) minmax(0,.9fr);
  gap: 4rem;
}
.sergipe__photo {
  width: 100%;
  box-shadow: 10px 10px 0 var(--magenta-dark);
  transform: rotate(1deg);
}
.sergipe__photo figcaption {
  font-size: .875rem;
  line-height: 1.4;
}
.sergipe__chips span {
  font-size: .875rem;
}
.participate {
  min-height: auto;
  gap: 3rem;
}
.campaign-mark {
  width: min(100%,460px);
  grid-template-columns: 1fr auto;
  grid-template-areas: "name name" "tag tag" "number office";
  gap: .7rem 1rem;
  transform: rotate(-2deg);
}
.campaign-mark__name {
  font-size: clamp(2.6rem,4.7vw,4.6rem);
  line-height: 1.15;
  white-space: normal;
}
.campaign-mark__tag {
  margin: 0;
  font-size: .875rem;
}
.campaign-mark__number {
  margin-top: .7rem;
  font-size: clamp(6rem,10vw,9rem);
  line-height: 1;
  text-shadow: 4px 4px 0 rgba(255,255,255,.7);
}
.campaign-mark__office {
  align-self: center;
  margin-top: 1rem;
  max-width: 150px;
  font-size: 1.15rem;
  line-height: 1.35;
}
.campaign-mark--compact {
  display: flex;
  width: auto;
  gap: .9rem;
  transform: none;
}
.campaign-mark--compact .campaign-mark__name {
  font-size: 1.8rem;
  white-space: nowrap;
}
.campaign-mark--compact .campaign-mark__number {
  font-size: 2rem;
  margin: 0;
  text-shadow: none;
}
.site-footer {
  padding-inline: var(--page-gutter);
}
.site-footer__top {
  align-items: flex-start;
}
.site-footer__links {
  gap: .5rem 1.5rem;
  max-width: 640px;
  font-size: .875rem;
  letter-spacing: .03em;
}
.site-footer__links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.site-footer__bottom {
  align-items: center;
  flex-wrap: wrap;
  font-size: .8125rem;
  color: rgba(255,255,255,.72);
  gap: .75rem 2rem;
}
.site-footer__bottom p {
  margin: 0;
}
.back-to-top {
  display: flex;
  gap: .5rem;
  align-items: center;
  min-height: 44px;
  color: var(--gold);
}
.inner-hero {
  min-height: 0;
  padding: 8rem var(--page-gutter) 5.5rem;
}
.inner-hero__content {
  width: 100%;
  max-width: 1050px;
  margin: 0;
}
.inner-hero__number {
  font-size: clamp(10rem,25vw,25rem);
  bottom: 1.25rem;
  opacity: .45;
}
.inner-hero h1 {
  font-size: clamp(3rem,5.5vw,6rem);
  line-height: 1.22;
  text-wrap: initial;
}
.inner-hero h1 em {
  display: block;
  margin-top: .05em;
  line-height: 1.25;
  font-size: .8em;
  text-shadow: 0 3px 0 rgba(128,17,62,.2);
}
.inner-hero__content > p {
  max-width: 760px;
  font-size: 1.125rem;
  margin-top: 1.5rem;
}
.inner-hero .section-kicker {
  margin-bottom: 1.2rem;
}
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin-bottom: 2rem;
  color: rgba(255,255,255,.85);
  font-size: .875rem;
}
.breadcrumbs a {
  text-decoration: underline;
  text-underline-offset: 4px;
  min-height: 36px;
  display: flex;
  align-items: center;
}
.section-heading h2, .story-intro h2, .territory-story h2, .mandate-tools h2 {
  font-size: clamp(2.75rem,4.6vw,5rem);
  line-height: 1.15;
}
.section-heading h2 em, .story-intro h2 em, .territory-story h2 em, .mandate-tools h2 em {
  line-height: 1.25;
}
.story-intro {
  grid-template-columns: minmax(0,.8fr) minmax(0,1fr);
  gap: 5rem;
}
.story-intro > *, .territory-story > * {
  width: 100%;
  min-width: 0;
}
.story-intro__copy > p, .territory-story__copy > p, .manifesto__body > p + p {
  margin-top: 1.25rem;
}
.page-photo {
  box-shadow: 8px 8px 0 var(--gold);
  border-radius: 4px;
}
.page-photo--official {
  aspect-ratio: .83;
  background: var(--pink) url('./textura-rosa.webp') center/cover;
  transform: rotate(-1deg);
}
.page-photo--official img {
  object-fit: contain;
  object-position: bottom;
}
.page-photo--official figcaption {
  font-family: "Lobster", cursive;
  text-transform: none;
  font-size: 2rem;
}
.page-photo--official figcaption span {
  display: block;
  font-family: "DM Sans", sans-serif;
  font-size: .8125rem;
  margin-top: .5rem;
}
.fact-strip {
  gap: .7rem;
}
.fact-strip span {
  font-size: .8125rem;
}
.bio-timeline__item h3 {
  line-height: 1.3;
}
.preview-note {
  grid-template-columns: 140px 1fr;
  margin-bottom: 2rem;
  background: #fcf0d2;
}
.preview-note strong {
  font-size: .8125rem;
}
.preview-note p {
  font-size: 1rem;
}
.commitment-index {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-bottom: 2rem;
}
.commitment-index a {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  padding: .65rem .9rem;
  border: 1px solid var(--border);
  background: white;
  border-radius: 999px;
  font-size: .875rem;
  min-height: 44px;
}
.commitment-index a span {
  color: var(--magenta);
  font-family: "Anton", sans-serif;
}
.commitment-index a:hover {
  border-color: var(--magenta);
}
.commitment-detail {
  grid-template-columns: 105px minmax(0,1fr) 190px;
  gap: 3rem;
  scroll-margin-top: 110px;
}
.commitment-detail h2 {
  font-size: clamp(2rem,3.5vw,3.7rem);
  line-height: 1.15;
}
.commitment-detail > strong {
  font-size: .875rem;
}
.tool-grid h3, .method-grid h3, .transparency-grid h2 {
  line-height: 1.2;
}
.territory-story {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 4rem;
}
.territory-story .page-photo img {
  position: absolute;
  inset: 0;
}
.agenda-toolbar span, .agenda-status, .agenda-card__type {
  font-size: .875rem;
}
.agenda-card {
  grid-template-columns: 180px minmax(0,1fr);
  gap: 3rem;
  border-radius: 4px;
}
.agenda-card__icon {
  display: none;
}
.agenda-card h3 {
  font-size: clamp(2rem,3.5vw,3.8rem);
  line-height: 1.2;
}
.agenda-card time span {
  font-size: .875rem;
}
.agenda-card p {
  align-items: flex-start;
  line-height: 1.6;
}
.agenda-card p svg {
  margin-top: .3rem;
}
.agenda-empty {
  margin-top: 3rem;
}
.news-paths > a {
  display: flex;
  flex-direction: column;
  min-height: 340px;
  border-radius: 4px;
}
.news-paths h3 {
  margin-top: 3rem;
  font-size: 2rem;
  line-height: 1.25;
}
.news-paths p {
  min-height: 0;
  margin-bottom: 2rem;
}
.news-paths strong {
  margin-top: auto;
  font-size: .875rem;
}
.news-paths > a:hover {
  transform: translateY(-3px);
  box-shadow: 6px 6px 0 var(--gold);
}
.identity-card span, .transparency-grid span {
  font-size: .8125rem;
}
.identity-card strong {
  line-height: 1.3;
}
#privacidade {
  scroll-margin-top: 110px;
}
.form-section {
  max-width: none;
  padding-inline: var(--page-gutter);
  grid-template-columns: minmax(0,.85fr) minmax(0,1fr);
  gap: 4rem;
}
.form-section__intro h2 {
  font-size: clamp(2.5rem,4.5vw,4.7rem);
  line-height: 1.15;
}
.form-section__intro > span, .form-field label {
  font-size: .875rem;
}
.participation-form {
  box-shadow: 8px 8px 0 var(--gold);
  border-radius: 4px;
}
.form-field input, .form-field textarea {
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 6px;
}
.form-field textarea {
  resize: vertical;
}
.form-grid > *, .form-field {
  min-width: 0;
}
.consent-row label {
  font-size: .875rem;
}
.consent-row {
  padding-block: .4rem;
}
.consent-row [role="checkbox"] {
  width: 22px;
  height: 22px;
}
.form-preview-warning {
  font-size: .875rem;
  line-height: 1.5;
  margin-top: 0;
}
.form-required-note, .optional-label {
  font-size: .8125rem;
  color: #705764;
  font-weight: 400;
  text-transform: none;
}
.form-required-note {
  margin: 0 0 1.5rem;
}
.form-privacy-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  font-size: .875rem;
  color: var(--magenta-dark);
  text-decoration: underline;
  margin-bottom: 1rem;
}
.form-submit {
  min-height: 52px;
  font-size: .875rem;
}
.form-success {
  padding: 2rem;
}
.form-success h2 {
  font-size: 2.25rem;
  line-height: 1.2;
}
.internal-cta {
  padding: 4.5rem var(--page-gutter);
}
.internal-cta h2 {
  font-size: clamp(2.5rem,4vw,4.5rem);
  line-height: 1.15;
}
.internal-cta p {
  line-height: 1.7;
}
.not-found-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
  padding: 4rem var(--page-gutter);
}
@media (max-width: 1200px) {
  .desktop-nav {
    display: none;
  }
  .site-header {
    grid-template-columns: 1fr auto auto;
    gap: 1rem;
  }
  .mobile-navigation {
    display: block;
  }
  .manifesto__grid {
    gap: 3rem;
  }
  .story-intro {
    gap: 3rem;
  }
  .commitment-detail {
    grid-template-columns: 90px minmax(0,1fr);
  }
  .commitment-detail > strong {
    grid-column: 2;
  }
}
@media (max-width: 900px) {
  .hero {
    min-height: 0;
    grid-template-columns: 1fr;
    padding-top: 8rem;
    padding-bottom: 0;
  }
  .hero__copy {
    max-width: 660px;
  }
  .hero h1 {
    font-size: clamp(3rem,9.5vw,5rem);
  }
  .hero__portrait {
    position: relative;
    right: auto;
    bottom: auto;
    height: auto;
    aspect-ratio: 1.3;
    width: min(100%,580px);
    margin: 1rem auto 0;
  }
  .hero__portrait img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .hero__portrait-glow {
    top: 16%;
    right: 12%;
    width: 65%;
  }
  .hero__seal {
    right: 5%;
    bottom: 2rem;
    width: 116px;
  }
  .hero__seal strong {
    font-size: 2.8rem;
  }
  .hero__giant-number {
    top: auto;
    bottom: 12rem;
    font-size: 42vw;
  }
  .hero__scroll {
    display: none;
  }
  .hero::after {
    display: none;
  }
  .ticker {
    margin-top: -8px;
  }
  .manifesto__grid, .sergipe__layout, .story-intro, .territory-story, .form-section {
    grid-template-columns: minmax(0,1fr);
    gap: 3rem;
  }
  .manifesto__body {
    margin: 0;
    max-width: 100%;
  }
  .story-intro .page-photo {
    max-width: 540px;
  }
  .fact-strip {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
  .commitments__header {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .participate {
    grid-template-columns: 1fr;
  }
  .participate .campaign-mark {
    justify-self: start;
  }
  .campaign-mark__name {
    font-size: 3.5rem;
  }
  .campaign-mark__number {
    font-size: 8rem;
  }
  .internal-cta {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
  }
  .site-footer__top {
    flex-direction: column;
  }
  .news-paths {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .site-header {
    height: 72px;
    padding-inline: 1.25rem;
    grid-template-columns: 1fr auto;
  }
  .header-cta {
    display: none;
  }
  .header-brand__name {
    font-size: 1.7rem;
  }
  .header-brand__number {
    font-size: 1.2rem;
  }
  .hero {
    padding-top: 6.25rem;
    padding-inline: 1.25rem;
  }
  .hero__eyebrow {
    flex-wrap: wrap;
    gap: .65rem;
    font-size: .8125rem;
  }
  .hero__eyebrow i {
    width: 28px;
  }
  .hero h1 {
    font-size: clamp(2.55rem,10.9vw,4.1rem);
  }
  .hero__lead,
  .hero__actions {
    display: none;
  }
  .hero__portrait {
    width: calc(100% + 2.5rem);
    max-width: none;
    aspect-ratio: .88;
    margin: -.15rem -1.25rem 0;
  }
  .hero__portrait img {
    width: 100%;
    height: 100%;
    object-position: center bottom;
  }
  .hero__portrait-glow {
    top: 14%;
    right: 8%;
    width: 72%;
  }
  .hero__giant-number {
    bottom: 8rem;
    right: -8%;
    font-size: 50vw;
  }
  .hero__seal {
    right: 1rem;
    bottom: 2.2rem;
    width: 108px;
  }
  .hero__seal span {
    font-size: .75rem;
    max-width: 72px;
    text-align: center;
    line-height: 1.2;
  }
  .hero__seal strong {
    font-size: 2.5rem;
  }
  .section-kicker {
    margin-bottom: 1.5rem;
  }
  .manifesto {
    padding-top: 5rem;
  }
  .manifesto__statement h2 {
    font-size: clamp(4rem,18vw,6.5rem);
  }
  .photo-story {
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 3rem;
  }
  .photo-story__main {
    aspect-ratio: 1.1;
  }
  .photo-story__side {
    width: 84%;
    transform: rotate(1deg);
  }
  .photo-story__main figcaption {
    display: block;
  }
  .photo-story__main figcaption strong {
    display: block;
    margin-top: .25rem;
  }
  .manifesto__quote {
    padding: 1.5rem;
    margin-top: 3.5rem;
  }
  .manifesto__quote p {
    font-size: 1.8rem;
  }
  .commitments h2, .journey h2, .sergipe h2, .participate h2 {
    font-size: clamp(2.4rem,10.5vw,3.8rem);
  }
  .commitment {
    grid-template-columns: 26px 28px minmax(0,1fr) 20px;
    gap: .75rem;
  }
  .commitment h3 {
    font-size: 1.5rem;
  }
  .commitment p {
    grid-column: 3;
    grid-row: 2;
  }
  .commitment__arrow {
    grid-column: 4;
    grid-row: 1;
    width: 20px;
  }
  .timeline {
    grid-template-columns: 1fr;
  }
  .timeline__item h3 {
    font-size: 1.5rem;
  }
  .sergipe__photo {
    margin: 0;
    width: calc(100% - 4px);
  }
  .sergipe__photo figcaption {
    font-size: .8125rem;
    padding: .6rem;
  }
  .campaign-mark {
    transform: none;
    width: 100%;
    gap: .4rem;
  }
  .campaign-mark__name {
    font-size: clamp(2.1rem,10vw,3.5rem);
  }
  .campaign-mark__number {
    font-size: clamp(5rem,24vw,8rem);
  }
  .campaign-mark__office {
    max-width: 120px;
    font-size: 1rem;
    padding: .4rem .5rem;
  }
  .campaign-mark--compact .campaign-mark__name {
    font-size: 1.5rem;
  }
  .site-footer__links {
    grid-template-columns: 1fr 1fr;
    gap: .25rem 1rem;
    font-size: .8125rem;
  }
  .site-footer__bottom {
    align-items: flex-start;
  }
  .inner-hero {
    padding-top: 6.5rem;
    padding-bottom: 4rem;
  }
  .inner-hero h1 {
    font-size: clamp(2.35rem,9.7vw,3.8rem);
  }
  .inner-hero__content > p {
    font-size: 1rem;
  }
  .breadcrumbs {
    margin-bottom: 1.25rem;
  }
  .section-heading h2, .story-intro h2, .territory-story h2, .mandate-tools h2 {
    font-size: clamp(2.35rem,9.7vw,3.8rem);
  }
  .territory-story__copy {
    order: 0;
  }
  .territory-story .page-photo {
    aspect-ratio: auto;
  }
  .territory-story .photo-placeholder-label {
    position: static;
    display: block;
    max-width: none;
  }
  .territory-story .page-photo img {
    position: static;
    height: auto;
    aspect-ratio: 1.3;
    object-fit: cover;
  }
  .territory-story .page-photo figcaption {
    position: static;
    padding: 1rem;
    background: var(--ink);
    font-size: 1.4rem;
    line-height: 1.3;
  }
  .page-photo--portrait {
    width: calc(100% - 8px);
  }
  .preview-note {
    grid-template-columns: 1fr;
    gap: .5rem;
    padding: 1rem;
  }
  .commitment-detail {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .commitment-detail > strong {
    grid-column: 1;
  }
  .tool-grid, .method-grid, .transparency-grid, .identity-card {
    grid-template-columns: minmax(0,1fr);
  }
  .tool-grid article, .method-grid article {
    padding: 1.5rem;
  }
  .tool-grid h3, .method-grid h3 {
    margin-top: 1.5rem;
  }
  .agenda-card {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 1.5rem;
  }
  .agenda-card h3 {
    font-size: 2rem;
  }
  .agenda-empty {
    grid-template-columns: 1fr;
  }
  .transparency-grid article {
    padding: 1.5rem;
    gap: 1rem;
  }
  .transparency-grid h2 {
    font-size: 1.75rem;
  }
  .form-section {
    gap: 2rem;
  }
  .form-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .form-success {
    grid-template-columns: 1fr;
  }
}
@media (hover: none) {
  .photo-story figure:hover img, .sergipe__photo:hover img, .page-photo:hover img, .button:hover, .news-paths > a:hover {
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
.home-news {
  color: var(--ink);
  background: var(--cream);
}
.home-news__header {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(280px,.65fr);
  gap: 4rem;
  align-items: end;
  max-width: 1450px;
  margin: 0 auto 2rem;
}
.home-news__header h2 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(3.2rem,5.5vw,6.2rem);
  font-weight: 400;
  line-height: 1.05;
  text-transform: uppercase;
}
.home-news__header h2 em {
  color: var(--magenta);
  font-family: "Lobster", cursive;
  font-weight: 400;
  text-transform: none;
}
.home-news__header > div:last-child {
  padding-bottom: .5rem;
}
.home-news__header > div:last-child p {
  max-width: 520px;
  margin: 0;
  color: #6d5360;
  font-size: 1.05rem;
  line-height: 1.7;
}
.news-demo-note {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  max-width: 1450px;
  margin: 0 auto 2rem;
  padding: .85rem 1rem;
  color: var(--magenta-dark);
  background: #fff0bd;
  border-left: 4px solid var(--gold);
  font-size: .875rem;
  line-height: 1.5;
}
.news-demo-note strong {
  flex: none;
  text-transform: uppercase;
  letter-spacing: .055em;
}
.home-news__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1.5rem;
  max-width: 1450px;
  margin: 0 auto;
}
.news-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  background: white;
  border: 1px solid var(--border);
  transition: transform .25s ease, box-shadow .25s ease;
}
.news-card:hover {
  transform: translateY(-4px);
  box-shadow: 8px 8px 0 var(--gold);
}
.news-card--featured {
  grid-column: span 2;
}
.news-card__image {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 1.55;
  background: var(--magenta-dark);
}
.news-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.news-card__image img[src$="tathiane-oficial.webp"] {
  object-position: center 22%;
}
.news-card:hover .news-card__image img {
  transform: scale(1.025);
}
.news-card__image > span {
  position: absolute;
  left: .75rem;
  top: .75rem;
  padding: .4rem .55rem;
  color: white;
  background: rgba(33,19,27,.82);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.news-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.5rem;
}
.news-card__meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: #775b68;
  font-size: .75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.news-card__meta > span {
  color: var(--magenta);
}
.news-card h3 {
  margin: 1rem 0 .8rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(1.55rem,2vw,2.15rem);
  font-weight: 400;
  line-height: 1.2;
  text-transform: uppercase;
}
.news-card--featured h3 {
  max-width: 800px;
  font-size: clamp(2rem,3vw,3.25rem);
}
.news-card h3 a:hover {
  color: var(--magenta);
}
.news-card__content > p {
  margin: 0 0 1.5rem;
  color: #6d5360;
  font-size: 1rem;
  line-height: 1.65;
}
.news-card__read {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  width: fit-content;
  min-height: 44px;
  margin-top: auto;
  color: var(--magenta);
  font-size: .8125rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  border-bottom: 2px solid var(--gold);
}
.news-archive {
  color: var(--ink);
  background: var(--cream);
}
.news-archive__top {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(270px,.55fr);
  gap: 4rem;
  align-items: end;
  max-width: 1450px;
  margin: 0 auto 3rem;
}
.news-archive__top .section-heading {
  margin: 0;
}
.news-archive__top > p {
  margin: 0 0 .5rem;
  padding: 1rem;
  color: var(--magenta-dark);
  background: #fff0bd;
  border-left: 4px solid var(--gold);
  font-size: .875rem;
  line-height: 1.6;
}
.news-archive__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1.5rem;
  max-width: 1450px;
  margin: 0 auto;
}
.news-archive__grid .news-card--featured {
  grid-column: span 2;
}
.news-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .5rem;
  max-width: 1450px;
  margin: 4rem auto 0;
}
.news-pagination > * {
  display: inline-flex;
  min-width: 46px;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  padding: .6rem .8rem;
  border: 1px solid var(--border);
  background: white;
  font-size: .875rem;
  font-weight: 700;
}
.news-pagination a:hover {
  color: white;
  background: var(--magenta);
  border-color: var(--magenta);
}
.news-pagination [aria-current="page"] {
  color: var(--ink);
  background: var(--gold);
  border-color: var(--gold);
}
.news-pagination__disabled {
  color: #9c8992;
}
.news-pagination__ellipsis {
  border-color: transparent;
  background: transparent;
}
.pagination-demo {
  margin: 1rem auto 0;
  color: #806a74;
  font-size: .8125rem;
  text-align: center;
}
.article-page {
  color: var(--ink);
  background: var(--cream);
}
.article-header {
  position: relative;
  overflow: hidden;
  padding: 9rem var(--page-gutter) 5rem;
  color: white;
  background: var(--magenta-dark);
}
.article-header::after {
  content: "4013";
  position: absolute;
  z-index: 0;
  right: -1vw;
  bottom: -3rem;
  color: rgba(246,211,107,.07);
  font-family: "Anton", sans-serif;
  font-size: clamp(11rem,25vw,25rem);
  line-height: .8;
  letter-spacing: -.04em;
}
.article-header > * {
  position: relative;
  z-index: 1;
  max-width: 1050px;
}
.article-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .55rem;
  margin-bottom: 2rem;
  color: rgba(255,255,255,.72);
  font-size: .8125rem;
}
.article-breadcrumb a:hover {
  color: var(--gold);
}
.article-header__labels {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .8rem;
  margin-bottom: 1.4rem;
  font-size: .75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .075em;
}
.article-header__labels span {
  color: var(--gold);
}
.article-header__labels strong {
  padding: .45rem .6rem;
  color: var(--magenta-dark);
  background: var(--gold);
}
.article-header h1 {
  margin: 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(3rem,6.1vw,6.6rem);
  font-weight: 400;
  line-height: 1.05;
  text-transform: uppercase;
  text-wrap: balance;
}
.article-header > p {
  max-width: 790px;
  margin: 1.5rem 0 0;
  color: rgba(255,255,255,.85);
  font-size: clamp(1.1rem,1.8vw,1.4rem);
  line-height: 1.55;
}
.article-header__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 2rem;
  font-size: .875rem;
}
.article-header__meta > * {
  display: flex;
  align-items: center;
  gap: .5rem;
}
.article-header__meta svg {
  color: var(--gold);
}
.article-cover {
  max-width: 1450px;
  margin: 0 auto;
  background: var(--ink);
}
.article-cover img {
  display: block;
  width: 100%;
  max-height: 720px;
  object-fit: cover;
}
.article-cover img[src$="tathiane-oficial.webp"] {
  object-position: center 18%;
}
.article-cover figcaption {
  padding: .8rem var(--page-gutter);
  color: rgba(255,255,255,.75);
  font-size: .75rem;
  line-height: 1.5;
}
.article-layout {
  display: grid;
  grid-template-columns: 220px minmax(0,760px);
  justify-content: center;
  gap: clamp(3rem,7vw,7rem);
  padding: 5rem var(--page-gutter) 7rem;
}
.article-side {
  align-self: start;
  position: sticky;
  top: 110px;
  padding-top: 1rem;
  border-top: 3px solid var(--gold);
}
.article-side span {
  color: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 3.5rem;
  line-height: 1;
}
.article-side p {
  color: #705764;
  font-size: .875rem;
  line-height: 1.6;
}
.article-body > p {
  margin: 0 0 1.6rem;
  font-size: 1.125rem;
  line-height: 1.85;
}
.article-body > p:first-child::first-letter {
  float: left;
  margin: .05em .12em 0 0;
  color: var(--magenta);
  font-family: "Anton", sans-serif;
  font-size: 5rem;
  line-height: .78;
}
.article-body blockquote {
  margin: 3rem 0;
  padding: 2.2rem;
  color: var(--magenta-dark);
  background: var(--gold);
  font-family: "Lobster", cursive;
  font-size: clamp(2rem,3.3vw,3.2rem);
  line-height: 1.3;
  transform: rotate(-1deg);
}
.article-body h2 {
  margin: 3rem 0 1rem;
  font-family: "Anton", sans-serif;
  font-size: clamp(2rem,3.5vw,3.5rem);
  font-weight: 400;
  line-height: 1.15;
  text-transform: uppercase;
}
.article-disclaimer {
  margin: 3rem 0;
  padding: 1.2rem 1.4rem;
  color: var(--magenta-dark);
  background: #fff0bd;
  border-left: 5px solid var(--gold);
}
.article-disclaimer strong {
  font-size: .8125rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.article-disclaimer p {
  margin: .45rem 0 0;
  line-height: 1.6;
}
.article-back {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  min-height: 46px;
  color: var(--magenta);
  font-size: .875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .045em;
}
.related-news {
  background: white;
}
.related-news__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  max-width: 1450px;
  margin: 0 auto 2.5rem;
}
.related-news__header span {
  color: var(--magenta);
  font-size: .8125rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .065em;
}
.related-news__header h2 {
  margin: .55rem 0 0;
  font-family: "Anton", sans-serif;
  font-size: clamp(2.8rem,5vw,5.4rem);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}
.related-news__header h2 em {
  color: var(--magenta);
  font-family: "Lobster", cursive;
  font-weight: 400;
  text-transform: none;
}
.related-news__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1.5rem;
  max-width: 1450px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  .home-news__header, .news-archive__top {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .home-news__grid, .news-archive__grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .news-card--featured, .news-archive__grid .news-card--featured {
    grid-column: span 2;
  }
  .related-news__grid {
    grid-template-columns: 1fr;
  }
  .article-layout {
    grid-template-columns: 150px minmax(0,1fr);
    gap: 3rem;
  }
}
@media (max-width: 600px) {
  .home-news {
    padding-block: 4.5rem;
  }
  .home-news__header h2 {
    font-size: clamp(2.7rem,12vw,4rem);
  }
  .home-news__header > div:last-child p {
    font-size: 1rem;
  }
  .news-demo-note {
    align-items: flex-start;
    flex-direction: column;
    gap: .35rem;
  }
  .home-news__grid, .news-archive__grid {
    grid-template-columns: 1fr;
  }
  .news-card--featured, .news-archive__grid .news-card--featured {
    grid-column: auto;
  }
  .news-card--featured h3 {
    font-size: 1.8rem;
  }
  .news-card__image {
    aspect-ratio: 1.35;
  }
  .news-card__content {
    padding: 1.25rem;
  }
  .news-archive__top {
    margin-bottom: 2rem;
  }
  .news-pagination {
    gap: .35rem;
    margin-top: 3rem;
  }
  .news-pagination > * {
    min-width: 42px;
    min-height: 42px;
    padding: .45rem .6rem;
  }
  .news-pagination__disabled {
    display: none;
  }
  .article-header {
    padding-top: 7rem;
    padding-bottom: 3.5rem;
  }
  .article-header h1 {
    font-size: clamp(2.55rem,11.5vw,4rem);
  }
  .article-header > p {
    font-size: 1.05rem;
  }
  .article-cover {
    margin: 0;
  }
  .article-cover img {
    min-height: 280px;
    object-fit: cover;
  }
  .article-layout {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding-block: 3.5rem 4.5rem;
  }
  .article-side {
    position: static;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: center;
  }
  .article-side p {
    margin: 0;
  }
  .article-body > p {
    font-size: 1.05rem;
    line-height: 1.75;
  }
  .article-body blockquote {
    margin-inline: -.5rem;
    padding: 1.5rem;
  }
  .related-news__header {
    align-items: flex-start;
    flex-direction: column;
  }
}
@media (hover: none) {
  .news-card:hover, .news-card:hover .news-card__image img {
    transform: none;
  }
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    :root, :host {
      --shimmer-angle: 20deg;
    }
    *, ::before, ::after, ::backdrop {
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
  }
}
