

:root {
  --color-cream-warm: #f3ebdd;
  --color-cream-soft: #fbf6ed;
  --color-green-mangueira: #4e6b45;
  --color-green-deep: #20382d;
  --color-bordeaux: #743b42;
  --color-wine-dark: #51272f;
  --color-gold-aged: #b18a4a;
  --color-black-soft: #1d211d;
  --color-wood-dark: #3a2921;
  --color-border-neutral: #d8cbb9;
  --color-focus: #d39b3e;

  --color-text: var(--color-black-soft);
  --color-text-inverse: var(--color-cream-soft);
  --color-link: var(--color-green-mangueira);
  --color-link-hover: var(--color-green-deep);
  --color-surface: var(--color-cream-warm);
  --color-surface-raised: var(--color-cream-soft);
  --color-surface-dark: var(--color-green-deep);
  --color-border: var(--color-border-neutral);
  --color-border-dark: rgb(32 56 45 / 22%);

  --font-heading: "Cormorant Garamond", Georgia, serif;
  --font-body: "Manrope", Arial, sans-serif;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lead: 1.125rem;
  --font-size-card-title: 1.5rem;
  --font-size-section-title: clamp(2rem, 4vw, 2.5rem);
  --font-size-display: clamp(2.5rem, 5vw, 3rem);
  --font-size-display-wide: clamp(3rem, 7vw, 4rem);

  --line-height-xs: 1.333;
  --line-height-sm: 1.429;
  --line-height-body: 1.625;
  --line-height-lead: 1.556;
  --line-height-heading: 1.08;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 5rem;
  --space-10: 7rem;
  --space-11: 9rem;

  --container-max: 75rem;
  --container-padding: 2rem;
  --container-padding-tablet: 1.75rem;
  --container-padding-mobile: 1.25rem;

  --radius-sm: 0.25rem;
  --radius-md: 0.625rem;
  --radius-lg: 1rem;
  --radius-xl: 1.5rem;
  --radius-pill: 999px;

  --shadow-card: 0 8px 24px rgb(29 33 29 / 10%);
  --shadow-modal: 0 16px 48px rgb(29 33 29 / 16%);

  --transition-fast: 160ms ease-out;
  --transition-base: 220ms ease-out;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  scroll-behavior: smooth;
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background: var(--color-surface);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  font-weight: 400;
  line-height: var(--line-height-body);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

main,
header,
footer,
section,
article,
aside,
nav,
figure,
form,
fieldset,
dialog {
  min-width: 0;
}

img,
picture,
svg,
canvas,
video,
iframe {
  display: block;
  max-width: 100%;
}

img,
video {
  height: auto;
}

img {
  object-fit: cover;
}

button,
input,
select,
textarea {
  font: inherit;
}

button,
[type="button"],
[type="submit"],
[type="reset"] {
  cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="submit"]:disabled,
[type="reset"]:disabled {
  cursor: not-allowed;
}

textarea {
  min-height: 7rem;
  resize: vertical;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

ul,
ol {
  padding-inline-start: 1.25rem;
}

ul[role="list"],
ol[role="list"] {
  padding: 0;
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl,
blockquote,
figure,
table,
pre,
hr,
address {
  margin-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  font-family: var(--font-heading);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: var(--line-height-heading);
  text-wrap: balance;
}

h1 {
  margin-bottom: var(--space-5);
  font-size: var(--font-size-display-wide);
}

h2 {
  margin-bottom: var(--space-5);
  font-size: var(--font-size-section-title);
}

h3 {
  margin-bottom: var(--space-4);
  font-size: var(--font-size-card-title);
}

h4 {
  margin-bottom: var(--space-3);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
}

h5,
h6 {
  margin-bottom: var(--space-3);
  font-size: var(--font-size-lead);
}

p {
  margin-bottom: var(--space-4);
}

ul,
ol {
  margin-bottom: var(--space-4);
}

li > ul,
li > ol {
  margin-top: var(--space-2);
  margin-bottom: 0;
}

dl {
  margin-bottom: var(--space-4);
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 0 var(--space-3);
}

blockquote {
  margin-right: 0;
  margin-bottom: var(--space-5);
  margin-left: 0;
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-left: 3px solid var(--color-gold-aged);
  color: var(--color-green-deep);
  font-family: var(--font-heading);
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

figure {
  margin-bottom: var(--space-5);
}

figcaption {
  margin-top: var(--space-2);
  color: color-mix(in srgb, var(--color-text) 72%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

hr {
  height: 1px;
  margin-bottom: var(--space-6);
  border: 0;
  background: var(--color-border);
}

address {
  margin-bottom: var(--space-4);
  font-style: normal;
}

small {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

strong {
  font-weight: 700;
}

a {
  color: var(--color-link);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.16em;
  transition: color var(--transition-fast);
}

a:hover {
  color: var(--color-link-hover);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 3px;
}

::selection {
  background: var(--color-gold-aged);
  color: var(--color-black-soft);
}

::placeholder {
  color: color-mix(in srgb, var(--color-text) 58%, transparent);
  opacity: 1;
}

label {
  display: inline-block;
  margin-bottom: var(--space-2);
  color: var(--color-text);
  font-size: var(--font-size-sm);
  font-weight: 700;
  line-height: var(--line-height-sm);
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface-raised);
  color: var(--color-text);
  line-height: 1.4;
  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast),
    background-color var(--transition-fast);
}

input,
select {
  min-height: 2.75rem;
  padding: 0.625rem 0.75rem;
}

textarea {
  padding: 0.75rem;
}

input:hover,
select:hover,
textarea:hover {
  border-color: var(--color-green-mangueira);
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--color-green-mangueira);
  box-shadow: 0 0 0 3px rgb(211 155 62 / 22%);
  outline: none;
}

input:disabled,
select:disabled,
textarea:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

input[type="checkbox"],
input[type="radio"] {
  width: 1rem;
  min-width: 1rem;
  height: 1rem;
  min-height: 1rem;
  padding: 0;
  accent-color: var(--color-green-mangueira);
}

input[type="file"] {
  padding: var(--space-2);
}

fieldset {
  margin: 0 0 var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}

legend {
  padding: 0 var(--space-2);
  color: var(--color-green-deep);
  font-weight: 700;
}

details {
  margin-bottom: var(--space-4);
}

summary {
  cursor: pointer;
}

.container {
  width: min(100% - (var(--container-padding) * 2), var(--container-max));
  margin-inline: auto;
}

.section {
  padding-block: var(--space-10);
}

.section--compact {
  padding-block: var(--space-8);
}

.surface {
  background: var(--color-surface-raised);
}

.surface-dark {
  background: var(--color-surface-dark);
  color: var(--color-text-inverse);
}

.surface-dark a {
  color: var(--color-cream-soft);
}

.surface-dark a:hover {
  color: var(--color-gold-aged);
}

.surface-dark label,
.surface-dark legend {
  color: var(--color-cream-soft);
}

.surface-dark input,
.surface-dark select,
.surface-dark textarea {
  border-color: var(--color-border-dark);
  background: rgb(251 246 237 / 8%);
  color: var(--color-cream-soft);
}

.surface-dark input::placeholder,
.surface-dark textarea::placeholder {
  color: rgb(251 246 237 / 68%);
}

.eyebrow {
  margin-bottom: var(--space-3);
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.surface-dark .eyebrow {
  color: var(--color-gold-aged);
}

.lead {
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.meta {
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.surface-dark .meta {
  color: rgb(251 246 237 / 76%);
}

.button {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.6875rem var(--space-4);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  background: var(--color-green-mangueira);
  color: var(--color-cream-soft);
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    background-color var(--transition-base),
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    color var(--transition-base),
    transform var(--transition-fast);
}

.button:hover {
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
  text-decoration: none;
}

.button:active {
  transform: translateY(1px);
}

.button:disabled,
.button[aria-disabled="true"] {
  opacity: 0.55;
  pointer-events: none;
}

.button--secondary {
  border-color: var(--color-green-mangueira);
  background: transparent;
  color: var(--color-green-mangueira);
}

.button--secondary:hover {
  border-color: var(--color-green-deep);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.button--light {
  border-color: var(--color-cream-soft);
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
}

.button--light:hover {
  border-color: var(--color-gold-aged);
  background: var(--color-gold-aged);
  color: var(--color-black-soft);
}

.button--outline-light {
  border-color: rgb(251 246 237 / 72%);
  background: transparent;
  color: var(--color-cream-soft);
}

.button--outline-light:hover {
  border-color: var(--color-cream-soft);
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
}

.button-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  min-width: 0;
}

.button-group > * {
  min-width: 0;
}

.card {
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface-raised);
  box-shadow: var(--shadow-card);
}

.card > :last-child {
  margin-bottom: 0;
}

.panel {
  min-width: 0;
  padding: var(--space-6);
  border-radius: var(--radius-xl);
  background: var(--color-surface-raised);
}

.panel > :last-child {
  margin-bottom: 0;
}

.content-group {
  min-width: 0;
}

.content-group > :last-child {
  margin-bottom: 0;
}

.stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.stack > * {
  min-width: 0;
}

.stack--tight {
  gap: var(--space-2);
}

.stack--loose {
  gap: var(--space-6);
}

.cluster {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.cluster > * {
  min-width: 0;
}

.badge-18 {
  display: inline-flex;
  min-height: 1.75rem;
  align-items: center;
  justify-content: center;
  padding-inline: 0.5rem;
  border: 1px solid currentcolor;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: var(--space-3);
  left: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-sm);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
  transform: translateY(-200%);
  transition: transform var(--transition-fast);
}

.skip-link:focus {
  transform: translateY(0);
}

@media (max-width: 1023px) {
  :root {
    --container-padding: var(--container-padding-tablet);
  }

  .section {
    padding-block: var(--space-9);
  }
}

@media (max-width: 767px) {
  :root {
    --container-padding: var(--container-padding-mobile);
  }

  html {
    scroll-padding-top: var(--space-6);
  }

  h1 {
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  h2 {
    font-size: clamp(2rem, 9vw, 2.375rem);
  }

  .section,
  .section--compact {
    padding-block: var(--space-7);
  }

  .panel {
    padding: var(--space-5);
  }

  .card {
    padding: var(--space-4);
  }

  .button {
    width: 100%;
  }

  .button-group {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}


.site-header {
  position: relative;
  z-index: 100;
  min-height: 5rem;
  border-bottom: 1px solid rgb(32 56 45 / 18%);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.site-header__inner {
  display: flex;
  min-height: 5rem;
  align-items: center;
  gap: var(--space-4);
}

.site-header__brand {
  display: inline-flex;
  min-width: 0;
  flex: 0 1 auto;
  align-items: center;
  gap: 0.625rem;
  color: var(--color-cream-soft);
  text-decoration: none;
}

.site-header__brand:hover { color: var(--color-gold-aged); }

.site-header__logo {
  width: 2.625rem;
  min-width: 2.625rem;
  height: 2.625rem;
  object-fit: contain;
}

.site-header__brand-name {
  overflow: hidden;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.site-header__navigation {
  min-width: 0;
  margin-left: auto;
}

.site-header__nav-list,
.site-header__mobile-links {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.5rem, 1.15vw, 1rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-header__nav-list li,
.site-header__mobile-links a { margin: 0; padding: 0; }

.site-header__nav-list a,
.site-header__mobile-links a {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-cream-soft);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.site-header__nav-list a:hover,
.site-header__mobile-links a:hover { color: var(--color-gold-aged); }

.site-header__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: var(--space-3);
}

.site-header__actions .badge-18 { color: var(--color-gold-aged); }
.site-header__reserve { white-space: nowrap; }
.site-header__toggle,
.site-header__mobile-links,
.site-header__mobile-actions { display: none; }

@media (max-width: 1120px) {
  .site-header__navigation { display: none; }

  .site-header__toggle {
    display: inline-flex;
    width: 2.75rem;
    min-width: 2.75rem;
    height: 2.75rem;
    margin-left: auto;
    padding: 0.625rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.3125rem;
    border: 1px solid rgb(251 246 237 / 46%);
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--color-cream-soft);
  }

  .site-header__toggle:hover { border-color: var(--color-gold-aged); color: var(--color-gold-aged); }

  .site-header__toggle-line {
    display: block;
    width: 1.25rem;
    height: 2px;
    border-radius: 2px;
    background: currentcolor;
    transition: transform var(--transition-fast), opacity var(--transition-fast);
  }

  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(1) { transform: translateY(0.4375rem) rotate(45deg); }
  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(2) { opacity: 0; }
  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(3) { transform: translateY(-0.4375rem) rotate(-45deg); }

  .site-header__navigation {
    position: absolute;
    z-index: 101;
    top: 100%;
    right: 0;
    left: 0;
    max-height: calc(100vh - 5rem);
    padding: var(--space-5) max(var(--container-padding), env(safe-area-inset-right)) var(--space-6);
    overflow-y: auto;
    border-top: 1px solid rgb(251 246 237 / 18%);
    border-bottom: 1px solid rgb(251 246 237 / 18%);
    background: var(--color-green-deep);
    box-shadow: 0 16px 28px rgb(29 33 29 / 20%);
  }

  .site-header__navigation.is-open { display: block; }

  .site-header__nav-list,
  .site-header__mobile-links {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }

  .site-header__nav-list { border-top: 1px solid rgb(251 246 237 / 18%); }

  .site-header__nav-list li,
  .site-header__mobile-links a { border-bottom: 1px solid rgb(251 246 237 / 18%); }

  .site-header__nav-list a,
  .site-header__mobile-links a {
    min-height: 3rem;
    padding-inline: var(--space-2);
  }

  .site-header__mobile-links { display: flex; margin-top: var(--space-3); }
  .site-header__mobile-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-5); }
  .site-header__mobile-actions .button { flex: 1 1 15rem; }
}

@media (max-width: 767px) {
  .site-header,
  .site-header__inner { min-height: 4.25rem; }

  .site-header__inner { gap: var(--space-2); }
  .site-header__logo { width: 2.25rem; min-width: 2.25rem; height: 2.25rem; }
  .site-header__brand-name { font-size: 1.0625rem; }
  .site-header__actions .badge-18 { display: none; }
  .site-header__reserve { display: none; }
  .site-header__navigation { max-height: calc(100vh - 4.25rem); }
}

@media (max-width: 380px) {
  .site-header__brand-name { max-width: 9.5rem; font-size: 1rem; }
}


.site-footer {
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.site-footer__inner {
  display: grid;
  grid-template-columns: minmax(15rem, 1.15fr) minmax(0, 2fr);
  gap: var(--space-7) var(--space-8);
  padding-block: var(--space-9);
}

.site-footer__intro,
.site-footer__group,
.site-footer__contact { min-width: 0; }

.site-footer__intro > :last-child,
.site-footer__group > :last-child,
.site-footer__contact > :last-child { margin-bottom: 0; }

.site-footer__brand {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  color: var(--color-cream-soft);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
}

.site-footer__brand:hover { color: var(--color-gold-aged); }
.site-footer__logo { width: 4.5rem; height: 4.5rem; object-fit: contain; }
.site-footer__intro p { margin-bottom: var(--space-4); color: rgb(251 246 237 / 78%); font-size: var(--font-size-sm); line-height: var(--line-height-body); }
.site-footer__domain,
.site-footer__contact a { color: var(--color-cream-soft); font-size: var(--font-size-sm); }
.site-footer__domain:hover,
.site-footer__contact a:hover { color: var(--color-gold-aged); }

.site-footer__responsibility {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-5);
}

.site-footer__responsibility .badge-18 { color: var(--color-gold-aged); }

.site-footer__nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
}

.site-footer__group h2 {
  margin: 0 0 var(--space-3);
  color: var(--color-gold-aged);
  font-family: var(--font-body);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.site-footer__group ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__group li { margin: 0; }
.site-footer__group a { color: rgb(251 246 237 / 84%); font-size: var(--font-size-sm); text-decoration: none; }
.site-footer__group a:hover { color: var(--color-gold-aged); }

.site-footer__contact {
  display: flex;
  grid-column: 1 / -1;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-2) var(--space-4);
  padding-top: var(--space-5);
  border-top: 1px solid rgb(251 246 237 / 20%);
  color: rgb(251 246 237 / 78%);
  font-size: var(--font-size-sm);
}

.site-footer__contact p,
.site-footer__contact address { margin: 0; }
.site-footer__contact strong { color: var(--color-gold-aged); }

.site-footer__bottom {
  border-top: 1px solid rgb(251 246 237 / 20%);
  background: var(--color-wood-dark);
}

.site-footer__bottom p {
  margin: 0;
  padding-block: var(--space-4);
  color: rgb(251 246 237 / 78%);
  font-size: var(--font-size-xs);
  line-height: var(--line-height-sm);
}

.site-consent[hidden],
[data-age-modal][hidden] { display: none !important; }

.site-consent {
  position: fixed;
  z-index: 500;
  right: var(--space-4);
  bottom: var(--space-4);
  left: var(--space-4);
  max-width: 52rem;
  margin-inline: auto;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
  color: var(--color-text);
}

.site-consent__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
}

.site-consent__copy strong { display: block; margin-bottom: var(--space-1); font-size: var(--font-size-sm); }
.site-consent__copy p { margin: 0; font-size: var(--font-size-sm); line-height: var(--line-height-sm); }
.site-consent__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: var(--space-2); }

.site-consent__button,
.site-age-modal__confirm,
.site-age-modal__decline {
  min-height: 2.75rem;
  padding: 0.6875rem var(--space-4);
  border: 1px solid var(--color-green-mangueira);
  border-radius: var(--radius-md);
  background: var(--color-green-mangueira);
  color: var(--color-cream-soft);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
  transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base), transform var(--transition-fast);
}

.site-consent__button:hover,
.site-age-modal__confirm:hover { border-color: var(--color-green-deep); background: var(--color-green-deep); }
.site-consent__button:active,
.site-age-modal__confirm:active,
.site-age-modal__decline:active { transform: translateY(1px); }
.site-consent__button--secondary,
.site-age-modal__decline { background: transparent; color: var(--color-green-deep); }
.site-consent__button--secondary:hover,
.site-age-modal__decline:hover { background: var(--color-green-deep); color: var(--color-cream-soft); }

.site-age-modal {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: var(--space-4);
  overflow-y: auto;
}

.site-age-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgb(29 33 29 / 72%);
}

.site-age-modal__dialog {
  position: relative;
  width: min(100%, 35rem);
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-modal);
  color: var(--color-text);
}

.site-age-modal__dialog > .badge-18 { margin-bottom: var(--space-4); color: var(--color-bordeaux); }
.site-age-modal__dialog h2 { margin-bottom: var(--space-4); color: var(--color-green-deep); }
.site-age-modal__dialog p { margin-bottom: var(--space-4); }
.site-age-modal__notice { padding-top: var(--space-3); border-top: 1px solid var(--color-border); color: var(--color-bordeaux); font-size: var(--font-size-sm); font-weight: 700; line-height: var(--line-height-sm); }
.site-age-modal__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }

@media (max-width: 1023px) {
  .site-footer__inner { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .site-footer__inner { gap: var(--space-6); padding-block: var(--space-7); }
  .site-footer__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6) var(--space-4); }
  .site-footer__contact { flex-direction: column; align-items: flex-start; gap: var(--space-2); }
  .site-consent { right: var(--space-3); bottom: var(--space-3); left: var(--space-3); }
  .site-consent__inner { align-items: stretch; flex-direction: column; }
  .site-consent__actions { width: 100%; }
  .site-consent__button { flex: 1 1 0; }
  .site-age-modal { padding: var(--space-4); }
  .site-age-modal__dialog { padding: var(--space-5); }
  .site-age-modal__actions { flex-direction: column; }
  .site-age-modal__confirm,
  .site-age-modal__decline { width: 100%; }
}


.contato-page {
  background: var(--color-cream-warm);
}

.contato-page__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  min-width: 0;
}

.contato-page__grid > * {
  min-width: 0;
}

.contato-page__intro {
  padding-top: var(--space-10);
  padding-bottom: var(--space-9);
}

.contato-page__intro-copy {
  grid-column: 2 / span 7;
  max-width: 42.5rem;
  min-width: 0;
}

.contato-page__intro-copy::before {
  display: block;
  width: 4rem;
  height: 1px;
  margin-bottom: var(--space-5);
  background: var(--color-gold-aged);
  content: "";
}

.contato-page__intro-copy .lead {
  max-width: 62ch;
  font-size: var(--font-size-lead);
}

.contato-page__reservation-note {
  display: flex;
  width: min(100%, 35rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-6);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.contato-page__reservation-note p {
  margin: 0;
}

.contato-page__reservation-note .button {
  align-self: flex-start;
}

.contato-page__channels-grid {
  align-items: start;
  row-gap: var(--space-6);
}

.contato-page__channels-heading {
  grid-column: 1 / span 4;
  min-width: 0;
}

.contato-page__channels-heading > p:last-child {
  max-width: 38ch;
}

.contato-page__contact-cards {
  display: grid;
  grid-column: 5 / span 8;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--space-5);
  min-width: 0;
}

.contato-page__contact-cards > * {
  min-width: 0;
}

.contato-page__contact-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.contato-page__contact-card--phone,
.contato-page__contact-card--email {
  grid-column: span 4;
}

.contato-page__contact-card--address {
  grid-column: 1 / -1;
}

.contato-page__label,
.contato-page__topic-number {
  margin: 0;
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.contato-page__contact-card h3,
.contato-page__contact-card p {
  margin: 0;
}

.contato-page__contact-card h3 {
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  overflow-wrap: anywhere;
}

.contato-page__contact-card--phone h3 {
  max-width: 24ch;
}

.contato-page__contact-card--email h3 {
  max-width: 34ch;
}

.contato-page__contact-card--address h3 {
  max-width: 46ch;
}

.contato-page__contact-card > p:not(.contato-page__label) {
  max-width: 42ch;
}

.contato-page__route-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  align-self: flex-start;
  margin-top: var(--space-2);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.contato-page__topics-grid {
  align-items: start;
  row-gap: var(--space-6);
}

.contato-page__topics-heading {
  grid-column: 1 / span 4;
  min-width: 0;
}

.contato-page__topics-heading > p:last-child {
  max-width: 52ch;
}

.contato-page__topic-list {
  display: flex;
  grid-column: 6 / span 7;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.contato-page__topic {
  display: grid;
  grid-template-columns: minmax(2rem, 3rem) minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  padding-bottom: var(--space-5);
  border-bottom: 1px solid var(--color-border);
}

.contato-page__topic > * {
  min-width: 0;
}

.contato-page__topic-copy h3,
.contato-page__topic-copy p {
  }

.contato-page__topic-copy p {
  margin-bottom: 0;
}

.contato-page__poker-topic {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
  border: 1px solid var(--color-border-dark);
  border-radius: var(--radius-xl);
}

.contato-page__poker-topic h3,
.contato-page__poker-topic p {
  margin: 0;
}

.contato-page__poker-topline {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

.contato-page__poker-topline .contato-page__topic-number {
  color: var(--color-gold-aged);
}

.contato-page__form-layout {
  align-items: start;
  row-gap: var(--space-6);
}

.contato-page__form-heading {
  grid-column: 1 / span 4;
  min-width: 0;
}

.contato-page__form-heading > p:last-child {
  max-width: 58ch;
}

.contato-page__form-panel {
  grid-column: 6 / span 7;
  min-width: 0;
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.contato-page__form {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.contato-page__form-grid {
  display: grid;
  min-width: 0;
  gap: var(--space-4);
}

.contato-page__form-grid > * {
  min-width: 0;
}

.contato-page__form-grid--identity {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.contato-page__form-grid--full {
  grid-template-columns: minmax(0, 1fr);
}

.contato-page__field {
  min-width: 0;
}

.contato-page__field label {
  margin-bottom: var(--space-2);
}

.contato-page__field input,
.contato-page__field select,
.contato-page__field textarea {
  min-height: 3rem;
}

.contato-page__field textarea {
  min-height: 10rem;
}

.contato-page__field-help,
.contato-page__field-error {
  margin: var(--space-2) 0 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.contato-page__field-help {
  color: color-mix(in srgb, var(--color-text) 72%, transparent);
}

.contato-page__field-error {
  display: none;
  color: var(--color-wine-dark);
  font-weight: 700;
}

.contato-page__field-error.is-visible {
  display: block;
}

.contato-page__field [aria-invalid="true"] {
  border-color: var(--color-wine-dark);
  box-shadow: 0 0 0 3px rgb(116 59 66 / 16%);
}

.contato-page__form-actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.contato-page__form-actions p {
  margin: 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.contato-page__form-feedback {
  min-height: 1.625rem;
  max-width: 58ch;
  margin: 0;
  color: var(--color-green-deep);
  font-weight: 700;
}

.contato-page__form-feedback.is-error {
  color: var(--color-wine-dark);
}

.contato-page__visit-panel {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  min-width: 0;
  padding: var(--space-7);
  border: 1px solid rgb(58 41 33 / 80%);
  border-radius: var(--radius-xl);
}

.contato-page__visit-panel > * {
  min-width: 0;
}

.contato-page__visit-address {
  grid-column: 1 / span 7;
}

.contato-page__visit-copy {
  display: flex;
  grid-column: 9 / span 4;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.contato-page__visit-copy p {
  margin: 0;
}

.contato-page__address-display {
  max-width: 48ch;
  margin-bottom: 0;
  color: var(--color-cream-soft);
  font-family: var(--font-heading);
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.12;
}

.contato-page__responsibility {
  border-top: 3px solid var(--color-bordeaux);
}

.contato-page__responsibility-grid {
  align-items: start;
}

.contato-page__responsibility-copy {
  grid-column: 1 / span 7;
  min-width: 0;
}

.contato-page__responsibility-copy > p:last-child {
  max-width: 68ch;
  margin-bottom: 0;
}

@media (max-width: 1040px) {
  .contato-page__form-layout {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--space-5);
  }

  .contato-page__form-heading,
  .contato-page__form-panel {
    grid-column: 1 / -1;
  }

  .contato-page__form-panel {
    width: 100%;
  }

  .contato-page__form-grid--identity {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contato-page__form-grid--identity .contato-page__field:nth-child(3) {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1023px) {
  .contato-page__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--space-5);
  }

  .contato-page__intro-copy {
    grid-column: 1 / -1;
    max-width: 42.5rem;
  }

  .contato-page__channels-heading {
    grid-column: 1 / -1;
  }

  .contato-page__contact-cards {
    grid-column: 1 / -1;
  }

  .contato-page__topics-heading {
    grid-column: 1 / -1;
  }

  .contato-page__topic-list {
    grid-column: 1 / -1;
  }

  .contato-page__responsibility-copy {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .contato-page__visit-panel {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .contato-page__visit-address,
  .contato-page__visit-copy {
    grid-column: 1 / -1;
  }
}

@media (max-width: 767px) {
  .contato-page__grid,
  .contato-page__form-layout,
  .contato-page__visit-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .contato-page__intro {
    padding-top: var(--space-7);
  }

  .contato-page__intro-copy,
  .contato-page__channels-heading,
  .contato-page__contact-cards,
  .contato-page__topics-heading,
  .contato-page__topic-list,
  .contato-page__form-heading,
  .contato-page__form-panel,
  .contato-page__visit-address,
  .contato-page__visit-copy,
  .contato-page__responsibility-copy {
    grid-column: 1;
  }

  .contato-page__intro-copy h1 {
    font-size: 2.5rem;
    line-height: 1.05;
  }

  .contato-page__intro-copy .lead {
    font-size: 1.0625rem;
    line-height: 1.59;
  }

  .contato-page__reservation-note {
    width: 100%;
  }

  .contato-page__reservation-note .button {
    width: 100%;
  }

  .contato-page__contact-cards {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .contato-page__contact-card--phone,
  .contato-page__contact-card--email,
  .contato-page__contact-card--address {
    grid-column: 1;
  }

  .contato-page__contact-card a,
  .contato-page__route-link {
    overflow-wrap: anywhere;
  }

  .contato-page__topic {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .contato-page__poker-topic {
    padding: var(--space-5);
  }

  .contato-page__form-panel {
    padding: var(--space-5);
  }

  .contato-page__form-grid--identity {
    grid-template-columns: minmax(0, 1fr);
  }

  .contato-page__form-grid--identity .contato-page__field:nth-child(3) {
    grid-column: 1;
  }

  .contato-page__visit-panel {
    padding: 1.75rem 1.5rem;
  }

  .contato-page__visit-copy .button {
    width: 100%;
  }
}

@media (max-width: 419px) {
  .contato-page__form-actions .button {
    width: 100%;
    min-height: 3rem;
  }
}


.cookies-policy-page {
  background: var(--color-cream-warm);
  color: var(--color-text);
}

.cookies-policy-page__opening {
  padding-block: var(--space-10) var(--space-8);
  border-bottom: 1px solid var(--color-border);
}

.cookies-policy-page__opening-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  align-items: start;
}

.cookies-policy-page__opening-grid > * {
  min-width: 0;
}

.cookies-policy-page__rail {
  grid-column: 1 / span 3;
  width: 100%;
  min-width: 0;
}

.cookies-policy-page__rail-inner {
  position: sticky;
  top: calc(var(--space-7) + 1rem);
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding-right: var(--space-4);
  border-right: 1px solid var(--color-border);
}

.cookies-policy-page__rail-label,
.cookies-policy-page__rail-date {
  margin: 0;
}

.cookies-policy-page__rail-label {
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.cookies-policy-page__rail-date {
  color: color-mix(in srgb, var(--color-text) 72%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.cookies-policy-page__rail-date strong {
  color: var(--color-green-deep);
  font-weight: 800;
}

.cookies-policy-page__index {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.cookies-policy-page__index > a {
  display: block;
  width: 100%;
  min-width: 0;
  padding-block: var(--space-1);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.cookies-policy-page__index > a:hover,
.cookies-policy-page__index > a[aria-current="location"] {
  color: var(--color-bordeaux);
  font-weight: 800;
}

.cookies-policy-page__index > a[aria-current="location"]::before {
  display: inline-block;
  width: 0.65rem;
  height: 0.65rem;
  margin-right: var(--space-2);
  border-radius: 50%;
  background: var(--color-gold-aged);
  content: "";
}

.cookies-policy-page__intro {
  grid-column: 4 / span 7;
  width: 100%;
  min-width: 0;
}

.cookies-policy-page__intro .eyebrow {
  margin-bottom: var(--space-4);
}

.cookies-policy-page__intro h1 {
  max-width: 18ch;
  margin-bottom: var(--space-4);
  color: var(--color-green-deep);
  font-size: clamp(3rem, 5vw, 4rem);
  line-height: 1;
}

.cookies-policy-page__effective,
.cookies-policy-page__domain {
  margin-bottom: var(--space-2);
}

.cookies-policy-page__effective {
  color: var(--color-bordeaux);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: var(--line-height-sm);
}

.cookies-policy-page__domain {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.cookies-policy-page__domain a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.cookies-policy-page__intro-copy {
  display: flex;
  max-width: 64ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 2px solid var(--color-gold-aged);
}

.cookies-policy-page__intro-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__content-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
}

.cookies-policy-page__content-grid > * {
  min-width: 0;
}

.cookies-policy-page__content {
  grid-column: 4 / span 7;
  width: 100%;
  min-width: 0;
}

.cookies-policy-page__section {
  width: 100%;
  min-width: 0;
  padding-block: var(--space-9);
  border-bottom: 1px solid var(--color-border);
}

.cookies-policy-page__section > .eyebrow {
  margin-bottom: var(--space-3);
}

.cookies-policy-page__section > h2 {
  max-width: 22ch;
  margin-bottom: var(--space-6);
  color: var(--color-green-deep);
}

.cookies-policy-page__definition-copy {
  display: flex;
  max-width: 68ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookies-policy-page__definition-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__definition-copy h3 {
  color: var(--color-green-deep);
}

.cookies-policy-page__definition-copy--divided {
  margin-top: var(--space-6);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-border);
}

.cookies-policy-page__scope-note {
  display: flex;
  max-width: 56ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-6);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
}

.cookies-policy-page__scope-note > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__scope-note h3 {
  color: var(--color-bordeaux);
  font-size: clamp(1.3rem, 2vw, 1.5rem);
}

.cookies-policy-page__purposes-intro {
  max-width: 64ch;
  margin-bottom: var(--space-7);
}

.cookies-policy-page__purpose-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-7);
}

.cookies-policy-page__purpose-list > * {
  width: 100%;
  min-width: 0;
}

.cookies-policy-page__purpose-item {
  display: grid;
  grid-template-columns: minmax(2.5rem, 0.12fr) minmax(0, 1fr);
  column-gap: var(--space-4);
  align-items: start;
}

.cookies-policy-page__purpose-item > * {
  min-width: 0;
}

.cookies-policy-page__purpose-number {
  width: 100%;
  margin: 0;
  color: var(--color-gold-aged);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.3;
}

.cookies-policy-page__purpose-copy {
  display: flex;
  max-width: 64ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookies-policy-page__purpose-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__purpose-copy h3 {
  color: var(--color-green-deep);
}

.cookies-policy-page__purpose-copy .meta {
  font-size: var(--font-size-sm);
}

.cookies-policy-page__section--limits {
  width: min(100% + calc((100vw - var(--container-max)) / 12), 42rem);
  margin-left: clamp(0rem, calc((100vw - 75rem) / 12), 3rem);
  padding-block: var(--space-9);
  border-bottom: 0;
}

.cookies-policy-page__limits-panel {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-7);
  border-radius: var(--radius-xl);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.cookies-policy-page__limits-panel > * {
  min-width: 0;
}

.cookies-policy-page__limits-label {
  margin: 0;
  color: var(--color-gold-aged);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.cookies-policy-page__limits-copy {
  display: flex;
  max-width: 61ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.cookies-policy-page__limits-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__limits-copy h2,
.cookies-policy-page__limits-copy h3 {
  color: var(--color-cream-soft);
}

.cookies-policy-page__limits-copy h2 {
  max-width: 18ch;
}

.cookies-policy-page__limits-unit {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-top: var(--space-6);
  border-top: 1px solid rgb(251 246 237 / 28%);
}

.cookies-policy-page__limits-unit > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__limits-unit h3 {
  max-width: 27ch;
}

.cookies-policy-page__control-copy {
  display: flex;
  max-width: 65ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookies-policy-page__control-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__control-copy h3 {
  color: var(--color-green-deep);
}

.cookies-policy-page__consequence-note {
  display: flex;
  max-width: 60ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-6);
  padding: var(--space-5);
  border-left: 3px solid var(--color-bordeaux);
  background: var(--color-cream-soft);
}

.cookies-policy-page__consequence-note > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__consequence-note h3 {
  color: var(--color-bordeaux);
}

.cookies-policy-page__control-copy--closing {
  margin-top: var(--space-6);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid var(--color-border);
}

.cookies-policy-page__section--updates {
  border-bottom: 0;
}

.cookies-policy-page__updates-copy {
  display: flex;
  max-width: 66ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-top: var(--space-4);
  border-top: 2px solid var(--color-gold-aged);
}

.cookies-policy-page__updates-copy > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__updates-copy h3 {
  color: var(--color-green-deep);
}

.cookies-policy-page__version-line {
  display: flex;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-6);
  margin-bottom: var(--space-4);
  color: var(--color-bordeaux);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.cookies-policy-page__version-line span {
  min-width: 0;
}

.cookies-policy-page__version-line strong {
  min-width: 0;
}

.cookies-policy-page__version-copy {
  max-width: 62ch;
  margin-bottom: 0;
}

.cookies-policy-page__section--questions {
  padding-bottom: var(--space-10);
  border-bottom: 0;
}

.cookies-policy-page__questions-panel {
  display: flex;
  max-width: 58ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.cookies-policy-page__questions-panel > * {
  min-width: 0;
  margin: 0;
}

.cookies-policy-page__questions-panel h3 {
  color: var(--color-green-deep);
}

.cookies-policy-page__email-link {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  min-height: 2.75rem;
  align-items: center;
  overflow-wrap: anywhere;
  color: var(--color-green-mangueira);
  font-weight: 800;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.18em;
}

.cookies-policy-page__closing-copy {
  max-width: 62ch;
  margin-top: var(--space-6);
  margin-bottom: 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
  color: color-mix(in srgb, var(--color-text) 82%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

@media (max-width: 1023px) {
  .cookies-policy-page__opening {
    padding-block: var(--space-9) var(--space-7);
  }

  .cookies-policy-page__opening-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    row-gap: var(--space-6);
  }

  .cookies-policy-page__rail {
    grid-column: 1 / -1;
  }

  .cookies-policy-page__rail-inner {
    position: static;
    gap: var(--space-3);
    padding: 0 0 var(--space-4);
    border-right: 0;
    border-bottom: 1px solid var(--color-border);
  }

  .cookies-policy-page__index {
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: var(--space-2);
    scrollbar-color: var(--color-gold-aged) transparent;
    scrollbar-width: thin;
  }

  .cookies-policy-page__index > a {
    width: auto;
    flex: 0 0 auto;
    padding: var(--space-2) var(--space-3);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-cream-soft);
    white-space: nowrap;
  }

  .cookies-policy-page__index > a[aria-current="location"]::before {
    width: 0.5rem;
    height: 0.5rem;
  }

  .cookies-policy-page__intro {
    grid-column: 1 / -1;
  }

  .cookies-policy-page__content-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cookies-policy-page__content {
    grid-column: 1 / -1;
  }

  .cookies-policy-page__section--limits {
    width: 100%;
    margin-left: 0;
  }

  .cookies-policy-page__limits-panel {
    padding: var(--space-6);
  }
}

@media (max-width: 899px) {
  .cookies-policy-page__purpose-item {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
  }

  .cookies-policy-page__purpose-number {
    width: auto;
  }
}

@media (max-width: 767px) {
  .cookies-policy-page__opening {
    padding-block: var(--space-7) var(--space-6);
  }

  .cookies-policy-page__opening-grid,
  .cookies-policy-page__content-grid {
    display: block;
  }

  .cookies-policy-page__rail {
    margin-top: var(--space-5);
  }

  .cookies-policy-page__rail-inner {
    gap: var(--space-3);
  }

  .cookies-policy-page__rail-date {
    display: none;
  }

  .cookies-policy-page__index {
    gap: var(--space-2);
  }

  .cookies-policy-page__intro h1 {
    max-width: 100%;
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  .cookies-policy-page__intro-copy {
    max-width: 100%;
    margin-top: var(--space-4);
    padding-top: var(--space-4);
  }

  .cookies-policy-page__section {
    padding-block: var(--space-7);
  }

  .cookies-policy-page__section > h2 {
    max-width: 100%;
    margin-bottom: var(--space-5);
  }

  .cookies-policy-page__definition-copy,
  .cookies-policy-page__scope-note,
  .cookies-policy-page__purposes-intro,
  .cookies-policy-page__purpose-copy,
  .cookies-policy-page__limits-copy,
  .cookies-policy-page__control-copy,
  .cookies-policy-page__consequence-note,
  .cookies-policy-page__updates-copy,
  .cookies-policy-page__version-copy,
  .cookies-policy-page__questions-panel,
  .cookies-policy-page__closing-copy {
    max-width: 100%;
  }

  .cookies-policy-page__scope-note,
  .cookies-policy-page__consequence-note {
    padding: var(--space-4);
  }

  .cookies-policy-page__purpose-list {
    gap: var(--space-6);
  }

  .cookies-policy-page__section--limits {
    padding-block: var(--space-7);
  }

  .cookies-policy-page__limits-panel {
    gap: var(--space-4);
    padding: var(--space-5);
    border-radius: var(--radius-lg);
  }

  .cookies-policy-page__limits-copy {
    gap: var(--space-5);
  }

  .cookies-policy-page__limits-copy h2 {
    max-width: 100%;
    font-size: clamp(1.875rem, 8vw, 2.25rem);
  }

  .cookies-policy-page__limits-unit {
    padding-top: var(--space-5);
  }

  .cookies-policy-page__questions-panel {
    padding: var(--space-5);
  }

  .cookies-policy-page__section--questions {
    padding-bottom: var(--space-9);
  }
}


.terms-page {
  background: var(--color-cream-warm);
}

.terms-page a {
  font-weight: 700;
  text-decoration-thickness: 1px;
}

.terms-page__hero {
  padding-block: var(--space-8) var(--space-7);
  background: linear-gradient(to bottom, var(--color-green-deep) 0 10.75rem, var(--color-cream-warm) 10.75rem 100%);
}

.terms-page__hero-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.terms-page__hero-grid > * {
  min-width: 0;
}

.terms-page__identity {
  grid-column: 3 / span 7;
  width: 100%;
  min-width: 0;
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.terms-page__hero-space {
  grid-column: 10 / span 3;
  width: 100%;
  min-width: 0;
}

.terms-page__breadcrumb {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  color: color-mix(in srgb, var(--color-text) 68%, transparent);
  font-size: var(--font-size-sm);
}

.terms-page__breadcrumb > * {
  min-width: 0;
}

.terms-page__breadcrumb a {
  font-weight: 700;
}

.terms-page__identity .eyebrow {
  margin-bottom: var(--space-3);
}

.terms-page__identity h1 {
  max-width: 22ch;
  margin-bottom: var(--space-4);
  color: var(--color-green-deep);
}

.terms-page__effective {
  display: inline-block;
  margin-bottom: var(--space-5);
  padding-left: var(--space-3);
  border-left: 3px solid var(--color-gold-aged);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 800;
}

.terms-page__intro {
  max-width: 68ch;
  margin-bottom: 0;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.terms-page__overview {
  padding-block: var(--space-7);
}

.terms-page__overview-grid,
.terms-page__document-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  align-items: start;
}

.terms-page__overview-grid > *,
.terms-page__document-grid > * {
  min-width: 0;
}

.terms-page__toc {
  grid-column: 1 / span 3;
  width: 100%;
  min-width: 0;
  padding: var(--space-5);
  border-top: 2px solid var(--color-gold-aged);
}

.terms-page__toc h2 {
  margin-bottom: var(--space-4);
  font-size: clamp(1.5rem, 2.5vw, 2rem);
}

.terms-page__toc-list,
.terms-page__context-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.terms-page__toc-list li {
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.terms-page__toc-list a {
  display: flex;
  min-height: 2.75rem;
  align-items: center;
  padding-block: var(--space-2);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.terms-page__overview-content {
  grid-column: 5 / span 8;
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.terms-page__overview-heading {
  width: 100%;
  min-width: 0;
}

.terms-page__overview-heading h2 {
  margin-bottom: 0;
}

.terms-page__highlights {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
}

.terms-page__highlights > * {
  min-width: 0;
}

.terms-page__highlight {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.terms-page__highlight > * {
  min-width: 0;
}

.terms-page__highlight-number {
  color: var(--color-bordeaux);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

.terms-page__highlight h3 {
  max-width: 24ch;
  margin-bottom: var(--space-2);
}

.terms-page__highlight p {
  margin-bottom: 0;
}

.terms-page__highlight--dark {
  border-color: rgb(177 138 74 / 64%);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.terms-page__highlight--dark .terms-page__highlight-number {
  color: var(--color-gold-aged);
}

.terms-page__document-grid {
  padding-block: var(--space-7);
}

.terms-page__context-index {
  grid-column: 1 / span 3;
  width: 100%;
  min-width: 0;
  position: sticky;
  top: 7rem;
  padding: var(--space-4) var(--space-5);
  border-left: 1px solid var(--color-border);
}

.terms-page__context-label {
  margin-bottom: var(--space-3);
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.terms-page__context-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.terms-page__context-list > * {
  width: 100%;
  min-width: 0;
}

.terms-page__context-list a {
  display: block;
  width: 100%;
  padding-block: var(--space-2);
  color: color-mix(in srgb, var(--color-text) 75%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.terms-page__context-list a[aria-current="true"] {
  color: var(--color-green-deep);
  text-decoration-thickness: 2px;
}

.terms-page__legal-column {
  grid-column: 5 / span 7;
  width: 100%;
  min-width: 0;
}

.terms-page__clause-section {
  width: 100%;
  min-width: 0;
  scroll-margin-top: 7rem;
}

.terms-page__clause-section + .terms-page__clause-section {
  margin-top: var(--space-9);
}

.terms-page__clause-section > h2 {
  max-width: 27ch;
  margin-bottom: var(--space-6);
  color: var(--color-green-deep);
}

.terms-page__clause {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-border);
  scroll-margin-top: 7rem;
}

.terms-page__clause + .terms-page__clause {
  margin-top: var(--space-6);
}

.terms-page__clause > * {
  min-width: 0;
}

.terms-page__clause-marker {
  color: var(--color-bordeaux);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.2;
}

.terms-page__clause-copy {
  width: 100%;
  min-width: 0;
}

.terms-page__clause-copy h3 {
  max-width: 32ch;
}

.terms-page__clause-copy p,
.terms-page__clause-copy ul {
  max-width: 70ch;
}

.terms-page__clause-copy ul {
  padding-left: 1.15rem;
}

.terms-page__clause-copy--notice {
  padding-left: var(--space-4);
  border-left: 3px solid var(--color-gold-aged);
}

.terms-page__distinction {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  width: 100%;
  min-width: 0;
  margin-top: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
  overflow: hidden;
}

.terms-page__distinction > * {
  min-width: 0;
  padding: var(--space-4);
}

.terms-page__distinction > * + * {
  border-left: 1px solid var(--color-border);
}

.terms-page__distinction h4 {
  margin-bottom: var(--space-2);
  color: var(--color-green-deep);
}

.terms-page__distinction p {
  margin-bottom: 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.terms-page__operational-note {
  margin-bottom: 0;
  padding: var(--space-3) var(--space-4);
  border-left: 3px solid var(--color-bordeaux);
  background: color-mix(in srgb, var(--color-bordeaux) 9%, var(--color-cream-soft));
  color: var(--color-wine-dark);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.terms-page__poker-section {
  padding-block: var(--space-8);
  background: var(--color-wood-dark);
}

.terms-page__poker-panel {
  width: calc(100% * 10 / 12);
  min-width: 0;
  margin-inline: auto;
  padding: var(--space-7);
  border: 1px solid rgb(177 138 74 / 50%);
  border-radius: var(--radius-xl);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.terms-page__poker-heading {
  width: 100%;
  min-width: 0;
  margin-bottom: var(--space-6);
}

.terms-page__poker-heading h2 {
  max-width: 32ch;
  margin-bottom: 0;
}

.terms-page__poker-grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 4fr);
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
}

.terms-page__poker-grid > * {
  min-width: 0;
}

.terms-page__poker-context {
  width: 100%;
  min-width: 0;
}

.terms-page__poker-context h3,
.terms-page__online-statement h3,
.terms-page__payment-statement h3 {
  max-width: 28ch;
}

.terms-page__poker-context p {
  margin-bottom: 0;
}

.terms-page__poker-prohibitions {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.terms-page__poker-prohibitions > * {
  width: 100%;
  min-width: 0;
}

.terms-page__online-statement {
  padding: var(--space-5);
  border-left: 3px solid var(--color-gold-aged);
  background: rgb(251 246 237 / 8%);
}

.terms-page__online-statement h3 {
  margin-bottom: var(--space-3);
}

.terms-page__statement {
  max-width: 48ch;
  color: var(--color-cream-soft);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
}

.terms-page__payment-statement {
  padding: var(--space-5);
  border: 1px solid rgb(251 246 237 / 24%);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
  color: var(--color-text);
}

.terms-page__payment-statement h3 {
  color: var(--color-green-deep);
}

.terms-page__payment-statement p,
.terms-page__online-statement p {
  margin-bottom: 0;
}

.terms-page__clause-copy--educational {
  padding-left: var(--space-4);
  border-left: 3px solid var(--color-bordeaux);
}

.terms-page__technical-panel {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
}

.terms-page__technical-panel p {
  margin-bottom: 0;
}

.terms-page__closing {
  padding-top: var(--space-8);
  background: var(--color-cream-warm);
}

.terms-page__closing-panel {
  display: flex;
  width: calc(100% * 8 / 12);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  margin-inline: auto;
  padding: var(--space-7);
  border: 1px solid rgb(177 138 74 / 54%);
  border-radius: var(--radius-xl);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.terms-page__closing-panel > * {
  width: 100%;
  min-width: 0;
}

.terms-page__closing-panel h2 {
  max-width: 28ch;
  margin-bottom: 0;
}

.terms-page__closing-clause {
  width: 100%;
  min-width: 0;
  padding-top: var(--space-5);
  border-top: 1px solid rgb(251 246 237 / 26%);
}

.terms-page__closing-clause h3 {
  max-width: 30ch;
  margin-bottom: var(--space-3);
}

.terms-page__closing-clause p {
  margin-bottom: 0;
}

.terms-page__email-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-cream-soft);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.18em;
}

.terms-page__email-link:hover {
  color: var(--color-gold-aged);
}

@media (max-width: 1050px) {
  .terms-page__hero-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .terms-page__identity {
    grid-column: 1 / span 8;
  }

  .terms-page__hero-space {
    display: none;
  }
}

@media (max-width: 980px) {
  .terms-page__overview-grid,
  .terms-page__document-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    row-gap: var(--space-5);
  }

  .terms-page__toc {
    grid-column: 1 / span 8;
  }

  .terms-page__toc-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--space-5);
  }

  .terms-page__toc-list > * {
    min-width: 0;
  }

  .terms-page__overview-content,
  .terms-page__legal-column {
    grid-column: 1 / span 8;
  }

  .terms-page__context-index {
    display: none;
  }

  .terms-page__poker-panel {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .terms-page__poker-grid {
    grid-template-columns: 1fr;
  }

  .terms-page__closing-panel {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .terms-page__hero {
    padding-block: var(--space-7);
    background: linear-gradient(to bottom, var(--color-green-deep) 0 7.5rem, var(--color-cream-warm) 7.5rem 100%);
  }

  .terms-page__hero-grid,
  .terms-page__overview-grid,
  .terms-page__document-grid {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .terms-page__identity,
  .terms-page__toc,
  .terms-page__overview-content,
  .terms-page__legal-column {
    grid-column: 1;
  }

  .terms-page__identity {
    padding: var(--space-5);
  }

  .terms-page__identity h1 {
    max-width: 20ch;
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  .terms-page__intro {
    max-width: none;
    font-size: var(--font-size-base);
    line-height: var(--line-height-body);
  }

  .terms-page__overview,
  .terms-page__document-grid,
  .terms-page__poker-section,
  .terms-page__closing {
    padding-block: var(--space-7);
  }

  .terms-page__toc {
    padding: var(--space-4) 0;
  }

  .terms-page__toc-list {
    grid-template-columns: 1fr;
  }

  .terms-page__highlight {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-4);
  }

  .terms-page__highlight p {
  }

  .terms-page__clause-section + .terms-page__clause-section {
    margin-top: var(--space-7);
  }

  .terms-page__clause-section > h2 {
    max-width: none;
    font-size: clamp(2rem, 9vw, 2.375rem);
  }

  .terms-page__clause {
    grid-template-columns: 1fr;
    gap: var(--space-2);
    padding-top: var(--space-5);
  }

  .terms-page__clause + .terms-page__clause {
    margin-top: var(--space-5);
  }

  .terms-page__clause-marker {
    font-size: 1.25rem;
  }

  .terms-page__clause-copy h3 {
    max-width: none;
    font-size: 1.5rem;
  }

  .terms-page__clause-copy p,
  .terms-page__clause-copy ul {
    max-width: none;
  }

  .terms-page__distinction {
    grid-template-columns: 1fr;
  }

  .terms-page__distinction > * + * {
    border-top: 1px solid var(--color-border);
    border-left: 0;
  }

  .terms-page__poker-panel,
  .terms-page__closing-panel {
    padding: var(--space-5);
  }

  .terms-page__poker-heading h2,
  .terms-page__closing-panel h2 {
    max-width: none;
    font-size: clamp(2rem, 9vw, 2.375rem);
  }

  .terms-page__poker-context p,
  .terms-page__closing-clause p {
  }

  .terms-page__online-statement,
  .terms-page__payment-statement,
  .terms-page__technical-panel {
    padding: var(--space-4);
  }

  .terms-page__statement {
    max-width: none;
    font-size: var(--font-size-lead);
  }
}

@media (prefers-reduced-motion: reduce) {
  .terms-page * {
    scroll-behavior: auto;
  }
}


.faq-page {
  background: var(--color-cream-warm);
}

.faq-page__intro-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.faq-page__intro-copy {
  grid-column: 2 / span 7;
  min-width: 0;
}

.faq-page__intro-copy h1 {
  max-width: 14ch;
  font-size: clamp(3rem, 5vw, 4rem);
  line-height: 1;
}

.faq-page__intro-copy > .lead {
  max-width: 62ch;
  margin-bottom: var(--space-6);
}

.faq-page__intro-note {
  display: flex;
  max-width: 62ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-top: var(--space-4);
  border-top: 2px solid var(--color-gold-aged);
}

.faq-page__intro-note p,
.faq-page__intro-note a {
  margin: 0;
}

.faq-page__anchor-link,
.faq-page__text-action {
  width: fit-content;
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.faq-page__index {
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.faq-page__index-grid,
.faq-page__two-column,
.faq-page__events-grid,
.faq-page__next-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.faq-page__index-heading {
  grid-column: span 3;
  min-width: 0;
}

.faq-page__index-heading h2 {
  max-width: 28ch;
}

.faq-page__category-list {
  display: grid;
  grid-column: span 9;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  border-top: 1px solid var(--color-border);
  border-left: 1px solid var(--color-border);
}

.faq-page__category {
  display: grid;
  grid-template-columns: minmax(2.5rem, auto) minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  min-height: 7.5rem;
  padding: var(--space-4);
  border-right: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-text);
  text-decoration: none;
  transition: background-color var(--transition-base), color var(--transition-base);
}

.faq-page__category:hover,
.faq-page__category:focus-visible {
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
}

.faq-page__category-number {
  color: var(--color-gold-aged);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
}

.faq-page__category-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-1);
}

.faq-page__category-copy strong {
  font-family: var(--font-heading);
  font-size: 1.375rem;
  line-height: 1.15;
}

.faq-page__category-copy span {
  max-width: 34ch;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.faq-page__section-heading {
  grid-column: span 4;
  min-width: 0;
}

.faq-page__section-heading h2 {
  max-width: 20ch;
}

.faq-page__section-heading p:not(.eyebrow) {
  max-width: 42ch;
}

.faq-page__accordion-list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.faq-page__two-column > .faq-page__accordion-list,
.faq-page__agenda-content {
  grid-column: span 8;
  min-width: 0;
}

.faq-page__accordion {
  min-width: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
  overflow: hidden;
}

.faq-page__accordion h3 {
  margin: 0;
  font-size: inherit;
}

.faq-page__accordion-button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: 100%;
  min-width: 0;
  min-height: 4rem;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  border: 0;
  background: transparent;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.3;
  text-align: left;
}

.faq-page__accordion-button:hover {
  background: rgb(78 107 69 / 7%);
}

.faq-page__accordion-icon {
  position: relative;
  width: 1rem;
  min-width: 1rem;
  height: 1rem;
}

.faq-page__accordion-icon::before,
.faq-page__accordion-icon::after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentcolor;
  content: "";
  transition: transform var(--transition-base);
}

.faq-page__accordion-icon::after {
  transform: rotate(90deg);
}

.faq-page__accordion-button[aria-expanded="true"] .faq-page__accordion-icon::after {
  transform: rotate(0deg);
}

.faq-page__accordion-panel {
  overflow: hidden;
}

.faq-page__accordion-answer {
  display: flex;
  max-width: 70ch;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: 0 var(--space-5) var(--space-5);
}

.faq-page__accordion-answer > * {
  margin: 0;
}

.faq-page__accordion-answer p {
  }

.faq-page__notice-inline {
  padding-left: var(--space-3);
  border-left: 3px solid var(--color-bordeaux);
  color: var(--color-bordeaux);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.faq-page__dark-inner,
.faq-page__scope-inner {
  display: flex;
  width: min(100%, 50rem);
  min-width: 0;
  margin-inline: auto;
  flex-direction: column;
  gap: var(--space-5);
}

.faq-page__dark-inner > *,
.faq-page__scope-inner > * {
  margin: 0;
}

.faq-page__dark-inner h2,
.faq-page__scope-inner h2 {
  max-width: 18ch;
}

.faq-page__dark-lead {
  max-width: 48ch;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.faq-page__accordion-list--dark {
  gap: var(--space-3);
}

.faq-page__accordion--dark {
  border-color: var(--color-border-dark);
  background: rgb(251 246 237 / 6%);
}

.faq-page__accordion--dark .faq-page__accordion-button {
  color: var(--color-cream-soft);
}

.faq-page__accordion--dark .faq-page__accordion-button:hover {
  background: rgb(251 246 237 / 8%);
}

.faq-page__accordion--dark .faq-page__accordion-answer {
  color: rgb(251 246 237 / 88%);
}

.faq-page__accordion--dark .badge-18 {
  color: var(--color-cream-soft);
  font-family: var(--font-body);
}

.faq-page__accordion--dark .faq-page__accordion-button {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.faq-page__responsibility,
.faq-page__scope-notice {
  max-width: 64ch;
  padding: var(--space-5);
  border-left: 3px solid var(--color-gold-aged);
  background: rgb(251 246 237 / 7%);
}

.faq-page__responsibility p,
.faq-page__scope-notice p {
  margin: 0;
}

.faq-page__agenda-content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.faq-page__agenda-action {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.faq-page__agenda-action p {
  margin: 0;
}

.faq-page__events-grid {
  align-items: start;
}

.faq-page__events-main {
  display: flex;
  grid-column: span 7;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.faq-page__events-main > * {
  margin: 0;
}

.faq-page__events-main h2 {
  max-width: 24ch;
}

.faq-page__events-main .faq-page__accordion-list {
  width: 100%;
}

.faq-page__accordion--editorial {
  box-shadow: var(--shadow-card);
}

.faq-page__events-next {
  max-width: 62ch;
}

.faq-page__distinction {
  display: flex;
  grid-column: 9 / span 4;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
  border: 1px solid rgb(116 59 66 / 34%);
  border-radius: var(--radius-lg);
  background: rgb(116 59 66 / 8%);
}

.faq-page__distinction > * {
  margin: 0;
}

.faq-page__distinction h3 {
  max-width: 18ch;
}

.faq-page__distinction p:not(.eyebrow) {
  max-width: 46ch;
}

.faq-page__distinction-mark {
  width: 2.5rem;
  height: 0.5rem;
  border-top: 2px solid var(--color-bordeaux);
  border-bottom: 2px solid var(--color-bordeaux);
}

.faq-page__scope-intro {
  max-width: 48ch;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.faq-page__next-grid {
  align-items: start;
}

.faq-page__next-copy {
  grid-column: span 5;
  min-width: 0;
}

.faq-page__next-copy h2 {
  max-width: 22ch;
}

.faq-page__next-copy p:not(.eyebrow) {
  max-width: 54ch;
}

.faq-page__next-actions {
  display: flex;
  grid-column: 7 / span 6;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding-top: var(--space-4);
}

.faq-page__next-actions .button {
  width: auto;
}

.faq-page__update {
  padding-block: var(--space-6);
  border-top: 1px solid var(--color-border);
  background: var(--color-cream-soft);
}

.faq-page__update-inner {
  display: flex;
  width: min(100%, 47.5rem);
  min-width: 0;
  margin-inline: auto;
  flex-direction: column;
  gap: var(--space-2);
}

.faq-page__update-inner > * {
  margin: 0;
}

.faq-page__update-inner > p:last-child {
  max-width: 70ch;
  font-size: var(--font-size-sm);
  line-height: 1.57;
}

@media (max-width: 980px) {
  .faq-page__index-grid,
  .faq-page__two-column,
  .faq-page__events-grid,
  .faq-page__next-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .faq-page__intro-copy {
    grid-column: 1 / span 8;
  }

  .faq-page__index-heading,
  .faq-page__section-heading,
  .faq-page__next-copy {
    grid-column: span 8;
  }

  .faq-page__category-list,
  .faq-page__two-column > .faq-page__accordion-list,
  .faq-page__agenda-content,
  .faq-page__events-main,
  .faq-page__next-actions {
    grid-column: span 8;
  }

  .faq-page__section-heading h2,
  .faq-page__section-heading p:not(.eyebrow) {
    max-width: 62ch;
  }

  .faq-page__distinction {
    grid-column: span 8;
  }

  .faq-page__next-actions {
    padding-top: 0;
  }
}

@media (max-width: 767px) {
  .faq-page__intro-grid,
  .faq-page__index-grid,
  .faq-page__two-column,
  .faq-page__events-grid,
  .faq-page__next-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .faq-page__intro-copy,
  .faq-page__index-heading,
  .faq-page__category-list,
  .faq-page__section-heading,
  .faq-page__two-column > .faq-page__accordion-list,
  .faq-page__agenda-content,
  .faq-page__events-main,
  .faq-page__distinction,
  .faq-page__next-copy,
  .faq-page__next-actions {
    grid-column: 1;
  }

  .faq-page__intro-copy h1 {
    max-width: 100%;
    font-size: 2.5rem;
    line-height: 1.05;
  }

  .faq-page__category-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .faq-page__category {
    min-height: 5.5rem;
    padding: var(--space-3) var(--space-4);
  }

  .faq-page__accordion-button {
    min-height: 3.5rem;
    padding: var(--space-3) var(--space-4);
    font-size: 1.125rem;
  }

  .faq-page__accordion-answer {
    padding: 0 var(--space-4) var(--space-4);
  }

  .faq-page__dark-inner,
  .faq-page__scope-inner {
    width: 100%;
  }

  .faq-page__dark-inner h2,
  .faq-page__scope-inner h2 {
    max-width: 100%;
    font-size: 2rem;
    line-height: 1.18;
  }

  .faq-page__accordion--dark .faq-page__accordion-button {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: var(--space-2);
  }

  .faq-page__responsibility,
  .faq-page__scope-notice,
  .faq-page__distinction {
    padding: var(--space-4);
  }

  .faq-page__next-actions,
  .faq-page__agenda-action {
    align-items: stretch;
  }

  .faq-page__next-actions .button,
  .faq-page__agenda-action .button {
    width: 100%;
  }
}

@media (max-width: 379px) {
  .faq-page__accordion--dark .badge-18 {
    display: none;
  }

  .faq-page__accordion--dark .faq-page__accordion-button {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .faq-page__accordion-panel[data-animating="true"] {
    transition: height var(--transition-base), opacity var(--transition-base);
  }
}


.privacy-page {
  background: var(--color-cream-warm);
}

.privacy-page a {
  font-weight: 700;
  text-decoration-thickness: 1.5px;
}

.privacy-page__intro {
  padding-bottom: var(--space-8);
}

.privacy-page__intro-grid,
.privacy-page__layout,
.privacy-page__closing-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
}

.privacy-page__intro-grid > *,
.privacy-page__layout > *,
.privacy-page__closing-grid > * {
  min-width: 0;
}

.privacy-page__document-head {
  grid-column: 4 / span 8;
  width: 100%;
  max-width: 45rem;
}

.privacy-page__document-head .lead {
  max-width: 64ch;
}

.privacy-page__effective-date {
  margin-bottom: var(--space-5);
  color: color-mix(in srgb, var(--color-text) 74%, transparent);
  font-size: var(--font-size-sm);
  font-weight: 700;
  line-height: var(--line-height-sm);
}

.privacy-page__gold-rule {
  width: 4rem;
  height: 2px;
  margin-bottom: var(--space-5);
  background: var(--color-gold-aged);
}

.privacy-page__reading-note {
  max-width: 64ch;
  margin-bottom: 0;
  padding: var(--space-4) var(--space-5);
  border-left: 3px solid var(--color-green-mangueira);
  background: rgb(251 246 237 / 65%);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.privacy-page__section {
  padding-top: var(--space-8);
  padding-bottom: var(--space-8);
}

.privacy-page__layout {
  align-items: start;
}

.privacy-page__index {
  grid-column: 1 / span 3;
  width: 100%;
  min-width: 0;
  align-self: start;
}

.privacy-page__index-nav {
  position: sticky;
  top: 7rem;
  width: 100%;
  max-width: 15rem;
  padding: var(--space-4);
  border-top: 2px solid var(--color-gold-aged);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page__index-title {
  margin-bottom: var(--space-3);
  color: var(--color-green-deep);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.privacy-page__index ol {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.privacy-page__index li {
  width: 100%;
  min-width: 0;
}

.privacy-page__index a {
  display: block;
  width: 100%;
  min-width: 0;
  padding: var(--space-1) 0;
  color: color-mix(in srgb, var(--color-text) 78%, transparent);
  font-size: var(--font-size-xs);
  font-weight: 700;
  line-height: 1.45;
  text-decoration: none;
}

.privacy-page__index a:hover,
.privacy-page__index a[aria-current="true"] {
  color: var(--color-green-deep);
  text-decoration: underline;
  text-decoration-color: var(--color-gold-aged);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.22em;
}

.privacy-page__content {
  grid-column: 4 / span 8;
  width: 100%;
  max-width: 45rem;
}

.privacy-page__content > h2 {
  scroll-margin-top: 7rem;
}

.privacy-page__topic,
.privacy-page__reservation-panel,
.privacy-page__age-panel,
.privacy-page__legal-panel,
.privacy-page__physical-panel,
.privacy-page__service-limit,
.privacy-page__security-topic,
.privacy-page__retention-note,
.privacy-page__request-panel,
.privacy-page__response-note {
  min-width: 0;
}

.privacy-page__topic + .privacy-page__topic,
.privacy-page__topic + .privacy-page__reservation-panel,
.privacy-page__reservation-panel + .privacy-page__topic,
.privacy-page__topic + .privacy-page__age-panel,
.privacy-page__topic + .privacy-page__legal-panel,
.privacy-page__topic + .privacy-page__physical-panel,
.privacy-page__physical-panel + .privacy-page__service-limit,
.privacy-page__topic + .privacy-page__security-topic,
.privacy-page__security-topic + .privacy-page__retention-note,
.privacy-page__topic + .privacy-page__request-panel,
.privacy-page__request-panel + .privacy-page__response-note {
  margin-top: var(--space-6);
}

.privacy-page__topic h3,
.privacy-page__reservation-panel h3,
.privacy-page__age-panel h3,
.privacy-page__legal-panel h3,
.privacy-page__physical-panel h3,
.privacy-page__service-limit h3,
.privacy-page__security-topic h3,
.privacy-page__retention-note h3,
.privacy-page__request-panel h3,
.privacy-page__response-note h3 {
  max-width: 36ch;
}

.privacy-page__topic > :last-child,
.privacy-page__reservation-panel > :last-child,
.privacy-page__age-panel > :last-child,
.privacy-page__legal-panel > :last-child,
.privacy-page__physical-panel > :last-child,
.privacy-page__service-limit > :last-child,
.privacy-page__security-topic > :last-child,
.privacy-page__retention-note > :last-child,
.privacy-page__request-panel > :last-child,
.privacy-page__response-note > :last-child {
  margin-bottom: 0;
}

.privacy-page__topic--presence {
  position: relative;
  padding-left: var(--space-5);
}

.privacy-page__topic-label {
  margin-bottom: var(--space-2);
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.privacy-page__topic--bordered {
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.privacy-page__example-list,
.privacy-page__context-list {
  max-width: 56ch;
}

.privacy-page__reservation-panel {
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.privacy-page__age-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
  padding: var(--space-6);
  border-top: 1px solid var(--color-gold-aged);
  border-right: 1px solid rgb(251 246 237 / 22%);
  border-bottom: 1px solid var(--color-gold-aged);
  border-left: 1px solid rgb(251 246 237 / 22%);
  border-radius: var(--radius-lg);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.privacy-page__age-panel > * {
  min-width: 0;
  margin: 0;
}

.privacy-page__age-panel-head {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
}

.privacy-page__age-panel-head > * {
  min-width: 0;
}

.privacy-page__age-panel-head p {
  color: var(--color-gold-aged);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.privacy-page__age-panel .badge-18 {
  color: var(--color-cream-soft);
}

.privacy-page__purpose h3 span {
  color: var(--color-bordeaux);
}

.privacy-page__legal-panel {
  padding: var(--space-5) var(--space-6);
  border-left: 3px solid var(--color-green-mangueira);
  background: var(--color-cream-soft);
}

.privacy-page__physical-panel {
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-top: 5px solid var(--color-wood-dark);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.privacy-page__service-limit {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
  padding: var(--space-6);
  border: 1px solid var(--color-gold-aged);
  border-radius: var(--radius-lg);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.privacy-page__service-limit > * {
  min-width: 0;
  margin: 0;
}

.privacy-page__service-limit .eyebrow {
  color: var(--color-gold-aged);
}

.privacy-page__service-limit ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-left: var(--space-5);
}

.privacy-page__service-limit li::marker {
  color: var(--color-gold-aged);
}

.privacy-page__security-topic {
  padding-left: var(--space-5);
  border-left: 2px solid var(--color-gold-aged);
}

.privacy-page__small-note {
  max-width: 60ch;
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.privacy-page__retention-note {
  max-width: 60ch;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.privacy-page__rights-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 68ch;
  padding-left: var(--space-5);
}

.privacy-page__rights-list li::marker {
  color: var(--color-gold-aged);
}

.privacy-page__request-panel {
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.privacy-page__request-panel a {
  overflow-wrap: anywhere;
}

.privacy-page__request-panel ol {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  max-width: 60ch;
  margin-bottom: 0;
}

.privacy-page__response-note {
  max-width: 62ch;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.privacy-page__closing {
  padding-top: var(--space-9);
  padding-bottom: var(--space-10);
}

.privacy-page__closing-content {
  grid-column: 4 / span 8;
  width: 100%;
  max-width: 42.5rem;
}

.privacy-page__closing-content > h2 {
  scroll-margin-top: 7rem;
}

.privacy-page__closing-content > p:not(.privacy-page__version-reference) {
  max-width: 62ch;
}

.privacy-page__version-reference {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
  margin-top: var(--space-6);
  margin-bottom: 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
  color: color-mix(in srgb, var(--color-text) 76%, transparent);
  font-size: var(--font-size-sm);
  font-weight: 700;
  line-height: var(--line-height-sm);
}

.privacy-page__version-reference span {
  width: 0.625rem;
  min-width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background: var(--color-green-mangueira);
}

@media (max-width: 1023px) {
  .privacy-page__intro-grid,
  .privacy-page__layout,
  .privacy-page__closing-grid {
    column-gap: var(--space-5);
  }

  .privacy-page__document-head,
  .privacy-page__content,
  .privacy-page__closing-content {
    grid-column: 3 / span 10;
  }

  .privacy-page__index {
    grid-column: 1 / span 2;
  }

  .privacy-page__index-nav {
    padding: var(--space-3);
  }

  .privacy-page__index a {
    font-size: 0.6875rem;
  }
}

@media (max-width: 899px) {
  .privacy-page__intro-grid,
  .privacy-page__layout,
  .privacy-page__closing-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--space-5);
  }

  .privacy-page__document-head,
  .privacy-page__content,
  .privacy-page__closing-content {
    grid-column: 1 / -1;
    max-width: 45rem;
  }

  .privacy-page__index {
    grid-column: 1 / -1;
    margin-bottom: var(--space-6);
  }

  .privacy-page__index-nav {
    position: static;
    max-width: none;
    padding: var(--space-4);
    border: 1px solid var(--color-border);
    border-top: 2px solid var(--color-gold-aged);
    border-radius: var(--radius-md);
    background: var(--color-cream-soft);
  }

  .privacy-page__index ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--space-5);
    row-gap: var(--space-2);
  }

  .privacy-page__index li {
    grid-column: span 1;
  }

  .privacy-page__index a {
    font-size: var(--font-size-xs);
  }
}

@media (max-width: 767px) {
  .privacy-page__intro {
    padding-top: var(--space-7);
    padding-bottom: var(--space-6);
  }

  .privacy-page__section {
    padding-top: var(--space-7);
    padding-bottom: var(--space-7);
  }

  .privacy-page__intro-grid,
  .privacy-page__layout,
  .privacy-page__closing-grid {
    grid-template-columns: minmax(0, 1fr);
    column-gap: 0;
  }

  .privacy-page__document-head,
  .privacy-page__content,
  .privacy-page__closing-content,
  .privacy-page__index {
    grid-column: 1;
  }

  .privacy-page__document-head h1 {
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  .privacy-page__document-head .lead,
  .privacy-page__reading-note,
  .privacy-page__closing-content > p:not(.privacy-page__version-reference) {
    max-width: none;
  }

  .privacy-page__reading-note {
    padding: var(--space-4);
  }

  .privacy-page__index {
    margin-bottom: var(--space-5);
  }

  .privacy-page__index ol {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-1);
  }

  .privacy-page__index li {
    grid-column: 1;
  }

  .privacy-page__content > h2,
  .privacy-page__closing-content > h2 {
    font-size: clamp(2rem, 9vw, 2.375rem);
    line-height: 1.08;
  }

  .privacy-page__topic h3,
  .privacy-page__reservation-panel h3,
  .privacy-page__age-panel h3,
  .privacy-page__legal-panel h3,
  .privacy-page__physical-panel h3,
  .privacy-page__service-limit h3,
  .privacy-page__security-topic h3,
  .privacy-page__retention-note h3,
  .privacy-page__request-panel h3,
  .privacy-page__response-note h3 {
    font-size: var(--font-size-card-title);
    line-height: 1.25;
  }

  .privacy-page__topic--presence,
  .privacy-page__security-topic {
    padding-left: var(--space-4);
  }

  .privacy-page__reservation-panel,
  .privacy-page__age-panel,
  .privacy-page__physical-panel,
  .privacy-page__service-limit,
  .privacy-page__request-panel {
    padding: var(--space-5);
  }

  .privacy-page__legal-panel {
    padding: var(--space-4) var(--space-5);
  }

  .privacy-page__age-panel,
  .privacy-page__service-limit {
    gap: var(--space-3);
  }

  .privacy-page__closing {
    padding-top: var(--space-7);
    padding-bottom: var(--space-8);
  }
}


.reservas-page {
  background: var(--color-cream-warm);
}

.reservas-page .section {
  scroll-margin-top: 6rem;
}

.reservas-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-6);
  align-items: center;
}

.reservas-hero__grid > * {
  min-width: 0;
  width: 100%;
}

.reservas-hero__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.reservas-hero__heading,
.reservas-hero__body {
  width: min(100%, 50ch);
  min-width: 0;
}

.reservas-hero__heading > :last-child,
.reservas-hero__body > :last-child {
  margin-bottom: 0;
}

.reservas-hero h1 {
  color: var(--color-green-deep);
  font-size: clamp(3rem, 5.5vw, 4rem);
  line-height: 1;
}

.reservas-hero__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.reservas-hero__body p,
.reservas-hero__body .cluster,
.reservas-hero__body .button-group {
  margin: 0;
}

.reservas-hero__age {
  align-items: center;
}

.reservas-hero__actions {
  align-items: flex-start;
}

.reservas-hero__media,
.reservas-hero__mobile-media {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
  background: var(--color-wood-dark);
}

.reservas-hero__media {
  aspect-ratio: 16 / 9;
}

.reservas-hero__media img,
.reservas-hero__mobile-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
}

.reservas-hero__mobile-media {
  display: none;
  aspect-ratio: 16 / 9;
}

.reservas-preparo {
  background: var(--color-cream-soft);
}

.reservas-preparo__intro {
  width: min(100%, 56ch);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.reservas-preparo__intro > :last-child {
  margin-bottom: 0;
}

.reservas-preparo__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.reservas-preparo__grid > * {
  min-width: 0;
  width: 100%;
}

.reservas-orientacao {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.reservas-orientacao__number {
  color: var(--color-green-mangueira);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

.reservas-orientacao--bordeaux .reservas-orientacao__number,
.reservas-orientacao--bordeaux h3 {
  color: var(--color-bordeaux);
}

.reservas-orientacao__content {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  gap: var(--space-3);
}

.reservas-orientacao__content > * {
  margin: 0;
}

.reservas-orientacao__content p {
  }

.reservas-orientacao__callout {
  margin-top: auto !important;
  color: var(--color-green-mangueira);
  font-size: var(--font-size-sm);
  font-weight: 800;
}

.reservas-form-section {
  background: var(--color-cream-warm);
}

.reservas-form-panel {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: var(--space-6);
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.reservas-form-panel > * {
  min-width: 0;
  width: 100%;
}

.reservas-form-panel__context {
  min-width: 0;
  padding-right: var(--space-6);
  border-right: 1px solid var(--color-border);
}

.reservas-form-panel__context > :last-child {
  margin-bottom: 0;
}

.reservas-form-panel__context p:not(.eyebrow) {
  max-width: 38ch;
}

.reservas-form {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.reservas-form__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4) var(--space-5);
}

.reservas-form__fields > *,
.reservas-form__full,
.reservas-form__footer {
  min-width: 0;
  width: 100%;
}

.reservas-field {
  min-width: 0;
}

.reservas-field label {
  display: block;
}

.reservas-field input,
.reservas-field select,
.reservas-field textarea {
  min-height: 3rem;
}

.reservas-field textarea {
  min-height: 8rem;
}

.reservas-field__hint,
.reservas-field__error {
  margin: var(--space-2) 0 0;
  font-size: var(--font-size-xs);
  line-height: var(--line-height-sm);
}

.reservas-field__hint {
  color: color-mix(in srgb, var(--color-text) 72%, transparent);
}

.reservas-field__error {
  min-height: 1.25em;
  color: var(--color-bordeaux);
  font-weight: 700;
}

.reservas-field [aria-invalid="true"] {
  border-color: var(--color-bordeaux);
}

.reservas-poker-note {
  margin: var(--space-3) 0 0;
  padding: var(--space-3) var(--space-4);
  border-left: 3px solid var(--color-gold-aged);
  background: rgb(78 107 69 / 8%);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.reservas-form__footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-3) var(--space-5);
  align-items: center;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.reservas-age-check {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-2);
}

.reservas-age-check input {
  margin-top: 0.2rem;
}

.reservas-age-check label {
  margin: 0;
}

.reservas-form__footer > .reservas-field__error,
.reservas-form__privacy,
.reservas-form__status {
  grid-column: 1 / -1;
  min-width: 0;
}

.reservas-form__footer > .reservas-field__error,
.reservas-form__privacy,
.reservas-form__status {
  margin: 0;
}

.reservas-form__privacy {
  max-width: 56ch;
  color: color-mix(in srgb, var(--color-text) 72%, transparent);
  font-size: var(--font-size-xs);
  line-height: var(--line-height-sm);
}

.reservas-form__status {
  min-height: 1.625rem;
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.reservas-submit.is-loading {
  border-color: var(--color-green-deep);
  background: var(--color-green-deep);
  opacity: 0.78;
}

.reservas-encontros__intro {
  width: min(100%, 58ch);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.reservas-encontros__intro > :last-child {
  margin-bottom: 0;
}

.reservas-encontros__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.reservas-encontros__grid > * {
  min-width: 0;
  width: 100%;
}

.reservas-encontro {
  display: flex;
  min-width: 0;
  min-height: 100%;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.reservas-encontro--restaurant,
.reservas-encontro--friends {
  grid-column: span 6;
}

.reservas-encontro--poker {
  grid-column: span 5;
  border-color: rgb(32 56 45 / 22%);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.reservas-encontro--private {
  grid-column: span 7;
}

.reservas-encontro__content {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.reservas-encontro__content > * {
  margin: 0;
}

.reservas-encontro__content p {
  }

.reservas-encontro__content a {
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.reservas-encontro--poker a {
  color: var(--color-gold-aged);
}

.reservas-encontro--poker a:hover {
  color: var(--color-cream-soft);
}

.reservas-encontro__hospitality {
  color: var(--color-bordeaux);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.2;
}

.reservas-atmosfera__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-6);
  align-items: center;
}

.reservas-atmosfera__grid > * {
  min-width: 0;
  width: 100%;
}

.reservas-atmosfera__media {
  margin: 0;
}

.reservas-atmosfera__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: var(--radius-lg);
  object-fit: cover;
  object-position: center right;
}

.reservas-atmosfera__media figcaption {
  max-width: 30ch;
}

.reservas-atmosfera__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.reservas-atmosfera__copy > * {
  margin: 0;
}

.reservas-atmosfera__copy p {
  width: min(100%, 55ch);
}

.reservas-atmosfera__link {
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  color: var(--color-bordeaux);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.reservas-poker-section {
  background: var(--color-green-deep);
}

.reservas-poker-section__intro {
  width: min(100%, 52ch);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.reservas-poker-section__intro > :last-child {
  margin-bottom: 0;
}

.reservas-poker-section__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: var(--space-6);
}

.reservas-poker-section__grid > * {
  min-width: 0;
  width: 100%;
}

.reservas-poker-item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: 0 var(--space-5);
  border-left: 1px solid rgb(251 246 237 / 22%);
}

.reservas-poker-item:first-child {
  padding-left: 0;
  border-left: 0;
}

.reservas-poker-item:last-child {
  padding-right: 0;
}

.reservas-poker-item > * {
  margin: 0;
}

.reservas-poker-item p {
  }

.reservas-poker-item__number {
  color: var(--color-gold-aged);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

.reservas-poker-item__topline {
  display: flex;
  min-width: 0;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

.reservas-poker-item--limits {
  border-left-color: var(--color-gold-aged);
}

.reservas-poker-section__action {
  width: fit-content;
}

.reservas-duvidas {
  background: var(--color-cream-soft);
}

.reservas-duvidas__column {
  width: min(100%, 50rem);
  min-width: 0;
  margin-inline: auto;
}

.reservas-duvidas__column > h2 {
  margin-bottom: var(--space-5);
}

.reservas-accordion {
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.reservas-accordion__item {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
}

.reservas-accordion__item h3 {
  margin: 0;
}

.reservas-accordion__item button {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) 0;
  border: 0;
  background: transparent;
  color: var(--color-green-deep);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.1;
  text-align: left;
}

.reservas-accordion__item button::after {
  flex: 0 0 auto;
  content: "+";
  color: var(--color-bordeaux);
  font-family: var(--font-body);
  font-size: 1.5rem;
  font-weight: 400;
}

.reservas-accordion__item button[aria-expanded="true"]::after {
  content: "−";
}

.reservas-accordion__panel {
  width: min(100%, 62ch);
  min-width: 0;
  padding: 0 0 var(--space-5);
}

.reservas-accordion__panel p {
  margin: 0;
}

.reservas-duvidas__contact {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  margin-top: var(--space-5);
  padding: var(--space-4);
  border-left: 3px solid var(--color-gold-aged);
  background: var(--color-cream-warm);
}

.reservas-duvidas__contact > * {
  min-width: 0;
  margin: 0;
}

.reservas-duvidas__contact a {
  overflow-wrap: anywhere;
  font-weight: 800;
}

.reservas-final {
  background: var(--color-cream-warm);
}

.reservas-final__panel {
  display: flex;
  width: min(100%, 62.5rem);
  min-width: 0;
  margin-inline: auto;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-8);
  border-radius: var(--radius-xl);
  background: var(--color-bordeaux);
  color: var(--color-cream-soft);
  text-align: center;
}

.reservas-final__panel > * {
  margin: 0;
}

.reservas-final__panel .eyebrow {
  color: var(--color-gold-aged);
}

.reservas-final__panel p:not(.eyebrow) {
  width: min(100%, 44ch);
}

.reservas-final__panel .button {
  margin-top: var(--space-2);
}

@media (max-width: 1023px) {
  .reservas-preparo__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .reservas-preparo__grid > :last-child {
    grid-column: 1 / -1;
  }

  .reservas-orientacao__content p {
  }

  .reservas-encontros__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .reservas-encontro--restaurant,
  .reservas-encontro--friends,
  .reservas-encontro--poker,
  .reservas-encontro--private {
    grid-column: auto;
  }
}

@media (max-width: 899px) {
  .reservas-hero__grid,
  .reservas-atmosfera__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .reservas-hero__media {
    display: none;
  }

  .reservas-hero__mobile-media {
    display: block;
    order: 2;
  }

  .reservas-hero__heading {
    order: 1;
  }

  .reservas-hero__body {
    order: 3;
  }

  .reservas-hero__copy {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .reservas-hero__heading,
  .reservas-hero__body {
    width: min(100%, 58ch);
  }

  .reservas-form-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .reservas-form-panel__context {
    padding-right: 0;
    padding-bottom: var(--space-5);
    border-right: 0;
    border-bottom: 1px solid var(--color-border);
  }

  .reservas-form-panel__context p:not(.eyebrow) {
    max-width: 58ch;
  }

  .reservas-form__fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .reservas-atmosfera__media {
    order: 1;
  }

  .reservas-atmosfera__copy {
    order: 2;
  }
}

@media (max-width: 799px) {
  .reservas-poker-section__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .reservas-poker-item,
  .reservas-poker-item:first-child,
  .reservas-poker-item:last-child {
    padding: 0 0 var(--space-5);
    border-top: 1px solid rgb(251 246 237 / 22%);
    border-left: 0;
  }

  .reservas-poker-item:first-child {
    padding-top: 0;
    border-top: 0;
  }

  .reservas-poker-item:last-child {
    padding-bottom: 0;
  }

  .reservas-poker-item p {
  }
}

@media (max-width: 679px) {
  .reservas-preparo__grid,
  .reservas-encontros__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .reservas-preparo__grid > :last-child {
    grid-column: auto;
  }

  .reservas-encontro__content p,
  .reservas-orientacao__content p {
  }
}

@media (max-width: 767px) {
  .reservas-hero h1 {
    font-size: 2.5rem;
    line-height: 1.05;
  }

  .reservas-hero__heading,
  .reservas-hero__body,
  .reservas-preparo__intro,
  .reservas-encontros__intro,
  .reservas-poker-section__intro {
    width: 100%;
  }

  .reservas-hero__actions {
    width: 100%;
  }

  .reservas-form-panel {
    padding: var(--space-5);
  }

  .reservas-form__footer {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  .reservas-submit {
    width: 100%;
  }

  .reservas-atmosfera__copy p {
    width: 100%;
  }

  .reservas-final__panel {
    width: 100%;
    padding: var(--space-6) var(--space-5);
  }

  .reservas-poker-section__action {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reservas-page {
    scroll-behavior: auto;
  }
}


.restaurante-page {
  overflow: clip;
}

.restaurante-page .button {
  min-height: 3rem;
}

.restaurante-page .restaurante-hero {
  padding-block: var(--space-7) var(--space-10);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.restaurante-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  align-items: stretch;
  gap: var(--space-6);
}

.restaurante-hero__grid > * {
  min-width: 0;
  width: 100%;
}

.restaurante-hero__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: var(--space-4);
  padding-block: var(--space-5);
}

.restaurante-hero__panel > * {
  min-width: 0;
  margin: 0;
}

.restaurante-hero__panel .eyebrow,
.restaurante-final__panel .eyebrow {
  color: var(--color-gold-aged);
}

.restaurante-hero__panel h1 {
  max-width: 13ch;
  font-size: clamp(3rem, 5.4vw, 4rem);
}

.restaurante-hero__panel .lead {
  max-width: 40ch;
}

.restaurante-hero__panel > p:not(.eyebrow):not(.lead) {
  max-width: 42ch;
}

.restaurante-hero__actions {
  margin-top: var(--space-2);
}

.restaurante-hero__actions .button {
  width: auto;
}

.restaurante-hero__media,
.restaurante-hero__mobile-media {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
}

.restaurante-hero__media {
  min-height: 31rem;
}

.restaurante-hero__media img,
.restaurante-hero__mobile-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.restaurante-hero__mobile-media {
  display: none;
}

.restaurante-stay__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-7);
}

.restaurante-stay__grid > * {
  min-width: 0;
  width: 100%;
}

.restaurante-stay__intro .lead {
  max-width: 58ch;
}

.restaurante-stay__stories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.restaurante-stay__stories > * {
  min-width: 0;
  width: 100%;
}

.restaurante-stay__story {
  max-width: 38ch;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

.restaurante-stay__story h3 {
  margin-bottom: var(--space-3);
}

.restaurante-stay__story p {
  margin-bottom: 0;
}

.restaurante-stay__number,
.restaurante-cozinha__principle > span,
.restaurante-grupos__step-number {
  display: inline-flex;
  margin-bottom: var(--space-3);
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
}

.restaurante-ambiente__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: center;
  gap: var(--space-7);
}

.restaurante-ambiente__grid > * {
  min-width: 0;
  width: 100%;
}

.restaurante-ambiente__media,
.restaurante-bebidas__media,
.restaurante-eventos__media {
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
}

.restaurante-ambiente__media {
  aspect-ratio: 4 / 3;
}

.restaurante-ambiente__media img,
.restaurante-bebidas__media img,
.restaurante-eventos__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.restaurante-ambiente__media img {
  object-position: center;
}

.restaurante-ambiente__copy {
  min-width: 0;
}

.restaurante-ambiente__copy > .lead,
.restaurante-ambiente__copy > p:not(.eyebrow):not(.lead) {
  max-width: 50ch;
}

.restaurante-ambiente__note {
  max-width: 36ch;
  margin-top: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.restaurante-ambiente__note h3,
.restaurante-ambiente__note p,
.restaurante-ambiente__agenda h3,
.restaurante-ambiente__agenda p {
  margin-bottom: var(--space-3);
}

.restaurante-ambiente__note p {
  margin-bottom: 0;
}

.restaurante-ambiente__agenda {
  max-width: 36ch;
  margin-top: var(--space-5);
}

.restaurante-ambiente__agenda a,
.restaurante-bebidas__detail a,
.restaurante-grupos__action > a:not(.button) {
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.restaurante-cozinha__intro {
  max-width: 50ch;
}

.restaurante-cozinha__intro .lead {
  max-width: 50ch;
}

.restaurante-cozinha__principles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.restaurante-cozinha__principles > * {
  min-width: 0;
  width: 100%;
}

.restaurante-cozinha__principle {
  max-width: 32ch;
  padding-top: var(--space-5);
  border-top: 1px solid rgb(251 246 237 / 30%);
}

.restaurante-cozinha__principle > span {
  color: var(--color-gold-aged);
}

.restaurante-cozinha__principle p {
  margin-bottom: 0;
}

.restaurante-cozinha__action {
  margin-top: var(--space-6);
}

.restaurante-cozinha__action .button {
  width: auto;
}

.restaurante-bebidas__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  align-items: center;
  gap: var(--space-7);
}

.restaurante-bebidas__grid > * {
  min-width: 0;
  width: 100%;
}

.restaurante-bebidas__copy > .lead,
.restaurante-bebidas__copy > p:not(.eyebrow):not(.lead) {
  max-width: 44ch;
}

.restaurante-bebidas__media {
  aspect-ratio: 3 / 2;
}

.restaurante-bebidas__media img {
  object-position: 68% center;
}

.restaurante-bebidas__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-5);
}

.restaurante-bebidas__details > * {
  min-width: 0;
  width: 100%;
}

.restaurante-bebidas__detail,
.restaurante-bebidas__responsibility {
  max-width: 34ch;
  padding: var(--space-4);
  border-radius: var(--radius-lg);
}

.restaurante-bebidas__detail {
  border: 1px solid var(--color-border);
  background: var(--color-cream-soft);
}

.restaurante-bebidas__responsibility {
  border-left: 3px solid var(--color-gold-aged);
  background: rgb(78 107 69 / 8%);
}

.restaurante-bebidas__detail h3,
.restaurante-bebidas__detail p,
.restaurante-bebidas__responsibility h3,
.restaurante-bebidas__responsibility p {
  margin-bottom: var(--space-3);
}

.restaurante-bebidas__detail a,
.restaurante-bebidas__responsibility p {
  margin-bottom: 0;
}

.restaurante-grupos__top {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr);
  align-items: end;
  gap: var(--space-5);
}

.restaurante-grupos__top > * {
  min-width: 0;
  width: 100%;
}

.restaurante-grupos__intro {
  grid-column: 1 / span 2;
}

.restaurante-grupos__intro .lead,
.restaurante-grupos__intro > p:not(.eyebrow):not(.lead) {
  max-width: 50ch;
}

.restaurante-grupos__action {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  grid-column: 3;
}

.restaurante-grupos__action > * {
  min-width: 0;
}

.restaurante-grupos__action .button {
  width: 100%;
}

.restaurante-grupos__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.restaurante-grupos__steps > * {
  min-width: 0;
  width: 100%;
}

.restaurante-grupos__step {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.restaurante-grupos__step > * {
  min-width: 0;
  margin: 0;
}

.restaurante-grupos__step p {
  }

.restaurante-eventos__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: center;
  gap: var(--space-7);
}

.restaurante-eventos__grid > * {
  min-width: 0;
  width: 100%;
}

.restaurante-eventos__opening {
  max-width: 48ch;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.restaurante-eventos__opening > *:last-child {
  margin-bottom: 0;
}

.restaurante-eventos__intentions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-5);
}

.restaurante-eventos__intentions > * {
  min-width: 0;
  width: 100%;
}

.restaurante-eventos__intentions article {
  max-width: 32ch;
  padding-top: var(--space-4);
  border-top: 2px solid var(--color-gold-aged);
}

.restaurante-eventos__intentions p {
  margin-bottom: 0;
}

.restaurante-eventos__action {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.restaurante-eventos__action > * {
  min-width: 0;
  margin: 0;
}

.restaurante-eventos__media {
  aspect-ratio: 4 / 5;
}

.restaurante-eventos__media img {
  object-position: center;
}

.restaurante-poker {
  position: relative;
}

.restaurante-poker::before,
.restaurante-poker::after {
  position: absolute;
  width: 11rem;
  height: 11rem;
  border: 1px solid rgb(177 138 74 / 34%);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.restaurante-poker::before {
  top: 3rem;
  right: -5rem;
}

.restaurante-poker::after {
  bottom: 3rem;
  left: -6rem;
}

.restaurante-poker__column {
  position: relative;
  z-index: 1;
  width: 66.666%;
  min-width: 0;
  margin-inline: auto;
}

.restaurante-poker__column > h2 {
  max-width: 18ch;
}

.restaurante-poker__lead {
  max-width: 54ch;
}

.restaurante-poker__lead h3 {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  letter-spacing: 0;
}

.restaurante-poker__lead p {
  margin-bottom: 0;
}

.restaurante-poker__guidance {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.restaurante-poker__guidance > * {
  min-width: 0;
  width: 100%;
}

.restaurante-poker__guidance article {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid rgb(251 246 237 / 25%);
  border-radius: var(--radius-lg);
}

.restaurante-poker__guidance article > * {
  min-width: 0;
  margin: 0;
}

.restaurante-poker__guidance p {
  }

.restaurante-poker__actions {
  margin-top: auto;
}

.restaurante-poker__actions .button {
  width: auto;
}

.restaurante-planeje__header {
  max-width: 60ch;
}

.restaurante-planeje__header .lead {
  max-width: 58ch;
}

.restaurante-planeje__paths {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.restaurante-planeje__paths > * {
  min-width: 0;
  width: 100%;
}

.restaurante-planeje__path {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.restaurante-planeje__path > * {
  min-width: 0;
  margin: 0;
}

.restaurante-planeje__path p {
  }

.restaurante-planeje__path .button {
  width: 100%;
  margin-top: auto;
}

.restaurante-planeje__address {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: var(--space-4);
  margin-top: var(--space-6);
  margin-bottom: 0;
  padding: var(--space-5);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.restaurante-planeje__address > * {
  min-width: 0;
}

.restaurante-planeje__address strong {
  flex: 0 0 auto;
  color: var(--color-green-deep);
}

.restaurante-planeje__address span {
  max-width: 65ch;
}

.restaurante-final {
  padding-top: 0;
}

.restaurante-final__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  width: min(100%, 62.5rem);
  margin-inline: auto;
  padding: var(--space-8);
  border: 1px solid var(--color-gold-aged);
  border-radius: var(--radius-xl);
  background: var(--color-green-mangueira);
  color: var(--color-cream-soft);
  text-align: center;
}

.restaurante-final__panel > * {
  min-width: 0;
  margin: 0;
}

.restaurante-final__panel h2 {
  max-width: 18ch;
}

.restaurante-final__panel > p:not(.eyebrow) {
  max-width: 48ch;
}

.restaurante-final__actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-2);
}

.restaurante-final__actions > * {
  min-width: 0;
}

.restaurante-final__actions .button {
  width: auto;
}

@media (max-width: 1049px) {
  .restaurante-hero__grid {
    grid-template-columns: minmax(0, 3fr) minmax(0, 5fr);
    gap: var(--space-5);
  }

  .restaurante-hero__media {
    min-height: 27rem;
  }
}

@media (max-width: 959px) {
  .restaurante-stay__grid,
  .restaurante-ambiente__grid,
  .restaurante-bebidas__grid,
  .restaurante-eventos__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .restaurante-stay__grid,
  .restaurante-ambiente__grid,
  .restaurante-bebidas__grid,
  .restaurante-eventos__grid {
    gap: var(--space-6);
  }

  .restaurante-stay__stories,
  .restaurante-cozinha__principles,
  .restaurante-grupos__steps,
  .restaurante-planeje__paths {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .restaurante-stay__story:last-child,
  .restaurante-cozinha__principle:last-child,
  .restaurante-grupos__step:last-child,
  .restaurante-planeje__path:last-child {
    grid-column: 1 / -1;
  }

  .restaurante-stay__story:last-child,
  .restaurante-cozinha__principle:last-child,
  .restaurante-grupos__step:last-child,
  .restaurante-planeje__path:last-child {
    max-width: none;
  }

  .restaurante-ambiente__media,
  .restaurante-bebidas__media {
    max-width: 50rem;
  }

  .restaurante-ambiente__copy,
  .restaurante-bebidas__copy {
    max-width: 48rem;
  }

  .restaurante-eventos__media {
    max-width: 36rem;
    aspect-ratio: 4 / 3;
  }

  .restaurante-grupos__top {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .restaurante-grupos__intro,
  .restaurante-grupos__action {
    grid-column: 1;
  }

  .restaurante-grupos__action {
    max-width: 24rem;
  }

  .restaurante-poker__column {
    width: 75%;
  }
}

@media (max-width: 819px) {
  .restaurante-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .restaurante-hero__media {
    display: none;
  }

  .restaurante-hero__mobile-media {
    display: block;
    order: 3;
    width: 100%;
    aspect-ratio: 4 / 3;
  }

  .restaurante-hero__panel {
    padding-block: 0;
  }

  .restaurante-hero__panel .lead {
    order: 4;
  }

  .restaurante-hero__panel > p:not(.eyebrow):not(.lead) {
    order: 5;
  }

  .restaurante-hero__actions {
    order: 6;
  }

  .restaurante-poker__column {
    width: 100%;
  }

  .restaurante-poker__guidance {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 639px) {
  .restaurante-page .restaurante-hero {
    padding-block: var(--space-7);
  }

  .restaurante-hero__panel h1 {
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  .restaurante-hero__actions,
  .restaurante-poker__actions {
    width: min(100%, 22.5rem);
  }

  .restaurante-hero__actions .button,
  .restaurante-poker__actions .button {
    width: 100%;
  }

  .restaurante-stay__stories,
  .restaurante-cozinha__principles,
  .restaurante-bebidas__details,
  .restaurante-grupos__steps,
  .restaurante-eventos__intentions,
  .restaurante-planeje__paths {
    grid-template-columns: minmax(0, 1fr);
  }

  .restaurante-stay__story:last-child,
  .restaurante-cozinha__principle:last-child,
  .restaurante-grupos__step:last-child,
  .restaurante-planeje__path:last-child {
    grid-column: auto;
  }

  .restaurante-stay__grid,
  .restaurante-ambiente__grid,
  .restaurante-bebidas__grid,
  .restaurante-eventos__grid {
    gap: var(--space-5);
  }

  .restaurante-ambiente__media,
  .restaurante-bebidas__media,
  .restaurante-eventos__media {
    max-width: none;
    aspect-ratio: 4 / 3;
  }

  .restaurante-ambiente__note,
  .restaurante-ambiente__agenda,
  .restaurante-bebidas__detail,
  .restaurante-bebidas__responsibility,
  .restaurante-eventos__opening {
    max-width: none;
  }

  .restaurante-cozinha__principles,
  .restaurante-grupos__steps,
  .restaurante-planeje__paths {
    margin-top: var(--space-6);
  }

  .restaurante-cozinha__principle {
    max-width: none;
  }

  .restaurante-grupos__action {
    max-width: 22.5rem;
  }

  .restaurante-eventos__intentions {
    gap: var(--space-4);
  }

  .restaurante-poker::before,
  .restaurante-poker::after {
    display: none;
  }

  .restaurante-poker__guidance article {
    padding: var(--space-4);
  }

  .restaurante-planeje__address {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-2);
    padding: var(--space-4);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
  }

  .restaurante-final__panel {
    padding: var(--space-6) var(--space-5);
  }

  .restaurante-final__actions {
    width: min(100%, 22.5rem);
  }

  .restaurante-final__actions .button {
    width: 100%;
  }
}


.cardapio-page {
  overflow: hidden;
}

.cardapio-page .cardapio-hero {
  padding-block: var(--space-8) var(--space-10);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.cardapio-page .cardapio-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  align-items: center;
  gap: var(--space-6);
}

.cardapio-page .cardapio-hero__grid > * { min-width: 0; }
.cardapio-page .cardapio-hero__panel { min-width: 380px; }
.cardapio-page .cardapio-hero__panel h1 { color: var(--color-cream-soft); }
.cardapio-page .cardapio-hero__copy { max-width: 55ch; }
.cardapio-page .cardapio-hero__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); min-width: 0; }
.cardapio-page .cardapio-hero__actions p { margin-bottom: 0; }
.cardapio-page .cardapio-hero__media { width: 100%; margin: 0; min-width: 0; }
.cardapio-page .cardapio-hero__media img { width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-xl); object-position: right center; }

.cardapio-page .cardapio-reading__grid { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 3fr); gap: 8.333%; align-items: end; }
.cardapio-page .cardapio-reading__grid > * { min-width: 0; }
.cardapio-page .cardapio-reading__main p {
  }
.cardapio-page .cardapio-reading__note { border-left: 2px solid var(--color-bordeaux); padding-left: var(--space-4); }
.cardapio-page .cardapio-reading__note p {
  font-size: var(--font-size-sm); line-height: var(--line-height-sm); }

.cardapio-page .cardapio-share { background: var(--color-cream-soft); }
.cardapio-page .cardapio-share__intro { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 3fr); gap: var(--space-6); align-items: end; margin-bottom: var(--space-7); }
.cardapio-page .cardapio-share__intro > * { min-width: 0; }
.cardapio-page .cardapio-share__heading p {
  }
.cardapio-page .cardapio-share__media { width: 100%; margin: 0; }
.cardapio-page .cardapio-share__media img { width: 100%; aspect-ratio: 4 / 3; border-radius: var(--radius-lg); object-position: center bottom; }
.cardapio-page .cardapio-share__menus { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7); }
.cardapio-page .cardapio-share__menus > * { min-width: 0; }

.cardapio-page .menu-list__items { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; }
.cardapio-page .menu-item { min-width: 0; padding-bottom: var(--space-4); border-bottom: 1px solid var(--color-border); }
.cardapio-page .menu-item:last-child { padding-bottom: 0; border-bottom: 0; }
.cardapio-page .menu-item__top { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-4); min-width: 0; }
.cardapio-page .menu-item__top > * { min-width: 0; }
.cardapio-page .menu-item h3,
.cardapio-page .menu-item h4 { margin-bottom: var(--space-2); }
.cardapio-page .menu-item h4 { font-size: var(--font-size-lead); }
.cardapio-page .menu-item__top span,
.cardapio-page .cardapio-breads__item span { flex: 0 0 auto; color: var(--color-bordeaux); font-size: var(--font-size-sm); font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cardapio-page .menu-item p { margin-bottom: 0; font-size: var(--font-size-sm); line-height: var(--line-height-sm); }

.cardapio-page .cardapio-mains__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-6); align-items: start; }
.cardapio-page .cardapio-mains__grid > * { min-width: 0; }
.cardapio-page .cardapio-mains__media { width: 100%; margin: 0; }
.cardapio-page .cardapio-mains__media img { width: 100%; aspect-ratio: 4 / 3; border-radius: var(--radius-lg); object-position: center; }
.cardapio-page .menu-list--numbered .menu-item { position: relative; padding-left: var(--space-6); }
.cardapio-page .menu-list--numbered .menu-item::before { position: absolute; top: 0; left: 0; color: var(--color-gold-aged); font-family: var(--font-heading); font-size: 1.5rem; font-weight: 600; }
.cardapio-page .menu-list--numbered .menu-item:nth-child(1)::before { content: "01"; }
.cardapio-page .menu-list--numbered .menu-item:nth-child(2)::before { content: "02"; }
.cardapio-page .menu-list--numbered .menu-item:nth-child(3)::before { content: "03"; }
.cardapio-page .cardapio-mains__aside { grid-column: 2; width: 83.333%; min-width: 0; padding: var(--space-5); border-radius: var(--radius-lg); background: var(--color-wood-dark); color: var(--color-cream-soft); }
.cardapio-page .cardapio-mains__aside p {
  margin-bottom: 0; }

.cardapio-page .cardapio-breads { background: var(--color-cream-soft); }
.cardapio-page .cardapio-breads__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
.cardapio-page .cardapio-breads__grid > * { min-width: 0; }
.cardapio-page .cardapio-breads__item { min-width: 0; padding: var(--space-5) 0; border-top: 1px solid var(--color-border); }
.cardapio-page .cardapio-breads__item p {
  margin-bottom: 0; }
.cardapio-page .cardapio-breads__quote { max-width: 52ch; margin: var(--space-6) 0 0 auto; color: var(--color-green-deep); font-family: var(--font-heading); font-size: var(--font-size-lead); font-style: italic; line-height: var(--line-height-lead); }

.cardapio-page .cardapio-sweets__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.cardapio-page .cardapio-sweets__grid > * { min-width: 0; }
.cardapio-page .cardapio-sweets__media { width: 100%; margin: 0; }
.cardapio-page .cardapio-sweets__media img { width: 100%; aspect-ratio: 3 / 2; border-radius: var(--radius-lg); object-position: center; }
.cardapio-page .cardapio-sweets__desserts h2 { grid-column: 1 / -1; }
.cardapio-page .cardapio-sweets__drinks { padding: var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-cream-soft); }

.cardapio-page .cardapio-cocktails__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-6); align-items: center; }
.cardapio-page .cardapio-cocktails__grid > * { min-width: 0; }
.cardapio-page .cardapio-cocktails__media { width: 100%; margin: 0; }
.cardapio-page .cardapio-cocktails__media img { width: 100%; aspect-ratio: 3 / 2; border-radius: var(--radius-lg); object-position: center right; }
.cardapio-page .cardapio-cocktails__panel { min-width: 430px; padding: var(--space-7); border-radius: var(--radius-xl); background: var(--color-wine-dark); }
.cardapio-page .menu-list--dark .menu-item { border-color: rgb(251 246 237 / 25%); }
.cardapio-page .menu-list--dark .menu-item__top span { color: var(--color-gold-aged); }
.cardapio-page .cardapio-cocktails__responsible { max-width: 52ch; margin: var(--space-5) 0 0; padding-top: var(--space-4); border-top: 1px solid rgb(251 246 237 / 25%); font-size: var(--font-size-sm); line-height: var(--line-height-sm); }

.cardapio-page .cardapio-reserve { background: var(--color-cream-soft); }
.cardapio-page .cardapio-reserve__panel { display: flex; width: 66.667%; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); margin-inline: auto; padding: var(--space-7); border: 1px solid var(--color-border); border-radius: var(--radius-xl); background: var(--color-surface-raised); box-shadow: var(--shadow-card); }
.cardapio-page .cardapio-reserve__panel > * { min-width: 0; margin-bottom: 0; }
.cardapio-page .cardapio-reserve__panel > p:not(.eyebrow):not(.meta) { max-width: 52ch; }
.cardapio-page .cardapio-reserve__panel .meta { max-width: 58ch; }

.cardapio-page .cardapio-poker__header { width: 50%; min-width: 0; }
.cardapio-page .cardapio-poker__header p {
  }
.cardapio-page .cardapio-poker__accordions { display: flex; width: 66.667%; min-width: 0; flex-direction: column; gap: var(--space-3); margin: var(--space-7) auto 0; }
.cardapio-page .poker-accordion { min-width: 0; border: 1px solid rgb(251 246 237 / 28%); border-radius: var(--radius-md); overflow: hidden; }
.cardapio-page .poker-accordion h3 { margin: 0; font-size: inherit; }
.cardapio-page .poker-accordion button { display: flex; width: 100%; min-width: 0; min-height: 3.25rem; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4); border: 0; background: transparent; color: var(--color-cream-soft); font-family: var(--font-body); font-size: var(--font-size-base); font-weight: 800; line-height: 1.4; text-align: left; }
.cardapio-page .poker-accordion button > span:last-child { flex: 0 0 auto; color: var(--color-gold-aged); font-size: 1.5rem; font-weight: 400; transition: transform var(--transition-fast); }
.cardapio-page .poker-accordion button[aria-expanded="true"] > span:last-child { transform: rotate(45deg); }
.cardapio-page .poker-accordion__panel { max-width: 68ch; padding: 0 var(--space-4) var(--space-4); }
.cardapio-page .poker-accordion__panel p { margin-bottom: 0; }
.cardapio-page .poker-accordion--responsible { border-color: var(--color-bordeaux); }
.cardapio-page .poker-accordion--responsible .badge-18 { flex: 0 0 auto; margin-right: auto; color: var(--color-gold-aged); }

.cardapio-page .cardapio-responsibility__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 8.333%; align-items: start; }
.cardapio-page .cardapio-responsibility__grid > * { min-width: 0; }
.cardapio-page .cardapio-responsibility__principles > p {
  }
.cardapio-page .cardapio-responsibility__principles ol { max-width: 64ch; padding-left: var(--space-5); }
.cardapio-page .cardapio-responsibility__principles li { margin-bottom: var(--space-3); }
.cardapio-page .cardapio-responsibility__notice { padding: var(--space-5); border-radius: var(--radius-lg); background: var(--color-wood-dark); color: var(--color-cream-soft); }
.cardapio-page .cardapio-responsibility__notice p {
  }
.cardapio-page .cardapio-responsibility__notice a { color: var(--color-cream-soft); }

@media (max-width: 980px) {
  .cardapio-page .cardapio-breads__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 920px) {
  .cardapio-page .cardapio-hero__grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .cardapio-page .cardapio-hero__panel { min-width: 0; order: 1; }
  .cardapio-page .cardapio-hero__media { order: 2; }
  .cardapio-page .cardapio-hero__copy { max-width: 55ch; }
}

@media (max-width: 900px) {
  .cardapio-page .cardapio-mains__grid { grid-template-columns: 1fr; }
  .cardapio-page .cardapio-mains__aside { grid-column: auto; width: 100%; }
  .cardapio-page .cardapio-sweets__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cardapio-page .cardapio-sweets__media { grid-column: 1 / -1; }
  .cardapio-page .cardapio-cocktails__grid { grid-template-columns: 1fr; }
  .cardapio-page .cardapio-cocktails__panel { min-width: 0; }
  .cardapio-page .cardapio-poker__header { width: 75%; }
  .cardapio-page .cardapio-poker__accordions { width: 100%; }
}

@media (max-width: 860px) {
  .cardapio-page .cardapio-share__menus { grid-template-columns: 1fr; gap: var(--space-6); }
}

@media (max-width: 840px) {
  .cardapio-page .cardapio-responsibility__grid { grid-template-columns: 1fr; gap: var(--space-6); }
}

@media (max-width: 820px) {
  .cardapio-page .cardapio-reading__grid { grid-template-columns: 1fr; gap: var(--space-5); }
  .cardapio-page .cardapio-reading__note { border-top: 1px solid var(--color-border); border-left: 0; padding: var(--space-4) 0 0; }
  .cardapio-page .cardapio-reading__note p {
  }
}

@media (max-width: 767px) {
  .cardapio-page .cardapio-hero { padding-block: var(--space-7); }
  .cardapio-page .cardapio-hero__panel { display: flex; flex-direction: column; gap: var(--space-4); }
  .cardapio-page .cardapio-hero__panel > * { margin-bottom: 0; }
  .cardapio-page .cardapio-hero__media img { aspect-ratio: 4 / 3; object-position: center; }
  .cardapio-page .cardapio-share__intro { grid-template-columns: 1fr; gap: var(--space-5); }
  .cardapio-page .cardapio-share__heading { order: 1; }
  .cardapio-page .cardapio-share__media { order: 2; }
  .cardapio-page .cardapio-breads__grid,
  .cardapio-page .cardapio-sweets__grid { grid-template-columns: 1fr; }
  .cardapio-page .cardapio-sweets__media { grid-column: auto; }
  .cardapio-page .cardapio-breads__quote { margin-left: 0; }
  .cardapio-page .cardapio-cocktails__panel { padding: var(--space-5); }
  .cardapio-page .cardapio-reserve__panel { width: 100%; padding: var(--space-5); }
  .cardapio-page .cardapio-poker__header { width: 100%; }
  .cardapio-page .cardapio-poker__accordions { margin-top: var(--space-6); }
}

@media (max-width: 640px) {
  .cardapio-page .menu-item__top { gap: var(--space-3); }
  .cardapio-page .cardapio-breads__item { padding-block: var(--space-4); }
}

@media (prefers-reduced-motion: reduce) {
  .cardapio-page .poker-accordion button > span:last-child { transition: none; }
}


.galeria-page {
  background: var(--color-cream-warm);
}

.galeria-page .button:focus-visible,
.galeria-page .galeria-filter:focus-visible,
.galeria-page .galeria-expand:focus-visible,
.galeria-page .galeria-legend__item:focus-visible,
.galeria-page .galeria-lightbox__close:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 3px;
}

.galeria-hero {
  padding-block: var(--space-7);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.galeria-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  min-height: 35rem;
}

.galeria-hero__grid > * {
  min-width: 0;
  width: 100%;
}

.galeria-hero__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: var(--space-4);
  padding: var(--space-7) 0;
}

.galeria-hero__content h1,
.galeria-hero__content p {
  margin: 0;
}

.galeria-hero__content h1 {
  max-width: 12ch;
  font-size: clamp(3rem, 5.2vw, 4rem);
}

.galeria-hero__lead {
  max-width: 44ch;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.galeria-hero__support {
  max-width: 42ch;
  color: rgb(251 246 237 / 82%);
}

.galeria-hero__actions {
  margin-top: var(--space-2);
}

.galeria-hero__media {
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
  border: 1px solid var(--color-border-dark);
}

.galeria-hero__media img {
  width: 100%;
  height: 100%;
  min-height: 31rem;
  object-fit: cover;
  object-position: 65% center;
}

.galeria-reading__intro {
  width: min(100%, 43.75rem);
}

.galeria-reading__intro p:last-child {
  margin-bottom: 0;
}

.galeria-reading__notes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.galeria-reading__notes > * {
  min-width: 0;
}

.galeria-note {
  min-width: 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

.galeria-note h3,
.galeria-note p {
  margin: 0;
}

.galeria-note {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.galeria-note--material {
  border-top: 2px solid var(--color-gold-aged);
}

.galeria-note--quiet {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.galeria-filters {
  background: var(--color-cream-soft);
  border-block: 1px solid var(--color-border);
}

.galeria-filters__inner {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5) var(--space-5);
}

.galeria-filters__heading {
  grid-column: span 6;
  min-width: 0;
}

.galeria-filters__heading h2,
.galeria-filters__heading p {
  margin-bottom: var(--space-3);
}

.galeria-filters__heading p:last-child {
  max-width: 52ch;
  margin-bottom: 0;
}

.galeria-filters__controls {
  grid-column: 1 / -1;
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.galeria-filter {
  min-width: 8.75rem;
  min-height: 2.75rem;
  padding: 0.625rem var(--space-4);
  border: 1px solid var(--color-bordeaux);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-bordeaux);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-transform: uppercase;
  transition: background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
}

.galeria-filter:hover,
.galeria-filter[aria-pressed="true"] {
  border-color: var(--color-green-deep);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.galeria-filter:active {
  transform: translateY(1px);
}

.galeria-filters__status {
  grid-column: 1 / -1;
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-3) var(--space-5);
}

.galeria-filters__status p {
  margin: 0;
}

.galeria-filters__help {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.galeria-food__top {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: var(--space-6);
  align-items: center;
}

.galeria-food__top > *,
.galeria-food__pieces > *,
.galeria-night__grid > *,
.galeria-poker__grid > * {
  min-width: 0;
  width: 100%;
}

.galeria-food__intro {
  max-width: 54ch;
}

.galeria-food__intro p:last-child {
  margin-bottom: 0;
}

.galeria-feature-media,
.galeria-piece figure,
.galeria-night__media,
.galeria-poker__media {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: var(--color-wood-dark);
}

.galeria-feature-media img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center;
}

.galeria-food__pieces {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.galeria-piece {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.galeria-piece figure img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.galeria-piece:first-child figure img {
  object-position: center;
}

.galeria-piece--food figure img {
  object-position: center center;
}

.galeria-piece__copy {
  max-width: 40ch;
}

.galeria-piece__copy p:last-child {
  margin-bottom: 0;
}

.galeria-page figcaption {
  padding: var(--space-3) var(--space-4);
  margin: 0;
  background: var(--color-cream-soft);
  color: var(--color-text);
}

.galeria-page figcaption span {
  display: block;
  margin-bottom: var(--space-1);
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.galeria-expand {
  position: absolute;
  right: var(--space-3);
  top: var(--space-3);
  min-height: 2.75rem;
  padding: 0.625rem var(--space-3);
  border: 1px solid rgb(251 246 237 / 75%);
  border-radius: var(--radius-md);
  background: rgb(32 56 45 / 88%);
  color: var(--color-cream-soft);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-transform: uppercase;
  transition: background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);
}

.galeria-expand:hover {
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
}

.galeria-expand:active {
  transform: translateY(1px);
}

.galeria-night {
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.galeria-night__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-6);
  align-items: center;
}

.galeria-night__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.galeria-night__copy h2,
.galeria-night__copy > p,
.galeria-night__copy .eyebrow {
  margin: 0;
}

.galeria-night__copy > p {
  }

.galeria-night__notes {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  margin-top: var(--space-2);
}

.galeria-night__notes > * {
  min-width: 0;
  max-width: 36ch;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border-dark);
}

.galeria-night__notes h3,
.galeria-night__notes p,
.galeria-night__notes .eyebrow {
  margin: 0;
}

.galeria-night__notes > * {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.galeria-night__media {
  border: 1px solid rgb(251 246 237 / 20%);
  border-radius: var(--radius-xl);
  box-shadow: inset 0 0 0 0.5rem var(--color-wood-dark);
}

.galeria-night__media img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: 72% center;
}

.galeria-night__media figcaption {
  background: var(--color-cream-soft);
}

.galeria-text-link {
  display: inline-block;
  width: fit-content;
  color: inherit;
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.galeria-night .galeria-text-link {
  color: var(--color-gold-aged);
}

.galeria-poker__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: center;
}

.galeria-poker__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.galeria-poker__heading {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  max-width: 50ch;
}

.galeria-poker__heading h2,
.galeria-poker__heading p {
  margin: 0;
}

.galeria-poker__principles {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.galeria-poker__principles > * {
  min-width: 0;
}

.galeria-poker__notice {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 50ch;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.galeria-poker__guide {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  max-width: 50ch;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

.galeria-poker__notice h3,
.galeria-poker__notice p,
.galeria-poker__guide h3,
.galeria-poker__guide p {
  margin: 0;
}

.galeria-poker__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
}

.galeria-legend {
  background: var(--color-cream-soft);
  border-block: 1px solid var(--color-border);
}

.galeria-legend__heading {
  width: min(100%, 44ch);
}

.galeria-legend__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 var(--space-5);
  margin-top: var(--space-6);
}

.galeria-legend__item {
  display: flex;
  min-width: 0;
  min-height: 11rem;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--space-3);
  padding: var(--space-5) 0;
  border: 0;
  border-top: 1px solid var(--color-border);
  background: transparent;
  color: var(--color-text);
  text-align: left;
}

.galeria-legend__item span {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-green-deep);
  font-family: var(--font-heading);
  font-size: var(--font-size-card-title);
  font-weight: 600;
  line-height: var(--line-height-heading);
}

.galeria-legend__item p {
  margin: 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.galeria-legend__item:hover span {
  color: var(--color-bordeaux);
}

.galeria-legend__item .badge-18 {
  color: var(--color-bordeaux);
  font-family: var(--font-body);
  font-size: 0.625rem;
}

.galeria-plan__heading {
  width: min(100%, 48ch);
}

.galeria-plan__choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.galeria-plan__choice {
  display: flex;
  min-width: 0;
  min-height: 22rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border-radius: var(--radius-xl);
}

.galeria-plan__choice h3,
.galeria-plan__choice p {
  margin: 0;
}

.galeria-plan__choice p {
  }

.galeria-plan__choice .button {
  margin-top: auto;
}

.galeria-plan__choice--restaurant {
  border: 1px solid var(--color-border);
  background: var(--color-cream-soft);
}

.galeria-plan__choice--agenda {
  border: 1px solid var(--color-border-dark);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.galeria-plan__choice--agenda .badge-18 {
  color: var(--color-gold-aged);
}

.galeria-disclosure {
  border-top: 1px solid var(--color-border);
  background: var(--color-cream-soft);
}

.galeria-disclosure__content {
  width: min(100%, 50rem);
  margin-inline: auto;
}

.galeria-disclosure__content > h2 {
  margin-bottom: var(--space-5);
}

.galeria-disclosure__item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  padding: var(--space-4) 0;
  border-top: 1px solid var(--color-border);
}

.galeria-disclosure__item h3,
.galeria-disclosure__item p {
  margin: 0;
}

.galeria-disclosure__item p {
  font-size: var(--font-size-sm);
  line-height: 1.5;
}

.galeria-gallery-item[hidden] {
  display: none !important;
}

.galeria-lightbox {
  width: min(92vw, 68rem);
  max-height: 92vh;
  padding: 0;
  border: 0;
  border-radius: var(--radius-xl);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
  box-shadow: var(--shadow-modal);
}

.galeria-lightbox::backdrop {
  background: rgb(29 33 29 / 78%);
}

.galeria-lightbox__inner {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-4);
}

.galeria-lightbox__close {
  align-self: flex-end;
  min-height: 2.75rem;
  padding: 0.625rem var(--space-3);
  border: 1px solid rgb(251 246 237 / 70%);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-cream-soft);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-transform: uppercase;
}

.galeria-lightbox__close:hover {
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
}

.galeria-lightbox__image {
  width: 100%;
  max-height: 70vh;
  object-fit: contain;
}

.galeria-lightbox__caption {
  margin: 0;
  padding: 0 var(--space-2) var(--space-2);
}

@media (max-width: 1180px) {
  .galeria-hero__grid {
    gap: var(--space-4);
    min-height: 31.25rem;
  }

  .galeria-hero__media img {
    min-height: 27rem;
  }
}

@media (max-width: 980px) {
  .galeria-reading__notes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .galeria-reading__notes > :first-child {
    grid-column: 1 / -1;
  }

  .galeria-food__top {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .galeria-food__intro {
    max-width: 54ch;
  }

  .galeria-night__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .galeria-night__media {
    grid-row: 1;
  }

  .galeria-night__copy {
    grid-row: 2;
  }
}

@media (max-width: 920px) {
  .galeria-hero__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 0;
  }

  .galeria-hero__content {
    padding: var(--space-6) 0;
  }

  .galeria-hero__media img {
    min-height: 27rem;
  }

  .galeria-poker__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .galeria-poker__media {
    grid-row: 1;
  }

  .galeria-poker__content {
    grid-row: 2;
  }

  .galeria-poker__heading,
  .galeria-poker__notice,
  .galeria-poker__guide {
    max-width: 50ch;
  }
}

@media (max-width: 800px) {
  .galeria-filters__inner {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .galeria-filters__heading {
    grid-column: 1 / -1;
  }

  .galeria-food__pieces {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .galeria-legend__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .galeria-plan__choices {
    grid-template-columns: minmax(0, 1fr);
  }

  .galeria-plan__choice {
    min-height: 0;
  }
}

@media (max-width: 767px) {
  .galeria-hero {
    padding-block: var(--space-5);
  }

  .galeria-hero__grid {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .galeria-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
    padding: var(--space-6) var(--space-5);
    border-radius: var(--radius-xl) var(--radius-xl) 0 0;
  }

  .galeria-hero__content h1 {
    max-width: 100%;
    font-size: 2.5rem;
    line-height: 1.05;
  }

  .galeria-hero__lead,
  .galeria-hero__support {
    max-width: 100%;
  }

  .galeria-hero__media {
    order: 2;
    border-radius: 0 0 var(--radius-xl) var(--radius-xl);
  }

  .galeria-hero__media img {
    min-height: 0;
    aspect-ratio: 4 / 3;
    object-position: center;
  }

  .galeria-hero__actions {
    width: 100%;
    margin-top: 0;
  }

  .galeria-reading__notes,
  .galeria-food__pieces,
  .galeria-legend__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .galeria-reading__notes > :first-child {
    grid-column: auto;
  }

  .galeria-reading__notes {
    gap: var(--space-4);
    margin-top: var(--space-6);
  }

  .galeria-filters__controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-3);
  }

  .galeria-filter {
    width: 100%;
    min-width: 0;
  }

  .galeria-food__pieces {
    gap: var(--space-6);
  }

  .galeria-piece {
    gap: var(--space-4);
  }

  .galeria-piece__copy,
  .galeria-food__intro {
    max-width: 100%;
  }

  .galeria-feature-media img,
  .galeria-piece figure img,
  .galeria-night__media img,
  .galeria-poker__media img {
    aspect-ratio: 4 / 3;
  }

  .galeria-night__media img {
    object-position: 65% center;
  }

  .galeria-night__copy > p,
  .galeria-night__notes > * {
    max-width: 100%;
  }

  .galeria-night__notes {
    gap: var(--space-4);
  }

  .galeria-poker__heading,
  .galeria-poker__notice,
  .galeria-poker__guide {
    max-width: 100%;
  }

  .galeria-legend__grid {
    margin-top: var(--space-5);
  }

  .galeria-legend__item {
    min-height: 0;
    padding: var(--space-5) 0;
  }

  .galeria-plan__choice {
    padding: var(--space-5);
  }

  .galeria-disclosure__content {
    width: 100%;
  }
}

@media (max-width: 359px) {
  .galeria-filters__controls {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .galeria-filter,
  .galeria-expand {
    transition: none;
  }
}


#eventos-page { overflow: hidden; }
#eventos-page .eventos-hero { padding-block: var(--space-8); background: var(--color-green-deep); color: var(--color-cream-soft); }
#eventos-page .eventos-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-6); align-items: center; }
#eventos-page .eventos-hero__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-hero__panel { display: flex; flex-direction: column; min-width: 0; gap: var(--space-4); padding: var(--space-6); border-radius: var(--radius-lg); background: rgb(29 33 29 / 20%); }
#eventos-page .eventos-hero__panel > * { min-width: 0; margin: 0; }
#eventos-page .eventos-hero__panel .lead { max-width: 54ch; }
#eventos-page .eventos-hero__panel::after { display: block; width: 4rem; height: 1px; background: var(--color-gold-aged); content: ""; order: -1; }
#eventos-page .eventos-hero__actions { display: flex; flex-direction: column; gap: var(--space-3); align-items: flex-start; min-width: 0; }
#eventos-page .eventos-hero__actions > * { min-width: 0; margin: 0; }
#eventos-page .eventos-hero .meta { max-width: 50ch; color: rgb(251 246 237 / 78%); }
#eventos-page .eventos-hero__media { width: 100%; min-width: 0; margin: var(--space-4) 0 0; overflow: hidden; border-radius: var(--radius-xl); }
#eventos-page .eventos-hero__media img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-position: 68% center; }
#eventos-page .eventos-occasions__intro { width: min(100%, 62ch); min-width: 0; }
#eventos-page .eventos-occasions__intro .lead { max-width: 62ch; }
#eventos-page .eventos-occasions__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5) var(--space-6); margin-top: var(--space-7); }
#eventos-page .eventos-occasions__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-occasion { min-width: 0; padding: var(--space-4) 0; border-top: 1px solid var(--color-border); }
#eventos-page .eventos-occasion__number, #eventos-page .eventos-plan > span, #eventos-page .eventos-step__number { margin-bottom: var(--space-3); color: var(--color-bordeaux); font-size: var(--font-size-xs); font-weight: 800; letter-spacing: .08em; }
#eventos-page .eventos-occasion h3 { max-width: 20ch; }
#eventos-page .eventos-occasion p:not(.eventos-occasion__number) { max-width: 34ch; }
#eventos-page .eventos-occasion--poker { padding: var(--space-5); border: 0; border-radius: var(--radius-lg); background: var(--color-green-deep); color: var(--color-cream-soft); }
#eventos-page .eventos-occasion--poker .eventos-occasion__number { color: var(--color-gold-aged); }
#eventos-page .eventos-occasion__poker-top { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
#eventos-page .eventos-occasion__poker-top > * { min-width: 0; margin: 0; }
#eventos-page .eventos-table { background: var(--color-cream-soft); }
#eventos-page .eventos-table__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-8); align-items: start; }
#eventos-page .eventos-table__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-table__media { margin: 0; overflow: hidden; border-radius: var(--radius-xl); }
#eventos-page .eventos-table__media img { width: 100%; aspect-ratio: 4 / 5; object-position: center 60%; }
#eventos-page .eventos-table__content { min-width: 0; }
#eventos-page .eventos-table__content > .lead { max-width: 60ch; }
#eventos-page .eventos-pillars { display: grid; grid-template-columns: 1fr; gap: var(--space-4); margin-top: var(--space-6); }
#eventos-page .eventos-pillars > * { min-width: 0; width: 100%; }
#eventos-page .eventos-pillar { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); border-radius: var(--radius-md); }
#eventos-page .eventos-pillar > * { min-width: 0; }
#eventos-page .eventos-pillar span { color: var(--color-gold-aged); font-weight: 800; }
#eventos-page .eventos-pillar h3, #eventos-page .eventos-pillar p { margin: 0; }
#eventos-page .eventos-pillar div { display: flex; flex-direction: column; gap: var(--space-2); }
#eventos-page .eventos-pillar p {
  }
#eventos-page .eventos-planning__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: start; }
#eventos-page .eventos-planning__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-planning__intro .lead { max-width: 55ch; }
#eventos-page .eventos-planning__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
#eventos-page .eventos-planning__list > * { min-width: 0; width: 100%; }
#eventos-page .eventos-plan { min-width: 0; padding: var(--space-4); border-top: 1px solid var(--color-border); }
#eventos-page .eventos-plan h3 { font-size: clamp(1.35rem, 2vw, 1.5rem); }
#eventos-page .eventos-plan p {
  }
#eventos-page .eventos-plan--poker { border: 1px solid var(--color-green-mangueira); border-radius: var(--radius-md); }
#eventos-page .eventos-plan__head { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
#eventos-page .eventos-plan__head > * { min-width: 0; }
#eventos-page .eventos-poker { position: relative; }
#eventos-page .eventos-poker__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 2fr) minmax(0, 3fr); gap: var(--space-5); }
#eventos-page .eventos-poker__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-poker__statement .lead { max-width: 64ch; }
#eventos-page .eventos-poker__age { display: flex; justify-content: flex-end; align-items: start; }
#eventos-page .eventos-poker__age > * { min-width: 0; }
#eventos-page .eventos-poker__age .badge-18 { min-height: 3rem; padding-inline: 1rem; color: var(--color-gold-aged); font-size: var(--font-size-sm); }
#eventos-page .eventos-poker__details { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-3); }
#eventos-page .eventos-poker__details > * { min-width: 0; width: 100%; }
#eventos-page .eventos-poker__details article { padding-top: var(--space-5); border-top: 1px solid var(--color-border-dark); }
#eventos-page .eventos-poker__details p {
  }
#eventos-page .eventos-poker__responsibility { padding: var(--space-5); border: 0 !important; border-radius: var(--radius-lg); background: var(--color-cream-soft); color: var(--color-text); }
#eventos-page .eventos-process__intro { width: min(100%, 58ch); margin-inline: auto; text-align: center; }
#eventos-page .eventos-process__intro .lead { max-width: 58ch; margin-inline: auto; }
#eventos-page .eventos-process__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-top: var(--space-7); }
#eventos-page .eventos-process__steps > * { min-width: 0; width: 100%; padding: var(--space-4) var(--space-5); }
#eventos-page .eventos-process__steps > * + * { border-left: 1px solid var(--color-border); }
#eventos-page .eventos-process__steps p:not(.eventos-step__number) { max-width: 35ch; }
#eventos-page .eventos-step__number { color: var(--color-gold-aged); font-size: 2rem; font-family: var(--font-heading); }
#eventos-page .eventos-atmosphere__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); }
#eventos-page .eventos-atmosphere__layout > * { min-width: 0; }
#eventos-page .eventos-atmosphere__layout h2 { grid-column: 1 / -1; }
#eventos-page .eventos-atmosphere__media { grid-column: 2 / span 10; width: 100%; margin: 0; }
#eventos-page .eventos-atmosphere__media img { width: 100%; aspect-ratio: 3 / 2; border-radius: var(--radius-lg); object-position: center; }
#eventos-page .eventos-atmosphere__media figcaption { width: min(100%, 50ch); margin: var(--space-4) 0 0 auto; padding: var(--space-4); border-radius: var(--radius-md); background: var(--color-cream-soft); }
#eventos-page .eventos-faq__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr); gap: var(--space-5); align-items: start; }
#eventos-page .eventos-faq__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-faq__intro { grid-column: 1; }
#eventos-page .eventos-faq__intro .lead { max-width: 38ch; }
#eventos-page .eventos-faq__list { grid-column: 3; border-left: 3px solid var(--color-bordeaux); }
#eventos-page .eventos-faq__item { border-bottom: 1px solid var(--color-border); }
#eventos-page .eventos-faq__item h3 { margin: 0; font-family: var(--font-body); font-size: var(--font-size-base); letter-spacing: 0; }
#eventos-page .eventos-faq__item button { display: grid; grid-template-columns: minmax(0, 1fr) 2rem; width: 100%; min-height: 3.5rem; gap: var(--space-3); align-items: center; padding: var(--space-4); border: 0; background: transparent; color: var(--color-text); font-weight: 800; text-align: left; }
#eventos-page .eventos-faq__item button span { font-size: 1.5rem; font-weight: 400; text-align: center; transition: transform var(--transition-fast); }
#eventos-page .eventos-faq__item button[aria-expanded="true"] span { transform: rotate(45deg); }
#eventos-page .eventos-faq__item [role="region"] { padding: 0 var(--space-4) var(--space-4); }
#eventos-page .eventos-faq__item [role="region"] p {
  margin: 0; }
#eventos-page .eventos-form-section { background: var(--color-wood-dark); color: var(--color-cream-soft); }
#eventos-page .eventos-form-section__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr); gap: var(--space-5); align-items: start; }
#eventos-page .eventos-form-section__grid > * { min-width: 0; width: 100%; }
#eventos-page .eventos-form-section__intro { grid-column: 1; }
#eventos-page .eventos-form-section__intro .lead { max-width: 56ch; }
#eventos-page .eventos-form { grid-column: 3; display: flex; flex-direction: column; min-width: 0; gap: var(--space-5); padding: var(--space-6); border-radius: var(--radius-xl); background: var(--color-cream-soft); color: var(--color-text); box-shadow: var(--shadow-card); }
#eventos-page .eventos-form > * { min-width: 0; margin: 0; }
#eventos-page .eventos-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
#eventos-page .eventos-form__fields > * { min-width: 0; width: 100%; }
#eventos-page .eventos-field { display: flex; flex-direction: column; min-width: 0; gap: var(--space-1); }
#eventos-page .eventos-field > * { min-width: 0; margin: 0; }
#eventos-page .eventos-field--full { grid-column: 1 / -1; }
#eventos-page .eventos-error { min-height: 1.25rem; color: var(--color-bordeaux); font-size: var(--font-size-sm); line-height: var(--line-height-sm); }
#eventos-page .eventos-field [aria-invalid="true"] { border-color: var(--color-bordeaux); }
#eventos-page .eventos-poker-fieldset { display: flex; flex-direction: column; min-width: 0; gap: var(--space-3); margin: 0; border-color: var(--color-green-mangueira); }
#eventos-page .eventos-poker-fieldset > * { min-width: 0; margin: 0; }
#eventos-page .eventos-check { display: grid; grid-template-columns: 1rem minmax(0, 1fr); gap: var(--space-3); align-items: start; }
#eventos-page .eventos-check > * { min-width: 0; margin: 0; }
#eventos-page .eventos-poker-context { display: flex; flex-direction: column; gap: var(--space-2); }
#eventos-page .eventos-poker-context > * { min-width: 0; margin: 0; }
#eventos-page .eventos-form__submit { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
#eventos-page .eventos-form__submit > * { min-width: 0; margin: 0; }
#eventos-page .eventos-form__submit .meta { max-width: 55ch; }
#eventos-page .eventos-form__status { min-height: 1.5rem; padding: 0; font-weight: 700; }
#eventos-page .eventos-form__status.is-success { padding: var(--space-3); border-radius: var(--radius-sm); background: rgb(78 107 69 / 12%); color: var(--color-green-deep); }
#eventos-page .eventos-form__status.is-error { padding: var(--space-3); border-radius: var(--radius-sm); background: rgb(116 59 66 / 10%); color: var(--color-wine-dark); }
#eventos-page .eventos-closing { padding-top: var(--space-8); }
#eventos-page .eventos-closing__panel { display: flex; flex-direction: column; align-items: center; width: min(100%, 8 / 12 * 100%); min-width: 0; gap: var(--space-4); margin-inline: auto; padding: var(--space-7); border-radius: var(--radius-xl); background: var(--color-bordeaux); color: var(--color-cream-soft); text-align: center; }
#eventos-page .eventos-closing__panel > * { min-width: 0; margin: 0; }
#eventos-page .eventos-closing__panel::before { display: block; width: 4rem; height: 1px; background: var(--color-gold-aged); content: ""; }
#eventos-page .eventos-closing__panel p {
  }

@media (max-width: 980px) { #eventos-page .eventos-hero__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } #eventos-page .eventos-hero__panel { padding: var(--space-5); } #eventos-page .eventos-hero h1 { font-size: clamp(2.75rem, 6vw, 3.5rem); } }
@media (max-width: 960px) { #eventos-page .eventos-table__grid { grid-template-columns: 1fr; gap: var(--space-6); } #eventos-page .eventos-table__media img { aspect-ratio: 16 / 7; object-position: center 60%; } #eventos-page .eventos-pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); } #eventos-page .eventos-pillars > :last-child { grid-column: 1 / -1; } }
@media (max-width: 900px) { #eventos-page .eventos-occasions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } #eventos-page .eventos-poker__grid { grid-template-columns: minmax(0, 6fr) minmax(0, 2fr); } #eventos-page .eventos-poker__details { grid-column: 1 / -1; } #eventos-page .eventos-form-section__grid { grid-template-columns: 1fr; } #eventos-page .eventos-form-section__intro, #eventos-page .eventos-form { grid-column: 1; } }
@media (max-width: 880px) { #eventos-page .eventos-planning__grid { grid-template-columns: 1fr; gap: var(--space-5); } }
@media (max-width: 860px) { #eventos-page .eventos-atmosphere__layout { grid-template-columns: repeat(8, minmax(0, 1fr)); } #eventos-page .eventos-atmosphere__media { grid-column: 1 / -1; } #eventos-page .eventos-atmosphere__media figcaption { width: min(100%, 62.5%); } }
@media (max-width: 820px) { #eventos-page .eventos-process__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); } #eventos-page .eventos-process__steps > * + * { border-left: 0; } #eventos-page .eventos-process__steps > :nth-child(2) { border-left: 1px solid var(--color-border); } #eventos-page .eventos-process__steps > :last-child { grid-column: 1 / -1; border-top: 1px solid var(--color-border); } #eventos-page .eventos-faq__grid { grid-template-columns: 1fr; } #eventos-page .eventos-faq__intro, #eventos-page .eventos-faq__list { grid-column: 1; } }
@media (max-width: 700px) { #eventos-page .eventos-poker__grid { grid-template-columns: 1fr; } #eventos-page .eventos-poker__age { justify-content: flex-start; } #eventos-page .eventos-poker__details { grid-template-columns: 1fr; } #eventos-page .eventos-closing__panel { width: 100%; } }
@media (max-width: 620px) { #eventos-page .eventos-hero { padding-block: var(--space-7); } #eventos-page .eventos-hero__grid, #eventos-page .eventos-occasions__grid, #eventos-page .eventos-pillars, #eventos-page .eventos-planning__list, #eventos-page .eventos-process__steps, #eventos-page .eventos-form__fields { grid-template-columns: 1fr; } #eventos-page .eventos-hero__panel { padding: var(--space-5); } #eventos-page .eventos-hero h1 { font-size: 2.5rem; line-height: 1.05; } #eventos-page .eventos-hero__media { margin-top: 0; } #eventos-page .eventos-hero__media img { aspect-ratio: 4 / 3; object-position: 60% center; } #eventos-page .eventos-occasions__grid { gap: var(--space-3); margin-top: var(--space-5); } #eventos-page .eventos-occasion p:not(.eventos-occasion__number) { max-width: none; } #eventos-page .eventos-table__media img { aspect-ratio: 4 / 3; } #eventos-page .eventos-pillars > :last-child { grid-column: auto; } #eventos-page .eventos-planning__list { gap: 0; } #eventos-page .eventos-plan { padding-inline: 0; } #eventos-page .eventos-plan--poker { padding: var(--space-4); } #eventos-page .eventos-process__steps { gap: 0; } #eventos-page .eventos-process__steps > *, #eventos-page .eventos-process__steps > :nth-child(2), #eventos-page .eventos-process__steps > :last-child { grid-column: auto; padding: var(--space-5) 0; border-left: 0; border-top: 1px solid var(--color-border); } #eventos-page .eventos-process__steps > :first-child { border-top: 0; } #eventos-page .eventos-atmosphere__layout { grid-template-columns: 1fr; } #eventos-page .eventos-atmosphere__media { grid-column: 1; } #eventos-page .eventos-atmosphere__media figcaption { width: 100%; margin-left: 0; } #eventos-page .eventos-faq__item button { min-height: 3.75rem; padding-inline: var(--space-3); } #eventos-page .eventos-form { padding: var(--space-5); } #eventos-page .eventos-field--full { grid-column: auto; } #eventos-page .eventos-closing__panel { padding: var(--space-5); } }


.home-page { overflow: clip; }
.home-page .home-hero { padding-block: var(--space-7); background: var(--color-green-deep); color: var(--color-cream-soft); }
.home-page .home-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-5); align-items: center; min-width: 0; }
.home-page .home-hero__copy { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; gap: var(--space-4); }
.home-page .home-hero__copy > * { min-width: 0; margin: 0; }
.home-page .home-hero h1 { max-width: 10ch; font-size: clamp(3.2rem, 5vw, 4rem); }
.home-page .home-hero .lead { max-width: 42ch; }
.home-page .home-hero__actions { width: 100%; }
.home-page .home-hero__note { display: flex; align-items: center; gap: var(--space-2); color: rgb(251 246 237 / 80%); font-size: var(--font-size-sm); }
.home-page .home-hero__media { width: 100%; min-width: 0; margin: 0; overflow: hidden; border-radius: var(--radius-xl); }
.home-page .home-hero__media img { width: 100%; height: 100%; min-width: 0; object-fit: cover; object-position: right center; }
.home-page .home-hero__media--desktop { aspect-ratio: 16 / 9; }
.home-page .home-hero__media--mobile { display: none; aspect-ratio: 4 / 3; }
.home-page .home-flavour > .container { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.home-page .home-flavour__intro { grid-column: 1 / span 7; min-width: 0; max-width: 62ch; }
.home-page .home-flavour__service { grid-column: 8 / span 3; min-width: 0; padding: var(--space-5); border-top: 2px solid var(--color-gold-aged); background: var(--color-cream-soft); }
.home-page .home-flavour__service p {
  }
.home-page .home-flavour__gathering { position: relative; grid-column: 9 / span 4; min-width: 0; margin-top: var(--space-7); overflow: hidden; border-radius: var(--radius-xl); }
.home-page .home-flavour__gathering > img { width: 100%; height: 32rem; object-fit: cover; object-position: center; }
.home-page .home-flavour__overlay { position: absolute; right: var(--space-4); bottom: var(--space-4); left: var(--space-4); min-width: 0; padding: var(--space-4); border-radius: var(--radius-lg); background: rgb(251 246 237 / 94%); }
.home-page .home-flavour__overlay > :last-child { margin-bottom: 0; }
.home-page .home-text-link { display: inline-flex; align-items: center; gap: var(--space-2); font-size: var(--font-size-sm); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.home-page .home-rhythm__heading { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-bottom: var(--space-7); }
.home-page .home-rhythm__heading > * { min-width: 0; }
.home-page .home-rhythm__heading .eyebrow, .home-page .home-rhythm__heading h2 { grid-column: 1 / span 5; }
.home-page .home-rhythm__heading .lead { grid-column: 6 / span 5; max-width: 58ch; margin-top: var(--space-5); }
.home-page .home-rhythm__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; }
.home-page .home-rhythm__item { min-width: 0; padding-top: var(--space-5); border-top: 1px solid var(--color-gold-aged); }
.home-page .home-rhythm__item--green { padding: var(--space-5); border-top: 0; background: #dfe8da; }
.home-page .home-rhythm__number { display: block; margin-bottom: var(--space-4); color: var(--color-bordeaux); font-family: var(--font-heading); font-size: 2.5rem; font-weight: 600; line-height: 1; }
.home-page .home-rhythm__item p {
  }
.home-page .home-poker__heading { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-5); align-items: center; min-width: 0; margin-bottom: var(--space-7); }
.home-page .home-poker__copy { min-width: 0; }
.home-page .home-poker__copy p:not(.eyebrow) { max-width: 62ch; }
.home-page .home-poker__image { width: 100%; min-width: 0; margin: 0; overflow: hidden; border-radius: var(--radius-xl); aspect-ratio: 4 / 3; }
.home-page .home-poker__image img { width: 100%; height: 100%; object-fit: cover; }
.home-page .home-poker__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.home-page .home-poker__card { display: flex; flex-direction: column; min-width: 0; gap: var(--space-3); }
.home-page .home-poker__card > * { min-width: 0; margin: 0; }
.home-page .home-poker__card p {
  }
.home-page .home-poker__card--bordeaux { border-top: 3px solid var(--color-bordeaux); }
.home-page .home-how__heading { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-bottom: var(--space-7); }
.home-page .home-how__heading > * { grid-column: 1 / span 5; min-width: 0; }
.home-page .home-how__heading .lead { grid-column: 6 / span 5; max-width: 48ch; margin-top: var(--space-5); }
.home-page .home-how__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.home-page .home-how__step { display: grid; grid-template-columns: 1fr; min-width: 0; padding: var(--space-4); border-top: 2px solid var(--color-gold-aged); background: var(--color-cream-soft); }
.home-page .home-how__step > div { min-width: 0; }
.home-page .home-how__step h3 { font-family: var(--font-body); font-size: var(--font-size-sm); letter-spacing: .08em; text-transform: uppercase; }
.home-page .home-how__step p {
  }
.home-page .home-how__number { display: block; margin-bottom: var(--space-3); color: var(--color-bordeaux); font-family: var(--font-heading); font-size: 2rem; font-weight: 600; line-height: 1; }
.home-page .home-how__step--last { border-color: var(--color-bordeaux); background: var(--color-wine-dark); color: var(--color-cream-soft); }
.home-page .home-how__step--last .home-how__number { color: var(--color-gold-aged); }
.home-page .home-agenda__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: var(--space-5); align-items: start; min-width: 0; }
.home-page .home-agenda__intro, .home-page .home-agenda__example, .home-page .home-agenda__groups { min-width: 0; }
.home-page .home-agenda__intro p:not(.eyebrow) { max-width: 60ch; }
.home-page .home-agenda__example { box-shadow: none; }
.home-page .home-agenda__example dl { display: flex; flex-direction: column; gap: var(--space-3); }
.home-page .home-agenda__example dl > div { min-width: 0; padding-bottom: var(--space-3); border-bottom: 1px solid var(--color-border); }
.home-page .home-agenda__example dd { margin: 0; font-size: var(--font-size-sm); }
.home-page .home-agenda__groups { padding: var(--space-5); background: var(--color-bordeaux); color: var(--color-cream-soft); }
.home-page .home-agenda__groups p {
  }
.home-page .home-agenda__links { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); min-width: 0; }
.home-page .home-agenda__links a { color: var(--color-cream-soft); font-size: var(--font-size-sm); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.home-page .home-groups__top { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); align-items: center; min-width: 0; margin-bottom: var(--space-7); }
.home-page .home-groups__copy, .home-page .home-groups__image { min-width: 0; }
.home-page .home-groups__copy p:not(.eyebrow) { max-width: 60ch; }
.home-page .home-groups__image { margin: 0; overflow: hidden; border-radius: var(--radius-xl); aspect-ratio: 3 / 2; }
.home-page .home-groups__image img { width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.home-page .home-groups__occasions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; }
.home-page .home-groups__occasions article { min-width: 0; padding-top: var(--space-4); border-top: 1px solid var(--color-border); }
.home-page .home-groups__occasions p {
  }
.home-page .home-groups__occasions .badge-18 { margin-bottom: var(--space-3); }
.home-page .home-responsibility__statement { display: flex; flex-direction: column; align-items: center; min-width: 0; gap: var(--space-3); width: min(100%, 66ch); margin-inline: auto; text-align: center; }
.home-page .home-responsibility__statement > * { min-width: 0; margin: 0; }
.home-page .home-responsibility__statement p:last-child { max-width: 66ch; text-align: left; }
.home-page .home-responsibility__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; margin-top: var(--space-7); }
.home-page .home-responsibility__items article { min-width: 0; padding-top: var(--space-4); border-top: 1px solid rgb(251 246 237 / 28%); }
.home-page .home-responsibility__items p {
  }
.home-page .home-responsibility__items a { color: var(--color-cream-soft); font-size: var(--font-size-sm); font-weight: 800; letter-spacing: .08em; }
.home-page .home-gallery__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 5fr) minmax(0, 3fr); gap: var(--space-5); align-items: start; min-width: 0; }
.home-page .home-gallery__copy, .home-page .home-gallery__wide, .home-page .home-gallery__detail { min-width: 0; }
.home-page .home-gallery__copy p:not(.eyebrow) { max-width: 50ch; }
.home-page .home-gallery figure { margin: 0; }
.home-page .home-gallery img { width: 100%; object-fit: cover; border-radius: var(--radius-lg); }
.home-page .home-gallery__wide img { aspect-ratio: 3 / 2; }
.home-page .home-gallery__detail img { aspect-ratio: 4 / 5; }
.home-page .home-closing { padding-top: var(--space-8); }
.home-page .home-closing__panel { display: flex; flex-direction: column; align-items: center; min-width: 0; gap: var(--space-4); width: min(100%, 66.666%); margin-inline: auto; padding: var(--space-7); border: 1px solid var(--color-border); border-top: 4px solid var(--color-wood-dark); border-radius: var(--radius-xl); background: var(--color-cream-soft); }
.home-page .home-closing__panel > * { min-width: 0; margin: 0; }
.home-page .home-closing__panel h2 { text-align: center; }
.home-page .home-closing__panel > p:not(.eyebrow) { max-width: 56ch; text-align: left; }
.home-page .home-closing__actions { justify-content: center; }
.home-page .home-closing__actions .button { min-width: 11.25rem; }
@media (max-width: 1040px) { .home-page .home-poker__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-poker__card p {
  } }
@media (max-width: 1020px) { .home-page .home-how__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-how__step { grid-template-columns: 2.25rem minmax(0, 1fr); gap: var(--space-3); } .home-page .home-how__number { margin-bottom: 0; } }
@media (max-width: 980px) { .home-page .home-flavour > .container { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-5); } .home-page .home-flavour__intro { grid-column: 1 / span 5; } .home-page .home-flavour__service { grid-column: 6 / span 3; } .home-page .home-flavour__gathering { grid-column: 6 / span 3; margin-top: 0; } .home-page .home-flavour__gathering > img { height: 28rem; } .home-page .home-agenda__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr); } .home-page .home-agenda__groups { grid-column: 1 / -1; } .home-page .home-groups__top { grid-template-columns: repeat(8, minmax(0, 1fr)); } .home-page .home-groups__copy { grid-column: 1 / span 4; } .home-page .home-groups__image { grid-column: 5 / span 4; } .home-page .home-groups__occasions { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-groups__occasions article:last-child { grid-column: 1 / -1; } .home-page .home-responsibility__items { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-responsibility__items article:last-child { grid-column: 1 / -1; } .home-page .home-gallery__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); } .home-page .home-gallery__copy { grid-column: 1 / -1; } .home-page .home-gallery__wide { grid-column: 1 / span 5; } .home-page .home-gallery__detail { grid-column: 6 / span 3; } }
@media (max-width: 940px) { .home-page .home-rhythm__heading { grid-template-columns: repeat(8, minmax(0, 1fr)); } .home-page .home-rhythm__heading .eyebrow, .home-page .home-rhythm__heading h2, .home-page .home-rhythm__heading .lead { grid-column: 1 / -1; margin-top: 0; } .home-page .home-rhythm__items { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-page .home-rhythm__item:last-child { grid-column: 1 / -1; } .home-page .home-rhythm__item:last-child p {
  } }
@media (max-width: 900px) { .home-page .home-poker__heading { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr); } .home-page .home-closing__panel { width: 100%; } }
@media (max-width: 760px) { .home-page .home-hero { padding-block: var(--space-6); } .home-page .home-hero__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-hero__media--desktop { display: none; } .home-page .home-hero__media--mobile { display: block; order: 0; } .home-page .home-hero h1 { max-width: 100%; font-size: clamp(2.5rem, 11vw, 2.625rem); line-height: 1; } .home-page .home-hero .lead { max-width: 100%; font-size: 1.0625rem; line-height: 1.588; } .home-page .home-hero__actions { max-width: 26.25rem; } .home-page .home-poker__heading { grid-template-columns: minmax(0, 1fr); } .home-page .home-poker__copy { display: contents; } .home-page .home-poker__copy .eyebrow, .home-page .home-poker__copy h2, .home-page .home-poker__copy p { min-width: 0; } .home-page .home-poker__image { order: 3; aspect-ratio: 3 / 2; } .home-page .home-poker__cards { grid-template-columns: minmax(0, 1fr); } .home-page .home-poker__card p {
  } }
@media (max-width: 700px) { .home-page .home-flavour > .container, .home-page .home-rhythm__heading, .home-page .home-how__heading, .home-page .home-agenda__grid, .home-page .home-groups__top, .home-page .home-gallery__grid { grid-template-columns: minmax(0, 1fr); } .home-page .home-flavour__intro, .home-page .home-flavour__service, .home-page .home-flavour__gathering, .home-page .home-rhythm__heading .eyebrow, .home-page .home-rhythm__heading h2, .home-page .home-rhythm__heading .lead, .home-page .home-how__heading > *, .home-page .home-how__heading .lead, .home-page .home-agenda__groups, .home-page .home-groups__copy, .home-page .home-groups__image, .home-page .home-gallery__copy, .home-page .home-gallery__wide, .home-page .home-gallery__detail { grid-column: 1; } .home-page .home-flavour__gathering { margin-top: 0; } .home-page .home-flavour__gathering > img { height: auto; aspect-ratio: 3 / 2; } .home-page .home-flavour__overlay { position: static; border-radius: 0; } .home-page .home-rhythm__items, .home-page .home-how__steps, .home-page .home-groups__occasions, .home-page .home-responsibility__items { grid-template-columns: minmax(0, 1fr); } .home-page .home-rhythm__item:last-child, .home-page .home-groups__occasions article:last-child, .home-page .home-responsibility__items article:last-child { grid-column: 1; } .home-page .home-rhythm__item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: var(--space-3); } .home-page .home-rhythm__item > :not(.home-rhythm__number) { grid-column: 2; } .home-page .home-rhythm__number { grid-row: 1 / span 3; margin: 0; font-size: 1.25rem; } .home-page .home-rhythm__item--green { padding: var(--space-4); } .home-page .home-rhythm__item p, .home-page .home-groups__occasions p, .home-page .home-responsibility__items p {
  } .home-page .home-how__heading .lead { margin-top: 0; } .home-page .home-how__step { grid-template-columns: 2.25rem minmax(0, 1fr); } .home-page .home-agenda__groups { margin-top: 0; } .home-page .home-groups__top { gap: var(--space-5); } .home-page .home-gallery__detail img { aspect-ratio: 4 / 3; } .home-page .home-closing { padding-top: var(--space-7); } .home-page .home-closing__panel { padding: var(--space-5); } }
@media (max-width: 640px) { .home-page .home-closing__actions { width: 100%; } .home-page .home-closing__actions .button { width: 100%; min-width: 0; } .home-page .home-responsibility__statement { align-items: flex-start; width: 100%; text-align: left; } .home-page .home-responsibility__statement h2 { text-align: left; } }


.agenda-page {
  overflow: hidden;
}

.agenda-page .button {
  white-space: normal;
}

.agenda-hero {
  padding-block: var(--space-9);
}

.agenda-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  gap: var(--space-6);
}

.agenda-hero__content {
  grid-column: span 5;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.agenda-hero__content > * {
  min-width: 0;
  margin: 0;
}

.agenda-hero__content .lead {
  max-width: 56ch;
}

.agenda-hero__actions {
  margin-top: var(--space-2);
}

.agenda-hero__note {
  max-width: 52ch;
}

.agenda-hero__media {
  grid-column: span 7;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
}

.agenda-hero__media img {
  width: 100%;
  height: 100%;
  min-height: 26rem;
  object-fit: cover;
  object-position: 72% center;
}

.agenda-reading__grid,
.agenda-poker__grid,
.agenda-plan__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
}

.agenda-reading__intro,
.agenda-poker__intro,
.agenda-plan__intro {
  grid-column: span 5;
  min-width: 0;
}

.agenda-reading__intro > :last-child,
.agenda-poker__intro > :last-child,
.agenda-plan__intro > :last-child {
  margin-bottom: 0;
}

.agenda-reading__intro p:not(.eyebrow) {
  max-width: 56ch;
}

.agenda-reading__items {
  grid-column: span 7;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  min-width: 0;
}

.agenda-guidance {
  min-width: 0;
  padding-left: var(--space-4);
  border-left: 1px solid var(--color-border);
}

.agenda-guidance > :last-child {
  margin-bottom: 0;
}

.agenda-guidance__mark {
  display: inline-flex;
  min-width: 1.75rem;
  min-height: 1.75rem;
  align-items: center;
  color: var(--color-bordeaux);
  font-family: var(--font-heading);
  font-size: 1.5rem;
}

.agenda-guidance .badge-18 {
  margin-bottom: var(--space-3);
  color: var(--color-bordeaux);
}

.agenda-controls-section {
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-cream-soft);
}

.agenda-controls-section__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: center;
}

.agenda-controls-section__intro {
  grid-column: span 4;
  min-width: 0;
}

.agenda-controls-section__intro > :last-child {
  max-width: 55ch;
  margin-bottom: 0;
}

.agenda-controls {
  grid-column: span 8;
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
}

.agenda-month-control,
.agenda-filter-group {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: var(--space-2);
}

.agenda-month-control {
  flex: 0 1 auto;
}

.agenda-month-control__label {
  min-width: 12rem;
  margin: 0;
  color: var(--color-green-deep);
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 600;
  line-height: var(--line-height-heading);
  text-align: center;
}

.agenda-icon-button,
.agenda-filter {
  min-height: 2.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.04em;
  transition: background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
}

.agenda-icon-button {
  width: 2.75rem;
  min-width: 2.75rem;
  padding: 0;
  font-size: 1.75rem;
  line-height: 1;
}

.agenda-filter {
  padding: 0.625rem 0.75rem;
}

.agenda-icon-button:hover,
.agenda-filter:hover {
  border-color: var(--color-green-mangueira);
  background: var(--color-green-mangueira);
  color: var(--color-cream-soft);
}

.agenda-filter.is-active {
  border-color: var(--color-bordeaux);
  background: var(--color-bordeaux);
  color: var(--color-cream-soft);
}

.agenda-icon-button:active,
.agenda-filter:active {
  transform: translateY(1px);
}

.agenda-calendar-section__header {
  max-width: 60ch;
}

.agenda-calendar-section__header > :last-child {
  margin-bottom: var(--space-6);
}

.agenda-calendar {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  border-top: 1px solid var(--color-border);
  border-left: 1px solid var(--color-border);
}

.agenda-calendar__weekday,
.agenda-calendar__empty,
.agenda-calendar__day {
  min-width: 0;
  border-right: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.agenda-calendar__weekday {
  padding: var(--space-3);
  background: var(--color-cream-soft);
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 800;
  letter-spacing: 0.05em;
  text-align: center;
  text-transform: uppercase;
}

.agenda-calendar__empty {
  min-height: 7.5rem;
  background: rgb(251 246 237 / 42%);
}

.agenda-calendar__day {
  display: flex;
  min-height: 7.5rem;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  padding: var(--space-2);
  background: var(--color-cream-warm);
}

.agenda-calendar__number {
  align-self: flex-end;
  margin-bottom: var(--space-2);
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
  font-size: var(--font-size-sm);
  font-weight: 800;
}

.agenda-calendar__event {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 2.75rem;
  align-items: flex-start;
  justify-content: flex-start;
  padding: var(--space-2);
  border: 0;
  border-radius: var(--radius-sm);
  background: var(--color-green-mangueira);
  color: var(--color-cream-soft);
  font-size: var(--font-size-xs);
  font-weight: 800;
  line-height: 1.25;
  text-align: left;
}

.agenda-calendar__event + .agenda-calendar__event {
  margin-top: var(--space-1);
}

.agenda-calendar__event--musica {
  background: var(--color-bordeaux);
}

.agenda-calendar__event--poker {
  background: var(--color-green-deep);
  box-shadow: inset 3px 0 0 var(--color-gold-aged);
}

.agenda-calendar__event.is-selected {
  outline: 3px solid var(--color-focus);
  outline-offset: 1px;
}

.agenda-calendar__event-label {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.agenda-calendar__legend {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
  padding-top: var(--space-4);
}

.agenda-calendar__legend span {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.agenda-legend-dot {
  width: 0.75rem;
  min-width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  background: var(--color-green-mangueira);
}

.agenda-legend-dot--music {
  background: var(--color-bordeaux);
}

.agenda-legend-dot--poker {
  border: 2px solid var(--color-gold-aged);
  background: var(--color-green-deep);
}

.agenda-calendar__selection {
  margin-top: var(--space-4);
  margin-bottom: 0;
  max-width: 60ch;
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.agenda-mobile-week {
  display: none;
}

.agenda-highlights__header {
  max-width: 58ch;
}

.agenda-highlights__header > :last-child {
  margin-bottom: var(--space-6);
}

.agenda-highlights__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
}

.agenda-highlight {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.agenda-highlight--food {
  grid-column: span 6;
}

.agenda-highlight > img {
  width: 100%;
  min-width: 0;
  height: 19rem;
  object-fit: cover;
}

.agenda-highlight__body {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
}

.agenda-highlight__body > * {
  min-width: 0;
  margin: 0;
}

.agenda-highlight--food .agenda-highlight__body p:not(.agenda-tag):not(.agenda-highlight__meta) {
  max-width: 42ch;
}

.agenda-highlights__side {
  grid-column: span 6;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  min-width: 0;
}

.agenda-highlight--music {
  display: grid;
  grid-template-columns: minmax(0, 42%) minmax(0, 58%);
}

.agenda-highlight--music > img {
  height: 100%;
  min-height: 16rem;
}

.agenda-highlight--music .agenda-highlight__body p:not(.agenda-tag):not(.agenda-highlight__meta),
.agenda-highlight--poker .agenda-highlight__body p:not(.agenda-tag):not(.agenda-highlight__meta) {
  max-width: 34ch;
}

.agenda-highlight--poker {
  border-color: rgb(32 56 45 / 22%);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.agenda-highlight--poker .agenda-highlight__meta {
  color: rgb(251 246 237 / 76%);
}

.agenda-tag {
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.agenda-highlight--poker .agenda-tag {
  color: var(--color-gold-aged);
}

.agenda-highlight__meta {
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
  font-size: var(--font-size-sm);
  font-weight: 700;
  line-height: var(--line-height-sm);
}

.agenda-events__header {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
}

.agenda-events__header > * {
  min-width: 0;
}

.agenda-events__header h2,
.agenda-events__header .eyebrow {
  margin-bottom: 0;
}

.agenda-events__count {
  max-width: 45ch;
  margin: 0;
  color: var(--color-green-deep);
  font-size: var(--font-size-sm);
  font-weight: 700;
  text-align: right;
}

.agenda-events__list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.agenda-event-card {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 6fr) minmax(0, 2fr) minmax(0, 2fr);
  gap: var(--space-4);
  align-items: center;
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-left: 5px solid var(--color-green-mangueira);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
  box-shadow: var(--shadow-card);
}

.agenda-event-card--musica {
  border-left-color: var(--color-bordeaux);
}

.agenda-event-card--poker {
  border-color: rgb(32 56 45 / 22%);
  border-left-color: var(--color-gold-aged);
  background: var(--color-green-deep);
  color: var(--color-cream-soft);
}

.agenda-event-card__date,
.agenda-event-card__content,
.agenda-event-card__meta,
.agenda-event-card__action {
  min-width: 0;
}

.agenda-event-card__date {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.agenda-event-card__date p,
.agenda-event-card__content p,
.agenda-event-card__meta p {
  margin: 0;
}

.agenda-event-card__category {
  color: var(--color-bordeaux);
  font-size: var(--font-size-xs);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: var(--line-height-xs);
  text-transform: uppercase;
}

.agenda-event-card--poker .agenda-event-card__category,
.agenda-event-card--poker .agenda-event-card__classification,
.agenda-event-card--poker .agenda-event-card__meta {
  color: rgb(251 246 237 / 82%);
}

.agenda-event-card__date time {
  color: var(--color-green-deep);
  font-family: var(--font-heading);
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.05;
}

.agenda-event-card--poker .agenda-event-card__date time {
  color: var(--color-cream-soft);
}

.agenda-event-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.agenda-event-card__content h3 {
  margin: 0;
}

.agenda-event-card__description {
  max-width: 50ch;
}

.agenda-event-card__venue {
  color: color-mix(in srgb, var(--color-text) 70%, transparent);
  font-size: var(--font-size-sm);
  font-weight: 700;
}

.agenda-event-card--poker .agenda-event-card__venue {
  color: rgb(251 246 237 / 76%);
}

.agenda-event-card__meta {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  color: color-mix(in srgb, var(--color-text) 82%, transparent);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
}

.agenda-event-card__classification {
  font-weight: 800;
}

.agenda-event-card__action {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.agenda-event-card__action .button {
  width: 100%;
}

.agenda-empty {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  margin-top: var(--space-5);
  padding: var(--space-6);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.agenda-empty > * {
  min-width: 0;
  margin: 0;
}

.agenda-empty p {
  }

.agenda-poker {
  position: relative;
}

.agenda-poker::before {
  position: absolute;
  top: 3rem;
  right: 8%;
  width: 14rem;
  height: 14rem;
  border: 1px solid rgb(177 138 74 / 25%);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.agenda-poker__intro {
  grid-column: span 4;
}

.agenda-poker__intro p:not(.eyebrow) {
  max-width: 62ch;
}

.agenda-poker__principles {
  grid-column: span 8;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  min-width: 0;
}

.agenda-poker__principles article {
  min-width: 0;
  padding-left: var(--space-4);
  border-left: 1px solid rgb(251 246 237 / 28%);
}

.agenda-poker__principles article > :last-child {
  margin-bottom: 0;
}

.agenda-poker__principles h3 {
  margin-top: var(--space-3);
}

.agenda-poker__principles p {
  }

.agenda-poker__line {
  display: block;
  width: 2rem;
  height: 2px;
  margin-bottom: var(--space-3);
  background: var(--color-gold-aged);
}

.agenda-poker__principles .button {
  margin-top: var(--space-2);
}

.agenda-plan__intro {
  grid-column: span 4;
}

.agenda-plan__intro p:not(.eyebrow) {
  max-width: 58ch;
}

.agenda-plan__panels {
  grid-column: span 8;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  min-width: 0;
}

.agenda-plan-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-cream-soft);
}

.agenda-plan-card > * {
  min-width: 0;
  margin: 0;
}

.agenda-plan-card p {
  }

.agenda-plan-card--poker {
  border-color: var(--color-bordeaux);
}

.agenda-plan-card--poker .badge-18 {
  color: var(--color-bordeaux);
}

.agenda-faq__container {
  width: min(100% - (var(--container-padding) * 2), 50rem);
}

.agenda-faq__header {
  max-width: 68ch;
}

.agenda-faq__header > :last-child {
  margin-bottom: var(--space-6);
}

.agenda-faq__items {
  display: flex;
  min-width: 0;
  flex-direction: column;
  border-top: 1px solid var(--color-border);
}

.agenda-faq-item {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
}

.agenda-faq-item h3 {
  margin: 0;
}

.agenda-faq-item h3 button {
  display: flex;
  width: 100%;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) 0;
  border: 0;
  background: transparent;
  color: var(--color-green-deep);
  font-family: var(--font-body);
  font-size: var(--font-size-lead);
  font-weight: 800;
  line-height: var(--line-height-sm);
  text-align: left;
}

.agenda-faq-item h3 button span {
  min-width: 1.5rem;
  color: var(--color-bordeaux);
  font-size: 1.5rem;
  font-weight: 400;
  text-align: center;
}

.agenda-faq-item h3 button[aria-expanded="true"] span {
  transform: rotate(45deg);
}

.agenda-faq-item > div {
  max-width: 68ch;
}

.agenda-faq-item > div p {
  padding-bottom: var(--space-4);
  margin-bottom: 0;
}

.agenda-final {
  padding-top: var(--space-8);
}

.agenda-final__panel {
  width: min(100%, 68.75rem);
  margin-inline: auto;
  padding: var(--space-8);
  border-radius: var(--radius-xl);
  background: var(--color-wood-dark);
  color: var(--color-cream-soft);
}

.agenda-final__content {
  display: flex;
  width: min(100%, 42rem);
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  margin-inline: auto;
  text-align: center;
}

.agenda-final__content > * {
  min-width: 0;
  margin: 0;
}

.agenda-final__content .eyebrow {
  color: var(--color-gold-aged);
}

.agenda-final__content > p:not(.eyebrow):not(.agenda-final__note) {
  max-width: 50ch;
}

.agenda-final__actions {
  justify-content: center;
}

.agenda-final__note {
  color: rgb(251 246 237 / 76%);
  font-size: var(--font-size-sm);
}

@media (max-width: 1023px) {
  .agenda-hero__grid,
  .agenda-reading__grid,
  .agenda-poker__grid,
  .agenda-plan__grid,
  .agenda-controls-section__grid,
  .agenda-highlights__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .agenda-hero__content,
  .agenda-reading__intro,
  .agenda-poker__intro,
  .agenda-plan__intro,
  .agenda-controls-section__intro {
    grid-column: span 8;
  }

  .agenda-hero__media {
    grid-column: span 8;
  }

  .agenda-hero__media img {
    min-height: 20rem;
  }

  .agenda-reading__items,
  .agenda-poker__principles,
  .agenda-plan__panels,
  .agenda-controls {
    grid-column: span 8;
  }

  .agenda-controls {
    justify-content: flex-start;
  }

  .agenda-highlight--food,
  .agenda-highlights__side {
    grid-column: span 4;
  }

  .agenda-highlights__side {
    grid-template-columns: 1fr;
  }

  .agenda-highlight--music {
    grid-template-columns: 1fr;
  }

  .agenda-highlight--music > img {
    min-height: 0;
    height: 12rem;
  }

  .agenda-event-card {
    grid-template-columns: minmax(0, 2fr) minmax(0, 6fr);
  }

  .agenda-event-card__meta {
    grid-column: 2;
  }

  .agenda-event-card__action {
    grid-column: 2;
    justify-content: flex-start;
  }

  .agenda-event-card__action .button {
    width: auto;
  }
}

@media (max-width: 900px) {
  .agenda-controls-section__grid {
    grid-template-columns: 1fr;
  }

  .agenda-controls-section__intro,
  .agenda-controls {
    grid-column: 1;
  }

  .agenda-controls {
    align-items: flex-start;
  }
}

@media (max-width: 760px) {
  .agenda-reading__items,
  .agenda-poker__principles,
  .agenda-plan__panels {
    grid-template-columns: 1fr;
  }

  .agenda-reading__items {
    gap: 0;
  }

  .agenda-guidance {
    padding: var(--space-4) 0;
    border-top: 1px solid var(--color-border);
    border-left: 0;
  }

  .agenda-guidance:last-child {
    border-bottom: 1px solid var(--color-border);
  }

  .agenda-poker__principles {
    gap: 0;
  }

  .agenda-poker__principles article {
    padding: var(--space-4) 0;
    border-top: 1px solid rgb(251 246 237 / 28%);
    border-left: 0;
  }

  .agenda-poker__principles article:last-child {
    border-bottom: 1px solid rgb(251 246 237 / 28%);
  }

  .agenda-event-card {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  .agenda-event-card__meta,
  .agenda-event-card__action {
    grid-column: 1;
  }

  .agenda-event-card__action .button {
    width: 100%;
  }

  .agenda-highlights__grid {
    grid-template-columns: 1fr;
  }

  .agenda-highlight--food,
  .agenda-highlights__side {
    grid-column: 1;
  }

  .agenda-highlights__side {
    gap: var(--space-4);
  }

  .agenda-highlight--music {
    grid-template-columns: 1fr;
  }

  .agenda-highlight--music > img,
  .agenda-highlight > img {
    height: auto;
    aspect-ratio: 3 / 2;
  }

  .agenda-highlight--food > img {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 639px) {
  .agenda-hero {
    padding-block: var(--space-7);
  }

  .agenda-hero__grid,
  .agenda-reading__grid,
  .agenda-poker__grid,
  .agenda-plan__grid {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .agenda-hero__content,
  .agenda-hero__media,
  .agenda-reading__intro,
  .agenda-reading__items,
  .agenda-poker__intro,
  .agenda-poker__principles,
  .agenda-plan__intro,
  .agenda-plan__panels {
    grid-column: 1;
  }

  .agenda-hero__content h1 {
    font-size: clamp(2.5rem, 11vw, 2.625rem);
    line-height: 1;
  }

  .agenda-hero__media img {
    min-height: 0;
    aspect-ratio: 4 / 3;
    object-position: 65% center;
  }

  .agenda-month-control,
  .agenda-filter-group {
    width: 100%;
  }

  .agenda-month-control {
    justify-content: space-between;
  }

  .agenda-month-control__label {
    min-width: 0;
    font-size: 1.5rem;
  }

  .agenda-filter-group {
    flex-wrap: wrap;
    align-items: stretch;
  }

  .agenda-filter {
    min-width: 0;
    flex: 1 1 auto;
  }

  .agenda-calendar {
    display: none;
  }

  .agenda-mobile-week {
    display: flex;
    min-width: 0;
    flex-direction: column;
    margin-top: var(--space-5);
    border-top: 1px solid var(--color-border);
  }

  .agenda-mobile-week__day {
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 3rem;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    padding: var(--space-3) 0;
    border: 0;
    border-bottom: 1px solid var(--color-border);
    background: transparent;
    color: var(--color-text);
    text-align: left;
  }

  .agenda-mobile-week__day.is-selected {
    color: var(--color-bordeaux);
  }

  .agenda-mobile-week__date {
    display: flex;
    min-width: 5rem;
    flex-direction: column;
    font-size: var(--font-size-sm);
    font-weight: 800;
  }

  .agenda-mobile-week__event {
    min-width: 0;
    flex: 1 1 auto;
    font-size: var(--font-size-sm);
    font-weight: 700;
  }

  .agenda-mobile-week__count {
    min-width: 1.5rem;
    color: var(--color-green-mangueira);
    font-size: var(--font-size-xs);
    font-weight: 800;
    text-align: right;
  }

  .agenda-calendar__legend {
    gap: var(--space-3);
  }

  .agenda-events__header {
    align-items: flex-start;
  }

  .agenda-events__count {
    max-width: none;
    text-align: left;
  }

  .agenda-event-card {
    padding: var(--space-4);
  }

  .agenda-event-card__date {
    flex-direction: row;
    align-items: baseline;
    flex-wrap: wrap;
  }

  .agenda-poker::before {
    display: none;
  }

  .agenda-faq__container {
    width: min(100% - (var(--container-padding) * 2), var(--container-max));
  }

  .agenda-final__panel {
    padding: var(--space-5);
  }

  .agenda-final__content {
    align-items: stretch;
  }

  .agenda-final__actions {
    align-items: stretch;
  }
}


.thank-you {
  display: flex;
  min-height: clamp(34rem, 72vh, 48rem);
  align-items: center;
  background:
    linear-gradient(135deg, rgb(78 107 69 / 8%), transparent 48%),
    var(--color-cream-warm);
}

.thank-you__section {
  width: 100%;
  padding-block: var(--space-10);
}

.thank-you__panel {
  display: flex;
  max-width: 48rem;
  flex-direction: column;
  align-items: center;
  gap: var(--space-5);
  margin-inline: auto;
  padding: var(--space-8);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: var(--color-surface-raised);
  box-shadow: var(--shadow-card);
  text-align: center;
}

.thank-you__panel > * {
  margin: 0;
}

.thank-you__panel::before {
  width: 3.25rem;
  height: 3.25rem;
  border: 1px solid var(--color-gold-aged);
  border-radius: 50%;
  background: var(--color-green-deep);
  box-shadow: inset 0 0 0 0.45rem var(--color-cream-soft);
  content: "";
}

.thank-you__copy {
  max-width: 39rem;
  margin-inline: auto;
  text-align: center;
}

.thank-you__copy > :last-child {
  margin-bottom: 0;
}

.thank-you__actions {
  justify-content: center;
}

.thank-you__note {
  max-width: 34rem;
  margin-inline: auto;
  text-align: center;
}

@media (max-width: 767px) {
  .thank-you {
    min-height: auto;
  }

  .thank-you__section {
    padding-block: var(--space-7);
  }

  .thank-you__panel {
    gap: var(--space-4);
    padding: var(--space-6) var(--space-5);
  }
}