/* Sprint 3: Prettified CH */

:root {
  --vm-bg-primary:#020617;
  --vm-bg-surface:rgba(15,23,42,.95);
  --vm-bg-soft:rgba(15,23,42,.8);
  --vm-text-primary:#f9fafb;
  --vm-text-secondary:rgba(249,250,251,.72);
  --vm-text-muted:rgba(148,163,184,.95);
  --vm-gradient-main:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  --vm-glow-main:radial-gradient(circle at 20% -20%,rgba(59,130,246,.35) 0%,rgba(139,92,246,.2) 35%,transparent 70%);
  --vm-shadow-card:0 18px 45px rgba(15,23,42,.9),inset 0 0 0 1px rgba(148,163,184,.2);
  --vm-shadow-card-hover:0 24px 60px rgba(15,23,42,.95),inset 0 0 0 1px rgba(248,250,252,.18);
  --vm-radius-md:1.25rem;
  --vm-radius-lg:1.75rem;
  --vm-radius-pill:999px;
  --vm-space-sm:1rem;
  --vm-space-md:1.5rem;
  --vm-space-lg:2.25rem;
  --vm-space-xl:3rem;
  --vm-font-sans:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;
  --vm-text-h1:clamp(2.4rem,4.4vw,3.5rem);
  --vm-text-h2:clamp(2rem,3.4vw,2.6rem);
  --vm-text-h3:clamp(1.5rem,2.2vw,1.9rem);
  --vm-ease-standard:cubic-bezier(0.4,0,0.2,1);
  --vm-duration-fast:160ms;
  --vm-duration-normal:240ms
}
*,:after,:before {
  box-sizing:border-box
}
body {
  background:#080b14;
  color:var(--vm-text-primary);
  font-family:var(--vm-font-sans);
  margin:0;
  min-height:100vh;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased
}
.vm-skip-link {
  background:var(--vm-gradient-main);
  border-radius:0 0 .5rem 0;
  color:#fff;
  left:0;
  padding:.5rem 1rem;
  position:absolute;
  text-decoration:none;
  top:-40px;
  z-index:100
}
.vm-skip-link:focus {
  top:0
}
.vm-layout {
  min-height:100vh
}
.site-header,.vm-header {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 30% 0,rgba(139,92,246,.15) 0,transparent 50%),rgba(15,15,25,.85);
  border-bottom:1px solid rgba(139,92,246,.25);
  box-shadow:0 4px 30px rgba(139,92,246,.15),inset 0 1px 0 hsla(0,0%,100%,.05);
  position:-webkit-sticky;
  position:sticky;
  top:0;
  z-index:1000
}
.header__inner,.vm-header-inner {
  align-items:center;
  display:flex;
  gap:2rem;
  justify-content:space-between;
  margin:0 auto;
  max-width:1400px;
  padding:.75rem 1.5rem
}
.header__logo,.vm-logo {
  font-size:1.5rem;
  font-weight:700;
  letter-spacing:-.02em;
  text-decoration:none
}
.vm-logo-text {
  display:inline
}
.main-nav,.nav-list {
  display:flex
}

.nav-item {
  position:relative
}

.nav-link:focus,.nav-link:hover {
  background:rgba(139,92,246,.1);
  color:#ec4899
}
.nav-link.is-active,.nav-link.is-current {
  color:#a78bfa
}
.nav-link--award {
  color:#fbbf24
}
.nav-link--award:hover {
  background:rgba(251,191,36,.1);
  color:#ec4899
}
.award-badge {
  font-size:1rem
}
.dropdown-arrow {
  font-size:.7rem;
  opacity:.7;
  transition:transform .2s
}
.has-dropdown.is-open .dropdown-arrow {
  transform:rotate(180deg)
}
.dropdown-toggle {
  align-items:center;
  background:transparent;
  border:none;
  border-radius:.5rem;
  color:#e2e8f0;
  cursor:pointer;
  display:inline-flex;
  font-size:.9rem;
  font-weight:500;
  gap:.35rem;
  padding:.6rem .9rem;
  text-decoration:none;
  transition:color .2s,background .2s;
  white-space:nowrap
}
.dropdown-toggle:focus,.dropdown-toggle:hover {
  background:rgba(139,92,246,.1);
  color:#ec4899
}
.dropdown-toggle:hover .dropdown-arrow,.has-dropdown:hover .dropdown-arrow {
  color:#ec4899
}

.dropdown-menu.is-open,.has-dropdown.is-open .dropdown-menu,.has-dropdown:hover .dropdown-menu {
  opacity:1;
  transform:translateX(-50%) translateY(0);
  visibility:visible
}
.dropdown-menu li {
  margin:0
}

.dropdown-menu a:focus,.dropdown-menu a:hover {
  background:rgba(139,92,246,.15);
  color:#ec4899
}
.dropdown-menu a.is-current {
  background:rgba(139,92,246,.1);
  color:#a78bfa
}

.nav-cta {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  border-radius:999px;
  box-shadow:0 0 20px rgba(139,92,246,.4), 0 4px 15px rgba(59,130,246,.3);
  color:#fff;
  font-weight:600;
  padding:.5rem 1.25rem;
  position:relative;
  transition:transform .2s ease,box-shadow .2s ease,color .2s easeborder:none;
}
.nav-cta:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:15%;
  position:absolute;
  right:15%;
  top:0;
  z-index:1
}
.nav-cta:hover {
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.07),0 5.4px 13.5px rgba(0,0,0,.2);
  color:#fff;
  transform:translateY(-2px)background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  border-radius:999px;
  border:none;
}
.mobile-toggle,.vm-menu-toggle {
  align-items:center;
  background:transparent;
  border:1px solid rgba(139,92,246,.3);
  border-radius:8px;
  cursor:pointer;
  display:none;
  flex-direction:column;
  gap:5px;
  height:40px;
  justify-content:center;
  padding:8px;
  transition:background .2s,border-color .2s;
  width:40px
}
.mobile-toggle:focus,.mobile-toggle:hover,.vm-menu-toggle:focus,.vm-menu-toggle:hover {
  background:rgba(139,92,246,.1);
  border-color:rgba(139,92,246,.5)
}
.mobile-toggle span,.vm-hamburger,.vm-menu-toggle span {
  background:#e2e8f0;
  border-radius:2px;
  display:block;
  height:2px;
  transition:transform .3s ease,opacity .3s ease;
  width:22px
}
.mobile-toggle[aria-expanded=true] span:first-child,.vm-menu-toggle.is-active span:first-child {
  transform:rotate(45deg) translate(5px,5px)
}
.mobile-toggle[aria-expanded=true] span:nth-child(2),.vm-menu-toggle.is-active span:nth-child(2) {
  opacity:0
}
.mobile-toggle[aria-expanded=true] span:nth-child(3),.vm-menu-toggle.is-active span:nth-child(3) {
  transform:rotate(-45deg) translate(5px,-5px)
}
@media (max-width:900px) {
  .mobile-toggle,.vm-menu-toggle {
  display:flex;
  position:fixed;
  right:1.5rem;
  top:.5rem;
  z-index:1001
}
.main-nav {
  align-items:center;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  background:rgba(10,15,26,.98);
  bottom:0;
  flex-direction:column;
  height:100vh;
  justify-content:center;
  left:0;
  opacity:0;
  overflow-y:auto;
  padding:2rem;
  position:fixed;
  right:0;
  top:0;
  transition:opacity .3s ease,visibility .3s ease;
  visibility:hidden;
  width:100%;
  z-index:999
}
.main-nav.is-open {
  opacity:1;
  visibility:visible
}
.nav-list {
  align-items:center;
  flex-direction:column;
  gap:.5rem;
  max-width:320px
}
.nav-item,.nav-list {
  width:100%
}
.nav-link {
  border-radius:.75rem;
  font-size:1.1rem;
  justify-content:center;
  padding:1rem 1.5rem;
  text-align:center;
  width:100%
}
.dropdown-menu {
  backdrop-filter:none;
  background:rgba(139,92,246,.08);
  border:none;
  border-radius:.75rem;
  box-shadow:none;
  left:auto;
  margin:.5rem auto 0;
  max-height:0;
  max-width:320px;
  opacity:1;
  overflow:hidden;
  padding:0;
  position:static;
  transform:none;
  transition:max-height .3s ease,padding .3s ease;
  visibility:visible;
  width:100%
}
.has-dropdown.is-open .dropdown-menu {
  max-height:500px;
  padding:.5rem
}
.dropdown-menu a {
  padding:.75rem 1rem;
  text-align:center
}
.nav-item--cta {
  margin-left:0;
  margin-top:.5rem
}
}
.container,.vm-shell {
  margin:0 auto;
  max-width:1400px;
  padding:var(--vm-space-lg) var(--vm-space-sm) var(--vm-space-xl)
}
h1,h2,h3 {
  font-weight:700;
  letter-spacing:-.03em;
  margin:0 0 var(--vm-space-sm)
}
h1 {
  font-size:var(--vm-text-h1);
  line-height:1.08
}
h2 {
  font-size:var(--vm-text-h2);
  line-height:1.12
}
h3 {
  font-size:var(--vm-text-h3);
  line-height:1.15
}
.vm-section h2 {
  text-align:center
}
p {
  color:var(--vm-text-secondary);
  line-height:1.65;
  margin:0 0 var(--vm-space-sm)
}
strong {
  color:var(--vm-text-primary);
  font-weight:600
}
.vm-gradient-text {
  background-clip:text;
  -webkit-background-clip:text;
  background-image:var(--vm-gradient-main);
  color:transparent
}
@supports not (-webkit-background-clip:text) {
  .vm-gradient-text {
  background-image:none;
  color:#e5e7eb
}
}
.is-free,.vm-free {
  color:#10b981;
  font-weight:700;
  text-shadow:0 0 15px rgba(16,185,129,.3)
}
.vm-hl-green {
  color:#10b981;
  font-weight:600
}
.vm-gold {
  color:#fbbf24;
  font-weight:600;
  text-shadow:0 0 12px rgba(251,191,36,.3)
}
.vm-emoji {
  -webkit-text-fill-color:initial;
  background:none;
  margin-right:.25em
}
.vm-text-white {
  background:none;
  -webkit-background-clip:unset;
  background-clip:unset;
  -webkit-text-fill-color:var(--vm-text-primary);
  color:var(--vm-text-primary)
}
.vm-text-muted {
  color:var(--vm-text-muted);
  font-size:.85em
}
.vm-heading-center {
  text-align:center
}
.vm-paragraph-center {
  color:var(--vm-text-secondary);
  margin-left:auto;
  margin-right:auto;
  max-width:800px;
  text-align:center
}
.vm-paragraph-center--lg {
  font-size:1.1rem;
  max-width:900px
}
.vm-paragraph-center--sm {
  font-size:.9rem;
  max-width:700px
}
.vm-h2-line,.vm-h2-secondary {
  font-size:clamp(1.4rem,2.8vw,1.8rem);
  margin-bottom:var(--vm-space-md)
}
.sr-only,.vm-nowrap {
  white-space:nowrap
}
.sr-only {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px
}
.vm-text-link {
  color:#3b82f6;
  text-decoration:none;
  transition:color var(--vm-duration-fast) var(--vm-ease-standard)
}
.vm-text-link:hover {
  color:#60a5fa;
  text-decoration:underline
}
.vm-text-small-center {
  color:var(--vm-text-muted);
  font-size:.85rem;
  text-align:center
}
.breadcrumb,.vm-breadcrumb {
  color:var(--vm-text-muted);
  font-size:clamp(.8rem,1.2vw,.9rem);
  margin-bottom:var(--vm-space-md);
  padding-left:0
}
.breadcrumb,.breadcrumb__list,.vm-breadcrumb {
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  gap:0
}
.breadcrumb__list {
  list-style:none;
  margin:0;
  padding:0
}
.breadcrumb__item {
  align-items:center;
  display:inline-flex
}
.breadcrumb__item:not(:last-child):after {
  color:rgba(148,163,184,.6);
  content:"›";
  font-size:1rem;
  margin:0 .5rem
}
.breadcrumb__list,.vm-breadcrumb__list {
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  gap:0;
  list-style:none;
  margin:0;
  padding:0
}
.breadcrumb__item,.vm-breadcrumb__item {
  align-items:center;
  display:inline-flex
}
.breadcrumb__item:not(:last-child):after,.vm-breadcrumb__item:not(:last-child):after {
  color:rgba(148,163,184,.6);
  content:"›";
  font-size:1rem;
  margin:0 .5rem
}
.breadcrumb a,.breadcrumb__link,.vm-breadcrumb a,.vm-breadcrumb__link {
  color:#94a3b8;
  text-decoration:none;
  transition:color .2s
}
.breadcrumb a:focus,.breadcrumb a:hover,.breadcrumb__link:focus,.breadcrumb__link:hover,.vm-breadcrumb a:focus,.vm-breadcrumb a:hover,.vm-breadcrumb__link:focus,.vm-breadcrumb__link:hover {
  color:#fff
}
.breadcrumb span[aria-current=page],.breadcrumb__link--active,.vm-breadcrumb span[aria-current=page],.vm-breadcrumb__current {
  color:#a78bfa;
  font-weight:500
}
@media (max-width:480px) {
  .breadcrumb,.vm-breadcrumb {
  display:none
}
}

.vm-section:not(.vm-hero) {
  contain-intrinsic-size:auto 800px;
  content-visibility:auto
}

.vm-hero-inner {
  align-items:center;
  display:flex;
  flex-direction:column;
  position:relative;
  z-index:1
}
.vm-hero-intro,.vm-lead {
  color:var(--vm-text-secondary);
  font-size:1.1rem;
  line-height:1.7;
  margin-left:auto;
  margin-right:auto;
  margin-top:1.5rem;
  max-width:900px
}
.vm-hero-intro strong,.vm-lead strong {
  color:var(--vm-text-primary)
}
.vm-location-wrapper {
  margin:var(--vm-space-sm) 0
}
.vm-location {
  color:var(--vm-text-muted);
  font-size:.95rem
}
.vm-usp-list {
  display:grid;
  gap:.6rem;
  list-style:none;
  margin:var(--vm-space-md) auto;
  max-width:700px;
  padding:0;
  text-align:left
}
.vm-usp-list li {
  border-bottom:1px solid rgba(148,163,184,.1);
  color:var(--vm-text-secondary);
  font-size:1rem;
  padding:.5rem 0
}
.vm-usp-list li:last-child {
  border-bottom:none
}
.vm-usp-icon {
  color:#10b981;
  font-weight:700;
  margin-right:.5em
}
.vm-hero-benefits {
  display:flex;
  flex-direction:column;
  gap:0;
  list-style:none;
  margin:var(--vm-space-md) 0 0;
  padding:0
}
.vm-hero-benefits li {
  border-bottom:1px solid rgba(148,163,184,.15);
  color:var(--vm-text-secondary);
  font-size:1rem;
  line-height:1.6;
  padding:.75rem 0
}
.vm-hero-benefits li:last-child {
  border-bottom:none
}
.vm-benefits-grid {
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  margin:var(--vm-space-lg) auto;
  max-width:1200px;
  padding:0 var(--vm-space-sm)
}
@media (min-width:901px) {
  .vm-benefits-grid {
  gap:1.25rem;
  grid-template-columns:repeat(3,1fr);
  max-width:1100px
}
.vm-hero .vm-benefits-grid {
  grid-template-columns:repeat(2,1fr);
  max-width:900px
}
}
@media (min-width:1200px) {
  .vm-benefits-grid {
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr))
}
}

.vm-benefit-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-benefit-card:hover {
  box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08);
  transform:translateY(-4px)
}

.vm-benefit-card__text strong {
  color:var(--vm-text-primary)
}
.vm-benefit-card__list {
  color:var(--vm-text-secondary);
  font-size:.85rem;
  line-height:1.6;
  list-style:none;
  margin:.5rem 0 0;
  padding:0
}
.vm-benefit-card__list li {
  padding:.25rem 0 .25rem 1.25rem;
  position:relative
}
.vm-benefit-card__list li:before {
  color:#10b981;
  content:"•";
  font-weight:700;
  left:0;
  position:absolute
}
@media (max-width:640px) {
  .vm-benefits-grid {
  gap:1rem;
  grid-template-columns:1fr;
  margin:var(--vm-space-md) auto;
  max-width:100%;
  padding:0 .5rem
}
.vm-benefit-card {
  min-height:auto;
  padding:1.25rem;
  text-align:center
}
.vm-benefit-card__icon {
  display:block;
  margin-bottom:.5rem
}
.vm-benefit-card__title {
  font-size:1.05rem
}
.vm-benefit-card__text {
  font-size:.875rem
}
}

.vm-button,.vm-button-secondary {
  align-items:center;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  color:#a78bfa;
  cursor:pointer;
  display:inline-flex;
  font-size:.95rem;
  font-weight:600;
  gap:.6rem;
  justify-content:center;
  padding:1rem 1.5rem .875rem;
  position:relative;
  text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,color .2s ease
}
.vm-button-secondary:before,.vm-button:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:15%;
  position:absolute;
  right:15%;
  top:0;
  z-index:1
}
.vm-button-secondary:hover,.vm-button:hover {
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.07),0 5.4px 13.5px rgba(0,0,0,.2);
  color:#bba7fc;
  transform:translateY(-2px)
}
.vm-button-secondary:focus,.vm-button:focus {
  outline:2px solid #3b82f6;
  outline-offset:4px
}
.vm-button-secondary:active,.vm-button:active {
  transform:translateY(0)
}

.vm-pakiet-card--featured .vm-button:before {
  background:linear-gradient(90deg,transparent,#fbbf24 20%,#f59e0b 50%,#fbbf24 80%,transparent)
}

.vm-button-outline {
  background:transparent;
  border:1px solid rgba(139,92,246,.5)
}
.vm-button-outline:before {
  display:none
}
.vm-button-outline:hover {
  background:rgba(139,92,246,.1);
  border-color:rgba(139,92,246,.7)
}
@media (max-width:640px) {
  .vm-button,.vm-button-secondary {
  font-size:.9rem;
  padding:.875rem 1.25rem .75rem;
  width:100%
}
}

.vm-summary {
  background:radial-gradient(at 50% 0,rgba(139,92,246,.15) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-left:3px solid #3b82f6;
  border-radius:0 var(--vm-radius-md) var(--vm-radius-md) 0;
  font-size:clamp(1rem,2vw,1.125rem);
  margin:0;
  max-width:100%;
  padding:1.25rem 1.5rem;
  text-align:center
}
.vm-summary:before {
  display:none
}
.vm-summary strong {
  color:#a78bfa
}
.vm-summary .vm-free {
  color:#10b981
}
.key-insight {
  align-items:center;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 30% 0,rgba(139,92,246,.15) 0,transparent 50%),rgba(15,15,25,.85);
  border:1px solid rgba(139,92,246,.25);
  border-radius:1.25rem;
  box-shadow:0 0 30px rgba(139,92,246,.2),0 4px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05);
  display:flex;
  flex-direction:column;
  gap:.75rem;
  margin:2.5rem 0;
  overflow:hidden;
  padding:1.75rem 2rem;
  position:relative
}
.key-insight:before {
  background:linear-gradient(90deg,transparent,rgba(139,92,246,.4) 50%,transparent);
  content:"";
  height:1px;
  left:0;
  position:absolute;
  right:0;
  top:0
}

.key-insight__content {
  flex:1;
  text-align:center
}

.ai-crawlable,.key-insight__title .sr-only {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px
}

.key-insight__text strong {
  color:#f1f5f9;
  font-weight:600
}
.key-insight__text mark,.key-insight__text mark.vm-free {
  background:none;
  border:none;
  border-radius:0;
  box-shadow:none;
  color:#10b981;
  font-weight:700;
  padding:0;
  text-shadow:0 0 15px rgba(16,185,129,.4)
}
.key-insight--success {
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  background:#000;
  border-color:rgba(34,197,94,.25);
  box-shadow:0 0 30px rgba(34,197,94,.15),0 4px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05)
}
.key-insight--success:before {
  background:linear-gradient(90deg,transparent,rgba(34,197,94,.4) 50%,transparent)
}
.key-insight--success .key-insight__icon {
  filter:drop-shadow(0 0 8px rgba(34,197,94,.5))
}
.key-insight--success .key-insight__title {
  background:linear-gradient(135deg,#10b981,#22c55e);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text
}
.key-insight--warning {
  background:linear-gradient(135deg,rgba(245,158,11,.06),rgba(251,191,36,.08) 50%,rgba(245,158,11,.04));
  border-color:rgba(245,158,11,.25);
  box-shadow:0 0 30px rgba(245,158,11,.12),0 0 60px rgba(245,158,11,.06),inset 0 1px 0 hsla(0,0%,100%,.05)
}
.key-insight--warning:before {
  background:linear-gradient(90deg,transparent,rgba(245,158,11,.4) 50%,transparent)
}
.key-insight--warning .key-insight__icon {
  filter:drop-shadow(0 0 8px rgba(245,158,11,.5))
}
.key-insight--warning .key-insight__title {
  background:linear-gradient(135deg,#f59e0b,#fbbf24);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text
}
.key-insight--warning .key-insight__text mark {
  background:linear-gradient(135deg,rgba(239,68,68,.25),rgba(245,158,11,.2));
  border-color:rgba(239,68,68,.3);
  box-shadow:0 0 12px rgba(239,68,68,.15),inset 0 1px 0 hsla(0,0%,100%,.1);
  color:#f87171;
  text-shadow:0 0 20px rgba(239,68,68,.5)
}
@media (max-width:768px) {
  .key-insight {
  border-radius:1rem;
  gap:1rem;
  margin:2rem 0;
  padding:1.5rem
}

.key-insight__title {
  font-size:1rem;
  margin-bottom:.75rem
}
.key-insight__text {
  font-size:.9375rem;
  line-height:1.7
}
}
@media (max-width:480px) {
  .key-insight {
  flex-direction:column;
  gap:.875rem;
  padding:1.25rem
}
.key-insight__icon {
  font-size:1.5rem
}
}
@media (hover:hover) {
  .key-insight {
  transition:box-shadow .3s ease,transform .3s ease
}

.key-insight--success:hover {
  box-shadow:0 0 40px rgba(34,197,94,.18),0 0 80px rgba(34,197,94,.08),inset 0 1px 0 hsla(0,0%,100%,.08)
}
.key-insight--warning:hover {
  box-shadow:0 0 40px rgba(245,158,11,.18),0 0 80px rgba(245,158,11,.08),inset 0 1px 0 hsla(0,0%,100%,.08)
}
}
@media (prefers-reduced-motion:reduce) {
  .key-insight {
  transition:none
}
.key-insight:hover {
  transform:none
}
}
.vm-info-section {
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-md);
  margin:var(--vm-space-lg) auto;
  max-width:900px;
  padding:0 var(--vm-space-sm)
}

.vm-info-glass:before {
  background:conic-gradient(from 180deg,#3b82f6 0deg,#8b5cf6 120deg,#a855f7 240deg,#3b82f6 1turn);
  border-radius:var(--border-radius);
  content:"";
  inset:calc(var(--border-width)*-1);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  padding:var(--border-width);
  pointer-events:none;
  position:absolute;
  z-index:-1
}
.vm-info-glass--highlight {
  background:radial-gradient(ellipse at 30% 0,rgba(16,185,129,.15) 0,transparent 50%),rgba(15,15,25,.92)
}
.vm-info-glass--highlight:before {
  background:conic-gradient(from 180deg,#10b981 0deg,#3b82f6 120deg,#8b5cf6 240deg,#10b981 1turn)
}
.vm-info-glass--premium {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.15) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  margin-bottom:var(--vm-space-md);
  padding:2.25rem 2.5rem 2rem;
  position:relative;
  text-align:center
}
.vm-info-glass--premium:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-info-glass--premium.vm-info-glass--highlight {
  background:radial-gradient(ellipse at 50% 0,rgba(16,185,129,.15) 0,transparent 60%),rgba(15,15,25,.92)
}
.vm-info-glass--premium.vm-info-glass--highlight:before {
  background:linear-gradient(90deg,transparent,#10b981 20%,#3b82f6 50%,#8b5cf6 80%,transparent)
}
@media (min-width:901px) {
  .vm-info-glass--premium:not(.vm-info-glass--narrow):not(.vm-info-glass--medium) {
  margin-left:auto;
  margin-right:auto;
  max-width:900px;
  width:auto
}
}
@media (max-width:640px) {
  .vm-info-glass--premium {
  padding:1.5rem 1rem 1.25rem
}
}

.vm-info-glass__text strong {
  color:var(--vm-text-primary);
  font-weight:600
}
.vm-info-glass__text a {
  color:#60a5fa;
  text-decoration:none
}
.vm-info-glass__text a:hover {
  color:#93c5fd;
  text-decoration:underline
}

.entity-definition strong {
  color:#a78bfa
}
@media (max-width:640px) {
  .vm-info-section {
  gap:var(--vm-space-sm);
  margin:var(--vm-space-md) auto;
  padding:0 .5rem
}
.vm-info-glass {
  padding:var(--vm-space-sm) var(--vm-space-md)
}
.vm-info-glass__heading {
  font-size:1.05rem
}
.vm-info-glass__text {
  font-size:.9375rem
}
.entity-definition {
  font-size:.875rem
}
}
.vm-table-wrapper {
  border-radius:var(--vm-radius-lg);
  margin:2rem 0;
  overflow-x:auto;
  position:relative;
  z-index:0
}
.vm-comparison-table,.vm-dates-mini,.vm-diet-table,.vm-distance-table,.vm-kids-menu-table,.vm-kids-table,.vm-menu-table,.vm-table,.vm-table-compact,.vm-venue-table {
  background:linear-gradient(135deg,rgba(15,23,42,.98),rgba(15,23,42,.88));
  border-collapse:separate;
  border-radius:var(--vm-radius-lg);
  border-spacing:0;
  box-shadow:var(--vm-shadow-card);
  contain:layout style;
  overflow:hidden;
  position:relative;
  table-layout:fixed;
  width:100%
}
.vm-table:before {
  background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  border-radius:inherit;
  content:"";
  inset:-2px;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask-composite:exclude;
  padding:2px;
  pointer-events:none;
  position:absolute;
  z-index:1
}
.vm-table caption {
  caption-side:top;
  color:var(--vm-text-muted);
  font-size:.85rem;
  font-weight:600;
  padding:1rem;
  text-align:left
}

.vm-table th {
  color:#a78bfa;
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.1em;
  padding:1.15rem 1.25rem;
  position:relative;
  text-align:left;
  text-transform:uppercase
}
.vm-table tbody tr {
  border-bottom:1px solid rgba(148,163,184,.1);
  transition:background var(--vm-duration-normal) var(--vm-ease-standard)
}
.vm-table tbody tr:hover {
  background:rgba(59,130,246,.06)
}
.vm-table tbody tr:last-child {
  border-bottom:none
}

.vm-table td:first-child {
  color:var(--vm-text-primary);
  font-weight:500;
  text-align:left
}
.vm-table tfoot td {
  background:rgba(15,23,42,.5);
  border-top:1px solid rgba(148,163,184,.15);
  font-size:.85rem;
  padding:1rem 1.25rem
}
.vm-table-footer {
  background:rgba(16,185,129,.08);
  border-top:1px solid rgba(16,185,129,.2);
  padding:1rem;
  text-align:center
}

.vm-table-wrapper--premium:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:2
}
.vm-table-wrapper--premium .vm-diet-table,.vm-table-wrapper--premium .vm-kids-menu-table,.vm-table-wrapper--premium .vm-menu-table,.vm-table-wrapper--premium .vm-table,.vm-table-wrapper--premium .vm-venue-table {
  background:transparent;
  border-radius:0;
  box-shadow:none;
  margin:0
}
.vm-table-wrapper--premium .vm-diet-table:before,.vm-table-wrapper--premium .vm-kids-menu-table:before,.vm-table-wrapper--premium .vm-menu-table:before,.vm-table-wrapper--premium .vm-table:before,.vm-table-wrapper--premium .vm-venue-table:before {
  display:none
}
.vm-table-wrapper--premium th {
  background:rgba(15,23,42,.4);
  border-bottom:1px solid rgba(139,92,246,.25);
  color:#a78bfa;
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.08em;
  padding:1rem 1.25rem;
  text-transform:uppercase
}

.vm-table-wrapper--premium tbody tr:last-child td {
  border-bottom:none
}
.vm-table-wrapper--premium tbody tr:hover {
  background:rgba(139,92,246,.06)
}
.vm-table-wrapper--premium tfoot td {
  background:rgba(16,185,129,.08);
  border-top:1px solid rgba(16,185,129,.2);
  padding:1rem;
  text-align:center
}
@media (max-width:640px) {
  .vm-table-wrapper--premium {
  margin:1rem 0;
  padding-top:.5rem
}
.vm-table-wrapper--premium thead {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px
}
.vm-table-wrapper--premium tbody tr {
  background:rgba(15,23,42,.4);
  border-bottom:1px solid rgba(139,92,246,.15);
  display:block;
  margin-bottom:0;
  padding:1rem
}
.vm-table-wrapper--premium tbody tr:last-child {
  border-bottom:none
}
.vm-table-wrapper--premium td {
  border-bottom:1px solid rgba(148,163,184,.08);
  display:block;
  padding:.5rem 0;
  text-align:center
}
.vm-table-wrapper--premium td:last-child {
  border-bottom:none
}
.vm-table-wrapper--premium td:before {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  content:attr(data-label);
  display:block;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.08em;
  margin-bottom:.25rem;
  text-transform:uppercase;
  -webkit-text-fill-color:transparent
}
.vm-table-wrapper--premium tfoot tr {
  background:rgba(16,185,129,.08);
  display:block;
  padding:1rem
}
.vm-table-wrapper--premium tfoot td:before {
  display:none
}
}
.vm-highlight-col,.vm-table-highlight {
  background:rgba(139,92,246,.08)
}
.vm-row-gold {
  background:linear-gradient(90deg,rgba(251,191,36,.08),rgba(251,191,36,.04))
}
.vm-row-gold td {
  color:#fbbf24;
  font-weight:600
}
.vm-row-gold td:first-child {
  color:#fcd34d
}
.vm-section .vm-table,.vm-section table {
  background:transparent;
  box-shadow:none
}
.vm-section .vm-table:before {
  display:none
}
.vm-section .vm-table td,.vm-section .vm-table th,.vm-section table td,.vm-section table th {
  background:transparent;
  border-bottom:1px solid hsla(0,0%,100%,.08)
}
.vm-section .vm-table th {
  border-bottom:1px solid rgba(139,92,246,.3)
}
.vm-section .vm-table tbody tr:last-child td {
  border-bottom:none
}
.vm-section .vm-table-wrapper {
  background:transparent
}
@media (max-width:640px) {
  .vm-table caption {
  background:radial-gradient(ellipse at 30% 0,rgba(139,92,246,.15) 0,transparent 50%),rgba(15,15,25,.9);
  border:1px solid rgba(139,92,246,.3);
  border-radius:.75rem;
  box-shadow:0 0 25px rgba(139,92,246,.15),inset 0 1px 0 hsla(0,0%,100%,.05);
  color:#f1f5f9;
  display:block;
  font-size:clamp(.95rem,4vw,1.1rem);
  font-weight:700;
  letter-spacing:-.01em;
  line-height:1.4;
  margin:0 auto 1.25rem;
  max-width:100%;
  padding:1rem 1.25rem;
  position:relative;
  text-align:center;
  width:calc(100% - 1rem)
}
.vm-table caption .vm-gradient-text {
  background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  display:block;
  text-align:center
}
.vm-table caption:before {
  display:none
}
.vm-table thead {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px
}
.vm-table,.vm-table tbody,.vm-table td,.vm-table tr {
  display:block;
  width:100%
}
.vm-table tr {
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  background:radial-gradient(ellipse at 30% 0,rgba(139,92,246,.1) 0,transparent 50%),rgba(15,15,25,.85);
  border:1px solid rgba(139,92,246,.2);
  border-radius:1rem;
  box-shadow:0 0 25px rgba(139,92,246,.1),inset 0 1px 0 hsla(0,0%,100%,.05);
  margin-bottom:1rem;
  padding:1.25rem
}
.vm-table tr:last-child {
  margin-bottom:0
}
.vm-table td {
  border-bottom:1px solid rgba(139,92,246,.1);
  padding:.75rem 0;
  text-align:center
}
.vm-table td:last-child {
  border-bottom:none;
  padding-bottom:0
}
.vm-table td:before {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  content:attr(data-label);
  display:block;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.1em;
  margin-bottom:.4rem;
  text-align:center;
  text-transform:uppercase;
  width:100%;
  -webkit-text-fill-color:transparent
}
.vm-table tfoot tr {
  background:radial-gradient(ellipse at 30% 0,rgba(16,185,129,.1) 0,transparent 50%),rgba(15,15,25,.85);
  border:1px solid rgba(16,185,129,.2)
}
.vm-table tfoot td,.vm-table tfoot tr {
  text-align:center
}
.vm-table tfoot td:before {
  display:none
}
}
.vm-pakiety-grid {
  display:grid;
  gap:var(--vm-space-md);
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  margin:var(--vm-space-lg) 0
}
.vm-pakiet-card {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  padding:1.75rem 1.5rem 1.5rem;
  position:relative;
  text-align:center;
  transition:transform .2s ease,box-shadow .2s ease
}
.vm-pakiet-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-pakiet-card:hover {
  box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08);
  transform:translateY(-4px)
}
.vm-pakiet-card--featured {
  background:radial-gradient(ellipse at 50% 0,rgba(251,191,36,.15) 0,transparent 60%),rgba(15,15,25,.92);
  border:1px solid rgba(251,191,36,.3)
}
.vm-pakiet-card--featured:before {
  background:linear-gradient(90deg,transparent,#fbbf24 20%,#f59e0b 50%,#fbbf24 80%,transparent)
}
.vm-pakiet-badge {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:linear-gradient(135deg,rgba(251,191,36,.25),rgba(245,158,11,.15) 50%,rgba(251,191,36,.2));
  border:1px solid rgba(251,191,36,.5);
  border-radius:999px;
  box-shadow:0 4px 20px rgba(251,191,36,.3),0 0 30px rgba(251,191,36,.15),inset 0 1px 0 hsla(0,0%,100%,.2);
  color:#fbbf24;
  font-size:.7rem;
  font-weight:700;
  left:50%;
  letter-spacing:.1em;
  padding:.5rem 1.25rem;
  position:absolute;
  text-shadow:0 0 10px rgba(251,191,36,.5);
  text-transform:uppercase;
  top:-14px;
  transform:translateX(-50%);
  white-space:nowrap;
  z-index:10
}
.vm-pakiet-label {
  color:var(--vm-text-muted);
  font-size:.85rem;
  margin-bottom:.5rem
}
.vm-pakiet-price {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  font-size:clamp(1.8rem,4vw,2.4rem);
  font-weight:700;
  -webkit-text-fill-color:transparent
}
.vm-pakiet-desc {
  color:var(--vm-text-secondary);
  font-size:.9rem;
  line-height:1.6;
  margin-top:1rem
}
.vm-pakiet-card ul {
  list-style:none;
  margin:1rem 0 1.5rem;
  padding:0;
  text-align:left
}
.vm-pakiet-card ul li {
  align-items:flex-start;
  color:rgba(249,250,251,.85);
  display:flex;
  font-size:.9rem;
  gap:.6rem;
  line-height:1.5;
  margin-bottom:.6rem;
  padding-left:.5rem
}
.vm-pakiet-card ul li:before {
  color:#10b981;
  content:"✓";
  flex-shrink:0;
  font-weight:700
}
.vm-pakiet-card ul li:last-child {
  margin-bottom:0
}
.vm-filary-grid {
  display:grid;
  gap:var(--vm-space-md);
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  margin:var(--vm-space-lg) 0
}
.vm-filar-card {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  padding:1.75rem 1.5rem 1.5rem;
  position:relative;
  text-align:center
}
.vm-filar-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-filar-icon {
  filter:drop-shadow(0 0 8px rgba(139,92,246,.4));
  font-size:2rem;
  margin-bottom:1rem
}
.vm-komfort-grid {
  display:grid;
  gap:var(--vm-space-md);
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  margin:var(--vm-space-lg) 0
}
.vm-komfort-card,.vm-komfort-item {
  align-items:center;
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  display:flex;
  flex-direction:column;
  gap:.75rem;
  min-height:180px;
  overflow:hidden;
  padding:1.75rem 1.5rem 1.5rem;
  position:relative;
  transition:transform .2s ease,box-shadow .2s ease
}
.vm-komfort-card:before,.vm-komfort-item:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-stats-grid {
  display:grid;
  gap:var(--vm-space-md);
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  margin:var(--vm-space-lg) 0
}
.vm-stat-card {
  background:rgba(15,15,25,.6);
  border-radius:1rem;
  padding:1.25rem;
  text-align:center
}
.vm-stat-value {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  font-size:clamp(1.5rem,3vw,2rem);
  font-weight:700;
  -webkit-text-fill-color:transparent
}
.vm-stat-label {
  color:var(--vm-text-muted);
  font-size:.85rem;
  margin-top:.5rem
}
.vm-opinie-grid {
  display:grid;
  gap:var(--vm-space-md);
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  margin:var(--vm-space-lg) 0
}
.vm-review-card {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  padding:1.75rem 1.5rem 1.5rem;
  position:relative
}
.vm-review-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-review-quote {
  color:var(--vm-text-secondary);
  font-size:1rem;
  font-style:italic;
  line-height:1.7;
  margin-bottom:1rem
}
.vm-review-author {
  color:var(--vm-text-primary);
  font-weight:600
}
.vm-review-meta {
  color:var(--vm-text-muted);
  font-size:.85rem
}
.vm-review-rating {
  color:#fbbf24;
  font-size:1rem;
  margin-top:.5rem
}
.vm-timeline {
  margin:var(--vm-space-lg) 0;
  position:relative
}
.vm-timeline-item {
  border-left:2px solid rgba(139,92,246,.3);
  margin-left:1rem;
  padding:0 0 1.5rem 1.5rem;
  position:relative
}
.vm-timeline-item:before {
  background:var(--vm-gradient-main);
  border-radius:50%;
  content:"";
  height:12px;
  left:-7px;
  position:absolute;
  top:0;
  width:12px
}
.vm-timeline-item:last-child {
  padding-bottom:0
}
.vm-timeline-heading {
  color:var(--vm-text-primary);
  font-size:1.1rem;
  font-weight:600;
  margin-bottom:.5rem
}

.vm-crosslink-link {
  color:#60a5fa;
  font-weight:600;
  text-decoration:none
}
.vm-crosslink-link:hover {
  color:#93c5fd;
  text-decoration:underline
}
.vm-crosslink-text {
  color:var(--vm-text-muted);
  font-size:.9rem
}
.vm-faq-list {
  display:flex;
  flex-direction:column;
  gap:.75rem;
  margin:var(--vm-space-md) auto 0;
  max-width:900px
}

.vm-faq-item:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}
.vm-faq-item:hover {
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.18) 0,transparent 60%),rgba(15,15,25,.88);
  transform:translateY(-2px)
}
.vm-faq-item[open] {
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.2) 0,transparent 60%),rgba(15,15,25,.85)
}

.vm-faq-item summary::-webkit-details-marker {
  display:none
}
.vm-faq-item summary::marker {
  content:none;
  display:none;
  font-size:0
}
.vm-faq-item>summary {
  list-style:none
}

.vm-faq-item[open] summary:after {
  color:#fff;
  content:"−";
  transform:rotate(0deg)
}
.vm-faq-item summary:hover {
  background:rgba(139,92,246,.05);
  color:#f472b6
}
.vm-faq-item summary:hover:after {
  color:#ec4899
}

@keyframes faqFadeIn {
  0% {
  opacity:0;
  transform:translateY(-10px)
}
to {
  opacity:1;
  transform:translateY(0)
}
}

.vm-faq-answer p:first-child {
  margin-top:0
}
.vm-faq-answer strong {
  color:#f9fafb
}
.vm-faq-answer .vm-free {
  color:#10b981;
  font-weight:700
}
.vm-faq-answer a {
  color:#60a5fa;
  text-decoration:none
}
.vm-faq-answer a:hover {
  color:#93c5fd;
  text-decoration:underline
}
@media (max-width:640px) {
  .vm-faq-list {
  gap:.625rem;
  padding:0 .25rem
}
.vm-faq-item {
  border-radius:.875rem
}
.vm-faq-item summary {
  font-size:1rem;
  line-height:1.4;
  padding:1rem 1.25rem
}
.vm-faq-item summary:after {
  flex-shrink:0;
  font-size:1.25rem;
  height:1.75rem;
  margin-left:.75rem;
  width:1.75rem
}
.vm-faq-answer {
  padding:0 1.25rem 1.25rem
}
.vm-faq-answer p {
  font-size:.95rem;
  line-height:1.7
}
}

@media (min-width:1100px) {
  .vm-links-grid {
  grid-template-columns:repeat(5,1fr)
}
}
.vm-links-grid .vm-link-card:nth-last-child(2) {
  grid-column:2
}
.vm-links-grid .vm-link-card:last-child {
  grid-column:3
}

.vm-link-card:focus {
  outline:2px solid #8b5cf6;
  outline-offset:2px
}

@media (min-width:641px) and (max-width:1023px) {
  .vm-links-grid {
  grid-template-columns:repeat(2,1fr)
}
}
@media (max-width:640px) {
  .vm-links-grid {
  display:grid;
  gap:var(--vm-space-sm);
  grid-template-columns:1fr;
  justify-items:center;
  margin-left:auto;
  margin-right:auto;
  max-width:320px;
  width:100%
}
.vm-links-grid .vm-link-card:last-child,.vm-links-grid .vm-link-card:nth-last-child(2) {
  grid-column:auto
}

}
.vm-final-cta-heading {
  font-size:clamp(1.5rem,3vw,2rem);
  margin-bottom:1rem;
  text-align:center
}
.vm-final-cta-text {
  color:var(--vm-text-secondary);
  font-size:1rem;
  margin-bottom:var(--vm-space-md);
  text-align:center
}

.vm-menu-content {
  color:var(--vm-text-secondary);
  font-size:.95rem;
  line-height:1.7
}
.vm-availability-updated {
  color:var(--vm-text-muted);
  font-size:.85rem;
  text-align:center
}
.vm-footer {
  background:#000;
  border-top:1px solid rgba(148,163,184,.2);
  contain:layout style;
  margin-top:var(--vm-space-xl);
  padding:var(--vm-space-xl) 0 var(--vm-space-lg);
  position:relative
}
.vm-footer-shell {
  margin:0 auto;
  max-width:1200px;
  padding:0 var(--vm-space-lg);
  text-align:center
}

.vm-footer-contact-info h3 {
  font-size:1.4rem;
  margin-bottom:1.25rem
}
.vm-footer-contact-info p {
  color:rgba(249,250,251,.8);
  font-size:.95rem;
  line-height:1.7;
  margin:.65rem 0
}
.vm-footer-contact-info strong {
  color:#94a3b8;
  font-weight:600
}
.vm-footer-contact-info a {
  border-bottom:none!important;
  color:#60a5fa;
  font-weight:500;
  text-decoration:none!important;
  transition:color var(--vm-duration-fast) var(--vm-ease-standard)
}
.vm-footer-contact-info a:hover {
  color:#93c5fd;
  text-decoration:none!important
}
.vm-footer-social h3 {
  font-size:1.4rem;
  margin-bottom:1.25rem
}

.vm-footer-social-link:hover {
  background:rgba(59,130,246,.12);
  transform:translateY(-3px)
}
.vm-footer-social-link:focus {
  outline:2px solid #3b82f6;
  outline-offset:2px
}

.vm-footer-social-link:hover .vm-footer-social-label {
  color:#f9fafb
}

.vm-footer-map-link:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:15%;
  position:absolute;
  right:15%;
  top:0;
  z-index:1
}
.vm-footer-map-link:hover {
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.2) 0,transparent 60%),rgba(15,15,25,.88);
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 20px rgba(0,0,0,.3);
  color:#c4b5fd;
  transform:translateY(-3px)
}
.vm-footer-map-link:focus {
  outline:2px solid #3b82f6;
  outline-offset:4px
}

.vm-footer-nav ul {
  list-style:none;
  margin:0;
  padding:0
}
.vm-footer-nav li {
  margin-bottom:.5rem
}

.vm-footer-nav a:hover {
  color:#f9fafb
}
.vm-footer-nav a[aria-current=page] {
  color:#fbbf24;
  font-weight:600
}
@media (min-width:641px) and (max-width:1023px) {
  .vm-footer-nav {
  gap:var(--vm-space-md) var(--vm-space-lg);
  grid-template-columns:repeat(3,minmax(120px,150px));
  justify-content:center;
  max-width:600px
}

}
@media (max-width:640px) {
  .vm-footer {
  padding:var(--vm-space-lg) 0
}
.vm-footer-brand {
  margin-bottom:var(--vm-space-md);
  padding-bottom:var(--vm-space-md)
}
.vm-footer-brand-title {
  font-size:1.6rem
}
.vm-footer-tagline {
  font-size:.9rem
}
.vm-footer-contact-grid {
  gap:var(--vm-space-lg);
  grid-template-columns:1fr!important;
  margin-bottom:var(--vm-space-md);
  padding-bottom:var(--vm-space-md);
  text-align:center
}
.vm-footer-contact-info h3,.vm-footer-social h3 {
  font-size:1.2rem
}
.vm-footer-social-grid {
  gap:1rem!important;
  grid-template-columns:repeat(3,1fr)!important
}
.vm-footer-social-link {
  min-height:80px;
  padding:.75rem .5rem
}
.vm-footer-social-icon {
  font-size:1.6rem
}
.vm-footer-social-label {
  font-size:.7rem
}
.vm-footer-maps {
  margin-bottom:var(--vm-space-md);
  padding-bottom:var(--vm-space-md)
}
.vm-footer-maps h3 {
  font-size:1.2rem
}
.vm-footer-maps-links {
  align-items:stretch;
  flex-direction:column
}
.vm-footer-map-link {
  justify-content:center;
  width:100%
}
.vm-footer-nav {
  gap:var(--vm-space-md);
  grid-template-columns:repeat(2,minmax(130px,1fr));
  justify-content:center;
  margin-left:auto;
  margin-right:auto;
  max-width:320px
}
.vm-footer-label {
  font-size:.85rem
}
.vm-footer-nav a {
  font-size:.8rem
}
}
.vm-footer-legal {
  padding-top:var(--vm-space-sm);
  text-align:center
}

.vm-footer-copyright a {
  color:#60a5fa;
  text-decoration:none
}
.vm-footer-copyright a:hover {
  text-decoration:underline
}
.vm-footer-legal .vm-footer-links a.vm-footer-privacy,.vm-footer-legal .vm-footer-links a.vm-footer-privacy:link,.vm-footer-legal .vm-footer-links a.vm-footer-privacy:visited {
  color:#f9fafb!important;
  font-size:.9rem;
  text-decoration:none!important;
  transition:color .2s ease
}
.vm-footer-legal .vm-footer-links a.vm-footer-privacy:hover,.vm-footer-legal .vm-footer-links a.vm-footer-privacy:focus {
  color:#fff!important;
  text-decoration:underline!important
}
.vm-footer-links {
  margin-top:.5rem
}
.vm-footer-links a {
  color:#e2e8f0;
  font-size:.9rem;
  text-decoration:none;
  transition:color .2s ease
}
.vm-footer-links a:hover {
  color:#f9fafb;
  text-decoration:underline
}
.vm-manager-card {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1.5rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  margin:2rem auto;
  max-width:800px;
  padding:2.75rem 2rem 2.5rem;
  position:relative;
  text-align:center
}
.vm-manager-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:1
}

.vm-manager-card__desc:last-of-type {
  margin-bottom:1.5rem
}
.vm-manager-card__desc cite {
  color:#a78bfa;
  font-style:italic
}
.vm-manager-card__doi {
  color:#60a5fa;
  font-size:.85rem;
  text-decoration:none
}
.vm-manager-card__doi:hover {
  color:#93c5fd;
  text-decoration:underline
}

.vm-manager-card__linkedin,.vm-manager-card__orcid,.vm-manager-card__wikidata {
  align-items:center;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.92);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  color:#a78bfa;
  display:inline-flex;
  font-size:.85rem;
  font-weight:600;
  gap:.5rem;
  padding:.875rem 1.25rem .75rem;
  position:relative;
  text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,color .2s ease
}
.vm-manager-card__linkedin:before,.vm-manager-card__orcid:before,.vm-manager-card__wikidata:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:15%;
  position:absolute;
  right:15%;
  top:0;
  z-index:1
}
.vm-manager-card__linkedin:hover,.vm-manager-card__orcid:hover,.vm-manager-card__wikidata:hover {
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.07),0 5.4px 13.5px rgba(0,0,0,.2);
  color:#bba7fc;
  transform:translateY(-2px)
}
.vm-manager-card__orcid {
  background:radial-gradient(ellipse at 50% 0,rgba(16,185,129,.12) 0,transparent 60%),rgba(15,15,25,.92);
  color:#10b981
}
.vm-manager-card__orcid:before {
  background:linear-gradient(90deg,transparent,#10b981 20%,#3b82f6 50%,#8b5cf6 80%,transparent)
}
.vm-manager-card__orcid:hover {
  color:#34d399
}
@media (max-width:640px) {
  .vm-manager-card {
  margin:1.5rem 1rem;
  padding:2.25rem 1.25rem 2rem
}
.vm-manager-card__title {
  font-size:1.4rem
}
.vm-manager-card__role {
  font-size:.85rem
}
.vm-manager-card__desc {
  font-size:.9rem
}
.vm-manager-card__links {
  flex-direction:column
}
.vm-manager-card__linkedin,.vm-manager-card__orcid,.vm-manager-card__wikidata {
  justify-content:center;
  width:100%
}
.vm-hero {
  padding:var(--vm-space-md)
}
.vm-cta-group {
  flex-direction:column
}

.vm-nowrap {
  display:block;
  margin-top:.25rem;
  text-align:center;
  white-space:normal
}
.vm-footer-copyright {
  font-size:.8rem
}
}
[data-price] {
  font-weight:600
}
@media print {
  body {
  background:#fff;
  color:#000
}
.vm-section {
  page-break-inside:avoid
}

}
.vm-comparison-table,.vm-diet-table,.vm-distance-table,.vm-kids-menu-table,.vm-kids-table,.vm-menu-table,.vm-table,.vm-venue-table {
  border-collapse:separate;
  border-spacing:0;
  table-layout:auto;
  width:100%
}
.vm-comparison-table th,.vm-diet-table th,.vm-distance-table th,.vm-kids-menu-table th,.vm-kids-table th,.vm-menu-table th,.vm-table th,.vm-venue-table th {
  background:rgba(15,23,42,.5);
  border-bottom:1px solid rgba(139,92,246,.3);
  color:#a78bfa;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.1em;
  padding:1rem;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap
}
.vm-comparison-table td,.vm-diet-table td,.vm-distance-table td,.vm-kids-menu-table td,.vm-kids-table td,.vm-menu-table td,.vm-table td,.vm-venue-table td {
  border-bottom:1px solid rgba(148,163,184,.1);
  color:var(--vm-text-secondary);
  font-size:.9rem;
  hyphens:auto;
  line-height:1.6;
  overflow-wrap:break-word;
  padding:.875rem 1rem;
  text-align:center;
  vertical-align:middle;
  word-break:break-word;
  word-wrap:break-word
}
.vm-comparison-table td:first-child,.vm-diet-table td:first-child,.vm-distance-table td:first-child,.vm-kids-menu-table td:first-child,.vm-kids-table td:first-child,.vm-menu-table td:first-child,.vm-table td:first-child,.vm-venue-table td:first-child {
  color:var(--vm-text-primary);
  font-weight:500;
  text-align:left;
  white-space:nowrap
}
.vm-comparison-table tbody tr:last-child td,.vm-diet-table tbody tr:last-child td,.vm-distance-table tbody tr:last-child td,.vm-kids-menu-table tbody tr:last-child td,.vm-kids-table tbody tr:last-child td,.vm-menu-table tbody tr:last-child td,.vm-table tbody tr:last-child td,.vm-venue-table tbody tr:last-child td {
  border-bottom:none
}
.vm-comparison-table tbody tr:hover,.vm-diet-table tbody tr:hover,.vm-distance-table tbody tr:hover,.vm-kids-menu-table tbody tr:hover,.vm-kids-table tbody tr:hover,.vm-menu-table tbody tr:hover,.vm-table tbody tr:hover,.vm-venue-table tbody tr:hover {
  background:rgba(139,92,246,.06)
}
.vm-comparison-table tfoot td,.vm-diet-table tfoot td,.vm-distance-table tfoot td,.vm-kids-menu-table tfoot td,.vm-kids-table tfoot td,.vm-menu-table tfoot td,.vm-table tfoot td,.vm-venue-table tfoot td {
  background:rgba(16,185,129,.08);
  border-top:1px solid rgba(16,185,129,.2);
  color:var(--vm-text-secondary);
  font-size:.85rem;
  padding:1rem;
  text-align:center
}
.vm-section .vm-table-wrapper,.vm-table-wrapper--premium {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.1) 0,transparent 60%),rgba(15,15,25,.88);
  border:none;
  border-radius:1rem;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  margin:1.5rem 0;
  overflow:hidden;
  padding:0;
  position:relative
}
.vm-section .vm-table-wrapper:before,.vm-table-wrapper--premium:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0;
  z-index:2
}
.vm-section .vm-table-wrapper table,.vm-table-wrapper--premium table {
  background:transparent;
  border-radius:0;
  box-shadow:none;
  margin:0
}
.vm-section .vm-table-wrapper table:before,.vm-table-wrapper--premium table:before {
  display:none
}
.vm-section table {
  background:transparent;
  box-shadow:none
}
.vm-section table:before {
  display:none
}

@media (min-width:1100px) {
  .vm-venue-features {
  grid-template-columns:repeat(2,1fr)
}
}
@media (max-width:640px) {
  .vm-comparison-table thead,.vm-diet-table thead,.vm-distance-table thead,.vm-kids-menu-table thead,.vm-kids-table thead,.vm-menu-table thead,.vm-table thead,.vm-venue-table thead {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px
}
.vm-comparison-table tbody tr,.vm-diet-table tbody tr,.vm-distance-table tbody tr,.vm-kids-menu-table tbody tr,.vm-kids-table tbody tr,.vm-menu-table tbody tr,.vm-table tbody tr,.vm-venue-table tbody tr {
  background:rgba(15,23,42,.4);
  border-bottom:1px solid rgba(139,92,246,.15);
  display:block;
  padding:1rem
}
.vm-comparison-table tbody tr:last-child,.vm-diet-table tbody tr:last-child,.vm-distance-table tbody tr:last-child,.vm-kids-menu-table tbody tr:last-child,.vm-kids-table tbody tr:last-child,.vm-menu-table tbody tr:last-child,.vm-table tbody tr:last-child,.vm-venue-table tbody tr:last-child {
  border-bottom:none
}
.vm-comparison-table td,.vm-diet-table td,.vm-distance-table td,.vm-kids-menu-table td,.vm-kids-table td,.vm-menu-table td,.vm-table td,.vm-venue-table td {
  border-bottom:1px solid rgba(148,163,184,.08);
  display:block;
  padding:.5rem 0;
  text-align:center
}
.vm-comparison-table td:first-child,.vm-diet-table td:first-child,.vm-distance-table td:first-child,.vm-kids-menu-table td:first-child,.vm-kids-table td:first-child,.vm-menu-table td:first-child,.vm-table td:first-child,.vm-venue-table td:first-child {
  background:rgba(139,92,246,.08);
  border-radius:.5rem;
  color:#a78bfa;
  font-size:.95rem;
  font-weight:600;
  margin-bottom:.5rem;
  padding:.75rem;
  text-align:center;
  white-space:normal
}
.vm-comparison-table td:last-child,.vm-diet-table td:last-child,.vm-distance-table td:last-child,.vm-kids-menu-table td:last-child,.vm-kids-table td:last-child,.vm-menu-table td:last-child,.vm-table td:last-child,.vm-venue-table td:last-child {
  border-bottom:none
}
.vm-comparison-table td:before,.vm-diet-table td:before,.vm-distance-table td:before,.vm-kids-menu-table td:before,.vm-kids-table td:before,.vm-menu-table td:before,.vm-table td:before,.vm-venue-table td:before {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6);
  -webkit-background-clip:text;
  background-clip:text;
  content:attr(data-label);
  display:block;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.08em;
  margin-bottom:.25rem;
  text-transform:uppercase;
  -webkit-text-fill-color:transparent
}
.vm-comparison-table td:first-child:before,.vm-diet-table td:first-child:before,.vm-distance-table td:first-child:before,.vm-kids-menu-table td:first-child:before,.vm-kids-table td:first-child:before,.vm-menu-table td:first-child:before,.vm-table td:first-child:before,.vm-venue-table td:first-child:before {
  display:none
}
.vm-comparison-table tfoot tr,.vm-diet-table tfoot tr,.vm-distance-table tfoot tr,.vm-kids-menu-table tfoot tr,.vm-kids-table tfoot tr,.vm-menu-table tfoot tr,.vm-table tfoot tr,.vm-venue-table tfoot tr {
  background:rgba(16,185,129,.08);
  display:block;
  padding:1rem
}
.vm-comparison-table tfoot td:before,.vm-diet-table tfoot td:before,.vm-distance-table tfoot td:before,.vm-kids-menu-table tfoot td:before,.vm-kids-table tfoot td:before,.vm-menu-table tfoot td:before,.vm-table tfoot td:before,.vm-venue-table tfoot td:before {
  display:none
}

.vm-section .vm-table-wrapper,.vm-table-wrapper--premium {
  margin:1rem 0;
  padding-top:.5rem
}
}
.vm-distance-table td:nth-child(2),.vm-distance-table td:nth-child(3) {
  font-variant-numeric:tabular-nums;
  white-space:nowrap
}
.vm-distance-table a,.vm-table a,.vm-venue-table a {
  color:#60a5fa;
  text-decoration:none;
  transition:color .2s
}
.vm-distance-table a:hover,.vm-table a:hover,.vm-venue-table a:hover {
  color:#93c5fd;
  text-decoration:underline
}
.vm-kids-menu-table td:last-child,.vm-kids-table td:last-child {
  line-height:1.7;
  max-width:500px;
  text-align:left
}
@media (max-width:640px) {
  .vm-kids-menu-table td:last-child,.vm-kids-table td:last-child {
  max-width:100%;
  text-align:center
}
}
.vm-comparison-table caption:not(.sr-only),.vm-diet-table caption:not(.sr-only),.vm-distance-table caption:not(.sr-only),.vm-kids-menu-table caption:not(.sr-only),.vm-kids-table caption:not(.sr-only),.vm-menu-table caption:not(.sr-only),.vm-table caption:not(.sr-only),.vm-venue-table caption:not(.sr-only) {
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.12) 0,transparent 60%),rgba(15,15,25,.9);
  border-bottom:1px solid rgba(139,92,246,.2);
  caption-side:top;
  color:var(--vm-text-primary);
  font-size:1rem;
  font-weight:600;
  padding:1rem 1.5rem;
  text-align:center
}
.vm-comparison-table,.vm-table,.vm-venue-table {
  background:transparent;
  border-collapse:separate;
  border-spacing:0;
  margin:0 auto;
  max-width:1100px;
  table-layout:fixed;
  width:100%
}
.vm-comparison-table th,.vm-table th,.vm-venue-table th {
  background:transparent;
  border-bottom:1px solid rgba(139,92,246,.25);
  color:#a78bfa;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.12em;
  padding:1rem 1.25rem;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap
}
.vm-comparison-table th:first-child,.vm-venue-table th:first-child {
  text-align:left
}
.vm-comparison-table th:nth-child(2):before {
  color:#3b82f6;
  content:"● "
}
.vm-comparison-table th:nth-child(3):before {
  color:#64748b;
  content:"— "
}
.vm-comparison-table td,.vm-table td,.vm-venue-table td {
  border-bottom:1px solid rgba(148,163,184,.08);
  color:var(--vm-text-secondary);
  font-size:.95rem;
  line-height:1.6;
  padding:1rem 1.25rem;
  text-align:center;
  vertical-align:middle
}
.vm-comparison-table td:first-child,.vm-venue-table td:first-child {
  color:var(--vm-text-primary);
  font-weight:500;
  text-align:left
}

.vm-comparison-table tbody tr:last-child td,.vm-venue-table tbody tr:last-child td {
  border-bottom:none
}
.vm-comparison-table tbody tr:hover,.vm-venue-table tbody tr:hover {
  background:rgba(139,92,246,.06)
}
.is-hot,.vm-badge-hot {
  color:#10b981;
  font-weight:600
}
.is-hot:before,.vm-badge-hot:before {
  content:"✓ "
}

.vm-table-definition {
  color:var(--vm-text-muted);
  font-size:.9rem;
  font-style:italic;
  line-height:1.7;
  margin:1.5rem auto 0;
  max-width:1000px;
  text-align:center
}
.vm-table-definition strong {
  color:var(--vm-text-primary);
  font-style:normal
}
@media (max-width:768px) {
  .vm-comparison-table,.vm-venue-table {
  display:block;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch
}
.vm-comparison-table th,.vm-venue-table th {
  font-size:.65rem;
  padding:.75rem .5rem
}
.vm-comparison-table td,.vm-venue-table td {
  font-size:.85rem;
  padding:.75rem .5rem
}
}
@media (max-width:640px) {
  .vm-comparison-table thead {
  border:0;
  clip:rect(0,0,0,0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  white-space:nowrap;
  width:1px
}
.vm-comparison-table tbody,.vm-comparison-table tr {
  display:block;
  width:100%
}
.vm-comparison-table tbody tr {
  background:rgba(15,23,42,.4);
  border-bottom:1px solid rgba(139,92,246,.15);
  margin-bottom:.5rem;
  padding:1rem
}
.vm-comparison-table td {
  display:grid;
  gap:.25rem;
  grid-template-columns:1fr 1fr;
  padding:.5rem 0;
  text-align:left
}
.vm-comparison-table td:first-child {
  background:rgba(139,92,246,.1);
  border-radius:.5rem;
  display:block;
  font-size:.9rem;
  grid-template-columns:1fr;
  margin-bottom:.5rem;
  padding:.75rem;
  text-align:center
}
.vm-comparison-table td:before {
  color:#a78bfa;
  content:attr(data-label);
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase
}
.vm-comparison-table td:first-child:before {
  display:none
}
.vm-comparison-table td:nth-child(2) {
  background:transparent
}

}
.vm-venue-features {
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(2,1fr);
  margin:var(--vm-space-lg) 0
}
@media (max-width:900px) {
  .vm-venue-features {
  gap:1rem;
  grid-template-columns:1fr
}
}
.vm-venue-features .vm-table-wrapper {
  background:rgba(15,23,42,.4);
  border:1px solid rgba(139,92,246,.15);
  border-radius:1rem;
  margin:0;
  overflow:hidden;
  padding:0
}
.vm-venue-features .vm-table-wrapper:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  content:"";
  display:block;
  height:2px;
  margin:0 10%
}
.vm-table-highlight,.vm-table-wrapper.vm-table-highlight {
  background:rgba(139,92,246,.08);
  border:1px solid rgba(139,92,246,.25)
}
.vm-comparison-table caption:not(.sr-only),.vm-venue-table caption:not(.sr-only) {
  background:transparent;
  border-bottom:none;
  color:var(--vm-text-primary);
  font-size:1.1rem;
  font-weight:600;
  padding:1.25rem 1rem .75rem;
  text-align:center
}
.vm-venue-table caption .vm-gradient-text {
  font-size:1.15rem
}
.vm-menu-content h3,.vm-menu-content h4,h3.vm-gradient-text,h4.vm-gradient-text {
  text-align:center;
  width:100%
}
.vm-emoji,.vm-gradient-text .vm-emoji,h3 .vm-emoji,h4 .vm-emoji,span .vm-emoji {
  -webkit-background-clip:initial;
  -webkit-text-fill-color:initial;
  background:none;
  background-clip:initial;
  background-image:none;
  color:initial;
  display:inline-block;
  font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Twemoji Mozilla,sans-serif;
  font-style:normal;
  margin-right:.3em
}
.vm-gradient-text .vm-emoji,h3 .vm-emoji,h4 .vm-emoji {
  -webkit-background-clip:unset;
  -webkit-text-fill-color:unset;
  background:none;
  background-clip:unset
}
.vm-glass-box,.vm-info-glass,.vm-info-glass--premium,.vm-section,.vm-table-wrapper,.vm-table-wrapper--premium {
  box-shadow:none
}
.vm-glass-box,.vm-section {
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05)
}
.vm-table-wrapper--premium {
  box-shadow:none
}
.vm-comparison-table tbody tr:hover,.vm-diet-table tbody tr:hover,.vm-distance-table tbody tr:hover,.vm-kids-menu-table tbody tr:hover,.vm-kids-table tbody tr:hover,.vm-menu-table tbody tr:hover,.vm-venue-table tbody tr:hover {
  background:rgba(139,92,246,.06);
  box-shadow:none
}
.vm-dates-mini td,.vm-dates-mini td:first-child,.vm-dates-mini th,.vm-dates-mini th:first-child {
  text-align:center
}
.vm-table-wrapper--premium:has(.vm-dates-mini),.vm-table-wrapper-compact:has(.vm-dates-mini),.vm-table-wrapper:has(.vm-dates-mini) {
  margin:1.5rem auto;
  max-width:500px;
  width:100%
}
.vm-dates-wrapper {
  margin:1.5rem auto;
  max-width:500px;
  width:100%
}
.vm-dates-mini {
  margin:0;
  max-width:100%;
  width:100%
}
.vm-section-crosslink {
  background:radial-gradient(ellipse at 50% 0,rgba(139,92,246,.1) 0,transparent 60%),rgba(15,15,25,.92);
  border:1px solid rgba(139,92,246,.2);
  border-radius:1rem;
  margin:1.5rem auto;
  max-width:900px;
  overflow:hidden;
  padding:1.25rem 1.5rem;
  position:relative
}
.vm-section-crosslink:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0
}
.vm-section-crosslink p {
  color:var(--vm-text-secondary);
  font-size:.9rem;
  line-height:1.7;
  margin:0;
  text-align:center
}
.vm-section-crosslink strong {
  color:var(--vm-text-primary)
}
.vm-section-crosslink a {
  color:#60a5fa;
  font-weight:600;
  text-decoration:none;
  transition:color .2s ease
}
.vm-section-crosslink a:hover {
  color:#93c5fd;
  text-decoration:underline
}
.vm-section-crosslink .vm-emoji,.vm-section-crosslink p:first-letter {
  -webkit-background-clip:initial;
  -webkit-text-fill-color:initial;
  background:none
}
.vm-answer-capsule {
  background:radial-gradient(ellipse at 50% 0,rgba(16,185,129,.1) 0,transparent 60%),rgba(15,15,25,.92);
  border:1px solid rgba(16,185,129,.2);
  border-left:none;
  border-radius:1rem;
  margin:1.5rem auto;
  max-width:800px;
  overflow:hidden;
  padding:1.25rem 1.5rem;
  position:relative
}
.vm-answer-capsule:before {
  background:linear-gradient(90deg,transparent,#10b981 20%,#34d399 50%,#6ee7b7 80%,transparent);
  content:"";
  height:2px;
  left:10%;
  position:absolute;
  right:10%;
  top:0
}
.vm-answer-capsule strong {
  color:#10b981
}
.vm-answer-capsule a {
  color:#34d399;
  font-weight:600;
  text-decoration:none;
  transition:color .2s ease
}
.vm-answer-capsule a:hover {
  color:#6ee7b7;
  text-decoration:underline
}
.vm-button {
  align-items:center;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.15) 50%,rgba(236,72,153,.1));
  border:1px solid rgba(139,92,246,.4);
  border-radius:999px;
  box-shadow:0 4px 20px rgba(139,92,246,.25),0 0 30px rgba(59,130,246,.15),inset 0 1px 0 hsla(0,0%,100%,.15);
  color:#f1f5f9;
  cursor:pointer;
  display:inline-flex;
  font-size:.9rem;
  font-weight:600;
  gap:.5rem;
  justify-content:center;
  letter-spacing:.02em;
  overflow:hidden;
  padding:.875rem 1.75rem;
  position:relative;
  text-decoration:none;
  text-shadow:0 1px 2px rgba(0,0,0,.3);
  transition:all .3s ease
}
.vm-button:hover {
  background:linear-gradient(135deg,rgba(59,130,246,.3),rgba(139,92,246,.25) 50%,rgba(236,72,153,.2));
  border-color:rgba(139,92,246,.6);
  box-shadow:0 8px 32px rgba(139,92,246,.35),0 0 50px rgba(59,130,246,.2),inset 0 1px 0 hsla(0,0%,100%,.2);
  color:#fff;
  transform:translateY(-2px)
}
.vm-button:active {
  box-shadow:0 2px 12px rgba(139,92,246,.3),inset 0 1px 0 hsla(0,0%,100%,.1);
  transform:translateY(0)
}
.vm-button-secondary {
  background:linear-gradient(135deg,rgba(148,163,184,.08),rgba(139,92,246,.06) 50%,rgba(148,163,184,.08));
  border:1px solid rgba(148,163,184,.25);
  box-shadow:0 2px 12px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.08);
  color:rgba(241,245,249,.85)
}
.vm-button-secondary:hover {
  background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(59,130,246,.1) 50%,rgba(139,92,246,.15));
  border-color:rgba(139,92,246,.4);
  box-shadow:0 6px 24px rgba(139,92,246,.2),0 0 40px rgba(59,130,246,.1),inset 0 1px 0 hsla(0,0%,100%,.15);
  color:#f1f5f9
}
.vm-pakiet-card--featured .vm-button {
  background:linear-gradient(135deg,rgba(251,191,36,.25),rgba(245,158,11,.2) 50%,rgba(251,191,36,.15));
  border:1px solid rgba(251,191,36,.5);
  box-shadow:0 4px 20px rgba(251,191,36,.3),0 0 30px rgba(251,191,36,.15),inset 0 1px 0 hsla(0,0%,100%,.2);
  color:#fef3c7;
  text-shadow:0 0 10px rgba(251,191,36,.4)
}
.vm-pakiet-card--featured .vm-button:hover {
  background:linear-gradient(135deg,rgba(251,191,36,.35),rgba(245,158,11,.3) 50%,rgba(251,191,36,.25));
  border-color:rgba(251,191,36,.7);
  box-shadow:0 8px 32px rgba(251,191,36,.4),0 0 50px rgba(251,191,36,.2),inset 0 1px 0 hsla(0,0%,100%,.25);
  color:#fff
}
.vm-button .vm-emoji,.vm-button-secondary .vm-emoji {
  font-size:1.1em
}
@media (max-width:640px) {
  .vm-button,.vm-button-secondary {
  font-size:.85rem;
  padding:.75rem 1.5rem;
  width:100%
}
}
.vm-links-grid {
  display:flex;
  flex-wrap:wrap;
  gap:1.5rem;
  justify-content:center;
  margin:2rem auto;
  max-width:1200px
}

.vm-link-card:before {
  background:linear-gradient(90deg,transparent,#3b82f6 20%,#8b5cf6 50%,#ec4899 80%,transparent);
  border-radius:2px;
  content:"";
  height:2px;
  left:15%;
  position:absolute;
  right:15%;
  top:0;
  z-index:1
}
.vm-link-card:hover {
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.07),0 5.4px 13.5px rgba(0,0,0,.2);
  transform:translateY(-3px)
}
.vm-link-icon {
  font-size:1.5rem;
  line-height:1
}
.vm-link-title {
  color:#a78bfa;
  font-size:1rem;
  font-weight:600
}
.vm-link-card:hover .vm-link-title {
  color:#bba7fc
}
.vm-link-desc {
  color:var(--vm-text-secondary);
  font-size:.85rem;
  line-height:1.5
}
@media (max-width:900px) {
  .vm-link-card {
  flex:0 0 calc(50% - 0.75rem);
  max-width:none
}
}
@media (max-width:640px) {
  .vm-links-grid {
  gap:1rem
}
.vm-link-card {
  flex:0 0 100%
}
}
.vm-footer h3 strong,.vm-footer strong,.vm-footer-contact-info strong,.vm-footer-maps strong,.vm-logo-text {
  background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent
}
.vm-footer-social .vm-footer-label {
  display:block;
  text-align:center
}
.vm-footer-social .vm-footer-label strong {
  background:inherit;
  -webkit-background-clip:inherit;
  background-clip:inherit;
  color:inherit;
  -webkit-text-fill-color:inherit
}
.vm-footer-nav a[href*=partner-honorowy] {
  color:#fbbf24!important;
  text-shadow:0 0 15px rgba(251,191,36,.3)
}
.vm-footer-nav a[href*=partner-honorowy]:hover {
  color:#fcd34d!important
}
.vm-footer-nav a[href*=nietypowa-sala-weselna] {
  background:none;
  color:inherit;
  -webkit-text-fill-color:inherit
}
.vm-footer-nav .vm-gradient-link {
  background:linear-gradient(90deg,#3b82f6,#8b5cf6 50%,#ec4899);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent
}
.vm-footer-nav .vm-gradient-link:hover {
  filter:brightness(1.2)
}
.vm-stats-section {
  padding:3rem 0
}
.vm-stats-grid-premium {
  display:grid;
  gap:1.5rem;
  grid-template-columns:repeat(4,1fr);
  margin:2rem auto 0;
  max-width:1200px
}

.vm-stat-card-premium:before {
  background:radial-gradient(circle at 50% 0,rgba(139,92,246,.15),transparent 60%);
  content:"";
  inset:0;
  opacity:0;
  pointer-events:none;
  position:absolute;
  transition:opacity .3s ease
}
.vm-stat-card-premium:hover {
  border-color:rgba(139,92,246,.4);
  box-shadow:0 16px 48px rgba(139,92,246,.2),0 8px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08);
  transform:translateY(-6px)
}
.vm-stat-card-premium:hover:before {
  opacity:1
}
.vm-stat-card-premium--highlight {
  background:radial-gradient(ellipse at 30% 0,rgba(16,185,129,.15) 0,transparent 50%),rgba(15,23,42,.6);
  border-color:rgba(16,185,129,.3)
}
.vm-stat-card-premium--highlight:hover {
  border-color:rgba(16,185,129,.5);
  box-shadow:0 16px 48px rgba(16,185,129,.2),0 8px 24px rgba(0,0,0,.4)
}

.vm-stat-value-premium .vm-gradient-text {
  background:linear-gradient(135deg,#3b82f6,#8b5cf6 50%,#ec4899);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent
}
.vm-stat-value-premium .vm-free {
  color:#10b981;
  text-shadow:0 0 20px rgba(16,185,129,.4)
}
.vm-stat-label-premium {
  color:rgba(148,163,184,.95);
  font-size:.875rem;
  font-weight:500;
  letter-spacing:.02em;
  line-height:1.4
}
@media (max-width:1024px) {
  .vm-stats-grid-premium {
  grid-template-columns:repeat(3,1fr)
}
}
@media (max-width:768px) {
  .vm-stats-grid-premium {
  gap:1rem;
  grid-template-columns:repeat(2,1fr)
}

}
@media (max-width:480px) {
  .vm-stats-grid-premium {
  grid-template-columns:1fr
}
.vm-stat-card-premium {
  align-items:center;
  display:flex;
  gap:1rem;
  padding:1.25rem;
  text-align:left
}
.vm-stat-icon {
  flex-shrink:0;
  font-size:2rem;
  margin-bottom:0
}
.vm-stat-value-premium {
  font-size:1.5rem;
  margin-bottom:.25rem
}
}
.vm-button-secondary:focus,.vm-button-secondary:hover,.vm-button:focus,.vm-button:hover {
  color:#ec4899
}
.vm-button-outline:focus,.vm-button-outline:hover {
  border-color:#ec4899;
  color:#ec4899
}
.dropdown-menu a:focus,.dropdown-menu a:hover,.nav-link:focus,.nav-link:hover,.vm-crosslink-link:focus,.vm-crosslink-link:hover,.vm-crosslink-text a:focus,.vm-crosslink-text a:hover,.vm-footer-map-link:focus,.vm-footer-map-link:hover,.vm-footer-nav a:focus,.vm-footer-nav a:hover,.vm-footer-social-link:focus,.vm-footer-social-link:hover,.vm-info-glass__text a:focus,.vm-info-glass__text a:hover,.vm-info-glass__text a[href*=wikidata]:focus,.vm-info-glass__text a[href*=wikidata]:hover,.vm-link-card:focus .vm-link-title,.vm-link-card:hover .vm-link-title,.vm-text-link:focus,.vm-text-link:hover,a:focus,a:hover {
  color:#ec4899
}
.vm-table caption,.vm-venue-table caption,table caption {
  text-align:center
}
.vm-table caption .vm-gradient-text,.vm-venue-table caption .vm-gradient-text,table caption .vm-gradient-text {
  display:block;
  margin:0 auto;
  text-align:center
}
@media (max-width:640px) {
  .vm-table caption,.vm-venue-table caption,table caption {
  padding:1rem .5rem;
  text-align:center
}
.vm-table caption .vm-gradient-text,.vm-venue-table caption .vm-gradient-text,table caption .vm-gradient-text {
  display:block;
  text-align:center;
  width:100%
}
}
@media (max-width:900px) {
  .vm-menu-toggle {
  cursor:pointer;
  padding:8px
}
.vm-menu-toggle,.vm-menu-toggle:active,.vm-menu-toggle:focus,.vm-menu-toggle:hover,.vm-menu-toggle[aria-expanded=true] {
  background:transparent;
  border:none;
  box-shadow:none;
  outline:none
}
.vm-hamburger {
  display:block;
  position:relative;
  transition:background .3s ease
}
.vm-hamburger,.vm-hamburger:after,.vm-hamburger:before {
  background:#e2e8f0;
  border-radius:2px;
  height:2px;
  width:24px
}
.vm-hamburger:after,.vm-hamburger:before {
  content:"";
  left:0;
  position:absolute;
  transition:transform .3s ease,top .3s ease
}
.vm-hamburger:before {
  top:-7px
}
.vm-hamburger:after {
  top:7px
}
.vm-menu-toggle[aria-expanded=true] .vm-hamburger {
  background:transparent
}
.vm-menu-toggle[aria-expanded=true] .vm-hamburger:before {
  top:0;
  transform:rotate(45deg)
}
.vm-menu-toggle[aria-expanded=true] .vm-hamburger:after {
  top:0;
  transform:rotate(-45deg)
}
.dropdown-toggle[aria-expanded=true],.has-dropdown.is-open .dropdown-toggle,.nav-link.dropdown-toggle[aria-expanded=true] {
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  background-color:rgba(15,15,25,.92);
  background-image:radial-gradient(at 50% 0,rgba(139,92,246,.12) 0,transparent 60%);
  border:none;
  border-radius:12px;
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05);
  color:#a78bfa
}
.dropdown-toggle[aria-expanded=true]:hover,.has-dropdown.is-open .dropdown-toggle:hover {
  background-color:rgba(15,15,25,.95);
  color:#c4b5fd
}
.dropdown-toggle[aria-expanded=true] .dropdown-arrow {
  display:inline-block;
  transform:rotate(180deg)
}
}
.vm-gallery-hero-section {
  margin-bottom:1rem;
  padding:.5rem 0
}
.vm-gallery-item--featured {
  border-radius:var(--vm-radius-lg);
  box-shadow:var(--vm-shadow-card);
  margin:0;
  overflow:hidden
}

@media (max-width:640px) {
  .vm-gallery-hero-section {
  padding:var(--vm-space-sm) 0
}
.vm-gallery-item--featured img {
  border-radius:var(--vm-radius-md)
}
}
.vm-gallery-grid {
  display:block;
  margin:0 auto;
  max-width:1200px;
  width:100%
}
.vm-gallery-grid--1col {
  max-width:1100px
}
.vm-gallery-item {
  margin:0;
  position:relative
}
.vm-gallery-item img,figure img {
  display:block;
  height:auto;
  max-width:100%;
  width:100%
}
.vm-gallery-caption {
  color:var(--vm-text-muted);
  font-size:.9rem;
  margin-top:.75rem;
  text-align:center
}
.vm-footer-privacy a,.vm-footer-privacy a:link,.vm-footer-privacy a:visited {
  color:#94a3b8!important;
  text-decoration:none!important
}
.vm-footer-privacy a:hover,.vm-footer-privacy a:focus {
  color:#f9fafb!important;
  text-decoration:underline!important
}

.vm-chrzciny-card:hover,
.vm-chrzciny-option:hover {
  will-change: transform;
}

.vm-chrzciny-card:not(:hover),
.vm-chrzciny-option:not(:hover) {
  will-change: auto;
}

.vm-chrzciny-hero,
.vm-chrzciny-card {
  transform: translateZ(0);
}
