.vk-page { overflow-x: clip; }
.vk-page p { overflow-wrap: anywhere; hyphens: auto; line-height: 1.6; }
.vk-page h1, .vk-page h2, .vk-page h3 { text-wrap: balance; }
.vk-hero { position: relative; overflow: clip; }
.vk-hero::before { position: absolute; right: -8rem; bottom: -11rem; width: 32rem; height: 32rem; background: repeating-conic-gradient(from 20deg, var(--color-sun) 0 12deg, transparent 12deg 25deg); border-radius: 50%; content: ""; pointer-events: none; }
.vk-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(var(--space-6), 6vw, var(--space-9)); align-items: center; }
.vk-hero__grid > * { min-width: 0; }
.vk-hero__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); min-width: 0; }
.vk-hero__copy > * { min-width: 0; margin: 0; }
.vk-hero__copy h1 { max-width: 28ch; text-shadow: 5px 5px 0 var(--color-orange); }
.vk-hero__intro { max-width: 48ch; padding: var(--space-5); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-paper); }
.vk-hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.vk-hero__actions > * { min-width: 0; }
.vk-hero__media { width: 100%; max-width: 100%; aspect-ratio: 4 / 5; margin: 0; align-self: start; z-index: 1; }
.vk-hero__media figcaption { padding: var(--space-2) var(--space-3); background: var(--color-paper); }
.vk-facts { background: var(--color-sky); clip-path: polygon(0 2%, 100% 0, 100% 97%, 0 100%); }
.vk-facts__inner { display: flex; flex-direction: column; gap: var(--space-6); }
.vk-facts__inner > * { min-width: 0; margin: 0; }
.vk-facts__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
.vk-facts__grid > * { min-width: 0; }
.vk-fact { min-width: 0; padding: var(--space-5); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-paper); }
.vk-fact--age { background: var(--color-white); }
.vk-fact--alcohol { background: var(--color-peach); }
.vk-fact__icon { display: inline-flex; width: 2rem; height: 2rem; align-items: center; justify-content: center; border: var(--border-thin); border-radius: 50%; background: var(--color-sun); font-family: var(--font-heading); font-size: 1.25rem; }
.vk-games__heading { max-width: 58ch; }
.vk-games__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); align-items: end; }
.vk-games__grid > * { min-width: 0; }
.vk-game { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; padding: var(--space-4); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-paper); }
.vk-game__media { width: 100%; max-width: 100%; margin: 0; }
.vk-game--poker .vk-game__media { aspect-ratio: 4 / 5; max-width: 17rem; margin-inline: auto; }
.vk-game--roulette .vk-game__media { aspect-ratio: 3 / 2; }
.vk-game__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); min-width: 0; max-width: 34ch; }
.vk-game__copy > * { min-width: 0; margin: 0; }
.vk-game--blackjack { min-height: 100%; background: var(--color-peach); border-width: 4px; border-radius: 999px 999px var(--radius-md) var(--radius-md); }
.vk-card-icon { display: inline-flex; width: 3rem; height: 3rem; align-items: center; justify-content: center; border: var(--border-thin); border-radius: var(--radius-sm); background: var(--color-paper); font-size: 1.75rem; }
.vk-atmosphere { position: relative; }
.vk-atmosphere__grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 6fr) minmax(0, 3fr); gap: var(--space-5); align-items: start; }
.vk-atmosphere__grid > * { min-width: 0; }
.vk-atmosphere__side { max-width: 35ch; padding: var(--space-4); border-inline-start: var(--border-strong); }
.vk-atmosphere__main { max-width: 62ch; padding: clamp(var(--space-5), 4vw, var(--space-7)); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-sky); box-shadow: var(--shadow-orange); }
.vk-atmosphere__restaurant { border: var(--border-thin); border-radius: var(--radius-md); }
.vk-evening { background: var(--color-paper); }
.vk-evening__heading { max-width: 54ch; margin-inline: auto; text-align: center; }
.vk-evening__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.vk-evening__grid > * { min-width: 0; }
.vk-step { position: relative; min-width: 0; padding: var(--space-5); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-white); }
.vk-step--two { margin-top: var(--space-6); background: var(--color-sky); }
.vk-step--three { margin-top: var(--space-3); background: var(--color-peach); }
.vk-step__number { display: inline-flex; width: 3rem; height: 3rem; align-items: center; justify-content: center; margin-bottom: var(--space-3); border: var(--border-thin); border-radius: 50%; background: var(--color-sun); font-family: var(--font-heading); font-size: var(--text-h4); font-weight: 700; }
.vk-step--two .vk-step__number { background: var(--color-sky); }
.vk-step--three .vk-step__number { background: var(--color-peach); }
.vk-occasions { position: relative; overflow: clip; }
.vk-occasions::before { position: absolute; top: 10%; left: -8rem; width: 29rem; height: 29rem; border-radius: 50%; background: var(--color-sun); content: ""; pointer-events: none; }
.vk-occasions__grid { position: relative; display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 4fr) minmax(0, 4fr); gap: var(--space-5); align-items: start; }
.vk-occasions__grid > * { min-width: 0; }
.vk-occasions__intro { display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; }
.vk-occasions__intro > * { margin: 0; min-width: 0; }
.vk-occasions__intro > .text-lead { max-width: 60ch; }
.vk-occasion { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); min-width: 0; padding: var(--space-5); border: var(--border-thin); border-radius: var(--radius-md); }
.vk-occasion > * { min-width: 0; margin: 0; }
.vk-occasion--small { background: var(--color-paper); }
.vk-occasion--teams { background: var(--color-sky); }
.vk-occasion--planning { background: var(--color-peach); box-shadow: var(--shadow-orange); }
.vk-responsible { background: var(--color-white); }
.vk-responsible__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 8fr) minmax(0, 2fr); gap: var(--space-5); }
.vk-responsible__grid > * { min-width: 0; }
.vk-responsible__badge-area { display: flex; align-items: flex-start; justify-content: flex-start; }
.vk-responsible__badge { min-width: 5rem; min-height: 5rem; font-size: var(--text-h3); }
.vk-responsible__content { display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; max-width: 62ch; }
.vk-responsible__content > * { min-width: 0; margin: 0; }
.vk-responsible__content .panel { display: flex; flex-direction: column; gap: var(--space-3); }
.vk-responsible__content .panel > * { margin: 0; }
.vk-responsible__contact { max-width: 56ch; }
.vk-next__heading { max-width: 52ch; margin-inline: auto; text-align: center; }
.vk-next__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.vk-next__grid > * { min-width: 0; }
.vk-next__panel { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); min-width: 0; padding: var(--space-5); border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-paper); }
.vk-next__panel > * { min-width: 0; margin: 0; }
.vk-next__panel > a:last-child { margin-top: auto; min-height: 2.75rem; display: inline-flex; align-items: center; }
.vk-next__panel--poker { background: var(--color-white); }
.vk-next__panel--roulette { background: var(--color-sky); }
.vk-next__panel--restaurant { background: var(--color-paper); }
.vk-next__panel--restaurant a { min-height: 2.25rem; display: inline-flex; align-items: center; }
.vk-next__panel--contact { background: var(--color-peach); box-shadow: var(--shadow-orange); }
.vk-faq { position: relative; }
.vk-faq__intro { max-width: 62ch; }
.vk-faq__list { display: flex; flex-direction: column; gap: var(--space-3); width: min(100%, 56.25rem); min-width: 0; }
.vk-faq__item { min-width: 0; border: var(--border-thin); border-radius: var(--radius-md); background: var(--color-white); overflow: hidden; }
.vk-faq__item h3 { margin: 0; }
.vk-faq__button { display: grid; grid-template-columns: auto minmax(0, 1fr); width: 100%; min-height: 3rem; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-4); border: 0; background: transparent; color: var(--color-brown); font-family: var(--font-heading); font-size: var(--text-h4); font-weight: 700; line-height: 1.15; text-align: left; }
.vk-faq__button[aria-expanded="true"] { background: var(--color-peach); }
.vk-faq__answer { padding: 0 var(--space-4) var(--space-4); }
.vk-faq__answer p { max-width: 58ch; margin: 0; }
.vk-closing { position: relative; overflow: clip; background: var(--color-sun); }
.vk-closing::after { position: absolute; right: -5%; bottom: -2.5rem; left: -5%; height: 5rem; border-radius: 50% 50% 0 0; background: var(--color-paper); content: ""; pointer-events: none; }
.vk-closing__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: var(--space-5); width: min(100%, 50ch); min-width: 0; text-align: center; }
.vk-closing__inner > * { min-width: 0; margin: 0; }
.vk-closing__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-3); min-width: 0; }
.vk-closing__actions > * { min-width: 0; }
@media (max-width: 60rem) { .vk-hero__grid { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: var(--space-5); } .vk-facts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vk-fact--alcohol { grid-column: 1 / -1; max-width: 50%; } .vk-games__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vk-game--blackjack { grid-column: 1 / -1; } .vk-evening__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vk-step--three { grid-column: 1 / -1; width: 50%; margin-inline: auto; } .vk-occasions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vk-occasions__intro { grid-column: span 1; } .vk-next__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 57.5rem) { .vk-atmosphere__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); } .vk-atmosphere__restaurant { grid-column: 2; } }
@media (max-width: 50rem) { .vk-responsible__grid { grid-template-columns: 1fr; } .vk-responsible__badge-area { grid-column: 1; } .vk-responsible__content { max-width: 60ch; } }
@media (max-width: 51.25rem) { .vk-hero__grid { grid-template-columns: 1fr; } .vk-hero__media { max-width: 38rem; } }
@media (max-width: 43.75rem) { .vk-facts__grid, .vk-games__grid, .vk-evening__grid, .vk-occasions__grid, .vk-next__grid, .vk-atmosphere__grid { grid-template-columns: 1fr; } .vk-fact--alcohol, .vk-game--blackjack, .vk-step--three, .vk-atmosphere__restaurant, .vk-occasions__intro { grid-column: auto; width: auto; max-width: none; } .vk-step--two, .vk-step--three { margin-top: 0; } .vk-atmosphere__side, .vk-atmosphere__main { max-width: none; } .vk-occasions::before { display: none; } }
@media (max-width: 35rem) { .vk-hero__actions, .vk-closing__actions { flex-direction: column; width: 100%; } .vk-hero__actions > .button, .vk-closing__actions > .button { width: 100%; min-height: 2.75rem; } .vk-hero__copy h1 { font-size: clamp(2.5rem, 12vw, 3.65rem); } .vk-faq__button { min-height: 3rem; padding-inline: var(--space-3); font-size: 1.25rem; } }
@media (max-width: 27.5rem) { .vk-closing__actions > .button { min-height: 3rem; } }
@media (prefers-reduced-motion: reduce) { .vk-page *, .vk-page *::before, .vk-page *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; transform: none !important; } }