

:root {
  --color-paprika-ember: #b9472f;
  --color-paprika-copper: #d47a4f;
  --color-saffron-light: #e8b66a;
  --color-espresso-ink: #2b211d;
  --color-roasted-brown: #66534a;
  --color-porcelain: #f4eee7;
  --color-cream-highlight: #fff9f3;
  --color-glass-white: rgba(255, 249, 243, 0.68);
  --color-glass-edge: rgba(255, 255, 255, 0.62);
  --color-smoked-plum: #382824;
  --color-dark-on-dark-muted: #d9c8bc;
  --color-success-sage: #55705b;
  --color-dark-edge: rgba(255, 249, 243, 0.16);
  --color-focus-halo: rgba(232, 182, 106, 0.38);

  --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;

  --text-meta: 0.75rem;
  --text-utility: 0.875rem;
  --text-body: 1rem;
  --text-lead: 1.125rem;
  --text-card-heading: 1.5rem;
  --text-section-heading: clamp(1.875rem, 3vw, 2rem);
  --text-page-heading: clamp(2.375rem, 5vw, 2.75rem);
  --text-display: clamp(2.375rem, 6vw, 4rem);

  --leading-meta: 1.333;
  --leading-utility: 1.429;
  --leading-body: 1.625;
  --leading-lead: 1.556;
  --leading-heading: 0.98;

  --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-20: 5rem;
  --space-28: 7rem;

  --container-max: 77.5rem;
  --gutter: 2rem;
  --section-space: 7rem;

  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 0.875rem;
  --radius-xl: 1.25rem;

  --shadow-clay: 0 12px 30px rgba(61, 35, 25, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  --shadow-button: 0 5px 12px rgba(104, 45, 28, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.18);
  --shadow-button-pressed: inset 0 2px 5px rgba(70, 28, 18, 0.26);
  --shadow-soft: 0 8px 22px rgba(61, 35, 25, 0.09);
  --shadow-mobile: 0 7px 16px rgba(61, 35, 25, 0.1);

  --border-glass: 1px solid var(--color-glass-edge);
  --border-dark: 1px solid var(--color-dark-edge);
  --transition-ui: 180ms ease-out;
  --transition-image: 240ms ease-out;
}

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

html {
  min-width: 320px;
  scroll-behavior: smooth;
  scroll-padding-top: var(--space-20);
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background: var(--color-porcelain);
  color: var(--color-espresso-ink);
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: 450;
  line-height: var(--leading-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

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

img,
video {
  height: auto;
}

img {
  color: transparent;
}

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

figcaption {
  margin-top: var(--space-3);
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

a {
  color: inherit;
  text-decoration-color: rgba(185, 71, 47, 0.55);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

a:hover {
  color: var(--color-paprika-ember);
}

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

button,
select {
  text-transform: none;
}

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

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

input,
select,
textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(102, 83, 74, 0.28);
  border-radius: var(--radius-lg);
  background: var(--color-cream-highlight);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
  font-size: var(--text-body);
  line-height: 1.5;
  transition: border-color var(--transition-ui), box-shadow var(--transition-ui), background-color var(--transition-ui);
}

input,
select {
  min-height: 3rem;
  padding: 0.6875rem var(--space-3);
}

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

select {
  appearance: none;
  padding-right: 2.75rem;
  background-image: linear-gradient(45deg, transparent 50%, var(--color-espresso-ink) 50%), linear-gradient(135deg, var(--color-espresso-ink) 50%, transparent 50%);
  background-position: calc(100% - 1.15rem) 50%, calc(100% - 0.85rem) 50%;
  background-size: 0.32rem 0.32rem, 0.32rem 0.32rem;
  background-repeat: no-repeat;
}

input::placeholder,
textarea::placeholder {
  color: var(--color-roasted-brown);
  opacity: 0.78;
}

label {
  display: inline-block;
  margin-bottom: var(--space-2);
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: var(--leading-utility);
}

fieldset {
  margin: 0 0 var(--space-6);
  padding: 0;
  border: 0;
}

legend {
  margin-bottom: var(--space-3);
  padding: 0;
  color: var(--color-espresso-ink);
  font-weight: 600;
}

input[type="checkbox"],
input[type="radio"] {
  width: 1.125rem;
  min-height: 1.125rem;
  padding: 0;
  accent-color: var(--color-paprika-ember);
  box-shadow: none;
}

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

input[type="file"]::file-selector-button {
  margin-right: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border: 0;
  border-radius: var(--radius-sm);
  background: var(--color-paprika-ember);
  color: var(--color-cream-highlight);
  cursor: pointer;
  font: inherit;
  font-weight: 600;
}

table {
  width: 100%;
  margin-bottom: var(--space-6);
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td {
  padding: var(--space-3);
  border-bottom: 1px solid rgba(102, 83, 74, 0.2);
  text-align: left;
  vertical-align: top;
}

th {
  color: var(--color-espresso-ink);
  font-weight: 650;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: var(--space-4);
  color: var(--color-espresso-ink);
  font-family: var(--font-heading);
  font-weight: 600;
  letter-spacing: -0.025em;
  line-height: var(--leading-heading);
  text-wrap: balance;
}

h1 {
  font-size: var(--text-display);
}

h2 {
  font-size: var(--text-page-heading);
}

h3 {
  font-size: var(--text-section-heading);
}

h4 {
  font-size: var(--text-card-heading);
  line-height: 1.08;
}

h5 {
  font-size: var(--text-lead);
  line-height: 1.2;
}

h6 {
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.35;
}

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

ul,
ol {
  margin-top: 0;
  margin-bottom: var(--space-6);
  padding-left: 1.3em;
}

li::marker {
  color: var(--color-paprika-ember);
}

blockquote {
  margin: 0 0 var(--space-6);
  padding: var(--space-4) 0 var(--space-4) var(--space-6);
  border-left: 3px solid var(--color-paprika-copper);
  color: var(--color-roasted-brown);
  font-family: var(--font-heading);
  font-size: var(--text-lead);
  font-style: italic;
  line-height: 1.35;
}

blockquote p:last-child {
  margin-bottom: 0;
}

hr {
  height: 1px;
  margin: var(--space-8) 0;
  border: 0;
  background: rgba(102, 83, 74, 0.22);
}

small {
  font-size: var(--text-meta);
  line-height: var(--leading-meta);
}

strong,
b {
  font-weight: 700;
}

em,
i {
  font-style: italic;
}

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

code,
kbd,
samp {
  border-radius: var(--radius-sm);
  background: rgba(212, 122, 79, 0.12);
  padding: 0.08em 0.3em;
  font-size: 0.9em;
}

pre {
  overflow-x: auto;
  margin: 0 0 var(--space-6);
  padding: var(--space-4);
  border-radius: var(--radius-lg);
  background: var(--color-smoked-plum);
  color: var(--color-cream-highlight);
}

pre code {
  padding: 0;
  background: transparent;
}

::selection {
  background: rgba(232, 182, 106, 0.55);
  color: var(--color-espresso-ink);
}

:focus-visible {
  outline: 2px solid var(--color-paprika-ember);
  outline-offset: 3px;
  box-shadow: 0 0 0 3px var(--color-focus-halo);
}

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

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

.surface-clay,
.surface-glass,
.surface-dark {
  min-width: 0;
}

.surface-clay {
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: var(--radius-xl);
  background: var(--color-cream-highlight);
  box-shadow: var(--shadow-clay);
}

.surface-glass {
  border: var(--border-glass);
  border-radius: var(--radius-xl);
  background: var(--color-glass-white);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.52), var(--shadow-soft);
  backdrop-filter: blur(18px) saturate(112%);
  -webkit-backdrop-filter: blur(18px) saturate(112%);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .surface-glass {
    background: var(--color-cream-highlight);
  }
}

.surface-dark {
  border: var(--border-dark);
  border-radius: var(--radius-xl);
  background: var(--color-smoked-plum);
  color: var(--color-cream-highlight);
}

.surface-dark :is(h1, h2, h3, h4, h5, h6, label, legend) {
  color: var(--color-cream-highlight);
}

.surface-dark :is(p, small, figcaption) {
  color: var(--color-dark-on-dark-muted);
}

.content-group > :last-child,
.surface-clay > :last-child,
.surface-glass > :last-child,
.surface-dark > :last-child,
.card > :last-child,
.panel > :last-child {
  margin-bottom: 0;
}

.button,
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
  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-md);
  padding: 0.6875rem var(--space-4);
  background: var(--color-paprika-ember);
  box-shadow: var(--shadow-button);
  color: var(--color-cream-highlight);
  font-family: var(--font-body);
  font-size: var(--text-utility);
  font-weight: 650;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: transform var(--transition-ui), background-color var(--transition-ui), border-color var(--transition-ui), box-shadow var(--transition-ui), color var(--transition-ui);
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover {
  background: var(--color-paprika-copper);
  color: var(--color-cream-highlight);
  transform: translateY(-2px);
}

.button:active,
button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
  transform: translateY(0);
  box-shadow: var(--shadow-button-pressed);
}

.button-secondary {
  border-color: rgba(185, 71, 47, 0.5);
  background: rgba(255, 249, 243, 0.5);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  color: var(--color-espresso-ink);
}

.button-secondary:hover {
  border-color: var(--color-paprika-ember);
  background: var(--color-cream-highlight);
  color: var(--color-paprika-ember);
}

.button-link {
  min-height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--color-paprika-ember);
  font-weight: 650;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

.button-link:hover {
  background: transparent;
  box-shadow: none;
  color: var(--color-paprika-copper);
  transform: none;
}

.eyebrow {
  margin: 0 0 var(--space-3);
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
  text-transform: uppercase;
}

.muted {
  color: var(--color-roasted-brown);
}

.status-success {
  color: var(--color-success-sage);
}

.field-error {
  display: block;
  margin-top: var(--space-2);
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: var(--leading-utility);
}

.field-error::before {
  margin-right: var(--space-2);
  color: var(--color-paprika-ember);
  content: "•";
}

.field-success {
  display: block;
  margin-top: var(--space-2);
  color: var(--color-success-sage);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: var(--leading-utility);
}

.media-frame {
  overflow: hidden;
  border-radius: var(--radius-xl);
  background: var(--color-smoked-plum);
  box-shadow: var(--shadow-soft);
}

.media-frame > img,
.media-frame > picture > img,
.media-frame > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-image);
}

.media-frame:hover > img,
.media-frame:hover > picture > img,
.media-frame:hover > video {
  transform: scale(1.025);
}

@media (max-width: 56.25rem) {
  :root {
    --section-space: 5rem;
  }
}

@media (max-width: 40rem) {
  :root {
    --gutter: 1.25rem;
    --section-space: 3.5rem;
  }

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

  h2 {
    font-size: clamp(1.875rem, 8vw, 2.375rem);
    line-height: 1.03;
  }

  h3 {
    font-size: 1.875rem;
    line-height: 1.08;
  }

  .surface-clay,
  .surface-glass,
  .surface-dark {
    border-radius: var(--radius-lg);
  }

  .surface-clay,
  .surface-glass {
    box-shadow: var(--shadow-mobile), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  }

  .button,
  button,
  input[type="submit"],
  input[type="button"],
  input[type="reset"] {
    min-height: 2.75rem;
  }
}

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

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

  .button:hover,
  button:hover,
  input[type="submit"]:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  .media-frame:hover > img,
  .media-frame:hover > picture > img,
  .media-frame:hover > video {
    transform: none;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.site-header {
  position: relative;
  z-index: 70;
  min-height: 5.25rem;
  border-bottom: 1px solid rgba(102, 83, 74, 0.16);
  background: rgba(244, 238, 231, 0.94);
  box-shadow: 0 4px 18px rgba(61, 35, 25, 0.05);
  backdrop-filter: blur(14px) saturate(110%);
  -webkit-backdrop-filter: blur(14px) saturate(110%);
}

.site-header__inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 5.25rem;
  align-items: center;
  gap: clamp(1rem, 2vw, 2rem);
}

.site-header__brand {
  display: inline-flex;
  grid-column: 1;
  align-items: center;
  justify-self: start;
  gap: 0.625rem;
  min-width: 0;
  color: var(--color-espresso-ink);
  text-decoration: none;
}

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

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

.site-header__nav {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  justify-self: center;
}

.site-header__nav-list {
  display: flex;
  align-items: center;
  gap: clamp(0.55rem, 1vw, 1rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

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

.site-header__nav-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  border-bottom: 2px solid transparent;
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--transition-ui), border-color var(--transition-ui);
}

.site-header__nav-link:hover,
.site-header__nav-link[aria-current="page"] {
  border-bottom-color: var(--color-paprika-ember);
  color: var(--color-paprika-ember);
}

.site-header__actions {
  display: flex;
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  align-items: center;
  gap: var(--space-3);
  min-width: 0;
}

.site-header__reservation {
  min-height: 2.75rem;
  white-space: nowrap;
}

.nav-toggle {
  display: none;
  width: 2.75rem;
  min-width: 2.75rem;
  height: 2.75rem;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0;
  border: 1px solid rgba(185, 71, 47, 0.38);
  border-radius: var(--radius-md);
  background: var(--color-cream-highlight);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  color: var(--color-espresso-ink);
}

.nav-toggle:hover {
  background: var(--color-cream-highlight);
  color: var(--color-paprika-ember);
  transform: none;
}

.nav-toggle__line {
  display: block;
  width: 1.2rem;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transition: transform var(--transition-ui), opacity var(--transition-ui);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(1) {
  transform: translateY(0.375rem) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(2) {
  opacity: 0;
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(3) {
  transform: translateY(-0.375rem) rotate(-45deg);
}

@media (max-width: 70rem) {
  .site-header {
    min-height: 4.25rem;
  }

  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 4.25rem;
  }

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

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

  .site-header__nav {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: max(var(--gutter), env(safe-area-inset-left));
    right: max(var(--gutter), env(safe-area-inset-right));
    display: block;
    max-height: calc(100vh - 5.5rem);
    overflow: auto;
    padding: var(--space-4);
    border: var(--border-glass);
    border-radius: var(--radius-xl);
    background: rgba(255, 249, 243, 0.97);
    box-shadow: var(--shadow-clay);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.5rem);
    transition: opacity var(--transition-ui), transform var(--transition-ui);
  }

  .site-header__nav.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  .site-header__nav-list {
    display: grid;
    align-items: stretch;
    gap: var(--space-1);
  }

  .site-header__nav-link {
    width: 100%;
    min-height: 2.75rem;
    padding-inline: var(--space-3);
    border-bottom: 0;
    border-left: 2px solid transparent;
    border-radius: var(--radius-sm);
  }

  .site-header__nav-link:hover,
  .site-header__nav-link[aria-current="page"] {
    border-bottom-color: transparent;
    border-left-color: var(--color-paprika-ember);
    background: rgba(212, 122, 79, 0.1);
  }

  .site-header__actions {
    gap: var(--space-2);
  }

  .site-header__reservation {
    min-width: 0;
    padding-inline: var(--space-3);
  }

  .nav-toggle {
    display: inline-flex;
  }

  .header-menu-open {
    overflow: hidden;
  }
}

@media (max-width: 36rem) {
  .site-header__inner {
    gap: var(--space-2);
  }

  .site-header__brand {
    gap: var(--space-2);
  }

  .site-header__reservation {
    width: 2.75rem;
    padding: 0;
    font-size: 0;
  }

  .site-header__reservation::after {
    content: "+";
    font-size: 1.25rem;
    line-height: 1;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.site-footer {
  margin-top: auto;
  background: var(--color-smoked-plum);
  color: var(--color-cream-highlight);
}

.site-footer__inner {
  padding-block: var(--space-16) var(--space-8);
}

.site-footer__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) repeat(3, minmax(0, 0.8fr));
  gap: var(--space-8);
}

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

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

.site-footer__lockup {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  color: var(--color-cream-highlight);
  text-decoration: none;
}

.site-footer__mark {
  width: 2.75rem;
  height: 2.75rem;
  flex: 0 0 2.75rem;
  object-fit: contain;
}

.site-footer__name {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1;
}

.site-footer__description {
  max-width: 31rem;
  margin-bottom: var(--space-6);
  color: var(--color-dark-on-dark-muted);
}

.site-footer__cta {
  width: fit-content;
}

.site-footer__title {
  margin: 0 0 var(--space-4);
  color: var(--color-cream-highlight);
  font-family: var(--font-body);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
  text-transform: uppercase;
}

.site-footer__list {
  display: grid;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__list li {
  margin: 0;
  padding: 0;
}

.site-footer__list a {
  color: var(--color-dark-on-dark-muted);
  font-size: var(--text-utility);
  line-height: 1.45;
  text-decoration-color: rgba(217, 200, 188, 0.42);
}

.site-footer__list a:hover {
  color: var(--color-cream-highlight);
}

.site-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin-top: var(--space-12);
  padding-top: var(--space-6);
  border-top: var(--border-dark);
  color: var(--color-dark-on-dark-muted);
  font-size: var(--text-meta);
  line-height: var(--leading-meta);
}

.site-footer__bottom p {
  margin: 0;
}

.consent-banner {
  position: fixed;
  z-index: 80;
  right: max(var(--gutter), env(safe-area-inset-right));
  bottom: max(var(--gutter), env(safe-area-inset-bottom));
  width: min(100% - (var(--gutter) * 2), 34rem);
  padding: var(--space-6);
  border: var(--border-glass);
  border-radius: var(--radius-xl);
  background: rgba(255, 249, 243, 0.94);
  box-shadow: var(--shadow-clay);
  color: var(--color-espresso-ink);
  backdrop-filter: blur(18px) saturate(112%);
  -webkit-backdrop-filter: blur(18px) saturate(112%);
  transition: opacity var(--transition-ui), transform var(--transition-ui);
}

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

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

.consent-banner__title {
  margin: 0 0 var(--space-2);
  font-family: var(--font-heading);
  font-size: 1.65rem;
  line-height: 1;
}

.consent-banner__copy {
  margin: 0;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.consent-banner__copy a {
  color: var(--color-espresso-ink);
}

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

.consent-banner__actions .button {
  min-height: 2.75rem;
}

@media (max-width: 56.25rem) {
  .site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer__brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 40rem) {
  .site-footer__inner {
    padding-block: var(--space-12) var(--space-6);
  }

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

  .site-footer__brand {
    grid-column: auto;
  }

  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    margin-top: var(--space-8);
  }

  .consent-banner {
    right: var(--gutter);
    bottom: var(--gutter);
    width: calc(100% - (var(--gutter) * 2));
    padding: var(--space-4);
    border-radius: var(--radius-lg);
  }

  .consent-banner__actions .button {
    flex: 1 1 10rem;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.cookie-policy-page {
  min-width: 0;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.cookie-policy-page a:focus-visible {
  outline: 2px solid var(--color-paprika-ember);
  outline-offset: 3px;
  box-shadow: 0 0 0 3px var(--color-focus-halo);
}

.cookie-intro {
  padding-top: var(--space-28);
  padding-bottom: var(--space-20);
}

.cookie-intro__container,
.cookie-concepts__container,
.cookie-categories__container,
.cookie-controls__container,
.cookie-information__container,
.cookie-offline-statement__container {
  min-width: 0;
}

.cookie-intro__title-block {
  width: min(75%, 760px);
  min-width: 0;
}

.cookie-intro__title-block h1 {
  max-width: 620px;
  margin-bottom: var(--space-8);
}

.cookie-intro__panel {
  display: flex;
  width: min(66.667%, 820px);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  padding: var(--space-8);
}

.cookie-intro__lead {
  width: min(100%, 700px);
  margin: 0;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.cookie-intro__offline-note {
  display: flex;
  width: min(100%, 680px);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-left: var(--space-6);
  border-left: 3px solid var(--color-paprika-ember);
}

.cookie-intro__offline-note h2 {
  margin: 0;
  font-size: var(--text-card-heading);
}

.cookie-intro__offline-note p {
  margin: 0;
}

.cookie-concepts__container {
  width: min(100% - (var(--gutter) * 2), 67.5rem);
}

.cookie-concepts__heading {
  width: min(58.333%, 720px);
  min-width: 0;
}

.cookie-concepts__heading h2,
.cookie-categories__heading h2,
.cookie-controls__heading h2,
.cookie-information__heading h2 {
  margin-bottom: var(--space-6);
}

.cookie-concepts__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
  width: 100%;
  margin-top: var(--space-12);
}

.cookie-concepts__card {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.cookie-concepts__card--offset {
  margin-top: var(--space-8);
}

.cookie-concepts__number {
  margin: 0;
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
}

.cookie-concepts__card h3,
.cookie-concepts__card p {
  margin: 0;
}

.cookie-concepts__card h3 {
  font-size: var(--text-card-heading);
  line-height: 1.08;
}

.cookie-categories__container {
  width: min(100% - (var(--gutter) * 2), 67.5rem);
}

.cookie-categories__heading {
  width: min(64.815%, 700px);
  min-width: 0;
}

.cookie-categories__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  width: 100%;
  margin-top: var(--space-12);
}

.cookie-category {
  display: grid;
  grid-template-columns: minmax(220px, 3fr) minmax(0, 8fr) minmax(24px, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-6);
  padding: var(--space-8);
  border-radius: var(--radius-xl);
}

.cookie-category--clay {
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: var(--color-cream-highlight);
  box-shadow: var(--shadow-clay);
}

.cookie-category--glass {
  border: var(--border-glass);
  background: var(--color-glass-white);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.52), var(--shadow-soft);
  backdrop-filter: blur(18px) saturate(112%);
  -webkit-backdrop-filter: blur(18px) saturate(112%);
}

.cookie-category__label,
.cookie-category__description {
  min-width: 0;
}

.cookie-category__label {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.cookie-category__label span {
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
}

.cookie-category__label h3,
.cookie-category__description p {
  margin: 0;
}

.cookie-category__label h3 {
  font-size: var(--text-card-heading);
}

.cookie-category__description {
  grid-column: 2;
  width: min(100%, 720px);
}

.cookie-category--communication .cookie-category__label {
  position: relative;
  padding-top: var(--space-4);
}

.cookie-category--communication .cookie-category__label::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 72px;
  height: 3px;
  background: var(--color-smoked-plum);
  content: "";
}

.cookie-controls__container {
  width: min(100% - (var(--gutter) * 2), 61.25rem);
}

.cookie-controls__panel {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-12);
  padding: var(--space-12);
}

.cookie-controls__heading {
  width: min(100%, 720px);
  min-width: 0;
}

.cookie-controls__heading p {
  margin-bottom: 0;
}

.cookie-controls__advice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(420px, 1fr));
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
}

.cookie-controls__advice {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.cookie-controls__advice h3,
.cookie-controls__advice p {
  margin: 0;
}

.cookie-controls__advice h3 {
  font-size: var(--text-card-heading);
}

.cookie-controls__advice--notice {
  border-top: 3px solid var(--color-paprika-copper);
}

.cookie-information__container {
  width: min(100% - (var(--gutter) * 2), 67.5rem);
}

.cookie-information__heading {
  width: min(64.815%, 700px);
  min-width: 0;
}

.cookie-information__cards {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.cookie-information__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.cookie-information__card h3,
.cookie-information__card p {
  margin: 0;
}

.cookie-information__card h3 {
  font-size: var(--text-card-heading);
}

.cookie-information__card--responsibility {
  width: min(66.667%, 760px);
}

.cookie-information__card--contact {
  width: min(75%, 840px);
}

.cookie-information__card--updates {
  width: min(58.333%, 680px);
  border-bottom: 2px solid var(--color-paprika-ember);
}

.cookie-information__contact-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: var(--color-paprika-ember);
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

.cookie-offline-statement {
  position: relative;
  overflow: hidden;
  padding-block: var(--space-20);
  background: var(--color-smoked-plum);
  color: var(--color-cream-highlight);
}

.cookie-offline-statement::after {
  position: absolute;
  top: 20%;
  right: 9%;
  width: 22rem;
  height: 22rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(212, 122, 79, 0.28) 0%, rgba(232, 182, 106, 0.09) 35%, transparent 70%);
  content: "";
  pointer-events: none;
}

.cookie-offline-statement__container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
  width: min(100% - (var(--gutter) * 2), var(--container-max));
  margin-inline: auto;
}

.cookie-offline-statement__content {
  grid-column: 1;
  width: min(100%, 760px);
  min-width: 0;
}

.cookie-offline-statement__content h2 {
  margin-bottom: var(--space-6);
  color: var(--color-cream-highlight);
}

.cookie-offline-statement__content p {
  color: var(--color-dark-on-dark-muted);
}

.cookie-offline-statement__content p:last-child {
  margin-bottom: 0;
}

.cookie-offline-statement__content .eyebrow {
  color: var(--color-saffron-light);
}

.cookie-offline-statement__ambient {
  grid-column: 2;
  width: 100%;
  min-width: 0;
}

@media (max-width: 61.25rem) {
  .cookie-intro__title-block {
    width: min(83.333%, 760px);
  }

  .cookie-intro__panel {
    width: min(75%, 820px);
  }

  .cookie-category {
    grid-template-columns: minmax(220px, 3fr) minmax(0, 7fr);
  }

  .cookie-category__description {
    grid-column: 2;
  }
}

@media (max-width: 56.25rem) {
  .cookie-concepts__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cookie-concepts__card--offset {
    grid-column: 1 / -1;
    width: calc(50% - (var(--space-3) / 1));
    margin-top: 0;
  }

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

  .cookie-category__description {
    grid-column: 1;
    width: min(100%, 720px);
  }

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

  .cookie-controls__advice {
    min-width: 0;
  }

  .cookie-information__card--responsibility,
  .cookie-information__card--contact,
  .cookie-information__card--updates {
    width: min(100%, 760px);
  }
}

@media (max-width: 47.5rem) {
  .cookie-intro {
    padding-top: var(--space-16);
  }

  .cookie-intro__title-block,
  .cookie-intro__panel,
  .cookie-concepts__heading,
  .cookie-categories__heading,
  .cookie-information__heading {
    width: 100%;
  }

  .cookie-concepts__container,
  .cookie-categories__container,
  .cookie-information__container {
    width: min(100% - (var(--gutter) * 2), var(--container-max));
  }

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

  .cookie-concepts__card--offset {
    grid-column: auto;
    width: 100%;
  }

  .cookie-controls__panel {
    padding: var(--space-8);
  }

  .cookie-offline-statement__container {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookie-offline-statement__content {
    grid-column: 1;
    width: 100%;
  }

  .cookie-offline-statement__ambient {
    display: none;
  }
}

@media (max-width: 40rem) {
  .cookie-intro__panel,
  .cookie-concepts__card,
  .cookie-category,
  .cookie-controls__advice,
  .cookie-information__card {
    padding: var(--space-6);
  }

  .cookie-intro__lead {
    font-size: var(--text-lead);
    line-height: var(--leading-lead);
  }

  .cookie-intro__offline-note {
    padding-left: var(--space-4);
  }

  .cookie-controls__panel {
    gap: var(--space-8);
    padding: var(--space-6);
  }

  .cookie-information__cards {
    gap: var(--space-4);
  }

  .cookie-information__contact-link {
    display: inline-flex;
  }

  .cookie-offline-statement {
    padding-block: var(--space-16);
  }

  .cookie-offline-statement::after {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-policy-page *,
  .cookie-policy-page *::before,
  .cookie-policy-page *::after {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
  }
}
ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


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

.terms-page,
.terms-page * {
  overflow-wrap: anywhere;
  hyphens: auto;
}

.terms-intro {
  padding-top: calc(var(--section-space) + var(--space-6));
  padding-bottom: var(--space-16);
}

.terms-intro__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-6);
  row-gap: var(--space-8);
}

.terms-intro__copy {
  grid-column: 1 / span 8;
  min-width: 0;
  max-width: 47.5rem;
}

.terms-intro__lead {
  max-width: 47.5rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.terms-intro__utility {
  grid-column: 1 / -1;
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(102, 83, 74, 0.22);
}

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

.terms-intro__toc-link,
.terms-intro__print {
  min-height: 2.75rem;
  flex: 0 0 auto;
}

.terms-intro__toc-link {
  display: inline-flex;
  align-items: center;
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 650;
  text-decoration-color: var(--color-paprika-ember);
}

.terms-intro__utility p {
  margin: 0 0 0 auto;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
  text-align: right;
}

.terms-document {
  padding-top: var(--space-8);
}

.terms-document__layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 8fr);
  align-items: start;
  column-gap: var(--space-6);
}

.terms-toc {
  grid-column: 1;
  width: 100%;
  min-width: 0;
  position: sticky;
  top: calc(var(--space-20) + var(--space-4));
}

.terms-toc__inner {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
}

.terms-toc h2 {
  margin: 0;
  font-size: 1.75rem;
}

.terms-toc nav {
  width: 100%;
  min-width: 0;
}

.terms-toc__list {
  display: flex;
  margin: 0;
  padding: 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-1);
}

.terms-toc__list li {
  width: 100%;
  min-width: 0;
}

.terms-toc__list a {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  align-items: start;
  gap: var(--space-2);
  padding: var(--space-2) 0 var(--space-2) var(--space-3);
  border-left: 3px solid transparent;
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: var(--leading-utility);
  text-decoration: none;
  transition: border-color var(--transition-ui), color var(--transition-ui), background-color var(--transition-ui);
}

.terms-toc__list a:hover,
.terms-toc__list a.is-active {
  border-left-color: var(--color-paprika-ember);
  color: var(--color-paprika-ember);
}

.terms-toc__list a.is-active {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

.terms-toc__list span {
  color: var(--color-paprika-copper);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.terms-toc__note {
  margin: 0;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.terms-document__body {
  grid-column: 3;
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 47.5rem;
  flex-direction: column;
  gap: var(--space-12);
}

.terms-card,
.terms-final {
  width: 100%;
  min-width: 0;
}

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

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

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

.terms-number {
  margin-bottom: var(--space-2);
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 750;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
}

.terms-card h2,
.terms-offline h2,
.terms-closing h2 {
  scroll-margin-top: calc(var(--space-20) + var(--space-4));
}

.terms-card h3 {
  margin-bottom: var(--space-3);
  font-size: 1.5rem;
}

.terms-card__intro,
.terms-card__closing,
.terms-card__emphasis,
.terms-cancellation p {
  max-width: 42.5rem;
}

.terms-card__emphasis {
  color: var(--color-espresso-ink);
  font-weight: 550;
}

.terms-service-list {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
  margin: var(--space-6) 0;
  padding: 0;
  min-width: 0;
  gap: var(--space-4) var(--space-6);
}

.terms-service-list li {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4) 0;
  border-top: 1px solid rgba(102, 83, 74, 0.24);
}

.terms-service-list li:nth-child(2) {
  grid-column: 2;
}

.terms-service-list li:nth-child(3) {
  grid-column: 1;
}

.terms-service-list li:nth-child(4) {
  grid-column: 2;
}

.terms-service-list strong,
.terms-conduct-list strong {
  color: var(--color-espresso-ink);
  font-size: var(--text-lead);
  line-height: 1.3;
}

.terms-service-list span,
.terms-conduct-list span {
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.terms-steps {
  display: flex;
  margin: var(--space-6) 0;
  padding: 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
}

.terms-steps li {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  align-items: start;
  gap: var(--space-4);
}

.terms-steps li > div {
  min-width: 0;
}

.terms-steps h3,
.terms-steps p {
  margin-bottom: 0;
}

.terms-steps h3 {
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.35;
}

.terms-steps__number {
  display: inline-flex;
  width: 2.5rem;
  min-width: 2.5rem;
  height: 2.5rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: var(--radius-sm);
  background: var(--color-cream-highlight);
  box-shadow: var(--shadow-soft), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  color: var(--color-paprika-ember);
  font-size: var(--text-utility);
  font-weight: 750;
}

.terms-cancellation {
  max-width: 42.5rem;
  padding-left: var(--space-4);
  border-left: 3px solid var(--color-paprika-copper);
}

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

.terms-conduct-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: var(--space-6) 0 0;
  padding: 0;
  min-width: 0;
  gap: var(--space-6);
}

.terms-conduct-list li {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(102, 83, 74, 0.24);
}

.terms-conduct-list li::before {
  display: block;
  width: var(--space-3);
  height: 2px;
  background: var(--color-paprika-copper);
  content: "";
}

.terms-context {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-8);
  padding: var(--space-6);
}

.terms-context > * {
  min-width: 0;
  max-width: 40rem;
  margin: 0;
}

.terms-context h3 {
  font-size: var(--text-card-heading);
}

.terms-consult-list {
  display: flex;
  margin: var(--space-6) 0 0;
  padding: 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.terms-consult-list li {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(102, 83, 74, 0.24);
}

.terms-consult-list span {
  color: var(--color-paprika-copper);
  font-size: var(--text-meta);
  font-weight: 750;
  letter-spacing: 0.08em;
}

.terms-consult-list p {
  min-width: 0;
  margin: 0;
}

.terms-final {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-12);
}

.terms-offline,
.terms-closing {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.terms-offline > *,
.terms-closing > * {
  min-width: 0;
  margin: 0;
}

.terms-offline p:not(.terms-number) {
  max-width: 42.5rem;
}

.terms-offline .terms-number {
  color: var(--color-saffron-light);
}

.terms-closing {
  align-items: flex-start;
  padding: 0;
}

.terms-closing p:not(.terms-number) {
  max-width: 38.75rem;
}

.terms-closing__action {
  min-height: 3rem;
  margin-top: var(--space-2);
}

@media (max-width: 67.5rem) {
  .terms-intro__container {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .terms-intro__copy {
    grid-column: 1 / -1;
  }

  .terms-document__layout {
    grid-template-columns: 1fr;
    row-gap: var(--space-8);
  }

  .terms-toc,
  .terms-document__body {
    grid-column: 1;
  }

  .terms-toc {
    position: static;
  }

  .terms-document__body {
    max-width: 47.5rem;
  }
}

@media (max-width: 58.75rem) {
  .terms-service-list {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .terms-service-list li:nth-child(1),
  .terms-service-list li:nth-child(2),
  .terms-service-list li:nth-child(3),
  .terms-service-list li:nth-child(4) {
    grid-column: 1;
  }
}

@media (max-width: 53.75rem) {
  .terms-conduct-list {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
}

@media (max-width: 40rem) {
  .terms-intro {
    padding-top: var(--space-16);
    padding-bottom: var(--space-8);
  }

  .terms-intro__container {
    grid-template-columns: 1fr;
    row-gap: var(--space-6);
  }

  .terms-intro__copy,
  .terms-intro__utility {
    grid-column: 1;
  }

  .terms-intro__lead {
    max-width: 42ch;
    font-size: var(--text-lead);
  }

  .terms-intro__utility {
    align-items: stretch;
    flex-direction: column;
    gap: var(--space-2);
  }

  .terms-intro__toc-link,
  .terms-intro__print {
    width: 100%;
    justify-content: flex-start;
  }

  .terms-intro__utility p {
    margin: var(--space-2) 0 0;
    text-align: left;
  }

  .terms-document {
    padding-top: var(--space-4);
  }

  .terms-document__layout {
    row-gap: var(--space-6);
  }

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

  .terms-toc h2 {
    font-size: 1.5rem;
  }

  .terms-toc__list {
    gap: 0;
  }

  .terms-toc__list a {
    min-height: 2.75rem;
    align-items: center;
  }

  .terms-document__body {
    gap: var(--space-8);
  }

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

  .terms-card h2,
  .terms-offline h2,
  .terms-closing h2 {
    font-size: 1.875rem;
    line-height: 1.08;
  }

  .terms-card h3 {
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .terms-steps li {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }

  .terms-steps__number {
    width: 2.5rem;
  }

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

  .terms-final {
    gap: var(--space-8);
  }

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

  .terms-closing__action {
    width: 100%;
    min-height: 3rem;
    justify-content: flex-start;
  }
}

@media print {
  .terms-intro__utility,
  .terms-toc,
  .terms-closing__action {
    display: none !important;
  }

  .terms-page {
    background: #fff;
  }

  .terms-intro,
  .terms-document {
    padding: 0 0 1.5rem;
  }

  .terms-intro__container,
  .terms-document__layout {
    display: block;
    width: 100%;
  }

  .terms-document__body {
    display: block;
    max-width: none;
  }

  .terms-card,
  .terms-offline,
  .terms-context,
  .terms-closing {
    break-inside: avoid;
    margin-bottom: 1.5rem;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: #000;
  }

  .terms-offline :is(h1, h2, h3, h4, h5, h6, p),
  .terms-context :is(h1, h2, h3, h4, h5, h6, p) {
    color: #000;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.privacy-page {
  overflow-wrap: anywhere;
  hyphens: auto;
}

.privacy-page__intro {
  padding: var(--space-28) 0 var(--space-16);
  background: linear-gradient(118deg, var(--color-porcelain) 0%, var(--color-porcelain) 67%, rgba(232, 182, 106, 0.14) 100%);
}

.privacy-page__intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
  gap: var(--space-6);
  align-items: stretch;
}

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

.privacy-page__intro-copy {
  width: 100%;
  max-width: 47.5rem;
}

.privacy-page__lead {
  max-width: 42.5rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.privacy-page__accent-rule {
  width: 5rem;
  height: 2px;
  margin: var(--space-6) 0;
  background: var(--color-paprika-copper);
}

.privacy-page__offline-note {
  display: flex;
  width: 100%;
  max-width: 38.75rem;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6) var(--space-8);
}

.privacy-page__offline-note > * { margin: 0; }

.privacy-page__detail-link { margin-top: var(--space-6); }

.privacy-page__intro-space {
  display: flex;
  min-width: 0;
  align-items: flex-end;
  justify-content: flex-end;
}

.privacy-page__intro-space span {
  width: 1px;
  height: 11rem;
  background: linear-gradient(to bottom, transparent, var(--color-paprika-copper), transparent);
}

.privacy-page__overview { padding-top: var(--space-16); }

.privacy-page__overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(16.25rem, 3fr);
  gap: calc(var(--space-12) * 1.5);
  align-items: start;
}

.privacy-page__overview-grid > * { min-width: 0; }

.privacy-page__overview-help { max-width: 35rem; }

.privacy-page__toc {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: var(--space-6);
  padding: var(--space-6);
}

.privacy-page__toc-group {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: var(--space-2);
}

.privacy-page__toc-group > * { margin: 0; }

.privacy-page__toc-label {
  color: var(--color-roasted-brown);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
  text-transform: uppercase;
}

.privacy-page__toc ol,
.privacy-page__side-toc ol {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0;
  flex-direction: column;
  gap: var(--space-1);
}

.privacy-page__toc li,
.privacy-page__side-toc li { width: 100%; min-width: 0; }

.privacy-page__toc a,
.privacy-page__side-toc a {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) 0;
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  font-weight: 600;
  line-height: var(--leading-utility);
  text-decoration: underline;
  text-decoration-color: rgba(185, 71, 47, 0.28);
  text-underline-offset: 0.22em;
}

.privacy-page__toc a span,
.privacy-page__side-toc a span {
  flex: 0 0 1.65rem;
  color: var(--color-paprika-copper);
  font-size: var(--text-meta);
  font-weight: 700;
}

.privacy-page__toc a[aria-current="location"],
.privacy-page__side-toc a[aria-current="location"] {
  color: var(--color-paprika-ember);
  text-decoration-color: var(--color-paprika-ember);
  text-decoration-thickness: 2px;
}

.privacy-page__document { padding-top: var(--space-16); }

.privacy-page__document-grid {
  display: grid;
  grid-template-columns: minmax(16.25rem, 3fr) minmax(0, 7fr);
  gap: calc(var(--space-12) * 1.5);
  align-items: start;
}

.privacy-page__document-grid > * { min-width: 0; }

.privacy-page__side-toc { width: 100%; min-width: 0; }

.privacy-page__side-toc-inner {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
  position: sticky;
  top: calc(var(--space-20) + var(--space-2));
}

.privacy-page__side-toc-inner > * { margin: 0; }

.privacy-page__chapters {
  display: flex;
  width: 100%;
  max-width: 47.5rem;
  flex-direction: column;
  gap: var(--space-20);
}

.privacy-page__chapter {
  width: 100%;
  min-width: 0;
  scroll-margin-top: var(--space-20);
}

.privacy-page__chapter > h2 { max-width: 46.25rem; }
.privacy-page__chapter > p:not(.privacy-page__chapter-number):not(.privacy-page__purpose-callout):not(.privacy-page__authority-placeholder) { max-width: 45rem; }
.privacy-page__chapter > h3 { max-width: 45rem; margin-top: var(--space-12); }

.privacy-page__chapter-number {
  margin-bottom: var(--space-3);
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
}

.privacy-page__data-panel,
.privacy-page__conditional-panel,
.privacy-page__retention-panel,
.privacy-page__request-panel,
.privacy-page__closing-note,
.privacy-page__context-note,
.privacy-page__security-note {
  width: 100%;
  margin-top: var(--space-6);
}

.privacy-page__data-panel { padding: var(--space-6); }

.privacy-page__data-panel dl,
.privacy-page__definition-list,
.privacy-page__update-list {
  display: flex;
  width: 100%;
  margin: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.privacy-page__data-panel dl > div,
.privacy-page__definition-list > div,
.privacy-page__update-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: var(--space-4);
  min-width: 0;
  padding-bottom: var(--space-3);
  border-bottom: 1px solid rgba(102, 83, 74, 0.18);
}

.privacy-page__data-panel dl > div:last-child,
.privacy-page__definition-list > div:last-child,
.privacy-page__update-list > div:last-child { padding-bottom: 0; border-bottom: 0; }

.privacy-page__data-panel dt,
.privacy-page__definition-list dt,
.privacy-page__update-list dt {
  min-width: 0;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  font-weight: 650;
}

.privacy-page__data-panel dd,
.privacy-page__definition-list dd,
.privacy-page__update-list dd { min-width: 0; margin: 0; color: var(--color-espresso-ink); font-weight: 650; }

.privacy-page__inline-placeholders {
  display: flex;
  width: 100%;
  max-width: 45rem;
  margin: var(--space-6) 0;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-6);
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
}

.privacy-page__inline-placeholders span { min-width: 0; }
.privacy-page__inline-placeholders b { color: var(--color-espresso-ink); }

.privacy-page__back-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  margin-top: var(--space-6);
  color: var(--color-paprika-ember);
  font-size: var(--text-utility);
  font-weight: 650;
}

.privacy-page__occasion-labels {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.2fr) minmax(0, 0.9fr);
  gap: var(--space-3);
  margin: var(--space-6) 0;
}

.privacy-page__occasion-labels span {
  display: flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  padding: var(--space-3) var(--space-4);
  border-bottom: 2px solid rgba(212, 122, 79, 0.55);
  background: rgba(255, 249, 243, 0.52);
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  font-weight: 650;
}

.privacy-page__context-note,
.privacy-page__security-note,
.privacy-page__closing-note {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6) var(--space-8);
}

.privacy-page__context-note > *,
.privacy-page__security-note > *,
.privacy-page__closing-note > * { margin: 0; }

.privacy-page__context-note h3,
.privacy-page__security-note h3,
.privacy-page__closing-note h3 { margin-top: 0; }

.privacy-page__purpose-callout {
  max-width: 45rem;
  margin: var(--space-6) 0;
  padding: var(--space-3) 0 var(--space-3) var(--space-4);
  border-left: 3px solid var(--color-paprika-copper);
  color: var(--color-roasted-brown);
  font-weight: 600;
}

.privacy-page__conditional-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
}

.privacy-page__conditional-panel > * { margin: 0; }

.privacy-page__retention-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-6);
}

.privacy-page__retention-panel > * { margin: 0; }
.privacy-page__retention-panel strong { color: var(--color-espresso-ink); }
.privacy-page__retention-panel span { color: var(--color-roasted-brown); font-size: var(--text-utility); }

.privacy-page__definition-list { max-width: 45rem; margin: var(--space-6) 0; }

.privacy-page__rights-list {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: var(--space-8);
  margin-top: var(--space-8);
}

.privacy-page__right {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(2.5rem, 3.75rem) minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
}

.privacy-page__right > span {
  min-width: 0;
  color: rgba(212, 122, 79, 0.55);
  font-family: var(--font-heading);
  font-size: 2.75rem;
  font-weight: 600;
  line-height: 0.9;
}

.privacy-page__right > div { min-width: 0; max-width: 42.5rem; }
.privacy-page__right > div > h3 { margin-top: 0; }
.privacy-page__right-meta { margin-bottom: var(--space-2); color: var(--color-paprika-ember); font-size: var(--text-meta); font-weight: 700; letter-spacing: 0.11em; text-transform: uppercase; }

.privacy-page__request-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
}

.privacy-page__request-panel > * { margin: 0; }
.privacy-page__request-panel h3 { margin-top: 0; }
.privacy-page__request-panel a { align-self: flex-start; min-height: 2.75rem; display: inline-flex; align-items: center; color: var(--color-paprika-ember); font-size: var(--text-utility); font-weight: 650; }

.privacy-page__authority-placeholder {
  max-width: 43.75rem;
  margin: var(--space-6) 0;
  padding: var(--space-3) var(--space-4);
  border-left: 3px solid var(--color-paprika-copper);
  background: rgba(255, 249, 243, 0.48);
  color: var(--color-roasted-brown);
}

.privacy-page__update-list { max-width: 43.75rem; margin: var(--space-6) 0; }

.privacy-page__closing-note { max-width: 46.25rem; }
.privacy-page__closing-note a { display: inline-flex; min-height: 2.75rem; align-items: center; align-self: flex-start; color: var(--color-cream-highlight); font-size: var(--text-utility); font-weight: 650; }

@media (max-width: 61.25rem) {
  .privacy-page__intro { padding-top: var(--space-20); }
  .privacy-page__intro-grid { grid-template-columns: minmax(0, 1fr); }
  .privacy-page__intro-space { display: none; }
  .privacy-page__overview-grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .privacy-page__overview-help { max-width: 35rem; }
  .privacy-page__toc { max-width: none; }
  .privacy-page__document-grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .privacy-page__side-toc { display: none; }
  .privacy-page__chapters { max-width: 47.5rem; }
}

@media (max-width: 45rem) {
  .privacy-page__occasion-labels { grid-template-columns: minmax(0, 1fr); }
  .privacy-page__occasion-labels span { width: 100%; }
}

@media (max-width: 40rem) {
  .privacy-page__intro { padding: var(--space-16) 0 var(--space-12); }
  .privacy-page__lead { font-size: 1.125rem; line-height: 1.556; }
  .privacy-page__offline-note { padding: var(--space-6) var(--space-6); }
  .privacy-page__overview { padding-top: var(--space-12); }
  .privacy-page__overview-grid { gap: var(--space-6); }
  .privacy-page__toc { padding: var(--space-6); }
  .privacy-page__document { padding-top: var(--space-12); }
  .privacy-page__chapters { gap: var(--space-16); }
  .privacy-page__chapter > h3 { margin-top: var(--space-8); }
  .privacy-page__data-panel,
  .privacy-page__conditional-panel,
  .privacy-page__retention-panel,
  .privacy-page__request-panel,
  .privacy-page__context-note,
  .privacy-page__security-note,
  .privacy-page__closing-note { padding: var(--space-6); }
  .privacy-page__data-panel dl > div,
  .privacy-page__definition-list > div,
  .privacy-page__update-list > div { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
  .privacy-page__right { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
  .privacy-page__right > span { font-size: 2rem; }
  .privacy-page__right > div { max-width: none; }
  .privacy-page__rights-list { gap: var(--space-8); }
}

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

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.private-groups-page {
  overflow-wrap: anywhere;
}

.private-groups-page .eyebrow {
  margin-bottom: var(--space-3);
}

.private-hero {
  padding: var(--space-8) 0 var(--space-16);
}

.private-hero__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  position: relative;
}

.private-hero__media {
  grid-column: 1 / -1;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  min-height: 32.5rem;
  margin: 0;
}

.private-hero__media img {
  object-position: center center;
}

.private-hero__panel {
  grid-column: 8 / 13;
  grid-row: 1;
  align-self: end;
  width: 100%;
  max-width: 32.5rem;
  min-width: 0;
  margin: 0 0 var(--space-6) auto;
  padding: var(--space-8);
}

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

.private-hero__panel h1 {
  font-size: clamp(2.75rem, 5.1vw, 4rem);
}

.private-hero__lead {
  max-width: 28.75rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.private-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
  min-width: 0;
  margin-top: var(--space-6);
}

.private-hero__actions > * {
  min-width: 0;
}

.private-hero__planning {
  margin-top: var(--space-6);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-paprika-copper);
}

.private-hero__planning p {
  margin: 0;
  max-width: 28.75rem;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.private-occasions__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-12) var(--space-6);
}

.private-occasions__intro {
  grid-column: 1 / span 5;
  width: 100%;
  min-width: 0;
  max-width: 36.875rem;
}

.private-occasions__intro p:not(.eyebrow) {
  max-width: 36.875rem;
}

.private-occasions__list {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
  min-width: 0;
}

.occasion-block {
  width: 100%;
  min-width: 0;
  padding-top: var(--space-4);
  border-top: 1px solid rgba(212, 122, 79, 0.62);
}

.occasion-block--lounge {
  margin-top: var(--space-8);
}

.occasion-block__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.occasion-block__number {
  min-width: 0;
  color: var(--color-paprika-ember);
  font-family: var(--font-heading);
  font-size: 2.25rem;
  line-height: 1;
}

.occasion-block__icon {
  display: inline-grid;
  width: 2.25rem;
  height: 2.25rem;
  flex: 0 0 2.25rem;
  place-items: center;
  border: 1px solid rgba(212, 122, 79, 0.55);
  border-radius: var(--radius-sm);
  color: var(--color-paprika-copper);
  font-size: 1.25rem;
}

.occasion-block p {
  max-width: 21rem;
}

.private-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  width: fit-content;
  min-width: 0;
  color: var(--color-paprika-ember);
  font-size: var(--text-utility);
  font-weight: 650;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25em;
  transition: color var(--transition-ui), text-decoration-color var(--transition-ui), text-decoration-thickness var(--transition-ui);
}

.private-text-link:hover {
  color: var(--color-paprika-copper);
  text-decoration-thickness: 2px;
}

.private-process {
  background: rgba(255, 249, 243, 0.42);
}

.private-process__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-12) var(--space-6);
}

.private-process__intro {
  grid-column: 1 / span 4;
  width: 100%;
  min-width: 0;
  max-width: 24.375rem;
}

.private-process__intro p:not(.eyebrow) {
  max-width: 26.25rem;
}

.private-process__steps {
  grid-column: 5 / -1;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
}

.process-step {
  display: flex;
  align-items: flex-start;
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
  padding: var(--space-6) var(--space-8);
  transition: background-color var(--transition-ui);
}

.process-step:hover {
  background: #fffdf8;
}

.process-step__number {
  width: 5.5rem;
  min-width: 5.5rem;
  color: var(--color-paprika-ember);
  font-family: var(--font-heading);
  font-size: 2.5rem;
  line-height: 1;
}

.process-step__copy {
  width: calc(100% - 7rem);
  min-width: 0;
  max-width: 38.75rem;
}

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

.private-table__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  gap: var(--space-6);
}

.private-table__panel {
  grid-column: 1 / span 5;
  z-index: 1;
  width: 100%;
  min-width: 0;
  max-width: 31.875rem;
  margin-right: calc(var(--space-6) * -1);
  padding: var(--space-8);
}

.private-table__panel h2 {
  font-size: clamp(2.25rem, 3.5vw, 3.25rem);
}

.private-table__panel p {
  max-width: 28.125rem;
}

.private-table__keywords {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  min-width: 0;
  margin: var(--space-6) 0;
}

.private-table__keywords span {
  min-width: 0;
  padding-right: var(--space-3);
  border-right: 1px solid rgba(232, 182, 106, 0.55);
  color: var(--color-cream-highlight);
  font-size: var(--text-utility);
  font-weight: 600;
}

.private-table__keywords span:last-child {
  padding-right: 0;
  border-right: 0;
}

.private-text-link--light {
  color: var(--color-saffron-light);
}

.private-text-link--light:hover {
  color: var(--color-cream-highlight);
}

.private-table__media {
  grid-column: 6 / -1;
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 5;
  margin: 0;
}

.private-table__media img {
  object-position: center center;
}

.private-lounge__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  gap: var(--space-6);
}

.private-lounge__copy {
  grid-column: 1 / span 6;
  width: 100%;
  min-width: 0;
}

.private-lounge__copy h2,
.private-lounge__copy p {
  max-width: 35rem;
}

.private-lounge__lead {
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.private-lounge__visual {
  grid-column: 7 / -1;
  position: relative;
  width: 100%;
  min-width: 0;
  padding-bottom: var(--space-8);
}

.private-lounge__media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 3 / 2;
  margin: 0;
}

.private-lounge__media img {
  object-position: center center;
}

.private-lounge__caption {
  position: absolute;
  bottom: 0;
  left: calc(var(--space-6) * -1);
  width: min(72%, 24.375rem);
  min-width: 0;
  padding: var(--space-6);
}

.private-lounge__caption h3 {
  font-size: 1.75rem;
}

.private-lounge__caption p {
  max-width: 22.5rem;
}

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

.private-theme {
  background: rgba(255, 249, 243, 0.5);
}

.private-theme__container {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  min-width: 0;
}

.private-theme__intro {
  width: 100%;
  min-width: 0;
  max-width: 42.5rem;
  margin-inline: auto;
  text-align: center;
}

.private-theme__intro p:not(.eyebrow) {
  max-width: 38.75rem;
  margin-inline: auto;
}

.private-theme__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: var(--space-6);
  min-width: 0;
}

.theme-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  min-height: 21rem;
  padding: var(--space-8);
  transition: background-color var(--transition-ui);
}

.theme-card:hover {
  background: #fffdf8;
}

.theme-card--raised {
  margin-top: calc(var(--space-2) * -2.5);
  margin-bottom: calc(var(--space-2) * 2.5);
}

.theme-card__detail {
  color: var(--color-paprika-copper);
  font-family: var(--font-heading);
  font-size: 2rem;
  line-height: 1;
}

.theme-card h3 {
  margin-bottom: 0;
}

.theme-card p {
  max-width: 18.75rem;
  margin-bottom: 0;
}

.theme-card .private-text-link {
  margin-top: auto;
}

.private-venue {
  background: var(--color-smoked-plum);
}

.private-venue__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: center;
  gap: var(--space-6);
}

.private-venue__panel {
  grid-column: 1 / span 8;
  width: 100%;
  min-width: 0;
  max-width: 49.375rem;
  padding: var(--space-8);
}

.private-venue__panel > p:not(.eyebrow) {
  max-width: 40rem;
}

.private-venue__note {
  max-width: 35rem;
  margin-top: var(--space-6);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(255, 249, 243, 0.3);
}

.private-venue__note h3 {
  margin-bottom: var(--space-2);
  color: var(--color-cream-highlight);
  font-size: 1.35rem;
}

.private-venue__note p {
  margin-bottom: 0;
  color: var(--color-dark-on-dark-muted);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.private-venue__motif {
  grid-column: 9 / -1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding-left: var(--space-8);
}

.private-venue__motif span {
  display: block;
  height: 1px;
  background: var(--color-paprika-copper);
}

.private-venue__motif span:nth-child(1) { width: 75%; }
.private-venue__motif span:nth-child(2) { width: 48%; }
.private-venue__motif span:nth-child(3) { width: 63%; }

.private-contact__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.private-contact__panel {
  grid-column: 3 / span 8;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
  max-width: 51.25rem;
  padding: var(--space-12) var(--space-8);
  text-align: center;
}

.private-contact__panel > * {
  margin: 0;
}

.private-contact__panel h2,
.private-contact__panel > p {
  width: 100%;
  min-width: 0;
}

.private-contact__panel h2 {
  max-width: 38.75rem;
}

.private-contact__panel > p:not(.eyebrow) {
  max-width: 38.75rem;
}

.private-contact__button {
  min-width: 11.25rem;
}

.private-contact__support {
  max-width: 31.25rem !important;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.private-closing {
  padding: var(--space-16) 0 var(--space-28);
}

.private-closing__container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.private-closing__copy {
  grid-column: 3 / span 7;
  width: 100%;
  min-width: 0;
  max-width: 43.75rem;
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-paprika-copper);
}

.private-closing__title {
  font-size: 1.8rem;
}

.private-closing__copy p {
  max-width: 40.625rem;
  margin-bottom: 0;
}

@media (max-width: 65rem) {
  .private-hero__panel {
    grid-column: 7 / 13;
  }

  .private-table__panel {
    padding: var(--space-6);
  }
}

@media (max-width: 60rem) {
  .private-occasions__list {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .occasion-block--dinner,
  .occasion-block--lounge {
    grid-column: span 3;
  }

  .occasion-block--theme {
    grid-column: 1 / -1;
    max-width: calc(50% - var(--space-3));
  }

  .occasion-block--lounge {
    margin-top: var(--space-6);
  }

  .private-lounge__grid {
    gap: var(--space-12) var(--space-6);
  }

  .private-lounge__copy,
  .private-lounge__visual {
    grid-column: 1 / -1;
  }

  .private-lounge__copy {
    max-width: 35rem;
  }

  .private-lounge__visual {
    padding-bottom: 0;
  }

  .private-lounge__caption {
    position: static;
    width: 100%;
    max-width: 24.375rem;
    margin: calc(var(--space-6) * -1) 0 0 var(--space-6);
  }

  .private-theme__cards {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .theme-card {
    grid-column: span 3;
  }

  .theme-card--raised {
    margin-top: 0;
    margin-bottom: 0;
  }

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

@media (max-width: 60rem) {
  .private-hero {
    padding-top: var(--space-6);
  }

  .private-hero__container {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
  }

  .private-hero__media {
    grid-column: 1 / -1;
    min-height: 0;
  }

  .private-hero__panel {
    grid-column: 1 / -1;
    grid-row: 2;
    max-width: none;
    margin: calc(var(--space-6) * -1) var(--space-4) 0;
    padding: var(--space-8);
  }

  .private-occasions__container,
  .private-process__grid,
  .private-table__grid,
  .private-lounge__grid,
  .private-venue__grid,
  .private-contact__container,
  .private-closing__container {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .private-occasions__intro,
  .private-process__intro,
  .private-process__steps,
  .private-table__panel,
  .private-table__media,
  .private-lounge__copy,
  .private-lounge__visual,
  .private-venue__panel,
  .private-contact__panel,
  .private-closing__copy {
    grid-column: 1 / -1;
  }

  .private-process__intro {
    max-width: 26.25rem;
  }

  .private-table__grid {
    gap: 0;
  }

  .private-table__media {
    order: 1;
  }

  .private-table__panel {
    order: 2;
    max-width: none;
    margin: calc(var(--space-6) * -1) var(--space-4) 0;
  }

  .private-venue__motif {
    display: none;
  }

  .private-contact__panel {
    max-width: none;
  }

  .private-closing__copy {
    max-width: 43.75rem;
  }
}

@media (max-width: 40rem) {
  .private-hero {
    padding-bottom: var(--space-12);
  }

  .private-hero__panel {
    margin-inline: 0;
    padding: var(--space-6);
  }

  .private-hero__panel h1 {
    font-size: 2.375rem;
    line-height: 1.05;
  }

  .private-hero__actions {
    align-items: stretch;
  }

  .private-hero__actions .button {
    width: 100%;
  }

  .private-hero__actions .button-link {
    width: fit-content;
  }

  .private-occasions__container,
  .private-process__grid,
  .private-lounge__grid {
    gap: var(--space-8);
  }

  .private-occasions__list,
  .private-theme__cards {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .occasion-block--dinner,
  .occasion-block--lounge,
  .occasion-block--theme,
  .theme-card,
  .theme-card:last-child {
    grid-column: 1;
    max-width: none;
  }

  .occasion-block--lounge {
    margin-top: 0;
  }

  .occasion-block p,
  .theme-card p {
    max-width: none;
  }

  .process-step {
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-6);
  }

  .process-step__number {
    width: auto;
    min-width: 0;
  }

  .process-step__copy {
    width: 100%;
    max-width: none;
  }

  .private-table__panel {
    margin-inline: 0;
    padding: var(--space-6);
  }

  .private-table__keywords {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-2);
  }

  .private-table__keywords span {
    width: 100%;
    padding: 0 0 var(--space-2);
    border-right: 0;
    border-bottom: 1px solid rgba(232, 182, 106, 0.55);
  }

  .private-table__keywords span:last-child {
    border-bottom: 0;
  }

  .private-lounge__caption {
    width: 100%;
    max-width: none;
    margin: 0;
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  }

  .private-theme__container {
    gap: var(--space-8);
  }

  .theme-card {
    min-height: 0;
    padding: var(--space-6);
  }

  .private-venue__panel {
    padding: var(--space-6);
  }

  .private-contact__panel {
    padding: var(--space-8) var(--space-6);
  }

  .private-contact__button {
    width: 100%;
    min-height: 3rem;
  }

  .private-closing {
    padding: var(--space-12) 0 var(--space-12);
  }

  .private-closing__copy {
    grid-column: 1 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .process-step:hover,
  .theme-card:hover {
    background: var(--color-cream-highlight);
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.lounge-page {
  overflow: clip;
}

.lounge-page .section {
  position: relative;
}

.lounge-hero {
  padding-block: var(--space-12) var(--section-space);
}

.lounge-hero__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: center;
  min-width: 0;
}

.lounge-hero__media {
  grid-column: 5 / 13;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  height: clamp(32.5rem, 58vw, 45rem);
  margin: 0;
}

.lounge-hero__media img {
  object-position: 78% center;
}

.lounge-hero__panel {
  grid-column: 1 / 8;
  grid-row: 1;
  z-index: 1;
  width: 100%;
  min-width: 0;
  padding: var(--space-12);
}

.lounge-hero__panel > :last-child,
.lounge-meaning__intro > :last-child,
.lounge-table__arrival > :last-child,
.lounge-themes__intro > :last-child,
.lounge-private__panel > :last-child,
.lounge-booking__intro > :last-child,
.lounge-closing__copy > :last-child {
  margin-bottom: 0;
}

.lounge-hero__lead {
  max-width: 37.5rem;
}

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

.lounge-hero__microcopy {
  max-width: 22.5rem;
  margin: 0;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.lounge-meaning__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: start;
  min-width: 0;
}

.lounge-meaning__intro {
  grid-column: 1 / 8;
  width: 100%;
  min-width: 0;
  padding-top: var(--space-4);
}

.lounge-meaning__intro::before {
  display: block;
  width: 4rem;
  height: 2px;
  margin-bottom: var(--space-4);
  background: var(--color-paprika-ember);
  content: "";
}

.lounge-meaning__copy {
  max-width: 42.5rem;
}

.lounge-meaning__pace {
  grid-column: 8 / 13;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-8);
}

.lounge-meaning__pace > * {
  margin: 0;
}

.lounge-meaning__icon,
.lounge-table__icon {
  width: 2.5rem;
  height: 2.5rem;
  display: grid;
  place-items: center;
  border-radius: var(--radius-sm);
  background: rgba(212, 122, 79, 0.16);
  color: var(--color-paprika-copper);
  font-family: var(--font-heading);
  font-size: 1.75rem;
  line-height: 1;
}

.lounge-meaning__note {
  grid-column: 6 / 13;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
  margin-top: var(--space-2);
  padding: var(--space-6) var(--space-8);
  border-left: 4px solid var(--color-paprika-copper);
  border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
  background: rgba(232, 182, 106, 0.22);
}

.lounge-meaning__note > * {
  margin: 0;
}

.lounge-meaning__note h3 {
  font-size: var(--text-card-heading);
}

.lounge-table__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: start;
  min-width: 0;
}

.lounge-table__media {
  grid-column: 1 / 6;
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 5;
  margin: 0;
}

.lounge-table__media img {
  object-position: center top;
}

.lounge-table__content {
  grid-column: 6 / 13;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
}

.lounge-table__arrival {
  width: min(100%, 35rem);
  min-width: 0;
}

.lounge-table__arrival-copy {
  max-width: 35rem;
}

.lounge-table__social {
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  width: min(100%, 70%);
  min-width: 0;
  padding: var(--space-8);
}

.lounge-table__social > * {
  margin: 0;
}

.lounge-table__evening {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-8);
}

.lounge-table__evening > * {
  margin: 0;
}

.lounge-table__evening p {
  max-width: 28.75rem;
}

.lounge-table__link {
  min-height: 2.75rem;
  align-items: center;
}

.lounge-themes__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: start;
  min-width: 0;
}

.lounge-themes__intro {
  grid-column: 1 / 7;
  width: 100%;
  min-width: 0;
}

.lounge-themes__copy {
  max-width: 38.75rem;
}

.lounge-themes__cta {
  grid-column: 7 / 13;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  margin-top: var(--space-8);
  padding: var(--space-8);
}

.lounge-themes__cta > * {
  margin: 0;
}

.lounge-themes__steps {
  grid-column: 1 / 13;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
  margin-top: var(--space-4);
}

.lounge-themes__steps-title {
  grid-column: 1 / 13;
  width: 100%;
  min-width: 0;
  margin-bottom: 0;
}

.lounge-themes__step {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
  padding: var(--space-8);
}

.lounge-themes__step > * {
  margin: 0;
}

.lounge-themes__step span,
.lounge-reasons__value span {
  color: var(--color-paprika-copper);
  font-size: var(--text-utility);
  font-weight: 700;
  letter-spacing: 0.11em;
}

.lounge-themes__step--one {
  grid-column: 1 / 4;
  margin-top: var(--space-6);
}

.lounge-themes__step--two {
  grid-column: 4 / 9;
}

.lounge-themes__step--three {
  grid-column: 9 / 13;
  margin-top: var(--space-12);
}

.lounge-private__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: center;
  min-width: 0;
}

.lounge-private__content {
  grid-column: 1 / 7;
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  width: 100%;
  min-width: 0;
}

.lounge-private__panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-8);
}

.lounge-private__panel > * {
  margin: 0;
}

.lounge-private__copy {
  width: 100%;
  max-width: 35rem;
}

.lounge-private__microcopy {
  max-width: 32.5rem;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.lounge-private__rows {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
}

.lounge-private__row {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
}

.lounge-private__row > span {
  flex: 0 0 auto;
  color: var(--color-paprika-copper);
  font-size: 1.5rem;
  line-height: 1;
}

.lounge-private__row > div {
  min-width: 0;
}

.lounge-private__row h3 {
  margin-bottom: var(--space-2);
  font-size: var(--text-lead);
}

.lounge-private__row p {
  margin-bottom: 0;
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.lounge-private__media {
  grid-column: 7 / 13;
  width: 100%;
  min-width: 0;
  aspect-ratio: 3 / 2;
  margin: 0;
}

.lounge-private__media img {
  object-position: center;
}

.lounge-reasons {
  background: var(--color-smoked-plum);
}

.lounge-reasons__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-8) var(--space-6);
  min-width: 0;
}

.lounge-reasons__intro {
  grid-column: 1 / 8;
  width: 100%;
  min-width: 0;
}

.lounge-reasons__intro h2 {
  color: var(--color-cream-highlight);
}

.lounge-reasons__intro p:last-child {
  max-width: 42.5rem;
  margin-bottom: 0;
  color: var(--color-dark-on-dark-muted);
}

.lounge-reasons .eyebrow {
  color: var(--color-saffron-light);
}

.lounge-reasons__values {
  grid-column: 1 / 13;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: center;
  width: 100%;
  min-width: 0;
}

.lounge-reasons__value {
  width: 100%;
  min-width: 0;
}

.lounge-reasons__value--space {
  grid-column: 1 / 4;
}

.lounge-reasons__value--table {
  grid-column: 4 / 10;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.lounge-reasons__value--evening {
  grid-column: 10 / 13;
}

.lounge-reasons__value h3 {
  margin-top: var(--space-2);
  color: var(--color-cream-highlight);
}

.lounge-reasons__value p {
  margin-bottom: 0;
  color: var(--color-dark-on-dark-muted);
}

.lounge-reasons__value--table h3 {
  color: var(--color-espresso-ink);
}

.lounge-reasons__value--table p {
  max-width: 28.75rem;
  color: var(--color-roasted-brown);
}

.lounge-booking__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-6);
  align-items: start;
  min-width: 0;
}

.lounge-booking__intro {
  grid-column: 1 / 8;
  width: 100%;
  min-width: 0;
}

.lounge-booking__copy {
  max-width: 42.5rem;
}

.lounge-booking__contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  width: min(100%, 34rem);
  min-width: 0;
  margin-top: var(--space-8);
  padding-top: var(--space-6);
  border-top: 1px solid rgba(102, 83, 74, 0.22);
}

.lounge-booking__contact > * {
  margin: 0;
}

.lounge-booking__contact h3 {
  font-size: var(--text-card-heading);
}

.lounge-booking__contact .button-link {
  min-height: 2.75rem;
  align-items: center;
}

.lounge-booking__panel {
  grid-column: 8 / 13;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-8);
}

.lounge-booking__panel > * {
  margin: 0;
}

.lounge-booking__panel p {
  max-width: 22.5rem;
}

.lounge-notice {
  padding-top: var(--space-12);
}

.lounge-notice__panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  width: min(100%, 47.5rem);
  min-width: 0;
  margin-inline: auto;
  padding: var(--space-8);
}

.lounge-notice__panel > * {
  margin: 0;
}

.lounge-notice__panel h2 {
  font-size: var(--text-card-heading);
}

.lounge-notice__panel hr {
  width: 100%;
  margin: 0;
}

.lounge-closing {
  background: linear-gradient(115deg, rgba(232, 182, 106, 0.42), var(--color-porcelain) 62%);
}

.lounge-closing__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-8);
  width: 100%;
  min-width: 0;
  text-align: center;
}

.lounge-closing__copy {
  width: min(100%, 50.625rem);
  min-width: 0;
  margin-inline: auto;
}

.lounge-closing__copy p:last-child {
  width: min(100%, 35rem);
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  text-align: left;
}

.lounge-closing__button {
  min-width: 11rem;
}

@media (max-width: 64rem) {
  .lounge-hero__layout {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lounge-hero__media {
    grid-column: 1 / 7;
    grid-row: 1;
    height: clamp(24rem, 56vw, 34rem);
  }

  .lounge-hero__panel {
    grid-column: 1 / 7;
    grid-row: 2;
    margin-top: calc(var(--space-8) * -1);
    padding: var(--space-8);
  }

  .lounge-meaning__grid,
  .lounge-table__grid,
  .lounge-themes__grid,
  .lounge-private__grid,
  .lounge-reasons__grid,
  .lounge-booking__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lounge-meaning__intro {
    grid-column: 1 / 7;
  }

  .lounge-meaning__pace {
    grid-column: 1 / 4;
  }

  .lounge-meaning__note {
    grid-column: 4 / 7;
    margin-top: 0;
  }

  .lounge-table__media {
    grid-column: 1 / 4;
  }

  .lounge-table__content {
    grid-column: 4 / 7;
  }

  .lounge-table__social {
    width: 100%;
  }

  .lounge-themes__intro {
    grid-column: 1 / 7;
  }

  .lounge-themes__cta {
    grid-column: 1 / 7;
    margin-top: 0;
  }

  .lounge-themes__steps {
    grid-column: 1 / 7;
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lounge-themes__steps-title {
    grid-column: 1 / 7;
  }

  .lounge-themes__step--one {
    grid-column: 1 / 4;
    margin-top: 0;
  }

  .lounge-themes__step--two {
    grid-column: 4 / 7;
  }

  .lounge-themes__step--three {
    grid-column: 1 / 7;
    margin-top: 0;
  }

  .lounge-private__content {
    grid-column: 1 / 7;
  }

  .lounge-private__media {
    grid-column: 1 / 7;
  }

  .lounge-reasons__intro,
  .lounge-reasons__values {
    grid-column: 1 / 7;
  }

  .lounge-reasons__values {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lounge-reasons__value--space {
    grid-column: 1 / 4;
  }

  .lounge-reasons__value--table {
    grid-column: 1 / 7;
    grid-row: 2;
  }

  .lounge-reasons__value--evening {
    grid-column: 4 / 7;
  }

  .lounge-booking__intro {
    grid-column: 1 / 7;
  }

  .lounge-booking__panel {
    grid-column: 1 / 7;
    width: min(100%, 34rem);
  }
}

@media (max-width: 56.25rem) {
  .lounge-hero {
    padding-top: var(--space-8);
  }

  .lounge-hero__panel {
    margin-top: 0;
  }

  .lounge-meaning__pace,
  .lounge-meaning__note {
    grid-column: 1 / 7;
  }

  .lounge-table__media {
    grid-column: 1 / 7;
    width: min(100%, 27rem);
  }

  .lounge-table__content {
    grid-column: 1 / 7;
  }

  .lounge-private__grid {
    align-items: start;
  }
}

@media (max-width: 40rem) {
  .lounge-hero__layout,
  .lounge-meaning__grid,
  .lounge-table__grid,
  .lounge-themes__grid,
  .lounge-private__grid,
  .lounge-reasons__grid,
  .lounge-booking__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .lounge-hero__media,
  .lounge-hero__panel,
  .lounge-meaning__intro,
  .lounge-meaning__pace,
  .lounge-meaning__note,
  .lounge-table__media,
  .lounge-table__content,
  .lounge-themes__intro,
  .lounge-themes__cta,
  .lounge-private__content,
  .lounge-private__media,
  .lounge-reasons__intro,
  .lounge-reasons__values,
  .lounge-booking__intro,
  .lounge-booking__panel {
    grid-column: 1;
    grid-row: auto;
  }

  .lounge-hero__media {
    height: max(17.5rem, 62vw);
  }

  .lounge-hero__media img {
    object-position: center top;
  }

  .lounge-hero__panel,
  .lounge-meaning__pace,
  .lounge-table__social,
  .lounge-table__evening,
  .lounge-themes__cta,
  .lounge-private__panel,
  .lounge-booking__panel,
  .lounge-notice__panel {
    padding: var(--space-6);
  }

  .lounge-hero__action,
  .lounge-hero__action .button,
  .lounge-themes__cta .button,
  .lounge-private__panel .button,
  .lounge-booking__panel .button,
  .lounge-closing__button {
    width: 100%;
  }

  .lounge-meaning__note {
    padding: var(--space-6);
  }

  .lounge-table__media {
    width: 100%;
  }

  .lounge-table__social {
    align-self: stretch;
    width: 100%;
  }

  .lounge-themes__steps {
    grid-column: 1;
    grid-template-columns: minmax(0, 1fr);
  }

  .lounge-themes__steps-title,
  .lounge-themes__step--one,
  .lounge-themes__step--two,
  .lounge-themes__step--three {
    grid-column: 1;
    grid-row: auto;
    margin-top: 0;
  }

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

  .lounge-reasons__values {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }

  .lounge-reasons__value--space,
  .lounge-reasons__value--table,
  .lounge-reasons__value--evening {
    grid-column: 1;
    grid-row: auto;
  }

  .lounge-reasons__value--table {
    padding: var(--space-6);
  }

  .lounge-booking__panel {
    width: 100%;
  }

  .lounge-notice {
    padding-top: var(--space-8);
  }

  .lounge-closing__inner {
    align-items: stretch;
    gap: var(--space-6);
  }

  .lounge-closing__copy {
    width: 100%;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.gyik-page {
  background: var(--color-porcelain);
}

.gyik-page .gyik-hero__container {
  position: relative;
  min-width: 0;
}

.gyik-page .gyik-hero__media {
  width: 100%;
  height: min(45.16vw, 35rem);
  min-height: 31rem;
  margin: 0;
  border-radius: var(--radius-xl);
}

.gyik-page .gyik-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(56, 40, 36, 0.72), rgba(56, 40, 36, 0.18) 62%, rgba(56, 40, 36, 0.04));
  content: "";
  pointer-events: none;
}

.gyik-page .gyik-hero__media img {
  object-position: right center;
}

.gyik-page .gyik-hero__panel {
  position: absolute;
  z-index: 1;
  bottom: var(--space-8);
  left: var(--space-8);
  display: flex;
  width: min(41.666%, 47.5rem);
  min-width: 26.875rem;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.gyik-page .gyik-hero__panel > * {
  margin: 0;
}

.gyik-page .gyik-hero__panel h1 {
  color: var(--color-espresso-ink);
}

.gyik-page .gyik-hero__lead {
  max-width: 38.75rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.gyik-page .gyik-hero__actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.gyik-page .gyik-hero__microcopy {
  max-width: 31rem;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.gyik-page .gyik-basics__intro {
  width: 58.333%;
  max-width: 42.5rem;
  min-width: 0;
  margin-bottom: var(--space-12);
}

.gyik-page .gyik-basics__columns {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-6);
}

.gyik-page .gyik-accordion-stack {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.gyik-page .gyik-accordion {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.gyik-page .gyik-accordion h3 {
  margin: 0;
  font: inherit;
}

.gyik-page .gyik-accordion__trigger {
  display: grid;
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  grid-template-columns: minmax(0, 1fr) 1.75rem;
  align-items: center;
  gap: var(--space-3);
  border: 0;
  border-radius: 0;
  padding: var(--space-4) var(--space-6);
  background: transparent;
  box-shadow: none;
  color: var(--color-espresso-ink);
  font-size: var(--text-body);
  font-weight: 650;
  line-height: 1.35;
  text-align: left;
}

.gyik-page .gyik-accordion__trigger:hover,
.gyik-page .gyik-accordion__trigger:active {
  background: transparent;
  color: var(--color-espresso-ink);
  box-shadow: none;
  transform: none;
}

.gyik-page .gyik-accordion.is-open .gyik-accordion__trigger {
  box-shadow: inset 0 -2px 0 rgba(212, 122, 79, 0.45);
}

.gyik-page .gyik-accordion__symbol {
  display: grid;
  width: 1.75rem;
  min-width: 1.75rem;
  height: 1.75rem;
  place-items: center;
  border: 1px solid rgba(185, 71, 47, 0.45);
  border-radius: var(--radius-sm);
  color: var(--color-paprika-ember);
  font-size: 1.35rem;
  font-weight: 450;
  line-height: 1;
}

.gyik-page .gyik-accordion__state {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.gyik-page .gyik-accordion__panel {
  height: auto;
  overflow: hidden;
  transition: height 180ms ease-out;
}

.gyik-page .gyik-accordion__content {
  padding: 0 var(--space-6) var(--space-6);
}

.gyik-page .gyik-accordion__content p {
  max-width: 45rem;
  margin: 0;
  color: var(--color-espresso-ink);
  font-size: var(--text-body);
  line-height: var(--leading-body);
}

.gyik-page .gyik-lounge__layout {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-12);
  align-items: start;
}

.gyik-page .gyik-lounge__editorial,
.gyik-page .gyik-lounge__accordions {
  width: 100%;
  min-width: 0;
}

.gyik-page .gyik-lounge__intro {
  max-width: 33.75rem;
  margin-bottom: var(--space-8);
}

.gyik-page .gyik-lounge__figure,
.gyik-page .gyik-themed__figure {
  width: 100%;
  margin: 0;
}

.gyik-page .gyik-lounge__figure {
  aspect-ratio: 4 / 3;
}

.gyik-page .gyik-lounge__figure img {
  object-position: center;
}

.gyik-page .gyik-lounge__figure figcaption,
.gyik-page .gyik-themed__figure figcaption {
  padding-inline: var(--space-2);
}

.gyik-page .gyik-themed__intro {
  width: 66.666%;
  max-width: 47.5rem;
  min-width: 0;
  margin: 0 auto var(--space-12);
  text-align: left;
}

.gyik-page .gyik-themed__intro h2 {
  text-align: center;
}

.gyik-page .gyik-themed__layout {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-12);
  align-items: start;
}

.gyik-page .gyik-themed__figure,
.gyik-page .gyik-themed__accordions {
  width: 100%;
  min-width: 0;
}

.gyik-page .gyik-themed__figure {
  aspect-ratio: 3 / 2;
}

.gyik-page .gyik-themed__figure img {
  object-position: center center;
}

.gyik-page .gyik-private {
  padding-block: var(--section-space);
}

.gyik-page .gyik-private__panel {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 5fr) minmax(35rem, 7fr);
  gap: var(--space-12);
  padding: var(--space-12);
}

.gyik-page .gyik-private__intro,
.gyik-page .gyik-private__accordions {
  width: 100%;
  min-width: 0;
}

.gyik-page .gyik-private__intro {
  max-width: 31.25rem;
}

.gyik-page .gyik-private__link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-cream-highlight);
  font-size: var(--text-utility);
  font-weight: 650;
  text-decoration-color: var(--color-paprika-copper);
  text-decoration-thickness: 2px;
}

.gyik-page .gyik-private .gyik-accordion {
  background: var(--color-glass-white);
}

.gyik-page .gyik-private .gyik-accordion__content p {
  max-width: 43.75rem;
}

.gyik-page .gyik-practical__heading {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-6);
  margin-bottom: var(--space-12);
}

.gyik-page .gyik-practical__heading > div {
  width: 100%;
  min-width: 0;
}

.gyik-page .gyik-practical__heading > div:first-child {
  max-width: 43.75rem;
}

.gyik-page .gyik-practical__rule {
  align-self: end;
  min-height: 7rem;
  background: linear-gradient(90deg, transparent 0, transparent 28%, var(--color-paprika-copper) 28%, var(--color-paprika-copper) calc(28% + 2px), transparent calc(28% + 2px));
  opacity: 0.72;
}

.gyik-page .gyik-practical__accordions {
  width: 75%;
  min-width: 0;
  max-width: 52.5rem;
}

.gyik-page .gyik-contact__panel {
  display: grid;
  width: 83.333%;
  min-width: 0;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-8);
  margin-inline: auto;
  padding: var(--space-8);
  align-items: end;
}

.gyik-page .gyik-contact__copy,
.gyik-page .gyik-contact__actions {
  width: 100%;
  min-width: 0;
}

.gyik-page .gyik-contact__copy {
  max-width: 40.625rem;
}

.gyik-page .gyik-contact__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-3);
}

.gyik-page .gyik-contact__link {
  min-height: 2.75rem;
  align-items: center;
}

.gyik-page .gyik-note {
  padding-top: 0;
}

.gyik-page .gyik-note__content {
  width: 66.666%;
  min-width: 0;
  max-width: 47.5rem;
  border-top: 2px solid var(--color-paprika-ember);
  padding-top: var(--space-6);
}

.gyik-page .gyik-note__content h2 {
  font-size: var(--text-card-heading);
  line-height: 1.2;
}

.gyik-page .gyik-note__content p:last-child {
  max-width: 47.5rem;
}

@media (max-width: 65rem) {
  .gyik-page .gyik-hero__media {
    min-height: 27rem;
  }

  .gyik-page .gyik-hero__panel {
    width: min(54%, 42rem);
  }
}

@media (max-width: 63.75rem) {
  .gyik-page .gyik-lounge__layout,
  .gyik-page .gyik-themed__layout,
  .gyik-page .gyik-private__panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .gyik-page .gyik-lounge__layout,
  .gyik-page .gyik-themed__layout {
    gap: var(--space-8);
  }

  .gyik-page .gyik-private__panel {
    gap: var(--space-8);
  }

  .gyik-page .gyik-lounge__editorial,
  .gyik-page .gyik-themed__figure,
  .gyik-page .gyik-private__intro {
    max-width: none;
  }
}

@media (max-width: 60rem) {
  .gyik-page .gyik-basics__columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .gyik-page .gyik-basics__intro {
    width: 100%;
  }
}

@media (max-width: 56.25rem) {
  .gyik-page .gyik-hero__panel {
    position: static;
    width: 100%;
    min-width: 0;
    margin-top: var(--space-6);
    background: var(--color-cream-highlight);
  }

  .gyik-page .gyik-hero__media {
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  .gyik-page .gyik-hero__media::after {
    display: none;
  }

  .gyik-page .gyik-practical__heading {
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: var(--space-8);
  }

  .gyik-page .gyik-practical__rule {
    display: none;
  }

  .gyik-page .gyik-practical__accordions {
    width: 100%;
    max-width: none;
  }

  .gyik-page .gyik-contact__panel {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .gyik-page .gyik-contact__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 40rem) {
  .gyik-page .gyik-hero__panel,
  .gyik-page .gyik-private__panel,
  .gyik-page .gyik-contact__panel {
    padding: var(--space-6);
  }

  .gyik-page .gyik-hero__panel h1 {
    font-size: 2.375rem;
    line-height: 1.05;
  }

  .gyik-page .gyik-hero__lead {
    font-size: var(--text-body);
    line-height: var(--leading-body);
  }

  .gyik-page .gyik-hero__actions,
  .gyik-page .gyik-contact__actions {
    width: 100%;
  }

  .gyik-page .gyik-hero__actions .button,
  .gyik-page .gyik-contact__actions .button {
    width: 100%;
  }

  .gyik-page .gyik-basics__intro,
  .gyik-page .gyik-themed__intro {
    margin-bottom: var(--space-8);
  }

  .gyik-page .gyik-themed__intro {
    width: 100%;
  }

  .gyik-page .gyik-accordion__trigger {
    grid-template-columns: minmax(0, 1fr) 1.75rem;
    padding: var(--space-4);
  }

  .gyik-page .gyik-accordion__content {
    padding: 0 var(--space-4) var(--space-4);
  }

  .gyik-page .gyik-note__content {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gyik-page .gyik-accordion__panel {
    transition: none;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.etterem-page {
  overflow: hidden;
  background: var(--color-porcelain);
}

.etterem-page h1,
.etterem-page h2,
.etterem-page h3,
.etterem-page p {
  overflow-wrap: anywhere;
}

.etterem-hero {
  padding-top: 4rem;
  padding-bottom: var(--section-space);
}

.etterem-hero__wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.5rem;
  min-width: 0;
}

.etterem-hero__media {
  grid-column: 1 / -1;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  height: clamp(35rem, 52vw, 43rem);
  margin: 0;
}

.etterem-hero__media img {
  object-position: 34% center;
}

.etterem-hero__panel {
  grid-column: 1 / span 5;
  grid-row: 1;
  align-self: end;
  width: 100%;
  max-width: 35rem;
  min-width: 0;
  margin: 0 0 2rem 2rem;
  padding: 2rem;
}

.etterem-hero__content,
.etterem-detail__content,
.etterem-evening__content,
.etterem-cta__content,
.etterem-venue__content,
.etterem-path-card__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.etterem-hero__content { gap: 1.5rem; }
.etterem-hero__content > * { margin: 0; }
.etterem-hero__lead { max-width: 34rem; font-size: var(--text-lead); line-height: var(--leading-lead); }
.etterem-hero__action { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; min-width: 0; }
.etterem-hero__note { max-width: 31rem; color: var(--color-roasted-brown); font-size: var(--text-utility); line-height: var(--leading-utility); }

.etterem-rhythm__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: start;
}

.etterem-rhythm__intro { grid-column: 1 / span 5; width: 100%; min-width: 0; }
.etterem-rhythm__intro p:not(.eyebrow) { max-width: 52ch; }
.etterem-rhythm__cards {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  width: 100%;
  min-width: 0;
  margin-top: 1.5rem;
  align-items: start;
}

.etterem-rhythm-card,
.etterem-format-card,
.etterem-path-card,
.etterem-faq-card,
.etterem-faq-note {
  width: 100%;
  min-width: 0;
  padding: 2rem;
}

.etterem-rhythm-card { display: flex; flex-direction: column; gap: 1rem; }
.etterem-rhythm-card > * { margin: 0; }
.etterem-rhythm-card p { max-width: 42ch; }
.etterem-rhythm-card--offset { margin-top: 2rem; }
.etterem-rhythm-card--dark { padding-top: 2.25rem; }

.etterem-icon {
  display: inline-flex;
  width: 2.75rem;
  min-width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(185, 71, 47, .38);
  border-radius: .5rem;
  background: rgba(212, 122, 79, .10);
  color: var(--color-paprika-ember);
  font-size: 1.35rem;
  line-height: 1;
}

.etterem-icon--copper { color: var(--color-paprika-copper); border-color: rgba(212, 122, 79, .5); }
.etterem-icon--light { border-color: rgba(255,249,243,.3); background: rgba(255,249,243,.1); color: var(--color-saffron-light); }

.etterem-detail__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: center;
}

.etterem-detail__media { grid-column: 1 / span 5; width: 100%; min-width: 0; aspect-ratio: 4 / 5; margin: 0; }
.etterem-detail__media img { object-position: center center; }
.etterem-detail__panel { grid-column: 8 / span 5; width: 100%; max-width: 32.5rem; min-width: 0; padding: 2rem; }
.etterem-detail__content { gap: 1.25rem; }
.etterem-detail__content > * { margin: 0; }
.etterem-detail__content p { max-width: 48ch; }
.etterem-detail__link { min-height: 2.75rem; align-self: flex-start; }

.etterem-formats__intro { max-width: 42.5rem; margin-inline: auto; text-align: center; }
.etterem-formats__intro p:not(.eyebrow) { max-width: 52ch; margin-inline: auto; }
.etterem-formats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: start;
  margin-top: 3rem;
}

.etterem-format-card { display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; }
.etterem-format-card > * { margin: 0; }
.etterem-format-card p { max-width: 44ch; }
.etterem-format-card:nth-child(1),
.etterem-format-card:nth-child(2),
.etterem-format-card:nth-child(3),
.etterem-format-card:nth-child(4) { grid-column: auto; }
.etterem-format-card__link { min-height: 2.75rem; margin-top: .25rem; }

.etterem-evening__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-clay);
}

.etterem-evening__panel {
  grid-column: 1 / span 5;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  padding: 3rem 2.5rem;
}

.etterem-evening__media { grid-column: 6 / -1; grid-row: 1; width: 100%; min-width: 0; aspect-ratio: 3 / 2; margin: 0; border-radius: 0; box-shadow: none; }
.etterem-evening__media img { object-position: center center; }
.etterem-evening__content { gap: 1.25rem; }
.etterem-evening__content > * { margin: 0; }
.etterem-evening__content p:not(.eyebrow) { max-width: 42ch; }

.etterem-timeline__heading { width: 100%; max-width: 25.8rem; min-width: 0; }
.etterem-timeline__heading p:not(.eyebrow) { max-width: 50ch; }
.etterem-timeline__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  position: relative;
  margin-top: 3rem;
}

.etterem-step { position: relative; width: 100%; min-width: 0; padding-top: 1rem; }
.etterem-step::before { position: absolute; top: 0; left: 0; width: 100%; height: 1px; background: rgba(212,122,79,.45); content: ""; }
.etterem-step--offset { margin-top: 2rem; }
.etterem-step__number { display: inline-flex; min-width: 2.75rem; min-height: 2.25rem; align-items: center; justify-content: center; margin-bottom: 1rem; border-left: 3px solid var(--color-paprika-ember); color: var(--color-paprika-ember); font-size: var(--text-utility); font-weight: 700; letter-spacing: .1em; }
.etterem-step__number--copper { border: 1px solid rgba(212,122,79,.7); border-radius: .5rem; color: var(--color-paprika-copper); }
.etterem-step p { max-width: 40ch; }

.etterem-paths__intro { max-width: 43.75rem; margin-inline: auto; text-align: center; }
.etterem-paths__intro p:not(.eyebrow) { max-width: 52ch; margin-inline: auto; }
.etterem-paths__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: start; margin-top: 3rem; }
.etterem-path-card { display: flex; min-width: 0; }
.etterem-path-card--raised { margin-top: -1.75rem; }
.etterem-path-card__content { width: 100%; gap: 1rem; }
.etterem-path-card__content > * { margin: 0; }
.etterem-path-card__content p { max-width: 42ch; }
.etterem-path-card__content .button-link { min-height: 2.75rem; margin-top: .25rem; align-self: flex-start; }
.etterem-path-card--warm { background: rgba(255,249,243,.8); }

.etterem-venue__panel { width: calc((100% - 11 * 1.5rem) / 2 + 5 * 1.5rem); max-width: 38.75rem; min-width: 0; margin-inline: auto; padding: 2rem; }
.etterem-venue__content { gap: 1rem; }
.etterem-venue__content > * { margin: 0; }
.etterem-venue__content > p:not(.eyebrow):not(.etterem-venue__note) { max-width: 48ch; }
.etterem-venue__note { max-width: 52ch; padding-top: 1rem; border-top: 1px solid rgba(102,83,74,.2); color: var(--color-roasted-brown); font-size: var(--text-utility); line-height: var(--leading-utility); }
.etterem-venue__note span { padding-right: .5rem; color: var(--color-paprika-copper); }

.etterem-cta { padding-block: 5rem; background: var(--color-smoked-plum); color: var(--color-cream-highlight); }
.etterem-cta__content { max-width: 42.5rem; margin-inline: auto; align-items: center; gap: 1.5rem; text-align: center; }
.etterem-cta__content > * { margin: 0; }
.etterem-cta__content h2 { color: var(--color-cream-highlight); }
.etterem-cta__content p:not(.eyebrow) { max-width: 42ch; color: var(--color-dark-on-dark-muted); }
.etterem-cta__content .eyebrow { color: var(--color-saffron-light); }

.etterem-faq__heading { width: 100%; max-width: 32.5rem; min-width: 0; }
.etterem-faq__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: start; margin-top: 3rem; }
.etterem-faq-card { display: flex; flex-direction: column; gap: 1rem; }
.etterem-faq-card > *,.etterem-faq-note > * { margin: 0; }
.etterem-faq-card:nth-child(1) { grid-column: span 6; }
.etterem-faq-card:nth-child(2) { grid-column: span 6; }
.etterem-faq-card--copper { border-top: 3px solid var(--color-paprika-copper); }
.etterem-faq-card p { max-width: 50ch; }
.etterem-faq-note { grid-column: 1 / span 6; display: flex; flex-direction: column; gap: .75rem; padding-block: 1.5rem; }
.etterem-faq-note h3 { font-size: var(--text-card-heading); }
.etterem-faq-note p { max-width: 56ch; font-size: var(--text-utility); line-height: var(--leading-utility); }

@media (max-width: 56.25rem) {
  .etterem-hero__media { height: auto; aspect-ratio: 16 / 10; }
  .etterem-hero__panel { grid-column: 1 / span 6; margin-left: 1.5rem; }
  .etterem-rhythm__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .etterem-rhythm__intro { grid-column: 1 / -1; }
  .etterem-rhythm__cards { grid-column: 1 / -1; grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .etterem-rhythm-card:nth-child(1) { grid-column: 1 / -1; }
  .etterem-rhythm-card:nth-child(2) { grid-column: span 3; }
  .etterem-rhythm-card:nth-child(3) { grid-column: span 3; }
  .etterem-detail__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .etterem-detail__media { grid-column: 1 / span 3; }
  .etterem-detail__panel { grid-column: 4 / span 3; }
  .etterem-formats__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .etterem-format-card:nth-child(1),.etterem-format-card:nth-child(2),.etterem-format-card:nth-child(3),.etterem-format-card:nth-child(4) { grid-column: span 3; }
  .etterem-evening__panel { grid-column: 1 / span 6; }
  .etterem-evening__media { grid-column: 7 / -1; }
  .etterem-faq-card:nth-child(1),.etterem-faq-card:nth-child(2) { grid-column: span 6; }
  .etterem-faq-note { grid-column: 1 / -1; }
  .etterem-venue__panel { width: 100%; max-width: none; }
}

@media (max-width: 64rem) {
  .etterem-hero { padding-top: 2rem; }
  .etterem-hero__wrap { display: flex; flex-direction: column; gap: 0; }
  .etterem-hero__media { height: auto; aspect-ratio: 16 / 10; }
  .etterem-hero__panel { width: calc(100% - 2.5rem); max-width: none; margin: -1.5rem auto 0; padding: 1.5rem; }
  .etterem-detail__grid { display: flex; flex-direction: column; gap: 1.25rem; }
  .etterem-detail__media,.etterem-detail__panel { width: 100%; max-width: none; }
  .etterem-detail__media { aspect-ratio: 4 / 5; }
  .etterem-evening__grid { display: flex; flex-direction: column; }
  .etterem-evening__media { order: 1; aspect-ratio: 3 / 2; }
  .etterem-evening__panel { order: 2; padding: 1.5rem; }
  .etterem-evening__content .button { width: 100%; min-height: 3rem; }
}

@media (max-width: 43.75rem) {
  .etterem-rhythm__cards,.etterem-formats__grid,.etterem-faq__grid { grid-template-columns: 1fr; }
  .etterem-rhythm-card:nth-child(1),.etterem-rhythm-card:nth-child(2),.etterem-rhythm-card:nth-child(3),.etterem-format-card:nth-child(1),.etterem-format-card:nth-child(2),.etterem-format-card:nth-child(3),.etterem-format-card:nth-child(4),.etterem-faq-card:nth-child(1),.etterem-faq-card:nth-child(2),.etterem-faq-note { grid-column: 1; }
  .etterem-rhythm-card--offset { margin-top: 0; }
  .etterem-timeline__steps { grid-template-columns: 1fr; gap: 1.25rem; padding-left: 1.25rem; border-left: 2px solid var(--color-paprika-ember); }
  .etterem-step { padding-top: 0; }
  .etterem-step::before { display: none; }
  .etterem-step--offset { margin-top: 0; }
  .etterem-paths__grid { grid-template-columns: 1fr; gap: 1rem; }
  .etterem-path-card--raised { margin-top: 0; }
}

@media (max-width: 40rem) {
  .etterem-hero__panel,.etterem-rhythm-card,.etterem-format-card,.etterem-detail__panel,.etterem-path-card,.etterem-venue__panel,.etterem-faq-card,.etterem-faq-note { padding: 1.5rem; }
  .etterem-hero__panel { width: 100%; margin-top: 1.25rem; }
  .etterem-hero__lead { max-width: 38ch; }
  .etterem-hero__action { width: 100%; }
  .etterem-hero__action .button { width: auto; min-width: 0; }
  .etterem-rhythm__intro,.etterem-timeline__heading,.etterem-faq__heading { max-width: none; }
  .etterem-formats__intro,.etterem-paths__intro { max-width: none; }
  .etterem-formats__intro p:not(.eyebrow),.etterem-paths__intro p:not(.eyebrow) { max-width: 40ch; text-align: left; }
  .etterem-formats__intro p:not(.eyebrow) { margin-inline: 0; }
  .etterem-paths__intro p:not(.eyebrow) { margin-inline: 0; }
  .etterem-evening__panel { padding: 1.5rem; }
  .etterem-evening__content p:not(.eyebrow) { max-width: 38ch; }
  .etterem-cta { padding-block: 3.5rem; }
  .etterem-cta__content { gap: 1.25rem; }
  .etterem-cta__content .button { min-height: 3rem; }
}

@media (max-width: 22.5rem) {
  .etterem-hero__action .button,.etterem-cta__content .button { width: 100%; }
}

@media (hover: hover) and (pointer: fine) {
  .etterem-rhythm-card,.etterem-path-card { transition: background-color var(--transition-ui), box-shadow var(--transition-ui); }
  .etterem-rhythm-card:hover,.etterem-path-card:hover { background-color: rgba(255,249,243,.88); }
  .etterem-rhythm-card--dark:hover { background-color: #45312c; }
}

@media (prefers-reduced-motion: reduce) {
  .etterem-rhythm-card,.etterem-path-card { transition: none; }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.gallery-page {
  overflow: clip;
}

.gallery-page .section {
  position: relative;
}

.gallery-page .eyebrow {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.gallery-page .eyebrow::before {
  width: 1.5rem;
  height: 1px;
  background: var(--color-paprika-ember);
  content: "";
}

.gallery-hero {
  padding-top: var(--space-12);
}

.gallery-hero__container {
  position: relative;
}

.gallery-hero__media {
  width: 100%;
  aspect-ratio: 16 / 10;
}

.gallery-hero__media img {
  object-position: center;
}

.gallery-hero__panel {
  position: absolute;
  z-index: 1;
  bottom: calc(var(--space-8) * -1);
  left: var(--space-8);
  display: flex;
  width: min(43%, 33.75rem);
  min-width: 26.25rem;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.gallery-hero__panel > :is(h1, p) {
  margin: 0;
}

.gallery-hero__panel h1 {
  max-width: 38.75rem;
}

.gallery-hero__lead {
  max-width: 31.25rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.gallery-hero__cta {
  width: fit-content;
}

.gallery-reading {
  padding-top: calc(var(--section-space) + var(--space-8));
}

.gallery-reading__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(17.5rem, 4fr);
  gap: var(--space-12);
  align-items: start;
}

.gallery-reading__copy,
.gallery-reading__panel {
  min-width: 0;
}

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

.gallery-reading__copy > p:not(.gallery-reading__notice) {
  max-width: 42.5rem;
}

.gallery-reading__notice {
  display: flex;
  max-width: 100%;
  align-items: flex-start;
  gap: var(--space-3);
  margin-top: var(--space-6);
  margin-bottom: 0;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.gallery-reading__notice-icon {
  color: var(--color-paprika-copper);
  font-size: 1.25rem;
  line-height: 1;
}

.gallery-reading__panel {
  display: flex;
  min-height: 13rem;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-8);
}

.gallery-reading__panel-lead {
  max-width: 26.25rem;
  margin: 0;
  padding-left: var(--space-6);
  border-left: 3px solid var(--color-paprika-ember);
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.gallery-dining__header {
  max-width: 42.5rem;
}

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

.gallery-dining__mosaic {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: var(--space-6);
  margin-top: var(--space-12);
  align-items: start;
}

.gallery-dining__portrait,
.gallery-dining__right {
  min-width: 0;
  width: 100%;
}

.gallery-dining__portrait .media-frame {
  width: 100%;
  aspect-ratio: 4 / 5;
}

.gallery-dining__right {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.gallery-dining__interior .media-frame {
  width: 100%;
  aspect-ratio: 3 / 2;
}

.gallery-dining__note {
  width: min(62%, 26.25rem);
  align-self: flex-end;
  padding: var(--space-6);
}

.gallery-dining__note p {
  max-width: 26.25rem;
  margin: 0;
}

.gallery-image-card {
  position: relative;
  display: block;
  min-width: 0;
  width: 100%;
  color: inherit;
  text-decoration: none;
}

.gallery-image-card:hover {
  color: inherit;
}

.gallery-image-card:focus-visible {
  outline: 2px solid var(--color-paprika-ember);
  outline-offset: 4px;
  box-shadow: 0 0 0 3px var(--color-focus-halo);
}

.gallery-image-card__caption {
  position: absolute;
  right: var(--space-4);
  bottom: var(--space-4);
  left: var(--space-4);
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4);
  color: var(--color-espresso-ink);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.gallery-image-card__caption strong {
  font-family: var(--font-heading);
  font-size: var(--text-card-heading);
  font-weight: 600;
  line-height: 1.05;
}

.gallery-image-card__caption--dark {
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, rgba(56, 40, 36, 0.08), rgba(56, 40, 36, 0.9));
  color: var(--color-cream-highlight);
}

.gallery-lounge {
  margin-top: var(--space-16);
  padding-block: var(--space-20);
  background: var(--color-smoked-plum);
}

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

.gallery-lounge__copy,
.gallery-lounge__image {
  min-width: 0;
  width: 100%;
}

.gallery-lounge__copy > :is(h2, p) {
  color: var(--color-cream-highlight);
}

.gallery-lounge__copy > p:not(.gallery-lounge__quote) {
  max-width: 31.25rem;
  color: var(--color-dark-on-dark-muted);
}

.gallery-lounge__quote {
  max-width: 22.5rem;
  margin-bottom: 0;
  color: var(--color-saffron-light) !important;
  font-family: var(--font-heading);
  font-size: var(--text-card-heading);
  font-style: italic;
  line-height: 1.15;
}

.gallery-lounge__image {
  transform: translateY(-2rem);
}

.gallery-lounge__image .media-frame {
  width: 100%;
  aspect-ratio: 5 / 4;
}

.gallery-events__header {
  max-width: 42.5rem;
}

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

.gallery-events__visual {
  margin-top: var(--space-12);
}

.gallery-events__image .media-frame {
  width: 100%;
  aspect-ratio: 3 / 2;
}

.gallery-events__cards {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 3fr) minmax(0, 5fr);
  gap: var(--space-6);
  margin-top: calc(var(--space-8) * -1);
  padding-inline: var(--space-8);
  align-items: start;
}

.gallery-events__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
}

.gallery-events__card > :is(h3, p) {
  margin: 0;
}

.gallery-events__card h3 {
  font-size: 1.8rem;
}

.gallery-events__icon,
.gallery-overview__icon {
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(185, 71, 47, 0.28);
  border-radius: var(--radius-sm);
  background: rgba(212, 122, 79, 0.12);
  color: var(--color-paprika-ember);
  font-size: 1.25rem;
}

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

.gallery-private__image,
.gallery-private__panel {
  min-width: 0;
  width: 100%;
}

.gallery-private__image .media-frame {
  width: 100%;
  aspect-ratio: 16 / 9;
}

.gallery-private__panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.gallery-private__panel > :is(h2, p) {
  margin: 0;
}

.gallery-private__panel h2,
.gallery-private__panel p {
  max-width: 28.75rem;
}

.gallery-private__panel .button {
  width: fit-content;
  margin-top: var(--space-2);
}

.gallery-overview__header {
  max-width: 45rem;
  margin-inline: auto;
  text-align: center;
}

.gallery-overview__header .eyebrow {
  justify-content: center;
}

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

.gallery-overview__links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.gallery-overview__link {
  display: flex;
  min-width: 0;
  min-height: 7.5rem;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-6);
  color: var(--color-espresso-ink);
  text-decoration: none;
  transition: background-color var(--transition-ui), border-color var(--transition-ui);
}

.gallery-overview__link > span:last-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.gallery-overview__link strong {
  font-family: var(--font-heading);
  font-size: var(--text-card-heading);
  line-height: 1;
}

.gallery-overview__link small {
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.gallery-overview__link:hover {
  border-color: rgba(185, 71, 47, 0.45);
  background: #fffdf9;
  color: var(--color-espresso-ink);
}

.gallery-context {
  padding-block: var(--space-16);
  background: var(--color-smoked-plum);
}

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

.gallery-context__copy,
.gallery-context__accent {
  min-width: 0;
}

.gallery-context__copy h2 {
  max-width: 42.5rem;
  color: var(--color-cream-highlight);
  font-size: var(--text-section-heading);
}

.gallery-context__copy > p:not(.eyebrow) {
  max-width: 47.5rem;
  color: var(--color-dark-on-dark-muted);
}

.gallery-context__note {
  display: flex;
  max-width: 47.5rem;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border: var(--border-dark);
  border-radius: var(--radius-md);
  color: var(--color-cream-highlight);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.gallery-context__note > span:first-child {
  color: var(--color-saffron-light);
}

.gallery-context__accent {
  width: 100%;
  height: 7.5rem;
  border-left: 1px solid rgba(232, 182, 106, 0.5);
  background: linear-gradient(90deg, rgba(212, 122, 79, 0.16), transparent 70%);
}

.gallery-closing__panel {
  position: relative;
  display: flex;
  min-height: 23rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-4);
  padding: var(--space-16);
  overflow: hidden;
  text-align: center;
}

.gallery-closing__panel::before {
  position: absolute;
  top: -8rem;
  right: -4rem;
  width: 18rem;
  height: 18rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232, 182, 106, 0.42), rgba(232, 182, 106, 0));
  content: "";
  pointer-events: none;
}

.gallery-closing__panel > :is(.eyebrow, h2, p, .gallery-closing__actions) {
  position: relative;
  z-index: 1;
  margin: 0;
}

.gallery-closing__panel .eyebrow {
  justify-content: center;
}

.gallery-closing__panel h2 {
  max-width: 38.75rem;
}

.gallery-closing__panel > p {
  max-width: 35rem;
}

.gallery-closing__actions {
  display: flex;
  min-width: 0;
  gap: var(--space-4);
  margin-top: var(--space-2) !important;
}

.gallery-closing__actions > a {
  min-width: 0;
}

.gallery-lightbox {
  width: min(92vw, 70rem);
  max-width: none;
  border: 0;
  border-radius: var(--radius-xl);
  background: var(--color-smoked-plum);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.42);
  color: var(--color-cream-highlight);
}

.gallery-lightbox::backdrop {
  background: rgba(43, 33, 29, 0.8);
}

.gallery-lightbox__inner {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
}

.gallery-lightbox__image {
  width: 100%;
  max-height: 70vh;
  object-fit: contain;
}

.gallery-lightbox__caption {
  max-width: 52rem;
  margin: 0;
  color: var(--color-dark-on-dark-muted);
}

.gallery-lightbox__close {
  position: absolute;
  top: var(--space-4);
  right: var(--space-4);
  z-index: 1;
  width: 2.75rem;
  min-height: 2.75rem;
  padding: 0;
  border: var(--border-dark);
  border-radius: 50%;
  background: var(--color-smoked-plum);
  color: var(--color-cream-highlight);
  font-size: 1.75rem;
}

.gallery-lightbox__controls {
  display: flex;
  min-width: 0;
  gap: var(--space-3);
}

.gallery-lightbox__controls > button {
  min-width: 0;
}

@media (max-width: 56.25rem) {
  .gallery-hero__panel {
    position: relative;
    bottom: auto;
    left: auto;
    width: min(100% - var(--space-12), 43rem);
    min-width: 0;
    margin-top: calc(var(--space-6) * -1);
    margin-inline: auto;
  }

  .gallery-reading {
    padding-top: var(--section-space);
  }

  .gallery-reading__grid,
  .gallery-lounge__grid,
  .gallery-private__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gallery-reading__grid,
  .gallery-lounge__grid {
    gap: var(--space-8);
  }

  .gallery-reading__panel {
    width: 100%;
  }

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

  .gallery-dining__right {
    display: contents;
  }

  .gallery-dining__portrait {
    grid-column: 1;
  }

  .gallery-dining__interior {
    grid-column: 2;
  }

  .gallery-dining__note {
    grid-column: 1 / -1;
    width: min(100%, 32rem);
    justify-self: end;
  }

  .gallery-lounge__image {
    transform: none;
  }

  .gallery-events__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: var(--space-6);
    padding-inline: 0;
  }

  .gallery-events__cards > :nth-child(3) {
    grid-column: 1 / -1;
  }

  .gallery-private__panel {
    max-width: 43rem;
  }

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

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

  .gallery-context__accent {
    display: none;
  }
}

@media (max-width: 40rem) {
  .gallery-hero {
    padding-top: var(--space-6);
  }

  .gallery-hero__panel {
    width: 100%;
    margin-top: var(--space-4);
    padding: var(--space-6);
  }

  .gallery-hero__panel h1 {
    font-size: 2.375rem;
    line-height: 1.05;
  }

  .gallery-hero__lead {
    font-size: var(--text-body);
    line-height: var(--leading-body);
  }

  .gallery-hero__cta {
    width: min(100%, 20rem);
  }

  .gallery-reading__grid,
  .gallery-lounge__grid,
  .gallery-private__grid {
    gap: var(--space-6);
  }

  .gallery-reading__panel,
  .gallery-private__panel {
    padding: var(--space-6);
  }

  .gallery-dining__mosaic,
  .gallery-events__cards,
  .gallery-overview__links {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .gallery-dining__portrait,
  .gallery-dining__interior,
  .gallery-dining__note,
  .gallery-events__cards > :nth-child(3) {
    grid-column: 1;
  }

  .gallery-dining__note {
    width: 100%;
    justify-self: stretch;
    padding: var(--space-6);
  }

  .gallery-image-card__caption {
    right: var(--space-3);
    bottom: var(--space-3);
    left: var(--space-3);
    padding: var(--space-3);
  }

  .gallery-image-card__caption strong {
    font-size: 1.3rem;
  }

  .gallery-lounge {
    margin-top: var(--space-8);
    padding-block: var(--space-12);
  }

  .gallery-lounge__copy h2,
  .gallery-private__panel h2,
  .gallery-events__header h2,
  .gallery-dining__header h2 {
    font-size: 1.875rem;
    line-height: 1.08;
  }

  .gallery-events__cards {
    margin-top: var(--space-4);
  }

  .gallery-events__card {
    padding: var(--space-6);
  }

  .gallery-private__panel .button {
    width: min(100%, 20rem);
  }

  .gallery-overview__header {
    max-width: 38.75rem;
  }

  .gallery-overview__link {
    min-height: 4.5rem;
    padding: var(--space-4);
  }

  .gallery-context {
    padding-block: var(--space-12);
  }

  .gallery-context__copy h2 {
    font-size: 1.875rem;
    line-height: 1.08;
  }

  .gallery-context__note {
    padding: var(--space-3);
  }

  .gallery-closing__panel {
    min-height: 0;
    padding: var(--space-6);
  }

  .gallery-closing__panel h2 {
    font-size: 2.375rem;
    line-height: 1.05;
  }

  .gallery-closing__actions {
    width: 100%;
    flex-direction: column;
  }

  .gallery-closing__actions > a {
    width: 100%;
  }

  .gallery-lightbox {
    width: calc(100vw - 2rem);
  }

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

  .gallery-lightbox__controls {
    flex-direction: column;
  }

  .gallery-lightbox__controls > button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gallery-lounge__image,
  .gallery-overview__link {
    transition: none;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.kapcsolat-page {
  background: var(--color-porcelain);
}

.kapcsolat-page .section {
  position: relative;
}

.kapcsolat-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: center;
  gap: 0;
}

.kapcsolat-hero__copy {
  grid-column: 1 / span 1;
  min-width: 0;
  padding: var(--space-12);
}

.kapcsolat-hero__copy > :last-child,
.kapcsolat-form-card__intro > :last-child,
.kapcsolat-form-section__guide > :last-child,
.kapcsolat-final__panel > :last-child,
.kapcsolat-disclaimer__copy > :last-child {
  margin-bottom: 0;
}

.kapcsolat-hero__lead {
  max-width: 32.5rem;
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.kapcsolat-hero__action {
  min-height: 3rem;
  margin-bottom: var(--space-6);
}

.kapcsolat-hero__support {
  max-width: 27.5rem;
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.kapcsolat-hero__media {
  grid-column: 3 / span 1;
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 3;
  margin: 0;
  border-radius: var(--radius-xl);
}

.kapcsolat-hero__media img {
  width: 100%;
  height: 100%;
  object-position: 48% 52%;
}

.kapcsolat-hero__glow {
  position: absolute;
  inset: 9% 8% auto auto;
  width: 28%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255, 249, 243, 0.18);
  filter: blur(20px);
  pointer-events: none;
}

.kapcsolat-topics__head {
  max-width: 40rem;
}

.kapcsolat-topics__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(10rem, auto));
  gap: var(--space-6);
}

.kapcsolat-topic {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-4);
  border: 1px solid rgba(255, 255, 255, 0.72);
  padding: var(--space-6);
  color: var(--color-espresso-ink);
  text-align: left;
}

.kapcsolat-topic--primary {
  grid-column: 1 / span 5;
  grid-row: 1 / span 2;
  padding: var(--space-8);
}

.kapcsolat-topic--lounge {
  grid-column: 6 / span 4;
  grid-row: 1;
}

.kapcsolat-topic--evening {
  grid-column: 10 / span 3;
  grid-row: 1;
}

.kapcsolat-topic--private {
  grid-column: 6 / span 7;
  grid-row: 2;
}

.kapcsolat-topic:hover {
  border-color: rgba(185, 71, 47, 0.45);
  background-color: rgba(255, 249, 243, 0.84);
}

.kapcsolat-topic.is-selected {
  border-bottom: 4px solid var(--color-paprika-ember);
}

.kapcsolat-topic__icon,
.kapcsolat-experience__icon {
  display: inline-flex;
  flex: 0 0 2.75rem;
  width: 2.75rem;
  min-width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  background: rgba(212, 122, 79, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
  color: var(--color-paprika-ember);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
}

.kapcsolat-topic__content {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--space-2);
}

.kapcsolat-topic__title {
  font-family: var(--font-heading);
  font-size: var(--text-card-heading);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.kapcsolat-topic--primary .kapcsolat-topic__title {
  font-size: 2rem;
}

.kapcsolat-topic__text {
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.kapcsolat-topic__meta {
  color: var(--color-paprika-ember);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-meta);
  text-transform: uppercase;
}

.kapcsolat-topic__status {
  margin-top: auto;
  color: var(--color-paprika-ember);
  font-size: var(--text-utility);
  font-weight: 650;
}

.kapcsolat-form-section__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr);
  align-items: start;
  gap: 0;
}

.kapcsolat-form-section__guide {
  grid-column: 1 / span 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
}

.kapcsolat-form-section__guide .eyebrow {
  color: var(--color-saffron-light);
  margin: 0;
}

.kapcsolat-form-section__guide h2,
.kapcsolat-form-section__guide p {
  margin: 0;
}

.kapcsolat-form-section__guide > p {
  max-width: 22.5rem;
}

.kapcsolat-form-section__guide-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-4);
  margin-top: var(--space-2);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-dark-edge);
}

.kapcsolat-form-section__guide-list p {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-2);
  color: var(--color-dark-on-dark-muted);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.kapcsolat-form-section__guide-list span {
  color: var(--color-saffron-light);
  font-size: var(--text-meta);
  font-weight: 700;
}

.kapcsolat-form-card {
  grid-column: 3 / span 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-6);
  padding: var(--space-8);
}

.kapcsolat-form-card__intro {
  max-width: 35rem;
}

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

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

.kapcsolat-field--topic,
.kapcsolat-field--message {
  grid-column: 1 / -1;
}

.kapcsolat-field--phone {
  grid-column: 1 / span 1;
}

.kapcsolat-page input,
.kapcsolat-page select,
.kapcsolat-page textarea {
  min-height: 3.25rem;
  border-radius: var(--radius-lg);
}

.kapcsolat-page textarea {
  min-height: 9rem;
}

.kapcsolat-field__optional {
  color: var(--color-roasted-brown);
  font-weight: 450;
}

.kapcsolat-form__consent {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-2);
  margin-top: var(--space-6);
}

.kapcsolat-form__consent label {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-2);
  margin: 0;
}

.kapcsolat-form__consent input {
  flex: 0 0 auto;
  margin-top: 0.1rem;
}

.kapcsolat-form__submit {
  min-height: 3.25rem;
  margin-top: var(--space-6);
}

.kapcsolat-form__result {
  min-height: 1.5rem;
  margin-top: var(--space-3);
}

.kapcsolat-process__head {
  max-width: 37.5rem;
  margin-inline: auto;
  text-align: center;
}

.kapcsolat-process__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.kapcsolat-process__step {
  min-width: 0;
  padding-top: var(--space-4);
  border-top: 2px solid rgba(212, 122, 79, 0.56);
}

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

.kapcsolat-process__number {
  display: block;
  margin-bottom: var(--space-4);
  color: var(--color-paprika-ember);
  font-family: var(--font-heading);
  font-size: 2.7rem;
  font-weight: 600;
  line-height: 1;
}

.kapcsolat-process__step h3 {
  font-size: var(--text-card-heading);
}

.kapcsolat-process__step p {
  max-width: 20rem;
  color: var(--color-roasted-brown);
}

.kapcsolat-experiences__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: start;
  gap: 0;
}

.kapcsolat-experiences__intro {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 32.5rem;
}

.kapcsolat-experiences__modules {
  grid-column: 3 / span 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-6);
  min-width: 0;
}

.kapcsolat-experience {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
}

.kapcsolat-experience > * {
  margin: 0;
}

.kapcsolat-experience p {
  color: var(--color-roasted-brown);
}

.kapcsolat-experience--wide {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.kapcsolat-experience--wide > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.kapcsolat-experience--wide h3,
.kapcsolat-experience--wide p,
.kapcsolat-experience--wide .button-link {
  margin: 0;
}

.kapcsolat-venue__panel {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(0, 1fr) minmax(0, 3fr);
  align-items: center;
  gap: 0;
  padding: var(--space-8);
}

.kapcsolat-venue__copy {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 45rem;
}

.kapcsolat-venue__copy .eyebrow {
  color: var(--color-saffron-light);
}

.kapcsolat-venue__notice {
  max-width: 38.75rem;
  margin-bottom: 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-dark-edge);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

.kapcsolat-venue__notice span {
  display: inline-flex;
  width: 1.1rem;
  height: 1.1rem;
  align-items: center;
  justify-content: center;
  margin-right: var(--space-2);
  border: 1px solid var(--color-dark-on-dark-muted);
  border-radius: 50%;
  color: var(--color-saffron-light);
  font-size: 0.7rem;
  font-weight: 700;
}

.kapcsolat-venue__action {
  grid-column: 3 / span 1;
  width: 100%;
  min-height: 3rem;
}

.kapcsolat-faq__head {
  max-width: 37.5rem;
  margin-inline: auto;
  text-align: center;
}

.kapcsolat-faq__list {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 8fr) minmax(0, 2fr);
  gap: var(--space-3);
  margin-top: var(--space-12);
}

.kapcsolat-faq__item {
  grid-column: 2 / span 1;
  min-width: 0;
  overflow: hidden;
}

.kapcsolat-faq__item h3 {
  margin: 0;
  font-size: inherit;
}

.kapcsolat-faq__button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2rem;
  width: 100%;
  min-width: 0;
  min-height: 3.75rem;
  align-items: center;
  gap: var(--space-4);
  border: 0;
  border-radius: 0;
  padding: var(--space-6);
  background: transparent;
  box-shadow: none;
  color: var(--color-espresso-ink);
  font-family: var(--font-heading);
  font-size: var(--text-card-heading);
  font-weight: 600;
  line-height: 1.08;
  text-align: left;
}

.kapcsolat-faq__button:hover {
  background: rgba(255, 249, 243, 0.38);
  color: var(--color-espresso-ink);
  transform: none;
}

.kapcsolat-faq__symbol {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(212, 122, 79, 0.13);
  color: var(--color-paprika-ember);
  font-family: var(--font-body);
  font-size: 1.35rem;
  line-height: 1;
}

.kapcsolat-faq__answer {
  padding: 0 var(--space-6) var(--space-6);
}

.kapcsolat-faq__answer p {
  max-width: 38.75rem;
  margin: 0;
  color: var(--color-roasted-brown);
}

.kapcsolat-final__panel {
  display: flex;
  width: min(100%, 51.67rem);
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
  margin-inline: auto;
  padding: var(--space-12);
  text-align: center;
}

.kapcsolat-final__panel h2,
.kapcsolat-final__panel p,
.kapcsolat-final__panel a {
  margin: 0;
}

.kapcsolat-final__panel h2 {
  max-width: 38.75rem;
}

.kapcsolat-final__panel p {
  max-width: 35rem;
}

.kapcsolat-final__rule {
  width: 4rem;
  height: 2px;
  background: var(--color-paprika-copper);
}

.kapcsolat-final__action {
  min-height: 3rem;
}

.kapcsolat-disclaimer {
  padding: var(--space-8) 0;
}

.kapcsolat-disclaimer__copy {
  width: 58.333%;
  min-width: 0;
  max-width: 45rem;
  padding-top: var(--space-4);
  border-top: 1px solid rgba(102, 83, 74, 0.22);
}

.kapcsolat-disclaimer__copy .eyebrow {
  margin-bottom: var(--space-2);
}

.kapcsolat-disclaimer__copy p:last-child {
  color: var(--color-roasted-brown);
  font-size: var(--text-utility);
  line-height: var(--leading-utility);
}

@media (max-width: 60rem) {
  .kapcsolat-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .kapcsolat-hero__media {
    grid-column: 1;
    grid-row: 1;
  }

  .kapcsolat-hero__copy {
    grid-column: 1;
    grid-row: 2;
    padding: var(--space-8);
  }

  .kapcsolat-hero__action {
    width: 100%;
  }

  .kapcsolat-topics__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, auto));
  }

  .kapcsolat-topic--primary,
  .kapcsolat-topic--lounge,
  .kapcsolat-topic--evening,
  .kapcsolat-topic--private {
    grid-column: auto;
    grid-row: auto;
    min-height: 16rem;
  }

  .kapcsolat-topic--primary {
    padding: var(--space-6);
  }

  .kapcsolat-form-section__grid,
  .kapcsolat-experiences__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .kapcsolat-form-section__guide,
  .kapcsolat-form-card,
  .kapcsolat-experiences__intro,
  .kapcsolat-experiences__modules {
    grid-column: 1;
    width: 100%;
  }

  .kapcsolat-form-section__guide > p {
    max-width: 38.75rem;
  }

  .kapcsolat-experiences__intro {
    max-width: 42.5rem;
  }

  .kapcsolat-process__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-7, 1.75rem);
  }

  .kapcsolat-process__step p {
    max-width: 35rem;
  }

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

  .kapcsolat-venue__copy,
  .kapcsolat-venue__action {
    grid-column: 1;
  }

  .kapcsolat-venue__action {
    width: auto;
    justify-self: start;
  }
}

@media (max-width: 53.75rem) {
  .kapcsolat-process__grid {
    gap: var(--space-6);
  }

  .kapcsolat-process__step {
    padding-top: var(--space-3);
  }

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

  .kapcsolat-field,
  .kapcsolat-field--topic,
  .kapcsolat-field--phone,
  .kapcsolat-field--message {
    grid-column: 1;
  }

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

  .kapcsolat-faq__item {
    grid-column: 1;
  }
}

@media (max-width: 40rem) {
  .kapcsolat-hero__copy,
  .kapcsolat-form-section__guide,
  .kapcsolat-form-card,
  .kapcsolat-venue__panel {
    padding: var(--space-6);
  }

  .kapcsolat-hero__media {
    border-radius: var(--radius-lg);
  }

  .kapcsolat-hero__lead {
    font-size: var(--text-lead);
  }

  .kapcsolat-topics__grid {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(4, minmax(0, auto));
    gap: var(--space-4);
  }

  .kapcsolat-topic--primary,
  .kapcsolat-topic--lounge,
  .kapcsolat-topic--evening,
  .kapcsolat-topic--private {
    min-height: 0;
    padding: var(--space-6);
  }

  .kapcsolat-topic--primary .kapcsolat-topic__title {
    font-size: var(--text-card-heading);
  }

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

  .kapcsolat-experience--wide {
    grid-column: 1;
    grid-template-columns: minmax(0, 1fr);
  }

  .kapcsolat-experience--wide .kapcsolat-experience__icon {
    margin-bottom: var(--space-2);
  }

  .kapcsolat-venue__action,
  .kapcsolat-final__action,
  .kapcsolat-form__submit {
    width: 100%;
  }

  .kapcsolat-faq__button {
    min-height: 3.25rem;
    padding: var(--space-5, 1.25rem);
    font-size: 1.35rem;
  }

  .kapcsolat-faq__answer {
    padding: 0 var(--space-5, 1.25rem) var(--space-5, 1.25rem);
  }

  .kapcsolat-final__panel {
    width: 100%;
    padding: 1.75rem;
  }

  .kapcsolat-disclaimer {
    padding: var(--space-8) 0;
  }

  .kapcsolat-disclaimer__copy {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kapcsolat-topic,
  .kapcsolat-hero__media img {
    transition: none;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


.home-page { background: radial-gradient(circle at 10% 24%, rgba(232, 182, 106, .14), transparent 24rem), var(--color-porcelain); }
.home-page p { overflow-wrap: anywhere; hyphens: auto; }
.home-hero { position: relative; min-height: 47.5rem; display: grid; grid-template-columns: minmax(0, 1fr); overflow: hidden; background: var(--color-smoked-plum); }
.home-hero__image, .home-hero__overlay { position: absolute; inset: 0; width: 100%; min-width: 0; }
.home-hero__image { height: 100%; object-fit: cover; object-position: 42% center; }
.home-hero__overlay { background: linear-gradient(90deg, rgba(56,40,36,.44), rgba(56,40,36,.04) 48%, rgba(244,238,231,.18)), linear-gradient(0deg, rgba(56,40,36,.4), transparent 45%); }
.home-hero__layout { display: grid; width: 100%; min-width: 0; min-height: inherit; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: end; padding-bottom: var(--space-16); position: relative; z-index: 1; }
.home-hero__panel { grid-column: 8 / span 5; min-width: 0; padding: var(--space-12); display: flex; flex-direction: column; gap: var(--space-4); }
.home-hero__panel > * { margin: 0; }
.home-hero__panel h1 { font-size: clamp(2.75rem, 4.5vw, 4rem); }
.home-hero__lead { max-width: 31.25rem; font-size: var(--text-lead); line-height: var(--leading-lead); }
.home-hero__actions { display: flex; gap: var(--space-3); flex-wrap: wrap; min-width: 0; }
.home-hero__actions > * { min-width: 0; }
.home-intro__panel { width: min(100%, 51.7rem); margin-inline: auto; padding: var(--space-12); display: flex; flex-direction: column; gap: var(--space-8); }
.home-intro__copy { width: min(100%, 38.75rem); margin-inline: auto; text-align: center; }
.home-intro__points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); padding-top: var(--space-6); border-top: 1px solid rgba(185,71,47,.22); }
.home-intro__points p { min-width: 0; margin: 0; font-weight: 650; }
.home-section-heading { display: flex; flex-direction: column; gap: var(--space-3); }
.home-section-heading > * { margin: 0; }
.home-formats__heading { width: min(100%, 38rem); margin-bottom: var(--space-8); }
.home-formats__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-6); }
.home-dinner-card { position: relative; min-width: 0; min-height: 36.25rem; }
.home-dinner-card__caption { position: absolute; left: var(--space-6); right: var(--space-6); bottom: var(--space-6); width: min(100% - 3rem, 24.4rem); padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); }
.home-dinner-card__caption > * { margin: 0; }
.home-formats__side { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: repeat(2, minmax(16.75rem, 1fr)); gap: var(--space-6); min-width: 0; }
.home-format-card { min-width: 0; padding: var(--space-8); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.home-format-card > * { margin: 0; }
.home-icon { display: inline-flex; width: 2.6rem; height: 2.6rem; flex: 0 0 auto; align-items: center; justify-content: center; border: 1px solid rgba(185,71,47,.32); border-radius: var(--radius-sm); color: var(--color-paprika-copper); font-size: 1.55rem; box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.home-lounge__heading { width: min(100%, 37.5rem); margin-bottom: var(--space-8); }
.home-lounge__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); align-items: end; }
.home-lounge-card { min-width: 0; min-height: 25rem; padding: var(--space-8); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); transition: background-color var(--transition-ui); }
.home-lounge-card:hover { background-color: #fffdf9; }
.home-lounge-card > * { margin: 0; }
.home-lounge-card--image { min-height: 27.5rem; padding: 0; overflow: hidden; }
.home-lounge-card__media { width: 100%; height: 15.5rem; border-radius: 0; box-shadow: none; }
.home-lounge-card__body { min-width: 0; padding: var(--space-6) var(--space-8) var(--space-8); display: flex; flex-direction: column; gap: var(--space-3); }
.home-lounge-card__body > * { margin: 0; }
.home-evening { border-radius: 0; }
.home-evening__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: var(--space-8); align-items: start; }
.home-evening__intro { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.home-evening__intro > * { margin: 0; }
.home-evening .eyebrow { color: var(--color-saffron-light); }
.home-evening__steps { margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-6); }
.home-evening__steps li { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-3); min-width: 0; }
.home-evening__steps span { color: var(--color-paprika-copper); font-size: var(--text-utility); font-weight: 700; letter-spacing: .08em; }
.home-evening__steps div { min-width: 0; }
.home-evening__steps h3, .home-evening__steps p { margin: 0; }
.home-evening__steps h3 { color: var(--color-cream-highlight); font-size: 1.45rem; }
.home-evening__note { min-width: 0; padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); }
.home-evening__note > * { margin: 0; }
.home-private__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-12); align-items: center; }
.home-private__copy { min-width: 0; max-width: 30rem; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-private__copy > * { margin: 0; }
.home-private__points { width: 100%; display: flex; flex-direction: column; gap: var(--space-3); }
.home-private__points p { margin: 0; padding-bottom: var(--space-3); border-bottom: 1px solid rgba(185,71,47,.3); font-weight: 600; }
.home-private__texture { min-width: 0; width: 100%; aspect-ratio: 3 / 2; border-radius: var(--radius-xl); border: 1px solid rgba(255,255,255,.72); background: radial-gradient(circle at 27% 25%, rgba(232,182,106,.68), transparent 14%), radial-gradient(circle at 72% 70%, rgba(185,71,47,.46), transparent 26%), linear-gradient(135deg, #795446, #e4ba82 48%, #f7ead7); box-shadow: var(--shadow-clay), inset 0 1px 0 rgba(255,255,255,.72); }
.home-gallery__heading { width: min(100%, 35rem); margin-bottom: var(--space-8); }
.home-gallery__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: minmax(11rem, 1fr) minmax(11rem, 1fr); gap: var(--space-6); }
.home-gallery__item { min-width: 0; width: 100%; }
.home-gallery__item--large { grid-column: 1 / span 6; grid-row: 1 / span 2; aspect-ratio: 8 / 5; }
.home-gallery__item--food { grid-column: 7 / span 3; grid-row: 1; aspect-ratio: 4 / 3; }
.home-gallery__item--lounge { grid-column: 10 / span 3; grid-row: 2; aspect-ratio: 3 / 2; }
.home-gallery__captions { display: grid; grid-template-columns: 6fr 3fr 3fr; gap: var(--space-6); margin-top: var(--space-3); color: var(--color-roasted-brown); font-size: var(--text-utility); }
.home-gallery__captions span { min-width: 0; }
.home-gallery__link { margin-top: var(--space-6); }
.home-faq-preview__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-12); align-items: start; }
.home-faq-preview__intro { min-width: 0; max-width: 24.4rem; display: flex; flex-direction: column; gap: var(--space-3); }
.home-faq-preview__intro > * { margin: 0; }
.home-faq-preview__cards { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.home-faq-preview__cards article { min-width: 0; padding: var(--space-6); }
.home-faq-preview__cards article > :last-child { margin-bottom: 0; }
.home-accordion__heading { width: min(100%, 37.5rem); margin-bottom: var(--space-8); }
.home-accordion__list { width: min(100%, 51.7rem); margin-inline: auto; display: flex; flex-direction: column; gap: var(--space-3); }
.home-accordion__item { min-width: 0; overflow: hidden; }
.home-accordion__item h3 { margin: 0; }
.home-accordion__item button { width: 100%; min-width: 0; min-height: 3.5rem; justify-content: space-between; padding: var(--space-4) var(--space-6); border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--color-espresso-ink); font-family: var(--font-heading); font-size: 1.45rem; font-weight: 600; text-align: left; }
.home-accordion__item button:hover { background: rgba(212,122,79,.08); color: var(--color-espresso-ink); transform: none; }
.home-accordion__item button span { color: var(--color-paprika-ember); font-family: var(--font-body); font-size: 1.5rem; line-height: 1; transition: transform var(--transition-ui); }
.home-accordion__item button[aria-expanded="true"] span { transform: rotate(45deg); }
.home-accordion__answer { padding: 0 var(--space-6) var(--space-6); }
.home-accordion__answer p { width: min(100%, 42.5rem); margin: 0; }
.home-contact { border-radius: 0; }
.home-contact__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-12); align-items: start; }
.home-contact__intro { min-width: 0; max-width: 28.1rem; display: flex; flex-direction: column; gap: var(--space-4); }
.home-contact__intro > * { margin: 0; }
.home-contact .eyebrow { color: var(--color-saffron-light); }
.home-contact__trust { color: var(--color-dark-on-dark-muted); font-weight: 600; }
.home-contact__form { min-width: 0; padding: var(--space-8); display: flex; flex-direction: column; align-items: stretch; gap: var(--space-4); color: var(--color-espresso-ink); }
.home-contact__form > * { margin: 0; }
.home-contact__form-heading { max-width: 35rem; display: flex; flex-direction: column; gap: var(--space-2); }
.home-contact__form-heading > * { margin: 0; }
.home-contact__form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.home-field { min-width: 0; }
.home-field .field-error:empty { display: none; }
.home-contact__privacy { max-width: 35rem; color: var(--color-roasted-brown); font-size: var(--text-utility); line-height: var(--leading-utility); }
.home-contact__form button { align-self: flex-start; }
.home-form-status:empty { display: none; }
.home-form-status.field-success { margin: 0; }
.home-disclaimer { padding: var(--space-16) 0 var(--section-space); }
.home-disclaimer__panel { width: min(100%, 45.2rem); margin-inline: auto; padding: var(--space-6); text-align: center; }
.home-disclaimer__panel p { width: min(100%, 38.75rem); margin-inline: auto; }
.home-disclaimer__panel p:last-child { margin-bottom: 0; }
@media (max-width: 67.5rem) {
  .home-hero__panel { grid-column: 7 / span 6; }
  .home-lounge__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-lounge-card--image { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 0; }
  .home-lounge-card__media { height: 100%; min-height: 18rem; }
  .home-lounge-card__body { justify-content: center; }
}
@media (max-width: 61.25rem) {
  .home-formats__grid { grid-template-columns: minmax(0, 1fr); }
  .home-formats__side { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: minmax(0, 1fr); }
  .home-dinner-card { min-height: 32rem; }
}
@media (max-width: 57.5rem) {
  .home-hero { min-height: 42rem; }
  .home-hero__layout { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .home-hero__panel { grid-column: 1 / -1; }
  .home-evening__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .home-evening__intro { grid-column: 1 / -1; }
  .home-evening__steps { grid-column: 1 / span 4; }
  .home-evening__note { grid-column: 5 / span 2; }
  .home-private__grid, .home-contact__grid { grid-template-columns: minmax(0, 1fr); }
  .home-private__copy, .home-contact__intro { max-width: none; }
  .home-gallery__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: auto; }
  .home-gallery__item--large { grid-column: 1 / -1; grid-row: auto; }
  .home-gallery__item--food { grid-column: 1 / span 3; grid-row: auto; }
  .home-gallery__item--lounge { grid-column: 4 / span 3; grid-row: auto; }
  .home-gallery__captions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-gallery__captions span:first-child { grid-column: 1 / -1; }
  .home-faq-preview__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .home-faq-preview__intro { max-width: none; }
}
@media (max-width: 43.75rem) {
  .home-intro__points, .home-formats__side, .home-lounge__grid { grid-template-columns: minmax(0, 1fr); }
  .home-lounge-card--image { grid-column: auto; grid-template-columns: minmax(0, 1fr); }
  .home-lounge-card__media { height: auto; aspect-ratio: 4 / 3; min-height: 0; }
  .home-evening__grid { grid-template-columns: minmax(0, 1fr); }
  .home-evening__intro, .home-evening__steps, .home-evening__note { grid-column: auto; }
  .home-contact__form-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 35rem) {
  .home-hero { min-height: 42.5rem; }
  .home-hero__image { object-position: center center; }
  .home-hero__layout { align-items: end; padding-bottom: var(--space-4); }
  .home-hero__panel { padding: var(--space-6); }
  .home-hero__panel h1 { font-size: 2.375rem; line-height: 1.05; }
  .home-hero__actions { flex-direction: column; }
  .home-hero__actions > * { width: 100%; }
  .home-intro__panel { padding: var(--space-6); }
  .home-intro__copy { text-align: center; }
  .home-intro__points { gap: var(--space-4); }
  .home-dinner-card { min-height: 0; aspect-ratio: 4 / 3; }
  .home-dinner-card__caption { left: var(--space-3); right: var(--space-3); bottom: var(--space-3); width: auto; padding: var(--space-4); }
  .home-dinner-card__caption p { font-size: .92rem; line-height: 1.45; }
  .home-format-card, .home-lounge-card, .home-contact__form { padding: var(--space-6); }
  .home-lounge-card--image { padding: 0; }
  .home-lounge-card__body { padding: var(--space-6); }
  .home-gallery__grid { grid-template-columns: minmax(0, 1fr); }
  .home-gallery__item--large, .home-gallery__item--food, .home-gallery__item--lounge { grid-column: auto; }
  .home-gallery__captions { grid-template-columns: minmax(0, 1fr); }
  .home-gallery__captions span:first-child { grid-column: auto; }
  .home-contact__form button { width: 100%; }
  .home-disclaimer { padding-top: var(--space-12); }
}
@media (prefers-reduced-motion: reduce) { .home-accordion__item button span { transition: none; } }
ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


main[data-tematikus-estek-page] {
  overflow: clip;
}

.tematikus-estek-page {
  --te-grid-gap: 1.5rem;
  --te-section-gap: 7rem;
  --te-copper-line: rgba(212, 122, 79, 0.62);
}

.tematikus-estek-page .te-hero {
  padding-top: 2rem;
  padding-bottom: var(--te-section-gap);
}

.tematikus-estek-page .te-hero-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  min-height: clamp(35rem, 52vw, 42.5rem);
  overflow: hidden;
  border-radius: 1.25rem;
  background: var(--color-smoked-plum);
  box-shadow: var(--shadow-clay);
}

.tematikus-estek-page .te-hero-media,
.tematikus-estek-page .te-hero-media img {
  width: 100%;
  height: 100%;
}

.tematikus-estek-page .te-hero-media {
  position: absolute;
  inset: 0;
  margin: 0;
}

.tematikus-estek-page .te-hero-media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(56, 40, 36, 0.64) 0%, rgba(56, 40, 36, 0.3) 40%, rgba(56, 40, 36, 0.04) 72%);
  content: "";
}

.tematikus-estek-page .te-hero-media img {
  object-fit: cover;
  object-position: left center;
}

.tematikus-estek-page .te-hero-panel {
  z-index: 1;
  display: flex;
  width: min(100% - 4rem, 31.25rem);
  min-width: 0;
  align-self: center;
  flex-direction: column;
  gap: 1.5rem;
  margin-left: clamp(1.5rem, 4vw, 4rem);
  padding: clamp(2rem, 4vw, 3rem);
}

.tematikus-estek-page .te-hero-panel .eyebrow,
.tematikus-estek-page .te-hero-panel h1,
.tematikus-estek-page .te-hero-panel p {
  margin: 0;
}

.tematikus-estek-page .te-hero-panel h1 {
  max-width: 28rem;
  font-size: clamp(2.75rem, 5vw, 4rem);
  overflow-wrap: break-word;
}

.tematikus-estek-page .te-hero-lead {
  max-width: 30rem;
  color: var(--color-espresso-ink);
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.tematikus-estek-page .te-section-head {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1rem;
}

.tematikus-estek-page .te-section-head > * {
  margin: 0;
}

.tematikus-estek-page .te-section-head h2 {
  overflow-wrap: break-word;
}

.tematikus-estek-page .te-theme-section {
  padding-block: var(--te-section-gap);
}

.tematikus-estek-page .te-theme-head {
  width: min(100%, 43.75rem);
}

.tematikus-estek-page .te-theme-head p {
  max-width: 38.75rem;
}

.tematikus-estek-page .te-theme-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  min-width: 0;
  margin-top: 3rem;
  padding: 2rem;
}

.tematikus-estek-page .te-theme-item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0 1.5rem;
}

.tematikus-estek-page .te-theme-item:first-child {
  padding-left: 0;
}

.tematikus-estek-page .te-theme-item:last-child {
  padding-right: 0;
}

.tematikus-estek-page .te-theme-item + .te-theme-item {
  border-left: 1px solid var(--te-copper-line);
}

.tematikus-estek-page .te-theme-item > * {
  margin: 0;
}

.tematikus-estek-page .te-theme-number {
  color: var(--color-paprika-copper);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
}

.tematikus-estek-page .te-theme-item h3 {
  font-size: var(--text-card-heading);
}

.tematikus-estek-page .te-flow-section {
  padding-block: var(--te-section-gap);
  background: rgba(255, 249, 243, 0.38);
}

.tematikus-estek-page .te-flow-grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 4fr);
  gap: calc(var(--te-grid-gap) * 2);
  align-items: start;
  min-width: 0;
}

.tematikus-estek-page .te-flow-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2rem;
}

.tematikus-estek-page .te-flow-copy > * {
  margin: 0;
}

.tematikus-estek-page .te-flow-copy .te-section-head {
  max-width: 37.5rem;
}

.tematikus-estek-page .te-timeline {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1.5rem;
}

.tematikus-estek-page .te-timeline-item {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.5rem;
  padding-left: 2rem;
}

.tematikus-estek-page .te-timeline-item::before {
  position: absolute;
  top: 0.4rem;
  bottom: -1.5rem;
  left: 0.35rem;
  width: 2px;
  background: var(--te-copper-line);
  content: "";
}

.tematikus-estek-page .te-timeline-item::after {
  position: absolute;
  top: 0.18rem;
  left: 0;
  width: 0.75rem;
  height: 0.75rem;
  border: 2px solid var(--color-paprika-ember);
  border-radius: 50%;
  background: var(--color-cream-highlight);
  content: "";
}

.tematikus-estek-page .te-timeline-item:last-child::before {
  display: none;
}

.tematikus-estek-page .te-timeline-item > * {
  max-width: 35rem;
  margin: 0;
}

.tematikus-estek-page .te-timeline-item h3 {
  font-size: var(--text-card-heading);
}

.tematikus-estek-page .te-timeline-link {
  display: inline-flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-paprika-ember);
  font-weight: 650;
}

.tematikus-estek-page .te-flow-media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 5;
  margin: 0;
}

.tematikus-estek-page .te-flow-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.tematikus-estek-page .te-choice-section {
  padding-block: var(--te-section-gap);
}

.tematikus-estek-page .te-choice-head {
  width: min(100%, 43.75rem);
}

.tematikus-estek-page .te-choice-head p {
  max-width: 40rem;
}

.tematikus-estek-page .te-choice-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr);
  gap: var(--te-grid-gap);
  align-items: stretch;
  min-width: 0;
  margin-top: 3rem;
}

.tematikus-estek-page .te-choice-card {
  display: flex;
  min-width: 0;
  min-height: 22rem;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
  padding: 2rem;
}

.tematikus-estek-page .te-choice-card > * {
  margin: 0;
}

.tematikus-estek-page .te-choice-card h3 {
  margin-bottom: 1rem;
  font-size: var(--text-card-heading);
}

.tematikus-estek-page .te-choice-card p {
  max-width: 27rem;
}

.tematikus-estek-page .te-choice-card--private {
  border-top: 4px solid var(--color-paprika-copper);
  transform: translateY(-1.5rem);
}

.tematikus-estek-page .te-choice-card--lounge {
  align-self: end;
  min-height: 18rem;
}

.tematikus-estek-page .te-choice-card--lounge a {
  color: var(--color-cream-highlight);
}

.tematikus-estek-page .te-choice-link {
  display: inline-flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  font-weight: 650;
}

.tematikus-estek-page .te-lounge-section {
  padding-block: var(--te-section-gap);
  background: rgba(255, 249, 243, 0.46);
}

.tematikus-estek-page .te-lounge-grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
  gap: calc(var(--te-grid-gap) * 2);
  align-items: center;
  min-width: 0;
}

.tematikus-estek-page .te-lounge-media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 3 / 2;
  margin: 0;
}

.tematikus-estek-page .te-lounge-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.tematikus-estek-page .te-lounge-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1.5rem;
}

.tematikus-estek-page .te-lounge-copy > * {
  margin: 0;
}

.tematikus-estek-page .te-lounge-copy p {
  max-width: 32.5rem;
}

.tematikus-estek-page .te-lounge-statement {
  max-width: 26.25rem;
  padding-left: 1.5rem;
  border-left: 3px solid var(--color-paprika-copper);
  color: var(--color-roasted-brown);
  font-family: var(--font-heading);
  font-size: var(--text-lead);
  font-weight: 600;
  line-height: 1.35;
}

.tematikus-estek-page .te-group-section {
  padding-block: var(--te-section-gap);
}

.tematikus-estek-page .te-group-grid {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(20rem, 4fr);
  gap: calc(var(--te-grid-gap) * 2);
  align-items: center;
  min-width: 0;
}

.tematikus-estek-page .te-group-info {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1.5rem;
}

.tematikus-estek-page .te-group-info > * {
  margin: 0;
}

.tematikus-estek-page .te-group-info > p {
  max-width: 42.5rem;
}

.tematikus-estek-page .te-signal-list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0;
}

.tematikus-estek-page .te-signal-list li {
  position: relative;
  max-width: 42.5rem;
  padding-left: 1.25rem;
}

.tematikus-estek-page .te-signal-list li::before {
  position: absolute;
  top: 0.68rem;
  left: 0;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: var(--color-paprika-copper);
  content: "";
}

.tematikus-estek-page .te-group-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1.25rem;
  padding: 2rem;
}

.tematikus-estek-page .te-group-panel > * {
  margin: 0;
}

.tematikus-estek-page .te-group-panel p {
  max-width: 23.75rem;
}

.tematikus-estek-page .te-group-panel a {
  display: inline-flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  font-weight: 650;
}

.tematikus-estek-page .te-materials-section {
  padding-block: var(--te-section-gap);
  background: rgba(255, 249, 243, 0.4);
}

.tematikus-estek-page .te-materials-head {
  width: min(100%, 32.5rem);
  margin-inline: auto;
  text-align: center;
}

.tematikus-estek-page .te-materials-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--te-grid-gap);
  align-items: start;
  min-width: 0;
  margin-top: 3rem;
}

.tematikus-estek-page .te-material-tile {
  display: flex;
  min-width: 0;
  min-height: 15.5rem;
  flex-direction: column;
  gap: 0.75rem;
  padding: 2rem;
}

.tematikus-estek-page .te-material-tile:nth-child(2) {
  margin-top: 1.5rem;
}

.tematikus-estek-page .te-material-tile > * {
  max-width: 17.5rem;
  margin: 0;
}

.tematikus-estek-page .te-material-tile h3 {
  font-size: var(--text-card-heading);
}

.tematikus-estek-page .te-material-number {
  color: var(--color-paprika-copper);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.11em;
}

.tematikus-estek-page .te-material-tile--dark .te-material-number {
  color: var(--color-saffron-light);
}

.tematikus-estek-page .te-faq-section {
  padding-block: var(--te-section-gap);
}

.tematikus-estek-page .te-faq-head {
  width: min(100%, 43.75rem);
}

.tematikus-estek-page .te-faq-head p {
  max-width: 38.75rem;
}

.tematikus-estek-page .te-faq-list {
  display: flex;
  width: min(100%, 51.25rem);
  min-width: 0;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 3rem;
}

.tematikus-estek-page .te-faq-item {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 0.875rem;
  background: var(--color-cream-highlight);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), var(--shadow-soft);
}

.tematikus-estek-page .te-faq-trigger {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 3.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--color-espresso-ink);
  font-size: 1rem;
  font-weight: 650;
  text-align: left;
}

.tematikus-estek-page .te-faq-trigger:hover {
  background: rgba(212, 122, 79, 0.08);
  color: var(--color-espresso-ink);
  transform: none;
}

.tematikus-estek-page .te-faq-trigger::after {
  flex: 0 0 auto;
  color: var(--color-paprika-ember);
  font-size: 1.4rem;
  line-height: 1;
  content: "+";
  transition: transform var(--transition-ui);
}

.tematikus-estek-page .te-faq-trigger[aria-expanded="true"]::after {
  transform: rotate(45deg);
}

.tematikus-estek-page .te-faq-answer {
  padding: 0 1.25rem 1.25rem;
}

.tematikus-estek-page .te-faq-answer p {
  max-width: 45rem;
  margin: 0;
}

.tematikus-estek-page .te-offline-section {
  padding-block: var(--te-section-gap);
}

.tematikus-estek-page .te-offline-band {
  padding: clamp(2rem, 5vw, 4rem);
  text-align: center;
}

.tematikus-estek-page .te-offline-copy {
  width: min(100%, 47.5rem);
  margin-inline: auto;
}

.tematikus-estek-page .te-offline-copy > * {
  margin: 0;
}

.tematikus-estek-page .te-offline-copy p:first-child {
  color: var(--color-cream-highlight);
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.tematikus-estek-page .te-offline-copy hr {
  margin: 1.5rem 0;
  background: rgba(255, 249, 243, 0.2);
}

.tematikus-estek-page .te-offline-copy small {
  color: var(--color-dark-on-dark-muted);
}

.tematikus-estek-page .te-cta-section {
  padding-top: 0;
  padding-bottom: var(--te-section-gap);
}

.tematikus-estek-page .te-cta-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding: clamp(2rem, 6vw, 5rem) clamp(1.5rem, 5vw, 4rem);
  text-align: center;
}

.tematikus-estek-page .te-cta-panel > * {
  margin: 0;
}

.tematikus-estek-page .te-cta-panel h2 {
  max-width: 43.75rem;
}

.tematikus-estek-page .te-cta-panel > p {
  max-width: 42.5rem;
}

.tematikus-estek-page .te-cta-actions {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.tematikus-estek-page .te-cta-actions .button-link {
  min-height: 2.75rem;
  align-items: center;
}

@media (max-width: 63.75rem) {
  .tematikus-estek-page {
    --te-section-gap: 5rem;
  }

  .tematikus-estek-page .te-hero-shell {
    min-height: auto;
    overflow: visible;
    background: transparent;
    box-shadow: none;
  }

  .tematikus-estek-page .te-hero-media {
    position: relative;
    min-height: 28rem;
    overflow: hidden;
    border-radius: 1.25rem;
  }

  .tematikus-estek-page .te-hero-media::after {
    background: linear-gradient(180deg, rgba(56, 40, 36, 0.04), rgba(56, 40, 36, 0.3));
  }

  .tematikus-estek-page .te-hero-panel {
    width: min(100% - 3rem, 45rem);
    margin: -4rem auto 0;
  }

  .tematikus-estek-page .te-choice-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tematikus-estek-page .te-choice-card--private {
    transform: none;
  }

  .tematikus-estek-page .te-choice-card--lounge {
    grid-column: 1 / -1;
    min-height: 15rem;
  }
}

@media (max-width: 58.75rem) {
  .tematikus-estek-page .te-flow-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }

  .tematikus-estek-page .te-flow-media {
    grid-row: 1;
    aspect-ratio: 3 / 2;
  }

  .tematikus-estek-page .te-flow-copy {
    grid-row: 2;
  }

  .tematikus-estek-page .te-lounge-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }

  .tematikus-estek-page .te-lounge-media {
    aspect-ratio: 16 / 10;
  }

  .tematikus-estek-page .te-group-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }

  .tematikus-estek-page .te-group-panel {
    width: min(100%, 40rem);
  }

  .tematikus-estek-page .te-faq-list {
    width: 100%;
  }
}

@media (max-width: 55rem) {
  .tematikus-estek-page .te-theme-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }

  .tematikus-estek-page .te-theme-item,
  .tematikus-estek-page .te-theme-item:first-child,
  .tematikus-estek-page .te-theme-item:last-child {
    padding: 0;
  }

  .tematikus-estek-page .te-theme-item + .te-theme-item {
    padding-top: 1.5rem;
    border-top: 1px solid var(--te-copper-line);
    border-left: 0;
  }
}

@media (max-width: 48.75rem) {
  .tematikus-estek-page .te-materials-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tematikus-estek-page .te-material-tile:nth-child(2) {
    margin-top: 0;
  }

  .tematikus-estek-page .te-material-tile:nth-child(3) {
    grid-column: 1 / -1;
    width: min(100%, calc((100% - 1.5rem) / 2));
  }
}

@media (max-width: 43.75rem) {
  .tematikus-estek-page .te-choice-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .tematikus-estek-page .te-choice-card--lounge {
    grid-column: auto;
  }
}

@media (max-width: 40rem) {
  .tematikus-estek-page {
    --te-section-gap: 3.5rem;
  }

  .tematikus-estek-page .te-hero {
    padding-top: 0;
  }

  .tematikus-estek-page .te-hero-shell {
    width: 100%;
  }

  .tematikus-estek-page .te-hero-media {
    min-height: clamp(18.75rem, 82vw, 22.5rem);
    border-radius: 0;
  }

  .tematikus-estek-page .te-hero-media img {
    object-position: center center;
  }

  .tematikus-estek-page .te-hero-panel {
    width: calc(100% - 2.5rem);
    gap: 1.25rem;
    margin-top: -2rem;
    padding: 1.5rem;
  }

  .tematikus-estek-page .te-hero-panel h1 {
    font-size: 2.375rem;
    line-height: 1.05;
  }

  .tematikus-estek-page .te-hero-panel .button {
    width: 100%;
  }

  .tematikus-estek-page .te-theme-panel,
  .tematikus-estek-page .te-choice-card,
  .tematikus-estek-page .te-group-panel,
  .tematikus-estek-page .te-material-tile {
    padding: 1.5rem;
  }

  .tematikus-estek-page .te-choice-card {
    min-height: 0;
  }

  .tematikus-estek-page .te-timeline-item {
    padding-left: 1.5rem;
  }

  .tematikus-estek-page .te-materials-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .tematikus-estek-page .te-material-tile:nth-child(3) {
    grid-column: auto;
    width: 100%;
  }

  .tematikus-estek-page .te-offline-band {
    padding: 1.5rem;
    text-align: left;
  }

  .tematikus-estek-page .te-offline-copy {
    width: 100%;
  }

  .tematikus-estek-page .te-cta-panel {
    align-items: stretch;
    text-align: center;
  }

  .tematikus-estek-page .te-cta-actions {
    flex-direction: column;
  }

  .tematikus-estek-page .te-cta-actions .button,
  .tematikus-estek-page .te-cta-actions .button-link {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tematikus-estek-page .te-choice-card--private,
  .tematikus-estek-page .te-faq-trigger::after {
    transform: none;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }


main.thank-you-page {
  display: grid;
  min-height: calc(100vh - 10rem);
  place-items: center;
  padding-block: clamp(4rem, 10vw, 7rem);
}

.thank-you-page__section {
  width: 100%;
  padding-block: 0;
}

.thank-you-page__panel {
  position: relative;
  overflow: hidden;
  padding: clamp(2rem, 5vw, 4rem);
  text-align: center;
}

.thank-you-page__panel::before {
  position: absolute;
  top: -7rem;
  left: 50%;
  width: 16rem;
  height: 16rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232, 182, 106, 0.34) 0%, rgba(232, 182, 106, 0) 70%);
  content: "";
  pointer-events: none;
  transform: translateX(-50%);
}

.thank-you-page__content {
  position: relative;
  display: flex;
  max-width: 43rem;
  margin-inline: auto;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
}

.thank-you-page__content > * {
  margin: 0;
}

.thank-you-page__status-mark {
  display: grid;
  width: 4rem;
  height: 4rem;
  place-items: center;
  border: 1px solid rgba(85, 112, 91, 0.28);
  border-radius: 50%;
  background: rgba(85, 112, 91, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  color: var(--color-success-sage);
}

.thank-you-page__status-mark svg {
  width: 2rem;
  height: 2rem;
}

.thank-you-page__eyebrow {
  color: var(--color-success-sage);
}

.thank-you-page__title {
  max-width: 36rem;
  margin-inline: auto;
}

.thank-you-page__lead {
  max-width: 41rem;
  margin-inline: auto;
  color: var(--color-roasted-brown);
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
  text-align: center;
}

.thank-you-page__next-step {
  width: 100%;
  max-width: 39rem;
  margin-inline: auto;
  padding: var(--space-6);
  border: 1px solid rgba(185, 71, 47, 0.16);
  border-radius: var(--radius-lg);
  background: rgba(255, 249, 243, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.thank-you-page__next-step p {
  max-width: 34rem;
  margin-inline: auto;
  color: var(--color-roasted-brown);
  text-align: center;
}

.thank-you-page__next-step p:last-child {
  margin-bottom: 0;
}

.thank-you-page__next-step strong {
  color: var(--color-espresso-ink);
}

.thank-you-page__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-3);
}

.thank-you-page__actions .button {
  min-width: 11.5rem;
}

@media (max-width: 40rem) {
  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__content {
    gap: var(--space-4);
  }

  .thank-you-page__next-step {
    padding: var(--space-4);
  }

  .thank-you-page__actions {
    width: 100%;
    flex-direction: column;
  }

  .thank-you-page__actions .button {
    width: 100%;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }
