

:root {
  --color-warm-ivory: #f4efe5;
  --color-sage-green: #536b5b;
  --color-sage-green-hover: #405747;
  --color-deep-pine: #20352d;
  --color-terracotta: #b86449;
  --color-natural-oak: #b68d68;
  --color-brushed-brass: #a9824e;
  --color-soft-sage: #dde4d8;
  --color-warm-white: #fffdf8;
  --color-muted-ink: #68736b;
  --color-dark-overlay: rgba(18, 30, 25, 0.58);
  --color-image-overlay: rgba(32, 53, 45, 0.62);

  --color-border-brass: rgba(168, 130, 78, 0.42);
  --color-border-ink: rgba(32, 53, 45, 0.12);
  --color-header-surface: rgba(244, 239, 229, 0.88);
  --color-focus: rgba(168, 130, 78, 0.45);

  --font-body: "Manrope", Arial, sans-serif;
  --font-heading: "DM Serif Display", Georgia, serif;

  --font-size-utility: 0.75rem;
  --font-size-caption: 0.875rem;
  --font-size-body: 1rem;
  --font-size-lead: 1.125rem;
  --font-size-card-title: 1.5rem;
  --font-size-section: clamp(2rem, 3vw, 2.75rem);
  --font-size-display: clamp(2.625rem, 6vw, 4rem);
  --font-size-wordmark: 1.25rem;

  --line-height-tight: 0.98;
  --line-height-heading: 1.08;
  --line-height-card: 1.2;
  --line-height-utility: 1.3;
  --line-height-caption: 1.4;
  --line-height-body: 1.55;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-22: 5.5rem;
  --space-30: 7.5rem;

  --container-max: 77.5rem;
  --container-padding: 2.5rem;
  --content-max: 35rem;

  --radius-sm: 0.25rem;
  --radius-control: 0.625rem;
  --radius-card: 1.125rem;
  --radius-pill: 999px;

  --shadow-floating: 0 8px 28px rgba(32, 53, 45, 0.12);

  --transition-color: 180ms ease-out;
  --transition-image: 280ms ease-out;
  --transition-header: 280ms ease-out;
}

@media (max-width: 1199px) {
  :root {
    --container-padding: 2rem;
  }
}

@media (max-width: 599px) {
  :root {
    --container-padding: 1.25rem;
    --font-size-display: clamp(2.625rem, 12vw, 3.25rem);
  }
}

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

html {
  min-width: 320px;
  scroll-behavior: smooth;
  scroll-padding-top: 6rem;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background: var(--color-warm-ivory);
  color: var(--color-deep-pine);
  font-family: var(--font-body);
  font-size: var(--font-size-body);
  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,
figcaption,
form,
fieldset,
blockquote,
details,
summary {
  min-width: 0;
}

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

img,
video {
  height: auto;
}

img {
  object-fit: cover;
}

svg {
  fill: currentColor;
}

button,
input,
select,
textarea {
  margin: 0;
  color: inherit;
  font: inherit;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

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

input,
select,
textarea {
  width: 100%;
  min-height: 2.75rem;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-control);
  background: var(--color-warm-white);
  padding: 0.6875rem 0.875rem;
  line-height: 1.4;
  transition: border-color var(--transition-color), box-shadow var(--transition-color), background-color var(--transition-color);
}

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

select {
  cursor: pointer;
}

input::placeholder,
textarea::placeholder {
  color: var(--color-muted-ink);
  opacity: 1;
}

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

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

label {
  display: inline-block;
  margin-block-end: var(--space-2);
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
}

fieldset {
  margin: 0;
  border: 0;
  padding: 0;
}

legend {
  padding: 0;
}

a {
  color: var(--color-deep-pine);
  text-decoration-color: var(--color-brushed-brass);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
  transition: color var(--transition-color), text-decoration-color var(--transition-color);
}

a:hover {
  color: var(--color-terracotta);
  text-decoration-color: currentColor;
}

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;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-block: 0 var(--space-4);
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

h1 {
  font-size: var(--font-size-display);
  line-height: var(--line-height-tight);
}

h2 {
  font-size: var(--font-size-section);
  line-height: var(--line-height-heading);
}

h3 {
  font-size: var(--font-size-card-title);
  line-height: var(--line-height-card);
}

h4 {
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: var(--line-height-card);
}

h5,
h6 {
  font-family: var(--font-body);
  font-size: var(--font-size-body);
  font-weight: 700;
  letter-spacing: 0;
  line-height: var(--line-height-body);
}

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

ul,
ol {
  margin-block: 0 var(--space-4);
  padding-inline-start: 1.25rem;
}

ul ul,
ul ol,
ol ul,
ol ol {
  margin-block: var(--space-2) 0;
}

blockquote {
  margin: 0 0 var(--space-6);
  border-inline-start: 1px solid var(--color-brushed-brass);
  padding-inline-start: var(--space-6);
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: 1.35;
}

figure {
  margin: 0 0 var(--space-6);
}

figcaption {
  margin-block-start: var(--space-2);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
}

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

table {
  width: 100%;
  margin-block-end: var(--space-6);
  border-collapse: collapse;
  border-spacing: 0;
  font-variant-numeric: tabular-nums;
}

th,
td {
  border-block-end: 1px solid var(--color-border-ink);
  padding: var(--space-3) var(--space-2);
  text-align: start;
  vertical-align: top;
}

th {
  font-size: var(--font-size-caption);
  font-weight: 700;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

code,
kbd,
samp {
  border-radius: var(--radius-sm);
  background: var(--color-soft-sage);
  padding: 0.1em 0.3em;
}

pre {
  margin-block: 0 var(--space-6);
  overflow: auto;
  border-radius: var(--radius-control);
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
  padding: var(--space-4);
}

details {
  margin-block-end: var(--space-3);
  border-block-end: 1px solid var(--color-border-ink);
}

summary {
  min-height: 2.75rem;
  cursor: pointer;
  padding-block: var(--space-3);
  font-weight: 700;
}

::selection {
  background: var(--color-soft-sage);
  color: var(--color-deep-pine);
}

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

.content-group > :last-child,
.card-content > :last-child,
.panel-content > :last-child,
.compact-content > :last-child {
  margin-block-end: 0;
}

.content-list {
  margin: 0 0 var(--space-4);
  padding-inline-start: 1.25rem;
}

.content-list > li + li {
  margin-block-start: var(--space-2);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-block-end: var(--space-3);
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.eyebrow::before {
  width: 1.75rem;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
}

.meta {
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
}

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

.rule {
  width: 100%;
  height: 1px;
  border: 0;
  background: var(--color-border-brass);
}

.surface {
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
}

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

.surface--pine {
  border-color: transparent;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.surface--pine h1,
.surface--pine h2,
.surface--pine h3,
.surface--pine h4,
.surface--pine h5,
.surface--pine h6,
.surface--pine a {
  color: var(--color-warm-ivory);
}

.card {
  overflow: hidden;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
}

.card-media {
  overflow: hidden;
  border-radius: calc(var(--radius-card) - 1px);
}

.card-media img {
  width: 100%;
  transition: transform var(--transition-image);
}

.card:hover .card-media img {
  transform: scale(1.035);
}

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

.button {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  border: 1px solid transparent;
  border-radius: var(--radius-pill);
  padding: 0.6875rem 1.25rem;
  background: transparent;
  color: var(--color-deep-pine);
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: background-color var(--transition-color), border-color var(--transition-color), color var(--transition-color), transform var(--transition-color);
}

.button:hover {
  color: var(--color-deep-pine);
}

.button--primary {
  background: var(--color-sage-green);
  color: var(--color-warm-ivory);
}

.button--primary:hover {
  background: var(--color-sage-green-hover);
  color: var(--color-warm-ivory);
  transform: translateY(-1px);
}

.button--secondary {
  border-color: var(--color-brushed-brass);
  background: transparent;
}

.button--secondary:hover {
  border-color: var(--color-terracotta);
  color: var(--color-terracotta);
}

.button--text {
  min-height: auto;
  padding: 0;
  border-radius: 0;
  text-decoration: underline;
  text-decoration-color: var(--color-brushed-brass);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

.button--text:hover {
  color: var(--color-terracotta);
  text-decoration-color: currentColor;
}

.tag {
  display: inline-flex;
  min-height: 1.5rem;
  align-items: center;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-pill);
  padding: 0.1875rem 0.5rem;
  color: var(--color-deep-pine);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--line-height-utility);
}

.stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.stack--xs {
  gap: var(--space-1);
}

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

.stack--md {
  gap: var(--space-3);
}

.stack--lg {
  gap: var(--space-4);
}

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

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

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

.cluster--sm {
  gap: var(--space-2);
}

.cluster--lg {
  gap: var(--space-6);
}

@media (max-width: 599px) {
  .card-content {
    padding: var(--space-4);
  }

  .button {
    width: 100%;
  }

  .cluster .button {
    flex: 1 1 100%;
  }
}

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

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

  .card:hover .card-media img {
    transform: none;
  }
}


.site-header {
  position: relative;
  z-index: 80;
  height: 6.875rem;
  color: var(--color-deep-pine);
}

.site-header__shell {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid var(--color-border-brass);
  background: var(--color-header-surface);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  transition: top var(--transition-header), width var(--transition-header), border-radius var(--transition-header), box-shadow var(--transition-header), transform var(--transition-header);
}

.site-header__utility {
  height: 2rem;
  border-bottom: 1px solid rgba(168, 130, 78, 0.3);
}

.site-header__utility-inner {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: flex-end;
}

.site-header__utility-list,
.site-header__nav-list {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-header__utility-list {
  gap: var(--space-6);
}

.site-header__utility-list li,
.site-header__nav-list li,
.site-header__utility-list li + li,
.site-header__nav-list li + li {
  margin: 0;
  padding: 0;
}

.site-header__utility-list a {
  color: var(--color-deep-pine);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
  text-decoration: none;
}

.site-header__main {
  position: relative;
  display: grid;
  height: 4.875rem;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: var(--space-4);
}

.site-header__nav {
  min-width: 0;
}

.site-header__nav--left {
  justify-self: end;
}

.site-header__nav--right {
  justify-self: start;
}

.site-header__nav-list {
  gap: clamp(0.75rem, 1.5vw, 1.5rem);
  white-space: nowrap;
}

.site-header__nav-link {
  position: relative;
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-deep-pine);
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.site-header__nav-link::after {
  position: absolute;
  right: 0;
  bottom: 0.35rem;
  left: 0;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--color-brushed-brass);
  content: '';
  transition: transform var(--transition-color);
}

.site-header__nav-link:hover::after,
.site-header__nav-link[aria-current='page']::after {
  transform: scaleX(1);
}

.site-header__brand {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-self: center;
  gap: var(--space-2);
  color: var(--color-deep-pine);
  text-decoration: none;
  white-space: nowrap;
}

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

.site-header__wordmark {
  font-family: var(--font-heading);
  font-size: var(--font-size-wordmark);
  line-height: 1;
  letter-spacing: -0.02em;
}

.site-header__actions {
  position: absolute;
  top: 50%;
  right: 0;
  display: flex;
  align-items: center;
  transform: translateY(-50%);
}

.site-header__actions .button {
  min-height: 2.5rem;
  padding-inline: 0.9rem;
  font-size: 0.8125rem;
  white-space: nowrap;
}

.site-header__menu-toggle {
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-control);
  background: transparent;
  color: var(--color-deep-pine);
}

.site-header__menu-icon,
.site-header__menu-icon::before,
.site-header__menu-icon::after {
  display: block;
  width: 1.25rem;
  height: 1px;
  background: currentColor;
  content: '';
  transition: transform var(--transition-color), opacity var(--transition-color);
}

.site-header__menu-icon {
  position: relative;
}

.site-header__menu-icon::before,
.site-header__menu-icon::after {
  position: absolute;
  left: 0;
}

.site-header__menu-icon::before { top: -0.4rem; }
.site-header__menu-icon::after { top: 0.4rem; }

.site-header.is-menu-open .site-header__menu-icon { background: transparent; }
.site-header.is-menu-open .site-header__menu-icon::before { transform: translateY(0.4rem) rotate(45deg); }
.site-header.is-menu-open .site-header__menu-icon::after { transform: translateY(-0.4rem) rotate(-45deg); }

.site-header.is-scrolled .site-header__shell {
  position: fixed;
  top: 1rem;
  left: 1.25rem;
  width: calc(100% - 2.5rem);
  border: 1px solid var(--color-border-brass);
  border-radius: 0.875rem;
  box-shadow: var(--shadow-floating);
}

.site-header.is-scrolled .site-header__utility {
  display: none;
}

.site-header.is-scrolled .site-header__main {
  height: 4rem;
}

@media (max-width: 1199px) {
  .site-header__nav-list {
    gap: 0.875rem;
  }

  .site-header__nav-link {
    font-size: 0.75rem;
  }

  .site-header__actions .button {
    width: 2.5rem;
    overflow: hidden;
    padding: 0;
    font-size: 0;
  }

  .site-header__actions .button::before {
    width: 0.8rem;
    height: 0.8rem;
    border: 1px solid currentColor;
    border-radius: 50%;
    content: '';
  }
}

@media (max-width: 819px) {
  .site-header {
    height: 4rem;
  }

  .site-header__shell {
    position: fixed;
    border-bottom: 1px solid var(--color-border-brass);
  }

  .site-header__utility,
  .site-header__nav,
  .site-header__actions {
    display: none;
  }

  .site-header__main {
    display: flex;
    height: 4rem;
    justify-content: space-between;
  }

  .site-header__brand {
    justify-self: auto;
  }

  .site-header__logo {
    width: 2.5rem;
    height: 2.5rem;
    flex-basis: 2.5rem;
  }

  .site-header__wordmark {
    font-size: 1.125rem;
  }

  .site-header__menu-toggle {
    display: inline-flex;
  }

  .site-header__mobile-menu {
    position: fixed;
    top: 4rem;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    overflow-y: auto;
    visibility: hidden;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    background-image: linear-gradient(var(--color-image-overlay), var(--color-image-overlay)), url('/src/media/wieczor-pokerowy-przy-stole.webp');
    background-position: center;
    background-size: cover;
    padding: 2rem var(--container-padding) calc(2rem + env(safe-area-inset-bottom));
    pointer-events: none;
    transition: opacity var(--transition-header), visibility var(--transition-header);
  }

  .site-header__mobile-menu.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .site-header__mobile-menu-inner {
    width: min(100%, 35rem);
    margin: auto;
  }

  .site-header__mobile-brand {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    margin-bottom: var(--space-8);
    color: var(--color-warm-ivory);
  }

  .site-header__mobile-brand img {
    width: 4.5rem;
    height: 4.5rem;
    object-fit: contain;
  }

  .site-header__mobile-brand span {
    font-family: var(--font-heading);
    font-size: 1.375rem;
    line-height: 1;
  }

  .site-header__mobile-list {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .site-header__mobile-list li,
  .site-header__mobile-list li + li {
    margin: 0;
    border-top: 1px solid rgba(169, 130, 78, 0.72);
  }

  .site-header__mobile-list li:last-child {
    border-bottom: 1px solid rgba(169, 130, 78, 0.72);
  }

  .site-header__mobile-list a {
    display: block;
    padding: 0.65rem 0;
    color: var(--color-warm-ivory);
    font-family: var(--font-heading);
    font-size: clamp(1.875rem, 8vw, 2.25rem);
    line-height: 1.15;
    text-decoration: none;
  }

  .site-header__mobile-menu .button {
    margin-top: var(--space-8);
  }

  .site-header.is-scrolled .site-header__shell {
    top: 0.875rem;
    left: 0.875rem;
    width: calc(100% - 1.75rem);
    border-radius: 0.875rem;
  }

  .site-header.is-scrolled .site-header__main {
    height: 4rem;
  }

  .site-header.is-scrolled .site-header__mobile-menu {
    top: 4.875rem;
  }
}

@media (min-width: 820px) {
  .site-header__mobile-menu {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header__shell,
  .site-header__mobile-menu,
  .site-header__menu-icon,
  .site-header__menu-icon::before,
  .site-header__menu-icon::after {
    transition: none;
  }
}


.site-footer {
  position: relative;
  overflow: hidden;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.site-footer__image {
  min-height: 37rem;
  padding: 15rem 0 4rem;
  background-image: linear-gradient(180deg, rgba(32, 53, 45, 0.18), rgba(32, 53, 45, 0.58)), url('/src/media/doswiadczenie-kulinarne-poker-przy-stole.webp');
  background-position: center;
  background-size: cover;
}

.site-footer__panel {
  position: relative;
  width: min(calc(100% - (var(--container-padding) * 2)), var(--container-max));
  margin: 0 auto;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-warm-ivory);
  color: var(--color-deep-pine);
  padding: clamp(2rem, 5vw, 4rem);
}



.site-footer__top,
.site-footer__legal,
.site-footer__newsletter,
.site-footer__brand,
.site-footer__column {
  position: relative;
  z-index: 1;
}

.site-footer__top {
  display: grid;
  grid-template-columns: minmax(15rem, 1.1fr) minmax(0, 2fr);
  gap: clamp(2.5rem, 6vw, 6rem);
}

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

.site-footer__brand-link {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-deep-pine);
  text-decoration: none;
}

.site-footer__logo {
  width: 4rem;
  height: 4rem;
  flex: 0 0 4rem;
  object-fit: contain;
}

.site-footer__wordmark {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.1;
}

.site-footer__statement {
  max-width: 18rem;
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 3vw, 2.4rem);
  line-height: 1.08;
}

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

.site-footer__column h2 {
  margin: 0 0 var(--space-3);
  color: var(--color-deep-pine);
  font-family: var(--font-body);
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: var(--line-height-caption);
  text-transform: uppercase;
}

.site-footer__column ul,
.site-footer__legal-links {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__column ul {
  flex-direction: column;
  gap: var(--space-2);
}

.site-footer__column li,
.site-footer__legal-links li,
.site-footer__column li + li,
.site-footer__legal-links li + li {
  margin: 0;
}

.site-footer__column a,
.site-footer__legal a {
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  text-decoration: none;
}

.site-footer__newsletter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  margin-top: clamp(2.5rem, 5vw, 4rem);
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-6);
}

.site-footer__newsletter-copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.site-footer__newsletter-copy h2,
.site-footer__newsletter-copy p {
  margin: 0;
}

.site-footer__newsletter-copy h2 {
  font-size: var(--font-size-card-title);
}

.site-footer__newsletter-copy p {
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.site-footer__legal {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-6);
  margin-top: var(--space-6);
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
}

.site-footer__legal-copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  margin: 0;
  color: var(--color-muted-ink);
  font-size: var(--font-size-utility);
  line-height: var(--line-height-caption);
}

.site-footer__legal-copy p {
  margin: 0;
}

.site-footer__legal-links {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-3);
}

.site-footer__legal-links a {
  font-size: var(--font-size-utility);
}

.site-footer__bottom-rule {
  position: relative;
  z-index: 1;
  height: 1px;
  margin-top: var(--space-6);
  background: var(--color-brushed-brass);
}

.site-consent {
  position: fixed;
  z-index: 100;
  right: max(var(--container-padding), env(safe-area-inset-right));
  bottom: max(var(--container-padding), env(safe-area-inset-bottom));
  width: min(29rem, calc(100% - (var(--container-padding) * 2)));
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  box-shadow: var(--shadow-floating);
  color: var(--color-deep-pine);
  padding: var(--space-6);
  transition: opacity var(--transition-color), transform var(--transition-color);
}

.site-consent[hidden] {
  display: none;
}

.site-consent.is-hiding {
  opacity: 0;
  transform: translateY(0.75rem);
}

.site-consent__title,
.site-consent__copy {
  margin: 0;
}

.site-consent__title {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: var(--line-height-card);
}

.site-consent__copy {
  margin-top: var(--space-2);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.site-consent__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.site-consent__actions .button {
  flex: 1 1 10rem;
}

@keyframes footer-grain {
  0%, 100% { transform: translate(0, 0); }
  25% { transform: translate(-1%, 1%); }
  50% { transform: translate(1%, -1%); }
  75% { transform: translate(1%, 1%); }
}

@media (max-width: 899px) {
  .site-footer__image {
    min-height: 0;
    padding: 12rem 0 1.5rem;
  }

  .site-footer__top {
    grid-template-columns: 1fr;
  }

  .site-footer__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-8) var(--space-6);
  }
}

@media (max-width: 599px) {
  .site-footer__image {
    padding-top: 9rem;
  }

  .site-footer__panel {
    width: calc(100% - (var(--container-padding) * 2));
    padding: var(--space-6);
  }

  .site-footer__newsletter,
  .site-footer__legal {
    align-items: stretch;
    flex-direction: column;
  }

  .site-footer__newsletter .button {
    width: 100%;
  }

  .site-footer__legal-links {
    justify-content: flex-start;
  }

  .site-consent {
    right: var(--container-padding);
    bottom: var(--container-padding);
    width: calc(100% - (var(--container-padding) * 2));
    padding: var(--space-4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-footer__panel::after {
    animation: none;
  }
}


.kontakt-page {
  overflow: hidden;
}

.kontakt-page .eyebrow {
  margin-block-end: 0;
}

.kontakt-hero {
  padding-block: var(--space-22);
  background: var(--color-warm-ivory);
}

.kontakt-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);
  align-items: end;
  gap: var(--space-6);
}

.kontakt-hero__copy {
  grid-column: 1 / span 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  max-width: 43.125rem;
}

.kontakt-hero__copy h1,
.kontakt-hero__copy p {
  margin: 0;
}

.kontakt-hero__copy .lead {
  max-width: 39rem;
}

.kontakt-hero__place {
  grid-column: 3 / span 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding-block-end: var(--space-2);
}

.kontakt-hero__place-rule {
  display: block;
  width: 100%;
  height: 1px;
  background: var(--color-border-brass);
}

.kontakt-hero__place p {
  margin: 0;
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
}

.kontakt-channels,
.kontakt-message,
.kontakt-map-section,
.kontakt-travel {
  padding-block: var(--space-22);
}

.kontakt-section-heading,
.kontakt-message__intro,
.kontakt-map-section__heading,
.kontakt-travel__intro {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.kontakt-section-heading > *,
.kontakt-message__intro > *,
.kontakt-map-section__heading > *,
.kontakt-travel__intro > * {
  margin: 0;
}

.kontakt-channels__heading {
  margin-block-end: var(--space-8);
}

.kontakt-channels__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
}

.kontakt-channel-card,
.kontakt-travel-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
  transition: border-color var(--transition-color), background-color var(--transition-color);
}

.kontakt-channel-card:hover,
.kontakt-travel-card:hover {
  border-color: var(--color-border-brass);
  background: #fffefb;
}

.kontakt-channel-card__icon,
.kontakt-travel-card__icon {
  display: grid;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  place-items: center;
  margin-block-end: var(--space-6);
  border: 1px solid var(--color-border-brass);
  border-radius: 50%;
  color: var(--color-deep-pine);
}

.kontakt-channel-card__icon svg,
.kontakt-travel-card__icon svg {
  width: 1.5rem;
  height: 1.5rem;
}

.kontakt-channel-card__content,
.kontakt-travel-card__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.kontakt-channel-card__content > *,
.kontakt-travel-card__content > * {
  margin: 0;
}

.kontakt-channel-card__fact {
  width: 100%;
  border-block: 1px solid var(--color-border-brass);
  padding-block: var(--space-3);
  font-weight: 700;
}

.kontakt-inline-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  font-weight: 700;
  text-decoration: none;
  background-image: linear-gradient(var(--color-brushed-brass), var(--color-brushed-brass));
  background-repeat: no-repeat;
  background-position: left calc(100% - 0.35rem);
  background-size: 0 1px;
  transition: color var(--transition-color), background-size var(--transition-color);
}

.kontakt-inline-link:hover {
  background-size: 100% 1px;
}

.kontakt-message {
  background: linear-gradient(115deg, rgba(221, 228, 216, 0.42), rgba(244, 239, 229, 0.78));
  border-block: 1px solid var(--color-border-brass);
}

.kontakt-message__intro {
  margin-block-end: var(--space-8);
}

.kontakt-message__grid {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
  align-items: start;
  gap: var(--space-8);
}

.kontakt-form-panel,
.kontakt-hours-panel {
  min-width: 0;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  padding: var(--space-6);
}

.kontakt-form-panel {
  background: var(--color-warm-white);
}

.kontakt-form-panel__heading,
.kontakt-hours-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.kontakt-form-panel__heading > *,
.kontakt-hours-panel > * {
  margin: 0;
}

.kontakt-form-panel__heading p {
  max-width: 37rem;
}

.kontakt-form {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  margin-block-start: var(--space-6);
}

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

.kontakt-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.kontakt-field--full {
  grid-column: 1 / -1;
}

.kontakt-field label {
  min-width: 0;
}

.kontakt-required,
.kontakt-optional {
  margin-inline-start: var(--space-1);
  color: var(--color-muted-ink);
  font-size: var(--font-size-utility);
  font-weight: 400;
}

.kontakt-field input,
.kontakt-field textarea {
  min-height: 3rem;
  border-radius: var(--radius-control);
}

.kontakt-field textarea {
  min-height: 9.375rem;
}

.kontakt-field__error {
  min-height: 1.25rem;
  margin: var(--space-2) 0 0;
  color: #9e3d2f;
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
}

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

.kontakt-form__footer > * {
  min-width: 0;
}

.kontakt-form__status {
  flex: 1 1 15rem;
  margin: 0;
  color: var(--color-sage-green);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
}

.kontakt-hours-panel {
  background: var(--color-soft-sage);
}

.kontakt-hours-panel__value {
  border-block: 1px solid var(--color-border-brass);
  padding-block: var(--space-4);
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 2.3vw, 2rem);
  line-height: var(--line-height-heading);
}

.kontakt-map-section__heading {
  margin-block-end: var(--space-8);
}

.kontakt-map-layout {
  position: relative;
  min-width: 0;
}

.kontakt-map-frame {
  min-width: 0;
  height: clamp(26.25rem, 35vw, 28.75rem);
  overflow: hidden;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
}

.kontakt-map-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  filter: saturate(0.55) sepia(0.08);
}

.kontakt-map-card {
  position: absolute;
  z-index: 1;
  bottom: var(--space-6);
  left: var(--space-6);
  width: min(21.25rem, calc(100% - 3rem));
  min-width: 0;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: rgba(255, 253, 248, 0.95);
  box-shadow: var(--shadow-floating);
  padding: var(--space-6);
}

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

.kontakt-map-card__content > * {
  margin: 0;
}

.kontakt-map-card .button {
  min-height: 3rem;
}

.kontakt-map-section__caption {
  max-width: 38rem;
  margin: var(--space-6) 0 0;
  color: var(--color-muted-ink);
}

.kontakt-travel {
  padding-block-end: var(--space-30);
}

.kontakt-travel__intro {
  margin-block-end: var(--space-8);
}

.kontakt-travel__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-8);
}

.kontakt-travel-card__content p {
  max-width: 31rem;
}

.kontakt-travel__note {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin-block-start: var(--space-8);
  border-inline-start: 3px solid var(--color-terracotta);
  padding-inline-start: var(--space-4);
}

.kontakt-travel__note > * {
  margin: 0;
}

.kontakt-travel__note span {
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.kontakt-travel__note p {
  max-width: 42rem;
}

@media (max-width: 959px) {
  .kontakt-hero__grid {
    grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  }

  .kontakt-message__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-form__fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-field--full {
    grid-column: 1 / span 1;
  }
}

@media (min-width: 621px) and (max-width: 860px) {
  .kontakt-channels__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kontakt-channel-card--address {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .kontakt-hero,
  .kontakt-channels,
  .kontakt-message,
  .kontakt-map-section,
  .kontakt-travel {
    padding-block: var(--space-16);
  }

  .kontakt-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .kontakt-hero__copy,
  .kontakt-hero__place {
    grid-column: 1 / span 1;
    width: 100%;
  }

  .kontakt-hero__copy .lead {
    max-width: none;
  }

  .kontakt-hero__place {
    padding-block-end: 0;
  }

  .kontakt-travel__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .kontakt-map-layout {
    display: flex;
    flex-direction: column;
    gap: var(--space-6);
  }

  .kontakt-map-card {
    position: static;
    width: 100%;
    box-shadow: none;
  }

  .kontakt-map-frame {
    order: 2;
    height: 20rem;
  }

  .kontakt-map-card {
    order: 1;
  }
}

@media (max-width: 620px) {
  .kontakt-channels__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-channel-card,
  .kontakt-travel-card,
  .kontakt-form-panel,
  .kontakt-hours-panel,
  .kontakt-map-card {
    padding: var(--space-6);
  }

  .kontakt-channels__heading,
  .kontakt-message__intro,
  .kontakt-travel__intro {
    margin-block-end: var(--space-6);
  }

  .kontakt-form__footer {
    align-items: stretch;
  }

  .kontakt-form__footer .button {
    width: 100%;
  }
}

@media (max-width: 599px) {
  .kontakt-hero {
    padding-block: var(--space-16);
  }

  .kontakt-hero__copy {
    gap: var(--space-4);
  }

  .kontakt-hero__copy h1 {
    font-size: 2.625rem;
    line-height: var(--line-height-tight);
  }

  .kontakt-map-frame {
    min-height: 20rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kontakt-channel-card,
  .kontakt-travel-card,
  .kontakt-inline-link {
    transition: none;
  }
}


.cookies-page {
  background: var(--color-warm-ivory);
}

.cookies-page__hero {
  padding-block: clamp(5.5rem, 9vw, 6.5rem) clamp(3rem, 6vw, 5.5rem);
}

.cookies-page__hero-container,
.cookies-page__document-layout {
  min-width: 0;
}

.cookies-page__hero-copy {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.cookies-page__hero-copy .eyebrow {
  margin-block-end: 0;
}

.cookies-page__hero-copy h1,
.cookies-page__hero-copy p {
  margin: 0;
}

.cookies-page__hero-copy h1 {
  font-size: clamp(3.5rem, 5vw, 4rem);
}

.cookies-page__hero-copy .lead {
  width: min(100%, 40rem);
  color: var(--color-muted-ink);
  line-height: 1.65;
}

.cookies-page__hero-rule,
.cookies-page__inner-rule,
.cookies-page__settings-rule,
.cookies-page__updates-rule {
  width: 100%;
  height: 1px;
  flex: 0 0 1px;
  background: var(--color-border-brass);
}

.cookies-page__document-layout {
  display: grid;
  grid-template-columns: minmax(15rem, 16.875rem) minmax(0, 1fr);
  column-gap: clamp(3rem, 7vw, 7.5rem);
  align-items: start;
  padding-block-end: 6.5rem;
}

.cookies-page__toc {
  width: 100%;
  min-width: 0;
}

.cookies-page__toc-panel {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  position: sticky;
  top: 8rem;
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
}

.cookies-page__toc-title {
  margin: 0;
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-caption);
  text-transform: uppercase;
}

.cookies-page__toc-toggle {
  display: none;
}

.cookies-page__toc-nav {
  width: 100%;
  min-width: 0;
}

.cookies-page__toc-nav ol {
  display: flex;
  margin: 0;
  padding: 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  list-style: none;
}

.cookies-page__toc-nav li {
  width: 100%;
  min-width: 0;
}

.cookies-page__toc-nav a {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-2);
  padding-block: var(--space-2);
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
}

.cookies-page__toc-nav a::after {
  grid-column: 2;
  width: 0;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
  transition: width var(--transition-color);
}

.cookies-page__toc-nav a:hover::after,
.cookies-page__toc-nav a[aria-current="location"]::after {
  width: 100%;
}

.cookies-page__toc-nav span {
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-variant-numeric: tabular-nums;
  line-height: 1.7;
}

.cookies-page__toc-note {
  margin: 0;
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: 1.55;
}

.cookies-page__article {
  display: flex;
  width: min(100%, 47.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: 5.5rem;
}

.cookies-page__section {
  width: 100%;
  min-width: 0;
  scroll-margin-top: 8rem;
}

.cookies-page__section > h2 {
  width: min(100%, 45rem);
  margin-block-end: var(--space-6);
  font-size: clamp(2rem, 3vw, 2.75rem);
}

.cookies-page__definition-copy,
.cookies-page__duration-copy,
.cookies-page__updates-copy {
  width: min(100%, 42.5rem);
}

.cookies-page__definition-copy p:last-child,
.cookies-page__duration-copy p:last-child,
.cookies-page__updates-copy p:last-child {
  margin-block-end: 0;
}

.cookies-page__choice-card {
  display: flex;
  width: min(100%, 45rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-8);
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
}

.cookies-page__choice-card p {
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: 1.35;
}

.cookies-page__categories-intro {
  width: min(100%, 42.5rem);
}

.cookies-page__categories-intro p {
  margin-block-end: var(--space-8);
}

.cookies-page__table-wrap {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  border-top: 1px solid var(--color-border-brass);
}

.cookies-page__category-table {
  width: 100%;
  min-width: 42rem;
  margin: 0;
  table-layout: fixed;
}

.cookies-page__category-table th:nth-child(1) { width: 24%; }
.cookies-page__category-table th:nth-child(2) { width: 50%; }
.cookies-page__category-table th:nth-child(3) { width: 26%; }

.cookies-page__category-table th,
.cookies-page__category-table td {
  padding: var(--space-4) var(--space-3);
}

.cookies-page__category-table thead th {
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.cookies-page__category-table tbody th {
  color: var(--color-deep-pine);
  font-size: var(--font-size-body);
}

.cookies-page__category-table td:last-child {
  color: var(--color-muted-ink);
  font-size: 0.875rem;
  line-height: 1.5;
}

.cookies-page__category-cards {
  display: none;
}

.cookies-page__duration-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.cookies-page__duration-copy p,
.cookies-page__duration-copy .cookies-page__inner-rule {
  margin: 0;
}

.cookies-page__source-list {
  display: flex;
  width: min(100%, 45rem);
  margin: var(--space-8) 0 0;
  min-width: 0;
  flex-direction: column;
}

.cookies-page__source-list > div {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  border-bottom: 1px solid var(--color-border-ink);
  padding-block: var(--space-6);
}

.cookies-page__source-list > div:first-child {
  border-top: 1px solid var(--color-border-ink);
}

.cookies-page__source-list dt {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
}

.cookies-page__source-list dd {
  width: min(100%, 40rem);
  margin: 0;
}

.cookies-page__settings-panel {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-8);
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
  padding: var(--space-8);
}

.cookies-page__settings-panel > h2 {
  width: min(100%, 40rem);
  margin: 0;
}

.cookies-page__settings-intro {
  display: flex;
  width: min(100%, 40rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
}

.cookies-page__settings-intro p {
  margin: 0;
}

.cookies-page__settings-button {
  width: auto;
  min-width: 0;
}

.cookies-page__browser-card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
}

.cookies-page__browser-card h3 {
  margin: 0;
}

.cookies-page__steps {
  display: flex;
  width: min(100%, 40rem);
  margin: 0;
  padding: 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  list-style: none;
}

.cookies-page__steps li {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-3);
}

.cookies-page__steps li > span {
  color: var(--color-terracotta);
  font-weight: 800;
  line-height: 1.55;
}

.cookies-page__steps li > div {
  min-width: 0;
}

.cookies-page__steps p {
  margin: var(--space-1) 0 0;
}

.cookies-page__settings-note {
  width: min(100%, 40rem);
  margin: 0;
  border-left: 2px solid var(--color-brushed-brass);
  padding-left: var(--space-4);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: 1.6;
}

.cookies-page__updates-copy {
  width: min(100%, 42.5rem);
}

.cookies-page__updates-rule {
  width: min(100%, 45rem);
  margin-top: var(--space-12);
}

.cookies-page__closing-note {
  width: min(100%, 38.75rem);
  margin: var(--space-6) 0 0;
  color: var(--color-muted-ink);
  font-size: 0.9375rem;
  line-height: 1.6;
}

@media (max-width: 1010px) {
  .cookies-page__document-layout {
    grid-template-columns: minmax(13.5rem, 15rem) minmax(0, 1fr);
    column-gap: var(--space-12);
  }

  .cookies-page__article {
    width: 100%;
  }
}

@media (max-width: 820px) {
  .cookies-page__hero {
    padding-block: 4rem 3rem;
  }

  .cookies-page__hero-copy {
    width: 100%;
  }

  .cookies-page__hero-copy h1 {
    font-size: 2.625rem;
  }

  .cookies-page__hero-copy .lead {
    width: 100%;
    font-size: 1.0625rem;
  }

  .cookies-page__document-layout {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: var(--space-8);
    padding-block-end: 4.5rem;
  }

  .cookies-page__toc-panel {
    position: static;
    border: 0;
    border-radius: var(--radius-card);
    background: var(--color-soft-sage);
    padding: var(--space-6);
  }

  .cookies-page__article {
    gap: 4rem;
  }

  .cookies-page__section > h2 {
    width: 100%;
    font-size: 2rem;
  }

  .cookies-page__definition-copy,
  .cookies-page__duration-copy,
  .cookies-page__updates-copy,
  .cookies-page__categories-intro {
    width: 100%;
  }

  .cookies-page__choice-card,
  .cookies-page__source-list {
    width: 100%;
  }

  .cookies-page__category-table,
  .cookies-page__table-wrap {
    display: none;
  }

  .cookies-page__category-cards {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: var(--space-3);
  }

  .cookies-page__category-card {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    gap: var(--space-3);
    border: 1px solid var(--color-border-brass);
    border-radius: var(--radius-card);
    background: var(--color-warm-white);
    padding: var(--space-6);
  }

  .cookies-page__category-card h3,
  .cookies-page__category-card p {
    margin: 0;
  }
}

@media (max-width: 599px) {
  .cookies-page__hero {
    padding-block: 4rem 3rem;
  }

  .cookies-page__hero-copy {
    gap: var(--space-3);
  }

  .cookies-page__toc-panel {
    gap: var(--space-3);
    padding: var(--space-4);
  }

  .cookies-page__toc-title {
    display: none;
  }

  .cookies-page__toc-toggle {
    display: flex;
    width: 100%;
    min-height: 2.75rem;
    align-items: center;
    justify-content: space-between;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--color-deep-pine);
    font-size: var(--font-size-caption);
    font-weight: 800;
    letter-spacing: 0.08em;
    text-align: left;
    text-transform: uppercase;
  }

  .cookies-page__toc-toggle span {
    color: var(--color-terracotta);
    font-size: 1.25rem;
  }

  .cookies-page__toc-toggle[aria-expanded="true"] span {
    transform: rotate(45deg);
  }

  .cookies-page__toc-nav[hidden] {
    display: none;
  }

  .cookies-page__article {
    gap: 3.5rem;
  }

  .cookies-page__section > h2 {
    margin-block-end: var(--space-4);
  }

  .cookies-page__choice-card,
  .cookies-page__settings-panel,
  .cookies-page__category-card {
    padding: var(--space-4);
  }

  .cookies-page__choice-card p {
    font-size: 1.25rem;
  }

  .cookies-page__settings-panel {
    gap: var(--space-6);
  }

  .cookies-page__settings-button {
    width: 100%;
    min-height: 3rem;
  }

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

  .cookies-page__steps {
    gap: var(--space-4);
  }

  .cookies-page__source-list > div {
    padding-block: var(--space-4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookies-page__toc-toggle span {
    transition: none;
  }
}


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

.privacy-page__hero {
  padding-block: var(--space-22) var(--space-16);
}

.privacy-page__hero-container,
.privacy-page__guide-container,
.privacy-page__document-shell {
  min-width: 0;
}

.privacy-page__hero-copy {
  width: min(100%, 42.5rem);
  min-width: 0;
}

.privacy-page__hero-copy .lead {
  max-width: 37rem;
}

.privacy-page__updated {
  display: flex;
  width: fit-content;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin-block-end: 0;
  padding-block-start: var(--space-2);
}

.privacy-page__updated-date {
  min-width: 9rem;
  border-bottom: 1px dashed var(--color-border-brass);
  outline: none;
}

.privacy-page__updated-date:focus {
  border-bottom-color: var(--color-terracotta);
}

.privacy-page__guide {
  padding-block: var(--space-12) var(--space-22);
  border-top: 1px solid var(--color-border-brass);
}

.privacy-page__guide-container {
  display: grid;
  grid-template-columns: minmax(0, 20rem) minmax(0, 31.25rem) minmax(0, 1fr);
  column-gap: var(--space-12);
  align-items: start;
}

.privacy-page__guide-intro {
  grid-column: 2;
  min-width: 0;
  max-width: 31.25rem;
}

.privacy-page__guide-intro > :last-child {
  margin-block-end: 0;
}

.privacy-page__toc {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  max-width: 20rem;
  padding: var(--space-6);
  border-top-color: var(--color-brushed-brass);
}

.privacy-page__toc h3 {
  margin-block-end: var(--space-4);
}

.privacy-page__toc ol {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding-inline-start: 1.5rem;
}

.privacy-page__toc li {
  min-width: 0;
  padding-inline-start: var(--space-1);
}

.privacy-page__toc a {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
  text-decoration-color: transparent;
  transition: color var(--transition-color), text-decoration-color var(--transition-color), border-color var(--transition-color);
}

.privacy-page__toc a:hover,
.privacy-page__toc a.is-active {
  color: var(--color-terracotta);
  text-decoration-color: var(--color-brushed-brass);
}

.privacy-page__toc a.is-active {
  border-bottom: 2px solid var(--color-brushed-brass);
}

.privacy-page__document-shell {
  padding-block-end: var(--space-30);
}

.privacy-page__document {
  width: min(100%, 47.5rem);
  min-width: 0;
}

.privacy-page__section {
  min-width: 0;
  padding-block: var(--space-22);
  border-top: 1px solid var(--color-border-brass);
}

.privacy-page__section:first-child {
  padding-block-start: 0;
  border-top: 0;
}

.privacy-page__section-number {
  display: block;
  margin-block-end: var(--space-3);
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
}

.privacy-page__section h2 {
  max-width: 42rem;
}

.privacy-page__section h3 {
  margin-block-start: var(--space-12);
}

.privacy-page__contact-panel {
  display: flex;
  width: min(100%, 32.5rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block-start: var(--space-8);
  padding: var(--space-6);
  border-top-color: var(--color-brushed-brass);
}

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

.privacy-page__contact-panel .eyebrow {
  margin: 0;
}

.privacy-page__email-link {
  overflow-wrap: anywhere;
  color: var(--color-deep-pine);
  font-weight: 700;
  text-decoration-thickness: 1px;
}

.privacy-page__definition-list,
.privacy-page__purpose-list,
.privacy-page__rights-list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0 0 var(--space-6);
}

.privacy-page__definition-list > div,
.privacy-page__purpose-list > div,
.privacy-page__rights-list > div {
  min-width: 0;
}

.privacy-page__definition-list dt,
.privacy-page__purpose-list dt,
.privacy-page__rights-list dt {
  font-weight: 700;
}

.privacy-page__definition-list dd,
.privacy-page__purpose-list dd,
.privacy-page__rights-list dd {
  margin: var(--space-1) 0 0;
  color: var(--color-muted-ink);
}

.privacy-page__minimisation {
  margin-block: var(--space-8) 0;
  border-inline-start-color: var(--color-terracotta);
}

.privacy-page__purpose-module {
  min-width: 0;
  padding-block: var(--space-8);
  border-top: 1px solid var(--color-border-brass);
}

.privacy-page__purpose-module h3 {
  margin-block: 0 var(--space-4);
}

.privacy-page__purpose-module p {
  margin-block-end: var(--space-4);
}

.privacy-page__purpose-list {
  gap: var(--space-4);
  margin-block-end: 0;
}

.privacy-page__transparency-note {
  min-width: 0;
  margin-block-start: var(--space-8);
  padding-block-start: var(--space-6);
  border-top: 1px solid var(--color-border-brass);
}

.privacy-page__transparency-note h3 {
  margin-block: 0 var(--space-3);
}

.privacy-page__transparency-note p {
  margin-block-end: 0;
}

.privacy-page__recipient-list {
  margin-block-end: var(--space-8);
}

.privacy-page__recipient-list li + li {
  margin-block-start: var(--space-3);
}

.privacy-page__section--final {
  padding-block-end: 0;
}

.privacy-page__rights-card {
  display: flex;
  width: min(100%, 50rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
  border-top-color: var(--color-brushed-brass);
}

.privacy-page__rights-card > * {
  min-width: 0;
  margin: 0;
}

.privacy-page__rights-list {
  gap: var(--space-4);
}

.privacy-page__complaint {
  margin-block: var(--space-6) 0;
}

.privacy-page__subsection {
  min-width: 0;
  margin-block-start: var(--space-16);
  padding-block-start: var(--space-16);
  border-top: 1px solid var(--color-border-brass);
}

.privacy-page__subsection h2 {
  max-width: 42rem;
}

.privacy-page__browser-panel {
  display: flex;
  width: min(100%, 47.5rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block-start: var(--space-6);
  padding: var(--space-6);
}

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

.privacy-page__browser-panel h3 {
  margin: 0;
}

.privacy-page__contact-panel--final {
  margin-block-start: var(--space-8);
}

@media (min-width: 980px) {
  .privacy-page__toc {
    position: sticky;
    top: 7rem;
  }
}

@media (max-width: 979px) {
  .privacy-page__guide-container {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-6);
  }

  .privacy-page__guide-intro,
  .privacy-page__toc {
    grid-column: 1;
    grid-row: auto;
    max-width: 31.25rem;
  }

  .privacy-page__guide-intro {
    order: 1;
  }

  .privacy-page__toc {
    order: 2;
  }
}

@media (max-width: 819px) {
  .privacy-page__hero {
    padding-block: var(--space-16) var(--space-12);
  }

  .privacy-page__guide {
    padding-block: var(--space-8) var(--space-16);
  }

  .privacy-page__section {
    padding-block: var(--space-16);
  }

  .privacy-page__subsection {
    margin-block-start: var(--space-12);
    padding-block-start: var(--space-12);
  }
}

@media (max-width: 599px) {
  .privacy-page__hero-copy {
    width: 100%;
  }

  .privacy-page__hero-copy h1 {
    font-size: 2.625rem;
    line-height: 1.02;
  }

  .privacy-page__hero-copy .lead {
    max-width: none;
    font-size: 1.0625rem;
  }

  .privacy-page__guide-container {
    row-gap: var(--space-4);
  }

  .privacy-page__guide-intro,
  .privacy-page__toc {
    max-width: none;
  }

  .privacy-page__toc,
  .privacy-page__contact-panel,
  .privacy-page__rights-card,
  .privacy-page__browser-panel {
    padding: var(--space-4);
  }

  .privacy-page__section h2,
  .privacy-page__subsection h2 {
    font-size: 2rem;
  }

  .privacy-page__section h3 {
    margin-block-start: var(--space-8);
    font-size: 1.5rem;
  }

  .privacy-page__contact-panel,
  .privacy-page__rights-card,
  .privacy-page__browser-panel {
    width: 100%;
  }

  .privacy-page__recipient-list {
    padding-inline-start: 1.25rem;
  }
}


.regulamin-page {
  background: var(--color-warm-ivory);
  color: var(--color-deep-pine);
}

.regulamin-page .regulamin-intro {
  width: 100%;
  padding-block: var(--space-22) var(--space-30);
}

.regulamin-page .regulamin-intro__container {
  display: block;
  min-width: 0;
}

.regulamin-page .regulamin-paper {
  width: min(100%, 51.25rem);
  min-width: 0;
  margin-inline: auto;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  box-shadow: var(--shadow-floating);
  padding: var(--space-16) var(--space-12) var(--space-22);
}

.regulamin-page .regulamin-opening {
  display: block;
  min-width: 0;
}

.regulamin-page .regulamin-opening__lead {
  width: min(100%, 35rem);
  min-width: 0;
}

.regulamin-page .regulamin-opening__meta {
  width: min(100%, 30rem);
  margin-block-end: 0;
  font-variant-numeric: tabular-nums;
}

.regulamin-page .regulamin-contents {
  width: 100%;
  min-width: 0;
  margin-block-start: var(--space-12);
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-control);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.regulamin-page .regulamin-contents h2 {
  margin-block-end: var(--space-4);
  font-size: clamp(1.5rem, 2.2vw, 1.875rem);
}

.regulamin-page .regulamin-contents__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--space-8);
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.regulamin-page .regulamin-contents__list > li {
  width: 100%;
  min-width: 0;
  border-block-start: 1px solid rgba(32, 53, 45, 0.12);
}

.regulamin-page .regulamin-contents__list > li:nth-child(-n + 2) {
  border-block-start: 0;
}

.regulamin-page .regulamin-contents__list a {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  padding-block: var(--space-3);
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
  text-decoration: none;
}

.regulamin-page .regulamin-contents__list a span {
  min-width: 0;
  color: var(--color-brushed-brass);
  font-size: var(--font-size-utility);
  font-variant-numeric: tabular-nums;
}

.regulamin-page .regulamin-contents__list a::after {
  grid-column: 2;
  width: 0;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
  transition: width var(--transition-color);
}

.regulamin-page .regulamin-contents__list a:hover::after,
.regulamin-page .regulamin-contents__list a:focus-visible::after {
  width: 100%;
}

.regulamin-page .regulamin-articles {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-12);
  margin-block-start: var(--space-12);
}

.regulamin-page .regulamin-article {
  width: 100%;
  min-width: 0;
  scroll-margin-top: 7rem;
  border-block-start: 1px solid var(--color-border-brass);
  padding-block-start: var(--space-6);
}

.regulamin-page .regulamin-article__header {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  width: min(100%, 47.5rem);
  min-width: 0;
  align-items: start;
  gap: var(--space-3);
  margin-block-end: var(--space-6);
}

.regulamin-page .regulamin-article__header > * {
  min-width: 0;
}

.regulamin-page .regulamin-article__number {
  width: 3rem;
  min-width: 0;
  padding-block-start: 0.35rem;
  color: var(--color-terracotta);
  font-size: var(--font-size-caption);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  line-height: var(--line-height-caption);
}

.regulamin-page .regulamin-article__header h2 {
  margin: 0;
}

.regulamin-page .regulamin-article__header .eyebrow {
  margin-block-end: var(--space-2);
}

.regulamin-page .regulamin-reading {
  width: min(100%, 47.5rem);
  min-width: 0;
}

.regulamin-page .regulamin-reading p,
.regulamin-page .regulamin-reading li,
.regulamin-page .regulamin-reading dd {
  font-size: 1rem;
  line-height: 1.7;
}

.regulamin-page .regulamin-definitions {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin: var(--space-6) 0;
}

.regulamin-page .regulamin-definitions > div {
  display: grid;
  grid-template-columns: 9.375rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-4);
  padding-block-end: var(--space-3);
  border-block-end: 1px solid var(--color-border-ink);
}

.regulamin-page .regulamin-definitions dt,
.regulamin-page .regulamin-definitions dd {
  min-width: 0;
  margin: 0;
}

.regulamin-page .regulamin-definitions dt {
  font-size: var(--font-size-caption);
  font-weight: 800;
  line-height: var(--line-height-caption);
}

.regulamin-page .regulamin-numbered-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block: 0 var(--space-4);
  padding-inline-start: 1.5rem;
}

.regulamin-page .regulamin-numbered-list > li {
  min-width: 0;
  padding-inline-start: var(--space-1);
}

.regulamin-page .regulamin-numbered-list--conduct {
  gap: var(--space-4);
}

.regulamin-page .regulamin-note {
  width: min(100%, 38.75rem);
  min-width: 0;
  margin-block: var(--space-6) var(--space-4);
  border-inline-start: 1px solid var(--color-brushed-brass);
  padding-inline-start: var(--space-6);
  color: var(--color-muted-ink);
}

.regulamin-page .regulamin-note--privacy {
  width: min(100%, 37.5rem);
}

.regulamin-page .regulamin-note p {
  margin-block-end: 0;
}

.regulamin-page .regulamin-callout {
  display: flex;
  width: min(100%, 35rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block: var(--space-6) 0;
  border-block-start: 1px solid var(--color-brushed-brass);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.regulamin-page .regulamin-callout p,
.regulamin-page .regulamin-callout ul {
  margin: 0;
}

.regulamin-page .regulamin-callout ul {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-inline-start: 1.25rem;
}

.regulamin-page .regulamin-callout li {
  min-width: 0;
}

.regulamin-page .regulamin-marker::before {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  margin-inline-end: var(--space-2);
  border-radius: 50%;
  background: var(--color-terracotta);
  content: "";
}

.regulamin-page .regulamin-reading__intro {
  width: min(100%, 42.5rem);
}

.regulamin-page .regulamin-responsibility {
  display: flex;
  width: min(100%, 38.75rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-block: var(--space-6);
  border-block-start: 1px solid var(--color-brushed-brass);
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
  padding: var(--space-6);
}

.regulamin-page .regulamin-responsibility p,
.regulamin-page .regulamin-responsibility ul {
  margin: 0;
}

.regulamin-page .regulamin-responsibility ul {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-inline-start: 1.25rem;
}

.regulamin-page .regulamin-responsibility li {
  min-width: 0;
}

.regulamin-page .regulamin-status {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block: var(--space-6) 0;
  border-block-start: 1px solid var(--color-brushed-brass);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.regulamin-page .regulamin-status p {
  margin: 0;
}

.regulamin-page a {
  text-decoration-color: var(--color-brushed-brass);
}

@media (max-width: 899px) {
  .regulamin-page .regulamin-intro {
    padding-block: var(--space-16) var(--space-22);
  }

  .regulamin-page .regulamin-paper {
    width: 100%;
    padding: var(--space-12) var(--space-8) var(--space-16);
  }
}

@media (max-width: 719px) {
  .regulamin-page .regulamin-contents__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .regulamin-page .regulamin-contents__list > li:nth-child(-n + 2) {
    border-block-start: 1px solid rgba(32, 53, 45, 0.12);
  }

  .regulamin-page .regulamin-contents__list > li:first-child {
    border-block-start: 0;
  }

  .regulamin-page .regulamin-contents__list a {
    min-height: 2.75rem;
    padding-block: var(--space-3);
  }

  .regulamin-page .regulamin-definitions > div {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }
}

@media (max-width: 599px) {
  .regulamin-page .regulamin-intro {
    padding-block: var(--space-12) var(--space-16);
  }

  .regulamin-page .regulamin-paper {
    border-radius: 0.625rem;
    padding: var(--space-8) var(--space-6) var(--space-12);
  }

  .regulamin-page .regulamin-opening__lead,
  .regulamin-page .regulamin-opening__meta,
  .regulamin-page .regulamin-reading,
  .regulamin-page .regulamin-reading__intro,
  .regulamin-page .regulamin-note,
  .regulamin-page .regulamin-note--privacy,
  .regulamin-page .regulamin-callout,
  .regulamin-page .regulamin-responsibility,
  .regulamin-page .regulamin-status {
    width: 100%;
  }

  .regulamin-page .regulamin-opening h1 {
    font-size: 2.625rem;
  }

  .regulamin-page .regulamin-contents {
    margin-block-start: var(--space-8);
    padding: var(--space-4);
  }

  .regulamin-page .regulamin-contents h2 {
    font-size: 1.5rem;
  }

  .regulamin-page .regulamin-articles {
    gap: var(--space-8);
    margin-block-start: var(--space-8);
  }

  .regulamin-page .regulamin-article {
    padding-block-start: var(--space-6);
    scroll-margin-top: 5rem;
  }

  .regulamin-page .regulamin-article__header {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
    margin-block-end: var(--space-4);
  }

  .regulamin-page .regulamin-article__number {
    width: 100%;
    padding-block-start: 0;
  }

  .regulamin-page .regulamin-article__header h2 {
    font-size: 2rem;
  }

  .regulamin-page .regulamin-reading p,
  .regulamin-page .regulamin-reading li,
  .regulamin-page .regulamin-reading dd {
    line-height: 1.65;
  }

  .regulamin-page .regulamin-note {
    margin-block: var(--space-6) var(--space-4);
    padding-inline-start: var(--space-4);
  }

  .regulamin-page .regulamin-callout,
  .regulamin-page .regulamin-responsibility,
  .regulamin-page .regulamin-status {
    padding: var(--space-4);
  }
}

@media print {
  .regulamin-page {
    background: #fff;
  }

  .regulamin-page .regulamin-intro {
    padding: 0;
  }

  .regulamin-page .regulamin-paper {
    width: 100%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
  }

  .regulamin-page .regulamin-contents,
  .regulamin-page .regulamin-callout,
  .regulamin-page .regulamin-status {
    background: transparent;
  }

  .regulamin-page .regulamin-article {
    break-inside: avoid;
  }

  .regulamin-page a[href]::after {
    color: var(--color-muted-ink);
    content: " (" attr(href) ")";
    font-size: 0.75em;
  }
}


[data-poker-page] {
  overflow: clip;
  background: var(--color-warm-ivory);
}

[data-poker-page] .poker-section {
  padding-block: var(--space-22);
}

[data-poker-page] .poker-section__intro {
  min-width: 0;
}

[data-poker-page] .poker-section__intro > :last-child,
[data-poker-page] .poker-card > :last-child,
[data-poker-page] .poker-step > :last-child,
[data-poker-page] .poker-feature-copy > :last-child,
[data-poker-page] .poker-responsible-copy > :last-child,
[data-poker-page] .poker-faq-heading > :last-child,
[data-poker-page] .poker-closing__content > :last-child {
  margin-block-end: 0;
}

[data-poker-page] .poker-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  font-weight: 700;
  text-decoration: none;
  background-image: linear-gradient(var(--color-brushed-brass), var(--color-brushed-brass));
  background-repeat: no-repeat;
  background-position: 0 calc(100% - 0.45rem);
  background-size: 0 1px;
  transition: color var(--transition-color), background-size var(--transition-color);
}

[data-poker-page] .poker-text-link:hover {
  color: var(--color-terracotta);
  background-size: 100% 1px;
}

[data-poker-page] .poker-hero {
  position: relative;
  display: grid;
  min-height: 42.5rem;
  align-items: end;
  isolation: isolate;
  color: var(--color-warm-ivory);
}

[data-poker-page] .poker-hero__media,
[data-poker-page] .poker-hero__media::after {
  position: absolute;
  inset: 0;
}

[data-poker-page] .poker-hero__media {
  z-index: -2;
  margin: 0;
}

[data-poker-page] .poker-hero__media::after {
  z-index: 1;
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.82) 0%, rgba(32, 53, 45, 0.66) 39%, rgba(32, 53, 45, 0.18) 70%, rgba(32, 53, 45, 0.04) 100%);
  content: "";
}

[data-poker-page] .poker-hero__media img {
  width: 100%;
  height: 100%;
  object-position: 72% center;
}

[data-poker-page] .poker-hero__container {
  width: min(100%, var(--container-max));
  min-width: 0;
  margin-inline: auto;
  padding: var(--space-30) var(--container-padding) var(--space-16);
}

[data-poker-page] .poker-hero__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

[data-poker-page] .poker-hero__content::before {
  width: 3rem;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
}

[data-poker-page] .poker-hero h1,
[data-poker-page] .poker-hero .lead {
  margin: 0;
  color: var(--color-warm-ivory);
}



[data-poker-page] .poker-hero .lead {
  font-size: var(--font-size-lead);
}

[data-poker-page] .poker-hero .eyebrow {
  margin: 0;
  color: var(--color-warm-ivory);
}

[data-poker-page] .poker-hero .eyebrow::before {
  background: var(--color-brushed-brass);
}

[data-poker-page] .poker-hero .button {
  margin-block-start: var(--space-2);
}



[data-poker-page] .poker-pillars__intro h2,
[data-poker-page] .poker-timeline__intro h2,
[data-poker-page] .poker-group__intro h2,
[data-poker-page] .poker-responsible-copy h2,
[data-poker-page] .poker-faq-heading h2,
[data-poker-page] .poker-closing__content h2 {
  margin-block-end: var(--space-4);
}

[data-poker-page] .poker-pillars__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-8);
  align-items: start;
  margin-block-start: var(--space-12);
}

[data-poker-page] .poker-pillars__grid > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-card {
  display: flex;
  min-height: 17.5rem;
  flex-direction: column;
  gap: var(--space-4);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
  transition: border-color var(--transition-color);
}

[data-poker-page] .poker-card:hover {
  border-color: var(--color-border-brass);
}

[data-poker-page] .poker-card--offset {
  margin-block-start: 2.25rem;
}

[data-poker-page] .poker-card--sage {
  background: var(--color-soft-sage);
}

[data-poker-page] .poker-card__rule {
  width: 2.5rem;
  height: 1px;
  background: var(--color-brushed-brass);
}

[data-poker-page] .poker-card h3,
[data-poker-page] .poker-card p {
  margin: 0;
}

[data-poker-page] .poker-card--sage h3 {
  color: var(--color-terracotta);
}

[data-poker-page] .poker-feature {
  display: grid;
  grid-template-columns: minmax(0, 4.5fr) minmax(0, 5.5fr);
  gap: var(--space-16);
  align-items: center;
}

[data-poker-page] .poker-feature > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-feature__media {
  overflow: hidden;
  margin: 0;
  border-radius: var(--radius-card);
  aspect-ratio: 4 / 5;
}

[data-poker-page] .poker-feature__media img {
  width: 100%;
  height: 100%;
  object-position: center 65%;
  transition: transform var(--transition-image);
}

[data-poker-page] .poker-feature__media:hover img {
  transform: scale(1.035);
}

[data-poker-page] .poker-feature-copy {
  width: min(100%, 33.125rem);
}

[data-poker-page] .poker-feature-copy h2 {
  margin-block-end: var(--space-4);
}

[data-poker-page] .poker-feature-copy .eyebrow {
  margin-block-end: var(--space-3);
}

[data-poker-page] .poker-feature-copy blockquote {
  width: min(100%, 29rem);
  margin-block: var(--space-6) 0;
}

[data-poker-page] .poker-timeline {
  background: var(--color-warm-white);
}

[data-poker-page] .poker-timeline__intro {
  width: min(100%, 38.75rem);
  margin-inline: auto;
  text-align: center;
}

[data-poker-page] .poker-timeline__intro .eyebrow {
  justify-content: center;
}

[data-poker-page] .poker-timeline__intro p {
  text-align: left;
}

[data-poker-page] .poker-timeline__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-block-start: var(--space-12);
}

[data-poker-page] .poker-timeline__grid > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-step {
  display: flex;
  min-height: 16.875rem;
  flex-direction: column;
  gap: var(--space-3);
  padding: 0 var(--space-6);
  border-inline-start: 1px solid var(--color-border-brass);
}

[data-poker-page] .poker-step:first-child {
  border-inline-start: 0;
  padding-inline-start: 0;
}

[data-poker-page] .poker-step:last-child {
  padding-inline-end: 0;
}

[data-poker-page] .poker-step--sage {
  background: var(--color-soft-sage);
  padding-block: var(--space-6);
}

[data-poker-page] .poker-step__number {
  color: var(--color-terracotta);
  font-family: var(--font-heading);
  font-size: 3.25rem;
  line-height: 1;
}

[data-poker-page] .poker-step h3,
[data-poker-page] .poker-step p {
  margin: 0;
}

[data-poker-page] .poker-dining {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: var(--space-16);
  align-items: center;
}

[data-poker-page] .poker-dining > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-dining__copy {
  width: min(100%, 33.125rem);
}

[data-poker-page] .poker-dining__copy h2 {
  margin-block-end: var(--space-4);
}

[data-poker-page] .poker-dining__quote {
  width: min(100%, 26.25rem);
  margin-block: var(--space-6) var(--space-2);
  border-inline-start: 1px solid var(--color-brushed-brass);
  padding-inline-start: var(--space-6);
  font-family: var(--font-heading);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  line-height: 1.3;
}

[data-poker-page] .poker-dining__media {
  overflow: hidden;
  margin: 0;
  border-radius: var(--radius-card);
  aspect-ratio: 3 / 2;
  min-height: 30rem;
}

[data-poker-page] .poker-dining__media img {
  width: 100%;
  height: 100%;
  object-position: center;
  transition: transform var(--transition-image);
}

[data-poker-page] .poker-dining__media:hover img {
  transform: scale(1.035);
}

[data-poker-page] .poker-group-panel {
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
  padding: var(--space-12);
}



[data-poker-page] .poker-group__intro .rule {
  width: 3rem;
  margin: var(--space-6) 0 0;
}

[data-poker-page] .poker-group__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3.5fr) minmax(0, 3.5fr);
  gap: var(--space-6);
  align-items: stretch;
  margin-block-start: var(--space-12);
}

[data-poker-page] .poker-group__grid > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-group-card {
  display: flex;
  min-height: 17.5rem;
  flex-direction: column;
  gap: var(--space-4);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
}

[data-poker-page] .poker-group-card--sage {
  background: rgba(255, 253, 248, 0.62);
}

[data-poker-page] .poker-group-card h3,
[data-poker-page] .poker-group-card p,
[data-poker-page] .poker-group-card ul {
  margin: 0;
}

[data-poker-page] .poker-group-card .tag {
  align-self: flex-start;
}

[data-poker-page] .poker-group-card .poker-text-link {
  margin-block-start: auto;
}

[data-poker-page] .poker-group-card ul {
  padding-inline-start: 1.1rem;
}

[data-poker-page] .poker-group-card li + li {
  margin-block-start: var(--space-2);
}

[data-poker-page] .poker-responsible {
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

[data-poker-page] .poker-responsible__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 5fr);
  justify-content: space-between;
  gap: var(--space-16);
  align-items: start;
}

[data-poker-page] .poker-responsible__grid > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-responsible-copy {
  width: min(100%, 33.75rem);
}

[data-poker-page] .poker-responsible h2,
[data-poker-page] .poker-responsible h3,
[data-poker-page] .poker-responsible p,
[data-poker-page] .poker-responsible a {
  color: var(--color-warm-ivory);
}

[data-poker-page] .poker-responsible .eyebrow {
  color: #dd9a80;
}

[data-poker-page] .poker-responsible__rules {
  display: flex;
  width: min(100%, 27.5rem);
  min-width: 0;
  flex-direction: column;
}

[data-poker-page] .poker-responsible-rule {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-6);
  border-block-start: 1px solid var(--color-border-brass);
}

[data-poker-page] .poker-responsible-rule:last-child {
  border-block-end: 1px solid var(--color-border-brass);
}

[data-poker-page] .poker-responsible-rule > * {
  min-width: 0;
}

[data-poker-page] .poker-responsible-rule__number {
  color: var(--color-brushed-brass);
  font-weight: 700;
}

[data-poker-page] .poker-responsible-rule h3,
[data-poker-page] .poker-responsible-rule p {
  margin: 0;
}

[data-poker-page] .poker-responsible-rule p {
  color: rgba(244, 239, 229, 0.84);
}

[data-poker-page] .poker-responsible__link {
  margin-block-start: var(--space-4);
}

[data-poker-page] .poker-faq__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
  gap: var(--space-16);
  align-items: start;
}

[data-poker-page] .poker-faq__grid > * {
  min-width: 0;
  width: 100%;
}

[data-poker-page] .poker-faq-heading {
  width: min(100%, 26.25rem);
}

[data-poker-page] .poker-faq-list {
  width: 100%;
}

[data-poker-page] .poker-faq-list details {
  overflow: hidden;
  margin: 0;
  border-block-end: 1px solid var(--color-border-brass);
}

[data-poker-page] .poker-faq-list details:first-child {
  border-block-start: 1px solid var(--color-border-brass);
}

[data-poker-page] .poker-faq-list summary {
  position: relative;
  display: flex;
  min-height: 4rem;
  align-items: center;
  padding: var(--space-4) 3rem var(--space-4) 0;
  list-style: none;
  font-size: var(--font-size-lead);
  font-weight: 700;
}

[data-poker-page] .poker-faq-list summary::-webkit-details-marker {
  display: none;
}

[data-poker-page] .poker-faq-list summary::after {
  position: absolute;
  inset-inline-end: 0;
  width: 1.75rem;
  height: 1.75rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--color-border-brass);
  border-radius: 50%;
  color: var(--color-terracotta);
  content: "+";
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
}

[data-poker-page] .poker-faq-list details[open] summary::after {
  content: "−";
}

[data-poker-page] .poker-faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--transition-color);
}

[data-poker-page] details[open] .poker-faq-answer {
  grid-template-rows: 1fr;
}

[data-poker-page] .poker-faq-answer > div {
  overflow: hidden;
}

[data-poker-page] .poker-faq-answer p {
  width: min(100%, 38.75rem);
  margin: 0;
  padding-block: 0 var(--space-6);
}

[data-poker-page] .poker-faq-answer .poker-text-link {
  display: inline-flex;
  margin-block: 0 var(--space-4);
}

[data-poker-page] .poker-closing {
  padding-block-start: var(--space-22);
}

[data-poker-page] .poker-closing__panel {
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-16);
}

[data-poker-page] .poker-closing__content {
  display: flex;
  width: min(100%, 45rem);
  min-width: 0;
  margin-inline: auto;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  text-align: center;
}

[data-poker-page] .poker-closing__content::before {
  width: 3rem;
  height: 1px;
  margin-block-end: var(--space-2);
  background: var(--color-brushed-brass);
  content: "";
}

[data-poker-page] .poker-closing__content h2,
[data-poker-page] .poker-closing__content p,
[data-poker-page] .poker-closing__content .eyebrow {
  margin: 0;
}

[data-poker-page] .poker-closing__lead {
  width: min(100%, 35rem);
  font-size: var(--font-size-lead);
}

[data-poker-page] .poker-closing__helper {
  color: var(--color-muted-ink);
}

@media (max-width: 1039px) {
  [data-poker-page] .poker-timeline__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-6);
  }

  [data-poker-page] .poker-step,
  [data-poker-page] .poker-step:first-child,
  [data-poker-page] .poker-step:last-child {
    min-height: 15rem;
    padding: var(--space-6);
    border: 1px solid var(--color-border-brass);
  }

  [data-poker-page] .poker-group__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  [data-poker-page] .poker-group-card:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 959px) {
  [data-poker-page] .poker-hero {
    min-height: 37.5rem;
  }

  [data-poker-page] .poker-pillars__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  [data-poker-page] .poker-card--offset {
    margin-block-start: 0;
  }

  [data-poker-page] .poker-card:last-child {
    grid-column: 1 / -1;
  }

  [data-poker-page] .poker-feature,
  [data-poker-page] .poker-dining {
    gap: var(--space-8);
  }
}

@media (max-width: 919px) {
  [data-poker-page] .poker-responsible__grid,
  [data-poker-page] .poker-faq__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-12);
  }

  [data-poker-page] .poker-responsible__rules {
    width: min(100%, 34rem);
  }
}

@media (max-width: 819px) {
  [data-poker-page] .poker-section {
    padding-block: var(--space-16);
  }

  [data-poker-page] .poker-hero {
    min-height: 38.75rem;
  }

  [data-poker-page] .poker-hero__media::after {
    background: linear-gradient(0deg, rgba(32, 53, 45, 0.9) 0%, rgba(32, 53, 45, 0.73) 38%, rgba(32, 53, 45, 0.1) 82%);
  }

  [data-poker-page] .poker-hero__media img {
    object-position: 70% center;
  }

  [data-poker-page] .poker-hero__container {
    padding-block: var(--space-16) var(--space-8);
  }

  [data-poker-page] .poker-hero__content {
    width: min(100%, 34rem);
  }

  [data-poker-page] .poker-hero h1 {
    font-size: clamp(2.625rem, 10vw, 3.25rem);
  }

  [data-poker-page] .poker-feature,
  [data-poker-page] .poker-dining {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  [data-poker-page] .poker-feature__media,
  [data-poker-page] .poker-dining__media {
    grid-row: 1;
    min-height: 0;
  }

  [data-poker-page] .poker-feature-copy,
  [data-poker-page] .poker-dining__copy {
    grid-row: 2;
    width: 100%;
  }

  [data-poker-page] .poker-group-panel {
    padding: var(--space-6);
  }

  [data-poker-page] .poker-closing__panel {
    padding: var(--space-12) var(--space-6);
  }
}

@media (max-width: 599px) {
  [data-poker-page] .poker-hero .button {
    width: min(100%, 18.75rem);
  }

  [data-poker-page] .poker-pillars__grid,
  [data-poker-page] .poker-timeline__grid,
  [data-poker-page] .poker-group__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  [data-poker-page] .poker-card:last-child,
  [data-poker-page] .poker-group-card:last-child {
    grid-column: auto;
  }

  [data-poker-page] .poker-card,
  [data-poker-page] .poker-group-card {
    min-height: 0;
  }

  [data-poker-page] .poker-step,
  [data-poker-page] .poker-step:first-child,
  [data-poker-page] .poker-step:last-child {
    display: grid;
    grid-template-columns: 3.5rem minmax(0, 1fr);
    min-height: 0;
    gap: var(--space-3);
  }

  [data-poker-page] .poker-step__number {
    grid-row: 1 / span 2;
    font-size: 2.5rem;
  }

  [data-poker-page] .poker-step h3,
  [data-poker-page] .poker-step p {
    grid-column: 2;
  }

  [data-poker-page] .poker-dining__quote,
  [data-poker-page] .poker-feature-copy blockquote {
    width: 100%;
  }

  [data-poker-page] .poker-responsible {
    padding-block: var(--space-16);
  }

  [data-poker-page] .poker-responsible-rule {
    grid-template-columns: 1.75rem minmax(0, 1fr);
  }

  [data-poker-page] .poker-faq-list summary {
    min-height: 3.5rem;
    font-size: 1.125rem;
  }

  [data-poker-page] .poker-closing {
    padding-block-start: var(--space-16);
  }

  [data-poker-page] .poker-closing__panel {
    margin-inline: 0;
  }
}

@media (max-width: 419px) {
  [data-poker-page] .poker-step,
  [data-poker-page] .poker-step:first-child,
  [data-poker-page] .poker-step:last-child {
    display: flex;
    flex-direction: column;
  }

  [data-poker-page] .poker-step__number,
  [data-poker-page] .poker-step h3,
  [data-poker-page] .poker-step p {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-poker-page] .poker-feature__media:hover img,
  [data-poker-page] .poker-dining__media:hover img {
    transform: none;
  }
}


.menu-page {
  overflow: clip;
}

.menu-page .menu-section {
  padding-block: var(--space-22);
}

.menu-hero {
  position: relative;
  display: grid;
  min-height: 38.75rem;
  overflow: hidden;
  color: var(--color-warm-ivory);
}

.menu-hero__image,
.menu-hero__overlay,
.menu-hero__container {
  grid-area: 1 / 1;
}

.menu-hero__image {
  width: 100%;
  height: 100%;
  max-width: none;
  object-position: 30% center;
}

.menu-hero__overlay {
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.8) 0%, rgba(32, 53, 45, 0.59) 43%, rgba(32, 53, 45, 0.14) 76%), linear-gradient(0deg, rgba(18, 30, 25, 0.62) 0%, transparent 55%);
}

.menu-hero__container {
  display: flex;
  width: min(100%, var(--container-max));
  min-width: 0;
  align-items: flex-end;
  padding-top: var(--space-16);
  padding-bottom: var(--space-16);
}

.menu-hero__content {
  display: flex;
  width: min(100%, 33.75rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.menu-hero__content .eyebrow {
  margin: 0;
  color: var(--color-warm-ivory);
}

.menu-hero__content h1,
.menu-hero__content p {
  margin: 0;
  color: var(--color-warm-ivory);
}

.menu-hero__lead {
  max-width: 48ch;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-body);
}

.menu-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  font-weight: 700;
  text-decoration: none;
}

.menu-text-link::after {
  width: 0;
  height: 1px;
  align-self: flex-end;
  background: currentColor;
  content: "";
  transition: width var(--transition-color);
}

.menu-text-link:hover::after,
.menu-text-link:focus-visible::after {
  width: 100%;
}

.menu-hero__action {
  color: var(--color-warm-ivory);
}

.menu-hero__action:hover {
  color: var(--color-warm-ivory);
}

.menu-introduction__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-12);
  align-items: end;
}

.menu-introduction__grid > * {
  min-width: 0;
}

.menu-introduction__copy {
  width: min(100%, 40.625rem);
}

.menu-introduction__copy .eyebrow {
  margin-block-end: var(--space-3);
}

.menu-introduction__copy .lead {
  max-width: 68ch;
}

.menu-update-card {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-3);
  border-top: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.menu-update-card__icon {
  display: grid;
  width: 1.5rem;
  min-width: 1.5rem;
  height: 1.5rem;
  place-items: center;
  border: 1px solid var(--color-brushed-brass);
  border-radius: 50%;
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
}

.menu-update-card__content {
  min-width: 0;
}

.menu-update-card__content h3,
.menu-update-card__content p {
  margin: 0;
}

.menu-update-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.menu-update-card__content p {
  max-width: 42ch;
}

.menu-index {
  border-block: 1px solid var(--color-border-brass);
}

.menu-index__inner {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding-block: var(--space-4);
}

.menu-index__label {
  color: var(--color-muted-ink);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.menu-index__scroll {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-6);
}

.menu-index__scroll > a {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  border-bottom: 2px solid transparent;
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  font-weight: 700;
  text-decoration: none;
}

.menu-index__scroll > a.is-active {
  border-bottom-color: var(--color-brushed-brass);
}

.menu-split {
  display: grid;
  gap: var(--space-12);
  align-items: start;
}

.menu-split > * {
  min-width: 0;
}

.menu-split--starters,
.menu-split--desserts {
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
}

.menu-split--mains,
.menu-split--cocktails {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
}

.menu-category__content {
  min-width: 0;
}

.menu-category__content > .lead {
  max-width: 60ch;
}

.menu-split--starters .menu-photo,
.menu-split--desserts .menu-photo {
  margin-top: 4.5rem;
}

.menu-photo {
  width: 100%;
  min-width: 0;
}

.menu-photo__frame {
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-card);
}

.menu-photo__frame img {
  width: 100%;
  height: 100%;
  transition: transform var(--transition-image);
}

@media (hover: hover) and (pointer: fine) {
  .menu-photo:hover .menu-photo__frame img {
    transform: scale(1.035);
  }
}

.menu-photo--starters .menu-photo__frame,
.menu-photo--desserts .menu-photo__frame {
  aspect-ratio: 4 / 3;
}

.menu-photo--mains .menu-photo__frame {
  aspect-ratio: 4 / 5;
}

.menu-photo--mains .menu-photo__frame img {
  object-position: 48% center;
}

.menu-photo--cocktails .menu-photo__frame {
  aspect-ratio: 3 / 2;
}

.menu-photo--cocktails .menu-photo__frame img {
  object-position: center;
}

.menu-list-card,
.menu-final__card,
.menu-coffee-card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
}

.menu-slot {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  padding-block: var(--space-4);
}

.menu-slot:first-child {
  padding-top: 0;
}

.menu-slot:last-child {
  padding-bottom: 0;
}

.menu-slot + .menu-slot {
  border-top: 1px solid var(--color-border-brass);
}

.menu-slot h3,
.menu-slot h4,
.menu-slot p {
  margin: 0;
}

.menu-slot h3 {
  font-size: 1.25rem;
}

.menu-slot h4 {
  font-family: var(--font-body);
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: var(--line-height-body);
}

.menu-slot p {
  max-width: 60ch;
}

.menu-list-card .menu-slot {
  transition: background-color var(--transition-color);
}

@media (hover: hover) and (pointer: fine) {
  .menu-list-card:not(.menu-list-card--pine) .menu-slot:hover {
    background: rgba(221, 228, 216, 0.48);
  }
}

.menu-practical-note {
  max-width: 60ch;
  margin-top: var(--space-4);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.menu-seasonal {
  background: var(--color-soft-sage);
  padding-block: var(--space-22);
}

.menu-seasonal__inner {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.menu-seasonal__intro {
  width: min(100%, 37.5rem);
}

.menu-seasonal__intro .lead {
  max-width: 58ch;
}

.menu-seasonal__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-6);
}

.menu-seasonal__cards > * {
  min-width: 0;
}

.menu-seasonal-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
  transition: border-color var(--transition-color), background-color var(--transition-color);
}

.menu-seasonal-card--feature {
  grid-column: span 2;
}

.menu-seasonal-card h3,
.menu-seasonal-card p {
  margin: 0;
}

.menu-seasonal-card p {
  max-width: 42ch;
}

@media (hover: hover) and (pointer: fine) {
  .menu-seasonal-card:hover {
    border-color: var(--color-brushed-brass);
    background: var(--color-warm-ivory);
  }
}

.menu-seasonal__note {
  margin: 0;
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.menu-mini-label,
.menu-responsibility__label {
  display: block;
  margin-bottom: var(--space-3);
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.menu-drinks__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: var(--space-12);
  align-items: start;
}

.menu-drinks__grid > * {
  min-width: 0;
}

.menu-drinks__intro {
  width: min(100%, 25rem);
}

.menu-drinks__intro .lead {
  max-width: 48ch;
}

.menu-drinks__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}

.menu-drinks__cards > * {
  min-width: 0;
}

.menu-drink-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
  transition: border-color var(--transition-color), background-color var(--transition-color);
}

.menu-drink-card--offset {
  margin-top: 1.75rem;
}

.menu-drink-card h3,
.menu-drink-card p {
  margin: 0;
}

.menu-drink-card p {
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-3);
  font-size: var(--font-size-caption);
}

@media (hover: hover) and (pointer: fine) {
  .menu-drink-card:hover {
    border-color: var(--color-brushed-brass);
    background: var(--color-soft-sage);
  }
}

.menu-drinks__note {
  width: min(100%, 44rem);
  margin-top: var(--space-6);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.menu-list-card--pine {
  border-color: transparent;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.menu-list-card--pine .menu-slot + .menu-slot {
  border-color: var(--color-border-brass);
}

.menu-list-card--pine .menu-slot h3,
.menu-list-card--pine .menu-slot p {
  color: var(--color-warm-ivory);
}

.menu-list-card--pine .tag {
  color: var(--color-warm-ivory);
}

.menu-coffee__inner {
  display: flex;
  width: min(100%, 51.75rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  margin-inline: auto;
}

.menu-coffee__intro {
  width: min(100%, 35rem);
}

.menu-coffee__intro .lead {
  max-width: 52ch;
}

.menu-coffee__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-8);
}

.menu-coffee__cards > * {
  min-width: 0;
}

.menu-coffee-card h3 {
  margin: 0 0 var(--space-4);
}

.menu-coffee__contact {
  width: min(100%, 42rem);
  margin: 0 auto;
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  text-align: center;
}

.menu-final__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-12);
  align-items: start;
}

.menu-final__grid > * {
  min-width: 0;
}

.menu-final__intro {
  width: min(100%, 28.75rem);
}

.menu-final__intro .lead {
  max-width: 56ch;
}

.menu-final__card {
  background: var(--color-soft-sage);
}

.menu-responsibility,
.menu-final__action {
  grid-column: 1 / -1;
}

.menu-responsibility {
  width: 100%;
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-6);
}

.menu-responsibility p {
  width: min(100%, 42.5rem);
  margin-bottom: 0;
}

.menu-final__action {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.menu-final__action p,
.menu-final__action a {
  margin: 0;
}

@media (max-width: 1060px) {
  .menu-drinks__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  .menu-drinks__intro {
    width: min(100%, 32rem);
  }

  .menu-drinks__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .menu-drink-card:last-child {
    grid-column: 1 / -1;
  }

  .menu-drink-card--offset {
    margin-top: 0;
  }
}

@media (max-width: 980px) {
  .menu-split--starters,
  .menu-split--mains,
  .menu-split--desserts,
  .menu-split--cocktails {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .menu-split--starters .menu-photo,
  .menu-split--desserts .menu-photo {
    margin-top: 0;
  }

  .menu-split--starters .menu-photo,
  .menu-split--mains .menu-photo,
  .menu-split--desserts .menu-photo,
  .menu-split--cocktails .menu-photo {
    grid-row: 1;
  }

  .menu-split--starters .menu-category__content,
  .menu-split--mains .menu-category__content,
  .menu-split--desserts .menu-category__content,
  .menu-split--cocktails .menu-category__content {
    grid-row: 2;
  }

  .menu-photo--mains .menu-photo__frame {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 920px) {
  .menu-introduction__grid,
  .menu-final__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .menu-update-card {
    width: min(100%, 38rem);
  }

  .menu-seasonal__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .menu-seasonal-card--feature {
    grid-column: span 2;
  }

  .menu-responsibility,
  .menu-final__action {
    grid-column: auto;
  }
}

@media (max-width: 820px) {
  .menu-hero {
    min-height: 35rem;
  }

  .menu-hero__image {
    object-position: center;
  }

  .menu-hero__overlay {
    background: linear-gradient(0deg, rgba(18, 30, 25, 0.78) 0%, rgba(18, 30, 25, 0.42) 54%, rgba(18, 30, 25, 0.1) 100%);
  }

  .menu-hero__container {
    padding-top: var(--space-12);
    padding-bottom: var(--space-6);
  }
}

@media (max-width: 760px) {
  .menu-index__scroll {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--color-brushed-brass) transparent;
    margin-inline: calc(var(--container-padding) * -1);
    padding-inline: var(--container-padding);
  }

  .menu-index__scroll > a {
    flex: 0 0 auto;
    white-space: nowrap;
  }

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

@media (max-width: 680px) {
  .menu-page .menu-section,
  .menu-seasonal {
    padding-block: var(--space-16);
  }

  .menu-drinks__cards,
  .menu-seasonal__cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .menu-seasonal-card--feature,
  .menu-drink-card:last-child {
    grid-column: auto;
  }
}

@media (max-width: 599px) {
  .menu-hero {
    min-height: 35rem;
  }

  .menu-hero__content {
    width: 100%;
    gap: var(--space-3);
  }

  .menu-hero__content h1 {
    font-size: 2.625rem;
  }

  .menu-hero__lead {
    max-width: 43ch;
    font-size: 1.0625rem;
  }

  .menu-hero__action {
    width: auto;
  }

  .menu-update-card,
  .menu-list-card,
  .menu-final__card,
  .menu-coffee-card,
  .menu-seasonal-card,
  .menu-drink-card {
    padding: var(--space-6);
  }

  .menu-photo--mains .menu-photo__frame {
    aspect-ratio: 4 / 5;
  }

  .menu-coffee__contact {
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu-photo__frame img,
  .menu-text-link::after {
    transition: none;
  }
}


.poker-experience{overflow:hidden}.poker-experience .pe-section{padding-block:var(--space-22)}.pe-hero{position:relative;min-height:640px;color:var(--color-warm-ivory);display:grid;grid-template-columns:minmax(0,1fr)}.pe-hero-media,.pe-hero-shell{grid-area:1/1}.pe-hero-media{width:100%;height:100%;min-width:0}.pe-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,53,45,.62) 0%,rgba(32,53,45,.42) 48%,rgba(32,53,45,.04) 72%)}.pe-hero-media img{width:100%;height:100%;object-fit:cover;object-position:left center}.pe-hero-shell{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;padding-block:var(--space-22)}.pe-hero-copy{grid-column:1/span 5;min-width:420px;max-width:560px;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}.pe-hero-copy>*{min-width:0;margin:0}.pe-hero-copy h1{color:var(--color-warm-ivory)}.pe-hero-copy .lead{max-width:500px}.pe-hero-copy .eyebrow{color:var(--color-warm-ivory)}.pe-rules-layout{display:grid;grid-template-columns:5fr 7fr;gap:var(--space-8)}.pe-rules-layout>*{min-width:0}.pe-rules-intro{max-width:520px}.pe-rules-lead{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:var(--space-4);align-items:end}.pe-rules-lead>*{min-width:0}.pe-mini-cards,.pe-hand-diagram{display:flex;gap:3px}.pe-mini-cards i,.pe-hand-diagram b{display:grid;place-items:center;width:22px;height:32px;border:1px solid var(--color-border-brass);border-radius:4px;background:var(--color-warm-white);font-size:10px;font-style:normal;font-weight:700;color:var(--color-deep-pine)}.pe-rule-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-4);align-content:start}.pe-rule-grid>*{min-width:0}.pe-rule-card{grid-column:span 3;padding:var(--space-6)}.pe-rule-card--wide{grid-column:span 6}.pe-rule-card .pe-number{display:block;color:var(--color-terracotta);font-size:var(--font-size-caption);font-weight:700;letter-spacing:.1em;margin-bottom:var(--space-4)}.pe-expand,.pe-hand-toggle{border:0;background:none;padding:0;color:var(--color-deep-pine);font-weight:700;text-decoration:underline;text-decoration-color:var(--color-brushed-brass);text-underline-offset:.2em}.pe-expand-panel{margin-top:var(--space-4);border-top:1px solid var(--color-border-brass);padding-top:var(--space-4)}.pe-expand-panel p{margin:0}.pe-hands{background:var(--color-soft-sage);border-top:1px solid var(--color-border-brass);padding-block:var(--space-22)}.pe-hands-intro{max-width:640px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-bottom:var(--space-12)}.pe-hands-intro>*{margin:0;min-width:0}.pe-hand-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-4)}.pe-hand-grid>*{min-width:0}.pe-hand-card{grid-column:span 4;padding:var(--space-6);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.pe-hand-card>*{margin:0;min-width:0}.pe-hand-card--small{grid-column:span 3}.pe-sequence-layout{display:grid;grid-template-columns:5fr 7fr;gap:var(--space-8);align-items:start}.pe-sequence-layout>*{min-width:0}.pe-sequence-media{margin:0}.pe-sequence-media img{width:100%;height:620px;border-radius:var(--radius-card);object-fit:cover;object-position:center}.pe-sequence-copy{max-width:600px;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}.pe-sequence-copy>*{margin:0;min-width:0}.pe-sequence-copy .lead{max-width:560px}.pe-tabs{width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--color-border-brass);border-bottom:1px solid var(--color-border-brass)}.pe-tabs>*{min-width:0}.pe-tabs button{min-height:58px;border:0;background:transparent;padding:var(--space-2);font-size:12px;font-weight:700;text-align:left}.pe-tabs button[aria-selected="true"]{color:var(--color-terracotta);box-shadow:inset 0 -2px var(--color-brushed-brass)}.pe-step-panel{width:100%;max-width:460px;background:var(--color-soft-sage);padding:var(--space-4);border-radius:var(--radius-control)}.pe-step-panel p{margin:var(--space-2) 0 0}.pe-table-callout{width:100%;background:var(--color-warm-white);border:1px solid var(--color-border-ink);border-radius:var(--radius-card);padding:var(--space-6)}.pe-table-callout>*{margin:0}.pe-table-callout span{display:block;margin-bottom:var(--space-2);color:var(--color-terracotta);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.pe-table-callout p{margin-top:var(--space-3)}.pe-question-note{max-width:560px}.pe-question-note b{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid var(--color-brushed-brass);border-radius:50%;margin-right:var(--space-2)}.pe-etiquette-intro{max-width:540px;margin-bottom:var(--space-12)}.pe-etiquette-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);align-items:start}.pe-etiquette-grid>*{min-width:0}.pe-etiquette-card{padding:var(--space-6);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.pe-etiquette-card>*{margin:0;min-width:0}.pe-etiquette-card--offset{margin-top:40px}.pe-line-icon{font-size:30px;color:var(--color-terracotta);line-height:1}.pe-atmosphere{background:#efe8da}.pe-atmosphere-layout{display:grid;grid-template-columns:5fr 7fr;gap:var(--space-8);align-items:start}.pe-atmosphere-layout>*{min-width:0}.pe-atmosphere-copy{max-width:520px}.pe-atmosphere-copy blockquote{max-width:460px}.pe-atmosphere-media{margin:0}.pe-atmosphere-media img{width:100%;height:520px;border-radius:var(--radius-card);object-fit:cover;object-position:center}.pe-character{margin-top:var(--space-8);display:flex;flex-direction:column;gap:var(--space-3)}.pe-character>*{margin:0}.pe-character>div{border-top:1px solid var(--color-border-brass);padding-top:var(--space-3)}.pe-character p{margin:var(--space-1) 0 0}.pe-responsible{margin-top:var(--space-8);display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--space-3);background:var(--color-soft-sage);border-radius:var(--radius-card);padding:var(--space-6)}.pe-responsible>*{min-width:0}.pe-responsible strong{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--color-brushed-brass);border-radius:50%}.pe-responsible h3,.pe-responsible p{margin:0}.pe-responsible p{margin-top:var(--space-2)}.pe-beginners{background:var(--color-warm-white)}.pe-beginners-layout{display:grid;grid-template-columns:5fr 7fr;gap:var(--space-8)}.pe-beginners-layout>*{min-width:0}.pe-beginners-intro{max-width:500px}.pe-beginner-steps{margin:0;padding:0;list-style:none;border-left:1px solid var(--color-border-brass)}.pe-beginner-steps li{display:grid;grid-template-columns:68px minmax(0,1fr);gap:var(--space-4);padding:0 0 var(--space-8) var(--space-4)}.pe-beginner-steps li:last-child{padding-bottom:0}.pe-beginner-steps li>*{min-width:0}.pe-beginner-steps span{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--color-brushed-brass);border-radius:50%;font-size:var(--font-size-caption);font-weight:700}.pe-beginner-steps li:last-child div{background:var(--color-soft-sage);padding:var(--space-4);border-radius:var(--radius-control)}.pe-beginner-steps h3{margin:0 0 var(--space-2)}.pe-beginner-steps p{max-width:470px;margin:0}.pe-closing{background:var(--color-deep-pine);border-top:1px solid var(--color-border-brass);color:var(--color-warm-ivory);padding-block:var(--space-22)}.pe-closing-copy{max-width:680px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.pe-closing-copy>*{margin:0;min-width:0}.pe-closing h2{color:var(--color-warm-ivory)}.pe-closing .eyebrow{color:var(--color-terracotta)}.pe-closing .eyebrow::before{background:var(--color-brushed-brass)}.pe-closing-quote{font-family:var(--font-heading);font-size:28px;line-height:1.2}.pe-closing-microcopy{font-size:var(--font-size-caption);color:var(--color-soft-sage)}.pe-faq-block{max-width:760px;margin-inline:auto}.pe-faq-notice{border-left:1px solid var(--color-brushed-brass);background:var(--color-soft-sage);padding:var(--space-6);margin-bottom:var(--space-8)}.pe-faq-notice h3,.pe-faq-notice p{margin:0}.pe-faq-notice p{margin-top:var(--space-2)}.pe-accordion article{border-bottom:1px solid var(--color-border-ink)}.pe-accordion h3{margin:0}.pe-accordion button{display:flex;width:100%;min-height:52px;align-items:center;justify-content:space-between;gap:var(--space-4);border:0;background:transparent;padding:var(--space-3) 0;text-align:left;font-family:var(--font-body);font-size:var(--font-size-body);font-weight:700}.pe-accordion button::after{content:"+";font-size:24px;font-weight:400}.pe-accordion button[aria-expanded="true"]::after{content:"−"}.pe-accordion article>div p{margin:0;padding:0 0 var(--space-6)}
@media(max-width:1199px){.pe-hero-copy{grid-column:1/span 6}.pe-rules-layout,.pe-sequence-layout,.pe-atmosphere-layout,.pe-beginners-layout{gap:var(--space-6)}.pe-etiquette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-etiquette-card--offset{margin-top:0}}
@media(max-width:1040px){.pe-rules-layout{grid-template-columns:1fr}.pe-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-rule-card,.pe-rule-card--wide{grid-column:span 1}.pe-rule-card--wide{grid-column:span 2}.pe-hand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pe-hand-card,.pe-hand-card--small{grid-column:span 1}}
@media(max-width:980px){.pe-sequence-layout,.pe-atmosphere-layout{grid-template-columns:1fr}.pe-sequence-media{order:-1}.pe-sequence-media img{height:480px}.pe-atmosphere-media{order:-1}.pe-atmosphere-copy{max-width:100%}.pe-atmosphere-media img{height:auto;aspect-ratio:3/2}.pe-sequence-copy{max-width:600px}}
@media(max-width:900px){.pe-hero{min-height:auto;display:block;color:var(--color-deep-pine)}.pe-hero-media{height:420px;position:relative}.pe-hero-media::after{display:none}.pe-hero-shell{display:block;padding-block:var(--space-8)}.pe-hero-copy{min-width:0;max-width:none;color:var(--color-deep-pine);gap:var(--space-4)}.pe-hero-copy h1{color:var(--color-deep-pine)}.pe-hero-copy .eyebrow{color:var(--color-terracotta)}.pe-beginners-layout{grid-template-columns:1fr}.pe-beginner-steps{max-width:100%}.pe-section{padding-block:var(--space-16)!important}}
@media(max-width:760px){.pe-hands{padding-block:var(--space-16)}.pe-hands-intro{text-align:center}.pe-hand-grid{grid-template-columns:1fr}.pe-hand-card,.pe-hand-card--small{grid-column:span 1;display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:var(--space-4);align-items:start}.pe-hand-card .pe-hand-diagram{grid-row:span 3;flex-wrap:wrap;width:92px}.pe-hand-card .pe-hand-toggle,.pe-hand-card>div[hidden],.pe-hand-card>div:not(.pe-hand-diagram){grid-column:2}.pe-tabs{grid-template-columns:1fr}.pe-tabs button{border-bottom:1px solid var(--color-border-ink);text-align:left}.pe-tabs button:last-child{border-bottom:0}.pe-tabs button[aria-selected="true"]{box-shadow:inset 2px 0 var(--color-brushed-brass)}}
@media(max-width:620px){.poker-experience .pe-section{padding-block:var(--space-12)}.pe-hero-media{height:360px}.pe-hero-copy h1{font-size:42px}.pe-rules-lead{grid-template-columns:1fr}.pe-mini-cards{width:max-content}.pe-rule-grid{grid-template-columns:1fr}.pe-rule-card,.pe-rule-card--wide{grid-column:span 1}.pe-sequence-media img{height:360px}.pe-etiquette-grid{grid-template-columns:1fr}.pe-hand-card{grid-template-columns:1fr}.pe-hand-card .pe-hand-diagram{grid-row:auto;width:auto;flex-wrap:nowrap}.pe-hand-card .pe-hand-toggle,.pe-hand-card>div[hidden],.pe-hand-card>div:not(.pe-hand-diagram){grid-column:auto}.pe-beginner-steps li{grid-template-columns:44px minmax(0,1fr);gap:var(--space-3);padding-left:var(--space-3)}.pe-beginner-steps span{width:40px;height:40px}.pe-closing{padding-block:var(--space-16)}.pe-closing-copy{max-width:560px}.pe-closing .button{width:auto}.pe-faq-notice{padding:var(--space-4)}}
@media(max-width:359px){.pe-beginner-steps li{grid-template-columns:1fr}.pe-beginner-steps li>span{margin-bottom:var(--space-2)}}
@media(prefers-reduced-motion:reduce){.poker-experience *{transition:none!important}}


.atmosfera-page {
  background: var(--color-warm-ivory);
}

.atmosfera-page .eyebrow {
  margin-block-end: 0;
}

.atmosfera-hero {
  position: relative;
  min-height: clamp(35rem, 62vw, 47.5rem);
  overflow: hidden;
  color: var(--color-warm-ivory);
}

.atmosfera-hero__media,
.atmosfera-hero__shade {
  position: absolute;
  inset: 0;
}

.atmosfera-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}

.atmosfera-hero__shade {
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.76) 0%, rgba(32, 53, 45, 0.54) 42%, rgba(32, 53, 45, 0.08) 76%), linear-gradient(0deg, rgba(32, 53, 45, 0.48) 0%, transparent 52%);
}

.atmosfera-hero__container {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: inherit;
  align-items: flex-end;
  padding-block: var(--space-22);
}

.atmosfera-hero__copy {
  display: flex;
  width: min(100%, 35rem);
  min-width: 27.5rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.atmosfera-hero__copy h1,
.atmosfera-hero__copy .lead,
.atmosfera-hero__copy .eyebrow {
  color: var(--color-warm-ivory);
}

.atmosfera-hero__lead {
  max-width: 35rem;
}

.atmosfera-hero__lead p {
  margin: 0;
}

.atmosfera-hero__lead p + p {
  margin-block-start: var(--space-3);
}

.atmosfera-hero__cta {
  flex: 0 0 auto;
}

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

.atmosfera-table__grid,
.atmosfera-poker__grid,
.atmosfera-private__grid,
.atmosfera-bar__grid {
  display: grid;
  min-width: 0;
  align-items: center;
  gap: var(--space-12);
}

.atmosfera-table__grid {
  grid-template-columns: minmax(0, 7fr) minmax(22.5rem, 5fr);
}

.atmosfera-table__copy {
  width: min(100%, 34.0625rem);
  min-width: 0;
}

.atmosfera-table__photo,
.atmosfera-poker__photo,
.atmosfera-private__photo,
.atmosfera-bar__photo {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.atmosfera-table__photo {
  aspect-ratio: 4 / 5;
}

.atmosfera-photo {
  overflow: hidden;
  border-radius: var(--radius-card);
}

.atmosfera-photo button,
.atmosfera-gallery__item button {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
  padding: 0;
  background: transparent;
}

.atmosfera-photo img,
.atmosfera-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-image);
}

.atmosfera-photo button:hover img,
.atmosfera-gallery__item button:hover img {
  transform: scale(1.035);
}

.atmosfera-photo__hint {
  position: absolute;
  right: var(--space-3);
  bottom: var(--space-3);
  border-radius: var(--radius-sm);
  background: rgba(244, 239, 229, 0.9);
  padding: var(--space-1) var(--space-2);
  color: var(--color-deep-pine);
  font-size: var(--font-size-utility);
  font-weight: 700;
}

.atmosfera-table__materials,
.atmosfera-poker__inclusive {
  margin-block-start: var(--space-6);
  border-block-start: 1px solid var(--color-border-brass);
  padding-block-start: var(--space-6);
}

.atmosfera-table__materials h3,
.atmosfera-table__light h3,
.atmosfera-poker__inclusive h3 {
  margin-block-end: var(--space-2);
}

.atmosfera-table__light {
  margin-block-start: var(--space-6);
}

.atmosfera-poker {
  background: var(--color-warm-white);
}

.atmosfera-poker__grid {
  grid-template-columns: minmax(26.875rem, 5fr) minmax(31.25rem, 7fr);
}

.atmosfera-poker__copy {
  width: min(100%, 31.25rem);
  min-width: 0;
}

.atmosfera-poker__photo {
  aspect-ratio: 3 / 2;
}

.atmosfera-poker__photo img {
  object-position: center;
}

.atmosfera-poker__responsible {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-3);
  margin-block-start: var(--space-6);
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.atmosfera-poker__responsible > div {
  min-width: 0;
}

.atmosfera-poker__responsible p {
  margin: var(--space-1) 0 0;
}

.atmosfera-poker__mark {
  width: 1rem;
  min-width: 1rem;
  height: 1rem;
  margin-block-start: 0.28rem;
  border: 1px solid var(--color-brushed-brass);
  border-radius: 50%;
  box-shadow: inset 0 0 0 3px var(--color-soft-sage);
  background: var(--color-terracotta);
}

.atmosfera-private__grid {
  grid-template-columns: minmax(30rem, 7fr) minmax(26.875rem, 5fr);
}

.atmosfera-private__photo {
  aspect-ratio: 4 / 3;
}

.atmosfera-private__copy {
  width: min(100%, 31.875rem);
  min-width: 0;
}

.atmosfera-private__uses {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-block-start: var(--space-6);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-6);
}

.atmosfera-private__uses article {
  position: relative;
  min-width: 0;
  padding-inline-start: var(--space-8);
}

.atmosfera-private__uses article + article {
  border-block-start: 1px solid var(--color-border-brass);
  padding-block-start: var(--space-4);
}

.atmosfera-private__uses article > span {
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  color: var(--color-brushed-brass);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.atmosfera-private__uses article + article > span {
  top: var(--space-4);
}

.atmosfera-private__uses h3 {
  margin-block-end: var(--space-2);
  font-size: clamp(1.2rem, 1.6vw, 1.5rem);
}

.atmosfera-private__uses p {
  margin-block-end: var(--space-2);
}

.atmosfera-private__uses a,
.atmosfera-path a {
  font-size: var(--font-size-caption);
  font-weight: 700;
}

.atmosfera-private__note {
  margin-block: var(--space-6) 0;
  color: var(--color-muted-ink);
}

.atmosfera-bar {
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
  padding-block: var(--space-22);
}

.atmosfera-bar h2,
.atmosfera-bar h3,
.atmosfera-bar a {
  color: var(--color-warm-ivory);
}

.atmosfera-bar__grid {
  grid-template-columns: minmax(25.625rem, 4.5fr) minmax(36.25rem, 7.5fr);
}

.atmosfera-bar__copy {
  width: min(100%, 29.375rem);
  min-width: 0;
}

.atmosfera-bar__photo {
  aspect-ratio: 3 / 2;
}

.atmosfera-bar__modules {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
  gap: var(--space-3);
  margin-block-start: var(--space-6);
}

.atmosfera-bar__modules article {
  min-width: 0;
  border: 1px solid rgba(244, 239, 229, 0.22);
  border-radius: var(--radius-control);
  background: rgba(255, 253, 248, 0.1);
  padding: var(--space-4);
}

.atmosfera-bar__modules h3 {
  margin-block-end: var(--space-2);
  font-size: clamp(1.2rem, 1.6vw, 1.5rem);
}

.atmosfera-bar__modules p {
  margin: 0;
}

.atmosfera-bar__modules article > span {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  margin-block-end: var(--space-2);
  border-radius: 50%;
  background: var(--color-terracotta);
}

.atmosfera-gallery__intro {
  width: min(100%, 38.75rem);
  min-width: 0;
}

.atmosfera-gallery {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  margin-block-start: var(--space-8);
}

.atmosfera-gallery__item {
  min-width: 0;
  margin: 0;
}

.atmosfera-gallery__item--poker {
  grid-column: 1 / span 7;
  grid-row: 1;
}

.atmosfera-gallery__item--detail {
  grid-column: 10 / span 3;
  grid-row: 1 / span 2;
}

.atmosfera-gallery__item--private {
  grid-column: 3 / span 5;
  grid-row: 2;
}

.atmosfera-gallery__item--poker button {
  aspect-ratio: 3 / 2;
}

.atmosfera-gallery__item--detail button {
  aspect-ratio: 4 / 5;
}

.atmosfera-gallery__item--private button {
  aspect-ratio: 4 / 3;
}

.atmosfera-gallery figcaption {
  margin: var(--space-2) 0 0;
}

.atmosfera-gallery figcaption span {
  display: block;
  margin-block-end: var(--space-1);
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.atmosfera-paths__intro {
  width: min(100%, 37.5rem);
  min-width: 0;
}

.atmosfera-paths__grid {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(18.75rem, 4.5fr) minmax(15.625rem, 3fr) minmax(18.75rem, 4.5fr);
  align-items: stretch;
  gap: var(--space-6);
  margin-block-start: var(--space-8);
}

.atmosfera-path {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  padding: var(--space-6);
}

.atmosfera-path--table,
.atmosfera-path--poker {
  background: var(--color-warm-white);
}

.atmosfera-path--talk {
  background: var(--color-soft-sage);
}

.atmosfera-path h3,
.atmosfera-path p {
  margin: 0;
}

.atmosfera-path a {
  margin-block-start: auto;
}

.atmosfera-path__icon {
  width: 2rem;
  height: 1.5rem;
  border: 1px solid var(--color-brushed-brass);
  border-radius: 50% 50% 0.25rem 0.25rem;
}

.atmosfera-path--talk .atmosfera-path__icon {
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 50%;
  box-shadow: 0.65rem -0.3rem 0 -0.2rem var(--color-soft-sage), 0.65rem -0.3rem 0 -0.1rem var(--color-brushed-brass);
}

.atmosfera-path--poker .atmosfera-path__icon {
  width: 1.5rem;
  height: 1.8rem;
  border-radius: var(--radius-sm);
  border-color: var(--color-terracotta);
}

.atmosfera-closing {
  padding-block-start: var(--space-6);
}

.atmosfera-closing__panel {
  width: 100%;
  min-width: 0;
  border-radius: var(--radius-card);
  background: var(--color-soft-sage);
  padding: var(--space-16) var(--space-8);
}

.atmosfera-closing__copy {
  display: flex;
  width: min(100%, 40rem);
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  margin-inline: auto;
  text-align: center;
}

.atmosfera-closing__copy h2,
.atmosfera-closing__copy p {
  margin: 0;
}

.atmosfera-closing__rule {
  width: 100%;
  height: 1px;
  background: var(--color-border-brass);
}

.atmosfera-responsibility {
  padding-block: var(--space-12) var(--space-22);
}

.atmosfera-responsibility__inner {
  border-block-start: 1px solid var(--color-border-brass);
  padding-block-start: var(--space-12);
}

.atmosfera-responsibility__copy {
  width: min(100%, 33.75rem);
  min-width: 0;
  margin-inline-start: 8.333%;
}

.atmosfera-responsibility__copy p {
  margin: var(--space-3) 0 0;
}

.atmosfera-lightbox[hidden] {
  display: none;
}

.atmosfera-lightbox {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: var(--space-6);
}

.atmosfera-lightbox__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18, 30, 25, 0.84);
}

.atmosfera-lightbox__dialog {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(100%, 72rem);
  min-width: 0;
  grid-template-columns: 3rem minmax(0, 1fr) 3rem;
  align-items: center;
  gap: var(--space-3);
}

.atmosfera-lightbox__figure {
  min-width: 0;
  margin: 0;
}

.atmosfera-lightbox__figure img {
  width: 100%;
  max-height: min(75vh, 45rem);
  border-radius: var(--radius-card);
  object-fit: contain;
}

.atmosfera-lightbox__figure figcaption,
.atmosfera-lightbox__position {
  color: var(--color-warm-ivory);
  text-align: center;
}

.atmosfera-lightbox__position {
  grid-column: 2;
  margin: 0;
  font-size: var(--font-size-caption);
}

.atmosfera-lightbox__close,
.atmosfera-lightbox__nav {
  display: inline-flex;
  min-width: 2.75rem;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(244, 239, 229, 0.55);
  border-radius: 50%;
  background: rgba(32, 53, 45, 0.75);
  color: var(--color-warm-ivory);
  font-size: 2rem;
  line-height: 1;
}

.atmosfera-lightbox__close {
  position: absolute;
  top: calc(-1 * var(--space-6));
  right: 0;
}

.atmosfera-lightbox-open {
  overflow: hidden;
}

@media (max-width: 979px) {
  .atmosfera-bar__grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .atmosfera-bar__copy {
    width: min(100%, 40rem);
  }

  .atmosfera-bar__photo {
    width: 100%;
  }

  .atmosfera-paths__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .atmosfera-path:nth-child(3) {
    grid-column: 1 / span 2;
  }
}

@media (max-width: 959px) {
  .atmosfera-poker__grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .atmosfera-poker__photo {
    grid-row: 1;
  }

  .atmosfera-poker__copy {
    width: min(100%, 43rem);
  }
}

@media (max-width: 939px) {
  .atmosfera-table__grid,
  .atmosfera-private__grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .atmosfera-table__photo,
  .atmosfera-private__photo {
    grid-row: 1;
    width: 100%;
  }

  .atmosfera-table__copy,
  .atmosfera-private__copy {
    width: 100%;
  }
}

@media (max-width: 899px) {
  .atmosfera-gallery {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }

  .atmosfera-gallery__item--poker,
  .atmosfera-gallery__item--detail,
  .atmosfera-gallery__item--private {
    grid-column: 1;
    grid-row: auto;
  }

  .atmosfera-gallery__item--poker { order: 1; }
  .atmosfera-gallery__item--private { order: 2; }
  .atmosfera-gallery__item--detail { order: 3; }
}

@media (max-width: 819px) {
  .atmosfera-hero {
    display: flex;
    min-height: 0;
    flex-direction: column;
    overflow: visible;
  }

  .atmosfera-hero__media {
    position: relative;
    height: clamp(22.5rem, 58vw, 28.125rem);
  }

  .atmosfera-hero__shade {
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: clamp(22.5rem, 58vw, 28.125rem);
    background: linear-gradient(0deg, rgba(32, 53, 45, 0.42), transparent 60%);
  }

  .atmosfera-hero__container {
    min-height: 0;
    padding-block: var(--space-8);
  }

  .atmosfera-hero__copy {
    width: 100%;
    min-width: 0;
    gap: var(--space-4);
  }

  .atmosfera-hero__copy h1,
  .atmosfera-hero__copy .lead,
  .atmosfera-hero__copy .eyebrow {
    color: var(--color-deep-pine);
  }

  .atmosfera-hero__copy h1 {
    font-size: clamp(2.625rem, 9vw, 3.25rem);
  }

  .atmosfera-hero__lead {
    width: 100%;
    max-width: none;
  }
}

@media (max-width: 919px) {
  .atmosfera-paths__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 699px) {
  .atmosfera-section,
  .atmosfera-bar {
    padding-block: var(--space-16);
  }

  .atmosfera-table__grid,
  .atmosfera-poker__grid,
  .atmosfera-private__grid,
  .atmosfera-bar__grid {
    gap: var(--space-8);
  }

  .atmosfera-table__copy h2,
  .atmosfera-poker__copy h2,
  .atmosfera-private__copy h2,
  .atmosfera-bar__copy h2,
  .atmosfera-gallery__intro h2,
  .atmosfera-paths__intro h2,
  .atmosfera-closing__copy h2 {
    font-size: 2rem;
  }

  .atmosfera-bar__modules,
  .atmosfera-paths__grid {
    grid-template-columns: 1fr;
  }

  .atmosfera-path:nth-child(3) {
    grid-column: 1;
  }

  .atmosfera-responsibility {
    padding-block: var(--space-8) var(--space-16);
  }

  .atmosfera-responsibility__inner {
    padding-block-start: var(--space-8);
  }

  .atmosfera-responsibility__copy {
    width: 100%;
    margin-inline-start: 0;
  }

  .atmosfera-closing__panel {
    padding: var(--space-12) var(--space-4);
  }

  .atmosfera-closing__copy {
    width: 100%;
  }

  .atmosfera-closing__copy .button {
    width: min(100%, 20rem);
  }

  .atmosfera-lightbox {
    padding: var(--space-3);
  }

  .atmosfera-lightbox__dialog {
    grid-template-columns: minmax(0, 1fr);
  }

  .atmosfera-lightbox__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
  }

  .atmosfera-lightbox__nav--previous { left: var(--space-2); }
  .atmosfera-lightbox__nav--next { right: var(--space-2); }
  .atmosfera-lightbox__position { grid-column: 1; }
}

@media (max-width: 599px) {
  .atmosfera-hero__cta {
    width: auto;
  }

  .atmosfera-private__uses,
  .atmosfera-poker__responsible {
    padding: var(--space-4);
  }

  .atmosfera-private__uses {
    gap: var(--space-4);
  }

  .atmosfera-private__uses article {
    padding-inline-start: 2rem;
  }

  .atmosfera-path {
    padding: var(--space-6);
  }
}

@media (prefers-reduced-motion: reduce) {
  .atmosfera-photo img,
  .atmosfera-gallery__item img {
    transition: none;
  }

  .atmosfera-photo button:hover img,
  .atmosfera-gallery__item button:hover img {
    transform: none;
  }
}


.restaurant-page {
  background: var(--color-warm-ivory);
}

.restaurant-page .button--text {
  width: fit-content;
}

.restaurant-hero {
  position: relative;
  isolation: isolate;
  min-height: clamp(38.75rem, 72vh, 47.5rem);
  display: flex;
  align-items: stretch;
  overflow: hidden;
  background: var(--color-deep-pine);
}

.restaurant-hero__image,
.restaurant-evening__image {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
}

.restaurant-hero__image {
  object-position: 68% center;
}

.restaurant-hero__shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.82) 0%, rgba(32, 53, 45, 0.68) 36%, rgba(32, 53, 45, 0.25) 65%, rgba(32, 53, 45, 0.1) 100%);
}

.restaurant-hero__container {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
}

.restaurant-hero__copy {
  display: flex;
  width: min(100%, 33.75rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  color: var(--color-warm-ivory);
}

.restaurant-hero__copy h1,
.restaurant-hero__copy p,
.restaurant-evening__copy h2,
.restaurant-evening__copy p {
  margin: 0;
  color: var(--color-warm-ivory);
}

.restaurant-hero__copy .eyebrow,
.restaurant-evening__copy .eyebrow {
  margin: 0;
  color: #e2c79f;
}

.restaurant-hero__copy .eyebrow::before,
.restaurant-evening__copy .eyebrow::before {
  background: #e2c79f;
}

.restaurant-hero__copy h1 {
  font-size: clamp(2.75rem, 5.1vw, 4rem);
}

.restaurant-hero__copy .lead {
  max-width: 32rem;
  font-size: 1.125rem;
}

.restaurant-hero__button {
  width: fit-content;
}

.restaurant-hero__manifest {
  width: min(100%, 29rem);
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  line-height: 1.3;
}

.restaurant-hero__anchor {
  color: var(--color-warm-ivory);
  font-size: var(--font-size-caption);
  font-weight: 700;
}

.restaurant-intro,
.restaurant-space,
.restaurant-kitchen,
.restaurant-bar,
.restaurant-scenarios,
.restaurant-questions {
  padding-block: var(--space-22);
}

.restaurant-intro__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 4fr);
  gap: var(--space-16);
  align-items: end;
}

.restaurant-intro__copy {
  width: min(100%, 40.625rem);
  min-width: 0;
  border-inline-start: 1px solid var(--color-brushed-brass);
  padding-inline-start: var(--space-6);
}

.restaurant-intro__copy .eyebrow,
.restaurant-intro__copy h2,
.restaurant-intro__copy p {
  margin: 0;
}

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

.restaurant-pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  align-items: stretch;
}

.restaurant-pillars > span {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: var(--space-4) var(--space-2);
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.2;
  text-align: center;
}

.restaurant-pillars > span + span {
  border-inline-start: 1px solid var(--color-border-brass);
}

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

.restaurant-space__media,
.restaurant-kitchen__media,
.restaurant-bar__media {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-card);
}

.restaurant-space__media {
  height: 38.75rem;
}

.restaurant-space__media img,
.restaurant-kitchen__media img,
.restaurant-bar__media img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-image);
}

.restaurant-space__media img {
  object-position: center center;
}

.restaurant-space__media:hover img,
.restaurant-kitchen__media:hover img,
.restaurant-bar__media:hover img {
  transform: scale(1.035);
}

.restaurant-space__copy {
  width: min(100%, 31.25rem);
  min-width: 0;
  justify-self: end;
}

.restaurant-space__copy > .eyebrow,
.restaurant-space__copy > h2 {
  margin: 0;
}

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

.restaurant-space__body {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.restaurant-space__body h3,
.restaurant-space__body p {
  margin: 0;
}

.restaurant-space__body > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.restaurant-space__numbered {
  flex-direction: row !important;
  gap: var(--space-4) !important;
}

.restaurant-space__numbered > span {
  flex: 0 0 auto;
  color: var(--color-brushed-brass);
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
}

.restaurant-space__numbered > div {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--space-3);
}

.restaurant-space__light-note {
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
}

.restaurant-kitchen {
  background: color-mix(in srgb, var(--color-warm-ivory) 72%, var(--color-soft-sage));
}

.restaurant-kitchen__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-12);
  align-items: start;
}

.restaurant-kitchen__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-8);
}

.restaurant-kitchen__intro {
  display: flex;
  width: min(100%, 38.75rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.restaurant-kitchen__intro .eyebrow,
.restaurant-kitchen__intro h2,
.restaurant-kitchen__intro p {
  margin: 0;
}

.restaurant-kitchen__cards {
  display: grid;
  grid-template-columns: minmax(16.25rem, 1.08fr) minmax(16.25rem, 0.92fr);
  gap: var(--space-6);
  min-width: 0;
  align-items: start;
}

.restaurant-kitchen__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
}

.restaurant-kitchen__card h3,
.restaurant-kitchen__card p {
  margin: 0;
}

.restaurant-kitchen__card--menu {
  margin-top: var(--space-8);
}

.restaurant-kitchen__detail {
  color: var(--color-brushed-brass);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.restaurant-kitchen__media {
  height: auto;
  aspect-ratio: 3 / 2;
  margin-top: var(--space-12);
}

.restaurant-kitchen__media img {
  object-position: center center;
}

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

.restaurant-bar__media {
  height: 33.125rem;
}

.restaurant-bar__media img {
  object-position: center center;
}

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

.restaurant-bar__content > .eyebrow,
.restaurant-bar__content > h2,
.restaurant-bar__content > p {
  margin: 0;
}

.restaurant-bar__content > .lead {
  width: min(100%, 29.375rem);
}

.restaurant-bar__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  margin-top: var(--space-4);
}

.restaurant-bar__card {
  min-width: 0;
}

.restaurant-bar__card .card-content,
.restaurant-bar__card--soft {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.restaurant-bar__card h3,
.restaurant-bar__card p {
  margin: 0;
}

.restaurant-bar__card--soft {
  padding: var(--space-6);
}

.restaurant-scenarios {
  padding-top: var(--space-16);
}

.restaurant-scenarios__intro {
  display: flex;
  width: min(100%, 39.375rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.restaurant-scenarios__intro .eyebrow,
.restaurant-scenarios__intro h2,
.restaurant-scenarios__intro p {
  margin: 0;
}

.restaurant-scenarios__cards {
  display: grid;
  grid-template-columns: minmax(16.25rem, 4fr) minmax(16.25rem, 3.5fr) minmax(16.25rem, 4.5fr);
  gap: var(--space-6);
  min-width: 0;
  align-items: end;
  margin-top: var(--space-12);
}

.restaurant-scenario {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
}

.restaurant-scenario h3,
.restaurant-scenario p {
  margin: 0;
}

.restaurant-scenario__number {
  color: var(--color-brushed-brass);
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
}

.restaurant-scenario--dinner {
  min-height: 21rem;
}

.restaurant-scenario--group {
  border-top-color: var(--color-terracotta);
}

.restaurant-evening {
  position: relative;
  isolation: isolate;
  min-height: 41.25rem;
  overflow: hidden;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.restaurant-evening__image {
  z-index: -2;
  object-position: center center;
}

.restaurant-evening__shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.88) 0%, rgba(32, 53, 45, 0.68) 46%, rgba(32, 53, 45, 0.25) 78%, rgba(32, 53, 45, 0.2) 100%);
}

.restaurant-evening__container {
  display: flex;
  min-width: 0;
  min-height: 41.25rem;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-12);
  padding-top: var(--space-16);
  padding-bottom: var(--space-8);
}

.restaurant-evening__copy {
  display: flex;
  width: min(100%, 33.75rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.restaurant-evening__modules {
  display: grid;
  grid-template-columns: repeat(2, minmax(18.75rem, 1fr));
  gap: var(--space-6);
  min-width: 0;
}

.restaurant-evening__module {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  border: 1px solid rgba(244, 239, 229, 0.42);
  border-radius: var(--radius-card);
  background: rgba(32, 53, 45, 0.77);
  padding: var(--space-6);
  backdrop-filter: blur(8px);
}

.restaurant-evening__module > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.restaurant-evening__module h3,
.restaurant-evening__module p {
  margin: 0;
  color: var(--color-warm-ivory);
}

.restaurant-evening__module .button--text {
  color: var(--color-warm-ivory);
}

.restaurant-evening__module--responsible {
  grid-template-columns: minmax(0, 1fr);
  border-top-color: var(--color-brushed-brass);
}

.restaurant-evening__icon {
  position: relative;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--color-brushed-brass);
  border-radius: 50%;
}

.restaurant-evening__icon::before,
.restaurant-evening__icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.75rem;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
}

.restaurant-evening__icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.restaurant-evening__icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.restaurant-questions__container {
  width: min(100%, 51.25rem);
}

.restaurant-questions__intro {
  display: flex;
  width: min(100%, 37.5rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.restaurant-questions__intro .eyebrow,
.restaurant-questions__intro h2 {
  margin: 0;
}

.restaurant-accordion {
  display: flex;
  min-width: 0;
  flex-direction: column;
  margin-top: var(--space-8);
  border-top: 1px solid var(--color-border-brass);
}

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

.restaurant-accordion__item h3 {
  margin: 0;
}

.restaurant-accordion__trigger {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1.5rem;
  width: 100%;
  min-width: 0;
  min-height: 4rem;
  align-items: center;
  gap: var(--space-4);
  border: 0;
  background: transparent;
  padding: var(--space-4) 0;
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.2;
  text-align: left;
}

.restaurant-accordion__chevron {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
}

.restaurant-accordion__chevron::before,
.restaurant-accordion__chevron::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.75rem;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
  transition: transform var(--transition-color);
}

.restaurant-accordion__chevron::before {
  transform: translate(-50%, -50%);
}

.restaurant-accordion__chevron::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.restaurant-accordion__item.is-open .restaurant-accordion__chevron::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.restaurant-accordion__panel {
  overflow: hidden;
}

.restaurant-accordion__answer {
  width: min(100%, 41.25rem);
  padding-bottom: var(--space-6);
}

.restaurant-accordion__answer p {
  margin: 0;
}

.restaurant-next {
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
  padding-block: 4.5rem;
}

.restaurant-next__layout {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(17.5rem, 4fr);
  gap: var(--space-12);
  min-width: 0;
  align-items: end;
}

.restaurant-next__copy {
  display: flex;
  width: min(100%, 41.25rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.restaurant-next__copy h2,
.restaurant-next__copy p {
  margin: 0;
  color: var(--color-warm-ivory);
}

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

.restaurant-next__actions .button--text {
  color: var(--color-warm-ivory);
}

@media (max-width: 1199px) {
  .restaurant-intro__layout,
  .restaurant-space__layout,
  .restaurant-bar__layout {
    gap: var(--space-12);
  }

  .restaurant-kitchen__layout {
    gap: var(--space-8);
  }
}

@media (max-width: 980px) {
  .restaurant-intro__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  .restaurant-pillars {
    width: min(100%, 32rem);
  }

  .restaurant-space__layout,
  .restaurant-kitchen__layout,
  .restaurant-bar__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  .restaurant-space__media,
  .restaurant-kitchen__media,
  .restaurant-bar__media {
    width: 100%;
    height: auto;
  }

  .restaurant-space__media {
    aspect-ratio: 4 / 5;
    max-height: 40rem;
  }

  .restaurant-space__copy,
  .restaurant-bar__content {
    width: 100%;
    justify-self: start;
  }

  .restaurant-kitchen__media {
    order: -1;
    margin-top: 0;
  }

  .restaurant-bar__media {
    aspect-ratio: 4 / 3;
  }

  .restaurant-scenarios__cards {
    grid-template-columns: repeat(2, minmax(16.25rem, 1fr));
  }

  .restaurant-scenario--group {
    grid-column: 1 / -1;
  }

  .restaurant-evening__modules {
    grid-template-columns: minmax(0, 1fr);
  }

  .restaurant-next__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
    align-items: start;
  }
}

@media (max-width: 760px) {
  .restaurant-hero {
    min-height: 38.5rem;
  }

  .restaurant-hero__image {
    object-position: 62% center;
  }

  .restaurant-hero__shade {
    background: linear-gradient(0deg, rgba(32, 53, 45, 0.94) 0%, rgba(32, 53, 45, 0.69) 48%, rgba(32, 53, 45, 0.15) 100%);
  }

  .restaurant-hero__container {
    align-items: flex-end;
    padding-bottom: var(--space-8);
  }

  .restaurant-hero__copy {
    width: 100%;
    gap: var(--space-3);
  }

  .restaurant-hero__copy h1 {
    font-size: 2.625rem;
  }

  .restaurant-hero__copy .lead {
    max-width: 100%;
    font-size: 1.0625rem;
  }

  .restaurant-hero__button {
    width: min(100%, 21.25rem);
    margin-top: var(--space-2);
  }

  .restaurant-hero__manifest {
    width: 100%;
    font-size: 1.125rem;
  }

  .restaurant-intro,
  .restaurant-space,
  .restaurant-kitchen,
  .restaurant-bar,
  .restaurant-scenarios,
  .restaurant-questions {
    padding-block: var(--space-16);
  }

  .restaurant-kitchen__cards,
  .restaurant-scenarios__cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .restaurant-kitchen__card--menu {
    margin-top: 0;
  }

  .restaurant-scenario--group {
    grid-column: auto;
  }

  .restaurant-scenario--dinner {
    min-height: 0;
  }

  .restaurant-evening {
    display: flex;
    min-height: 0;
    flex-direction: column;
    overflow: visible;
    background: var(--color-deep-pine);
  }

  .restaurant-evening__image {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-position: center center;
  }

  .restaurant-evening__shade {
    display: none;
  }

  .restaurant-evening__container {
    min-height: 0;
    gap: var(--space-8);
    padding-top: var(--space-12);
    padding-bottom: 0;
  }

  .restaurant-evening__copy {
    width: 100%;
  }

  .restaurant-evening__modules {
    width: calc(100% + (var(--container-padding) * 2));
    margin-inline: calc(var(--container-padding) * -1);
    gap: 0;
  }

  .restaurant-evening__module {
    grid-template-columns: 2rem minmax(0, 1fr);
    border-radius: 0;
    border-inline: 0;
    border-bottom: 0;
    background: var(--color-warm-white);
    padding: var(--space-6) var(--container-padding);
    backdrop-filter: none;
  }

  .restaurant-evening__module h3,
  .restaurant-evening__module p,
  .restaurant-evening__module .button--text {
    color: var(--color-deep-pine);
  }

  .restaurant-evening__module--responsible {
    grid-template-columns: minmax(0, 1fr);
    background: var(--color-soft-sage);
    border-top: 1px solid var(--color-border-brass);
  }

  .restaurant-next {
    padding-block: var(--space-12);
  }
}

@media (max-width: 599px) {
  .restaurant-intro__copy {
    border-inline-start: 0;
    border-top: 1px solid var(--color-brushed-brass);
    padding-top: var(--space-4);
    padding-inline-start: 0;
  }

  .restaurant-pillars {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .restaurant-pillars > span {
    min-height: 2.75rem;
    justify-content: flex-start;
    padding-inline: 0;
    text-align: left;
  }

  .restaurant-pillars > span + span {
    border-inline-start: 0;
    border-top: 1px solid var(--color-border-brass);
  }

  .restaurant-space__media {
    max-height: none;
  }

  .restaurant-space__numbered {
    gap: var(--space-3) !important;
  }

  .restaurant-kitchen__card,
  .restaurant-bar__card--soft,
  .restaurant-scenario {
    padding: var(--space-6);
  }

  .restaurant-accordion__trigger {
    min-height: 3.25rem;
    font-size: 1.25rem;
  }

  .restaurant-questions__container {
    width: 100%;
  }

  .restaurant-next__actions {
    width: 100%;
  }

  .restaurant-next__actions .button--primary {
    width: min(100%, 21.25rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .restaurant-space__media img,
  .restaurant-kitchen__media img,
  .restaurant-bar__media img {
    transition: none;
  }

  .restaurant-space__media:hover img,
  .restaurant-kitchen__media:hover img,
  .restaurant-bar__media:hover img {
    transform: none;
  }
}


.culinary-page {
  overflow: clip;
  background: var(--color-warm-ivory);
}

.culinary-page .eyebrow {
  margin-block-end: 0;
}

.culinary-hero {
  position: relative;
  min-height: 43.75rem;
  display: grid;
  width: 100%;
  isolation: isolate;
  color: var(--color-warm-ivory);
}

.culinary-hero__image,
.culinary-hero__shade,
.culinary-hero__container {
  grid-area: 1 / 1;
}

.culinary-hero__image {
  width: 100%;
  height: 100%;
  max-width: none;
  object-position: 68% center;
}

.culinary-hero__shade {
  z-index: 1;
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.72) 0%, rgba(32, 53, 45, 0.47) 38%, rgba(32, 53, 45, 0.08) 72%), linear-gradient(0deg, rgba(18, 30, 25, 0.45) 0%, transparent 55%);
}

.culinary-hero__container {
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: end;
  min-width: 0;
  padding-block: var(--space-30) var(--space-16);
}

.culinary-hero__content {
  grid-column: 1 / span 5;
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 35rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.culinary-hero h1,
.culinary-hero p {
  margin: 0;
  color: var(--color-warm-ivory);
}

.culinary-hero h1 {
  font-size: clamp(3.25rem, 5vw, 4rem);
}

.culinary-hero__lead {
  max-width: 32rem;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-body);
}

.culinary-hero__cta {
  margin-block-start: var(--space-2);
}

.culinary-hero__scroll-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  margin-block-start: var(--space-3);
  color: var(--color-warm-ivory);
  font-size: var(--font-size-caption);
  font-weight: 700;
}

.culinary-hero__scroll-link span {
  color: var(--color-brushed-brass);
  font-size: 1.2rem;
}

.culinary-timeline-section {
  padding-block: var(--space-22) var(--space-16);
}

.culinary-timeline-section__intro {
  width: 50%;
  min-width: 0;
  max-width: 38.75rem;
}

.culinary-timeline-section__intro .lead {
  max-width: 38rem;
}

.culinary-timeline {
  margin-block-start: var(--space-12);
}

.culinary-timeline__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.culinary-timeline__list::before {
  position: absolute;
  top: 1rem;
  right: 3%;
  left: 3%;
  z-index: 0;
  height: 1px;
  background: var(--color-border-brass);
  content: "";
}

.culinary-timeline__list > li {
  z-index: 1;
  min-width: 0;
}

.culinary-timeline__marker {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 4.75rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  color: var(--color-deep-pine);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
  text-decoration: none;
}

.culinary-timeline__marker span {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid var(--color-brushed-brass);
  border-radius: 50%;
  background: var(--color-warm-ivory);
  color: var(--color-muted-ink);
  font-size: var(--font-size-utility);
  font-weight: 700;
}

.culinary-timeline__marker strong {
  max-width: 8rem;
  font-weight: 700;
}

.culinary-timeline__marker.is-active span,
.culinary-timeline__marker[aria-current="step"] span {
  border-color: var(--color-terracotta);
  background: var(--color-terracotta);
  color: var(--color-warm-ivory);
}

.culinary-timeline__marker.is-active strong,
.culinary-timeline__marker[aria-current="step"] strong {
  color: var(--color-terracotta);
  text-decoration: underline;
  text-decoration-color: var(--color-brushed-brass);
  text-underline-offset: 0.25em;
}

.culinary-stage {
  padding-block: var(--space-22);
  scroll-margin-top: 7rem;
}

.culinary-stage__grid,
.culinary-themed__grid,
.culinary-relax__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-8);
  align-items: center;
}

.culinary-stage__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
}

.culinary-stage__copy h2,
.culinary-stage__copy p,
.culinary-stage__copy ul {
  margin: 0;
}

.culinary-stage__copy--welcome,
.culinary-stage__copy--conversation,
.culinary-stage__copy--dessert {
  grid-column: 1 / span 5;
  width: 100%;
  max-width: 31.25rem;
}

.culinary-stage__copy--dinner,
.culinary-stage__copy--poker {
  grid-column: 8 / span 5;
  width: 100%;
  max-width: 31.875rem;
}

.culinary-stage__media {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-card);
}

.culinary-stage__media img,
.culinary-themed__media img,
.culinary-relax__media img {
  width: 100%;
  height: 100%;
  transition: transform var(--transition-image);
}

@media (hover: hover) and (pointer: fine) {
  .culinary-stage__media:hover img,
  .culinary-themed__media:hover img,
  .culinary-relax__media:hover img {
    transform: scale(1.035);
  }
}

.culinary-stage__grid--copy-left > .culinary-stage__media {
  grid-column: 6 / span 7;
}

.culinary-stage__grid--image-left > .culinary-stage__media {
  grid-column: 1 / span 7;
}

.culinary-stage__media--portrait {
  aspect-ratio: 4 / 5;
}

.culinary-stage__media--portrait img {
  object-position: center;
}

.culinary-stage__media--landscape {
  align-self: start;
  aspect-ratio: 3 / 2;
}

.culinary-stage__caption {
  width: 100%;
  max-width: 27.5rem;
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-body);
}

.culinary-stage__mood {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  width: 100%;
  max-width: 27.5rem;
  column-gap: var(--space-3);
  align-items: start;
}

.culinary-stage__mood span {
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.culinary-stage__mood p {
  color: var(--color-muted-ink);
  font-size: var(--font-size-caption);
}

.culinary-stage__detail-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: 0;
  list-style: none;
}

.culinary-stage__detail-list li {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: var(--space-3);
}

.culinary-stage__detail-list li::before {
  width: 0.375rem;
  height: 0.375rem;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--color-brushed-brass);
  content: "";
}

.culinary-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-deep-pine);
  font-weight: 700;
  text-decoration: none;
}

.culinary-text-link::after {
  width: 0;
  height: 1px;
  margin-top: 1.65rem;
  margin-left: calc(-100% + 0.75rem);
  background: var(--color-brushed-brass);
  content: "";
  transition: width var(--transition-color);
}

.culinary-text-link:hover::after {
  width: calc(100% - 0.75rem);
}

.culinary-conversation-note {
  width: 100%;
  max-width: 31.25rem;
  border-top: 1px solid var(--color-brushed-brass);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.culinary-conversation-note p {
  color: var(--color-deep-pine);
}

.culinary-stage__thought {
  max-width: 25rem;
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: 1.35;
}

.culinary-themed {
  margin-block: var(--space-22);
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
  scroll-margin-top: 7rem;
}

.culinary-themed__grid {
  min-height: 34rem;
}

.culinary-themed__copy {
  grid-column: 1 / span 5;
  display: flex;
  min-width: 0;
  max-width: 32.5rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  padding-block: var(--space-22);
}

.culinary-themed__copy h2,
.culinary-themed__copy p {
  margin: 0;
  color: var(--color-warm-ivory);
}

.culinary-themed__media {
  grid-column: 6 / span 7;
  width: 100%;
  min-width: 0;
  margin: 0 0 -2.25rem;
  overflow: hidden;
  border-radius: var(--radius-card);
  aspect-ratio: 16 / 9;
}

.culinary-themed__principles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  border-block: 1px solid var(--color-border-brass);
}

.culinary-themed__principles span {
  min-width: 0;
  padding: var(--space-3);
  color: var(--color-warm-ivory);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-caption);
}

.culinary-themed__principles span + span {
  border-left: 1px solid var(--color-border-brass);
}

.culinary-text-link--light {
  color: var(--color-warm-ivory);
}

.culinary-stage--poker {
  padding-top: calc(var(--space-22) + 2.25rem);
}

.culinary-responsibility {
  width: 100%;
  max-width: 31.25rem;
  border-top: 1px solid var(--color-brushed-brass);
  background: var(--color-soft-sage);
  padding: var(--space-6);
}

.culinary-responsibility h3,
.culinary-responsibility p {
  margin: 0;
}

.culinary-responsibility h3 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--font-size-body);
  font-weight: 700;
}

.culinary-responsibility h3::before {
  width: 0.625rem;
  height: 0.625rem;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--color-brushed-brass);
  content: "";
}

.culinary-responsibility p {
  margin-top: var(--space-3);
  font-size: var(--font-size-caption);
}

.culinary-dessert-note {
  width: 100%;
  max-width: 27.5rem;
  border-left: 4px solid var(--color-terracotta);
  background: var(--color-warm-white);
  padding: var(--space-6);
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: 1.35;
}

.culinary-relax {
  padding-block: var(--space-22) var(--space-30);
  scroll-margin-top: 7rem;
}

.culinary-relax__copy {
  grid-column: 1 / span 7;
  display: flex;
  min-width: 0;
  max-width: 37.5rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
}

.culinary-relax__copy h2,
.culinary-relax__copy p {
  margin: 0;
}

.culinary-relax__media {
  grid-column: 8 / span 5;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius-card);
  aspect-ratio: 16 / 9;
}

.culinary-relax__closing {
  width: 100%;
  max-width: 38.75rem;
  border-top: 1px solid var(--color-border-brass);
  padding-top: var(--space-6);
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  line-height: 1.35;
}

.culinary-closing {
  background: var(--color-soft-sage);
  padding-block: var(--space-22);
}

.culinary-closing__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.culinary-closing__card {
  grid-column: 3 / span 8;
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 47.5rem;
  justify-self: center;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  padding: var(--space-12);
}

.culinary-closing__card h2,
.culinary-closing__card p {
  margin: 0;
}

.culinary-closing__card p {
  max-width: 35rem;
}

.culinary-closing__actions {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-6);
}

.culinary-closing__actions > * {
  min-width: 0;
}

@media (max-width: 1199px) {
  .culinary-hero__content {
    grid-column: 1 / span 6;
  }

  .culinary-stage__grid,
  .culinary-themed__grid,
  .culinary-relax__grid {
    column-gap: var(--space-6);
  }

  .culinary-stage__copy--welcome,
  .culinary-stage__copy--conversation,
  .culinary-stage__copy--dessert {
    grid-column: 1 / span 6;
  }

  .culinary-stage__grid--copy-left > .culinary-stage__media {
    grid-column: 7 / span 6;
  }

  .culinary-stage__grid--image-left > .culinary-stage__media {
    grid-column: 1 / span 6;
  }

  .culinary-stage__copy--dinner,
  .culinary-stage__copy--poker {
    grid-column: 7 / span 6;
  }

  .culinary-themed__copy {
    grid-column: 1 / span 6;
  }

  .culinary-themed__media {
    grid-column: 7 / span 6;
  }

  .culinary-relax__copy {
    grid-column: 1 / span 7;
  }

  .culinary-relax__media {
    grid-column: 8 / span 5;
  }
}

@media (max-width: 899px) {
  .culinary-hero {
    min-height: 40rem;
  }

  .culinary-hero__container {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .culinary-hero__content {
    grid-column: 1 / span 5;
  }

  .culinary-stage__grid,
  .culinary-themed__grid,
  .culinary-relax__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-8);
  }

  .culinary-stage__copy--welcome,
  .culinary-stage__copy--conversation,
  .culinary-stage__copy--dessert,
  .culinary-stage__copy--dinner,
  .culinary-stage__copy--poker,
  .culinary-stage__grid--copy-left > .culinary-stage__media,
  .culinary-stage__grid--image-left > .culinary-stage__media {
    grid-column: auto;
    max-width: none;
  }

  .culinary-themed__copy,
  .culinary-themed__media,
  .culinary-relax__copy,
  .culinary-relax__media {
    grid-column: auto;
    max-width: none;
  }

  .culinary-themed__copy {
    padding-block: var(--space-16);
  }

  .culinary-timeline__list {
    display: flex;
    width: max-content;
    gap: var(--space-4);
    padding-inline: var(--space-1) var(--space-6);
  }

  .culinary-timeline {
    overflow-x: auto;
    padding-bottom: var(--space-2);
    scrollbar-color: var(--color-brushed-brass) transparent;
  }

  .culinary-timeline__list::before {
    right: 1.5rem;
    left: 1rem;
  }

  .culinary-timeline__list > li {
    width: 9rem;
    flex: 0 0 9rem;
  }

  .culinary-relax__copy {
    grid-column: span 1;
  }
}

@media (max-width: 819px) {
  .culinary-hero {
    min-height: 39rem;
  }

  .culinary-hero__image {
    object-position: 62% center;
  }

  .culinary-hero__container {
    display: flex;
    align-items: end;
    padding-block: var(--space-30) var(--space-12);
  }

  .culinary-hero__content {
    max-width: 32.5rem;
  }

  .culinary-stage {
    padding-block: var(--space-16);
  }

  .culinary-stage__grid,
  .culinary-themed__grid,
  .culinary-relax__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  .culinary-stage__grid > .culinary-stage__media,
  .culinary-stage__grid > .culinary-stage__copy,
  .culinary-themed__copy,
  .culinary-themed__media,
  .culinary-relax__copy,
  .culinary-relax__media {
    grid-column: 1;
  }

  .culinary-stage__grid > .culinary-stage__media {
    grid-row: 1;
  }

  .culinary-stage__grid > .culinary-stage__copy {
    grid-row: 2;
  }

  .culinary-stage__media--portrait {
    max-height: 28.75rem;
  }

  .culinary-themed {
    margin-block: var(--space-16);
  }

  .culinary-themed__grid {
    gap: 0;
  }

  .culinary-themed__media {
    grid-row: 1;
    margin: 0;
  }

  .culinary-themed__copy {
    grid-row: 2;
    padding-block: var(--space-8) var(--space-16);
  }

  .culinary-stage--poker {
    padding-top: var(--space-16);
  }

  .culinary-relax {
    padding-block: var(--space-16) var(--space-22);
  }

  .culinary-relax__media {
    grid-row: 1;
  }

  .culinary-relax__copy {
    grid-row: 2;
  }
}

@media (max-width: 619px) {
  .culinary-hero {
    min-height: 38.75rem;
  }

  .culinary-hero__shade {
    background: linear-gradient(90deg, rgba(32, 53, 45, 0.5) 0%, rgba(32, 53, 45, 0.14) 100%), linear-gradient(0deg, rgba(18, 30, 25, 0.78) 0%, rgba(18, 30, 25, 0.28) 65%, transparent 100%);
  }

  .culinary-hero h1 {
    font-size: 2.625rem;
  }

  .culinary-hero__lead {
    max-width: 100%;
    font-size: var(--font-size-body);
  }

  .culinary-hero__cta {
    width: min(100%, 22.5rem);
  }

  .culinary-timeline-section {
    padding-block: var(--space-16);
  }

  .culinary-timeline-section__intro {
    width: 100%;
    max-width: none;
  }

  .culinary-timeline {
    margin-block-start: var(--space-8);
    overflow: visible;
  }

  .culinary-timeline__list {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 0;
    padding: 0;
  }

  .culinary-timeline__list::before {
    top: 1rem;
    bottom: 1rem;
    left: 1rem;
    right: auto;
    width: 1px;
    height: auto;
  }

  .culinary-timeline__list > li {
    width: 100%;
    flex: 0 0 auto;
  }

  .culinary-timeline__marker {
    min-height: 3.25rem;
    flex-direction: row;
    align-items: center;
    gap: var(--space-3);
  }

  .culinary-timeline__marker strong {
    max-width: none;
  }

  .culinary-stage__copy,
  .culinary-themed__copy,
  .culinary-relax__copy {
    gap: var(--space-4);
  }

  .culinary-stage__copy h2,
  .culinary-themed__copy h2,
  .culinary-relax__copy h2,
  .culinary-closing__card h2 {
    font-size: 2rem;
  }

  .culinary-stage__media--portrait {
    max-height: none;
  }

  .culinary-stage__caption,
  .culinary-stage__mood,
  .culinary-conversation-note,
  .culinary-responsibility,
  .culinary-dessert-note {
    max-width: none;
  }

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

  .culinary-themed__principles {
    grid-template-columns: minmax(0, 1fr);
  }

  .culinary-themed__principles span + span {
    border-top: 1px solid var(--color-border-brass);
    border-left: 0;
  }

  .culinary-relax__closing {
    max-width: none;
  }

  .culinary-closing {
    padding-block: var(--space-16);
  }

  .culinary-closing__container {
    grid-template-columns: minmax(0, 1fr);
  }

  .culinary-closing__card {
    grid-column: 1;
    padding: var(--space-6);
    gap: var(--space-4);
  }

  .culinary-closing__actions {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
  }

  .culinary-closing__actions .button {
    width: min(100%, 22.5rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .culinary-stage__media img,
  .culinary-themed__media img,
  .culinary-relax__media img {
    transition: none;
  }

  .culinary-stage__media:hover img,
  .culinary-themed__media:hover img,
  .culinary-relax__media:hover img {
    transform: none;
  }
}


.home-page {
  overflow: hidden;
}

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

.home-hero {
  position: relative;
  min-height: 43.125rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  color: var(--color-warm-ivory);
  isolation: isolate;
  height:100vh;
}

.home-hero__image,
.home-hero__overlay,
.home-hero__container {
  grid-area: 1 / 1;
}

.home-hero__image {
  width: 100%;
  height: 100%;
  min-height: 43.125rem;
  object-fit: cover;
  object-position: 58% 50%;
}

.home-hero__overlay {
  z-index: 1;
  width: 100%;
  min-height: 100%;
  background: linear-gradient(90deg, rgba(32, 53, 45, 0.76) 0%, rgba(32, 53, 45, 0.63) 42%, rgba(32, 53, 45, 0.18) 67%, rgba(32, 53, 45, 0.06) 100%);
}

.home-hero__container {
  z-index: 2;
  display: grid;
  align-items: center;
  min-width: 0;
  padding-block: var(--space-22) var(--space-16);
}

.home-hero__copy {
  grid-column: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.home-hero__copy .eyebrow,
.home-closing__panel .eyebrow {
  margin: 0;
  color: var(--color-warm-ivory);
}

.home-hero__copy h1 {
  margin: 0;
  color: var(--color-warm-ivory);
}

.home-hero__copy .lead {
  margin: 0;
  color: var(--color-warm-ivory);
}

.home-hero__actions,
.home-closing__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.home-hero__actions > a,
.home-closing__actions > a {
  min-width: 0;
}

.home-hero__secondary,
.home-closing__secondary {
  border-color: rgba(244, 239, 229, 0.76);
  color: var(--color-warm-ivory);
}

.home-hero__secondary:hover,
.home-closing__secondary:hover {
  border-color: var(--color-brushed-brass);
  color: var(--color-warm-ivory);
}

.home-hero__note {
  position: absolute;
  right: var(--container-padding);
  bottom: var(--space-16);
  display: flex;
  width: min(21.25rem, calc(100% - (var(--container-padding) * 2)));
  min-width: 0;
  align-items: center;
  gap: var(--space-2);
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  box-shadow: var(--shadow-floating);
  color: var(--color-deep-pine);
  padding: var(--space-4) var(--space-6);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
}

.home-hero__note span {
  width: 0.5rem;
  height: 0.5rem;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--color-terracotta);
}

.home-restaurant__grid,
.home-poker__grid,
.home-atmosphere__grid {
  display: grid;
  min-width: 0;
  gap: var(--space-8);
}

.home-restaurant__grid {
  grid-template-columns: minmax(26.25rem, 1.38fr) minmax(26.25rem, 1fr);
  align-items: center;
}

.home-restaurant__media,
.home-poker__media {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-card);
}

.home-restaurant__media {
  grid-column: 1;
  height: 38.75rem;
}

.home-restaurant__media img,
.home-poker__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-image);
}

.home-restaurant__media:hover img,
.home-poker__media:hover img {
  transform: scale(1.035);
}

.home-restaurant__copy {
  grid-column: 2;
  min-width: 0;
  max-width: 32.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.home-restaurant__copy > * {
  margin: 0;
}

.home-restaurant__copy .lead {
  max-width: 32.5rem;
}

.home-restaurant__details {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.home-restaurant__details article {
  min-width: 0;
}

.home-restaurant__details h3,
.home-restaurant__details p {
  margin: 0;
}

.home-restaurant__details article {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.home-mini-rule {
  display: block;
  width: 2rem;
  height: 1px;
  background: var(--color-brushed-brass);
}

.home-text-link,
.home-card-link {
  position: relative;
  display: inline-flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  font-weight: 700;
  text-decoration: none;
}

.home-text-link::after,
.home-card-link::after {
  position: absolute;
  right: 0;
  bottom: 0.45rem;
  left: 0;
  height: 1px;
  background: var(--color-brushed-brass);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--transition-color);
}

.home-text-link:hover::after,
.home-card-link:hover::after,
.home-path-card:hover .home-card-link::after {
  transform: scaleX(1);
}

.home-paths {
  padding-block-start: var(--space-16);
}

.home-paths__intro,
.home-events__intro {
  max-width: 35rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  text-align: center;
}

.home-paths__intro > *,
.home-events__intro > * {
  margin: 0;
}

.home-paths__intro .lead {
  max-width: 35rem;
}

.home-paths__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr);
  align-items: end;
  min-width: 0;
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.home-path-card {
  min-width: 0;
  min-height: 16.25rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  overflow: hidden;
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  padding: var(--space-6);
  text-decoration: none;
  transition: border-color var(--transition-color);
}

.home-path-card:hover {
  border-color: var(--color-brushed-brass);
}

.home-path-card h3,
.home-path-card p,
.home-path-card .home-card-link {
  margin: 0;
}

.home-path-card p {
  max-width: 25rem;
}

.home-path-card .home-card-link {
  margin-top: auto;
}

.home-path-card--menu {
  min-height: 22rem;
  background: var(--color-soft-sage);
}

.home-path-card--atmosphere {
  min-height: 18.75rem;
  background: var(--color-warm-white);
}

.home-path-card--events {
  min-height: 17.5rem;
  border-color: transparent;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.home-path-card--events h3,
.home-path-card--events a {
  color: var(--color-warm-ivory);
}

.home-path-card__detail {
  width: 2.5rem;
  height: 1px;
  background: var(--color-brushed-brass);
}

.home-path-card__label,
.home-faq__label {
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.home-poker__grid {
  grid-template-columns: minmax(25.625rem, 1fr) minmax(31.25rem, 1.38fr);
  align-items: center;
}

.home-poker__copy {
  grid-column: 1;
  min-width: 0;
  max-width: 31.25rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.home-poker__copy > * {
  margin: 0;
}

.home-poker__copy .lead {
  max-width: 31.25rem;
}

.home-poker__audiences,
.home-scenarios__list,
.home-atmosphere__list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.home-poker__audiences article,
.home-scenarios__list article {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-3);
  border-inline-start: 1px solid var(--color-border-brass);
  padding-inline-start: var(--space-3);
}

.home-poker__audiences h3,
.home-poker__audiences p,
.home-scenarios__list h3,
.home-scenarios__list p {
  margin: 0;
}

.home-poker__audiences article > div,
.home-scenarios__list article > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.home-number {
  color: var(--color-terracotta);
  font-size: var(--font-size-caption);
  font-weight: 700;
  line-height: var(--line-height-caption);
}

.home-responsible-note {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  border-radius: var(--radius-control);
  background: var(--color-soft-sage);
  padding: var(--space-4);
}

.home-responsible-note strong,
.home-responsible-note p {
  margin: 0;
}

.home-poker__media {
  grid-column: 2;
  height: 38.75rem;
}

.home-poker__media figcaption {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.home-scenarios {
  background: var(--color-soft-sage);
}

.home-scenarios__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(21.875rem, 5fr);
  min-width: 0;
  gap: var(--space-8);
}

.home-scenarios__intro {
  grid-column: 1;
  min-width: 0;
  max-width: 38.75rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.home-scenarios__intro > * {
  margin: 0;
}

.home-scenarios__intro .lead {
  max-width: 38.75rem;
}

.home-scenarios__rule,
.home-atmosphere__rule {
  width: 100%;
  margin: 0;
}

.home-contact-card {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
}

.home-contact-card > * {
  margin: 0;
}

.home-contact-card p {
  max-width: 24.375rem;
}

.home-scenarios__list {
  grid-column: 1;
  margin-top: var(--space-4);
}

.home-events__intro .lead {
  max-width: 36.25rem;
}

.home-events__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  min-width: 0;
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.home-event-card {
  min-width: 0;
  min-height: 19rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  border: 1px solid var(--color-border-ink);
  border-radius: var(--radius-card);
  padding: var(--space-6);
}

.home-event-card h3,
.home-event-card p,
.home-event-card .home-card-link {
  margin: 0;
}

.home-event-card .home-card-link {
  margin-top: auto;
}

.home-event-card--poker {
  position: relative;
  margin-top: var(--space-8);
  border-color: transparent;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.home-event-card--poker h3,
.home-event-card--poker a {
  color: var(--color-warm-ivory);
}

.home-event-card__corner {
  width: 1.875rem;
  height: 1.875rem;
  border-top: 1px solid var(--color-brushed-brass);
  border-inline-end: 1px solid var(--color-brushed-brass);
  border-radius: 0 var(--radius-sm) 0 0;
}

.home-event-card--dining {
  background: var(--color-warm-white);
}

.home-event-card--groups {
  background: var(--color-soft-sage);
}

.home-atmosphere__grid {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  align-items: start;
}

.home-atmosphere__intro {
  grid-column: 1;
  min-width: 0;
  max-width: 29.375rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.home-atmosphere__intro > * {
  margin: 0;
}

.home-atmosphere__intro .lead {
  max-width: 29.375rem;
}

.home-atmosphere__list {
  grid-column: 2;
  max-width: 37.5rem;
}

.home-atmosphere__list article {
  min-width: 0;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  border-block-start: 1px solid var(--color-border-brass);
  padding-top: var(--space-4);
}

.home-atmosphere__list h3,
.home-atmosphere__list p {
  grid-column: 2;
  margin: 0;
}

.home-atmosphere__list h3 {
  margin-top: calc(var(--space-4) * -1.55);
}

.home-atmosphere__list .home-text-link {
  margin-top: var(--space-2);
}

.home-faq {
  background: var(--color-warm-white);
}

.home-faq__intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.home-faq__intro > * {
  margin: 0;
}



.home-faq__accordion {
  width: min(100%, 47.5rem);
  min-width: 0;
  margin-top: var(--space-12);
  margin-left: clamp(0rem, 12vw, 9rem);
}

.home-faq__item {
  min-width: 0;
  border-block-end: 1px solid var(--color-border-brass);
}

.home-faq__item h3 {
  margin: 0;
}

.home-faq__item button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2rem;
  width: 100%;
  min-height: 3.25rem;
  align-items: center;
  gap: var(--space-4);
  border: 0;
  background: transparent;
  padding: var(--space-4) 0;
  color: var(--color-deep-pine);
  font-family: var(--font-heading);
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  font-weight: 400;
  line-height: var(--line-height-card);
  text-align: left;
}

.home-faq__item button span {
  justify-self: end;
  color: var(--color-terracotta);
  font-family: var(--font-body);
  font-size: 1.5rem;
  line-height: 1;
  transition: transform var(--transition-color);
}

.home-faq__item button[aria-expanded="true"] span {
  transform: rotate(45deg);
}

.home-faq__item [role="region"] {
  max-width: 42.5rem;
  padding: 0 0 var(--space-6);
}

.home-faq__item [role="region"] p {
  margin: 0 0 var(--space-4);
}

.home-faq__item [role="region"] .home-text-link {
  margin: 0;
}

.home-faq__label {
  display: block;
  margin-bottom: var(--space-2);
}

.home-closing {
  position: relative;
  background: var(--color-deep-pine);
  color: var(--color-warm-ivory);
}

.home-closing::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.12;
  background-image: radial-gradient(rgba(244, 239, 229, 0.45) 0.55px, transparent 0.65px);
  background-size: 4px 4px;
  content: "";
  animation: home-grain 7s steps(2) infinite;
}

.home-closing .container {
  position: relative;
  z-index: 1;
}

.home-closing__panel {
  max-width: 43.75rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  padding-block: var(--space-22);
  text-align: center;
}

.home-closing__panel > * {
  margin: 0;
}

.home-closing__panel h2 {
  color: var(--color-warm-ivory);
}

.home-closing__panel .lead {
  max-width: 33.75rem;
  color: var(--color-warm-ivory);
}

.home-closing__actions {
  justify-content: center;
}

@keyframes home-grain {
  0%, 100% { transform: translate(0, 0); }
  25% { transform: translate(1%, -1%); }
  50% { transform: translate(-1%, 1%); }
  75% { transform: translate(1%, 1%); }
}

@media (max-width: 1050px) {
  .home-paths__grid {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }

  .home-path-card--menu { grid-column: 1; }
  .home-path-card--atmosphere { grid-column: 2; }
  .home-path-card--events { grid-column: 2; }
}

@media (max-width: 980px) {
  .home-restaurant__grid,
  .home-poker__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-restaurant__media,
  .home-restaurant__copy,
  .home-poker__copy,
  .home-poker__media {
    grid-column: 1;
    max-width: none;
  }

  .home-restaurant__media {
    height: min(76vw, 38.75rem);
  }

  .home-restaurant__copy,
  .home-poker__copy {
    width: 100%;
  }

  .home-poker__media {
    height: min(66vw, 38.75rem);
  }

  .home-scenarios__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-scenarios__intro,
  .home-contact-card,
  .home-scenarios__list {
    grid-column: 1;
    grid-row: auto;
    max-width: none;
  }

  .home-contact-card { width: 100%; }

  .home-atmosphere__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-atmosphere__intro,
  .home-atmosphere__list {
    grid-column: 1;
    max-width: none;
  }
}

@media (max-width: 900px) {
  .home-hero {
    min-height: 42.5rem;
  }

  .home-hero__image {
    min-height: 42.5rem;
    object-position: 62% 50%;
  }

  .home-hero__overlay {
    background: linear-gradient(90deg, rgba(32, 53, 45, 0.78) 0%, rgba(32, 53, 45, 0.66) 57%, rgba(32, 53, 45, 0.28) 100%);
  }

  .home-hero__container {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-hero__note {
    position: static;
    width: min(21.25rem, 100%);
  }

  .home-events__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-event-card--groups {
    grid-column: 1 / -1;
  }

  .home-faq__accordion {
    margin-left: 0;
  }
}

@media (max-width: 760px) {
  .home-section {
    padding-block: var(--space-16);
  }

  .home-paths__grid,
  .home-events__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .home-path-card--menu,
  .home-path-card--atmosphere,
  .home-path-card--events,
  .home-event-card--groups {
    grid-column: 1;
  }

  .home-path-card,
  .home-path-card--menu,
  .home-path-card--atmosphere,
  .home-path-card--events,
  .home-event-card,
  .home-event-card--poker {
    min-height: 13.125rem;
    margin-top: 0;
  }
}

@media (max-width: 599px) {
  .home-hero,
  .home-hero__image {
    min-height: 42.5rem;
  }

  .home-hero__image {
    object-position: 60% 35%;
  }

  .home-hero__overlay {
    background: linear-gradient(180deg, rgba(32, 53, 45, 0.08) 0%, rgba(32, 53, 45, 0.34) 38%, rgba(32, 53, 45, 0.86) 74%, rgba(32, 53, 45, 0.93) 100%);
  }

  .home-hero__container {
    padding-block: var(--space-12) var(--space-6);
  }

  .home-hero__copy {
    gap: var(--space-3);
  }

  .home-hero__copy h1 {
    font-size: 2.625rem;
  }

  .home-hero__copy .lead {
    font-size: 1rem;
  }

  .home-hero__actions,
  .home-closing__actions {
    width: 100%;
    flex-direction: column;
    flex-wrap: nowrap;
  }

  .home-hero__actions > a,
  .home-closing__actions > a {
    width: 100%;
  }

  .home-hero__note {
    width: 100%;
    padding: var(--space-3) var(--space-4);
  }

  .home-restaurant__grid,
  .home-poker__grid,
  .home-atmosphere__grid,
  .home-scenarios__grid {
    gap: var(--space-6);
  }

  .home-restaurant__media {
    height: auto;
    aspect-ratio: 4 / 5;
  }

  .home-poker__media {
    height: auto;
    aspect-ratio: 3 / 2;
  }

  .home-restaurant__copy,
  .home-poker__copy,
  .home-scenarios__intro,
  .home-atmosphere__intro,
  .home-faq__intro {
    gap: var(--space-3);
  }

  .home-restaurant__details,
  .home-poker__audiences,
  .home-scenarios__list,
  .home-atmosphere__list {
    gap: var(--space-4);
  }

  .home-poker__audiences article,
  .home-scenarios__list article,
  .home-atmosphere__list article {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .home-poker__audiences article > div,
  .home-scenarios__list article > div {
    grid-column: 1;
  }

  .home-atmosphere__list h3,
  .home-atmosphere__list p {
    grid-column: 1;
  }

  .home-atmosphere__list h3 {
    margin-top: 0;
  }

  .home-contact-card,
  .home-event-card,
  .home-path-card {
    padding: var(--space-6);
  }

  .home-events__grid,
  .home-paths__grid {
    margin-top: var(--space-8);
  }

  .home-faq__accordion {
    width: 100%;
    margin-top: var(--space-8);
  }

  .home-faq__item button {
    min-height: 3.25rem;
    font-size: 1.2rem;
  }

  .home-closing__panel {
    padding-block: var(--space-12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-restaurant__media img,
  .home-poker__media img,
  .home-closing::after {
    animation: none;
    transition: none;
  }

  .home-restaurant__media:hover img,
  .home-poker__media:hover img {
    transform: none;
  }
}


main.thank-you-page {
  display: grid;
  min-height: clamp(34rem, 68vh, 46rem);
  place-items: center;
  padding-block: clamp(var(--space-16), 12vw, var(--space-30));
}

.thank-you-page__container {
  width: min(100%, var(--container-max));
  padding-inline: var(--container-padding);
}

.thank-you-page__panel {
  position: relative;
  overflow: hidden;
  max-width: 46rem;
  margin-inline: auto;
  border: 1px solid var(--color-border-brass);
  border-radius: var(--radius-card);
  background: var(--color-warm-white);
  box-shadow: var(--shadow-floating);
  padding: clamp(var(--space-8), 7vw, var(--space-16));
  text-align: center;
}

.thank-you-page__panel::before {
  display: block;
  width: 2.75rem;
  height: 1px;
  margin: 0 auto var(--space-6);
  background: var(--color-brushed-brass);
  content: "";
}

.thank-you-page__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
}

.thank-you-page__content > * {
  margin: 0;
}

.thank-you-page__eyebrow {
  color: var(--color-terracotta);
  font-size: var(--font-size-utility);
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: var(--line-height-utility);
  text-transform: uppercase;
}

.thank-you-page__title {
  max-width: 32rem;
  margin-inline: auto;
}

.thank-you-page__copy {
  max-width: 35rem;
  margin-inline: auto;
  color: var(--color-muted-ink);
  text-align: center;
}

.thank-you-page__actions {
  justify-content: center;
  margin-top: var(--space-2);
}

@media (max-width: 599px) {
  main.thank-you-page {
    min-height: auto;
    padding-block: var(--space-16);
  }

  .thank-you-page__panel {
    padding: var(--space-8) var(--space-6);
  }

  .thank-you-page__actions {
    width: 100%;
  }
}