.kontakt-page { overflow: hidden; }
.kontakt-page .container { width: min(calc(100% - 96px), 1440px); }
.kontakt-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 24px; align-items: center; }
.kontakt-hero__intro, .kontakt-hero__copy, .kontakt-hero__media { min-width: 0; }
.kontakt-hero__intro { grid-column: 1; grid-row: 1; }
.kontakt-hero__intro h1 { font-size: clamp(3.375rem, 6.2vw, 5.125rem); max-width: 10ch; margin-bottom: 0; }
.kontakt-hero__copy { grid-column: 1; grid-row: 2; max-width: 46ch; }
.kontakt-hero__media { grid-column: 2; grid-row: 1 / span 2; position: relative; width: 100%; margin: 0; align-self: stretch; overflow: visible; }
.kontakt-hero__media img { width: 100%; min-width: 0; height: 100%; min-height: 520px; object-fit: cover; border-radius: var(--radius-lg); transition: transform var(--transition-base); }
.kontakt-hero__media:hover img { transform: scale(1.025); }
.kontakt-hero__note { position: absolute; right: 24px; bottom: -32px; width: min(230px, calc(100% - 48px)); margin: 0; padding: 16px; border: var(--border-subtle); border-radius: var(--radius-xs); background: var(--surface-raised); box-shadow: var(--shadow-card); font-size: var(--text-meta); line-height: var(--leading-meta); transition: transform var(--transition-fast); }
.kontakt-hero__media:hover .kontakt-hero__note { transform: translateY(-2px); }
.kontakt-hero__actions { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 16px; }
.kontakt-hero__actions > * { min-width: 0; }
.kontakt-hero__actions p { flex: 1 1 180px; margin: 0; color: var(--color-slate-muted); font-size: var(--text-meta); line-height: var(--leading-meta); }
.kontakt-steps { background: linear-gradient(110deg, rgba(216,196,166,.52), rgba(245,242,234,.4)); }
.kontakt-steps__intro { width: 41.666%; min-width: 0; max-width: 52ch; }
.kontakt-steps__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin-top: 48px; }
.kontakt-step { min-width: 0; padding: 24px; border: var(--border-subtle); border-radius: var(--radius-md); background: var(--surface-raised); transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.kontakt-step:hover { transform: translateY(-3px); box-shadow: var(--shadow-card); }
.kontakt-step--two, .kontakt-step--four { margin-top: 32px; }
.kontakt-step--four { border-bottom: 3px solid var(--color-aquamarine); }
.kontakt-step__number { margin: 0 0 24px; color: var(--color-saffron); font-size: 1.5rem; font-weight: 650; line-height: 1; }
.kontakt-step h3 { margin-bottom: 16px; }
.kontakt-step p:last-child { margin-bottom: 0; }
.kontakt-request__intro { width: 50%; min-width: 0; max-width: 58ch; }
.kontakt-request__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: 24px; margin-top: 48px; }
.kontakt-request__card { min-width: 0; padding: 24px; border-radius: var(--radius-md); }
.kontakt-request__card--occasion { border: var(--border-subtle); background: var(--surface-raised); }
.kontakt-request__card--place { border: var(--border-subtle); background: var(--color-stone); background-image: linear-gradient(90deg, transparent 49%, rgba(39,50,53,.16) 50%, transparent 51%), linear-gradient(transparent 49%, rgba(39,50,53,.16) 50%, transparent 51%); background-size: 48px 48px; }
.kontakt-request__card--mood { border: var(--border-dark); }
.kontakt-request__card--mood a { color: var(--color-saffron); }
.kontakt-request__card h3 { margin-bottom: 16px; }
.kontakt-request__card p:last-child { margin-bottom: 0; }
.kontakt-direct__intro { width: 41.666%; min-width: 0; max-width: 48ch; }
.kontakt-direct__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 48px; position: relative; }
.kontakt-direct__grid::before { content: ""; position: absolute; top: 32px; left: 8%; right: 8%; height: 1px; background: var(--color-aquamarine); z-index: 0; }
.kontakt-contact-card { position: relative; z-index: 1; min-width: 0; padding: 24px; border: var(--border-subtle); border-radius: var(--radius-md); background: var(--surface-raised); }
.kontakt-contact-card h3 { margin-bottom: 16px; }
.kontakt-contact-card__action { display: inline-flex; min-height: 44px; max-width: 100%; align-items: center; overflow-wrap: anywhere; color: var(--color-aquamarine-deep); font-size: clamp(1.05rem, 1.7vw, 1.35rem); font-weight: 650; }
.kontakt-contact-card__address { color: var(--color-slate); font-size: clamp(1.05rem, 1.7vw, 1.35rem); font-weight: 650; line-height: 1.35; }
.kontakt-contact-card p:last-child { margin-bottom: 0; }
.kontakt-casino__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px; align-items: start; }
.kontakt-casino__heading { grid-column: 1 / -1; width: 41.666%; min-width: 0; max-width: 48ch; }
.kontakt-casino__media { grid-column: 1; min-width: 0; margin: 0; overflow: hidden; }
.kontakt-casino__media img { width: 100%; min-width: 0; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-lg); transition: transform var(--transition-base); }
.kontakt-casino__media:hover img { transform: scale(1.025); }
.kontakt-casino__content { grid-column: 2; min-width: 0; max-width: 48ch; }
.kontakt-casino__callout { margin-bottom: 24px; padding: 16px; border-left: 3px solid var(--color-aquamarine); background: rgba(21,154,145,.09); color: var(--color-aquamarine-deep); font-weight: 650; }
.kontakt-format-notes { display: flex; min-width: 0; flex-direction: column; gap: 16px; }
.kontakt-format-notes > article { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 16px; min-width: 0; padding-top: 16px; border-top: var(--border-subtle); }
.kontakt-format-notes h3 { margin-bottom: 8px; font-size: 1.5rem; }
.kontakt-format-notes p { margin-bottom: 0; }
.kontakt-format-icon { display: block; width: 40px; height: 40px; border: 2px solid var(--color-slate); }
.kontakt-format-icon--poker, .kontakt-format-icon--blackjack { border-radius: 4px 4px 18px 18px; background: linear-gradient(90deg, transparent 48%, var(--color-aquamarine) 49%, var(--color-aquamarine) 51%, transparent 52%); }
.kontakt-format-icon--roulette { border-radius: 50%; border-color: var(--color-saffron); background: radial-gradient(circle, transparent 28%, var(--color-slate) 30%, var(--color-slate) 33%, transparent 35%); }
.kontakt-briefing-note { background: rgba(217,214,204,.4); }
.kontakt-briefing-note__intro { width: 50%; min-width: 0; max-width: 52ch; }
.kontakt-briefing-note__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
.kontakt-briefing-note__grid > article { min-width: 0; padding: 24px; }
.kontakt-briefing-note__grid > article:first-child { border-top: 3px solid var(--color-saffron); background: var(--surface-raised); }
.kontakt-briefing-note__grid > article:last-child { background: var(--color-pale-oak); }
.kontakt-briefing-note__grid h3 { margin-bottom: 16px; }
.kontakt-briefing-note__grid p:last-child { margin-bottom: 0; }
.kontakt-form-shell { width: 83.333%; min-width: 0; margin-inline: auto; padding: 48px; border: var(--border-subtle); border-radius: var(--radius-lg); background: var(--surface-raised); background-image: linear-gradient(rgba(199,203,197,.24) 1px, transparent 1px), linear-gradient(90deg, rgba(199,203,197,.24) 1px, transparent 1px); background-size: 48px 48px; }
.kontakt-form-shell__intro { max-width: 52ch; }
.kontakt-form fieldset { margin: 32px 0 0; background: rgba(252,250,245,.88); }
.kontakt-form__contact-grid, .kontakt-form__event-grid { display: grid; gap: 16px; }
.kontakt-form__contact-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); }
.kontakt-form__event-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr); }
.kontakt-field { min-width: 0; }
.kontakt-field input, .kontakt-field select { min-height: 48px; }
.kontakt-field__help, .kontakt-field__error { margin: 8px 0 0; font-size: var(--text-meta); line-height: var(--leading-meta); }
.kontakt-field__help { color: var(--color-slate-muted); }
.kontakt-field__error { display: none; color: var(--color-raspberry-deep); font-weight: 650; }
.kontakt-field__error.is-visible { display: block; }
.kontakt-field input[aria-invalid="true"], .kontakt-field select[aria-invalid="true"], .kontakt-field textarea[aria-invalid="true"] { border-color: var(--color-raspberry); box-shadow: 0 0 0 3px rgba(184,50,91,.15); }
.kontakt-form__submit { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 24px; }
.kontakt-form__submit > * { min-width: 0; }
.kontakt-form__submit p { margin: 0; }
.kontakt-form__status { max-width: 600px; font-weight: 650; }
.kontakt-form__status.is-error { color: var(--color-raspberry-deep); }
.kontakt-form__status.is-success { color: var(--color-aquamarine-deep); }
.kontakt-close__card { width: 66.666%; min-width: 0; margin-inline: auto; padding: 48px; border-radius: var(--radius-lg); border-top: 3px solid var(--color-aquamarine); }
.kontakt-close__card h2, .kontakt-close__card p { max-width: 58ch; }
.kontakt-close__card p { margin-bottom: 0; }
.kontakt-close__card a { color: var(--color-aquamarine); font-weight: 650; }
@media (max-width: 1099px) { .kontakt-hero__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kontakt-hero__media img { min-height: 440px; } .kontakt-steps__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kontakt-step--three { margin-top: 0; } }
@media (max-width: 1019px) { .kontakt-direct__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kontakt-contact-card:nth-child(3) { grid-column: 1 / -1; } .kontakt-direct__grid::before { display: none; } }
@media (max-width: 979px) { .kontakt-request__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); } .kontakt-request__card--mood { grid-column: 1 / -1; } }
@media (max-width: 899px) { .kontakt-hero__grid { grid-template-columns: 1fr; } .kontakt-hero__intro, .kontakt-hero__copy, .kontakt-hero__media { grid-column: 1; } .kontakt-hero__intro { grid-row: 1; } .kontakt-hero__media { grid-row: 2; } .kontakt-hero__copy { grid-row: 3; } .kontakt-hero__media img { min-height: 0; aspect-ratio: 4 / 3; } .kontakt-hero__note { position: static; width: min(360px, 100%); margin-top: 12px; } .kontakt-briefing-note__grid { grid-template-columns: 1fr; } .kontakt-form-shell { width: 100%; } }
@media (max-width: 819px) { .kontakt-casino__grid { grid-template-columns: 1fr; } .kontakt-casino__heading, .kontakt-casino__media, .kontakt-casino__content { grid-column: 1; width: 100%; max-width: none; } .kontakt-casino__heading { grid-row: 1; } .kontakt-casino__media { grid-row: 2; } .kontakt-casino__content { grid-row: 3; } }
@media (max-width: 719px) { .kontakt-page .container { width: min(calc(100% - 40px), 1440px); } .kontakt-hero__intro h1 { font-size: clamp(2.625rem, 11vw, 3.625rem); } .kontakt-steps__intro, .kontakt-request__intro, .kontakt-direct__intro, .kontakt-casino__heading, .kontakt-briefing-note__intro { width: 100%; max-width: none; } .kontakt-direct__grid { grid-template-columns: 1fr; } .kontakt-contact-card:nth-child(3) { grid-column: 1; } .kontakt-close__card { width: 100%; padding: 24px; } }
@media (max-width: 639px) { .kontakt-steps__grid, .kontakt-request__grid { grid-template-columns: 1fr; } .kontakt-step--two, .kontakt-step--four { margin-top: 0; } .kontakt-step { position: relative; } .kontakt-step:not(:last-child)::after { content: ""; position: absolute; left: 36px; bottom: -17px; height: 16px; width: 1px; background: var(--color-line); } .kontakt-request__card--mood { grid-column: 1; } .kontakt-form-shell { padding: 24px 20px; } .kontakt-form__contact-grid, .kontakt-form__event-grid { grid-template-columns: 1fr; } .kontakt-form textarea { min-height: 150px; } }
@media (prefers-reduced-motion: reduce) { .kontakt-hero__media:hover img, .kontakt-step:hover, .kontakt-hero__media:hover .kontakt-hero__note { transform: none; } }
