.kontakt-page { overflow: hidden; }
.kontakt-page * { min-width: 0; overflow-wrap: anywhere; }
.kontakt-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: center; }
.kontakt-hero__copy { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); max-width: 560px; }
.kontakt-hero__copy > * { margin: 0; }
.kontakt-hero__copy .lead { max-width: 52ch; }
.kontakt-hero__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.kontakt-hero__actions p { max-width: 45ch; margin: 0; }
.kontakt-hero__figure { grid-column: 7 / span 6; position: relative; width: 100%; margin: 0; }
.kontakt-hero__image { aspect-ratio: 3 / 2; width: 100%; }
.kontakt-hero__caption { position: absolute; bottom: -16px; left: var(--space-4); margin: 0; padding: var(--space-2); border: var(--stroke) solid var(--color-ink); background: var(--color-lime); }
.kontakt-topics__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.kontakt-topics__intro { grid-column: 1 / span 4; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.kontakt-topics__intro > * { margin: 0; }
.kontakt-topics__intro .lead { max-width: 55ch; }
.kontakt-topics__cards { grid-column: 5 / span 8; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-5); }
.kontakt-topic-card { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: var(--stroke) solid var(--color-ink); box-shadow: var(--shadow); }
.kontakt-topic-card > * { margin: 0; }
.kontakt-topic-card p { max-width: 65ch; }
.kontakt-topic-card--restaurant { grid-column: 1 / span 4; background: var(--color-paper); }
.kontakt-topic-card--private { grid-column: 5 / span 4; margin-top: var(--space-6); background: var(--color-wash); }
.kontakt-topic-card--poker { grid-column: 2 / span 5; background: var(--color-cyan); }
.kontakt-topic-card__number { font-family: var(--font-mono); font-size: 1rem; font-weight: 700; letter-spacing: var(--tracking-label); }
.kontakt-offline__band { background: var(--color-ink); color: var(--color-paper); }
.kontakt-offline__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.kontakt-offline__panel { grid-column: 1 / span 7; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-block: var(--space-7); }
.kontakt-offline__panel > * { margin: 0; }
.kontakt-offline__panel h2 { color: var(--color-paper); max-width: 16ch; }
.kontakt-offline__panel > p { max-width: 60ch; }
.kontakt-offline__rule { display: flex; flex-direction: column; gap: var(--space-3); width: 100%; padding-top: var(--space-4); border-top: var(--stroke) solid var(--color-paper); }
.kontakt-offline__rule > * { margin: 0; }
.kontakt-offline__rule span { font-family: var(--font-mono); font-size: var(--text-label); font-weight: 700; letter-spacing: var(--tracking-label); }
.kontakt-offline__rule p { max-width: 60ch; }
.kontakt-offline__age { width: 100%; max-width: 60ch; padding: var(--space-3); background: var(--color-lime); color: var(--color-ink); }
.kontakt-form-layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.kontakt-form-intro { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.kontakt-form-intro > * { margin: 0; }
.kontakt-form-intro .lead { max-width: 55ch; }
.kontakt-form-intro > p:last-child { max-width: 55ch; }
.kontakt-form { grid-column: 6 / span 7; margin-top: var(--space-5); display: flex; flex-direction: column; gap: var(--space-5); }
.kontakt-form fieldset { margin: 0; }
.kontakt-form__topics { display: flex; flex-direction: column; gap: var(--space-3); }
.kontakt-form__topics legend { margin-bottom: var(--space-3); }
.kontakt-form__help { margin: 0; }
.kontakt-form__topic-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.kontakt-radio-option { display: flex; min-height: 74px; align-items: flex-start; gap: var(--space-2); margin: 0; padding: var(--space-3); border: var(--stroke) solid var(--color-ink); background: var(--color-paper); }
.kontakt-radio-option:has(input:checked) { background: var(--color-cyan); }
.kontakt-radio-option span { display: flex; flex-direction: column; gap: var(--space-1); }
.kontakt-radio-option small { font-weight: 500; }
.kontakt-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--space-4); }
.kontakt-form .form-field { margin: 0; }
.kontakt-form .form-field small { color: var(--color-muted-ink); }
.kontakt-form input:not([type="checkbox"]):not([type="radio"]), .kontakt-form textarea { background: var(--color-wash); }
.kontakt-poker-confirmation { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: var(--stroke) solid var(--color-ink); background: var(--color-lime); }
.kontakt-poker-confirmation > * { margin: 0; }
.kontakt-check-option { display: flex; align-items: flex-start; gap: var(--space-3); margin: 0; }
.kontakt-check-option span { flex: 1 1 auto; }
.kontakt-form__consent { display: flex; flex-direction: column; gap: var(--space-2); }
.kontakt-form__consent > * { margin: 0; }
.kontakt-form__submit { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.kontakt-form__submit > * { margin: 0; }
.kontakt-form__submit p { max-width: 65ch; }
.kontakt-form__status { padding: var(--space-4); border: var(--stroke) solid var(--color-ink); background: var(--color-lime); font-weight: 700; }
.kontakt-next__container { display: flex; flex-direction: column; align-items: stretch; gap: var(--space-6); }
.kontakt-next__intro { width: min(100%, 720px); margin-inline: auto; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.kontakt-next__intro > * { margin: 0; }
.kontakt-next__intro .lead { max-width: 60ch; }
.kontakt-next__paths { width: 83.333%; margin-inline: auto; border-top: var(--stroke) solid var(--color-ink); }
.kontakt-next__path { display: grid; grid-template-columns: minmax(0, 30%) minmax(0, 70%); gap: var(--space-5); padding-block: var(--space-5); border-bottom: var(--stroke) solid var(--color-ink); }
.kontakt-next__path > * { margin: 0; }
.kontakt-next__path h3 { font-family: var(--font-mono); font-size: var(--text-label); letter-spacing: var(--tracking-label); text-transform: uppercase; }
.kontakt-next__path p { max-width: 70ch; }
.kontakt-next__notice { width: min(100%, 720px); margin-inline: auto; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-4); border: var(--stroke) solid var(--color-ink); background: var(--color-wash); }
.kontakt-next__notice > * { margin: 0; }
.kontakt-next__notice p { max-width: 65ch; }
.kontakt-faq__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.kontakt-faq__intro { grid-column: 1 / span 4; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.kontakt-faq__intro > * { margin: 0; }
.kontakt-faq__intro .lead { max-width: 50ch; }
.kontakt-faq__accordion { grid-column: 6 / span 7; display: flex; flex-direction: column; align-items: stretch; }
.kontakt-faq__accordion details { border-top: var(--stroke) solid var(--color-ink); }
.kontakt-faq__accordion details:last-of-type { border-bottom: var(--stroke) solid var(--color-ink); }
.kontakt-faq__accordion summary { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-4) 0; font-family: var(--font-heading); font-size: var(--text-h3); font-weight: 700; line-height: 1.05; list-style: none; }
.kontakt-faq__accordion summary::-webkit-details-marker { display: none; }
.kontakt-faq__accordion details[open] summary span { transform: rotate(45deg); }
.kontakt-faq__accordion summary span { flex: 0 0 auto; font-family: var(--font-mono); }
.kontakt-faq__accordion details > div { padding: 0 var(--space-4) var(--space-4); }
.kontakt-faq__accordion details p { max-width: 65ch; margin: 0; }
.kontakt-faq__link { width: fit-content; margin-top: var(--space-5); font-weight: 700; }
.kontakt-closing__panel { width: 83.333%; margin-inline: auto; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-7); border: var(--stroke) solid var(--color-ink); background: var(--color-cyan); box-shadow: var(--shadow); }
.kontakt-closing__panel > * { margin: 0; }
.kontakt-closing__panel h2 { max-width: 15ch; }
.kontakt-closing__panel p { max-width: 60ch; }
.kontakt-closing__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.kontakt-closing__actions > * { min-width: 0; }

@media (max-width: 1039px) {
  .kontakt-hero__grid, .kontakt-topics__grid, .kontakt-offline__grid, .kontakt-form-layout, .kontakt-faq__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .kontakt-hero__copy { grid-column: 1 / span 4; }
  .kontakt-hero__figure { grid-column: 5 / span 4; }
  .kontakt-topics__intro { grid-column: 1 / -1; }
  .kontakt-topics__cards { grid-column: 1 / -1; }
  .kontakt-offline__panel { grid-column: 1 / span 7; }
  .kontakt-form-intro { grid-column: 1 / -1; }
  .kontakt-form { grid-column: 1 / -1; margin-top: 0; }
  .kontakt-faq__intro { grid-column: 1 / -1; }
  .kontakt-faq__accordion { grid-column: 1 / -1; }
}
@media (max-width: 899px) {
  .kontakt-hero__grid { grid-template-columns: 1fr; }
  .kontakt-hero__copy, .kontakt-hero__figure { grid-column: 1; max-width: none; }
  .kontakt-hero__copy { order: 1; }
  .kontakt-hero__figure { order: 2; }
  .kontakt-hero__caption { position: static; width: fit-content; margin-top: var(--space-2); }
  .kontakt-topics__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kontakt-topic-card--restaurant, .kontakt-topic-card--private, .kontakt-topic-card--poker { grid-column: auto; margin-top: 0; }
  .kontakt-topic-card--poker { grid-column: 1 / -1; }
  .kontakt-offline__band { padding-inline: 0; }
  .kontakt-offline__panel { grid-column: 1 / -1; padding: var(--space-6) 0; }
  .kontakt-offline__space { display: none; }
  .kontakt-form__fields { grid-template-columns: 1fr; gap: var(--space-4); }
  .kontakt-next__paths { width: 100%; }
  .kontakt-next__path { grid-template-columns: 1fr; gap: var(--space-3); }
  .kontakt-closing__panel { width: 100%; }
}
@media (max-width: 767px) {
  .kontakt-hero__copy .display { font-size: clamp(2.75rem, 13vw, 4rem); }
  .kontakt-hero__actions { width: 100%; }
  .kontakt-hero__actions .button { width: 100%; }
  .kontakt-hero__image { aspect-ratio: 4 / 3; }
  .kontakt-topics__cards { grid-template-columns: 1fr; }
  .kontakt-topic-card--poker { grid-column: auto; }
  .kontakt-topic-card { padding: var(--space-5); box-shadow: var(--shadow-compact); }
  .kontakt-offline__panel { padding-block: var(--space-6); }
  .kontakt-offline__panel h2 { max-width: none; }
  .kontakt-form { padding: var(--space-5); }
  .kontakt-form__topic-options { grid-template-columns: 1fr; }
  .kontakt-radio-option { min-height: 56px; }
  .kontakt-next__path { padding-block: var(--space-4); }
  .kontakt-next__notice { width: 100%; }
  .kontakt-faq__accordion summary { font-size: clamp(1.2rem, 6vw, 1.6rem); }
  .kontakt-closing__panel { padding: var(--space-5); box-shadow: var(--shadow-compact); }
  .kontakt-closing__panel h2 { max-width: none; }
  .kontakt-closing__actions { width: 100%; flex-direction: column; }
  .kontakt-closing__actions .button { width: 100%; }
}
